@duro-app/eslint-plugin 5.11.0 → 5.12.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/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-html-element.d.ts +1 -0
- package/dist/rules/no-raw-html-element.d.ts.map +1 -1
- package/dist/rules/no-raw-html-element.js +6 -2
- package/dist/rules/no-raw-html-element.js.map +1 -1
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ declare const plugin: {
|
|
|
9
9
|
allow?: string[];
|
|
10
10
|
reportUnsupported?: boolean;
|
|
11
11
|
htmlModule?: string;
|
|
12
|
+
svgExempt?: boolean;
|
|
12
13
|
} | undefined)?], unknown, TSESLint.RuleListener>;
|
|
13
14
|
'no-tokens-barrel-import': TSESLint.RuleModule<"barrelImport" | "barrelNamespace" | "barrelSideEffect" | "unknownSpecifiers", [({
|
|
14
15
|
packages?: 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
|
@@ -3,6 +3,7 @@ export declare const rules: {
|
|
|
3
3
|
allow?: string[];
|
|
4
4
|
reportUnsupported?: boolean;
|
|
5
5
|
htmlModule?: string;
|
|
6
|
+
svgExempt?: boolean;
|
|
6
7
|
} | undefined)?], unknown, import("@typescript-eslint/utils/ts-eslint").RuleListener>;
|
|
7
8
|
'no-tokens-barrel-import': import("@typescript-eslint/utils/ts-eslint").RuleModule<"barrelImport" | "barrelNamespace" | "barrelSideEffect" | "unknownSpecifiers", [({
|
|
8
9
|
packages?: 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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"no-raw-html-element.d.ts","sourceRoot":"","sources":["../../src/rules/no-raw-html-element.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,QAAQ,EAAW,MAAM,0BAA0B,CAAA;AAIhE,KAAK,UAAU,GAAG,SAAS,GAAG,cAAc,GAAG,gBAAgB,CAAA;AAC/D,KAAK,OAAO,GAAG;IACb;QACE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;QAChB,iBAAiB,CAAC,EAAE,OAAO,CAAA;QAC3B,UAAU,CAAC,EAAE,MAAM,CAAA;KACpB,CAAC;CACH,CAAA;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"no-raw-html-element.d.ts","sourceRoot":"","sources":["../../src/rules/no-raw-html-element.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,QAAQ,EAAW,MAAM,0BAA0B,CAAA;AAIhE,KAAK,UAAU,GAAG,SAAS,GAAG,cAAc,GAAG,gBAAgB,CAAA;AAC/D,KAAK,OAAO,GAAG;IACb;QACE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;QAChB,iBAAiB,CAAC,EAAE,OAAO,CAAA;QAC3B,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,SAAS,CAAC,EAAE,OAAO,CAAA;KACpB,CAAC;CACH,CAAA;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,CA+FrE,CAAA"}
|
|
@@ -26,6 +26,7 @@ export const noRawHtmlElement = {
|
|
|
26
26
|
allow: { type: 'array', items: { type: 'string' }, uniqueItems: true },
|
|
27
27
|
reportUnsupported: { type: 'boolean' },
|
|
28
28
|
htmlModule: { type: 'string' },
|
|
29
|
+
svgExempt: { type: 'boolean' },
|
|
29
30
|
},
|
|
30
31
|
additionalProperties: false,
|
|
31
32
|
},
|
|
@@ -41,6 +42,9 @@ export const noRawHtmlElement = {
|
|
|
41
42
|
const allow = new Set(options.allow ?? []);
|
|
42
43
|
const reportUnsupported = options.reportUnsupported ?? true;
|
|
43
44
|
const htmlModule = options.htmlModule ?? 'react-strict-dom';
|
|
45
|
+
// false: <svg> and SVG-only tags are reported like any other intrinsic
|
|
46
|
+
// (the native graph has no SVG).
|
|
47
|
+
const svgExempt = options.svgExempt ?? true;
|
|
44
48
|
const sourceCode = context.sourceCode;
|
|
45
49
|
let svgDepth = 0;
|
|
46
50
|
function tagOf(node) {
|
|
@@ -66,9 +70,9 @@ export const noRawHtmlElement = {
|
|
|
66
70
|
return; // component
|
|
67
71
|
if (tag.includes('-'))
|
|
68
72
|
return; // custom element
|
|
69
|
-
if (svgDepth > 0)
|
|
73
|
+
if (svgExempt && svgDepth > 0)
|
|
70
74
|
return; // inside an <svg> subtree
|
|
71
|
-
if (SVG_ONLY_TAGS.has(tag))
|
|
75
|
+
if (svgExempt && SVG_ONLY_TAGS.has(tag))
|
|
72
76
|
return; // detached SVG fragment helpers
|
|
73
77
|
if (allow.has(tag))
|
|
74
78
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"no-raw-html-element.js","sourceRoot":"","sources":["../../src/rules/no-raw-html-element.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,iBAAiB,EAAE,aAAa,EAAC,MAAM,gBAAgB,CAAA;AAC/D,OAAO,EAAC,iBAAiB,EAAE,UAAU,EAAC,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"no-raw-html-element.js","sourceRoot":"","sources":["../../src/rules/no-raw-html-element.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.12.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.12.0"
|
|
52
52
|
},
|
|
53
53
|
"scripts": {
|
|
54
54
|
"build": "tsc -p tsconfig.build.json",
|