eslint-plugin-better-tailwindcss 4.0.0-beta.1 → 4.0.0-beta.3

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 (190) hide show
  1. package/README.md +2 -1
  2. package/lib/cjs/async-utils/cache.d.ts +1 -0
  3. package/lib/cjs/async-utils/cache.d.ts.map +1 -1
  4. package/lib/cjs/async-utils/cache.js +5 -2
  5. package/lib/cjs/async-utils/cache.js.map +1 -1
  6. package/lib/cjs/async-utils/config.d.ts +16 -0
  7. package/lib/cjs/async-utils/config.d.ts.map +1 -0
  8. package/lib/cjs/async-utils/config.js +63 -0
  9. package/lib/cjs/async-utils/config.js.map +1 -0
  10. package/lib/cjs/async-utils/context.d.ts +22 -0
  11. package/lib/cjs/async-utils/context.d.ts.map +1 -0
  12. package/lib/cjs/async-utils/context.js +21 -0
  13. package/lib/cjs/async-utils/context.js.map +1 -0
  14. package/lib/cjs/async-utils/tailwindcss.d.ts +16 -0
  15. package/lib/cjs/async-utils/tailwindcss.d.ts.map +1 -0
  16. package/lib/cjs/async-utils/tailwindcss.js +46 -0
  17. package/lib/cjs/async-utils/tailwindcss.js.map +1 -0
  18. package/lib/cjs/async-utils/tsconfig.d.ts +11 -0
  19. package/lib/cjs/async-utils/tsconfig.d.ts.map +1 -0
  20. package/lib/cjs/async-utils/tsconfig.js +33 -0
  21. package/lib/cjs/async-utils/tsconfig.js.map +1 -0
  22. package/lib/cjs/configs/config.d.ts.map +1 -1
  23. package/lib/cjs/configs/config.js +3 -1
  24. package/lib/cjs/configs/config.js.map +1 -1
  25. package/lib/cjs/rules/deprecated/multiline.d.ts +3 -0
  26. package/lib/cjs/rules/deprecated/multiline.d.ts.map +1 -0
  27. package/lib/cjs/rules/deprecated/multiline.js +27 -0
  28. package/lib/cjs/rules/deprecated/multiline.js.map +1 -0
  29. package/lib/cjs/rules/deprecated/sort-classes.d.ts +3 -0
  30. package/lib/cjs/rules/deprecated/sort-classes.d.ts.map +1 -0
  31. package/lib/cjs/rules/deprecated/sort-classes.js +26 -0
  32. package/lib/cjs/rules/deprecated/sort-classes.js.map +1 -0
  33. package/lib/cjs/rules/enforce-canonical-classes.d.ts +46 -0
  34. package/lib/cjs/rules/enforce-canonical-classes.d.ts.map +1 -0
  35. package/lib/cjs/rules/enforce-canonical-classes.js +42 -0
  36. package/lib/cjs/rules/enforce-canonical-classes.js.map +1 -0
  37. package/lib/cjs/rules/enforce-shorthand-classes.d.ts.map +1 -1
  38. package/lib/cjs/rules/enforce-shorthand-classes.js +2 -0
  39. package/lib/cjs/rules/enforce-shorthand-classes.js.map +1 -1
  40. package/lib/cjs/rules/no-unregistered-classes.d.ts +24 -0
  41. package/lib/cjs/rules/no-unregistered-classes.d.ts.map +1 -0
  42. package/lib/cjs/rules/no-unregistered-classes.js +116 -0
  43. package/lib/cjs/rules/no-unregistered-classes.js.map +1 -0
  44. package/lib/cjs/tailwindcss/canonical-classes.async.v4.d.ts +3 -0
  45. package/lib/cjs/tailwindcss/canonical-classes.async.v4.d.ts.map +1 -0
  46. package/lib/cjs/tailwindcss/canonical-classes.async.v4.js +7 -0
  47. package/lib/cjs/tailwindcss/canonical-classes.async.v4.js.map +1 -0
  48. package/lib/cjs/tailwindcss/canonical-classes.async.worker.v3.d.ts +2 -0
  49. package/lib/cjs/tailwindcss/canonical-classes.async.worker.v3.d.ts.map +1 -0
  50. package/lib/cjs/tailwindcss/canonical-classes.async.worker.v3.js +7 -0
  51. package/lib/cjs/tailwindcss/canonical-classes.async.worker.v3.js.map +1 -0
  52. package/lib/cjs/tailwindcss/canonical-classes.async.worker.v4.d.ts +2 -0
  53. package/lib/cjs/tailwindcss/canonical-classes.async.worker.v4.d.ts.map +1 -0
  54. package/lib/cjs/tailwindcss/canonical-classes.async.worker.v4.js +11 -0
  55. package/lib/cjs/tailwindcss/canonical-classes.async.worker.v4.js.map +1 -0
  56. package/lib/cjs/tailwindcss/canonical-classes.d.ts +11 -0
  57. package/lib/cjs/tailwindcss/canonical-classes.d.ts.map +1 -0
  58. package/lib/cjs/tailwindcss/canonical-classes.js +24 -0
  59. package/lib/cjs/tailwindcss/canonical-classes.js.map +1 -0
  60. package/lib/cjs/tailwindcss/context.async.d.ts +3 -0
  61. package/lib/cjs/tailwindcss/context.async.d.ts.map +1 -0
  62. package/lib/cjs/tailwindcss/context.async.js +16 -0
  63. package/lib/cjs/tailwindcss/context.async.js.map +1 -0
  64. package/lib/cjs/tailwindcss/custom-component-classes.async.worker.d.ts +2 -0
  65. package/lib/cjs/tailwindcss/custom-component-classes.async.worker.d.ts.map +1 -0
  66. package/lib/cjs/tailwindcss/custom-component-classes.async.worker.js +44 -0
  67. package/lib/cjs/tailwindcss/custom-component-classes.async.worker.js.map +1 -0
  68. package/lib/cjs/tailwindcss/unregistered-classes.async.v3.d.ts +3 -0
  69. package/lib/cjs/tailwindcss/unregistered-classes.async.v3.d.ts.map +1 -0
  70. package/lib/cjs/tailwindcss/unregistered-classes.async.v3.js +45 -0
  71. package/lib/cjs/tailwindcss/unregistered-classes.async.v3.js.map +1 -0
  72. package/lib/cjs/tailwindcss/unregistered-classes.async.v4.d.ts +3 -0
  73. package/lib/cjs/tailwindcss/unregistered-classes.async.v4.d.ts.map +1 -0
  74. package/lib/cjs/tailwindcss/unregistered-classes.async.v4.js +8 -0
  75. package/lib/cjs/tailwindcss/unregistered-classes.async.v4.js.map +1 -0
  76. package/lib/cjs/tailwindcss/unregistered-classes.async.worker.v3.d.ts +2 -0
  77. package/lib/cjs/tailwindcss/unregistered-classes.async.worker.v3.d.ts.map +1 -0
  78. package/lib/cjs/tailwindcss/unregistered-classes.async.worker.v3.js +13 -0
  79. package/lib/cjs/tailwindcss/unregistered-classes.async.worker.v3.js.map +1 -0
  80. package/lib/cjs/tailwindcss/unregistered-classes.async.worker.v4.d.ts +2 -0
  81. package/lib/cjs/tailwindcss/unregistered-classes.async.worker.v4.d.ts.map +1 -0
  82. package/lib/cjs/tailwindcss/unregistered-classes.async.worker.v4.js +13 -0
  83. package/lib/cjs/tailwindcss/unregistered-classes.async.worker.v4.js.map +1 -0
  84. package/lib/cjs/tailwindcss/unregistered-classes.d.ts +14 -0
  85. package/lib/cjs/tailwindcss/unregistered-classes.d.ts.map +1 -0
  86. package/lib/cjs/tailwindcss/unregistered-classes.js +22 -0
  87. package/lib/cjs/tailwindcss/unregistered-classes.js.map +1 -0
  88. package/lib/cjs/utils/options.d.ts +10 -0
  89. package/lib/cjs/utils/options.d.ts.map +1 -0
  90. package/lib/cjs/utils/options.js +32 -0
  91. package/lib/cjs/utils/options.js.map +1 -0
  92. package/lib/cjs/utils/regex.d.ts +9 -0
  93. package/lib/cjs/utils/regex.d.ts.map +1 -0
  94. package/lib/cjs/utils/regex.js +66 -0
  95. package/lib/cjs/utils/regex.js.map +1 -0
  96. package/lib/esm/async-utils/cache.d.ts +1 -0
  97. package/lib/esm/async-utils/cache.d.ts.map +1 -1
  98. package/lib/esm/async-utils/cache.js +4 -2
  99. package/lib/esm/async-utils/cache.js.map +1 -1
  100. package/lib/esm/async-utils/config.d.ts +16 -0
  101. package/lib/esm/async-utils/config.d.ts.map +1 -0
  102. package/lib/esm/async-utils/config.js +60 -0
  103. package/lib/esm/async-utils/config.js.map +1 -0
  104. package/lib/esm/async-utils/context.d.ts +22 -0
  105. package/lib/esm/async-utils/context.d.ts.map +1 -0
  106. package/lib/esm/async-utils/context.js +18 -0
  107. package/lib/esm/async-utils/context.js.map +1 -0
  108. package/lib/esm/async-utils/tailwindcss.d.ts +16 -0
  109. package/lib/esm/async-utils/tailwindcss.d.ts.map +1 -0
  110. package/lib/esm/async-utils/tailwindcss.js +44 -0
  111. package/lib/esm/async-utils/tailwindcss.js.map +1 -0
  112. package/lib/esm/async-utils/tsconfig.d.ts +11 -0
  113. package/lib/esm/async-utils/tsconfig.d.ts.map +1 -0
  114. package/lib/esm/async-utils/tsconfig.js +29 -0
  115. package/lib/esm/async-utils/tsconfig.js.map +1 -0
  116. package/lib/esm/configs/config.d.ts.map +1 -1
  117. package/lib/esm/configs/config.js +3 -1
  118. package/lib/esm/configs/config.js.map +1 -1
  119. package/lib/esm/rules/deprecated/multiline.d.ts +3 -0
  120. package/lib/esm/rules/deprecated/multiline.d.ts.map +1 -0
  121. package/lib/esm/rules/deprecated/multiline.js +24 -0
  122. package/lib/esm/rules/deprecated/multiline.js.map +1 -0
  123. package/lib/esm/rules/deprecated/sort-classes.d.ts +3 -0
  124. package/lib/esm/rules/deprecated/sort-classes.d.ts.map +1 -0
  125. package/lib/esm/rules/deprecated/sort-classes.js +23 -0
  126. package/lib/esm/rules/deprecated/sort-classes.js.map +1 -0
  127. package/lib/esm/rules/enforce-canonical-classes.d.ts +46 -0
  128. package/lib/esm/rules/enforce-canonical-classes.d.ts.map +1 -0
  129. package/lib/esm/rules/enforce-canonical-classes.js +39 -0
  130. package/lib/esm/rules/enforce-canonical-classes.js.map +1 -0
  131. package/lib/esm/rules/enforce-shorthand-classes.d.ts.map +1 -1
  132. package/lib/esm/rules/enforce-shorthand-classes.js +2 -0
  133. package/lib/esm/rules/enforce-shorthand-classes.js.map +1 -1
  134. package/lib/esm/rules/no-unregistered-classes.d.ts +24 -0
  135. package/lib/esm/rules/no-unregistered-classes.d.ts.map +1 -0
  136. package/lib/esm/rules/no-unregistered-classes.js +112 -0
  137. package/lib/esm/rules/no-unregistered-classes.js.map +1 -0
  138. package/lib/esm/tailwindcss/canonical-classes.async.v4.d.ts +3 -0
  139. package/lib/esm/tailwindcss/canonical-classes.async.v4.d.ts.map +1 -0
  140. package/lib/esm/tailwindcss/canonical-classes.async.v4.js +4 -0
  141. package/lib/esm/tailwindcss/canonical-classes.async.v4.js.map +1 -0
  142. package/lib/esm/tailwindcss/canonical-classes.async.worker.v3.d.ts +2 -0
  143. package/lib/esm/tailwindcss/canonical-classes.async.worker.v3.d.ts.map +1 -0
  144. package/lib/esm/tailwindcss/canonical-classes.async.worker.v3.js +5 -0
  145. package/lib/esm/tailwindcss/canonical-classes.async.worker.v3.js.map +1 -0
  146. package/lib/esm/tailwindcss/canonical-classes.async.worker.v4.d.ts +2 -0
  147. package/lib/esm/tailwindcss/canonical-classes.async.worker.v4.d.ts.map +1 -0
  148. package/lib/esm/tailwindcss/canonical-classes.async.worker.v4.js +9 -0
  149. package/lib/esm/tailwindcss/canonical-classes.async.worker.v4.js.map +1 -0
  150. package/lib/esm/tailwindcss/canonical-classes.d.ts +11 -0
  151. package/lib/esm/tailwindcss/canonical-classes.d.ts.map +1 -0
  152. package/lib/esm/tailwindcss/canonical-classes.js +19 -0
  153. package/lib/esm/tailwindcss/canonical-classes.js.map +1 -0
  154. package/lib/esm/tailwindcss/context.async.d.ts +3 -0
  155. package/lib/esm/tailwindcss/context.async.d.ts.map +1 -0
  156. package/lib/esm/tailwindcss/context.async.js +13 -0
  157. package/lib/esm/tailwindcss/context.async.js.map +1 -0
  158. package/lib/esm/tailwindcss/custom-component-classes.async.worker.d.ts +2 -0
  159. package/lib/esm/tailwindcss/custom-component-classes.async.worker.d.ts.map +1 -0
  160. package/lib/esm/tailwindcss/custom-component-classes.async.worker.js +9 -0
  161. package/lib/esm/tailwindcss/custom-component-classes.async.worker.js.map +1 -0
  162. package/lib/esm/tailwindcss/unregistered-classes.async.v3.d.ts +3 -0
  163. package/lib/esm/tailwindcss/unregistered-classes.async.v3.d.ts.map +1 -0
  164. package/lib/esm/tailwindcss/unregistered-classes.async.v3.js +9 -0
  165. package/lib/esm/tailwindcss/unregistered-classes.async.v3.js.map +1 -0
  166. package/lib/esm/tailwindcss/unregistered-classes.async.v4.d.ts +3 -0
  167. package/lib/esm/tailwindcss/unregistered-classes.async.v4.d.ts.map +1 -0
  168. package/lib/esm/tailwindcss/unregistered-classes.async.v4.js +5 -0
  169. package/lib/esm/tailwindcss/unregistered-classes.async.v4.js.map +1 -0
  170. package/lib/esm/tailwindcss/unregistered-classes.async.worker.v3.d.ts +2 -0
  171. package/lib/esm/tailwindcss/unregistered-classes.async.worker.v3.d.ts.map +1 -0
  172. package/lib/esm/tailwindcss/unregistered-classes.async.worker.v3.js +11 -0
  173. package/lib/esm/tailwindcss/unregistered-classes.async.worker.v3.js.map +1 -0
  174. package/lib/esm/tailwindcss/unregistered-classes.async.worker.v4.d.ts +2 -0
  175. package/lib/esm/tailwindcss/unregistered-classes.async.worker.v4.d.ts.map +1 -0
  176. package/lib/esm/tailwindcss/unregistered-classes.async.worker.v4.js +11 -0
  177. package/lib/esm/tailwindcss/unregistered-classes.async.worker.v4.js.map +1 -0
  178. package/lib/esm/tailwindcss/unregistered-classes.d.ts +14 -0
  179. package/lib/esm/tailwindcss/unregistered-classes.d.ts.map +1 -0
  180. package/lib/esm/tailwindcss/unregistered-classes.js +19 -0
  181. package/lib/esm/tailwindcss/unregistered-classes.js.map +1 -0
  182. package/lib/esm/utils/options.d.ts +10 -0
  183. package/lib/esm/utils/options.d.ts.map +1 -0
  184. package/lib/esm/utils/options.js +29 -0
  185. package/lib/esm/utils/options.js.map +1 -0
  186. package/lib/esm/utils/regex.d.ts +9 -0
  187. package/lib/esm/utils/regex.d.ts.map +1 -0
  188. package/lib/esm/utils/regex.js +63 -0
  189. package/lib/esm/utils/regex.js.map +1 -0
  190. package/package.json +3 -3
package/README.md CHANGED
@@ -152,6 +152,7 @@ The table below lists all available rules, the Tailwind CSS versions they suppor
152
152
  | [enforce-consistent-variable-syntax](docs/rules/enforce-consistent-variable-syntax.md) | Enforce consistent variable syntax. | ✔ | ✔ | | ✔ |
153
153
  | [enforce-consistent-important-position](docs/rules/enforce-consistent-important-position.md) | Enforce consistent position of the important modifier. | ✔ | ✔ | | ✔ |
154
154
  | [enforce-shorthand-classes](docs/rules/enforce-shorthand-classes.md) | Enforce shorthand class names. | ✔ | ✔ | | ✔ |
155
+ | [enforce-canonical-classes](docs/rules/enforce-canonical-classes.md) | Enforce canonical class names. | | ✔ | | ✔ |
155
156
  | [no-duplicate-classes](docs/rules/no-duplicate-classes.md) | Remove duplicate classes. | ✔ | ✔ | ✔ | ✔ |
156
157
  | [no-deprecated-classes](docs/rules/no-deprecated-classes.md) | Remove deprecated classes. | | ✔ | | ✔ |
157
158
  | [no-unnecessary-whitespace](docs/rules/no-unnecessary-whitespace.md) | Disallow unnecessary whitespace in tailwind classes. | ✔ | ✔ | ✔ | ✔ |
@@ -161,7 +162,7 @@ The table below lists all available rules, the Tailwind CSS versions they suppor
161
162
  | Name | Description | `tw3` | `tw4` | `recommended` | autofix |
162
163
  | :--- | :--- | :---: | :---: | :---: | :---: |
163
164
  | [no-unknown-classes](docs/rules/no-unknown-classes.md) | Report classes not registered with tailwindcss. | ✔ | ✔ | ✔ | |
164
- | [no-conflicting-classes](docs/rules/no-conflicting-classes.md) | Report classes that produce conflicting styles. | | ✔ | | |
165
+ | [no-conflicting-classes](docs/rules/no-conflicting-classes.md) | Report classes that produce conflicting styles. | | ✔ || |
165
166
  | [no-restricted-classes](docs/rules/no-restricted-classes.md) | Disallow restricted classes. | ✔ | ✔ | | ✔ |
166
167
 
167
168
  <br/>
@@ -5,5 +5,6 @@ interface CacheItem {
5
5
  export declare function invalidateByModifiedDate(cache: CacheItem, path: string | undefined): boolean;
6
6
  export declare function withCache<Result>(key: string, path: string | undefined, callback: () => Result, invalidate?: (cache: CacheItem, path: string | undefined) => boolean): Result;
7
7
  export declare function withCache<Result>(key: string, path: string | undefined, callback: () => Promise<Result>, invalidate?: (cache: CacheItem, path: string | undefined) => boolean): Promise<Result>;
8
+ export declare function clearCache(): void;
8
9
  export {};
9
10
  //# sourceMappingURL=cache.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../../src/async-utils/cache.ts"],"names":[],"mappings":"AAKA,UAAU,SAAS;IACjB,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,GAAG,CAAC;CACZ;AAID,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAK5F;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE,QAAQ,EAAE,MAAM,MAAM,EAAE,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,KAAK,OAAO,GAAG,MAAM,CAAC;AAC/K,wBAAgB,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,KAAK,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../../src/async-utils/cache.ts"],"names":[],"mappings":"AAGA,UAAU,SAAS;IACjB,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,GAAG,CAAC;CACZ;AAID,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAK5F;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE,QAAQ,EAAE,MAAM,MAAM,EAAE,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,KAAK,OAAO,GAAG,MAAM,CAAC;AAC/K,wBAAgB,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,KAAK,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAsBjM,wBAAgB,UAAU,SAEzB"}
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.invalidateByModifiedDate = invalidateByModifiedDate;
4
4
  exports.withCache = withCache;
5
- const node_process_1 = require("node:process");
5
+ exports.clearCache = clearCache;
6
6
  const fs_js_1 = require("./fs.js");
7
7
  const CACHE = new Map();
8
8
  function invalidateByModifiedDate(cache, path) {
@@ -15,7 +15,7 @@ function invalidateByModifiedDate(cache, path) {
15
15
  function withCache(key, path, callback, invalidate = invalidateByModifiedDate) {
16
16
  const cacheKey = `${key}-${path}`;
17
17
  const cached = CACHE.get(cacheKey);
18
- if (node_process_1.env.NODE_ENV !== "test" && cached && !invalidate(cached, path)) {
18
+ if (cached && !invalidate(cached, path)) {
19
19
  return cached.value;
20
20
  }
21
21
  const value = callback();
@@ -30,4 +30,7 @@ function withCache(key, path, callback, invalidate = invalidateByModifiedDate) {
30
30
  return value;
31
31
  }
32
32
  }
33
+ function clearCache() {
34
+ CACHE.clear();
35
+ }
33
36
  //# sourceMappingURL=cache.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../src/async-utils/cache.ts"],"names":[],"mappings":";;AAYA,4DAKC;AAID,8BAmBC;AAxCD,+CAAmC;AAEnC,mCAA0C;AAQ1C,MAAM,KAAK,GAAG,IAAI,GAAG,EAAqB,CAAC;AAE3C,SAAgB,wBAAwB,CAAC,KAAgB,EAAE,IAAwB;IACjF,IAAG,CAAC,IAAI,EAAC,CAAC;QAAC,OAAO,IAAI,CAAC;IAAC,CAAC;IAEzB,MAAM,QAAQ,GAAG,IAAA,uBAAe,EAAC,IAAI,CAAC,CAAC;IACvC,OAAO,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC;AAC/B,CAAC;AAID,SAAgB,SAAS,CAAS,GAAW,EAAE,IAAwB,EAAE,QAAwC,EAAE,aAAsE,wBAAwB;IAC/M,MAAM,QAAQ,GAAG,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IAClC,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAEnC,IAAG,kBAAG,CAAC,QAAQ,KAAK,MAAM,IAAI,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,EAAC,CAAC;QACjE,OAAO,MAAM,CAAC,KAAK,CAAC;IACtB,CAAC;IAED,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IAEzB,IAAG,KAAK,YAAY,OAAO,EAAC,CAAC;QAC3B,OAAO,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;YAChC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;YAChE,OAAO,aAAa,CAAC;QACvB,CAAC,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACjD,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../src/async-utils/cache.ts"],"names":[],"mappings":";;AAUA,4DAKC;AAID,8BAmBC;AAED,gCAEC;AA1CD,mCAA0C;AAQ1C,MAAM,KAAK,GAAG,IAAI,GAAG,EAAqB,CAAC;AAE3C,SAAgB,wBAAwB,CAAC,KAAgB,EAAE,IAAwB;IACjF,IAAG,CAAC,IAAI,EAAC,CAAC;QAAC,OAAO,IAAI,CAAC;IAAC,CAAC;IAEzB,MAAM,QAAQ,GAAG,IAAA,uBAAe,EAAC,IAAI,CAAC,CAAC;IACvC,OAAO,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC;AAC/B,CAAC;AAID,SAAgB,SAAS,CAAS,GAAW,EAAE,IAAwB,EAAE,QAAwC,EAAE,aAAsE,wBAAwB;IAC/M,MAAM,QAAQ,GAAG,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IAClC,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAEnC,IAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,EAAC,CAAC;QACtC,OAAO,MAAM,CAAC,KAAK,CAAC;IACtB,CAAC;IAED,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IAEzB,IAAG,KAAK,YAAY,OAAO,EAAC,CAAC;QAC3B,OAAO,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;YAChC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;YAChE,OAAO,aAAa,CAAC;QACvB,CAAC,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACjD,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAgB,UAAU;IACxB,KAAK,CAAC,KAAK,EAAE,CAAC;AAChB,CAAC"}
@@ -0,0 +1,16 @@
1
+ import type { Warning } from "../types/async.js";
2
+ export interface GetTailwindConfigRequest {
3
+ configPath: string | undefined;
4
+ cwd: string;
5
+ version: {
6
+ major: number;
7
+ minor: number;
8
+ patch: number;
9
+ };
10
+ }
11
+ export interface GetTailwindConfigResponse {
12
+ path: string;
13
+ warnings: (Warning | undefined)[];
14
+ }
15
+ export declare const getTailwindConfigPath: ({ configPath, cwd, version }: GetTailwindConfigRequest) => GetTailwindConfigResponse;
16
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/async-utils/config.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAGjD,MAAM,WAAW,wBAAwB;IACvC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;KAAE,CAAC;CAC3D;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,CAAC,OAAO,GAAG,SAAS,CAAC,EAAE,CAAC;CACnC;AAED,eAAO,MAAM,qBAAqB,GAAI,8BAA8B,wBAAwB,KAAG,yBA+C7F,CAAC"}
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getTailwindConfigPath = void 0;
4
+ const cache_js_1 = require("./cache.js");
5
+ const fs_js_1 = require("./fs.js");
6
+ const resolvers_js_1 = require("./resolvers.js");
7
+ const getTailwindConfigPath = ({ configPath, cwd, version }) => (0, cache_js_1.withCache)("config-path", configPath, () => {
8
+ const { major } = version;
9
+ if (major >= 4 /* TailwindcssVersion.V4 */) {
10
+ const foundConfigPath = configPath && (0, fs_js_1.findFileRecursive)(cwd, [configPath]);
11
+ const warning = getEntryPointWarning(configPath, foundConfigPath);
12
+ if (foundConfigPath) {
13
+ return {
14
+ path: foundConfigPath,
15
+ warnings: [warning]
16
+ };
17
+ }
18
+ const defaultConfigPath = (0, resolvers_js_1.resolveCss)("tailwindcss/theme.css", cwd);
19
+ if (!defaultConfigPath) {
20
+ throw new Error("No default tailwind config found. Please ensure you have Tailwind CSS installed.");
21
+ }
22
+ return {
23
+ path: defaultConfigPath,
24
+ warnings: [warning]
25
+ };
26
+ }
27
+ if (major <= 3 /* TailwindcssVersion.V3 */) {
28
+ const defaultPaths = [
29
+ "tailwind.config.js",
30
+ "tailwind.config.cjs",
31
+ "tailwind.config.mjs",
32
+ "tailwind.config.ts"
33
+ ];
34
+ const foundConfigPath = configPath && (0, fs_js_1.findFileRecursive)(cwd, [configPath]);
35
+ const foundDefaultPath = (0, fs_js_1.findFileRecursive)(cwd, defaultPaths);
36
+ const warning = getConfigPathWarning(configPath, foundConfigPath);
37
+ return {
38
+ path: foundConfigPath ?? foundDefaultPath ?? "default",
39
+ warnings: [warning]
40
+ };
41
+ }
42
+ throw new Error(`Unsupported Tailwind CSS version: ${major}. Please use a version between 3 and 4.`);
43
+ });
44
+ exports.getTailwindConfigPath = getTailwindConfigPath;
45
+ function getConfigPathWarning(configPath, foundConfigPath) {
46
+ if (!!configPath && !!foundConfigPath) {
47
+ return;
48
+ }
49
+ return {
50
+ option: "tailwindConfig",
51
+ title: `No tailwind css config found at \`${configPath}\``
52
+ };
53
+ }
54
+ function getEntryPointWarning(entryPoint, foundEntryPoint) {
55
+ if (!!entryPoint && !!foundEntryPoint) {
56
+ return;
57
+ }
58
+ return {
59
+ option: "entryPoint",
60
+ title: `No tailwind css entry point found at \`${entryPoint}\``
61
+ };
62
+ }
63
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/async-utils/config.ts"],"names":[],"mappings":";;;AAAA,yCAAuC;AACvC,mCAA4C;AAC5C,iDAA4C;AAiBrC,MAAM,qBAAqB,GAAG,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAA4B,EAA6B,EAAE,CAAC,IAAA,oBAAS,EAAC,aAAa,EAAE,UAAU,EAAE,GAAG,EAAE;IACpK,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAE1B,IAAG,KAAK,iCAAyB,EAAC,CAAC;QAEjC,MAAM,eAAe,GAAG,UAAU,IAAI,IAAA,yBAAiB,EAAC,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;QAC3E,MAAM,OAAO,GAAG,oBAAoB,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;QAElE,IAAG,eAAe,EAAC,CAAC;YAClB,OAAO;gBACL,IAAI,EAAE,eAAe;gBACrB,QAAQ,EAAE,CAAC,OAAO,CAAC;aACpB,CAAC;QACJ,CAAC;QAED,MAAM,iBAAiB,GAAG,IAAA,yBAAU,EAAC,uBAAuB,EAAE,GAAG,CAAC,CAAC;QAEnE,IAAG,CAAC,iBAAiB,EAAC,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,kFAAkF,CAAC,CAAC;QACtG,CAAC;QAED,OAAO;YACL,IAAI,EAAE,iBAAiB;YACvB,QAAQ,EAAE,CAAC,OAAO,CAAC;SACpB,CAAC;IACJ,CAAC;IAED,IAAG,KAAK,iCAAyB,EAAC,CAAC;QACjC,MAAM,YAAY,GAAG;YACnB,oBAAoB;YACpB,qBAAqB;YACrB,qBAAqB;YACrB,oBAAoB;SACrB,CAAC;QAEF,MAAM,eAAe,GAAG,UAAU,IAAI,IAAA,yBAAiB,EAAC,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;QAE3E,MAAM,gBAAgB,GAAG,IAAA,yBAAiB,EAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAC9D,MAAM,OAAO,GAAG,oBAAoB,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;QAElE,OAAO;YACL,IAAI,EAAE,eAAe,IAAI,gBAAgB,IAAI,SAAS;YACtD,QAAQ,EAAE,CAAC,OAAO,CAAC;SACpB,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,qCAAqC,KAAK,yCAAyC,CAAC,CAAC;AACvG,CAAC,CAAC,CAAC;AA/CU,QAAA,qBAAqB,yBA+C/B;AAEH,SAAS,oBAAoB,CAAC,UAA8B,EAAE,eAAmC;IAC/F,IAAG,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,eAAe,EAAC,CAAC;QACpC,OAAO;IACT,CAAC;IAED,OAAO;QACL,MAAM,EAAE,gBAAgB;QACxB,KAAK,EAAE,qCAAqC,UAAU,IAAI;KAC3D,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,UAA8B,EAAE,eAAmC;IAC/F,IAAG,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,eAAe,EAAC,CAAC;QACpC,OAAO;IACT,CAAC;IAED,OAAO;QACL,MAAM,EAAE,YAAY;QACpB,KAAK,EAAE,0CAA0C,UAAU,IAAI;KAChE,CAAC;AACJ,CAAC"}
@@ -0,0 +1,22 @@
1
+ import type { Warning } from "../types/async.js";
2
+ export interface AsyncContext {
3
+ cwd: string;
4
+ tailwindConfigPath: string;
5
+ tsconfigPath: string | undefined;
6
+ version: {
7
+ major: number;
8
+ minor: number;
9
+ patch: number;
10
+ };
11
+ }
12
+ export interface GetAsyncContextRequest {
13
+ cwd: string;
14
+ configPath?: string;
15
+ tsconfigPath?: string;
16
+ }
17
+ export interface GetAsyncContextResponse {
18
+ ctx: AsyncContext;
19
+ warnings: (Warning | undefined)[];
20
+ }
21
+ export declare function getAsyncContext({ configPath, cwd, tsconfigPath }: GetAsyncContextRequest): Promise<GetAsyncContextResponse>;
22
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/async-utils/context.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAGjD,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,kBAAkB,EAAE,MAAM,CAAC;IAC3B,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;KAAE,CAAC;CAC3D;AAED,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,uBAAuB;IACtC,GAAG,EAAE,YAAY,CAAC;IAClB,QAAQ,EAAE,CAAC,OAAO,GAAG,SAAS,CAAC,EAAE,CAAC;CACnC;AAGD,wBAAsB,eAAe,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,YAAY,EAAE,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAgBjI"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getAsyncContext = getAsyncContext;
4
+ const config_js_1 = require("./config.js");
5
+ const tailwindcss_js_1 = require("./tailwindcss.js");
6
+ const tsconfig_js_1 = require("./tsconfig.js");
7
+ async function getAsyncContext({ configPath, cwd, tsconfigPath }) {
8
+ const version = (0, tailwindcss_js_1.getTailwindcssVersion)();
9
+ const { path: resolvedTailwindPath, warnings: tailwindConfigWarnings } = (0, config_js_1.getTailwindConfigPath)({ configPath, cwd, version });
10
+ const { path: resolvedTSConfigPath, warnings: tsconfigWarnings } = (0, tsconfig_js_1.getTSConfigPath)({ configPath: tsconfigPath, cwd });
11
+ return {
12
+ ctx: {
13
+ cwd,
14
+ tailwindConfigPath: resolvedTailwindPath,
15
+ tsconfigPath: resolvedTSConfigPath,
16
+ version
17
+ },
18
+ warnings: [...tailwindConfigWarnings, ...tsconfigWarnings]
19
+ };
20
+ }
21
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/async-utils/context.ts"],"names":[],"mappings":";;AA0BA,0CAgBC;AA1CD,2CAAoD;AACpD,qDAAyD;AACzD,+CAAgD;AAwBzC,KAAK,UAAU,eAAe,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,YAAY,EAA0B;IAE7F,MAAM,OAAO,GAAG,IAAA,sCAAqB,GAAE,CAAC;IAExC,MAAM,EAAE,IAAI,EAAE,oBAAoB,EAAE,QAAQ,EAAE,sBAAsB,EAAE,GAAG,IAAA,iCAAqB,EAAC,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;IAC7H,MAAM,EAAE,IAAI,EAAE,oBAAoB,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,IAAA,6BAAe,EAAC,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC;IAEtH,OAAO;QACL,GAAG,EAAE;YACH,GAAG;YACH,kBAAkB,EAAE,oBAAoB;YACxC,YAAY,EAAE,oBAAoB;YAClC,OAAO;SACR;QACD,QAAQ,EAAE,CAAC,GAAG,sBAAsB,EAAE,GAAG,gBAAgB,CAAC;KAC3D,CAAC;AACJ,CAAC"}
@@ -0,0 +1,16 @@
1
+ export declare const enum TailwindcssVersion {
2
+ V3 = 3,
3
+ V4 = 4
4
+ }
5
+ export declare function isTailwindcssInstalled(): boolean;
6
+ export type SupportedTailwindVersion = TailwindcssVersion.V3 | TailwindcssVersion.V4;
7
+ export declare function isSupportedVersion(version: number): version is SupportedTailwindVersion;
8
+ export declare function isTailwindcssVersion3(version: number): version is TailwindcssVersion.V3;
9
+ export declare function isTailwindcssVersion4(version: number): version is TailwindcssVersion.V4;
10
+ export declare function getTailwindcssVersion(): {
11
+ major: number;
12
+ minor: number;
13
+ patch: number;
14
+ identifier?: string;
15
+ };
16
+ //# sourceMappingURL=tailwindcss.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tailwindcss.d.ts","sourceRoot":"","sources":["../../../src/async-utils/tailwindcss.ts"],"names":[],"mappings":"AAOA,0BAAkB,kBAAkB;IAClC,EAAE,IAAI;IACN,EAAE,IAAI;CACP;AAED,wBAAgB,sBAAsB,IAAI,OAAO,CAMhD;AAED,MAAM,MAAM,wBAAwB,GAAG,kBAAkB,CAAC,EAAE,GAAG,kBAAkB,CAAC,EAAE,CAAC;AAErF,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,IAAI,wBAAwB,CAEvF;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,IAAI,kBAAkB,CAAC,EAAE,CAEvF;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,IAAI,kBAAkB,CAAC,EAAE,CAEvF;AAED,wBAAgB,qBAAqB;WAaoB,MAAM;WAAS,MAAM;WAAS,MAAM;iBAAe,MAAM;EAFjH"}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isTailwindcssInstalled = isTailwindcssInstalled;
4
+ exports.isSupportedVersion = isSupportedVersion;
5
+ exports.isTailwindcssVersion3 = isTailwindcssVersion3;
6
+ exports.isTailwindcssVersion4 = isTailwindcssVersion4;
7
+ exports.getTailwindcssVersion = getTailwindcssVersion;
8
+ const node_fs_1 = require("node:fs");
9
+ const node_process_1 = require("node:process");
10
+ const cache_js_1 = require("./cache.js");
11
+ const resolvers_js_1 = require("./resolvers.js");
12
+ function isTailwindcssInstalled() {
13
+ try {
14
+ return (0, node_fs_1.existsSync)((0, resolvers_js_1.resolveJson)("tailwindcss/package.json", (0, node_process_1.cwd)()));
15
+ }
16
+ catch {
17
+ return false;
18
+ }
19
+ }
20
+ function isSupportedVersion(version) {
21
+ return version === 3 /* TailwindcssVersion.V3 */ || version === 4 /* TailwindcssVersion.V4 */;
22
+ }
23
+ function isTailwindcssVersion3(version) {
24
+ return version === 3 /* TailwindcssVersion.V3 */;
25
+ }
26
+ function isTailwindcssVersion4(version) {
27
+ return version === 4 /* TailwindcssVersion.V4 */;
28
+ }
29
+ function getTailwindcssVersion() {
30
+ const packageJsonPath = (0, resolvers_js_1.resolveJson)("tailwindcss/package.json", (0, node_process_1.cwd)());
31
+ return (0, cache_js_1.withCache)("version", packageJsonPath, () => {
32
+ try {
33
+ const packageJson = JSON.parse((0, node_fs_1.readFileSync)(packageJsonPath, "utf-8"));
34
+ return parseSemanticVersion(packageJson.version);
35
+ }
36
+ catch {
37
+ throw new Error("Error reading Tailwind CSS package.json");
38
+ }
39
+ });
40
+ }
41
+ function parseSemanticVersion(version) {
42
+ const [major, minor, patchString] = version.split(".");
43
+ const [patch, identifier] = patchString.split("-");
44
+ return { identifier, major: +major, minor: +minor, patch: +patch };
45
+ }
46
+ //# sourceMappingURL=tailwindcss.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tailwindcss.js","sourceRoot":"","sources":["../../../src/async-utils/tailwindcss.ts"],"names":[],"mappings":";;AAYA,wDAMC;AAID,gDAEC;AAED,sDAEC;AAED,sDAEC;AAED,sDAWC;AA7CD,qCAAmD;AACnD,+CAAmC;AAEnC,yCAAuC;AACvC,iDAA6C;AAQ7C,SAAgB,sBAAsB;IACpC,IAAI,CAAC;QACH,OAAO,IAAA,oBAAU,EAAC,IAAA,0BAAW,EAAC,0BAA0B,EAAE,IAAA,kBAAG,GAAE,CAAC,CAAC,CAAC;IACpE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAID,SAAgB,kBAAkB,CAAC,OAAe;IAChD,OAAO,OAAO,kCAA0B,IAAI,OAAO,kCAA0B,CAAC;AAChF,CAAC;AAED,SAAgB,qBAAqB,CAAC,OAAe;IACnD,OAAO,OAAO,kCAA0B,CAAC;AAC3C,CAAC;AAED,SAAgB,qBAAqB,CAAC,OAAe;IACnD,OAAO,OAAO,kCAA0B,CAAC;AAC3C,CAAC;AAED,SAAgB,qBAAqB;IACnC,MAAM,eAAe,GAAG,IAAA,0BAAW,EAAC,0BAA0B,EAAE,IAAA,kBAAG,GAAE,CAAC,CAAC;IAEvE,OAAO,IAAA,oBAAS,EAAC,SAAS,EAAE,eAAe,EAAE,GAAG,EAAE;QAChD,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAA,sBAAY,EAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;YACvE,OAAO,oBAAoB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACnD,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,oBAAoB,CAAC,OAAe;IAC3C,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACvD,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAEnD,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC;AACrE,CAAC"}
@@ -0,0 +1,11 @@
1
+ import type { Warning } from "../types/async.js";
2
+ export interface GetTSConfigRequest {
3
+ configPath: string | undefined;
4
+ cwd: string;
5
+ }
6
+ export interface GetTSConfigResponse {
7
+ path: string | undefined;
8
+ warnings: (Warning | undefined)[];
9
+ }
10
+ export declare const getTSConfigPath: ({ configPath, cwd }: GetTSConfigRequest) => GetTSConfigResponse;
11
+ //# sourceMappingURL=tsconfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tsconfig.d.ts","sourceRoot":"","sources":["../../../src/async-utils/tsconfig.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAGjD,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,QAAQ,EAAE,CAAC,OAAO,GAAG,SAAS,CAAC,EAAE,CAAC;CACnC;AAED,eAAO,MAAM,eAAe,GAAI,qBAAqB,kBAAkB,KAAG,mBAgBxE,CAAC"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getTSConfigPath = void 0;
4
+ const node_path_1 = require("node:path");
5
+ const cache_js_1 = require("./cache.js");
6
+ const fs_js_1 = require("./fs.js");
7
+ const getTSConfigPath = ({ configPath, cwd }) => (0, cache_js_1.withCache)("tsconfig-path", configPath, () => {
8
+ const potentialPaths = [
9
+ ...configPath ? [configPath] : [],
10
+ "tsconfig.json",
11
+ "jsconfig.json"
12
+ ];
13
+ const foundConfigPath = (0, fs_js_1.findFileRecursive)(cwd, potentialPaths);
14
+ const warning = getConfigPathWarning(configPath, foundConfigPath);
15
+ return {
16
+ path: foundConfigPath,
17
+ warnings: [warning]
18
+ };
19
+ });
20
+ exports.getTSConfigPath = getTSConfigPath;
21
+ function getConfigPathWarning(configPath, foundConfigPath) {
22
+ if (!configPath) {
23
+ return;
24
+ }
25
+ if (foundConfigPath && (0, node_path_1.resolve)(configPath) === (0, node_path_1.resolve)(foundConfigPath)) {
26
+ return;
27
+ }
28
+ return {
29
+ option: "tsconfig",
30
+ title: `No tsconfig found at \`${configPath}\``
31
+ };
32
+ }
33
+ //# sourceMappingURL=tsconfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tsconfig.js","sourceRoot":"","sources":["../../../src/async-utils/tsconfig.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AAEpC,yCAAuC;AACvC,mCAA4C;AAerC,MAAM,eAAe,GAAG,CAAC,EAAE,UAAU,EAAE,GAAG,EAAsB,EAAuB,EAAE,CAAC,IAAA,oBAAS,EAAC,eAAe,EAAE,UAAU,EAAE,GAAG,EAAE;IAE3I,MAAM,cAAc,GAAG;QACrB,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE;QACjC,eAAe;QACf,eAAe;KAChB,CAAC;IAEF,MAAM,eAAe,GAAG,IAAA,yBAAiB,EAAC,GAAG,EAAE,cAAc,CAAC,CAAC;IAC/D,MAAM,OAAO,GAAG,oBAAoB,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;IAElE,OAAO;QACL,IAAI,EAAE,eAAe;QACrB,QAAQ,EAAE,CAAC,OAAO,CAAC;KACpB,CAAC;AAEJ,CAAC,CAAC,CAAC;AAhBU,QAAA,eAAe,mBAgBzB;AAEH,SAAS,oBAAoB,CAAC,UAA8B,EAAE,eAAmC;IAC/F,IAAG,CAAC,UAAU,EAAC,CAAC;QACd,OAAO;IACT,CAAC;IAED,IAAG,eAAe,IAAI,IAAA,mBAAO,EAAC,UAAU,CAAC,KAAK,IAAA,mBAAO,EAAC,eAAe,CAAC,EAAC,CAAC;QACtE,OAAO;IACT,CAAC;IAED,OAAO;QACL,MAAM,EAAE,UAAU;QAClB,KAAK,EAAE,0BAA0B,UAAU,IAAI;KAChD,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/configs/config.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAU,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAGvD,KAAK,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;AAyEjC,eAAO,MAAM,MAAM;;;;;;;;;;;;;CAWM,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/configs/config.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAU,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAGvD,KAAK,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;AA0EjC,eAAO,MAAM,MAAM;;;;;;;;;;;;;CAWM,CAAC"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.config = void 0;
4
+ const enforce_canonical_classes_js_1 = require("../rules/enforce-canonical-classes.js");
4
5
  const enforce_consistent_class_order_js_1 = require("../rules/enforce-consistent-class-order.js");
5
6
  const enforce_consistent_important_position_js_1 = require("../rules/enforce-consistent-important-position.js");
6
7
  const enforce_consistent_line_wrapping_js_1 = require("../rules/enforce-consistent-line-wrapping.js");
@@ -23,7 +24,8 @@ const rules = [
23
24
  no_duplicate_classes_js_1.noDuplicateClasses,
24
25
  no_restricted_classes_js_1.noRestrictedClasses,
25
26
  no_unnecessary_whitespace_js_1.noUnnecessaryWhitespace,
26
- no_unknown_classes_js_1.noUnknownClasses
27
+ no_unknown_classes_js_1.noUnknownClasses,
28
+ enforce_canonical_classes_js_1.enforceCanonicalClasses
27
29
  ];
28
30
  const plugin = {
29
31
  meta: {
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/configs/config.ts"],"names":[],"mappings":";;;AAAA,kHAAyG;AACzG,gIAAuH;AACvH,sHAA6G;AAC7G,0HAAiH;AACjH,wGAAgG;AAChG,kGAA0F;AAC1F,gGAAwF;AACxF,8FAAsF;AACtF,gGAAwF;AACxF,0FAAkF;AAClF,wGAAgG;AAOhG,MAAM,KAAK,GAAG;IACZ,+DAA2B;IAC3B,6EAAkC;IAClC,mEAA6B;IAC7B,uEAA+B;IAC/B,sDAAuB;IACvB,gDAAoB;IACpB,8CAAmB;IACnB,4CAAkB;IAClB,8CAAmB;IACnB,sDAAuB;IACvB,wCAAgB;CACjB,CAAC;AAEF,MAAM,MAAM,GAAG;IACb,IAAI,EAAE;QACJ,IAAI,EAAE,oBAAoB;KAC3B;IACD,KAAK,EAAE,KAAK,CAAC,MAAM,CAAmC,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE;QAC5E,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QACjB,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC;CACiB,CAAC;AAE1B,MAAM,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAGnC,MAAM,iBAAiB,GAAG,CAAC,WAAqB,MAAM,EAAE,EAAE;IACxD,OAAO,KAAK,CAAC,MAAM,CAA2B,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE;QACpE,IAAG,IAAI,CAAC,IAAI,EAAE,IAAI,KAAK,QAAQ,EAAC,CAAC;YAC/B,OAAO,GAAG,CAAC;QACb,CAAC;QAED,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,GAAG,QAAQ,CAAC;QAC9C,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,WAAqB,OAAO,EAAE,EAAE;IAC3D,OAAO,KAAK,CAAC,MAAM,CAA2B,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE;QACpE,IAAG,IAAI,CAAC,IAAI,EAAE,IAAI,KAAK,SAAS,EAAC,CAAC;YAChC,OAAO,GAAG,CAAC;QACb,CAAC;QAED,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,GAAG,QAAQ,CAAC;QAC9C,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CACnB,IAAY,EACZ,gBAEC,EACD,EAAE;IACF,OAAO;QACL,CAAC,GAAG,IAAI,QAAQ,CAAC,EAAE;YACjB,OAAO;YACP,KAAK,EAAE,gBAAgB,CAAC,OAAO,CAAC;SACjC;QACD,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE;YAChB,OAAO;YACP,KAAK,EAAE,gBAAgB,CAAC,MAAM,CAAC;SAChC;QACD,CAAC,IAAI,CAAC,EAAE;YACN,OAAO;YACP,KAAK,EAAE,gBAAgB,EAAE;SAC1B;KACF,CAAC;AACJ,CAAC,CAAC;AAEW,QAAA,MAAM,GAAG;IACpB,GAAG,MAAM;IAET,OAAO,EAAE;QACP,GAAG,YAAY,CAAC,WAAW,EAAE,iBAAiB,CAAC;QAC/C,GAAG,YAAY,CAAC,aAAa,EAAE,mBAAmB,CAAC;QACnD,GAAG,YAAY,CAAC,aAAa,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;YAC1C,GAAG,iBAAiB,CAAC,QAAQ,CAAC;YAC9B,GAAG,mBAAmB,CAAC,QAAQ,CAAC;SACjC,CAAC,CAAC;KACJ;CACsB,CAAC"}
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,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.multiline = void 0;
4
+ const enforce_consistent_line_wrapping_js_1 = require("../enforce-consistent-line-wrapping.js");
5
+ exports.multiline = {
6
+ ...enforce_consistent_line_wrapping_js_1.enforceConsistentLineWrapping,
7
+ name: "multiline",
8
+ rule: {
9
+ ...enforce_consistent_line_wrapping_js_1.enforceConsistentLineWrapping.rule,
10
+ meta: {
11
+ ...enforce_consistent_line_wrapping_js_1.enforceConsistentLineWrapping.rule.meta,
12
+ deprecated: {
13
+ availableUntil: "^4.0.0",
14
+ deprecatedSince: "^3.4.0",
15
+ replacedBy: [
16
+ {
17
+ message: "The rule name `multiline` is deprecated. Please use `enforce-consistent-line-wrapping` instead.",
18
+ rule: {
19
+ name: "enforce-consistent-line-wrapping"
20
+ }
21
+ }
22
+ ]
23
+ }
24
+ }
25
+ }
26
+ };
27
+ //# sourceMappingURL=multiline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multiline.js","sourceRoot":"","sources":["../../../../src/rules/deprecated/multiline.ts"],"names":[],"mappings":";;;AAAA,sHAA6G;AAKhG,QAAA,SAAS,GAAe;IACnC,GAAG,mEAA6B;IAChC,IAAI,EAAE,WAAoB;IAC1B,IAAI,EAAE;QACJ,GAAG,mEAA6B,CAAC,IAAI;QACrC,IAAI,EAAE;YACJ,GAAG,mEAA6B,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,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sortClasses = void 0;
4
+ const enforce_consistent_class_order_js_1 = require("../enforce-consistent-class-order.js");
5
+ exports.sortClasses = {
6
+ name: "sort-classes",
7
+ rule: {
8
+ ...enforce_consistent_class_order_js_1.enforceConsistentClassOrder.rule,
9
+ meta: {
10
+ ...enforce_consistent_class_order_js_1.enforceConsistentClassOrder.rule.meta,
11
+ deprecated: {
12
+ availableUntil: "^4.0.0",
13
+ deprecatedSince: "^3.4.0",
14
+ replacedBy: [
15
+ {
16
+ message: "The rule name `sort-classes` is deprecated. Please use `enforce-consistent-class-order` instead.",
17
+ rule: {
18
+ name: "enforce-consistent-class-order"
19
+ }
20
+ }
21
+ ]
22
+ }
23
+ }
24
+ }
25
+ };
26
+ //# 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,kHAAyG;AAK5F,QAAA,WAAW,GAAe;IACrC,IAAI,EAAE,cAAuB;IAC7B,IAAI,EAAE;QACJ,GAAG,+DAA2B,CAAC,IAAI;QACnC,IAAI,EAAE;YACJ,GAAG,+DAA2B,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,46 @@
1
+ export declare const enforceCanonicalClasses: import("../types/rule.js").ESLintRule<{
2
+ readonly canonical: "The class: \"{{ className }}\" can be simplified to \"{{canonicalClass}}\".";
3
+ }, {
4
+ tsconfig?: string | undefined;
5
+ tailwindConfig?: string | undefined;
6
+ entryPoint?: string | undefined;
7
+ tags: (string | [string, ({
8
+ match: import("../types/rule.js").MatcherType.String;
9
+ } | {
10
+ match: import("../types/rule.js").MatcherType.ObjectKey;
11
+ pathPattern?: string | undefined;
12
+ } | {
13
+ match: import("../types/rule.js").MatcherType.ObjectValue;
14
+ pathPattern?: string | undefined;
15
+ })[]])[];
16
+ variables: (string | [string, ({
17
+ match: import("../types/rule.js").MatcherType.String;
18
+ } | {
19
+ match: import("../types/rule.js").MatcherType.ObjectKey;
20
+ pathPattern?: string | undefined;
21
+ } | {
22
+ match: import("../types/rule.js").MatcherType.ObjectValue;
23
+ pathPattern?: string | undefined;
24
+ })[]])[];
25
+ attributes: (string | [string, ({
26
+ match: import("../types/rule.js").MatcherType.String;
27
+ } | {
28
+ match: import("../types/rule.js").MatcherType.ObjectKey;
29
+ pathPattern?: string | undefined;
30
+ } | {
31
+ match: import("../types/rule.js").MatcherType.ObjectValue;
32
+ pathPattern?: string | undefined;
33
+ })[]])[];
34
+ callees: (string | [string, ({
35
+ match: import("../types/rule.js").MatcherType.String;
36
+ } | {
37
+ match: import("../types/rule.js").MatcherType.ObjectKey;
38
+ pathPattern?: string | undefined;
39
+ } | {
40
+ match: import("../types/rule.js").MatcherType.ObjectValue;
41
+ pathPattern?: string | undefined;
42
+ })[]])[];
43
+ } & {
44
+ [x: string]: unknown;
45
+ }>;
46
+ //# sourceMappingURL=enforce-canonical-classes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enforce-canonical-classes.d.ts","sourceRoot":"","sources":["../../../src/rules/enforce-canonical-classes.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiBlC,CAAC"}
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.enforceCanonicalClasses = void 0;
4
+ const canonical_classes_js_1 = require("../tailwindcss/canonical-classes.js");
5
+ const context_js_1 = require("../utils/context.js");
6
+ const lint_js_1 = require("../utils/lint.js");
7
+ const rule_js_1 = require("../utils/rule.js");
8
+ const utils_js_1 = require("../utils/utils.js");
9
+ exports.enforceCanonicalClasses = (0, rule_js_1.createRule)({
10
+ autofix: true,
11
+ category: "stylistic",
12
+ description: "Enforce canonical class names.",
13
+ docs: "https://github.com/schoero/eslint-plugin-better-tailwindcss/blob/main/docs/rules/enforce-canonical-classes.md",
14
+ name: "enforce-canonical-classes",
15
+ recommended: false,
16
+ messages: {
17
+ canonical: "The class: \"{{ className }}\" can be simplified to \"{{canonicalClass}}\"."
18
+ },
19
+ initialize: ctx => {
20
+ (0, canonical_classes_js_1.createGetCanonicalClasses)(ctx);
21
+ },
22
+ lintLiterals: (ctx, literals) => lintLiterals(ctx, literals)
23
+ });
24
+ function lintLiterals(ctx, literals) {
25
+ for (const literal of literals) {
26
+ const classes = (0, utils_js_1.splitClasses)(literal.content);
27
+ const { canonicalClasses, warnings } = (0, canonical_classes_js_1.getCanonicalClasses)((0, context_js_1.async)(ctx), classes);
28
+ (0, lint_js_1.lintClasses)(ctx, literal, (className, index) => {
29
+ const canonicalClass = canonicalClasses[index];
30
+ if (!canonicalClass || canonicalClass === className) {
31
+ return;
32
+ }
33
+ return {
34
+ data: { canonicalClass, className },
35
+ fix: canonicalClass,
36
+ id: "canonical",
37
+ warnings
38
+ };
39
+ });
40
+ }
41
+ }
42
+ //# sourceMappingURL=enforce-canonical-classes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enforce-canonical-classes.js","sourceRoot":"","sources":["../../../src/rules/enforce-canonical-classes.ts"],"names":[],"mappings":";;;AAAA,8FAAqH;AACrH,oEAA4D;AAC5D,8DAA+D;AAC/D,8DAA8D;AAC9D,gEAAiE;AAMpD,QAAA,uBAAuB,GAAG,IAAA,oBAAU,EAAC;IAChD,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE,WAAW;IACrB,WAAW,EAAE,gCAAgC;IAC7C,IAAI,EAAE,+GAA+G;IACrH,IAAI,EAAE,2BAA2B;IACjC,WAAW,EAAE,KAAK;IAElB,QAAQ,EAAE;QACR,SAAS,EAAE,6EAA6E;KACzF;IAED,UAAU,EAAE,GAAG,CAAC,EAAE;QAChB,IAAA,gDAAyB,EAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IAED,YAAY,EAAE,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,QAAQ,CAAC;CAC7D,CAAC,CAAC;AAGH,SAAS,YAAY,CAAC,GAA4C,EAAE,QAAmB;IACrF,KAAI,MAAM,OAAO,IAAI,QAAQ,EAAC,CAAC;QAE7B,MAAM,OAAO,GAAG,IAAA,uBAAY,EAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,EAAE,gBAAgB,EAAE,QAAQ,EAAE,GAAG,IAAA,0CAAmB,EAAC,IAAA,kBAAK,EAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;QAEhF,IAAA,qBAAW,EAAC,GAAG,EAAE,OAAO,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE;YAC7C,MAAM,cAAc,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAE/C,IAAG,CAAC,cAAc,IAAI,cAAc,KAAK,SAAS,EAAC,CAAC;gBAClD,OAAO;YACT,CAAC;YAED,OAAO;gBACL,IAAI,EAAE,EAAE,cAAc,EAAE,SAAS,EAAE;gBACnC,GAAG,EAAE,cAAc;gBACnB,EAAE,EAAE,WAAW;gBACf,QAAQ;aACT,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"enforce-shorthand-classes.d.ts","sourceRoot":"","sources":["../../../src/rules/enforce-shorthand-classes.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmBlC,CAAC;AAGH,MAAM,MAAM,UAAU,GAAG,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;AAElD,eAAO,MAAM,UAAU,0BAmFD,CAAC"}
1
+ {"version":3,"file":"enforce-shorthand-classes.d.ts","sourceRoot":"","sources":["../../../src/rules/enforce-shorthand-classes.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmBlC,CAAC;AAGH,MAAM,MAAM,UAAU,GAAG,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;AAElD,eAAO,MAAM,UAAU,0BAqFD,CAAC"}
@@ -55,6 +55,8 @@ exports.shorthands = [
55
55
  ],
56
56
  [
57
57
  [[/^rounded-tl-(.*)$/, /^rounded-tr-(.*)$/, /^rounded-bl-(.*)$/, /^rounded-br-(.*)$/], ["rounded-$1"]],
58
+ [[/^rounded-t-(.*)$/, /^rounded-b-(.*)$/], ["rounded-$1"]],
59
+ [[/^rounded-l-(.*)$/, /^rounded-r-(.*)$/], ["rounded-$1"]],
58
60
  [[/^rounded-tl-(.*)$/, /^rounded-tr-(.*)$/], ["rounded-t-$1"]],
59
61
  [[/^rounded-bl-(.*)$/, /^rounded-br-(.*)$/], ["rounded-b-$1"]],
60
62
  [[/^rounded-tl-(.*)$/, /^rounded-bl-(.*)$/], ["rounded-l-$1"]],
@@ -1 +1 @@
1
- {"version":3,"file":"enforce-shorthand-classes.js","sourceRoot":"","sources":["../../../src/rules/enforce-shorthand-classes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"enforce-shorthand-classes.js","sourceRoot":"","sources":["../../../src/rules/enforce-shorthand-classes.ts"],"names":[],"mappings":"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"}