@xylabs/ts-scripts-yarn3 2.20.0-rc.1 → 3.0.0-rc.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.
- package/dist/actions/build.mjs +133 -0
- package/dist/actions/build.mjs.map +1 -0
- package/dist/actions/clean-docs.mjs +29 -0
- package/dist/actions/clean-docs.mjs.map +1 -0
- package/dist/actions/clean-eslint.mjs +15 -0
- package/dist/actions/clean-eslint.mjs.map +1 -0
- package/dist/actions/clean-jest.mjs +100 -0
- package/dist/actions/clean-jest.mjs.map +1 -0
- package/dist/actions/clean.mjs +210 -0
- package/dist/actions/clean.mjs.map +1 -0
- package/dist/actions/compile.mjs +124 -0
- package/dist/actions/compile.mjs.map +1 -0
- package/dist/actions/copy-assets.mjs +71 -0
- package/dist/actions/copy-assets.mjs.map +1 -0
- package/dist/actions/cycle.mjs +100 -0
- package/dist/actions/cycle.mjs.map +1 -0
- package/dist/actions/dead.mjs +99 -0
- package/dist/actions/dead.mjs.map +1 -0
- package/dist/actions/deploy-major.mjs +106 -0
- package/dist/actions/deploy-major.mjs.map +1 -0
- package/dist/actions/deploy-minor.mjs +106 -0
- package/dist/actions/deploy-minor.mjs.map +1 -0
- package/dist/actions/deploy-next.mjs +106 -0
- package/dist/actions/deploy-next.mjs.map +1 -0
- package/dist/actions/deploy.mjs +107 -0
- package/dist/actions/deploy.mjs.map +1 -0
- package/dist/actions/deps.mjs +121 -0
- package/dist/actions/deps.mjs.map +1 -0
- package/dist/actions/dupdeps.mjs +181 -0
- package/dist/actions/dupdeps.mjs.map +1 -0
- package/dist/actions/fix.mjs +99 -0
- package/dist/actions/fix.mjs.map +1 -0
- package/dist/actions/gen-docs.mjs +110 -0
- package/dist/actions/gen-docs.mjs.map +1 -0
- package/dist/actions/gitignore-gen.mjs +87 -0
- package/dist/actions/gitignore-gen.mjs.map +1 -0
- package/dist/actions/gitlint-fix.mjs +27 -0
- package/dist/actions/gitlint-fix.mjs.map +1 -0
- package/dist/actions/gitlint.mjs +48 -0
- package/dist/actions/gitlint.mjs.map +1 -0
- package/dist/actions/index.mjs +1405 -0
- package/dist/actions/index.mjs.map +1 -0
- package/dist/actions/license.mjs +87 -0
- package/dist/actions/license.mjs.map +1 -0
- package/dist/actions/lint-clean.mjs +147 -0
- package/dist/actions/lint-clean.mjs.map +1 -0
- package/dist/actions/lint-profile.mjs +99 -0
- package/dist/actions/lint-profile.mjs.map +1 -0
- package/dist/actions/lint.mjs +137 -0
- package/dist/actions/lint.mjs.map +1 -0
- package/dist/actions/npmignore-gen.mjs +87 -0
- package/dist/actions/npmignore-gen.mjs.map +1 -0
- package/dist/actions/package/clean-outputs.mjs +18 -0
- package/dist/actions/package/clean-outputs.mjs.map +1 -0
- package/dist/actions/package/clean-typescript.mjs +18 -0
- package/dist/actions/package/clean-typescript.mjs.map +1 -0
- package/dist/actions/package/clean.mjs +38 -0
- package/dist/actions/package/clean.mjs.map +1 -0
- package/dist/actions/package/compile.mjs +63 -0
- package/dist/actions/package/compile.mjs.map +1 -0
- package/dist/actions/package/copy-assets.mjs +43 -0
- package/dist/actions/package/copy-assets.mjs.map +1 -0
- package/dist/actions/package/deps.mjs +96 -0
- package/dist/actions/package/deps.mjs.map +1 -0
- package/dist/actions/package/gen-docs.mjs +112 -0
- package/dist/actions/package/gen-docs.mjs.map +1 -0
- package/dist/actions/package/index.mjs +400 -0
- package/dist/actions/package/index.mjs.map +1 -0
- package/dist/actions/package/publint.mjs +21 -0
- package/dist/actions/package/publint.mjs.map +1 -0
- package/dist/actions/package/recompile.mjs +103 -0
- package/dist/actions/package/recompile.mjs.map +1 -0
- package/dist/actions/package/tsup.mjs +31 -0
- package/dist/actions/package/tsup.mjs.map +1 -0
- package/dist/actions/package/types.d.js +2 -0
- package/dist/actions/package/types.d.js.map +1 -0
- package/dist/actions/package/types.d.mjs +1 -0
- package/dist/actions/package/types.d.mjs.map +1 -0
- package/dist/actions/publint.mjs +168 -0
- package/dist/actions/publint.mjs.map +1 -0
- package/dist/actions/rebuild.mjs +102 -0
- package/dist/actions/rebuild.mjs.map +1 -0
- package/dist/actions/recompile.mjs +140 -0
- package/dist/actions/recompile.mjs.map +1 -0
- package/dist/actions/reinstall.mjs +130 -0
- package/dist/actions/reinstall.mjs.map +1 -0
- package/dist/actions/relint.mjs +128 -0
- package/dist/actions/relint.mjs.map +1 -0
- package/dist/actions/retest.mjs +102 -0
- package/dist/actions/retest.mjs.map +1 -0
- package/dist/actions/sonar.mjs +99 -0
- package/dist/actions/sonar.mjs.map +1 -0
- package/dist/actions/statics.mjs +181 -0
- package/dist/actions/statics.mjs.map +1 -0
- package/dist/actions/test.mjs +99 -0
- package/dist/actions/test.mjs.map +1 -0
- package/dist/actions/up.mjs +99 -0
- package/dist/actions/up.mjs.map +1 -0
- package/dist/actions/updo.mjs +103 -0
- package/dist/actions/updo.mjs.map +1 -0
- package/dist/actions/upplug.mjs +104 -0
- package/dist/actions/upplug.mjs.map +1 -0
- package/dist/actions/upyarn.mjs +99 -0
- package/dist/actions/upyarn.mjs.map +1 -0
- package/dist/actions/yarn3only.mjs +60 -0
- package/dist/actions/yarn3only.mjs.map +1 -0
- package/dist/bin/build.mjs +13 -0
- package/dist/bin/build.mjs.map +1 -0
- package/dist/bin/clean.mjs +13 -0
- package/dist/bin/clean.mjs.map +1 -0
- package/dist/bin/compile.mjs +13 -0
- package/dist/bin/compile.mjs.map +1 -0
- package/dist/bin/cycle.mjs +13 -0
- package/dist/bin/cycle.mjs.map +1 -0
- package/dist/bin/dead.mjs +13 -0
- package/dist/bin/dead.mjs.map +1 -0
- package/dist/bin/deploy-major.mjs +13 -0
- package/dist/bin/deploy-major.mjs.map +1 -0
- package/dist/bin/deploy-minor.mjs +13 -0
- package/dist/bin/deploy-minor.mjs.map +1 -0
- package/dist/bin/deploy-next.mjs +13 -0
- package/dist/bin/deploy-next.mjs.map +1 -0
- package/dist/bin/deploy.mjs +13 -0
- package/dist/bin/deploy.mjs.map +1 -0
- package/dist/bin/deps.mjs +13 -0
- package/dist/bin/deps.mjs.map +1 -0
- package/dist/bin/fix.mjs +13 -0
- package/dist/bin/fix.mjs.map +1 -0
- package/dist/bin/gen-docs.mjs +13 -0
- package/dist/bin/gen-docs.mjs.map +1 -0
- package/dist/bin/gitlint-fix.mjs +13 -0
- package/dist/bin/gitlint-fix.mjs.map +1 -0
- package/dist/bin/gitlint.mjs +13 -0
- package/dist/bin/gitlint.mjs.map +1 -0
- package/dist/bin/license.mjs +13 -0
- package/dist/bin/license.mjs.map +1 -0
- package/dist/bin/lint-clean.mjs +13 -0
- package/dist/bin/lint-clean.mjs.map +1 -0
- package/dist/bin/lint-fast.mjs +13 -0
- package/dist/bin/lint-fast.mjs.map +1 -0
- package/dist/bin/lint-profile.mjs +13 -0
- package/dist/bin/lint-profile.mjs.map +1 -0
- package/dist/bin/lint.mjs +13 -0
- package/dist/bin/lint.mjs.map +1 -0
- package/dist/bin/package/clean-outputs.mjs +20 -0
- package/dist/bin/package/clean-outputs.mjs.map +1 -0
- package/dist/bin/package/clean-typescript.mjs +20 -0
- package/dist/bin/package/clean-typescript.mjs.map +1 -0
- package/dist/bin/package/clean.mjs +40 -0
- package/dist/bin/package/clean.mjs.map +1 -0
- package/dist/bin/package/compile.mjs +71 -0
- package/dist/bin/package/compile.mjs.map +1 -0
- package/dist/bin/package/copy-assets-cjs.mjs +51 -0
- package/dist/bin/package/copy-assets-cjs.mjs.map +1 -0
- package/dist/bin/package/copy-assets-esm.mjs +51 -0
- package/dist/bin/package/copy-assets-esm.mjs.map +1 -0
- package/dist/bin/package/deps.mjs +102 -0
- package/dist/bin/package/deps.mjs.map +1 -0
- package/dist/bin/package/gen-docs.mjs +114 -0
- package/dist/bin/package/gen-docs.mjs.map +1 -0
- package/dist/bin/package/publint.mjs +29 -0
- package/dist/bin/package/publint.mjs.map +1 -0
- package/dist/bin/package/recompile.mjs +111 -0
- package/dist/bin/package/recompile.mjs.map +1 -0
- package/dist/bin/package/tsup.mjs +39 -0
- package/dist/bin/package/tsup.mjs.map +1 -0
- package/dist/bin/publint.mjs +13 -0
- package/dist/bin/publint.mjs.map +1 -0
- package/dist/bin/rebuild.mjs +13 -0
- package/dist/bin/rebuild.mjs.map +1 -0
- package/dist/bin/recompile.mjs +13 -0
- package/dist/bin/recompile.mjs.map +1 -0
- package/dist/bin/reinstall.mjs +13 -0
- package/dist/bin/reinstall.mjs.map +1 -0
- package/dist/bin/relint.mjs +13 -0
- package/dist/bin/relint.mjs.map +1 -0
- package/dist/bin/sonar.mjs +13 -0
- package/dist/bin/sonar.mjs.map +1 -0
- package/dist/bin/test.mjs +13 -0
- package/dist/bin/test.mjs.map +1 -0
- package/dist/bin/tsconfig-gen-clean.mjs +13 -0
- package/dist/bin/tsconfig-gen-clean.mjs.map +1 -0
- package/dist/bin/tsconfig-gen.mjs +13 -0
- package/dist/bin/tsconfig-gen.mjs.map +1 -0
- package/dist/bin/up.mjs +13 -0
- package/dist/bin/up.mjs.map +1 -0
- package/dist/bin/updo.mjs +13 -0
- package/dist/bin/updo.mjs.map +1 -0
- package/dist/bin/upplug.mjs +13 -0
- package/dist/bin/upplug.mjs.map +1 -0
- package/dist/bin/upyarn.mjs +13 -0
- package/dist/bin/upyarn.mjs.map +1 -0
- package/dist/bin/xy-ts.mjs +1465 -0
- package/dist/bin/xy-ts.mjs.map +1 -0
- package/dist/bin/xy.mjs +1465 -0
- package/dist/bin/xy.mjs.map +1 -0
- package/dist/bin/yarn3only.mjs +13 -0
- package/dist/bin/yarn3only.mjs.map +1 -0
- package/dist/index.d.mts +299 -0
- package/dist/index.mjs +2024 -0
- package/dist/index.mjs.map +1 -0
- package/dist/lib/checkResult.mjs +16 -0
- package/dist/lib/checkResult.mjs.map +1 -0
- package/dist/lib/createBuildConfig.mjs +45 -0
- package/dist/lib/createBuildConfig.mjs.map +1 -0
- package/dist/lib/defaultBuildConfig.mjs +13 -0
- package/dist/lib/defaultBuildConfig.mjs.map +1 -0
- package/dist/lib/dependencies/DuplicateDetector.mjs +77 -0
- package/dist/lib/dependencies/DuplicateDetector.mjs.map +1 -0
- package/dist/lib/dependencies/detectDuplicateDependencies.mjs +162 -0
- package/dist/lib/dependencies/detectDuplicateDependencies.mjs.map +1 -0
- package/dist/lib/dependencies/index.mjs +163 -0
- package/dist/lib/dependencies/index.mjs.map +1 -0
- package/dist/lib/file/ReadFileSyncOptions.mjs +6 -0
- package/dist/lib/file/ReadFileSyncOptions.mjs.map +1 -0
- package/dist/lib/file/constants.mjs +8 -0
- package/dist/lib/file/constants.mjs.map +1 -0
- package/dist/lib/file/fileLines.mjs +29 -0
- package/dist/lib/file/fileLines.mjs.map +1 -0
- package/dist/lib/file/index.mjs +39 -0
- package/dist/lib/file/index.mjs.map +1 -0
- package/dist/lib/file/tryReadFileSync.mjs +14 -0
- package/dist/lib/file/tryReadFileSync.mjs.map +1 -0
- package/dist/lib/generateIgnoreFiles.mjs +83 -0
- package/dist/lib/generateIgnoreFiles.mjs.map +1 -0
- package/dist/lib/index.mjs +1562 -0
- package/dist/lib/index.mjs.map +1 -0
- package/dist/lib/jsonFormatters.mjs +11 -0
- package/dist/lib/jsonFormatters.mjs.map +1 -0
- package/dist/lib/parsedPackageJSON.mjs +11 -0
- package/dist/lib/parsedPackageJSON.mjs.map +1 -0
- package/dist/lib/processEx.mjs +36 -0
- package/dist/lib/processEx.mjs.map +1 -0
- package/dist/lib/runSteps.mjs +96 -0
- package/dist/lib/runSteps.mjs.map +1 -0
- package/dist/lib/runStepsAsync.mjs +113 -0
- package/dist/lib/runStepsAsync.mjs.map +1 -0
- package/dist/lib/runXy.mjs +101 -0
- package/dist/lib/runXy.mjs.map +1 -0
- package/dist/lib/runXyWithWarning.mjs +11 -0
- package/dist/lib/runXyWithWarning.mjs.map +1 -0
- package/dist/lib/safeExit.mjs +61 -0
- package/dist/lib/safeExit.mjs.map +1 -0
- package/dist/lib/string/empty.mjs +8 -0
- package/dist/lib/string/empty.mjs.map +1 -0
- package/dist/lib/string/index.mjs +12 -0
- package/dist/lib/string/index.mjs.map +1 -0
- package/dist/lib/string/union.mjs +6 -0
- package/dist/lib/string/union.mjs.map +1 -0
- package/dist/lib/withErrnoException.mjs +13 -0
- package/dist/lib/withErrnoException.mjs.map +1 -0
- package/dist/lib/withError.mjs +8 -0
- package/dist/lib/withError.mjs.map +1 -0
- package/dist/lib/xy/index.mjs +1471 -0
- package/dist/lib/xy/index.mjs.map +1 -0
- package/dist/lib/xy/xy.mjs +1465 -0
- package/dist/lib/xy/xy.mjs.map +1 -0
- package/dist/lib/xy/xyBuildCommands.mjs +393 -0
- package/dist/lib/xy/xyBuildCommands.mjs.map +1 -0
- package/dist/lib/xy/xyCommonCommands.mjs +579 -0
- package/dist/lib/xy/xyCommonCommands.mjs.map +1 -0
- package/dist/lib/xy/xyDeployCommands.mjs +192 -0
- package/dist/lib/xy/xyDeployCommands.mjs.map +1 -0
- package/dist/lib/xy/xyInstallCommands.mjs +459 -0
- package/dist/lib/xy/xyInstallCommands.mjs.map +1 -0
- package/dist/lib/xy/xyLintCommands.mjs +334 -0
- package/dist/lib/xy/xyLintCommands.mjs.map +1 -0
- package/dist/lib/xy/xyParseOptions.mjs +45 -0
- package/dist/lib/xy/xyParseOptions.mjs.map +1 -0
- package/dist/lib/yarn/index.mjs +49 -0
- package/dist/lib/yarn/index.mjs.map +1 -0
- package/dist/lib/yarn/isYarnVersionOrGreater.mjs +18 -0
- package/dist/lib/yarn/isYarnVersionOrGreater.mjs.map +1 -0
- package/dist/lib/yarn/workspace/Workspace.mjs +1 -0
- package/dist/lib/yarn/workspace/Workspace.mjs.map +1 -0
- package/dist/lib/yarn/workspace/index.mjs +25 -0
- package/dist/lib/yarn/workspace/index.mjs.map +1 -0
- package/dist/lib/yarn/workspace/yarnWorkspace.mjs +24 -0
- package/dist/lib/yarn/workspace/yarnWorkspace.mjs.map +1 -0
- package/dist/lib/yarn/workspace/yarnWorkspaces.mjs +16 -0
- package/dist/lib/yarn/workspace/yarnWorkspaces.mjs.map +1 -0
- package/dist/lib/yarn/yarnInitCwd.mjs +10 -0
- package/dist/lib/yarn/yarnInitCwd.mjs.map +1 -0
- package/package.json +5 -5
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
// src/actions/package/gen-docs.ts
|
|
2
|
+
import { existsSync } from "node:fs";
|
|
3
|
+
import path from "node:path";
|
|
4
|
+
import chalk from "chalk";
|
|
5
|
+
import { Application, ArgumentsReader, TSConfigReader, TypeDocReader } from "typedoc";
|
|
6
|
+
var ExitCodes = {
|
|
7
|
+
CompileError: 3,
|
|
8
|
+
ExceptionThrown: 6,
|
|
9
|
+
NoEntryPoints: 2,
|
|
10
|
+
Ok: 0,
|
|
11
|
+
OptionError: 1,
|
|
12
|
+
OutputError: 5,
|
|
13
|
+
ValidationError: 4
|
|
14
|
+
};
|
|
15
|
+
var packageGenDocs = async () => {
|
|
16
|
+
const pkg = process.env.INIT_CWD;
|
|
17
|
+
if (pkg) {
|
|
18
|
+
if (!existsSync(path.join(pkg, "typedoc.json"))) {
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
const app = new Application();
|
|
23
|
+
app.options.addReader(new ArgumentsReader(0));
|
|
24
|
+
app.options.addReader(new TypeDocReader());
|
|
25
|
+
app.options.addReader(new TSConfigReader());
|
|
26
|
+
app.options.addReader(new ArgumentsReader(300));
|
|
27
|
+
app.bootstrap({
|
|
28
|
+
entryPointStrategy: "resolve",
|
|
29
|
+
entryPoints: [`${pkg}/src`],
|
|
30
|
+
excludeExternals: true,
|
|
31
|
+
json: `${pkg}/dist/docs.json`,
|
|
32
|
+
logLevel: "Error",
|
|
33
|
+
tsconfig: `${pkg}/tsconfig.json`
|
|
34
|
+
});
|
|
35
|
+
return await runTypeDoc(app);
|
|
36
|
+
};
|
|
37
|
+
var runTypeDoc = async (app) => {
|
|
38
|
+
const pkgName = process.env.npm_package_name;
|
|
39
|
+
if (app.options.getValue("version")) {
|
|
40
|
+
console.log(app.toString());
|
|
41
|
+
return ExitCodes.Ok;
|
|
42
|
+
}
|
|
43
|
+
if (app.options.getValue("showConfig")) {
|
|
44
|
+
console.log(app.options.getRawValues());
|
|
45
|
+
return ExitCodes.Ok;
|
|
46
|
+
}
|
|
47
|
+
if (app.logger.hasErrors()) {
|
|
48
|
+
return ExitCodes.OptionError;
|
|
49
|
+
}
|
|
50
|
+
if (app.options.getValue("treatWarningsAsErrors") && app.logger.hasWarnings()) {
|
|
51
|
+
return ExitCodes.OptionError;
|
|
52
|
+
}
|
|
53
|
+
if (app.options.getValue("entryPoints").length === 0) {
|
|
54
|
+
app.logger.error("No entry points provided");
|
|
55
|
+
return ExitCodes.NoEntryPoints;
|
|
56
|
+
}
|
|
57
|
+
if (app.options.getValue("watch")) {
|
|
58
|
+
app.convertAndWatch(async (project2) => {
|
|
59
|
+
const out = app.options.getValue("out");
|
|
60
|
+
if (out) {
|
|
61
|
+
await app.generateDocs(project2, out);
|
|
62
|
+
}
|
|
63
|
+
const json = app.options.getValue("json");
|
|
64
|
+
if (json) {
|
|
65
|
+
await app.generateJson(project2, json);
|
|
66
|
+
}
|
|
67
|
+
if (!out && !json) {
|
|
68
|
+
await app.generateDocs(project2, "./docs");
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
return ExitCodes.Ok;
|
|
72
|
+
}
|
|
73
|
+
const project = app.convert();
|
|
74
|
+
if (!project) {
|
|
75
|
+
return ExitCodes.CompileError;
|
|
76
|
+
}
|
|
77
|
+
if (app.options.getValue("treatWarningsAsErrors") && app.logger.hasWarnings()) {
|
|
78
|
+
return ExitCodes.CompileError;
|
|
79
|
+
}
|
|
80
|
+
app.validate(project);
|
|
81
|
+
if (app.logger.hasErrors()) {
|
|
82
|
+
return ExitCodes.ValidationError;
|
|
83
|
+
}
|
|
84
|
+
if (app.options.getValue("treatWarningsAsErrors") && app.logger.hasWarnings()) {
|
|
85
|
+
return ExitCodes.ValidationError;
|
|
86
|
+
}
|
|
87
|
+
if (app.options.getValue("emit") !== "none") {
|
|
88
|
+
const out = app.options.getValue("out");
|
|
89
|
+
if (out) {
|
|
90
|
+
await app.generateDocs(project, out);
|
|
91
|
+
}
|
|
92
|
+
const json = app.options.getValue("json");
|
|
93
|
+
if (json) {
|
|
94
|
+
await app.generateJson(project, json);
|
|
95
|
+
}
|
|
96
|
+
if (!out && !json) {
|
|
97
|
+
await app.generateDocs(project, "./docs");
|
|
98
|
+
}
|
|
99
|
+
if (app.logger.hasErrors()) {
|
|
100
|
+
return ExitCodes.OutputError;
|
|
101
|
+
}
|
|
102
|
+
if (app.options.getValue("treatWarningsAsErrors") && app.logger.hasWarnings()) {
|
|
103
|
+
return ExitCodes.OutputError;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
console.log(chalk.green(`${pkgName} - Ok`));
|
|
107
|
+
return ExitCodes.Ok;
|
|
108
|
+
};
|
|
109
|
+
export {
|
|
110
|
+
packageGenDocs
|
|
111
|
+
};
|
|
112
|
+
//# sourceMappingURL=gen-docs.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/package/gen-docs.ts"],"sourcesContent":["/* eslint-disable complexity */\n/* eslint-disable max-statements */\nimport { existsSync } from 'node:fs'\nimport path from 'node:path'\n\nimport chalk from 'chalk'\nimport { Application, ArgumentsReader, TSConfigReader, TypeDocReader } from 'typedoc'\n\nconst ExitCodes = {\n CompileError: 3,\n ExceptionThrown: 6,\n NoEntryPoints: 2,\n Ok: 0,\n OptionError: 1,\n OutputError: 5,\n ValidationError: 4,\n}\n\nexport const packageGenDocs = async () => {\n const pkg = process.env.INIT_CWD\n\n if (pkg) {\n if (!existsSync(path.join(pkg, 'typedoc.json'))) {\n return\n }\n }\n\n const app = new Application()\n\n app.options.addReader(new ArgumentsReader(0))\n app.options.addReader(new TypeDocReader())\n app.options.addReader(new TSConfigReader())\n app.options.addReader(new ArgumentsReader(300))\n\n app.bootstrap({\n entryPointStrategy: 'resolve',\n entryPoints: [`${pkg}/src`],\n excludeExternals: true,\n json: `${pkg}/dist/docs.json`,\n logLevel: 'Error',\n tsconfig: `${pkg}/tsconfig.json`,\n })\n\n return await runTypeDoc(app)\n}\n\nconst runTypeDoc = async (app: Application) => {\n const pkgName = process.env.npm_package_name\n if (app.options.getValue('version')) {\n console.log(app.toString())\n return ExitCodes.Ok\n }\n\n if (app.options.getValue('showConfig')) {\n console.log(app.options.getRawValues())\n return ExitCodes.Ok\n }\n\n if (app.logger.hasErrors()) {\n return ExitCodes.OptionError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.OptionError\n }\n\n if (app.options.getValue('entryPoints').length === 0) {\n app.logger.error('No entry points provided')\n return ExitCodes.NoEntryPoints\n }\n\n if (app.options.getValue('watch')) {\n app.convertAndWatch(async (project) => {\n const out = app.options.getValue('out')\n if (out) {\n await app.generateDocs(project, out)\n }\n const json = app.options.getValue('json')\n if (json) {\n await app.generateJson(project, json)\n }\n\n if (!out && !json) {\n await app.generateDocs(project, './docs')\n }\n })\n return ExitCodes.Ok\n }\n\n const project = app.convert()\n if (!project) {\n return ExitCodes.CompileError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.CompileError\n }\n\n app.validate(project)\n if (app.logger.hasErrors()) {\n return ExitCodes.ValidationError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.ValidationError\n }\n\n if (app.options.getValue('emit') !== 'none') {\n const out = app.options.getValue('out')\n if (out) {\n await app.generateDocs(project, out)\n }\n const json = app.options.getValue('json')\n if (json) {\n await app.generateJson(project, json)\n }\n\n if (!out && !json) {\n await app.generateDocs(project, './docs')\n }\n\n if (app.logger.hasErrors()) {\n return ExitCodes.OutputError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.OutputError\n }\n }\n console.log(chalk.green(`${pkgName} - Ok`))\n return ExitCodes.Ok\n}\n"],"mappings":"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","names":["project"]}
|
|
@@ -0,0 +1,400 @@
|
|
|
1
|
+
// src/actions/package/clean-outputs.ts
|
|
2
|
+
import chalk from "chalk";
|
|
3
|
+
import { rmSync } from "fs";
|
|
4
|
+
import path from "path";
|
|
5
|
+
var packageCleanOutputs = () => {
|
|
6
|
+
const pkg = process.env.INIT_CWD ?? ".";
|
|
7
|
+
const pkgName = process.env.npm_package_name;
|
|
8
|
+
console.log(chalk.green(`Cleaning Outputs [${pkgName}]`));
|
|
9
|
+
const dist = path.join(pkg, "dist");
|
|
10
|
+
rmSync(dist, { force: true, recursive: true });
|
|
11
|
+
const build2 = path.join(pkg, "build");
|
|
12
|
+
rmSync(build2, { force: true, recursive: true });
|
|
13
|
+
return 0;
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
// src/actions/package/clean-typescript.ts
|
|
17
|
+
import chalk2 from "chalk";
|
|
18
|
+
import path2 from "path";
|
|
19
|
+
import { rimrafSync } from "rimraf";
|
|
20
|
+
var packageCleanTypescript = () => {
|
|
21
|
+
const pkg = process.env.INIT_CWD ?? ".";
|
|
22
|
+
const pkgName = process.env.npm_package_name;
|
|
23
|
+
console.log(chalk2.green(`Cleaning Typescript [${pkgName}]`));
|
|
24
|
+
const buildInfo = path2.join(pkg, "*.tsbuildinfo");
|
|
25
|
+
rimrafSync(buildInfo, { glob: true });
|
|
26
|
+
const tsConfig = path2.join(pkg, ".tsconfig.*");
|
|
27
|
+
rimrafSync(tsConfig, { glob: true });
|
|
28
|
+
return 0;
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
// src/actions/package/clean.ts
|
|
32
|
+
var packageClean = () => {
|
|
33
|
+
return packageCleanOutputs() + packageCleanTypescript();
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
// src/actions/package/compile.ts
|
|
37
|
+
import commonjs from "@rollup/plugin-commonjs";
|
|
38
|
+
import typescript from "@rollup/plugin-typescript";
|
|
39
|
+
import { copyFile } from "fs/promises";
|
|
40
|
+
import { rollup } from "rollup";
|
|
41
|
+
import externalDeps from "rollup-plugin-exclude-dependencies-from-bundle";
|
|
42
|
+
var buildIt = async () => {
|
|
43
|
+
await (await rollup({
|
|
44
|
+
input: "src/index.ts",
|
|
45
|
+
logLevel: "debug",
|
|
46
|
+
perf: true,
|
|
47
|
+
plugins: [
|
|
48
|
+
commonjs(),
|
|
49
|
+
externalDeps(),
|
|
50
|
+
typescript({
|
|
51
|
+
declaration: true,
|
|
52
|
+
declarationMap: true,
|
|
53
|
+
emitDeclarationOnly: false,
|
|
54
|
+
exclude: ["src/**/*.spec.*", "dist", "docs"],
|
|
55
|
+
outDir: "dist",
|
|
56
|
+
rootDir: "src",
|
|
57
|
+
tsconfig: "tsconfig.json"
|
|
58
|
+
})
|
|
59
|
+
]
|
|
60
|
+
})).write({
|
|
61
|
+
dir: "dist",
|
|
62
|
+
entryFileNames: (chunkInfo) => `${chunkInfo.name}.mjs`,
|
|
63
|
+
format: "esm",
|
|
64
|
+
sourcemap: true
|
|
65
|
+
});
|
|
66
|
+
await (await rollup({
|
|
67
|
+
input: "src/index.ts",
|
|
68
|
+
logLevel: "warn",
|
|
69
|
+
perf: true,
|
|
70
|
+
plugins: [
|
|
71
|
+
externalDeps(),
|
|
72
|
+
typescript({
|
|
73
|
+
declaration: true,
|
|
74
|
+
declarationMap: true,
|
|
75
|
+
emitDeclarationOnly: false,
|
|
76
|
+
exclude: ["src/**/*.spec.*", "dist", "docs"],
|
|
77
|
+
outDir: "dist",
|
|
78
|
+
rootDir: "src",
|
|
79
|
+
tsconfig: "tsconfig.json"
|
|
80
|
+
})
|
|
81
|
+
]
|
|
82
|
+
})).write({
|
|
83
|
+
dir: "dist",
|
|
84
|
+
entryFileNames: (chunkInfo) => `${chunkInfo.name}.js`,
|
|
85
|
+
format: "cjs",
|
|
86
|
+
sourcemap: true
|
|
87
|
+
});
|
|
88
|
+
await copyFile("./dist/index.d.ts", "./dist/index.d.mts");
|
|
89
|
+
await copyFile("./dist/index.d.ts.map", "./dist/index.d.mts.map");
|
|
90
|
+
return 0;
|
|
91
|
+
};
|
|
92
|
+
var packageCompile = async () => {
|
|
93
|
+
return await buildIt();
|
|
94
|
+
};
|
|
95
|
+
|
|
96
|
+
// src/actions/package/copy-assets.ts
|
|
97
|
+
import chalk3 from "chalk";
|
|
98
|
+
import cpy from "cpy";
|
|
99
|
+
import path3 from "path/posix";
|
|
100
|
+
var copyTargetAssets = async (target, name, location) => {
|
|
101
|
+
try {
|
|
102
|
+
const values = await cpy(
|
|
103
|
+
["**/*.jpg", "**/*.png", "**/*.gif", "**/*.svg", "**/*.webp", "**/*.sass", "**/*.scss", "**/*.gif", "**/*.css"],
|
|
104
|
+
`../dist/${target}`,
|
|
105
|
+
{
|
|
106
|
+
cwd: path3.join(location, "src"),
|
|
107
|
+
parents: true
|
|
108
|
+
}
|
|
109
|
+
);
|
|
110
|
+
if (values.length > 0) {
|
|
111
|
+
console.log(chalk3.green(`Copying Assets [${target.toUpperCase()}] - ${name} - ${location}`));
|
|
112
|
+
}
|
|
113
|
+
values.forEach((value) => {
|
|
114
|
+
console.log(`${value.split("/").pop()} => ./dist/${target}`);
|
|
115
|
+
});
|
|
116
|
+
return 0;
|
|
117
|
+
} catch (ex) {
|
|
118
|
+
const error = ex;
|
|
119
|
+
console.log(`Copy Assets Failed: ${name}: ${error.message}`);
|
|
120
|
+
return 1;
|
|
121
|
+
}
|
|
122
|
+
};
|
|
123
|
+
var packageCopyAssets = async ({ target }) => {
|
|
124
|
+
const pkg = process.env.INIT_CWD ?? "./";
|
|
125
|
+
const pkgName = process.env.npm_package_name ?? "Unknown";
|
|
126
|
+
switch (target) {
|
|
127
|
+
case "esm":
|
|
128
|
+
return await copyTargetAssets("esm", pkgName, pkg);
|
|
129
|
+
case "cjs":
|
|
130
|
+
return await copyTargetAssets("cjs", pkgName, pkg);
|
|
131
|
+
default:
|
|
132
|
+
return await copyTargetAssets("esm", pkgName, pkg) || await copyTargetAssets("cjs", pkgName, pkg);
|
|
133
|
+
}
|
|
134
|
+
};
|
|
135
|
+
|
|
136
|
+
// src/actions/package/deps.ts
|
|
137
|
+
import chalk5 from "chalk";
|
|
138
|
+
import depcheck, { special } from "depcheck";
|
|
139
|
+
import { existsSync, readFileSync } from "fs";
|
|
140
|
+
|
|
141
|
+
// src/lib/checkResult.ts
|
|
142
|
+
import chalk4 from "chalk";
|
|
143
|
+
var checkResult = (name, result, level = "error", exitOnFail = false) => {
|
|
144
|
+
if (result) {
|
|
145
|
+
const exiting = exitOnFail ? "[Exiting Process]" : "[Continuing]";
|
|
146
|
+
const chalkFunc = level === "error" ? chalk4.red : chalk4.yellow;
|
|
147
|
+
console[level](chalkFunc(`${name} had ${result} failures ${exiting}`));
|
|
148
|
+
if (exitOnFail) {
|
|
149
|
+
process.exit(result);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
};
|
|
153
|
+
|
|
154
|
+
// src/actions/package/deps.ts
|
|
155
|
+
var packageDeps = async () => {
|
|
156
|
+
const pkg = process.env.INIT_CWD;
|
|
157
|
+
const pkgName = process.env.npm_package_name;
|
|
158
|
+
const rawIgnore = existsSync(`${pkg}/.depcheckrc`) ? readFileSync(`${pkg}/.depcheckrc`, { encoding: "utf8" }).replace("ignores:", '"ignores":') : void 0;
|
|
159
|
+
let ignoreMatches = [];
|
|
160
|
+
try {
|
|
161
|
+
ignoreMatches = rawIgnore ? JSON.parse(`{${rawIgnore}}`).ignores : [];
|
|
162
|
+
} catch (ex) {
|
|
163
|
+
const error = ex;
|
|
164
|
+
console.log(`${pkgName} [${error.message}] Failed to parse .depcheckrc [${rawIgnore}]`);
|
|
165
|
+
}
|
|
166
|
+
ignoreMatches.push("@xylabs/ts-scripts-yarn3");
|
|
167
|
+
ignoreMatches.push("@xylabs/tsconfig");
|
|
168
|
+
ignoreMatches.push("@xylabs/tsconfig-dom");
|
|
169
|
+
ignoreMatches.push("@xylabs/tsconfig-react");
|
|
170
|
+
ignoreMatches.push("@xylabs/tsconfig-jest");
|
|
171
|
+
ignoreMatches.push("typescript");
|
|
172
|
+
const unusedList = await Promise.all([
|
|
173
|
+
depcheck(`${pkg}/.`, { ignoreMatches, ignorePatterns: ["*.stories.*", "*.spec.*", "*.d.ts", "dist", ".*"] }),
|
|
174
|
+
depcheck(`${pkg}/.`, {
|
|
175
|
+
ignoreMatches,
|
|
176
|
+
ignorePatterns: ["*.ts", "*.d.ts", "dist", ".*"],
|
|
177
|
+
specials: [special.eslint, special.babel, special.bin, special.prettier, special.jest, special.mocha]
|
|
178
|
+
})
|
|
179
|
+
]);
|
|
180
|
+
const unusedCode = unusedList[0];
|
|
181
|
+
const unusedTests = unusedList[1];
|
|
182
|
+
const unused = {
|
|
183
|
+
...unusedCode,
|
|
184
|
+
/* we only reports the unused devDeps if both are not using it */
|
|
185
|
+
devDependencies: unusedTests.devDependencies.filter((value) => !!unusedCode.devDependencies.find((devValue) => devValue === value))
|
|
186
|
+
};
|
|
187
|
+
const errorCount = unused.dependencies.length + unused.devDependencies.length + Object.entries(unused.invalidDirs).length + Object.entries(unused.invalidFiles).length + Object.entries(unused.missing).length;
|
|
188
|
+
if (errorCount > 0) {
|
|
189
|
+
console.log(`Deps [${pkgName}]`);
|
|
190
|
+
} else {
|
|
191
|
+
console.log(`Deps [${pkgName}] - Ok`);
|
|
192
|
+
}
|
|
193
|
+
if (unused.dependencies.length) {
|
|
194
|
+
const message = [chalk5.yellow(`${unused.dependencies.length} Unused dependencies`)];
|
|
195
|
+
unused.dependencies.forEach((value) => message.push(chalk5.gray(` ${value}`)));
|
|
196
|
+
console.log(message.join("\n"));
|
|
197
|
+
}
|
|
198
|
+
if (unused.devDependencies.length) {
|
|
199
|
+
const message = [chalk5.yellow(`${unused.devDependencies.length} Unused devDependencies`)];
|
|
200
|
+
unused.devDependencies.forEach((value) => message.push(chalk5.gray(` ${value}`)));
|
|
201
|
+
console.log(message.join("\n"));
|
|
202
|
+
}
|
|
203
|
+
if (Object.entries(unused.invalidDirs).length) {
|
|
204
|
+
Object.entries(unused.invalidDirs).forEach(([key, value]) => console.warn(chalk5.gray(`Invalid Dir: ${key}: ${value}`)));
|
|
205
|
+
}
|
|
206
|
+
if (Object.entries(unused.invalidFiles).length) {
|
|
207
|
+
Object.entries(unused.invalidFiles).forEach(([key, value]) => console.warn(chalk5.gray(`Invalid File: ${key}: ${value}`)));
|
|
208
|
+
}
|
|
209
|
+
if (Object.entries(unusedCode.missing).length) {
|
|
210
|
+
const message = [chalk5.yellow(`${Object.entries(unusedCode.missing).length} Missing dependencies`)];
|
|
211
|
+
Object.entries(unusedCode.missing).forEach(([key, value]) => {
|
|
212
|
+
message.push(`${key}`);
|
|
213
|
+
message.push(chalk5.gray(` ${value.pop()}`));
|
|
214
|
+
});
|
|
215
|
+
console.log(chalk5.yellow(message.join("\n")));
|
|
216
|
+
}
|
|
217
|
+
if (Object.entries(unusedTests.missing).length) {
|
|
218
|
+
const message = [chalk5.yellow(`${Object.entries(unusedTests.missing).length} Missing devDependencies`)];
|
|
219
|
+
Object.entries(unusedTests.missing).forEach(([key, value]) => {
|
|
220
|
+
message.push(`${key}`);
|
|
221
|
+
message.push(chalk5.gray(` ${value.pop()}`));
|
|
222
|
+
});
|
|
223
|
+
console.log(chalk5.yellow(message.join("\n")));
|
|
224
|
+
}
|
|
225
|
+
checkResult(`Deps [${pkgName}]`, errorCount, "warn", false);
|
|
226
|
+
return 0;
|
|
227
|
+
};
|
|
228
|
+
|
|
229
|
+
// src/actions/package/gen-docs.ts
|
|
230
|
+
import { existsSync as existsSync2 } from "node:fs";
|
|
231
|
+
import path4 from "node:path";
|
|
232
|
+
import chalk6 from "chalk";
|
|
233
|
+
import { Application, ArgumentsReader, TSConfigReader, TypeDocReader } from "typedoc";
|
|
234
|
+
var ExitCodes = {
|
|
235
|
+
CompileError: 3,
|
|
236
|
+
ExceptionThrown: 6,
|
|
237
|
+
NoEntryPoints: 2,
|
|
238
|
+
Ok: 0,
|
|
239
|
+
OptionError: 1,
|
|
240
|
+
OutputError: 5,
|
|
241
|
+
ValidationError: 4
|
|
242
|
+
};
|
|
243
|
+
var packageGenDocs = async () => {
|
|
244
|
+
const pkg = process.env.INIT_CWD;
|
|
245
|
+
if (pkg) {
|
|
246
|
+
if (!existsSync2(path4.join(pkg, "typedoc.json"))) {
|
|
247
|
+
return;
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
const app = new Application();
|
|
251
|
+
app.options.addReader(new ArgumentsReader(0));
|
|
252
|
+
app.options.addReader(new TypeDocReader());
|
|
253
|
+
app.options.addReader(new TSConfigReader());
|
|
254
|
+
app.options.addReader(new ArgumentsReader(300));
|
|
255
|
+
app.bootstrap({
|
|
256
|
+
entryPointStrategy: "resolve",
|
|
257
|
+
entryPoints: [`${pkg}/src`],
|
|
258
|
+
excludeExternals: true,
|
|
259
|
+
json: `${pkg}/dist/docs.json`,
|
|
260
|
+
logLevel: "Error",
|
|
261
|
+
tsconfig: `${pkg}/tsconfig.json`
|
|
262
|
+
});
|
|
263
|
+
return await runTypeDoc(app);
|
|
264
|
+
};
|
|
265
|
+
var runTypeDoc = async (app) => {
|
|
266
|
+
const pkgName = process.env.npm_package_name;
|
|
267
|
+
if (app.options.getValue("version")) {
|
|
268
|
+
console.log(app.toString());
|
|
269
|
+
return ExitCodes.Ok;
|
|
270
|
+
}
|
|
271
|
+
if (app.options.getValue("showConfig")) {
|
|
272
|
+
console.log(app.options.getRawValues());
|
|
273
|
+
return ExitCodes.Ok;
|
|
274
|
+
}
|
|
275
|
+
if (app.logger.hasErrors()) {
|
|
276
|
+
return ExitCodes.OptionError;
|
|
277
|
+
}
|
|
278
|
+
if (app.options.getValue("treatWarningsAsErrors") && app.logger.hasWarnings()) {
|
|
279
|
+
return ExitCodes.OptionError;
|
|
280
|
+
}
|
|
281
|
+
if (app.options.getValue("entryPoints").length === 0) {
|
|
282
|
+
app.logger.error("No entry points provided");
|
|
283
|
+
return ExitCodes.NoEntryPoints;
|
|
284
|
+
}
|
|
285
|
+
if (app.options.getValue("watch")) {
|
|
286
|
+
app.convertAndWatch(async (project2) => {
|
|
287
|
+
const out = app.options.getValue("out");
|
|
288
|
+
if (out) {
|
|
289
|
+
await app.generateDocs(project2, out);
|
|
290
|
+
}
|
|
291
|
+
const json = app.options.getValue("json");
|
|
292
|
+
if (json) {
|
|
293
|
+
await app.generateJson(project2, json);
|
|
294
|
+
}
|
|
295
|
+
if (!out && !json) {
|
|
296
|
+
await app.generateDocs(project2, "./docs");
|
|
297
|
+
}
|
|
298
|
+
});
|
|
299
|
+
return ExitCodes.Ok;
|
|
300
|
+
}
|
|
301
|
+
const project = app.convert();
|
|
302
|
+
if (!project) {
|
|
303
|
+
return ExitCodes.CompileError;
|
|
304
|
+
}
|
|
305
|
+
if (app.options.getValue("treatWarningsAsErrors") && app.logger.hasWarnings()) {
|
|
306
|
+
return ExitCodes.CompileError;
|
|
307
|
+
}
|
|
308
|
+
app.validate(project);
|
|
309
|
+
if (app.logger.hasErrors()) {
|
|
310
|
+
return ExitCodes.ValidationError;
|
|
311
|
+
}
|
|
312
|
+
if (app.options.getValue("treatWarningsAsErrors") && app.logger.hasWarnings()) {
|
|
313
|
+
return ExitCodes.ValidationError;
|
|
314
|
+
}
|
|
315
|
+
if (app.options.getValue("emit") !== "none") {
|
|
316
|
+
const out = app.options.getValue("out");
|
|
317
|
+
if (out) {
|
|
318
|
+
await app.generateDocs(project, out);
|
|
319
|
+
}
|
|
320
|
+
const json = app.options.getValue("json");
|
|
321
|
+
if (json) {
|
|
322
|
+
await app.generateJson(project, json);
|
|
323
|
+
}
|
|
324
|
+
if (!out && !json) {
|
|
325
|
+
await app.generateDocs(project, "./docs");
|
|
326
|
+
}
|
|
327
|
+
if (app.logger.hasErrors()) {
|
|
328
|
+
return ExitCodes.OutputError;
|
|
329
|
+
}
|
|
330
|
+
if (app.options.getValue("treatWarningsAsErrors") && app.logger.hasWarnings()) {
|
|
331
|
+
return ExitCodes.OutputError;
|
|
332
|
+
}
|
|
333
|
+
}
|
|
334
|
+
console.log(chalk6.green(`${pkgName} - Ok`));
|
|
335
|
+
return ExitCodes.Ok;
|
|
336
|
+
};
|
|
337
|
+
|
|
338
|
+
// src/actions/package/publint.ts
|
|
339
|
+
import { promises as fs } from "fs";
|
|
340
|
+
var packagePublint = async () => {
|
|
341
|
+
const pkgDir = process.env.INIT_CWD;
|
|
342
|
+
const pkg = JSON.parse(await fs.readFile(`${pkgDir}/package.json`, "utf8"));
|
|
343
|
+
const { publint } = await import("publint");
|
|
344
|
+
const { messages } = await publint({
|
|
345
|
+
level: "warning",
|
|
346
|
+
pkgDir,
|
|
347
|
+
strict: true
|
|
348
|
+
});
|
|
349
|
+
const { formatMessage } = await import("publint/utils");
|
|
350
|
+
messages.forEach((message) => {
|
|
351
|
+
console.log(formatMessage(message, pkg));
|
|
352
|
+
});
|
|
353
|
+
return messages.length;
|
|
354
|
+
};
|
|
355
|
+
|
|
356
|
+
// src/actions/package/recompile.ts
|
|
357
|
+
var packageRecompile = async () => {
|
|
358
|
+
return (await Promise.all([packageClean(), packageCompile()])).reduce((prev, value) => prev + value, 0);
|
|
359
|
+
};
|
|
360
|
+
|
|
361
|
+
// src/actions/package/tsup.ts
|
|
362
|
+
import merge from "lodash/merge";
|
|
363
|
+
import { build, defineConfig } from "tsup";
|
|
364
|
+
var packageTsup = async () => {
|
|
365
|
+
const options = defineConfig((options2) => {
|
|
366
|
+
return merge(
|
|
367
|
+
{},
|
|
368
|
+
{
|
|
369
|
+
bundle: true,
|
|
370
|
+
cjsInterop: true,
|
|
371
|
+
clean: false,
|
|
372
|
+
dts: {
|
|
373
|
+
entry: ["src/index.ts"]
|
|
374
|
+
},
|
|
375
|
+
entry: ["src/index.ts"],
|
|
376
|
+
format: ["cjs", "esm"],
|
|
377
|
+
sourcemap: true,
|
|
378
|
+
splitting: false,
|
|
379
|
+
tsconfig: "tsconfig.json"
|
|
380
|
+
},
|
|
381
|
+
options2
|
|
382
|
+
);
|
|
383
|
+
});
|
|
384
|
+
console.log(`Options: ${JSON.stringify(options)}`);
|
|
385
|
+
await build(options);
|
|
386
|
+
return 0;
|
|
387
|
+
};
|
|
388
|
+
export {
|
|
389
|
+
packageClean,
|
|
390
|
+
packageCleanOutputs,
|
|
391
|
+
packageCleanTypescript,
|
|
392
|
+
packageCompile,
|
|
393
|
+
packageCopyAssets,
|
|
394
|
+
packageDeps,
|
|
395
|
+
packageGenDocs,
|
|
396
|
+
packagePublint,
|
|
397
|
+
packageRecompile,
|
|
398
|
+
packageTsup
|
|
399
|
+
};
|
|
400
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/package/clean-outputs.ts","../../../src/actions/package/clean-typescript.ts","../../../src/actions/package/clean.ts","../../../src/actions/package/compile.ts","../../../src/actions/package/copy-assets.ts","../../../src/actions/package/deps.ts","../../../src/lib/checkResult.ts","../../../src/actions/package/gen-docs.ts","../../../src/actions/package/publint.ts","../../../src/actions/package/recompile.ts","../../../src/actions/package/tsup.ts"],"sourcesContent":["import chalk from 'chalk'\nimport { rmSync } from 'fs'\nimport path from 'path'\n\nexport const packageCleanOutputs = () => {\n const pkg = process.env.INIT_CWD ?? '.'\n const pkgName = process.env.npm_package_name\n console.log(chalk.green(`Cleaning Outputs [${pkgName}]`))\n\n const dist = path.join(pkg, 'dist')\n rmSync(dist, { force: true, recursive: true })\n\n const build = path.join(pkg, 'build')\n rmSync(build, { force: true, recursive: true })\n return 0\n}\n","import chalk from 'chalk'\nimport path from 'path'\nimport { rimrafSync } from 'rimraf'\n\nexport const packageCleanTypescript = () => {\n const pkg = process.env.INIT_CWD ?? '.'\n const pkgName = process.env.npm_package_name\n console.log(chalk.green(`Cleaning Typescript [${pkgName}]`))\n\n const buildInfo = path.join(pkg, '*.tsbuildinfo')\n rimrafSync(buildInfo, { glob: true })\n\n const tsConfig = path.join(pkg, '.tsconfig.*')\n rimrafSync(tsConfig, { glob: true })\n\n return 0\n}\n","import { packageCleanOutputs } from './clean-outputs'\nimport { packageCleanTypescript } from './clean-typescript'\n\nexport const packageClean = () => {\n return packageCleanOutputs() + packageCleanTypescript()\n}\n","import commonjs from '@rollup/plugin-commonjs'\nimport typescript from '@rollup/plugin-typescript'\nimport { copyFile } from 'fs/promises'\nimport { rollup } from 'rollup'\nimport externalDeps from 'rollup-plugin-exclude-dependencies-from-bundle'\n\nconst buildIt = async () => {\n await (\n await rollup({\n input: 'src/index.ts',\n logLevel: 'debug',\n perf: true,\n plugins: [\n commonjs(),\n externalDeps(),\n typescript({\n declaration: true,\n declarationMap: true,\n emitDeclarationOnly: false,\n exclude: ['src/**/*.spec.*', 'dist', 'docs'],\n outDir: 'dist',\n rootDir: 'src',\n tsconfig: 'tsconfig.json',\n }),\n ],\n })\n ).write({\n dir: 'dist',\n entryFileNames: (chunkInfo) => `${chunkInfo.name}.mjs`,\n format: 'esm',\n sourcemap: true,\n })\n\n await (\n await rollup({\n input: 'src/index.ts',\n logLevel: 'warn',\n perf: true,\n plugins: [\n externalDeps(),\n typescript({\n declaration: true,\n declarationMap: true,\n emitDeclarationOnly: false,\n exclude: ['src/**/*.spec.*', 'dist', 'docs'],\n outDir: 'dist',\n rootDir: 'src',\n tsconfig: 'tsconfig.json',\n }),\n ],\n })\n ).write({\n dir: 'dist',\n entryFileNames: (chunkInfo) => `${chunkInfo.name}.js`,\n format: 'cjs',\n sourcemap: true,\n })\n await copyFile('./dist/index.d.ts', './dist/index.d.mts')\n await copyFile('./dist/index.d.ts.map', './dist/index.d.mts.map')\n\n return 0\n}\n\nexport const packageCompile = async () => {\n return await buildIt()\n}\n","import chalk from 'chalk'\nimport cpy from 'cpy'\nimport path from 'path/posix'\n\nexport interface PackageCopyAssetsParams {\n target?: 'esm' | 'cjs'\n}\n\nconst copyTargetAssets = async (target: 'esm' | 'cjs', name: string, location: string) => {\n try {\n const values = await cpy(\n ['**/*.jpg', '**/*.png', '**/*.gif', '**/*.svg', '**/*.webp', '**/*.sass', '**/*.scss', '**/*.gif', '**/*.css'],\n `../dist/${target}`,\n {\n cwd: path.join(location, 'src'),\n parents: true,\n },\n )\n if (values.length > 0) {\n console.log(chalk.green(`Copying Assets [${target.toUpperCase()}] - ${name} - ${location}`))\n }\n values.forEach((value) => {\n console.log(`${value.split('/').pop()} => ./dist/${target}`)\n })\n return 0\n } catch (ex) {\n const error = ex as Error\n console.log(`Copy Assets Failed: ${name}: ${error.message}`)\n return 1\n }\n}\n\nexport const packageCopyAssets = async ({ target }: PackageCopyAssetsParams) => {\n const pkg = process.env.INIT_CWD ?? './'\n const pkgName = process.env.npm_package_name ?? 'Unknown'\n switch (target) {\n case 'esm':\n return await copyTargetAssets('esm', pkgName, pkg)\n case 'cjs':\n return await copyTargetAssets('cjs', pkgName, pkg)\n default:\n return (await copyTargetAssets('esm', pkgName, pkg)) || (await copyTargetAssets('cjs', pkgName, pkg))\n }\n}\n","/* eslint-disable max-statements */\nimport chalk from 'chalk'\nimport depcheck, { special } from 'depcheck'\nimport { existsSync, readFileSync } from 'fs'\n\nimport { checkResult } from '../../lib'\n\nexport const packageDeps = async () => {\n const pkg = process.env.INIT_CWD\n const pkgName = process.env.npm_package_name\n\n const rawIgnore = existsSync(`${pkg}/.depcheckrc`)\n ? readFileSync(`${pkg}/.depcheckrc`, { encoding: 'utf8' }).replace('ignores:', '\"ignores\":')\n : undefined\n let ignoreMatches: string[] = []\n try {\n ignoreMatches = rawIgnore ? (JSON.parse(`{${rawIgnore}}`).ignores as string[]) : []\n } catch (ex) {\n const error = ex as Error\n console.log(`${pkgName} [${error.message}] Failed to parse .depcheckrc [${rawIgnore}]`)\n }\n\n ignoreMatches.push('@xylabs/ts-scripts-yarn3')\n ignoreMatches.push('@xylabs/tsconfig')\n ignoreMatches.push('@xylabs/tsconfig-dom')\n ignoreMatches.push('@xylabs/tsconfig-react')\n ignoreMatches.push('@xylabs/tsconfig-jest')\n ignoreMatches.push('typescript')\n\n const unusedList = await Promise.all([\n depcheck(`${pkg}/.`, { ignoreMatches, ignorePatterns: ['*.stories.*', '*.spec.*', '*.d.ts', 'dist', '.*'] }),\n depcheck(`${pkg}/.`, {\n ignoreMatches,\n ignorePatterns: ['*.ts', '*.d.ts', 'dist', '.*'],\n specials: [special.eslint, special.babel, special.bin, special.prettier, special.jest, special.mocha],\n }),\n ])\n\n const unusedCode = unusedList[0]\n const unusedTests = unusedList[1]\n\n const unused: depcheck.Results = {\n ...unusedCode,\n /* we only reports the unused devDeps if both are not using it */\n devDependencies: unusedTests.devDependencies.filter((value) => !!unusedCode.devDependencies.find((devValue) => devValue === value)),\n }\n\n const errorCount =\n unused.dependencies.length +\n unused.devDependencies.length +\n Object.entries(unused.invalidDirs).length +\n Object.entries(unused.invalidFiles).length +\n Object.entries(unused.missing).length\n\n if (errorCount > 0) {\n console.log(`Deps [${pkgName}]`)\n } else {\n console.log(`Deps [${pkgName}] - Ok`)\n }\n\n if (unused.dependencies.length) {\n const message = [chalk.yellow(`${unused.dependencies.length} Unused dependencies`)]\n unused.dependencies.forEach((value) => message.push(chalk.gray(` ${value}`)))\n console.log(message.join('\\n'))\n }\n\n if (unused.devDependencies.length) {\n const message = [chalk.yellow(`${unused.devDependencies.length} Unused devDependencies`)]\n unused.devDependencies.forEach((value) => message.push(chalk.gray(` ${value}`)))\n console.log(message.join('\\n'))\n }\n\n if (Object.entries(unused.invalidDirs).length) {\n Object.entries(unused.invalidDirs).forEach(([key, value]) => console.warn(chalk.gray(`Invalid Dir: ${key}: ${value}`)))\n }\n\n if (Object.entries(unused.invalidFiles).length) {\n Object.entries(unused.invalidFiles).forEach(([key, value]) => console.warn(chalk.gray(`Invalid File: ${key}: ${value}`)))\n }\n\n if (Object.entries(unusedCode.missing).length) {\n const message = [chalk.yellow(`${Object.entries(unusedCode.missing).length} Missing dependencies`)]\n Object.entries(unusedCode.missing).forEach(([key, value]) => {\n message.push(`${key}`)\n message.push(chalk.gray(` ${value.pop()}`))\n })\n console.log(chalk.yellow(message.join('\\n')))\n }\n\n if (Object.entries(unusedTests.missing).length) {\n const message = [chalk.yellow(`${Object.entries(unusedTests.missing).length} Missing devDependencies`)]\n Object.entries(unusedTests.missing).forEach(([key, value]) => {\n message.push(`${key}`)\n message.push(chalk.gray(` ${value.pop()}`))\n })\n console.log(chalk.yellow(message.join('\\n')))\n }\n\n checkResult(`Deps [${pkgName}]`, errorCount, 'warn', false)\n\n //returning 0 here since we never want deps to be fatal\n return 0\n}\n","import chalk from 'chalk'\n\nexport const checkResult = (name: string, result: number, level: 'error' | 'warn' = 'error', exitOnFail = false) => {\n if (result) {\n const exiting = exitOnFail ? '[Exiting Process]' : '[Continuing]'\n const chalkFunc = level === 'error' ? chalk.red : chalk.yellow\n console[level](chalkFunc(`${name} had ${result} failures ${exiting}`))\n if (exitOnFail) {\n process.exit(result)\n }\n }\n}\n","/* eslint-disable complexity */\n/* eslint-disable max-statements */\nimport { existsSync } from 'node:fs'\nimport path from 'node:path'\n\nimport chalk from 'chalk'\nimport { Application, ArgumentsReader, TSConfigReader, TypeDocReader } from 'typedoc'\n\nconst ExitCodes = {\n CompileError: 3,\n ExceptionThrown: 6,\n NoEntryPoints: 2,\n Ok: 0,\n OptionError: 1,\n OutputError: 5,\n ValidationError: 4,\n}\n\nexport const packageGenDocs = async () => {\n const pkg = process.env.INIT_CWD\n\n if (pkg) {\n if (!existsSync(path.join(pkg, 'typedoc.json'))) {\n return\n }\n }\n\n const app = new Application()\n\n app.options.addReader(new ArgumentsReader(0))\n app.options.addReader(new TypeDocReader())\n app.options.addReader(new TSConfigReader())\n app.options.addReader(new ArgumentsReader(300))\n\n app.bootstrap({\n entryPointStrategy: 'resolve',\n entryPoints: [`${pkg}/src`],\n excludeExternals: true,\n json: `${pkg}/dist/docs.json`,\n logLevel: 'Error',\n tsconfig: `${pkg}/tsconfig.json`,\n })\n\n return await runTypeDoc(app)\n}\n\nconst runTypeDoc = async (app: Application) => {\n const pkgName = process.env.npm_package_name\n if (app.options.getValue('version')) {\n console.log(app.toString())\n return ExitCodes.Ok\n }\n\n if (app.options.getValue('showConfig')) {\n console.log(app.options.getRawValues())\n return ExitCodes.Ok\n }\n\n if (app.logger.hasErrors()) {\n return ExitCodes.OptionError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.OptionError\n }\n\n if (app.options.getValue('entryPoints').length === 0) {\n app.logger.error('No entry points provided')\n return ExitCodes.NoEntryPoints\n }\n\n if (app.options.getValue('watch')) {\n app.convertAndWatch(async (project) => {\n const out = app.options.getValue('out')\n if (out) {\n await app.generateDocs(project, out)\n }\n const json = app.options.getValue('json')\n if (json) {\n await app.generateJson(project, json)\n }\n\n if (!out && !json) {\n await app.generateDocs(project, './docs')\n }\n })\n return ExitCodes.Ok\n }\n\n const project = app.convert()\n if (!project) {\n return ExitCodes.CompileError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.CompileError\n }\n\n app.validate(project)\n if (app.logger.hasErrors()) {\n return ExitCodes.ValidationError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.ValidationError\n }\n\n if (app.options.getValue('emit') !== 'none') {\n const out = app.options.getValue('out')\n if (out) {\n await app.generateDocs(project, out)\n }\n const json = app.options.getValue('json')\n if (json) {\n await app.generateJson(project, json)\n }\n\n if (!out && !json) {\n await app.generateDocs(project, './docs')\n }\n\n if (app.logger.hasErrors()) {\n return ExitCodes.OutputError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.OutputError\n }\n }\n console.log(chalk.green(`${pkgName} - Ok`))\n return ExitCodes.Ok\n}\n","import { promises as fs } from 'fs'\n\nexport const packagePublint = async () => {\n const pkgDir = process.env.INIT_CWD\n\n const pkg = JSON.parse(await fs.readFile(`${pkgDir}/package.json`, 'utf8'))\n\n const { publint } = await import('publint')\n\n const { messages } = await publint({\n level: 'warning',\n pkgDir,\n strict: true,\n })\n\n // eslint-disable-next-line import/no-internal-modules\n const { formatMessage } = await import('publint/utils')\n\n messages.forEach((message) => {\n console.log(formatMessage(message, pkg))\n })\n\n return messages.length\n}\n","import { packageClean } from './clean'\nimport { packageCompile } from './compile'\n\nexport const packageRecompile = async () => {\n return (await Promise.all([packageClean(), packageCompile()])).reduce((prev, value) => prev + value, 0)\n}\n","// eslint-disable-next-line import/no-internal-modules\nimport merge from 'lodash/merge'\nimport { build, defineConfig, Options } from 'tsup'\n\nexport const packageTsup = async () => {\n const options = defineConfig((options) => {\n return merge(\n {},\n {\n bundle: true,\n cjsInterop: true,\n clean: false,\n dts: {\n entry: ['src/index.ts'],\n },\n entry: ['src/index.ts'],\n format: ['cjs', 'esm'],\n sourcemap: true,\n splitting: false,\n tsconfig: 'tsconfig.json',\n },\n options,\n )\n }) as Options\n\n console.log(`Options: ${JSON.stringify(options)}`)\n\n await build(options)\n\n return 0\n}\n"],"mappings":"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","names":["build","chalk","path","chalk","path","chalk","chalk","chalk","existsSync","path","chalk","project","options"]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
// src/actions/package/publint.ts
|
|
2
|
+
import { promises as fs } from "fs";
|
|
3
|
+
var packagePublint = async () => {
|
|
4
|
+
const pkgDir = process.env.INIT_CWD;
|
|
5
|
+
const pkg = JSON.parse(await fs.readFile(`${pkgDir}/package.json`, "utf8"));
|
|
6
|
+
const { publint } = await import("publint");
|
|
7
|
+
const { messages } = await publint({
|
|
8
|
+
level: "warning",
|
|
9
|
+
pkgDir,
|
|
10
|
+
strict: true
|
|
11
|
+
});
|
|
12
|
+
const { formatMessage } = await import("publint/utils");
|
|
13
|
+
messages.forEach((message) => {
|
|
14
|
+
console.log(formatMessage(message, pkg));
|
|
15
|
+
});
|
|
16
|
+
return messages.length;
|
|
17
|
+
};
|
|
18
|
+
export {
|
|
19
|
+
packagePublint
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=publint.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/actions/package/publint.ts"],"sourcesContent":["import { promises as fs } from 'fs'\n\nexport const packagePublint = async () => {\n const pkgDir = process.env.INIT_CWD\n\n const pkg = JSON.parse(await fs.readFile(`${pkgDir}/package.json`, 'utf8'))\n\n const { publint } = await import('publint')\n\n const { messages } = await publint({\n level: 'warning',\n pkgDir,\n strict: true,\n })\n\n // eslint-disable-next-line import/no-internal-modules\n const { formatMessage } = await import('publint/utils')\n\n messages.forEach((message) => {\n console.log(formatMessage(message, pkg))\n })\n\n return messages.length\n}\n"],"mappings":";AAAA,SAAS,YAAY,UAAU;AAExB,IAAM,iBAAiB,YAAY;AACxC,QAAM,SAAS,QAAQ,IAAI;AAE3B,QAAM,MAAM,KAAK,MAAM,MAAM,GAAG,SAAS,GAAG,MAAM,iBAAiB,MAAM,CAAC;AAE1E,QAAM,EAAE,QAAQ,IAAI,MAAM,OAAO,SAAS;AAE1C,QAAM,EAAE,SAAS,IAAI,MAAM,QAAQ;AAAA,IACjC,OAAO;AAAA,IACP;AAAA,IACA,QAAQ;AAAA,EACV,CAAC;AAGD,QAAM,EAAE,cAAc,IAAI,MAAM,OAAO,eAAe;AAEtD,WAAS,QAAQ,CAAC,YAAY;AAC5B,YAAQ,IAAI,cAAc,SAAS,GAAG,CAAC;AAAA,EACzC,CAAC;AAED,SAAO,SAAS;AAClB;","names":[]}
|