eslint-plugin-stylelint-2 1.0.9

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 (268) hide show
  1. package/CHANGELOG.md +329 -0
  2. package/LICENSE +21 -0
  3. package/README.md +174 -0
  4. package/dist/_internal/rule-docs-url.d.ts +15 -0
  5. package/dist/_internal/rule-docs-url.d.ts.map +1 -0
  6. package/dist/_internal/rule-docs-url.js +15 -0
  7. package/dist/_internal/rule-docs-url.js.map +1 -0
  8. package/dist/_internal/rules-registry.d.ts +88 -0
  9. package/dist/_internal/rules-registry.d.ts.map +1 -0
  10. package/dist/_internal/rules-registry.js +85 -0
  11. package/dist/_internal/rules-registry.js.map +1 -0
  12. package/dist/_internal/stylelint-config-boolean-option-rule.d.ts +17 -0
  13. package/dist/_internal/stylelint-config-boolean-option-rule.d.ts.map +1 -0
  14. package/dist/_internal/stylelint-config-boolean-option-rule.js +90 -0
  15. package/dist/_internal/stylelint-config-boolean-option-rule.js.map +1 -0
  16. package/dist/_internal/stylelint-config-disallowed-option-rule.d.ts +16 -0
  17. package/dist/_internal/stylelint-config-disallowed-option-rule.d.ts.map +1 -0
  18. package/dist/_internal/stylelint-config-disallowed-option-rule.js +48 -0
  19. package/dist/_internal/stylelint-config-disallowed-option-rule.js.map +1 -0
  20. package/dist/_internal/stylelint-config-object.d.ts +62 -0
  21. package/dist/_internal/stylelint-config-object.d.ts.map +1 -0
  22. package/dist/_internal/stylelint-config-object.js +114 -0
  23. package/dist/_internal/stylelint-config-object.js.map +1 -0
  24. package/dist/_internal/stylelint-config-package-option-rule.d.ts +12 -0
  25. package/dist/_internal/stylelint-config-package-option-rule.d.ts.map +1 -0
  26. package/dist/_internal/stylelint-config-package-option-rule.js +66 -0
  27. package/dist/_internal/stylelint-config-package-option-rule.js.map +1 -0
  28. package/dist/_internal/stylelint-config-rules-object.d.ts +23 -0
  29. package/dist/_internal/stylelint-config-rules-object.d.ts.map +1 -0
  30. package/dist/_internal/stylelint-config-rules-object.js +47 -0
  31. package/dist/_internal/stylelint-config-rules-object.js.map +1 -0
  32. package/dist/_internal/stylelint-config-string-array-option-rule.d.ts +27 -0
  33. package/dist/_internal/stylelint-config-string-array-option-rule.d.ts.map +1 -0
  34. package/dist/_internal/stylelint-config-string-array-option-rule.js +234 -0
  35. package/dist/_internal/stylelint-config-string-array-option-rule.js.map +1 -0
  36. package/dist/_internal/stylelint-config-string-array-option.d.ts +32 -0
  37. package/dist/_internal/stylelint-config-string-array-option.d.ts.map +1 -0
  38. package/dist/_internal/stylelint-config-string-array-option.js +55 -0
  39. package/dist/_internal/stylelint-config-string-array-option.js.map +1 -0
  40. package/dist/_internal/stylelint-package-dependencies.d.ts +18 -0
  41. package/dist/_internal/stylelint-package-dependencies.d.ts.map +1 -0
  42. package/dist/_internal/stylelint-package-dependencies.js +107 -0
  43. package/dist/_internal/stylelint-package-dependencies.js.map +1 -0
  44. package/dist/_internal/stylelint-runner.d.ts +4 -0
  45. package/dist/_internal/stylelint-runner.d.ts.map +1 -0
  46. package/dist/_internal/stylelint-runner.js +93 -0
  47. package/dist/_internal/stylelint-runner.js.map +1 -0
  48. package/dist/_internal/stylelint-worker-types.d.ts +70 -0
  49. package/dist/_internal/stylelint-worker-types.d.ts.map +1 -0
  50. package/dist/_internal/stylelint-worker-types.js +2 -0
  51. package/dist/_internal/stylelint-worker-types.js.map +1 -0
  52. package/dist/_internal/stylelint-worker.d.ts +2 -0
  53. package/dist/_internal/stylelint-worker.d.ts.map +1 -0
  54. package/dist/_internal/stylelint-worker.js +113 -0
  55. package/dist/_internal/stylelint-worker.js.map +1 -0
  56. package/dist/_internal/stylelint2-config-references.d.ts +32 -0
  57. package/dist/_internal/stylelint2-config-references.d.ts.map +1 -0
  58. package/dist/_internal/stylelint2-config-references.js +65 -0
  59. package/dist/_internal/stylelint2-config-references.js.map +1 -0
  60. package/dist/_internal/typed-rule.d.ts +42 -0
  61. package/dist/_internal/typed-rule.d.ts.map +1 -0
  62. package/dist/_internal/typed-rule.js +53 -0
  63. package/dist/_internal/typed-rule.js.map +1 -0
  64. package/dist/plugin.cjs +1 -0
  65. package/dist/plugin.d.cts +10 -0
  66. package/dist/plugin.d.ts +36 -0
  67. package/dist/plugin.d.ts.map +1 -0
  68. package/dist/plugin.js +183 -0
  69. package/dist/plugin.js.map +1 -0
  70. package/dist/rules/disallow-stylelint-allow-empty-input.d.ts +9 -0
  71. package/dist/rules/disallow-stylelint-allow-empty-input.d.ts.map +1 -0
  72. package/dist/rules/disallow-stylelint-allow-empty-input.js +29 -0
  73. package/dist/rules/disallow-stylelint-allow-empty-input.js.map +1 -0
  74. package/dist/rules/disallow-stylelint-configuration-comment.d.ts +9 -0
  75. package/dist/rules/disallow-stylelint-configuration-comment.d.ts.map +1 -0
  76. package/dist/rules/disallow-stylelint-configuration-comment.js +29 -0
  77. package/dist/rules/disallow-stylelint-configuration-comment.js.map +1 -0
  78. package/dist/rules/disallow-stylelint-custom-syntax.d.ts +12 -0
  79. package/dist/rules/disallow-stylelint-custom-syntax.d.ts.map +1 -0
  80. package/dist/rules/disallow-stylelint-custom-syntax.js +32 -0
  81. package/dist/rules/disallow-stylelint-custom-syntax.js.map +1 -0
  82. package/dist/rules/disallow-stylelint-default-severity.d.ts +9 -0
  83. package/dist/rules/disallow-stylelint-default-severity.d.ts.map +1 -0
  84. package/dist/rules/disallow-stylelint-default-severity.js +28 -0
  85. package/dist/rules/disallow-stylelint-default-severity.js.map +1 -0
  86. package/dist/rules/disallow-stylelint-duplicate-extends.d.ts +9 -0
  87. package/dist/rules/disallow-stylelint-duplicate-extends.d.ts.map +1 -0
  88. package/dist/rules/disallow-stylelint-duplicate-extends.js +29 -0
  89. package/dist/rules/disallow-stylelint-duplicate-extends.js.map +1 -0
  90. package/dist/rules/disallow-stylelint-duplicate-plugins.d.ts +9 -0
  91. package/dist/rules/disallow-stylelint-duplicate-plugins.d.ts.map +1 -0
  92. package/dist/rules/disallow-stylelint-duplicate-plugins.js +29 -0
  93. package/dist/rules/disallow-stylelint-duplicate-plugins.js.map +1 -0
  94. package/dist/rules/disallow-stylelint-duplicate-rule-option-values.d.ts +10 -0
  95. package/dist/rules/disallow-stylelint-duplicate-rule-option-values.d.ts.map +1 -0
  96. package/dist/rules/disallow-stylelint-duplicate-rule-option-values.js +171 -0
  97. package/dist/rules/disallow-stylelint-duplicate-rule-option-values.js.map +1 -0
  98. package/dist/rules/disallow-stylelint-empty-rules-object.d.ts +7 -0
  99. package/dist/rules/disallow-stylelint-empty-rules-object.d.ts.map +1 -0
  100. package/dist/rules/disallow-stylelint-empty-rules-object.js +65 -0
  101. package/dist/rules/disallow-stylelint-empty-rules-object.js.map +1 -0
  102. package/dist/rules/disallow-stylelint-ignore-disables.d.ts +9 -0
  103. package/dist/rules/disallow-stylelint-ignore-disables.d.ts.map +1 -0
  104. package/dist/rules/disallow-stylelint-ignore-disables.js +28 -0
  105. package/dist/rules/disallow-stylelint-ignore-disables.js.map +1 -0
  106. package/dist/rules/disallow-stylelint-ignore-files.d.ts +9 -0
  107. package/dist/rules/disallow-stylelint-ignore-files.d.ts.map +1 -0
  108. package/dist/rules/disallow-stylelint-ignore-files.js +28 -0
  109. package/dist/rules/disallow-stylelint-ignore-files.js.map +1 -0
  110. package/dist/rules/disallow-stylelint-null-rule-config.d.ts +7 -0
  111. package/dist/rules/disallow-stylelint-null-rule-config.d.ts.map +1 -0
  112. package/dist/rules/disallow-stylelint-null-rule-config.js +86 -0
  113. package/dist/rules/disallow-stylelint-null-rule-config.js.map +1 -0
  114. package/dist/rules/disallow-stylelint-overrides-runtime-options.d.ts +7 -0
  115. package/dist/rules/disallow-stylelint-overrides-runtime-options.d.ts.map +1 -0
  116. package/dist/rules/disallow-stylelint-overrides-runtime-options.js +124 -0
  117. package/dist/rules/disallow-stylelint-overrides-runtime-options.js.map +1 -0
  118. package/dist/rules/disallow-stylelint-processors.d.ts +9 -0
  119. package/dist/rules/disallow-stylelint-processors.d.ts.map +1 -0
  120. package/dist/rules/disallow-stylelint-processors.js +29 -0
  121. package/dist/rules/disallow-stylelint-processors.js.map +1 -0
  122. package/dist/rules/disallow-stylelint-relative-extends-paths.d.ts +9 -0
  123. package/dist/rules/disallow-stylelint-relative-extends-paths.d.ts.map +1 -0
  124. package/dist/rules/disallow-stylelint-relative-extends-paths.js +28 -0
  125. package/dist/rules/disallow-stylelint-relative-extends-paths.js.map +1 -0
  126. package/dist/rules/disallow-stylelint-relative-plugin-paths.d.ts +9 -0
  127. package/dist/rules/disallow-stylelint-relative-plugin-paths.d.ts.map +1 -0
  128. package/dist/rules/disallow-stylelint-relative-plugin-paths.js +28 -0
  129. package/dist/rules/disallow-stylelint-relative-plugin-paths.js.map +1 -0
  130. package/dist/rules/prefer-stylelint-cache.d.ts +9 -0
  131. package/dist/rules/prefer-stylelint-cache.d.ts.map +1 -0
  132. package/dist/rules/prefer-stylelint-cache.js +28 -0
  133. package/dist/rules/prefer-stylelint-cache.js.map +1 -0
  134. package/dist/rules/prefer-stylelint-define-config.d.ts +7 -0
  135. package/dist/rules/prefer-stylelint-define-config.d.ts.map +1 -0
  136. package/dist/rules/prefer-stylelint-define-config.js +82 -0
  137. package/dist/rules/prefer-stylelint-define-config.js.map +1 -0
  138. package/dist/rules/prefer-stylelint-extends-array.d.ts +9 -0
  139. package/dist/rules/prefer-stylelint-extends-array.d.ts.map +1 -0
  140. package/dist/rules/prefer-stylelint-extends-array.js +29 -0
  141. package/dist/rules/prefer-stylelint-extends-array.js.map +1 -0
  142. package/dist/rules/prefer-stylelint-fix.d.ts +7 -0
  143. package/dist/rules/prefer-stylelint-fix.d.ts.map +1 -0
  144. package/dist/rules/prefer-stylelint-fix.js +90 -0
  145. package/dist/rules/prefer-stylelint-fix.js.map +1 -0
  146. package/dist/rules/prefer-stylelint-formatter.d.ts +10 -0
  147. package/dist/rules/prefer-stylelint-formatter.d.ts.map +1 -0
  148. package/dist/rules/prefer-stylelint-formatter.js +77 -0
  149. package/dist/rules/prefer-stylelint-formatter.js.map +1 -0
  150. package/dist/rules/prefer-stylelint-plugins-array.d.ts +9 -0
  151. package/dist/rules/prefer-stylelint-plugins-array.d.ts.map +1 -0
  152. package/dist/rules/prefer-stylelint-plugins-array.js +29 -0
  153. package/dist/rules/prefer-stylelint-plugins-array.js.map +1 -0
  154. package/dist/rules/prefer-stylelint-report-descriptionless-disables.d.ts +12 -0
  155. package/dist/rules/prefer-stylelint-report-descriptionless-disables.d.ts.map +1 -0
  156. package/dist/rules/prefer-stylelint-report-descriptionless-disables.js +32 -0
  157. package/dist/rules/prefer-stylelint-report-descriptionless-disables.js.map +1 -0
  158. package/dist/rules/prefer-stylelint-report-invalid-scope-disables.d.ts +12 -0
  159. package/dist/rules/prefer-stylelint-report-invalid-scope-disables.d.ts.map +1 -0
  160. package/dist/rules/prefer-stylelint-report-invalid-scope-disables.js +32 -0
  161. package/dist/rules/prefer-stylelint-report-invalid-scope-disables.js.map +1 -0
  162. package/dist/rules/prefer-stylelint-report-needless-disables.d.ts +9 -0
  163. package/dist/rules/prefer-stylelint-report-needless-disables.d.ts.map +1 -0
  164. package/dist/rules/prefer-stylelint-report-needless-disables.js +29 -0
  165. package/dist/rules/prefer-stylelint-report-needless-disables.js.map +1 -0
  166. package/dist/rules/prefer-stylelint-report-unscoped-disables.d.ts +9 -0
  167. package/dist/rules/prefer-stylelint-report-unscoped-disables.d.ts.map +1 -0
  168. package/dist/rules/prefer-stylelint-report-unscoped-disables.js +29 -0
  169. package/dist/rules/prefer-stylelint-report-unscoped-disables.js.map +1 -0
  170. package/dist/rules/require-stylelint-config-file-naming-convention.d.ts +13 -0
  171. package/dist/rules/require-stylelint-config-file-naming-convention.d.ts.map +1 -0
  172. package/dist/rules/require-stylelint-config-file-naming-convention.js +58 -0
  173. package/dist/rules/require-stylelint-config-file-naming-convention.js.map +1 -0
  174. package/dist/rules/require-stylelint-custom-syntax-in-overrides.d.ts +7 -0
  175. package/dist/rules/require-stylelint-custom-syntax-in-overrides.d.ts.map +1 -0
  176. package/dist/rules/require-stylelint-custom-syntax-in-overrides.js +100 -0
  177. package/dist/rules/require-stylelint-custom-syntax-in-overrides.js.map +1 -0
  178. package/dist/rules/require-stylelint-extends-packages-installed.d.ts +12 -0
  179. package/dist/rules/require-stylelint-extends-packages-installed.d.ts.map +1 -0
  180. package/dist/rules/require-stylelint-extends-packages-installed.js +31 -0
  181. package/dist/rules/require-stylelint-extends-packages-installed.js.map +1 -0
  182. package/dist/rules/require-stylelint-overrides-configuration.d.ts +7 -0
  183. package/dist/rules/require-stylelint-overrides-configuration.d.ts.map +1 -0
  184. package/dist/rules/require-stylelint-overrides-configuration.js +100 -0
  185. package/dist/rules/require-stylelint-overrides-configuration.js.map +1 -0
  186. package/dist/rules/require-stylelint-overrides-files-array.d.ts +7 -0
  187. package/dist/rules/require-stylelint-overrides-files-array.d.ts.map +1 -0
  188. package/dist/rules/require-stylelint-overrides-files-array.js +99 -0
  189. package/dist/rules/require-stylelint-overrides-files-array.js.map +1 -0
  190. package/dist/rules/require-stylelint-overrides-files.d.ts +7 -0
  191. package/dist/rules/require-stylelint-overrides-files.d.ts.map +1 -0
  192. package/dist/rules/require-stylelint-overrides-files.js +104 -0
  193. package/dist/rules/require-stylelint-overrides-files.js.map +1 -0
  194. package/dist/rules/require-stylelint-plugins-packages-installed.d.ts +12 -0
  195. package/dist/rules/require-stylelint-plugins-packages-installed.d.ts.map +1 -0
  196. package/dist/rules/require-stylelint-plugins-packages-installed.js +31 -0
  197. package/dist/rules/require-stylelint-plugins-packages-installed.js.map +1 -0
  198. package/dist/rules/require-stylelint-report-disables.d.ts +9 -0
  199. package/dist/rules/require-stylelint-report-disables.d.ts.map +1 -0
  200. package/dist/rules/require-stylelint-report-disables.js +29 -0
  201. package/dist/rules/require-stylelint-report-disables.js.map +1 -0
  202. package/dist/rules/require-stylelint-rules-object.d.ts +7 -0
  203. package/dist/rules/require-stylelint-rules-object.d.ts.map +1 -0
  204. package/dist/rules/require-stylelint-rules-object.js +65 -0
  205. package/dist/rules/require-stylelint-rules-object.js.map +1 -0
  206. package/dist/rules/sort-stylelint-extends.d.ts +9 -0
  207. package/dist/rules/sort-stylelint-extends.d.ts.map +1 -0
  208. package/dist/rules/sort-stylelint-extends.js +28 -0
  209. package/dist/rules/sort-stylelint-extends.js.map +1 -0
  210. package/dist/rules/sort-stylelint-plugins.d.ts +9 -0
  211. package/dist/rules/sort-stylelint-plugins.d.ts.map +1 -0
  212. package/dist/rules/sort-stylelint-plugins.js +28 -0
  213. package/dist/rules/sort-stylelint-plugins.js.map +1 -0
  214. package/dist/rules/sort-stylelint-rule-keys.d.ts +7 -0
  215. package/dist/rules/sort-stylelint-rule-keys.d.ts.map +1 -0
  216. package/dist/rules/sort-stylelint-rule-keys.js +129 -0
  217. package/dist/rules/sort-stylelint-rule-keys.js.map +1 -0
  218. package/dist/rules/stylelint.d.ts +15 -0
  219. package/dist/rules/stylelint.d.ts.map +1 -0
  220. package/dist/rules/stylelint.js +157 -0
  221. package/dist/rules/stylelint.js.map +1 -0
  222. package/docs/rules/disallow-stylelint-allow-empty-input.md +62 -0
  223. package/docs/rules/disallow-stylelint-configuration-comment.md +62 -0
  224. package/docs/rules/disallow-stylelint-custom-syntax.md +70 -0
  225. package/docs/rules/disallow-stylelint-default-severity.md +77 -0
  226. package/docs/rules/disallow-stylelint-duplicate-extends.md +61 -0
  227. package/docs/rules/disallow-stylelint-duplicate-plugins.md +61 -0
  228. package/docs/rules/disallow-stylelint-duplicate-rule-option-values.md +73 -0
  229. package/docs/rules/disallow-stylelint-empty-rules-object.md +62 -0
  230. package/docs/rules/disallow-stylelint-ignore-disables.md +78 -0
  231. package/docs/rules/disallow-stylelint-ignore-files.md +78 -0
  232. package/docs/rules/disallow-stylelint-null-rule-config.md +63 -0
  233. package/docs/rules/disallow-stylelint-overrides-runtime-options.md +82 -0
  234. package/docs/rules/disallow-stylelint-processors.md +62 -0
  235. package/docs/rules/disallow-stylelint-relative-extends-paths.md +61 -0
  236. package/docs/rules/disallow-stylelint-relative-plugin-paths.md +61 -0
  237. package/docs/rules/getting-started.md +130 -0
  238. package/docs/rules/overview.md +99 -0
  239. package/docs/rules/prefer-stylelint-cache.md +79 -0
  240. package/docs/rules/prefer-stylelint-define-config.md +90 -0
  241. package/docs/rules/prefer-stylelint-extends-array.md +61 -0
  242. package/docs/rules/prefer-stylelint-fix.md +79 -0
  243. package/docs/rules/prefer-stylelint-formatter.md +80 -0
  244. package/docs/rules/prefer-stylelint-plugins-array.md +61 -0
  245. package/docs/rules/prefer-stylelint-report-descriptionless-disables.md +85 -0
  246. package/docs/rules/prefer-stylelint-report-invalid-scope-disables.md +83 -0
  247. package/docs/rules/prefer-stylelint-report-needless-disables.md +83 -0
  248. package/docs/rules/prefer-stylelint-report-unscoped-disables.md +83 -0
  249. package/docs/rules/presets/all.md +39 -0
  250. package/docs/rules/presets/configs.md +40 -0
  251. package/docs/rules/presets/configuration.md +64 -0
  252. package/docs/rules/presets/index.md +82 -0
  253. package/docs/rules/presets/recommended.md +40 -0
  254. package/docs/rules/presets/stylelint-only.md +42 -0
  255. package/docs/rules/require-stylelint-config-file-naming-convention.md +61 -0
  256. package/docs/rules/require-stylelint-custom-syntax-in-overrides.md +77 -0
  257. package/docs/rules/require-stylelint-extends-packages-installed.md +61 -0
  258. package/docs/rules/require-stylelint-overrides-configuration.md +80 -0
  259. package/docs/rules/require-stylelint-overrides-files-array.md +78 -0
  260. package/docs/rules/require-stylelint-overrides-files.md +83 -0
  261. package/docs/rules/require-stylelint-plugins-packages-installed.md +61 -0
  262. package/docs/rules/require-stylelint-report-disables.md +67 -0
  263. package/docs/rules/require-stylelint-rules-object.md +61 -0
  264. package/docs/rules/sort-stylelint-extends.md +61 -0
  265. package/docs/rules/sort-stylelint-plugins.md +61 -0
  266. package/docs/rules/sort-stylelint-rule-keys.md +65 -0
  267. package/docs/rules/stylelint.md +100 -0
  268. package/package.json +577 -0
@@ -0,0 +1,66 @@
1
+ import { getExportedStylelintConfigObject, getObjectPropertyByName, isStylelintConfigFile, } from "./stylelint-config-object.js";
2
+ import { getStringArrayOptionValue, isRelativeSpecifier, } from "./stylelint-config-string-array-option.js";
3
+ import { getDependencyNamesForFile, getPackageNameFromSpecifier, } from "./stylelint-package-dependencies.js";
4
+ import { createTypedRule, toRuleListener, } from "./typed-rule.js";
5
+ /**
6
+ * Create a rule that requires package-backed specifiers in one top-level
7
+ * Stylelint string-array option to be present in workspace dependencies.
8
+ */
9
+ export const createStylelintConfigRequireInstalledPackageOptionRule = (definition) => {
10
+ const { optionName, ...ruleDefinition } = definition;
11
+ return createTypedRule({
12
+ ...ruleDefinition,
13
+ create(context) {
14
+ if (!isStylelintConfigFile(context.physicalFilename)) {
15
+ return {};
16
+ }
17
+ return toRuleListener({
18
+ ExportDefaultDeclaration(node) {
19
+ if (node === null || typeof node !== "object") {
20
+ return;
21
+ }
22
+ const exportDefaultNode = node;
23
+ const configObject = getExportedStylelintConfigObject(exportDefaultNode.declaration);
24
+ if (configObject === undefined) {
25
+ return;
26
+ }
27
+ const optionProperty = getObjectPropertyByName(configObject, optionName);
28
+ if (optionProperty === undefined) {
29
+ return;
30
+ }
31
+ const optionValue = getStringArrayOptionValue(optionProperty);
32
+ if (optionValue === undefined) {
33
+ return;
34
+ }
35
+ const dependencyNames = getDependencyNamesForFile(context.physicalFilename, context.cwd);
36
+ if (dependencyNames === undefined) {
37
+ return;
38
+ }
39
+ const stringLiterals = optionValue.kind === "string"
40
+ ? [optionValue.stringLiteral]
41
+ : optionValue.stringLiterals;
42
+ for (const stringLiteral of stringLiterals) {
43
+ const specifier = stringLiteral.value.trim();
44
+ if (specifier.length === 0 ||
45
+ isRelativeSpecifier(specifier)) {
46
+ continue;
47
+ }
48
+ const packageName = getPackageNameFromSpecifier(specifier);
49
+ if (packageName === undefined ||
50
+ dependencyNames.has(packageName)) {
51
+ continue;
52
+ }
53
+ context.report({
54
+ data: {
55
+ packageName,
56
+ },
57
+ messageId: "requireInstalledPackage",
58
+ node: stringLiteral,
59
+ });
60
+ }
61
+ },
62
+ });
63
+ },
64
+ });
65
+ };
66
+ //# sourceMappingURL=stylelint-config-package-option-rule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stylelint-config-package-option-rule.js","sourceRoot":"","sources":["../../src/_internal/stylelint-config-package-option-rule.ts"],"names":[],"mappings":"AAMA,OAAO,EACH,gCAAgC,EAChC,uBAAuB,EACvB,qBAAqB,GACxB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACH,yBAAyB,EACzB,mBAAmB,GACtB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EACH,yBAAyB,EACzB,2BAA2B,GAC9B,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACH,eAAe,EAEf,cAAc,GACjB,MAAM,iBAAiB,CAAC;AAUzB;;;GAGG;AACH,MAAM,CAAC,MAAM,sDAAsD,GAAG,CAClE,UAAgD,EACM,EAAE;IACxD,MAAM,EAAE,UAAU,EAAE,GAAG,cAAc,EAAE,GAAG,UAAU,CAAC;IAErD,OAAO,eAAe,CAAC;QACnB,GAAG,cAAc;QACjB,MAAM,CAAC,OAAO;YACV,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBACnD,OAAO,EAAE,CAAC;YACd,CAAC;YAED,OAAO,cAAc,CAAC;gBAClB,wBAAwB,CAAC,IAAa;oBAClC,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;wBAC5C,OAAO;oBACX,CAAC;oBAED,MAAM,iBAAiB,GACnB,IAAyC,CAAC;oBAC9C,MAAM,YAAY,GAAG,gCAAgC,CACjD,iBAAiB,CAAC,WAAW,CAChC,CAAC;oBAEF,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;wBAC7B,OAAO;oBACX,CAAC;oBAED,MAAM,cAAc,GAAG,uBAAuB,CAC1C,YAAY,EACZ,UAAU,CACb,CAAC;oBAEF,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;wBAC/B,OAAO;oBACX,CAAC;oBAED,MAAM,WAAW,GACb,yBAAyB,CAAC,cAAc,CAAC,CAAC;oBAE9C,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;wBAC5B,OAAO;oBACX,CAAC;oBAED,MAAM,eAAe,GAAG,yBAAyB,CAC7C,OAAO,CAAC,gBAAgB,EACxB,OAAO,CAAC,GAAG,CACd,CAAC;oBAEF,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;wBAChC,OAAO;oBACX,CAAC;oBAED,MAAM,cAAc,GAChB,WAAW,CAAC,IAAI,KAAK,QAAQ;wBACzB,CAAC,CAAC,CAAC,WAAW,CAAC,aAAa,CAAC;wBAC7B,CAAC,CAAC,WAAW,CAAC,cAAc,CAAC;oBAErC,KAAK,MAAM,aAAa,IAAI,cAAc,EAAE,CAAC;wBACzC,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;wBAE7C,IACI,SAAS,CAAC,MAAM,KAAK,CAAC;4BACtB,mBAAmB,CAAC,SAAS,CAAC,EAChC,CAAC;4BACC,SAAS;wBACb,CAAC;wBAED,MAAM,WAAW,GACb,2BAA2B,CAAC,SAAS,CAAC,CAAC;wBAE3C,IACI,WAAW,KAAK,SAAS;4BACzB,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,EAClC,CAAC;4BACC,SAAS;wBACb,CAAC;wBAED,OAAO,CAAC,MAAM,CAAC;4BACX,IAAI,EAAE;gCACF,WAAW;6BACd;4BACD,SAAS,EAAE,yBAAyB;4BACpC,IAAI,EAAE,aAAa;yBACtB,CAAC,CAAC;oBACP,CAAC;gBACL,CAAC;aACJ,CAAC,CAAC;QACP,CAAC;KACJ,CAAkE,CAAC;AACxE,CAAC,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * @packageDocumentation
3
+ * Shared helpers for accessing top-level Stylelint `rules` object entries.
4
+ */
5
+ import type { TSESTree } from "@typescript-eslint/utils";
6
+ /**
7
+ * Resolve the top-level Stylelint `rules` object expression.
8
+ *
9
+ * @param configObject - Exported Stylelint config object expression.
10
+ *
11
+ * @returns The `rules` object when present and statically analyzable.
12
+ */
13
+ export declare const getTopLevelRulesObject: (configObject: Readonly<TSESTree.ObjectExpression>) => TSESTree.ObjectExpression | undefined;
14
+ /**
15
+ * Collect direct rule entries from a `rules` object (excluding spread elements
16
+ * and methods).
17
+ *
18
+ * @param rulesObject - `rules` object expression.
19
+ *
20
+ * @returns Rule entry properties in source order.
21
+ */
22
+ export declare const getTopLevelRuleEntries: (rulesObject: Readonly<TSESTree.ObjectExpression>) => readonly TSESTree.Property[];
23
+ //# sourceMappingURL=stylelint-config-rules-object.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stylelint-config-rules-object.d.ts","sourceRoot":"","sources":["../../src/_internal/stylelint-config-rules-object.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAYzD;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,GAC/B,cAAc,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAClD,QAAQ,CAAC,gBAAgB,GAAG,SAgB9B,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,GAC/B,aAAa,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KACjD,SAAS,QAAQ,CAAC,QAAQ,EAgB5B,CAAC"}
@@ -0,0 +1,47 @@
1
+ import { getObjectPropertyByName } from "./stylelint-config-object.js";
2
+ const isPropertyExpressionValue = (value) => value.type !== "ArrayPattern" &&
3
+ value.type !== "AssignmentPattern" &&
4
+ value.type !== "ObjectPattern" &&
5
+ value.type !== "TSEmptyBodyFunctionExpression";
6
+ /**
7
+ * Resolve the top-level Stylelint `rules` object expression.
8
+ *
9
+ * @param configObject - Exported Stylelint config object expression.
10
+ *
11
+ * @returns The `rules` object when present and statically analyzable.
12
+ */
13
+ export const getTopLevelRulesObject = (configObject) => {
14
+ const rulesProperty = getObjectPropertyByName(configObject, "rules");
15
+ if (rulesProperty === undefined) {
16
+ return undefined;
17
+ }
18
+ const rulesPropertyValue = rulesProperty.value;
19
+ if (!isPropertyExpressionValue(rulesPropertyValue)) {
20
+ return undefined;
21
+ }
22
+ return rulesPropertyValue.type === "ObjectExpression"
23
+ ? rulesPropertyValue
24
+ : undefined;
25
+ };
26
+ /**
27
+ * Collect direct rule entries from a `rules` object (excluding spread elements
28
+ * and methods).
29
+ *
30
+ * @param rulesObject - `rules` object expression.
31
+ *
32
+ * @returns Rule entry properties in source order.
33
+ */
34
+ export const getTopLevelRuleEntries = (rulesObject) => {
35
+ const ruleEntries = [];
36
+ for (const property of rulesObject.properties) {
37
+ if (property.type !== "Property") {
38
+ continue;
39
+ }
40
+ if (property.kind !== "init") {
41
+ continue;
42
+ }
43
+ ruleEntries.push(property);
44
+ }
45
+ return ruleEntries;
46
+ };
47
+ //# sourceMappingURL=stylelint-config-rules-object.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stylelint-config-rules-object.js","sourceRoot":"","sources":["../../src/_internal/stylelint-config-rules-object.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAEvE,MAAM,yBAAyB,GAAG,CAC9B,KAA2C,EACf,EAAE,CAC9B,KAAK,CAAC,IAAI,KAAK,cAAc;IAC7B,KAAK,CAAC,IAAI,KAAK,mBAAmB;IAClC,KAAK,CAAC,IAAI,KAAK,eAAe;IAC9B,KAAK,CAAC,IAAI,KAAK,+BAA+B,CAAC;AAEnD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAClC,YAAiD,EACZ,EAAE;IACvC,MAAM,aAAa,GAAG,uBAAuB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAErE,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,MAAM,kBAAkB,GAAG,aAAa,CAAC,KAAK,CAAC;IAE/C,IAAI,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACjD,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,OAAO,kBAAkB,CAAC,IAAI,KAAK,kBAAkB;QACjD,CAAC,CAAC,kBAAkB;QACpB,CAAC,CAAC,SAAS,CAAC;AACpB,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAClC,WAAgD,EACpB,EAAE;IAC9B,MAAM,WAAW,GAAwB,EAAE,CAAC;IAE5C,KAAK,MAAM,QAAQ,IAAI,WAAW,CAAC,UAAU,EAAE,CAAC;QAC5C,IAAI,QAAQ,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC/B,SAAS;QACb,CAAC;QAED,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC3B,SAAS;QACb,CAAC;QAED,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO,WAAW,CAAC;AACvB,CAAC,CAAC"}
@@ -0,0 +1,27 @@
1
+ import { type RuleModuleWithDocs } from "./typed-rule.js";
2
+ type ConfigOptionRuleDefinition<MessageIds extends string> = Readonly<Omit<RuleModuleWithDocs<MessageIds, Options>, "create"> & {
3
+ optionName: string;
4
+ }>;
5
+ type Options = readonly [];
6
+ /**
7
+ * Create a rule that prefers array form for one top-level Stylelint
8
+ * string-array option.
9
+ */
10
+ export declare const createStylelintConfigPreferArrayOptionRule: (definition: Readonly<ConfigOptionRuleDefinition<"preferArray">>) => RuleModuleWithDocs<"preferArray", Options>;
11
+ /**
12
+ * Create a rule that disallows duplicate entries in one top-level Stylelint
13
+ * string-array option.
14
+ */
15
+ export declare const createStylelintConfigDisallowDuplicateArrayEntriesRule: (definition: Readonly<ConfigOptionRuleDefinition<"disallowDuplicates">>) => RuleModuleWithDocs<"disallowDuplicates", Options>;
16
+ /**
17
+ * Create a rule that enforces sorted entries in one top-level Stylelint
18
+ * string-array option.
19
+ */
20
+ export declare const createStylelintConfigSortArrayEntriesRule: (definition: Readonly<ConfigOptionRuleDefinition<"sortArray">>) => RuleModuleWithDocs<"sortArray", Options>;
21
+ /**
22
+ * Create a rule that disallows relative-path entries in one top-level Stylelint
23
+ * string-array option.
24
+ */
25
+ export declare const createStylelintConfigDisallowRelativeArrayEntriesRule: (definition: Readonly<ConfigOptionRuleDefinition<"disallowRelative">>) => RuleModuleWithDocs<"disallowRelative", Options>;
26
+ export {};
27
+ //# sourceMappingURL=stylelint-config-string-array-option-rule.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stylelint-config-string-array-option-rule.d.ts","sourceRoot":"","sources":["../../src/_internal/stylelint-config-string-array-option-rule.ts"],"names":[],"mappings":"AAeA,OAAO,EAEH,KAAK,kBAAkB,EAE1B,MAAM,iBAAiB,CAAC;AAEzB,KAAK,0BAA0B,CAAC,UAAU,SAAS,MAAM,IAAI,QAAQ,CACjE,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,GAAG;IACtD,UAAU,EAAE,MAAM,CAAC;CACtB,CACJ,CAAC;AAEF,KAAK,OAAO,GAAG,SAAS,EAAE,CAAC;AA0G3B;;;GAGG;AACH,eAAO,MAAM,0CAA0C,GACnD,YAAY,QAAQ,CAAC,0BAA0B,CAAC,aAAa,CAAC,CAAC,KAChE,kBAAkB,CAAC,aAAa,EAAE,OAAO,CA0D3C,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,sDAAsD,GAC/D,YAAY,QAAQ,CAAC,0BAA0B,CAAC,oBAAoB,CAAC,CAAC,KACvE,kBAAkB,CAAC,oBAAoB,EAAE,OAAO,CAqElD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,yCAAyC,GAClD,YAAY,QAAQ,CAAC,0BAA0B,CAAC,WAAW,CAAC,CAAC,KAC9D,kBAAkB,CAAC,WAAW,EAAE,OAAO,CAqEzC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,qDAAqD,GAC9D,YAAY,QAAQ,CAAC,0BAA0B,CAAC,kBAAkB,CAAC,CAAC,KACrE,kBAAkB,CAAC,kBAAkB,EAAE,OAAO,CAiDhD,CAAC"}
@@ -0,0 +1,234 @@
1
+ import { getExportedStylelintConfigObject, getObjectPropertyByName, isStylelintConfigFile, } from "./stylelint-config-object.js";
2
+ import { getStringArrayOptionValue, isRelativeSpecifier, } from "./stylelint-config-string-array-option.js";
3
+ import { createTypedRule, toRuleListener, } from "./typed-rule.js";
4
+ const getLiteralText = (sourceCode, literal) => sourceCode.getText(literal);
5
+ const getUniqueLiterals = (literals) => {
6
+ const seenValues = new Set();
7
+ const uniqueLiterals = [];
8
+ for (const literal of literals) {
9
+ const literalValue = literal.value;
10
+ if (typeof literalValue !== "string") {
11
+ continue;
12
+ }
13
+ if (seenValues.has(literalValue)) {
14
+ continue;
15
+ }
16
+ seenValues.add(literalValue);
17
+ uniqueLiterals.push(literal);
18
+ }
19
+ return uniqueLiterals;
20
+ };
21
+ const hasDuplicates = (literals) => getUniqueLiterals(literals).length !== literals.length;
22
+ const getSortedLiteralItems = (sourceCode, literals) => literals
23
+ .map((literal, index) => ({
24
+ index,
25
+ text: getLiteralText(sourceCode, literal),
26
+ value: literal.value,
27
+ }))
28
+ .toSorted((left, right) => {
29
+ const valueOrder = left.value.localeCompare(right.value);
30
+ return valueOrder === 0 ? left.index - right.index : valueOrder;
31
+ });
32
+ const isAlreadySorted = (sourceCode, literals) => {
33
+ const sortedItems = getSortedLiteralItems(sourceCode, literals);
34
+ return sortedItems.every((item, index) => item.index === index);
35
+ };
36
+ const toArrayReplacementText = (sourceCode, literals) => `[${literals.map((literal) => getLiteralText(sourceCode, literal)).join(", ")}]`;
37
+ const getSortedLiteralTexts = (sourceCode, literals) => {
38
+ const sortedItems = getSortedLiteralItems(sourceCode, literals);
39
+ const sortedTexts = [];
40
+ for (const sortedItem of sortedItems) {
41
+ sortedTexts.push(sortedItem.text);
42
+ }
43
+ return sortedTexts;
44
+ };
45
+ const getRelativeLiterals = (optionValue) => {
46
+ if (optionValue === undefined) {
47
+ return [];
48
+ }
49
+ if (optionValue.kind === "string") {
50
+ const literalValue = optionValue.stringLiteral.value;
51
+ if (isRelativeSpecifier(literalValue)) {
52
+ return [optionValue.stringLiteral];
53
+ }
54
+ return [];
55
+ }
56
+ return optionValue.stringLiterals.filter((literal) => isRelativeSpecifier(literal.value));
57
+ };
58
+ /**
59
+ * Create a rule that prefers array form for one top-level Stylelint
60
+ * string-array option.
61
+ */
62
+ export const createStylelintConfigPreferArrayOptionRule = (definition) => {
63
+ const { optionName, ...ruleDefinition } = definition;
64
+ return createTypedRule({
65
+ ...ruleDefinition,
66
+ create(context) {
67
+ if (!isStylelintConfigFile(context.physicalFilename)) {
68
+ return {};
69
+ }
70
+ const sourceCode = context.sourceCode;
71
+ return toRuleListener({
72
+ ExportDefaultDeclaration(node) {
73
+ if (node === null || typeof node !== "object") {
74
+ return;
75
+ }
76
+ const exportDefaultNode = node;
77
+ const configObject = getExportedStylelintConfigObject(exportDefaultNode.declaration);
78
+ if (configObject === undefined) {
79
+ return;
80
+ }
81
+ const optionProperty = getObjectPropertyByName(configObject, optionName);
82
+ if (optionProperty === undefined) {
83
+ return;
84
+ }
85
+ const optionValue = getStringArrayOptionValue(optionProperty);
86
+ if (optionValue?.kind !== "string") {
87
+ return;
88
+ }
89
+ context.report({
90
+ fix(fixer) {
91
+ return fixer.replaceText(optionValue.stringLiteral, `[${getLiteralText(sourceCode, optionValue.stringLiteral)}]`);
92
+ },
93
+ messageId: "preferArray",
94
+ node: optionProperty,
95
+ });
96
+ },
97
+ });
98
+ },
99
+ });
100
+ };
101
+ /**
102
+ * Create a rule that disallows duplicate entries in one top-level Stylelint
103
+ * string-array option.
104
+ */
105
+ export const createStylelintConfigDisallowDuplicateArrayEntriesRule = (definition) => {
106
+ const { optionName, ...ruleDefinition } = definition;
107
+ return createTypedRule({
108
+ ...ruleDefinition,
109
+ create(context) {
110
+ if (!isStylelintConfigFile(context.physicalFilename)) {
111
+ return {};
112
+ }
113
+ const sourceCode = context.sourceCode;
114
+ return toRuleListener({
115
+ ExportDefaultDeclaration(node) {
116
+ if (node === null || typeof node !== "object") {
117
+ return;
118
+ }
119
+ const exportDefaultNode = node;
120
+ const configObject = getExportedStylelintConfigObject(exportDefaultNode.declaration);
121
+ if (configObject === undefined) {
122
+ return;
123
+ }
124
+ const optionProperty = getObjectPropertyByName(configObject, optionName);
125
+ if (optionProperty === undefined) {
126
+ return;
127
+ }
128
+ const optionValue = getStringArrayOptionValue(optionProperty);
129
+ if (optionValue?.kind !== "array") {
130
+ return;
131
+ }
132
+ if (!hasDuplicates(optionValue.stringLiterals)) {
133
+ return;
134
+ }
135
+ context.report({
136
+ fix(fixer) {
137
+ const uniqueLiterals = getUniqueLiterals(optionValue.stringLiterals);
138
+ return fixer.replaceText(optionValue.arrayExpression, toArrayReplacementText(sourceCode, uniqueLiterals));
139
+ },
140
+ messageId: "disallowDuplicates",
141
+ node: optionProperty,
142
+ });
143
+ },
144
+ });
145
+ },
146
+ });
147
+ };
148
+ /**
149
+ * Create a rule that enforces sorted entries in one top-level Stylelint
150
+ * string-array option.
151
+ */
152
+ export const createStylelintConfigSortArrayEntriesRule = (definition) => {
153
+ const { optionName, ...ruleDefinition } = definition;
154
+ return createTypedRule({
155
+ ...ruleDefinition,
156
+ create(context) {
157
+ if (!isStylelintConfigFile(context.physicalFilename)) {
158
+ return {};
159
+ }
160
+ const sourceCode = context.sourceCode;
161
+ return toRuleListener({
162
+ ExportDefaultDeclaration(node) {
163
+ if (node === null || typeof node !== "object") {
164
+ return;
165
+ }
166
+ const exportDefaultNode = node;
167
+ const configObject = getExportedStylelintConfigObject(exportDefaultNode.declaration);
168
+ if (configObject === undefined) {
169
+ return;
170
+ }
171
+ const optionProperty = getObjectPropertyByName(configObject, optionName);
172
+ if (optionProperty === undefined) {
173
+ return;
174
+ }
175
+ const optionValue = getStringArrayOptionValue(optionProperty);
176
+ if (optionValue?.kind !== "array") {
177
+ return;
178
+ }
179
+ if (isAlreadySorted(sourceCode, optionValue.stringLiterals)) {
180
+ return;
181
+ }
182
+ context.report({
183
+ fix(fixer) {
184
+ const sortedLiterals = getSortedLiteralTexts(sourceCode, optionValue.stringLiterals);
185
+ return fixer.replaceText(optionValue.arrayExpression, `[${sortedLiterals.join(", ")}]`);
186
+ },
187
+ messageId: "sortArray",
188
+ node: optionProperty,
189
+ });
190
+ },
191
+ });
192
+ },
193
+ });
194
+ };
195
+ /**
196
+ * Create a rule that disallows relative-path entries in one top-level Stylelint
197
+ * string-array option.
198
+ */
199
+ export const createStylelintConfigDisallowRelativeArrayEntriesRule = (definition) => {
200
+ const { optionName, ...ruleDefinition } = definition;
201
+ return createTypedRule({
202
+ ...ruleDefinition,
203
+ create(context) {
204
+ if (!isStylelintConfigFile(context.physicalFilename)) {
205
+ return {};
206
+ }
207
+ return toRuleListener({
208
+ ExportDefaultDeclaration(node) {
209
+ if (node === null || typeof node !== "object") {
210
+ return;
211
+ }
212
+ const exportDefaultNode = node;
213
+ const configObject = getExportedStylelintConfigObject(exportDefaultNode.declaration);
214
+ if (configObject === undefined) {
215
+ return;
216
+ }
217
+ const optionProperty = getObjectPropertyByName(configObject, optionName);
218
+ if (optionProperty === undefined) {
219
+ return;
220
+ }
221
+ const optionValue = getStringArrayOptionValue(optionProperty);
222
+ const relativeLiterals = getRelativeLiterals(optionValue);
223
+ for (const relativeLiteral of relativeLiterals) {
224
+ context.report({
225
+ messageId: "disallowRelative",
226
+ node: relativeLiteral,
227
+ });
228
+ }
229
+ },
230
+ });
231
+ },
232
+ });
233
+ };
234
+ //# sourceMappingURL=stylelint-config-string-array-option-rule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stylelint-config-string-array-option-rule.js","sourceRoot":"","sources":["../../src/_internal/stylelint-config-string-array-option-rule.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * @packageDocumentation
3
+ * Helpers for reading top-level Stylelint string-or-string-array options.
4
+ */
5
+ import type { TSESTree } from "@typescript-eslint/utils";
6
+ type StringArrayOptionValue = Readonly<{
7
+ arrayExpression: Readonly<TSESTree.ArrayExpression>;
8
+ kind: "array";
9
+ stringLiterals: readonly TSESTree.StringLiteral[];
10
+ } | {
11
+ kind: "string";
12
+ stringLiteral: Readonly<TSESTree.StringLiteral>;
13
+ }>;
14
+ /**
15
+ * Parse a top-level object property value as either a string literal or a
16
+ * string-only array expression.
17
+ *
18
+ * @param property - Candidate object property.
19
+ *
20
+ * @returns Parsed value when the property can be handled safely.
21
+ */
22
+ export declare const getStringArrayOptionValue: (property: Readonly<TSESTree.Property>) => StringArrayOptionValue | undefined;
23
+ /**
24
+ * Determine whether a Stylelint extends/plugins-like entry is a relative path.
25
+ *
26
+ * @param specifier - Candidate extends/plugins string value.
27
+ *
28
+ * @returns `true` when the entry starts with `./`, `../`, `.\\`, or `..\\`.
29
+ */
30
+ export declare const isRelativeSpecifier: (specifier: string) => boolean;
31
+ export {};
32
+ //# sourceMappingURL=stylelint-config-string-array-option.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stylelint-config-string-array-option.d.ts","sourceRoot":"","sources":["../../src/_internal/stylelint-config-string-array-option.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAezD,KAAK,sBAAsB,GAAG,QAAQ,CAChC;IACI,eAAe,EAAE,QAAQ,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACpD,IAAI,EAAE,OAAO,CAAC;IACd,cAAc,EAAE,SAAS,QAAQ,CAAC,aAAa,EAAE,CAAC;CACrD,GACD;IACI,IAAI,EAAE,QAAQ,CAAC;IACf,aAAa,EAAE,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;CACnD,CACN,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,yBAAyB,GAClC,UAAU,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,KACtC,sBAAsB,GAAG,SAyC3B,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,GAAI,WAAW,MAAM,KAAG,OACpB,CAAC"}
@@ -0,0 +1,55 @@
1
+ const isPropertyExpressionValue = (value) => value.type !== "ArrayPattern" &&
2
+ value.type !== "AssignmentPattern" &&
3
+ value.type !== "ObjectPattern" &&
4
+ value.type !== "TSEmptyBodyFunctionExpression";
5
+ const isStringLiteralExpression = (value) => value.type === "Literal" && typeof value.value === "string";
6
+ /**
7
+ * Parse a top-level object property value as either a string literal or a
8
+ * string-only array expression.
9
+ *
10
+ * @param property - Candidate object property.
11
+ *
12
+ * @returns Parsed value when the property can be handled safely.
13
+ */
14
+ export const getStringArrayOptionValue = (property) => {
15
+ const propertyValue = property.value;
16
+ if (!isPropertyExpressionValue(propertyValue)) {
17
+ return undefined;
18
+ }
19
+ if (isStringLiteralExpression(propertyValue)) {
20
+ return {
21
+ kind: "string",
22
+ stringLiteral: propertyValue,
23
+ };
24
+ }
25
+ if (propertyValue.type !== "ArrayExpression") {
26
+ return undefined;
27
+ }
28
+ const stringLiterals = [];
29
+ for (const element of propertyValue.elements) {
30
+ if (element === null) {
31
+ return undefined;
32
+ }
33
+ if (element.type === "SpreadElement") {
34
+ return undefined;
35
+ }
36
+ if (!isStringLiteralExpression(element)) {
37
+ return undefined;
38
+ }
39
+ stringLiterals.push(element);
40
+ }
41
+ return {
42
+ arrayExpression: propertyValue,
43
+ kind: "array",
44
+ stringLiterals,
45
+ };
46
+ };
47
+ /**
48
+ * Determine whether a Stylelint extends/plugins-like entry is a relative path.
49
+ *
50
+ * @param specifier - Candidate extends/plugins string value.
51
+ *
52
+ * @returns `true` when the entry starts with `./`, `../`, `.\\`, or `..\\`.
53
+ */
54
+ export const isRelativeSpecifier = (specifier) => /^\.{1,2}[/\\]/u.test(specifier);
55
+ //# sourceMappingURL=stylelint-config-string-array-option.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stylelint-config-string-array-option.js","sourceRoot":"","sources":["../../src/_internal/stylelint-config-string-array-option.ts"],"names":[],"mappings":"AAMA,MAAM,yBAAyB,GAAG,CAC9B,KAA2C,EACf,EAAE,CAC9B,KAAK,CAAC,IAAI,KAAK,cAAc;IAC7B,KAAK,CAAC,IAAI,KAAK,mBAAmB;IAClC,KAAK,CAAC,IAAI,KAAK,eAAe;IAC9B,KAAK,CAAC,IAAI,KAAK,+BAA+B,CAAC;AAEnD,MAAM,yBAAyB,GAAG,CAC9B,KAAoC,EACL,EAAE,CACjC,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC;AAchE;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACrC,QAAqC,EACH,EAAE;IACpC,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC;IAErC,IAAI,CAAC,yBAAyB,CAAC,aAAa,CAAC,EAAE,CAAC;QAC5C,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,IAAI,yBAAyB,CAAC,aAAa,CAAC,EAAE,CAAC;QAC3C,OAAO;YACH,IAAI,EAAE,QAAQ;YACd,aAAa,EAAE,aAAa;SAC/B,CAAC;IACN,CAAC;IAED,IAAI,aAAa,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;QAC3C,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,MAAM,cAAc,GAA6B,EAAE,CAAC;IAEpD,KAAK,MAAM,OAAO,IAAI,aAAa,CAAC,QAAQ,EAAE,CAAC;QAC3C,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACnB,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;YACnC,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,EAAE,CAAC;YACtC,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IAED,OAAO;QACH,eAAe,EAAE,aAAa;QAC9B,IAAI,EAAE,OAAO;QACb,cAAc;KACjB,CAAC;AACN,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,SAAiB,EAAW,EAAE,CAC9D,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Resolve dependency names from the nearest package.json for a linted file.
3
+ *
4
+ * @param physicalFilename - ESLint physical filename.
5
+ * @param cwd - ESLint execution cwd.
6
+ *
7
+ * @returns Dependency-name set or `undefined` when unavailable.
8
+ */
9
+ export declare const getDependencyNamesForFile: (physicalFilename: string, cwd: string) => ReadonlySet<string> | undefined;
10
+ /**
11
+ * Get package name root from a package specifier or subpath.
12
+ *
13
+ * @param specifier - Package specifier from Stylelint extends/plugins entry.
14
+ *
15
+ * @returns Package name root (for example `stylelint-order`) when parsable.
16
+ */
17
+ export declare const getPackageNameFromSpecifier: (specifier: string) => string | undefined;
18
+ //# sourceMappingURL=stylelint-package-dependencies.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stylelint-package-dependencies.d.ts","sourceRoot":"","sources":["../../src/_internal/stylelint-package-dependencies.ts"],"names":[],"mappings":"AAoHA;;;;;;;GAOG;AACH,eAAO,MAAM,yBAAyB,GAClC,kBAAkB,MAAM,EACxB,KAAK,MAAM,KACZ,WAAW,CAAC,MAAM,CAAC,GAAG,SAaxB,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B,GACpC,WAAW,MAAM,KAClB,MAAM,GAAG,SAgBX,CAAC"}