@spcsn/taro-cli 0.1.6 → 1.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.
Files changed (188) hide show
  1. package/README.md +10 -7
  2. package/define-config.d.ts +1 -0
  3. package/define-config.js +1 -0
  4. package/dist/cli.js +140 -110
  5. package/dist/cli.js.map +1 -1
  6. package/dist/commands/{customCommand.d.ts → custom-command.d.ts} +1 -1
  7. package/dist/commands/custom-command.js +23 -0
  8. package/dist/commands/custom-command.js.map +1 -0
  9. package/dist/create/creator.js +2 -0
  10. package/dist/create/creator.js.map +1 -1
  11. package/dist/create/{fetchTemplate.js → fetch-template.js} +26 -33
  12. package/dist/create/fetch-template.js.map +1 -0
  13. package/dist/create/project.d.ts +2 -6
  14. package/dist/create/project.js +240 -285
  15. package/dist/create/project.js.map +1 -1
  16. package/dist/create/template-creator.d.ts +75 -0
  17. package/dist/create/template-creator.js +275 -0
  18. package/dist/create/template-creator.js.map +1 -0
  19. package/dist/doctor/validators.d.ts +7 -6
  20. package/dist/doctor/validators.js +6 -7
  21. package/dist/doctor/validators.js.map +1 -1
  22. package/dist/platform-weapp/apis-list.d.ts +1 -0
  23. package/dist/platform-weapp/apis-list.js +37 -0
  24. package/dist/platform-weapp/apis-list.js.map +1 -0
  25. package/dist/platform-weapp/apis.d.ts +16 -0
  26. package/dist/platform-weapp/apis.js +34 -0
  27. package/dist/platform-weapp/apis.js.map +1 -0
  28. package/dist/platform-weapp/components-react.d.ts +80 -0
  29. package/dist/platform-weapp/components-react.js +86 -0
  30. package/dist/platform-weapp/components-react.js.map +1 -0
  31. package/dist/platform-weapp/components.d.ts +4 -0
  32. package/dist/platform-weapp/components.js +520 -0
  33. package/dist/platform-weapp/components.js.map +1 -0
  34. package/dist/platform-weapp/index.d.ts +11 -0
  35. package/dist/platform-weapp/index.js +17 -0
  36. package/dist/platform-weapp/index.js.map +1 -0
  37. package/dist/platform-weapp/program.d.ts +35 -0
  38. package/dist/platform-weapp/program.js +64 -0
  39. package/dist/platform-weapp/program.js.map +1 -0
  40. package/dist/platform-weapp/runtime-utils.d.ts +27 -0
  41. package/dist/platform-weapp/runtime-utils.js +48 -0
  42. package/dist/platform-weapp/runtime-utils.js.map +1 -0
  43. package/dist/platform-weapp/runtime.d.ts +1 -0
  44. package/dist/platform-weapp/runtime.js +7 -0
  45. package/dist/platform-weapp/runtime.js.map +1 -0
  46. package/dist/platform-weapp/template.d.ts +39 -0
  47. package/dist/platform-weapp/template.js +119 -0
  48. package/dist/platform-weapp/template.js.map +1 -0
  49. package/dist/presets/commands/build.js +25 -45
  50. package/dist/presets/commands/build.js.map +1 -1
  51. package/dist/presets/commands/init.js +2 -4
  52. package/dist/presets/commands/init.js.map +1 -1
  53. package/dist/presets/constant/hooks.d.ts +0 -2
  54. package/dist/presets/constant/hooks.js +1 -3
  55. package/dist/presets/constant/hooks.js.map +1 -1
  56. package/dist/presets/files/generate-framework-info.js +68 -0
  57. package/dist/presets/files/generate-framework-info.js.map +1 -0
  58. package/dist/presets/files/{generateProjectConfig.js → generate-project-config.js} +1 -1
  59. package/dist/presets/files/generate-project-config.js.map +1 -0
  60. package/dist/presets/files/{writeFileToDist.js → write-file-to-dist.js} +1 -1
  61. package/dist/presets/files/write-file-to-dist.js.map +1 -0
  62. package/dist/presets/hooks/build.js +1 -3
  63. package/dist/presets/hooks/build.js.map +1 -1
  64. package/dist/presets/index.js +3 -5
  65. package/dist/presets/index.js.map +1 -1
  66. package/dist/util/{appConfig.d.ts → app-config.d.ts} +2 -2
  67. package/dist/util/{appConfig.js → app-config.js} +4 -3
  68. package/dist/util/app-config.js.map +1 -0
  69. package/dist/util/defineConfig.d.ts +5 -5
  70. package/dist/util/defineConfig.js.map +1 -1
  71. package/dist/util/index.d.ts +9 -1
  72. package/dist/util/index.js +54 -23
  73. package/dist/util/index.js.map +1 -1
  74. package/package.json +36 -39
  75. package/postinstall.js +1 -17
  76. package/src/cli.ts +185 -132
  77. package/src/commands/custom-command.ts +22 -0
  78. package/src/create/{fetchTemplate.ts → fetch-template.ts} +30 -35
  79. package/src/create/project.ts +31 -78
  80. package/src/create/template-creator.ts +325 -0
  81. package/src/doctor/validators.js +1 -0
  82. package/src/doctor/validators.ts +8 -6
  83. package/src/platform-weapp/apis-list.ts +33 -0
  84. package/src/platform-weapp/apis.ts +48 -0
  85. package/src/platform-weapp/components-react.ts +81 -0
  86. package/src/platform-weapp/components.ts +521 -0
  87. package/src/platform-weapp/index.ts +25 -0
  88. package/src/platform-weapp/program.ts +70 -0
  89. package/src/platform-weapp/runtime-utils.ts +57 -0
  90. package/src/platform-weapp/runtime.ts +6 -0
  91. package/src/platform-weapp/template.ts +150 -0
  92. package/src/presets/commands/build.ts +20 -40
  93. package/src/presets/commands/init.ts +1 -4
  94. package/src/presets/constant/hooks.js +12 -0
  95. package/src/presets/constant/hooks.ts +0 -2
  96. package/src/presets/files/{generateFrameworkInfo.ts → generate-framework-info.ts} +7 -1
  97. package/src/presets/hooks/build.ts +1 -3
  98. package/src/presets/index.ts +3 -5
  99. package/src/util/app-config.js +1 -0
  100. package/src/util/{appConfig.ts → app-config.ts} +5 -4
  101. package/src/util/defineConfig.ts +6 -6
  102. package/src/util/index.ts +67 -25
  103. package/templates/default/config/dev.js +1 -1
  104. package/templates/default/config/index.js +28 -40
  105. package/templates/default/config/prod.js +1 -1
  106. package/templates/default/package.json.tmpl +2 -17
  107. package/templates/default/types/global.d.ts +0 -4
  108. package/templates/plugin-compile/README.md +3 -1
  109. package/templates/plugin-compile/package.json.tmpl +1 -2
  110. package/templates/plugin-compile/src/index.ts +18 -28
  111. package/LICENSE +0 -174
  112. package/dist/commands/customCommand.js +0 -23
  113. package/dist/commands/customCommand.js.map +0 -1
  114. package/dist/config/packagesManagement.d.ts +0 -19
  115. package/dist/config/packagesManagement.js +0 -22
  116. package/dist/config/packagesManagement.js.map +0 -1
  117. package/dist/create/fetchTemplate.js.map +0 -1
  118. package/dist/create/page.d.ts +0 -65
  119. package/dist/create/page.js +0 -266
  120. package/dist/create/page.js.map +0 -1
  121. package/dist/create/plugin.d.ts +0 -16
  122. package/dist/create/plugin.js +0 -77
  123. package/dist/create/plugin.js.map +0 -1
  124. package/dist/presets/commands/config.js +0 -121
  125. package/dist/presets/commands/config.js.map +0 -1
  126. package/dist/presets/commands/create.js +0 -112
  127. package/dist/presets/commands/create.js.map +0 -1
  128. package/dist/presets/commands/doctor.js +0 -15
  129. package/dist/presets/commands/doctor.js.map +0 -1
  130. package/dist/presets/commands/global-config.d.ts +0 -3
  131. package/dist/presets/commands/global-config.js +0 -175
  132. package/dist/presets/commands/global-config.js.map +0 -1
  133. package/dist/presets/commands/help.d.ts +0 -3
  134. package/dist/presets/commands/help.js +0 -16
  135. package/dist/presets/commands/help.js.map +0 -1
  136. package/dist/presets/commands/info.d.ts +0 -3
  137. package/dist/presets/commands/info.js +0 -96
  138. package/dist/presets/commands/info.js.map +0 -1
  139. package/dist/presets/commands/inspect.d.ts +0 -3
  140. package/dist/presets/commands/inspect.js +0 -155
  141. package/dist/presets/commands/inspect.js.map +0 -1
  142. package/dist/presets/commands/update.d.ts +0 -3
  143. package/dist/presets/commands/update.js +0 -187
  144. package/dist/presets/commands/update.js.map +0 -1
  145. package/dist/presets/files/generateFrameworkInfo.d.ts +0 -3
  146. package/dist/presets/files/generateFrameworkInfo.js +0 -30
  147. package/dist/presets/files/generateFrameworkInfo.js.map +0 -1
  148. package/dist/presets/files/generateProjectConfig.d.ts +0 -3
  149. package/dist/presets/files/generateProjectConfig.js.map +0 -1
  150. package/dist/presets/files/writeFileToDist.d.ts +0 -3
  151. package/dist/presets/files/writeFileToDist.js.map +0 -1
  152. package/dist/presets/hooks/create.d.ts +0 -3
  153. package/dist/presets/hooks/create.js +0 -42
  154. package/dist/presets/hooks/create.js.map +0 -1
  155. package/dist/presets/platforms/plugin.d.ts +0 -3
  156. package/dist/presets/platforms/plugin.js +0 -106
  157. package/dist/presets/platforms/plugin.js.map +0 -1
  158. package/dist/presets/platforms/rn.d.ts +0 -3
  159. package/dist/presets/platforms/rn.js +0 -130
  160. package/dist/presets/platforms/rn.js.map +0 -1
  161. package/dist/util/appConfig.js.map +0 -1
  162. package/dist/util/createPage.d.ts +0 -9
  163. package/dist/util/createPage.js +0 -114
  164. package/dist/util/createPage.js.map +0 -1
  165. package/src/commands/customCommand.ts +0 -22
  166. package/src/config/packagesManagement.ts +0 -20
  167. package/src/config/rn-stylelint.json +0 -4
  168. package/src/create/page.ts +0 -325
  169. package/src/create/plugin.ts +0 -55
  170. package/src/presets/commands/config.ts +0 -86
  171. package/src/presets/commands/create.ts +0 -104
  172. package/src/presets/commands/doctor.ts +0 -21
  173. package/src/presets/commands/global-config.ts +0 -140
  174. package/src/presets/commands/help.ts +0 -17
  175. package/src/presets/commands/info.ts +0 -81
  176. package/src/presets/commands/inspect.ts +0 -137
  177. package/src/presets/commands/update.ts +0 -175
  178. package/src/presets/hooks/create.ts +0 -9
  179. package/src/presets/platforms/plugin.ts +0 -75
  180. package/src/presets/platforms/rn.ts +0 -125
  181. package/src/util/createPage.ts +0 -139
  182. package/templates/default/babel.config.js +0 -14
  183. /package/dist/create/{fetchTemplate.d.ts → fetch-template.d.ts} +0 -0
  184. /package/dist/presets/{commands/config.d.ts → files/generate-framework-info.d.ts} +0 -0
  185. /package/dist/presets/{commands/create.d.ts → files/generate-project-config.d.ts} +0 -0
  186. /package/dist/presets/{commands/doctor.d.ts → files/write-file-to-dist.d.ts} +0 -0
  187. /package/src/presets/files/{generateProjectConfig.ts → generate-project-config.ts} +0 -0
  188. /package/src/presets/files/{writeFileToDist.ts → write-file-to-dist.ts} +0 -0
package/README.md CHANGED
@@ -1,6 +1,12 @@
1
1
  # `@spcsn/taro-cli`
2
2
 
3
- `@spcsn/taro` 命令行工具,提供项目初始化、构建、检测、信息查询等功能。
3
+ `@spcsn/taro-cli` 是 Taro Lite 的命令行入口,负责项目初始化、构建、配置检查和运行环境信息输出。
4
+
5
+ ## 包定位
6
+
7
+ - 业务侧公开工具包,可全局安装,也可作为项目 devDependency 使用。
8
+ - 内部编排 `@spcsn/taro-service`、`@spcsn/taro-mini-runner` 和微信小程序平台能力。
9
+ - 业务项目不应直接依赖 CLI 背后的 service、runner、helper 等内部包。
4
10
 
5
11
  ## 安装
6
12
 
@@ -20,15 +26,12 @@ taro <command> [options]
20
26
  | --- | --- |
21
27
  | `init <name>` | 创建新项目 |
22
28
  | `build` | 构建项目 |
23
- | `config` | 查看/设置全局配置 |
29
+ | `config` | 查看或设置全局配置 |
24
30
  | `doctor` | 检测项目配置与依赖是否有问题 |
25
31
  | `info` | 打印当前环境信息 |
26
32
  | `inspect` | 检查 Vite 构建配置 |
27
33
  | `update` | 更新 `@spcsn` 相关依赖到最新版本 |
28
34
 
29
- ## 支持的平台
30
-
31
- - 微信小程序(weapp)
32
- - Skyline / glass-easel
35
+ ## 支持范围
33
36
 
34
- > 本工具仅支持 React 19 + Vite 构建链,不支持 H5、React Native、Harmony、Vue、Webpack 等。
37
+ 当前只维护 React 19 开发微信小程序(Skyline / glass-easel)链路,不支持 H5、React Native、Harmony、Vue、Webpack 等上游历史路径。
@@ -0,0 +1 @@
1
+ export * from './dist/util/defineConfig';
@@ -0,0 +1 @@
1
+ module.exports = require('./dist/util/defineConfig.js');
package/dist/cli.js CHANGED
@@ -39,12 +39,95 @@ Object.defineProperty(exports, "__esModule", { value: true });
39
39
  const path = __importStar(require("node:path"));
40
40
  const taro_helper_1 = require("@spcsn/taro-helper");
41
41
  const taro_service_1 = require("@spcsn/taro-service");
42
- const minimist_1 = __importDefault(require("minimist"));
43
- const customCommand_1 = __importDefault(require("./commands/customCommand"));
44
- const util_1 = require("./util");
45
- const DISABLE_GLOBAL_CONFIG_COMMANDS = ['global-config', 'doctor', 'update', 'config'];
42
+ const custom_command_1 = __importDefault(require("./commands/custom-command"));
43
+ const index_js_1 = require("./util/index.js");
46
44
  const DEFAULT_FRAMEWORK = 'react';
45
+ const SUPPORTED_COMMANDS = new Set(['build', 'init']);
46
+ const ARG_ALIASES = {
47
+ envPrefix: ['env-prefix'],
48
+ help: ['h'],
49
+ port: ['p'],
50
+ version: ['v'],
51
+ };
52
+ const BOOLEAN_ARGS = new Set(['disable-global-config', 'h', 'help', 'v', 'version']);
53
+ function parseArgValue(value) {
54
+ if (value.trim() !== '' && /^-?\d+(\.\d+)?$/.test(value)) {
55
+ return Number(value);
56
+ }
57
+ return value;
58
+ }
59
+ function setArgValue(args, key, value) {
60
+ args[key] = value;
61
+ for (const [canonicalKey, aliases] of Object.entries(ARG_ALIASES)) {
62
+ if (key === canonicalKey || aliases.includes(key)) {
63
+ args[canonicalKey] = value;
64
+ aliases.forEach((alias) => {
65
+ args[alias] = value;
66
+ });
67
+ return;
68
+ }
69
+ }
70
+ }
71
+ function getStringArg(args, key) {
72
+ const value = args[key];
73
+ return typeof value === 'string' ? value : undefined;
74
+ }
75
+ function getNumberArg(args, key) {
76
+ const value = args[key];
77
+ return typeof value === 'number' ? value : undefined;
78
+ }
79
+ function parseCliArgs(argv) {
80
+ const args = {
81
+ _: [],
82
+ build: true,
83
+ check: true,
84
+ h: false,
85
+ help: false,
86
+ 'inject-global-style': true,
87
+ v: false,
88
+ version: false,
89
+ };
90
+ for (let index = 0; index < argv.length; index++) {
91
+ const item = argv[index];
92
+ if (!item.startsWith('-') || item === '-') {
93
+ args._.push(item);
94
+ continue;
95
+ }
96
+ if (item === '--') {
97
+ args._.push(...argv.slice(index + 1));
98
+ break;
99
+ }
100
+ const normalizedItem = item.replace(/^--?/, '');
101
+ const equalIndex = normalizedItem.indexOf('=');
102
+ const rawKey = equalIndex >= 0 ? normalizedItem.slice(0, equalIndex) : normalizedItem;
103
+ const inlineValue = equalIndex >= 0 ? normalizedItem.slice(equalIndex + 1) : undefined;
104
+ const isNegativeBoolean = rawKey.startsWith('no-');
105
+ const key = isNegativeBoolean ? rawKey.slice(3) : rawKey;
106
+ if (isNegativeBoolean) {
107
+ setArgValue(args, key, false);
108
+ continue;
109
+ }
110
+ if (inlineValue !== undefined) {
111
+ setArgValue(args, key, parseArgValue(inlineValue));
112
+ continue;
113
+ }
114
+ if (BOOLEAN_ARGS.has(key)) {
115
+ setArgValue(args, key, true);
116
+ continue;
117
+ }
118
+ const nextItem = argv[index + 1];
119
+ if (nextItem && !nextItem.startsWith('-')) {
120
+ setArgValue(args, key, parseArgValue(nextItem));
121
+ index++;
122
+ }
123
+ else {
124
+ setArgValue(args, key, true);
125
+ }
126
+ }
127
+ return args;
128
+ }
47
129
  class CLI {
130
+ appPath;
48
131
  constructor(appPath) {
49
132
  this.appPath = appPath || process.cwd();
50
133
  const majorVersion = parseInt(process.version.substring(1).split('.')[0], 10);
@@ -56,57 +139,42 @@ class CLI {
56
139
  return this.parseArgs();
57
140
  }
58
141
  async parseArgs() {
59
- var _a;
60
- const args = (0, minimist_1.default)(process.argv.slice(2), {
61
- alias: {
62
- version: ['v'],
63
- help: ['h'],
64
- port: ['p'],
65
- resetCache: ['reset-cache'], // specially for rn, Removes cached files.
66
- publicPath: ['public-path'], // specially for rn, assets public path.
67
- bundleOutput: ['bundle-output'], // specially for rn, File name where to store the resulting bundle.
68
- sourcemapOutput: ['sourcemap-output'], // specially for rn, File name where to store the sourcemap file for resulting bundle.
69
- sourceMapUrl: ['sourcemap-use-absolute-path'], // specially for rn, Report SourceMapURL using its full path.
70
- sourcemapSourcesRoot: ['sourcemap-sources-root'], // specially for rn, Path to make sourcemaps sources entries relative to.
71
- assetsDest: ['assets-dest'], // specially for rn, Directory name where to store assets referenced in the bundle.
72
- envPrefix: ['env-prefix'],
73
- },
74
- boolean: ['version', 'help', 'disable-global-config'],
75
- default: {
76
- build: true,
77
- check: true,
78
- 'inject-global-style': true,
79
- },
80
- });
142
+ const totalStartMs = index_js_1.cliProfiler.start();
143
+ const parseArgsStartMs = index_js_1.cliProfiler.start();
144
+ const args = parseCliArgs(process.argv.slice(2));
145
+ index_js_1.cliProfiler.end('parse args', parseArgsStartMs);
81
146
  const _ = args._;
82
147
  const command = _[0];
83
148
  if (command) {
84
149
  const appPath = this.appPath;
85
150
  const presetsPath = path.resolve(__dirname, 'presets');
86
151
  const commandsPath = path.resolve(presetsPath, 'commands');
87
- const platformsPath = path.resolve(presetsPath, 'platforms');
88
- const commandPlugins = taro_helper_1.fs.readdirSync(commandsPath);
89
152
  const targetPlugin = `${command}.js`;
153
+ if (!SUPPORTED_COMMANDS.has(command)) {
154
+ console.log('当前 CLI 仅支持 build 和 init 命令。');
155
+ return;
156
+ }
90
157
  // 设置环境变量
91
- (_a = process.env).NODE_ENV || (_a.NODE_ENV = args.env);
92
- if (process.env.NODE_ENV === 'undefined' && (command === 'build' || command === 'inspect')) {
158
+ const env = getStringArg(args, 'env');
159
+ const envPrefix = getStringArg(args, 'envPrefix');
160
+ process.env.NODE_ENV ||= env;
161
+ if (process.env.NODE_ENV === 'undefined' && command === 'build') {
93
162
  process.env.NODE_ENV = args.watch ? 'development' : 'production';
94
163
  }
95
- args.type || (args.type = args.t);
96
- // React-only / weapp-first fork:build/inspect 命令未显式指定 --type 时默认 weapp
97
- if (!args.type && (command === 'build' || command === 'inspect') && typeof args.plugin !== 'string') {
164
+ args.type ||= getStringArg(args, 't');
165
+ if (!args.type && command === 'build') {
98
166
  args.type = 'weapp';
99
167
  }
100
- if (args.type) {
101
- process.env.TARO_ENV = args.type;
168
+ const type = getStringArg(args, 'type');
169
+ if (type) {
170
+ process.env.TARO_ENV = type;
102
171
  }
103
- if (typeof args.plugin === 'string') {
104
- process.env.TARO_ENV = 'plugin';
105
- }
106
- const mode = args.mode || process.env.NODE_ENV;
172
+ const mode = getStringArg(args, 'mode') || process.env.NODE_ENV || 'production';
107
173
  // 这里解析 dotenv 以便于 config 解析时能获取 dotenv 配置信息
108
- const expandEnv = (0, taro_helper_1.dotenvParse)(appPath, args.envPrefix, mode);
109
- const disableGlobalConfig = !!(args['disable-global-config'] || DISABLE_GLOBAL_CONFIG_COMMANDS.includes(command));
174
+ const dotenvStartMs = index_js_1.cliProfiler.start();
175
+ const expandEnv = (0, taro_helper_1.dotenvParse)(appPath, envPrefix, mode);
176
+ index_js_1.cliProfiler.end('dotenv parse', dotenvStartMs);
177
+ const disableGlobalConfig = !!args['disable-global-config'];
110
178
  const configEnv = {
111
179
  mode,
112
180
  command,
@@ -115,38 +183,31 @@ class CLI {
115
183
  appPath: this.appPath,
116
184
  disableGlobalConfig: disableGlobalConfig,
117
185
  });
118
- await config.init(configEnv);
186
+ await index_js_1.cliProfiler.measure('config init', () => config.init(configEnv));
187
+ const kernelStartMs = index_js_1.cliProfiler.start();
119
188
  const kernel = new taro_service_1.Kernel({
120
189
  appPath,
121
190
  presets: [path.resolve(__dirname, '.', 'presets', 'index.js')],
122
191
  config,
123
192
  plugins: [],
124
193
  });
125
- kernel.optsPlugins || (kernel.optsPlugins = []);
194
+ index_js_1.cliProfiler.end('kernel init', kernelStartMs);
195
+ kernel.optsPlugins ||= [];
126
196
  // 将自定义的 变量 添加到 config.env 中,实现 definePlugin 字段定义
127
197
  const initialConfig = kernel.config?.initialConfig;
128
198
  if (initialConfig) {
129
199
  initialConfig.env = (0, taro_helper_1.patchEnv)(initialConfig, expandEnv);
130
200
  }
131
- if (commandPlugins.includes(targetPlugin)) {
132
- // 针对不同的内置命令注册对应的命令插件
133
- kernel.optsPlugins.push(path.resolve(commandsPath, targetPlugin));
134
- }
135
- // 把内置命令插件传递给 kernel,可以暴露给其他插件使用
201
+ kernel.optsPlugins.push(path.resolve(commandsPath, targetPlugin));
136
202
  kernel.cliCommandsPath = commandsPath;
137
- kernel.cliCommands = commandPlugins
138
- .filter((commandFileName) => /^[\w-]+(\.[\w-]+)*\.js$/.test(commandFileName))
139
- .map((fileName) => fileName.replace(/\.js$/, ''));
203
+ kernel.cliCommands = Array.from(SUPPORTED_COMMANDS);
140
204
  switch (command) {
141
- case 'inspect':
142
205
  case 'build': {
143
- let plugin;
144
- let platform = args.type;
145
- const { publicPath, bundleOutput, sourcemapOutput, sourceMapUrl, sourcemapSourcesRoot, assetsDest } = args;
206
+ let platform = getStringArg(args, 'type');
146
207
  // 针对不同的内置平台注册对应的端平台插件
147
208
  switch (platform) {
148
209
  case 'weapp':
149
- kernel.optsPlugins.push(`@spcsn/taro-plugin-platform-${platform}`);
210
+ kernel.optsPlugins.push(path.resolve(__dirname, 'platform-weapp'));
150
211
  break;
151
212
  default: {
152
213
  if (platform) {
@@ -162,28 +223,11 @@ class CLI {
162
223
  console.log('当前 Fork 仅支持 React 框架。');
163
224
  return;
164
225
  }
165
- kernel.optsPlugins.push('@spcsn/taro-plugin-framework-react');
166
- // 编译小程序插件
167
- if (typeof args.plugin === 'string') {
168
- plugin = args.plugin;
169
- if (plugin !== 'weapp') {
170
- console.log('当前 Fork 仅支持 weapp 小程序插件编译。');
171
- return;
172
- }
173
- platform = 'plugin';
174
- kernel.optsPlugins.push(path.resolve(platformsPath, 'plugin.js'));
175
- kernel.optsPlugins.push(`@spcsn/taro-plugin-platform-${plugin}`);
176
- }
177
- // 传递 inspect 参数即可
178
- if (command === 'inspect') {
179
- (0, customCommand_1.default)(command, kernel, args);
180
- break;
181
- }
182
- (0, customCommand_1.default)(command, kernel, {
226
+ kernel.optsPlugins.push(require.resolve('@spcsn/taro-mini-runner/framework-react'));
227
+ await index_js_1.cliProfiler.measure('build command', () => (0, custom_command_1.default)(command, kernel, {
183
228
  args,
184
229
  _,
185
230
  platform,
186
- plugin,
187
231
  isWatch: Boolean(args.watch),
188
232
  // Note: 是否把 Taro 组件编译为原生自定义组件
189
233
  isBuildNativeComp: _[1] === 'native-components',
@@ -193,45 +237,38 @@ class CLI {
193
237
  withoutBuild: !args.build,
194
238
  noInjectGlobalStyle: !args['inject-global-style'],
195
239
  noCheck: !args.check,
196
- port: args.port,
197
- env: args.env,
198
- deviceType: args.platform,
199
- resetCache: !!args.resetCache,
200
- publicPath,
201
- bundleOutput,
202
- sourcemapOutput,
203
- sourceMapUrl,
204
- sourcemapSourcesRoot,
205
- assetsDest,
240
+ port: getNumberArg(args, 'port'),
241
+ env,
242
+ deviceType: getStringArg(args, 'platform'),
206
243
  qr: !!args.qr,
207
244
  blended: Boolean(args.blended),
208
245
  h: args.h,
209
- });
246
+ }));
247
+ index_js_1.cliProfiler.end('total', totalStartMs);
248
+ index_js_1.cliProfiler.print();
210
249
  break;
211
250
  }
212
251
  case 'init': {
213
- (0, customCommand_1.default)(command, kernel, {
252
+ await index_js_1.cliProfiler.measure('init command', () => (0, custom_command_1.default)(command, kernel, {
214
253
  _,
215
254
  appPath,
216
- projectName: _[1] || args.name,
217
- description: args.description,
255
+ projectName: _[1] || getStringArg(args, 'name'),
256
+ description: getStringArg(args, 'description'),
218
257
  typescript: args.typescript,
219
- buildEs5: args['build-es5'],
220
- framework: args.framework,
221
- compiler: args.compiler,
222
- npm: args.npm,
223
- templateSource: args['template-source'],
258
+ framework: getStringArg(args, 'framework'),
259
+ compiler: getStringArg(args, 'compiler'),
260
+ npm: getStringArg(args, 'npm'),
261
+ templateSource: getStringArg(args, 'template-source'),
224
262
  clone: !!args.clone,
225
- template: args.template,
226
- css: args.css,
263
+ template: getStringArg(args, 'template'),
264
+ css: getStringArg(args, 'css'),
227
265
  autoInstall: args.autoInstall,
228
266
  h: args.h,
229
- });
267
+ }));
268
+ index_js_1.cliProfiler.end('total', totalStartMs);
269
+ index_js_1.cliProfiler.print();
230
270
  break;
231
271
  }
232
- default:
233
- (0, customCommand_1.default)(command, kernel, args);
234
- break;
235
272
  }
236
273
  }
237
274
  else {
@@ -243,18 +280,11 @@ class CLI {
243
280
  console.log(' -h, --help output usage information');
244
281
  console.log();
245
282
  console.log('Commands:');
246
- console.log(' init [projectName] Init a project with default templete');
247
- console.log(' config <cmd> Taro config');
248
- console.log(' create Create page for project');
249
- console.log(' build Build a project with options');
250
- console.log(' update Update packages of taro');
251
- console.log(' info Diagnostics Taro env info');
252
- console.log(' doctor Diagnose taro project');
253
- console.log(' inspect Inspect the webpack config');
254
- console.log(' help [cmd] display help for [cmd]');
283
+ console.log(' init [projectName] Init a project with default template');
284
+ console.log(' build Build a WeApp project');
255
285
  }
256
286
  else if (args.v) {
257
- console.log((0, util_1.getPkgVersion)());
287
+ console.log((0, index_js_1.getPkgVersion)());
258
288
  }
259
289
  }
260
290
  }
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -2,4 +2,4 @@ import { Kernel } from '@spcsn/taro-service';
2
2
  export default function customCommand(command: string, kernel: Kernel, args: {
3
3
  _: string[];
4
4
  [key: string]: any;
5
- }): void;
5
+ }): Promise<void>;
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = customCommand;
4
+ function customCommand(command, kernel, args) {
5
+ if (typeof command !== 'string')
6
+ return Promise.resolve();
7
+ const options = {};
8
+ const excludeKeys = ['_', 'version', 'v', 'help', 'h', 'disable-global-config'];
9
+ Object.keys(args).forEach((key) => {
10
+ if (!excludeKeys.includes(key)) {
11
+ options[key] = args[key];
12
+ }
13
+ });
14
+ return kernel.run({
15
+ name: command,
16
+ opts: {
17
+ _: args._,
18
+ options,
19
+ isHelp: args.h,
20
+ },
21
+ });
22
+ }
23
+ //# sourceMappingURL=custom-command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-command.js","sourceRoot":"","sources":["../../src/commands/custom-command.ts"],"names":[],"mappings":";;AAEA,gCAmBC;AAnBD,SAAwB,aAAa,CAAC,OAAe,EAAE,MAAc,EAAE,IAAyC;IAC9G,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAE1D,MAAM,OAAO,GAAQ,EAAE,CAAC;IACxB,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,uBAAuB,CAAC,CAAC;IAChF,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QAChC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC,GAAG,CAAC;QAChB,IAAI,EAAE,OAAO;QACb,IAAI,EAAE;YACJ,CAAC,EAAE,IAAI,CAAC,CAAC;YACT,OAAO;YACP,MAAM,EAAE,IAAI,CAAC,CAAC;SACf;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -37,6 +37,8 @@ const path = __importStar(require("node:path"));
37
37
  const taro_helper_1 = require("@spcsn/taro-helper");
38
38
  const util_1 = require("../util");
39
39
  class Creator {
40
+ _rootPath;
41
+ rootPath;
40
42
  constructor(sourceRoot) {
41
43
  this.rootPath = this.sourceRoot(sourceRoot || path.join((0, util_1.getRootPath)()));
42
44
  this.init();
@@ -1 +1 @@
1
- {"version":3,"file":"creator.js","sourceRoot":"","sources":["../../src/create/creator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAkC;AAElC,oDAAwC;AAExC,kCAAsC;AAEtC,MAAqB,OAAO;IAI1B,YAAY,UAAmB;QAC7B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,IAAA,kBAAW,GAAE,CAAC,CAAC,CAAC;QACxE,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;IAED,IAAI,KAAI,CAAC;IAET,UAAU,CAAC,QAAiB;QAC1B,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACjC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;QACD,IAAI,CAAC,gBAAE,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YACnC,gBAAE,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACnC,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,YAAY,CAAC,GAAG,IAAc;QAC5B,IAAI,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/B,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC9D,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,KAAI,CAAC;CACX;AA9BD,0BA8BC"}
1
+ {"version":3,"file":"creator.js","sourceRoot":"","sources":["../../src/create/creator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAkC;AAElC,oDAAwC;AAExC,kCAAsC;AAEtC,MAAqB,OAAO;IAChB,SAAS,CAAU;IACtB,QAAQ,CAAS;IAExB,YAAY,UAAmB;QAC7B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,IAAA,kBAAW,GAAE,CAAC,CAAC,CAAC;QACxE,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;IAED,IAAI,KAAI,CAAC;IAET,UAAU,CAAC,QAAiB;QAC1B,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACjC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;QACD,IAAI,CAAC,gBAAE,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YACnC,gBAAE,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACnC,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,YAAY,CAAC,GAAG,IAAc;QAC5B,IAAI,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/B,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC9D,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,KAAI,CAAC;CACX;AA9BD,0BA8BC"}
@@ -40,23 +40,21 @@ exports.default = fetchTemplate;
40
40
  const path = __importStar(require("node:path"));
41
41
  const taro_helper_1 = require("@spcsn/taro-helper");
42
42
  const AdmZip = __importStar(require("adm-zip"));
43
- const axios_1 = __importDefault(require("axios"));
44
43
  const download = __importStar(require("download-git-repo"));
45
44
  const ora_1 = __importDefault(require("ora"));
46
45
  const util_1 = require("../util");
47
46
  const constants_1 = require("./constants");
48
47
  const TEMP_DOWNLOAD_FOLDER = 'taro-temp';
49
- function fetchTemplate(templateSource, templateRootPath, clone) {
48
+ async function fetchTemplate(templateSource, templateRootPath, clone) {
50
49
  const type = (0, util_1.getTemplateSourceType)(templateSource);
51
50
  const tempPath = path.join(templateRootPath, TEMP_DOWNLOAD_FOLDER);
52
51
  let name;
53
- // eslint-disable-next-line no-async-promise-executor
54
- return new Promise(async (resolve) => {
55
- // 下载文件的缓存目录
56
- if (taro_helper_1.fs.existsSync(tempPath))
57
- await taro_helper_1.fs.remove(tempPath);
58
- await taro_helper_1.fs.mkdirp(templateRootPath);
59
- await taro_helper_1.fs.mkdir(tempPath);
52
+ // 下载文件的缓存目录
53
+ if (taro_helper_1.fs.existsSync(tempPath))
54
+ await taro_helper_1.fs.remove(tempPath);
55
+ await taro_helper_1.fs.mkdirp(templateRootPath);
56
+ await taro_helper_1.fs.mkdir(tempPath);
57
+ return new Promise((resolve) => {
60
58
  const spinner = (0, ora_1.default)(`正在从 ${templateSource} 拉取远程模板...`).start();
61
59
  if (type === 'git') {
62
60
  name = path.basename(templateSource);
@@ -78,29 +76,24 @@ function fetchTemplate(templateSource, templateRootPath, clone) {
78
76
  name = 'from-remote-url';
79
77
  const zipPath = path.join(tempPath, name + '.zip');
80
78
  const unZipPath = path.join(tempPath, name);
81
- axios_1.default
82
- .get(templateSource, { responseType: 'stream' })
83
- .then((response) => {
84
- const ws = taro_helper_1.fs.createWriteStream(zipPath);
85
- response.data.pipe(ws);
86
- ws.on('finish', () => {
87
- // unzip
88
- const zip = new AdmZip(zipPath);
89
- zip.extractAllTo(unZipPath, true);
90
- const files = (0, util_1.readDirWithFileTypes)(unZipPath).filter((file) => !file.name.startsWith('.') && file.isDirectory && file.name !== '__MACOSX');
91
- if (files.length !== 1) {
92
- spinner.color = 'red';
93
- spinner.fail(taro_helper_1.chalk.red(`拉取远程模板仓库失败!\n${new Error('远程模板源组织格式错误')}`));
94
- return resolve();
95
- }
96
- name = path.join(name, files[0].name);
97
- spinner.color = 'green';
98
- spinner.succeed(`${taro_helper_1.chalk.grey('拉取远程模板仓库成功!')}`);
99
- resolve();
100
- });
101
- ws.on('error', (error) => {
102
- throw error;
103
- });
79
+ fetch(templateSource)
80
+ .then(async (response) => {
81
+ if (!response.ok) {
82
+ throw new Error(`HTTP ${response.status} ${response.statusText}`);
83
+ }
84
+ await taro_helper_1.fs.writeFile(zipPath, Buffer.from(await response.arrayBuffer()));
85
+ const zip = new AdmZip(zipPath);
86
+ zip.extractAllTo(unZipPath, true);
87
+ const files = (0, util_1.readDirWithFileTypes)(unZipPath).filter((file) => !file.name.startsWith('.') && file.isDirectory && file.name !== '__MACOSX');
88
+ if (files.length !== 1) {
89
+ spinner.color = 'red';
90
+ spinner.fail(taro_helper_1.chalk.red(`拉取远程模板仓库失败!\n${new Error('远程模板源组织格式错误')}`));
91
+ return resolve();
92
+ }
93
+ name = path.join(name, files[0].name);
94
+ spinner.color = 'green';
95
+ spinner.succeed(`${taro_helper_1.chalk.grey('拉取远程模板仓库成功!')}`);
96
+ resolve();
104
97
  })
105
98
  .catch(async (error) => {
106
99
  spinner.color = 'red';
@@ -166,4 +159,4 @@ function fetchTemplate(templateSource, templateRootPath, clone) {
166
159
  }
167
160
  });
168
161
  }
169
- //# sourceMappingURL=fetchTemplate.js.map
162
+ //# sourceMappingURL=fetch-template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch-template.js","sourceRoot":"","sources":["../../src/create/fetch-template.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { CompilerType, CSSType, FrameworkType, NpmType } from '@spcsn/taro-binding';
2
1
  import Creator from './creator';
3
- import type { ITemplates } from './fetchTemplate';
2
+ import { CompilerType, CSSType, FrameworkType, NpmType } from './template-creator';
3
+ import type { ITemplates } from './fetch-template';
4
4
  export interface IProjectConf {
5
5
  projectName: string;
6
6
  projectDir: string;
@@ -10,7 +10,6 @@ export interface IProjectConf {
10
10
  template: string;
11
11
  description?: string;
12
12
  typescript?: boolean;
13
- buildEs5?: boolean;
14
13
  css: CSSType;
15
14
  date?: string;
16
15
  src?: string;
@@ -42,7 +41,6 @@ export default class Project extends Creator {
42
41
  template: string;
43
42
  description?: string;
44
43
  typescript?: boolean;
45
- buildEs5?: boolean;
46
44
  css: CSSType;
47
45
  date?: string;
48
46
  src?: string;
@@ -57,8 +55,6 @@ export default class Project extends Creator {
57
55
  askProjectName: AskMethods;
58
56
  askDescription: AskMethods;
59
57
  askTypescript: AskMethods;
60
- askBuildEs5: AskMethods;
61
- askCSS: AskMethods;
62
58
  askCompiler: AskMethods;
63
59
  askFramework: AskMethods;
64
60
  askTemplateSource: AskMethods;