Skip to content

Commit 3516a12

Browse files
authored
fix(tasty): keyframes syntax (#994)
1 parent f25f7ad commit 3516a12

File tree

19 files changed

+527
-115
lines changed

19 files changed

+527
-115
lines changed
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@cube-dev/ui-kit": patch
3+
---
4+
5+
Export tasty.config.ts
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@cube-dev/ui-kit": patch
3+
---
4+
5+
Migrate all `@keyframes` definitions to use object format for style values instead of raw CSS strings. This ensures consistent token processing and better type safety.

eslint.config.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ export default [
112112
// TypeScript files
113113
{
114114
files: ['**/*.{ts,tsx}'],
115-
ignores: ['vite.config.ts'],
115+
ignores: ['vite.config.ts', 'tasty.config.ts'],
116116
languageOptions: {
117117
parser,
118118
parserOptions: {

scripts/copy-files.cjs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ const path = require('path');
33

44
function copyRequiredFiles() {
55
copyPackageJson();
6-
['./README.md', './CHANGELOG.md'].forEach((file) => includeFileInBuild(file));
6+
['./README.md', './CHANGELOG.md', './tasty.config.ts'].forEach((file) => includeFileInBuild(file));
77
}
88

99
function copyPackageJson() {
@@ -54,6 +54,7 @@ function copyPackageJson() {
5454
import: './es/tasty/zero/babel.js',
5555
types: './types/tasty/zero/babel.d.ts',
5656
},
57+
'./tasty.config': './tasty.config.ts',
5758
},
5859
private: false,
5960
};

src/components/navigation/Tabs/TabButton.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -416,7 +416,7 @@ export function TabButton({ item, tabData, isLastTab }: TabButtonProps) {
416416
<ItemAction
417417
tabIndex={-1}
418418
icon={<CloseIcon />}
419-
tooltip="Delete tab"
419+
tooltip="Close"
420420
onPress={handleDelete}
421421
/>
422422
) : null;

src/components/navigation/Tabs/TabPicker.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ export function TabPicker({
8989
<ItemAction
9090
icon={<CloseIcon />}
9191
theme="danger"
92-
aria-label="Delete tab"
92+
aria-label="Close"
9393
onPress={() => {
9494
onDelete(tab.key);
9595
}}

src/components/navigation/Tabs/Tabs.test.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -323,7 +323,7 @@ describe('<Tabs />', () => {
323323
</Tabs>,
324324
);
325325

326-
expect(getByLabelText('Delete tab')).toBeInTheDocument();
326+
expect(getByLabelText('Close')).toBeInTheDocument();
327327
});
328328

329329
it('should call onDelete when delete button is clicked', async () => {
@@ -336,7 +336,7 @@ describe('<Tabs />', () => {
336336
</Tabs>,
337337
);
338338

339-
await userEvent.click(getByLabelText('Delete tab'));
339+
await userEvent.click(getByLabelText('Close'));
340340

341341
expect(onDelete).toHaveBeenCalledWith('tab1');
342342
});

src/components/navigation/Tabs/styled.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -337,9 +337,8 @@ export const TabIndicatorElement = tasty({
337337
left: 0,
338338
height: '$tab-indicator-size',
339339
fill: '#purple',
340-
transition: 'left, width',
341-
transitionDuration: '.2s',
342-
transitionTimingFunction: 'ease-out',
340+
transition:
341+
'left $tab-transition ease-in-out, width $tab-transition ease-in-out',
343342
pointerEvents: 'none',
344343
},
345344
});

src/components/status/LoadingAnimation/LoadingAnimation.tsx

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -37,24 +37,24 @@ const CubeElement = tasty({
3737

3838
'@keyframes': {
3939
dice0: {
40-
from: 'transform: translate(49%, 0.5%); z-index: 0;',
41-
'25%': 'transform: translate(49%, 0.5%); z-index: 0;',
42-
'50%': 'transform: translate(0%, 25%); z-index: 0;',
43-
'51%': 'z-index: 1;',
44-
'75%': 'z-index: 1;',
45-
to: 'transform: translate(0%, 25%); z-index: 1;',
40+
from: { transform: 'translate(49%, 0.5%)', zIndex: 0 },
41+
'25%': { transform: 'translate(49%, 0.5%)', zIndex: 0 },
42+
'50%': { transform: 'translate(0%, 25%)', zIndex: 0 },
43+
'51%': { zIndex: 1 },
44+
'75%': { zIndex: 1 },
45+
to: { transform: 'translate(0%, 25%)', zIndex: 1 },
4646
},
4747
dice1: {
48-
from: 'transform: translate(0%, 25%); z-index: 3;',
49-
'25%': 'transform: translate(49%, 49%); z-index: 3;',
50-
'75%': 'transform: translate(49%, 49%); z-index: 2;',
51-
to: 'transform: translate(98%, 25%); z-index: 1;',
48+
from: { transform: 'translate(0%, 25%)', zIndex: 3 },
49+
'25%': { transform: 'translate(49%, 49%)', zIndex: 3 },
50+
'75%': { transform: 'translate(49%, 49%)', zIndex: 2 },
51+
to: { transform: 'translate(98%, 25%)', zIndex: 1 },
5252
},
5353
dice2: {
54-
from: 'transform: translate(98%, 25%); z-index: 1;',
55-
'50%': 'transform: translate(98%, 25%); z-index: 0;',
56-
'75%': 'transform: translate(49%, 0.5%); z-index: 0;',
57-
to: 'transform: translate(49%, 0.5%); z-index: 0;',
54+
from: { transform: 'translate(98%, 25%)', zIndex: 1 },
55+
'50%': { transform: 'translate(98%, 25%)', zIndex: 0 },
56+
'75%': { transform: 'translate(49%, 0.5%)', zIndex: 0 },
57+
to: { transform: 'translate(49%, 0.5%)', zIndex: 0 },
5858
},
5959
},
6060
},

src/components/status/Spin/Cube.tsx

Lines changed: 39 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -52,49 +52,49 @@ const CubeElement = tasty({
5252

5353
'@keyframes': {
5454
'cube-spin-top': {
55-
'0%': 'transform: translate(0%, 0);',
56-
'8%': 'transform: translate(100%, 0);',
57-
'17%': 'transform: translate(100%, 0);',
58-
'25%': 'transform: translate(100%, 0);',
59-
'33%': 'transform: translate(100%, 100%);',
60-
'42%': 'transform: translate(100%, 100%);',
61-
'50%': 'transform: translate(100%, 100%);',
62-
'58%': 'transform: translate(0, 100%);',
63-
'67%': 'transform: translate(0, 100%);',
64-
'75%': 'transform: translate(0, 100%);',
65-
'83%': 'transform: translate(0, 0);',
66-
'92%': 'transform: translate(0, 0);',
67-
'100%': 'transform: translate(0, 0);',
55+
'0%': { transform: 'translate(0%, 0)' },
56+
'8%': { transform: 'translate(100%, 0)' },
57+
'17%': { transform: 'translate(100%, 0)' },
58+
'25%': { transform: 'translate(100%, 0)' },
59+
'33%': { transform: 'translate(100%, 100%)' },
60+
'42%': { transform: 'translate(100%, 100%)' },
61+
'50%': { transform: 'translate(100%, 100%)' },
62+
'58%': { transform: 'translate(0, 100%)' },
63+
'67%': { transform: 'translate(0, 100%)' },
64+
'75%': { transform: 'translate(0, 100%)' },
65+
'83%': { transform: 'translate(0, 0)' },
66+
'92%': { transform: 'translate(0, 0)' },
67+
'100%': { transform: 'translate(0, 0)' },
6868
},
6969
'cube-spin-right': {
70-
'0%': 'transform: translate(100%, 100%);',
71-
'8%': 'transform: translate(100%, 100%);',
72-
'17%': 'transform: translate(100%, 100%);',
73-
'25%': 'transform: translate(0, 100%);',
74-
'33%': 'transform: translate(0, 100%);',
75-
'42%': 'transform: translate(0, 100%);',
76-
'50%': 'transform: translate(0, 0);',
77-
'58%': 'transform: translate(0, 0);',
78-
'67%': 'transform: translate(0, 0);',
79-
'75%': 'transform: translate(100%, 0);',
80-
'83%': 'transform: translate(100%, 0);',
81-
'92%': 'transform: translate(100%, 0);',
82-
'100%': 'transform: translate(100%, 100%);',
70+
'0%': { transform: 'translate(100%, 100%)' },
71+
'8%': { transform: 'translate(100%, 100%)' },
72+
'17%': { transform: 'translate(100%, 100%)' },
73+
'25%': { transform: 'translate(0, 100%)' },
74+
'33%': { transform: 'translate(0, 100%)' },
75+
'42%': { transform: 'translate(0, 100%)' },
76+
'50%': { transform: 'translate(0, 0)' },
77+
'58%': { transform: 'translate(0, 0)' },
78+
'67%': { transform: 'translate(0, 0)' },
79+
'75%': { transform: 'translate(100%, 0)' },
80+
'83%': { transform: 'translate(100%, 0)' },
81+
'92%': { transform: 'translate(100%, 0)' },
82+
'100%': { transform: 'translate(100%, 100%)' },
8383
},
8484
'cube-spin-bottom': {
85-
'0%': 'transform: translate(0, 100%);',
86-
'8%': 'transform: translate(0, 100%);',
87-
'17%': 'transform: translate(0, 0);',
88-
'25%': 'transform: translate(0, 0);',
89-
'33%': 'transform: translate(0, 0);',
90-
'42%': 'transform: translate(100%, 0);',
91-
'50%': 'transform: translate(100%, 0);',
92-
'58%': 'transform: translate(100%, 0);',
93-
'67%': 'transform: translate(100%, 100%);',
94-
'75%': 'transform: translate(100%, 100%);',
95-
'83%': 'transform: translate(100%, 100%);',
96-
'92%': 'transform: translate(0, 100%);',
97-
'100%': 'transform: translate(0, 100%);',
85+
'0%': { transform: 'translate(0, 100%)' },
86+
'8%': { transform: 'translate(0, 100%)' },
87+
'17%': { transform: 'translate(0, 0)' },
88+
'25%': { transform: 'translate(0, 0)' },
89+
'33%': { transform: 'translate(0, 0)' },
90+
'42%': { transform: 'translate(100%, 0)' },
91+
'50%': { transform: 'translate(100%, 0)' },
92+
'58%': { transform: 'translate(100%, 0)' },
93+
'67%': { transform: 'translate(100%, 100%)' },
94+
'75%': { transform: 'translate(100%, 100%)' },
95+
'83%': { transform: 'translate(100%, 100%)' },
96+
'92%': { transform: 'translate(0, 100%)' },
97+
'100%': { transform: 'translate(0, 100%)' },
9898
},
9999
},
100100
},

0 commit comments

Comments
 (0)