@xylabs/ts-scripts-yarn3 7.0.0-rc.9 → 7.0.1

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 (273) hide show
  1. package/dist/actions/build.mjs +87 -39
  2. package/dist/actions/build.mjs.map +1 -1
  3. package/dist/actions/clean-docs.mjs +22 -8
  4. package/dist/actions/clean-docs.mjs.map +1 -1
  5. package/dist/actions/clean-eslint.mjs +11 -5
  6. package/dist/actions/clean-eslint.mjs.map +1 -1
  7. package/dist/actions/clean-jest.mjs +29 -16
  8. package/dist/actions/clean-jest.mjs.map +1 -1
  9. package/dist/actions/clean.mjs +63 -32
  10. package/dist/actions/clean.mjs.map +1 -1
  11. package/dist/actions/compile.mjs +76 -50
  12. package/dist/actions/compile.mjs.map +1 -1
  13. package/dist/actions/copy-assets.mjs +38 -23
  14. package/dist/actions/copy-assets.mjs.map +1 -1
  15. package/dist/actions/cycle.mjs +57 -28
  16. package/dist/actions/cycle.mjs.map +1 -1
  17. package/dist/actions/dead.mjs +31 -16
  18. package/dist/actions/dead.mjs.map +1 -1
  19. package/dist/actions/deplint/checkPackage/checkPackage.mjs +84 -50
  20. package/dist/actions/deplint/checkPackage/checkPackage.mjs.map +1 -1
  21. package/dist/actions/deplint/checkPackage/getUnlistedDependencies.mjs +7 -7
  22. package/dist/actions/deplint/checkPackage/getUnlistedDependencies.mjs.map +1 -1
  23. package/dist/actions/deplint/checkPackage/getUnlistedDevDependencies.mjs +6 -10
  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 +4 -0
  28. package/dist/actions/deplint/checkPackage/getUnusedPeerDependencies.mjs.map +1 -1
  29. package/dist/actions/deplint/checkPackage/index.mjs +84 -50
  30. package/dist/actions/deplint/checkPackage/index.mjs.map +1 -1
  31. package/dist/actions/deplint/deplint.mjs +120 -81
  32. package/dist/actions/deplint/deplint.mjs.map +1 -1
  33. package/dist/actions/deplint/findFiles.mjs +20 -4
  34. package/dist/actions/deplint/findFiles.mjs.map +1 -1
  35. package/dist/actions/deplint/findFilesByGlob.mjs +8 -1
  36. package/dist/actions/deplint/findFilesByGlob.mjs.map +1 -1
  37. package/dist/actions/deplint/getBasePackageName.mjs +4 -0
  38. package/dist/actions/deplint/getBasePackageName.mjs.map +1 -1
  39. package/dist/actions/deplint/getDependenciesFromPackageJson.mjs +4 -0
  40. package/dist/actions/deplint/getDependenciesFromPackageJson.mjs.map +1 -1
  41. package/dist/actions/deplint/getExternalImportsFromFiles.mjs +24 -12
  42. package/dist/actions/deplint/getExternalImportsFromFiles.mjs.map +1 -1
  43. package/dist/actions/deplint/getImportsFromFile.mjs +16 -9
  44. package/dist/actions/deplint/getImportsFromFile.mjs.map +1 -1
  45. package/dist/actions/deplint/index.mjs +120 -81
  46. package/dist/actions/deplint/index.mjs.map +1 -1
  47. package/dist/actions/deploy-major.mjs +57 -26
  48. package/dist/actions/deploy-major.mjs.map +1 -1
  49. package/dist/actions/deploy-minor.mjs +57 -26
  50. package/dist/actions/deploy-minor.mjs.map +1 -1
  51. package/dist/actions/deploy-next.mjs +57 -26
  52. package/dist/actions/deploy-next.mjs.map +1 -1
  53. package/dist/actions/deploy.mjs +57 -26
  54. package/dist/actions/deploy.mjs.map +1 -1
  55. package/dist/actions/dupdeps.mjs +37 -26
  56. package/dist/actions/dupdeps.mjs.map +1 -1
  57. package/dist/actions/fix.mjs +54 -36
  58. package/dist/actions/fix.mjs.map +1 -1
  59. package/dist/actions/gen-docs.mjs +65 -25
  60. package/dist/actions/gen-docs.mjs.map +1 -1
  61. package/dist/actions/gitignore-gen.mjs +44 -28
  62. package/dist/actions/gitignore-gen.mjs.map +1 -1
  63. package/dist/actions/gitlint-fix.mjs +14 -5
  64. package/dist/actions/gitlint-fix.mjs.map +1 -1
  65. package/dist/actions/gitlint.mjs +7 -4
  66. package/dist/actions/gitlint.mjs.map +1 -1
  67. package/dist/actions/index.mjs +1555 -966
  68. package/dist/actions/index.mjs.map +1 -1
  69. package/dist/actions/knip.mjs +31 -16
  70. package/dist/actions/knip.mjs.map +1 -1
  71. package/dist/actions/license.mjs +51 -37
  72. package/dist/actions/license.mjs.map +1 -1
  73. package/dist/actions/lint.mjs +48 -33
  74. package/dist/actions/lint.mjs.map +1 -1
  75. package/dist/actions/npmignore-gen.mjs +44 -28
  76. package/dist/actions/npmignore-gen.mjs.map +1 -1
  77. package/dist/actions/package/clean-outputs.mjs +16 -6
  78. package/dist/actions/package/clean-outputs.mjs.map +1 -1
  79. package/dist/actions/package/clean-typescript.mjs +16 -6
  80. package/dist/actions/package/clean-typescript.mjs.map +1 -1
  81. package/dist/actions/package/clean.mjs +29 -12
  82. package/dist/actions/package/clean.mjs.map +1 -1
  83. package/dist/actions/package/compile/buildEntries.mjs +36 -8
  84. package/dist/actions/package/compile/buildEntries.mjs.map +1 -1
  85. package/dist/actions/package/compile/compile.mjs +341 -185
  86. package/dist/actions/package/compile/compile.mjs.map +1 -1
  87. package/dist/actions/package/compile/copyTypeFiles.mjs +23 -20
  88. package/dist/actions/package/compile/copyTypeFiles.mjs.map +1 -1
  89. package/dist/actions/package/compile/deepMerge.mjs +5 -0
  90. package/dist/actions/package/compile/deepMerge.mjs.map +1 -1
  91. package/dist/actions/package/compile/getCompilerOptions.mjs +9 -23
  92. package/dist/actions/package/compile/getCompilerOptions.mjs.map +1 -1
  93. package/dist/actions/package/compile/index.mjs +341 -267
  94. package/dist/actions/package/compile/index.mjs.map +1 -1
  95. package/dist/actions/package/compile/inputs.mjs +26 -3
  96. package/dist/actions/package/compile/inputs.mjs.map +1 -1
  97. package/dist/actions/package/compile/packageCompileTsc.mjs +57 -96
  98. package/dist/actions/package/compile/packageCompileTsc.mjs.map +1 -1
  99. package/dist/actions/package/compile/packageCompileTscTypes.mjs +94 -25
  100. package/dist/actions/package/compile/packageCompileTscTypes.mjs.map +1 -1
  101. package/dist/actions/package/compile/packageCompileTsup.mjs +321 -123
  102. package/dist/actions/package/compile/packageCompileTsup.mjs.map +1 -1
  103. package/dist/actions/package/copy-assets.mjs +21 -12
  104. package/dist/actions/package/copy-assets.mjs.map +1 -1
  105. package/dist/actions/package/cycle.mjs +16 -9
  106. package/dist/actions/package/cycle.mjs.map +1 -1
  107. package/dist/actions/package/gen-docs.mjs +13 -12
  108. package/dist/actions/package/gen-docs.mjs.map +1 -1
  109. package/dist/actions/package/index.mjs +507 -347
  110. package/dist/actions/package/index.mjs.map +1 -1
  111. package/dist/actions/package/lint.mjs +39 -16
  112. package/dist/actions/package/lint.mjs.map +1 -1
  113. package/dist/actions/package/publint.mjs +9 -6
  114. package/dist/actions/package/publint.mjs.map +1 -1
  115. package/dist/actions/package/recompile.mjs +371 -201
  116. package/dist/actions/package/recompile.mjs.map +1 -1
  117. package/dist/actions/publint.mjs +71 -37
  118. package/dist/actions/publint.mjs.map +1 -1
  119. package/dist/actions/rebuild.mjs +29 -17
  120. package/dist/actions/rebuild.mjs.map +1 -1
  121. package/dist/actions/recompile.mjs +67 -50
  122. package/dist/actions/recompile.mjs.map +1 -1
  123. package/dist/actions/reinstall.mjs +43 -25
  124. package/dist/actions/reinstall.mjs.map +1 -1
  125. package/dist/actions/relint.mjs +63 -40
  126. package/dist/actions/relint.mjs.map +1 -1
  127. package/dist/actions/retest.mjs +35 -17
  128. package/dist/actions/retest.mjs.map +1 -1
  129. package/dist/actions/sonar.mjs +32 -16
  130. package/dist/actions/sonar.mjs.map +1 -1
  131. package/dist/actions/statics.mjs +46 -27
  132. package/dist/actions/statics.mjs.map +1 -1
  133. package/dist/actions/test.mjs +30 -16
  134. package/dist/actions/test.mjs.map +1 -1
  135. package/dist/actions/up.mjs +27 -16
  136. package/dist/actions/up.mjs.map +1 -1
  137. package/dist/actions/updo.mjs +33 -18
  138. package/dist/actions/updo.mjs.map +1 -1
  139. package/dist/actions/upplug.mjs +53 -19
  140. package/dist/actions/upplug.mjs.map +1 -1
  141. package/dist/actions/upyarn.mjs +31 -16
  142. package/dist/actions/upyarn.mjs.map +1 -1
  143. package/dist/actions/yarn3only.mjs +23 -12
  144. package/dist/actions/yarn3only.mjs.map +1 -1
  145. package/dist/bin/package/build-only.mjs +346 -191
  146. package/dist/bin/package/build-only.mjs.map +1 -1
  147. package/dist/bin/package/build.mjs +348 -191
  148. package/dist/bin/package/build.mjs.map +1 -1
  149. package/dist/bin/package/clean-outputs.mjs +15 -6
  150. package/dist/bin/package/clean-outputs.mjs.map +1 -1
  151. package/dist/bin/package/clean-typescript.mjs +15 -6
  152. package/dist/bin/package/clean-typescript.mjs.map +1 -1
  153. package/dist/bin/package/clean.mjs +28 -12
  154. package/dist/bin/package/clean.mjs.map +1 -1
  155. package/dist/bin/package/compile-only.mjs +345 -190
  156. package/dist/bin/package/compile-only.mjs.map +1 -1
  157. package/dist/bin/package/compile-tsup.mjs +323 -126
  158. package/dist/bin/package/compile-tsup.mjs.map +1 -1
  159. package/dist/bin/package/compile.mjs +346 -191
  160. package/dist/bin/package/compile.mjs.map +1 -1
  161. package/dist/bin/package/copy-assets-cjs.mjs +23 -13
  162. package/dist/bin/package/copy-assets-cjs.mjs.map +1 -1
  163. package/dist/bin/package/copy-assets-esm.mjs +23 -13
  164. package/dist/bin/package/copy-assets-esm.mjs.map +1 -1
  165. package/dist/bin/package/cycle.mjs +17 -11
  166. package/dist/bin/package/cycle.mjs.map +1 -1
  167. package/dist/bin/package/fix.mjs +38 -16
  168. package/dist/bin/package/fix.mjs.map +1 -1
  169. package/dist/bin/package/gen-docs.mjs +12 -12
  170. package/dist/bin/package/gen-docs.mjs.map +1 -1
  171. package/dist/bin/package/lint.mjs +38 -16
  172. package/dist/bin/package/lint.mjs.map +1 -1
  173. package/dist/bin/package/publint.mjs +8 -6
  174. package/dist/bin/package/publint.mjs.map +1 -1
  175. package/dist/bin/package/recompile.mjs +372 -203
  176. package/dist/bin/package/recompile.mjs.map +1 -1
  177. package/dist/bin/package/relint.mjs +38 -16
  178. package/dist/bin/package/relint.mjs.map +1 -1
  179. package/dist/bin/xy.mjs +1351 -1075
  180. package/dist/bin/xy.mjs.map +1 -1
  181. package/dist/index.d.ts +133 -121
  182. package/dist/index.mjs +1908 -1460
  183. package/dist/index.mjs.map +1 -1
  184. package/dist/lib/checkResult.mjs +5 -2
  185. package/dist/lib/checkResult.mjs.map +1 -1
  186. package/dist/lib/createBuildConfig.mjs +24 -9
  187. package/dist/lib/createBuildConfig.mjs.map +1 -1
  188. package/dist/lib/defaultBuildConfig.mjs +6 -2
  189. package/dist/lib/defaultBuildConfig.mjs.map +1 -1
  190. package/dist/lib/deleteGlob.mjs +9 -3
  191. package/dist/lib/deleteGlob.mjs.map +1 -1
  192. package/dist/lib/dependencies/DuplicateDetector.mjs +23 -12
  193. package/dist/lib/dependencies/DuplicateDetector.mjs.map +1 -1
  194. package/dist/lib/dependencies/detectDuplicateDependencies.mjs +33 -22
  195. package/dist/lib/dependencies/detectDuplicateDependencies.mjs.map +1 -1
  196. package/dist/lib/dependencies/index.mjs +33 -22
  197. package/dist/lib/dependencies/index.mjs.map +1 -1
  198. package/dist/lib/file/ReadFileSyncOptions.mjs +3 -1
  199. package/dist/lib/file/ReadFileSyncOptions.mjs.map +1 -1
  200. package/dist/lib/file/constants.mjs.map +1 -1
  201. package/dist/lib/file/fileLines.mjs +13 -12
  202. package/dist/lib/file/fileLines.mjs.map +1 -1
  203. package/dist/lib/file/index.mjs +15 -14
  204. package/dist/lib/file/index.mjs.map +1 -1
  205. package/dist/lib/file/tryReadFileSync.mjs +8 -3
  206. package/dist/lib/file/tryReadFileSync.mjs.map +1 -1
  207. package/dist/lib/generateIgnoreFiles.mjs +43 -27
  208. package/dist/lib/generateIgnoreFiles.mjs.map +1 -1
  209. package/dist/lib/index.mjs +166 -106
  210. package/dist/lib/index.mjs.map +1 -1
  211. package/dist/lib/jsonFormatters.mjs +5 -2
  212. package/dist/lib/jsonFormatters.mjs.map +1 -1
  213. package/dist/lib/loadConfig.mjs +20 -10
  214. package/dist/lib/loadConfig.mjs.map +1 -1
  215. package/dist/lib/parsedPackageJSON.mjs +5 -2
  216. package/dist/lib/parsedPackageJSON.mjs.map +1 -1
  217. package/dist/lib/processEx.mjs +9 -6
  218. package/dist/lib/processEx.mjs.map +1 -1
  219. package/dist/lib/runSteps.mjs +19 -13
  220. package/dist/lib/runSteps.mjs.map +1 -1
  221. package/dist/lib/runStepsAsync.mjs +22 -22
  222. package/dist/lib/runStepsAsync.mjs.map +1 -1
  223. package/dist/lib/runXy.mjs +31 -19
  224. package/dist/lib/runXy.mjs.map +1 -1
  225. package/dist/lib/runXyWithWarning.mjs +5 -2
  226. package/dist/lib/runXyWithWarning.mjs.map +1 -1
  227. package/dist/lib/safeExit.mjs +13 -10
  228. package/dist/lib/safeExit.mjs.map +1 -1
  229. package/dist/lib/string/empty.mjs +5 -2
  230. package/dist/lib/string/empty.mjs.map +1 -1
  231. package/dist/lib/string/index.mjs +9 -3
  232. package/dist/lib/string/index.mjs.map +1 -1
  233. package/dist/lib/string/union.mjs +7 -1
  234. package/dist/lib/string/union.mjs.map +1 -1
  235. package/dist/lib/withErrnoException.mjs +7 -4
  236. package/dist/lib/withErrnoException.mjs.map +1 -1
  237. package/dist/lib/withError.mjs +5 -2
  238. package/dist/lib/withError.mjs.map +1 -1
  239. package/dist/lib/yarn/index.mjs +30 -11
  240. package/dist/lib/yarn/index.mjs.map +1 -1
  241. package/dist/lib/yarn/isYarnVersionOrGreater.mjs +15 -4
  242. package/dist/lib/yarn/isYarnVersionOrGreater.mjs.map +1 -1
  243. package/dist/lib/yarn/workspace/index.mjs +16 -5
  244. package/dist/lib/yarn/workspace/index.mjs.map +1 -1
  245. package/dist/lib/yarn/workspace/yarnWorkspace.mjs +16 -5
  246. package/dist/lib/yarn/workspace/yarnWorkspace.mjs.map +1 -1
  247. package/dist/lib/yarn/workspace/yarnWorkspaces.mjs +14 -3
  248. package/dist/lib/yarn/workspace/yarnWorkspaces.mjs.map +1 -1
  249. package/dist/lib/yarn/yarnInitCwd.mjs +5 -2
  250. package/dist/lib/yarn/yarnInitCwd.mjs.map +1 -1
  251. package/dist/loadPackageConfig.mjs +8 -3
  252. package/dist/loadPackageConfig.mjs.map +1 -1
  253. package/dist/xy/index.mjs +1351 -1074
  254. package/dist/xy/index.mjs.map +1 -1
  255. package/dist/xy/param.mjs +9 -3
  256. package/dist/xy/param.mjs.map +1 -1
  257. package/dist/xy/xy.mjs +1351 -1074
  258. package/dist/xy/xy.mjs.map +1 -1
  259. package/dist/xy/xyBuildCommands.mjs +324 -305
  260. package/dist/xy/xyBuildCommands.mjs.map +1 -1
  261. package/dist/xy/xyCommonCommands.mjs +336 -251
  262. package/dist/xy/xyCommonCommands.mjs.map +1 -1
  263. package/dist/xy/xyDeployCommands.mjs +161 -99
  264. package/dist/xy/xyDeployCommands.mjs.map +1 -1
  265. package/dist/xy/xyInstallCommands.mjs +193 -145
  266. package/dist/xy/xyInstallCommands.mjs.map +1 -1
  267. package/dist/xy/xyLintCommands.mjs +437 -321
  268. package/dist/xy/xyLintCommands.mjs.map +1 -1
  269. package/dist/xy/xyParseOptions.mjs +5 -2
  270. package/dist/xy/xyParseOptions.mjs.map +1 -1
  271. package/package.json +13 -12
  272. package/dist/actions/compile-types.mjs +0 -153
  273. package/dist/actions/compile-types.mjs.map +0 -1
@@ -1,7 +1,9 @@
1
1
  #!/usr/bin/env node
2
+ var __defProp = Object.defineProperty;
3
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
2
4
 
3
5
  // src/bin/package/compile-only.ts
4
- import chalk4 from "chalk";
6
+ import chalk7 from "chalk";
5
7
 
6
8
  // src/lib/loadConfig.ts
7
9
  import chalk from "chalk";
@@ -9,85 +11,72 @@ import { cosmiconfig } from "cosmiconfig";
9
11
  import { TypeScriptLoader } from "cosmiconfig-typescript-loader";
10
12
  import deepmerge from "deepmerge";
11
13
  var config;
12
- var loadConfig = async (params) => {
13
- if (config) {
14
- return deepmerge(config, params ?? {});
15
- }
16
- const cosmicConfigResult = await cosmiconfig("xy", { cache: true, loaders: { ".ts": TypeScriptLoader() } }).search();
17
- config = cosmicConfigResult?.config;
18
- const configFilePath = cosmicConfigResult?.filepath;
19
- if (configFilePath) {
20
- console.log(chalk.gray(`Loading config from ${configFilePath}`));
21
- }
22
- return deepmerge(config, params ?? {});
23
- };
24
-
25
- // src/actions/package/compile/compile.ts
26
- import chalk3 from "chalk";
27
-
28
- // src/actions/package/publint.ts
29
- import { promises as fs } from "fs";
30
- import chalk2 from "chalk";
31
- import sortPackageJson from "sort-package-json";
32
- var packagePublint = async (params) => {
33
- const pkgDir = process.env.INIT_CWD;
34
- const sortedPkg = sortPackageJson(await fs.readFile(`${pkgDir}/package.json`, "utf8"));
35
- await fs.writeFile(`${pkgDir}/package.json`, sortedPkg);
36
- const pkg = JSON.parse(await fs.readFile(`${pkgDir}/package.json`, "utf8"));
37
- console.log(chalk2.green(`Publint: ${pkg.name}`));
38
- console.log(chalk2.gray(pkgDir));
39
- const { publint } = await import("publint");
40
- const { messages } = await publint({
41
- level: "suggestion",
42
- pkgDir,
43
- strict: true
44
- });
45
- const { formatMessage } = await import("publint/utils");
46
- const validMessage = (_message) => {
47
- return true;
48
- };
49
- const validMessages = messages.filter(validMessage);
50
- for (const message of validMessages) {
51
- switch (message.type) {
52
- case "error": {
53
- console.error(chalk2.red(`[${message.code}] ${formatMessage(message, pkg)}`));
54
- break;
55
- }
56
- case "warning": {
57
- console.warn(chalk2.yellow(`[${message.code}] ${formatMessage(message, pkg)}`));
58
- break;
14
+ var loadConfig = /* @__PURE__ */ __name(async (params) => {
15
+ if (config === void 0) {
16
+ const cosmicConfigResult = await cosmiconfig("xy", {
17
+ cache: true,
18
+ loaders: {
19
+ ".ts": TypeScriptLoader()
59
20
  }
60
- default: {
61
- console.log(chalk2.white(`[${message.code}] ${formatMessage(message, pkg)}`));
62
- break;
21
+ }).search();
22
+ config = cosmicConfigResult?.config;
23
+ const configFilePath = cosmicConfigResult?.filepath;
24
+ if (configFilePath !== void 0) {
25
+ console.log(chalk.green(`Loaded config from ${configFilePath}`));
26
+ if (config.verbose) {
27
+ console.log(chalk.gray(`${JSON.stringify(config, null, 2)}`));
63
28
  }
64
29
  }
65
30
  }
66
- if (params?.verbose) {
67
- console.log(chalk2.gray(`Publint [Finish]: ${pkgDir} [${validMessages.length}]`));
68
- }
69
- return validMessages.filter((message) => message.type === "error").length;
70
- };
31
+ return deepmerge(config, params ?? {});
32
+ }, "loadConfig");
33
+
34
+ // src/actions/package/compile/compile.ts
35
+ import chalk6 from "chalk";
71
36
 
72
37
  // src/actions/package/compile/packageCompileTsup.ts
38
+ import chalk5 from "chalk";
73
39
  import { build, defineConfig } from "tsup";
74
40
 
75
41
  // src/actions/package/compile/inputs.ts
42
+ import chalk2 from "chalk";
76
43
  import { glob } from "glob";
77
- var getAllInputs = (folder) => {
78
- return glob.sync(`${folder}/**/*.*`, { posix: true });
79
- };
44
+ var getAllInputs = /* @__PURE__ */ __name((srcDir, verbose = false) => {
45
+ return [
46
+ ...glob.sync(`${srcDir}/**/*.ts`, {
47
+ posix: true
48
+ }).map((file) => {
49
+ const result = file.slice(Math.max(0, srcDir.length + 1));
50
+ if (verbose) {
51
+ console.log(chalk2.gray(`getAllInputs: ${JSON.stringify(result, null, 2)}`));
52
+ }
53
+ return result;
54
+ }),
55
+ ...glob.sync(`${srcDir}/**/*.tsx`, {
56
+ posix: true
57
+ }).map((file) => {
58
+ const result = file.slice(Math.max(0, srcDir.length + 1));
59
+ if (verbose) {
60
+ console.log(chalk2.gray(`getAllInputs: ${JSON.stringify(result, null, 2)}`));
61
+ }
62
+ return result;
63
+ })
64
+ ];
65
+ }, "getAllInputs");
80
66
 
81
67
  // src/actions/package/compile/buildEntries.ts
82
- var buildEntries = (folder, entryMode = "single", options, excludeSpecAndStories = true, verbose = false) => {
68
+ var buildEntries = /* @__PURE__ */ __name((srcDir, entryMode = "single", options, excludeSpecAndStories = true, verbose = false) => {
83
69
  let entries = [];
84
70
  switch (entryMode) {
85
71
  case "platform": {
86
- entries = [`${folder}/index-node.ts`, `${folder}/index-browser.ts`];
72
+ entries = [
73
+ "index-node.ts",
74
+ "index-browser.ts"
75
+ ];
87
76
  break;
88
77
  }
89
78
  case "all": {
90
- entries = excludeSpecAndStories ? getAllInputs(folder).filter((entry) => !entry.includes(".spec.") && !entry.includes(".stories.")) : getAllInputs(folder);
79
+ entries = (excludeSpecAndStories ? getAllInputs(srcDir).filter((entry) => !entry.includes(".spec.") && !entry.includes(".stories.")) : getAllInputs(srcDir)).filter((entry) => !entry.endsWith(".d.ts"));
91
80
  break;
92
81
  }
93
82
  case "custom": {
@@ -95,7 +84,9 @@ var buildEntries = (folder, entryMode = "single", options, excludeSpecAndStories
95
84
  break;
96
85
  }
97
86
  default: {
98
- entries = [`${folder}/index.ts`];
87
+ entries = [
88
+ "index.ts"
89
+ ];
99
90
  break;
100
91
  }
101
92
  }
@@ -104,7 +95,7 @@ var buildEntries = (folder, entryMode = "single", options, excludeSpecAndStories
104
95
  }
105
96
  if (verbose) console.log(`buildEntries [${entryMode}] ${entries.length}`);
106
97
  return entries;
107
- };
98
+ }, "buildEntries");
108
99
 
109
100
  // src/actions/package/compile/deepMerge.ts
110
101
  function deepMerge(target, source) {
@@ -121,6 +112,7 @@ function deepMerge(target, source) {
121
112
  }
122
113
  return target;
123
114
  }
115
+ __name(deepMerge, "deepMerge");
124
116
  function deepMergeObjects(objects) {
125
117
  const result = {};
126
118
  for (const obj of objects) {
@@ -128,179 +120,342 @@ function deepMergeObjects(objects) {
128
120
  }
129
121
  return result;
130
122
  }
123
+ __name(deepMergeObjects, "deepMergeObjects");
131
124
 
132
- // src/actions/package/compile/packageCompileTscTypes.ts
125
+ // src/actions/package/compile/packageCompileTsc.ts
126
+ import { cwd as cwd2 } from "process";
127
+ import chalk3 from "chalk";
128
+ import { createProgramFromConfig } from "tsc-prog";
129
+ import ts, { DiagnosticCategory, formatDiagnosticsWithColorAndContext, getPreEmitDiagnostics, sys } from "typescript";
130
+
131
+ // src/actions/package/compile/getCompilerOptions.ts
133
132
  import { cwd } from "process";
133
+ import deepmerge2 from "deepmerge";
134
+ import { getTsconfig } from "get-tsconfig";
135
+ var getCompilerOptions = /* @__PURE__ */ __name((options = {}, fileName = "tsconfig.json") => {
136
+ const resolvedTsConfigCompilerOptions = getTsconfig(cwd(), fileName)?.config?.compilerOptions ?? {};
137
+ return deepmerge2(resolvedTsConfigCompilerOptions, options);
138
+ }, "getCompilerOptions");
139
+
140
+ // src/actions/package/compile/packageCompileTsc.ts
141
+ var packageCompileTsc = /* @__PURE__ */ __name((platform, entries, srcDir = "src", outDir = "dist", compilerOptionsParam, verbose = false) => {
142
+ const pkg = process.env.INIT_CWD ?? cwd2();
143
+ if (verbose) {
144
+ console.log(chalk3.cyan(`Validating code START: ${entries.length} files to ${outDir} from ${srcDir}`));
145
+ }
146
+ const configFilePath = ts.findConfigFile("./", ts.sys.fileExists, "tsconfig.json");
147
+ if (configFilePath === void 0) {
148
+ throw new Error("Could not find tsconfig.json");
149
+ }
150
+ const compilerOptions = {
151
+ ...getCompilerOptions({
152
+ removeComments: false,
153
+ skipDefaultLibCheck: true,
154
+ skipLibCheck: true,
155
+ sourceMap: false
156
+ }),
157
+ ...compilerOptionsParam,
158
+ outDir: `${outDir}/${platform}`,
159
+ emitDeclarationOnly: true,
160
+ noEmit: false
161
+ };
162
+ console.log(chalk3.cyan(`Validating Files: ${entries.length}`));
163
+ if (verbose) {
164
+ for (const entry of entries) {
165
+ console.log(chalk3.grey(`Validating: ${entry}`));
166
+ }
167
+ }
168
+ try {
169
+ if (entries.length > 0) {
170
+ const program = createProgramFromConfig({
171
+ configFilePath,
172
+ basePath: pkg ?? cwd2(),
173
+ compilerOptions,
174
+ files: entries.map((entry) => `${srcDir}/${entry}`),
175
+ include: [
176
+ `${srcDir}/**/*.*`
177
+ ]
178
+ });
179
+ const diagnostics = getPreEmitDiagnostics(program);
180
+ if (diagnostics.length > 0) {
181
+ const formattedDiagnostics = formatDiagnosticsWithColorAndContext(diagnostics, {
182
+ getCanonicalFileName: /* @__PURE__ */ __name((fileName) => fileName, "getCanonicalFileName"),
183
+ getCurrentDirectory: /* @__PURE__ */ __name(() => srcDir, "getCurrentDirectory"),
184
+ getNewLine: /* @__PURE__ */ __name(() => sys.newLine, "getNewLine")
185
+ });
186
+ console.error(formattedDiagnostics);
187
+ }
188
+ program.emit();
189
+ return diagnostics.reduce((acc, diag) => acc + (diag.category === DiagnosticCategory.Error ? 1 : 0), 0);
190
+ }
191
+ return 0;
192
+ } finally {
193
+ if (verbose) {
194
+ console.log(chalk3.cyan(`Validating code FINISH: ${entries.length} files to ${outDir} from ${srcDir}`));
195
+ }
196
+ }
197
+ }, "packageCompileTsc");
198
+
199
+ // src/actions/package/compile/packageCompileTscTypes.ts
200
+ import path from "path";
201
+ import { cwd as cwd3 } from "process";
202
+ import chalk4 from "chalk";
134
203
  import { rollup } from "rollup";
135
204
  import dts from "rollup-plugin-dts";
136
205
  import nodeExternals from "rollup-plugin-node-externals";
137
- async function bundleDts(inputPath, outputPath, platform) {
138
- const nodePlugIns = platform === "node" ? [nodeExternals()] : [];
139
- const bundle = await rollup({
140
- input: inputPath,
141
- plugins: [dts(), ...nodePlugIns],
142
- onwarn(warning, warn) {
143
- if (warning.code === "UNUSED_EXTERNAL_IMPORT") return;
144
- warn(warning);
145
- }
146
- });
147
- await bundle.write({
148
- file: outputPath,
149
- format: "es"
150
- });
151
- console.log(`Bundled declarations written to ${outputPath}`);
206
+ var ignoredWarningCodes = /* @__PURE__ */ new Set([
207
+ "EMPTY_BUNDLE",
208
+ "UNRESOLVED_IMPORT"
209
+ ]);
210
+ async function bundleDts(inputPath, outputPath, platform, options, verbose = false) {
211
+ const pkg = process.env.INIT_CWD ?? cwd3();
212
+ const tsconfigPath = path.resolve(pkg, "tsconfig.json");
213
+ const nodePlugIns = platform === "node" ? [
214
+ nodeExternals()
215
+ ] : [];
216
+ try {
217
+ const bundle = await rollup({
218
+ input: inputPath,
219
+ plugins: [
220
+ dts({
221
+ ...options,
222
+ tsconfig: tsconfigPath,
223
+ compilerOptions: {
224
+ emitDeclarationOnly: true,
225
+ noEmit: false,
226
+ declarationMap: true
227
+ }
228
+ }),
229
+ ...nodePlugIns
230
+ ],
231
+ onwarn(warning, warn) {
232
+ if (ignoredWarningCodes.has(warning.code ?? "")) {
233
+ return;
234
+ }
235
+ console.warn(chalk4.yellow(`[${warning.code}] ${warning.message}`));
236
+ console.warn(chalk4.gray(inputPath));
237
+ warn(warning);
238
+ }
239
+ });
240
+ await bundle.write({
241
+ file: outputPath,
242
+ format: "es"
243
+ });
244
+ } catch (ex) {
245
+ const error = ex;
246
+ console.warn(chalk4.red(error));
247
+ console.warn(chalk4.gray(inputPath));
248
+ }
249
+ if (verbose) {
250
+ console.log(`Bundled declarations written to ${outputPath}`);
251
+ }
152
252
  }
153
- var packageCompileTscTypes = async (entries, outDir, platform, folder = "src") => {
154
- const pkg = process.env.INIT_CWD ?? cwd();
155
- const srcRoot = `${pkg}/${folder}`;
156
- const entryNameToTypeName = (entry) => {
253
+ __name(bundleDts, "bundleDts");
254
+ var packageCompileTscTypes = /* @__PURE__ */ __name(async (entries, outDir, platform, srcDir = "build", verbose = false) => {
255
+ if (verbose) {
256
+ console.log(chalk4.cyan(`Compiling Types START [${platform}]: ${entries.length} files to ${outDir} from ${srcDir}`));
257
+ console.log(`Entries: ${entries.join(", ")}`);
258
+ }
259
+ const pkg = process.env.INIT_CWD ?? cwd3();
260
+ const srcRoot = `${pkg}/${srcDir}/${platform}`;
261
+ const entryNameToTypeName = /* @__PURE__ */ __name((entry) => {
157
262
  const splitEntryName = entry.split(".");
158
263
  const newEntryExtension = "d." + splitEntryName.at(-1);
159
- return [...splitEntryName.slice(0, -1), newEntryExtension].join(".");
160
- };
161
- const entryNames = entries.map((entry) => entry.split(`${folder}/`).at(-1) ?? entry);
264
+ return [
265
+ ...splitEntryName.slice(0, -1),
266
+ newEntryExtension
267
+ ].join(".");
268
+ }, "entryNameToTypeName");
269
+ const compilerOptions = getCompilerOptions({
270
+ removeComments: false,
271
+ skipDefaultLibCheck: true,
272
+ skipLibCheck: true,
273
+ declarationMap: true,
274
+ emitDeclarationOnly: true,
275
+ noEmit: true
276
+ });
277
+ const entryNames = entries.map((entry) => entry.split(`${srcDir}/`).at(-1) ?? entry);
162
278
  await Promise.all(entryNames.map(async (entryName) => {
163
- await bundleDts(`${srcRoot}/${entryName}`, outDir + "/" + entryNameToTypeName(entryName), platform);
279
+ const entryTypeName = entryNameToTypeName(entryName);
280
+ await bundleDts(`${srcRoot}/${entryTypeName}`, `${outDir}/${entryTypeName}`, platform, {
281
+ compilerOptions
282
+ }, verbose);
164
283
  }));
284
+ if (verbose) {
285
+ console.log(chalk4.cyan(`Compiling Types FINISH: ${entries.length} files to ${outDir} from ${srcDir}`));
286
+ }
165
287
  return 0;
166
- };
288
+ }, "packageCompileTscTypes");
167
289
 
168
290
  // src/actions/package/compile/packageCompileTsup.ts
169
- var compileFolder = async (folder, entries, options, verbose) => {
291
+ var compileFolder = /* @__PURE__ */ __name(async (srcDir, entries, buildDir, options, bundleTypes = false, verbose) => {
170
292
  const outDir = options?.outDir ?? "dist";
171
293
  if (verbose) {
172
- console.log(`compileFolder [${folder}]`);
294
+ console.log(`compileFolder [${srcDir}, ${options?.outDir}]`);
295
+ }
296
+ if (entries.length === 0) {
297
+ console.warn(chalk5.yellow(`No entries found in ${srcDir} to compile`));
298
+ return 0;
173
299
  }
174
- const optionsResult = defineConfig({
175
- bundle: true,
176
- cjsInterop: true,
177
- clean: true,
178
- dts: false,
179
- entry: entries,
180
- format: ["esm"],
181
- outDir,
182
- silent: true,
183
- sourcemap: true,
184
- splitting: false,
185
- tsconfig: "tsconfig.json",
186
- ...options
187
- });
188
- const optionsList = (await Promise.all(
189
- (Array.isArray(optionsResult) ? optionsResult : [optionsResult]).flatMap(async (options2) => {
190
- const result = typeof options2 === "function" ? await options2({}) : [options2];
191
- return Array.isArray(result) ? result : [result];
192
- })
193
- )).flat();
194
300
  if (verbose) {
195
- console.log(`TSUP:build:start [${folder}]`);
301
+ console.log(chalk5.gray(`buildDir [${buildDir}]`));
302
+ }
303
+ const validationResult = packageCompileTsc(options?.platform ?? "neutral", entries, srcDir, buildDir, void 0, verbose);
304
+ if (validationResult !== 0) {
305
+ console.error(chalk5.red(`Compile:Validation had ${validationResult} errors`));
306
+ return validationResult;
307
+ }
308
+ const optionsParams = tsupOptions([
309
+ {
310
+ bundle: true,
311
+ cjsInterop: true,
312
+ clean: false,
313
+ dts: false,
314
+ format: [
315
+ "esm"
316
+ ],
317
+ outDir,
318
+ silent: true,
319
+ sourcemap: true,
320
+ splitting: false,
321
+ tsconfig: "tsconfig.json",
322
+ ...options,
323
+ entry: entries.map((entry) => `${srcDir}/${entry}`)
324
+ }
325
+ ]);
326
+ const optionsResult = defineConfig(optionsParams);
327
+ const optionsList = (await Promise.all((Array.isArray(optionsResult) ? optionsResult : [
328
+ optionsResult
329
+ ]).flatMap(async (options2) => {
330
+ const result = typeof options2 === "function" ? await options2({}) : [
331
+ options2
332
+ ];
333
+ return Array.isArray(result) ? result : [
334
+ result
335
+ ];
336
+ }))).flat();
337
+ if (verbose) {
338
+ console.log(chalk5.cyan(`TSUP:build:start [${srcDir}]`));
339
+ console.log(chalk5.gray(`TSUP:build:options [${JSON.stringify(optionsList, null, 2)}]`));
196
340
  }
197
341
  await Promise.all(optionsList.map((options2) => build(options2)));
198
342
  if (verbose) {
199
- console.log(`TSUP:build:stop [${folder}]`);
343
+ console.log(chalk5.cyan(`TSUP:build:stop [${srcDir}]`));
344
+ }
345
+ if (bundleTypes) {
346
+ await packageCompileTscTypes(entries, outDir, options?.platform ?? "neutral", buildDir, verbose);
200
347
  }
201
- await packageCompileTscTypes(entries, outDir, options?.platform ?? "neutral", folder);
202
348
  return 0;
203
- };
204
- var tsupOptions = (options = []) => {
349
+ }, "compileFolder");
350
+ var tsupOptions = /* @__PURE__ */ __name((options = []) => {
205
351
  const standardLoaders = {
206
352
  ".gif": "copy",
207
353
  ".html": "copy",
208
354
  ".jpg": "copy",
209
355
  ".json": "json",
210
356
  ".png": "copy",
211
- ".svg": "copy",
357
+ ".svg": "text",
212
358
  ".webp": "copy"
213
359
  };
214
360
  const standardOptions = {
215
361
  bundle: true,
216
- format: ["esm"],
362
+ format: [
363
+ "esm"
364
+ ],
217
365
  loader: standardLoaders,
218
- outExtension: ({ format }) => format === "esm" ? { js: ".mjs" } : { js: ".cjs" },
366
+ outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
367
+ js: ".mjs"
368
+ } : {
369
+ js: ".cjs"
370
+ }, "outExtension"),
219
371
  skipNodeModulesBundle: true,
220
372
  sourcemap: true,
221
373
  target: "esnext"
222
374
  };
223
- return deepMergeObjects([standardOptions, ...options]);
224
- };
225
- var packageCompileTsup = async (config2) => {
375
+ return deepMergeObjects([
376
+ standardOptions,
377
+ ...options
378
+ ]);
379
+ }, "tsupOptions");
380
+ var packageCompileTsup = /* @__PURE__ */ __name(async (config2) => {
226
381
  const compile = config2?.compile;
227
382
  const verbose = config2?.verbose ?? false;
383
+ const outDirAsBuildDir = compile?.outDirAsBuildDir ?? true;
384
+ const bundleTypes = compile?.bundleTypes ?? false;
228
385
  if (verbose) {
229
- console.log(`Compiling with TSUP [Depth: ${compile?.depth}]`);
230
- }
231
- const compileForNode = compile?.node ?? { src: {} };
232
- const compileForBrowser = compile?.browser ?? { src: {} };
233
- const compileForNeutral = compile?.neutral ?? { src: {} };
234
- if (verbose) {
235
- console.log("Calling packageCompileTscTypes");
386
+ console.log("Compiling with TSUP");
236
387
  }
237
- return (await Promise.all(
238
- Object.entries(compileForNode).map(async ([folder, options]) => {
239
- const optionsObject = typeof options === "object" ? options : {};
240
- const inEsBuildOptions = typeof compile?.node?.esbuildOptions === "object" ? compile?.node?.esbuildOptions : {};
241
- return typeof folder === "string" ? await compileFolder(
242
- folder,
243
- buildEntries(folder, compile?.entryMode, options, true, verbose),
244
- tsupOptions([
245
- inEsBuildOptions,
246
- compile?.tsup?.options ?? {},
247
- typeof options === "object" ? options : {},
248
- { platform: "node", outDir: optionsObject.outDir ?? "dist/node" }
249
- ]),
250
- verbose
251
- ) : 0;
252
- })
253
- )).reduce((prev, value) => prev + value, 0) + (await Promise.all(
254
- Object.entries(compileForBrowser).map(async ([folder, options]) => {
255
- const optionsObject = typeof options === "object" ? options : {};
256
- const inEsBuildOptions = typeof compile?.browser?.esbuildOptions === "object" ? compile?.browser?.esbuildOptions : {};
257
- return typeof folder === "string" ? await compileFolder(
258
- folder,
259
- buildEntries(folder, compile?.entryMode, options, true, verbose),
260
- tsupOptions([
261
- inEsBuildOptions,
262
- compile?.tsup?.options ?? {},
263
- typeof options === "object" ? options : {},
264
- { platform: "browser", outDir: optionsObject.outDir ?? "dist/browser" }
265
- ]),
266
- verbose
267
- ) : 0;
268
- })
269
- )).reduce((prev, value) => prev + value, 0) + (await Promise.all(
270
- Object.entries(compileForNeutral).map(async ([folder, options]) => {
271
- const optionsObject = typeof options === "object" ? options : {};
272
- const inEsBuildOptions = typeof compile?.neutral?.esbuildOptions === "object" ? compile?.neutral?.esbuildOptions : {};
273
- return typeof folder === "string" ? await compileFolder(
274
- folder,
275
- buildEntries(folder, compile?.entryMode, options, true, verbose),
276
- tsupOptions([
277
- inEsBuildOptions,
278
- compile?.tsup?.options ?? {},
279
- typeof options === "object" ? options : {},
280
- { platform: "neutral", outDir: optionsObject.outDir ?? "dist/neutral" }
281
- ]),
282
- verbose
283
- ) : 0;
284
- })
285
- )).reduce((prev, value) => prev + value, 0) + 0;
286
- };
388
+ const compileForNode = compile?.node ?? {
389
+ src: {}
390
+ };
391
+ const compileForBrowser = compile?.browser ?? {
392
+ src: {}
393
+ };
394
+ const compileForNeutral = compile?.neutral ?? {
395
+ src: {}
396
+ };
397
+ return (await Promise.all(Object.entries(compileForNode).map(async ([srcDir, options]) => {
398
+ const optionsObject = typeof options === "object" ? options : {};
399
+ const inEsBuildOptions = typeof compile?.node?.esbuildOptions === "object" ? compile?.node?.esbuildOptions : {};
400
+ const entry = buildEntries(srcDir, compile?.entryMode, options, true, verbose);
401
+ const platform = "node";
402
+ const rootOutDir = optionsObject.outDir ?? "dist";
403
+ const outDir = rootOutDir + "/" + platform;
404
+ return typeof srcDir === "string" ? await compileFolder(srcDir, entry, outDirAsBuildDir ? rootOutDir : "build", tsupOptions([
405
+ inEsBuildOptions,
406
+ compile?.tsup?.options ?? {},
407
+ typeof options === "object" ? options : {},
408
+ {
409
+ platform: "node",
410
+ outDir
411
+ }
412
+ ]), bundleTypes, verbose) : 0;
413
+ }))).reduce((prev, value) => prev + value, 0) + (await Promise.all(Object.entries(compileForBrowser).map(async ([srcDir, options]) => {
414
+ const optionsObject = typeof options === "object" ? options : {};
415
+ const inEsBuildOptions = typeof compile?.browser?.esbuildOptions === "object" ? compile?.browser?.esbuildOptions : {};
416
+ const entry = buildEntries(srcDir, compile?.entryMode, options, true, verbose);
417
+ const platform = "browser";
418
+ const rootOutDir = optionsObject.outDir ?? "dist";
419
+ const outDir = rootOutDir + "/" + platform;
420
+ return typeof srcDir === "string" ? await compileFolder(srcDir, entry, outDirAsBuildDir ? rootOutDir : "build", tsupOptions([
421
+ inEsBuildOptions,
422
+ compile?.tsup?.options ?? {},
423
+ typeof options === "object" ? options : {},
424
+ {
425
+ platform: "browser",
426
+ outDir
427
+ }
428
+ ]), bundleTypes, verbose) : 0;
429
+ }))).reduce((prev, value) => prev + value, 0) + (await Promise.all(Object.entries(compileForNeutral).map(async ([srcDir, options]) => {
430
+ const optionsObject = typeof options === "object" ? options : {};
431
+ const inEsBuildOptions = typeof compile?.neutral?.esbuildOptions === "object" ? compile?.neutral?.esbuildOptions : {};
432
+ const entry = buildEntries(srcDir, compile?.entryMode, options, true, verbose);
433
+ const platform = "neutral";
434
+ const rootOutDir = optionsObject.outDir ?? "dist";
435
+ const outDir = rootOutDir + "/" + platform;
436
+ return typeof srcDir === "string" ? await compileFolder(srcDir, entry, outDirAsBuildDir ? rootOutDir : "build", tsupOptions([
437
+ inEsBuildOptions,
438
+ compile?.tsup?.options ?? {},
439
+ typeof options === "object" ? options : {},
440
+ {
441
+ platform: "neutral",
442
+ outDir
443
+ }
444
+ ]), bundleTypes, verbose) : 0;
445
+ }))).reduce((prev, value) => prev + value, 0) + 0;
446
+ }, "packageCompileTsup");
287
447
 
288
448
  // src/actions/package/compile/compile.ts
289
- var packageCompile = async (inConfig = {}) => {
449
+ var packageCompile = /* @__PURE__ */ __name(async (inConfig = {}) => {
290
450
  const pkg = process.env.INIT_CWD;
291
- console.log(chalk3.green(`Compiling ${pkg}`));
451
+ console.log(chalk6.green(`Compiling ${pkg}`));
292
452
  const config2 = await loadConfig(inConfig);
293
- const publint = config2.publint;
294
- const tsupResults = await packageCompileTsup(config2);
295
- if (tsupResults > 0) {
296
- return tsupResults;
297
- }
298
- return publint ? await packagePublint(config2) : 0;
299
- };
453
+ return await packageCompileTsup(config2);
454
+ }, "packageCompile");
300
455
 
301
456
  // src/bin/package/compile-only.ts
302
- packageCompile({ verbose: true, publint: false }).then((value) => process.exitCode = value).catch((reason) => {
303
- console.error(chalk4.red(reason));
457
+ packageCompile().then((value) => process.exitCode = value).catch((reason) => {
458
+ console.error(chalk7.red(reason));
304
459
  process.exitCode = 1;
305
460
  });
306
461
  //# sourceMappingURL=compile-only.mjs.map