eslint-plugin-better-tailwindcss 4.1.1 → 4.3.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 +1 -1
- package/lib/api/defaults.d.ts +84 -14
- package/lib/api/defaults.d.ts.map +1 -1
- package/lib/api/defaults.js +25 -5
- package/lib/api/defaults.js.map +1 -1
- package/lib/api/types.d.ts +2 -2
- package/lib/api/types.d.ts.map +1 -1
- package/lib/api/types.js +1 -1
- package/lib/api/types.js.map +1 -1
- package/lib/async-utils/operations.d.ts +21 -0
- package/lib/async-utils/operations.d.ts.map +1 -0
- package/lib/async-utils/operations.js +2 -0
- package/lib/async-utils/operations.js.map +1 -0
- package/lib/configs/config.d.ts +1754 -194
- package/lib/configs/config.d.ts.map +1 -1
- package/lib/options/callees/cc.d.ts +28 -12
- package/lib/options/callees/cc.d.ts.map +1 -1
- package/lib/options/callees/cc.js +15 -13
- package/lib/options/callees/cc.js.map +1 -1
- package/lib/options/callees/clb.d.ts +33 -17
- package/lib/options/callees/clb.d.ts.map +1 -1
- package/lib/options/callees/clb.js +25 -22
- package/lib/options/callees/clb.js.map +1 -1
- package/lib/options/callees/clsx.d.ts +28 -12
- package/lib/options/callees/clsx.d.ts.map +1 -1
- package/lib/options/callees/clsx.js +15 -13
- package/lib/options/callees/clsx.js.map +1 -1
- package/lib/options/callees/cn.d.ts +28 -12
- package/lib/options/callees/cn.d.ts.map +1 -1
- package/lib/options/callees/cn.js +15 -13
- package/lib/options/callees/cn.js.map +1 -1
- package/lib/options/callees/cnb.d.ts +28 -12
- package/lib/options/callees/cnb.d.ts.map +1 -1
- package/lib/options/callees/cnb.js +15 -13
- package/lib/options/callees/cnb.js.map +1 -1
- package/lib/options/callees/ctl.d.ts +15 -7
- package/lib/options/callees/ctl.d.ts.map +1 -1
- package/lib/options/callees/ctl.js +8 -7
- package/lib/options/callees/ctl.js.map +1 -1
- package/lib/options/callees/cva.d.ts +38 -18
- package/lib/options/callees/cva.d.ts.map +1 -1
- package/lib/options/callees/cva.js +24 -21
- package/lib/options/callees/cva.js.map +1 -1
- package/lib/options/callees/cx.d.ts +28 -12
- package/lib/options/callees/cx.d.ts.map +1 -1
- package/lib/options/callees/cx.js +15 -13
- package/lib/options/callees/cx.js.map +1 -1
- package/lib/options/callees/dcnb.d.ts +28 -12
- package/lib/options/callees/dcnb.d.ts.map +1 -1
- package/lib/options/callees/dcnb.js +15 -13
- package/lib/options/callees/dcnb.js.map +1 -1
- package/lib/options/callees/objstr.d.ts +22 -10
- package/lib/options/callees/objstr.d.ts.map +1 -1
- package/lib/options/callees/objstr.js +15 -13
- package/lib/options/callees/objstr.js.map +1 -1
- package/lib/options/callees/tv.d.ts +62 -30
- package/lib/options/callees/tv.d.ts.map +1 -1
- package/lib/options/callees/tv.js +48 -42
- package/lib/options/callees/tv.js.map +1 -1
- package/lib/options/callees/twJoin.d.ts +15 -7
- package/lib/options/callees/twJoin.d.ts.map +1 -1
- package/lib/options/callees/twJoin.js +8 -7
- package/lib/options/callees/twJoin.js.map +1 -1
- package/lib/options/callees/twMerge.d.ts +15 -7
- package/lib/options/callees/twMerge.d.ts.map +1 -1
- package/lib/options/callees/twMerge.js +8 -7
- package/lib/options/callees/twMerge.js.map +1 -1
- package/lib/options/default-options.d.ts +78 -13
- package/lib/options/default-options.d.ts.map +1 -1
- package/lib/options/default-options.js +97 -50
- package/lib/options/default-options.js.map +1 -1
- package/lib/options/descriptions.d.ts +210 -17
- package/lib/options/descriptions.d.ts.map +1 -1
- package/lib/options/descriptions.js +2 -0
- package/lib/options/descriptions.js.map +1 -1
- package/lib/options/migrate.d.ts +16 -0
- package/lib/options/migrate.d.ts.map +1 -0
- package/lib/options/migrate.js +115 -0
- package/lib/options/migrate.js.map +1 -0
- package/lib/options/schemas/attributes.d.ts +1 -5
- package/lib/options/schemas/attributes.d.ts.map +1 -1
- package/lib/options/schemas/attributes.js +1 -2
- package/lib/options/schemas/attributes.js.map +1 -1
- package/lib/options/schemas/callees.d.ts +1 -8
- package/lib/options/schemas/callees.d.ts.map +1 -1
- package/lib/options/schemas/callees.js +1 -2
- package/lib/options/schemas/callees.js.map +1 -1
- package/lib/options/schemas/selectors.d.ts +488 -0
- package/lib/options/schemas/selectors.d.ts.map +1 -0
- package/lib/options/schemas/selectors.js +69 -0
- package/lib/options/schemas/selectors.js.map +1 -0
- package/lib/options/schemas/tags.d.ts +1 -1
- package/lib/options/schemas/tags.d.ts.map +1 -1
- package/lib/options/schemas/tags.js +1 -2
- package/lib/options/schemas/tags.js.map +1 -1
- package/lib/options/schemas/variables.d.ts +1 -3
- package/lib/options/schemas/variables.d.ts.map +1 -1
- package/lib/options/schemas/variables.js +1 -2
- package/lib/options/schemas/variables.js.map +1 -1
- package/lib/parsers/angular.d.ts +2 -2
- package/lib/parsers/angular.d.ts.map +1 -1
- package/lib/parsers/angular.js +21 -25
- package/lib/parsers/angular.js.map +1 -1
- package/lib/parsers/es.d.ts +5 -8
- package/lib/parsers/es.d.ts.map +1 -1
- package/lib/parsers/es.js +109 -47
- package/lib/parsers/es.js.map +1 -1
- package/lib/parsers/html.d.ts +2 -2
- package/lib/parsers/html.d.ts.map +1 -1
- package/lib/parsers/html.js +7 -10
- package/lib/parsers/html.js.map +1 -1
- package/lib/parsers/jsx.d.ts +2 -2
- package/lib/parsers/jsx.d.ts.map +1 -1
- package/lib/parsers/jsx.js +8 -13
- package/lib/parsers/jsx.js.map +1 -1
- package/lib/parsers/svelte.d.ts +3 -3
- package/lib/parsers/svelte.d.ts.map +1 -1
- package/lib/parsers/svelte.js +22 -25
- package/lib/parsers/svelte.js.map +1 -1
- package/lib/parsers/vue.d.ts +2 -2
- package/lib/parsers/vue.d.ts.map +1 -1
- package/lib/parsers/vue.js +14 -18
- package/lib/parsers/vue.js.map +1 -1
- package/lib/rules/enforce-canonical-classes.d.ts +146 -16
- package/lib/rules/enforce-canonical-classes.d.ts.map +1 -1
- package/lib/rules/enforce-consistent-class-order.d.ts +146 -16
- package/lib/rules/enforce-consistent-class-order.d.ts.map +1 -1
- package/lib/rules/enforce-consistent-important-position.d.ts +146 -16
- package/lib/rules/enforce-consistent-important-position.d.ts.map +1 -1
- package/lib/rules/enforce-consistent-line-wrapping.d.ts +146 -16
- package/lib/rules/enforce-consistent-line-wrapping.d.ts.map +1 -1
- package/lib/rules/enforce-consistent-variable-syntax.d.ts +148 -18
- package/lib/rules/enforce-consistent-variable-syntax.d.ts.map +1 -1
- package/lib/rules/enforce-shorthand-classes.d.ts +146 -16
- package/lib/rules/enforce-shorthand-classes.d.ts.map +1 -1
- package/lib/rules/no-conflicting-classes.d.ts +146 -16
- package/lib/rules/no-conflicting-classes.d.ts.map +1 -1
- package/lib/rules/no-deprecated-classes.d.ts +146 -16
- package/lib/rules/no-deprecated-classes.d.ts.map +1 -1
- package/lib/rules/no-duplicate-classes.d.ts +146 -16
- package/lib/rules/no-duplicate-classes.d.ts.map +1 -1
- package/lib/rules/no-restricted-classes.d.ts +146 -16
- package/lib/rules/no-restricted-classes.d.ts.map +1 -1
- package/lib/rules/no-unknown-classes.d.ts +146 -16
- package/lib/rules/no-unknown-classes.d.ts.map +1 -1
- package/lib/rules/no-unnecessary-whitespace.d.ts +146 -16
- package/lib/rules/no-unnecessary-whitespace.d.ts.map +1 -1
- package/lib/tailwindcss/canonical-classes.d.ts.map +1 -1
- package/lib/tailwindcss/canonical-classes.js +3 -7
- package/lib/tailwindcss/canonical-classes.js.map +1 -1
- package/lib/tailwindcss/class-order.async.v3.d.ts +1 -1
- package/lib/tailwindcss/class-order.async.v3.d.ts.map +1 -1
- package/lib/tailwindcss/class-order.async.v3.js +2 -2
- package/lib/tailwindcss/class-order.async.v3.js.map +1 -1
- package/lib/tailwindcss/class-order.async.v4.d.ts +1 -1
- package/lib/tailwindcss/class-order.async.v4.d.ts.map +1 -1
- package/lib/tailwindcss/class-order.async.v4.js +2 -2
- package/lib/tailwindcss/class-order.async.v4.js.map +1 -1
- package/lib/tailwindcss/class-order.d.ts.map +1 -1
- package/lib/tailwindcss/class-order.js +3 -7
- package/lib/tailwindcss/class-order.js.map +1 -1
- package/lib/tailwindcss/conflicting-classes.async.v4.d.ts +1 -1
- package/lib/tailwindcss/conflicting-classes.async.v4.d.ts.map +1 -1
- package/lib/tailwindcss/conflicting-classes.async.v4.js +3 -3
- package/lib/tailwindcss/conflicting-classes.async.v4.js.map +1 -1
- package/lib/tailwindcss/conflicting-classes.d.ts.map +1 -1
- package/lib/tailwindcss/conflicting-classes.js +3 -7
- package/lib/tailwindcss/conflicting-classes.js.map +1 -1
- package/lib/tailwindcss/custom-component-classes.async.v3.d.ts +3 -1
- package/lib/tailwindcss/custom-component-classes.async.v3.d.ts.map +1 -1
- package/lib/tailwindcss/custom-component-classes.async.v3.js +3 -4
- package/lib/tailwindcss/custom-component-classes.async.v3.js.map +1 -1
- package/lib/tailwindcss/custom-component-classes.async.v4.d.ts +3 -1
- package/lib/tailwindcss/custom-component-classes.async.v4.d.ts.map +1 -1
- package/lib/tailwindcss/custom-component-classes.async.v4.js +3 -5
- package/lib/tailwindcss/custom-component-classes.async.v4.js.map +1 -1
- package/lib/tailwindcss/custom-component-classes.d.ts.map +1 -1
- package/lib/tailwindcss/custom-component-classes.js +3 -7
- package/lib/tailwindcss/custom-component-classes.js.map +1 -1
- package/lib/tailwindcss/dissect-classes.d.ts.map +1 -1
- package/lib/tailwindcss/dissect-classes.js +3 -7
- package/lib/tailwindcss/dissect-classes.js.map +1 -1
- package/lib/tailwindcss/prefix.async.v3.d.ts +2 -2
- package/lib/tailwindcss/prefix.async.v3.d.ts.map +1 -1
- package/lib/tailwindcss/prefix.async.v3.js +3 -3
- package/lib/tailwindcss/prefix.async.v3.js.map +1 -1
- package/lib/tailwindcss/prefix.async.v4.d.ts +2 -2
- package/lib/tailwindcss/prefix.async.v4.d.ts.map +1 -1
- package/lib/tailwindcss/prefix.async.v4.js +4 -4
- package/lib/tailwindcss/prefix.async.v4.js.map +1 -1
- package/lib/tailwindcss/prefix.d.ts.map +1 -1
- package/lib/tailwindcss/prefix.js +3 -7
- package/lib/tailwindcss/prefix.js.map +1 -1
- package/lib/tailwindcss/tailwind.async.worker.v3.d.ts +2 -0
- package/lib/tailwindcss/tailwind.async.worker.v3.d.ts.map +1 -0
- package/lib/tailwindcss/tailwind.async.worker.v3.js +52 -0
- package/lib/tailwindcss/tailwind.async.worker.v3.js.map +1 -0
- package/lib/tailwindcss/tailwind.async.worker.v4.d.ts +2 -0
- package/lib/tailwindcss/tailwind.async.worker.v4.d.ts.map +1 -0
- package/lib/tailwindcss/tailwind.async.worker.v4.js +50 -0
- package/lib/tailwindcss/tailwind.async.worker.v4.js.map +1 -0
- package/lib/tailwindcss/unknown-classes.d.ts.map +1 -1
- package/lib/tailwindcss/unknown-classes.js +3 -7
- package/lib/tailwindcss/unknown-classes.js.map +1 -1
- package/lib/types/rule.d.ts +39 -0
- package/lib/types/rule.d.ts.map +1 -1
- package/lib/types/rule.js +7 -0
- package/lib/types/rule.js.map +1 -1
- package/lib/utils/rule.d.ts.map +1 -1
- package/lib/utils/rule.js +42 -2
- package/lib/utils/rule.js.map +1 -1
- package/lib/utils/selectors.d.ts +3 -0
- package/lib/utils/selectors.d.ts.map +1 -0
- package/lib/utils/selectors.js +4 -0
- package/lib/utils/selectors.js.map +1 -0
- package/package.json +10 -11
- package/lib/tailwindcss/canonical-classes.async.worker.v3.d.ts +0 -2
- package/lib/tailwindcss/canonical-classes.async.worker.v3.d.ts.map +0 -1
- package/lib/tailwindcss/canonical-classes.async.worker.v3.js +0 -15
- package/lib/tailwindcss/canonical-classes.async.worker.v3.js.map +0 -1
- package/lib/tailwindcss/canonical-classes.async.worker.v4.d.ts +0 -2
- package/lib/tailwindcss/canonical-classes.async.worker.v4.d.ts.map +0 -1
- package/lib/tailwindcss/canonical-classes.async.worker.v4.js +0 -9
- package/lib/tailwindcss/canonical-classes.async.worker.v4.js.map +0 -1
- package/lib/tailwindcss/class-order.async.worker.v3.d.ts +0 -2
- package/lib/tailwindcss/class-order.async.worker.v3.d.ts.map +0 -1
- package/lib/tailwindcss/class-order.async.worker.v3.js +0 -9
- package/lib/tailwindcss/class-order.async.worker.v3.js.map +0 -1
- package/lib/tailwindcss/class-order.async.worker.v4.d.ts +0 -2
- package/lib/tailwindcss/class-order.async.worker.v4.d.ts.map +0 -1
- package/lib/tailwindcss/class-order.async.worker.v4.js +0 -9
- package/lib/tailwindcss/class-order.async.worker.v4.js.map +0 -1
- package/lib/tailwindcss/conflicting-classes.async.worker.v3.d.ts +0 -2
- package/lib/tailwindcss/conflicting-classes.async.worker.v3.d.ts.map +0 -1
- package/lib/tailwindcss/conflicting-classes.async.worker.v3.js +0 -5
- package/lib/tailwindcss/conflicting-classes.async.worker.v3.js.map +0 -1
- package/lib/tailwindcss/conflicting-classes.async.worker.v4.d.ts +0 -2
- package/lib/tailwindcss/conflicting-classes.async.worker.v4.d.ts.map +0 -1
- package/lib/tailwindcss/conflicting-classes.async.worker.v4.js +0 -9
- package/lib/tailwindcss/conflicting-classes.async.worker.v4.js.map +0 -1
- package/lib/tailwindcss/dissect-classes.async.worker.v3.d.ts +0 -2
- package/lib/tailwindcss/dissect-classes.async.worker.v3.d.ts.map +0 -1
- package/lib/tailwindcss/dissect-classes.async.worker.v3.js +0 -9
- package/lib/tailwindcss/dissect-classes.async.worker.v3.js.map +0 -1
- package/lib/tailwindcss/dissect-classes.async.worker.v4.d.ts +0 -2
- package/lib/tailwindcss/dissect-classes.async.worker.v4.d.ts.map +0 -1
- package/lib/tailwindcss/dissect-classes.async.worker.v4.js +0 -9
- package/lib/tailwindcss/dissect-classes.async.worker.v4.js.map +0 -1
- package/lib/tailwindcss/prefix.async.worker.v3.d.ts +0 -2
- package/lib/tailwindcss/prefix.async.worker.v3.d.ts.map +0 -1
- package/lib/tailwindcss/prefix.async.worker.v3.js +0 -10
- package/lib/tailwindcss/prefix.async.worker.v3.js.map +0 -1
- package/lib/tailwindcss/prefix.async.worker.v4.d.ts +0 -2
- package/lib/tailwindcss/prefix.async.worker.v4.d.ts.map +0 -1
- package/lib/tailwindcss/prefix.async.worker.v4.js +0 -10
- package/lib/tailwindcss/prefix.async.worker.v4.js.map +0 -1
- package/lib/tailwindcss/unknown-classes.async.worker.v3.d.ts +0 -2
- package/lib/tailwindcss/unknown-classes.async.worker.v3.d.ts.map +0 -1
- package/lib/tailwindcss/unknown-classes.async.worker.v3.js +0 -9
- package/lib/tailwindcss/unknown-classes.async.worker.v3.js.map +0 -1
- package/lib/tailwindcss/unknown-classes.async.worker.v4.d.ts +0 -2
- package/lib/tailwindcss/unknown-classes.async.worker.v4.d.ts.map +0 -1
- package/lib/tailwindcss/unknown-classes.async.worker.v4.js +0 -9
- package/lib/tailwindcss/unknown-classes.async.worker.v4.js.map +0 -1
package/lib/parsers/html.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { AttributeNode, TagNode } from "es-html-parser";
|
|
2
2
|
import type { Rule } from "eslint";
|
|
3
|
-
import type { Attributes } from "../options/schemas/attributes.js";
|
|
4
3
|
import type { Literal } from "../types/ast.js";
|
|
5
|
-
|
|
4
|
+
import type { AttributeSelector } from "../types/rule.js";
|
|
5
|
+
export declare function getLiteralsByHTMLAttribute(ctx: Rule.RuleContext, attribute: AttributeNode, selectors: AttributeSelector[]): Literal[];
|
|
6
6
|
export declare function getAttributesByHTMLTag(ctx: Rule.RuleContext, node: TagNode): AttributeNode[];
|
|
7
7
|
export declare function getLiteralsByHTMLAttributeNode(ctx: Rule.RuleContext, attribute: AttributeNode): Literal[];
|
|
8
8
|
//# sourceMappingURL=html.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html.d.ts","sourceRoot":"","sources":["../../src/parsers/html.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"html.d.ts","sourceRoot":"","sources":["../../src/parsers/html.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,KAAK,EAAE,OAAO,EAAa,MAAM,iCAAiC,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAG1E,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,iBAAiB,EAAE,GAAG,OAAO,EAAE,CAkBrI;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,GAAG,aAAa,EAAE,CAE5F;AAED,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,aAAa,GAAG,OAAO,EAAE,CA2BzG"}
|
package/lib/parsers/html.js
CHANGED
|
@@ -1,16 +1,13 @@
|
|
|
1
|
-
import { isAttributesMatchers, isAttributesName } from "../utils/matchers.js";
|
|
2
1
|
import { addAttribute, deduplicateLiterals, getContent, getIndentation, matchesName } from "../utils/utils.js";
|
|
3
|
-
export function getLiteralsByHTMLAttribute(ctx, attribute,
|
|
2
|
+
export function getLiteralsByHTMLAttribute(ctx, attribute, selectors) {
|
|
4
3
|
const name = attribute.key.value;
|
|
5
|
-
const literals =
|
|
6
|
-
if (
|
|
7
|
-
|
|
8
|
-
return literals;
|
|
9
|
-
}
|
|
10
|
-
literals.push(...getLiteralsByHTMLAttributeNode(ctx, attribute));
|
|
4
|
+
const literals = selectors.reduce((literals, selector) => {
|
|
5
|
+
if (!matchesName(selector.name.toLowerCase(), name.toLowerCase())) {
|
|
6
|
+
return literals;
|
|
11
7
|
}
|
|
12
|
-
|
|
13
|
-
|
|
8
|
+
if (!selector.match) {
|
|
9
|
+
literals.push(...getLiteralsByHTMLAttributeNode(ctx, attribute));
|
|
10
|
+
return literals;
|
|
14
11
|
}
|
|
15
12
|
return literals;
|
|
16
13
|
}, []);
|
package/lib/parsers/html.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html.js","sourceRoot":"","sources":["../../src/parsers/html.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"html.js","sourceRoot":"","sources":["../../src/parsers/html.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,UAAU,EACV,cAAc,EACd,WAAW,EACZ,MAAM,mCAAmC,CAAC;AAS3C,MAAM,UAAU,0BAA0B,CAAC,GAAqB,EAAE,SAAwB,EAAE,SAA8B;IAExH,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;IAEjC,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE;QAClE,IAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,EAAC,CAAC;YAAC,OAAO,QAAQ,CAAC;QAAC,CAAC;QACrF,IAAG,CAAC,QAAQ,CAAC,KAAK,EAAC,CAAC;YAClB,QAAQ,CAAC,IAAI,CAAC,GAAG,8BAA8B,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC;YACjE,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,QAAQ;SACZ,MAAM,CAAC,mBAAmB,CAAC;SAC3B,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;AAE7B,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,GAAqB,EAAE,IAAa;IACzE,OAAO,IAAI,CAAC,UAAU,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,GAAqB,EAAE,SAAwB;IAE5F,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;IAE9B,IAAG,CAAC,KAAK,EAAC,CAAC;QACT,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,IAAI,GAAG,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;IAChE,MAAM,GAAG,GAAG,SAAS,CAAC,YAAY,EAAE,KAAK,GAAG,KAAK,CAAC,KAAK,GAAG,SAAS,CAAC,UAAU,EAAE,KAAK,CAAC;IAEtF,MAAM,MAAM,GAAG,wBAAwB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACxD,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAExC,OAAO,CAAC;YACN,GAAG,MAAM;YACT,OAAO;YACP,WAAW;YACX,cAAc,EAAE,KAAK;YACrB,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,KAAK,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B;YAC3E,GAAG;YACH,iBAAiB,EAAE,IAAI;YACvB,IAAI,EAAE,eAAe;SACtB,CAAC,CAAC;AAEL,CAAC;AAGD,SAAS,wBAAwB,CAAC,GAAqB,EAAE,SAAwB;IAC/E,MAAM,YAAY,GAAG,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC;IACnD,MAAM,YAAY,GAAG,SAAS,CAAC,UAAU,EAAE,KAAK,CAAC;IAEjD,OAAO;QACL,YAAY,EAAE,YAAY,KAAK,GAAG,IAAI,YAAY,KAAK,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS;QACrF,YAAY,EAAE,YAAY,KAAK,GAAG,IAAI,YAAY,KAAK,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS;KACtF,CAAC;AACJ,CAAC"}
|
package/lib/parsers/jsx.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import type { Rule } from "eslint";
|
|
2
2
|
import type { JSXAttribute, JSXOpeningElement } from "estree-jsx";
|
|
3
|
-
import type { Attributes } from "../options/schemas/attributes.js";
|
|
4
3
|
import type { Literal } from "../types/ast.js";
|
|
4
|
+
import type { AttributeSelector } from "../types/rule.js";
|
|
5
5
|
export declare const JSX_CONTAINER_TYPES_TO_REPLACE_QUOTES: string[];
|
|
6
6
|
export declare const JSX_CONTAINER_TYPES_TO_INSERT_BRACES: string[];
|
|
7
|
-
export declare function getLiteralsByJSXAttribute(ctx: Rule.RuleContext, attribute: JSXAttribute,
|
|
7
|
+
export declare function getLiteralsByJSXAttribute(ctx: Rule.RuleContext, attribute: JSXAttribute, selectors: AttributeSelector[]): Literal[];
|
|
8
8
|
export declare function getAttributesByJSXElement(ctx: Rule.RuleContext, node: JSXOpeningElement): JSXAttribute[];
|
|
9
9
|
//# sourceMappingURL=jsx.d.ts.map
|
package/lib/parsers/jsx.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsx.d.ts","sourceRoot":"","sources":["../../src/parsers/jsx.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"jsx.d.ts","sourceRoot":"","sources":["../../src/parsers/jsx.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,KAAK,EAAE,YAAY,EAAmD,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAGnH,OAAO,KAAK,EAAE,OAAO,EAAqC,MAAM,iCAAiC,CAAC;AAClG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAG1E,eAAO,MAAM,qCAAqC,UAGjD,CAAC;AAEF,eAAO,MAAM,oCAAoC,UAEhD,CAAC;AAGF,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,iBAAiB,EAAE,GAAG,OAAO,EAAE,CA2BnI;AAED,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,iBAAiB,GAAG,YAAY,EAAE,CAOxG"}
|
package/lib/parsers/jsx.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { ES_CONTAINER_TYPES_TO_INSERT_BRACES, ES_CONTAINER_TYPES_TO_REPLACE_QUOTES, getLiteralsByESMatchers, getLiteralsByESTemplateLiteral, getStringLiteralByESStringLiteral, hasESNodeParentExtension, isESNode, isESSimpleStringLiteral, isESTemplateLiteral } from "./es.js";
|
|
2
|
-
import { isAttributesMatchers, isAttributesName } from "../utils/matchers.js";
|
|
3
2
|
import { addAttribute, deduplicateLiterals, matchesName } from "../utils/utils.js";
|
|
4
3
|
export const JSX_CONTAINER_TYPES_TO_REPLACE_QUOTES = [
|
|
5
4
|
...ES_CONTAINER_TYPES_TO_REPLACE_QUOTES,
|
|
@@ -8,28 +7,24 @@ export const JSX_CONTAINER_TYPES_TO_REPLACE_QUOTES = [
|
|
|
8
7
|
export const JSX_CONTAINER_TYPES_TO_INSERT_BRACES = [
|
|
9
8
|
...ES_CONTAINER_TYPES_TO_INSERT_BRACES
|
|
10
9
|
];
|
|
11
|
-
export function getLiteralsByJSXAttribute(ctx, attribute,
|
|
10
|
+
export function getLiteralsByJSXAttribute(ctx, attribute, selectors) {
|
|
12
11
|
const name = getAttributeName(attribute);
|
|
13
12
|
const value = attribute.value;
|
|
14
|
-
const literals =
|
|
13
|
+
const literals = selectors.reduce((literals, selector) => {
|
|
15
14
|
if (!value) {
|
|
16
15
|
return literals;
|
|
17
16
|
}
|
|
18
17
|
if (typeof name !== "string") {
|
|
19
18
|
return literals;
|
|
20
19
|
}
|
|
21
|
-
if (
|
|
22
|
-
|
|
23
|
-
return literals;
|
|
24
|
-
}
|
|
25
|
-
literals.push(...getLiteralsByJSXAttributeValue(ctx, value));
|
|
20
|
+
if (!matchesName(selector.name.toLowerCase(), name.toLowerCase())) {
|
|
21
|
+
return literals;
|
|
26
22
|
}
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
}
|
|
31
|
-
literals.push(...getLiteralsByESMatchers(ctx, value, attributes[1]));
|
|
23
|
+
if (!selector.match) {
|
|
24
|
+
literals.push(...getLiteralsByJSXAttributeValue(ctx, value));
|
|
25
|
+
return literals;
|
|
32
26
|
}
|
|
27
|
+
literals.push(...getLiteralsByESMatchers(ctx, value, selector.match));
|
|
33
28
|
return literals;
|
|
34
29
|
}, []);
|
|
35
30
|
return literals
|
package/lib/parsers/jsx.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsx.js","sourceRoot":"","sources":["../../src/parsers/jsx.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mCAAmC,EACnC,oCAAoC,EACpC,uBAAuB,EACvB,8BAA8B,EAC9B,iCAAiC,EACjC,wBAAwB,EACxB,QAAQ,EACR,uBAAuB,EACvB,mBAAmB,EACpB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"jsx.js","sourceRoot":"","sources":["../../src/parsers/jsx.ts"],"names":[],"mappings":"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"}
|
package/lib/parsers/svelte.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import type { Rule } from "eslint";
|
|
2
2
|
import type { SvelteAttribute, SvelteDirective, SvelteStartTag } from "svelte-eslint-parser/lib/ast/index.js";
|
|
3
|
-
import type { Attributes } from "../options/schemas/attributes.js";
|
|
4
3
|
import type { Literal } from "../types/ast.js";
|
|
4
|
+
import type { AttributeSelector } from "../types/rule.js";
|
|
5
5
|
export declare const SVELTE_CONTAINER_TYPES_TO_REPLACE_QUOTES: string[];
|
|
6
6
|
export declare const SVELTE_CONTAINER_TYPES_TO_INSERT_BRACES: string[];
|
|
7
7
|
export declare function getAttributesBySvelteTag(ctx: Rule.RuleContext, node: SvelteStartTag): SvelteAttribute[];
|
|
8
8
|
export declare function getDirectivesBySvelteTag(ctx: Rule.RuleContext, node: SvelteStartTag): SvelteDirective[];
|
|
9
|
-
export declare function getLiteralsBySvelteAttribute(ctx: Rule.RuleContext, attribute: SvelteAttribute,
|
|
10
|
-
export declare function getLiteralsBySvelteDirective(ctx: Rule.RuleContext, directive: SvelteDirective,
|
|
9
|
+
export declare function getLiteralsBySvelteAttribute(ctx: Rule.RuleContext, attribute: SvelteAttribute, selectors: AttributeSelector[]): Literal[];
|
|
10
|
+
export declare function getLiteralsBySvelteDirective(ctx: Rule.RuleContext, directive: SvelteDirective, selectors: AttributeSelector[]): Literal[];
|
|
11
11
|
//# sourceMappingURL=svelte.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"svelte.d.ts","sourceRoot":"","sources":["../../src/parsers/svelte.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"svelte.d.ts","sourceRoot":"","sources":["../../src/parsers/svelte.ts"],"names":[],"mappings":"AA8BA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,KAAK,EAEV,eAAe,EACf,eAAe,EAQf,cAAc,EAEf,MAAM,uCAAuC,CAAC;AAE/C,OAAO,KAAK,EAEV,OAAO,EAIR,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,iBAAiB,EAAqC,MAAM,kCAAkC,CAAC;AAG7G,eAAO,MAAM,wCAAwC,UAGpD,CAAC;AAEF,eAAO,MAAM,uCAAuC,EAAE,MAAM,EAC3D,CAAC;AAGF,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,cAAc,GAAG,eAAe,EAAE,CAOvG;AAED,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,cAAc,GAAG,eAAe,EAAE,CAOvG;AAED,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,eAAe,EAAE,SAAS,EAAE,iBAAiB,EAAE,GAAG,OAAO,EAAE,CA6BzI;AAED,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,eAAe,EAAE,SAAS,EAAE,iBAAiB,EAAE,GAAG,OAAO,EAAE,CAyBzI"}
|
package/lib/parsers/svelte.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ES_CONTAINER_TYPES_TO_REPLACE_QUOTES, getESObjectPath, getLiteralsByESLiteralNode, hasESNodeParentExtension, isESNode, isESObjectKey, isESStringLike, isInsideObjectValue } from "./es.js";
|
|
2
2
|
import { MatcherType } from "../types/rule.js";
|
|
3
|
-
import { getLiteralNodesByMatchers,
|
|
3
|
+
import { getLiteralNodesByMatchers, isIndexedAccessLiteral, isInsideBinaryExpression, isInsideConditionalExpressionTest, isInsideLogicalExpressionLeft, isInsideMemberExpression, matchesPathPattern } from "../utils/matchers.js";
|
|
4
4
|
import { addAttribute, deduplicateLiterals, getContent, getIndentation, getQuotes, getWhitespace, matchesName } from "../utils/utils.js";
|
|
5
5
|
export const SVELTE_CONTAINER_TYPES_TO_REPLACE_QUOTES = [
|
|
6
6
|
...ES_CONTAINER_TYPES_TO_REPLACE_QUOTES,
|
|
@@ -23,26 +23,22 @@ export function getDirectivesBySvelteTag(ctx, node) {
|
|
|
23
23
|
return acc;
|
|
24
24
|
}, []);
|
|
25
25
|
}
|
|
26
|
-
export function getLiteralsBySvelteAttribute(ctx, attribute,
|
|
26
|
+
export function getLiteralsBySvelteAttribute(ctx, attribute, selectors) {
|
|
27
27
|
// skip shorthand attributes #42
|
|
28
28
|
if (!Array.isArray(attribute.value)) {
|
|
29
29
|
return [];
|
|
30
30
|
}
|
|
31
31
|
const name = attribute.key.name;
|
|
32
|
-
const literals =
|
|
32
|
+
const literals = selectors.reduce((literals, selector) => {
|
|
33
33
|
for (const value of attribute.value) {
|
|
34
|
-
if (
|
|
35
|
-
|
|
36
|
-
continue;
|
|
37
|
-
}
|
|
38
|
-
literals.push(...getLiteralsBySvelteLiteralNode(ctx, value));
|
|
34
|
+
if (!matchesName(selector.name.toLowerCase(), name.toLowerCase())) {
|
|
35
|
+
continue;
|
|
39
36
|
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
}
|
|
44
|
-
literals.push(...getLiteralsBySvelteMatchers(ctx, value, attributes[1]));
|
|
37
|
+
if (!selector.match) {
|
|
38
|
+
literals.push(...getLiteralsBySvelteLiteralNode(ctx, value));
|
|
39
|
+
continue;
|
|
45
40
|
}
|
|
41
|
+
literals.push(...getLiteralsBySvelteMatchers(ctx, value, selector.match));
|
|
46
42
|
}
|
|
47
43
|
return literals;
|
|
48
44
|
}, []);
|
|
@@ -50,18 +46,19 @@ export function getLiteralsBySvelteAttribute(ctx, attribute, attributes) {
|
|
|
50
46
|
.filter(deduplicateLiterals)
|
|
51
47
|
.map(addAttribute(name));
|
|
52
48
|
}
|
|
53
|
-
export function getLiteralsBySvelteDirective(ctx, directive,
|
|
49
|
+
export function getLiteralsBySvelteDirective(ctx, directive, selectors) {
|
|
54
50
|
if (directive.kind !== "Class") {
|
|
55
51
|
return [];
|
|
56
52
|
}
|
|
57
53
|
const name = `class:${directive.key.name.name}`;
|
|
58
|
-
const literals =
|
|
59
|
-
if (
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
literals
|
|
54
|
+
const literals = selectors.reduce((literals, selector) => {
|
|
55
|
+
if (!matchesName(selector.name.toLowerCase(), name.toLowerCase())) {
|
|
56
|
+
return literals;
|
|
57
|
+
}
|
|
58
|
+
if (!selector.match) {
|
|
59
|
+
return literals;
|
|
64
60
|
}
|
|
61
|
+
literals.push(...getLiteralsBySvelteMatchers(ctx, directive.key.name, selector.match));
|
|
65
62
|
return literals;
|
|
66
63
|
}, []);
|
|
67
64
|
return literals
|
|
@@ -200,7 +197,7 @@ function isSvelteMustacheTag(node) {
|
|
|
200
197
|
}
|
|
201
198
|
function getSvelteMatcherFunctions(matchers) {
|
|
202
199
|
return matchers.reduce((matcherFunctions, matcher) => {
|
|
203
|
-
switch (matcher.
|
|
200
|
+
switch (matcher.type) {
|
|
204
201
|
case MatcherType.String: {
|
|
205
202
|
matcherFunctions.push((node) => {
|
|
206
203
|
if (!isESNode(node) ||
|
|
@@ -230,10 +227,10 @@ function getSvelteMatcherFunctions(matchers) {
|
|
|
230
227
|
return false;
|
|
231
228
|
}
|
|
232
229
|
const path = getESObjectPath(node);
|
|
233
|
-
if (!path || !matcher.
|
|
230
|
+
if (!path || !matcher.path) {
|
|
234
231
|
return true;
|
|
235
232
|
}
|
|
236
|
-
return matchesPathPattern(path, matcher.
|
|
233
|
+
return matchesPathPattern(path, matcher.path);
|
|
237
234
|
});
|
|
238
235
|
break;
|
|
239
236
|
}
|
|
@@ -251,10 +248,10 @@ function getSvelteMatcherFunctions(matchers) {
|
|
|
251
248
|
return false;
|
|
252
249
|
}
|
|
253
250
|
const path = getESObjectPath(node);
|
|
254
|
-
if (!path || !matcher.
|
|
251
|
+
if (!path || !matcher.path) {
|
|
255
252
|
return true;
|
|
256
253
|
}
|
|
257
|
-
return matchesPathPattern(path, matcher.
|
|
254
|
+
return matchesPathPattern(path, matcher.path);
|
|
258
255
|
});
|
|
259
256
|
break;
|
|
260
257
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"svelte.js","sourceRoot":"","sources":["../../src/parsers/svelte.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oCAAoC,EACpC,eAAe,EACf,0BAA0B,EAC1B,wBAAwB,EACxB,QAAQ,EACR,aAAa,EACb,cAAc,EACd,mBAAmB,EACpB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EACL,yBAAyB,EACzB,
|
|
1
|
+
{"version":3,"file":"svelte.js","sourceRoot":"","sources":["../../src/parsers/svelte.ts"],"names":[],"mappings":"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"}
|
package/lib/parsers/vue.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import type { Rule } from "eslint";
|
|
2
2
|
import type { AST } from "vue-eslint-parser";
|
|
3
|
-
import type { Attributes } from "../options/schemas/attributes.js";
|
|
4
3
|
import type { Literal } from "../types/ast.js";
|
|
4
|
+
import type { AttributeSelector } from "../types/rule.js";
|
|
5
5
|
export declare const VUE_CONTAINER_TYPES_TO_REPLACE_QUOTES: string[];
|
|
6
6
|
export declare const VUE_CONTAINER_TYPES_TO_INSERT_BRACES: string[];
|
|
7
7
|
export declare function getAttributesByVueStartTag(ctx: Rule.RuleContext, node: AST.VStartTag): (AST.VAttribute | AST.VDirective)[];
|
|
8
|
-
export declare function getLiteralsByVueAttribute(ctx: Rule.RuleContext, attribute: AST.VAttribute | AST.VDirective,
|
|
8
|
+
export declare function getLiteralsByVueAttribute(ctx: Rule.RuleContext, attribute: AST.VAttribute | AST.VDirective, selectors: AttributeSelector[]): Literal[];
|
|
9
9
|
//# sourceMappingURL=vue.d.ts.map
|
package/lib/parsers/vue.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vue.d.ts","sourceRoot":"","sources":["../../src/parsers/vue.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"vue.d.ts","sourceRoot":"","sources":["../../src/parsers/vue.ts"],"names":[],"mappings":"AA+BA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAG7C,OAAO,KAAK,EAAE,OAAO,EAAoD,MAAM,iCAAiC,CAAC;AACjH,OAAO,KAAK,EAAE,iBAAiB,EAAqC,MAAM,kCAAkC,CAAC;AAG7G,eAAO,MAAM,qCAAqC,UAEjD,CAAC;AAEF,eAAO,MAAM,oCAAoC,UAEhD,CAAC;AAGF,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,GAAG,CAAC,SAAS,GAAG,CAAC,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC,EAAE,CAE1H;AAED,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,iBAAiB,EAAE,GAAG,OAAO,EAAE,CA0BtJ"}
|
package/lib/parsers/vue.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ES_CONTAINER_TYPES_TO_INSERT_BRACES, ES_CONTAINER_TYPES_TO_REPLACE_QUOTES, getESObjectPath, getLiteralsByESLiteralNode, hasESNodeParentExtension, isESNode, isESObjectKey, isESStringLike, isInsideObjectValue } from "./es.js";
|
|
2
2
|
import { MatcherType } from "../types/rule.js";
|
|
3
|
-
import { getLiteralNodesByMatchers,
|
|
3
|
+
import { getLiteralNodesByMatchers, isIndexedAccessLiteral, isInsideBinaryExpression, isInsideConditionalExpressionTest, isInsideLogicalExpressionLeft, isInsideMemberExpression, matchesPathPattern } from "../utils/matchers.js";
|
|
4
4
|
import { addAttribute, deduplicateLiterals, getContent, getIndentation, getQuotes, getWhitespace, matchesName } from "../utils/utils.js";
|
|
5
5
|
export const VUE_CONTAINER_TYPES_TO_REPLACE_QUOTES = [
|
|
6
6
|
...ES_CONTAINER_TYPES_TO_REPLACE_QUOTES
|
|
@@ -11,25 +11,21 @@ export const VUE_CONTAINER_TYPES_TO_INSERT_BRACES = [
|
|
|
11
11
|
export function getAttributesByVueStartTag(ctx, node) {
|
|
12
12
|
return node.attributes;
|
|
13
13
|
}
|
|
14
|
-
export function getLiteralsByVueAttribute(ctx, attribute,
|
|
14
|
+
export function getLiteralsByVueAttribute(ctx, attribute, selectors) {
|
|
15
15
|
if (attribute.value === null) {
|
|
16
16
|
return [];
|
|
17
17
|
}
|
|
18
18
|
const name = getVueAttributeName(attribute);
|
|
19
19
|
const value = attribute.value;
|
|
20
|
-
const literals =
|
|
21
|
-
if (
|
|
22
|
-
|
|
23
|
-
return literals;
|
|
24
|
-
}
|
|
25
|
-
literals.push(...getLiteralsByVueLiteralNode(ctx, value));
|
|
20
|
+
const literals = selectors.reduce((literals, selector) => {
|
|
21
|
+
if (!matchesName(getVueBoundName(selector.name).toLowerCase(), name?.toLowerCase())) {
|
|
22
|
+
return literals;
|
|
26
23
|
}
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
}
|
|
31
|
-
literals.push(...getLiteralsByVueMatchers(ctx, value, attributes[1]));
|
|
24
|
+
if (!selector.match) {
|
|
25
|
+
literals.push(...getLiteralsByVueLiteralNode(ctx, value));
|
|
26
|
+
return literals;
|
|
32
27
|
}
|
|
28
|
+
literals.push(...getLiteralsByVueMatchers(ctx, value, selector.match));
|
|
33
29
|
return literals;
|
|
34
30
|
}, []);
|
|
35
31
|
return literals
|
|
@@ -121,7 +117,7 @@ function isVueLiteralNode(node) {
|
|
|
121
117
|
}
|
|
122
118
|
function getVueMatcherFunctions(matchers) {
|
|
123
119
|
return matchers.reduce((matcherFunctions, matcher) => {
|
|
124
|
-
switch (matcher.
|
|
120
|
+
switch (matcher.type) {
|
|
125
121
|
case MatcherType.String: {
|
|
126
122
|
matcherFunctions.push((node) => {
|
|
127
123
|
if (!isESNode(node) ||
|
|
@@ -151,10 +147,10 @@ function getVueMatcherFunctions(matchers) {
|
|
|
151
147
|
return false;
|
|
152
148
|
}
|
|
153
149
|
const path = getESObjectPath(node);
|
|
154
|
-
if (!path || !matcher.
|
|
150
|
+
if (!path || !matcher.path) {
|
|
155
151
|
return true;
|
|
156
152
|
}
|
|
157
|
-
return matchesPathPattern(path, matcher.
|
|
153
|
+
return matchesPathPattern(path, matcher.path);
|
|
158
154
|
});
|
|
159
155
|
break;
|
|
160
156
|
}
|
|
@@ -172,10 +168,10 @@ function getVueMatcherFunctions(matchers) {
|
|
|
172
168
|
return false;
|
|
173
169
|
}
|
|
174
170
|
const path = getESObjectPath(node);
|
|
175
|
-
if (!path || !matcher.
|
|
171
|
+
if (!path || !matcher.path) {
|
|
176
172
|
return true;
|
|
177
173
|
}
|
|
178
|
-
return matchesPathPattern(path, matcher.
|
|
174
|
+
return matchesPathPattern(path, matcher.path);
|
|
179
175
|
});
|
|
180
176
|
break;
|
|
181
177
|
}
|
package/lib/parsers/vue.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vue.js","sourceRoot":"","sources":["../../src/parsers/vue.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mCAAmC,EACnC,oCAAoC,EACpC,eAAe,EACf,0BAA0B,EAC1B,wBAAwB,EACxB,QAAQ,EACR,aAAa,EACb,cAAc,EACd,mBAAmB,EACpB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EACL,yBAAyB,EACzB,
|
|
1
|
+
{"version":3,"file":"vue.js","sourceRoot":"","sources":["../../src/parsers/vue.ts"],"names":[],"mappings":"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"}
|