@xylabs/ts-scripts-yarn3 4.0.0-rc.9 → 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (198) hide show
  1. package/dist/actions/build.mjs.map +1 -1
  2. package/dist/actions/clean-docs.mjs +14 -4
  3. package/dist/actions/clean-docs.mjs.map +1 -1
  4. package/dist/actions/clean-eslint.mjs +16 -4
  5. package/dist/actions/clean-eslint.mjs.map +1 -1
  6. package/dist/actions/clean-jest.mjs.map +1 -1
  7. package/dist/actions/clean.mjs.map +1 -1
  8. package/dist/actions/compile.mjs +3 -2
  9. package/dist/actions/compile.mjs.map +1 -1
  10. package/dist/actions/copy-assets.mjs.map +1 -1
  11. package/dist/actions/cycle.mjs +25 -110
  12. package/dist/actions/cycle.mjs.map +1 -1
  13. package/dist/actions/dead.mjs.map +1 -1
  14. package/dist/actions/deploy-major.mjs.map +1 -1
  15. package/dist/actions/deploy-minor.mjs.map +1 -1
  16. package/dist/actions/deploy-next.mjs.map +1 -1
  17. package/dist/actions/deploy.mjs.map +1 -1
  18. package/dist/actions/deps.mjs.map +1 -1
  19. package/dist/actions/dupdeps.mjs +3 -2
  20. package/dist/actions/dupdeps.mjs.map +1 -1
  21. package/dist/actions/fix.mjs.map +1 -1
  22. package/dist/actions/gen-docs.mjs.map +1 -1
  23. package/dist/actions/gitignore-gen.mjs.map +1 -1
  24. package/dist/actions/index.mjs +300 -77
  25. package/dist/actions/index.mjs.map +1 -1
  26. package/dist/actions/license.mjs.map +1 -1
  27. package/dist/actions/lint-clean.mjs.map +1 -1
  28. package/dist/actions/lint-profile.mjs.map +1 -1
  29. package/dist/actions/lint.mjs.map +1 -1
  30. package/dist/actions/npmignore-gen.mjs.map +1 -1
  31. package/dist/actions/package/clean-outputs.mjs +16 -2
  32. package/dist/actions/package/clean-outputs.mjs.map +1 -1
  33. package/dist/actions/package/clean-typescript.mjs +16 -2
  34. package/dist/actions/package/clean-typescript.mjs.map +1 -1
  35. package/dist/actions/package/clean.mjs +17 -4
  36. package/dist/actions/package/clean.mjs.map +1 -1
  37. package/dist/actions/package/compile/buildEntries.mjs.map +1 -1
  38. package/dist/actions/package/compile/compile.mjs +221 -16
  39. package/dist/actions/package/compile/compile.mjs.map +1 -1
  40. package/dist/actions/package/compile/copyTypeFiles.mjs.map +1 -1
  41. package/dist/actions/package/compile/getCompilerOptions.mjs +145 -8
  42. package/dist/actions/package/compile/getCompilerOptions.mjs.map +1 -1
  43. package/dist/actions/package/compile/index.mjs +221 -16
  44. package/dist/actions/package/compile/index.mjs.map +1 -1
  45. package/dist/actions/package/compile/packageCompileTsc.mjs +148 -8
  46. package/dist/actions/package/compile/packageCompileTsc.mjs.map +1 -1
  47. package/dist/actions/package/compile/packageCompileTscTypes.mjs +145 -8
  48. package/dist/actions/package/compile/packageCompileTscTypes.mjs.map +1 -1
  49. package/dist/actions/package/compile/packageCompileTsup.mjs +235 -3
  50. package/dist/actions/package/compile/packageCompileTsup.mjs.map +1 -1
  51. package/dist/actions/package/copy-assets.mjs.map +1 -1
  52. package/dist/actions/package/deps.mjs.map +1 -1
  53. package/dist/actions/package/gen-docs.mjs.map +1 -1
  54. package/dist/actions/package/index.mjs +289 -71
  55. package/dist/actions/package/index.mjs.map +1 -1
  56. package/dist/actions/package/publint.mjs +3 -0
  57. package/dist/actions/package/publint.mjs.map +1 -1
  58. package/dist/actions/package/recompile.mjs +262 -44
  59. package/dist/actions/package/recompile.mjs.map +1 -1
  60. package/dist/actions/publint.mjs.map +1 -1
  61. package/dist/actions/rebuild.mjs.map +1 -1
  62. package/dist/actions/recompile.mjs.map +1 -1
  63. package/dist/actions/reinstall.mjs.map +1 -1
  64. package/dist/actions/relint.mjs.map +1 -1
  65. package/dist/actions/retest.mjs.map +1 -1
  66. package/dist/actions/sonar.mjs.map +1 -1
  67. package/dist/actions/statics.mjs +3 -2
  68. package/dist/actions/statics.mjs.map +1 -1
  69. package/dist/actions/test.mjs.map +1 -1
  70. package/dist/actions/up.mjs.map +1 -1
  71. package/dist/actions/updo.mjs.map +1 -1
  72. package/dist/actions/upplug.mjs.map +1 -1
  73. package/dist/actions/upyarn.mjs.map +1 -1
  74. package/dist/actions/yarn3only.mjs.map +1 -1
  75. package/dist/bin/package/clean-outputs.mjs +14 -2
  76. package/dist/bin/package/clean-outputs.mjs.map +1 -1
  77. package/dist/bin/package/clean-typescript.mjs +14 -2
  78. package/dist/bin/package/clean-typescript.mjs.map +1 -1
  79. package/dist/bin/package/clean.mjs +15 -4
  80. package/dist/bin/package/clean.mjs.map +1 -1
  81. package/dist/bin/package/compile-only.mjs +223 -18
  82. package/dist/bin/package/compile-only.mjs.map +1 -1
  83. package/dist/bin/package/compile-tsup.mjs +235 -5
  84. package/dist/bin/package/compile-tsup.mjs.map +1 -1
  85. package/dist/bin/package/compile.mjs +223 -18
  86. package/dist/bin/package/compile.mjs.map +1 -1
  87. package/dist/bin/package/copy-assets-cjs.mjs.map +1 -1
  88. package/dist/bin/package/copy-assets-esm.mjs.map +1 -1
  89. package/dist/bin/package/deps.mjs.map +1 -1
  90. package/dist/bin/package/gen-docs.mjs.map +1 -1
  91. package/dist/bin/package/publint.mjs +3 -0
  92. package/dist/bin/package/publint.mjs.map +1 -1
  93. package/dist/bin/package/recompile.mjs +242 -26
  94. package/dist/bin/package/recompile.mjs.map +1 -1
  95. package/dist/bin/xy-ts.mjs +52 -32
  96. package/dist/bin/xy-ts.mjs.map +1 -1
  97. package/dist/bin/xy.mjs +52 -32
  98. package/dist/bin/xy.mjs.map +1 -1
  99. package/dist/index.d.ts +11 -9
  100. package/dist/index.mjs +313 -89
  101. package/dist/index.mjs.map +1 -1
  102. package/dist/lib/createBuildConfig.mjs.map +1 -1
  103. package/dist/lib/defaultBuildConfig.mjs.map +1 -1
  104. package/dist/lib/deleteGlob.mjs +19 -0
  105. package/dist/lib/deleteGlob.mjs.map +1 -0
  106. package/dist/lib/dependencies/DuplicateDetector.mjs +3 -2
  107. package/dist/lib/dependencies/DuplicateDetector.mjs.map +1 -1
  108. package/dist/lib/dependencies/detectDuplicateDependencies.mjs +3 -2
  109. package/dist/lib/dependencies/detectDuplicateDependencies.mjs.map +1 -1
  110. package/dist/lib/dependencies/index.mjs +3 -2
  111. package/dist/lib/dependencies/index.mjs.map +1 -1
  112. package/dist/lib/file/ReadFileSyncOptions.mjs.map +1 -1
  113. package/dist/lib/file/fileLines.mjs.map +1 -1
  114. package/dist/lib/file/index.mjs.map +1 -1
  115. package/dist/lib/file/tryReadFileSync.mjs.map +1 -1
  116. package/dist/lib/generateIgnoreFiles.mjs.map +1 -1
  117. package/dist/lib/index.mjs +160 -5
  118. package/dist/lib/index.mjs.map +1 -1
  119. package/dist/lib/loadConfig.mjs +143 -3
  120. package/dist/lib/loadConfig.mjs.map +1 -1
  121. package/dist/lib/processEx.mjs.map +1 -1
  122. package/dist/lib/runSteps.mjs.map +1 -1
  123. package/dist/lib/runStepsAsync.mjs.map +1 -1
  124. package/dist/lib/runXy.mjs.map +1 -1
  125. package/dist/lib/safeExit.mjs.map +1 -1
  126. package/dist/lib/withErrnoException.mjs.map +1 -1
  127. package/dist/lib/yarn/index.mjs.map +1 -1
  128. package/dist/lib/yarn/workspace/index.mjs.map +1 -1
  129. package/dist/lib/yarn/workspace/yarnWorkspace.mjs.map +1 -1
  130. package/dist/lib/yarn/workspace/yarnWorkspaces.mjs.map +1 -1
  131. package/dist/loadPackageConfig.mjs.map +1 -1
  132. package/dist/xy/index.mjs +52 -32
  133. package/dist/xy/index.mjs.map +1 -1
  134. package/dist/xy/param.mjs.map +1 -1
  135. package/dist/xy/xy.mjs +52 -32
  136. package/dist/xy/xy.mjs.map +1 -1
  137. package/dist/xy/xyBuildCommands.mjs +3 -2
  138. package/dist/xy/xyBuildCommands.mjs.map +1 -1
  139. package/dist/xy/xyCommonCommands.mjs +14 -4
  140. package/dist/xy/xyCommonCommands.mjs.map +1 -1
  141. package/dist/xy/xyDeployCommands.mjs.map +1 -1
  142. package/dist/xy/xyInstallCommands.mjs +3 -2
  143. package/dist/xy/xyInstallCommands.mjs.map +1 -1
  144. package/dist/xy/xyLintCommands.mjs +30 -22
  145. package/dist/xy/xyLintCommands.mjs.map +1 -1
  146. package/dist/xy/xyParseOptions.mjs.map +1 -1
  147. package/package.json +53 -55
  148. package/src/actions/build.ts +3 -1
  149. package/src/actions/clean-docs.ts +2 -3
  150. package/src/actions/clean-eslint.ts +3 -2
  151. package/src/actions/clean.ts +3 -1
  152. package/src/actions/compile.ts +13 -3
  153. package/src/actions/cycle.ts +15 -4
  154. package/src/actions/deps.ts +6 -5
  155. package/src/actions/gen-docs.ts +3 -4
  156. package/src/actions/package/clean-outputs.ts +3 -2
  157. package/src/actions/package/clean-typescript.ts +3 -2
  158. package/src/actions/package/compile/XyConfig.ts +5 -13
  159. package/src/actions/package/compile/buildEntries.ts +1 -1
  160. package/src/actions/package/compile/compile.ts +3 -1
  161. package/src/actions/package/compile/copyTypeFiles.ts +1 -1
  162. package/src/actions/package/compile/getCompilerOptions.ts +10 -8
  163. package/src/actions/package/compile/packageCompileTsc.ts +11 -6
  164. package/src/actions/package/compile/packageCompileTscTypes.ts +5 -3
  165. package/src/actions/package/compile/packageCompileTsup.ts +10 -8
  166. package/src/actions/package/copy-assets.ts +1 -3
  167. package/src/actions/package/deps.ts +6 -2
  168. package/src/actions/package/gen-docs.ts +3 -1
  169. package/src/actions/package/publint.ts +8 -5
  170. package/src/actions/publint.ts +3 -1
  171. package/src/actions/recompile.ts +47 -9
  172. package/src/actions/reinstall.ts +3 -1
  173. package/src/lib/defaultBuildConfig.ts +11 -1
  174. package/src/lib/deleteGlob.ts +13 -0
  175. package/src/lib/dependencies/DuplicateDetector.ts +4 -4
  176. package/src/lib/file/ReadFileSyncOptions.ts +4 -1
  177. package/src/lib/file/fileLines.ts +9 -3
  178. package/src/lib/file/tryReadFileSync.ts +4 -2
  179. package/src/lib/generateIgnoreFiles.ts +3 -1
  180. package/src/lib/index.ts +1 -0
  181. package/src/lib/loadConfig.ts +3 -4
  182. package/src/lib/runSteps.ts +2 -1
  183. package/src/lib/runStepsAsync.ts +1 -1
  184. package/src/lib/runXy.ts +4 -1
  185. package/src/lib/withErrnoException.ts +3 -1
  186. package/src/lib/yarn/workspace/yarnWorkspace.ts +1 -1
  187. package/src/lib/yarn/workspace/yarnWorkspaces.ts +1 -1
  188. package/src/loadPackageConfig.ts +1 -1
  189. package/src/types.d.ts +23 -0
  190. package/src/xy/param.ts +2 -4
  191. package/src/xy/xyBuildCommands.ts +10 -20
  192. package/src/xy/xyCommonCommands.ts +4 -2
  193. package/src/xy/xyDeployCommands.ts +4 -2
  194. package/src/xy/xyInstallCommands.ts +5 -5
  195. package/src/xy/xyLintCommands.ts +6 -4
  196. package/src/xy/xyParseOptions.ts +3 -2
  197. package/tsup.config.ts +2 -6
  198. package/xy.config.ts +1 -5
@@ -1,10 +1,197 @@
1
+ var __create = Object.create;
1
2
  var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
2
7
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
8
+ var __commonJS = (cb, mod) => function __require() {
9
+ return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
27
+
28
+ // ../../node_modules/deepmerge/dist/cjs.js
29
+ var require_cjs = __commonJS({
30
+ "../../node_modules/deepmerge/dist/cjs.js"(exports, module) {
31
+ "use strict";
32
+ var isMergeableObject = /* @__PURE__ */ __name(function isMergeableObject2(value) {
33
+ return isNonNullObject(value) && !isSpecial(value);
34
+ }, "isMergeableObject");
35
+ function isNonNullObject(value) {
36
+ return !!value && typeof value === "object";
37
+ }
38
+ __name(isNonNullObject, "isNonNullObject");
39
+ function isSpecial(value) {
40
+ var stringValue = Object.prototype.toString.call(value);
41
+ return stringValue === "[object RegExp]" || stringValue === "[object Date]" || isReactElement(value);
42
+ }
43
+ __name(isSpecial, "isSpecial");
44
+ var canUseSymbol = typeof Symbol === "function" && Symbol.for;
45
+ var REACT_ELEMENT_TYPE = canUseSymbol ? Symbol.for("react.element") : 60103;
46
+ function isReactElement(value) {
47
+ return value.$$typeof === REACT_ELEMENT_TYPE;
48
+ }
49
+ __name(isReactElement, "isReactElement");
50
+ function emptyTarget(val) {
51
+ return Array.isArray(val) ? [] : {};
52
+ }
53
+ __name(emptyTarget, "emptyTarget");
54
+ function cloneUnlessOtherwiseSpecified(value, options) {
55
+ return options.clone !== false && options.isMergeableObject(value) ? deepmerge3(emptyTarget(value), value, options) : value;
56
+ }
57
+ __name(cloneUnlessOtherwiseSpecified, "cloneUnlessOtherwiseSpecified");
58
+ function defaultArrayMerge(target, source, options) {
59
+ return target.concat(source).map(function(element) {
60
+ return cloneUnlessOtherwiseSpecified(element, options);
61
+ });
62
+ }
63
+ __name(defaultArrayMerge, "defaultArrayMerge");
64
+ function getMergeFunction(key, options) {
65
+ if (!options.customMerge) {
66
+ return deepmerge3;
67
+ }
68
+ var customMerge = options.customMerge(key);
69
+ return typeof customMerge === "function" ? customMerge : deepmerge3;
70
+ }
71
+ __name(getMergeFunction, "getMergeFunction");
72
+ function getEnumerableOwnPropertySymbols(target) {
73
+ return Object.getOwnPropertySymbols ? Object.getOwnPropertySymbols(target).filter(function(symbol) {
74
+ return Object.propertyIsEnumerable.call(target, symbol);
75
+ }) : [];
76
+ }
77
+ __name(getEnumerableOwnPropertySymbols, "getEnumerableOwnPropertySymbols");
78
+ function getKeys(target) {
79
+ return Object.keys(target).concat(getEnumerableOwnPropertySymbols(target));
80
+ }
81
+ __name(getKeys, "getKeys");
82
+ function propertyIsOnObject(object, property) {
83
+ try {
84
+ return property in object;
85
+ } catch (_) {
86
+ return false;
87
+ }
88
+ }
89
+ __name(propertyIsOnObject, "propertyIsOnObject");
90
+ function propertyIsUnsafe(target, key) {
91
+ return propertyIsOnObject(target, key) && !(Object.hasOwnProperty.call(target, key) && Object.propertyIsEnumerable.call(target, key));
92
+ }
93
+ __name(propertyIsUnsafe, "propertyIsUnsafe");
94
+ function mergeObject(target, source, options) {
95
+ var destination = {};
96
+ if (options.isMergeableObject(target)) {
97
+ getKeys(target).forEach(function(key) {
98
+ destination[key] = cloneUnlessOtherwiseSpecified(target[key], options);
99
+ });
100
+ }
101
+ getKeys(source).forEach(function(key) {
102
+ if (propertyIsUnsafe(target, key)) {
103
+ return;
104
+ }
105
+ if (propertyIsOnObject(target, key) && options.isMergeableObject(source[key])) {
106
+ destination[key] = getMergeFunction(key, options)(target[key], source[key], options);
107
+ } else {
108
+ destination[key] = cloneUnlessOtherwiseSpecified(source[key], options);
109
+ }
110
+ });
111
+ return destination;
112
+ }
113
+ __name(mergeObject, "mergeObject");
114
+ function deepmerge3(target, source, options) {
115
+ options = options || {};
116
+ options.arrayMerge = options.arrayMerge || defaultArrayMerge;
117
+ options.isMergeableObject = options.isMergeableObject || isMergeableObject;
118
+ options.cloneUnlessOtherwiseSpecified = cloneUnlessOtherwiseSpecified;
119
+ var sourceIsArray = Array.isArray(source);
120
+ var targetIsArray = Array.isArray(target);
121
+ var sourceAndTargetTypesMatch = sourceIsArray === targetIsArray;
122
+ if (!sourceAndTargetTypesMatch) {
123
+ return cloneUnlessOtherwiseSpecified(source, options);
124
+ } else if (sourceIsArray) {
125
+ return options.arrayMerge(target, source, options);
126
+ } else {
127
+ return mergeObject(target, source, options);
128
+ }
129
+ }
130
+ __name(deepmerge3, "deepmerge");
131
+ deepmerge3.all = /* @__PURE__ */ __name(function deepmergeAll(array, options) {
132
+ if (!Array.isArray(array)) {
133
+ throw new Error("first argument should be an array");
134
+ }
135
+ return array.reduce(function(prev, next) {
136
+ return deepmerge3(prev, next, options);
137
+ }, {});
138
+ }, "deepmergeAll");
139
+ var deepmerge_1 = deepmerge3;
140
+ module.exports = deepmerge_1;
141
+ }
142
+ });
3
143
 
4
144
  // src/actions/package/clean-outputs.ts
5
145
  import path from "node:path";
146
+ import chalk3 from "chalk";
147
+
148
+ // src/lib/checkResult.ts
6
149
  import chalk from "chalk";
7
- import { rimraf } from "rimraf";
150
+ var checkResult = /* @__PURE__ */ __name((name, result, level = "error", exitOnFail = false) => {
151
+ if (result) {
152
+ const exiting = exitOnFail ? "[Exiting Process]" : "[Continuing]";
153
+ const chalkFunc = level === "error" ? chalk.red : chalk.yellow;
154
+ console[level](chalkFunc(`${name} had ${result} failures ${exiting}`));
155
+ if (exitOnFail) {
156
+ process.exit(result);
157
+ }
158
+ }
159
+ }, "checkResult");
160
+
161
+ // src/lib/deleteGlob.ts
162
+ import fs from "node:fs";
163
+ import { glob } from "glob";
164
+ var deleteGlob = /* @__PURE__ */ __name((globPath) => {
165
+ const files = glob.sync(globPath);
166
+ for (const file of files) {
167
+ fs.rmSync(file, {
168
+ recursive: true,
169
+ force: true
170
+ });
171
+ }
172
+ }, "deleteGlob");
173
+
174
+ // src/lib/loadConfig.ts
175
+ var import_deepmerge = __toESM(require_cjs(), 1);
176
+ import chalk2 from "chalk";
177
+ import { cosmiconfig } from "cosmiconfig";
178
+ var config;
179
+ var loadConfig = /* @__PURE__ */ __name(async (params) => {
180
+ if (config) {
181
+ return (0, import_deepmerge.default)(config, params ?? {});
182
+ }
183
+ const cosmicConfigResult = await cosmiconfig("xy", {
184
+ cache: true
185
+ }).search();
186
+ config = cosmicConfigResult?.config;
187
+ const configFilePath = cosmicConfigResult?.filepath;
188
+ if (configFilePath) {
189
+ console.log(chalk2.gray(`Loading config from ${configFilePath}`));
190
+ }
191
+ return (0, import_deepmerge.default)(config, params ?? {});
192
+ }, "loadConfig");
193
+
194
+ // src/actions/package/clean-outputs.ts
8
195
  var packageCleanOutputs = /* @__PURE__ */ __name(async () => {
9
196
  const pkg = process.env.INIT_CWD ?? ".";
10
197
  const pkgName = process.env.npm_package_name;
@@ -13,25 +200,24 @@ var packageCleanOutputs = /* @__PURE__ */ __name(async () => {
13
200
  path.join(pkg, "build"),
14
201
  path.join(pkg, "docs")
15
202
  ];
16
- console.log(chalk.green(`Cleaning Outputs [${pkgName}]`));
17
- await Promise.all(folders.map((folder) => rimraf(folder)));
203
+ console.log(chalk3.green(`Cleaning Outputs [${pkgName}]`));
204
+ await Promise.all(folders.map((folder) => deleteGlob(folder)));
18
205
  return 0;
19
206
  }, "packageCleanOutputs");
20
207
 
21
208
  // src/actions/package/clean-typescript.ts
22
209
  import path2 from "node:path";
23
- import chalk2 from "chalk";
24
- import { rimraf as rimraf2 } from "rimraf";
210
+ import chalk4 from "chalk";
25
211
  var packageCleanTypescript = /* @__PURE__ */ __name(async () => {
26
212
  const pkg = process.env.INIT_CWD ?? ".";
27
213
  const pkgName = process.env.npm_package_name;
28
- console.log(chalk2.green(`Cleaning Typescript [${pkgName}]`));
214
+ console.log(chalk4.green(`Cleaning Typescript [${pkgName}]`));
29
215
  const files = [
30
216
  path2.join(pkg, "*.tsbuildinfo"),
31
217
  path2.join(pkg, ".tsconfig.*"),
32
218
  path2.join(pkg, ".eslintcache")
33
219
  ];
34
- await Promise.all(files.map((file) => rimraf2(file)));
220
+ await Promise.all(files.map((file) => deleteGlob(file)));
35
221
  return 0;
36
222
  }, "packageCleanTypescript");
37
223
 
@@ -44,47 +230,17 @@ var packageClean = /* @__PURE__ */ __name(async () => {
44
230
  }, "packageClean");
45
231
 
46
232
  // src/actions/package/compile/compile.ts
47
- import chalk7 from "chalk";
48
-
49
- // src/lib/checkResult.ts
50
- import chalk3 from "chalk";
51
- var checkResult = /* @__PURE__ */ __name((name, result, level = "error", exitOnFail = false) => {
52
- if (result) {
53
- const exiting = exitOnFail ? "[Exiting Process]" : "[Continuing]";
54
- const chalkFunc = level === "error" ? chalk3.red : chalk3.yellow;
55
- console[level](chalkFunc(`${name} had ${result} failures ${exiting}`));
56
- if (exitOnFail) {
57
- process.exit(result);
58
- }
59
- }
60
- }, "checkResult");
61
-
62
- // src/lib/loadConfig.ts
63
- import chalk4 from "chalk";
64
- import { cosmiconfig } from "cosmiconfig";
65
- import merge from "lodash/merge.js";
66
- var config;
67
- var loadConfig = /* @__PURE__ */ __name(async (params) => {
68
- if (config) {
69
- return merge({}, config, params);
70
- }
71
- const cosmicConfigResult = await cosmiconfig("xy", {
72
- cache: true
73
- }).search();
74
- config = cosmicConfigResult?.config;
75
- const configFilePath = cosmicConfigResult?.filepath;
76
- if (configFilePath) {
77
- console.log(chalk4.gray(`Loading config from ${configFilePath}`));
78
- }
79
- return merge({}, config, params);
80
- }, "loadConfig");
233
+ import chalk8 from "chalk";
81
234
 
82
235
  // src/actions/package/publint.ts
83
- import { promises as fs } from "node:fs";
236
+ import { promises as fs2 } from "node:fs";
84
237
  import chalk5 from "chalk";
238
+ import sortPackageJson from "sort-package-json";
85
239
  var packagePublint = /* @__PURE__ */ __name(async (params) => {
86
240
  const pkgDir = process.env.INIT_CWD;
87
- const pkg = JSON.parse(await fs.readFile(`${pkgDir}/package.json`, "utf8"));
241
+ const sortedPkg = sortPackageJson(await fs2.readFile(`${pkgDir}/package.json`, "utf8"));
242
+ await fs2.writeFile(`${pkgDir}/package.json`, sortedPkg);
243
+ const pkg = JSON.parse(await fs2.readFile(`${pkgDir}/package.json`, "utf8"));
88
244
  console.log(chalk5.green(`Publint: ${pkg.name}`));
89
245
  console.log(chalk5.gray(pkgDir));
90
246
  const { publint } = await import("publint");
@@ -127,17 +283,14 @@ import { createProgramFromConfig } from "tsc-prog";
127
283
  import { DiagnosticCategory, formatDiagnosticsWithColorAndContext, getLineAndCharacterOfPosition, getPreEmitDiagnostics } from "typescript";
128
284
 
129
285
  // src/actions/package/compile/getCompilerOptions.ts
286
+ var import_deepmerge2 = __toESM(require_cjs(), 1);
130
287
  import { createRequire } from "node:module";
131
- import merge2 from "lodash/merge.js";
132
288
  import { findConfigFile, readConfigFile, sys } from "typescript";
133
289
  var getNested = /* @__PURE__ */ __name((config2) => {
134
290
  if (config2.extends) {
135
291
  const require2 = createRequire(import.meta.url);
136
292
  const opts = require2(config2.extends);
137
- return {
138
- ...getNested(opts),
139
- ...config2.compilerOptions
140
- };
293
+ return (0, import_deepmerge2.default)(getNested(opts), config2.compilerOptions ?? {});
141
294
  }
142
295
  return config2.compilerOptions;
143
296
  }, "getNested");
@@ -145,10 +298,10 @@ var getCompilerOptionsJSONFollowExtends = /* @__PURE__ */ __name((filename) => {
145
298
  const config2 = readConfigFile(filename, sys.readFile).config;
146
299
  return getNested(config2);
147
300
  }, "getCompilerOptionsJSONFollowExtends");
148
- var getCompilerOptions = /* @__PURE__ */ __name((options, tsconfig = "tsconfig.json") => {
301
+ var getCompilerOptions = /* @__PURE__ */ __name((options = {}, tsconfig = "tsconfig.json") => {
149
302
  const configFileName = findConfigFile("./", sys.fileExists, tsconfig);
150
- const configFileCompilerOptions = configFileName ? getCompilerOptionsJSONFollowExtends(configFileName) : void 0;
151
- return merge2({}, configFileCompilerOptions, options);
303
+ const configFileCompilerOptions = (configFileName ? getCompilerOptionsJSONFollowExtends(configFileName) : void 0) ?? {};
304
+ return (0, import_deepmerge2.default)(configFileCompilerOptions, options);
152
305
  }, "getCompilerOptions");
153
306
 
154
307
  // src/actions/package/compile/packageCompileTsc.ts
@@ -207,9 +360,9 @@ var packageCompileTsc = /* @__PURE__ */ __name(async (noEmit, config2, compilerO
207
360
  import { build, defineConfig } from "tsup";
208
361
 
209
362
  // src/actions/package/compile/inputs.ts
210
- import { glob } from "glob";
363
+ import { glob as glob2 } from "glob";
211
364
  var getAllInputs2 = /* @__PURE__ */ __name((folder) => {
212
- return glob.sync(`${folder}/**/*.*`, {
365
+ return glob2.sync(`${folder}/**/*.*`, {
213
366
  ignore: [
214
367
  "**/*.spec.*",
215
368
  "**/*.stories.*",
@@ -242,8 +395,69 @@ var buildEntries = /* @__PURE__ */ __name((folder, entryMode, verbose = false) =
242
395
  }
243
396
  }, "buildEntries");
244
397
 
398
+ // src/actions/package/compile/packageCompileTscTypes.ts
399
+ import { cwd as cwd2 } from "node:process";
400
+ import chalk7 from "chalk";
401
+ import { createProgramFromConfig as createProgramFromConfig2 } from "tsc-prog";
402
+ import { DiagnosticCategory as DiagnosticCategory2 } from "typescript";
403
+ var packageCompileTscTypes = /* @__PURE__ */ __name((folder = "src", { verbose } = {}, compilerOptionsParam) => {
404
+ const pkg = process.env.INIT_CWD ?? cwd2();
405
+ if (verbose) {
406
+ console.log(`Compiling types with TSC [${pkg}]`);
407
+ }
408
+ const compilerOptions = {
409
+ ...getCompilerOptions({
410
+ declaration: true,
411
+ emitDeclarationOnly: true,
412
+ outDir: "dist",
413
+ removeComments: true,
414
+ skipDefaultLibCheck: true,
415
+ skipLibCheck: true,
416
+ sourceMap: true
417
+ }),
418
+ ...compilerOptionsParam
419
+ };
420
+ const files = buildEntries(folder, "all");
421
+ const result = createProgramFromConfig2({
422
+ basePath: pkg ?? cwd2(),
423
+ compilerOptions,
424
+ exclude: [
425
+ "dist",
426
+ "docs",
427
+ "**/*.spec.*",
428
+ "**/*.stories.*",
429
+ "src/**/spec/**/*"
430
+ ],
431
+ files
432
+ }).emit();
433
+ const diagResults = result.diagnostics.length;
434
+ for (const diag of result.diagnostics) {
435
+ switch (diag.category) {
436
+ case DiagnosticCategory2.Error: {
437
+ console.error(chalk7.red(diag.messageText));
438
+ console.error(chalk7.grey(pkg));
439
+ console.error(chalk7.blue(diag.file?.fileName));
440
+ break;
441
+ }
442
+ case DiagnosticCategory2.Warning: {
443
+ console.error(chalk7.yellow(diag.messageText));
444
+ console.error(chalk7.grey(pkg));
445
+ console.error(chalk7.blue(diag.file?.fileName));
446
+ break;
447
+ }
448
+ case DiagnosticCategory2.Suggestion: {
449
+ console.error(chalk7.white(diag.messageText));
450
+ console.error(chalk7.grey(pkg));
451
+ console.error(chalk7.blue(diag.file?.fileName));
452
+ break;
453
+ }
454
+ }
455
+ }
456
+ return diagResults;
457
+ }, "packageCompileTscTypes");
458
+
245
459
  // src/actions/package/compile/packageCompileTsup.ts
246
- var compileFolder = /* @__PURE__ */ __name(async (folder, entryMode = "single", options, _verbose) => {
460
+ var compileFolder = /* @__PURE__ */ __name(async (folder, entryMode = "single", options, verbose) => {
247
461
  const outDir = options?.outDir ?? "dist";
248
462
  const entry = buildEntries(folder, entryMode);
249
463
  const optionsResult = defineConfig({
@@ -257,7 +471,7 @@ var compileFolder = /* @__PURE__ */ __name(async (folder, entryMode = "single",
257
471
  ],
258
472
  outDir,
259
473
  silent: true,
260
- sourcemap: true,
474
+ sourcemap: false,
261
475
  splitting: false,
262
476
  tsconfig: "tsconfig.json",
263
477
  ...options
@@ -273,7 +487,11 @@ var compileFolder = /* @__PURE__ */ __name(async (folder, entryMode = "single",
273
487
  ];
274
488
  }))).flat();
275
489
  await Promise.all(optionsList.map((options2) => build(options2)));
276
- return 0;
490
+ return packageCompileTscTypes(folder, {
491
+ verbose
492
+ }, {
493
+ outDir
494
+ });
277
495
  }, "compileFolder");
278
496
  var packageCompileTsup = /* @__PURE__ */ __name(async (config2) => {
279
497
  const compile = config2?.compile;
@@ -360,7 +578,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config2) => {
360
578
  // src/actions/package/compile/compile.ts
361
579
  var packageCompile = /* @__PURE__ */ __name(async (inConfig = {}) => {
362
580
  const pkg = process.env.INIT_CWD;
363
- console.log(chalk7.green(`Compiling ${pkg}`));
581
+ console.log(chalk8.green(`Compiling ${pkg}`));
364
582
  const config2 = await loadConfig(inConfig);
365
583
  const publint = config2.publint;
366
584
  const mode = config2.compile?.mode ?? "tsup";
@@ -380,7 +598,7 @@ var packageCompile = /* @__PURE__ */ __name(async (inConfig = {}) => {
380
598
 
381
599
  // src/actions/package/copy-assets.ts
382
600
  import path3 from "node:path/posix";
383
- import chalk8 from "chalk";
601
+ import chalk9 from "chalk";
384
602
  import cpy from "cpy";
385
603
  var copyTargetAssets = /* @__PURE__ */ __name(async (target, name, location) => {
386
604
  try {
@@ -399,7 +617,7 @@ var copyTargetAssets = /* @__PURE__ */ __name(async (target, name, location) =>
399
617
  flat: false
400
618
  });
401
619
  if (values.length > 0) {
402
- console.log(chalk8.green(`Copying Assets [${target.toUpperCase()}] - ${name} - ${location}`));
620
+ console.log(chalk9.green(`Copying Assets [${target.toUpperCase()}] - ${name} - ${location}`));
403
621
  }
404
622
  for (const value of values) {
405
623
  console.log(`${value.split("/").pop()} => ./dist/${target}`);
@@ -429,8 +647,8 @@ var packageCopyAssets = /* @__PURE__ */ __name(async ({ target }) => {
429
647
 
430
648
  // src/actions/package/deps.ts
431
649
  import { existsSync, readFileSync } from "node:fs";
432
- import { cwd as cwd2 } from "node:process";
433
- import chalk9 from "chalk";
650
+ import { cwd as cwd3 } from "node:process";
651
+ import chalk10 from "chalk";
434
652
  import depcheck from "depcheck";
435
653
  var special = depcheck.special;
436
654
  var defaultIgnorePatterns = [
@@ -457,21 +675,21 @@ var defaultIgnoreDevPatterns = [
457
675
  var reportUnused = /* @__PURE__ */ __name((name, unused) => {
458
676
  if (unused.length > 0) {
459
677
  const message = [
460
- chalk9.yellow(`${unused.length} Unused ${name}`)
678
+ chalk10.yellow(`${unused.length} Unused ${name}`)
461
679
  ];
462
- for (const value of unused) message.push(chalk9.gray(` ${value}`));
680
+ for (const value of unused) message.push(chalk10.gray(` ${value}`));
463
681
  console.log(message.join("\n"));
464
682
  }
465
683
  }, "reportUnused");
466
684
  var reportMissing = /* @__PURE__ */ __name((name, missing) => {
467
685
  if (Object.keys(missing).length > 0) {
468
686
  const message = [
469
- chalk9.yellow(`${Object.entries(missing).length} Missing ${name}`)
687
+ chalk10.yellow(`${Object.entries(missing).length} Missing ${name}`)
470
688
  ];
471
689
  for (const [key, value] of Object.entries(missing)) {
472
- message.push(`${key}`, chalk9.gray(` ${value.at(0)}`));
690
+ message.push(`${key}`, chalk10.gray(` ${value.at(0)}`));
473
691
  }
474
- console.log(chalk9.yellow(message.join("\n")));
692
+ console.log(chalk10.yellow(message.join("\n")));
475
693
  }
476
694
  }, "reportMissing");
477
695
  var analyzeDeps = /* @__PURE__ */ __name(async (pkg, ignoreMatches) => {
@@ -526,7 +744,7 @@ var analyzeDeps = /* @__PURE__ */ __name(async (pkg, ignoreMatches) => {
526
744
  };
527
745
  }, "analyzeDeps");
528
746
  var packageDeps = /* @__PURE__ */ __name(async () => {
529
- const pkg = process.env.INIT_CWD ?? cwd2();
747
+ const pkg = process.env.INIT_CWD ?? cwd3();
530
748
  const pkgName = process.env.npm_package_name;
531
749
  const packageContent = existsSync(`${pkg}/package.json`) ? JSON.parse(readFileSync(`${pkg}/package.json`, {
532
750
  encoding: "utf8"
@@ -576,10 +794,10 @@ var packageDeps = /* @__PURE__ */ __name(async () => {
576
794
  reportUnused("dependencies", unusedDeps);
577
795
  reportUnused("devDependencies", unusedDevDeps);
578
796
  if (Object.entries(invalidDirs).length > 0) {
579
- for (const [key, value] of Object.entries(invalidDirs)) console.warn(chalk9.gray(`Invalid Dir: ${key}: ${value}`));
797
+ for (const [key, value] of Object.entries(invalidDirs)) console.warn(chalk10.gray(`Invalid Dir: ${key}: ${value}`));
580
798
  }
581
799
  if (Object.entries(invalidFiles).length > 0) {
582
- for (const [key, value] of Object.entries(invalidFiles)) console.warn(chalk9.gray(`Invalid File: ${key}: ${value}`));
800
+ for (const [key, value] of Object.entries(invalidFiles)) console.warn(chalk10.gray(`Invalid File: ${key}: ${value}`));
583
801
  }
584
802
  reportMissing("dependencies", missingDepsObject);
585
803
  reportMissing("devDependencies", missingDevDepsObject);
@@ -590,7 +808,7 @@ var packageDeps = /* @__PURE__ */ __name(async () => {
590
808
  // src/actions/package/gen-docs.ts
591
809
  import { existsSync as existsSync2 } from "node:fs";
592
810
  import path4 from "node:path";
593
- import chalk10 from "chalk";
811
+ import chalk11 from "chalk";
594
812
  import { Application, ArgumentsReader, TSConfigReader, TypeDocReader } from "typedoc";
595
813
  var ExitCodes = {
596
814
  CompileError: 3,
@@ -692,7 +910,7 @@ var runTypeDoc = /* @__PURE__ */ __name(async (app) => {
692
910
  return ExitCodes.OutputError;
693
911
  }
694
912
  }
695
- console.log(chalk10.green(`${pkgName} - Ok`));
913
+ console.log(chalk11.green(`${pkgName} - Ok`));
696
914
  return ExitCodes.Ok;
697
915
  }, "runTypeDoc");
698
916