@xylabs/ts-scripts-yarn3 7.0.2 → 7.1.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 (270) hide show
  1. package/dist/actions/build.mjs +39 -87
  2. package/dist/actions/build.mjs.map +1 -1
  3. package/dist/actions/clean-docs.mjs +8 -22
  4. package/dist/actions/clean-docs.mjs.map +1 -1
  5. package/dist/actions/clean-eslint.mjs +5 -11
  6. package/dist/actions/clean-eslint.mjs.map +1 -1
  7. package/dist/actions/clean-jest.mjs +16 -29
  8. package/dist/actions/clean-jest.mjs.map +1 -1
  9. package/dist/actions/clean.mjs +32 -63
  10. package/dist/actions/clean.mjs.map +1 -1
  11. package/dist/actions/compile.mjs +50 -76
  12. package/dist/actions/compile.mjs.map +1 -1
  13. package/dist/actions/copy-assets.mjs +23 -38
  14. package/dist/actions/copy-assets.mjs.map +1 -1
  15. package/dist/actions/cycle.mjs +28 -57
  16. package/dist/actions/cycle.mjs.map +1 -1
  17. package/dist/actions/dead.mjs +16 -31
  18. package/dist/actions/dead.mjs.map +1 -1
  19. package/dist/actions/deplint/checkPackage/checkPackage.mjs +48 -71
  20. package/dist/actions/deplint/checkPackage/checkPackage.mjs.map +1 -1
  21. package/dist/actions/deplint/checkPackage/getUnlistedDependencies.mjs +5 -5
  22. package/dist/actions/deplint/checkPackage/getUnlistedDependencies.mjs.map +1 -1
  23. package/dist/actions/deplint/checkPackage/getUnlistedDevDependencies.mjs +9 -5
  24. package/dist/actions/deplint/checkPackage/getUnlistedDevDependencies.mjs.map +1 -1
  25. package/dist/actions/deplint/checkPackage/getUnusedDependencies.mjs +5 -5
  26. package/dist/actions/deplint/checkPackage/getUnusedDependencies.mjs.map +1 -1
  27. package/dist/actions/deplint/checkPackage/getUnusedPeerDependencies.mjs +0 -4
  28. package/dist/actions/deplint/checkPackage/getUnusedPeerDependencies.mjs.map +1 -1
  29. package/dist/actions/deplint/checkPackage/index.mjs +48 -71
  30. package/dist/actions/deplint/checkPackage/index.mjs.map +1 -1
  31. package/dist/actions/deplint/deplint.mjs +61 -86
  32. package/dist/actions/deplint/deplint.mjs.map +1 -1
  33. package/dist/actions/deplint/findFiles.mjs +4 -20
  34. package/dist/actions/deplint/findFiles.mjs.map +1 -1
  35. package/dist/actions/deplint/findFilesByGlob.mjs +1 -8
  36. package/dist/actions/deplint/findFilesByGlob.mjs.map +1 -1
  37. package/dist/actions/deplint/getBasePackageName.mjs +0 -4
  38. package/dist/actions/deplint/getBasePackageName.mjs.map +1 -1
  39. package/dist/actions/deplint/getDependenciesFromPackageJson.mjs +0 -4
  40. package/dist/actions/deplint/getDependenciesFromPackageJson.mjs.map +1 -1
  41. package/dist/actions/deplint/getExternalImportsFromFiles.mjs +12 -24
  42. package/dist/actions/deplint/getExternalImportsFromFiles.mjs.map +1 -1
  43. package/dist/actions/deplint/getImportsFromFile.mjs +9 -16
  44. package/dist/actions/deplint/getImportsFromFile.mjs.map +1 -1
  45. package/dist/actions/deplint/index.mjs +61 -86
  46. package/dist/actions/deplint/index.mjs.map +1 -1
  47. package/dist/actions/deploy-major.mjs +26 -57
  48. package/dist/actions/deploy-major.mjs.map +1 -1
  49. package/dist/actions/deploy-minor.mjs +26 -57
  50. package/dist/actions/deploy-minor.mjs.map +1 -1
  51. package/dist/actions/deploy-next.mjs +26 -57
  52. package/dist/actions/deploy-next.mjs.map +1 -1
  53. package/dist/actions/deploy.mjs +26 -57
  54. package/dist/actions/deploy.mjs.map +1 -1
  55. package/dist/actions/dupdeps.mjs +26 -37
  56. package/dist/actions/dupdeps.mjs.map +1 -1
  57. package/dist/actions/fix.mjs +36 -54
  58. package/dist/actions/fix.mjs.map +1 -1
  59. package/dist/actions/gen-docs.mjs +25 -65
  60. package/dist/actions/gen-docs.mjs.map +1 -1
  61. package/dist/actions/gitignore-gen.mjs +28 -44
  62. package/dist/actions/gitignore-gen.mjs.map +1 -1
  63. package/dist/actions/gitlint-fix.mjs +5 -14
  64. package/dist/actions/gitlint-fix.mjs.map +1 -1
  65. package/dist/actions/gitlint.mjs +4 -7
  66. package/dist/actions/gitlint.mjs.map +1 -1
  67. package/dist/actions/index.mjs +705 -1251
  68. package/dist/actions/index.mjs.map +1 -1
  69. package/dist/actions/knip.mjs +16 -31
  70. package/dist/actions/knip.mjs.map +1 -1
  71. package/dist/actions/license.mjs +37 -51
  72. package/dist/actions/license.mjs.map +1 -1
  73. package/dist/actions/lint.mjs +33 -48
  74. package/dist/actions/lint.mjs.map +1 -1
  75. package/dist/actions/npmignore-gen.mjs +28 -44
  76. package/dist/actions/npmignore-gen.mjs.map +1 -1
  77. package/dist/actions/package/clean-outputs.mjs +6 -16
  78. package/dist/actions/package/clean-outputs.mjs.map +1 -1
  79. package/dist/actions/package/clean-typescript.mjs +6 -16
  80. package/dist/actions/package/clean-typescript.mjs.map +1 -1
  81. package/dist/actions/package/clean.mjs +12 -29
  82. package/dist/actions/package/clean.mjs.map +1 -1
  83. package/dist/actions/package/compile/buildEntries.mjs +19 -34
  84. package/dist/actions/package/compile/buildEntries.mjs.map +1 -1
  85. package/dist/actions/package/compile/compile.mjs +165 -195
  86. package/dist/actions/package/compile/compile.mjs.map +1 -1
  87. package/dist/actions/package/compile/copyTypeFiles.mjs +20 -23
  88. package/dist/actions/package/compile/copyTypeFiles.mjs.map +1 -1
  89. package/dist/actions/package/compile/deepMerge.mjs +0 -5
  90. package/dist/actions/package/compile/deepMerge.mjs.map +1 -1
  91. package/dist/actions/package/compile/getCompilerOptions.mjs +2 -5
  92. package/dist/actions/package/compile/getCompilerOptions.mjs.map +1 -1
  93. package/dist/actions/package/compile/index.mjs +165 -195
  94. package/dist/actions/package/compile/index.mjs.map +1 -1
  95. package/dist/actions/package/compile/inputs.mjs +15 -25
  96. package/dist/actions/package/compile/inputs.mjs.map +1 -1
  97. package/dist/actions/package/compile/packageCompileTsc.mjs +25 -17
  98. package/dist/actions/package/compile/packageCompileTsc.mjs.map +1 -1
  99. package/dist/actions/package/compile/packageCompileTscTypes.mjs +19 -36
  100. package/dist/actions/package/compile/packageCompileTscTypes.mjs.map +1 -1
  101. package/dist/actions/package/compile/packageCompileTsup.mjs +160 -185
  102. package/dist/actions/package/compile/packageCompileTsup.mjs.map +1 -1
  103. package/dist/actions/package/copy-assets.mjs +12 -21
  104. package/dist/actions/package/copy-assets.mjs.map +1 -1
  105. package/dist/actions/package/cycle.mjs +5 -14
  106. package/dist/actions/package/cycle.mjs.map +1 -1
  107. package/dist/actions/package/gen-docs.mjs +11 -12
  108. package/dist/actions/package/gen-docs.mjs.map +1 -1
  109. package/dist/actions/package/index.mjs +236 -308
  110. package/dist/actions/package/index.mjs.map +1 -1
  111. package/dist/actions/package/lint.mjs +16 -39
  112. package/dist/actions/package/lint.mjs.map +1 -1
  113. package/dist/actions/package/publint.mjs +13 -14
  114. package/dist/actions/package/publint.mjs.map +1 -1
  115. package/dist/actions/package/recompile.mjs +179 -223
  116. package/dist/actions/package/recompile.mjs.map +1 -1
  117. package/dist/actions/publint.mjs +37 -71
  118. package/dist/actions/publint.mjs.map +1 -1
  119. package/dist/actions/rebuild.mjs +17 -29
  120. package/dist/actions/rebuild.mjs.map +1 -1
  121. package/dist/actions/recompile.mjs +50 -67
  122. package/dist/actions/recompile.mjs.map +1 -1
  123. package/dist/actions/reinstall.mjs +25 -43
  124. package/dist/actions/reinstall.mjs.map +1 -1
  125. package/dist/actions/relint.mjs +40 -63
  126. package/dist/actions/relint.mjs.map +1 -1
  127. package/dist/actions/retest.mjs +17 -35
  128. package/dist/actions/retest.mjs.map +1 -1
  129. package/dist/actions/sonar.mjs +16 -32
  130. package/dist/actions/sonar.mjs.map +1 -1
  131. package/dist/actions/statics.mjs +27 -46
  132. package/dist/actions/statics.mjs.map +1 -1
  133. package/dist/actions/test.mjs +16 -30
  134. package/dist/actions/test.mjs.map +1 -1
  135. package/dist/actions/up.mjs +16 -27
  136. package/dist/actions/up.mjs.map +1 -1
  137. package/dist/actions/updo.mjs +18 -33
  138. package/dist/actions/updo.mjs.map +1 -1
  139. package/dist/actions/upplug.mjs +19 -53
  140. package/dist/actions/upplug.mjs.map +1 -1
  141. package/dist/actions/upyarn.mjs +16 -31
  142. package/dist/actions/upyarn.mjs.map +1 -1
  143. package/dist/actions/yarn3only.mjs +12 -23
  144. package/dist/actions/yarn3only.mjs.map +1 -1
  145. package/dist/bin/package/build-only.mjs +165 -194
  146. package/dist/bin/package/build-only.mjs.map +1 -1
  147. package/dist/bin/package/build.mjs +166 -197
  148. package/dist/bin/package/build.mjs.map +1 -1
  149. package/dist/bin/package/clean-outputs.mjs +6 -15
  150. package/dist/bin/package/clean-outputs.mjs.map +1 -1
  151. package/dist/bin/package/clean-typescript.mjs +6 -15
  152. package/dist/bin/package/clean-typescript.mjs.map +1 -1
  153. package/dist/bin/package/clean.mjs +12 -28
  154. package/dist/bin/package/clean.mjs.map +1 -1
  155. package/dist/bin/package/compile-only.mjs +165 -194
  156. package/dist/bin/package/compile-only.mjs.map +1 -1
  157. package/dist/bin/package/compile-tsup.mjs +160 -184
  158. package/dist/bin/package/compile-tsup.mjs.map +1 -1
  159. package/dist/bin/package/compile.mjs +165 -194
  160. package/dist/bin/package/compile.mjs.map +1 -1
  161. package/dist/bin/package/copy-assets-cjs.mjs +13 -23
  162. package/dist/bin/package/copy-assets-cjs.mjs.map +1 -1
  163. package/dist/bin/package/copy-assets-esm.mjs +13 -23
  164. package/dist/bin/package/copy-assets-esm.mjs.map +1 -1
  165. package/dist/bin/package/cycle.mjs +5 -13
  166. package/dist/bin/package/cycle.mjs.map +1 -1
  167. package/dist/bin/package/fix.mjs +16 -38
  168. package/dist/bin/package/fix.mjs.map +1 -1
  169. package/dist/bin/package/gen-docs.mjs +11 -11
  170. package/dist/bin/package/gen-docs.mjs.map +1 -1
  171. package/dist/bin/package/lint.mjs +16 -38
  172. package/dist/bin/package/lint.mjs.map +1 -1
  173. package/dist/bin/package/publint.mjs +13 -13
  174. package/dist/bin/package/publint.mjs.map +1 -1
  175. package/dist/bin/package/recompile.mjs +179 -222
  176. package/dist/bin/package/recompile.mjs.map +1 -1
  177. package/dist/bin/package/relint.mjs +16 -38
  178. package/dist/bin/package/relint.mjs.map +1 -1
  179. package/dist/bin/xy.mjs +932 -1266
  180. package/dist/bin/xy.mjs.map +1 -1
  181. package/dist/index.mjs +1191 -1612
  182. package/dist/index.mjs.map +1 -1
  183. package/dist/lib/checkResult.mjs +2 -5
  184. package/dist/lib/checkResult.mjs.map +1 -1
  185. package/dist/lib/createBuildConfig.mjs +9 -24
  186. package/dist/lib/createBuildConfig.mjs.map +1 -1
  187. package/dist/lib/defaultBuildConfig.mjs +2 -6
  188. package/dist/lib/defaultBuildConfig.mjs.map +1 -1
  189. package/dist/lib/deleteGlob.mjs +3 -9
  190. package/dist/lib/deleteGlob.mjs.map +1 -1
  191. package/dist/lib/dependencies/DuplicateDetector.mjs +12 -23
  192. package/dist/lib/dependencies/DuplicateDetector.mjs.map +1 -1
  193. package/dist/lib/dependencies/detectDuplicateDependencies.mjs +22 -33
  194. package/dist/lib/dependencies/detectDuplicateDependencies.mjs.map +1 -1
  195. package/dist/lib/dependencies/index.mjs +22 -33
  196. package/dist/lib/dependencies/index.mjs.map +1 -1
  197. package/dist/lib/file/ReadFileSyncOptions.mjs +1 -3
  198. package/dist/lib/file/ReadFileSyncOptions.mjs.map +1 -1
  199. package/dist/lib/file/constants.mjs.map +1 -1
  200. package/dist/lib/file/fileLines.mjs +12 -13
  201. package/dist/lib/file/fileLines.mjs.map +1 -1
  202. package/dist/lib/file/index.mjs +14 -15
  203. package/dist/lib/file/index.mjs.map +1 -1
  204. package/dist/lib/file/tryReadFileSync.mjs +3 -8
  205. package/dist/lib/file/tryReadFileSync.mjs.map +1 -1
  206. package/dist/lib/generateIgnoreFiles.mjs +27 -43
  207. package/dist/lib/generateIgnoreFiles.mjs.map +1 -1
  208. package/dist/lib/index.mjs +99 -157
  209. package/dist/lib/index.mjs.map +1 -1
  210. package/dist/lib/jsonFormatters.mjs +2 -5
  211. package/dist/lib/jsonFormatters.mjs.map +1 -1
  212. package/dist/lib/loadConfig.mjs +3 -11
  213. package/dist/lib/loadConfig.mjs.map +1 -1
  214. package/dist/lib/parsedPackageJSON.mjs +2 -5
  215. package/dist/lib/parsedPackageJSON.mjs.map +1 -1
  216. package/dist/lib/processEx.mjs +6 -9
  217. package/dist/lib/processEx.mjs.map +1 -1
  218. package/dist/lib/runSteps.mjs +13 -19
  219. package/dist/lib/runSteps.mjs.map +1 -1
  220. package/dist/lib/runStepsAsync.mjs +22 -22
  221. package/dist/lib/runStepsAsync.mjs.map +1 -1
  222. package/dist/lib/runXy.mjs +19 -31
  223. package/dist/lib/runXy.mjs.map +1 -1
  224. package/dist/lib/runXyWithWarning.mjs +2 -5
  225. package/dist/lib/runXyWithWarning.mjs.map +1 -1
  226. package/dist/lib/safeExit.mjs +10 -13
  227. package/dist/lib/safeExit.mjs.map +1 -1
  228. package/dist/lib/string/empty.mjs +2 -5
  229. package/dist/lib/string/empty.mjs.map +1 -1
  230. package/dist/lib/string/index.mjs +3 -9
  231. package/dist/lib/string/index.mjs.map +1 -1
  232. package/dist/lib/string/union.mjs +1 -7
  233. package/dist/lib/string/union.mjs.map +1 -1
  234. package/dist/lib/withErrnoException.mjs +4 -7
  235. package/dist/lib/withErrnoException.mjs.map +1 -1
  236. package/dist/lib/withError.mjs +2 -5
  237. package/dist/lib/withError.mjs.map +1 -1
  238. package/dist/lib/yarn/index.mjs +11 -30
  239. package/dist/lib/yarn/index.mjs.map +1 -1
  240. package/dist/lib/yarn/isYarnVersionOrGreater.mjs +4 -15
  241. package/dist/lib/yarn/isYarnVersionOrGreater.mjs.map +1 -1
  242. package/dist/lib/yarn/workspace/index.mjs +5 -16
  243. package/dist/lib/yarn/workspace/index.mjs.map +1 -1
  244. package/dist/lib/yarn/workspace/yarnWorkspace.mjs +5 -16
  245. package/dist/lib/yarn/workspace/yarnWorkspace.mjs.map +1 -1
  246. package/dist/lib/yarn/workspace/yarnWorkspaces.mjs +3 -14
  247. package/dist/lib/yarn/workspace/yarnWorkspaces.mjs.map +1 -1
  248. package/dist/lib/yarn/yarnInitCwd.mjs +2 -5
  249. package/dist/lib/yarn/yarnInitCwd.mjs.map +1 -1
  250. package/dist/loadPackageConfig.mjs +3 -8
  251. package/dist/loadPackageConfig.mjs.map +1 -1
  252. package/dist/xy/index.mjs +932 -1267
  253. package/dist/xy/index.mjs.map +1 -1
  254. package/dist/xy/param.mjs +3 -9
  255. package/dist/xy/param.mjs.map +1 -1
  256. package/dist/xy/xy.mjs +932 -1267
  257. package/dist/xy/xy.mjs.map +1 -1
  258. package/dist/xy/xyBuildCommands.mjs +228 -320
  259. package/dist/xy/xyBuildCommands.mjs.map +1 -1
  260. package/dist/xy/xyCommonCommands.mjs +251 -336
  261. package/dist/xy/xyCommonCommands.mjs.map +1 -1
  262. package/dist/xy/xyDeployCommands.mjs +99 -161
  263. package/dist/xy/xyDeployCommands.mjs.map +1 -1
  264. package/dist/xy/xyInstallCommands.mjs +145 -193
  265. package/dist/xy/xyInstallCommands.mjs.map +1 -1
  266. package/dist/xy/xyLintCommands.mjs +302 -403
  267. package/dist/xy/xyLintCommands.mjs.map +1 -1
  268. package/dist/xy/xyParseOptions.mjs +2 -5
  269. package/dist/xy/xyParseOptions.mjs.map +1 -1
  270. package/package.json +8 -9
@@ -1,12 +1,15 @@
1
1
  #!/usr/bin/env node
2
- var __defProp = Object.defineProperty;
3
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
4
2
 
5
3
  // src/actions/package/gen-docs.ts
6
4
  import { existsSync } from "fs";
7
5
  import path from "path";
8
6
  import chalk from "chalk";
9
- import { Application, ArgumentsReader, TSConfigReader, TypeDocReader } from "typedoc";
7
+ import {
8
+ Application,
9
+ ArgumentsReader,
10
+ TSConfigReader,
11
+ TypeDocReader
12
+ } from "typedoc";
10
13
  var ExitCodes = {
11
14
  CompileError: 3,
12
15
  ExceptionThrown: 6,
@@ -16,17 +19,14 @@ var ExitCodes = {
16
19
  OutputError: 5,
17
20
  ValidationError: 4
18
21
  };
19
- var packageGenDocs = /* @__PURE__ */ __name(async () => {
22
+ var packageGenDocs = async () => {
20
23
  const pkg = process.env.INIT_CWD;
21
24
  if (pkg !== void 0 && !existsSync(path.join(pkg, "typedoc.json"))) {
22
25
  return;
23
26
  }
24
27
  const app = await Application.bootstrap({
25
28
  entryPointStrategy: "merge",
26
- entryPoints: [
27
- `${pkg}/src/**/*.ts`,
28
- `${pkg}/packages/*/dist/docs.json`
29
- ],
29
+ entryPoints: [`${pkg}/src/**/*.ts`, `${pkg}/packages/*/dist/docs.json`],
30
30
  excludeExternals: true,
31
31
  json: `${pkg}/dist/docs.json`,
32
32
  logLevel: "Error",
@@ -37,8 +37,8 @@ var packageGenDocs = /* @__PURE__ */ __name(async () => {
37
37
  app.options.addReader(new TSConfigReader());
38
38
  app.options.addReader(new ArgumentsReader(300));
39
39
  return await runTypeDoc(app);
40
- }, "packageGenDocs");
41
- var runTypeDoc = /* @__PURE__ */ __name(async (app) => {
40
+ };
41
+ var runTypeDoc = async (app) => {
42
42
  const pkgName = process.env.npm_package_name;
43
43
  if (app.options.getValue("version")) {
44
44
  console.log(app.toString());
@@ -109,7 +109,7 @@ var runTypeDoc = /* @__PURE__ */ __name(async (app) => {
109
109
  }
110
110
  console.log(chalk.green(`${pkgName} - Ok`));
111
111
  return ExitCodes.Ok;
112
- }, "runTypeDoc");
112
+ };
113
113
 
114
114
  // src/bin/package/gen-docs.ts
115
115
  packageGenDocs().then(() => {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/actions/package/gen-docs.ts","../../../src/bin/package/gen-docs.ts"],"sourcesContent":["/* eslint-disable complexity */\n/* eslint-disable max-statements */\nimport { existsSync } from 'node:fs'\nimport path from 'node:path'\n\nimport chalk from 'chalk'\nimport {\n Application, ArgumentsReader, TSConfigReader, TypeDocReader,\n} from 'typedoc'\n\nconst ExitCodes = {\n CompileError: 3,\n ExceptionThrown: 6,\n NoEntryPoints: 2,\n Ok: 0,\n OptionError: 1,\n OutputError: 5,\n ValidationError: 4,\n}\n\nexport const packageGenDocs = async () => {\n const pkg = process.env.INIT_CWD\n\n if (pkg !== undefined && !existsSync(path.join(pkg, 'typedoc.json'))) {\n return\n }\n\n const app = await Application.bootstrap({\n entryPointStrategy: 'merge',\n entryPoints: [`${pkg}/src/**/*.ts`, `${pkg}/packages/*/dist/docs.json`],\n excludeExternals: true,\n json: `${pkg}/dist/docs.json`,\n logLevel: 'Error',\n tsconfig: `${pkg}/tsconfig.json`,\n })\n\n app.options.addReader(new ArgumentsReader(0))\n app.options.addReader(new TypeDocReader())\n app.options.addReader(new TSConfigReader())\n app.options.addReader(new ArgumentsReader(300))\n\n return await runTypeDoc(app)\n}\n\nconst runTypeDoc = async (app: Application) => {\n const pkgName = process.env.npm_package_name\n if (app.options.getValue('version')) {\n console.log(app.toString())\n return ExitCodes.Ok\n }\n\n if (app.options.getValue('showConfig')) {\n console.log(app.options.getRawValues())\n return ExitCodes.Ok\n }\n\n if (app.logger.hasErrors()) {\n return ExitCodes.OptionError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.OptionError\n }\n\n if (app.options.getValue('entryPoints').length === 0) {\n app.logger.error('No entry points provided')\n return ExitCodes.NoEntryPoints\n }\n\n if (app.options.getValue('watch')) {\n await app.convertAndWatch(async (project) => {\n const out = app.options.getValue('out')\n if (out) {\n await app.generateDocs(project, out)\n }\n const json = app.options.getValue('json')\n if (json) {\n await app.generateJson(project, json)\n }\n\n if (!out && !json) {\n await app.generateDocs(project, './docs')\n }\n })\n return ExitCodes.Ok\n }\n\n const project = await app.convert()\n if (!project) {\n return ExitCodes.CompileError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.CompileError\n }\n\n app.validate(project)\n if (app.logger.hasErrors()) {\n return ExitCodes.ValidationError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.ValidationError\n }\n\n if (app.options.getValue('emit') !== 'none') {\n const out = app.options.getValue('out')\n if (out) {\n await app.generateDocs(project, out)\n }\n const json = app.options.getValue('json')\n if (json) {\n await app.generateJson(project, json)\n }\n\n if (!out && !json) {\n await app.generateDocs(project, './docs')\n }\n\n if (app.logger.hasErrors()) {\n return ExitCodes.OutputError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.OutputError\n }\n }\n console.log(chalk.green(`${pkgName} - Ok`))\n return ExitCodes.Ok\n}\n","#!/usr/bin/env node\n\nimport { packageGenDocs } from '../../actions/index.ts'\n\npackageGenDocs()\n .then(() => {\n process.exit(0)\n })\n .catch((error) => {\n console.error(error)\n process.exit(1)\n })\n"],"mappings":";;;;;AAEA,SAASA,kBAAkB;AAC3B,OAAOC,UAAU;AAEjB,OAAOC,WAAW;AAClB,SACEC,aAAaC,iBAAiBC,gBAAgBC,qBACzC;AAEP,IAAMC,YAAY;EAChBC,cAAc;EACdC,iBAAiB;EACjBC,eAAe;EACfC,IAAI;EACJC,aAAa;EACbC,aAAa;EACbC,iBAAiB;AACnB;AAEO,IAAMC,iBAAiB,mCAAA;AAC5B,QAAMC,MAAMC,QAAQC,IAAIC;AAExB,MAAIH,QAAQI,UAAa,CAACC,WAAWC,KAAKC,KAAKP,KAAK,cAAA,CAAA,GAAkB;AACpE;EACF;AAEA,QAAMQ,MAAM,MAAMC,YAAYC,UAAU;IACtCC,oBAAoB;IACpBC,aAAa;MAAC,GAAGZ,GAAAA;MAAmB,GAAGA,GAAAA;;IACvCa,kBAAkB;IAClBC,MAAM,GAAGd,GAAAA;IACTe,UAAU;IACVC,UAAU,GAAGhB,GAAAA;EACf,CAAA;AAEAQ,MAAIS,QAAQC,UAAU,IAAIC,gBAAgB,CAAA,CAAA;AAC1CX,MAAIS,QAAQC,UAAU,IAAIE,cAAAA,CAAAA;AAC1BZ,MAAIS,QAAQC,UAAU,IAAIG,eAAAA,CAAAA;AAC1Bb,MAAIS,QAAQC,UAAU,IAAIC,gBAAgB,GAAA,CAAA;AAE1C,SAAO,MAAMG,WAAWd,GAAAA;AAC1B,GAtB8B;AAwB9B,IAAMc,aAAa,8BAAOd,QAAAA;AACxB,QAAMe,UAAUtB,QAAQC,IAAIsB;AAC5B,MAAIhB,IAAIS,QAAQQ,SAAS,SAAA,GAAY;AACnCC,YAAQC,IAAInB,IAAIoB,SAAQ,CAAA;AACxB,WAAOrC,UAAUI;EACnB;AAEA,MAAIa,IAAIS,QAAQQ,SAAS,YAAA,GAAe;AACtCC,YAAQC,IAAInB,IAAIS,QAAQY,aAAY,CAAA;AACpC,WAAOtC,UAAUI;EACnB;AAEA,MAAIa,IAAIsB,OAAOC,UAAS,GAAI;AAC1B,WAAOxC,UAAUK;EACnB;AACA,MAAIY,IAAIS,QAAQQ,SAAS,uBAAA,KAA4BjB,IAAIsB,OAAOE,YAAW,GAAI;AAC7E,WAAOzC,UAAUK;EACnB;AAEA,MAAIY,IAAIS,QAAQQ,SAAS,aAAA,EAAeQ,WAAW,GAAG;AACpDzB,QAAIsB,OAAOI,MAAM,0BAAA;AACjB,WAAO3C,UAAUG;EACnB;AAEA,MAAIc,IAAIS,QAAQQ,SAAS,OAAA,GAAU;AACjC,UAAMjB,IAAI2B,gBAAgB,OAAOC,aAAAA;AAC/B,YAAMC,MAAM7B,IAAIS,QAAQQ,SAAS,KAAA;AACjC,UAAIY,KAAK;AACP,cAAM7B,IAAI8B,aAAaF,UAASC,GAAAA;MAClC;AACA,YAAMvB,OAAON,IAAIS,QAAQQ,SAAS,MAAA;AAClC,UAAIX,MAAM;AACR,cAAMN,IAAI+B,aAAaH,UAAStB,IAAAA;MAClC;AAEA,UAAI,CAACuB,OAAO,CAACvB,MAAM;AACjB,cAAMN,IAAI8B,aAAaF,UAAS,QAAA;MAClC;IACF,CAAA;AACA,WAAO7C,UAAUI;EACnB;AAEA,QAAMyC,UAAU,MAAM5B,IAAIgC,QAAO;AACjC,MAAI,CAACJ,SAAS;AACZ,WAAO7C,UAAUC;EACnB;AACA,MAAIgB,IAAIS,QAAQQ,SAAS,uBAAA,KAA4BjB,IAAIsB,OAAOE,YAAW,GAAI;AAC7E,WAAOzC,UAAUC;EACnB;AAEAgB,MAAIiC,SAASL,OAAAA;AACb,MAAI5B,IAAIsB,OAAOC,UAAS,GAAI;AAC1B,WAAOxC,UAAUO;EACnB;AACA,MAAIU,IAAIS,QAAQQ,SAAS,uBAAA,KAA4BjB,IAAIsB,OAAOE,YAAW,GAAI;AAC7E,WAAOzC,UAAUO;EACnB;AAEA,MAAIU,IAAIS,QAAQQ,SAAS,MAAA,MAAY,QAAQ;AAC3C,UAAMY,MAAM7B,IAAIS,QAAQQ,SAAS,KAAA;AACjC,QAAIY,KAAK;AACP,YAAM7B,IAAI8B,aAAaF,SAASC,GAAAA;IAClC;AACA,UAAMvB,OAAON,IAAIS,QAAQQ,SAAS,MAAA;AAClC,QAAIX,MAAM;AACR,YAAMN,IAAI+B,aAAaH,SAAStB,IAAAA;IAClC;AAEA,QAAI,CAACuB,OAAO,CAACvB,MAAM;AACjB,YAAMN,IAAI8B,aAAaF,SAAS,QAAA;IAClC;AAEA,QAAI5B,IAAIsB,OAAOC,UAAS,GAAI;AAC1B,aAAOxC,UAAUM;IACnB;AACA,QAAIW,IAAIS,QAAQQ,SAAS,uBAAA,KAA4BjB,IAAIsB,OAAOE,YAAW,GAAI;AAC7E,aAAOzC,UAAUM;IACnB;EACF;AACA6B,UAAQC,IAAIe,MAAMC,MAAM,GAAGpB,OAAAA,OAAc,CAAA;AACzC,SAAOhC,UAAUI;AACnB,GAjFmB;;;ACxCnBiD,eAAAA,EACGC,KAAK,MAAA;AACJC,UAAQC,KAAK,CAAA;AACf,CAAA,EACCC,MAAM,CAACC,UAAAA;AACNC,UAAQD,MAAMA,KAAAA;AACdH,UAAQC,KAAK,CAAA;AACf,CAAA;","names":["existsSync","path","chalk","Application","ArgumentsReader","TSConfigReader","TypeDocReader","ExitCodes","CompileError","ExceptionThrown","NoEntryPoints","Ok","OptionError","OutputError","ValidationError","packageGenDocs","pkg","process","env","INIT_CWD","undefined","existsSync","path","join","app","Application","bootstrap","entryPointStrategy","entryPoints","excludeExternals","json","logLevel","tsconfig","options","addReader","ArgumentsReader","TypeDocReader","TSConfigReader","runTypeDoc","pkgName","npm_package_name","getValue","console","log","toString","getRawValues","logger","hasErrors","hasWarnings","length","error","convertAndWatch","project","out","generateDocs","generateJson","convert","validate","chalk","green","packageGenDocs","then","process","exit","catch","error","console"]}
1
+ {"version":3,"sources":["../../../src/actions/package/gen-docs.ts","../../../src/bin/package/gen-docs.ts"],"sourcesContent":["/* eslint-disable complexity */\n/* eslint-disable max-statements */\nimport { existsSync } from 'node:fs'\nimport path from 'node:path'\n\nimport chalk from 'chalk'\nimport {\n Application, ArgumentsReader, TSConfigReader, TypeDocReader,\n} from 'typedoc'\n\nconst ExitCodes = {\n CompileError: 3,\n ExceptionThrown: 6,\n NoEntryPoints: 2,\n Ok: 0,\n OptionError: 1,\n OutputError: 5,\n ValidationError: 4,\n}\n\nexport const packageGenDocs = async () => {\n const pkg = process.env.INIT_CWD\n\n if (pkg !== undefined && !existsSync(path.join(pkg, 'typedoc.json'))) {\n return\n }\n\n const app = await Application.bootstrap({\n entryPointStrategy: 'merge',\n entryPoints: [`${pkg}/src/**/*.ts`, `${pkg}/packages/*/dist/docs.json`],\n excludeExternals: true,\n json: `${pkg}/dist/docs.json`,\n logLevel: 'Error',\n tsconfig: `${pkg}/tsconfig.json`,\n })\n\n app.options.addReader(new ArgumentsReader(0))\n app.options.addReader(new TypeDocReader())\n app.options.addReader(new TSConfigReader())\n app.options.addReader(new ArgumentsReader(300))\n\n return await runTypeDoc(app)\n}\n\nconst runTypeDoc = async (app: Application) => {\n const pkgName = process.env.npm_package_name\n if (app.options.getValue('version')) {\n console.log(app.toString())\n return ExitCodes.Ok\n }\n\n if (app.options.getValue('showConfig')) {\n console.log(app.options.getRawValues())\n return ExitCodes.Ok\n }\n\n if (app.logger.hasErrors()) {\n return ExitCodes.OptionError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.OptionError\n }\n\n if (app.options.getValue('entryPoints').length === 0) {\n app.logger.error('No entry points provided')\n return ExitCodes.NoEntryPoints\n }\n\n if (app.options.getValue('watch')) {\n await app.convertAndWatch(async (project) => {\n const out = app.options.getValue('out')\n if (out) {\n await app.generateDocs(project, out)\n }\n const json = app.options.getValue('json')\n if (json) {\n await app.generateJson(project, json)\n }\n\n if (!out && !json) {\n await app.generateDocs(project, './docs')\n }\n })\n return ExitCodes.Ok\n }\n\n const project = await app.convert()\n if (!project) {\n return ExitCodes.CompileError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.CompileError\n }\n\n app.validate(project)\n if (app.logger.hasErrors()) {\n return ExitCodes.ValidationError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.ValidationError\n }\n\n if (app.options.getValue('emit') !== 'none') {\n const out = app.options.getValue('out')\n if (out) {\n await app.generateDocs(project, out)\n }\n const json = app.options.getValue('json')\n if (json) {\n await app.generateJson(project, json)\n }\n\n if (!out && !json) {\n await app.generateDocs(project, './docs')\n }\n\n if (app.logger.hasErrors()) {\n return ExitCodes.OutputError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.OutputError\n }\n }\n console.log(chalk.green(`${pkgName} - Ok`))\n return ExitCodes.Ok\n}\n","#!/usr/bin/env node\n\nimport { packageGenDocs } from '../../actions/index.ts'\n\npackageGenDocs()\n .then(() => {\n process.exit(0)\n })\n .catch((error) => {\n console.error(error)\n process.exit(1)\n })\n"],"mappings":";;;AAEA,SAAS,kBAAkB;AAC3B,OAAO,UAAU;AAEjB,OAAO,WAAW;AAClB;AAAA,EACE;AAAA,EAAa;AAAA,EAAiB;AAAA,EAAgB;AAAA,OACzC;AAEP,IAAM,YAAY;AAAA,EAChB,cAAc;AAAA,EACd,iBAAiB;AAAA,EACjB,eAAe;AAAA,EACf,IAAI;AAAA,EACJ,aAAa;AAAA,EACb,aAAa;AAAA,EACb,iBAAiB;AACnB;AAEO,IAAM,iBAAiB,YAAY;AACxC,QAAM,MAAM,QAAQ,IAAI;AAExB,MAAI,QAAQ,UAAa,CAAC,WAAW,KAAK,KAAK,KAAK,cAAc,CAAC,GAAG;AACpE;AAAA,EACF;AAEA,QAAM,MAAM,MAAM,YAAY,UAAU;AAAA,IACtC,oBAAoB;AAAA,IACpB,aAAa,CAAC,GAAG,GAAG,gBAAgB,GAAG,GAAG,4BAA4B;AAAA,IACtE,kBAAkB;AAAA,IAClB,MAAM,GAAG,GAAG;AAAA,IACZ,UAAU;AAAA,IACV,UAAU,GAAG,GAAG;AAAA,EAClB,CAAC;AAED,MAAI,QAAQ,UAAU,IAAI,gBAAgB,CAAC,CAAC;AAC5C,MAAI,QAAQ,UAAU,IAAI,cAAc,CAAC;AACzC,MAAI,QAAQ,UAAU,IAAI,eAAe,CAAC;AAC1C,MAAI,QAAQ,UAAU,IAAI,gBAAgB,GAAG,CAAC;AAE9C,SAAO,MAAM,WAAW,GAAG;AAC7B;AAEA,IAAM,aAAa,OAAO,QAAqB;AAC7C,QAAM,UAAU,QAAQ,IAAI;AAC5B,MAAI,IAAI,QAAQ,SAAS,SAAS,GAAG;AACnC,YAAQ,IAAI,IAAI,SAAS,CAAC;AAC1B,WAAO,UAAU;AAAA,EACnB;AAEA,MAAI,IAAI,QAAQ,SAAS,YAAY,GAAG;AACtC,YAAQ,IAAI,IAAI,QAAQ,aAAa,CAAC;AACtC,WAAO,UAAU;AAAA,EACnB;AAEA,MAAI,IAAI,OAAO,UAAU,GAAG;AAC1B,WAAO,UAAU;AAAA,EACnB;AACA,MAAI,IAAI,QAAQ,SAAS,uBAAuB,KAAK,IAAI,OAAO,YAAY,GAAG;AAC7E,WAAO,UAAU;AAAA,EACnB;AAEA,MAAI,IAAI,QAAQ,SAAS,aAAa,EAAE,WAAW,GAAG;AACpD,QAAI,OAAO,MAAM,0BAA0B;AAC3C,WAAO,UAAU;AAAA,EACnB;AAEA,MAAI,IAAI,QAAQ,SAAS,OAAO,GAAG;AACjC,UAAM,IAAI,gBAAgB,OAAOA,aAAY;AAC3C,YAAM,MAAM,IAAI,QAAQ,SAAS,KAAK;AACtC,UAAI,KAAK;AACP,cAAM,IAAI,aAAaA,UAAS,GAAG;AAAA,MACrC;AACA,YAAM,OAAO,IAAI,QAAQ,SAAS,MAAM;AACxC,UAAI,MAAM;AACR,cAAM,IAAI,aAAaA,UAAS,IAAI;AAAA,MACtC;AAEA,UAAI,CAAC,OAAO,CAAC,MAAM;AACjB,cAAM,IAAI,aAAaA,UAAS,QAAQ;AAAA,MAC1C;AAAA,IACF,CAAC;AACD,WAAO,UAAU;AAAA,EACnB;AAEA,QAAM,UAAU,MAAM,IAAI,QAAQ;AAClC,MAAI,CAAC,SAAS;AACZ,WAAO,UAAU;AAAA,EACnB;AACA,MAAI,IAAI,QAAQ,SAAS,uBAAuB,KAAK,IAAI,OAAO,YAAY,GAAG;AAC7E,WAAO,UAAU;AAAA,EACnB;AAEA,MAAI,SAAS,OAAO;AACpB,MAAI,IAAI,OAAO,UAAU,GAAG;AAC1B,WAAO,UAAU;AAAA,EACnB;AACA,MAAI,IAAI,QAAQ,SAAS,uBAAuB,KAAK,IAAI,OAAO,YAAY,GAAG;AAC7E,WAAO,UAAU;AAAA,EACnB;AAEA,MAAI,IAAI,QAAQ,SAAS,MAAM,MAAM,QAAQ;AAC3C,UAAM,MAAM,IAAI,QAAQ,SAAS,KAAK;AACtC,QAAI,KAAK;AACP,YAAM,IAAI,aAAa,SAAS,GAAG;AAAA,IACrC;AACA,UAAM,OAAO,IAAI,QAAQ,SAAS,MAAM;AACxC,QAAI,MAAM;AACR,YAAM,IAAI,aAAa,SAAS,IAAI;AAAA,IACtC;AAEA,QAAI,CAAC,OAAO,CAAC,MAAM;AACjB,YAAM,IAAI,aAAa,SAAS,QAAQ;AAAA,IAC1C;AAEA,QAAI,IAAI,OAAO,UAAU,GAAG;AAC1B,aAAO,UAAU;AAAA,IACnB;AACA,QAAI,IAAI,QAAQ,SAAS,uBAAuB,KAAK,IAAI,OAAO,YAAY,GAAG;AAC7E,aAAO,UAAU;AAAA,IACnB;AAAA,EACF;AACA,UAAQ,IAAI,MAAM,MAAM,GAAG,OAAO,OAAO,CAAC;AAC1C,SAAO,UAAU;AACnB;;;ACzHA,eAAe,EACZ,KAAK,MAAM;AACV,UAAQ,KAAK,CAAC;AAChB,CAAC,EACA,MAAM,CAAC,UAAU;AAChB,UAAQ,MAAM,KAAK;AACnB,UAAQ,KAAK,CAAC;AAChB,CAAC;","names":["project"]}
@@ -1,6 +1,4 @@
1
1
  #!/usr/bin/env node
2
- var __defProp = Object.defineProperty;
3
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
4
2
 
5
3
  // src/bin/package/lint.ts
6
4
  import chalk2 from "chalk";
@@ -14,27 +12,24 @@ import chalk from "chalk";
14
12
  import { ESLint } from "eslint";
15
13
  import { findUp } from "find-up";
16
14
  import picomatch from "picomatch";
17
- var dumpMessages = /* @__PURE__ */ __name((lintResults) => {
18
- const colors = [
19
- "white",
20
- "yellow",
21
- "red"
22
- ];
23
- const severity = [
24
- "none",
25
- "warning",
26
- "error"
27
- ];
15
+ var dumpMessages = (lintResults) => {
16
+ const colors = ["white", "yellow", "red"];
17
+ const severity = ["none", "warning", "error"];
28
18
  for (const lintResult of lintResults) {
29
19
  if (lintResult.messages.length > 0) {
30
20
  console.log(chalk.gray(`
31
21
  ${lintResult.filePath}`));
32
22
  for (const message of lintResult.messages) {
33
- console.log(chalk.gray(` ${message.line}:${message.column}`), chalk[colors[message.severity]](` ${severity[message.severity]}`), chalk.white(` ${message.message}`), chalk.gray(` ${message.ruleId}`));
23
+ console.log(
24
+ chalk.gray(` ${message.line}:${message.column}`),
25
+ chalk[colors[message.severity]](` ${severity[message.severity]}`),
26
+ chalk.white(` ${message.message}`),
27
+ chalk.gray(` ${message.ruleId}`)
28
+ );
34
29
  }
35
30
  }
36
31
  }
37
- }, "dumpMessages");
32
+ };
38
33
  async function getRootESLintConfig() {
39
34
  const configPath = await findUp("eslint.config.mjs");
40
35
  if (configPath === void 0) {
@@ -42,43 +37,26 @@ async function getRootESLintConfig() {
42
37
  }
43
38
  return pathToFileURL(configPath);
44
39
  }
45
- __name(getRootESLintConfig, "getRootESLintConfig");
46
40
  function getFiles(dir, ignoreFolders) {
47
41
  const currentDirectory = cwd();
48
42
  const subDirectory = dir.split(currentDirectory)[1];
49
43
  if (ignoreFolders.includes(subDirectory)) return [];
50
- return readdirSync(dir, {
51
- withFileTypes: true
52
- }).flatMap((dirent) => {
44
+ return readdirSync(dir, { withFileTypes: true }).flatMap((dirent) => {
53
45
  const res = path.resolve(dir, dirent.name);
54
46
  const relativePath = subDirectory === void 0 ? dirent.name : `${subDirectory}/${dirent.name}`;
55
47
  const ignoreMatchers = ignoreFolders.map((pattern) => picomatch(pattern));
56
48
  if (ignoreMatchers.some((isMatch) => isMatch(relativePath))) return [];
57
- return dirent.isDirectory() ? getFiles(res, ignoreFolders) : [
58
- res
59
- ];
49
+ return dirent.isDirectory() ? getFiles(res, ignoreFolders) : [res];
60
50
  });
61
51
  }
62
- __name(getFiles, "getFiles");
63
- var packageLint = /* @__PURE__ */ __name(async (fix = false, verbose = false, cache = true) => {
52
+ var packageLint = async (fix = false, verbose = false, cache = true) => {
64
53
  const pkg = process.env.INIT_CWD;
65
54
  const configPath = await getRootESLintConfig();
66
55
  const { default: eslintConfig } = await import(configPath.href);
67
56
  const start = Date.now();
68
- const ignoreFolders = [
69
- "node_modules",
70
- "dist",
71
- "packages",
72
- ".git",
73
- "build",
74
- ".yarn",
75
- ".vscode",
76
- ".github"
77
- ];
57
+ const ignoreFolders = ["node_modules", "dist", "packages", ".git", "build", ".yarn", ".vscode", ".github"];
78
58
  const engine = new ESLint({
79
- baseConfig: [
80
- ...eslintConfig
81
- ],
59
+ baseConfig: [...eslintConfig],
82
60
  fix,
83
61
  warnIgnored: false,
84
62
  cache
@@ -97,7 +75,7 @@ var packageLint = /* @__PURE__ */ __name(async (fix = false, verbose = false, ca
97
75
  const lintTimeColor = lintTime < 1e3 ? "green" : lintTime < 3e3 ? "yellow" : "red";
98
76
  console.log(chalk.white(`Linted ${chalk[filesCountColor](files.length)} files in ${chalk[lintTimeColor](lintTime)}ms`));
99
77
  return lintResults.reduce((prev, lintResult) => prev + lintResult.errorCount, 0);
100
- }, "packageLint");
78
+ };
101
79
 
102
80
  // src/bin/package/lint.ts
103
81
  packageLint().then((value) => {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/bin/package/lint.ts","../../../src/actions/package/lint.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport chalk from 'chalk'\n\nimport { packageLint } from '../../actions/index.ts'\n\npackageLint()\n .then((value) => {\n if (value) {\n process.exit(value)\n }\n })\n .catch((reason) => {\n console.error(chalk.red(reason))\n process.exit(-1)\n })\n","import { readdirSync } from 'node:fs'\nimport path from 'node:path'\nimport { cwd } from 'node:process'\nimport { pathToFileURL } from 'node:url'\n\nimport chalk from 'chalk'\nimport { ESLint } from 'eslint'\nimport { findUp } from 'find-up'\nimport picomatch from 'picomatch'\n\nconst dumpMessages = (lintResults: ESLint.LintResult[]) => {\n const colors: ('white' | 'red' | 'yellow')[] = ['white', 'yellow', 'red']\n const severity: string[] = ['none', 'warning', 'error']\n\n for (const lintResult of lintResults) {\n if (lintResult.messages.length > 0) {\n console.log(chalk.gray(`\\n${lintResult.filePath}`))\n for (const message of lintResult.messages) {\n console.log(\n chalk.gray(`\\t${message.line}:${message.column}`),\n chalk[colors[message.severity]](`\\t${severity[message.severity]}`),\n chalk.white(`\\t${message.message}`),\n chalk.gray(`\\t${message.ruleId}`),\n )\n }\n }\n }\n}\n\nasync function getRootESLintConfig() {\n // Locate the root eslint.config.mjs\n const configPath = await findUp('eslint.config.mjs')\n\n if (configPath === undefined) {\n throw new Error('eslint.config.mjs not found in the monorepo')\n }\n\n return pathToFileURL(configPath)\n}\n\nfunction getFiles(dir: string, ignoreFolders: string[]): string[] {\n const currentDirectory = cwd()\n const subDirectory = dir.split(currentDirectory)[1]\n if (ignoreFolders.includes(subDirectory)) return []\n return readdirSync(dir, { withFileTypes: true })\n .flatMap((dirent) => {\n const res = path.resolve(dir, dirent.name)\n const relativePath = (subDirectory === undefined) ? dirent.name : `${subDirectory}/${dirent.name}`\n\n const ignoreMatchers = ignoreFolders.map(pattern => picomatch(pattern))\n\n // Exclude ignored paths\n if (ignoreMatchers.some(isMatch => isMatch(relativePath))) return []\n\n return dirent.isDirectory()\n ? getFiles(res, ignoreFolders)\n : [res]\n })\n}\n\nexport const packageLint = async (fix = false, verbose = false, cache = true) => {\n const pkg = process.env.INIT_CWD\n const configPath = await getRootESLintConfig()\n const { default: eslintConfig } = await import(configPath.href)\n\n const start = Date.now()\n\n // List of folders to ignore\n const ignoreFolders = ['node_modules', 'dist', 'packages', '.git', 'build', '.yarn', '.vscode', '.github']\n\n const engine = new ESLint({\n baseConfig: [...eslintConfig], fix, warnIgnored: false, cache,\n })\n\n const files = getFiles(cwd(), ignoreFolders)\n if (verbose) {\n console.log(chalk.green(`Linting ${pkg} [files = ${files.length}]`))\n }\n const lintResults = await engine.lintFiles(files)\n\n dumpMessages(lintResults)\n\n if (fix) {\n await ESLint.outputFixes(lintResults)\n }\n const filesCountColor = files.length < 100 ? 'green' : files.length < 1000 ? 'yellow' : 'red'\n const lintTime = Date.now() - start\n const lintTimeColor = lintTime < 1000 ? 'green' : lintTime < 3000 ? 'yellow' : 'red'\n console.log(chalk.white(`Linted ${chalk[filesCountColor](files.length)} files in ${chalk[lintTimeColor](lintTime)}ms`))\n return lintResults.reduce((prev, lintResult) => prev + lintResult.errorCount, 0)\n}\n"],"mappings":";;;;;AAEA,OAAOA,YAAW;;;ACFlB,SAASC,mBAAmB;AAC5B,OAAOC,UAAU;AACjB,SAASC,WAAW;AACpB,SAASC,qBAAqB;AAE9B,OAAOC,WAAW;AAClB,SAASC,cAAc;AACvB,SAASC,cAAc;AACvB,OAAOC,eAAe;AAEtB,IAAMC,eAAe,wBAACC,gBAAAA;AACpB,QAAMC,SAAyC;IAAC;IAAS;IAAU;;AACnE,QAAMC,WAAqB;IAAC;IAAQ;IAAW;;AAE/C,aAAWC,cAAcH,aAAa;AACpC,QAAIG,WAAWC,SAASC,SAAS,GAAG;AAClCC,cAAQC,IAAIC,MAAMC,KAAK;EAAKN,WAAWO,QAAQ,EAAE,CAAA;AACjD,iBAAWC,WAAWR,WAAWC,UAAU;AACzCE,gBAAQC,IACNC,MAAMC,KAAK,IAAKE,QAAQC,IAAI,IAAID,QAAQE,MAAM,EAAE,GAChDL,MAAMP,OAAOU,QAAQT,QAAQ,CAAC,EAAE,IAAKA,SAASS,QAAQT,QAAQ,CAAC,EAAE,GACjEM,MAAMM,MAAM,IAAKH,QAAQA,OAAO,EAAE,GAClCH,MAAMC,KAAK,IAAKE,QAAQI,MAAM,EAAE,CAAA;MAEpC;IACF;EACF;AACF,GAjBqB;AAmBrB,eAAeC,sBAAAA;AAEb,QAAMC,aAAa,MAAMC,OAAO,mBAAA;AAEhC,MAAID,eAAeE,QAAW;AAC5B,UAAM,IAAIC,MAAM,6CAAA;EAClB;AAEA,SAAOC,cAAcJ,UAAAA;AACvB;AATeD;AAWf,SAASM,SAASC,KAAaC,eAAuB;AACpD,QAAMC,mBAAmBC,IAAAA;AACzB,QAAMC,eAAeJ,IAAIK,MAAMH,gBAAAA,EAAkB,CAAA;AACjD,MAAID,cAAcK,SAASF,YAAAA,EAAe,QAAO,CAAA;AACjD,SAAOG,YAAYP,KAAK;IAAEQ,eAAe;EAAK,CAAA,EAC3CC,QAAQ,CAACC,WAAAA;AACR,UAAMC,MAAMC,KAAKC,QAAQb,KAAKU,OAAOI,IAAI;AACzC,UAAMC,eAAgBX,iBAAiBR,SAAac,OAAOI,OAAO,GAAGV,YAAAA,IAAgBM,OAAOI,IAAI;AAEhG,UAAME,iBAAiBf,cAAcgB,IAAIC,CAAAA,YAAWC,UAAUD,OAAAA,CAAAA;AAG9D,QAAIF,eAAeI,KAAKC,CAAAA,YAAWA,QAAQN,YAAAA,CAAAA,EAAgB,QAAO,CAAA;AAElE,WAAOL,OAAOY,YAAW,IACrBvB,SAASY,KAAKV,aAAAA,IACd;MAACU;;EACP,CAAA;AACJ;AAlBSZ;AAoBF,IAAMwB,cAAc,8BAAOC,MAAM,OAAOC,UAAU,OAAOC,QAAQ,SAAI;AAC1E,QAAMC,MAAMC,QAAQC,IAAIC;AACxB,QAAMpC,aAAa,MAAMD,oBAAAA;AACzB,QAAM,EAAEsC,SAASC,aAAY,IAAK,MAAM,OAAOtC,WAAWuC;AAE1D,QAAMC,QAAQC,KAAKC,IAAG;AAGtB,QAAMnC,gBAAgB;IAAC;IAAgB;IAAQ;IAAY;IAAQ;IAAS;IAAS;IAAW;;AAEhG,QAAMoC,SAAS,IAAIC,OAAO;IACxBC,YAAY;SAAIP;;IAAeR;IAAKgB,aAAa;IAAOd;EAC1D,CAAA;AAEA,QAAMe,QAAQ1C,SAASI,IAAAA,GAAOF,aAAAA;AAC9B,MAAIwB,SAAS;AACX1C,YAAQC,IAAIC,MAAMyD,MAAM,WAAWf,GAAAA,aAAgBc,MAAM3D,MAAM,GAAG,CAAA;EACpE;AACA,QAAML,cAAc,MAAM4D,OAAOM,UAAUF,KAAAA;AAE3CjE,eAAaC,WAAAA;AAEb,MAAI+C,KAAK;AACP,UAAMc,OAAOM,YAAYnE,WAAAA;EAC3B;AACA,QAAMoE,kBAAkBJ,MAAM3D,SAAS,MAAM,UAAU2D,MAAM3D,SAAS,MAAO,WAAW;AACxF,QAAMgE,WAAWX,KAAKC,IAAG,IAAKF;AAC9B,QAAMa,gBAAgBD,WAAW,MAAO,UAAUA,WAAW,MAAO,WAAW;AAC/E/D,UAAQC,IAAIC,MAAMM,MAAM,UAAUN,MAAM4D,eAAAA,EAAiBJ,MAAM3D,MAAM,CAAA,aAAcG,MAAM8D,aAAAA,EAAeD,QAAAA,CAAAA,IAAa,CAAA;AACrH,SAAOrE,YAAYuE,OAAO,CAACC,MAAMrE,eAAeqE,OAAOrE,WAAWsE,YAAY,CAAA;AAChF,GA9B2B;;;ADtD3BC,YAAAA,EACGC,KAAK,CAACC,UAAAA;AACL,MAAIA,OAAO;AACTC,YAAQC,KAAKF,KAAAA;EACf;AACF,CAAA,EACCG,MAAM,CAACC,WAAAA;AACNC,UAAQC,MAAMC,OAAMC,IAAIJ,MAAAA,CAAAA;AACxBH,UAAQC,KAAK,EAAC;AAChB,CAAA;","names":["chalk","readdirSync","path","cwd","pathToFileURL","chalk","ESLint","findUp","picomatch","dumpMessages","lintResults","colors","severity","lintResult","messages","length","console","log","chalk","gray","filePath","message","line","column","white","ruleId","getRootESLintConfig","configPath","findUp","undefined","Error","pathToFileURL","getFiles","dir","ignoreFolders","currentDirectory","cwd","subDirectory","split","includes","readdirSync","withFileTypes","flatMap","dirent","res","path","resolve","name","relativePath","ignoreMatchers","map","pattern","picomatch","some","isMatch","isDirectory","packageLint","fix","verbose","cache","pkg","process","env","INIT_CWD","default","eslintConfig","href","start","Date","now","engine","ESLint","baseConfig","warnIgnored","files","green","lintFiles","outputFixes","filesCountColor","lintTime","lintTimeColor","reduce","prev","errorCount","packageLint","then","value","process","exit","catch","reason","console","error","chalk","red"]}
1
+ {"version":3,"sources":["../../../src/bin/package/lint.ts","../../../src/actions/package/lint.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport chalk from 'chalk'\n\nimport { packageLint } from '../../actions/index.ts'\n\npackageLint()\n .then((value) => {\n if (value) {\n process.exit(value)\n }\n })\n .catch((reason) => {\n console.error(chalk.red(reason))\n process.exit(-1)\n })\n","import { readdirSync } from 'node:fs'\nimport path from 'node:path'\nimport { cwd } from 'node:process'\nimport { pathToFileURL } from 'node:url'\n\nimport chalk from 'chalk'\nimport { ESLint } from 'eslint'\nimport { findUp } from 'find-up'\nimport picomatch from 'picomatch'\n\nconst dumpMessages = (lintResults: ESLint.LintResult[]) => {\n const colors: ('white' | 'red' | 'yellow')[] = ['white', 'yellow', 'red']\n const severity: string[] = ['none', 'warning', 'error']\n\n for (const lintResult of lintResults) {\n if (lintResult.messages.length > 0) {\n console.log(chalk.gray(`\\n${lintResult.filePath}`))\n for (const message of lintResult.messages) {\n console.log(\n chalk.gray(`\\t${message.line}:${message.column}`),\n chalk[colors[message.severity]](`\\t${severity[message.severity]}`),\n chalk.white(`\\t${message.message}`),\n chalk.gray(`\\t${message.ruleId}`),\n )\n }\n }\n }\n}\n\nasync function getRootESLintConfig() {\n // Locate the root eslint.config.mjs\n const configPath = await findUp('eslint.config.mjs')\n\n if (configPath === undefined) {\n throw new Error('eslint.config.mjs not found in the monorepo')\n }\n\n return pathToFileURL(configPath)\n}\n\nfunction getFiles(dir: string, ignoreFolders: string[]): string[] {\n const currentDirectory = cwd()\n const subDirectory = dir.split(currentDirectory)[1]\n if (ignoreFolders.includes(subDirectory)) return []\n return readdirSync(dir, { withFileTypes: true })\n .flatMap((dirent) => {\n const res = path.resolve(dir, dirent.name)\n const relativePath = (subDirectory === undefined) ? dirent.name : `${subDirectory}/${dirent.name}`\n\n const ignoreMatchers = ignoreFolders.map(pattern => picomatch(pattern))\n\n // Exclude ignored paths\n if (ignoreMatchers.some(isMatch => isMatch(relativePath))) return []\n\n return dirent.isDirectory()\n ? getFiles(res, ignoreFolders)\n : [res]\n })\n}\n\nexport const packageLint = async (fix = false, verbose = false, cache = true) => {\n const pkg = process.env.INIT_CWD\n const configPath = await getRootESLintConfig()\n const { default: eslintConfig } = await import(configPath.href)\n\n const start = Date.now()\n\n // List of folders to ignore\n const ignoreFolders = ['node_modules', 'dist', 'packages', '.git', 'build', '.yarn', '.vscode', '.github']\n\n const engine = new ESLint({\n baseConfig: [...eslintConfig], fix, warnIgnored: false, cache,\n })\n\n const files = getFiles(cwd(), ignoreFolders)\n if (verbose) {\n console.log(chalk.green(`Linting ${pkg} [files = ${files.length}]`))\n }\n const lintResults = await engine.lintFiles(files)\n\n dumpMessages(lintResults)\n\n if (fix) {\n await ESLint.outputFixes(lintResults)\n }\n const filesCountColor = files.length < 100 ? 'green' : files.length < 1000 ? 'yellow' : 'red'\n const lintTime = Date.now() - start\n const lintTimeColor = lintTime < 1000 ? 'green' : lintTime < 3000 ? 'yellow' : 'red'\n console.log(chalk.white(`Linted ${chalk[filesCountColor](files.length)} files in ${chalk[lintTimeColor](lintTime)}ms`))\n return lintResults.reduce((prev, lintResult) => prev + lintResult.errorCount, 0)\n}\n"],"mappings":"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","names":["chalk","chalk"]}
@@ -1,6 +1,4 @@
1
1
  #!/usr/bin/env node
2
- var __defProp = Object.defineProperty;
3
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
4
2
 
5
3
  // src/bin/package/publint.ts
6
4
  import chalk2 from "chalk";
@@ -9,27 +7,29 @@ import chalk2 from "chalk";
9
7
  import { promises as fs } from "fs";
10
8
  import chalk from "chalk";
11
9
  import sortPackageJson from "sort-package-json";
12
- var customPubLint = /* @__PURE__ */ __name((pkg) => {
10
+ var customPubLint = (pkg) => {
13
11
  let errorCount = 0;
14
12
  let warningCount = 0;
15
13
  if (pkg.files === void 0) {
16
- console.error(chalk.yellow('Publint [custom]: "files" field is missing'));
14
+ console.warn(chalk.yellow('Publint [custom]: "files" field is missing'));
17
15
  warningCount++;
18
16
  }
19
17
  if (pkg.main !== void 0) {
20
- console.error(chalk.yellow('Publint [custom]: "main" field is deprecated, use "exports" instead'));
18
+ console.warn(chalk.yellow('Publint [custom]: "main" field is deprecated, use "exports" instead'));
21
19
  warningCount++;
22
20
  }
23
21
  if (pkg.sideEffects !== false) {
24
- console.error(chalk.yellow('Publint [custom]: "sideEffects" field should be set to false'));
22
+ console.warn(chalk.yellow('Publint [custom]: "sideEffects" field should be set to false'));
25
23
  warningCount++;
26
24
  }
27
- return [
28
- errorCount,
29
- warningCount
30
- ];
31
- }, "customPubLint");
32
- var packagePublint = /* @__PURE__ */ __name(async ({ strict = true, verbose = false } = {}) => {
25
+ if (pkg.resolutions !== void 0) {
26
+ console.warn(chalk.yellow('Publint [custom]: "resolutions" in use'));
27
+ console.warn(chalk.gray(JSON.stringify(pkg.resolutions, null, 2)));
28
+ warningCount++;
29
+ }
30
+ return [errorCount, warningCount];
31
+ };
32
+ var packagePublint = async ({ strict = true, verbose = false } = {}) => {
33
33
  const pkgDir = process.env.INIT_CWD;
34
34
  const sortedPkg = sortPackageJson(await fs.readFile(`${pkgDir}/package.json`, "utf8"));
35
35
  await fs.writeFile(`${pkgDir}/package.json`, sortedPkg);
@@ -64,7 +64,7 @@ var packagePublint = /* @__PURE__ */ __name(async ({ strict = true, verbose = fa
64
64
  console.log(chalk.gray(`Publint [Finish]: ${pkgDir} [${messages.length + errorCount + warningCount} messages]`));
65
65
  }
66
66
  return messages.filter((message) => message.type === "error").length + errorCount;
67
- }, "packagePublint");
67
+ };
68
68
 
69
69
  // src/bin/package/publint.ts
70
70
  packagePublint().then((value) => process.exitCode = value).catch((ex) => {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/bin/package/publint.ts","../../../src/actions/package/publint.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport chalk from 'chalk'\n\nimport { packagePublint } from '../../actions/index.ts'\n\npackagePublint()\n .then(value => (process.exitCode = value))\n .catch((ex: Error) => {\n console.error(`Publint Failed: ${chalk.red(ex)}`)\n console.error(chalk.gray(ex.stack))\n process.exitCode = -1\n })\n","import { promises as fs } from 'node:fs'\n\nimport chalk from 'chalk'\nimport sortPackageJson from 'sort-package-json'\n\nexport interface PackagePublintParams { strict?: boolean; verbose?: boolean }\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst customPubLint = (pkg: any): [number, number] => {\n let errorCount = 0\n let warningCount = 0\n if (pkg.files === undefined) {\n console.error(chalk.yellow('Publint [custom]: \"files\" field is missing'))\n warningCount++\n }\n if (pkg.main !== undefined) {\n console.error(chalk.yellow('Publint [custom]: \"main\" field is deprecated, use \"exports\" instead'))\n warningCount++\n }\n if (pkg.sideEffects !== false) {\n console.error(chalk.yellow('Publint [custom]: \"sideEffects\" field should be set to false'))\n warningCount++\n }\n return [errorCount, warningCount]\n}\n\nexport const packagePublint = async ({ strict = true, verbose = false }: PackagePublintParams = {}) => {\n const pkgDir = process.env.INIT_CWD\n\n const sortedPkg = sortPackageJson(await fs.readFile(`${pkgDir}/package.json`, 'utf8'))\n await fs.writeFile(`${pkgDir}/package.json`, sortedPkg)\n\n const pkg = JSON.parse(await fs.readFile(`${pkgDir}/package.json`, 'utf8'))\n\n console.log(chalk.green(`Publint: ${pkg.name}`))\n console.log(chalk.gray(pkgDir))\n\n const { publint } = await import('publint')\n\n const { messages } = await publint({\n level: 'suggestion',\n pkgDir,\n strict,\n })\n\n // eslint-disable-next-line import-x/no-internal-modules\n const { formatMessage } = await import('publint/utils')\n\n for (const message of messages) {\n switch (message.type) {\n case 'error': {\n console.error(chalk.red(`[${message.code}] ${formatMessage(message, pkg)}`))\n break\n }\n case 'warning': {\n console.warn(chalk.yellow(`[${message.code}] ${formatMessage(message, pkg)}`))\n break\n }\n default: {\n console.log(chalk.white(`[${message.code}] ${formatMessage(message, pkg)}`))\n break\n }\n }\n }\n\n const [errorCount, warningCount] = customPubLint(pkg)\n\n if (verbose) {\n console.log(chalk.gray(`Publint [Finish]: ${pkgDir} [${messages.length + errorCount + warningCount} messages]`))\n }\n\n return messages.filter(message => message.type === 'error').length + errorCount\n}\n"],"mappings":";;;;;AAEA,OAAOA,YAAW;;;ACFlB,SAASC,YAAYC,UAAU;AAE/B,OAAOC,WAAW;AAClB,OAAOC,qBAAqB;AAK5B,IAAMC,gBAAgB,wBAACC,QAAAA;AACrB,MAAIC,aAAa;AACjB,MAAIC,eAAe;AACnB,MAAIF,IAAIG,UAAUC,QAAW;AAC3BC,YAAQC,MAAMC,MAAMC,OAAO,4CAAA,CAAA;AAC3BN;EACF;AACA,MAAIF,IAAIS,SAASL,QAAW;AAC1BC,YAAQC,MAAMC,MAAMC,OAAO,qEAAA,CAAA;AAC3BN;EACF;AACA,MAAIF,IAAIU,gBAAgB,OAAO;AAC7BL,YAAQC,MAAMC,MAAMC,OAAO,8DAAA,CAAA;AAC3BN;EACF;AACA,SAAO;IAACD;IAAYC;;AACtB,GAhBsB;AAkBf,IAAMS,iBAAiB,8BAAO,EAAEC,SAAS,MAAMC,UAAU,MAAK,IAA2B,CAAC,MAAC;AAChG,QAAMC,SAASC,QAAQC,IAAIC;AAE3B,QAAMC,YAAYC,gBAAgB,MAAMC,GAAGC,SAAS,GAAGP,MAAAA,iBAAuB,MAAA,CAAA;AAC9E,QAAMM,GAAGE,UAAU,GAAGR,MAAAA,iBAAuBI,SAAAA;AAE7C,QAAMlB,MAAMuB,KAAKC,MAAM,MAAMJ,GAAGC,SAAS,GAAGP,MAAAA,iBAAuB,MAAA,CAAA;AAEnET,UAAQoB,IAAIlB,MAAMmB,MAAM,YAAY1B,IAAI2B,IAAI,EAAE,CAAA;AAC9CtB,UAAQoB,IAAIlB,MAAMqB,KAAKd,MAAAA,CAAAA;AAEvB,QAAM,EAAEe,QAAO,IAAK,MAAM,OAAO,SAAA;AAEjC,QAAM,EAAEC,SAAQ,IAAK,MAAMD,QAAQ;IACjCE,OAAO;IACPjB;IACAF;EACF,CAAA;AAGA,QAAM,EAAEoB,cAAa,IAAK,MAAM,OAAO,eAAA;AAEvC,aAAWC,WAAWH,UAAU;AAC9B,YAAQG,QAAQC,MAAI;MAClB,KAAK,SAAS;AACZ7B,gBAAQC,MAAMC,MAAM4B,IAAI,IAAIF,QAAQG,IAAI,KAAKJ,cAAcC,SAASjC,GAAAA,CAAAA,EAAM,CAAA;AAC1E;MACF;MACA,KAAK,WAAW;AACdK,gBAAQgC,KAAK9B,MAAMC,OAAO,IAAIyB,QAAQG,IAAI,KAAKJ,cAAcC,SAASjC,GAAAA,CAAAA,EAAM,CAAA;AAC5E;MACF;MACA,SAAS;AACPK,gBAAQoB,IAAIlB,MAAM+B,MAAM,IAAIL,QAAQG,IAAI,KAAKJ,cAAcC,SAASjC,GAAAA,CAAAA,EAAM,CAAA;AAC1E;MACF;IACF;EACF;AAEA,QAAM,CAACC,YAAYC,YAAAA,IAAgBH,cAAcC,GAAAA;AAEjD,MAAIa,SAAS;AACXR,YAAQoB,IAAIlB,MAAMqB,KAAK,qBAAqBd,MAAAA,KAAWgB,SAASS,SAAStC,aAAaC,YAAAA,YAAwB,CAAA;EAChH;AAEA,SAAO4B,SAASU,OAAOP,CAAAA,YAAWA,QAAQC,SAAS,OAAA,EAASK,SAAStC;AACvE,GA9C8B;;;ADpB9BwC,eAAAA,EACGC,KAAKC,CAAAA,UAAUC,QAAQC,WAAWF,KAAAA,EAClCG,MAAM,CAACC,OAAAA;AACNC,UAAQC,MAAM,mBAAmBC,OAAMC,IAAIJ,EAAAA,CAAAA,EAAK;AAChDC,UAAQC,MAAMC,OAAME,KAAKL,GAAGM,KAAK,CAAA;AACjCT,UAAQC,WAAW;AACrB,CAAA;","names":["chalk","promises","fs","chalk","sortPackageJson","customPubLint","pkg","errorCount","warningCount","files","undefined","console","error","chalk","yellow","main","sideEffects","packagePublint","strict","verbose","pkgDir","process","env","INIT_CWD","sortedPkg","sortPackageJson","fs","readFile","writeFile","JSON","parse","log","green","name","gray","publint","messages","level","formatMessage","message","type","red","code","warn","white","length","filter","packagePublint","then","value","process","exitCode","catch","ex","console","error","chalk","red","gray","stack"]}
1
+ {"version":3,"sources":["../../../src/bin/package/publint.ts","../../../src/actions/package/publint.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport chalk from 'chalk'\n\nimport { packagePublint } from '../../actions/index.ts'\n\npackagePublint()\n .then(value => (process.exitCode = value))\n .catch((ex: Error) => {\n console.error(`Publint Failed: ${chalk.red(ex)}`)\n console.error(chalk.gray(ex.stack))\n process.exitCode = -1\n })\n","import { promises as fs } from 'node:fs'\n\nimport chalk from 'chalk'\nimport sortPackageJson from 'sort-package-json'\n\nexport interface PackagePublintParams { strict?: boolean; verbose?: boolean }\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst customPubLint = (pkg: any): [number, number] => {\n let errorCount = 0\n let warningCount = 0\n if (pkg.files === undefined) {\n console.warn(chalk.yellow('Publint [custom]: \"files\" field is missing'))\n warningCount++\n }\n if (pkg.main !== undefined) {\n console.warn(chalk.yellow('Publint [custom]: \"main\" field is deprecated, use \"exports\" instead'))\n warningCount++\n }\n if (pkg.sideEffects !== false) {\n console.warn(chalk.yellow('Publint [custom]: \"sideEffects\" field should be set to false'))\n warningCount++\n }\n if (pkg.resolutions !== undefined) {\n console.warn(chalk.yellow('Publint [custom]: \"resolutions\" in use'))\n console.warn(chalk.gray(JSON.stringify(pkg.resolutions, null, 2)))\n warningCount++\n }\n return [errorCount, warningCount]\n}\n\nexport const packagePublint = async ({ strict = true, verbose = false }: PackagePublintParams = {}) => {\n const pkgDir = process.env.INIT_CWD\n\n const sortedPkg = sortPackageJson(await fs.readFile(`${pkgDir}/package.json`, 'utf8'))\n await fs.writeFile(`${pkgDir}/package.json`, sortedPkg)\n\n const pkg = JSON.parse(await fs.readFile(`${pkgDir}/package.json`, 'utf8'))\n\n console.log(chalk.green(`Publint: ${pkg.name}`))\n console.log(chalk.gray(pkgDir))\n\n const { publint } = await import('publint')\n\n const { messages } = await publint({\n level: 'suggestion',\n pkgDir,\n strict,\n })\n\n // eslint-disable-next-line import-x/no-internal-modules\n const { formatMessage } = await import('publint/utils')\n\n for (const message of messages) {\n switch (message.type) {\n case 'error': {\n console.error(chalk.red(`[${message.code}] ${formatMessage(message, pkg)}`))\n break\n }\n case 'warning': {\n console.warn(chalk.yellow(`[${message.code}] ${formatMessage(message, pkg)}`))\n break\n }\n default: {\n console.log(chalk.white(`[${message.code}] ${formatMessage(message, pkg)}`))\n break\n }\n }\n }\n\n const [errorCount, warningCount] = customPubLint(pkg)\n\n if (verbose) {\n console.log(chalk.gray(`Publint [Finish]: ${pkgDir} [${messages.length + errorCount + warningCount} messages]`))\n }\n\n return messages.filter(message => message.type === 'error').length + errorCount\n}\n"],"mappings":";;;AAEA,OAAOA,YAAW;;;ACFlB,SAAS,YAAY,UAAU;AAE/B,OAAO,WAAW;AAClB,OAAO,qBAAqB;AAK5B,IAAM,gBAAgB,CAAC,QAA+B;AACpD,MAAI,aAAa;AACjB,MAAI,eAAe;AACnB,MAAI,IAAI,UAAU,QAAW;AAC3B,YAAQ,KAAK,MAAM,OAAO,4CAA4C,CAAC;AACvE;AAAA,EACF;AACA,MAAI,IAAI,SAAS,QAAW;AAC1B,YAAQ,KAAK,MAAM,OAAO,qEAAqE,CAAC;AAChG;AAAA,EACF;AACA,MAAI,IAAI,gBAAgB,OAAO;AAC7B,YAAQ,KAAK,MAAM,OAAO,8DAA8D,CAAC;AACzF;AAAA,EACF;AACA,MAAI,IAAI,gBAAgB,QAAW;AACjC,YAAQ,KAAK,MAAM,OAAO,wCAAwC,CAAC;AACnE,YAAQ,KAAK,MAAM,KAAK,KAAK,UAAU,IAAI,aAAa,MAAM,CAAC,CAAC,CAAC;AACjE;AAAA,EACF;AACA,SAAO,CAAC,YAAY,YAAY;AAClC;AAEO,IAAM,iBAAiB,OAAO,EAAE,SAAS,MAAM,UAAU,MAAM,IAA0B,CAAC,MAAM;AACrG,QAAM,SAAS,QAAQ,IAAI;AAE3B,QAAM,YAAY,gBAAgB,MAAM,GAAG,SAAS,GAAG,MAAM,iBAAiB,MAAM,CAAC;AACrF,QAAM,GAAG,UAAU,GAAG,MAAM,iBAAiB,SAAS;AAEtD,QAAM,MAAM,KAAK,MAAM,MAAM,GAAG,SAAS,GAAG,MAAM,iBAAiB,MAAM,CAAC;AAE1E,UAAQ,IAAI,MAAM,MAAM,YAAY,IAAI,IAAI,EAAE,CAAC;AAC/C,UAAQ,IAAI,MAAM,KAAK,MAAM,CAAC;AAE9B,QAAM,EAAE,QAAQ,IAAI,MAAM,OAAO,SAAS;AAE1C,QAAM,EAAE,SAAS,IAAI,MAAM,QAAQ;AAAA,IACjC,OAAO;AAAA,IACP;AAAA,IACA;AAAA,EACF,CAAC;AAGD,QAAM,EAAE,cAAc,IAAI,MAAM,OAAO,eAAe;AAEtD,aAAW,WAAW,UAAU;AAC9B,YAAQ,QAAQ,MAAM;AAAA,MACpB,KAAK,SAAS;AACZ,gBAAQ,MAAM,MAAM,IAAI,IAAI,QAAQ,IAAI,KAAK,cAAc,SAAS,GAAG,CAAC,EAAE,CAAC;AAC3E;AAAA,MACF;AAAA,MACA,KAAK,WAAW;AACd,gBAAQ,KAAK,MAAM,OAAO,IAAI,QAAQ,IAAI,KAAK,cAAc,SAAS,GAAG,CAAC,EAAE,CAAC;AAC7E;AAAA,MACF;AAAA,MACA,SAAS;AACP,gBAAQ,IAAI,MAAM,MAAM,IAAI,QAAQ,IAAI,KAAK,cAAc,SAAS,GAAG,CAAC,EAAE,CAAC;AAC3E;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAEA,QAAM,CAAC,YAAY,YAAY,IAAI,cAAc,GAAG;AAEpD,MAAI,SAAS;AACX,YAAQ,IAAI,MAAM,KAAK,qBAAqB,MAAM,KAAK,SAAS,SAAS,aAAa,YAAY,YAAY,CAAC;AAAA,EACjH;AAEA,SAAO,SAAS,OAAO,aAAW,QAAQ,SAAS,OAAO,EAAE,SAAS;AACvE;;;ADvEA,eAAe,EACZ,KAAK,WAAU,QAAQ,WAAW,KAAM,EACxC,MAAM,CAAC,OAAc;AACpB,UAAQ,MAAM,mBAAmBC,OAAM,IAAI,EAAE,CAAC,EAAE;AAChD,UAAQ,MAAMA,OAAM,KAAK,GAAG,KAAK,CAAC;AAClC,UAAQ,WAAW;AACrB,CAAC;","names":["chalk","chalk"]}