eslint-plugin-better-tailwindcss 3.3.1 → 3.4.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.
Files changed (56) hide show
  1. package/README.md +2 -2
  2. package/lib/cjs/configs/config.d.ts +8 -4
  3. package/lib/cjs/configs/config.d.ts.map +1 -1
  4. package/lib/cjs/configs/config.js +12 -8
  5. package/lib/cjs/configs/config.js.map +1 -1
  6. package/lib/cjs/rules/deprecated/multiline.d.ts +3 -0
  7. package/lib/cjs/rules/deprecated/multiline.d.ts.map +1 -0
  8. package/lib/cjs/rules/deprecated/multiline.js +27 -0
  9. package/lib/cjs/rules/deprecated/multiline.js.map +1 -0
  10. package/lib/cjs/rules/deprecated/sort-classes.d.ts +3 -0
  11. package/lib/cjs/rules/deprecated/sort-classes.d.ts.map +1 -0
  12. package/lib/cjs/rules/deprecated/sort-classes.js +26 -0
  13. package/lib/cjs/rules/deprecated/sort-classes.js.map +1 -0
  14. package/lib/cjs/rules/enforce-consistent-class-order.d.ts +19 -0
  15. package/lib/cjs/rules/enforce-consistent-class-order.d.ts.map +1 -0
  16. package/lib/cjs/rules/enforce-consistent-class-order.js +157 -0
  17. package/lib/cjs/rules/enforce-consistent-class-order.js.map +1 -0
  18. package/lib/cjs/rules/enforce-consistent-line-wrapping.d.ts +15 -0
  19. package/lib/cjs/rules/enforce-consistent-line-wrapping.d.ts.map +1 -0
  20. package/lib/cjs/rules/enforce-consistent-line-wrapping.js +566 -0
  21. package/lib/cjs/rules/enforce-consistent-line-wrapping.js.map +1 -0
  22. package/lib/cjs/rules/multiline.d.ts +1 -1
  23. package/lib/cjs/rules/no-restricted-classes.d.ts +6 -4
  24. package/lib/cjs/rules/no-restricted-classes.d.ts.map +1 -1
  25. package/lib/cjs/rules/no-restricted-classes.js +28 -3
  26. package/lib/cjs/rules/no-restricted-classes.js.map +1 -1
  27. package/lib/cjs/rules/no-unnecessary-whitespace.js +1 -1
  28. package/lib/cjs/rules/no-unnecessary-whitespace.js.map +1 -1
  29. package/lib/esm/configs/config.d.ts +8 -4
  30. package/lib/esm/configs/config.d.ts.map +1 -1
  31. package/lib/esm/configs/config.js +12 -8
  32. package/lib/esm/configs/config.js.map +1 -1
  33. package/lib/esm/rules/deprecated/multiline.d.ts +3 -0
  34. package/lib/esm/rules/deprecated/multiline.d.ts.map +1 -0
  35. package/lib/esm/rules/deprecated/multiline.js +24 -0
  36. package/lib/esm/rules/deprecated/multiline.js.map +1 -0
  37. package/lib/esm/rules/deprecated/sort-classes.d.ts +3 -0
  38. package/lib/esm/rules/deprecated/sort-classes.d.ts.map +1 -0
  39. package/lib/esm/rules/deprecated/sort-classes.js +23 -0
  40. package/lib/esm/rules/deprecated/sort-classes.js.map +1 -0
  41. package/lib/esm/rules/enforce-consistent-class-order.d.ts +19 -0
  42. package/lib/esm/rules/enforce-consistent-class-order.d.ts.map +1 -0
  43. package/lib/esm/rules/enforce-consistent-class-order.js +153 -0
  44. package/lib/esm/rules/enforce-consistent-class-order.js.map +1 -0
  45. package/lib/esm/rules/enforce-consistent-line-wrapping.d.ts +15 -0
  46. package/lib/esm/rules/enforce-consistent-line-wrapping.d.ts.map +1 -0
  47. package/lib/esm/rules/enforce-consistent-line-wrapping.js +563 -0
  48. package/lib/esm/rules/enforce-consistent-line-wrapping.js.map +1 -0
  49. package/lib/esm/rules/multiline.d.ts +1 -1
  50. package/lib/esm/rules/no-restricted-classes.d.ts +6 -4
  51. package/lib/esm/rules/no-restricted-classes.d.ts.map +1 -1
  52. package/lib/esm/rules/no-restricted-classes.js +29 -4
  53. package/lib/esm/rules/no-restricted-classes.js.map +1 -1
  54. package/lib/esm/rules/no-unnecessary-whitespace.js +1 -1
  55. package/lib/esm/rules/no-unnecessary-whitespace.js.map +1 -1
  56. package/package.json +5 -5
@@ -25,6 +25,7 @@ exports.noRestrictedClasses = {
25
25
  recommended: false,
26
26
  url: DOCUMENTATION_URL
27
27
  },
28
+ fixable: "code",
28
29
  schema: [
29
30
  {
30
31
  additionalProperties: false,
@@ -39,6 +40,10 @@ exports.noRestrictedClasses = {
39
40
  {
40
41
  additionalProperties: false,
41
42
  properties: {
43
+ fix: {
44
+ description: "A replacement class",
45
+ type: "string"
46
+ },
42
47
  message: {
43
48
  default: undefined,
44
49
  description: "The message to report when a class is restricted.",
@@ -71,8 +76,19 @@ function lintLiterals(ctx, literals) {
71
76
  const { restrict: restrictions } = getOptions(ctx);
72
77
  for (const literal of literals) {
73
78
  const classes = literal.content;
74
- const classNames = (0, utils_js_1.splitClasses)(classes);
75
- for (const className of classNames) {
79
+ const classChunks = (0, utils_js_1.splitClasses)(classes);
80
+ const whitespaceChunks = (0, utils_js_1.splitWhitespaces)(classes);
81
+ const startsWithWhitespace = whitespaceChunks.length > 0 && whitespaceChunks[0] !== "";
82
+ for (let classIndex = 0, literalIndex = 0; classIndex < classChunks.length; classIndex++) {
83
+ const className = classChunks[classIndex];
84
+ if (startsWithWhitespace) {
85
+ literalIndex += whitespaceChunks[classIndex].length;
86
+ }
87
+ const classStart = literalIndex;
88
+ literalIndex += className.length;
89
+ if (!startsWithWhitespace) {
90
+ literalIndex += whitespaceChunks[classIndex + 1].length;
91
+ }
76
92
  for (const restriction of restrictions) {
77
93
  const pattern = typeof restriction === "string" ? restriction : restriction.pattern;
78
94
  const message = typeof restriction === "string" ? undefined : restriction.message;
@@ -80,6 +96,7 @@ function lintLiterals(ctx, literals) {
80
96
  if (!matches) {
81
97
  continue;
82
98
  }
99
+ const [literalStart] = literal.range;
83
100
  ctx.report({
84
101
  data: {
85
102
  className
@@ -87,7 +104,15 @@ function lintLiterals(ctx, literals) {
87
104
  loc: (0, utils_js_1.getExactClassLocation)(literal, className),
88
105
  message: message
89
106
  ? (0, utils_js_1.replacePlaceholders)(message, matches)
90
- : "Restricted class: \"{{ className }}\"."
107
+ : "Restricted class: \"{{ className }}\".",
108
+ ...typeof restriction === "object" && restriction.fix !== undefined
109
+ ? {
110
+ fix: fixer => fixer.replaceTextRange([
111
+ literalStart + classStart + 1,
112
+ literalStart + classStart + className.length + 1
113
+ ], (0, utils_js_1.replacePlaceholders)(restriction.fix, matches))
114
+ }
115
+ : {}
91
116
  });
92
117
  }
93
118
  }
@@ -1 +1 @@
1
- {"version":3,"file":"no-restricted-classes.js","sourceRoot":"","sources":["../../../src/rules/no-restricted-classes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"no-restricted-classes.js","sourceRoot":"","sources":["../../../src/rules/no-restricted-classes.ts"],"names":[],"mappings":"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"}
@@ -33,7 +33,7 @@ exports.noUnnecessaryWhitespace = {
33
33
  properties: {
34
34
  allowMultiline: {
35
35
  default: defaultOptions.allowMultiline,
36
- description: "Allow multi-line class declarations. If this option is disabled, template literal strings will be collapsed into a single line string wherever possible. Must be set to `true` when used in combination with [better-tailwindcss/multiline](./multiline.md).",
36
+ description: "Allow multi-line class declarations. If this option is disabled, template literal strings will be collapsed into a single line string wherever possible. Must be set to `true` when used in combination with [better-tailwindcss/enforce-consistent-line-wrapping](./enforce-consistent-line-wrapping.md).",
37
37
  type: "boolean"
38
38
  },
39
39
  ...descriptions_js_1.CALLEE_SCHEMA,
@@ -1 +1 @@
1
- {"version":3,"file":"no-unnecessary-whitespace.js","sourceRoot":"","sources":["../../../src/rules/no-unnecessary-whitespace.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"no-unnecessary-whitespace.js","sourceRoot":"","sources":["../../../src/rules/no-unnecessary-whitespace.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,13 @@
1
+ import { multiline } from "../rules/deprecated/multiline.js";
2
+ import { sortClasses } from "../rules/deprecated/sort-classes.js";
3
+ import { enforceConsistentClassOrder } from "../rules/enforce-consistent-class-order.js";
4
+ import { enforceConsistentLineWrapping } from "../rules/enforce-consistent-line-wrapping.js";
1
5
  import { enforceConsistentVariableSyntax } from "../rules/enforce-consistent-variable-syntax.js";
2
- import { multiline } from "../rules/multiline.js";
3
6
  import { noConflictingClasses } from "../rules/no-conflicting-classes.js";
4
7
  import { noDuplicateClasses } from "../rules/no-duplicate-classes.js";
5
8
  import { noRestrictedClasses } from "../rules/no-restricted-classes.js";
6
9
  import { noUnnecessaryWhitespace } from "../rules/no-unnecessary-whitespace.js";
7
10
  import { noUnregisteredClasses } from "../rules/no-unregistered-classes.js";
8
- import { sortClasses } from "../rules/sort-classes.js";
9
11
  export declare const config: {
10
12
  configs: {
11
13
  [x: string]: {
@@ -19,14 +21,16 @@ export declare const config: {
19
21
  name: string;
20
22
  };
21
23
  rules: {
22
- [enforceConsistentVariableSyntax.name]: import("eslint").Rule.RuleModule;
23
24
  [multiline.name]: import("eslint").Rule.RuleModule;
25
+ [sortClasses.name]: import("eslint").Rule.RuleModule;
26
+ [enforceConsistentClassOrder.name]: import("eslint").Rule.RuleModule;
27
+ [enforceConsistentLineWrapping.name]: import("eslint").Rule.RuleModule;
28
+ [enforceConsistentVariableSyntax.name]: import("eslint").Rule.RuleModule;
24
29
  [noConflictingClasses.name]: import("eslint").Rule.RuleModule;
25
30
  [noDuplicateClasses.name]: import("eslint").Rule.RuleModule;
26
31
  [noRestrictedClasses.name]: import("eslint").Rule.RuleModule;
27
32
  [noUnnecessaryWhitespace.name]: import("eslint").Rule.RuleModule;
28
33
  [noUnregisteredClasses.name]: import("eslint").Rule.RuleModule;
29
- [sortClasses.name]: import("eslint").Rule.RuleModule;
30
34
  };
31
35
  };
32
36
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/configs/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,MAAM,gEAAgE,CAAC;AACjH,OAAO,EAAE,SAAS,EAAE,MAAM,uCAAuC,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oDAAoD,CAAC;AAC1F,OAAO,EAAE,kBAAkB,EAAE,MAAM,kDAAkD,CAAC;AACtF,OAAO,EAAE,mBAAmB,EAAE,MAAM,mDAAmD,CAAC;AACxF,OAAO,EAAE,uBAAuB,EAAE,MAAM,uDAAuD,CAAC;AAChG,OAAO,EAAE,qBAAqB,EAAE,MAAM,qDAAqD,CAAC;AAC5F,OAAO,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAC;AA+DvE,eAAO,MAAM,MAAM;;;;;;;;;;;;;QArDf,CAAC,+BAA+B,CAAC,IAAI,CAAC,mCAAsC;QAC5E,CAAC,SAAS,CAAC,IAAI,CAAC,mCAAgB;QAChC,CAAC,oBAAoB,CAAC,IAAI,CAAC,mCAA2B;QACtD,CAAC,kBAAkB,CAAC,IAAI,CAAC,mCAAyB;QAClD,CAAC,mBAAmB,CAAC,IAAI,CAAC,mCAA0B;QACpD,CAAC,uBAAuB,CAAC,IAAI,CAAC,mCAA8B;QAC5D,CAAC,qBAAqB,CAAC,IAAI,CAAC,mCAA4B;QACxD,CAAC,WAAW,CAAC,IAAI,CAAC,mCAAkB;;CAyDf,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/configs/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,kDAAkD,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,qDAAqD,CAAC;AAClF,OAAO,EAAE,2BAA2B,EAAE,MAAM,4DAA4D,CAAC;AACzG,OAAO,EAAE,6BAA6B,EAAE,MAAM,8DAA8D,CAAC;AAC7G,OAAO,EAAE,+BAA+B,EAAE,MAAM,gEAAgE,CAAC;AACjH,OAAO,EAAE,oBAAoB,EAAE,MAAM,oDAAoD,CAAC;AAC1F,OAAO,EAAE,kBAAkB,EAAE,MAAM,kDAAkD,CAAC;AACtF,OAAO,EAAE,mBAAmB,EAAE,MAAM,mDAAmD,CAAC;AACxF,OAAO,EAAE,uBAAuB,EAAE,MAAM,uDAAuD,CAAC;AAChG,OAAO,EAAE,qBAAqB,EAAE,MAAM,qDAAqD,CAAC;AAkE5F,eAAO,MAAM,MAAM;;;;;;;;;;;;;QAxDf,CAAC,SAAS,CAAC,IAAI,CAAC,mCAAgB;QAChC,CAAC,WAAW,CAAC,IAAI,CAAC,mCAAkB;QAEpC,CAAC,2BAA2B,CAAC,IAAI,CAAC,mCAAkC;QACpE,CAAC,6BAA6B,CAAC,IAAI,CAAC,mCAAoC;QACxE,CAAC,+BAA+B,CAAC,IAAI,CAAC,mCAAsC;QAC5E,CAAC,oBAAoB,CAAC,IAAI,CAAC,mCAA2B;QACtD,CAAC,kBAAkB,CAAC,IAAI,CAAC,mCAAyB;QAClD,CAAC,mBAAmB,CAAC,IAAI,CAAC,mCAA0B;QACpD,CAAC,uBAAuB,CAAC,IAAI,CAAC,mCAA8B;QAC5D,CAAC,qBAAqB,CAAC,IAAI,CAAC,mCAA4B;;CAyDnC,CAAC"}
@@ -1,33 +1,37 @@
1
+ import { multiline } from "../rules/deprecated/multiline.js";
2
+ import { sortClasses } from "../rules/deprecated/sort-classes.js";
3
+ import { enforceConsistentClassOrder } from "../rules/enforce-consistent-class-order.js";
4
+ import { enforceConsistentLineWrapping } from "../rules/enforce-consistent-line-wrapping.js";
1
5
  import { enforceConsistentVariableSyntax } from "../rules/enforce-consistent-variable-syntax.js";
2
- import { multiline } from "../rules/multiline.js";
3
6
  import { noConflictingClasses } from "../rules/no-conflicting-classes.js";
4
7
  import { noDuplicateClasses } from "../rules/no-duplicate-classes.js";
5
8
  import { noRestrictedClasses } from "../rules/no-restricted-classes.js";
6
9
  import { noUnnecessaryWhitespace } from "../rules/no-unnecessary-whitespace.js";
7
10
  import { noUnregisteredClasses } from "../rules/no-unregistered-classes.js";
8
- import { sortClasses } from "../rules/sort-classes.js";
9
11
  const plugin = {
10
12
  meta: {
11
13
  name: "better-tailwindcss"
12
14
  },
13
15
  rules: {
14
- [enforceConsistentVariableSyntax.name]: enforceConsistentVariableSyntax.rule,
15
16
  [multiline.name]: multiline.rule,
17
+ [sortClasses.name]: sortClasses.rule,
18
+ [enforceConsistentClassOrder.name]: enforceConsistentClassOrder.rule,
19
+ [enforceConsistentLineWrapping.name]: enforceConsistentLineWrapping.rule,
20
+ [enforceConsistentVariableSyntax.name]: enforceConsistentVariableSyntax.rule,
16
21
  [noConflictingClasses.name]: noConflictingClasses.rule,
17
22
  [noDuplicateClasses.name]: noDuplicateClasses.rule,
18
23
  [noRestrictedClasses.name]: noRestrictedClasses.rule,
19
24
  [noUnnecessaryWhitespace.name]: noUnnecessaryWhitespace.rule,
20
- [noUnregisteredClasses.name]: noUnregisteredClasses.rule,
21
- [sortClasses.name]: sortClasses.rule
25
+ [noUnregisteredClasses.name]: noUnregisteredClasses.rule
22
26
  }
23
27
  };
24
28
  const plugins = [plugin.meta.name];
25
29
  const getStylisticRules = (severity = "warn") => {
26
30
  return {
27
- [`${plugin.meta.name}/${multiline.name}`]: severity,
31
+ [`${plugin.meta.name}/${enforceConsistentClassOrder.name}`]: severity,
32
+ [`${plugin.meta.name}/${enforceConsistentLineWrapping.name}`]: severity,
28
33
  [`${plugin.meta.name}/${noDuplicateClasses.name}`]: severity,
29
- [`${plugin.meta.name}/${noUnnecessaryWhitespace.name}`]: severity,
30
- [`${plugin.meta.name}/${sortClasses.name}`]: severity
34
+ [`${plugin.meta.name}/${noUnnecessaryWhitespace.name}`]: severity
31
35
  };
32
36
  };
33
37
  const getCorrectnessRules = (severity = "error") => {
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/configs/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/configs/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { ESLintRule } from "../../types/rule.js";
2
+ export declare const multiline: ESLintRule;
3
+ //# sourceMappingURL=multiline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multiline.d.ts","sourceRoot":"","sources":["../../../../src/rules/deprecated/multiline.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAGnE,eAAO,MAAM,SAAS,EAAE,UAqBvB,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { enforceConsistentLineWrapping } from "../enforce-consistent-line-wrapping.js";
2
+ export const multiline = {
3
+ ...enforceConsistentLineWrapping,
4
+ name: "multiline",
5
+ rule: {
6
+ ...enforceConsistentLineWrapping.rule,
7
+ meta: {
8
+ ...enforceConsistentLineWrapping.rule.meta,
9
+ deprecated: {
10
+ availableUntil: "^4.0.0",
11
+ deprecatedSince: "^3.4.0",
12
+ replacedBy: [
13
+ {
14
+ message: "The rule name `multiline` is deprecated. Please use `enforce-consistent-line-wrapping` instead.",
15
+ rule: {
16
+ name: "enforce-consistent-line-wrapping"
17
+ }
18
+ }
19
+ ]
20
+ }
21
+ }
22
+ }
23
+ };
24
+ //# sourceMappingURL=multiline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multiline.js","sourceRoot":"","sources":["../../../../src/rules/deprecated/multiline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,MAAM,8DAA8D,CAAC;AAK7G,MAAM,CAAC,MAAM,SAAS,GAAe;IACnC,GAAG,6BAA6B;IAChC,IAAI,EAAE,WAAoB;IAC1B,IAAI,EAAE;QACJ,GAAG,6BAA6B,CAAC,IAAI;QACrC,IAAI,EAAE;YACJ,GAAG,6BAA6B,CAAC,IAAI,CAAC,IAAI;YAC1C,UAAU,EAAE;gBACV,cAAc,EAAE,QAAQ;gBACxB,eAAe,EAAE,QAAQ;gBACzB,UAAU,EAAE;oBACV;wBACE,OAAO,EAAE,iGAAiG;wBAC1G,IAAI,EAAE;4BACJ,IAAI,EAAE,kCAAkC;yBACzC;qBACF;iBACF;aACF;SACF;KACF;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { ESLintRule } from "../../types/rule.js";
2
+ export declare const sortClasses: ESLintRule;
3
+ //# sourceMappingURL=sort-classes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sort-classes.d.ts","sourceRoot":"","sources":["../../../../src/rules/deprecated/sort-classes.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAGnE,eAAO,MAAM,WAAW,EAAE,UAoBzB,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { enforceConsistentClassOrder } from "../enforce-consistent-class-order.js";
2
+ export const sortClasses = {
3
+ name: "sort-classes",
4
+ rule: {
5
+ ...enforceConsistentClassOrder.rule,
6
+ meta: {
7
+ ...enforceConsistentClassOrder.rule.meta,
8
+ deprecated: {
9
+ availableUntil: "^4.0.0",
10
+ deprecatedSince: "^3.4.0",
11
+ replacedBy: [
12
+ {
13
+ message: "The rule name `sort-classes` is deprecated. Please use `enforce-consistent-class-order` instead.",
14
+ rule: {
15
+ name: "enforce-consistent-class-order"
16
+ }
17
+ }
18
+ ]
19
+ }
20
+ }
21
+ }
22
+ };
23
+ //# sourceMappingURL=sort-classes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sort-classes.js","sourceRoot":"","sources":["../../../../src/rules/deprecated/sort-classes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,4DAA4D,CAAC;AAKzG,MAAM,CAAC,MAAM,WAAW,GAAe;IACrC,IAAI,EAAE,cAAuB;IAC7B,IAAI,EAAE;QACJ,GAAG,2BAA2B,CAAC,IAAI;QACnC,IAAI,EAAE;YACJ,GAAG,2BAA2B,CAAC,IAAI,CAAC,IAAI;YACxC,UAAU,EAAE;gBACV,cAAc,EAAE,QAAQ;gBACxB,eAAe,EAAE,QAAQ;gBACzB,UAAU,EAAE;oBACV;wBACE,OAAO,EAAE,kGAAkG;wBAC3G,IAAI,EAAE;4BACJ,IAAI,EAAE,gCAAgC;yBACvC;qBACF;iBACF;aACF;SACF;KACF;CACF,CAAC"}
@@ -0,0 +1,19 @@
1
+ import type { Rule } from "eslint";
2
+ import type { AttributeOption, CalleeOption, ESLintRule, TagOption, VariableOption } from "../types/rule.js";
3
+ export type Options = [
4
+ Partial<AttributeOption & CalleeOption & TagOption & VariableOption & {
5
+ entryPoint?: string;
6
+ order?: "asc" | "desc" | "improved" | "official";
7
+ tailwindConfig?: string;
8
+ }>
9
+ ];
10
+ export declare const enforceConsistentClassOrder: ESLintRule<Options>;
11
+ export declare function getOptions(ctx: Rule.RuleContext): {
12
+ order: "asc" | "desc" | "improved" | "official";
13
+ attributes: any;
14
+ callees: any;
15
+ tags: any;
16
+ tailwindConfig: any;
17
+ variables: any;
18
+ };
19
+ //# sourceMappingURL=enforce-consistent-class-order.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enforce-consistent-class-order.d.ts","sourceRoot":"","sources":["../../../src/rules/enforce-consistent-class-order.ts"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAGnC,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACZ,UAAU,EACV,SAAS,EACT,cAAc,EACf,MAAM,kCAAkC,CAAC;AAI1C,MAAM,MAAM,OAAO,GAAG;IACpB,OAAO,CACL,eAAe,GACf,YAAY,GACZ,SAAS,GACT,cAAc,GACd;QACE,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,CAAC;QACjD,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CACF;CACF,CAAC;AAYF,eAAO,MAAM,2BAA2B,EAAE,UAAU,CAAC,OAAO,CAwC3D,CAAC;AAmHF,wBAAgB,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW;;;;;;;EAa/C"}
@@ -0,0 +1,153 @@
1
+ import { DEFAULT_ATTRIBUTE_NAMES, DEFAULT_CALLEE_NAMES, DEFAULT_TAG_NAMES, DEFAULT_VARIABLE_NAMES } from "../options/default-options.js";
2
+ import { ATTRIBUTE_SCHEMA, CALLEE_SCHEMA, ENTRYPOINT_SCHEMA, TAG_SCHEMA, TAILWIND_CONFIG_SCHEMA, VARIABLE_SCHEMA } from "../options/descriptions.js";
3
+ import { getClassOrder } from "../tailwindcss/class-order.js";
4
+ import { getCommonOptions } from "../utils/options.js";
5
+ import { escapeNestedQuotes } from "../utils/quotes.js";
6
+ import { createRuleListener } from "../utils/rule.js";
7
+ import { augmentMessageWithWarnings, display, splitClasses, splitWhitespaces } from "../utils/utils.js";
8
+ const defaultOptions = {
9
+ attributes: DEFAULT_ATTRIBUTE_NAMES,
10
+ callees: DEFAULT_CALLEE_NAMES,
11
+ order: "improved",
12
+ tags: DEFAULT_TAG_NAMES,
13
+ variables: DEFAULT_VARIABLE_NAMES
14
+ };
15
+ const DOCUMENTATION_URL = "https://github.com/schoero/eslint-plugin-better-tailwindcss/blob/main/docs/rules/enforce-consistent-class-order.md";
16
+ export const enforceConsistentClassOrder = {
17
+ name: "enforce-consistent-class-order",
18
+ rule: {
19
+ create: ctx => createRuleListener(ctx, getOptions(ctx), lintLiterals),
20
+ meta: {
21
+ docs: {
22
+ category: "Stylistic Issues",
23
+ description: "Enforce a consistent order for tailwind classes.",
24
+ recommended: true,
25
+ url: DOCUMENTATION_URL
26
+ },
27
+ fixable: "code",
28
+ schema: [
29
+ {
30
+ additionalProperties: false,
31
+ properties: {
32
+ ...CALLEE_SCHEMA,
33
+ ...ATTRIBUTE_SCHEMA,
34
+ ...VARIABLE_SCHEMA,
35
+ ...TAG_SCHEMA,
36
+ ...ENTRYPOINT_SCHEMA,
37
+ ...TAILWIND_CONFIG_SCHEMA,
38
+ order: {
39
+ default: defaultOptions.order,
40
+ description: "The algorithm to use when sorting classes.",
41
+ enum: [
42
+ "asc",
43
+ "desc",
44
+ "official",
45
+ "improved"
46
+ ],
47
+ type: "string"
48
+ }
49
+ },
50
+ type: "object"
51
+ }
52
+ ],
53
+ type: "layout"
54
+ }
55
+ }
56
+ };
57
+ function lintLiterals(ctx, literals) {
58
+ for (const literal of literals) {
59
+ const classChunks = splitClasses(literal.content);
60
+ const whitespaceChunks = splitWhitespaces(literal.content);
61
+ const unsortableClasses = ["", ""];
62
+ // remove sticky classes
63
+ if (literal.closingBraces && whitespaceChunks[0] === "") {
64
+ whitespaceChunks.shift();
65
+ unsortableClasses[0] = classChunks.shift() ?? "";
66
+ }
67
+ if (literal.openingBraces && whitespaceChunks[whitespaceChunks.length - 1] === "") {
68
+ whitespaceChunks.pop();
69
+ unsortableClasses[1] = classChunks.pop() ?? "";
70
+ }
71
+ const [sortedClassChunks, warnings] = sortClassNames(ctx, classChunks);
72
+ const classes = [];
73
+ for (let i = 0; i < Math.max(sortedClassChunks.length, whitespaceChunks.length); i++) {
74
+ whitespaceChunks[i] && classes.push(whitespaceChunks[i]);
75
+ sortedClassChunks[i] && classes.push(sortedClassChunks[i]);
76
+ }
77
+ const escapedClasses = escapeNestedQuotes([
78
+ unsortableClasses[0],
79
+ ...classes,
80
+ unsortableClasses[1]
81
+ ].join(""), literal.openingQuote ?? literal.closingQuote ?? "`");
82
+ const fixedClasses = [
83
+ literal.openingQuote ?? "",
84
+ literal.type === "TemplateLiteral" && literal.closingBraces ? literal.closingBraces : "",
85
+ escapedClasses,
86
+ literal.type === "TemplateLiteral" && literal.openingBraces ? literal.openingBraces : "",
87
+ literal.closingQuote ?? ""
88
+ ].join("");
89
+ if (literal.raw === fixedClasses) {
90
+ continue;
91
+ }
92
+ ctx.report({
93
+ data: {
94
+ notSorted: display(literal.raw),
95
+ sorted: display(fixedClasses)
96
+ },
97
+ fix(fixer) {
98
+ return fixer.replaceTextRange(literal.range, fixedClasses);
99
+ },
100
+ loc: literal.loc,
101
+ message: augmentMessageWithWarnings("Incorrect class order. Expected\n\n{{ notSorted }}\n\nto be\n\n{{ sorted }}", DOCUMENTATION_URL, warnings)
102
+ });
103
+ }
104
+ }
105
+ function sortClassNames(ctx, classes) {
106
+ const { order, tailwindConfig } = getOptions(ctx);
107
+ if (order === "asc") {
108
+ return [classes.toSorted((a, b) => a.localeCompare(b))];
109
+ }
110
+ if (order === "desc") {
111
+ return [classes.toSorted((a, b) => b.localeCompare(a))];
112
+ }
113
+ const { classOrder, warnings } = getClassOrder({ classes, configPath: tailwindConfig, cwd: ctx.cwd });
114
+ const officiallySortedClasses = classOrder
115
+ .toSorted(([, a], [, z]) => {
116
+ if (a === z) {
117
+ return 0;
118
+ }
119
+ if (a === null) {
120
+ return -1;
121
+ }
122
+ if (z === null) {
123
+ return +1;
124
+ }
125
+ return +(a - z > 0n) - +(a - z < 0n);
126
+ })
127
+ .map(([className]) => className);
128
+ if (order === "official") {
129
+ return [officiallySortedClasses, warnings];
130
+ }
131
+ const groupedByVariant = new Map();
132
+ for (const className of officiallySortedClasses) {
133
+ const variant = className.match(/^.*?:/)?.[0] ?? "";
134
+ groupedByVariant.set(variant, [...groupedByVariant.get(variant) ?? [], className]);
135
+ }
136
+ return [
137
+ Array.from(groupedByVariant.entries())
138
+ .sort(([a], [b]) => a === "" ? -1 : b === "" ? 1 : 0)
139
+ .map(([, classes]) => classes)
140
+ .flat(),
141
+ warnings
142
+ ];
143
+ }
144
+ export function getOptions(ctx) {
145
+ const options = ctx.options[0] ?? {};
146
+ const common = getCommonOptions(ctx);
147
+ const order = options.order ?? defaultOptions.order;
148
+ return {
149
+ ...common,
150
+ order
151
+ };
152
+ }
153
+ //# sourceMappingURL=enforce-consistent-class-order.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enforce-consistent-class-order.js","sourceRoot":"","sources":["../../../src/rules/enforce-consistent-class-order.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { AttributeOption, CalleeOption, ESLintRule, TagOption, VariableOption } from "../types/rule.js";
2
+ export type Options = [
3
+ Partial<AttributeOption & CalleeOption & TagOption & VariableOption & {
4
+ classesPerLine?: number;
5
+ entryPoint?: string;
6
+ group?: "emptyLine" | "never" | "newLine";
7
+ indent?: "tab" | number;
8
+ lineBreakStyle?: "unix" | "windows";
9
+ preferSingleLine?: boolean;
10
+ printWidth?: number;
11
+ tailwindConfig?: string;
12
+ }>
13
+ ];
14
+ export declare const enforceConsistentLineWrapping: ESLintRule<Options>;
15
+ //# sourceMappingURL=enforce-consistent-line-wrapping.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enforce-consistent-line-wrapping.d.ts","sourceRoot":"","sources":["../../../src/rules/enforce-consistent-line-wrapping.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACZ,UAAU,EACV,SAAS,EACT,cAAc,EACf,MAAM,kCAAkC,CAAC;AAI1C,MAAM,MAAM,OAAO,GAAG;IACpB,OAAO,CACL,eAAe,GACf,YAAY,GACZ,SAAS,GACT,cAAc,GACd;QACE,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,KAAK,CAAC,EAAE,WAAW,GAAG,OAAO,GAAG,SAAS,CAAC;QAC1C,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;QACxB,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QACpC,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CACF;CACF,CAAC;AAqBF,eAAO,MAAM,6BAA6B,EAAE,UAAU,CAAC,OAAO,CAsE7D,CAAC"}