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