@shivaedev/quality 0.7.2 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (350) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/README.md +102 -8
  3. package/biome/plugins/constant-names.grit +17 -0
  4. package/biome/plugins/effect-fn-spans.grit +13 -3
  5. package/biome/plugins/handler-names.grit +10 -0
  6. package/biome/plugins/schema-names.grit +13 -0
  7. package/biome/plugins/schema-struct-keys.grit +7 -0
  8. package/biome/plugins/service-layers.grit +13 -0
  9. package/biome/plugins/type-re-exports.grit +8 -0
  10. package/biome/preset.json +48 -1
  11. package/dist/baseline/compare.d.ts +1 -1
  12. package/dist/baseline/compare.d.ts.map +1 -1
  13. package/dist/baseline/compare.js +1 -1
  14. package/dist/baseline/compare.js.map +1 -1
  15. package/dist/baseline/format.d.ts +1 -1
  16. package/dist/baseline/format.d.ts.map +1 -1
  17. package/dist/baseline/format.js +2 -2
  18. package/dist/baseline/format.js.map +1 -1
  19. package/dist/baseline/legacy.d.ts +2 -2
  20. package/dist/baseline/legacy.d.ts.map +1 -1
  21. package/dist/baseline/legacy.js +2 -2
  22. package/dist/baseline/legacy.js.map +1 -1
  23. package/dist/baseline/rewrite.js +1 -1
  24. package/dist/baseline/rewrite.js.map +1 -1
  25. package/dist/baseline/update.d.ts +1 -1
  26. package/dist/baseline/update.d.ts.map +1 -1
  27. package/dist/baseline/update.js +1 -1
  28. package/dist/baseline/update.js.map +1 -1
  29. package/dist/cli/args.d.ts +1 -1
  30. package/dist/cli/args.d.ts.map +1 -1
  31. package/dist/cli/baseline.d.ts +3 -3
  32. package/dist/cli/baseline.d.ts.map +1 -1
  33. package/dist/cli/baseline.js +7 -7
  34. package/dist/cli/baseline.js.map +1 -1
  35. package/dist/cli/fix.d.ts +1 -1
  36. package/dist/cli/fix.d.ts.map +1 -1
  37. package/dist/cli/fix.js +7 -7
  38. package/dist/cli/fix.js.map +1 -1
  39. package/dist/cli/lint.d.ts +2 -2
  40. package/dist/cli/lint.d.ts.map +1 -1
  41. package/dist/cli/lint.js +4 -4
  42. package/dist/cli/lint.js.map +1 -1
  43. package/dist/cli/migrate.d.ts +1 -1
  44. package/dist/cli/migrate.d.ts.map +1 -1
  45. package/dist/cli/migrate.js +9 -9
  46. package/dist/cli/migrate.js.map +1 -1
  47. package/dist/cli/run-main.d.ts +1 -1
  48. package/dist/cli/run-main.d.ts.map +1 -1
  49. package/dist/cli/run-main.js +1 -1
  50. package/dist/cli/run-main.js.map +1 -1
  51. package/dist/cli/shrink.d.ts +2 -2
  52. package/dist/cli/shrink.d.ts.map +1 -1
  53. package/dist/cli/shrink.js +2 -2
  54. package/dist/cli/shrink.js.map +1 -1
  55. package/dist/cli.js +7 -7
  56. package/dist/cli.js.map +1 -1
  57. package/dist/config/decode.d.ts +2 -2
  58. package/dist/config/decode.d.ts.map +1 -1
  59. package/dist/config/decode.js +1 -1
  60. package/dist/config/decode.js.map +1 -1
  61. package/dist/config/load.d.ts +2 -2
  62. package/dist/config/load.d.ts.map +1 -1
  63. package/dist/config/load.js +2 -2
  64. package/dist/config/load.js.map +1 -1
  65. package/dist/config/resolve.d.ts +3 -3
  66. package/dist/config/resolve.d.ts.map +1 -1
  67. package/dist/config/resolve.js +1 -1
  68. package/dist/config/resolve.js.map +1 -1
  69. package/dist/config.d.ts +1 -1
  70. package/dist/config.d.ts.map +1 -1
  71. package/dist/engine/baseline-file.d.ts +3 -3
  72. package/dist/engine/baseline-file.d.ts.map +1 -1
  73. package/dist/engine/baseline-file.js +5 -5
  74. package/dist/engine/baseline-file.js.map +1 -1
  75. package/dist/engine/evaluate.d.ts +3 -3
  76. package/dist/engine/evaluate.d.ts.map +1 -1
  77. package/dist/engine/evaluate.js +2 -2
  78. package/dist/engine/evaluate.js.map +1 -1
  79. package/dist/engine/run-rules.d.ts +2 -2
  80. package/dist/engine/run-rules.d.ts.map +1 -1
  81. package/dist/engine/run-rules.js +2 -2
  82. package/dist/engine/run-rules.js.map +1 -1
  83. package/dist/engine/session.d.ts +4 -4
  84. package/dist/engine/session.d.ts.map +1 -1
  85. package/dist/engine/session.js +6 -6
  86. package/dist/engine/session.js.map +1 -1
  87. package/dist/engine/violation.d.ts +2 -2
  88. package/dist/engine/violation.d.ts.map +1 -1
  89. package/dist/exceptions/registry.d.ts +2 -2
  90. package/dist/exceptions/registry.d.ts.map +1 -1
  91. package/dist/exceptions/registry.js +2 -2
  92. package/dist/exceptions/registry.js.map +1 -1
  93. package/dist/git/base.d.ts +1 -1
  94. package/dist/git/base.d.ts.map +1 -1
  95. package/dist/git/base.js +1 -1
  96. package/dist/git/base.js.map +1 -1
  97. package/dist/git/command.d.ts +1 -1
  98. package/dist/git/command.d.ts.map +1 -1
  99. package/dist/git/command.js +1 -1
  100. package/dist/git/command.js.map +1 -1
  101. package/dist/git/history.d.ts +1 -1
  102. package/dist/git/history.d.ts.map +1 -1
  103. package/dist/imports/departures.d.ts +1 -1
  104. package/dist/imports/departures.d.ts.map +1 -1
  105. package/dist/imports/departures.js +1 -1
  106. package/dist/imports/departures.js.map +1 -1
  107. package/dist/imports/fences/evaluate.d.ts +2 -2
  108. package/dist/imports/fences/evaluate.d.ts.map +1 -1
  109. package/dist/imports/fences/match.d.ts +2 -2
  110. package/dist/imports/fences/match.d.ts.map +1 -1
  111. package/dist/imports/fences/match.js +2 -2
  112. package/dist/imports/fences/match.js.map +1 -1
  113. package/dist/imports/fences/policy.js +1 -1
  114. package/dist/imports/fences/policy.js.map +1 -1
  115. package/dist/imports/fences/reach.d.ts +2 -2
  116. package/dist/imports/fences/reach.d.ts.map +1 -1
  117. package/dist/imports/fences/vocabulary.d.ts +1 -1
  118. package/dist/imports/fences/vocabulary.d.ts.map +1 -1
  119. package/dist/imports/generated.d.ts +1 -1
  120. package/dist/imports/generated.d.ts.map +1 -1
  121. package/dist/imports/generated.js +1 -1
  122. package/dist/imports/generated.js.map +1 -1
  123. package/dist/imports/graph.d.ts +1 -1
  124. package/dist/imports/graph.d.ts.map +1 -1
  125. package/dist/imports/graph.js +1 -1
  126. package/dist/imports/graph.js.map +1 -1
  127. package/dist/imports/resolve.js +1 -1
  128. package/dist/imports/resolve.js.map +1 -1
  129. package/dist/imports/workspace.d.ts +1 -1
  130. package/dist/imports/workspace.d.ts.map +1 -1
  131. package/dist/index.d.ts +3 -3
  132. package/dist/index.d.ts.map +1 -1
  133. package/dist/index.js +2 -2
  134. package/dist/index.js.map +1 -1
  135. package/dist/inventory/collect.d.ts +1 -1
  136. package/dist/inventory/collect.d.ts.map +1 -1
  137. package/dist/manifests/sorted.d.ts +1 -1
  138. package/dist/manifests/sorted.d.ts.map +1 -1
  139. package/dist/manifests/sorted.js +3 -3
  140. package/dist/manifests/sorted.js.map +1 -1
  141. package/dist/naming/exportFits.d.ts +2 -0
  142. package/dist/naming/exportFits.d.ts.map +1 -0
  143. package/dist/naming/exportFits.js +20 -0
  144. package/dist/naming/exportFits.js.map +1 -0
  145. package/dist/naming/mainExport.d.ts +3 -0
  146. package/dist/naming/mainExport.d.ts.map +1 -0
  147. package/dist/naming/mainExport.js +10 -0
  148. package/dist/naming/mainExport.js.map +1 -0
  149. package/dist/naming/ownExports.d.ts +8 -0
  150. package/dist/naming/ownExports.d.ts.map +1 -0
  151. package/dist/naming/ownExports.js +78 -0
  152. package/dist/naming/ownExports.js.map +1 -0
  153. package/dist/naming/packageLayout.d.ts +8 -0
  154. package/dist/naming/packageLayout.d.ts.map +1 -0
  155. package/dist/naming/packageLayout.js +57 -0
  156. package/dist/naming/packageLayout.js.map +1 -0
  157. package/dist/naming/testName.d.ts +11 -0
  158. package/dist/naming/testName.d.ts.map +1 -0
  159. package/dist/naming/testName.js +13 -0
  160. package/dist/naming/testName.js.map +1 -0
  161. package/dist/naming/words.d.ts +8 -0
  162. package/dist/naming/words.d.ts.map +1 -0
  163. package/dist/naming/words.js +21 -0
  164. package/dist/naming/words.js.map +1 -0
  165. package/dist/report/render.d.ts +1 -1
  166. package/dist/report/render.d.ts.map +1 -1
  167. package/dist/report/render.js +2 -2
  168. package/dist/report/render.js.map +1 -1
  169. package/dist/report/stale.d.ts +1 -1
  170. package/dist/report/stale.d.ts.map +1 -1
  171. package/dist/rules/biome.d.ts +1 -1
  172. package/dist/rules/biome.d.ts.map +1 -1
  173. package/dist/rules/biome.js +3 -3
  174. package/dist/rules/biome.js.map +1 -1
  175. package/dist/rules/built-in.d.ts +13 -1
  176. package/dist/rules/built-in.d.ts.map +1 -1
  177. package/dist/rules/built-in.js +24 -14
  178. package/dist/rules/built-in.js.map +1 -1
  179. package/dist/rules/comments/kinds.js +1 -1
  180. package/dist/rules/comments/kinds.js.map +1 -1
  181. package/dist/rules/comments/max-per-file.d.ts +1 -1
  182. package/dist/rules/comments/max-per-file.js +2 -2
  183. package/dist/rules/comments/max-per-file.js.map +1 -1
  184. package/dist/rules/comments/no-jsdoc.d.ts +1 -1
  185. package/dist/rules/comments/no-jsdoc.js +1 -1
  186. package/dist/rules/comments/no-jsdoc.js.map +1 -1
  187. package/dist/rules/comments/pattern-rule.d.ts +1 -1
  188. package/dist/rules/comments/pattern-rule.d.ts.map +1 -1
  189. package/dist/rules/comments/pattern-rule.js +1 -1
  190. package/dist/rules/comments/pattern-rule.js.map +1 -1
  191. package/dist/rules/comments/scan.d.ts +1 -1
  192. package/dist/rules/comments/scan.d.ts.map +1 -1
  193. package/dist/rules/comments/scan.js +1 -1
  194. package/dist/rules/comments/scan.js.map +1 -1
  195. package/dist/rules/files/folderNames.d.ts +5 -0
  196. package/dist/rules/files/folderNames.d.ts.map +1 -0
  197. package/dist/rules/files/folderNames.js +74 -0
  198. package/dist/rules/files/folderNames.js.map +1 -0
  199. package/dist/rules/files/namedAfterExport.d.ts +4 -0
  200. package/dist/rules/files/namedAfterExport.d.ts.map +1 -0
  201. package/dist/rules/files/namedAfterExport.js +76 -0
  202. package/dist/rules/files/namedAfterExport.js.map +1 -0
  203. package/dist/rules/files/otherNames.d.ts +5 -0
  204. package/dist/rules/files/otherNames.d.ts.map +1 -0
  205. package/dist/rules/files/otherNames.js +99 -0
  206. package/dist/rules/files/otherNames.js.map +1 -0
  207. package/dist/rules/imports/aliased.d.ts +1 -1
  208. package/dist/rules/imports/aliased.d.ts.map +1 -1
  209. package/dist/rules/imports/aliased.js +2 -2
  210. package/dist/rules/imports/aliased.js.map +1 -1
  211. package/dist/rules/imports/cycles.d.ts +1 -1
  212. package/dist/rules/imports/cycles.d.ts.map +1 -1
  213. package/dist/rules/imports/cycles.js +4 -4
  214. package/dist/rules/imports/cycles.js.map +1 -1
  215. package/dist/rules/imports/fences.d.ts +2 -2
  216. package/dist/rules/imports/fences.d.ts.map +1 -1
  217. package/dist/rules/imports/fences.js +3 -3
  218. package/dist/rules/imports/fences.js.map +1 -1
  219. package/dist/rules/imports/resolvable.d.ts +1 -1
  220. package/dist/rules/imports/resolvable.js +3 -3
  221. package/dist/rules/imports/resolvable.js.map +1 -1
  222. package/dist/rules/manifests-sorted.d.ts +1 -1
  223. package/dist/rules/manifests-sorted.d.ts.map +1 -1
  224. package/dist/rules/manifests-sorted.js +2 -2
  225. package/dist/rules/manifests-sorted.js.map +1 -1
  226. package/dist/rules/max-lines.d.ts +1 -1
  227. package/dist/rules/max-lines.js +1 -1
  228. package/dist/rules/max-lines.js.map +1 -1
  229. package/dist/rules/suppressions/biome/configs.d.ts +1 -1
  230. package/dist/rules/suppressions/biome/configs.d.ts.map +1 -1
  231. package/dist/rules/suppressions/biome/declarations.d.ts +1 -1
  232. package/dist/rules/suppressions/biome/declarations.d.ts.map +1 -1
  233. package/dist/rules/suppressions/biome/declarations.js +1 -1
  234. package/dist/rules/suppressions/biome/declarations.js.map +1 -1
  235. package/dist/rules/suppressions/biome/resolve.d.ts +1 -1
  236. package/dist/rules/suppressions/biome/resolve.d.ts.map +1 -1
  237. package/dist/rules/suppressions/biome/resolve.js +1 -1
  238. package/dist/rules/suppressions/biome/resolve.js.map +1 -1
  239. package/dist/rules/suppressions/biome-overrides.d.ts +1 -1
  240. package/dist/rules/suppressions/biome-overrides.js +4 -4
  241. package/dist/rules/suppressions/biome-overrides.js.map +1 -1
  242. package/dist/rules/suppressions/directives.d.ts +1 -1
  243. package/dist/rules/suppressions/directives.d.ts.map +1 -1
  244. package/dist/rules/suppressions/no-double-cast.d.ts +1 -1
  245. package/dist/rules/suppressions/no-double-cast.d.ts.map +1 -1
  246. package/dist/rules/suppressions/no-double-cast.js +2 -2
  247. package/dist/rules/suppressions/no-double-cast.js.map +1 -1
  248. package/dist/rules/suppressions/no-inline.d.ts +1 -1
  249. package/dist/rules/suppressions/no-inline.d.ts.map +1 -1
  250. package/dist/rules/suppressions/no-inline.js +2 -2
  251. package/dist/rules/suppressions/no-inline.js.map +1 -1
  252. package/dist/rules/suppressions/stylesheet-comments.d.ts +1 -1
  253. package/dist/rules/suppressions/stylesheet-comments.d.ts.map +1 -1
  254. package/dist/rules/suppressions/stylesheet-comments.js +1 -1
  255. package/dist/rules/suppressions/stylesheet-comments.js.map +1 -1
  256. package/dist/rules/syntax.d.ts +1 -1
  257. package/dist/rules/syntax.d.ts.map +1 -1
  258. package/dist/rules/test-names/colocated.d.ts +4 -0
  259. package/dist/rules/test-names/colocated.d.ts.map +1 -0
  260. package/dist/rules/test-names/colocated.js +31 -0
  261. package/dist/rules/test-names/colocated.js.map +1 -0
  262. package/dist/rules/test-names/follow.d.ts +4 -0
  263. package/dist/rules/test-names/follow.d.ts.map +1 -0
  264. package/dist/rules/test-names/follow.js +66 -0
  265. package/dist/rules/test-names/follow.js.map +1 -0
  266. package/dist/rules/test-names/usesDom.d.ts +3 -0
  267. package/dist/rules/test-names/usesDom.d.ts.map +1 -0
  268. package/dist/rules/test-names/usesDom.js +18 -0
  269. package/dist/rules/test-names/usesDom.js.map +1 -0
  270. package/dist/vitest.d.ts +3 -1
  271. package/dist/vitest.d.ts.map +1 -1
  272. package/dist/vitest.js +11 -11
  273. package/dist/vitest.js.map +1 -1
  274. package/package.json +10 -2
  275. package/src/baseline/compare.ts +1 -1
  276. package/src/baseline/format.ts +2 -2
  277. package/src/baseline/legacy.ts +2 -2
  278. package/src/baseline/rewrite.ts +1 -1
  279. package/src/baseline/update.ts +1 -1
  280. package/src/cli/args.ts +1 -1
  281. package/src/cli/baseline.ts +8 -8
  282. package/src/cli/fix.ts +7 -7
  283. package/src/cli/lint.ts +4 -4
  284. package/src/cli/migrate.ts +9 -9
  285. package/src/cli/run-main.ts +2 -2
  286. package/src/cli/shrink.ts +5 -5
  287. package/src/cli.ts +7 -7
  288. package/src/config/decode.ts +2 -2
  289. package/src/config/load.ts +3 -3
  290. package/src/config/resolve.ts +6 -6
  291. package/src/config.ts +1 -1
  292. package/src/engine/baseline-file.ts +6 -6
  293. package/src/engine/evaluate.ts +3 -3
  294. package/src/engine/run-rules.ts +3 -3
  295. package/src/engine/session.ts +6 -6
  296. package/src/engine/violation.ts +2 -2
  297. package/src/exceptions/registry.ts +2 -2
  298. package/src/git/base.ts +1 -1
  299. package/src/git/command.ts +1 -1
  300. package/src/git/history.ts +1 -1
  301. package/src/imports/departures.ts +2 -2
  302. package/src/imports/fences/evaluate.ts +2 -2
  303. package/src/imports/fences/match.ts +2 -2
  304. package/src/imports/fences/policy.ts +2 -2
  305. package/src/imports/fences/reach.ts +2 -2
  306. package/src/imports/fences/vocabulary.ts +1 -1
  307. package/src/imports/generated.ts +2 -2
  308. package/src/imports/graph.ts +2 -2
  309. package/src/imports/resolve.ts +1 -1
  310. package/src/imports/workspace.ts +1 -1
  311. package/src/index.ts +3 -3
  312. package/src/inventory/collect.ts +1 -1
  313. package/src/manifests/sorted.ts +3 -3
  314. package/src/naming/exportFits.ts +21 -0
  315. package/src/naming/mainExport.ts +11 -0
  316. package/src/naming/ownExports.ts +95 -0
  317. package/src/naming/packageLayout.ts +75 -0
  318. package/src/naming/testName.ts +25 -0
  319. package/src/naming/words.ts +28 -0
  320. package/src/report/render.ts +3 -3
  321. package/src/report/stale.ts +3 -3
  322. package/src/rules/biome.ts +3 -3
  323. package/src/rules/built-in.ts +24 -14
  324. package/src/rules/comments/kinds.ts +1 -1
  325. package/src/rules/comments/max-per-file.ts +2 -2
  326. package/src/rules/comments/no-jsdoc.ts +1 -1
  327. package/src/rules/comments/pattern-rule.ts +1 -1
  328. package/src/rules/comments/scan.ts +2 -2
  329. package/src/rules/files/folderNames.ts +92 -0
  330. package/src/rules/files/namedAfterExport.ts +87 -0
  331. package/src/rules/files/otherNames.ts +118 -0
  332. package/src/rules/imports/aliased.ts +2 -2
  333. package/src/rules/imports/cycles.ts +4 -4
  334. package/src/rules/imports/fences.ts +4 -4
  335. package/src/rules/imports/resolvable.ts +3 -3
  336. package/src/rules/manifests-sorted.ts +2 -2
  337. package/src/rules/max-lines.ts +1 -1
  338. package/src/rules/suppressions/biome/configs.ts +1 -1
  339. package/src/rules/suppressions/biome/declarations.ts +1 -1
  340. package/src/rules/suppressions/biome/resolve.ts +2 -2
  341. package/src/rules/suppressions/biome-overrides.ts +4 -4
  342. package/src/rules/suppressions/directives.ts +1 -1
  343. package/src/rules/suppressions/no-double-cast.ts +2 -2
  344. package/src/rules/suppressions/no-inline.ts +2 -2
  345. package/src/rules/suppressions/stylesheet-comments.ts +1 -1
  346. package/src/rules/syntax.ts +1 -1
  347. package/src/rules/test-names/colocated.ts +34 -0
  348. package/src/rules/test-names/follow.ts +78 -0
  349. package/src/rules/test-names/usesDom.ts +22 -0
  350. package/src/vitest.ts +14 -11
@@ -1,6 +1,6 @@
1
1
  import { Effect, Schema } from "effect";
2
2
  import ignore from "ignore";
3
- import { defineRule } from "../rule.js";
3
+ import { defineRule } from "#rule.ts";
4
4
  const DEFAULT_TEST_FILES = ["*.test.*", "*.spec.*", "test/", "tests/", "__tests__/"];
5
5
  const DECLARATION = /\.d\.[cm]?ts$/u;
6
6
  const Limit = Schema.Int.check(Schema.isGreaterThan(0));
@@ -1 +1 @@
1
- {"version":3,"file":"max-lines.js","sourceRoot":"","sources":["../../src/rules/max-lines.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAiC,MAAM,YAAY,CAAC;AAEvE,MAAM,kBAAkB,GAAsB,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;AACxG,MAAM,WAAW,GAAG,gBAAgB,CAAC;AAErC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;AAExD,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC;IACrC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IACtE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IACpE,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC;CAC9G,CAAC,CAAC;AAEH,MAAM,SAAS,GAAG,CAAC,IAAgB,EAAE,KAAa,EAAsB,EAAE,CACzE,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK;IACzB,CAAC,CAAC,EAAE;IACJ,CAAC,CAAC;QACA;YACC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK;YAChC,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,sBAAsB,KAAK,cAAc;YACtE,SAAS,EAAE,KAAK;SAChB;KACD,CAAC;AAEL,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAAC;IAClC,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE;QAC/B,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;QACnD,OAAO,OAAO;aACZ,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC9C,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAChG,CAAC;IACD,WAAW,EAAE,2GAA2G;IACxH,EAAE,EAAE,qBAAqB;IACzB,OAAO,EAAE,MAAM,CAAC,kBAAkB,CAAC,eAAe,EAAE,EAAE,YAAY,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE,CAAC;CACnH,CAAC,CAAC"}
1
+ {"version":3,"file":"max-lines.js","sourceRoot":"","sources":["../../src/rules/max-lines.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAiC,MAAM,UAAU,CAAC;AAErE,MAAM,kBAAkB,GAAsB,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;AACxG,MAAM,WAAW,GAAG,gBAAgB,CAAC;AAErC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;AAExD,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC;IACrC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IACtE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IACpE,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC;CAC9G,CAAC,CAAC;AAEH,MAAM,SAAS,GAAG,CAAC,IAAgB,EAAE,KAAa,EAAsB,EAAE,CACzE,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK;IACzB,CAAC,CAAC,EAAE;IACJ,CAAC,CAAC;QACA;YACC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK;YAChC,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,sBAAsB,KAAK,cAAc;YACtE,SAAS,EAAE,KAAK;SAChB;KACD,CAAC;AAEL,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAAC;IAClC,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE;QAC/B,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;QACnD,OAAO,OAAO;aACZ,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC9C,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAChG,CAAC;IACD,WAAW,EAAE,2GAA2G;IACxH,EAAE,EAAE,qBAAqB;IACzB,OAAO,EAAE,MAAM,CAAC,kBAAkB,CAAC,eAAe,EAAE,EAAE,YAAY,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE,CAAC;CACnH,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { Finding, RuleInputs } from "../../../rule.ts";
1
+ import type { Finding, RuleInputs } from "#rule.ts";
2
2
  import { type Declaration } from "./declarations.ts";
3
3
  import { type Json } from "./json.ts";
4
4
  export interface Preset {
@@ -1 +1 @@
1
- {"version":3,"file":"configs.d.ts","sourceRoot":"","sources":["../../../../src/rules/suppressions/biome/configs.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,KAAK,WAAW,EAAsC,MAAM,mBAAmB,CAAC;AACzF,OAAO,EAAW,KAAK,IAAI,EAA2C,MAAM,WAAW,CAAC;AAGxF,MAAM,WAAW,MAAM;IACtB,QAAQ,CAAC,QAAQ,EAAE,SAAS,WAAW,EAAE,CAAC;IAC1C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,KAAK;IACrB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC;AAED,MAAM,WAAW,KAAK;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,SAAS,KAAK,EAAE,CAAC;CAClC;AA8ED,MAAM,WAAW,YAAY;IAC5B,QAAQ,CAAC,MAAM,EAAE,SAAS,KAAK,EAAE,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAC;IACtC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,YAAY,GAAU,qBAAqB,UAAU,KAAG,OAAO,CAAC,YAAY,CAYxF,CAAC"}
1
+ {"version":3,"file":"configs.d.ts","sourceRoot":"","sources":["../../../../src/rules/suppressions/biome/configs.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,EAAE,KAAK,WAAW,EAAsC,MAAM,mBAAmB,CAAC;AACzF,OAAO,EAAW,KAAK,IAAI,EAA2C,MAAM,WAAW,CAAC;AAGxF,MAAM,WAAW,MAAM;IACtB,QAAQ,CAAC,QAAQ,EAAE,SAAS,WAAW,EAAE,CAAC;IAC1C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,KAAK;IACrB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC;AAED,MAAM,WAAW,KAAK;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,SAAS,KAAK,EAAE,CAAC;CAClC;AA8ED,MAAM,WAAW,YAAY;IAC5B,QAAQ,CAAC,MAAM,EAAE,SAAS,KAAK,EAAE,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAC;IACtC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,YAAY,GAAU,qBAAqB,UAAU,KAAG,OAAO,CAAC,YAAY,CAYxF,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { Schema } from "effect";
2
- import { type Decoded } from "../../../decoded.ts";
2
+ import { type Decoded } from "#decoded.ts";
3
3
  export declare const Declaration: Schema.Struct<{
4
4
  readonly includes: Schema.NonEmptyArray<Schema.NonEmptyString>;
5
5
  readonly reason: Schema.String;
@@ -1 +1 @@
1
- {"version":3,"file":"declarations.d.ts","sourceRoot":"","sources":["../../../../src/rules/suppressions/biome/declarations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,KAAK,OAAO,EAAc,MAAM,qBAAqB,CAAC;AAE/D,eAAO,MAAM,WAAW;;;;EAItB,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC,IAAI,CAAC;AAElD,eAAO,MAAM,mBAAmB,sBAAsB,CAAC;AAMvD,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,GAAG,SAAS,KAAG,OAAO,CAAC,OAAO,CAAC,SAAS,WAAW,EAAE,CAAC,CACD,CAAC;AAEhG,MAAM,WAAW,MAAM;IACtB,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACtB;AAKD,eAAO,MAAM,OAAO,GAAI,aAAa,MAAM,EAAE,WAAW,MAAM,KAAG,OAC0B,CAAC;AAE5F,eAAO,MAAM,MAAM,GAAI,MAAM,MAAM,EAAE,MAAM,MAAM,KAAG,MAGnD,CAAC;AAEF,eAAO,MAAM,SAAS,GAAI,UAAU,SAAS,MAAM,EAAE,KAAG,MAAwD,CAAC"}
1
+ {"version":3,"file":"declarations.d.ts","sourceRoot":"","sources":["../../../../src/rules/suppressions/biome/declarations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,KAAK,OAAO,EAAc,MAAM,aAAa,CAAC;AAEvD,eAAO,MAAM,WAAW;;;;EAItB,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC,IAAI,CAAC;AAElD,eAAO,MAAM,mBAAmB,sBAAsB,CAAC;AAMvD,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,GAAG,SAAS,KAAG,OAAO,CAAC,OAAO,CAAC,SAAS,WAAW,EAAE,CAAC,CACD,CAAC;AAEhG,MAAM,WAAW,MAAM;IACtB,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACtB;AAKD,eAAO,MAAM,OAAO,GAAI,aAAa,MAAM,EAAE,WAAW,MAAM,KAAG,OAC0B,CAAC;AAE5F,eAAO,MAAM,MAAM,GAAI,MAAM,MAAM,EAAE,MAAM,MAAM,KAAG,MAGnD,CAAC;AAEF,eAAO,MAAM,SAAS,GAAI,UAAU,SAAS,MAAM,EAAE,KAAG,MAAwD,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { Schema } from "effect";
2
- import { decodeWith } from "../../../decoded.js";
2
+ import { decodeWith } from "#decoded.ts";
3
3
  export const Declaration = Schema.Struct({
4
4
  includes: Schema.NonEmptyArray(Schema.NonEmptyString),
5
5
  reason: Schema.String.check(Schema.isPattern(/\S/u, { expected: "a reason that says why the scope needs the rule weakened" })),
@@ -1 +1 @@
1
- {"version":3,"file":"declarations.js","sourceRoot":"","sources":["../../../../src/rules/suppressions/biome/declarations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAgB,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAE/D,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC;IACxC,QAAQ,EAAE,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,cAAc,CAAC;IACrD,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,0DAA0D,EAAE,CAAC,CAAC;IAC9H,IAAI,EAAE,MAAM,CAAC,cAAc;CAC3B,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,mBAAmB,GAAG,mBAAmB,CAAC;AAEvD,MAAM,OAAO,GAAG,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE;IAC3F,YAAY,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE;CAC1D,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAwB,EAA4C,EAAE,CACnG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AAOhG,MAAM,SAAS,GAAG,CAAC,IAAuB,EAAE,KAAwB,EAAW,EAAE,CAChF,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AAE1F,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,WAAmB,EAAE,SAAiB,EAAW,EAAE,CAC1E,WAAW,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;AAE5F,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,IAAY,EAAU,EAAE;IAC5D,MAAM,CAAC,EAAE,QAAQ,GAAG,EAAE,EAAE,IAAI,GAAG,IAAI,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IACtE,OAAO,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,QAAQ,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC;AAC1D,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,QAA2B,EAAU,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"declarations.js","sourceRoot":"","sources":["../../../../src/rules/suppressions/biome/declarations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAgB,UAAU,EAAE,MAAM,aAAa,CAAC;AAEvD,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC;IACxC,QAAQ,EAAE,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,cAAc,CAAC;IACrD,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,0DAA0D,EAAE,CAAC,CAAC;IAC9H,IAAI,EAAE,MAAM,CAAC,cAAc;CAC3B,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,mBAAmB,GAAG,mBAAmB,CAAC;AAEvD,MAAM,OAAO,GAAG,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE;IAC3F,YAAY,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE;CAC1D,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAwB,EAA4C,EAAE,CACnG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AAOhG,MAAM,SAAS,GAAG,CAAC,IAAuB,EAAE,KAAwB,EAAW,EAAE,CAChF,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AAE1F,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,WAAmB,EAAE,SAAiB,EAAW,EAAE,CAC1E,WAAW,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;AAE5F,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,IAAY,EAAU,EAAE;IAC5D,MAAM,CAAC,EAAE,QAAQ,GAAG,EAAE,EAAE,IAAI,GAAG,IAAI,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IACtE,OAAO,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,QAAQ,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC;AAC1D,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,QAA2B,EAAU,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC"}
@@ -1,3 +1,3 @@
1
- import type { RuleInputs } from "../../../rule.ts";
1
+ import type { RuleInputs } from "#rule.ts";
2
2
  export declare const resolvePackage: (readText: RuleInputs["readText"], specifier: string) => Promise<string | undefined>;
3
3
  //# sourceMappingURL=resolve.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../../../src/rules/suppressions/biome/resolve.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAsEnD,eAAO,MAAM,cAAc,GAAU,UAAU,UAAU,CAAC,UAAU,CAAC,EAAE,WAAW,MAAM,KAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAYpH,CAAC"}
1
+ {"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../../../src/rules/suppressions/biome/resolve.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAsE3C,eAAO,MAAM,cAAc,GAAU,UAAU,UAAU,CAAC,UAAU,CAAC,EAAE,WAAW,MAAM,KAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAYpH,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { posix } from "node:path";
2
2
  import { Schema } from "effect";
3
- import { decodeWith } from "../../../decoded.js";
3
+ import { decodeWith } from "#decoded.ts";
4
4
  const Manifest = Schema.Struct({
5
5
  exports: Schema.optionalKey(Schema.Unknown),
6
6
  main: Schema.optionalKey(Schema.String),
@@ -1 +1 @@
1
- {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../../../src/rules/suppressions/biome/resolve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGjD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC;IAC3C,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;IACvC,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;CACvC,CAAC,CAAC;AAIH,MAAM,cAAc,GAAG,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC;AAElF,MAAM,UAAU,GAAwB,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;AAEtE,MAAM,SAAS,GAAG,oCAAoC,CAAC;AAEvD,MAAM,QAAQ,GAAG,CAAC,KAAc,EAA8C,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAEtJ,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAE,IAAwB,EAAsB,EAAE;IACjF,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACjE,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAa,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;IAClG,CAAC;IACD,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACtG,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAClG,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,KAAa,EAAU,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;AAEpI,MAAM,aAAa,GAAG,CAAC,OAA0C,EAAE,GAAW,EAAsB,EAAE;IACrG,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;SAClC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;SACxD,IAAI,CAAC,aAAa,CAAC;SACnB,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE;QACnB,MAAM,CAAC,MAAM,GAAG,EAAE,EAAE,MAAM,GAAG,EAAE,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACxD,OAAO,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,MAAM,IAAI,SAAS,CAAC,MAAM,CAAC;IAC3G,CAAC,CAAC,CAAC;IACJ,MAAM,CAAC,MAAM,GAAG,EAAE,EAAE,MAAM,GAAG,EAAE,CAAC,GAAG,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IAC7D,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;AAC7H,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,OAAgB,EAAE,OAAe,EAAsB,EAAE;IAC1E,MAAM,GAAG,GAAG,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;IAClD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACxB,OAAO,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;AACxI,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,SAAiB,EAAE,MAA0B,EAAsB,EAAE,CACvF,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAE/E,MAAM,UAAU,GAAG,KAAK,EAAE,QAAgC,EAAE,IAAY,EAAiC,EAAE;IAC1G,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;IAClC,MAAM,OAAO,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,UAAU,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;IACxF,OAAO,OAAO,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AAC9D,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,SAAiB,EAAE,QAAkB,EAAE,OAAe,EAAsB,EAAE;IACrG,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACpC,OAAO,SAAS,CAAC,SAAS,EAAE,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,OAAO,KAAK,EAAE,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACnD,OAAO,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AACpE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,QAAgC,EAAE,SAAiB,EAA+B,EAAE;IACxH,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,GAAG,EAAE,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IAC/D,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IACvD,IAAI,GAAG,EAAE,IAAI,KAAK,IAAI,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;QACvE,OAAO,SAAS,CAAC,EAAE,EAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IACtD,CAAC;IACD,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC;IACnF,OAAO,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC1F,CAAC,CAAC"}
1
+ {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../../../src/rules/suppressions/biome/resolve.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export declare const biomeOverrides: import("../../rule.ts").Rule<"suppressions/biome-overrides", {
1
+ export declare const biomeOverrides: import("#rule.ts").Rule<"suppressions/biome-overrides", {
2
2
  readonly declared?: readonly {
3
3
  readonly includes: readonly [string, ...string[]];
4
4
  readonly reason: string;
@@ -1,8 +1,8 @@
1
1
  import { Effect, Schema } from "effect";
2
- import { defineRule } from "../../rule.js";
3
- import { biomeConfigs } from "./biome/configs.js";
4
- import { Declaration, matches, scoped, scopeText } from "./biome/declarations.js";
5
- import { weakeningsOf } from "./biome/weakenings.js";
2
+ import { defineRule } from "#rule.ts";
3
+ import { biomeConfigs } from "#rules/suppressions/biome/configs.ts";
4
+ import { Declaration, matches, scoped, scopeText } from "#rules/suppressions/biome/declarations.ts";
5
+ import { weakeningsOf } from "#rules/suppressions/biome/weakenings.ts";
6
6
  const BiomeOverridesOptions = Schema.Struct({
7
7
  declared: Schema.Array(Declaration).pipe(Schema.withDecodingDefaultKey(Effect.succeed([]))),
8
8
  });
@@ -1 +1 @@
1
- {"version":3,"file":"biome-overrides.js","sourceRoot":"","sources":["../../../src/rules/suppressions/biome-overrides.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"biome-overrides.js","sourceRoot":"","sources":["../../../src/rules/suppressions/biome-overrides.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { SourceComment } from "../comments/scan.ts";
1
+ import type { SourceComment } from "#rules/comments/scan.ts";
2
2
  export declare const SUPPRESSIONS: readonly RegExp[];
3
3
  export declare const suppressionIn: (comment: SourceComment) => string | undefined;
4
4
  //# sourceMappingURL=directives.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"directives.d.ts","sourceRoot":"","sources":["../../../src/rules/suppressions/directives.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,eAAO,MAAM,YAAY,EAAE,SAAS,MAAM,EASzC,CAAC;AAYF,eAAO,MAAM,aAAa,GAAI,SAAS,aAAa,KAAG,MAAM,GAAG,SACoC,CAAC"}
1
+ {"version":3,"file":"directives.d.ts","sourceRoot":"","sources":["../../../src/rules/suppressions/directives.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE7D,eAAO,MAAM,YAAY,EAAE,SAAS,MAAM,EASzC,CAAC;AAYF,eAAO,MAAM,aAAa,GAAI,SAAS,aAAa,KAAG,MAAM,GAAG,SACoC,CAAC"}
@@ -1,2 +1,2 @@
1
- export declare const noDoubleCast: import("../../rule.ts").Rule<"suppressions/no-double-cast", undefined>;
1
+ export declare const noDoubleCast: import("#rule.ts").Rule<"suppressions/no-double-cast", undefined>;
2
2
  //# sourceMappingURL=no-double-cast.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"no-double-cast.d.ts","sourceRoot":"","sources":["../../../src/rules/suppressions/no-double-cast.ts"],"names":[],"mappings":"AAwCA,eAAO,MAAM,YAAY,wEAMvB,CAAC"}
1
+ {"version":3,"file":"no-double-cast.d.ts","sourceRoot":"","sources":["../../../src/rules/suppressions/no-double-cast.ts"],"names":[],"mappings":"AAwCA,eAAO,MAAM,YAAY,mEAMvB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import ts from "typescript";
2
- import { defineRule } from "../../rule.js";
3
- import { parse } from "../syntax.js";
2
+ import { defineRule } from "#rule.ts";
3
+ import { parse } from "#rules/syntax.ts";
4
4
  const BRIDGES = new Map([
5
5
  [ts.SyntaxKind.UnknownKeyword, "unknown"],
6
6
  [ts.SyntaxKind.AnyKeyword, "any"],
@@ -1 +1 @@
1
- {"version":3,"file":"no-double-cast.js","sourceRoot":"","sources":["../../../src/rules/suppressions/no-double-cast.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAiC,MAAM,eAAe,CAAC;AAC1E,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAErC,MAAM,OAAO,GAAuC,IAAI,GAAG,CAAC;IAC3D,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,EAAE,SAAS,CAAC;IACzC,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC;IACjC,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC;CACrC,CAAC,CAAC;AAIH,MAAM,WAAW,GAAG,CAAC,IAAa,EAAqB,EAAE,CAAC,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;AAExH,MAAM,SAAS,GAAG,CAAC,IAAmB,EAAiB,EAAE,CAAC,CAAC,EAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnI,MAAM,QAAQ,GAAG,CAAC,IAAe,EAAsB,EAAE;IACxD,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACzC,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACtE,CAAC,CAAC;AAEF,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,MAAqB,EAAsB,EAAE;IAC3E,MAAM,QAAQ,GAAc,EAAE,CAAC;IAC/B,MAAM,KAAK,GAAG,CAAC,IAAa,EAAQ,EAAE;QACrC,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9D,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,IAAI,GAAG,MAAM,CAAC,6BAA6B,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;YAClF,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,kBAAkB,MAAM,4CAA4C,EAAE,CAAC,CAAC;QACpH,CAAC;QACD,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC9B,CAAC,CAAC;IACF,KAAK,CAAC,MAAM,CAAC,CAAC;IACd,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,IAAgB,EAAsB,EAAE;IAC5D,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;IAC3B,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAC/D,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,UAAU,CAAC;IACtC,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC;IACpD,WAAW,EACV,qKAAqK;IACtK,EAAE,EAAE,6BAA6B;IACjC,WAAW,EAAE,KAAK;CAClB,CAAC,CAAC"}
1
+ {"version":3,"file":"no-double-cast.js","sourceRoot":"","sources":["../../../src/rules/suppressions/no-double-cast.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAiC,MAAM,UAAU,CAAC;AACrE,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,MAAM,OAAO,GAAuC,IAAI,GAAG,CAAC;IAC3D,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,EAAE,SAAS,CAAC;IACzC,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC;IACjC,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC;CACrC,CAAC,CAAC;AAIH,MAAM,WAAW,GAAG,CAAC,IAAa,EAAqB,EAAE,CAAC,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;AAExH,MAAM,SAAS,GAAG,CAAC,IAAmB,EAAiB,EAAE,CAAC,CAAC,EAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AAEnI,MAAM,QAAQ,GAAG,CAAC,IAAe,EAAsB,EAAE;IACxD,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACzC,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACtE,CAAC,CAAC;AAEF,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,MAAqB,EAAsB,EAAE;IAC3E,MAAM,QAAQ,GAAc,EAAE,CAAC;IAC/B,MAAM,KAAK,GAAG,CAAC,IAAa,EAAQ,EAAE;QACrC,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9D,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,IAAI,GAAG,MAAM,CAAC,6BAA6B,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;YAClF,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,kBAAkB,MAAM,4CAA4C,EAAE,CAAC,CAAC;QACpH,CAAC;QACD,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC9B,CAAC,CAAC;IACF,KAAK,CAAC,MAAM,CAAC,CAAC;IACd,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,IAAgB,EAAsB,EAAE;IAC5D,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;IAC3B,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAC/D,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,UAAU,CAAC;IACtC,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC;IACpD,WAAW,EACV,qKAAqK;IACtK,EAAE,EAAE,6BAA6B;IACjC,WAAW,EAAE,KAAK;CAClB,CAAC,CAAC"}
@@ -1,2 +1,2 @@
1
- export declare const noInline: import("../../rule.ts").Rule<"suppressions/no-inline", undefined>;
1
+ export declare const noInline: import("#rule.ts").Rule<"suppressions/no-inline", undefined>;
2
2
  //# sourceMappingURL=no-inline.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"no-inline.d.ts","sourceRoot":"","sources":["../../../src/rules/suppressions/no-inline.ts"],"names":[],"mappings":"AA6BA,eAAO,MAAM,QAAQ,mEASnB,CAAC"}
1
+ {"version":3,"file":"no-inline.d.ts","sourceRoot":"","sources":["../../../src/rules/suppressions/no-inline.ts"],"names":[],"mappings":"AA6BA,eAAO,MAAM,QAAQ,8DASnB,CAAC"}
@@ -1,5 +1,5 @@
1
- import { defineRule } from "../../rule.js";
2
- import { scanComments } from "../comments/scan.js";
1
+ import { defineRule } from "#rule.ts";
2
+ import { scanComments } from "#rules/comments/scan.ts";
3
3
  import { suppressionIn } from "./directives.js";
4
4
  import { STYLESHEET, stylesheetComments } from "./stylesheet-comments.js";
5
5
  const TYPE_TEST = /(?:^|[/.])typecheck\.test\.[cm]?[jt]sx?$/u;
@@ -1 +1 @@
1
- {"version":3,"file":"no-inline.js","sourceRoot":"","sources":["../../../src/rules/suppressions/no-inline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAiC,MAAM,eAAe,CAAC;AAC1E,OAAO,EAAsB,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE1E,MAAM,SAAS,GAAG,2CAA2C,CAAC;AAE9D,MAAM,mBAAmB,GAAG,kBAAkB,CAAC;AAM/C,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,QAAkC,EAAmB,EAAE,CACrF,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;IAC5B,MAAM,SAAS,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IACzC,OAAO,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,wBAAwB,SAAS,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;AAC1I,CAAC,CAAC,CAAC;AAEJ,MAAM,eAAe,GAAG,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAc,EAA4B,EAAE;IACpG,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3D,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1I,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACnG,CAAC,CAAC;AAEF,SAAS,OAAO,CAAC,IAAU;IAC1B,OAAO,IAAI,CAAC,OAAO,KAAK,mBAAmB,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAAC;IAClC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CACvB,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CACvH,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CACxB;IACF,WAAW,EACV,wTAAwT;IACzT,EAAE,EAAE,wBAAwB;IAC5B,WAAW,EAAE,KAAK;CAClB,CAAC,CAAC"}
1
+ {"version":3,"file":"no-inline.js","sourceRoot":"","sources":["../../../src/rules/suppressions/no-inline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAiC,MAAM,UAAU,CAAC;AACrE,OAAO,EAAsB,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE1E,MAAM,SAAS,GAAG,2CAA2C,CAAC;AAE9D,MAAM,mBAAmB,GAAG,kBAAkB,CAAC;AAM/C,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,QAAkC,EAAmB,EAAE,CACrF,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;IAC5B,MAAM,SAAS,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IACzC,OAAO,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,wBAAwB,SAAS,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;AAC1I,CAAC,CAAC,CAAC;AAEJ,MAAM,eAAe,GAAG,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAc,EAA4B,EAAE;IACpG,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3D,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1I,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACnG,CAAC,CAAC;AAEF,SAAS,OAAO,CAAC,IAAU;IAC1B,OAAO,IAAI,CAAC,OAAO,KAAK,mBAAmB,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAAC;IAClC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CACvB,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CACvH,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CACxB;IACF,WAAW,EACV,wTAAwT;IACzT,EAAE,EAAE,wBAAwB;IAC5B,WAAW,EAAE,KAAK;CAClB,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
- import { type SourceComment } from "../comments/scan.ts";
1
+ import { type SourceComment } from "#rules/comments/scan.ts";
2
2
  export declare const STYLESHEET: RegExp;
3
3
  export declare const stylesheetComments: (path: string, text: string) => readonly SourceComment[];
4
4
  //# sourceMappingURL=stylesheet-comments.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"stylesheet-comments.d.ts","sourceRoot":"","sources":["../../../src/rules/suppressions/stylesheet-comments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEjE,eAAO,MAAM,UAAU,QAA0B,CAAC;AAuBlD,eAAO,MAAM,kBAAkB,GAAI,MAAM,MAAM,EAAE,MAAM,MAAM,KAAG,SAAS,aAAa,EAC4C,CAAC"}
1
+ {"version":3,"file":"stylesheet-comments.d.ts","sourceRoot":"","sources":["../../../src/rules/suppressions/stylesheet-comments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,KAAK,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAErE,eAAO,MAAM,UAAU,QAA0B,CAAC;AAuBlD,eAAO,MAAM,kBAAkB,GAAI,MAAM,MAAM,EAAE,MAAM,MAAM,KAAG,SAAS,aAAa,EAC4C,CAAC"}
@@ -1,4 +1,4 @@
1
- import { bodyOf } from "../comments/scan.js";
1
+ import { bodyOf } from "#rules/comments/scan.ts";
2
2
  export const STYLESHEET = /\.(?:css|scss|less)$/u;
3
3
  const LINE_COMMENTS = /\.(?:scss|less)$/u;
4
4
  const TOKENS = String.raw `"(?:[^"\\\n]|\\.)*"?|'(?:[^'\\\n]|\\.)*'?|url\([^)]*\)?|\/\*[\s\S]*?(?:\*\/|$)`;
@@ -1 +1 @@
1
- {"version":3,"file":"stylesheet-comments.js","sourceRoot":"","sources":["../../../src/rules/suppressions/stylesheet-comments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAsB,MAAM,qBAAqB,CAAC;AAEjE,MAAM,CAAC,MAAM,UAAU,GAAG,uBAAuB,CAAC;AAElD,MAAM,aAAa,GAAG,mBAAmB,CAAC;AAE1C,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAA,gFAAgF,CAAC;AAE1G,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,IAAI,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,gBAAgB,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAE5H,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,MAAc,EAAU,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;AAElG,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,KAAa,EAAE,MAAc,EAAiB,EAAE;IAChF,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;IACvD,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IACzD,OAAO;QACN,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QACpF,OAAO,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAC5C,IAAI;QACJ,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC;QAC1B,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE;QACpD,IAAI,EAAE,KAAK;KACX,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAE,IAAY,EAA4B,EAAE,CAC1F,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"stylesheet-comments.js","sourceRoot":"","sources":["../../../src/rules/suppressions/stylesheet-comments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAsB,MAAM,yBAAyB,CAAC;AAErE,MAAM,CAAC,MAAM,UAAU,GAAG,uBAAuB,CAAC;AAElD,MAAM,aAAa,GAAG,mBAAmB,CAAC;AAE1C,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAA,gFAAgF,CAAC;AAE1G,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,IAAI,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,gBAAgB,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAE5H,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,MAAc,EAAU,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;AAElG,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,KAAa,EAAE,MAAc,EAAiB,EAAE;IAChF,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;IACvD,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IACzD,OAAO;QACN,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QACpF,OAAO,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAC5C,IAAI;QACJ,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC;QAC1B,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE;QACpD,IAAI,EAAE,KAAK;KACX,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAE,IAAY,EAA4B,EAAE,CAC1F,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
1
  import ts from "typescript";
2
- import type { SourceFile } from "../rule.ts";
2
+ import type { SourceFile } from "#rule.ts";
3
3
  export declare const parse: (file: SourceFile) => ts.SourceFile | undefined;
4
4
  //# sourceMappingURL=syntax.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"syntax.d.ts","sourceRoot":"","sources":["../../src/rules/syntax.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAS7C,eAAO,MAAM,KAAK,GAAI,MAAM,UAAU,KAAG,EAAE,CAAC,UAAU,GAAG,SAGxD,CAAC"}
1
+ {"version":3,"file":"syntax.d.ts","sourceRoot":"","sources":["../../src/rules/syntax.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAS3C,eAAO,MAAM,KAAK,GAAI,MAAM,UAAU,KAAG,EAAE,CAAC,UAAU,GAAG,SAGxD,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare const testsColocated: import("#rule.ts").Rule<"tests/colocated", {
2
+ readonly suites?: readonly string[];
3
+ }>;
4
+ //# sourceMappingURL=colocated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"colocated.d.ts","sourceRoot":"","sources":["../../../src/rules/test-names/colocated.ts"],"names":[],"mappings":"AAyBA,eAAO,MAAM,cAAc;;EAQzB,CAAC"}
@@ -0,0 +1,31 @@
1
+ import { Effect, Schema } from "effect";
2
+ import ignore from "ignore";
3
+ import { testName } from "#naming/testName.ts";
4
+ import { defineRule } from "#rule.ts";
5
+ const MIRROR_FOLDERS = new Set(["__tests__", "spec", "test", "tests"]);
6
+ const TestsColocatedOptions = Schema.Struct({
7
+ suites: Schema.Array(Schema.String).pipe(Schema.withDecodingDefaultKey(Effect.succeed([]))),
8
+ });
9
+ function findingOf(path) {
10
+ const name = testName(path);
11
+ const mirror = name?.folder.split("/").find((folder) => MIRROR_FOLDERS.has(folder));
12
+ if (name === undefined || mirror === undefined) {
13
+ return [];
14
+ }
15
+ return [
16
+ {
17
+ file: path,
18
+ message: `Sits in the test folder "${mirror}/". A test sits beside the file it covers, as ${name.stem}.test${name.extension} beside ${name.stem}.ts, or as a <behaviour>.spec${name.extension} in the folder it covers. A folder of tests that cover several packages is a suite in the "suites" option.`,
19
+ },
20
+ ];
21
+ }
22
+ export const testsColocated = defineRule({
23
+ check: ({ files, options }) => {
24
+ const suites = ignore().add([...options.suites]);
25
+ return files.filter((path) => !suites.ignores(path)).flatMap(findingOf);
26
+ },
27
+ description: "A test sits beside the code it covers, not in a test, tests, __tests__ or spec folder, unless that folder is a declared suite.",
28
+ id: "tests/colocated",
29
+ options: Schema.toStandardSchemaV1(TestsColocatedOptions, { parseOptions: { errors: "all", onExcessProperty: "error" } }),
30
+ });
31
+ //# sourceMappingURL=colocated.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"colocated.js","sourceRoot":"","sources":["../../../src/rules/test-names/colocated.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAgB,MAAM,UAAU,CAAC;AAEpD,MAAM,cAAc,GAAwB,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAE5F,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC;IAC3C,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;CAC3F,CAAC,CAAC;AAEH,SAAS,SAAS,CAAC,IAAY;IAC9B,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC5B,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IACpF,IAAI,IAAI,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QAChD,OAAO,EAAE,CAAC;IACX,CAAC;IACD,OAAO;QACN;YACC,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,4BAA4B,MAAM,iDAAiD,IAAI,CAAC,IAAI,QAAQ,IAAI,CAAC,SAAS,WAAW,IAAI,CAAC,IAAI,gCAAgC,IAAI,CAAC,SAAS,4GAA4G;SACzS;KACD,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,UAAU,CAAC;IACxC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;QAC7B,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QACjD,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACzE,CAAC;IACD,WAAW,EAAE,gIAAgI;IAC7I,EAAE,EAAE,iBAAiB;IACrB,OAAO,EAAE,MAAM,CAAC,kBAAkB,CAAC,qBAAqB,EAAE,EAAE,YAAY,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE,CAAC;CACzH,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare const testsFollow: import("#rule.ts").Rule<"tests/follow", {
2
+ readonly suites?: readonly string[];
3
+ }>;
4
+ //# sourceMappingURL=follow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"follow.d.ts","sourceRoot":"","sources":["../../../src/rules/test-names/follow.ts"],"names":[],"mappings":"AAmEA,eAAO,MAAM,WAAW;;EAUtB,CAAC"}
@@ -0,0 +1,66 @@
1
+ import { posix } from "node:path";
2
+ import { Effect, Schema } from "effect";
3
+ import ignore from "ignore";
4
+ import { ENVIRONMENTS, testName } from "#naming/testName.ts";
5
+ import { CAMEL } from "#naming/words.ts";
6
+ import { defineRule } from "#rule.ts";
7
+ import { usesDom } from "#rules/test-names/usesDom.ts";
8
+ const ENVIRONMENT_NAMES = new Set(ENVIRONMENTS);
9
+ const FIXTURE_SUFFIXES = new Set(["integration", "postgres"]);
10
+ const CODE = /\.[cm]?[jt]sx?$/u;
11
+ const GRAMMAR = "A test file is <file>[.<environment>].test.ts beside its file or <behaviour>[.<environment>].spec.ts in the folder it covers, with at most one environment of dom, slow and typecheck.";
12
+ const TestsFollowOptions = Schema.Struct({
13
+ suites: Schema.Array(Schema.String).pipe(Schema.withDecodingDefaultKey(Effect.succeed([]))),
14
+ });
15
+ function siblingsIn(files) {
16
+ return new Set(files.filter((file) => CODE.test(file) && testName(file) === undefined).map((file) => file.replace(CODE, "")));
17
+ }
18
+ function suffixMessage(file, name) {
19
+ const [first, ...rest] = name.modifiers;
20
+ if (first === undefined || (rest.length === 0 && ENVIRONMENT_NAMES.has(first))) {
21
+ return undefined;
22
+ }
23
+ const fixture = name.modifiers.find((modifier) => FIXTURE_SUFFIXES.has(modifier));
24
+ if (fixture !== undefined) {
25
+ return `".${fixture}" is not a test environment. A test that needs a database or a running app takes it from the app's test fixture and is named like any other test. ${GRAMMAR}`;
26
+ }
27
+ return `"${file}" has the suffixes ".${name.modifiers.join(".")}". ${GRAMMAR} An aspect of a module gets its own file in the module's folder, or a .spec.`;
28
+ }
29
+ function placeMessage(file, name, siblings) {
30
+ const covered = siblings.has(`${name.folder}/${name.stem}`);
31
+ if (name.kind === "test") {
32
+ return covered
33
+ ? undefined
34
+ : `"${file}" follows no file: ${name.stem}.test${name.extension} sits beside ${name.stem}.ts in the same folder. A test that covers the folder as a whole is a <behaviour>.spec${name.extension}, such as checkoutFlow.spec${name.extension}.`;
35
+ }
36
+ if (covered) {
37
+ return `"${file}" shares its name with ${name.stem}.ts. A .spec names a behaviour of its folder, such as checkoutFlow.spec${name.extension}; a test of ${name.stem}.ts is ${name.stem}.test${name.extension}.`;
38
+ }
39
+ return CAMEL.test(name.stem) ? undefined : `"${file}" names its behaviour in camelCase, such as checkoutFlow.spec${name.extension}.`;
40
+ }
41
+ function environmentMessage(file, name, source) {
42
+ if (name.modifiers.includes("dom") || name.modifiers.includes("typecheck") || !usesDom(source)) {
43
+ return undefined;
44
+ }
45
+ return `"${file}" uses the DOM, so it is ${name.stem}.dom.${name.kind}${name.extension} and runs in the dom project.`;
46
+ }
47
+ function findingsOf(source, siblings) {
48
+ const name = testName(source.path);
49
+ if (name === undefined) {
50
+ return [];
51
+ }
52
+ const file = posix.basename(source.path);
53
+ const messages = [suffixMessage(file, name), placeMessage(file, name, siblings), environmentMessage(file, name, source)];
54
+ return messages.flatMap((message) => (message === undefined ? [] : [{ file: source.path, message }]));
55
+ }
56
+ export const testsFollow = defineRule({
57
+ check: ({ files, options, sources }) => {
58
+ const suites = ignore().add([...options.suites]);
59
+ const siblings = siblingsIn(files);
60
+ return sources.filter((source) => !suites.ignores(source.path)).flatMap((source) => findingsOf(source, siblings));
61
+ },
62
+ description: "A .test file follows the file beside it, a .spec names a behaviour of its folder, the only suffix is one environment of dom, slow and typecheck, and a test that uses the DOM is a .dom test.",
63
+ id: "tests/follow",
64
+ options: Schema.toStandardSchemaV1(TestsFollowOptions, { parseOptions: { errors: "all", onExcessProperty: "error" } }),
65
+ });
66
+ //# sourceMappingURL=follow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"follow.js","sourceRoot":"","sources":["../../../src/rules/test-names/follow.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { SourceFile } from "#rule.ts";
2
+ export declare function usesDom(file: SourceFile): boolean;
3
+ //# sourceMappingURL=usesDom.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usesDom.d.ts","sourceRoot":"","sources":["../../../src/rules/test-names/usesDom.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAiB3C,wBAAgB,OAAO,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAGjD"}
@@ -0,0 +1,18 @@
1
+ import ts from "typescript";
2
+ import { parse } from "#rules/syntax.ts";
3
+ const DOM_GLOBALS = new Set(["document", "window"]);
4
+ const TESTING_LIBRARY = "@testing-library/";
5
+ function touchesDom(node) {
6
+ if (ts.isImportDeclaration(node) && ts.isStringLiteral(node.moduleSpecifier)) {
7
+ return node.moduleSpecifier.text.startsWith(TESTING_LIBRARY);
8
+ }
9
+ if (ts.isPropertyAccessExpression(node) && ts.isIdentifier(node.expression) && DOM_GLOBALS.has(node.expression.text)) {
10
+ return true;
11
+ }
12
+ return ts.forEachChild(node, touchesDom) ?? false;
13
+ }
14
+ export function usesDom(file) {
15
+ const source = parse(file);
16
+ return source === undefined ? false : touchesDom(source);
17
+ }
18
+ //# sourceMappingURL=usesDom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usesDom.js","sourceRoot":"","sources":["../../../src/rules/test-names/usesDom.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,MAAM,WAAW,GAAwB,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;AAEzE,MAAM,eAAe,GAAG,mBAAmB,CAAC;AAE5C,SAAS,UAAU,CAAC,IAAa;IAChC,IAAI,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;QAC9E,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;IAC9D,CAAC;IACD,IAAI,EAAE,CAAC,0BAA0B,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACtH,OAAO,IAAI,CAAC;IACb,CAAC;IACD,OAAO,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,KAAK,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,IAAgB;IACvC,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;IAC3B,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AAC1D,CAAC"}
package/dist/vitest.d.ts CHANGED
@@ -1,3 +1,5 @@
1
1
  import { type TestUserConfig } from "vitest/config";
2
- export declare function testProjects(): TestUserConfig;
2
+ export declare function testProjects({ exclude }?: {
3
+ readonly exclude?: readonly string[];
4
+ }): TestUserConfig;
3
5
  //# sourceMappingURL=vitest.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"vitest.d.ts","sourceRoot":"","sources":["../src/vitest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAYpE,wBAAgB,YAAY,IAAI,cAAc,CAS7C"}
1
+ {"version":3,"file":"vitest.d.ts","sourceRoot":"","sources":["../src/vitest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAepE,wBAAgB,YAAY,CAAC,EAAE,OAAY,EAAE,GAAE;IAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CAAO,GAAG,cAAc,CAS5G"}
package/dist/vitest.js CHANGED
@@ -1,19 +1,19 @@
1
1
  import { defaultExclude } from "vitest/config";
2
- const TEST = "**/*.test.?(c|m)[jt]s?(x)";
3
- const DOM = "**/*.dom.test.?(c|m)[jt]s?(x)";
4
- const SLOW = "**/*.slow.test.?(c|m)[jt]s?(x)";
5
- const TYPECHECK = "**/*.typecheck.test.?(c|m)[jt]s?(x)";
6
- const TYPECHECK_ALONE = "**/typecheck.test.?(c|m)[jt]s?(x)";
7
- function excluding(...patterns) {
8
- return [...defaultExclude, TYPECHECK, TYPECHECK_ALONE, ...patterns];
2
+ const EXTENSION = "?(c|m)[jt]s?(x)";
3
+ const TYPECHECK_ALONE = `**/typecheck.test.${EXTENSION}`;
4
+ function named(environment) {
5
+ return environment === undefined ? `**/*.@(test|spec).${EXTENSION}` : `**/*.${environment}.@(test|spec).${EXTENSION}`;
9
6
  }
10
- export function testProjects() {
7
+ function excluding(exclude, ...patterns) {
8
+ return [...defaultExclude, named("typecheck"), TYPECHECK_ALONE, ...exclude, ...patterns];
9
+ }
10
+ export function testProjects({ exclude = [] } = {}) {
11
11
  return {
12
12
  project: ["unit", "dom"],
13
13
  projects: [
14
- { extends: true, test: { environment: "node", exclude: excluding(DOM, SLOW), include: [TEST], name: "unit" } },
15
- { extends: true, test: { environment: "happy-dom", exclude: excluding(SLOW), include: [DOM], name: "dom" } },
16
- { extends: true, test: { environment: "node", exclude: excluding(), include: [SLOW], name: "slow" } },
14
+ { extends: true, test: { environment: "node", exclude: excluding(exclude, named("dom"), named("slow")), include: [named()], name: "unit" } },
15
+ { extends: true, test: { environment: "happy-dom", exclude: excluding(exclude, named("slow")), include: [named("dom")], name: "dom" } },
16
+ { extends: true, test: { environment: "node", exclude: excluding(exclude), include: [named("slow")], name: "slow" } },
17
17
  ],
18
18
  };
19
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"vitest.js","sourceRoot":"","sources":["../src/vitest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAuB,MAAM,eAAe,CAAC;AAEpE,MAAM,IAAI,GAAG,2BAA2B,CAAC;AACzC,MAAM,GAAG,GAAG,+BAA+B,CAAC;AAC5C,MAAM,IAAI,GAAG,gCAAgC,CAAC;AAC9C,MAAM,SAAS,GAAG,qCAAqC,CAAC;AACxD,MAAM,eAAe,GAAG,mCAAmC,CAAC;AAE5D,SAAS,SAAS,CAAC,GAAG,QAA2B;IAChD,OAAO,CAAC,GAAG,cAAc,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,QAAQ,CAAC,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,YAAY;IAC3B,OAAO;QACN,OAAO,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC;QACxB,QAAQ,EAAE;YACT,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;YAC9G,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;YAC5G,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;SACrG;KACD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"vitest.js","sourceRoot":"","sources":["../src/vitest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAuB,MAAM,eAAe,CAAC;AAGpE,MAAM,SAAS,GAAG,iBAAiB,CAAC;AAEpC,MAAM,eAAe,GAAG,qBAAqB,SAAS,EAAE,CAAC;AAEzD,SAAS,KAAK,CAAC,WAAyB;IACvC,OAAO,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,qBAAqB,SAAS,EAAE,CAAC,CAAC,CAAC,QAAQ,WAAW,iBAAiB,SAAS,EAAE,CAAC;AACvH,CAAC;AAED,SAAS,SAAS,CAAC,OAA0B,EAAE,GAAG,QAA2B;IAC5E,OAAO,CAAC,GAAG,cAAc,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE,eAAe,EAAE,GAAG,OAAO,EAAE,GAAG,QAAQ,CAAC,CAAC;AAC1F,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,EAAE,OAAO,GAAG,EAAE,KAA+C,EAAE;IAC3F,OAAO;QACN,OAAO,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC;QACxB,QAAQ,EAAE;YACT,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;YAC5I,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;YACvI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;SACrH;KACD,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shivaedev/quality",
3
- "version": "0.7.2",
3
+ "version": "0.8.0",
4
4
  "description": "Repository quality gate with typed rules, a baseline of existing debt and a registry of reasoned exceptions",
5
5
  "homepage": "https://github.com/ShivaeDev/platform/tree/main/packages/quality#readme",
6
6
  "bugs": {
@@ -14,6 +14,14 @@
14
14
  "license": "MIT",
15
15
  "sideEffects": false,
16
16
  "type": "module",
17
+ "imports": {
18
+ "#test/*": "./test/*",
19
+ "#*.ts": {
20
+ "source": "./src/*.ts",
21
+ "types": "./dist/*.d.ts",
22
+ "default": "./dist/*.js"
23
+ }
24
+ },
17
25
  "exports": {
18
26
  ".": {
19
27
  "types": "./dist/index.d.ts",
@@ -45,7 +53,7 @@
45
53
  ],
46
54
  "dependencies": {
47
55
  "@biomejs/biome": "2.5.14",
48
- "@shivaedev/types": "0.1.0",
56
+ "@shivaedev/types": "0.1.1",
49
57
  "ignore": "7.0.6",
50
58
  "sort-package-json": "4.0.0",
51
59
  "typescript": "npm:@typescript/typescript6@6.0.2"
@@ -1,4 +1,4 @@
1
- import { groupBy, keyOf, levelOf, type RuleIndex, unusedEntryProblem, type Violation } from "../engine/violation.ts";
1
+ import { groupBy, keyOf, levelOf, type RuleIndex, unusedEntryProblem, type Violation } from "#engine/violation.ts";
2
2
  import type { BaselineEntry } from "./format.ts";
3
3
 
4
4
  export interface Regression {
@@ -1,6 +1,6 @@
1
1
  import { Schema } from "effect";
2
- import { type Decoded, decodeWith } from "../decoded.ts";
3
- import { keyOf } from "../engine/violation.ts";
2
+ import { type Decoded, decodeWith } from "#decoded.ts";
3
+ import { keyOf } from "#engine/violation.ts";
4
4
 
5
5
  const Line = Schema.Struct({
6
6
  count: Schema.Int.check(Schema.isGreaterThan(0)),
@@ -1,6 +1,6 @@
1
1
  import { Schema } from "effect";
2
- import { type Decoded, decodeWith } from "../decoded.ts";
3
- import { groupBy, keyOf, type Violation } from "../engine/violation.ts";
2
+ import { type Decoded, decodeWith } from "#decoded.ts";
3
+ import { groupBy, keyOf, type Violation } from "#engine/violation.ts";
4
4
  import { countOf } from "./compare.ts";
5
5
  import type { BaselineEntry } from "./format.ts";
6
6
 
@@ -1,4 +1,4 @@
1
- import { keyOf } from "../engine/violation.ts";
1
+ import { keyOf } from "#engine/violation.ts";
2
2
  import { type BaselineEntry, byPathAndRule, encodeEntry, linesOf } from "./format.ts";
3
3
 
4
4
  interface Row {
@@ -1,4 +1,4 @@
1
- import { covers, groupBy, keyOf, levelOf, type RuleIndex, type Violation } from "../engine/violation.ts";
1
+ import { covers, groupBy, keyOf, levelOf, type RuleIndex, type Violation } from "#engine/violation.ts";
2
2
  import { countOf } from "./compare.ts";
3
3
  import type { BaselineEntry } from "./format.ts";
4
4