@workday/canvas-kit-codemod 15.0.0-alpha.1301-next.0 → 15.0.0-alpha.1326-next.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/es6/v13.2/mapping/index.d.ts +59 -1
- package/dist/es6/v13.2/mapping/index.d.ts.map +1 -1
- package/dist/es6/v13.2/mapping/index.js +88 -1
- package/dist/es6/v13.2/migrateColorTokens.d.ts.map +1 -1
- package/dist/es6/v13.2/migrateColorTokens.js +64 -13
- package/dist/es6/v13.2/migrateDepthTokens.d.ts.map +1 -1
- package/dist/es6/v13.2/migrateDepthTokens.js +42 -26
- package/dist/es6/v13.2/migrateOtherTokens.d.ts.map +1 -1
- package/dist/es6/v13.2/migrateOtherTokens.js +37 -67
- package/dist/es6/v13.2/migrateTypeTokens.d.ts.map +1 -1
- package/dist/es6/v13.2/migrateTypeTokens.js +43 -19
- package/dist/es6/v13.2/utils/filterOutImports.d.ts +6 -1
- package/dist/es6/v13.2/utils/filterOutImports.d.ts.map +1 -1
- package/dist/es6/v13.2/utils/filterOutImports.js +22 -4
- package/dist/es6/v13.2/utils/getImports.d.ts +3 -0
- package/dist/es6/v13.2/utils/getImports.d.ts.map +1 -0
- package/dist/es6/v13.2/utils/getImports.js +12 -0
- package/dist/es6/v13.2/utils/index.d.ts +1 -0
- package/dist/es6/v13.2/utils/index.d.ts.map +1 -1
- package/dist/es6/v13.2/utils/index.js +1 -0
- package/dist/es6/v13.2/utils/transformObjectPropertyRecursively.d.ts +1 -1
- package/dist/es6/v13.2/utils/transformObjectPropertyRecursively.d.ts.map +1 -1
- package/dist/es6/v13.2/utils/transformObjectPropertyRecursively.js +151 -33
- package/dist/es6/v13.2/utils/varToMemberExpression.d.ts.map +1 -1
- package/dist/es6/v13.2/utils/varToMemberExpression.js +1 -1
- package/dist/es6/v14-tokens/index.d.ts.map +1 -1
- package/dist/es6/v14-tokens/index.js +9 -2
- package/dist/es6/v14-tokens/migrateColorTokens.d.ts.map +1 -1
- package/dist/es6/v14-tokens/migrateColorTokens.js +10 -23
- package/dist/es6/v14-tokens/utils/transformObjectPropertyRecursively.d.ts.map +1 -1
- package/dist/es6/v14-tokens/utils/transformObjectPropertyRecursively.js +31 -28
- package/dist/es6/v15/index.d.ts +4 -0
- package/dist/es6/v15/index.d.ts.map +1 -0
- package/dist/es6/v15/index.js +6 -0
- package/dist/es6/v15/utils/getImportRenameMap.d.ts +7 -0
- package/dist/es6/v15/utils/getImportRenameMap.d.ts.map +1 -0
- package/dist/es6/v15/utils/getImportRenameMap.js +44 -0
- package/index.js +7 -0
- package/package.json +2 -2
|
@@ -1,8 +1,66 @@
|
|
|
1
|
+
export declare const paletteNames: string[];
|
|
1
2
|
export declare const mapping: {
|
|
2
3
|
readonly colors: {
|
|
3
4
|
readonly type: "base";
|
|
4
5
|
readonly name: "colors";
|
|
5
6
|
};
|
|
7
|
+
readonly commonColors: {
|
|
8
|
+
readonly type: "system";
|
|
9
|
+
readonly name: "commonColors";
|
|
10
|
+
readonly keys: {
|
|
11
|
+
readonly background: "system.color.bg.default";
|
|
12
|
+
readonly backgroundAlt: "system.color.bg.alt.default";
|
|
13
|
+
readonly focusOutline: "system.color.border.primary.default";
|
|
14
|
+
readonly focusBackground: "system.color.bg.primary.default";
|
|
15
|
+
readonly hoverBackground: "system.color.bg.alt.strong";
|
|
16
|
+
readonly divider: "system.color.border.divider";
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
readonly inputColors: {
|
|
20
|
+
readonly type: "system";
|
|
21
|
+
readonly name: "inputColors";
|
|
22
|
+
readonly keys: {
|
|
23
|
+
readonly background: "system.color.bg.default";
|
|
24
|
+
readonly border: "system.color.border.input.default";
|
|
25
|
+
readonly placeholder: "system.color.fg.muted.default";
|
|
26
|
+
readonly text: "system.color.fg.default";
|
|
27
|
+
readonly icon: "system.color.fg.muted.soft";
|
|
28
|
+
readonly iconHover: "system.color.fg.muted.stronger";
|
|
29
|
+
readonly selectionControlFill: "system.color.bg.primary.default";
|
|
30
|
+
readonly hoverBorder: "system.color.border.input.strong";
|
|
31
|
+
readonly focusBorder: "system.color.border.primary.default";
|
|
32
|
+
readonly disabled: {
|
|
33
|
+
readonly background: "system.color.bg.alt.softer";
|
|
34
|
+
readonly border: "system.color.border.input.strong";
|
|
35
|
+
readonly text: "system.color.fg.disabled";
|
|
36
|
+
readonly icon: "system.color.fg.disabled";
|
|
37
|
+
};
|
|
38
|
+
readonly error: {
|
|
39
|
+
readonly border: "system.color.border.critical.default";
|
|
40
|
+
readonly message: "system.color.fg.critical.default";
|
|
41
|
+
readonly icon: "system.color.fg.critical.default";
|
|
42
|
+
};
|
|
43
|
+
readonly alert: {
|
|
44
|
+
readonly border: "system.color.border.caution.default";
|
|
45
|
+
readonly message: "system.color.fg.caution.default";
|
|
46
|
+
readonly icon: "system.color.fg.caution.default";
|
|
47
|
+
};
|
|
48
|
+
};
|
|
49
|
+
};
|
|
50
|
+
readonly typeColors: {
|
|
51
|
+
readonly type: "system";
|
|
52
|
+
readonly name: "typeColors";
|
|
53
|
+
readonly keys: {
|
|
54
|
+
readonly body: "system.color.fg.default";
|
|
55
|
+
readonly heading: "system.color.fg.strong";
|
|
56
|
+
readonly hint: "system.color.fg.muted.soft";
|
|
57
|
+
readonly inverse: "system.color.fg.inverse";
|
|
58
|
+
readonly label: "system.color.fg.default";
|
|
59
|
+
readonly link: "system.color.fg.primary.default";
|
|
60
|
+
readonly selectHighlight: "system.color.fg.primary.default";
|
|
61
|
+
readonly selectHighlightInverse: "system.color.fg.inverse";
|
|
62
|
+
};
|
|
63
|
+
};
|
|
6
64
|
readonly borderRadius: {
|
|
7
65
|
readonly name: "shape";
|
|
8
66
|
readonly type: "system";
|
|
@@ -215,7 +273,7 @@ export declare const systemColors: {
|
|
|
215
273
|
licorice400: string;
|
|
216
274
|
licorice500: string;
|
|
217
275
|
};
|
|
218
|
-
'border,borderColor,borderTopColor,borderRightColor,borderBottomColor,borderLeftColor,borderInline,borderInlineStart,borderInlineEnd,
|
|
276
|
+
'border,borderColor,borderTop,borderTopColor,borderRight,borderRightColor,borderBottom,borderBottomColor,borderLeft,borderLeftColor,borderInlineColor,borderBlockColor,borderInline,borderInlineStart,borderInlineStartColor,borderInlineEnd,borderInlineEndColor,borderBlockStart,borderBlockStartColor,borderBlockEnd,borderBlockEndColor,borderColorFocus,borderColorHover,borderColorActive': {
|
|
219
277
|
blackPepper400: string;
|
|
220
278
|
blackPepper500: string;
|
|
221
279
|
blueberry400: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../lib/v13.2/mapping/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../lib/v13.2/mapping/index.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY,UA6BxB,CAAC;AAqFF,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkFV,CAAC;AAEX,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4DxB,CAAC"}
|
|
@@ -1,4 +1,34 @@
|
|
|
1
1
|
import { generateLevelTokens } from '../utils/generateLevelTokens';
|
|
2
|
+
export const paletteNames = [
|
|
3
|
+
'cinnamon',
|
|
4
|
+
'peach',
|
|
5
|
+
'chiliMango',
|
|
6
|
+
'cantaloupe',
|
|
7
|
+
'sourLemon',
|
|
8
|
+
'juicyPear',
|
|
9
|
+
'kiwi',
|
|
10
|
+
'greenApple',
|
|
11
|
+
'watermelon',
|
|
12
|
+
'jewel',
|
|
13
|
+
'toothpaste',
|
|
14
|
+
'blueberry',
|
|
15
|
+
'plum',
|
|
16
|
+
'berrySmoothie',
|
|
17
|
+
'blackberry',
|
|
18
|
+
'islandPunch',
|
|
19
|
+
'grapeSoda',
|
|
20
|
+
'pomegranate',
|
|
21
|
+
'fruitPunch',
|
|
22
|
+
'rootBeer',
|
|
23
|
+
'toastedMarshmallow',
|
|
24
|
+
'licorice',
|
|
25
|
+
'soap',
|
|
26
|
+
'frenchVanilla',
|
|
27
|
+
'blackPepper',
|
|
28
|
+
'coconut',
|
|
29
|
+
'cappuccino',
|
|
30
|
+
'dragonFruit',
|
|
31
|
+
];
|
|
2
32
|
const typeLevelsMap = {
|
|
3
33
|
subtext: {
|
|
4
34
|
small: generateLevelTokens(['subtext', 'small']),
|
|
@@ -83,6 +113,63 @@ export const mapping = {
|
|
|
83
113
|
type: 'base',
|
|
84
114
|
name: 'colors',
|
|
85
115
|
},
|
|
116
|
+
commonColors: {
|
|
117
|
+
type: 'system',
|
|
118
|
+
name: 'commonColors',
|
|
119
|
+
keys: {
|
|
120
|
+
background: 'system.color.bg.default',
|
|
121
|
+
backgroundAlt: 'system.color.bg.alt.default',
|
|
122
|
+
focusOutline: 'system.color.border.primary.default',
|
|
123
|
+
focusBackground: 'system.color.bg.primary.default',
|
|
124
|
+
hoverBackground: 'system.color.bg.alt.strong',
|
|
125
|
+
divider: 'system.color.border.divider',
|
|
126
|
+
},
|
|
127
|
+
},
|
|
128
|
+
inputColors: {
|
|
129
|
+
type: 'system',
|
|
130
|
+
name: 'inputColors',
|
|
131
|
+
keys: {
|
|
132
|
+
background: 'system.color.bg.default',
|
|
133
|
+
border: 'system.color.border.input.default',
|
|
134
|
+
placeholder: 'system.color.fg.muted.default',
|
|
135
|
+
text: 'system.color.fg.default',
|
|
136
|
+
icon: 'system.color.fg.muted.soft',
|
|
137
|
+
iconHover: 'system.color.fg.muted.stronger',
|
|
138
|
+
selectionControlFill: 'system.color.bg.primary.default',
|
|
139
|
+
hoverBorder: 'system.color.border.input.strong',
|
|
140
|
+
focusBorder: 'system.color.border.primary.default',
|
|
141
|
+
disabled: {
|
|
142
|
+
background: 'system.color.bg.alt.softer',
|
|
143
|
+
border: 'system.color.border.input.strong',
|
|
144
|
+
text: 'system.color.fg.disabled',
|
|
145
|
+
icon: 'system.color.fg.disabled',
|
|
146
|
+
},
|
|
147
|
+
error: {
|
|
148
|
+
border: 'system.color.border.critical.default',
|
|
149
|
+
message: 'system.color.fg.critical.default',
|
|
150
|
+
icon: 'system.color.fg.critical.default',
|
|
151
|
+
},
|
|
152
|
+
alert: {
|
|
153
|
+
border: 'system.color.border.caution.default',
|
|
154
|
+
message: 'system.color.fg.caution.default',
|
|
155
|
+
icon: 'system.color.fg.caution.default',
|
|
156
|
+
},
|
|
157
|
+
},
|
|
158
|
+
},
|
|
159
|
+
typeColors: {
|
|
160
|
+
type: 'system',
|
|
161
|
+
name: 'typeColors',
|
|
162
|
+
keys: {
|
|
163
|
+
body: 'system.color.fg.default',
|
|
164
|
+
heading: 'system.color.fg.strong',
|
|
165
|
+
hint: 'system.color.fg.muted.soft',
|
|
166
|
+
inverse: 'system.color.fg.inverse',
|
|
167
|
+
label: 'system.color.fg.default',
|
|
168
|
+
link: 'system.color.fg.primary.default',
|
|
169
|
+
selectHighlight: 'system.color.fg.primary.default',
|
|
170
|
+
selectHighlightInverse: 'system.color.fg.inverse',
|
|
171
|
+
},
|
|
172
|
+
},
|
|
86
173
|
borderRadius: {
|
|
87
174
|
name: 'shape',
|
|
88
175
|
type: 'system',
|
|
@@ -148,7 +235,7 @@ export const systemColors = {
|
|
|
148
235
|
licorice400: 'system.color.fg.muted.strong',
|
|
149
236
|
licorice500: 'system.color.fg.muted.stronger',
|
|
150
237
|
},
|
|
151
|
-
'border,borderColor,borderTopColor,borderRightColor,borderBottomColor,borderLeftColor,borderInline,borderInlineStart,borderInlineEnd,
|
|
238
|
+
'border,borderColor,borderTop,borderTopColor,borderRight,borderRightColor,borderBottom,borderBottomColor,borderLeft,borderLeftColor,borderInlineColor,borderBlockColor,borderInline,borderInlineStart,borderInlineStartColor,borderInlineEnd,borderInlineEndColor,borderBlockStart,borderBlockStartColor,borderBlockEnd,borderBlockEndColor,borderColorFocus,borderColorHover,borderColorActive': {
|
|
152
239
|
blackPepper400: 'system.color.border.contrast.default',
|
|
153
240
|
blackPepper500: 'system.color.border.contrast.strong',
|
|
154
241
|
blueberry400: 'system.color.border.primary.default',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrateColorTokens.d.ts","sourceRoot":"","sources":["../../../lib/v13.2/migrateColorTokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,SAAS,EAAC,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"migrateColorTokens.d.ts","sourceRoot":"","sources":["../../../lib/v13.2/migrateColorTokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,SAAS,EAAC,MAAM,aAAa,CAAC;AAkBlD,QAAA,MAAM,SAAS,EAAE,SAsKhB,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
@@ -1,6 +1,10 @@
|
|
|
1
|
-
import { addMissingImports, filterOutImports, transformObjectPropertyRecursively } from './utils';
|
|
2
|
-
import { mapping } from './mapping';
|
|
3
|
-
const canvasImportSources = [
|
|
1
|
+
import { addMissingImports, filterOutImports, getImports, transformObjectPropertyRecursively, varToMemberExpression, } from './utils';
|
|
2
|
+
import { mapping, paletteNames } from './mapping';
|
|
3
|
+
const canvasImportSources = [
|
|
4
|
+
'@workday/canvas-kit-styling',
|
|
5
|
+
'@workday/canvas-kit-react/tokens',
|
|
6
|
+
'@workday/canvas-colors-web',
|
|
7
|
+
];
|
|
4
8
|
const transform = (file, api) => {
|
|
5
9
|
const j = api.jscodeshift;
|
|
6
10
|
const root = j(file.source);
|
|
@@ -11,7 +15,7 @@ const transform = (file, api) => {
|
|
|
11
15
|
source: { value: (value) => canvasImportSources.includes(value) },
|
|
12
16
|
})
|
|
13
17
|
.forEach(nodePath => {
|
|
14
|
-
importDeclaration = { ...importDeclaration, ...
|
|
18
|
+
importDeclaration = { ...importDeclaration, ...getImports(nodePath) };
|
|
15
19
|
});
|
|
16
20
|
if (!Object.values(importDeclaration).includes('colors')) {
|
|
17
21
|
return root.toSource();
|
|
@@ -26,7 +30,7 @@ const transform = (file, api) => {
|
|
|
26
30
|
const name = nodePath.value.callee.name;
|
|
27
31
|
const stylesDeclaration = nodePath.value.arguments[0];
|
|
28
32
|
const isCanvasKitStyling = importDeclaration[name] === 'createStyles' || importDeclaration[name] === 'createStencil';
|
|
29
|
-
if (stylesDeclaration.type === 'ObjectExpression') {
|
|
33
|
+
if ((stylesDeclaration === null || stylesDeclaration === void 0 ? void 0 : stylesDeclaration.type) === 'ObjectExpression') {
|
|
30
34
|
stylesDeclaration.properties = stylesDeclaration.properties.map((prop) => transformObjectPropertyRecursively({ j, root }, prop, importDeclaration, isCanvasKitStyling));
|
|
31
35
|
}
|
|
32
36
|
});
|
|
@@ -35,21 +39,61 @@ const transform = (file, api) => {
|
|
|
35
39
|
});
|
|
36
40
|
root
|
|
37
41
|
.find(j.MemberExpression, (value) => {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
42
|
+
// Matches: commonColors.background
|
|
43
|
+
const isTwoParts = value.type === 'MemberExpression' &&
|
|
44
|
+
value.object.type === 'Identifier' &&
|
|
45
|
+
checkImport(value.object.name);
|
|
46
|
+
// Matches: inputColors.disabled.border
|
|
47
|
+
const isThreeParts = value.type === 'MemberExpression' &&
|
|
48
|
+
value.object.type === 'MemberExpression' &&
|
|
49
|
+
value.object.object.type === 'Identifier' &&
|
|
50
|
+
checkImport(value.object.object.name);
|
|
51
|
+
return isTwoParts || isThreeParts;
|
|
43
52
|
})
|
|
44
53
|
.replaceWith(nodePath => {
|
|
54
|
+
var _a;
|
|
45
55
|
const mainWrapper = nodePath.value.object;
|
|
46
|
-
if (mainWrapper.type === '
|
|
56
|
+
if (mainWrapper.type === 'MemberExpression') {
|
|
57
|
+
const mainObject = mainWrapper.object;
|
|
58
|
+
const mainName = mainObject.type === 'Identifier' ? mainObject.name : '';
|
|
59
|
+
const mainProperty = mainWrapper.property;
|
|
60
|
+
const lowestProperty = nodePath.value.property;
|
|
61
|
+
const importedName = importDeclaration[mainName];
|
|
62
|
+
const map = mapping[importedName];
|
|
63
|
+
if ((map === null || map === void 0 ? void 0 : map.type) === 'system' &&
|
|
64
|
+
importedName &&
|
|
65
|
+
importedName.toLowerCase().includes('colors') &&
|
|
66
|
+
mainProperty.type === 'Identifier' &&
|
|
67
|
+
lowestProperty.type === 'Identifier') {
|
|
68
|
+
const innerGroup = map.keys[mainProperty.name] || {};
|
|
69
|
+
const token = innerGroup[lowestProperty.name];
|
|
70
|
+
if (token) {
|
|
71
|
+
addMissingImports({ j, root }, { importPath: '@workday/canvas-tokens-web', specifiers: ['system'] });
|
|
72
|
+
addMissingImports({ j, root }, { importPath: '@workday/canvas-kit-styling', specifiers: ['cssVar'] });
|
|
73
|
+
return j.callExpression(j.identifier('cssVar'), [varToMemberExpression(j, token)]);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
if (mainWrapper.type === 'Identifier' &&
|
|
78
|
+
((_a = importDeclaration[mainWrapper.name]) === null || _a === void 0 ? void 0 : _a.toLowerCase().includes('colors'))) {
|
|
47
79
|
const mainObject = mainWrapper;
|
|
48
80
|
const mainName = mainObject.name;
|
|
49
81
|
const lowestProperty = nodePath.value.property;
|
|
50
82
|
const importedName = importDeclaration[mainName];
|
|
51
83
|
const map = mapping[importedName];
|
|
52
|
-
if (map
|
|
84
|
+
if ((map === null || map === void 0 ? void 0 : map.type) === 'system' &&
|
|
85
|
+
lowestProperty.type === 'Identifier' &&
|
|
86
|
+
importedName !== 'inputColors') {
|
|
87
|
+
const token = map.keys[lowestProperty.name];
|
|
88
|
+
if (token && typeof token === 'string') {
|
|
89
|
+
addMissingImports({ j, root }, { importPath: '@workday/canvas-tokens-web', specifiers: ['system'] });
|
|
90
|
+
addMissingImports({ j, root }, { importPath: '@workday/canvas-kit-styling', specifiers: ['cssVar'] });
|
|
91
|
+
return j.callExpression(j.identifier('cssVar'), [varToMemberExpression(j, token)]);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
if ((map === null || map === void 0 ? void 0 : map.type) === 'base' &&
|
|
95
|
+
lowestProperty.type === 'Identifier' &&
|
|
96
|
+
paletteNames.some(name => lowestProperty.name.includes(name))) {
|
|
53
97
|
addMissingImports({ j, root }, { importPath: '@workday/canvas-tokens-web', specifiers: ['base'] });
|
|
54
98
|
addMissingImports({ j, root }, { importPath: '@workday/canvas-kit-styling', specifiers: ['cssVar'] });
|
|
55
99
|
return j.callExpression(j.identifier('cssVar'), [
|
|
@@ -57,7 +101,14 @@ const transform = (file, api) => {
|
|
|
57
101
|
]);
|
|
58
102
|
}
|
|
59
103
|
}
|
|
60
|
-
return nodePath;
|
|
104
|
+
return nodePath.value;
|
|
105
|
+
});
|
|
106
|
+
root
|
|
107
|
+
.find(j.ImportDeclaration, {
|
|
108
|
+
source: { value: (value) => canvasImportSources.includes(value) },
|
|
109
|
+
})
|
|
110
|
+
.forEach(nodePath => {
|
|
111
|
+
filterOutImports({ root, j }, nodePath, 'colors');
|
|
61
112
|
});
|
|
62
113
|
return root.toSource();
|
|
63
114
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrateDepthTokens.d.ts","sourceRoot":"","sources":["../../../lib/v13.2/migrateDepthTokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"migrateDepthTokens.d.ts","sourceRoot":"","sources":["../../../lib/v13.2/migrateDepthTokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,aAAa,CAAC;AAatC,QAAA,MAAM,SAAS,EAAE,SAqLhB,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
@@ -1,5 +1,10 @@
|
|
|
1
|
-
import { addMissingImports, filterOutImports } from './utils';
|
|
2
|
-
const canvasImportSources = [
|
|
1
|
+
import { addMissingImports, filterOutImports, getImports } from './utils';
|
|
2
|
+
const canvasImportSources = [
|
|
3
|
+
'@workday/canvas-kit-styling',
|
|
4
|
+
'@workday/canvas-kit-react/tokens',
|
|
5
|
+
'@workday/canvas-depth-web',
|
|
6
|
+
];
|
|
7
|
+
const depthValues = ['0', '1', '2', '3', '4', '5', '6'];
|
|
3
8
|
const transform = (file, api) => {
|
|
4
9
|
const j = api.jscodeshift;
|
|
5
10
|
const root = j(file.source);
|
|
@@ -10,7 +15,7 @@ const transform = (file, api) => {
|
|
|
10
15
|
source: { value: (value) => canvasImportSources.includes(value) },
|
|
11
16
|
})
|
|
12
17
|
.forEach(nodePath => {
|
|
13
|
-
importDeclaration = { ...importDeclaration, ...
|
|
18
|
+
importDeclaration = { ...importDeclaration, ...getImports(nodePath) };
|
|
14
19
|
});
|
|
15
20
|
if (!Object.values(importDeclaration).includes('depth')) {
|
|
16
21
|
return root.toSource();
|
|
@@ -21,28 +26,31 @@ const transform = (file, api) => {
|
|
|
21
26
|
type: 'MemberExpression',
|
|
22
27
|
object: {
|
|
23
28
|
type: 'Identifier',
|
|
24
|
-
name: 'depth',
|
|
29
|
+
name: (name) => importDeclaration[name] === 'depth',
|
|
25
30
|
},
|
|
26
31
|
property: {
|
|
27
|
-
type: 'NumericLiteral',
|
|
32
|
+
type: (type) => type === 'NumericLiteral' || type === 'StringLiteral',
|
|
33
|
+
value: (value) => ['0', '1', '2', '3', '4', '5', '6'].includes(`${value}`),
|
|
28
34
|
},
|
|
29
35
|
},
|
|
30
36
|
})
|
|
31
37
|
.replaceWith(nodePath => {
|
|
32
38
|
const argument = nodePath.value.argument;
|
|
33
|
-
if (argument.type === 'MemberExpression' &&
|
|
39
|
+
if (argument.type === 'MemberExpression' &&
|
|
40
|
+
(argument.property.type === 'NumericLiteral' || argument.property.type === 'StringLiteral')) {
|
|
34
41
|
const depthValue = argument.property.value;
|
|
42
|
+
const isDepthNotZero = `${depthValue}` !== '0';
|
|
35
43
|
addMissingImports({ j, root }, { importPath: '@workday/canvas-tokens-web', specifiers: ['system'] });
|
|
36
|
-
if (
|
|
44
|
+
if (isDepthNotZero) {
|
|
37
45
|
addMissingImports({ j, root }, { importPath: '@workday/canvas-kit-styling', specifiers: ['cssVar'] });
|
|
38
46
|
}
|
|
39
|
-
return
|
|
40
|
-
? j.
|
|
41
|
-
j.memberExpression(j.memberExpression(j.identifier('system'), j.identifier('depth')), j.numericLiteral(depthValue), true),
|
|
42
|
-
])
|
|
43
|
-
: j.
|
|
47
|
+
return j.objectProperty(j.identifier('boxShadow'), isDepthNotZero
|
|
48
|
+
? j.callExpression(j.identifier('cssVar'), [
|
|
49
|
+
j.memberExpression(j.memberExpression(j.identifier('system'), j.identifier('depth')), j.numericLiteral(parseInt(`${depthValue}`, 10)), true),
|
|
50
|
+
])
|
|
51
|
+
: j.literal('none'));
|
|
44
52
|
}
|
|
45
|
-
return nodePath;
|
|
53
|
+
return nodePath.value;
|
|
46
54
|
});
|
|
47
55
|
root
|
|
48
56
|
.find(j.MemberExpression, (value) => {
|
|
@@ -53,19 +61,22 @@ const transform = (file, api) => {
|
|
|
53
61
|
.replaceWith(nodePath => {
|
|
54
62
|
if (nodePath.value.object.type === 'MemberExpression' &&
|
|
55
63
|
nodePath.value.object.object.type === 'Identifier' &&
|
|
56
|
-
nodePath.value.object.property.type === 'NumericLiteral'
|
|
64
|
+
(nodePath.value.object.property.type === 'NumericLiteral' ||
|
|
65
|
+
(nodePath.value.object.property.type === 'StringLiteral' &&
|
|
66
|
+
depthValues.includes(nodePath.value.object.property.value)))) {
|
|
57
67
|
const value = nodePath.value.object.property.value;
|
|
58
|
-
|
|
68
|
+
const isNotZero = `${value}` !== '0';
|
|
69
|
+
if (isNotZero) {
|
|
59
70
|
addMissingImports({ j, root }, { importPath: '@workday/canvas-kit-styling', specifiers: ['cssVar'] });
|
|
60
71
|
addMissingImports({ j, root }, { importPath: '@workday/canvas-tokens-web', specifiers: ['system'] });
|
|
61
72
|
}
|
|
62
|
-
return
|
|
73
|
+
return !isNotZero
|
|
63
74
|
? j.literal('none')
|
|
64
75
|
: j.callExpression(j.identifier('cssVar'), [
|
|
65
|
-
j.memberExpression(j.memberExpression(j.identifier('system'), j.identifier('depth')), j.numericLiteral(value), true),
|
|
76
|
+
j.memberExpression(j.memberExpression(j.identifier('system'), j.identifier('depth')), j.numericLiteral(parseInt(`${value}`, 10)), true),
|
|
66
77
|
]);
|
|
67
78
|
}
|
|
68
|
-
return nodePath;
|
|
79
|
+
return nodePath.value;
|
|
69
80
|
});
|
|
70
81
|
root
|
|
71
82
|
.find(j.MemberExpression, (value) => {
|
|
@@ -77,13 +88,11 @@ const transform = (file, api) => {
|
|
|
77
88
|
})
|
|
78
89
|
.replaceWith(nodePath => {
|
|
79
90
|
const mainWrapper = nodePath.value.object;
|
|
80
|
-
if (mainWrapper.type === 'Identifier' && importDeclaration[mainWrapper.name]
|
|
81
|
-
const mainObject = mainWrapper;
|
|
82
|
-
const mainName = mainObject.name;
|
|
91
|
+
if (mainWrapper.type === 'Identifier' && importDeclaration[mainWrapper.name] === 'depth') {
|
|
83
92
|
const lowestProperty = nodePath.value.property;
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
const isZero = lowestProperty.value
|
|
93
|
+
if (lowestProperty.type === 'NumericLiteral' ||
|
|
94
|
+
(lowestProperty.type === 'StringLiteral' && depthValues.includes(lowestProperty.value))) {
|
|
95
|
+
const isZero = `${lowestProperty.value}` === '0';
|
|
87
96
|
if (!isZero) {
|
|
88
97
|
addMissingImports({ j, root }, { importPath: '@workday/canvas-kit-styling', specifiers: ['cssVar'] });
|
|
89
98
|
addMissingImports({ j, root }, { importPath: '@workday/canvas-tokens-web', specifiers: ['system'] });
|
|
@@ -92,12 +101,19 @@ const transform = (file, api) => {
|
|
|
92
101
|
j.property('init', j.identifier('boxShadow'), isZero
|
|
93
102
|
? j.literal('none')
|
|
94
103
|
: j.callExpression(j.identifier('cssVar'), [
|
|
95
|
-
j.memberExpression(j.memberExpression(j.identifier('system'), j.identifier('depth')), j.numericLiteral(lowestProperty.value), true),
|
|
104
|
+
j.memberExpression(j.memberExpression(j.identifier('system'), j.identifier('depth')), j.numericLiteral(parseInt(`${lowestProperty.value}`, 10)), true),
|
|
96
105
|
])),
|
|
97
106
|
]);
|
|
98
107
|
}
|
|
99
108
|
}
|
|
100
|
-
return nodePath;
|
|
109
|
+
return nodePath.value;
|
|
110
|
+
});
|
|
111
|
+
root
|
|
112
|
+
.find(j.ImportDeclaration, {
|
|
113
|
+
source: { value: (value) => canvasImportSources.includes(value) },
|
|
114
|
+
})
|
|
115
|
+
.forEach(nodePath => {
|
|
116
|
+
filterOutImports({ root, j }, nodePath, 'depth');
|
|
101
117
|
});
|
|
102
118
|
return root.toSource();
|
|
103
119
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrateOtherTokens.d.ts","sourceRoot":"","sources":["../../../lib/v13.2/migrateOtherTokens.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"migrateOtherTokens.d.ts","sourceRoot":"","sources":["../../../lib/v13.2/migrateOtherTokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,SAAS,EAAC,MAAM,aAAa,CAAC;AAmBlD,QAAA,MAAM,SAAS,EAAE,SAgHhB,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
@@ -1,6 +1,11 @@
|
|
|
1
|
-
import { addMissingImports, filterOutImports,
|
|
2
|
-
import { mapping
|
|
3
|
-
const canvasImportSources = [
|
|
1
|
+
import { addMissingImports, filterOutImports, getImports, transformObjectPropertyRecursively, } from './utils';
|
|
2
|
+
import { mapping } from './mapping';
|
|
3
|
+
const canvasImportSources = [
|
|
4
|
+
'@workday/canvas-kit-styling',
|
|
5
|
+
'@workday/canvas-kit-react/tokens',
|
|
6
|
+
'@workday/canvas-space-web',
|
|
7
|
+
];
|
|
8
|
+
const tokens = ['space', 'borderRadius'];
|
|
4
9
|
const transform = (file, api) => {
|
|
5
10
|
const j = api.jscodeshift;
|
|
6
11
|
const root = j(file.source);
|
|
@@ -11,9 +16,12 @@ const transform = (file, api) => {
|
|
|
11
16
|
source: { value: (value) => canvasImportSources.includes(value) },
|
|
12
17
|
})
|
|
13
18
|
.forEach(nodePath => {
|
|
14
|
-
importDeclaration = {
|
|
19
|
+
importDeclaration = {
|
|
20
|
+
...importDeclaration,
|
|
21
|
+
...getImports(nodePath),
|
|
22
|
+
};
|
|
15
23
|
});
|
|
16
|
-
if (!Object.values(importDeclaration).some(value => value
|
|
24
|
+
if (!Object.values(importDeclaration).some(value => tokens.includes(value))) {
|
|
17
25
|
return root.toSource();
|
|
18
26
|
}
|
|
19
27
|
root
|
|
@@ -23,60 +31,11 @@ const transform = (file, api) => {
|
|
|
23
31
|
},
|
|
24
32
|
})
|
|
25
33
|
.forEach(nodePath => {
|
|
26
|
-
addMissingImports({ j, root }, { importPath: '@workday/canvas-tokens-web', specifiers: ['system'] });
|
|
27
34
|
const name = nodePath.value.callee.name;
|
|
28
35
|
const stylesDeclaration = nodePath.value.arguments[0];
|
|
29
36
|
const isCanvasKitStyling = importDeclaration[name] === 'createStyles' || importDeclaration[name] === 'createStencil';
|
|
30
|
-
if (stylesDeclaration.type === 'ObjectExpression') {
|
|
31
|
-
|
|
32
|
-
var _a;
|
|
33
|
-
if (property.type === 'ObjectProperty' &&
|
|
34
|
-
property.key.type === 'Identifier' &&
|
|
35
|
-
property.value.type === 'MemberExpression' &&
|
|
36
|
-
property.value.object.type === 'Identifier' &&
|
|
37
|
-
property.value.property.type === 'Identifier' &&
|
|
38
|
-
importDeclaration[property.value.object.name] === 'colors') {
|
|
39
|
-
const key = property.key.name;
|
|
40
|
-
const tokens = (_a = Object.entries(systemColors).find(([blockKey]) => blockKey.split(',').some(prop => prop === key))) === null || _a === void 0 ? void 0 : _a[1];
|
|
41
|
-
const { property: value } = property.value;
|
|
42
|
-
const colorToken = tokens === null || tokens === void 0 ? void 0 : tokens[value.name];
|
|
43
|
-
if (colorToken) {
|
|
44
|
-
if (!isCanvasKitStyling) {
|
|
45
|
-
addMissingImports({ j, root }, { importPath: '@workday/canvas-kit-styling', specifiers: ['cssVar'] });
|
|
46
|
-
}
|
|
47
|
-
return j.objectProperty(j.identifier(key), isCanvasKitStyling
|
|
48
|
-
? varToMemberExpression(j, colorToken)
|
|
49
|
-
: j.callExpression(j.identifier('cssVar'), [varToMemberExpression(j, colorToken)]));
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
if (property.type === 'ObjectProperty' && property.value.type === 'TemplateLiteral') {
|
|
53
|
-
const templateLiteral = property.value;
|
|
54
|
-
const transformedQuasis = templateLiteral.quasis.map((quasi) => quasi);
|
|
55
|
-
const transformedExpressions = templateLiteral.expressions.map((expr) => {
|
|
56
|
-
var _a;
|
|
57
|
-
if (expr.type === 'MemberExpression' &&
|
|
58
|
-
expr.object.type === 'Identifier' &&
|
|
59
|
-
expr.property.type === 'Identifier' &&
|
|
60
|
-
importDeclaration[expr.object.name] === 'colors') {
|
|
61
|
-
const tokens = (_a = Object.entries(systemColors).find(([blockKey]) => blockKey.split(',').some(prop => prop === property.key.name))) === null || _a === void 0 ? void 0 : _a[1];
|
|
62
|
-
const colorToken = tokens === null || tokens === void 0 ? void 0 : tokens[expr.property.name];
|
|
63
|
-
if (colorToken) {
|
|
64
|
-
addMissingImports({ j, root }, { importPath: '@workday/canvas-kit-styling', specifiers: ['cssVar'] });
|
|
65
|
-
return j.callExpression(j.identifier('cssVar'), [
|
|
66
|
-
varToMemberExpression(j, colorToken),
|
|
67
|
-
]);
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
return expr;
|
|
71
|
-
});
|
|
72
|
-
return j.objectProperty(property.key, j.templateLiteral(transformedQuasis, transformedExpressions));
|
|
73
|
-
}
|
|
74
|
-
if (property.type === 'ObjectProperty' && property.value.type === 'ObjectExpression') {
|
|
75
|
-
return j.objectProperty(property.key, j.objectExpression(property.value.properties.map(transformProperty)));
|
|
76
|
-
}
|
|
77
|
-
return property;
|
|
78
|
-
};
|
|
79
|
-
stylesDeclaration.properties = stylesDeclaration.properties.map(transformProperty);
|
|
37
|
+
if ((stylesDeclaration === null || stylesDeclaration === void 0 ? void 0 : stylesDeclaration.type) === 'ObjectExpression') {
|
|
38
|
+
stylesDeclaration.properties = stylesDeclaration.properties.map((prop) => transformObjectPropertyRecursively({ j, root }, prop, importDeclaration, isCanvasKitStyling, [...tokens]));
|
|
80
39
|
}
|
|
81
40
|
});
|
|
82
41
|
root
|
|
@@ -89,23 +48,34 @@ const transform = (file, api) => {
|
|
|
89
48
|
})
|
|
90
49
|
.replaceWith(nodePath => {
|
|
91
50
|
const mainWrapper = nodePath.value.object;
|
|
92
|
-
if (mainWrapper.type === 'Identifier' &&
|
|
93
|
-
|
|
94
|
-
const mainName =
|
|
51
|
+
if (mainWrapper.type === 'Identifier' &&
|
|
52
|
+
tokens.includes(importDeclaration[mainWrapper.name])) {
|
|
53
|
+
const mainName = mainWrapper.name;
|
|
95
54
|
const lowestProperty = nodePath.value.property;
|
|
96
55
|
const importedName = importDeclaration[mainName];
|
|
97
56
|
const map = mapping[importedName];
|
|
98
|
-
if (
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
]);
|
|
57
|
+
if (['space', 'borderRadius'].includes(importedName) &&
|
|
58
|
+
(map === null || map === void 0 ? void 0 : map.type) === 'system' &&
|
|
59
|
+
lowestProperty.type === 'Identifier') {
|
|
60
|
+
const newValue = map.keys[lowestProperty.name];
|
|
61
|
+
if (!newValue) {
|
|
62
|
+
return nodePath.value;
|
|
105
63
|
}
|
|
64
|
+
addMissingImports({ j, root }, { importPath: '@workday/canvas-kit-styling', specifiers: ['cssVar'] });
|
|
65
|
+
addMissingImports({ j, root }, { importPath: '@workday/canvas-tokens-web', specifiers: ['system'] });
|
|
66
|
+
return j.callExpression(j.identifier('cssVar'), [
|
|
67
|
+
j.memberExpression(j.memberExpression(j.identifier(map.type), j.identifier(map.name)), j.identifier(map.keys[lowestProperty.name])),
|
|
68
|
+
]);
|
|
106
69
|
}
|
|
107
70
|
}
|
|
108
|
-
return nodePath;
|
|
71
|
+
return nodePath.value;
|
|
72
|
+
});
|
|
73
|
+
root
|
|
74
|
+
.find(j.ImportDeclaration, {
|
|
75
|
+
source: { value: (value) => canvasImportSources.includes(value) },
|
|
76
|
+
})
|
|
77
|
+
.forEach(nodePath => {
|
|
78
|
+
filterOutImports({ root, j }, nodePath, tokens);
|
|
109
79
|
});
|
|
110
80
|
return root.toSource();
|
|
111
81
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrateTypeTokens.d.ts","sourceRoot":"","sources":["../../../lib/v13.2/migrateTypeTokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+B,SAAS,EAAC,MAAM,aAAa,CAAC;AASpE,QAAA,MAAM,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"migrateTypeTokens.d.ts","sourceRoot":"","sources":["../../../lib/v13.2/migrateTypeTokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+B,SAAS,EAAC,MAAM,aAAa,CAAC;AASpE,QAAA,MAAM,SAAS,EAAE,SA6OhB,CAAC;AAEF,eAAe,SAAS,CAAC"}
|