@build-script/package-tools 0.0.5 → 0.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. package/lib/commands/detect-package-change.d.ts +5 -5
  2. package/lib/commands/detect-package-change.d.ts.map +1 -1
  3. package/lib/commands/detect-package-change.js +3 -3
  4. package/lib/commands/detect-package-change.js.map +1 -1
  5. package/lib/commands/monorepo-bump-version.d.ts +5 -5
  6. package/lib/commands/monorepo-bump-version.d.ts.map +1 -1
  7. package/lib/commands/monorepo-bump-version.js +1 -2
  8. package/lib/commands/monorepo-bump-version.js.map +1 -1
  9. package/lib/commands/monorepo-cnpm-sync.d.ts +4 -4
  10. package/lib/commands/monorepo-cnpm-sync.d.ts.map +1 -1
  11. package/lib/commands/monorepo-cnpm-sync.js +2 -2
  12. package/lib/commands/monorepo-cnpm-sync.js.map +1 -1
  13. package/lib/commands/monorepo-invalid.d.ts +4 -4
  14. package/lib/commands/monorepo-invalid.d.ts.map +1 -1
  15. package/lib/commands/monorepo-invalid.js +2 -2
  16. package/lib/commands/monorepo-invalid.js.map +1 -1
  17. package/lib/commands/monorepo-link-binaries.d.ts +7 -5
  18. package/lib/commands/monorepo-link-binaries.d.ts.map +1 -1
  19. package/lib/commands/monorepo-link-binaries.js +10 -5
  20. package/lib/commands/monorepo-link-binaries.js.map +1 -1
  21. package/lib/commands/monorepo-list.d.ts +5 -5
  22. package/lib/commands/monorepo-list.d.ts.map +1 -1
  23. package/lib/commands/monorepo-list.js +2 -1
  24. package/lib/commands/monorepo-list.js.map +1 -1
  25. package/lib/commands/monorepo-publish.d.ts +5 -5
  26. package/lib/commands/monorepo-publish.d.ts.map +1 -1
  27. package/lib/commands/monorepo-publish.js +16 -12
  28. package/lib/commands/monorepo-publish.js.map +1 -1
  29. package/lib/commands/monorepo-tsconfig.d.ts +6 -5
  30. package/lib/commands/monorepo-tsconfig.d.ts.map +1 -1
  31. package/lib/commands/monorepo-tsconfig.js +7 -4
  32. package/lib/commands/monorepo-tsconfig.js.map +1 -1
  33. package/lib/commands/monorepo-upgrade.d.ts +4 -4
  34. package/lib/commands/monorepo-upgrade.d.ts.map +1 -1
  35. package/lib/commands/monorepo-upgrade.js +1 -2
  36. package/lib/commands/monorepo-upgrade.js.map +1 -1
  37. package/lib/commands/run-if-version-mismatch.d.ts +9 -7
  38. package/lib/commands/run-if-version-mismatch.d.ts.map +1 -1
  39. package/lib/commands/run-if-version-mismatch.js +19 -8
  40. package/lib/commands/run-if-version-mismatch.js.map +1 -1
  41. package/lib/commands/sync-my-readme.d.ts +4 -4
  42. package/lib/commands/sync-my-readme.d.ts.map +1 -1
  43. package/lib/commands/sync-my-readme.js +1 -1
  44. package/lib/commands/sync-my-readme.js.map +1 -1
  45. package/lib/commands/test.d.ts +12 -5
  46. package/lib/commands/test.d.ts.map +1 -1
  47. package/lib/commands/test.js +14 -1
  48. package/lib/commands/test.js.map +1 -1
  49. package/lib/{command-file-map.generated.d.ts → commands.generated.d.ts} +5 -4
  50. package/lib/commands.generated.d.ts.map +1 -0
  51. package/lib/commands.generated.js +234 -0
  52. package/lib/commands.generated.js.map +1 -0
  53. package/lib/common/cache/native.npm.js +1 -1
  54. package/lib/common/cache/native.npm.js.map +1 -1
  55. package/lib/common/functions/cli.d.ts +4 -74
  56. package/lib/common/functions/cli.d.ts.map +1 -1
  57. package/lib/common/functions/cli.js +9 -91
  58. package/lib/common/functions/cli.js.map +1 -1
  59. package/lib/common/git/git.js +1 -1
  60. package/lib/common/git/git.js.map +1 -1
  61. package/lib/common/package-manager/driver.abstract.js +3 -3
  62. package/lib/common/package-manager/driver.abstract.js.map +1 -1
  63. package/lib/common/package-manager/driver.pnpm.d.ts.map +1 -1
  64. package/lib/common/package-manager/driver.pnpm.js +14 -5
  65. package/lib/common/package-manager/driver.pnpm.js.map +1 -1
  66. package/lib/common/package-manager/functions.d.ts.map +1 -1
  67. package/lib/common/package-manager/functions.js +2 -1
  68. package/lib/common/package-manager/functions.js.map +1 -1
  69. package/lib/common/package-manager/package-json.d.ts.map +1 -1
  70. package/lib/common/package-manager/package-json.js +2 -1
  71. package/lib/common/package-manager/package-json.js.map +1 -1
  72. package/lib/common/package-manager/proxy.js +1 -1
  73. package/lib/common/package-manager/proxy.js.map +1 -1
  74. package/lib/common/shared-jobs/clear-cache.js +1 -1
  75. package/lib/common/shared-jobs/clear-cache.js.map +1 -1
  76. package/lib/common/shared-jobs/cnpm-sync.js +2 -2
  77. package/lib/common/shared-jobs/cnpm-sync.js.map +1 -1
  78. package/lib/common/shared-jobs/detect-change-job.js +1 -1
  79. package/lib/common/shared-jobs/detect-change-job.js.map +1 -1
  80. package/lib/common/shared-jobs/publish-package-version-job.js +1 -1
  81. package/lib/common/shared-jobs/publish-package-version-job.js.map +1 -1
  82. package/lib/common/taball/decompress.d.ts.map +1 -1
  83. package/lib/common/taball/decompress.js +5 -2
  84. package/lib/common/taball/decompress.js.map +1 -1
  85. package/lib/common/taball/file-download.js +1 -1
  86. package/lib/common/taball/file-download.js.map +1 -1
  87. package/lib/common/temp-work-folder.d.ts +1 -1
  88. package/lib/common/temp-work-folder.js +1 -1
  89. package/lib/common/temp-work-folder.js.map +1 -1
  90. package/lib/common/version.generated.d.ts +2 -2
  91. package/lib/common/version.generated.js +2 -2
  92. package/lib/main.d.ts +2 -1
  93. package/lib/main.d.ts.map +1 -1
  94. package/lib/main.js +12 -114
  95. package/lib/main.js.map +1 -1
  96. package/lib/tsconfig.tsbuildinfo +1 -1
  97. package/load.js +1 -8
  98. package/package.json +15 -13
  99. package/src/command-file-map.generator.ts +6 -19
  100. package/src/commands/detect-package-change.ts +6 -6
  101. package/src/commands/monorepo-bump-version.ts +5 -6
  102. package/src/commands/monorepo-cnpm-sync.ts +5 -5
  103. package/src/commands/monorepo-invalid.ts +5 -5
  104. package/src/commands/monorepo-link-binaries.ts +13 -8
  105. package/src/commands/monorepo-list.ts +6 -5
  106. package/src/commands/monorepo-publish.ts +20 -17
  107. package/src/commands/monorepo-tsconfig.ts +10 -7
  108. package/src/commands/monorepo-upgrade.ts +4 -5
  109. package/src/commands/run-if-version-mismatch.ts +23 -12
  110. package/src/commands/sync-my-readme.ts +5 -5
  111. package/src/commands/test.ts +19 -5
  112. package/src/commands.generated.ts +235 -0
  113. package/src/common/cache/native.npm.ts +1 -1
  114. package/src/common/functions/cli.ts +10 -125
  115. package/src/common/git/git.ts +1 -1
  116. package/src/common/package-manager/driver.abstract.ts +3 -3
  117. package/src/common/package-manager/driver.pnpm.ts +14 -5
  118. package/src/common/package-manager/functions.ts +2 -1
  119. package/src/common/package-manager/package-json.ts +2 -1
  120. package/src/common/package-manager/proxy.ts +1 -1
  121. package/src/common/shared-jobs/clear-cache.ts +1 -1
  122. package/src/common/shared-jobs/cnpm-sync.ts +2 -2
  123. package/src/common/shared-jobs/detect-change-job.ts +1 -1
  124. package/src/common/shared-jobs/publish-package-version-job.ts +1 -1
  125. package/src/common/taball/decompress.ts +6 -2
  126. package/src/common/taball/file-download.ts +1 -1
  127. package/src/common/temp-work-folder.ts +1 -1
  128. package/src/common/version.generated.ts +2 -2
  129. package/src/main.ts +12 -129
  130. package/lib/command-file-map.generated.d.ts.map +0 -1
  131. package/lib/command-file-map.generated.js +0 -28
  132. package/lib/command-file-map.generated.js.map +0 -1
  133. package/src/command-file-map.generated.ts +0 -29
package/src/main.ts CHANGED
@@ -1,132 +1,15 @@
1
- import type { ISubArgsReaderApi } from '@idlebox/args';
2
- import { AppExit, prettyPrintError } from '@idlebox/common';
3
- import { createRootLogger, EnableLogLevel } from '@idlebox/logger';
4
- import { resolve } from 'node:path';
5
- import cmdList from './command-file-map.generated.js';
6
- import { argv, DieError, isHelp, isQuiet, isVerbose, pCmd, pDesc, printCommonOptions, type CommandDefine } from './common/functions/cli.js';
7
- import { registerShutdownHandlers, shutdown } from './common/functions/global-lifecycle.js';
8
- import { configureProxyFromEnvironment } from './common/package-manager/proxy.js';
1
+ import { makeApplication, type ArgDefineMap } from '@idlebox/cli';
2
+ import { cli_commands, cli_imports } from './commands.generated.js';
9
3
 
10
- createRootLogger('', isVerbose ? EnableLogLevel.verbose : isQuiet ? EnableLogLevel.error : EnableLogLevel.log);
4
+ export const common_args: ArgDefineMap = {
5
+ '--registry': { flag: false, description: 'npm服务器,默认从.npmrc读取(必须有schema://)' },
6
+ '--dist-tag': { flag: false, description: '需要从服务器读取时使用的tag,默认为"latest"' },
7
+ '--package': { flag: false, description: '实际操作前,更改当前目录(此文件夹应包含package.json)' },
8
+ '--json': { flag: true, description: '输出json格式(部分命令支持)' },
9
+ };
11
10
 
12
- const usage_prefix = '\x1B[1mnjspkg\x1B[0m \x1B[38;5;3m[通用参数]\x1B[0m';
11
+ await makeApplication().withCommon(common_args).static(cli_imports, cli_commands);
13
12
 
14
- try {
15
- process.exitCode = await main();
16
- if (argv.flag('--verbose')) {
17
- console.log('exit code: %d', process.exitCode);
18
- }
19
- process.exit();
20
- } catch (e: any) {
21
- if (e instanceof AppExit) {
22
- } else if (e instanceof DieError) {
23
- console.error('错误: %s', e.message);
24
- shutdown(1);
25
- } else {
26
- prettyPrintError('main', e);
27
- shutdown(1);
28
- }
29
- }
30
-
31
- type MainFunc = (argv: ISubArgsReaderApi) => Promise<number> | number;
32
-
33
- async function importCommand(cmd: keyof typeof cmdList) {
34
- const exports = await import(cmdList[cmd]);
35
- const main: MainFunc = exports.main;
36
- const Command: new () => CommandDefine = exports.Command;
37
- return { main, Command };
38
- }
39
-
40
- async function main() {
41
- const chdir = argv.single(['--package']);
42
- if (chdir) process.chdir(resolve(process.cwd(), chdir));
43
-
44
- const allKnownCommands = Object.keys(cmdList) as (keyof typeof cmdList)[];
45
-
46
- const subArgv = argv.command(allKnownCommands);
47
-
48
- if (subArgv?.value && cmdList[subArgv.value]) {
49
- const cmd = subArgv.value;
50
- const { main, Command } = await importCommand(cmd);
51
-
52
- if (isHelp) {
53
- const command = new Command();
54
- process.stderr.write(`Usage: ${usage_prefix} ${pCmd(cmd)} ${command.usage.trim()}\n`);
55
- process.stderr.write(`${command.help.trim().replace(/^/gm, ' ')}\n\n`);
56
- printCommonOptions();
57
- process.stderr.write('\n');
58
- return 0;
59
- }
60
-
61
- registerShutdownHandlers();
62
- configureProxyFromEnvironment();
63
-
64
- // RUN MAIN HERE
65
- return await main(subArgv);
66
- }
67
-
68
- if (isHelp) {
69
- } else if (argv.unused().length === 0) {
70
- console.error('Command is required. pass -h / --help to get usage.');
71
- return 1;
72
- } else {
73
- console.error('\x1B[38;5;9mUnknown command: %s\x1B[0m\n', argv.unused()[0]);
74
-
75
- printLegend();
76
- process.stderr.write('\n');
77
- const tbl = table();
78
- for (const cmd of allKnownCommands) {
79
- const { Command } = await importCommand(cmd);
80
-
81
- const command = new Command();
82
- if (command.isHidden) continue;
83
-
84
- tbl.line(cmd, command.description.trim());
85
- }
86
- tbl.emit();
87
- process.stderr.write('\n');
88
-
89
- return 22;
90
- }
91
-
92
- printLegend();
93
- process.stderr.write('\n');
94
- printCommonOptions();
95
- process.stderr.write('\n');
96
-
97
- for (const cmd of allKnownCommands) {
98
- const { Command } = await importCommand(cmd);
99
- const command = new Command();
100
- if (command.isHidden) continue;
101
-
102
- let usage = command.usage.trim();
103
- if (usage) usage += ' ';
104
- usage += pDesc(command.description.trim());
105
- process.stderr.write(`${pCmd(cmd)} ${usage}\n`);
106
- const s = command.help.trim();
107
- process.stderr.write(`${s.replace(/^/gm, ' ')}\n\n`);
108
- }
109
-
110
- return isHelp ? 0 : 22;
111
- }
112
-
113
- function printLegend() {
114
- process.stderr.write(`\x1B[2mUsage:\x1B[0m\n ${usage_prefix} \x1B[38;5;10m<命令>\x1B[0m \x1B[38;5;14m[命令参数]\x1B[0m\n`);
115
- }
116
-
117
- function table() {
118
- const elements: [string, string][] = [];
119
-
120
- return {
121
- line(left: string, right: string) {
122
- elements.push([left, right]);
123
- },
124
- emit() {
125
- const max_left = Math.max(...elements.map((s) => s[0].length));
126
-
127
- for (const [left, right] of elements) {
128
- process.stderr.write(` ${pCmd(left.padEnd(max_left))} ${right}\n`);
129
- }
130
- },
131
- };
132
- }
13
+ // await makeApplication()
14
+ // .withCommon(common_args)
15
+ // .dynamic(resolve(import.meta.dirname, 'commands'), '*.js');
@@ -1 +0,0 @@
1
- {"version":3,"file":"command-file-map.generated.d.ts","sourceRoot":"","sources":["../src/command-file-map.generated.ts"],"names":[],"mappings":"AAKA;;;;;;;gFAOgF;;;;;;;;;;;;;;;AAEhF,wBAaW"}
@@ -1,28 +0,0 @@
1
- /* eslint-disable */
2
- // @ts-ignore
3
- // biome-ignore-all lint
4
- // biome-ignore-all assist
5
- // biome-ignore-all syntax
6
- /******************************************************************************
7
- * GENERATED FILE, DO NOT MODIFY
8
- * 这是生成的文件,千万不要修改
9
- *
10
- * @build-script/codegen 1.0.5 - The Simple Code Generater
11
- * https://github.com/GongT/baobao
12
- *
13
- ******************************************************************************/
14
- export default {
15
- "detect-package-change": "./commands/detect-package-change.js",
16
- "monorepo-bump-version": "./commands/monorepo-bump-version.js",
17
- "monorepo-cnpm-sync": "./commands/monorepo-cnpm-sync.js",
18
- "monorepo-invalid": "./commands/monorepo-invalid.js",
19
- "monorepo-link-binaries": "./commands/monorepo-link-binaries.js",
20
- "monorepo-list": "./commands/monorepo-list.js",
21
- "monorepo-publish": "./commands/monorepo-publish.js",
22
- "monorepo-tsconfig": "./commands/monorepo-tsconfig.js",
23
- "monorepo-upgrade": "./commands/monorepo-upgrade.js",
24
- "run-if-version-mismatch": "./commands/run-if-version-mismatch.js",
25
- "sync-my-readme": "./commands/sync-my-readme.js",
26
- "test": "./commands/test.js"
27
- };
28
- //# sourceMappingURL=command-file-map.generated.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"command-file-map.generated.js","sourceRoot":"","sources":["../src/command-file-map.generated.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,aAAa;AACb,wBAAwB;AACxB,0BAA0B;AAC1B,0BAA0B;AAC1B;;;;;;;gFAOgF;AAEhF,eAAe;IACd,uBAAuB,EAAE,qCAAqC;IAC9D,uBAAuB,EAAE,qCAAqC;IAC9D,oBAAoB,EAAE,kCAAkC;IACxD,kBAAkB,EAAE,gCAAgC;IACpD,wBAAwB,EAAE,sCAAsC;IAChE,eAAe,EAAE,6BAA6B;IAC9C,kBAAkB,EAAE,gCAAgC;IACpD,mBAAmB,EAAE,iCAAiC;IACtD,kBAAkB,EAAE,gCAAgC;IACpD,yBAAyB,EAAE,uCAAuC;IAClE,gBAAgB,EAAE,8BAA8B;IAChD,MAAM,EAAE,oBAAoB;CACnB,CAAC"}
@@ -1,29 +0,0 @@
1
- /* eslint-disable */
2
- // @ts-ignore
3
- // biome-ignore-all lint
4
- // biome-ignore-all assist
5
- // biome-ignore-all syntax
6
- /******************************************************************************
7
- * GENERATED FILE, DO NOT MODIFY
8
- * 这是生成的文件,千万不要修改
9
- *
10
- * @build-script/codegen 1.0.5 - The Simple Code Generater
11
- * https://github.com/GongT/baobao
12
- *
13
- ******************************************************************************/
14
-
15
- export default {
16
- "detect-package-change": "./commands/detect-package-change.js",
17
- "monorepo-bump-version": "./commands/monorepo-bump-version.js",
18
- "monorepo-cnpm-sync": "./commands/monorepo-cnpm-sync.js",
19
- "monorepo-invalid": "./commands/monorepo-invalid.js",
20
- "monorepo-link-binaries": "./commands/monorepo-link-binaries.js",
21
- "monorepo-list": "./commands/monorepo-list.js",
22
- "monorepo-publish": "./commands/monorepo-publish.js",
23
- "monorepo-tsconfig": "./commands/monorepo-tsconfig.js",
24
- "monorepo-upgrade": "./commands/monorepo-upgrade.js",
25
- "run-if-version-mismatch": "./commands/run-if-version-mismatch.js",
26
- "sync-my-readme": "./commands/sync-my-readme.js",
27
- "test": "./commands/test.js"
28
- } as const;
29
-