@spcsn/taro-cli 0.1.5 → 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 (220) hide show
  1. package/README.md +37 -0
  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/__tests__/__mocks__/presets.ts +0 -15
  166. package/src/__tests__/build-config.spec.ts +0 -66
  167. package/src/__tests__/cli.spec.ts +0 -226
  168. package/src/__tests__/config.spec.ts +0 -224
  169. package/src/__tests__/doctor-config.spec.ts +0 -918
  170. package/src/__tests__/doctor-recommand.spec.ts +0 -136
  171. package/src/__tests__/doctor.spec.ts +0 -94
  172. package/src/__tests__/dotenv-parse.spec.ts +0 -105
  173. package/src/__tests__/env/.env +0 -2
  174. package/src/__tests__/fixtures/default/.env +0 -3
  175. package/src/__tests__/fixtures/default/.env.development +0 -1
  176. package/src/__tests__/fixtures/default/.env.local +0 -1
  177. package/src/__tests__/fixtures/default/.env.pre +0 -3
  178. package/src/__tests__/fixtures/default/.env.production +0 -1
  179. package/src/__tests__/fixtures/default/.env.uat +0 -5
  180. package/src/__tests__/fixtures/default/.env.uat.local +0 -1
  181. package/src/__tests__/fixtures/default/babel.config.js +0 -10
  182. package/src/__tests__/fixtures/default/config/dev.js +0 -9
  183. package/src/__tests__/fixtures/default/config/index.js +0 -84
  184. package/src/__tests__/fixtures/default/config/prod.js +0 -18
  185. package/src/__tests__/fixtures/default/package.json +0 -27
  186. package/src/__tests__/fixtures/default/src/app.config.js +0 -11
  187. package/src/__tests__/fixtures/default/src/app.js +0 -16
  188. package/src/__tests__/fixtures/default/src/app.scss +0 -0
  189. package/src/__tests__/fixtures/default/src/index.html +0 -19
  190. package/src/__tests__/fixtures/default/src/pages/index/index.config.js +0 -3
  191. package/src/__tests__/fixtures/default/src/pages/index/index.jsx +0 -22
  192. package/src/__tests__/fixtures/default/src/pages/index/index.scss +0 -0
  193. package/src/__tests__/info.spec.ts +0 -72
  194. package/src/__tests__/inspect.spec.ts +0 -160
  195. package/src/__tests__/update.spec.ts +0 -310
  196. package/src/__tests__/utils/index.ts +0 -54
  197. package/src/commands/customCommand.ts +0 -22
  198. package/src/config/packagesManagement.ts +0 -20
  199. package/src/config/rn-stylelint.json +0 -4
  200. package/src/create/page.ts +0 -325
  201. package/src/create/plugin.ts +0 -55
  202. package/src/presets/commands/config.ts +0 -86
  203. package/src/presets/commands/create.ts +0 -104
  204. package/src/presets/commands/doctor.ts +0 -21
  205. package/src/presets/commands/global-config.ts +0 -140
  206. package/src/presets/commands/help.ts +0 -17
  207. package/src/presets/commands/info.ts +0 -81
  208. package/src/presets/commands/inspect.ts +0 -137
  209. package/src/presets/commands/update.ts +0 -175
  210. package/src/presets/hooks/create.ts +0 -9
  211. package/src/presets/platforms/plugin.ts +0 -75
  212. package/src/presets/platforms/rn.ts +0 -125
  213. package/src/util/createPage.ts +0 -139
  214. package/templates/default/babel.config.js +0 -14
  215. /package/dist/create/{fetchTemplate.d.ts → fetch-template.d.ts} +0 -0
  216. /package/dist/presets/{commands/config.d.ts → files/generate-framework-info.d.ts} +0 -0
  217. /package/dist/presets/{commands/create.d.ts → files/generate-project-config.d.ts} +0 -0
  218. /package/dist/presets/{commands/doctor.d.ts → files/write-file-to-dist.d.ts} +0 -0
  219. /package/src/presets/files/{generateProjectConfig.ts → generate-project-config.ts} +0 -0
  220. /package/src/presets/files/{writeFileToDist.ts → write-file-to-dist.ts} +0 -0
@@ -37,275 +37,25 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  const path = __importStar(require("node:path"));
40
- const taro_binding_1 = require("@spcsn/taro-binding");
41
40
  const taro_helper_1 = require("@spcsn/taro-helper");
42
41
  const taro_shared_1 = require("@spcsn/taro-shared");
43
- const axios_1 = __importDefault(require("axios"));
44
42
  const inquirer = __importStar(require("inquirer"));
45
43
  const ora_1 = __importDefault(require("ora"));
46
- const semver = __importStar(require("semver"));
47
44
  const util_1 = require("../util");
48
45
  const constants_1 = require("./constants");
49
46
  const creator_1 = __importDefault(require("./creator"));
50
- const fetchTemplate_1 = __importDefault(require("./fetchTemplate"));
47
+ const fetch_template_1 = __importDefault(require("./fetch-template"));
48
+ const template_creator_1 = require("./template-creator");
51
49
  const NONE_AVAILABLE_TEMPLATE = '无可用模板';
52
- const SUPPORTED_FRAMEWORK = "React" /* FrameworkType.React */;
53
- const SUPPORTED_COMPILER = "Vite" /* CompilerType.Vite */;
50
+ const SUPPORTED_FRAMEWORK = template_creator_1.FrameworkType.React;
51
+ const SUPPORTED_COMPILER = template_creator_1.CompilerType.Vite;
54
52
  class Project extends creator_1.default {
53
+ rootPath;
54
+ conf;
55
55
  constructor(options) {
56
56
  super(options.sourceRoot);
57
- this.askProjectName = function (conf, prompts) {
58
- if (typeof conf.projectName !== 'string') {
59
- prompts.push({
60
- type: 'input',
61
- name: 'projectName',
62
- message: '请输入项目名称!',
63
- validate(input) {
64
- if (!input) {
65
- return '项目名不能为空!';
66
- }
67
- if (taro_helper_1.fs.existsSync(input)) {
68
- return '当前目录已经存在同名项目,请换一个项目名!';
69
- }
70
- return true;
71
- },
72
- });
73
- }
74
- else if (taro_helper_1.fs.existsSync(conf.projectName)) {
75
- prompts.push({
76
- type: 'input',
77
- name: 'projectName',
78
- message: '当前目录已经存在同名项目,请换一个项目名!',
79
- validate(input) {
80
- if (!input) {
81
- return '项目名不能为空!';
82
- }
83
- if (taro_helper_1.fs.existsSync(input)) {
84
- return '项目名依然重复!';
85
- }
86
- return true;
87
- },
88
- });
89
- }
90
- };
91
- this.askDescription = function (conf, prompts) {
92
- if (typeof conf.description !== 'string') {
93
- prompts.push({
94
- type: 'input',
95
- name: 'description',
96
- message: '请输入项目介绍',
97
- });
98
- }
99
- };
100
- this.askTypescript = function (conf, prompts) {
101
- if (typeof conf.typescript !== 'boolean') {
102
- prompts.push({
103
- type: 'confirm',
104
- name: 'typescript',
105
- message: '是否需要使用 TypeScript ?',
106
- });
107
- }
108
- };
109
- this.askBuildEs5 = function (conf, prompts) {
110
- if (typeof conf.buildEs5 !== 'boolean') {
111
- prompts.push({
112
- type: 'confirm',
113
- name: 'buildEs5',
114
- message: '是否需要编译为 ES5 ?',
115
- default: false,
116
- });
117
- }
118
- };
119
- this.askCSS = function (conf, prompts) {
120
- const cssChoices = [
121
- {
122
- name: 'Sass',
123
- value: "Sass" /* CSSType.Sass */,
124
- },
125
- {
126
- name: 'Less',
127
- value: "Less" /* CSSType.Less */,
128
- },
129
- {
130
- name: 'Stylus',
131
- value: "Stylus" /* CSSType.Stylus */,
132
- },
133
- {
134
- name: '无',
135
- value: "None" /* CSSType.None */,
136
- },
137
- ];
138
- if (typeof conf.css !== 'string') {
139
- prompts.push({
140
- type: 'list',
141
- name: 'css',
142
- message: '请选择 CSS 预处理器(Sass/Less/Stylus)',
143
- choices: cssChoices,
144
- });
145
- }
146
- };
147
- this.askCompiler = function (conf, prompts) {
148
- const compilerChoices = [
149
- {
150
- name: 'Webpack5',
151
- value: "Webpack5" /* CompilerType.Webpack5 */,
152
- },
153
- {
154
- name: 'Vite',
155
- value: "Vite" /* CompilerType.Vite */,
156
- },
157
- ];
158
- if (typeof conf.compiler !== 'string') {
159
- prompts.push({
160
- type: 'list',
161
- name: 'compiler',
162
- message: '请选择编译工具',
163
- choices: compilerChoices,
164
- });
165
- }
166
- };
167
- this.askFramework = function (conf, prompts) {
168
- const frameworks = [
169
- {
170
- name: 'React',
171
- value: "React" /* FrameworkType.React */,
172
- },
173
- ];
174
- if (typeof conf.framework !== 'string') {
175
- prompts.push({
176
- type: 'list',
177
- name: 'framework',
178
- message: '请选择框架',
179
- choices: frameworks,
180
- });
181
- }
182
- };
183
- this.askTemplateSource = async function (conf, prompts) {
184
- if (conf.template === 'default' || conf.templateSource)
185
- return;
186
- const homedir = (0, taro_helper_1.getUserHomeDir)();
187
- const taroConfigPath = path.join(homedir, taro_helper_1.TARO_CONFIG_FOLDER);
188
- const taroConfig = path.join(taroConfigPath, taro_helper_1.TARO_BASE_CONFIG);
189
- let localTemplateSource;
190
- // 检查本地配置
191
- if (taro_helper_1.fs.existsSync(taroConfig)) {
192
- // 存在则把模板源读出来
193
- const config = await taro_helper_1.fs.readJSON(taroConfig);
194
- localTemplateSource = config?.templateSource;
195
- }
196
- else {
197
- // 不存在则创建配置
198
- await taro_helper_1.fs.createFile(taroConfig);
199
- await taro_helper_1.fs.writeJSON(taroConfig, { templateSource: taro_helper_1.DEFAULT_TEMPLATE_SRC });
200
- localTemplateSource = taro_helper_1.DEFAULT_TEMPLATE_SRC;
201
- }
202
- const choices = [
203
- {
204
- name: 'Gitee(最快)',
205
- value: taro_helper_1.DEFAULT_TEMPLATE_SRC_GITEE,
206
- },
207
- {
208
- name: 'Github(最新)',
209
- value: taro_helper_1.DEFAULT_TEMPLATE_SRC,
210
- },
211
- {
212
- name: 'CLI 内置默认模板',
213
- value: 'default-template',
214
- },
215
- {
216
- name: '自定义',
217
- value: 'self-input',
218
- },
219
- {
220
- name: '社区优质模板源',
221
- value: 'open-source',
222
- },
223
- ];
224
- if (localTemplateSource &&
225
- localTemplateSource !== taro_helper_1.DEFAULT_TEMPLATE_SRC &&
226
- localTemplateSource !== taro_helper_1.DEFAULT_TEMPLATE_SRC_GITEE) {
227
- choices.unshift({
228
- name: `本地模板源:${localTemplateSource}`,
229
- value: localTemplateSource,
230
- });
231
- }
232
- prompts.push({
233
- type: 'list',
234
- name: 'templateSource',
235
- message: '请选择模板源',
236
- choices,
237
- }, {
238
- type: 'input',
239
- name: 'templateSource',
240
- message: '请输入模板源!',
241
- askAnswered: true,
242
- when(answers) {
243
- return answers.templateSource === 'self-input';
244
- },
245
- }, {
246
- type: 'list',
247
- name: 'templateSource',
248
- message: '请选择社区模板源',
249
- async choices(answers) {
250
- const choices = await getOpenSourceTemplates(answers.framework);
251
- return choices;
252
- },
253
- askAnswered: true,
254
- when(answers) {
255
- return answers.templateSource === 'open-source';
256
- },
257
- });
258
- };
259
- this.askTemplate = function (conf, prompts, list = []) {
260
- const choices = list.map((item) => ({
261
- name: item.desc ? `${item.name}(${item.desc})` : item.name,
262
- value: item.value || item.name,
263
- }));
264
- if (!conf.hideDefaultTemplate) {
265
- choices.unshift({
266
- name: '默认模板',
267
- value: 'default',
268
- });
269
- }
270
- if (typeof conf.template !== 'string') {
271
- prompts.push({
272
- type: 'list',
273
- name: 'template',
274
- message: '请选择模板',
275
- choices,
276
- });
277
- }
278
- };
279
- this.askNpm = function (conf, prompts) {
280
- const packages = [
281
- {
282
- name: 'yarn',
283
- value: "Yarn" /* NpmType.Yarn */,
284
- },
285
- {
286
- name: 'pnpm',
287
- value: "Pnpm" /* NpmType.Pnpm */,
288
- },
289
- {
290
- name: 'npm',
291
- value: "Npm" /* NpmType.Npm */,
292
- },
293
- {
294
- name: 'cnpm',
295
- value: "Cnpm" /* NpmType.Cnpm */,
296
- },
297
- ];
298
- if (typeof conf.npm !== 'string') {
299
- prompts.push({
300
- type: 'list',
301
- name: 'npm',
302
- message: '请选择包管理工具',
303
- choices: packages,
304
- });
305
- }
306
- };
307
- const unSupportedVer = semver.lt(process.version, 'v18.0.0');
308
- if (unSupportedVer) {
57
+ const nodeMajorVersion = Number(process.versions.node.split('.')[0]);
58
+ if (nodeMajorVersion < 18) {
309
59
  throw new Error('Node.js 版本过低,推荐升级 Node.js 至 v18.0.0+');
310
60
  }
311
61
  this.rootPath = this._rootPath;
@@ -341,8 +91,6 @@ class Project extends creator_1.default {
341
91
  this.askProjectName(conf, prompts);
342
92
  this.askDescription(conf, prompts);
343
93
  this.askTypescript(conf, prompts);
344
- this.askBuildEs5(conf, prompts);
345
- this.askCSS(conf, prompts);
346
94
  this.askNpm(conf, prompts);
347
95
  const answers = await inquirer.prompt(prompts);
348
96
  if (conf.framework && conf.framework !== SUPPORTED_FRAMEWORK) {
@@ -377,6 +125,214 @@ class Project extends creator_1.default {
377
125
  ...templateChoiceAnswer,
378
126
  };
379
127
  }
128
+ askProjectName = function (conf, prompts) {
129
+ if (typeof conf.projectName !== 'string') {
130
+ prompts.push({
131
+ type: 'input',
132
+ name: 'projectName',
133
+ message: '请输入项目名称!',
134
+ validate(input) {
135
+ if (!input) {
136
+ return '项目名不能为空!';
137
+ }
138
+ if (taro_helper_1.fs.existsSync(input)) {
139
+ return '当前目录已经存在同名项目,请换一个项目名!';
140
+ }
141
+ return true;
142
+ },
143
+ });
144
+ }
145
+ else if (taro_helper_1.fs.existsSync(conf.projectName)) {
146
+ prompts.push({
147
+ type: 'input',
148
+ name: 'projectName',
149
+ message: '当前目录已经存在同名项目,请换一个项目名!',
150
+ validate(input) {
151
+ if (!input) {
152
+ return '项目名不能为空!';
153
+ }
154
+ if (taro_helper_1.fs.existsSync(input)) {
155
+ return '项目名依然重复!';
156
+ }
157
+ return true;
158
+ },
159
+ });
160
+ }
161
+ };
162
+ askDescription = function (conf, prompts) {
163
+ if (typeof conf.description !== 'string') {
164
+ prompts.push({
165
+ type: 'input',
166
+ name: 'description',
167
+ message: '请输入项目介绍',
168
+ });
169
+ }
170
+ };
171
+ askTypescript = function (conf, prompts) {
172
+ if (typeof conf.typescript !== 'boolean') {
173
+ prompts.push({
174
+ type: 'confirm',
175
+ name: 'typescript',
176
+ message: '是否需要使用 TypeScript ?',
177
+ });
178
+ }
179
+ };
180
+ askCompiler = function (conf, prompts) {
181
+ const compilerChoices = [
182
+ {
183
+ name: 'Vite',
184
+ value: template_creator_1.CompilerType.Vite,
185
+ },
186
+ ];
187
+ if (typeof conf.compiler !== 'string') {
188
+ prompts.push({
189
+ type: 'list',
190
+ name: 'compiler',
191
+ message: '请选择编译工具',
192
+ choices: compilerChoices,
193
+ });
194
+ }
195
+ };
196
+ askFramework = function (conf, prompts) {
197
+ const frameworks = [
198
+ {
199
+ name: 'React',
200
+ value: template_creator_1.FrameworkType.React,
201
+ },
202
+ ];
203
+ if (typeof conf.framework !== 'string') {
204
+ prompts.push({
205
+ type: 'list',
206
+ name: 'framework',
207
+ message: '请选择框架',
208
+ choices: frameworks,
209
+ });
210
+ }
211
+ };
212
+ askTemplateSource = async function (conf, prompts) {
213
+ if (conf.template === 'default' || conf.templateSource)
214
+ return;
215
+ const homedir = (0, taro_helper_1.getUserHomeDir)();
216
+ const taroConfigPath = path.join(homedir, taro_helper_1.TARO_CONFIG_FOLDER);
217
+ const taroConfig = path.join(taroConfigPath, taro_helper_1.TARO_BASE_CONFIG);
218
+ let localTemplateSource;
219
+ // 检查本地配置
220
+ if (taro_helper_1.fs.existsSync(taroConfig)) {
221
+ // 存在则把模板源读出来
222
+ const config = await taro_helper_1.fs.readJSON(taroConfig);
223
+ localTemplateSource = config?.templateSource;
224
+ }
225
+ else {
226
+ // 不存在则创建配置
227
+ await taro_helper_1.fs.createFile(taroConfig);
228
+ await taro_helper_1.fs.writeJSON(taroConfig, { templateSource: taro_helper_1.DEFAULT_TEMPLATE_SRC });
229
+ localTemplateSource = taro_helper_1.DEFAULT_TEMPLATE_SRC;
230
+ }
231
+ const choices = [
232
+ {
233
+ name: 'Gitee(最快)',
234
+ value: taro_helper_1.DEFAULT_TEMPLATE_SRC_GITEE,
235
+ },
236
+ {
237
+ name: 'Github(最新)',
238
+ value: taro_helper_1.DEFAULT_TEMPLATE_SRC,
239
+ },
240
+ {
241
+ name: 'CLI 内置默认模板',
242
+ value: 'default-template',
243
+ },
244
+ {
245
+ name: '自定义',
246
+ value: 'self-input',
247
+ },
248
+ {
249
+ name: '社区优质模板源',
250
+ value: 'open-source',
251
+ },
252
+ ];
253
+ if (localTemplateSource &&
254
+ localTemplateSource !== taro_helper_1.DEFAULT_TEMPLATE_SRC &&
255
+ localTemplateSource !== taro_helper_1.DEFAULT_TEMPLATE_SRC_GITEE) {
256
+ choices.unshift({
257
+ name: `本地模板源:${localTemplateSource}`,
258
+ value: localTemplateSource,
259
+ });
260
+ }
261
+ prompts.push({
262
+ type: 'list',
263
+ name: 'templateSource',
264
+ message: '请选择模板源',
265
+ choices,
266
+ }, {
267
+ type: 'input',
268
+ name: 'templateSource',
269
+ message: '请输入模板源!',
270
+ askAnswered: true,
271
+ when(answers) {
272
+ return answers.templateSource === 'self-input';
273
+ },
274
+ }, {
275
+ type: 'list',
276
+ name: 'templateSource',
277
+ message: '请选择社区模板源',
278
+ async choices(answers) {
279
+ const choices = await getOpenSourceTemplates(answers.framework);
280
+ return choices;
281
+ },
282
+ askAnswered: true,
283
+ when(answers) {
284
+ return answers.templateSource === 'open-source';
285
+ },
286
+ });
287
+ };
288
+ askTemplate = function (conf, prompts, list = []) {
289
+ const choices = list.map((item) => ({
290
+ name: item.desc ? `${item.name}(${item.desc})` : item.name,
291
+ value: item.value || item.name,
292
+ }));
293
+ if (!conf.hideDefaultTemplate) {
294
+ choices.unshift({
295
+ name: '默认模板',
296
+ value: 'default',
297
+ });
298
+ }
299
+ if (typeof conf.template !== 'string') {
300
+ prompts.push({
301
+ type: 'list',
302
+ name: 'template',
303
+ message: '请选择模板',
304
+ choices,
305
+ });
306
+ }
307
+ };
308
+ askNpm = function (conf, prompts) {
309
+ const packages = [
310
+ {
311
+ name: 'yarn',
312
+ value: template_creator_1.NpmType.Yarn,
313
+ },
314
+ {
315
+ name: 'pnpm',
316
+ value: template_creator_1.NpmType.Pnpm,
317
+ },
318
+ {
319
+ name: 'npm',
320
+ value: template_creator_1.NpmType.Npm,
321
+ },
322
+ {
323
+ name: 'cnpm',
324
+ value: template_creator_1.NpmType.Cnpm,
325
+ },
326
+ ];
327
+ if (typeof conf.npm !== 'string') {
328
+ prompts.push({
329
+ type: 'list',
330
+ name: 'npm',
331
+ message: '请选择包管理工具',
332
+ choices: packages,
333
+ });
334
+ }
335
+ };
380
336
  async fetchTemplates(answers) {
381
337
  const { templateSource, framework, compiler } = answers;
382
338
  this.conf.framework = this.conf.framework || framework || '';
@@ -390,7 +346,7 @@ class Project extends creator_1.default {
390
346
  return Promise.resolve([]);
391
347
  // 从模板源下载模板
392
348
  const isClone = /gitee/.test(this.conf.templateSource) || this.conf.clone;
393
- const templateChoices = await (0, fetchTemplate_1.default)(this.conf.templateSource, this.templatePath(''), isClone);
349
+ const templateChoices = await (0, fetch_template_1.default)(this.conf.templateSource, this.templatePath(''), isClone);
394
350
  const filterFramework = (_framework) => {
395
351
  const current = this.conf.framework?.toLowerCase();
396
352
  if (typeof _framework === 'string' && _framework) {
@@ -423,47 +379,46 @@ class Project extends creator_1.default {
423
379
  const templatePath = this.templatePath(template);
424
380
  const handlerPath = path.join(templatePath, constants_1.TEMPLATE_CREATOR);
425
381
  const handler = taro_helper_1.fs.existsSync(handlerPath) ? require(handlerPath).handler : {};
426
- (0, taro_binding_1.createProject)({
382
+ (0, template_creator_1.createProject)({
427
383
  projectRoot: projectDir,
428
384
  projectName,
429
385
  template,
430
386
  npm,
431
387
  framework,
432
- css: this.conf.css || "None" /* CSSType.None */,
388
+ css: template_creator_1.CSSType.None,
433
389
  autoInstall: autoInstall,
434
390
  templateRoot: (0, util_1.getRootPath)(),
435
391
  version: (0, util_1.getPkgVersion)(),
436
392
  typescript: this.conf.typescript,
437
- buildEs5: this.conf.buildEs5,
438
393
  date: this.conf.date,
439
394
  description: this.conf.description,
440
395
  compiler: this.conf.compiler,
441
- period: "CreateAPP" /* PeriodType.CreateAPP */,
396
+ period: template_creator_1.PeriodType.CreateAPP,
442
397
  }, handler).then(() => {
443
398
  cb && cb();
444
399
  });
445
400
  }
446
401
  }
447
402
  exports.default = Project;
448
- function getOpenSourceTemplates(platform) {
449
- return new Promise((resolve, reject) => {
450
- const spinner = (0, ora_1.default)({ text: '正在拉取开源模板列表...', discardStdin: false }).start();
451
- axios_1.default
452
- .get('https://gitee.com/NervJS/awesome-taro/raw/next/index.json')
453
- .then((response) => {
454
- spinner.succeed(`${taro_helper_1.chalk.grey('拉取开源模板列表成功!')}`);
455
- const collection = response.data;
456
- switch (platform.toLowerCase()) {
457
- case 'react':
458
- return resolve(collection.react);
459
- default:
460
- return resolve([NONE_AVAILABLE_TEMPLATE]);
461
- }
462
- })
463
- .catch((_error) => {
464
- spinner.fail(taro_helper_1.chalk.red('拉取开源模板列表失败!'));
465
- return reject(new Error());
466
- });
467
- });
403
+ async function getOpenSourceTemplates(platform) {
404
+ const spinner = (0, ora_1.default)({ text: '正在拉取开源模板列表...', discardStdin: false }).start();
405
+ try {
406
+ const response = await fetch('https://gitee.com/NervJS/awesome-taro/raw/next/index.json');
407
+ if (!response.ok) {
408
+ throw new Error(`HTTP ${response.status} ${response.statusText}`);
409
+ }
410
+ spinner.succeed(`${taro_helper_1.chalk.grey('拉取开源模板列表成功!')}`);
411
+ const collection = (await response.json());
412
+ switch (platform.toLowerCase()) {
413
+ case 'react':
414
+ return collection.react;
415
+ default:
416
+ return [NONE_AVAILABLE_TEMPLATE];
417
+ }
418
+ }
419
+ catch {
420
+ spinner.fail(taro_helper_1.chalk.red('拉取开源模板列表失败!'));
421
+ throw new Error();
422
+ }
468
423
  }
469
424
  //# sourceMappingURL=project.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/create/project.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/create/project.ts"],"names":[],"mappings":"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"}