@xylabs/ts-scripts-yarn3 3.15.16 → 4.0.0-rc.5

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 (335) hide show
  1. package/dist/actions/index.mjs +76 -275
  2. package/dist/actions/index.mjs.map +1 -1
  3. package/dist/actions/package/compile/compile.mjs +55 -254
  4. package/dist/actions/package/compile/compile.mjs.map +1 -1
  5. package/dist/actions/package/compile/index.mjs +55 -254
  6. package/dist/actions/package/compile/index.mjs.map +1 -1
  7. package/dist/actions/package/compile/packageCompileTsc.mjs +1 -1
  8. package/dist/actions/package/compile/packageCompileTsc.mjs.map +1 -1
  9. package/dist/actions/package/compile/packageCompileTscTypes.mjs +2 -36
  10. package/dist/actions/package/compile/packageCompileTscTypes.mjs.map +1 -1
  11. package/dist/actions/package/compile/packageCompileTsup.mjs +53 -252
  12. package/dist/actions/package/compile/packageCompileTsup.mjs.map +1 -1
  13. package/dist/actions/package/index.mjs +69 -268
  14. package/dist/actions/package/index.mjs.map +1 -1
  15. package/dist/actions/package/recompile.mjs +55 -254
  16. package/dist/actions/package/recompile.mjs.map +1 -1
  17. package/dist/bin/package/compile-only.mjs +57 -256
  18. package/dist/bin/package/compile-only.mjs.map +1 -1
  19. package/dist/bin/package/compile-tsup.mjs +55 -254
  20. package/dist/bin/package/compile-tsup.mjs.map +1 -1
  21. package/dist/bin/package/compile.mjs +57 -256
  22. package/dist/bin/package/compile.mjs.map +1 -1
  23. package/dist/bin/package/recompile.mjs +57 -256
  24. package/dist/bin/package/recompile.mjs.map +1 -1
  25. package/dist/index.mjs +86 -285
  26. package/dist/index.mjs.map +1 -1
  27. package/package.json +9 -19
  28. package/src/actions/package/compile/XyConfig.ts +2 -2
  29. package/src/actions/package/compile/packageCompileTsc.ts +1 -1
  30. package/src/actions/package/compile/packageCompileTscTypes.ts +3 -8
  31. package/src/actions/package/compile/packageCompileTsup.ts +52 -124
  32. package/tsup.config.ts +1 -1
  33. package/dist/actions/build.cjs +0 -208
  34. package/dist/actions/build.cjs.map +0 -1
  35. package/dist/actions/clean-docs.cjs +0 -74
  36. package/dist/actions/clean-docs.cjs.map +0 -1
  37. package/dist/actions/clean-eslint.cjs +0 -53
  38. package/dist/actions/clean-eslint.cjs.map +0 -1
  39. package/dist/actions/clean-jest.cjs +0 -147
  40. package/dist/actions/clean-jest.cjs.map +0 -1
  41. package/dist/actions/clean.cjs +0 -192
  42. package/dist/actions/clean.cjs.map +0 -1
  43. package/dist/actions/compile.cjs +0 -217
  44. package/dist/actions/compile.cjs.map +0 -1
  45. package/dist/actions/copy-assets.cjs +0 -121
  46. package/dist/actions/copy-assets.cjs.map +0 -1
  47. package/dist/actions/cycle.cjs +0 -156
  48. package/dist/actions/cycle.cjs.map +0 -1
  49. package/dist/actions/dead.cjs +0 -148
  50. package/dist/actions/dead.cjs.map +0 -1
  51. package/dist/actions/deploy-major.cjs +0 -160
  52. package/dist/actions/deploy-major.cjs.map +0 -1
  53. package/dist/actions/deploy-minor.cjs +0 -160
  54. package/dist/actions/deploy-minor.cjs.map +0 -1
  55. package/dist/actions/deploy-next.cjs +0 -160
  56. package/dist/actions/deploy-next.cjs.map +0 -1
  57. package/dist/actions/deploy.cjs +0 -160
  58. package/dist/actions/deploy.cjs.map +0 -1
  59. package/dist/actions/deps.cjs +0 -205
  60. package/dist/actions/deps.cjs.map +0 -1
  61. package/dist/actions/dupdeps.cjs +0 -226
  62. package/dist/actions/dupdeps.cjs.map +0 -1
  63. package/dist/actions/fix.cjs +0 -149
  64. package/dist/actions/fix.cjs.map +0 -1
  65. package/dist/actions/gen-docs.cjs +0 -186
  66. package/dist/actions/gen-docs.cjs.map +0 -1
  67. package/dist/actions/gitignore-gen.cjs +0 -138
  68. package/dist/actions/gitignore-gen.cjs.map +0 -1
  69. package/dist/actions/gitlint-fix.cjs +0 -69
  70. package/dist/actions/gitlint-fix.cjs.map +0 -1
  71. package/dist/actions/gitlint.cjs +0 -84
  72. package/dist/actions/gitlint.cjs.map +0 -1
  73. package/dist/actions/index.cjs +0 -2600
  74. package/dist/actions/index.cjs.map +0 -1
  75. package/dist/actions/license.cjs +0 -133
  76. package/dist/actions/license.cjs.map +0 -1
  77. package/dist/actions/lint-clean.cjs +0 -227
  78. package/dist/actions/lint-clean.cjs.map +0 -1
  79. package/dist/actions/lint-profile.cjs +0 -153
  80. package/dist/actions/lint-profile.cjs.map +0 -1
  81. package/dist/actions/lint.cjs +0 -217
  82. package/dist/actions/lint.cjs.map +0 -1
  83. package/dist/actions/npmignore-gen.cjs +0 -138
  84. package/dist/actions/npmignore-gen.cjs.map +0 -1
  85. package/dist/actions/package/clean-outputs.cjs +0 -56
  86. package/dist/actions/package/clean-outputs.cjs.map +0 -1
  87. package/dist/actions/package/clean-typescript.cjs +0 -56
  88. package/dist/actions/package/clean-typescript.cjs.map +0 -1
  89. package/dist/actions/package/clean.cjs +0 -83
  90. package/dist/actions/package/clean.cjs.map +0 -1
  91. package/dist/actions/package/compile/XyConfig.cjs +0 -19
  92. package/dist/actions/package/compile/XyConfig.cjs.map +0 -1
  93. package/dist/actions/package/compile/buildEntries.cjs +0 -68
  94. package/dist/actions/package/compile/buildEntries.cjs.map +0 -1
  95. package/dist/actions/package/compile/compile.cjs +0 -565
  96. package/dist/actions/package/compile/compile.cjs.map +0 -1
  97. package/dist/actions/package/compile/copyTypeFiles.cjs +0 -60
  98. package/dist/actions/package/compile/copyTypeFiles.cjs.map +0 -1
  99. package/dist/actions/package/compile/getCompilerOptions.cjs +0 -67
  100. package/dist/actions/package/compile/getCompilerOptions.cjs.map +0 -1
  101. package/dist/actions/package/compile/index.cjs +0 -571
  102. package/dist/actions/package/compile/index.cjs.map +0 -1
  103. package/dist/actions/package/compile/inputs.cjs +0 -79
  104. package/dist/actions/package/compile/inputs.cjs.map +0 -1
  105. package/dist/actions/package/compile/packageCompileTsc.cjs +0 -164
  106. package/dist/actions/package/compile/packageCompileTsc.cjs.map +0 -1
  107. package/dist/actions/package/compile/packageCompileTscTypes.cjs +0 -199
  108. package/dist/actions/package/compile/packageCompileTscTypes.cjs.map +0 -1
  109. package/dist/actions/package/compile/packageCompileTsup.cjs +0 -521
  110. package/dist/actions/package/compile/packageCompileTsup.cjs.map +0 -1
  111. package/dist/actions/package/copy-assets.cjs +0 -88
  112. package/dist/actions/package/copy-assets.cjs.map +0 -1
  113. package/dist/actions/package/deps.cjs +0 -214
  114. package/dist/actions/package/deps.cjs.map +0 -1
  115. package/dist/actions/package/gen-docs.cjs +0 -148
  116. package/dist/actions/package/gen-docs.cjs.map +0 -1
  117. package/dist/actions/package/index.cjs +0 -968
  118. package/dist/actions/package/index.cjs.map +0 -1
  119. package/dist/actions/package/publint.cjs +0 -80
  120. package/dist/actions/package/publint.cjs.map +0 -1
  121. package/dist/actions/package/recompile.cjs +0 -617
  122. package/dist/actions/package/recompile.cjs.map +0 -1
  123. package/dist/actions/publint.cjs +0 -237
  124. package/dist/actions/publint.cjs.map +0 -1
  125. package/dist/actions/rebuild.cjs +0 -148
  126. package/dist/actions/rebuild.cjs.map +0 -1
  127. package/dist/actions/recompile.cjs +0 -232
  128. package/dist/actions/recompile.cjs.map +0 -1
  129. package/dist/actions/reinstall.cjs +0 -183
  130. package/dist/actions/reinstall.cjs.map +0 -1
  131. package/dist/actions/relint.cjs +0 -185
  132. package/dist/actions/relint.cjs.map +0 -1
  133. package/dist/actions/retest.cjs +0 -154
  134. package/dist/actions/retest.cjs.map +0 -1
  135. package/dist/actions/sonar.cjs +0 -149
  136. package/dist/actions/sonar.cjs.map +0 -1
  137. package/dist/actions/statics.cjs +0 -234
  138. package/dist/actions/statics.cjs.map +0 -1
  139. package/dist/actions/test.cjs +0 -147
  140. package/dist/actions/test.cjs.map +0 -1
  141. package/dist/actions/up.cjs +0 -144
  142. package/dist/actions/up.cjs.map +0 -1
  143. package/dist/actions/updo.cjs +0 -152
  144. package/dist/actions/updo.cjs.map +0 -1
  145. package/dist/actions/upplug.cjs +0 -172
  146. package/dist/actions/upplug.cjs.map +0 -1
  147. package/dist/actions/upyarn.cjs +0 -148
  148. package/dist/actions/upyarn.cjs.map +0 -1
  149. package/dist/actions/yarn3only.cjs +0 -106
  150. package/dist/actions/yarn3only.cjs.map +0 -1
  151. package/dist/bin/build.cjs +0 -39
  152. package/dist/bin/build.cjs.map +0 -1
  153. package/dist/bin/clean.cjs +0 -39
  154. package/dist/bin/clean.cjs.map +0 -1
  155. package/dist/bin/compile-only.cjs +0 -39
  156. package/dist/bin/compile-only.cjs.map +0 -1
  157. package/dist/bin/compile.cjs +0 -39
  158. package/dist/bin/compile.cjs.map +0 -1
  159. package/dist/bin/cycle.cjs +0 -39
  160. package/dist/bin/cycle.cjs.map +0 -1
  161. package/dist/bin/dead.cjs +0 -39
  162. package/dist/bin/dead.cjs.map +0 -1
  163. package/dist/bin/deploy-major.cjs +0 -39
  164. package/dist/bin/deploy-major.cjs.map +0 -1
  165. package/dist/bin/deploy-minor.cjs +0 -39
  166. package/dist/bin/deploy-minor.cjs.map +0 -1
  167. package/dist/bin/deploy-next.cjs +0 -39
  168. package/dist/bin/deploy-next.cjs.map +0 -1
  169. package/dist/bin/deploy.cjs +0 -39
  170. package/dist/bin/deploy.cjs.map +0 -1
  171. package/dist/bin/deps.cjs +0 -39
  172. package/dist/bin/deps.cjs.map +0 -1
  173. package/dist/bin/fix.cjs +0 -39
  174. package/dist/bin/fix.cjs.map +0 -1
  175. package/dist/bin/gen-docs.cjs +0 -39
  176. package/dist/bin/gen-docs.cjs.map +0 -1
  177. package/dist/bin/gitlint-fix.cjs +0 -39
  178. package/dist/bin/gitlint-fix.cjs.map +0 -1
  179. package/dist/bin/gitlint.cjs +0 -39
  180. package/dist/bin/gitlint.cjs.map +0 -1
  181. package/dist/bin/license.cjs +0 -39
  182. package/dist/bin/license.cjs.map +0 -1
  183. package/dist/bin/lint-clean.cjs +0 -39
  184. package/dist/bin/lint-clean.cjs.map +0 -1
  185. package/dist/bin/lint-fast.cjs +0 -39
  186. package/dist/bin/lint-fast.cjs.map +0 -1
  187. package/dist/bin/lint-profile.cjs +0 -39
  188. package/dist/bin/lint-profile.cjs.map +0 -1
  189. package/dist/bin/lint.cjs +0 -39
  190. package/dist/bin/lint.cjs.map +0 -1
  191. package/dist/bin/package/clean-outputs.cjs +0 -51
  192. package/dist/bin/package/clean-outputs.cjs.map +0 -1
  193. package/dist/bin/package/clean-typescript.cjs +0 -51
  194. package/dist/bin/package/clean-typescript.cjs.map +0 -1
  195. package/dist/bin/package/clean.cjs +0 -76
  196. package/dist/bin/package/clean.cjs.map +0 -1
  197. package/dist/bin/package/compile-only.cjs +0 -564
  198. package/dist/bin/package/compile-only.cjs.map +0 -1
  199. package/dist/bin/package/compile-tsup.cjs +0 -519
  200. package/dist/bin/package/compile-tsup.cjs.map +0 -1
  201. package/dist/bin/package/compile.cjs +0 -567
  202. package/dist/bin/package/compile.cjs.map +0 -1
  203. package/dist/bin/package/copy-assets-cjs.cjs +0 -86
  204. package/dist/bin/package/copy-assets-cjs.cjs.map +0 -1
  205. package/dist/bin/package/copy-assets-esm.cjs +0 -86
  206. package/dist/bin/package/copy-assets-esm.cjs.map +0 -1
  207. package/dist/bin/package/deps.cjs +0 -208
  208. package/dist/bin/package/deps.cjs.map +0 -1
  209. package/dist/bin/package/gen-docs.cjs +0 -143
  210. package/dist/bin/package/gen-docs.cjs.map +0 -1
  211. package/dist/bin/package/publint.cjs +0 -77
  212. package/dist/bin/package/publint.cjs.map +0 -1
  213. package/dist/bin/package/recompile.cjs +0 -611
  214. package/dist/bin/package/recompile.cjs.map +0 -1
  215. package/dist/bin/publint.cjs +0 -39
  216. package/dist/bin/publint.cjs.map +0 -1
  217. package/dist/bin/rebuild.cjs +0 -39
  218. package/dist/bin/rebuild.cjs.map +0 -1
  219. package/dist/bin/recompile.cjs +0 -39
  220. package/dist/bin/recompile.cjs.map +0 -1
  221. package/dist/bin/reinstall.cjs +0 -39
  222. package/dist/bin/reinstall.cjs.map +0 -1
  223. package/dist/bin/relint.cjs +0 -39
  224. package/dist/bin/relint.cjs.map +0 -1
  225. package/dist/bin/sonar.cjs +0 -39
  226. package/dist/bin/sonar.cjs.map +0 -1
  227. package/dist/bin/test.cjs +0 -39
  228. package/dist/bin/test.cjs.map +0 -1
  229. package/dist/bin/up.cjs +0 -39
  230. package/dist/bin/up.cjs.map +0 -1
  231. package/dist/bin/updo.cjs +0 -39
  232. package/dist/bin/updo.cjs.map +0 -1
  233. package/dist/bin/upplug.cjs +0 -39
  234. package/dist/bin/upplug.cjs.map +0 -1
  235. package/dist/bin/upyarn.cjs +0 -39
  236. package/dist/bin/upyarn.cjs.map +0 -1
  237. package/dist/bin/xy-ts.cjs +0 -1890
  238. package/dist/bin/xy-ts.cjs.map +0 -1
  239. package/dist/bin/xy.cjs +0 -1890
  240. package/dist/bin/xy.cjs.map +0 -1
  241. package/dist/bin/yarn3only.cjs +0 -39
  242. package/dist/bin/yarn3only.cjs.map +0 -1
  243. package/dist/index.cjs +0 -3129
  244. package/dist/index.cjs.map +0 -1
  245. package/dist/index.d.cts +0 -359
  246. package/dist/lib/checkResult.cjs +0 -52
  247. package/dist/lib/checkResult.cjs.map +0 -1
  248. package/dist/lib/createBuildConfig.cjs +0 -93
  249. package/dist/lib/createBuildConfig.cjs.map +0 -1
  250. package/dist/lib/defaultBuildConfig.cjs +0 -52
  251. package/dist/lib/defaultBuildConfig.cjs.map +0 -1
  252. package/dist/lib/dependencies/DuplicateDetector.cjs +0 -124
  253. package/dist/lib/dependencies/DuplicateDetector.cjs.map +0 -1
  254. package/dist/lib/dependencies/detectDuplicateDependencies.cjs +0 -207
  255. package/dist/lib/dependencies/detectDuplicateDependencies.cjs.map +0 -1
  256. package/dist/lib/dependencies/index.cjs +0 -211
  257. package/dist/lib/dependencies/index.cjs.map +0 -1
  258. package/dist/lib/file/ReadFileSyncOptions.cjs +0 -33
  259. package/dist/lib/file/ReadFileSyncOptions.cjs.map +0 -1
  260. package/dist/lib/file/constants.cjs +0 -34
  261. package/dist/lib/file/constants.cjs.map +0 -1
  262. package/dist/lib/file/fileLines.cjs +0 -58
  263. package/dist/lib/file/fileLines.cjs.map +0 -1
  264. package/dist/lib/file/index.cjs +0 -74
  265. package/dist/lib/file/index.cjs.map +0 -1
  266. package/dist/lib/file/tryReadFileSync.cjs +0 -42
  267. package/dist/lib/file/tryReadFileSync.cjs.map +0 -1
  268. package/dist/lib/generateIgnoreFiles.cjs +0 -132
  269. package/dist/lib/generateIgnoreFiles.cjs.map +0 -1
  270. package/dist/lib/index.cjs +0 -614
  271. package/dist/lib/index.cjs.map +0 -1
  272. package/dist/lib/jsonFormatters.cjs +0 -37
  273. package/dist/lib/jsonFormatters.cjs.map +0 -1
  274. package/dist/lib/loadConfig.cjs +0 -59
  275. package/dist/lib/loadConfig.cjs.map +0 -1
  276. package/dist/lib/parsedPackageJSON.cjs +0 -37
  277. package/dist/lib/parsedPackageJSON.cjs.map +0 -1
  278. package/dist/lib/processEx.cjs +0 -72
  279. package/dist/lib/processEx.cjs.map +0 -1
  280. package/dist/lib/runSteps.cjs +0 -134
  281. package/dist/lib/runSteps.cjs.map +0 -1
  282. package/dist/lib/runStepsAsync.cjs +0 -147
  283. package/dist/lib/runStepsAsync.cjs.map +0 -1
  284. package/dist/lib/runXy.cjs +0 -150
  285. package/dist/lib/runXy.cjs.map +0 -1
  286. package/dist/lib/runXyWithWarning.cjs +0 -49
  287. package/dist/lib/runXyWithWarning.cjs.map +0 -1
  288. package/dist/lib/safeExit.cjs +0 -100
  289. package/dist/lib/safeExit.cjs.map +0 -1
  290. package/dist/lib/string/empty.cjs +0 -35
  291. package/dist/lib/string/empty.cjs.map +0 -1
  292. package/dist/lib/string/index.cjs +0 -45
  293. package/dist/lib/string/index.cjs.map +0 -1
  294. package/dist/lib/string/union.cjs +0 -35
  295. package/dist/lib/string/union.cjs.map +0 -1
  296. package/dist/lib/withErrnoException.cjs +0 -41
  297. package/dist/lib/withErrnoException.cjs.map +0 -1
  298. package/dist/lib/withError.cjs +0 -34
  299. package/dist/lib/withError.cjs.map +0 -1
  300. package/dist/lib/yarn/index.cjs +0 -93
  301. package/dist/lib/yarn/index.cjs.map +0 -1
  302. package/dist/lib/yarn/isYarnVersionOrGreater.cjs +0 -52
  303. package/dist/lib/yarn/isYarnVersionOrGreater.cjs.map +0 -1
  304. package/dist/lib/yarn/workspace/Workspace.cjs +0 -19
  305. package/dist/lib/yarn/workspace/Workspace.cjs.map +0 -1
  306. package/dist/lib/yarn/workspace/index.cjs +0 -60
  307. package/dist/lib/yarn/workspace/index.cjs.map +0 -1
  308. package/dist/lib/yarn/workspace/yarnWorkspace.cjs +0 -58
  309. package/dist/lib/yarn/workspace/yarnWorkspace.cjs.map +0 -1
  310. package/dist/lib/yarn/workspace/yarnWorkspaces.cjs +0 -49
  311. package/dist/lib/yarn/workspace/yarnWorkspaces.cjs.map +0 -1
  312. package/dist/lib/yarn/yarnInitCwd.cjs +0 -35
  313. package/dist/lib/yarn/yarnInitCwd.cjs.map +0 -1
  314. package/dist/loadPackageConfig.cjs +0 -39
  315. package/dist/loadPackageConfig.cjs.map +0 -1
  316. package/dist/types.d.cjs +0 -2
  317. package/dist/types.d.cjs.map +0 -1
  318. package/dist/xy/index.cjs +0 -1909
  319. package/dist/xy/index.cjs.map +0 -1
  320. package/dist/xy/param.cjs +0 -36
  321. package/dist/xy/param.cjs.map +0 -1
  322. package/dist/xy/xy.cjs +0 -1895
  323. package/dist/xy/xy.cjs.map +0 -1
  324. package/dist/xy/xyBuildCommands.cjs +0 -595
  325. package/dist/xy/xyBuildCommands.cjs.map +0 -1
  326. package/dist/xy/xyCommonCommands.cjs +0 -723
  327. package/dist/xy/xyCommonCommands.cjs.map +0 -1
  328. package/dist/xy/xyDeployCommands.cjs +0 -263
  329. package/dist/xy/xyDeployCommands.cjs.map +0 -1
  330. package/dist/xy/xyInstallCommands.cjs +0 -508
  331. package/dist/xy/xyInstallCommands.cjs.map +0 -1
  332. package/dist/xy/xyLintCommands.cjs +0 -466
  333. package/dist/xy/xyLintCommands.cjs.map +0 -1
  334. package/dist/xy/xyParseOptions.cjs +0 -84
  335. package/dist/xy/xyParseOptions.cjs.map +0 -1
@@ -43,37 +43,6 @@ var buildEntries = /* @__PURE__ */ __name((folder, entryMode, verbose = false) =
43
43
  }
44
44
  }, "buildEntries");
45
45
 
46
- // src/actions/package/compile/copyTypeFiles.ts
47
- import { copyFile, readdir } from "node:fs/promises";
48
- import { Mutex } from "async-mutex";
49
- var copyFileMutex = new Mutex();
50
- var getDistTypeFiles = /* @__PURE__ */ __name(async (compilerOptions) => {
51
- const outDir = compilerOptions.outDir ?? "dist";
52
- return (await readdir(outDir, {
53
- recursive: true
54
- })).filter((file) => file.endsWith("d.ts")).map((file) => `${outDir}/${file}`);
55
- }, "getDistTypeFiles");
56
- var getDistTypeMapFiles = /* @__PURE__ */ __name(async (compilerOptions) => {
57
- const outDir = compilerOptions.outDir ?? "dist";
58
- return (await readdir(outDir, {
59
- recursive: true
60
- })).filter((file) => file.endsWith("d.ts.map")).map((file) => `${outDir}/${file}`);
61
- }, "getDistTypeMapFiles");
62
- var copyTypeFiles = /* @__PURE__ */ __name(async (compilerOptions) => {
63
- await copyFileMutex.runExclusive(async () => {
64
- const distTypeFiles = await getDistTypeFiles(compilerOptions);
65
- await Promise.all(distTypeFiles.map(async (file) => {
66
- await copyFile(file, file.replace("d.ts", "d.mts"));
67
- await copyFile(file, file.replace("d.ts", "d.cts"));
68
- }));
69
- const distTypeMapFiles = await getDistTypeMapFiles(compilerOptions);
70
- await Promise.all(distTypeMapFiles.map(async (file) => {
71
- await copyFile(file, file.replace("d.ts.map", "d.mts.map"));
72
- await copyFile(file, file.replace("d.ts.map", "d.cts.map"));
73
- }));
74
- });
75
- }, "copyTypeFiles");
76
-
77
46
  // src/actions/package/compile/getCompilerOptions.ts
78
47
  import { createRequire } from "node:module";
79
48
  import merge from "lodash/merge.js";
@@ -100,13 +69,13 @@ var getCompilerOptions = /* @__PURE__ */ __name((options, tsconfig = "tsconfig.j
100
69
  }, "getCompilerOptions");
101
70
 
102
71
  // src/actions/package/compile/packageCompileTscTypes.ts
103
- var packageCompileTscTypes = /* @__PURE__ */ __name(async (folder = "src", { verbose } = {}, compilerOptionsParam, generateMts = true) => {
72
+ var packageCompileTscTypes = /* @__PURE__ */ __name((folder = "src", { verbose } = {}, compilerOptionsParam) => {
104
73
  const pkg = process.env.INIT_CWD ?? cwd();
105
74
  if (verbose) {
106
75
  console.log(`Compiling types with TSC [${pkg}]`);
107
76
  }
108
77
  const compilerOptions = {
109
- ...await getCompilerOptions({
78
+ ...getCompilerOptions({
110
79
  declaration: true,
111
80
  emitDeclarationOnly: true,
112
81
  outDir: "dist",
@@ -153,9 +122,6 @@ var packageCompileTscTypes = /* @__PURE__ */ __name(async (folder = "src", { ver
153
122
  }
154
123
  }
155
124
  }
156
- if (generateMts) {
157
- await copyTypeFiles(compilerOptions);
158
- }
159
125
  return diagResults;
160
126
  }, "packageCompileTscTypes");
161
127
  export {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/actions/package/compile/packageCompileTscTypes.ts","../../../../src/actions/package/compile/inputs.ts","../../../../src/actions/package/compile/buildEntries.ts","../../../../src/actions/package/compile/copyTypeFiles.ts","../../../../src/actions/package/compile/getCompilerOptions.ts"],"sourcesContent":["import { cwd } from 'node:process'\n\nimport chalk from 'chalk'\nimport { createProgramFromConfig, TsConfigCompilerOptions } from 'tsc-prog'\nimport { CompilerOptions, DiagnosticCategory } from 'typescript'\n\nimport { buildEntries } from './buildEntries.ts'\nimport { copyTypeFiles } from './copyTypeFiles.ts'\nimport { getCompilerOptions } from './getCompilerOptions.ts'\nimport { XyConfig } from './XyConfig.ts'\n\nexport const packageCompileTscTypes = async (\n folder: string = 'src',\n { verbose }: XyConfig = {},\n compilerOptionsParam?: CompilerOptions,\n generateMts = true,\n): Promise<number> => {\n const pkg = process.env.INIT_CWD ?? cwd()\n\n if (verbose) {\n console.log(`Compiling types with TSC [${pkg}]`)\n }\n\n const compilerOptions = {\n ...(await getCompilerOptions({\n declaration: true,\n emitDeclarationOnly: true,\n outDir: 'dist',\n removeComments: true,\n skipDefaultLibCheck: true,\n skipLibCheck: true,\n sourceMap: true,\n })),\n ...compilerOptionsParam,\n } as TsConfigCompilerOptions\n\n // calling all here since the types do not get rolled up\n const files = buildEntries(folder, 'all')\n\n const result = createProgramFromConfig({\n basePath: pkg ?? cwd(),\n compilerOptions,\n exclude: ['dist', 'docs', '**/*.spec.*', '**/*.stories.*', 'src/**/spec/**/*'],\n files,\n }).emit()\n\n const diagResults = result.diagnostics.length\n for (const diag of result.diagnostics) {\n switch (diag.category) {\n case DiagnosticCategory.Error: {\n console.error(chalk.red(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n case DiagnosticCategory.Warning: {\n console.error(chalk.yellow(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n case DiagnosticCategory.Suggestion: {\n console.error(chalk.white(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n }\n }\n if (generateMts) {\n await copyTypeFiles(compilerOptions)\n }\n return diagResults\n}\n","import { readdir } from 'node:fs/promises'\n\nimport { glob } from 'glob'\n\nexport const getInputs = async (subDir?: string) => {\n return (await readdir(subDir ? `src/${subDir}` : 'src', { recursive: false }))\n .filter(\n file => (file.endsWith('.ts') || file.endsWith('.tsx')) && !file.endsWith('d.ts') && !file.includes('.spec.') && !file.includes('.stories.'),\n )\n .map(file => (subDir ? `${subDir}/${file}` : file))\n}\n\nexport const getInputDirs = async (depth: number = 0) => {\n if (depth === 0) {\n return []\n }\n return [\n '.',\n ...(await readdir('src', { recursive: true, withFileTypes: true }))\n .filter(file => file.isDirectory())\n .map((file) => {\n const pathParts = file.path?.split('/') ?? []\n pathParts.shift()\n if (pathParts.length > 0) {\n const root = pathParts.join('/')\n return `${root}/${file.name}`\n } else {\n return file.name\n }\n }),\n ]\n}\n\nexport const getAllInputs = async (depth = 100) => {\n const dirs = await getInputDirs(depth)\n return (await Promise.all(dirs.map(async dir => await getInputs(dir)))).flat()\n}\n\nexport const getAllInputs2 = (folder: string) => {\n /* tsup wants posix paths */\n return glob.sync(`${folder}/**/*.*`, { ignore: ['**/*.spec.*', '**/*.stories.*', '**/spec/**/*'], posix: true })\n}\n","import { getAllInputs2 } from './inputs.ts'\nimport { EntryMode } from './XyConfig.ts'\n\nexport const buildEntries = (folder: string, entryMode?: EntryMode, verbose = false) => {\n switch (entryMode) {\n case 'platform': {\n if (verbose) console.log('buildEntries [platform]')\n return [`${folder}/index-node.ts`, `${folder}/index-browser.ts`]\n }\n case 'all': {\n if (verbose) console.log('buildEntries [all]')\n return getAllInputs2(folder).filter(entry => !entry.includes('.spec.') && !entry.includes('.story.'))\n }\n default: {\n if (verbose) console.log('buildEntries [single]')\n return [`${folder}/index.ts`]\n }\n }\n}\n","import { copyFile, readdir } from 'node:fs/promises'\n\nimport { Mutex } from 'async-mutex'\nimport { TsConfigCompilerOptions } from 'tsc-prog'\n\nconst copyFileMutex = new Mutex()\n\nconst getDistTypeFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n const outDir = compilerOptions.outDir ?? 'dist'\n return (await readdir(outDir, { recursive: true })).filter(file => file.endsWith('d.ts')).map(file => `${outDir}/${file}`)\n}\n\nconst getDistTypeMapFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n const outDir = compilerOptions.outDir ?? 'dist'\n return (await readdir(outDir, { recursive: true })).filter(file => file.endsWith('d.ts.map')).map(file => `${outDir}/${file}`)\n}\n\nexport const copyTypeFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n // using a mutex since sometimes two compiles are running at once and cause a lock on windows\n await copyFileMutex.runExclusive(async () => {\n // hybrid packages want two copies of the types\n const distTypeFiles = await getDistTypeFiles(compilerOptions)\n await Promise.all(\n distTypeFiles.map(async (file) => {\n await copyFile(file, file.replace('d.ts', 'd.mts'))\n await copyFile(file, file.replace('d.ts', 'd.cts'))\n }),\n )\n\n const distTypeMapFiles = await getDistTypeMapFiles(compilerOptions)\n await Promise.all(\n distTypeMapFiles.map(async (file) => {\n await copyFile(file, file.replace('d.ts.map', 'd.mts.map'))\n await copyFile(file, file.replace('d.ts.map', 'd.cts.map'))\n }),\n )\n })\n}\n","import { createRequire } from 'node:module'\n\n// eslint-disable-next-line import/no-internal-modules\nimport merge from 'lodash/merge.js'\nimport { TsConfig } from 'tsc-prog'\nimport { CompilerOptions, findConfigFile, readConfigFile, sys } from 'typescript'\n\nconst getNested = (config: TsConfig): CompilerOptions => {\n if (config.extends) {\n const require = createRequire(import.meta.url)\n const opts = require(config.extends)\n return { ...getNested(opts), ...config.compilerOptions } as CompilerOptions\n }\n\n return config.compilerOptions as CompilerOptions\n}\n\nexport const getCompilerOptionsJSONFollowExtends = (filename: string): CompilerOptions => {\n const config = readConfigFile(filename, sys.readFile).config\n return getNested(config)\n}\n\nexport const getCompilerOptions = (options?: CompilerOptions, tsconfig: string = 'tsconfig.json'): CompilerOptions => {\n const configFileName = findConfigFile('./', sys.fileExists, tsconfig)\n const configFileCompilerOptions = configFileName ? getCompilerOptionsJSONFollowExtends(configFileName) : undefined\n\n return merge({}, configFileCompilerOptions, options)\n}\n"],"mappings":"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","names":["cwd","chalk","createProgramFromConfig","DiagnosticCategory","glob","getAllInputs2","folder","glob","sync","ignore","posix","buildEntries","folder","entryMode","verbose","console","log","getAllInputs2","filter","entry","includes","copyFile","readdir","Mutex","copyFileMutex","Mutex","getDistTypeFiles","compilerOptions","outDir","readdir","recursive","filter","file","endsWith","map","getDistTypeMapFiles","copyTypeFiles","runExclusive","distTypeFiles","Promise","all","copyFile","replace","distTypeMapFiles","createRequire","merge","findConfigFile","readConfigFile","sys","getNested","config","extends","require","createRequire","url","opts","compilerOptions","getCompilerOptionsJSONFollowExtends","filename","readConfigFile","sys","readFile","getCompilerOptions","options","tsconfig","configFileName","findConfigFile","fileExists","configFileCompilerOptions","undefined","merge","packageCompileTscTypes","folder","verbose","compilerOptionsParam","generateMts","pkg","process","env","INIT_CWD","cwd","console","log","compilerOptions","getCompilerOptions","declaration","emitDeclarationOnly","outDir","removeComments","skipDefaultLibCheck","skipLibCheck","sourceMap","files","buildEntries","result","createProgramFromConfig","basePath","exclude","emit","diagResults","diagnostics","length","diag","category","DiagnosticCategory","Error","error","chalk","red","messageText","grey","blue","file","fileName","Warning","yellow","Suggestion","white","copyTypeFiles"]}
1
+ {"version":3,"sources":["../../../../src/actions/package/compile/packageCompileTscTypes.ts","../../../../src/actions/package/compile/inputs.ts","../../../../src/actions/package/compile/buildEntries.ts","../../../../src/actions/package/compile/getCompilerOptions.ts"],"sourcesContent":["import { cwd } from 'node:process'\n\nimport chalk from 'chalk'\nimport { createProgramFromConfig, TsConfigCompilerOptions } from 'tsc-prog'\nimport { CompilerOptions, DiagnosticCategory } from 'typescript'\n\nimport { buildEntries } from './buildEntries.ts'\nimport { getCompilerOptions } from './getCompilerOptions.ts'\nimport { XyConfig } from './XyConfig.ts'\n\nexport const packageCompileTscTypes = (\n folder: string = 'src',\n { verbose }: XyConfig = {},\n compilerOptionsParam?: CompilerOptions,\n): number => {\n const pkg = process.env.INIT_CWD ?? cwd()\n\n if (verbose) {\n console.log(`Compiling types with TSC [${pkg}]`)\n }\n\n const compilerOptions = {\n ...(getCompilerOptions({\n declaration: true,\n emitDeclarationOnly: true,\n outDir: 'dist',\n removeComments: true,\n skipDefaultLibCheck: true,\n skipLibCheck: true,\n sourceMap: true,\n })),\n ...compilerOptionsParam,\n } as TsConfigCompilerOptions\n\n // calling all here since the types do not get rolled up\n const files = buildEntries(folder, 'all')\n\n const result = createProgramFromConfig({\n basePath: pkg ?? cwd(),\n compilerOptions,\n exclude: ['dist', 'docs', '**/*.spec.*', '**/*.stories.*', 'src/**/spec/**/*'],\n files,\n }).emit()\n\n const diagResults = result.diagnostics.length\n for (const diag of result.diagnostics) {\n switch (diag.category) {\n case DiagnosticCategory.Error: {\n console.error(chalk.red(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n case DiagnosticCategory.Warning: {\n console.error(chalk.yellow(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n case DiagnosticCategory.Suggestion: {\n console.error(chalk.white(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n }\n }\n return diagResults\n}\n","import { readdir } from 'node:fs/promises'\n\nimport { glob } from 'glob'\n\nexport const getInputs = async (subDir?: string) => {\n return (await readdir(subDir ? `src/${subDir}` : 'src', { recursive: false }))\n .filter(\n file => (file.endsWith('.ts') || file.endsWith('.tsx')) && !file.endsWith('d.ts') && !file.includes('.spec.') && !file.includes('.stories.'),\n )\n .map(file => (subDir ? `${subDir}/${file}` : file))\n}\n\nexport const getInputDirs = async (depth: number = 0) => {\n if (depth === 0) {\n return []\n }\n return [\n '.',\n ...(await readdir('src', { recursive: true, withFileTypes: true }))\n .filter(file => file.isDirectory())\n .map((file) => {\n const pathParts = file.path?.split('/') ?? []\n pathParts.shift()\n if (pathParts.length > 0) {\n const root = pathParts.join('/')\n return `${root}/${file.name}`\n } else {\n return file.name\n }\n }),\n ]\n}\n\nexport const getAllInputs = async (depth = 100) => {\n const dirs = await getInputDirs(depth)\n return (await Promise.all(dirs.map(async dir => await getInputs(dir)))).flat()\n}\n\nexport const getAllInputs2 = (folder: string) => {\n /* tsup wants posix paths */\n return glob.sync(`${folder}/**/*.*`, { ignore: ['**/*.spec.*', '**/*.stories.*', '**/spec/**/*'], posix: true })\n}\n","import { getAllInputs2 } from './inputs.ts'\nimport { EntryMode } from './XyConfig.ts'\n\nexport const buildEntries = (folder: string, entryMode?: EntryMode, verbose = false) => {\n switch (entryMode) {\n case 'platform': {\n if (verbose) console.log('buildEntries [platform]')\n return [`${folder}/index-node.ts`, `${folder}/index-browser.ts`]\n }\n case 'all': {\n if (verbose) console.log('buildEntries [all]')\n return getAllInputs2(folder).filter(entry => !entry.includes('.spec.') && !entry.includes('.story.'))\n }\n default: {\n if (verbose) console.log('buildEntries [single]')\n return [`${folder}/index.ts`]\n }\n }\n}\n","import { createRequire } from 'node:module'\n\n// eslint-disable-next-line import/no-internal-modules\nimport merge from 'lodash/merge.js'\nimport { TsConfig } from 'tsc-prog'\nimport { CompilerOptions, findConfigFile, readConfigFile, sys } from 'typescript'\n\nconst getNested = (config: TsConfig): CompilerOptions => {\n if (config.extends) {\n const require = createRequire(import.meta.url)\n const opts = require(config.extends)\n return { ...getNested(opts), ...config.compilerOptions } as CompilerOptions\n }\n\n return config.compilerOptions as CompilerOptions\n}\n\nexport const getCompilerOptionsJSONFollowExtends = (filename: string): CompilerOptions => {\n const config = readConfigFile(filename, sys.readFile).config\n return getNested(config)\n}\n\nexport const getCompilerOptions = (options?: CompilerOptions, tsconfig: string = 'tsconfig.json'): CompilerOptions => {\n const configFileName = findConfigFile('./', sys.fileExists, tsconfig)\n const configFileCompilerOptions = configFileName ? getCompilerOptionsJSONFollowExtends(configFileName) : undefined\n\n return merge({}, configFileCompilerOptions, options)\n}\n"],"mappings":"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","names":["cwd","chalk","createProgramFromConfig","DiagnosticCategory","glob","getAllInputs2","folder","glob","sync","ignore","posix","buildEntries","folder","entryMode","verbose","console","log","getAllInputs2","filter","entry","includes","createRequire","merge","findConfigFile","readConfigFile","sys","getNested","config","extends","require","createRequire","url","opts","compilerOptions","getCompilerOptionsJSONFollowExtends","filename","readConfigFile","sys","readFile","getCompilerOptions","options","tsconfig","configFileName","findConfigFile","fileExists","configFileCompilerOptions","undefined","merge","packageCompileTscTypes","folder","verbose","compilerOptionsParam","pkg","process","env","INIT_CWD","cwd","console","log","compilerOptions","getCompilerOptions","declaration","emitDeclarationOnly","outDir","removeComments","skipDefaultLibCheck","skipLibCheck","sourceMap","files","buildEntries","result","createProgramFromConfig","basePath","exclude","emit","diagResults","diagnostics","length","diag","category","DiagnosticCategory","Error","error","chalk","red","messageText","grey","blue","file","fileName","Warning","yellow","Suggestion","white"]}
@@ -2,7 +2,6 @@ var __defProp = Object.defineProperty;
2
2
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
3
 
4
4
  // src/actions/package/compile/packageCompileTsup.ts
5
- import merge2 from "lodash/merge.js";
6
5
  import { build, defineConfig } from "tsup";
7
6
 
8
7
  // src/actions/package/publint.ts
@@ -127,7 +126,7 @@ var packageCompileTsc = /* @__PURE__ */ __name(async (noEmit, config, compilerOp
127
126
  console.log(`Compiling with NoEmit TSC [${pkg}]`);
128
127
  }
129
128
  const compilerOptions = {
130
- ...await getCompilerOptions({
129
+ ...getCompilerOptions({
131
130
  outDir: "dist",
132
131
  removeComments: true,
133
132
  rootDir: "src"
@@ -165,103 +164,6 @@ var packageCompileTsc = /* @__PURE__ */ __name(async (noEmit, config, compilerOp
165
164
  return results.reduce((prev, diag) => prev + diag.category === DiagnosticCategory.Error ? 1 : 0, 0) || (publint ? await packagePublint() : 0);
166
165
  }, "packageCompileTsc");
167
166
 
168
- // src/actions/package/compile/packageCompileTscTypes.ts
169
- import { cwd as cwd2 } from "node:process";
170
- import chalk3 from "chalk";
171
- import { createProgramFromConfig as createProgramFromConfig2 } from "tsc-prog";
172
- import { DiagnosticCategory as DiagnosticCategory2 } from "typescript";
173
-
174
- // src/actions/package/compile/copyTypeFiles.ts
175
- import { copyFile, readdir } from "node:fs/promises";
176
- import { Mutex } from "async-mutex";
177
- var copyFileMutex = new Mutex();
178
- var getDistTypeFiles = /* @__PURE__ */ __name(async (compilerOptions) => {
179
- const outDir = compilerOptions.outDir ?? "dist";
180
- return (await readdir(outDir, {
181
- recursive: true
182
- })).filter((file) => file.endsWith("d.ts")).map((file) => `${outDir}/${file}`);
183
- }, "getDistTypeFiles");
184
- var getDistTypeMapFiles = /* @__PURE__ */ __name(async (compilerOptions) => {
185
- const outDir = compilerOptions.outDir ?? "dist";
186
- return (await readdir(outDir, {
187
- recursive: true
188
- })).filter((file) => file.endsWith("d.ts.map")).map((file) => `${outDir}/${file}`);
189
- }, "getDistTypeMapFiles");
190
- var copyTypeFiles = /* @__PURE__ */ __name(async (compilerOptions) => {
191
- await copyFileMutex.runExclusive(async () => {
192
- const distTypeFiles = await getDistTypeFiles(compilerOptions);
193
- await Promise.all(distTypeFiles.map(async (file) => {
194
- await copyFile(file, file.replace("d.ts", "d.mts"));
195
- await copyFile(file, file.replace("d.ts", "d.cts"));
196
- }));
197
- const distTypeMapFiles = await getDistTypeMapFiles(compilerOptions);
198
- await Promise.all(distTypeMapFiles.map(async (file) => {
199
- await copyFile(file, file.replace("d.ts.map", "d.mts.map"));
200
- await copyFile(file, file.replace("d.ts.map", "d.cts.map"));
201
- }));
202
- });
203
- }, "copyTypeFiles");
204
-
205
- // src/actions/package/compile/packageCompileTscTypes.ts
206
- var packageCompileTscTypes = /* @__PURE__ */ __name(async (folder = "src", { verbose } = {}, compilerOptionsParam, generateMts = true) => {
207
- const pkg = process.env.INIT_CWD ?? cwd2();
208
- if (verbose) {
209
- console.log(`Compiling types with TSC [${pkg}]`);
210
- }
211
- const compilerOptions = {
212
- ...await getCompilerOptions({
213
- declaration: true,
214
- emitDeclarationOnly: true,
215
- outDir: "dist",
216
- removeComments: true,
217
- skipDefaultLibCheck: true,
218
- skipLibCheck: true,
219
- sourceMap: true
220
- }),
221
- ...compilerOptionsParam
222
- };
223
- const files = buildEntries(folder, "all");
224
- const result = createProgramFromConfig2({
225
- basePath: pkg ?? cwd2(),
226
- compilerOptions,
227
- exclude: [
228
- "dist",
229
- "docs",
230
- "**/*.spec.*",
231
- "**/*.stories.*",
232
- "src/**/spec/**/*"
233
- ],
234
- files
235
- }).emit();
236
- const diagResults = result.diagnostics.length;
237
- for (const diag of result.diagnostics) {
238
- switch (diag.category) {
239
- case DiagnosticCategory2.Error: {
240
- console.error(chalk3.red(diag.messageText));
241
- console.error(chalk3.grey(pkg));
242
- console.error(chalk3.blue(diag.file?.fileName));
243
- break;
244
- }
245
- case DiagnosticCategory2.Warning: {
246
- console.error(chalk3.yellow(diag.messageText));
247
- console.error(chalk3.grey(pkg));
248
- console.error(chalk3.blue(diag.file?.fileName));
249
- break;
250
- }
251
- case DiagnosticCategory2.Suggestion: {
252
- console.error(chalk3.white(diag.messageText));
253
- console.error(chalk3.grey(pkg));
254
- console.error(chalk3.blue(diag.file?.fileName));
255
- break;
256
- }
257
- }
258
- }
259
- if (generateMts) {
260
- await copyTypeFiles(compilerOptions);
261
- }
262
- return diagResults;
263
- }, "packageCompileTscTypes");
264
-
265
167
  // src/actions/package/compile/packageCompileTsup.ts
266
168
  var compileFolder = /* @__PURE__ */ __name(async (folder, entryMode = "single", options, verbose) => {
267
169
  const outDir = options?.outDir ?? "dist";
@@ -270,18 +172,15 @@ var compileFolder = /* @__PURE__ */ __name(async (folder, entryMode = "single",
270
172
  bundle: true,
271
173
  cjsInterop: true,
272
174
  clean: true,
273
- dts: false,
175
+ dts: true,
274
176
  entry,
275
177
  format: [
276
- "cjs",
277
178
  "esm"
278
179
  ],
279
- // minify: true,
280
180
  outDir,
281
181
  silent: true,
282
182
  sourcemap: true,
283
183
  splitting: false,
284
- // terserOptions: { format: { comments: false } },
285
184
  tsconfig: "tsconfig.json",
286
185
  ...options
287
186
  });
@@ -296,11 +195,6 @@ var compileFolder = /* @__PURE__ */ __name(async (folder, entryMode = "single",
296
195
  ];
297
196
  }))).flat();
298
197
  await Promise.all(optionsList.map((options2) => build(options2)));
299
- await packageCompileTscTypes(folder, {
300
- verbose
301
- }, {
302
- outDir
303
- });
304
198
  return 0;
305
199
  }, "compileFolder");
306
200
  var packageCompileTsup = /* @__PURE__ */ __name(async (config) => {
@@ -319,165 +213,72 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config) => {
319
213
  const compileForNeutral = compile?.neutral ?? {
320
214
  src: {}
321
215
  };
216
+ const standardLoaders = {
217
+ ".gif": "copy",
218
+ ".html": "copy",
219
+ ".jpg": "copy",
220
+ ".json": "json",
221
+ ".png": "copy",
222
+ ".svg": "copy",
223
+ ".webp": "copy"
224
+ };
225
+ const standardOptions = {
226
+ bundle: true,
227
+ format: [
228
+ "esm"
229
+ ],
230
+ loader: standardLoaders,
231
+ outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
232
+ js: ".mjs"
233
+ } : {
234
+ js: ".cjs"
235
+ }, "outExtension"),
236
+ skipNodeModulesBundle: true,
237
+ sourcemap: true,
238
+ target: "esnext"
239
+ };
322
240
  return await packageCompileTsc(true, {
323
241
  publint: false,
324
242
  verbose
325
243
  }) || (await Promise.all(Object.entries(compileForNode).map(async ([folder, options]) => {
326
244
  const inEsBuildOptions = typeof compile?.node?.esbuildOptions === "object" ? compile?.node?.esbuildOptions : {};
327
245
  return folder ? await compileFolder(folder, compile?.entryMode, {
328
- bundle: true,
329
- format: [
330
- "cjs",
331
- "esm"
332
- ],
333
- loader: merge2({}, {
334
- ".gif": "copy",
335
- ".html": "copy",
336
- ".jpg": "copy",
337
- ".json": "json",
338
- ".png": "copy",
339
- ".svg": "copy",
340
- ".webp": "copy"
341
- }, inEsBuildOptions?.loader),
342
- // minify: true,
246
+ ...standardOptions,
247
+ loader: {
248
+ ...standardOptions.loader,
249
+ ...inEsBuildOptions?.loader
250
+ },
343
251
  outDir: "dist/node",
344
- outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
345
- js: ".mjs"
346
- } : {
347
- js: ".cjs"
348
- }, "outExtension"),
349
252
  platform: "node",
350
- skipNodeModulesBundle: true,
351
- sourcemap: true,
352
- target: "node16",
353
- // terserOptions: { format: { comments: false } },
354
253
  ...compile?.tsup?.options,
355
254
  ...typeof options === "object" ? options : {}
356
255
  }, verbose) : 0;
357
256
  }))).reduce((prev, value) => prev + value, 0) || (await Promise.all(Object.entries(compileForBrowser).map(async ([folder, options]) => {
358
257
  const inEsBuildOptions = typeof compile?.browser?.esbuildOptions === "object" ? compile?.browser?.esbuildOptions : {};
359
- return folder ? (await Promise.all([
360
- compileFolder(folder, compile?.entryMode, {
361
- bundle: true,
362
- format: [
363
- "cjs"
364
- ],
365
- loader: merge2({}, {
366
- ".gif": "copy",
367
- ".html": "copy",
368
- ".jpg": "copy",
369
- ".json": "json",
370
- ".png": "copy",
371
- ".svg": "copy",
372
- ".webp": "copy"
373
- }, inEsBuildOptions?.loader),
374
- // minify: true,
375
- outDir: "dist/browser",
376
- outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
377
- js: ".mjs"
378
- } : {
379
- js: ".cjs"
380
- }, "outExtension"),
381
- platform: "browser",
382
- skipNodeModulesBundle: true,
383
- sourcemap: true,
384
- target: "esnext",
385
- // terserOptions: { format: { comments: false } },
386
- ...compile?.tsup?.options,
387
- ...typeof options === "object" ? options : {}
388
- }, verbose),
389
- compileFolder(folder, compile?.entryMode, {
390
- bundle: true,
391
- format: [
392
- "esm"
393
- ],
394
- loader: merge2({}, {
395
- ".gif": "copy",
396
- ".html": "copy",
397
- ".jpg": "copy",
398
- ".json": "json",
399
- ".png": "copy",
400
- ".svg": "copy",
401
- ".webp": "copy"
402
- }, inEsBuildOptions?.loader),
403
- // minify: true,
404
- outDir: "dist/browser",
405
- outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
406
- js: ".mjs"
407
- } : {
408
- js: ".cjs"
409
- }, "outExtension"),
410
- platform: "browser",
411
- skipNodeModulesBundle: true,
412
- sourcemap: true,
413
- target: "esnext",
414
- // terserOptions: { format: { comments: false } },
415
- ...compile?.tsup?.options,
416
- ...typeof options === "object" ? options : {}
417
- }, verbose)
418
- ])).reduce((prev, value) => prev + value, 0) : 0;
258
+ return folder ? await compileFolder(folder, compile?.entryMode, {
259
+ ...standardOptions,
260
+ loader: {
261
+ ...standardOptions.loader,
262
+ ...inEsBuildOptions?.loader
263
+ },
264
+ outDir: "dist/browser",
265
+ platform: "browser",
266
+ ...compile?.tsup?.options,
267
+ ...typeof options === "object" ? options : {}
268
+ }, verbose) : 0;
419
269
  }))).reduce((prev, value) => prev + value, 0) || (await Promise.all(Object.entries(compileForNeutral).map(async ([folder, options]) => {
420
270
  const inEsBuildOptions = typeof compile?.neutral?.esbuildOptions === "object" ? compile?.neutral?.esbuildOptions : {};
421
- return folder ? (await Promise.all([
422
- compileFolder(folder, compile?.entryMode, {
423
- bundle: true,
424
- format: [
425
- "cjs"
426
- ],
427
- loader: merge2({}, {
428
- ".gif": "copy",
429
- ".html": "copy",
430
- ".jpg": "copy",
431
- ".json": "json",
432
- ".png": "copy",
433
- ".svg": "copy",
434
- ".webp": "copy"
435
- }, inEsBuildOptions?.loader),
436
- // minify: true,
437
- outDir: "dist/neutral",
438
- outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
439
- js: ".mjs"
440
- } : {
441
- js: ".cjs"
442
- }, "outExtension"),
443
- platform: "neutral",
444
- skipNodeModulesBundle: true,
445
- sourcemap: true,
446
- target: "esnext",
447
- // terserOptions: { format: { comments: false } },
448
- ...compile?.tsup?.options,
449
- ...typeof options === "object" ? options : {}
450
- }, verbose),
451
- compileFolder(folder, compile?.entryMode, {
452
- bundle: true,
453
- format: [
454
- "esm"
455
- ],
456
- loader: merge2({}, {
457
- ".gif": "copy",
458
- ".html": "copy",
459
- ".jpg": "copy",
460
- ".json": "json",
461
- ".png": "copy",
462
- ".svg": "copy",
463
- ".webp": "copy"
464
- }, inEsBuildOptions?.loader),
465
- // minify: true,
466
- outDir: "dist/neutral",
467
- outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
468
- js: ".mjs"
469
- } : {
470
- js: ".cjs"
471
- }, "outExtension"),
472
- platform: "neutral",
473
- skipNodeModulesBundle: true,
474
- sourcemap: true,
475
- target: "esnext",
476
- // terserOptions: { format: { comments: false } },
477
- ...compile?.tsup?.options,
478
- ...typeof options === "object" ? options : {}
479
- }, verbose)
480
- ])).reduce((prev, value) => prev + value, 0) : 0;
271
+ return folder ? await compileFolder(folder, compile?.entryMode, {
272
+ ...standardOptions,
273
+ loader: {
274
+ ...standardOptions.loader,
275
+ ...inEsBuildOptions?.loader
276
+ },
277
+ outDir: "dist/neutral",
278
+ platform: "neutral",
279
+ ...compile?.tsup?.options,
280
+ ...typeof options === "object" ? options : {}
281
+ }, verbose) : 0;
481
282
  }))).reduce((prev, value) => prev + value, 0) || (publint ? await packagePublint() : 0);
482
283
  }, "packageCompileTsup");
483
284
  export {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/actions/package/compile/packageCompileTsup.ts","../../../../src/actions/package/publint.ts","../../../../src/actions/package/compile/inputs.ts","../../../../src/actions/package/compile/buildEntries.ts","../../../../src/actions/package/compile/packageCompileTsc.ts","../../../../src/actions/package/compile/getCompilerOptions.ts","../../../../src/actions/package/compile/packageCompileTscTypes.ts","../../../../src/actions/package/compile/copyTypeFiles.ts"],"sourcesContent":["// eslint-disable-next-line import/no-internal-modules\nimport merge from 'lodash/merge.js'\nimport { build, defineConfig, Options } from 'tsup'\n\nimport { packagePublint } from '../publint.ts'\nimport { buildEntries } from './buildEntries.ts'\nimport { packageCompileTsc } from './packageCompileTsc.ts'\nimport { packageCompileTscTypes } from './packageCompileTscTypes.ts'\nimport { EntryMode, XyTsupConfig } from './XyConfig.ts'\n\nconst compileFolder = async (folder: string, entryMode: EntryMode = 'single', options?: Options, verbose?: boolean) => {\n const outDir = options?.outDir ?? 'dist'\n const entry = buildEntries(folder, entryMode)\n const optionsResult = defineConfig({\n bundle: true,\n cjsInterop: true,\n clean: true,\n dts: false,\n entry,\n format: ['cjs', 'esm'],\n // minify: true,\n outDir,\n silent: true,\n sourcemap: true,\n splitting: false,\n // terserOptions: { format: { comments: false } },\n tsconfig: 'tsconfig.json',\n ...options,\n })\n const optionsList = (\n await Promise.all(\n (Array.isArray(optionsResult) ? optionsResult : [optionsResult]).flatMap<Promise<Options[]>>(async (options) => {\n const result = typeof options === 'function' ? await options({}) : [options]\n return Array.isArray(result) ? result : [result]\n }),\n )\n ).flat()\n\n await Promise.all(optionsList.map(options => build(options)))\n await packageCompileTscTypes(folder, { verbose }, { outDir })\n\n return 0\n}\n\n// eslint-disable-next-line complexity\nexport const packageCompileTsup = async (config?: XyTsupConfig) => {\n const compile = config?.compile\n const publint = config?.publint ?? true\n const verbose = config?.verbose ?? false\n if (verbose) {\n console.log(`Compiling with TSUP [Depth: ${compile?.depth}]`)\n }\n\n const compileForNode = compile?.node ?? { src: {} }\n const compileForBrowser = compile?.browser ?? { src: {} }\n const compileForNeutral = compile?.neutral ?? { src: {} }\n\n return (\n (await packageCompileTsc(true, { publint: false, verbose }))\n || (\n await Promise.all(\n Object.entries(compileForNode).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.node?.esbuildOptions === 'object' ? compile?.node?.esbuildOptions : {}\n return folder\n ? await compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs', 'esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/node',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.mjs' } : { js: '.cjs' }),\n platform: 'node',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'node16',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n )\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0)\n || (\n await Promise.all(\n Object.entries(compileForBrowser).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.browser?.esbuildOptions === 'object' ? compile?.browser?.esbuildOptions : {}\n return folder\n ? (\n await Promise.all([\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.mjs' } : { js: '.cjs' }),\n platform: 'browser',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.mjs' } : { js: '.cjs' }),\n platform: 'browser',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n ])\n ).reduce((prev, value) => prev + value, 0)\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0)\n || (\n await Promise.all(\n Object.entries(compileForNeutral).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.neutral?.esbuildOptions === 'object' ? compile?.neutral?.esbuildOptions : {}\n return folder\n ? (\n await Promise.all([\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/neutral',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.mjs' } : { js: '.cjs' }),\n platform: 'neutral',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/neutral',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.mjs' } : { js: '.cjs' }),\n platform: 'neutral',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n ])\n ).reduce((prev, value) => prev + value, 0)\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0)\n || (publint ? await packagePublint() : 0)\n )\n}\n","import { promises as fs } from 'node:fs'\n\nimport chalk from 'chalk'\nimport { Message } from 'publint'\n\nexport interface PackagePublintParams {\n verbose?: boolean\n}\n\nexport const packagePublint = async (params?: PackagePublintParams) => {\n const pkgDir = process.env.INIT_CWD\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: true,\n })\n\n // eslint-disable-next-line import/no-internal-modules\n const { formatMessage } = await import('publint/utils')\n\n const validMessage = (_message: Message): boolean => {\n return true\n /* try {\n const value = getValueFromPath(pkg, message.path)\n switch (message.code) {\n case 'FILE_INVALID_FORMAT':\n return !message.args?.actualFilePath?.includes('dist/browser') && !value?.includes('dist/browser')\n case 'EXPORT_TYPES_INVALID_FORMAT':\n return !`${value}`.includes('dist/browser')\n default:\n return true\n }\n } catch (ex) {\n const error = ex as Error\n console.error(chalk.red(`validMessage Excepted: ${error.message}`))\n console.error(chalk.gray(JSON.stringify(error.stack)))\n return true\n } */\n }\n\n // we filter out invalid file formats for the esm folder since it is intentionally done\n const validMessages = messages.filter(validMessage)\n for (const message of validMessages) {\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 if (params?.verbose) {\n console.log(chalk.gray(`Publint [Finish]: ${pkgDir} [${validMessages.length}]`))\n }\n\n return validMessages.filter(message => message.type === 'error').length\n}\n","import { readdir } from 'node:fs/promises'\n\nimport { glob } from 'glob'\n\nexport const getInputs = async (subDir?: string) => {\n return (await readdir(subDir ? `src/${subDir}` : 'src', { recursive: false }))\n .filter(\n file => (file.endsWith('.ts') || file.endsWith('.tsx')) && !file.endsWith('d.ts') && !file.includes('.spec.') && !file.includes('.stories.'),\n )\n .map(file => (subDir ? `${subDir}/${file}` : file))\n}\n\nexport const getInputDirs = async (depth: number = 0) => {\n if (depth === 0) {\n return []\n }\n return [\n '.',\n ...(await readdir('src', { recursive: true, withFileTypes: true }))\n .filter(file => file.isDirectory())\n .map((file) => {\n const pathParts = file.path?.split('/') ?? []\n pathParts.shift()\n if (pathParts.length > 0) {\n const root = pathParts.join('/')\n return `${root}/${file.name}`\n } else {\n return file.name\n }\n }),\n ]\n}\n\nexport const getAllInputs = async (depth = 100) => {\n const dirs = await getInputDirs(depth)\n return (await Promise.all(dirs.map(async dir => await getInputs(dir)))).flat()\n}\n\nexport const getAllInputs2 = (folder: string) => {\n /* tsup wants posix paths */\n return glob.sync(`${folder}/**/*.*`, { ignore: ['**/*.spec.*', '**/*.stories.*', '**/spec/**/*'], posix: true })\n}\n","import { getAllInputs2 } from './inputs.ts'\nimport { EntryMode } from './XyConfig.ts'\n\nexport const buildEntries = (folder: string, entryMode?: EntryMode, verbose = false) => {\n switch (entryMode) {\n case 'platform': {\n if (verbose) console.log('buildEntries [platform]')\n return [`${folder}/index-node.ts`, `${folder}/index-browser.ts`]\n }\n case 'all': {\n if (verbose) console.log('buildEntries [all]')\n return getAllInputs2(folder).filter(entry => !entry.includes('.spec.') && !entry.includes('.story.'))\n }\n default: {\n if (verbose) console.log('buildEntries [single]')\n return [`${folder}/index.ts`]\n }\n }\n}\n","import { cwd } from 'node:process'\n\nimport chalk from 'chalk'\nimport { createProgramFromConfig, TsConfigCompilerOptions } from 'tsc-prog'\nimport {\n CompilerOptions,\n DiagnosticCategory,\n FormatDiagnosticsHost,\n formatDiagnosticsWithColorAndContext,\n getLineAndCharacterOfPosition,\n getPreEmitDiagnostics,\n LineAndCharacter,\n} from 'typescript'\n\nimport { packagePublint } from '../publint.ts'\nimport { getCompilerOptions } from './getCompilerOptions.ts'\nimport { XyTscConfig } from './XyConfig.ts'\n\nexport const packageCompileTsc = async (noEmit?: boolean, config?: XyTscConfig, compilerOptionsParam?: CompilerOptions): Promise<number> => {\n const pkg = process.env.INIT_CWD ?? cwd()\n\n const publint = config?.publint ?? true\n const verbose = config?.verbose ?? false\n\n const formatHost: FormatDiagnosticsHost = {\n getCanonicalFileName: fileName => fileName,\n getCurrentDirectory: () => pkg,\n getNewLine: () => '\\n',\n }\n\n if (verbose) {\n console.log(`Compiling with NoEmit TSC [${pkg}]`)\n }\n\n const compilerOptions = {\n ...(await getCompilerOptions({\n outDir: 'dist',\n removeComments: true,\n rootDir: 'src',\n })),\n ...compilerOptionsParam,\n ...(noEmit === undefined ? {} : { noEmit }),\n } as TsConfigCompilerOptions\n\n const program = createProgramFromConfig({\n basePath: pkg ?? cwd(),\n compilerOptions,\n exclude: ['dist', 'docs', '**/*.spec.*', '**/*.stories.*', 'src/**/spec/**/*'],\n include: ['src'],\n })\n\n const results = getPreEmitDiagnostics(program)\n\n for (const diag of results) {\n const lineAndChar: LineAndCharacter = diag.file ? getLineAndCharacterOfPosition(diag.file, diag.start ?? 0) : { character: 0, line: 0 }\n console.log(chalk.cyan(`${diag.file?.fileName}:${lineAndChar.line + 1}:${lineAndChar.character + 1}`))\n console.log(formatDiagnosticsWithColorAndContext([diag], formatHost))\n }\n\n // eslint-disable-next-line unicorn/no-array-reduce\n return results.reduce((prev, diag) => (prev + diag.category === DiagnosticCategory.Error ? 1 : 0), 0) || (publint ? await packagePublint() : 0)\n}\n","import { createRequire } from 'node:module'\n\n// eslint-disable-next-line import/no-internal-modules\nimport merge from 'lodash/merge.js'\nimport { TsConfig } from 'tsc-prog'\nimport { CompilerOptions, findConfigFile, readConfigFile, sys } from 'typescript'\n\nconst getNested = (config: TsConfig): CompilerOptions => {\n if (config.extends) {\n const require = createRequire(import.meta.url)\n const opts = require(config.extends)\n return { ...getNested(opts), ...config.compilerOptions } as CompilerOptions\n }\n\n return config.compilerOptions as CompilerOptions\n}\n\nexport const getCompilerOptionsJSONFollowExtends = (filename: string): CompilerOptions => {\n const config = readConfigFile(filename, sys.readFile).config\n return getNested(config)\n}\n\nexport const getCompilerOptions = (options?: CompilerOptions, tsconfig: string = 'tsconfig.json'): CompilerOptions => {\n const configFileName = findConfigFile('./', sys.fileExists, tsconfig)\n const configFileCompilerOptions = configFileName ? getCompilerOptionsJSONFollowExtends(configFileName) : undefined\n\n return merge({}, configFileCompilerOptions, options)\n}\n","import { cwd } from 'node:process'\n\nimport chalk from 'chalk'\nimport { createProgramFromConfig, TsConfigCompilerOptions } from 'tsc-prog'\nimport { CompilerOptions, DiagnosticCategory } from 'typescript'\n\nimport { buildEntries } from './buildEntries.ts'\nimport { copyTypeFiles } from './copyTypeFiles.ts'\nimport { getCompilerOptions } from './getCompilerOptions.ts'\nimport { XyConfig } from './XyConfig.ts'\n\nexport const packageCompileTscTypes = async (\n folder: string = 'src',\n { verbose }: XyConfig = {},\n compilerOptionsParam?: CompilerOptions,\n generateMts = true,\n): Promise<number> => {\n const pkg = process.env.INIT_CWD ?? cwd()\n\n if (verbose) {\n console.log(`Compiling types with TSC [${pkg}]`)\n }\n\n const compilerOptions = {\n ...(await getCompilerOptions({\n declaration: true,\n emitDeclarationOnly: true,\n outDir: 'dist',\n removeComments: true,\n skipDefaultLibCheck: true,\n skipLibCheck: true,\n sourceMap: true,\n })),\n ...compilerOptionsParam,\n } as TsConfigCompilerOptions\n\n // calling all here since the types do not get rolled up\n const files = buildEntries(folder, 'all')\n\n const result = createProgramFromConfig({\n basePath: pkg ?? cwd(),\n compilerOptions,\n exclude: ['dist', 'docs', '**/*.spec.*', '**/*.stories.*', 'src/**/spec/**/*'],\n files,\n }).emit()\n\n const diagResults = result.diagnostics.length\n for (const diag of result.diagnostics) {\n switch (diag.category) {\n case DiagnosticCategory.Error: {\n console.error(chalk.red(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n case DiagnosticCategory.Warning: {\n console.error(chalk.yellow(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n case DiagnosticCategory.Suggestion: {\n console.error(chalk.white(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n }\n }\n if (generateMts) {\n await copyTypeFiles(compilerOptions)\n }\n return diagResults\n}\n","import { copyFile, readdir } from 'node:fs/promises'\n\nimport { Mutex } from 'async-mutex'\nimport { TsConfigCompilerOptions } from 'tsc-prog'\n\nconst copyFileMutex = new Mutex()\n\nconst getDistTypeFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n const outDir = compilerOptions.outDir ?? 'dist'\n return (await readdir(outDir, { recursive: true })).filter(file => file.endsWith('d.ts')).map(file => `${outDir}/${file}`)\n}\n\nconst getDistTypeMapFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n const outDir = compilerOptions.outDir ?? 'dist'\n return (await readdir(outDir, { recursive: true })).filter(file => file.endsWith('d.ts.map')).map(file => `${outDir}/${file}`)\n}\n\nexport const copyTypeFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n // using a mutex since sometimes two compiles are running at once and cause a lock on windows\n await copyFileMutex.runExclusive(async () => {\n // hybrid packages want two copies of the types\n const distTypeFiles = await getDistTypeFiles(compilerOptions)\n await Promise.all(\n distTypeFiles.map(async (file) => {\n await copyFile(file, file.replace('d.ts', 'd.mts'))\n await copyFile(file, file.replace('d.ts', 'd.cts'))\n }),\n )\n\n const distTypeMapFiles = await getDistTypeMapFiles(compilerOptions)\n await Promise.all(\n distTypeMapFiles.map(async (file) => {\n await copyFile(file, file.replace('d.ts.map', 'd.mts.map'))\n await copyFile(file, file.replace('d.ts.map', 'd.cts.map'))\n }),\n )\n })\n}\n"],"mappings":"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","names":["merge","build","defineConfig","promises","fs","chalk","packagePublint","params","pkgDir","process","env","INIT_CWD","pkg","JSON","parse","fs","readFile","console","log","chalk","green","name","gray","publint","messages","level","strict","formatMessage","validMessage","_message","validMessages","filter","message","type","error","red","code","warn","yellow","white","verbose","length","glob","getAllInputs2","folder","glob","sync","ignore","posix","buildEntries","folder","entryMode","verbose","console","log","getAllInputs2","filter","entry","includes","cwd","chalk","createProgramFromConfig","DiagnosticCategory","formatDiagnosticsWithColorAndContext","getLineAndCharacterOfPosition","getPreEmitDiagnostics","createRequire","merge","findConfigFile","readConfigFile","sys","getNested","config","extends","require","createRequire","url","opts","compilerOptions","getCompilerOptionsJSONFollowExtends","filename","readConfigFile","sys","readFile","getCompilerOptions","options","tsconfig","configFileName","findConfigFile","fileExists","configFileCompilerOptions","undefined","merge","packageCompileTsc","noEmit","config","compilerOptionsParam","pkg","process","env","INIT_CWD","cwd","publint","verbose","formatHost","getCanonicalFileName","fileName","getCurrentDirectory","getNewLine","console","log","compilerOptions","getCompilerOptions","outDir","removeComments","rootDir","undefined","program","createProgramFromConfig","basePath","exclude","include","results","getPreEmitDiagnostics","diag","lineAndChar","file","getLineAndCharacterOfPosition","start","character","line","chalk","cyan","formatDiagnosticsWithColorAndContext","reduce","prev","category","DiagnosticCategory","Error","packagePublint","cwd","chalk","createProgramFromConfig","DiagnosticCategory","copyFile","readdir","Mutex","copyFileMutex","Mutex","getDistTypeFiles","compilerOptions","outDir","readdir","recursive","filter","file","endsWith","map","getDistTypeMapFiles","copyTypeFiles","runExclusive","distTypeFiles","Promise","all","copyFile","replace","distTypeMapFiles","packageCompileTscTypes","folder","verbose","compilerOptionsParam","generateMts","pkg","process","env","INIT_CWD","cwd","console","log","compilerOptions","getCompilerOptions","declaration","emitDeclarationOnly","outDir","removeComments","skipDefaultLibCheck","skipLibCheck","sourceMap","files","buildEntries","result","createProgramFromConfig","basePath","exclude","emit","diagResults","diagnostics","length","diag","category","DiagnosticCategory","Error","error","chalk","red","messageText","grey","blue","file","fileName","Warning","yellow","Suggestion","white","copyTypeFiles","compileFolder","folder","entryMode","options","verbose","outDir","entry","buildEntries","optionsResult","defineConfig","bundle","cjsInterop","clean","dts","format","silent","sourcemap","splitting","tsconfig","optionsList","Promise","all","Array","isArray","flatMap","result","flat","map","build","packageCompileTscTypes","packageCompileTsup","config","compile","publint","console","log","depth","compileForNode","node","src","compileForBrowser","browser","compileForNeutral","neutral","packageCompileTsc","Object","entries","inEsBuildOptions","esbuildOptions","loader","merge","outExtension","js","platform","skipNodeModulesBundle","target","tsup","reduce","prev","value","packagePublint"]}
1
+ {"version":3,"sources":["../../../../src/actions/package/compile/packageCompileTsup.ts","../../../../src/actions/package/publint.ts","../../../../src/actions/package/compile/inputs.ts","../../../../src/actions/package/compile/buildEntries.ts","../../../../src/actions/package/compile/packageCompileTsc.ts","../../../../src/actions/package/compile/getCompilerOptions.ts"],"sourcesContent":["import type { Loader } from 'esbuild'\nimport { build, defineConfig, Options } from 'tsup'\n\nimport { packagePublint } from '../publint.ts'\nimport { buildEntries } from './buildEntries.ts'\nimport { packageCompileTsc } from './packageCompileTsc.ts'\nimport { packageCompileTscTypes } from './packageCompileTscTypes.ts'\nimport { EntryMode, XyTsupConfig } from './XyConfig.ts'\n\nconst compileFolder = async (folder: string, entryMode: EntryMode = 'single', options?: Options, verbose?: boolean) => {\n const outDir = options?.outDir ?? 'dist'\n const entry = buildEntries(folder, entryMode)\n const optionsResult = defineConfig({\n bundle: true,\n cjsInterop: true,\n clean: true,\n dts: true,\n entry,\n format: ['esm'],\n outDir,\n silent: true,\n sourcemap: true,\n splitting: false,\n tsconfig: 'tsconfig.json',\n ...options,\n })\n const optionsList = (\n await Promise.all(\n (Array.isArray(optionsResult) ? optionsResult : [optionsResult]).flatMap<Promise<Options[]>>(async (options) => {\n const result = typeof options === 'function' ? await options({}) : [options]\n return Array.isArray(result) ? result : [result]\n }),\n )\n ).flat()\n\n await Promise.all(optionsList.map(options => build(options)))\n // packageCompileTscTypes(folder, { verbose }, { outDir })\n\n return 0\n}\n\n// eslint-disable-next-line complexity\nexport const packageCompileTsup = async (config?: XyTsupConfig) => {\n const compile = config?.compile\n const publint = config?.publint ?? true\n const verbose = config?.verbose ?? false\n if (verbose) {\n console.log(`Compiling with TSUP [Depth: ${compile?.depth}]`)\n }\n\n const compileForNode = compile?.node ?? { src: {} }\n const compileForBrowser = compile?.browser ?? { src: {} }\n const compileForNeutral = compile?.neutral ?? { src: {} }\n\n const standardLoaders: Record<string, Loader> = { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' }\n const standardOptions: Options = {\n bundle: true,\n format: ['esm'],\n loader: standardLoaders,\n outExtension: ({ format }) => (format === 'esm' ? { js: '.mjs' } : { js: '.cjs' }),\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n }\n\n return (\n (await packageCompileTsc(true, { publint: false, verbose }))\n || (\n await Promise.all(\n Object.entries(compileForNode).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.node?.esbuildOptions === 'object' ? compile?.node?.esbuildOptions : {}\n return folder\n ? await compileFolder(\n folder,\n compile?.entryMode,\n {\n ...standardOptions,\n loader: {\n ...standardOptions.loader,\n ...inEsBuildOptions?.loader,\n },\n outDir: 'dist/node',\n platform: 'node',\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n )\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0)\n || (\n await Promise.all(\n Object.entries(compileForBrowser).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.browser?.esbuildOptions === 'object' ? compile?.browser?.esbuildOptions : {}\n return folder\n ? await compileFolder(\n folder,\n compile?.entryMode,\n {\n ...standardOptions,\n loader: {\n ...standardOptions.loader,\n ...inEsBuildOptions?.loader,\n },\n outDir: 'dist/browser',\n platform: 'browser',\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n )\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0)\n || (\n await Promise.all(\n Object.entries(compileForNeutral).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.neutral?.esbuildOptions === 'object' ? compile?.neutral?.esbuildOptions : {}\n return folder\n ? await compileFolder(\n folder,\n compile?.entryMode,\n {\n ...standardOptions,\n loader: {\n ...standardOptions.loader,\n ...inEsBuildOptions?.loader,\n },\n outDir: 'dist/neutral',\n platform: 'neutral',\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n )\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0)\n || (publint ? await packagePublint() : 0)\n )\n}\n","import { promises as fs } from 'node:fs'\n\nimport chalk from 'chalk'\nimport { Message } from 'publint'\n\nexport interface PackagePublintParams {\n verbose?: boolean\n}\n\nexport const packagePublint = async (params?: PackagePublintParams) => {\n const pkgDir = process.env.INIT_CWD\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: true,\n })\n\n // eslint-disable-next-line import/no-internal-modules\n const { formatMessage } = await import('publint/utils')\n\n const validMessage = (_message: Message): boolean => {\n return true\n /* try {\n const value = getValueFromPath(pkg, message.path)\n switch (message.code) {\n case 'FILE_INVALID_FORMAT':\n return !message.args?.actualFilePath?.includes('dist/browser') && !value?.includes('dist/browser')\n case 'EXPORT_TYPES_INVALID_FORMAT':\n return !`${value}`.includes('dist/browser')\n default:\n return true\n }\n } catch (ex) {\n const error = ex as Error\n console.error(chalk.red(`validMessage Excepted: ${error.message}`))\n console.error(chalk.gray(JSON.stringify(error.stack)))\n return true\n } */\n }\n\n // we filter out invalid file formats for the esm folder since it is intentionally done\n const validMessages = messages.filter(validMessage)\n for (const message of validMessages) {\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 if (params?.verbose) {\n console.log(chalk.gray(`Publint [Finish]: ${pkgDir} [${validMessages.length}]`))\n }\n\n return validMessages.filter(message => message.type === 'error').length\n}\n","import { readdir } from 'node:fs/promises'\n\nimport { glob } from 'glob'\n\nexport const getInputs = async (subDir?: string) => {\n return (await readdir(subDir ? `src/${subDir}` : 'src', { recursive: false }))\n .filter(\n file => (file.endsWith('.ts') || file.endsWith('.tsx')) && !file.endsWith('d.ts') && !file.includes('.spec.') && !file.includes('.stories.'),\n )\n .map(file => (subDir ? `${subDir}/${file}` : file))\n}\n\nexport const getInputDirs = async (depth: number = 0) => {\n if (depth === 0) {\n return []\n }\n return [\n '.',\n ...(await readdir('src', { recursive: true, withFileTypes: true }))\n .filter(file => file.isDirectory())\n .map((file) => {\n const pathParts = file.path?.split('/') ?? []\n pathParts.shift()\n if (pathParts.length > 0) {\n const root = pathParts.join('/')\n return `${root}/${file.name}`\n } else {\n return file.name\n }\n }),\n ]\n}\n\nexport const getAllInputs = async (depth = 100) => {\n const dirs = await getInputDirs(depth)\n return (await Promise.all(dirs.map(async dir => await getInputs(dir)))).flat()\n}\n\nexport const getAllInputs2 = (folder: string) => {\n /* tsup wants posix paths */\n return glob.sync(`${folder}/**/*.*`, { ignore: ['**/*.spec.*', '**/*.stories.*', '**/spec/**/*'], posix: true })\n}\n","import { getAllInputs2 } from './inputs.ts'\nimport { EntryMode } from './XyConfig.ts'\n\nexport const buildEntries = (folder: string, entryMode?: EntryMode, verbose = false) => {\n switch (entryMode) {\n case 'platform': {\n if (verbose) console.log('buildEntries [platform]')\n return [`${folder}/index-node.ts`, `${folder}/index-browser.ts`]\n }\n case 'all': {\n if (verbose) console.log('buildEntries [all]')\n return getAllInputs2(folder).filter(entry => !entry.includes('.spec.') && !entry.includes('.story.'))\n }\n default: {\n if (verbose) console.log('buildEntries [single]')\n return [`${folder}/index.ts`]\n }\n }\n}\n","import { cwd } from 'node:process'\n\nimport chalk from 'chalk'\nimport { createProgramFromConfig, TsConfigCompilerOptions } from 'tsc-prog'\nimport {\n CompilerOptions,\n DiagnosticCategory,\n FormatDiagnosticsHost,\n formatDiagnosticsWithColorAndContext,\n getLineAndCharacterOfPosition,\n getPreEmitDiagnostics,\n LineAndCharacter,\n} from 'typescript'\n\nimport { packagePublint } from '../publint.ts'\nimport { getCompilerOptions } from './getCompilerOptions.ts'\nimport { XyTscConfig } from './XyConfig.ts'\n\nexport const packageCompileTsc = async (noEmit?: boolean, config?: XyTscConfig, compilerOptionsParam?: CompilerOptions): Promise<number> => {\n const pkg = process.env.INIT_CWD ?? cwd()\n\n const publint = config?.publint ?? true\n const verbose = config?.verbose ?? false\n\n const formatHost: FormatDiagnosticsHost = {\n getCanonicalFileName: fileName => fileName,\n getCurrentDirectory: () => pkg,\n getNewLine: () => '\\n',\n }\n\n if (verbose) {\n console.log(`Compiling with NoEmit TSC [${pkg}]`)\n }\n\n const compilerOptions = {\n ...(getCompilerOptions({\n outDir: 'dist',\n removeComments: true,\n rootDir: 'src',\n })),\n ...compilerOptionsParam,\n ...(noEmit === undefined ? {} : { noEmit }),\n } as TsConfigCompilerOptions\n\n const program = createProgramFromConfig({\n basePath: pkg ?? cwd(),\n compilerOptions,\n exclude: ['dist', 'docs', '**/*.spec.*', '**/*.stories.*', 'src/**/spec/**/*'],\n include: ['src'],\n })\n\n const results = getPreEmitDiagnostics(program)\n\n for (const diag of results) {\n const lineAndChar: LineAndCharacter = diag.file ? getLineAndCharacterOfPosition(diag.file, diag.start ?? 0) : { character: 0, line: 0 }\n console.log(chalk.cyan(`${diag.file?.fileName}:${lineAndChar.line + 1}:${lineAndChar.character + 1}`))\n console.log(formatDiagnosticsWithColorAndContext([diag], formatHost))\n }\n\n // eslint-disable-next-line unicorn/no-array-reduce\n return results.reduce((prev, diag) => (prev + diag.category === DiagnosticCategory.Error ? 1 : 0), 0) || (publint ? await packagePublint() : 0)\n}\n","import { createRequire } from 'node:module'\n\n// eslint-disable-next-line import/no-internal-modules\nimport merge from 'lodash/merge.js'\nimport { TsConfig } from 'tsc-prog'\nimport { CompilerOptions, findConfigFile, readConfigFile, sys } from 'typescript'\n\nconst getNested = (config: TsConfig): CompilerOptions => {\n if (config.extends) {\n const require = createRequire(import.meta.url)\n const opts = require(config.extends)\n return { ...getNested(opts), ...config.compilerOptions } as CompilerOptions\n }\n\n return config.compilerOptions as CompilerOptions\n}\n\nexport const getCompilerOptionsJSONFollowExtends = (filename: string): CompilerOptions => {\n const config = readConfigFile(filename, sys.readFile).config\n return getNested(config)\n}\n\nexport const getCompilerOptions = (options?: CompilerOptions, tsconfig: string = 'tsconfig.json'): CompilerOptions => {\n const configFileName = findConfigFile('./', sys.fileExists, tsconfig)\n const configFileCompilerOptions = configFileName ? getCompilerOptionsJSONFollowExtends(configFileName) : undefined\n\n return merge({}, configFileCompilerOptions, options)\n}\n"],"mappings":"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","names":["build","defineConfig","promises","fs","chalk","packagePublint","params","pkgDir","process","env","INIT_CWD","pkg","JSON","parse","fs","readFile","console","log","chalk","green","name","gray","publint","messages","level","strict","formatMessage","validMessage","_message","validMessages","filter","message","type","error","red","code","warn","yellow","white","verbose","length","glob","getAllInputs2","folder","glob","sync","ignore","posix","buildEntries","folder","entryMode","verbose","console","log","getAllInputs2","filter","entry","includes","cwd","chalk","createProgramFromConfig","DiagnosticCategory","formatDiagnosticsWithColorAndContext","getLineAndCharacterOfPosition","getPreEmitDiagnostics","createRequire","merge","findConfigFile","readConfigFile","sys","getNested","config","extends","require","createRequire","url","opts","compilerOptions","getCompilerOptionsJSONFollowExtends","filename","readConfigFile","sys","readFile","getCompilerOptions","options","tsconfig","configFileName","findConfigFile","fileExists","configFileCompilerOptions","undefined","merge","packageCompileTsc","noEmit","config","compilerOptionsParam","pkg","process","env","INIT_CWD","cwd","publint","verbose","formatHost","getCanonicalFileName","fileName","getCurrentDirectory","getNewLine","console","log","compilerOptions","getCompilerOptions","outDir","removeComments","rootDir","undefined","program","createProgramFromConfig","basePath","exclude","include","results","getPreEmitDiagnostics","diag","lineAndChar","file","getLineAndCharacterOfPosition","start","character","line","chalk","cyan","formatDiagnosticsWithColorAndContext","reduce","prev","category","DiagnosticCategory","Error","packagePublint","compileFolder","folder","entryMode","options","verbose","outDir","entry","buildEntries","optionsResult","defineConfig","bundle","cjsInterop","clean","dts","format","silent","sourcemap","splitting","tsconfig","optionsList","Promise","all","Array","isArray","flatMap","result","flat","map","build","packageCompileTsup","config","compile","publint","console","log","depth","compileForNode","node","src","compileForBrowser","browser","compileForNeutral","neutral","standardLoaders","standardOptions","loader","outExtension","js","skipNodeModulesBundle","target","packageCompileTsc","Object","entries","inEsBuildOptions","esbuildOptions","platform","tsup","reduce","prev","value","packagePublint"]}