@xylabs/ts-scripts-yarn3 6.0.5 → 6.0.7

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 (316) hide show
  1. package/dist/actions/build.mjs +11 -0
  2. package/dist/actions/build.mjs.map +1 -1
  3. package/dist/actions/compile-types.mjs +2 -2
  4. package/dist/actions/compile-types.mjs.map +1 -1
  5. package/dist/actions/compile.mjs +7 -9
  6. package/dist/actions/compile.mjs.map +1 -1
  7. package/dist/actions/index.mjs +198 -214
  8. package/dist/actions/index.mjs.map +1 -1
  9. package/dist/actions/package/compile/compile.mjs +97 -169
  10. package/dist/actions/package/compile/compile.mjs.map +1 -1
  11. package/dist/actions/package/compile/compileTypes.mjs +16 -31
  12. package/dist/actions/package/compile/compileTypes.mjs.map +1 -1
  13. package/dist/actions/package/compile/index.mjs +152 -177
  14. package/dist/actions/package/compile/index.mjs.map +1 -1
  15. package/dist/actions/package/compile/packageCompileTscTypes.mjs +14 -29
  16. package/dist/actions/package/compile/packageCompileTscTypes.mjs.map +1 -1
  17. package/dist/actions/package/compile/packageCompileTsup.mjs +94 -82
  18. package/dist/actions/package/compile/packageCompileTsup.mjs.map +1 -1
  19. package/dist/actions/package/index.mjs +168 -193
  20. package/dist/actions/package/index.mjs.map +1 -1
  21. package/dist/actions/package/recompile.mjs +97 -169
  22. package/dist/actions/package/recompile.mjs.map +1 -1
  23. package/dist/bin/package/build-only.mjs +100 -172
  24. package/dist/bin/package/build-only.mjs.map +1 -1
  25. package/dist/bin/package/build.mjs +100 -172
  26. package/dist/bin/package/build.mjs.map +1 -1
  27. package/dist/bin/package/clean-outputs.mjs +1 -6
  28. package/dist/bin/package/clean-outputs.mjs.map +1 -1
  29. package/dist/bin/package/clean-typescript.mjs +1 -6
  30. package/dist/bin/package/clean-typescript.mjs.map +1 -1
  31. package/dist/bin/package/compile-only.mjs +99 -171
  32. package/dist/bin/package/compile-only.mjs.map +1 -1
  33. package/dist/bin/package/compile-tsup.mjs +110 -96
  34. package/dist/bin/package/compile-tsup.mjs.map +1 -1
  35. package/dist/bin/package/compile-types.mjs +44 -55
  36. package/dist/bin/package/compile-types.mjs.map +1 -1
  37. package/dist/bin/package/compile.mjs +99 -171
  38. package/dist/bin/package/compile.mjs.map +1 -1
  39. package/dist/bin/package/recompile.mjs +99 -171
  40. package/dist/bin/package/recompile.mjs.map +1 -1
  41. package/dist/bin/xy.mjs +20 -12
  42. package/dist/bin/xy.mjs.map +1 -1
  43. package/dist/index.d.ts +6 -11
  44. package/dist/index.mjs +208 -225
  45. package/dist/index.mjs.map +1 -1
  46. package/dist/types/actions/build.d.ts +9 -0
  47. package/dist/types/actions/build.d.ts.map +1 -0
  48. package/dist/types/actions/clean-docs.d.ts +2 -0
  49. package/dist/types/actions/clean-docs.d.ts.map +1 -0
  50. package/dist/types/actions/clean-eslint.d.ts +2 -0
  51. package/dist/types/actions/clean-eslint.d.ts.map +1 -0
  52. package/dist/types/actions/clean-jest.d.ts +2 -0
  53. package/dist/types/actions/clean-jest.d.ts.map +1 -0
  54. package/dist/types/actions/clean.d.ts +12 -0
  55. package/dist/types/actions/clean.d.ts.map +1 -0
  56. package/dist/types/actions/compile-types.d.ts +16 -0
  57. package/dist/types/actions/compile-types.d.ts.map +1 -0
  58. package/dist/types/actions/compile.d.ts +19 -0
  59. package/dist/types/actions/compile.d.ts.map +1 -0
  60. package/dist/types/actions/copy-assets.d.ts +6 -0
  61. package/dist/types/actions/copy-assets.d.ts.map +1 -0
  62. package/dist/types/actions/cycle.d.ts +2 -0
  63. package/dist/types/actions/cycle.d.ts.map +1 -0
  64. package/dist/types/actions/dead.d.ts +2 -0
  65. package/dist/types/actions/dead.d.ts.map +1 -0
  66. package/dist/types/actions/deploy-major.d.ts +2 -0
  67. package/dist/types/actions/deploy-major.d.ts.map +1 -0
  68. package/dist/types/actions/deploy-minor.d.ts +2 -0
  69. package/dist/types/actions/deploy-minor.d.ts.map +1 -0
  70. package/dist/types/actions/deploy-next.d.ts +2 -0
  71. package/dist/types/actions/deploy-next.d.ts.map +1 -0
  72. package/dist/types/actions/deploy.d.ts +2 -0
  73. package/dist/types/actions/deploy.d.ts.map +1 -0
  74. package/dist/types/actions/deps.d.ts +13 -0
  75. package/dist/types/actions/deps.d.ts.map +1 -0
  76. package/dist/types/actions/dupdeps.d.ts +2 -0
  77. package/dist/types/actions/dupdeps.d.ts.map +1 -0
  78. package/dist/types/actions/fix.d.ts +3 -0
  79. package/dist/types/actions/fix.d.ts.map +1 -0
  80. package/dist/types/actions/gen-docs.d.ts +11 -0
  81. package/dist/types/actions/gen-docs.d.ts.map +1 -0
  82. package/dist/types/actions/gitignore-gen.d.ts +2 -0
  83. package/dist/types/actions/gitignore-gen.d.ts.map +1 -0
  84. package/dist/types/actions/gitlint-fix.d.ts +2 -0
  85. package/dist/types/actions/gitlint-fix.d.ts.map +1 -0
  86. package/dist/types/actions/gitlint.d.ts +2 -0
  87. package/dist/types/actions/gitlint.d.ts.map +1 -0
  88. package/dist/types/actions/index.d.ts +38 -0
  89. package/dist/types/actions/index.d.ts.map +1 -0
  90. package/dist/types/actions/license.d.ts +2 -0
  91. package/dist/types/actions/license.d.ts.map +1 -0
  92. package/dist/types/actions/lint.d.ts +14 -0
  93. package/dist/types/actions/lint.d.ts.map +1 -0
  94. package/dist/types/actions/npmignore-gen.d.ts +2 -0
  95. package/dist/types/actions/npmignore-gen.d.ts.map +1 -0
  96. package/dist/types/actions/package/clean-outputs.d.ts +2 -0
  97. package/dist/types/actions/package/clean-outputs.d.ts.map +1 -0
  98. package/dist/types/actions/package/clean-typescript.d.ts +2 -0
  99. package/dist/types/actions/package/clean-typescript.d.ts.map +1 -0
  100. package/dist/types/actions/package/clean.d.ts +2 -0
  101. package/dist/types/actions/package/clean.d.ts.map +1 -0
  102. package/dist/types/actions/package/compile/XyConfig.d.ts +58 -0
  103. package/dist/types/actions/package/compile/XyConfig.d.ts.map +1 -0
  104. package/dist/types/actions/package/compile/buildEntries.d.ts +3 -0
  105. package/dist/types/actions/package/compile/buildEntries.d.ts.map +1 -0
  106. package/dist/types/actions/package/compile/compile.d.ts +3 -0
  107. package/dist/types/actions/package/compile/compile.d.ts.map +1 -0
  108. package/dist/types/actions/package/compile/compileTypes.d.ts +3 -0
  109. package/dist/types/actions/package/compile/compileTypes.d.ts.map +1 -0
  110. package/dist/types/actions/package/compile/copyTypeFiles.d.ts +3 -0
  111. package/dist/types/actions/package/compile/copyTypeFiles.d.ts.map +1 -0
  112. package/dist/types/actions/package/compile/deepMerge.d.ts +4 -0
  113. package/dist/types/actions/package/compile/deepMerge.d.ts.map +1 -0
  114. package/dist/types/actions/package/compile/getCompilerOptions.d.ts +3 -0
  115. package/dist/types/actions/package/compile/getCompilerOptions.d.ts.map +1 -0
  116. package/dist/types/actions/package/compile/index.d.ts +7 -0
  117. package/dist/types/actions/package/compile/index.d.ts.map +1 -0
  118. package/dist/types/actions/package/compile/inputs.d.ts +2 -0
  119. package/dist/types/actions/package/compile/inputs.d.ts.map +1 -0
  120. package/dist/types/actions/package/compile/packageCompileTsc.d.ts +4 -0
  121. package/dist/types/actions/package/compile/packageCompileTsc.d.ts.map +1 -0
  122. package/dist/types/actions/package/compile/packageCompileTscTypes.d.ts +4 -0
  123. package/dist/types/actions/package/compile/packageCompileTscTypes.d.ts.map +1 -0
  124. package/dist/types/actions/package/compile/packageCompileTsup.d.ts +5 -0
  125. package/dist/types/actions/package/compile/packageCompileTsup.d.ts.map +1 -0
  126. package/dist/types/actions/package/copy-assets.d.ts +5 -0
  127. package/dist/types/actions/package/copy-assets.d.ts.map +1 -0
  128. package/dist/types/actions/package/deps.d.ts +2 -0
  129. package/dist/types/actions/package/deps.d.ts.map +1 -0
  130. package/dist/types/actions/package/gen-docs.d.ts +2 -0
  131. package/dist/types/actions/package/gen-docs.d.ts.map +1 -0
  132. package/dist/types/actions/package/index.d.ts +11 -0
  133. package/dist/types/actions/package/index.d.ts.map +1 -0
  134. package/dist/types/actions/package/lint.d.ts +2 -0
  135. package/dist/types/actions/package/lint.d.ts.map +1 -0
  136. package/dist/types/actions/package/publint.d.ts +5 -0
  137. package/dist/types/actions/package/publint.d.ts.map +1 -0
  138. package/dist/types/actions/package/recompile.d.ts +2 -0
  139. package/dist/types/actions/package/recompile.d.ts.map +1 -0
  140. package/dist/types/actions/publint.d.ts +12 -0
  141. package/dist/types/actions/publint.d.ts.map +1 -0
  142. package/dist/types/actions/rebuild.d.ts +6 -0
  143. package/dist/types/actions/rebuild.d.ts.map +1 -0
  144. package/dist/types/actions/recompile.d.ts +16 -0
  145. package/dist/types/actions/recompile.d.ts.map +1 -0
  146. package/dist/types/actions/reinstall.d.ts +2 -0
  147. package/dist/types/actions/reinstall.d.ts.map +1 -0
  148. package/dist/types/actions/relint.d.ts +13 -0
  149. package/dist/types/actions/relint.d.ts.map +1 -0
  150. package/dist/types/actions/retest.d.ts +2 -0
  151. package/dist/types/actions/retest.d.ts.map +1 -0
  152. package/dist/types/actions/sonar.d.ts +2 -0
  153. package/dist/types/actions/sonar.d.ts.map +1 -0
  154. package/dist/types/actions/statics.d.ts +2 -0
  155. package/dist/types/actions/statics.d.ts.map +1 -0
  156. package/dist/types/actions/test.d.ts +2 -0
  157. package/dist/types/actions/test.d.ts.map +1 -0
  158. package/dist/types/actions/up.d.ts +2 -0
  159. package/dist/types/actions/up.d.ts.map +1 -0
  160. package/dist/types/actions/updo.d.ts +2 -0
  161. package/dist/types/actions/updo.d.ts.map +1 -0
  162. package/dist/types/actions/upplug.d.ts +2 -0
  163. package/dist/types/actions/upplug.d.ts.map +1 -0
  164. package/dist/types/actions/upyarn.d.ts +2 -0
  165. package/dist/types/actions/upyarn.d.ts.map +1 -0
  166. package/dist/types/actions/yarn3only.d.ts +2 -0
  167. package/dist/types/actions/yarn3only.d.ts.map +1 -0
  168. package/dist/types/bin/package/build-only.d.ts +3 -0
  169. package/dist/types/bin/package/build-only.d.ts.map +1 -0
  170. package/dist/types/bin/package/build.d.ts +3 -0
  171. package/dist/types/bin/package/build.d.ts.map +1 -0
  172. package/dist/types/bin/package/clean-outputs.d.ts +3 -0
  173. package/dist/types/bin/package/clean-outputs.d.ts.map +1 -0
  174. package/dist/types/bin/package/clean-typescript.d.ts +3 -0
  175. package/dist/types/bin/package/clean-typescript.d.ts.map +1 -0
  176. package/dist/types/bin/package/clean.d.ts +3 -0
  177. package/dist/types/bin/package/clean.d.ts.map +1 -0
  178. package/dist/types/bin/package/compile-only.d.ts +3 -0
  179. package/dist/types/bin/package/compile-only.d.ts.map +1 -0
  180. package/dist/types/bin/package/compile-tsup.d.ts +3 -0
  181. package/dist/types/bin/package/compile-tsup.d.ts.map +1 -0
  182. package/dist/types/bin/package/compile-types.d.ts +3 -0
  183. package/dist/types/bin/package/compile-types.d.ts.map +1 -0
  184. package/dist/types/bin/package/compile.d.ts +3 -0
  185. package/dist/types/bin/package/compile.d.ts.map +1 -0
  186. package/dist/types/bin/package/copy-assets-cjs.d.ts +3 -0
  187. package/dist/types/bin/package/copy-assets-cjs.d.ts.map +1 -0
  188. package/dist/types/bin/package/copy-assets-esm.d.ts +3 -0
  189. package/dist/types/bin/package/copy-assets-esm.d.ts.map +1 -0
  190. package/dist/types/bin/package/deps.d.ts +3 -0
  191. package/dist/types/bin/package/deps.d.ts.map +1 -0
  192. package/dist/types/bin/package/fix.d.ts +3 -0
  193. package/dist/types/bin/package/fix.d.ts.map +1 -0
  194. package/dist/types/bin/package/gen-docs.d.ts +3 -0
  195. package/dist/types/bin/package/gen-docs.d.ts.map +1 -0
  196. package/dist/types/bin/package/lint.d.ts +3 -0
  197. package/dist/types/bin/package/lint.d.ts.map +1 -0
  198. package/dist/types/bin/package/publint.d.ts +3 -0
  199. package/dist/types/bin/package/publint.d.ts.map +1 -0
  200. package/dist/types/bin/package/recompile.d.ts +3 -0
  201. package/dist/types/bin/package/recompile.d.ts.map +1 -0
  202. package/dist/types/bin/package/relint.d.ts +3 -0
  203. package/dist/types/bin/package/relint.d.ts.map +1 -0
  204. package/dist/types/bin/xy.d.ts +3 -0
  205. package/dist/types/bin/xy.d.ts.map +1 -0
  206. package/dist/types/index.d.ts +5 -0
  207. package/dist/types/index.d.ts.map +1 -0
  208. package/dist/types/lib/checkResult.d.ts +2 -0
  209. package/dist/types/lib/checkResult.d.ts.map +1 -0
  210. package/dist/types/lib/createBuildConfig.d.ts +2 -0
  211. package/dist/types/lib/createBuildConfig.d.ts.map +1 -0
  212. package/dist/types/lib/defaultBuildConfig.d.ts +9 -0
  213. package/dist/types/lib/defaultBuildConfig.d.ts.map +1 -0
  214. package/dist/types/lib/deleteGlob.d.ts +2 -0
  215. package/dist/types/lib/deleteGlob.d.ts.map +1 -0
  216. package/dist/types/lib/dependencies/DuplicateDetector.d.ts +9 -0
  217. package/dist/types/lib/dependencies/DuplicateDetector.d.ts.map +1 -0
  218. package/dist/types/lib/dependencies/detectDuplicateDependencies.d.ts +2 -0
  219. package/dist/types/lib/dependencies/detectDuplicateDependencies.d.ts.map +1 -0
  220. package/dist/types/lib/dependencies/index.d.ts +3 -0
  221. package/dist/types/lib/dependencies/index.d.ts.map +1 -0
  222. package/dist/types/lib/file/ReadFileSyncOptions.d.ts +6 -0
  223. package/dist/types/lib/file/ReadFileSyncOptions.d.ts.map +1 -0
  224. package/dist/types/lib/file/constants.d.ts +3 -0
  225. package/dist/types/lib/file/constants.d.ts.map +1 -0
  226. package/dist/types/lib/file/fileLines.d.ts +6 -0
  227. package/dist/types/lib/file/fileLines.d.ts.map +1 -0
  228. package/dist/types/lib/file/index.d.ts +5 -0
  229. package/dist/types/lib/file/index.d.ts.map +1 -0
  230. package/dist/types/lib/file/tryReadFileSync.d.ts +4 -0
  231. package/dist/types/lib/file/tryReadFileSync.d.ts.map +1 -0
  232. package/dist/types/lib/generateIgnoreFiles.d.ts +2 -0
  233. package/dist/types/lib/generateIgnoreFiles.d.ts.map +1 -0
  234. package/dist/types/lib/index.d.ts +21 -0
  235. package/dist/types/lib/index.d.ts.map +1 -0
  236. package/dist/types/lib/jsonFormatters.d.ts +2 -0
  237. package/dist/types/lib/jsonFormatters.d.ts.map +1 -0
  238. package/dist/types/lib/loadConfig.d.ts +2 -0
  239. package/dist/types/lib/loadConfig.d.ts.map +1 -0
  240. package/dist/types/lib/parsedPackageJSON.d.ts +2 -0
  241. package/dist/types/lib/parsedPackageJSON.d.ts.map +1 -0
  242. package/dist/types/lib/processEx.d.ts +2 -0
  243. package/dist/types/lib/processEx.d.ts.map +1 -0
  244. package/dist/types/lib/runSteps.d.ts +4 -0
  245. package/dist/types/lib/runSteps.d.ts.map +1 -0
  246. package/dist/types/lib/runStepsAsync.d.ts +4 -0
  247. package/dist/types/lib/runStepsAsync.d.ts.map +1 -0
  248. package/dist/types/lib/runXy.d.ts +2 -0
  249. package/dist/types/lib/runXy.d.ts.map +1 -0
  250. package/dist/types/lib/runXyWithWarning.d.ts +2 -0
  251. package/dist/types/lib/runXyWithWarning.d.ts.map +1 -0
  252. package/dist/types/lib/safeExit.d.ts +5 -0
  253. package/dist/types/lib/safeExit.d.ts.map +1 -0
  254. package/dist/types/lib/string/empty.d.ts +3 -0
  255. package/dist/types/lib/string/empty.d.ts.map +1 -0
  256. package/dist/types/lib/string/index.d.ts +3 -0
  257. package/dist/types/lib/string/index.d.ts.map +1 -0
  258. package/dist/types/lib/string/union.d.ts +2 -0
  259. package/dist/types/lib/string/union.d.ts.map +1 -0
  260. package/dist/types/lib/withErrnoException.d.ts +2 -0
  261. package/dist/types/lib/withErrnoException.d.ts.map +1 -0
  262. package/dist/types/lib/withError.d.ts +2 -0
  263. package/dist/types/lib/withError.d.ts.map +1 -0
  264. package/dist/types/lib/yarn/index.d.ts +4 -0
  265. package/dist/types/lib/yarn/index.d.ts.map +1 -0
  266. package/dist/types/lib/yarn/isYarnVersionOrGreater.d.ts +2 -0
  267. package/dist/types/lib/yarn/isYarnVersionOrGreater.d.ts.map +1 -0
  268. package/dist/types/lib/yarn/workspace/Workspace.d.ts +5 -0
  269. package/dist/types/lib/yarn/workspace/Workspace.d.ts.map +1 -0
  270. package/dist/types/lib/yarn/workspace/index.d.ts +4 -0
  271. package/dist/types/lib/yarn/workspace/index.d.ts.map +1 -0
  272. package/dist/types/lib/yarn/workspace/yarnWorkspace.d.ts +3 -0
  273. package/dist/types/lib/yarn/workspace/yarnWorkspace.d.ts.map +1 -0
  274. package/dist/types/lib/yarn/workspace/yarnWorkspaces.d.ts +3 -0
  275. package/dist/types/lib/yarn/workspace/yarnWorkspaces.d.ts.map +1 -0
  276. package/dist/types/lib/yarn/yarnInitCwd.d.ts +2 -0
  277. package/dist/types/lib/yarn/yarnInitCwd.d.ts.map +1 -0
  278. package/dist/types/loadPackageConfig.d.ts +6 -0
  279. package/dist/types/loadPackageConfig.d.ts.map +1 -0
  280. package/dist/types/xy/index.d.ts +8 -0
  281. package/dist/types/xy/index.d.ts.map +1 -0
  282. package/dist/types/xy/param.d.ts +5 -0
  283. package/dist/types/xy/param.d.ts.map +1 -0
  284. package/dist/types/xy/xy.d.ts +10 -0
  285. package/dist/types/xy/xy.d.ts.map +1 -0
  286. package/dist/types/xy/xyBuildCommands.d.ts +3 -0
  287. package/dist/types/xy/xyBuildCommands.d.ts.map +1 -0
  288. package/dist/types/xy/xyCommonCommands.d.ts +3 -0
  289. package/dist/types/xy/xyCommonCommands.d.ts.map +1 -0
  290. package/dist/types/xy/xyDeployCommands.d.ts +3 -0
  291. package/dist/types/xy/xyDeployCommands.d.ts.map +1 -0
  292. package/dist/types/xy/xyInstallCommands.d.ts +3 -0
  293. package/dist/types/xy/xyInstallCommands.d.ts.map +1 -0
  294. package/dist/types/xy/xyLintCommands.d.ts +3 -0
  295. package/dist/types/xy/xyLintCommands.d.ts.map +1 -0
  296. package/dist/types/xy/xyParseOptions.d.ts +3 -0
  297. package/dist/types/xy/xyParseOptions.d.ts.map +1 -0
  298. package/dist/xy/index.mjs +20 -12
  299. package/dist/xy/index.mjs.map +1 -1
  300. package/dist/xy/xy.mjs +20 -12
  301. package/dist/xy/xy.mjs.map +1 -1
  302. package/dist/xy/xyBuildCommands.mjs +20 -12
  303. package/dist/xy/xyBuildCommands.mjs.map +1 -1
  304. package/package.json +4 -4
  305. package/src/actions/build.ts +1 -0
  306. package/src/actions/compile-types.ts +1 -1
  307. package/src/actions/compile.ts +7 -11
  308. package/src/actions/package/compile/XyConfig.ts +0 -4
  309. package/src/actions/package/compile/compile.ts +8 -17
  310. package/src/actions/package/compile/packageCompileTscTypes.ts +21 -29
  311. package/src/actions/package/compile/packageCompileTsup.ts +12 -19
  312. package/src/bin/package/build-only.ts +1 -1
  313. package/src/bin/package/build.ts +1 -1
  314. package/src/bin/package/clean-outputs.ts +1 -8
  315. package/src/bin/package/clean-typescript.ts +1 -8
  316. package/src/xy/xyBuildCommands.ts +0 -1
@@ -3,29 +3,27 @@ var __defProp = Object.defineProperty;
3
3
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
4
4
 
5
5
  // src/bin/package/compile-tsup.ts
6
- import chalk2 from "chalk";
6
+ import chalk3 from "chalk";
7
7
 
8
- // src/actions/package/compile/getCompilerOptions.ts
9
- import { createRequire } from "node:module";
8
+ // src/lib/loadConfig.ts
9
+ import chalk from "chalk";
10
+ import { cosmiconfig } from "cosmiconfig";
10
11
  import deepmerge from "deepmerge";
11
- import { findConfigFile, readConfigFile, sys } from "typescript";
12
- var getNested = /* @__PURE__ */ __name((config) => {
13
- if (config.extends) {
14
- const require2 = createRequire(import.meta.url);
15
- const opts = require2(config.extends);
16
- return deepmerge(getNested(opts), config.compilerOptions ?? {});
12
+ var config;
13
+ var loadConfig = /* @__PURE__ */ __name(async (params) => {
14
+ if (config) {
15
+ return deepmerge(config, params ?? {});
17
16
  }
18
- return config.compilerOptions;
19
- }, "getNested");
20
- var getCompilerOptionsJSONFollowExtends = /* @__PURE__ */ __name((filename) => {
21
- const config = readConfigFile(filename, sys.readFile).config;
22
- return getNested(config);
23
- }, "getCompilerOptionsJSONFollowExtends");
24
- var getCompilerOptions = /* @__PURE__ */ __name((options = {}, tsconfig = "tsconfig.json") => {
25
- const configFileName = findConfigFile("./", sys.fileExists, tsconfig);
26
- const configFileCompilerOptions = (configFileName ? getCompilerOptionsJSONFollowExtends(configFileName) : void 0) ?? {};
27
- return deepmerge(configFileCompilerOptions, options);
28
- }, "getCompilerOptions");
17
+ const cosmicConfigResult = await cosmiconfig("xy", {
18
+ cache: true
19
+ }).search();
20
+ config = cosmicConfigResult?.config;
21
+ const configFilePath = cosmicConfigResult?.filepath;
22
+ if (configFilePath) {
23
+ console.log(chalk.gray(`Loading config from ${configFilePath}`));
24
+ }
25
+ return deepmerge(config, params ?? {});
26
+ }, "loadConfig");
29
27
 
30
28
  // src/actions/package/compile/packageCompileTsup.ts
31
29
  import { build, defineConfig } from "tsup";
@@ -69,45 +67,45 @@ var buildEntries = /* @__PURE__ */ __name((folder, entryMode = "single", verbose
69
67
  return entries;
70
68
  }, "buildEntries");
71
69
 
72
- // src/actions/package/compile/deepMerge.ts
73
- function deepMerge(target, source) {
74
- if (!source || typeof source !== "object") return target;
75
- for (const key of Object.keys(source)) {
76
- if (typeof source[key] === "object" && source[key] !== null && !Array.isArray(source[key])) {
77
- if (!target[key] || typeof target[key] !== "object") {
78
- target[key] = {};
79
- }
80
- deepMerge(target[key], source[key]);
81
- } else {
82
- target[key] = source[key];
83
- }
84
- }
85
- return target;
86
- }
87
- __name(deepMerge, "deepMerge");
88
- function deepMergeObjects(objects) {
89
- const result = {};
90
- for (const obj of objects) {
91
- deepMerge(result, obj);
92
- }
93
- return result;
94
- }
95
- __name(deepMergeObjects, "deepMergeObjects");
70
+ // src/actions/package/compile/compileTypes.ts
71
+ import chalk2 from "chalk";
96
72
 
97
73
  // src/actions/package/compile/packageCompileTscTypes.ts
98
74
  import { cwd } from "node:process";
99
- import chalk from "chalk";
100
75
  import { createProgramFromConfig } from "tsc-prog";
101
- import { DiagnosticCategory } from "typescript";
102
- var packageCompileTscTypes = /* @__PURE__ */ __name((folder = "src", config = {}, compilerOptionsParam) => {
76
+ import { DiagnosticCategory, formatDiagnosticsWithColorAndContext, getPreEmitDiagnostics, sys as sys2 } from "typescript";
77
+
78
+ // src/actions/package/compile/getCompilerOptions.ts
79
+ import { createRequire } from "node:module";
80
+ import deepmerge2 from "deepmerge";
81
+ import { findConfigFile, readConfigFile, sys } from "typescript";
82
+ var getNested = /* @__PURE__ */ __name((config2) => {
83
+ if (config2.extends) {
84
+ const require2 = createRequire(import.meta.url);
85
+ const opts = require2(config2.extends);
86
+ return deepmerge2(getNested(opts), config2.compilerOptions ?? {});
87
+ }
88
+ return config2.compilerOptions;
89
+ }, "getNested");
90
+ var getCompilerOptionsJSONFollowExtends = /* @__PURE__ */ __name((filename) => {
91
+ const config2 = readConfigFile(filename, sys.readFile).config;
92
+ return getNested(config2);
93
+ }, "getCompilerOptionsJSONFollowExtends");
94
+ var getCompilerOptions = /* @__PURE__ */ __name((options = {}, tsconfig = "tsconfig.json") => {
95
+ const configFileName = findConfigFile("./", sys.fileExists, tsconfig);
96
+ const configFileCompilerOptions = (configFileName ? getCompilerOptionsJSONFollowExtends(configFileName) : void 0) ?? {};
97
+ return deepmerge2(configFileCompilerOptions, options);
98
+ }, "getCompilerOptions");
99
+
100
+ // src/actions/package/compile/packageCompileTscTypes.ts
101
+ var packageCompileTscTypes = /* @__PURE__ */ __name((folder = "src", config2 = {}, compilerOptionsParam) => {
103
102
  const pkg = process.env.INIT_CWD ?? cwd();
104
- const verbose = config?.verbose ?? false;
103
+ const verbose = config2?.verbose ?? false;
105
104
  if (verbose) {
106
- console.log(`Compiling types with TSC [${pkg}]`);
105
+ console.log(`Compiling types [${pkg}]`);
107
106
  }
108
107
  const compilerOptions = {
109
108
  ...getCompilerOptions({
110
- declaration: true,
111
109
  emitDeclarationOnly: true,
112
110
  outDir: "dist/types",
113
111
  removeComments: false,
@@ -120,7 +118,7 @@ var packageCompileTscTypes = /* @__PURE__ */ __name((folder = "src", config = {}
120
118
  noEmit: false
121
119
  };
122
120
  const files = buildEntries(folder, "all", verbose);
123
- const result = createProgramFromConfig({
121
+ const program = createProgramFromConfig({
124
122
  basePath: pkg ?? cwd(),
125
123
  compilerOptions,
126
124
  exclude: [
@@ -131,35 +129,55 @@ var packageCompileTscTypes = /* @__PURE__ */ __name((folder = "src", config = {}
131
129
  "src/**/spec/**/*"
132
130
  ],
133
131
  files
134
- }).emit();
135
- const diagResults = result.diagnostics.length;
136
- for (const diag of result.diagnostics) {
137
- switch (diag.category) {
138
- case DiagnosticCategory.Error: {
139
- console.error(chalk.red(diag.messageText));
140
- console.error(chalk.grey(pkg));
141
- console.error(chalk.blue(diag.file?.fileName));
142
- break;
143
- }
144
- case DiagnosticCategory.Warning: {
145
- console.error(chalk.yellow(diag.messageText));
146
- console.error(chalk.grey(pkg));
147
- console.error(chalk.blue(diag.file?.fileName));
148
- break;
149
- }
150
- case DiagnosticCategory.Suggestion: {
151
- console.error(chalk.white(diag.messageText));
152
- console.error(chalk.grey(pkg));
153
- console.error(chalk.blue(diag.file?.fileName));
154
- break;
132
+ });
133
+ const diagnostics = getPreEmitDiagnostics(program);
134
+ if (diagnostics.length > 0) {
135
+ const formattedDiagnostics = formatDiagnosticsWithColorAndContext(diagnostics, {
136
+ getCanonicalFileName: /* @__PURE__ */ __name((fileName) => fileName, "getCanonicalFileName"),
137
+ getCurrentDirectory: /* @__PURE__ */ __name(() => folder, "getCurrentDirectory"),
138
+ getNewLine: /* @__PURE__ */ __name(() => sys2.newLine, "getNewLine")
139
+ });
140
+ console.error(formattedDiagnostics);
141
+ }
142
+ program.emit();
143
+ return diagnostics.reduce((acc, diag) => acc + (diag.category === DiagnosticCategory.Error ? 1 : 0), 0);
144
+ }, "packageCompileTscTypes");
145
+
146
+ // src/actions/package/compile/compileTypes.ts
147
+ var packageCompileTypes = /* @__PURE__ */ __name(async (inConfig = {}) => {
148
+ const pkg = process.env.INIT_CWD;
149
+ console.log(chalk2.green(`Compiling Types ${pkg}`));
150
+ const config2 = await loadConfig(inConfig);
151
+ return packageCompileTscTypes(void 0, config2);
152
+ }, "packageCompileTypes");
153
+
154
+ // src/actions/package/compile/deepMerge.ts
155
+ function deepMerge(target, source) {
156
+ if (!source || typeof source !== "object") return target;
157
+ for (const key of Object.keys(source)) {
158
+ if (typeof source[key] === "object" && source[key] !== null && !Array.isArray(source[key])) {
159
+ if (!target[key] || typeof target[key] !== "object") {
160
+ target[key] = {};
155
161
  }
162
+ deepMerge(target[key], source[key]);
163
+ } else {
164
+ target[key] = source[key];
156
165
  }
157
166
  }
158
- return diagResults;
159
- }, "packageCompileTscTypes");
167
+ return target;
168
+ }
169
+ __name(deepMerge, "deepMerge");
170
+ function deepMergeObjects(objects) {
171
+ const result = {};
172
+ for (const obj of objects) {
173
+ deepMerge(result, obj);
174
+ }
175
+ return result;
176
+ }
177
+ __name(deepMergeObjects, "deepMergeObjects");
160
178
 
161
179
  // src/actions/package/compile/packageCompileTsup.ts
162
- var compileFolder = /* @__PURE__ */ __name(async (folder, entryMode = "single", options, types = "tsc", verbose) => {
180
+ var compileFolder = /* @__PURE__ */ __name(async (folder, entryMode = "single", options, verbose) => {
163
181
  const outDir = options?.outDir ?? "dist";
164
182
  if (verbose) {
165
183
  console.log(`compileFolder [${folder}]`);
@@ -169,7 +187,7 @@ var compileFolder = /* @__PURE__ */ __name(async (folder, entryMode = "single",
169
187
  bundle: true,
170
188
  cjsInterop: true,
171
189
  clean: true,
172
- dts: types === "tsup",
190
+ dts: false,
173
191
  entry,
174
192
  format: [
175
193
  "esm"
@@ -192,11 +210,11 @@ var compileFolder = /* @__PURE__ */ __name(async (folder, entryMode = "single",
192
210
  ];
193
211
  }))).flat();
194
212
  if (verbose) {
195
- console.log(`TSUP:build:start [${folder}] ${types}`);
213
+ console.log(`TSUP:build:start [${folder}]`);
196
214
  }
197
215
  await Promise.all(optionsList.map((options2) => build(options2)));
198
216
  if (verbose) {
199
- console.log(`TSUP:build:stop [${folder}] ${types}`);
217
+ console.log(`TSUP:build:stop [${folder}]`);
200
218
  }
201
219
  return 0;
202
220
  }, "compileFolder");
@@ -230,10 +248,10 @@ var tsupOptions = /* @__PURE__ */ __name((options = []) => {
230
248
  ...options
231
249
  ]);
232
250
  }, "tsupOptions");
233
- var packageCompileTsup = /* @__PURE__ */ __name(async (config, types = "tsc") => {
234
- console.warn("packageCompileTsup-types", types);
235
- const compile = config?.compile;
236
- const verbose = config?.verbose ?? false;
251
+ var packageCompileTsup = /* @__PURE__ */ __name(async (config2) => {
252
+ console.log("packageCompileTsup-types");
253
+ const compile = config2?.compile;
254
+ const verbose = config2?.verbose ?? false;
237
255
  if (verbose) {
238
256
  console.log(`Compiling with TSUP [Depth: ${compile?.depth}]`);
239
257
  }
@@ -246,16 +264,12 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config, types = "tsc") =>
246
264
  const compileForNeutral = compile?.neutral ?? {
247
265
  src: {}
248
266
  };
249
- if (types === "tsc") {
250
- if (verbose) {
251
- console.log(`Calling packageCompileTscTypes [${types}`);
252
- }
253
- const errors = packageCompileTscTypes("src", {
254
- verbose
255
- });
256
- if (errors) {
257
- return errors;
258
- }
267
+ if (verbose) {
268
+ console.log("Calling packageCompileTscTypes");
269
+ }
270
+ const errors = await packageCompileTypes(config2);
271
+ if (errors > 0) {
272
+ return errors;
259
273
  }
260
274
  return (await Promise.all(Object.entries(compileForNode).map(async ([folder, options]) => {
261
275
  const inEsBuildOptions = typeof compile?.node?.esbuildOptions === "object" ? compile?.node?.esbuildOptions : {};
@@ -267,7 +281,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config, types = "tsc") =>
267
281
  platform: "node",
268
282
  outDir: "dist/node"
269
283
  }
270
- ]), types, verbose) : 0;
284
+ ]), verbose) : 0;
271
285
  }))).reduce((prev, value) => prev + value, 0) || (await Promise.all(Object.entries(compileForBrowser).map(async ([folder, options]) => {
272
286
  const inEsBuildOptions = typeof compile?.browser?.esbuildOptions === "object" ? compile?.browser?.esbuildOptions : {};
273
287
  return folder ? await compileFolder(folder, compile?.entryMode, tsupOptions([
@@ -278,7 +292,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config, types = "tsc") =>
278
292
  platform: "browser",
279
293
  outDir: "dist/browser"
280
294
  }
281
- ]), types, verbose) : 0;
295
+ ]), verbose) : 0;
282
296
  }))).reduce((prev, value) => prev + value, 0) || (await Promise.all(Object.entries(compileForNeutral).map(async ([folder, options]) => {
283
297
  const inEsBuildOptions = typeof compile?.neutral?.esbuildOptions === "object" ? compile?.neutral?.esbuildOptions : {};
284
298
  return folder ? await compileFolder(folder, compile?.entryMode, tsupOptions([
@@ -289,7 +303,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config, types = "tsc") =>
289
303
  platform: "neutral",
290
304
  outDir: "dist/neutral"
291
305
  }
292
- ]), types, verbose) : 0;
306
+ ]), verbose) : 0;
293
307
  }))).reduce((prev, value) => prev + value, 0) || 0;
294
308
  }, "packageCompileTsup");
295
309
 
@@ -297,7 +311,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config, types = "tsc") =>
297
311
  packageCompileTsup({
298
312
  verbose: true
299
313
  }).then((value) => process.exitCode = value).catch((reason) => {
300
- console.error(chalk2.red(reason));
314
+ console.error(chalk3.red(reason));
301
315
  process.exitCode = 1;
302
316
  });
303
317
  //# sourceMappingURL=compile-tsup.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/bin/package/compile-tsup.ts","../../../src/actions/package/compile/getCompilerOptions.ts","../../../src/actions/package/compile/packageCompileTsup.ts","../../../src/actions/package/compile/inputs.ts","../../../src/actions/package/compile/buildEntries.ts","../../../src/actions/package/compile/deepMerge.ts","../../../src/actions/package/compile/packageCompileTscTypes.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport chalk from 'chalk'\n\nimport { packageCompileTsup } from '../../actions/index.ts'\n\npackageCompileTsup({ verbose: true })\n .then(value => (process.exitCode = value))\n .catch((reason) => {\n console.error(chalk.red(reason))\n process.exitCode = 1\n })\n","import { createRequire } from 'node:module'\n\nimport deepmerge from 'deepmerge'\nimport type { TsConfig } from 'tsc-prog'\nimport type { CompilerOptions } from 'typescript'\nimport {\n findConfigFile, readConfigFile, sys,\n} 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 deepmerge(getNested(opts), config.compilerOptions ?? {}) as CompilerOptions\n }\n\n return config.compilerOptions as CompilerOptions\n}\n\nconst 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 deepmerge(configFileCompilerOptions, options)\n}\n","/* eslint-disable complexity */\nimport type { Loader } from 'esbuild'\nimport type { Options } from 'tsup'\nimport { build, defineConfig } from 'tsup'\n\nimport { buildEntries } from './buildEntries.ts'\nimport { deepMergeObjects } from './deepMerge.ts'\nimport { packageCompileTscTypes } from './packageCompileTscTypes.ts'\nimport type { EntryMode, XyTsupConfig } from './XyConfig.ts'\n\nconst compileFolder = async (\n folder: string,\n entryMode: EntryMode = 'single',\n options?: Options,\n types: 'tsc' | 'tsup' = 'tsc',\n verbose?: boolean,\n): Promise<number> => {\n const outDir = options?.outDir ?? 'dist'\n\n if (verbose) {\n console.log(`compileFolder [${folder}]`)\n }\n\n const entry = buildEntries(folder, entryMode)\n const optionsResult = defineConfig({\n bundle: true,\n cjsInterop: true,\n clean: true,\n dts: types === 'tsup',\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 if (verbose) {\n console.log(`TSUP:build:start [${folder}] ${types}`)\n }\n\n await Promise.all(optionsList.map(options => build(options)))\n\n if (verbose) {\n console.log(`TSUP:build:stop [${folder}] ${types}`)\n }\n\n return 0\n}\n\nexport const tsupOptions = (options: Options[] = []): Options => {\n const standardLoaders: Record<string, Loader> = {\n '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy',\n }\n\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 deepMergeObjects([standardOptions, ...options])\n}\n\nexport const packageCompileTsup = async (config?: XyTsupConfig, types: 'tsc' | 'tsup' = 'tsc') => {\n console.warn('packageCompileTsup-types', types)\n const compile = config?.compile\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 if (types === 'tsc') {\n if (verbose) {\n console.log(`Calling packageCompileTscTypes [${types}`)\n }\n const errors = packageCompileTscTypes('src', { verbose })\n if (errors) {\n return errors\n }\n }\n\n return (\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 tsupOptions([inEsBuildOptions,\n compile?.tsup?.options ?? {},\n (typeof options === 'object' ? options : {}),\n { platform: 'node', outDir: 'dist/node' }]),\n types,\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 tsupOptions([inEsBuildOptions,\n compile?.tsup?.options ?? {},\n (typeof options === 'object' ? options : {}),\n { platform: 'browser', outDir: 'dist/browser' }]),\n types,\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 tsupOptions([inEsBuildOptions,\n compile?.tsup?.options ?? {},\n (typeof options === 'object' ? options : {}),\n { platform: 'neutral', outDir: 'dist/neutral' }]),\n types,\n verbose,\n )\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0)\n || 0\n )\n}\n","import { glob } from 'glob'\n\nexport const getAllInputs = (folder: string) => {\n /* tsup wants posix paths */\n return glob.sync(`${folder}/**/*.*`, { ignore: ['**/*.spec.*', '**/*.stories.*', '**/spec/**/*'], posix: true })\n}\n","import { getAllInputs } from './inputs.ts'\nimport type { EntryMode } from './XyConfig.ts'\n\nexport const buildEntries = (folder: string, entryMode: EntryMode = 'single', verbose = false) => {\n let entries: string[] = []\n switch (entryMode) {\n case 'platform': {\n entries = [`${folder}/index-node.ts`, `${folder}/index-browser.ts`]\n break\n }\n case 'all': {\n entries = getAllInputs(folder).filter(entry => !entry.includes('.spec.') && !entry.includes('.story.'))\n break\n }\n default: {\n entries = [`${folder}/index.ts`]\n break\n }\n }\n if (verbose) console.log(`buildEntries [${entryMode}] ${entries.length}`)\n return entries\n}\n","// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype AnyObject = Record<any, any>\n\nfunction deepMerge<T extends AnyObject>(target: AnyObject, source: AnyObject): T {\n if (!source || typeof source !== 'object') return target\n\n for (const key of Object.keys(source)) {\n if (\n typeof source[key] === 'object'\n && source[key] !== null\n && !Array.isArray(source[key])\n ) {\n // Recursively merge nested objects\n if (!target[key] || typeof target[key] !== 'object') {\n target[key] = {} as T[typeof key]\n }\n deepMerge(target[key], source[key])\n } else {\n // Overwrite with non-object values\n target[key] = source[key]\n }\n }\n\n return target\n}\n\nexport function deepMergeObjects<T extends AnyObject>(objects: T[]): T {\n const result = {} as T\n for (const obj of objects) {\n deepMerge(result, obj)\n }\n return result\n}\n","import { cwd } from 'node:process'\n\nimport chalk from 'chalk'\nimport type { TsConfigCompilerOptions } from 'tsc-prog'\nimport { createProgramFromConfig } from 'tsc-prog'\nimport type { CompilerOptions } from 'typescript'\nimport { DiagnosticCategory } from 'typescript'\n\nimport { buildEntries } from './buildEntries.ts'\nimport { getCompilerOptions } from './getCompilerOptions.ts'\nimport type { XyConfig } from './XyConfig.ts'\n\nexport const packageCompileTscTypes = (\n folder: string = 'src',\n config: XyConfig = {},\n compilerOptionsParam?: CompilerOptions,\n): number => {\n const pkg = process.env.INIT_CWD ?? cwd()\n const verbose = config?.verbose ?? false\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/types',\n removeComments: false,\n skipDefaultLibCheck: true,\n skipLibCheck: true,\n sourceMap: false,\n })),\n ...compilerOptionsParam,\n emitDeclarationOnly: true,\n noEmit: false,\n } as TsConfigCompilerOptions\n\n // calling all here since the types do not get rolled up\n const files = buildEntries(folder, 'all', verbose)\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"],"mappings":"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","names":["chalk","createRequire","deepmerge","findConfigFile","readConfigFile","sys","getNested","config","extends","require","createRequire","url","opts","deepmerge","compilerOptions","getCompilerOptionsJSONFollowExtends","filename","readConfigFile","sys","readFile","getCompilerOptions","options","tsconfig","configFileName","findConfigFile","fileExists","configFileCompilerOptions","undefined","build","defineConfig","glob","getAllInputs","folder","glob","sync","ignore","posix","buildEntries","folder","entryMode","verbose","entries","getAllInputs","filter","entry","includes","console","log","length","deepMerge","target","source","key","Object","keys","Array","isArray","deepMergeObjects","objects","result","obj","cwd","chalk","createProgramFromConfig","DiagnosticCategory","packageCompileTscTypes","folder","config","compilerOptionsParam","pkg","process","env","INIT_CWD","cwd","verbose","console","log","compilerOptions","getCompilerOptions","declaration","emitDeclarationOnly","outDir","removeComments","skipDefaultLibCheck","skipLibCheck","sourceMap","noEmit","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","compileFolder","folder","entryMode","options","types","verbose","outDir","console","log","entry","buildEntries","optionsResult","defineConfig","bundle","cjsInterop","clean","dts","format","silent","sourcemap","splitting","tsconfig","optionsList","Promise","all","Array","isArray","flatMap","result","flat","map","build","tsupOptions","standardLoaders","standardOptions","loader","outExtension","js","skipNodeModulesBundle","target","deepMergeObjects","packageCompileTsup","config","warn","compile","depth","compileForNode","node","src","compileForBrowser","browser","compileForNeutral","neutral","errors","packageCompileTscTypes","Object","entries","inEsBuildOptions","esbuildOptions","tsup","platform","reduce","prev","value","packageCompileTsup","verbose","then","value","process","exitCode","catch","reason","console","error","chalk","red"]}
1
+ {"version":3,"sources":["../../../src/bin/package/compile-tsup.ts","../../../src/lib/loadConfig.ts","../../../src/actions/package/compile/packageCompileTsup.ts","../../../src/actions/package/compile/inputs.ts","../../../src/actions/package/compile/buildEntries.ts","../../../src/actions/package/compile/compileTypes.ts","../../../src/actions/package/compile/packageCompileTscTypes.ts","../../../src/actions/package/compile/getCompilerOptions.ts","../../../src/actions/package/compile/deepMerge.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport chalk from 'chalk'\n\nimport { packageCompileTsup } from '../../actions/index.ts'\n\npackageCompileTsup({ verbose: true })\n .then(value => (process.exitCode = value))\n .catch((reason) => {\n console.error(chalk.red(reason))\n process.exitCode = 1\n })\n","import chalk from 'chalk'\nimport { cosmiconfig } from 'cosmiconfig'\nimport deepmerge from 'deepmerge'\n\nlet config: Record<string, unknown>\n\nexport const loadConfig = async <T extends object>(params?: T): Promise<T> => {\n if (config) {\n return deepmerge(config, params ?? {}) as T\n }\n\n const cosmicConfigResult = await cosmiconfig('xy', { cache: true }).search()\n config = cosmicConfigResult?.config\n const configFilePath = cosmicConfigResult?.filepath\n if (configFilePath) {\n console.log(chalk.gray(`Loading config from ${configFilePath}`))\n }\n return deepmerge(config, params ?? {}) as T\n}\n","import type { Loader } from 'esbuild'\nimport type { Options } from 'tsup'\nimport { build, defineConfig } from 'tsup'\n\nimport { buildEntries } from './buildEntries.ts'\nimport { packageCompileTypes } from './compileTypes.ts'\nimport { deepMergeObjects } from './deepMerge.ts'\nimport type { EntryMode, XyTsupConfig } from './XyConfig.ts'\n\nconst compileFolder = async (\n folder: string,\n entryMode: EntryMode = 'single',\n options?: Options,\n verbose?: boolean,\n): Promise<number> => {\n const outDir = options?.outDir ?? 'dist'\n\n if (verbose) {\n console.log(`compileFolder [${folder}]`)\n }\n\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: ['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 if (verbose) {\n console.log(`TSUP:build:start [${folder}]`)\n }\n\n await Promise.all(optionsList.map(options => build(options)))\n\n if (verbose) {\n console.log(`TSUP:build:stop [${folder}]`)\n }\n\n return 0\n}\n\nexport const tsupOptions = (options: Options[] = []): Options => {\n const standardLoaders: Record<string, Loader> = {\n '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy',\n }\n\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 deepMergeObjects([standardOptions, ...options])\n}\n\nexport const packageCompileTsup = async (config?: XyTsupConfig) => {\n console.log('packageCompileTsup-types')\n const compile = config?.compile\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 if (verbose) {\n console.log('Calling packageCompileTscTypes')\n }\n const errors = await packageCompileTypes(config)\n if (errors > 0) {\n return errors\n }\n\n return (\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 tsupOptions([inEsBuildOptions,\n compile?.tsup?.options ?? {},\n (typeof options === 'object' ? options : {}),\n { platform: 'node', outDir: 'dist/node' }]),\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 tsupOptions([inEsBuildOptions,\n compile?.tsup?.options ?? {},\n (typeof options === 'object' ? options : {}),\n { platform: 'browser', outDir: 'dist/browser' }]),\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 tsupOptions([inEsBuildOptions,\n compile?.tsup?.options ?? {},\n (typeof options === 'object' ? options : {}),\n { platform: 'neutral', outDir: 'dist/neutral' }]),\n verbose,\n )\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0)\n || 0\n )\n}\n","import { glob } from 'glob'\n\nexport const getAllInputs = (folder: string) => {\n /* tsup wants posix paths */\n return glob.sync(`${folder}/**/*.*`, { ignore: ['**/*.spec.*', '**/*.stories.*', '**/spec/**/*'], posix: true })\n}\n","import { getAllInputs } from './inputs.ts'\nimport type { EntryMode } from './XyConfig.ts'\n\nexport const buildEntries = (folder: string, entryMode: EntryMode = 'single', verbose = false) => {\n let entries: string[] = []\n switch (entryMode) {\n case 'platform': {\n entries = [`${folder}/index-node.ts`, `${folder}/index-browser.ts`]\n break\n }\n case 'all': {\n entries = getAllInputs(folder).filter(entry => !entry.includes('.spec.') && !entry.includes('.story.'))\n break\n }\n default: {\n entries = [`${folder}/index.ts`]\n break\n }\n }\n if (verbose) console.log(`buildEntries [${entryMode}] ${entries.length}`)\n return entries\n}\n","import chalk from 'chalk'\n\nimport { loadConfig } from '../../../lib/index.ts'\nimport { packageCompileTscTypes } from './packageCompileTscTypes.ts'\nimport type { XyConfig, XyTscConfig } from './XyConfig.ts'\n\nexport const packageCompileTypes = async (inConfig: XyConfig = {}): Promise<number> => {\n const pkg = process.env.INIT_CWD\n console.log(chalk.green(`Compiling Types ${pkg}`))\n const config = await loadConfig(inConfig)\n\n return packageCompileTscTypes(undefined, config as XyTscConfig)\n}\n","import { cwd } from 'node:process'\n\nimport type { TsConfigCompilerOptions } from 'tsc-prog'\nimport { createProgramFromConfig } from 'tsc-prog'\nimport type { CompilerOptions } from 'typescript'\nimport {\n DiagnosticCategory, formatDiagnosticsWithColorAndContext, getPreEmitDiagnostics, sys,\n} from 'typescript'\n\nimport { buildEntries } from './buildEntries.ts'\nimport { getCompilerOptions } from './getCompilerOptions.ts'\nimport type { XyConfig } from './XyConfig.ts'\n\nexport const packageCompileTscTypes = (\n folder: string = 'src',\n config: XyConfig = {},\n compilerOptionsParam?: CompilerOptions,\n): number => {\n const pkg = process.env.INIT_CWD ?? cwd()\n const verbose = config?.verbose ?? false\n\n if (verbose) {\n console.log(`Compiling types [${pkg}]`)\n }\n\n const compilerOptions = {\n ...(getCompilerOptions({\n emitDeclarationOnly: true,\n outDir: 'dist/types',\n removeComments: false,\n skipDefaultLibCheck: true,\n skipLibCheck: true,\n sourceMap: false,\n })),\n ...compilerOptionsParam,\n emitDeclarationOnly: true,\n noEmit: false,\n } as TsConfigCompilerOptions\n\n // calling all here since the types do not get rolled up\n const files = buildEntries(folder, 'all', verbose)\n\n const program = createProgramFromConfig({\n basePath: pkg ?? cwd(),\n compilerOptions,\n exclude: ['dist', 'docs', '**/*.spec.*', '**/*.stories.*', 'src/**/spec/**/*'],\n files,\n })\n\n const diagnostics = getPreEmitDiagnostics(program)\n\n if (diagnostics.length > 0) {\n const formattedDiagnostics = formatDiagnosticsWithColorAndContext(\n diagnostics,\n {\n getCanonicalFileName: fileName => fileName,\n getCurrentDirectory: () => folder,\n getNewLine: () => sys.newLine,\n },\n )\n console.error(formattedDiagnostics)\n }\n\n program.emit()\n return diagnostics.reduce((acc, diag) => acc + (diag.category === DiagnosticCategory.Error ? 1 : 0), 0)\n}\n","import { createRequire } from 'node:module'\n\nimport deepmerge from 'deepmerge'\nimport type { TsConfig } from 'tsc-prog'\nimport type { CompilerOptions } from 'typescript'\nimport {\n findConfigFile, readConfigFile, sys,\n} 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 deepmerge(getNested(opts), config.compilerOptions ?? {}) as CompilerOptions\n }\n\n return config.compilerOptions as CompilerOptions\n}\n\nconst 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 deepmerge(configFileCompilerOptions, options)\n}\n","// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype AnyObject = Record<any, any>\n\nfunction deepMerge<T extends AnyObject>(target: AnyObject, source: AnyObject): T {\n if (!source || typeof source !== 'object') return target\n\n for (const key of Object.keys(source)) {\n if (\n typeof source[key] === 'object'\n && source[key] !== null\n && !Array.isArray(source[key])\n ) {\n // Recursively merge nested objects\n if (!target[key] || typeof target[key] !== 'object') {\n target[key] = {} as T[typeof key]\n }\n deepMerge(target[key], source[key])\n } else {\n // Overwrite with non-object values\n target[key] = source[key]\n }\n }\n\n return target\n}\n\nexport function deepMergeObjects<T extends AnyObject>(objects: T[]): T {\n const result = {} as T\n for (const obj of objects) {\n deepMerge(result, obj)\n }\n return result\n}\n"],"mappings":"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","names":["chalk","chalk","cosmiconfig","deepmerge","config","loadConfig","params","deepmerge","cosmicConfigResult","cosmiconfig","cache","search","configFilePath","filepath","console","log","chalk","gray","build","defineConfig","glob","getAllInputs","folder","glob","sync","ignore","posix","buildEntries","folder","entryMode","verbose","entries","getAllInputs","filter","entry","includes","console","log","length","chalk","cwd","createProgramFromConfig","DiagnosticCategory","formatDiagnosticsWithColorAndContext","getPreEmitDiagnostics","sys","createRequire","deepmerge","findConfigFile","readConfigFile","sys","getNested","config","extends","require","createRequire","url","opts","deepmerge","compilerOptions","getCompilerOptionsJSONFollowExtends","filename","readConfigFile","sys","readFile","getCompilerOptions","options","tsconfig","configFileName","findConfigFile","fileExists","configFileCompilerOptions","undefined","packageCompileTscTypes","folder","config","compilerOptionsParam","pkg","process","env","INIT_CWD","cwd","verbose","console","log","compilerOptions","getCompilerOptions","emitDeclarationOnly","outDir","removeComments","skipDefaultLibCheck","skipLibCheck","sourceMap","noEmit","files","buildEntries","program","createProgramFromConfig","basePath","exclude","diagnostics","getPreEmitDiagnostics","length","formattedDiagnostics","formatDiagnosticsWithColorAndContext","getCanonicalFileName","fileName","getCurrentDirectory","getNewLine","sys","newLine","error","emit","reduce","acc","diag","category","DiagnosticCategory","Error","packageCompileTypes","inConfig","pkg","process","env","INIT_CWD","console","log","chalk","green","config","loadConfig","packageCompileTscTypes","undefined","deepMerge","target","source","key","Object","keys","Array","isArray","deepMergeObjects","objects","result","obj","compileFolder","folder","entryMode","options","verbose","outDir","console","log","entry","buildEntries","optionsResult","defineConfig","bundle","cjsInterop","clean","dts","format","silent","sourcemap","splitting","tsconfig","optionsList","Promise","all","Array","isArray","flatMap","result","flat","map","build","tsupOptions","standardLoaders","standardOptions","loader","outExtension","js","skipNodeModulesBundle","target","deepMergeObjects","packageCompileTsup","config","compile","depth","compileForNode","node","src","compileForBrowser","browser","compileForNeutral","neutral","errors","packageCompileTypes","Object","entries","inEsBuildOptions","esbuildOptions","tsup","platform","reduce","prev","value","packageCompileTsup","verbose","then","value","process","exitCode","catch","reason","console","error","chalk","red"]}
@@ -3,7 +3,7 @@ var __defProp = Object.defineProperty;
3
3
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
4
4
 
5
5
  // src/bin/package/compile-types.ts
6
- import chalk4 from "chalk";
6
+ import chalk3 from "chalk";
7
7
 
8
8
  // src/lib/loadConfig.ts
9
9
  import chalk from "chalk";
@@ -25,28 +25,6 @@ var loadConfig = /* @__PURE__ */ __name(async (params) => {
25
25
  return deepmerge(config, params ?? {});
26
26
  }, "loadConfig");
27
27
 
28
- // src/actions/package/compile/getCompilerOptions.ts
29
- import { createRequire } from "node:module";
30
- import deepmerge2 from "deepmerge";
31
- import { findConfigFile, readConfigFile, sys } from "typescript";
32
- var getNested = /* @__PURE__ */ __name((config2) => {
33
- if (config2.extends) {
34
- const require2 = createRequire(import.meta.url);
35
- const opts = require2(config2.extends);
36
- return deepmerge2(getNested(opts), config2.compilerOptions ?? {});
37
- }
38
- return config2.compilerOptions;
39
- }, "getNested");
40
- var getCompilerOptionsJSONFollowExtends = /* @__PURE__ */ __name((filename) => {
41
- const config2 = readConfigFile(filename, sys.readFile).config;
42
- return getNested(config2);
43
- }, "getCompilerOptionsJSONFollowExtends");
44
- var getCompilerOptions = /* @__PURE__ */ __name((options = {}, tsconfig = "tsconfig.json") => {
45
- const configFileName = findConfigFile("./", sys.fileExists, tsconfig);
46
- const configFileCompilerOptions = (configFileName ? getCompilerOptionsJSONFollowExtends(configFileName) : void 0) ?? {};
47
- return deepmerge2(configFileCompilerOptions, options);
48
- }, "getCompilerOptions");
49
-
50
28
  // src/actions/package/compile/inputs.ts
51
29
  import { glob } from "glob";
52
30
  var getAllInputs = /* @__PURE__ */ __name((folder) => {
@@ -86,20 +64,45 @@ var buildEntries = /* @__PURE__ */ __name((folder, entryMode = "single", verbose
86
64
  return entries;
87
65
  }, "buildEntries");
88
66
 
67
+ // src/actions/package/compile/compileTypes.ts
68
+ import chalk2 from "chalk";
69
+
89
70
  // src/actions/package/compile/packageCompileTscTypes.ts
90
71
  import { cwd } from "node:process";
91
- import chalk2 from "chalk";
92
72
  import { createProgramFromConfig } from "tsc-prog";
93
- import { DiagnosticCategory } from "typescript";
73
+ import { DiagnosticCategory, formatDiagnosticsWithColorAndContext, getPreEmitDiagnostics, sys as sys2 } from "typescript";
74
+
75
+ // src/actions/package/compile/getCompilerOptions.ts
76
+ import { createRequire } from "node:module";
77
+ import deepmerge2 from "deepmerge";
78
+ import { findConfigFile, readConfigFile, sys } from "typescript";
79
+ var getNested = /* @__PURE__ */ __name((config2) => {
80
+ if (config2.extends) {
81
+ const require2 = createRequire(import.meta.url);
82
+ const opts = require2(config2.extends);
83
+ return deepmerge2(getNested(opts), config2.compilerOptions ?? {});
84
+ }
85
+ return config2.compilerOptions;
86
+ }, "getNested");
87
+ var getCompilerOptionsJSONFollowExtends = /* @__PURE__ */ __name((filename) => {
88
+ const config2 = readConfigFile(filename, sys.readFile).config;
89
+ return getNested(config2);
90
+ }, "getCompilerOptionsJSONFollowExtends");
91
+ var getCompilerOptions = /* @__PURE__ */ __name((options = {}, tsconfig = "tsconfig.json") => {
92
+ const configFileName = findConfigFile("./", sys.fileExists, tsconfig);
93
+ const configFileCompilerOptions = (configFileName ? getCompilerOptionsJSONFollowExtends(configFileName) : void 0) ?? {};
94
+ return deepmerge2(configFileCompilerOptions, options);
95
+ }, "getCompilerOptions");
96
+
97
+ // src/actions/package/compile/packageCompileTscTypes.ts
94
98
  var packageCompileTscTypes = /* @__PURE__ */ __name((folder = "src", config2 = {}, compilerOptionsParam) => {
95
99
  const pkg = process.env.INIT_CWD ?? cwd();
96
100
  const verbose = config2?.verbose ?? false;
97
101
  if (verbose) {
98
- console.log(`Compiling types with TSC [${pkg}]`);
102
+ console.log(`Compiling types [${pkg}]`);
99
103
  }
100
104
  const compilerOptions = {
101
105
  ...getCompilerOptions({
102
- declaration: true,
103
106
  emitDeclarationOnly: true,
104
107
  outDir: "dist/types",
105
108
  removeComments: false,
@@ -112,7 +115,7 @@ var packageCompileTscTypes = /* @__PURE__ */ __name((folder = "src", config2 = {
112
115
  noEmit: false
113
116
  };
114
117
  const files = buildEntries(folder, "all", verbose);
115
- const result = createProgramFromConfig({
118
+ const program = createProgramFromConfig({
116
119
  basePath: pkg ?? cwd(),
117
120
  compilerOptions,
118
121
  exclude: [
@@ -123,38 +126,24 @@ var packageCompileTscTypes = /* @__PURE__ */ __name((folder = "src", config2 = {
123
126
  "src/**/spec/**/*"
124
127
  ],
125
128
  files
126
- }).emit();
127
- const diagResults = result.diagnostics.length;
128
- for (const diag of result.diagnostics) {
129
- switch (diag.category) {
130
- case DiagnosticCategory.Error: {
131
- console.error(chalk2.red(diag.messageText));
132
- console.error(chalk2.grey(pkg));
133
- console.error(chalk2.blue(diag.file?.fileName));
134
- break;
135
- }
136
- case DiagnosticCategory.Warning: {
137
- console.error(chalk2.yellow(diag.messageText));
138
- console.error(chalk2.grey(pkg));
139
- console.error(chalk2.blue(diag.file?.fileName));
140
- break;
141
- }
142
- case DiagnosticCategory.Suggestion: {
143
- console.error(chalk2.white(diag.messageText));
144
- console.error(chalk2.grey(pkg));
145
- console.error(chalk2.blue(diag.file?.fileName));
146
- break;
147
- }
148
- }
129
+ });
130
+ const diagnostics = getPreEmitDiagnostics(program);
131
+ if (diagnostics.length > 0) {
132
+ const formattedDiagnostics = formatDiagnosticsWithColorAndContext(diagnostics, {
133
+ getCanonicalFileName: /* @__PURE__ */ __name((fileName) => fileName, "getCanonicalFileName"),
134
+ getCurrentDirectory: /* @__PURE__ */ __name(() => folder, "getCurrentDirectory"),
135
+ getNewLine: /* @__PURE__ */ __name(() => sys2.newLine, "getNewLine")
136
+ });
137
+ console.error(formattedDiagnostics);
149
138
  }
150
- return diagResults;
139
+ program.emit();
140
+ return diagnostics.reduce((acc, diag) => acc + (diag.category === DiagnosticCategory.Error ? 1 : 0), 0);
151
141
  }, "packageCompileTscTypes");
152
142
 
153
143
  // src/actions/package/compile/compileTypes.ts
154
- import chalk3 from "chalk";
155
144
  var packageCompileTypes = /* @__PURE__ */ __name(async (inConfig = {}) => {
156
145
  const pkg = process.env.INIT_CWD;
157
- console.log(chalk3.green(`Compiling Types ${pkg}`));
146
+ console.log(chalk2.green(`Compiling Types ${pkg}`));
158
147
  const config2 = await loadConfig(inConfig);
159
148
  return packageCompileTscTypes(void 0, config2);
160
149
  }, "packageCompileTypes");
@@ -167,7 +156,7 @@ packageCompileTypes({
167
156
  process.exit(value);
168
157
  }
169
158
  }).catch((reason) => {
170
- console.error(chalk4.red(reason));
159
+ console.error(chalk3.red(reason));
171
160
  process.exit(-1);
172
161
  });
173
162
  //# sourceMappingURL=compile-types.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/bin/package/compile-types.ts","../../../src/lib/loadConfig.ts","../../../src/actions/package/compile/getCompilerOptions.ts","../../../src/actions/package/compile/inputs.ts","../../../src/actions/package/compile/buildEntries.ts","../../../src/actions/package/compile/packageCompileTscTypes.ts","../../../src/actions/package/compile/compileTypes.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport chalk from 'chalk'\n\nimport { packageCompileTypes } from '../../actions/index.ts'\n\npackageCompileTypes({ verbose: true })\n .then((value) => {\n if (value) {\n process.exit(value)\n }\n })\n .catch((reason) => {\n console.error(chalk.red(reason))\n process.exit(-1)\n })\n","import chalk from 'chalk'\nimport { cosmiconfig } from 'cosmiconfig'\nimport deepmerge from 'deepmerge'\n\nlet config: Record<string, unknown>\n\nexport const loadConfig = async <T extends object>(params?: T): Promise<T> => {\n if (config) {\n return deepmerge(config, params ?? {}) as T\n }\n\n const cosmicConfigResult = await cosmiconfig('xy', { cache: true }).search()\n config = cosmicConfigResult?.config\n const configFilePath = cosmicConfigResult?.filepath\n if (configFilePath) {\n console.log(chalk.gray(`Loading config from ${configFilePath}`))\n }\n return deepmerge(config, params ?? {}) as T\n}\n","import { createRequire } from 'node:module'\n\nimport deepmerge from 'deepmerge'\nimport type { TsConfig } from 'tsc-prog'\nimport type { CompilerOptions } from 'typescript'\nimport {\n findConfigFile, readConfigFile, sys,\n} 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 deepmerge(getNested(opts), config.compilerOptions ?? {}) as CompilerOptions\n }\n\n return config.compilerOptions as CompilerOptions\n}\n\nconst 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 deepmerge(configFileCompilerOptions, options)\n}\n","import { glob } from 'glob'\n\nexport const getAllInputs = (folder: string) => {\n /* tsup wants posix paths */\n return glob.sync(`${folder}/**/*.*`, { ignore: ['**/*.spec.*', '**/*.stories.*', '**/spec/**/*'], posix: true })\n}\n","import { getAllInputs } from './inputs.ts'\nimport type { EntryMode } from './XyConfig.ts'\n\nexport const buildEntries = (folder: string, entryMode: EntryMode = 'single', verbose = false) => {\n let entries: string[] = []\n switch (entryMode) {\n case 'platform': {\n entries = [`${folder}/index-node.ts`, `${folder}/index-browser.ts`]\n break\n }\n case 'all': {\n entries = getAllInputs(folder).filter(entry => !entry.includes('.spec.') && !entry.includes('.story.'))\n break\n }\n default: {\n entries = [`${folder}/index.ts`]\n break\n }\n }\n if (verbose) console.log(`buildEntries [${entryMode}] ${entries.length}`)\n return entries\n}\n","import { cwd } from 'node:process'\n\nimport chalk from 'chalk'\nimport type { TsConfigCompilerOptions } from 'tsc-prog'\nimport { createProgramFromConfig } from 'tsc-prog'\nimport type { CompilerOptions } from 'typescript'\nimport { DiagnosticCategory } from 'typescript'\n\nimport { buildEntries } from './buildEntries.ts'\nimport { getCompilerOptions } from './getCompilerOptions.ts'\nimport type { XyConfig } from './XyConfig.ts'\n\nexport const packageCompileTscTypes = (\n folder: string = 'src',\n config: XyConfig = {},\n compilerOptionsParam?: CompilerOptions,\n): number => {\n const pkg = process.env.INIT_CWD ?? cwd()\n const verbose = config?.verbose ?? false\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/types',\n removeComments: false,\n skipDefaultLibCheck: true,\n skipLibCheck: true,\n sourceMap: false,\n })),\n ...compilerOptionsParam,\n emitDeclarationOnly: true,\n noEmit: false,\n } as TsConfigCompilerOptions\n\n // calling all here since the types do not get rolled up\n const files = buildEntries(folder, 'all', verbose)\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 chalk from 'chalk'\n\nimport { loadConfig } from '../../../lib/index.ts'\nimport { packageCompileTscTypes } from './packageCompileTscTypes.ts'\nimport type { XyConfig, XyTscConfig } from './XyConfig.ts'\n\nexport const packageCompileTypes = async (inConfig: XyConfig = {}): Promise<number> => {\n const pkg = process.env.INIT_CWD\n console.log(chalk.green(`Compiling Types ${pkg}`))\n const config = await loadConfig(inConfig)\n\n return packageCompileTscTypes(undefined, config as XyTscConfig)\n}\n"],"mappings":"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","names":["chalk","chalk","cosmiconfig","deepmerge","config","loadConfig","params","deepmerge","cosmicConfigResult","cosmiconfig","cache","search","configFilePath","filepath","console","log","chalk","gray","createRequire","deepmerge","findConfigFile","readConfigFile","sys","getNested","config","extends","require","createRequire","url","opts","deepmerge","compilerOptions","getCompilerOptionsJSONFollowExtends","filename","readConfigFile","sys","readFile","getCompilerOptions","options","tsconfig","configFileName","findConfigFile","fileExists","configFileCompilerOptions","undefined","glob","getAllInputs","folder","glob","sync","ignore","posix","buildEntries","folder","entryMode","verbose","entries","getAllInputs","filter","entry","includes","console","log","length","cwd","chalk","createProgramFromConfig","DiagnosticCategory","packageCompileTscTypes","folder","config","compilerOptionsParam","pkg","process","env","INIT_CWD","cwd","verbose","console","log","compilerOptions","getCompilerOptions","declaration","emitDeclarationOnly","outDir","removeComments","skipDefaultLibCheck","skipLibCheck","sourceMap","noEmit","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","chalk","packageCompileTypes","inConfig","pkg","process","env","INIT_CWD","console","log","chalk","green","config","loadConfig","packageCompileTscTypes","undefined","packageCompileTypes","verbose","then","value","process","exit","catch","reason","console","error","chalk","red"]}
1
+ {"version":3,"sources":["../../../src/bin/package/compile-types.ts","../../../src/lib/loadConfig.ts","../../../src/actions/package/compile/inputs.ts","../../../src/actions/package/compile/buildEntries.ts","../../../src/actions/package/compile/compileTypes.ts","../../../src/actions/package/compile/packageCompileTscTypes.ts","../../../src/actions/package/compile/getCompilerOptions.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport chalk from 'chalk'\n\nimport { packageCompileTypes } from '../../actions/index.ts'\n\npackageCompileTypes({ verbose: true })\n .then((value) => {\n if (value) {\n process.exit(value)\n }\n })\n .catch((reason) => {\n console.error(chalk.red(reason))\n process.exit(-1)\n })\n","import chalk from 'chalk'\nimport { cosmiconfig } from 'cosmiconfig'\nimport deepmerge from 'deepmerge'\n\nlet config: Record<string, unknown>\n\nexport const loadConfig = async <T extends object>(params?: T): Promise<T> => {\n if (config) {\n return deepmerge(config, params ?? {}) as T\n }\n\n const cosmicConfigResult = await cosmiconfig('xy', { cache: true }).search()\n config = cosmicConfigResult?.config\n const configFilePath = cosmicConfigResult?.filepath\n if (configFilePath) {\n console.log(chalk.gray(`Loading config from ${configFilePath}`))\n }\n return deepmerge(config, params ?? {}) as T\n}\n","import { glob } from 'glob'\n\nexport const getAllInputs = (folder: string) => {\n /* tsup wants posix paths */\n return glob.sync(`${folder}/**/*.*`, { ignore: ['**/*.spec.*', '**/*.stories.*', '**/spec/**/*'], posix: true })\n}\n","import { getAllInputs } from './inputs.ts'\nimport type { EntryMode } from './XyConfig.ts'\n\nexport const buildEntries = (folder: string, entryMode: EntryMode = 'single', verbose = false) => {\n let entries: string[] = []\n switch (entryMode) {\n case 'platform': {\n entries = [`${folder}/index-node.ts`, `${folder}/index-browser.ts`]\n break\n }\n case 'all': {\n entries = getAllInputs(folder).filter(entry => !entry.includes('.spec.') && !entry.includes('.story.'))\n break\n }\n default: {\n entries = [`${folder}/index.ts`]\n break\n }\n }\n if (verbose) console.log(`buildEntries [${entryMode}] ${entries.length}`)\n return entries\n}\n","import chalk from 'chalk'\n\nimport { loadConfig } from '../../../lib/index.ts'\nimport { packageCompileTscTypes } from './packageCompileTscTypes.ts'\nimport type { XyConfig, XyTscConfig } from './XyConfig.ts'\n\nexport const packageCompileTypes = async (inConfig: XyConfig = {}): Promise<number> => {\n const pkg = process.env.INIT_CWD\n console.log(chalk.green(`Compiling Types ${pkg}`))\n const config = await loadConfig(inConfig)\n\n return packageCompileTscTypes(undefined, config as XyTscConfig)\n}\n","import { cwd } from 'node:process'\n\nimport type { TsConfigCompilerOptions } from 'tsc-prog'\nimport { createProgramFromConfig } from 'tsc-prog'\nimport type { CompilerOptions } from 'typescript'\nimport {\n DiagnosticCategory, formatDiagnosticsWithColorAndContext, getPreEmitDiagnostics, sys,\n} from 'typescript'\n\nimport { buildEntries } from './buildEntries.ts'\nimport { getCompilerOptions } from './getCompilerOptions.ts'\nimport type { XyConfig } from './XyConfig.ts'\n\nexport const packageCompileTscTypes = (\n folder: string = 'src',\n config: XyConfig = {},\n compilerOptionsParam?: CompilerOptions,\n): number => {\n const pkg = process.env.INIT_CWD ?? cwd()\n const verbose = config?.verbose ?? false\n\n if (verbose) {\n console.log(`Compiling types [${pkg}]`)\n }\n\n const compilerOptions = {\n ...(getCompilerOptions({\n emitDeclarationOnly: true,\n outDir: 'dist/types',\n removeComments: false,\n skipDefaultLibCheck: true,\n skipLibCheck: true,\n sourceMap: false,\n })),\n ...compilerOptionsParam,\n emitDeclarationOnly: true,\n noEmit: false,\n } as TsConfigCompilerOptions\n\n // calling all here since the types do not get rolled up\n const files = buildEntries(folder, 'all', verbose)\n\n const program = createProgramFromConfig({\n basePath: pkg ?? cwd(),\n compilerOptions,\n exclude: ['dist', 'docs', '**/*.spec.*', '**/*.stories.*', 'src/**/spec/**/*'],\n files,\n })\n\n const diagnostics = getPreEmitDiagnostics(program)\n\n if (diagnostics.length > 0) {\n const formattedDiagnostics = formatDiagnosticsWithColorAndContext(\n diagnostics,\n {\n getCanonicalFileName: fileName => fileName,\n getCurrentDirectory: () => folder,\n getNewLine: () => sys.newLine,\n },\n )\n console.error(formattedDiagnostics)\n }\n\n program.emit()\n return diagnostics.reduce((acc, diag) => acc + (diag.category === DiagnosticCategory.Error ? 1 : 0), 0)\n}\n","import { createRequire } from 'node:module'\n\nimport deepmerge from 'deepmerge'\nimport type { TsConfig } from 'tsc-prog'\nimport type { CompilerOptions } from 'typescript'\nimport {\n findConfigFile, readConfigFile, sys,\n} 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 deepmerge(getNested(opts), config.compilerOptions ?? {}) as CompilerOptions\n }\n\n return config.compilerOptions as CompilerOptions\n}\n\nconst 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 deepmerge(configFileCompilerOptions, options)\n}\n"],"mappings":"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","names":["chalk","chalk","cosmiconfig","deepmerge","config","loadConfig","params","deepmerge","cosmicConfigResult","cosmiconfig","cache","search","configFilePath","filepath","console","log","chalk","gray","glob","getAllInputs","folder","glob","sync","ignore","posix","buildEntries","folder","entryMode","verbose","entries","getAllInputs","filter","entry","includes","console","log","length","chalk","cwd","createProgramFromConfig","DiagnosticCategory","formatDiagnosticsWithColorAndContext","getPreEmitDiagnostics","sys","createRequire","deepmerge","findConfigFile","readConfigFile","sys","getNested","config","extends","require","createRequire","url","opts","deepmerge","compilerOptions","getCompilerOptionsJSONFollowExtends","filename","readConfigFile","sys","readFile","getCompilerOptions","options","tsconfig","configFileName","findConfigFile","fileExists","configFileCompilerOptions","undefined","packageCompileTscTypes","folder","config","compilerOptionsParam","pkg","process","env","INIT_CWD","cwd","verbose","console","log","compilerOptions","getCompilerOptions","emitDeclarationOnly","outDir","removeComments","skipDefaultLibCheck","skipLibCheck","sourceMap","noEmit","files","buildEntries","program","createProgramFromConfig","basePath","exclude","diagnostics","getPreEmitDiagnostics","length","formattedDiagnostics","formatDiagnosticsWithColorAndContext","getCanonicalFileName","fileName","getCurrentDirectory","getNewLine","sys","newLine","error","emit","reduce","acc","diag","category","DiagnosticCategory","Error","packageCompileTypes","inConfig","pkg","process","env","INIT_CWD","console","log","chalk","green","config","loadConfig","packageCompileTscTypes","undefined","packageCompileTypes","verbose","then","value","process","exit","catch","reason","console","error","chalk","red"]}