@codefast/cli 0.6.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 (168) hide show
  1. package/README.md +44 -3
  2. package/dist/arrange/analyze.js +2 -0
  3. package/dist/arrange/analyze.js.map +1 -1
  4. package/dist/arrange/cli-schema.js +6 -0
  5. package/dist/arrange/cli-schema.js.map +1 -1
  6. package/dist/arrange/command.js +2 -0
  7. package/dist/arrange/command.js.map +1 -1
  8. package/dist/arrange/domain/analyze-service.js +2 -0
  9. package/dist/arrange/domain/analyze-service.js.map +1 -1
  10. package/dist/arrange/domain/ast/ast-node.js +34 -0
  11. package/dist/arrange/domain/ast/ast-node.js.map +1 -1
  12. package/dist/arrange/domain/ast/collectors-cn.js +8 -0
  13. package/dist/arrange/domain/ast/collectors-cn.js.map +1 -1
  14. package/dist/arrange/domain/ast/collectors-jsx.js +2 -0
  15. package/dist/arrange/domain/ast/collectors-jsx.js.map +1 -1
  16. package/dist/arrange/domain/ast/collectors-tv.js +10 -0
  17. package/dist/arrange/domain/ast/collectors-tv.js.map +1 -1
  18. package/dist/arrange/domain/ast/helpers.js +4 -0
  19. package/dist/arrange/domain/ast/helpers.js.map +1 -1
  20. package/dist/arrange/domain/ast/simplify-targets.js.map +1 -1
  21. package/dist/arrange/domain/ast/targets.js +6 -0
  22. package/dist/arrange/domain/ast/targets.js.map +1 -1
  23. package/dist/arrange/domain/grouping-service.js +14 -0
  24. package/dist/arrange/domain/grouping-service.js.map +1 -1
  25. package/dist/arrange/domain/grouping.js +2 -0
  26. package/dist/arrange/domain/grouping.js.map +1 -1
  27. package/dist/arrange/domain/imports.js +2 -0
  28. package/dist/arrange/domain/imports.js.map +1 -1
  29. package/dist/arrange/domain/source-text-formatters.js +8 -0
  30. package/dist/arrange/domain/source-text-formatters.js.map +1 -1
  31. package/dist/arrange/domain/tailwind-token.js +2 -0
  32. package/dist/arrange/domain/tailwind-token.js.map +1 -1
  33. package/dist/arrange/domain/token-classifier.js +4 -0
  34. package/dist/arrange/domain/token-classifier.js.map +1 -1
  35. package/dist/arrange/output.js +8 -0
  36. package/dist/arrange/output.js.map +1 -1
  37. package/dist/arrange/process-file.js +2 -0
  38. package/dist/arrange/process-file.js.map +1 -1
  39. package/dist/arrange/resolve-target.js +2 -0
  40. package/dist/arrange/resolve-target.js.map +1 -1
  41. package/dist/arrange/scan-target.js +2 -0
  42. package/dist/arrange/scan-target.js.map +1 -1
  43. package/dist/arrange/simplify-process-file.js +2 -0
  44. package/dist/arrange/simplify-process-file.js.map +1 -1
  45. package/dist/arrange/simplify-sync.js +2 -0
  46. package/dist/arrange/simplify-sync.js.map +1 -1
  47. package/dist/arrange/source-parse.js +2 -0
  48. package/dist/arrange/source-parse.js.map +1 -1
  49. package/dist/arrange/suggest.js +2 -0
  50. package/dist/arrange/suggest.js.map +1 -1
  51. package/dist/arrange/sync.js +2 -0
  52. package/dist/arrange/sync.js.map +1 -1
  53. package/dist/arrange/typescript-ast-translator.js +2 -0
  54. package/dist/arrange/typescript-ast-translator.js.map +1 -1
  55. package/dist/arrange/workspace.js +2 -0
  56. package/dist/arrange/workspace.js.map +1 -1
  57. package/dist/audit/cli-schema.js +13 -2
  58. package/dist/audit/cli-schema.js.map +1 -1
  59. package/dist/audit/command.js +44 -4
  60. package/dist/audit/command.js.map +1 -1
  61. package/dist/audit/domain/audit-file.js +2 -2
  62. package/dist/audit/domain/mappings.js +9 -7
  63. package/dist/audit/domain/mappings.js.map +1 -1
  64. package/dist/audit/domain/react-imports.js +92 -0
  65. package/dist/audit/domain/react-imports.js.map +1 -0
  66. package/dist/audit/domain/since-versions.js +86 -0
  67. package/dist/audit/domain/since-versions.js.map +1 -0
  68. package/dist/audit/domain/tokenize.js +5 -3
  69. package/dist/audit/domain/tokenize.js.map +1 -1
  70. package/dist/audit/output.js +44 -3
  71. package/dist/audit/output.js.map +1 -1
  72. package/dist/audit/prepare.js +32 -1
  73. package/dist/audit/prepare.js.map +1 -1
  74. package/dist/audit/run-comments.js +25 -0
  75. package/dist/audit/run-comments.js.map +1 -1
  76. package/dist/audit/run-react.js +56 -0
  77. package/dist/audit/run-react.js.map +1 -0
  78. package/dist/audit/run.js +1 -1
  79. package/dist/cli.js +2 -0
  80. package/dist/cli.js.map +1 -1
  81. package/dist/core/cli/format-error.js +2 -0
  82. package/dist/core/cli/format-error.js.map +1 -1
  83. package/dist/core/cli/result-handle.js +6 -0
  84. package/dist/core/cli/result-handle.js.map +1 -1
  85. package/dist/core/config/loader.js +2 -0
  86. package/dist/core/config/loader.js.map +1 -1
  87. package/dist/core/config/schema.js +19 -0
  88. package/dist/core/config/schema.js.map +1 -1
  89. package/dist/core/config/warnings.js +2 -0
  90. package/dist/core/config/warnings.js.map +1 -1
  91. package/dist/core/config.js +2 -0
  92. package/dist/core/config.js.map +1 -1
  93. package/dist/core/errors.js +2 -0
  94. package/dist/core/errors.js.map +1 -1
  95. package/dist/core/exit-codes.js +4 -0
  96. package/dist/core/exit-codes.js.map +1 -1
  97. package/dist/core/filesystem/node.js +2 -0
  98. package/dist/core/filesystem/node.js.map +1 -1
  99. package/dist/core/logger.js +2 -0
  100. package/dist/core/logger.js.map +1 -1
  101. package/dist/core/result.js +4 -0
  102. package/dist/core/result.js.map +1 -1
  103. package/dist/core/schema-parse.js +2 -0
  104. package/dist/core/schema-parse.js.map +1 -1
  105. package/dist/core/source-text-edit.js +8 -0
  106. package/dist/core/source-text-edit.js.map +1 -1
  107. package/dist/core/verbose-diagnostics.js +2 -0
  108. package/dist/core/verbose-diagnostics.js.map +1 -1
  109. package/dist/core/workspace/package-version.js +25 -0
  110. package/dist/core/workspace/package-version.js.map +1 -0
  111. package/dist/core/workspace/resolver.js +2 -0
  112. package/dist/core/workspace/resolver.js.map +1 -1
  113. package/dist/core/workspace/skip-directories.js +2 -0
  114. package/dist/core/workspace/skip-directories.js.map +1 -1
  115. package/dist/core/workspace/typescript-walk.js +2 -0
  116. package/dist/core/workspace/typescript-walk.js.map +1 -1
  117. package/dist/mirror/cli-result.js +4 -0
  118. package/dist/mirror/cli-result.js.map +1 -1
  119. package/dist/mirror/cli-schema.js +2 -0
  120. package/dist/mirror/cli-schema.js.map +1 -1
  121. package/dist/mirror/command.js +2 -0
  122. package/dist/mirror/command.js.map +1 -1
  123. package/dist/mirror/dist-filesystem-impl.js +2 -0
  124. package/dist/mirror/dist-filesystem-impl.js.map +1 -1
  125. package/dist/mirror/domain/constants.js +10 -0
  126. package/dist/mirror/domain/constants.js.map +1 -1
  127. package/dist/mirror/domain/errors.js +4 -0
  128. package/dist/mirror/domain/errors.js.map +1 -1
  129. package/dist/mirror/domain/exports.js +4 -0
  130. package/dist/mirror/domain/exports.js.map +1 -1
  131. package/dist/mirror/domain/path-normalizer.js +2 -0
  132. package/dist/mirror/domain/path-normalizer.js.map +1 -1
  133. package/dist/mirror/output.js +2 -0
  134. package/dist/mirror/output.js.map +1 -1
  135. package/dist/mirror/package-path.js +4 -0
  136. package/dist/mirror/package-path.js.map +1 -1
  137. package/dist/mirror/prepare.js +2 -0
  138. package/dist/mirror/prepare.js.map +1 -1
  139. package/dist/mirror/supplement-exports.js +2 -0
  140. package/dist/mirror/supplement-exports.js.map +1 -1
  141. package/dist/mirror/sync-reporter.js.map +1 -1
  142. package/dist/mirror/sync-workspace-package.js +2 -0
  143. package/dist/mirror/sync-workspace-package.js.map +1 -1
  144. package/dist/mirror/sync.js +2 -0
  145. package/dist/mirror/sync.js.map +1 -1
  146. package/dist/tag/cli-result.js +2 -0
  147. package/dist/tag/cli-result.js.map +1 -1
  148. package/dist/tag/cli-schema.js +2 -0
  149. package/dist/tag/cli-schema.js.map +1 -1
  150. package/dist/tag/command.js +2 -0
  151. package/dist/tag/command.js.map +1 -1
  152. package/dist/tag/output.js +4 -0
  153. package/dist/tag/output.js.map +1 -1
  154. package/dist/tag/prepare.js +2 -0
  155. package/dist/tag/prepare.js.map +1 -1
  156. package/dist/tag/resolve-target-path.js +2 -0
  157. package/dist/tag/resolve-target-path.js.map +1 -1
  158. package/dist/tag/since-writer.js +2 -0
  159. package/dist/tag/since-writer.js.map +1 -1
  160. package/dist/tag/sync.js +2 -0
  161. package/dist/tag/sync.js.map +1 -1
  162. package/dist/tag/target-candidates.js +2 -0
  163. package/dist/tag/target-candidates.js.map +1 -1
  164. package/dist/tag/target-runner.js +2 -0
  165. package/dist/tag/target-runner.js.map +1 -1
  166. package/dist/tag/version-resolver.js +7 -21
  167. package/dist/tag/version-resolver.js.map +1 -1
  168. package/package.json +6 -6
@@ -11,6 +11,8 @@ function nodeName(node) {
11
11
  return typeof node.name === "string" ? node.name : "";
12
12
  }
13
13
  /**
14
+ * The translator mapping the `oxc-parser` ESTree AST to the arrange domain AST.
15
+ *
14
16
  * @since 0.3.16-canary.0
15
17
  */
16
18
  export class TypeScriptAstTranslator {
@@ -1 +1 @@
1
- {"version":3,"file":"typescript-ast-translator.js","sourceRoot":"","sources":["../../src/arrange/typescript-ast-translator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typescript-ast-translator.js","sourceRoot":"","sources":["../../src/arrange/typescript-ast-translator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAoDvF,SAAS,SAAS,CAAC,KAAc;IAC/B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,OAAQ,KAA4B,CAAC,IAAI,KAAK,QAAQ,CAAC;AAC/G,CAAC;AAED,SAAS,QAAQ,CAAC,IAAa;IAC7B,OAAO,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;AACxD,CAAC;AAED;;;;GAIG;AACH,MAAM,OAAO,uBAAuB;IAClC,mBAAmB,CAAC,QAAgB,EAAE,UAAkB;QACtD,OAAO,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAC1D,CAAC;IAED;;;;OAIG;IACK,CAAC,YAAY,CAAC,IAAa;QACjC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;gBAC1E,SAAS;YACX,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;YACxB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,KAAK,MAAM,OAAO,IAAI,KAAK,EAAE,CAAC;oBAC5B,IAAI,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;wBACvB,MAAM,OAAO,CAAC;oBAChB,CAAC;gBACH,CAAC;gBACD,SAAS;YACX,CAAC;YACD,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;gBACrB,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IAEO,gBAAgB,CAAC,IAAa,EAAE,MAA4B;QAClE,MAAM,IAAI,GAA4C;YACpD,IAAI,EAAE,gBAAgB,CAAC,OAAO;YAC9B,GAAG,EAAE,IAAI,CAAC,KAAK;YACf,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,MAAM;YACN,QAAQ,EAAE,EAAE;SACb,CAAC;QACF,MAAM,SAAS,GAAyB,EAAE,CAAC;QAC3C,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5C,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,IAA4B,CAAC,CAAC,CAAC;QAC1E,CAAC;QACD,OAAO,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,SAAS,EAA0B,CAAC;IAClE,CAAC;IAEO,iBAAiB,CAAC,IAAa;QACrC,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9D,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,0BAA0B,CAAC,IAAa;QAC9C,IAAI,IAAI,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;YACpC,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACrC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3G,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAoD,CAAC;QAC3E,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC;QACnC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,OAAO,OAAO,KAAK,CAAC,KAAK,EAAE,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACrE,CAAC;IAEO,iBAAiB,CAAC,QAAiB;QACzC,OAAO,QAAQ,KAAK,GAAG,CAAC,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,oBAAoB,CAAC,KAAK,CAAC;IACnF,CAAC;IAEO,0BAA0B,CAAC,IAAa,EAAE,MAA4B;QAC5E,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,UAAqC,CAAC,CAAC,CAAC,EAAE,CAAC;QACrG,MAAM,IAAI,GAA+C;YACvD,IAAI,EAAE,gBAAgB,CAAC,iBAAiB;YACxC,GAAG,EAAE,IAAI,CAAC,KAAK;YACf,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,MAAM;YACN,YAAY,EAAE,SAAS;YACvB,eAAe,EAAE,SAAqC;SACvD,CAAC;QAEF,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,UAAU,EAAE,IAA+B,CAAC,CAAC;QAChG,CAAC;QAED,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;QAChE,IAAI,CAAC,eAAe,GAAG,MAAM;YAC3B,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,IAA+B,CAAC;YAC7D,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAA+B,CAAC,CAAC;QACjE,OAAO,IAA+B,CAAC;IACzC,CAAC;IAEO,iBAAiB,CACvB,WAAoB,EACpB,UAAkC,EAClC,MAA+B;QAE/B,MAAM,gBAAgB,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,wBAAwB,CAAC,CAAC;QACrG,MAAM,kBAAkB,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,0BAA0B,CAAC,CAAC;QACzG,MAAM,eAAe,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,iBAAiB,CAAC,CAAC;QAE/F,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,IAAI,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,IAAI,GAA0C;YAClD,IAAI,EAAE,gBAAgB,CAAC,YAAY;YACnC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK;YAC5C,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG;YACtC,MAAM;YACN,UAAU,EAAE,WAAW,CAAC,UAAU,KAAK,MAAM;YAC7C,IAAI,EAAE,SAAS;YACf,aAAa,EAAE,SAAS;SACzB,CAAC;QAEF,IAAI,gBAAgB,IAAI,SAAS,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1D,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAA0B,CAAC,CAAC;QAC3F,CAAC;QAED,IAAI,kBAAkB,IAAI,SAAS,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9D,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,oBAAoB,CAAC,kBAAkB,EAAE,IAA0B,CAAC,CAAC;QACjG,CAAC;aAAM,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,IAA0B,CAAC,CAAC;QAC3F,CAAC;QAED,OAAO,IAA0B,CAAC;IACpC,CAAC;IAEO,oBAAoB,CAAC,SAAkB,EAAE,MAA0B;QACzE,MAAM,KAAK,GAAG,SAAS,CAAC,KAAgB,CAAC;QACzC,MAAM,IAAI,GAA6C;YACrD,IAAI,EAAE,gBAAgB,CAAC,eAAe;YACtC,GAAG,EAAE,SAAS,CAAC,KAAK;YACpB,GAAG,EAAE,SAAS,CAAC,GAAG;YAClB,MAAM;YACN,IAAI,EAAE,SAAwC;SAC/C,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,IAA6B,CAAC,CAAC;QAC3E,OAAO,IAA6B,CAAC;IACvC,CAAC;IAEO,iBAAiB,CAAC,UAAkC,EAAE,MAA0B;QACtF,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,IAAI,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,IAAI,GAA0C;YAClD,IAAI,EAAE,gBAAgB,CAAC,YAAY;YACnC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG;YACrC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG;YACjC,MAAM;YACN,QAAQ,EAAE,EAAE;SACb,CAAC;QACF,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,IAA0B,CAAC,CAAC,CAAC;QACjH,OAAO,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAwB,CAAC;IACrD,CAAC;IAEO,oBAAoB,CAAC,SAAkB,EAAE,MAA0B;QACzE,MAAM,KAAK,GAAG,SAAS,CAAC,KAAgB,CAAC;QACzC,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;QAChF,MAAM,IAAI,GAA6C;YACrD,IAAI,EAAE,gBAAgB,CAAC,eAAe;YACtC,GAAG,EAAE,SAAS,CAAC,KAAK;YACpB,GAAG,EAAE,SAAS,CAAC,GAAG;YAClB,MAAM;YACN,YAAY,EAAE,SAAS;YACvB,IAAI,EAAE,SAAwC;SAC/C,CAAC;QACF,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,KAAK,YAAY,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACzF,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,IAA6B,CAAC,CAAC;QACxF,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,IAA6B,CAAC,CAAC;QAC3E,OAAO,IAA6B,CAAC;IACvC,CAAC;IAEO,mBAAmB,CAAC,IAAa,EAAE,MAA4B;QACrE,OAAO;YACL,IAAI,EAAE,gBAAgB,CAAC,UAAU;YACjC,GAAG,EAAE,IAAI,CAAC,KAAK;YACf,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,MAAM;YACN,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC;SACM,CAAC;IAC/B,CAAC;IAEO,aAAa,CAAC,IAAa,EAAE,MAA4B;QAC/D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;QACvB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QAErB,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,YAAY,CAAC;YAClB,KAAK,eAAe,EAAE,CAAC;gBACrB,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAChD,CAAC;YACD,KAAK,SAAS,EAAE,CAAC;gBACf,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;gBAC1C,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;oBACvB,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBAC7C,CAAC;gBACD,OAAO;oBACL,IAAI,EAAE,gBAAgB,CAAC,aAAa;oBACpC,GAAG;oBACH,GAAG;oBACH,MAAM;oBACN,IAAI;iBACyB,CAAC;YAClC,CAAC;YACD,KAAK,iBAAiB,EAAE,CAAC;gBACvB,MAAM,IAAI,GAAG,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC;gBACnD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;oBACvB,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBAC7C,CAAC;gBACD,OAAO;oBACL,IAAI,EAAE,gBAAgB,CAAC,6BAA6B;oBACpD,GAAG;oBACH,GAAG;oBACH,MAAM;oBACN,IAAI;iBACyC,CAAC;YAClD,CAAC;YACD,KAAK,mBAAmB,EAAE,CAAC;gBACzB,OAAO,IAAI,CAAC,0BAA0B,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACvD,CAAC;YACD,KAAK,gBAAgB,EAAE,CAAC;gBACtB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAiB,CAAC;gBACtC,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,SAAoC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7F,MAAM,IAAI,GAA4C;oBACpD,IAAI,EAAE,gBAAgB,CAAC,cAAc;oBACrC,GAAG;oBACH,GAAG;oBACH,MAAM;oBACN,UAAU,EAAE,SAAqC;oBACjD,SAAS,EAAE,EAAE;iBACd,CAAC;gBACF,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,IAA4B,CAAC,CAAC;gBAC3E,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,IAA4B,CAAC,CAAC,CAAC;gBAC1F,OAAO,IAA4B,CAAC;YACtC,CAAC;YACD,KAAK,kBAAkB,EAAE,CAAC;gBACxB,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;oBAC3B,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBAC7C,CAAC;gBACD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAiB,CAAC;gBACtC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAmB,CAAC;gBAC1C,MAAM,IAAI,GAAsD;oBAC9D,IAAI,EAAE,gBAAgB,CAAC,wBAAwB;oBAC/C,GAAG;oBACH,GAAG;oBACH,MAAM;oBACN,UAAU,EAAE,SAAqC;oBACjD,IAAI,EAAE,SAAwC;iBAC/C,CAAC;gBACF,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,IAAsC,CAAC,CAAC;gBACrF,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAsC,CAAqB,CAAC;gBACrG,OAAO,IAAsC,CAAC;YAChD,CAAC;YACD,KAAK,kBAAkB,EAAE,CAAC;gBACxB,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,UAAqC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrG,MAAM,IAAI,GAAqD;oBAC7D,IAAI,EAAE,gBAAgB,CAAC,uBAAuB;oBAC9C,GAAG;oBACH,GAAG;oBACH,MAAM;oBACN,UAAU,EAAE,EAAE;iBACf,CAAC;gBACF,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBACrC,6EAA6E;gBAC7E,8EAA8E;gBAC9E,IAAI,CAAC,IAAI,KAAK,eAAe;oBAC3B,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAqC,CAAC;oBACpE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,IAAqC,CAAC,CACpE,CAAC;gBACF,OAAO,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,MAAM,EAAmC,CAAC;YAC1E,CAAC;YACD,KAAK,UAAU,EAAE,CAAC;gBAChB,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC5E,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBAC7C,CAAC;gBACD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAc,CAAC;gBAChC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAgB,CAAC;gBACpC,MAAM,IAAI,GAAgD;oBACxD,IAAI,EAAE,gBAAgB,CAAC,kBAAkB;oBACzC,GAAG;oBACH,GAAG;oBACH,MAAM;oBACN,IAAI,EAAE,SAAqC;oBAC3C,WAAW,EAAE,SAAqC;iBACnD,CAAC;gBACF,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,IAAgC,CAAC,CAAC;gBACtE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,IAAgC,CAAC,CAAC;gBAC/E,OAAO,IAAgC,CAAC;YAC1C,CAAC;YACD,KAAK,iBAAiB,EAAE,CAAC;gBACvB,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,QAA0C,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtG,MAAM,IAAI,GAAoD;oBAC5D,IAAI,EAAE,gBAAgB,CAAC,sBAAsB;oBAC7C,GAAG;oBACH,GAAG;oBACH,MAAM;oBACN,QAAQ,EAAE,EAAE;iBACb,CAAC;gBACF,MAAM,MAAM,GAAyB,EAAE,CAAC;gBACxC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;oBAC/B,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;wBACrB,SAAS;oBACX,CAAC;oBACD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,IAAoC,CAAC,CAAC,CAAC;gBACjF,CAAC;gBACD,OAAO,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAkC,CAAC;YACvE,CAAC;YACD,KAAK,eAAe,EAAE,CAAC;gBACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAmB,CAAC;gBAC1C,MAAM,IAAI,GAA2C;oBACnD,IAAI,EAAE,gBAAgB,CAAC,aAAa;oBACpC,GAAG;oBACH,GAAG;oBACH,MAAM;oBACN,UAAU,EAAE,SAAqC;iBAClD,CAAC;gBACF,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,IAA2B,CAAC,CAAC;gBAC5E,OAAO,IAA2B,CAAC;YACrC,CAAC;YACD,KAAK,yBAAyB,EAAE,CAAC;gBAC/B,MAAM,UAAU,GAAG,IAAI,CAAC,UAAqB,CAAC;gBAC9C,MAAM,IAAI,GAAqD;oBAC7D,IAAI,EAAE,gBAAgB,CAAC,uBAAuB;oBAC9C,GAAG;oBACH,GAAG;oBACH,MAAM;oBACN,UAAU,EAAE,SAAqC;iBAClD,CAAC;gBACF,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,IAAqC,CAAC,CAAC;gBACxF,OAAO,IAAqC,CAAC;YAC/C,CAAC;YACD,KAAK,gBAAgB,EAAE,CAAC;gBACtB,MAAM,UAAU,GAAG,IAAI,CAAC,UAAqB,CAAC;gBAC9C,MAAM,IAAI,GAA0C;oBAClD,IAAI,EAAE,gBAAgB,CAAC,YAAY;oBACnC,GAAG;oBACH,GAAG;oBACH,MAAM;oBACN,UAAU,EAAE,SAAqC;iBAClD,CAAC;gBACF,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,IAA0B,CAAC,CAAC;gBAC7E,OAAO,IAA0B,CAAC;YACpC,CAAC;YACD,KAAK,uBAAuB,EAAE,CAAC;gBAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,UAAqB,CAAC;gBAC9C,MAAM,IAAI,GAAiD;oBACzD,IAAI,EAAE,gBAAgB,CAAC,mBAAmB;oBAC1C,GAAG;oBACH,GAAG;oBACH,MAAM;oBACN,UAAU,EAAE,SAAqC;iBAClD,CAAC;gBACF,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,IAAiC,CAAC,CAAC;gBACpF,OAAO,IAAiC,CAAC;YAC3C,CAAC;YACD,KAAK,qBAAqB,EAAE,CAAC;gBAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,UAAqB,CAAC;gBAC9C,MAAM,IAAI,GAA+C;oBACvD,IAAI,EAAE,gBAAgB,CAAC,iBAAiB;oBACxC,GAAG;oBACH,GAAG;oBACH,MAAM;oBACN,UAAU,EAAE,SAAqC;iBAClD,CAAC;gBACF,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,IAA+B,CAAC,CAAC;gBAClF,OAAO,IAA+B,CAAC;YACzC,CAAC;YACD,KAAK,uBAAuB,EAAE,CAAC;gBAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAe,CAAC;gBAClC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAqB,CAAC;gBAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,SAAoB,CAAC;gBAC5C,MAAM,IAAI,GAAmD;oBAC3D,IAAI,EAAE,gBAAgB,CAAC,qBAAqB;oBAC5C,GAAG;oBACH,GAAG;oBACH,MAAM;oBACN,SAAS,EAAE,SAAqC;oBAChD,QAAQ,EAAE,SAAqC;oBAC/C,SAAS,EAAE,SAAqC;iBACjD,CAAC;gBACF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,IAAmC,CAAC,CAAC;gBAC/E,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,IAAmC,CAAC,CAAC;gBACpF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,IAAmC,CAAC,CAAC;gBACpF,OAAO,IAAmC,CAAC;YAC7C,CAAC;YACD,KAAK,kBAAkB,EAAE,CAAC;gBACxB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAe,CAAC;gBAClC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAgB,CAAC;gBACpC,MAAM,IAAI,GAA8C;oBACtD,IAAI,EAAE,gBAAgB,CAAC,gBAAgB;oBACvC,GAAG;oBACH,GAAG;oBACH,MAAM;oBACN,IAAI,EAAE,SAAqC;oBAC3C,QAAQ,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC;oBAC/C,KAAK,EAAE,SAAqC;iBAC7C,CAAC;gBACF,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,IAA8B,CAAC,CAAC;gBACrE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,IAA8B,CAAC,CAAC;gBACvE,OAAO,IAA8B,CAAC;YACxC,CAAC;YACD,KAAK,qBAAqB,EAAE,CAAC;gBAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,UAAqB,CAAC;gBAC9C,MAAM,IAAI,GAAiD;oBACzD,IAAI,EAAE,gBAAgB,CAAC,mBAAmB;oBAC1C,GAAG;oBACH,GAAG;oBACH,MAAM;oBACN,UAAU,EAAE,SAAqC;iBAClD,CAAC;gBACF,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,IAAiC,CAAC,CAAC;gBACpF,OAAO,IAAiC,CAAC;YAC3C,CAAC;YACD,KAAK,cAAc,EAAE,CAAC;gBACpB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAe,CAAC;gBAClC,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;gBAC7D,MAAM,IAAI,GAA0C;oBAClD,IAAI,EAAE,gBAAgB,CAAC,YAAY;oBACnC,GAAG;oBACH,GAAG;oBACH,MAAM;oBACN,IAAI,EAAE,SAAqC;oBAC3C,WAAW,EAAE,SAAS;iBACvB,CAAC;gBACF,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,IAA0B,CAAC,CAAC;gBACjE,IAAI,KAAK,EAAE,CAAC;oBACV,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,IAA0B,CAAC,CAAC;gBAC3E,CAAC;gBACD,OAAO,IAA0B,CAAC;YACpC,CAAC;YACD,KAAK,wBAAwB,EAAE,CAAC;gBAC9B,MAAM,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;gBAC5E,MAAM,IAAI,GAA2C;oBACnD,IAAI,EAAE,gBAAgB,CAAC,aAAa;oBACpC,GAAG;oBACH,GAAG;oBACH,MAAM;oBACN,UAAU,EAAE,SAAS;iBACtB,CAAC;gBACF,IAAI,UAAU,IAAI,UAAU,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC;oBAC3D,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,IAA2B,CAAC,CAAC;gBAChF,CAAC;gBACD,OAAO,IAA2B,CAAC;YACrC,CAAC;YACD;gBACE,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAEO,qBAAqB,CAAC,QAAgB,EAAE,UAAkB;QAChE,kFAAkF;QAClF,qFAAqF;QACrF,MAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,OAAgC,CAAC;QACjF,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;QACxF,OAAO;YACL,QAAQ,EAAE,QAAQ;YAClB,IAAI,EAAE,UAAU;YAChB,UAAU;SACgB,CAAC;IAC/B,CAAC;CACF"}
@@ -5,6 +5,8 @@ import { messageFrom } from "#/core/errors";
5
5
  import { err, ok } from "#/core/result";
6
6
  import { findRepoRoot } from "#/core/workspace/resolver";
7
7
  /**
8
+ * Resolves the arrange target, repo root, and loaded config an arrange run needs.
9
+ *
8
10
  * @since 0.3.16-canary.0
9
11
  */
10
12
  export async function prepareArrangeWorkspace(fs, args) {
@@ -1 +1 @@
1
- {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../src/arrange/workspace.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,EAAkB,EAClB,IAGC;IAED,MAAM,cAAc,GAAG,wBAAwB,CAAC,EAAE,EAAE;QAClD,uBAAuB,EAAE,IAAI,CAAC,uBAAuB;QACrD,SAAS,EAAE,IAAI,CAAC,SAAS;KAC1B,CAAC,CAAC;IACH,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;QACnC,OAAO,GAAG,CAAC,IAAI,QAAQ,CAAC,WAAW,EAAE,cAAc,cAAc,EAAE,CAAC,CAAC,CAAC;IACxE,CAAC;IACD,IAAI,OAAe,CAAC;IACpB,IAAI,CAAC;QACH,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;IAC3D,CAAC;IAAC,OAAO,WAAoB,EAAE,CAAC;QAC9B,OAAO,GAAG,CAAC,IAAI,QAAQ,CAAC,eAAe,EAAE,WAAW,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;IACnF,CAAC;IACD,MAAM,aAAa,GAAG,MAAM,kBAAkB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC5D,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC;QACtB,OAAO,aAAa,CAAC;IACvB,CAAC;IACD,OAAO,EAAE,CAAC,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;AAC7E,CAAC"}
1
+ {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../src/arrange/workspace.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,EAAkB,EAClB,IAGC;IAED,MAAM,cAAc,GAAG,wBAAwB,CAAC,EAAE,EAAE;QAClD,uBAAuB,EAAE,IAAI,CAAC,uBAAuB;QACrD,SAAS,EAAE,IAAI,CAAC,SAAS;KAC1B,CAAC,CAAC;IACH,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;QACnC,OAAO,GAAG,CAAC,IAAI,QAAQ,CAAC,WAAW,EAAE,cAAc,cAAc,EAAE,CAAC,CAAC,CAAC;IACxE,CAAC;IACD,IAAI,OAAe,CAAC;IACpB,IAAI,CAAC;QACH,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;IAC3D,CAAC;IAAC,OAAO,WAAoB,EAAE,CAAC;QAC9B,OAAO,GAAG,CAAC,IAAI,QAAQ,CAAC,eAAe,EAAE,WAAW,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;IACnF,CAAC;IACD,MAAM,aAAa,GAAG,MAAM,kBAAkB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC5D,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC;QACtB,OAAO,aAAa,CAAC;IACvB,CAAC;IACD,OAAO,EAAE,CAAC,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;AAC7E,CAAC"}
@@ -3,7 +3,7 @@ import { z } from "zod";
3
3
  /**
4
4
  * Zod schema for {@link RtlAuditRunRequest}.
5
5
  *
6
- * @since 1.0.0-canary.7
6
+ * @since 0.5.0-canary.6
7
7
  */
8
8
  export const rtlAuditRunRequestSchema = z.object({
9
9
  rootDir: z.string().min(1),
@@ -34,10 +34,21 @@ export const commentAuditRunRequestSchema = z.object({
34
34
  fix: z.boolean(),
35
35
  json: z.boolean(),
36
36
  });
37
+ /**
38
+ * Zod schema for {@link ReactAuditRunRequest}.
39
+ *
40
+ * @since 0.8.0
41
+ */
42
+ export const reactAuditRunRequestSchema = z.object({
43
+ rootDir: z.string().min(1),
44
+ targetPath: z.string().min(1),
45
+ allowlist: z.array(z.string()).optional(),
46
+ json: z.boolean(),
47
+ });
37
48
  /**
38
49
  * Resolves a path that may be absolute or relative to `rootDir`.
39
50
  *
40
- * @since 1.0.0-canary.7
51
+ * @since 0.5.0-canary.6
41
52
  */
42
53
  export function resolveRepoRelativePath(rootDir, maybeRelative) {
43
54
  return path.isAbsolute(maybeRelative) ? path.resolve(maybeRelative) : path.resolve(rootDir, maybeRelative);
@@ -1 +1 @@
1
- {"version":3,"file":"cli-schema.js","sourceRoot":"","sources":["../../src/audit/cli-schema.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAcxB;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAkC,CAAC,CAAC,MAAM,CAAC;IAC9E,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7B,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACzC,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;CAClB,CAAC,CAAC;AAcH;;;;GAIG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAmC,CAAC,CAAC,MAAM,CAAC;IAChF,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7B,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACzC,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;CAClB,CAAC,CAAC;AAeH;;;;GAIG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAsC,CAAC,CAAC,MAAM,CAAC;IACtF,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7B,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACzC,GAAG,EAAE,CAAC,CAAC,OAAO,EAAE;IAChB,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;CAClB,CAAC,CAAC;AAEH;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAe,EAAE,aAAqB;IAC5E,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;AAC7G,CAAC"}
1
+ {"version":3,"file":"cli-schema.js","sourceRoot":"","sources":["../../src/audit/cli-schema.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAcxB;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAkC,CAAC,CAAC,MAAM,CAAC;IAC9E,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7B,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACzC,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;CAClB,CAAC,CAAC;AAcH;;;;GAIG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAmC,CAAC,CAAC,MAAM,CAAC;IAChF,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7B,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACzC,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;CAClB,CAAC,CAAC;AAeH;;;;GAIG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAsC,CAAC,CAAC,MAAM,CAAC;IACtF,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7B,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACzC,GAAG,EAAE,CAAC,CAAC,OAAO,EAAE;IAChB,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;CAClB,CAAC,CAAC;AAcH;;;;GAIG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAoC,CAAC,CAAC,MAAM,CAAC;IAClF,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7B,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACzC,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;CAClB,CAAC,CAAC;AAEH;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAe,EAAE,aAAqB;IAC5E,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;AAC7G,CAAC"}
@@ -1,11 +1,12 @@
1
1
  import process from "node:process";
2
2
  import { Command } from "commander";
3
- import { commentAuditRunRequestSchema, linkAuditRunRequestSchema, rtlAuditRunRequestSchema } from "#/audit/cli-schema";
4
- import { exitCodeForCommentAuditResult, exitCodeForLinkAuditResult, exitCodeForRtlAuditResult, formatCommentAuditJsonOutput, formatLinkAuditJsonOutput, formatRtlAuditJsonOutput, presentCommentAuditResult, presentLinkAuditResult, presentRtlAuditResult, } from "#/audit/output";
5
- import { prepareCommentAudit, prepareLinkAudit, prepareRtlAudit } from "#/audit/prepare";
3
+ import { commentAuditRunRequestSchema, linkAuditRunRequestSchema, reactAuditRunRequestSchema, rtlAuditRunRequestSchema, } from "#/audit/cli-schema";
4
+ import { exitCodeForCommentAuditResult, exitCodeForLinkAuditResult, exitCodeForReactAuditResult, exitCodeForRtlAuditResult, formatCommentAuditJsonOutput, formatLinkAuditJsonOutput, formatReactAuditJsonOutput, formatRtlAuditJsonOutput, presentCommentAuditResult, presentLinkAuditResult, presentReactAuditResult, presentRtlAuditResult, } from "#/audit/output";
5
+ import { prepareCommentAudit, prepareLinkAudit, prepareReactAudit, prepareRtlAudit } from "#/audit/prepare";
6
6
  import { runRtlAudit } from "#/audit/run";
7
7
  import { runCommentAudit } from "#/audit/run-comments";
8
8
  import { runLinkAudit } from "#/audit/run-links";
9
+ import { runReactAudit } from "#/audit/run-react";
9
10
  import { readOptionalPositionalArg } from "#/core/cli/positional";
10
11
  import { consumeCliAppError } from "#/core/cli/result-handle";
11
12
  import { nodeFilesystem } from "#/core/filesystem/node";
@@ -15,7 +16,7 @@ import { parseWithSchema } from "#/core/schema-parse";
15
16
  * Top-level `audit` command — the source scans. Every one of them reports by default; only
16
17
  * `comments --fix` writes, and only where the rewrite discards nothing a person wrote.
17
18
  *
18
- * @since 1.0.0-canary.7
19
+ * @since 0.5.0-canary.6
19
20
  */
20
21
  export function createAuditCommand() {
21
22
  const cmd = new Command("audit").description("Source audits").enablePositionalOptions();
@@ -97,6 +98,45 @@ export function createAuditCommand() {
97
98
  }
98
99
  process.exitCode = exitCodeForLinkAuditResult(outcome.value);
99
100
  });
101
+ cmd
102
+ .command("react")
103
+ .description("Report React namespace/default imports and implicit React.* UMD-global type references")
104
+ .argument("[target]", "Directory or file to scan (default: the repo root)")
105
+ .option("--json", "Print one JSON summary on stdout", false)
106
+ .action(async (target, opts) => {
107
+ const prelude = await prepareReactAudit(nodeFilesystem, {
108
+ currentWorkingDirectory: process.cwd(),
109
+ rawTarget: readOptionalPositionalArg(target),
110
+ });
111
+ if (!consumeCliAppError(prelude)) {
112
+ return;
113
+ }
114
+ const { rootDir, targetPath, allowlist } = prelude.value;
115
+ const parsed = parseWithSchema(reactAuditRunRequestSchema, {
116
+ rootDir,
117
+ targetPath,
118
+ allowlist,
119
+ json: !!opts.json,
120
+ });
121
+ if (!consumeCliAppError(parsed)) {
122
+ return;
123
+ }
124
+ const outcome = runReactAudit(nodeFilesystem, {
125
+ rootDir: parsed.value.rootDir,
126
+ targetPath: parsed.value.targetPath,
127
+ allowlist: parsed.value.allowlist ?? [],
128
+ });
129
+ if (!consumeCliAppError(outcome)) {
130
+ return;
131
+ }
132
+ if (parsed.value.json) {
133
+ logger.out(formatReactAuditJsonOutput(outcome.value, rootDir));
134
+ }
135
+ else {
136
+ presentReactAuditResult(outcome.value);
137
+ }
138
+ process.exitCode = exitCodeForReactAuditResult(outcome.value);
139
+ });
100
140
  cmd
101
141
  .command("comments")
102
142
  .description("Report section dividers that are not in the repo's one allowed form")
@@ -1 +1 @@
1
- {"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/audit/command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/audit/command.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ import { collectTokens } from "#/audit/domain/tokenize";
5
5
  * token whose variants include `rtl` and whose value matches. Variant order
6
6
  * differs between authors, so this stays deliberately loose.
7
7
  *
8
- * @since 1.0.0-canary.7
8
+ * @since 0.5.0-canary.6
9
9
  */
10
10
  export function hasRtlCompanion(fileTokens, expectedValue) {
11
11
  return fileTokens.some(({ variant, value }) => {
@@ -22,7 +22,7 @@ export function hasRtlCompanion(fileTokens, expectedValue) {
22
22
  /**
23
23
  * Detects physical-direction Tailwind classes that should be logical or rtl:-paired.
24
24
  *
25
- * @since 1.0.0-canary.7
25
+ * @since 0.5.0-canary.6
26
26
  */
27
27
  export function auditFileContent(content) {
28
28
  const tokens = collectTokens(content);
@@ -2,7 +2,7 @@
2
2
  * Physical → logical replacements. Order matters: negative before positive,
3
3
  * specific corners before general edges, with-value before bare.
4
4
  *
5
- * @since 1.0.0-canary.7
5
+ * @since 0.5.0-canary.6
6
6
  */
7
7
  export const RTL_MAPPINGS = [
8
8
  ["-ml-", "-ms-"],
@@ -53,7 +53,7 @@ export const RTL_MAPPINGS = [
53
53
  /**
54
54
  * translate-x has no logical equivalent — it needs an rtl:-negated twin.
55
55
  *
56
- * @since 1.0.0-canary.7
56
+ * @since 0.5.0-canary.6
57
57
  */
58
58
  export const RTL_TRANSLATE_X_MAPPINGS = [
59
59
  ["-translate-x-", "translate-x-"],
@@ -62,7 +62,7 @@ export const RTL_TRANSLATE_X_MAPPINGS = [
62
62
  /**
63
63
  * Classes that need an rtl:*-reverse companion.
64
64
  *
65
- * @since 1.0.0-canary.7
65
+ * @since 0.5.0-canary.6
66
66
  */
67
67
  export const RTL_REVERSE_MAPPINGS = [
68
68
  ["space-x-", "space-x-reverse"],
@@ -71,7 +71,7 @@ export const RTL_REVERSE_MAPPINGS = [
71
71
  /**
72
72
  * Classes that need an rtl: companion with the swapped value.
73
73
  *
74
- * @since 1.0.0-canary.7
74
+ * @since 0.5.0-canary.6
75
75
  */
76
76
  export const RTL_SWAP_MAPPINGS = [
77
77
  ["cursor-w-resize", "cursor-e-resize"],
@@ -81,18 +81,20 @@ export const RTL_SWAP_MAPPINGS = [
81
81
  * Anything anchored to a physical side variant stays physical: Radix resolves
82
82
  * `side` per direction, and a border/position/slide tied to that side must follow it.
83
83
  *
84
- * @since 1.0.0-canary.7
84
+ * @since 0.5.0-canary.6
85
85
  */
86
86
  export const PHYSICAL_SIDE_VARIANT = /data-side-(?:left|right)|data-\[side=(?:left|right)\]|\[data-side=(?:left|right)\]/;
87
87
  /**
88
88
  * Slide animations under direction-resolved contexts are correct as-is:
89
89
  * Radix flips `side`/`motion` values itself under DirectionProvider.
90
90
  *
91
- * @since 1.0.0-canary.7
91
+ * @since 0.5.0-canary.6
92
92
  */
93
93
  export const DIRECTION_RESOLVED_VARIANT = /data-\[motion[=^]/;
94
94
  /**
95
- * @since 1.0.0-canary.7
95
+ * The physical slide-animation class prefixes the RTL audit inspects.
96
+ *
97
+ * @since 0.5.0-canary.6
96
98
  */
97
99
  export const SLIDE_PREFIXES = [
98
100
  "slide-in-from-left",
@@ -1 +1 @@
1
- {"version":3,"file":"mappings.js","sourceRoot":"","sources":["../../../src/audit/domain/mappings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mappings.js","sourceRoot":"","sources":["../../../src/audit/domain/mappings.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,92 @@
1
+ import { parseSync } from "oxc-parser";
2
+ function isOxcNode(value) {
3
+ return typeof value === "object" && value !== null && typeof value.type === "string";
4
+ }
5
+ function isIdentifierNamed(node, name) {
6
+ return isOxcNode(node) && node.type === "Identifier" && node.name === name;
7
+ }
8
+ /**
9
+ * Scans one TypeScript source for React import-policy violations.
10
+ *
11
+ * @remarks Three violation kinds: `import * as React`, a default `React` import (type-only
12
+ * included), and — only when no import binds `React` — an implicit `React.*` UMD-global type
13
+ * reference, which tsc accepts silently through the `export as namespace React` in `@types/react`.
14
+ *
15
+ * @since 0.8.0
16
+ */
17
+ export function auditReactImportSource(filePath, sourceText) {
18
+ const { program } = parseSync(filePath, sourceText);
19
+ const statements = program.body;
20
+ const violations = [];
21
+ let bindsReact = false;
22
+ for (const statement of statements) {
23
+ if (statement.type !== "ImportDeclaration") {
24
+ continue;
25
+ }
26
+ const source = statement.source;
27
+ if (!isOxcNode(source) || source.value !== "react") {
28
+ continue;
29
+ }
30
+ const specifiers = Array.isArray(statement.specifiers) ? statement.specifiers.filter(isOxcNode) : [];
31
+ bindsReact ||= specifiers.some((specifier) => isIdentifierNamed(specifier.local, "React"));
32
+ for (const specifier of specifiers) {
33
+ if (specifier.type === "ImportNamespaceSpecifier") {
34
+ violations.push({
35
+ line: lineOfOffset(sourceText, statement.start),
36
+ raw: firstLineOf(sourceText.slice(statement.start, statement.end)),
37
+ reason: 'namespace React import — import members by name from "react"',
38
+ });
39
+ }
40
+ else if (specifier.type === "ImportDefaultSpecifier") {
41
+ violations.push({
42
+ line: lineOfOffset(sourceText, statement.start),
43
+ raw: firstLineOf(sourceText.slice(statement.start, statement.end)),
44
+ reason: 'default React import — import members by name from "react"',
45
+ });
46
+ }
47
+ }
48
+ }
49
+ // A bound `React` means the import itself is flagged above; qualified names under it are
50
+ // symptoms, not extra findings.
51
+ if (!bindsReact) {
52
+ collectUmdGlobalReferences(program, sourceText, violations);
53
+ }
54
+ violations.sort((a, b) => a.line - b.line);
55
+ return violations;
56
+ }
57
+ function collectUmdGlobalReferences(node, sourceText, violations) {
58
+ if (node.type === "TSQualifiedName" && isIdentifierNamed(node.left, "React")) {
59
+ violations.push({
60
+ line: lineOfOffset(sourceText, node.start),
61
+ raw: sourceText.slice(node.start, node.end),
62
+ reason: 'implicit React.* UMD global — add import type { … } from "react"',
63
+ });
64
+ return;
65
+ }
66
+ for (const value of Object.values(node)) {
67
+ if (Array.isArray(value)) {
68
+ for (const item of value) {
69
+ if (isOxcNode(item)) {
70
+ collectUmdGlobalReferences(item, sourceText, violations);
71
+ }
72
+ }
73
+ }
74
+ else if (isOxcNode(value)) {
75
+ collectUmdGlobalReferences(value, sourceText, violations);
76
+ }
77
+ }
78
+ }
79
+ function lineOfOffset(sourceText, offset) {
80
+ let line = 1;
81
+ for (let index = 0; index < offset; index++) {
82
+ if (sourceText.charCodeAt(index) === 10) {
83
+ line++;
84
+ }
85
+ }
86
+ return line;
87
+ }
88
+ function firstLineOf(text) {
89
+ const newlineIndex = text.indexOf("\n");
90
+ return newlineIndex === -1 ? text : text.slice(0, newlineIndex);
91
+ }
92
+ //# sourceMappingURL=react-imports.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react-imports.js","sourceRoot":"","sources":["../../../src/audit/domain/react-imports.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,86 @@
1
+ /**
2
+ * Flags `@since` tags naming a version the owning package has not reached.
3
+ */
4
+ const versionPattern = /^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+[0-9A-Za-z.-]+)?$/;
5
+ // `@since` appears only inside comments; matching the comment lead-in keeps code and prose out.
6
+ const sinceLinePattern = /^\s*(?:\*|\/\/|\/\*+)\s*@since\s+(\S+)/;
7
+ const numericIdentifierPattern = /^\d+$/;
8
+ function parseVersion(value) {
9
+ const match = versionPattern.exec(value);
10
+ if (match === null) {
11
+ return null;
12
+ }
13
+ return {
14
+ core: [Number(match[1]), Number(match[2]), Number(match[3])],
15
+ prerelease: match[4] === undefined ? [] : match[4].split("."),
16
+ };
17
+ }
18
+ /**
19
+ * Compares two SemVer strings by precedence — positive when `left` is greater,
20
+ * null when either side is not a SemVer version.
21
+ *
22
+ * @since 0.8.0
23
+ */
24
+ export function compareVersionPrecedence(left, right) {
25
+ const a = parseVersion(left);
26
+ const b = parseVersion(right);
27
+ if (a === null || b === null) {
28
+ return null;
29
+ }
30
+ for (let index = 0; index < 3; index++) {
31
+ if (a.core[index] !== b.core[index]) {
32
+ return a.core[index] - b.core[index];
33
+ }
34
+ }
35
+ // A pre-release ranks below the release it precedes.
36
+ if (a.prerelease.length === 0 || b.prerelease.length === 0) {
37
+ return b.prerelease.length - a.prerelease.length;
38
+ }
39
+ const shared = Math.min(a.prerelease.length, b.prerelease.length);
40
+ for (let index = 0; index < shared; index++) {
41
+ const leftId = a.prerelease[index];
42
+ const rightId = b.prerelease[index];
43
+ const leftIsNumeric = numericIdentifierPattern.test(leftId);
44
+ const rightIsNumeric = numericIdentifierPattern.test(rightId);
45
+ if (leftIsNumeric && rightIsNumeric) {
46
+ const difference = Number(leftId) - Number(rightId);
47
+ if (difference !== 0) {
48
+ return difference;
49
+ }
50
+ }
51
+ else if (leftIsNumeric !== rightIsNumeric) {
52
+ // Numeric identifiers rank below alphanumeric ones.
53
+ return leftIsNumeric ? -1 : 1;
54
+ }
55
+ else if (leftId !== rightId) {
56
+ return leftId < rightId ? -1 : 1;
57
+ }
58
+ }
59
+ return a.prerelease.length - b.prerelease.length;
60
+ }
61
+ /**
62
+ * Scans a file's comments for `@since` tags stamped above the package's current
63
+ * version — a release that has not happened, so the stamp cannot be true.
64
+ *
65
+ * @since 0.8.0
66
+ */
67
+ export function scanImpossibleSinceTags(content, packageVersion) {
68
+ if (parseVersion(packageVersion) === null) {
69
+ return [];
70
+ }
71
+ const findings = [];
72
+ const lines = content.split(/\r?\n/);
73
+ for (let index = 0; index < lines.length; index++) {
74
+ const match = sinceLinePattern.exec(lines[index]);
75
+ if (match === null) {
76
+ continue;
77
+ }
78
+ const stamped = match[1];
79
+ const comparison = compareVersionPrecedence(stamped, packageVersion);
80
+ if (comparison !== null && comparison > 0) {
81
+ findings.push({ line: index + 1, raw: `@since ${stamped}` });
82
+ }
83
+ }
84
+ return findings;
85
+ }
86
+ //# sourceMappingURL=since-versions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"since-versions.js","sourceRoot":"","sources":["../../../src/audit/domain/since-versions.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  * Splits a class token into [variant, value, modifier], colon/slash-aware of
3
3
  * brackets and parens (arbitrary values like data-[side=left] or calc(...)).
4
4
  *
5
- * @since 1.0.0-canary.7
5
+ * @since 0.5.0-canary.6
6
6
  */
7
7
  export function splitClassName(token) {
8
8
  const segments = [];
@@ -50,7 +50,7 @@ export function splitClassName(token) {
50
50
  /**
51
51
  * Extracts string/template literal contents with their line numbers.
52
52
  *
53
- * @since 1.0.0-canary.7
53
+ * @since 0.5.0-canary.6
54
54
  */
55
55
  export function* stringLiterals(content) {
56
56
  const pattern = /"([^"\n]*)"|'([^'\n]*)'|`([^`]*)`/g;
@@ -61,7 +61,9 @@ export function* stringLiterals(content) {
61
61
  }
62
62
  }
63
63
  /**
64
- * @since 1.0.0-canary.7
64
+ * Collects the parsed class tokens from every string literal in a file's content.
65
+ *
66
+ * @since 0.5.0-canary.6
65
67
  */
66
68
  export function collectTokens(content) {
67
69
  const tokens = [];
@@ -1 +1 @@
1
- {"version":3,"file":"tokenize.js","sourceRoot":"","sources":["../../../src/audit/domain/tokenize.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tokenize.js","sourceRoot":"","sources":["../../../src/audit/domain/tokenize.ts"],"names":[],"mappings":"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"}