@duro-app/eslint-plugin 5.8.0 → 5.9.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/README.md +23 -6
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/rules/index.d.ts +1 -0
- package/dist/rules/index.d.ts.map +1 -1
- package/dist/rules/no-raw-design-values.d.ts +14 -5
- package/dist/rules/no-raw-design-values.d.ts.map +1 -1
- package/dist/rules/no-raw-design-values.js +112 -52
- package/dist/rules/no-raw-design-values.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -114,12 +114,29 @@ strong / accent`; outline width → `borders.focusRing`; outline offset →
|
|
|
114
114
|
Allowed: `0`, relative units (`%`, `vh`, `fr`, `em`, `rem`, `ch`…), keywords
|
|
115
115
|
(`auto`, `max-content`…), identifiers and member expressions (tokens), a
|
|
116
116
|
`calc()` of tokens. Skipped on purpose: negatives on spacing properties,
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
(
|
|
117
|
+
`'opacity 150ms'`-style transitions, and positions (`top`, `left`) and
|
|
118
|
+
`lineHeight`. Since 3.0 it ships as `error`: a raw value is the drift the
|
|
119
|
+
design system exists to stop.
|
|
120
|
+
|
|
121
|
+
**Shorthands** (since 5.7). A spacing or radius string with several words
|
|
122
|
+
(`padding: '4px 8px'`, `gap: '8px 16px'`) is split on whitespace and every
|
|
123
|
+
nonzero px word is checked as a single value would be: `'4px 8px'` gives two
|
|
124
|
+
reports, `'6px 14px'` gives `rawMicroSpacing` and `offScaleSpacing`. `0`,
|
|
125
|
+
`auto`, `%`, `rem`, `em`, `var(...)` and `calc(...)` words pass. A shorthand
|
|
126
|
+
report carries **no suggestion**, because swapping one word would rewrite the
|
|
127
|
+
whole string; the message names the token for each word.
|
|
128
|
+
|
|
129
|
+
**Inline styles** (since 5.7). A `style={{ ... }}` object literal on any JSX
|
|
130
|
+
element is read like a `css.create` style, so a raw colour, font size, weight,
|
|
131
|
+
measure or px in a shorthand is reported. These reports carry **no
|
|
132
|
+
suggestion**, since plain-React code has no `.css.ts` token imports; the
|
|
133
|
+
message still names the token. `style={styles.x}`, arrays, identifiers and
|
|
134
|
+
spreads are ignored, and so are custom-property keys (`'--wb-vw': '12px'`) and
|
|
135
|
+
computed keys. Set `inlineStyle: false` to turn this off.
|
|
136
|
+
|
|
137
|
+
Options: `{factories?: string[], spacingProperties?: string[], radiiProperties?: string[], exemptFiles?: string[], inlineStyle?: boolean}`
|
|
138
|
+
(property lists replace the defaults, they don't merge). `inlineStyle`
|
|
139
|
+
defaults to `true`. `exemptFiles` takes
|
|
123
140
|
globs (`**`, `*`, `?`, `{a,b}`), matched against the path relative to the
|
|
124
141
|
working directory and the absolute path; a matching file is not checked. Name
|
|
125
142
|
only a file whose literals are a technique, not a design value — Duro names
|
package/dist/index.d.ts
CHANGED
|
@@ -21,6 +21,7 @@ declare const plugin: {
|
|
|
21
21
|
spacingProperties?: string[];
|
|
22
22
|
radiiProperties?: string[];
|
|
23
23
|
exemptFiles?: string[];
|
|
24
|
+
inlineStyle?: boolean;
|
|
24
25
|
} | undefined)?], unknown, TSESLint.RuleListener>;
|
|
25
26
|
'no-raw-layer-values': TSESLint.RuleModule<"replaceWithToken" | "rawZIndex" | "offScaleZIndex" | "rawEffect", [({
|
|
26
27
|
factories?: string[];
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,0BAA0B,CAAA;AACtD,OAAO,EAAC,KAAK,EAAC,MAAM,kBAAkB,CAAA;AAEtC,QAAA,MAAM,MAAM
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,0BAA0B,CAAA;AACtD,OAAO,EAAC,KAAK,EAAC,MAAM,kBAAkB,CAAA;AAEtC,QAAA,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAGK,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC;CAC1D,CAAA;AA0BD,eAAe,MAAM,CAAA;AACrB,OAAO,EAAC,KAAK,EAAC,CAAA"}
|
package/dist/rules/index.d.ts
CHANGED
|
@@ -15,6 +15,7 @@ export declare const rules: {
|
|
|
15
15
|
spacingProperties?: string[];
|
|
16
16
|
radiiProperties?: string[];
|
|
17
17
|
exemptFiles?: string[];
|
|
18
|
+
inlineStyle?: boolean;
|
|
18
19
|
} | undefined)?], unknown, import("@typescript-eslint/utils/ts-eslint").RuleListener>;
|
|
19
20
|
'no-raw-layer-values': import("@typescript-eslint/utils/ts-eslint").RuleModule<"replaceWithToken" | "rawZIndex" | "offScaleZIndex" | "rawEffect", [({
|
|
20
21
|
factories?: string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/rules/index.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,KAAK
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/rules/index.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CASjB,CAAA"}
|
|
@@ -6,6 +6,7 @@ type Options = [
|
|
|
6
6
|
spacingProperties?: string[];
|
|
7
7
|
radiiProperties?: string[];
|
|
8
8
|
exemptFiles?: string[];
|
|
9
|
+
inlineStyle?: boolean;
|
|
9
10
|
}?
|
|
10
11
|
];
|
|
11
12
|
/**
|
|
@@ -38,13 +39,21 @@ type Options = [
|
|
|
38
39
|
* - box-shadow in a template literal: a px length in its static text is a raw
|
|
39
40
|
* shadow (`inset 0 0 0 1px ${colors.border}`); use a `shadows.*` token.
|
|
40
41
|
*
|
|
42
|
+
* - shorthands: on a spacing or radius property a multi-word string
|
|
43
|
+
* ('4px 8px') is split on whitespace and each nonzero px word is checked
|
|
44
|
+
* as a single value, without a suggestion (a swap would rewrite the whole
|
|
45
|
+
* string). 0, auto, %, rem, em, var() and calc() words pass.
|
|
46
|
+
* - inline styles: a `style={{...}}` object literal on any JSX element is
|
|
47
|
+
* walked like a css.create style, without suggestions (plain React has no
|
|
48
|
+
* token imports). References, arrays, spreads, custom-property keys and
|
|
49
|
+
* computed keys are ignored. Option `inlineStyle: false` turns it off.
|
|
50
|
+
*
|
|
41
51
|
* Option `exemptFiles` (globs) silences the rule for whole files.
|
|
42
52
|
*
|
|
43
|
-
* Skipped on purpose: 0, negatives on the spacing properties,
|
|
44
|
-
* ('
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
* literals).
|
|
53
|
+
* Skipped on purpose: 0, negatives on the spacing properties, transitions
|
|
54
|
+
* ('opacity 150ms'), identifiers, member expressions, template literals and
|
|
55
|
+
* calls — the rule reads literals, not expressions (the size, border-width
|
|
56
|
+
* and box-shadow properties also read static px text in template literals).
|
|
48
57
|
*/
|
|
49
58
|
export declare const noRawDesignValues: TSESLint.RuleModule<MessageIds, Options>;
|
|
50
59
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"no-raw-design-values.d.ts","sourceRoot":"","sources":["../../src/rules/no-raw-design-values.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,QAAQ,EAAW,MAAM,0BAA0B,CAAA;AA6BhE,KAAK,UAAU,GACX,eAAe,GACf,UAAU,GACV,YAAY,GACZ,iBAAiB,GACjB,WAAW,GACX,iBAAiB,GACjB,gBAAgB,GAChB,eAAe,GACf,aAAa,GACb,eAAe,GACf,WAAW,GACX,aAAa,GACb,WAAW,GACX,YAAY,GACZ,kBAAkB,GAClB,qBAAqB,GACrB,oBAAoB,GACpB,iBAAiB,GACjB,UAAU,GACV,kBAAkB,CAAA;AACtB,KAAK,OAAO,GAAG;IACb;QACE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;QACpB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAA;QAC5B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;QAC1B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"no-raw-design-values.d.ts","sourceRoot":"","sources":["../../src/rules/no-raw-design-values.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,QAAQ,EAAW,MAAM,0BAA0B,CAAA;AA6BhE,KAAK,UAAU,GACX,eAAe,GACf,UAAU,GACV,YAAY,GACZ,iBAAiB,GACjB,WAAW,GACX,iBAAiB,GACjB,gBAAgB,GAChB,eAAe,GACf,aAAa,GACb,eAAe,GACf,WAAW,GACX,aAAa,GACb,WAAW,GACX,YAAY,GACZ,kBAAkB,GAClB,qBAAqB,GACrB,oBAAoB,GACpB,iBAAiB,GACjB,UAAU,GACV,kBAAkB,CAAA;AACtB,KAAK,OAAO,GAAG;IACb;QACE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;QACpB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAA;QAC5B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;QAC1B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;QACtB,WAAW,CAAC,EAAE,OAAO,CAAA;KACtB,CAAC;CACH,CAAA;AA+HD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,eAAO,MAAM,iBAAiB,EAAE,QAAQ,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,CAomBtE,CAAA"}
|
|
@@ -133,13 +133,21 @@ const scale = (table) => Object.keys(table)
|
|
|
133
133
|
* - box-shadow in a template literal: a px length in its static text is a raw
|
|
134
134
|
* shadow (`inset 0 0 0 1px ${colors.border}`); use a `shadows.*` token.
|
|
135
135
|
*
|
|
136
|
+
* - shorthands: on a spacing or radius property a multi-word string
|
|
137
|
+
* ('4px 8px') is split on whitespace and each nonzero px word is checked
|
|
138
|
+
* as a single value, without a suggestion (a swap would rewrite the whole
|
|
139
|
+
* string). 0, auto, %, rem, em, var() and calc() words pass.
|
|
140
|
+
* - inline styles: a `style={{...}}` object literal on any JSX element is
|
|
141
|
+
* walked like a css.create style, without suggestions (plain React has no
|
|
142
|
+
* token imports). References, arrays, spreads, custom-property keys and
|
|
143
|
+
* computed keys are ignored. Option `inlineStyle: false` turns it off.
|
|
144
|
+
*
|
|
136
145
|
* Option `exemptFiles` (globs) silences the rule for whole files.
|
|
137
146
|
*
|
|
138
|
-
* Skipped on purpose: 0, negatives on the spacing properties,
|
|
139
|
-
* ('
|
|
140
|
-
*
|
|
141
|
-
*
|
|
142
|
-
* literals).
|
|
147
|
+
* Skipped on purpose: 0, negatives on the spacing properties, transitions
|
|
148
|
+
* ('opacity 150ms'), identifiers, member expressions, template literals and
|
|
149
|
+
* calls — the rule reads literals, not expressions (the size, border-width
|
|
150
|
+
* and box-shadow properties also read static px text in template literals).
|
|
143
151
|
*/
|
|
144
152
|
export const noRawDesignValues = {
|
|
145
153
|
defaultOptions: [{}],
|
|
@@ -157,6 +165,7 @@ export const noRawDesignValues = {
|
|
|
157
165
|
spacingProperties: { type: 'array', items: { type: 'string' }, uniqueItems: true },
|
|
158
166
|
radiiProperties: { type: 'array', items: { type: 'string' }, uniqueItems: true },
|
|
159
167
|
exemptFiles: { type: 'array', items: { type: 'string' }, uniqueItems: true },
|
|
168
|
+
inlineStyle: { type: 'boolean' },
|
|
160
169
|
},
|
|
161
170
|
additionalProperties: false,
|
|
162
171
|
},
|
|
@@ -195,6 +204,7 @@ export const noRawDesignValues = {
|
|
|
195
204
|
: RADII_PROPERTIES;
|
|
196
205
|
const sourceCode = context.sourceCode;
|
|
197
206
|
const exemptFiles = options.exemptFiles ?? [];
|
|
207
|
+
const inlineStyle = options.inlineStyle ?? true;
|
|
198
208
|
if (matchesAnyGlob(context.filename, context.cwd, exemptFiles))
|
|
199
209
|
return {};
|
|
200
210
|
function calleeText(node) {
|
|
@@ -217,7 +227,7 @@ export const noRawDesignValues = {
|
|
|
217
227
|
* A px length on a size / border-width property. `fixable` is off for the
|
|
218
228
|
* width inside a shorthand, where a swap would have to rewrite the string.
|
|
219
229
|
*/
|
|
220
|
-
function checkMeasure(node, property, measure, px, negative, display, fixable) {
|
|
230
|
+
function checkMeasure(node, property, measure, px, negative, display, fixable, suggest) {
|
|
221
231
|
if (px === 0)
|
|
222
232
|
return;
|
|
223
233
|
const candidates = candidatesAt(measure, px);
|
|
@@ -240,14 +250,14 @@ export const noRawDesignValues = {
|
|
|
240
250
|
context.report({ node, messageId: 'nearestMeasureRole', data: { ...data, nearest: text } });
|
|
241
251
|
return;
|
|
242
252
|
}
|
|
243
|
-
const
|
|
253
|
+
const suggestions = fixable && suggest
|
|
244
254
|
? candidates.flatMap((token) => suggestReplacement(node, `${measure.group}.${token}`, measure.group, `tokens/${measure.group}.css`, negative ? (local) => `\`calc(-1 * \${${local}.${token}})\`` : undefined))
|
|
245
255
|
: [];
|
|
246
256
|
context.report({
|
|
247
257
|
node,
|
|
248
258
|
messageId: candidates.length > 1 ? 'ambiguousMeasure' : 'rawMeasure',
|
|
249
259
|
data,
|
|
250
|
-
suggest,
|
|
260
|
+
suggest: suggestions,
|
|
251
261
|
});
|
|
252
262
|
}
|
|
253
263
|
/** Static text holding a `<number>px` inside calc() or a template literal. */
|
|
@@ -260,12 +270,12 @@ export const noRawDesignValues = {
|
|
|
260
270
|
});
|
|
261
271
|
}
|
|
262
272
|
}
|
|
263
|
-
function checkMeasureString(node, property, measure, value) {
|
|
273
|
+
function checkMeasureString(node, property, measure, value, suggest) {
|
|
264
274
|
const text = value.trim();
|
|
265
275
|
const display = `'${value}'`;
|
|
266
276
|
const px = PX_RE.exec(text);
|
|
267
277
|
if (px) {
|
|
268
|
-
checkMeasure(node, property, measure, Number(px[2]), px[1] === '-', display, true);
|
|
278
|
+
checkMeasure(node, property, measure, Number(px[2]), px[1] === '-', display, true, suggest);
|
|
269
279
|
return;
|
|
270
280
|
}
|
|
271
281
|
if (BORDER_SHORTHAND_PROPERTIES.has(property)) {
|
|
@@ -273,14 +283,14 @@ export const noRawDesignValues = {
|
|
|
273
283
|
const words = text.replace(/\([^)]*\)/g, ' ').split(/\s+/);
|
|
274
284
|
const width = words.map((word) => PX_RE.exec(word)).find(Boolean);
|
|
275
285
|
if (width) {
|
|
276
|
-
checkMeasure(node, property, measure, Number(width[2]), false, display, false);
|
|
286
|
+
checkMeasure(node, property, measure, Number(width[2]), false, display, false, suggest);
|
|
277
287
|
}
|
|
278
288
|
return;
|
|
279
289
|
}
|
|
280
290
|
if (/\bcalc\(/.test(text))
|
|
281
291
|
checkStaticPx(node, property, text, display);
|
|
282
292
|
}
|
|
283
|
-
function checkColorValue(node, raw) {
|
|
293
|
+
function checkColorValue(node, raw, suggest) {
|
|
284
294
|
const match = HEX_RE.exec(raw) ?? FUNC_COLOR_RE.exec(raw);
|
|
285
295
|
if (!match)
|
|
286
296
|
return;
|
|
@@ -296,7 +306,7 @@ export const noRawDesignValues = {
|
|
|
296
306
|
node,
|
|
297
307
|
messageId: 'rawColorToken',
|
|
298
308
|
data: { value: literal, token, pkg: TOKENS_PKG },
|
|
299
|
-
suggest: isWholeValue
|
|
309
|
+
suggest: isWholeValue && suggest
|
|
300
310
|
? suggestReplacement(node, `colors.${token}`, 'colors', 'tokens/colors.css')
|
|
301
311
|
: [],
|
|
302
312
|
});
|
|
@@ -305,7 +315,7 @@ export const noRawDesignValues = {
|
|
|
305
315
|
context.report({ node, messageId: 'rawColor', data: { value: literal, pkg: TOKENS_PKG } });
|
|
306
316
|
}
|
|
307
317
|
}
|
|
308
|
-
function checkPxValue(node, property, px, display) {
|
|
318
|
+
function checkPxValue(node, property, px, display, suggest) {
|
|
309
319
|
if (spacingProperties.has(property)) {
|
|
310
320
|
const token = SPACING_TOKENS_BY_PX[px];
|
|
311
321
|
const micro = MICRO_SPACING_TOKENS_BY_PX[px];
|
|
@@ -314,7 +324,9 @@ export const noRawDesignValues = {
|
|
|
314
324
|
node,
|
|
315
325
|
messageId: 'rawMicroSpacing',
|
|
316
326
|
data: { value: display, property, token: micro, pkg: TOKENS_PKG },
|
|
317
|
-
suggest:
|
|
327
|
+
suggest: suggest
|
|
328
|
+
? suggestReplacement(node, `microSpacing.${micro}`, 'microSpacing', 'tokens/spacing.css')
|
|
329
|
+
: [],
|
|
318
330
|
});
|
|
319
331
|
return;
|
|
320
332
|
}
|
|
@@ -330,7 +342,9 @@ export const noRawDesignValues = {
|
|
|
330
342
|
node,
|
|
331
343
|
messageId: 'rawSpacing',
|
|
332
344
|
data: { value: display, property, token, pkg: TOKENS_PKG },
|
|
333
|
-
suggest:
|
|
345
|
+
suggest: suggest
|
|
346
|
+
? suggestReplacement(node, `spacing.${token}`, 'spacing', 'tokens/spacing.css')
|
|
347
|
+
: [],
|
|
334
348
|
});
|
|
335
349
|
}
|
|
336
350
|
else if (radiiProperties.has(property)) {
|
|
@@ -347,14 +361,16 @@ export const noRawDesignValues = {
|
|
|
347
361
|
node,
|
|
348
362
|
messageId: 'rawRadius',
|
|
349
363
|
data: { value: display, property, token, pkg: TOKENS_PKG },
|
|
350
|
-
suggest:
|
|
364
|
+
suggest: suggest
|
|
365
|
+
? suggestReplacement(node, `radii.${token}`, 'radii', 'tokens/spacing.css')
|
|
366
|
+
: [],
|
|
351
367
|
});
|
|
352
368
|
}
|
|
353
369
|
else if (FONT_SIZE_PROPERTIES.has(property)) {
|
|
354
|
-
checkFontSize(node, px / 16, display);
|
|
370
|
+
checkFontSize(node, px / 16, display, suggest);
|
|
355
371
|
}
|
|
356
372
|
}
|
|
357
|
-
function checkFontSize(node, rem, display) {
|
|
373
|
+
function checkFontSize(node, rem, display, suggest) {
|
|
358
374
|
const hit = FONT_SIZE_TOKENS_BY_REM[rem];
|
|
359
375
|
if (!hit)
|
|
360
376
|
return;
|
|
@@ -362,10 +378,12 @@ export const noRawDesignValues = {
|
|
|
362
378
|
node,
|
|
363
379
|
messageId: 'rawFontSize',
|
|
364
380
|
data: { value: display, group: hit.group, token: hit.token, pkg: TOKENS_PKG },
|
|
365
|
-
suggest:
|
|
381
|
+
suggest: suggest
|
|
382
|
+
? suggestReplacement(node, `${hit.group}.${hit.token}`, hit.group, 'tokens/typography.css')
|
|
383
|
+
: [],
|
|
366
384
|
});
|
|
367
385
|
}
|
|
368
|
-
function checkFontWeight(node, weight, display) {
|
|
386
|
+
function checkFontWeight(node, weight, display, suggest) {
|
|
369
387
|
const token = FONT_WEIGHT_TOKENS[weight];
|
|
370
388
|
if (!token)
|
|
371
389
|
return;
|
|
@@ -373,24 +391,43 @@ export const noRawDesignValues = {
|
|
|
373
391
|
node,
|
|
374
392
|
messageId: 'rawFontWeight',
|
|
375
393
|
data: { value: display, token, pkg: TOKENS_PKG },
|
|
376
|
-
suggest:
|
|
394
|
+
suggest: suggest
|
|
395
|
+
? suggestReplacement(node, `typography.${token}`, 'typography', 'tokens/typography.css')
|
|
396
|
+
: [],
|
|
377
397
|
});
|
|
378
398
|
}
|
|
379
|
-
function checkStringValue(node, property, value) {
|
|
399
|
+
function checkStringValue(node, property, value, suggest) {
|
|
380
400
|
const px = /^(\d+(?:\.\d+)?)px$/.exec(value);
|
|
381
401
|
const rem = /^(\d+(?:\.\d+)?)rem$/.exec(value);
|
|
382
402
|
const ms = /^(\d+(?:\.\d+)?)ms$/.exec(value);
|
|
383
403
|
const display = `'${value}'`;
|
|
384
404
|
if (px) {
|
|
385
|
-
checkPxValue(node, property, Number(px[1]), display);
|
|
405
|
+
checkPxValue(node, property, Number(px[1]), display, suggest);
|
|
406
|
+
return;
|
|
407
|
+
}
|
|
408
|
+
// A shorthand ('4px 8px', '6px 14px'): every nonzero px word is a value of
|
|
409
|
+
// its own. 0, auto, %, rem, var() and calc() words are not px words and
|
|
410
|
+
// pass. No suggestion: swapping one word would rewrite the whole string.
|
|
411
|
+
if ((spacingProperties.has(property) || radiiProperties.has(property)) &&
|
|
412
|
+
/\s/.test(value.trim())) {
|
|
413
|
+
const words = value
|
|
414
|
+
.replace(/\([^)]*\)/g, ' ')
|
|
415
|
+
.trim()
|
|
416
|
+
.split(/\s+/);
|
|
417
|
+
for (const word of words) {
|
|
418
|
+
const match = /^(\d+(?:\.\d+)?)px$/.exec(word);
|
|
419
|
+
if (match && Number(match[1]) > 0) {
|
|
420
|
+
checkPxValue(node, property, Number(match[1]), `'${word}'`, false);
|
|
421
|
+
}
|
|
422
|
+
}
|
|
386
423
|
return;
|
|
387
424
|
}
|
|
388
425
|
if (rem && FONT_SIZE_PROPERTIES.has(property)) {
|
|
389
|
-
checkFontSize(node, Number(rem[1]), display);
|
|
426
|
+
checkFontSize(node, Number(rem[1]), display, suggest);
|
|
390
427
|
return;
|
|
391
428
|
}
|
|
392
429
|
if (FONT_WEIGHT_PROPERTIES.has(property) && /^\d{3}$/.test(value)) {
|
|
393
|
-
checkFontWeight(node, Number(value), display);
|
|
430
|
+
checkFontWeight(node, Number(value), display, suggest);
|
|
394
431
|
return;
|
|
395
432
|
}
|
|
396
433
|
if (SHADOW_PROPERTIES.has(property)) {
|
|
@@ -401,13 +438,13 @@ export const noRawDesignValues = {
|
|
|
401
438
|
node,
|
|
402
439
|
messageId: 'rawShadow',
|
|
403
440
|
data: { value, token: token ?? '*', pkg: TOKENS_PKG },
|
|
404
|
-
suggest: token
|
|
441
|
+
suggest: token && suggest
|
|
405
442
|
? suggestReplacement(node, `shadows.${token}`, 'shadows', 'tokens/shadows.css')
|
|
406
443
|
: [],
|
|
407
444
|
});
|
|
408
445
|
// A palette shadow's own rgba() is the token, not a second finding.
|
|
409
446
|
if (!token)
|
|
410
|
-
checkColorValue(node, value);
|
|
447
|
+
checkColorValue(node, value, suggest);
|
|
411
448
|
return;
|
|
412
449
|
}
|
|
413
450
|
if (DURATION_PROPERTIES.has(property) && ms) {
|
|
@@ -416,7 +453,7 @@ export const noRawDesignValues = {
|
|
|
416
453
|
node,
|
|
417
454
|
messageId: 'rawDuration',
|
|
418
455
|
data: { value, property, token: token ?? '*', pkg: TOKENS_PKG },
|
|
419
|
-
suggest: token
|
|
456
|
+
suggest: token && suggest
|
|
420
457
|
? suggestReplacement(node, `duration.${token}`, 'duration', 'tokens/motion.css')
|
|
421
458
|
: [],
|
|
422
459
|
});
|
|
@@ -428,13 +465,13 @@ export const noRawDesignValues = {
|
|
|
428
465
|
node,
|
|
429
466
|
messageId: 'rawEasing',
|
|
430
467
|
data: { value, property, token: token ?? '*', pkg: TOKENS_PKG },
|
|
431
|
-
suggest: token
|
|
468
|
+
suggest: token && suggest
|
|
432
469
|
? suggestReplacement(node, `easing.${token}`, 'easing', 'tokens/motion.css')
|
|
433
470
|
: [],
|
|
434
471
|
});
|
|
435
472
|
}
|
|
436
473
|
}
|
|
437
|
-
function checkValue(node, property) {
|
|
474
|
+
function checkValue(node, property, suggest, inline = false) {
|
|
438
475
|
// Grid tracks: a px anywhere in the track list is a raw size, the same
|
|
439
476
|
// as on width (`'minmax(240px, 1fr)'`). Fractions, % and tokens pass.
|
|
440
477
|
if (property && TRACK_PROPERTIES.has(property)) {
|
|
@@ -467,7 +504,7 @@ export const noRawDesignValues = {
|
|
|
467
504
|
const measure = property ? measureFor(property) : null;
|
|
468
505
|
if (property && measure) {
|
|
469
506
|
if (node.type === 'Literal' && typeof node.value === 'number') {
|
|
470
|
-
checkMeasure(node, property, measure, node.value, false, String(node.value), true);
|
|
507
|
+
checkMeasure(node, property, measure, node.value, false, String(node.value), true, suggest);
|
|
471
508
|
return;
|
|
472
509
|
}
|
|
473
510
|
if (node.type === 'UnaryExpression' &&
|
|
@@ -476,7 +513,7 @@ export const noRawDesignValues = {
|
|
|
476
513
|
typeof node.argument.value === 'number' &&
|
|
477
514
|
!BORDER_SHORTHAND_PROPERTIES.has(property)) {
|
|
478
515
|
const px = node.argument.value;
|
|
479
|
-
checkMeasure(node, property, measure, px, true, `-${px}`, true);
|
|
516
|
+
checkMeasure(node, property, measure, px, true, `-${px}`, true, suggest);
|
|
480
517
|
return;
|
|
481
518
|
}
|
|
482
519
|
if (node.type === 'TemplateLiteral') {
|
|
@@ -485,40 +522,40 @@ export const noRawDesignValues = {
|
|
|
485
522
|
return;
|
|
486
523
|
}
|
|
487
524
|
if (node.type === 'Literal' && typeof node.value === 'string') {
|
|
488
|
-
checkColorValue(node, node.value);
|
|
489
|
-
checkMeasureString(node, property, measure, node.value);
|
|
525
|
+
checkColorValue(node, node.value, suggest);
|
|
526
|
+
checkMeasureString(node, property, measure, node.value, suggest);
|
|
490
527
|
return;
|
|
491
528
|
}
|
|
492
529
|
}
|
|
493
530
|
if (node.type === 'Literal') {
|
|
494
531
|
if (typeof node.value === 'string') {
|
|
495
532
|
if (property && SHADOW_PROPERTIES.has(property)) {
|
|
496
|
-
checkStringValue(node, property, node.value);
|
|
533
|
+
checkStringValue(node, property, node.value, suggest);
|
|
497
534
|
}
|
|
498
535
|
else {
|
|
499
|
-
checkColorValue(node, node.value);
|
|
536
|
+
checkColorValue(node, node.value, suggest);
|
|
500
537
|
if (property)
|
|
501
|
-
checkStringValue(node, property, node.value);
|
|
538
|
+
checkStringValue(node, property, node.value, suggest);
|
|
502
539
|
}
|
|
503
540
|
}
|
|
504
541
|
else if (typeof node.value === 'number' && property && node.value > 0) {
|
|
505
542
|
if (FONT_WEIGHT_PROPERTIES.has(property)) {
|
|
506
|
-
checkFontWeight(node, node.value, String(node.value));
|
|
543
|
+
checkFontWeight(node, node.value, String(node.value), suggest);
|
|
507
544
|
}
|
|
508
545
|
else {
|
|
509
|
-
checkPxValue(node, property, node.value, String(node.value));
|
|
546
|
+
checkPxValue(node, property, node.value, String(node.value), suggest);
|
|
510
547
|
}
|
|
511
548
|
}
|
|
512
549
|
return;
|
|
513
550
|
}
|
|
514
551
|
if (node.type === 'ObjectExpression') {
|
|
515
|
-
walkStyleObject(node, property);
|
|
552
|
+
walkStyleObject(node, property, suggest, inline);
|
|
516
553
|
}
|
|
517
554
|
// Everything else (identifiers, member expressions, template literals,
|
|
518
555
|
// calls, negatives via UnaryExpression) is deliberately skipped.
|
|
519
556
|
}
|
|
520
557
|
/** A `@media (min-width: 768px)` key: report, and offer the const key. */
|
|
521
|
-
function checkConditionKey(prop, key) {
|
|
558
|
+
function checkConditionKey(prop, key, suggest) {
|
|
522
559
|
const match = BREAKPOINT_KEY_RE.exec(key);
|
|
523
560
|
if (!match)
|
|
524
561
|
return;
|
|
@@ -542,35 +579,58 @@ export const noRawDesignValues = {
|
|
|
542
579
|
node: prop.key,
|
|
543
580
|
messageId: 'rawBreakpoint',
|
|
544
581
|
data,
|
|
545
|
-
suggest:
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
582
|
+
suggest: !suggest
|
|
583
|
+
? []
|
|
584
|
+
: suggestReplacement(prop.key, `breakpoints.${token}`, 'breakpoints', 'tokens/breakpoints.css', (local) => {
|
|
585
|
+
const inner = '`' + template.replace('%LOCAL%', local) + '`';
|
|
586
|
+
return prop.computed ? inner : `[${inner}]`;
|
|
587
|
+
}),
|
|
549
588
|
});
|
|
550
589
|
}
|
|
551
|
-
function walkStyleObject(obj, property) {
|
|
590
|
+
function walkStyleObject(obj, property, suggest, inline = false) {
|
|
552
591
|
for (const prop of obj.properties) {
|
|
553
592
|
if (prop.type !== 'Property')
|
|
554
593
|
continue;
|
|
594
|
+
// An inline style's computed keys and custom properties (`--wb-vw`) hold
|
|
595
|
+
// no design value we can attribute.
|
|
596
|
+
if (inline && prop.computed)
|
|
597
|
+
continue;
|
|
555
598
|
const key = prop.key.type === 'Identifier'
|
|
556
599
|
? prop.key.name
|
|
557
600
|
: prop.key.type === 'Literal'
|
|
558
601
|
? String(prop.key.value)
|
|
559
602
|
: null;
|
|
603
|
+
if (inline && key !== null && key.startsWith('--'))
|
|
604
|
+
continue;
|
|
560
605
|
if (key === null) {
|
|
561
606
|
// Computed key — can't attribute a property; still scan for colors.
|
|
562
|
-
|
|
607
|
+
// (Deliberately css.create only: inline computed keys are skipped above.)
|
|
608
|
+
checkValue(prop.value, null, suggest, inline);
|
|
563
609
|
continue;
|
|
564
610
|
}
|
|
565
611
|
// Condition keys (default, :hover, @media …) keep the enclosing
|
|
566
612
|
// property; anything else IS the property.
|
|
567
613
|
const isCondition = key === 'default' || /^[:@]/.test(key);
|
|
568
614
|
if (isCondition)
|
|
569
|
-
checkConditionKey(prop, key);
|
|
570
|
-
checkValue(prop.value, isCondition ? property : key);
|
|
615
|
+
checkConditionKey(prop, key, suggest);
|
|
616
|
+
checkValue(prop.value, isCondition ? property : key, suggest, inline);
|
|
571
617
|
}
|
|
572
618
|
}
|
|
573
619
|
return {
|
|
620
|
+
JSXAttribute(node) {
|
|
621
|
+
if (!inlineStyle)
|
|
622
|
+
return;
|
|
623
|
+
if (node.name.type !== 'JSXIdentifier' || node.name.name !== 'style')
|
|
624
|
+
return;
|
|
625
|
+
const container = node.value;
|
|
626
|
+
if (container?.type !== 'JSXExpressionContainer')
|
|
627
|
+
return;
|
|
628
|
+
// style={styles.x}, arrays and identifiers are not literals to read.
|
|
629
|
+
if (container.expression.type !== 'ObjectExpression')
|
|
630
|
+
return;
|
|
631
|
+
// No suggestion: plain-React consumers have no .css.ts token imports.
|
|
632
|
+
walkStyleObject(container.expression, null, false, true);
|
|
633
|
+
},
|
|
574
634
|
CallExpression(node) {
|
|
575
635
|
if (!factories.includes(calleeText(node)))
|
|
576
636
|
return;
|
|
@@ -583,11 +643,11 @@ export const noRawDesignValues = {
|
|
|
583
643
|
continue;
|
|
584
644
|
const value = prop.value;
|
|
585
645
|
if (value.type === 'ObjectExpression')
|
|
586
|
-
walkStyleObject(value, null);
|
|
646
|
+
walkStyleObject(value, null, true);
|
|
587
647
|
// Dynamic styles: css.create({x: (arg) => ({...})})
|
|
588
648
|
if ((value.type === 'ArrowFunctionExpression' || value.type === 'FunctionExpression') &&
|
|
589
649
|
value.body.type === 'ObjectExpression') {
|
|
590
|
-
walkStyleObject(value.body, null);
|
|
650
|
+
walkStyleObject(value.body, null, true);
|
|
591
651
|
}
|
|
592
652
|
}
|
|
593
653
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"no-raw-design-values.js","sourceRoot":"","sources":["../../src/rules/no-raw-design-values.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"no-raw-design-values.js","sourceRoot":"","sources":["../../src/rules/no-raw-design-values.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@duro-app/eslint-plugin",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.9.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"description": "ESLint rules enforcing the Duro design system conventions: react-strict-dom html.* elements, deep token imports, token values over raw px/hex, and no deprecated Table parts.",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"@typescript-eslint/utils": "^8.0.0",
|
|
49
49
|
"eslint": "^9.20.0",
|
|
50
50
|
"typescript": "^5.7.0",
|
|
51
|
-
"@duro-app/tokens": "^5.
|
|
51
|
+
"@duro-app/tokens": "^5.9.0"
|
|
52
52
|
},
|
|
53
53
|
"scripts": {
|
|
54
54
|
"build": "tsc -p tsconfig.build.json",
|