@spcsn/taro-cli 0.1.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 (213) hide show
  1. package/LICENSE +174 -0
  2. package/README.md +0 -0
  3. package/bin/taro +7 -0
  4. package/dist/cli.d.ts +6 -0
  5. package/dist/cli.js +266 -0
  6. package/dist/cli.js.map +1 -0
  7. package/dist/commands/customCommand.d.ts +5 -0
  8. package/dist/commands/customCommand.js +23 -0
  9. package/dist/commands/customCommand.js.map +1 -0
  10. package/dist/config/index.d.ts +8 -0
  11. package/dist/config/index.js +10 -0
  12. package/dist/config/index.js.map +1 -0
  13. package/dist/config/packagesManagement.d.ts +19 -0
  14. package/dist/config/packagesManagement.js +22 -0
  15. package/dist/config/packagesManagement.js.map +1 -0
  16. package/dist/create/constants.d.ts +1 -0
  17. package/dist/create/constants.js +5 -0
  18. package/dist/create/constants.js.map +1 -0
  19. package/dist/create/creator.d.ts +9 -0
  20. package/dist/create/creator.js +64 -0
  21. package/dist/create/creator.js.map +1 -0
  22. package/dist/create/fetchTemplate.d.ts +8 -0
  23. package/dist/create/fetchTemplate.js +169 -0
  24. package/dist/create/fetchTemplate.js.map +1 -0
  25. package/dist/create/page.d.ts +65 -0
  26. package/dist/create/page.js +266 -0
  27. package/dist/create/page.js.map +1 -0
  28. package/dist/create/plugin.d.ts +16 -0
  29. package/dist/create/plugin.js +77 -0
  30. package/dist/create/plugin.js.map +1 -0
  31. package/dist/create/project.d.ts +70 -0
  32. package/dist/create/project.js +481 -0
  33. package/dist/create/project.js.map +1 -0
  34. package/dist/doctor/index.d.ts +4 -0
  35. package/dist/doctor/index.js +23 -0
  36. package/dist/doctor/index.js.map +1 -0
  37. package/dist/index.d.ts +16 -0
  38. package/dist/index.js +24 -0
  39. package/dist/index.js.map +1 -0
  40. package/dist/presets/commands/build.d.ts +3 -0
  41. package/dist/presets/commands/build.js +236 -0
  42. package/dist/presets/commands/build.js.map +1 -0
  43. package/dist/presets/commands/config.d.ts +3 -0
  44. package/dist/presets/commands/config.js +121 -0
  45. package/dist/presets/commands/config.js.map +1 -0
  46. package/dist/presets/commands/create.d.ts +3 -0
  47. package/dist/presets/commands/create.js +112 -0
  48. package/dist/presets/commands/create.js.map +1 -0
  49. package/dist/presets/commands/global-config.d.ts +3 -0
  50. package/dist/presets/commands/global-config.js +175 -0
  51. package/dist/presets/commands/global-config.js.map +1 -0
  52. package/dist/presets/commands/help.d.ts +3 -0
  53. package/dist/presets/commands/help.js +16 -0
  54. package/dist/presets/commands/help.js.map +1 -0
  55. package/dist/presets/commands/info.d.ts +3 -0
  56. package/dist/presets/commands/info.js +96 -0
  57. package/dist/presets/commands/info.js.map +1 -0
  58. package/dist/presets/commands/init.d.ts +3 -0
  59. package/dist/presets/commands/init.js +46 -0
  60. package/dist/presets/commands/init.js.map +1 -0
  61. package/dist/presets/commands/inspect.d.ts +3 -0
  62. package/dist/presets/commands/inspect.js +155 -0
  63. package/dist/presets/commands/inspect.js.map +1 -0
  64. package/dist/presets/commands/update.d.ts +3 -0
  65. package/dist/presets/commands/update.js +187 -0
  66. package/dist/presets/commands/update.js.map +1 -0
  67. package/dist/presets/constant/hooks.d.ts +13 -0
  68. package/dist/presets/constant/hooks.js +17 -0
  69. package/dist/presets/constant/hooks.js.map +1 -0
  70. package/dist/presets/constant/index.d.ts +1 -0
  71. package/dist/presets/constant/index.js +18 -0
  72. package/dist/presets/constant/index.js.map +1 -0
  73. package/dist/presets/files/generateFrameworkInfo.d.ts +3 -0
  74. package/dist/presets/files/generateFrameworkInfo.js +30 -0
  75. package/dist/presets/files/generateFrameworkInfo.js.map +1 -0
  76. package/dist/presets/files/generateProjectConfig.d.ts +3 -0
  77. package/dist/presets/files/generateProjectConfig.js +72 -0
  78. package/dist/presets/files/generateProjectConfig.js.map +1 -0
  79. package/dist/presets/files/writeFileToDist.d.ts +3 -0
  80. package/dist/presets/files/writeFileToDist.js +50 -0
  81. package/dist/presets/files/writeFileToDist.js.map +1 -0
  82. package/dist/presets/hooks/build.d.ts +3 -0
  83. package/dist/presets/hooks/build.js +55 -0
  84. package/dist/presets/hooks/build.js.map +1 -0
  85. package/dist/presets/hooks/create.d.ts +3 -0
  86. package/dist/presets/hooks/create.js +42 -0
  87. package/dist/presets/hooks/create.js.map +1 -0
  88. package/dist/presets/index.d.ts +4 -0
  89. package/dist/presets/index.js +50 -0
  90. package/dist/presets/index.js.map +1 -0
  91. package/dist/presets/platforms/plugin.d.ts +3 -0
  92. package/dist/presets/platforms/plugin.js +106 -0
  93. package/dist/presets/platforms/plugin.js.map +1 -0
  94. package/dist/presets/platforms/rn.d.ts +3 -0
  95. package/dist/presets/platforms/rn.js +130 -0
  96. package/dist/presets/platforms/rn.js.map +1 -0
  97. package/dist/util/appConfig.d.ts +11 -0
  98. package/dist/util/appConfig.js +27 -0
  99. package/dist/util/appConfig.js.map +1 -0
  100. package/dist/util/createPage.d.ts +9 -0
  101. package/dist/util/createPage.js +114 -0
  102. package/dist/util/createPage.js.map +1 -0
  103. package/dist/util/defineConfig.d.ts +17 -0
  104. package/dist/util/defineConfig.js +11 -0
  105. package/dist/util/defineConfig.js.map +1 -0
  106. package/dist/util/index.d.ts +23 -0
  107. package/dist/util/index.js +149 -0
  108. package/dist/util/index.js.map +1 -0
  109. package/dist/util/types.d.ts +58 -0
  110. package/dist/util/types.js +3 -0
  111. package/dist/util/types.js.map +1 -0
  112. package/global.d.ts +4 -0
  113. package/index.js +3 -0
  114. package/package.json +74 -0
  115. package/postinstall.js +17 -0
  116. package/src/__tests__/__mocks__/presets.ts +15 -0
  117. package/src/__tests__/build-config.spec.ts +66 -0
  118. package/src/__tests__/cli.spec.ts +226 -0
  119. package/src/__tests__/config.spec.ts +224 -0
  120. package/src/__tests__/doctor-config.spec.ts +943 -0
  121. package/src/__tests__/doctor-recommand.spec.ts +136 -0
  122. package/src/__tests__/doctor.spec.ts +94 -0
  123. package/src/__tests__/dotenv-parse.spec.ts +105 -0
  124. package/src/__tests__/env/.env +2 -0
  125. package/src/__tests__/fixtures/default/.env +3 -0
  126. package/src/__tests__/fixtures/default/.env.development +1 -0
  127. package/src/__tests__/fixtures/default/.env.local +1 -0
  128. package/src/__tests__/fixtures/default/.env.pre +3 -0
  129. package/src/__tests__/fixtures/default/.env.production +1 -0
  130. package/src/__tests__/fixtures/default/.env.uat +5 -0
  131. package/src/__tests__/fixtures/default/.env.uat.local +1 -0
  132. package/src/__tests__/fixtures/default/babel.config.js +10 -0
  133. package/src/__tests__/fixtures/default/config/dev.js +9 -0
  134. package/src/__tests__/fixtures/default/config/index.js +84 -0
  135. package/src/__tests__/fixtures/default/config/prod.js +18 -0
  136. package/src/__tests__/fixtures/default/package.json +27 -0
  137. package/src/__tests__/fixtures/default/src/app.config.js +11 -0
  138. package/src/__tests__/fixtures/default/src/app.js +16 -0
  139. package/src/__tests__/fixtures/default/src/app.scss +0 -0
  140. package/src/__tests__/fixtures/default/src/index.html +19 -0
  141. package/src/__tests__/fixtures/default/src/pages/index/index.config.js +3 -0
  142. package/src/__tests__/fixtures/default/src/pages/index/index.jsx +22 -0
  143. package/src/__tests__/fixtures/default/src/pages/index/index.scss +0 -0
  144. package/src/__tests__/info.spec.ts +72 -0
  145. package/src/__tests__/inspect.spec.ts +160 -0
  146. package/src/__tests__/update.spec.ts +310 -0
  147. package/src/__tests__/utils/index.ts +54 -0
  148. package/src/cli.ts +240 -0
  149. package/src/commands/customCommand.ts +22 -0
  150. package/src/config/index.ts +7 -0
  151. package/src/config/manifest.default.json +33 -0
  152. package/src/config/packagesManagement.ts +20 -0
  153. package/src/config/rn-stylelint.json +4 -0
  154. package/src/config/tsconfig.json +22 -0
  155. package/src/create/constants.ts +1 -0
  156. package/src/create/creator.ts +37 -0
  157. package/src/create/fetchTemplate.ts +161 -0
  158. package/src/create/page.ts +325 -0
  159. package/src/create/plugin.ts +55 -0
  160. package/src/create/project.ts +539 -0
  161. package/src/doctor/index.ts +21 -0
  162. package/src/index.ts +24 -0
  163. package/src/presets/commands/build.ts +215 -0
  164. package/src/presets/commands/config.ts +86 -0
  165. package/src/presets/commands/create.ts +104 -0
  166. package/src/presets/commands/global-config.ts +140 -0
  167. package/src/presets/commands/help.ts +17 -0
  168. package/src/presets/commands/info.ts +81 -0
  169. package/src/presets/commands/init.ts +63 -0
  170. package/src/presets/commands/inspect.ts +137 -0
  171. package/src/presets/commands/update.ts +175 -0
  172. package/src/presets/constant/hooks.ts +14 -0
  173. package/src/presets/constant/index.ts +1 -0
  174. package/src/presets/files/generateFrameworkInfo.ts +30 -0
  175. package/src/presets/files/generateProjectConfig.ts +41 -0
  176. package/src/presets/files/writeFileToDist.ts +17 -0
  177. package/src/presets/hooks/build.ts +22 -0
  178. package/src/presets/hooks/create.ts +9 -0
  179. package/src/presets/index.ts +15 -0
  180. package/src/presets/platforms/plugin.ts +75 -0
  181. package/src/presets/platforms/rn.ts +125 -0
  182. package/src/util/appConfig.ts +32 -0
  183. package/src/util/createPage.ts +139 -0
  184. package/src/util/defineConfig.ts +28 -0
  185. package/src/util/index.ts +126 -0
  186. package/src/util/types.ts +81 -0
  187. package/templates/default/_editorconfig +12 -0
  188. package/templates/default/_env.development +2 -0
  189. package/templates/default/_env.production +1 -0
  190. package/templates/default/_env.test +1 -0
  191. package/templates/default/_gitignore +8 -0
  192. package/templates/default/babel.config.js +14 -0
  193. package/templates/default/config/dev.js +5 -0
  194. package/templates/default/config/index.js +61 -0
  195. package/templates/default/config/prod.js +5 -0
  196. package/templates/default/package.json.tmpl +52 -0
  197. package/templates/default/project.config.json +15 -0
  198. package/templates/default/src/app.config.js +11 -0
  199. package/templates/default/src/app.css +0 -0
  200. package/templates/default/src/app.js +15 -0
  201. package/templates/default/src/pages/index/index.config.js +3 -0
  202. package/templates/default/src/pages/index/index.css +0 -0
  203. package/templates/default/src/pages/index/index.jsx +15 -0
  204. package/templates/default/template_creator.js +61 -0
  205. package/templates/default/tsconfig.json +30 -0
  206. package/templates/default/types/global.d.ts +27 -0
  207. package/templates/global-config/index.json +4 -0
  208. package/templates/global-config/package.json +5 -0
  209. package/templates/plugin-compile/README.md +32 -0
  210. package/templates/plugin-compile/index.js +3 -0
  211. package/templates/plugin-compile/package.json.tmpl +43 -0
  212. package/templates/plugin-compile/src/index.ts +153 -0
  213. package/templates/plugin-compile/tsconfig.json +28 -0
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const plugin_doctor_1 = require("@tarojs/plugin-doctor");
4
+ exports.default = {
5
+ validators: [
6
+ () => {
7
+ return plugin_doctor_1.validateEnv.call(this);
8
+ },
9
+ (args) => {
10
+ return plugin_doctor_1.validateConfig.call(this, args.projectConfig, args.helper);
11
+ },
12
+ (args) => {
13
+ return plugin_doctor_1.validatePackage.call(this, args.appPath, args.nodeModulesPath);
14
+ },
15
+ (args) => {
16
+ return plugin_doctor_1.validateRecommend.call(this, args.appPath);
17
+ },
18
+ async (args) => {
19
+ return await plugin_doctor_1.validateEslint.call(this, args.projectConfig, args.chalk);
20
+ },
21
+ ],
22
+ };
23
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/doctor/index.ts"],"names":[],"mappings":";;AAAA,yDAAwH;AAExH,kBAAe;IACb,UAAU,EAAE;QACV,GAAG,EAAE;YACH,OAAO,2BAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;QACD,CAAC,IAAI,EAAE,EAAE;YACP,OAAO,8BAAc,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACpE,CAAC;QACD,CAAC,IAAI,EAAE,EAAE;YACP,OAAO,+BAAe,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QACxE,CAAC;QACD,CAAC,IAAI,EAAE,EAAE;YACP,OAAO,iCAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACpD,CAAC;QACD,KAAK,EAAE,IAAI,EAAE,EAAE;YACb,OAAO,MAAM,8BAAc,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACzE,CAAC;KACF;CACF,CAAC"}
@@ -0,0 +1,16 @@
1
+ import Creator from './create/creator';
2
+ import Project from './create/project';
3
+ import doctor from './doctor';
4
+ import { getRootPath } from './util';
5
+ import { type ConfigEnv, type UserConfigExport, type UserConfigFn, defineConfig } from './util/defineConfig';
6
+ declare const _default: {
7
+ doctor: {
8
+ validators: (((args: any) => Promise<import("@tarojs/plugin-doctor").ValidateResult>) | ((args: any) => import("@tarojs/plugin-doctor").ValidateResult))[];
9
+ };
10
+ Project: typeof Project;
11
+ Creator: typeof Creator;
12
+ defineConfig: typeof defineConfig;
13
+ getRootPath: typeof getRootPath;
14
+ };
15
+ export default _default;
16
+ export { type ConfigEnv, type UserConfigExport, type UserConfigFn, Creator, defineConfig, doctor, getRootPath, Project, };
package/dist/index.js ADDED
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Project = exports.getRootPath = exports.doctor = exports.defineConfig = exports.Creator = void 0;
7
+ const creator_1 = __importDefault(require("./create/creator"));
8
+ exports.Creator = creator_1.default;
9
+ const project_1 = __importDefault(require("./create/project"));
10
+ exports.Project = project_1.default;
11
+ const doctor_1 = __importDefault(require("./doctor"));
12
+ exports.doctor = doctor_1.default;
13
+ const util_1 = require("./util");
14
+ Object.defineProperty(exports, "getRootPath", { enumerable: true, get: function () { return util_1.getRootPath; } });
15
+ const defineConfig_1 = require("./util/defineConfig");
16
+ Object.defineProperty(exports, "defineConfig", { enumerable: true, get: function () { return defineConfig_1.defineConfig; } });
17
+ exports.default = {
18
+ doctor: doctor_1.default,
19
+ Project: project_1.default,
20
+ Creator: creator_1.default,
21
+ defineConfig: defineConfig_1.defineConfig,
22
+ getRootPath: util_1.getRootPath,
23
+ };
24
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,+DAAuC;AAkBrC,kBAlBK,iBAAO,CAkBL;AAjBT,+DAAuC;AAqBrC,kBArBK,iBAAO,CAqBL;AApBT,sDAA8B;AAkB5B,iBAlBK,gBAAM,CAkBL;AAjBR,iCAAqC;AAkBnC,4FAlBO,kBAAW,OAkBP;AAjBb,sDAA6G;AAe3G,6FAfiE,2BAAY,OAejE;AAbd,kBAAe;IACb,MAAM,EAAN,gBAAM;IACN,OAAO,EAAP,iBAAO;IACP,OAAO,EAAP,iBAAO;IACP,YAAY,EAAZ,2BAAY;IACZ,WAAW,EAAX,kBAAW;CACZ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { IPluginContext } from '@spcsn/taro-service';
2
+ declare const _default: (ctx: IPluginContext) => void;
3
+ export default _default;
@@ -0,0 +1,236 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ const plugin_doctor_1 = require("@tarojs/plugin-doctor");
37
+ const appConfig_1 = require("../../util/appConfig");
38
+ const hooks = __importStar(require("../constant"));
39
+ exports.default = (ctx) => {
40
+ ctx.registerCommand({
41
+ name: 'build',
42
+ optionsMap: {
43
+ '--type [typeName]': 'Build type, weapp(默认 weapp)',
44
+ '--watch': 'Watch mode',
45
+ '--env [env]': 'Value for process.env.NODE_ENV',
46
+ '--pages': 'Specify the pages to be compiled, separate multiple by comma',
47
+ '--components': 'Specify the components to be compiled, separate multiple by comma',
48
+ '--mode [mode]': 'Value of dotenv extname',
49
+ '-p, --port [port]': 'Specified port',
50
+ '--no-build': 'Do not build project',
51
+ '--blended': 'Blended Taro project in an original MiniApp project',
52
+ '--new-blended': 'Blended Taro project in an original MiniApp project while supporting building components independently',
53
+ '--plugin [typeName]': 'Build Taro plugin project, weapp',
54
+ '--env-prefix [envPrefix]': "Provide the dotEnv varables's prefix",
55
+ '--no-check': 'Do not check config is valid or not',
56
+ },
57
+ synopsisList: [
58
+ 'taro build --type weapp',
59
+ 'taro build --type weapp --watch',
60
+ 'taro build --type weapp --watch --pages pages/index/index',
61
+ 'taro build --type weapp --env production',
62
+ 'taro build --type weapp --blended',
63
+ 'taro build --type weapp --no-build',
64
+ 'taro build native-components --type weapp',
65
+ 'taro build --type weapp --new-blended',
66
+ 'taro build --plugin weapp --watch',
67
+ 'taro build --plugin weapp',
68
+ 'taro build --type weapp --mode prepare --env-prefix TARO_APP_',
69
+ ],
70
+ async fn(opts) {
71
+ const { options, config, _ } = opts;
72
+ const { platform, isWatch, blended, newBlended, withoutBuild, noInjectGlobalStyle, noCheck } = options;
73
+ const { fs, chalk, PROJECT_CONFIG } = ctx.helper;
74
+ const { outputPath, configPath } = ctx.paths;
75
+ const { args } = options;
76
+ if (!configPath || !fs.existsSync(configPath)) {
77
+ console.log(chalk.red(`找不到项目配置文件${PROJECT_CONFIG},请确定当前目录是 Taro 项目根目录!`));
78
+ process.exit(1);
79
+ }
80
+ if (typeof platform !== 'string') {
81
+ console.log(chalk.red('请传入正确的编译类型!'));
82
+ process.exit(0);
83
+ }
84
+ // 校验 Taro 项目配置
85
+ if (!noCheck) {
86
+ const checkResult = await checkConfig({
87
+ projectConfig: ctx.initialConfig,
88
+ helper: ctx.helper,
89
+ });
90
+ if (!checkResult.isValid) {
91
+ const ERROR = chalk.red('[✗] ');
92
+ const WARNING = chalk.yellow('[!] ');
93
+ const SUCCESS = chalk.green('[✓] ');
94
+ const lineChalk = chalk.hex('#fff');
95
+ const errorChalk = chalk.hex('#f00');
96
+ console.log(errorChalk(`Taro 配置有误,请检查! (${configPath})`));
97
+ checkResult.messages.forEach((message) => {
98
+ switch (message.kind) {
99
+ case 1 /* MessageKind.Error */:
100
+ console.log(' ' + ERROR + lineChalk(message.content));
101
+ break;
102
+ case 2 /* MessageKind.Success */:
103
+ console.log(' ' + SUCCESS + lineChalk(message.content));
104
+ break;
105
+ case 3 /* MessageKind.Warning */:
106
+ console.log(' ' + WARNING + lineChalk(message.content));
107
+ break;
108
+ case 4 /* MessageKind.Manual */:
109
+ console.log(' ' + lineChalk(message.content));
110
+ break;
111
+ default:
112
+ break;
113
+ }
114
+ });
115
+ console.log('');
116
+ process.exit(0);
117
+ }
118
+ }
119
+ const isProduction = process.env.NODE_ENV === 'production' || !isWatch;
120
+ // dist folder
121
+ fs.ensureDirSync(outputPath);
122
+ // is build native components mode?
123
+ const isBuildNativeComp = _[1] === 'native-components';
124
+ await ctx.applyPlugins(hooks.ON_BUILD_START);
125
+ await ctx.applyPlugins({
126
+ name: platform,
127
+ opts: {
128
+ config: {
129
+ ...config,
130
+ isWatch,
131
+ mode: isProduction ? 'production' : 'development',
132
+ blended,
133
+ isBuildNativeComp,
134
+ withoutBuild,
135
+ newBlended,
136
+ noInjectGlobalStyle,
137
+ async modifyAppConfig(appConfig) {
138
+ (0, appConfig_1.extractCompileEntry)(appConfig, args, ctx);
139
+ await ctx.applyPlugins({
140
+ name: hooks.MODIFY_APP_CONFIG,
141
+ opts: {
142
+ appConfig,
143
+ },
144
+ });
145
+ },
146
+ async modifyWebpackChain(chain, webpack, data) {
147
+ await ctx.applyPlugins({
148
+ name: hooks.MODIFY_WEBPACK_CHAIN,
149
+ initialVal: chain,
150
+ opts: {
151
+ chain,
152
+ webpack,
153
+ data,
154
+ },
155
+ });
156
+ },
157
+ async modifyViteConfig(viteConfig, data, viteCompilerContext) {
158
+ await ctx.applyPlugins({
159
+ name: hooks.MODIFY_VITE_CONFIG,
160
+ initialVal: viteConfig,
161
+ opts: {
162
+ viteConfig,
163
+ data,
164
+ viteCompilerContext,
165
+ },
166
+ });
167
+ },
168
+ async modifyBuildAssets(assets, miniPlugin) {
169
+ await ctx.applyPlugins({
170
+ name: hooks.MODIFY_BUILD_ASSETS,
171
+ initialVal: assets,
172
+ opts: {
173
+ assets,
174
+ miniPlugin,
175
+ },
176
+ });
177
+ },
178
+ async modifyMiniConfigs(configMap) {
179
+ await ctx.applyPlugins({
180
+ name: hooks.MODIFY_MINI_CONFIGS,
181
+ initialVal: configMap,
182
+ opts: {
183
+ configMap,
184
+ },
185
+ });
186
+ },
187
+ async modifyComponentConfig(componentConfig, config) {
188
+ await ctx.applyPlugins({
189
+ name: hooks.MODIFY_COMPONENT_CONFIG,
190
+ opts: {
191
+ componentConfig,
192
+ config,
193
+ },
194
+ });
195
+ },
196
+ async onCompilerMake(compilation, compiler, plugin) {
197
+ await ctx.applyPlugins({
198
+ name: hooks.ON_COMPILER_MAKE,
199
+ opts: {
200
+ compilation,
201
+ compiler,
202
+ plugin,
203
+ },
204
+ });
205
+ },
206
+ async onParseCreateElement(nodeName, componentConfig) {
207
+ await ctx.applyPlugins({
208
+ name: hooks.ON_PARSE_CREATE_ELEMENT,
209
+ opts: {
210
+ nodeName,
211
+ componentConfig,
212
+ },
213
+ });
214
+ },
215
+ async onBuildFinish({ error, stats, isWatch }) {
216
+ await ctx.applyPlugins({
217
+ name: hooks.ON_BUILD_FINISH,
218
+ opts: {
219
+ error,
220
+ stats,
221
+ isWatch,
222
+ },
223
+ });
224
+ },
225
+ },
226
+ },
227
+ });
228
+ await ctx.applyPlugins(hooks.ON_BUILD_COMPLETE);
229
+ },
230
+ });
231
+ };
232
+ async function checkConfig({ projectConfig, helper }) {
233
+ const result = await (0, plugin_doctor_1.validateConfig)(projectConfig, helper);
234
+ return result;
235
+ }
236
+ //# sourceMappingURL=build.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../../src/presets/commands/build.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { IPluginContext } from '@spcsn/taro-service';
2
+ declare const _default: (ctx: IPluginContext) => void;
3
+ export default _default;
@@ -0,0 +1,121 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ const path = __importStar(require("node:path"));
37
+ exports.default = (ctx) => {
38
+ ctx.registerCommand({
39
+ name: 'config',
40
+ optionsMap: {
41
+ '--json': '以 JSON 形式输出',
42
+ },
43
+ synopsisList: [
44
+ 'taro config set <key> <value>',
45
+ 'taro config get <key>',
46
+ 'taro config delete <key>',
47
+ 'taro config list [--json]',
48
+ ],
49
+ fn({ _, options }) {
50
+ const [, cmd, key, value] = _;
51
+ const json = !!options.json;
52
+ const { fs, getUserHomeDir, TARO_CONFIG_FOLDER, TARO_BASE_CONFIG } = ctx.helper;
53
+ const homedir = getUserHomeDir();
54
+ const configPath = path.join(homedir, `${TARO_CONFIG_FOLDER}/${TARO_BASE_CONFIG}`);
55
+ if (!homedir)
56
+ return console.log('找不到用户根目录');
57
+ function displayConfigPath(configPath) {
58
+ console.log(`Config path: ${configPath}`);
59
+ console.log();
60
+ }
61
+ switch (cmd) {
62
+ case 'get':
63
+ if (!key)
64
+ return console.log('Usage: taro config get <key>');
65
+ if (fs.existsSync(configPath)) {
66
+ displayConfigPath(configPath);
67
+ const config = fs.readJSONSync(configPath);
68
+ console.log(`key: ${key}, value: ${config[key]}`);
69
+ }
70
+ break;
71
+ case 'set':
72
+ if (!key || !value)
73
+ return console.log('Usage: taro config set <key> <value>');
74
+ if (fs.existsSync(configPath)) {
75
+ displayConfigPath(configPath);
76
+ const config = fs.readJSONSync(configPath);
77
+ config[key] = value;
78
+ fs.writeJSONSync(configPath, config);
79
+ }
80
+ else {
81
+ fs.ensureFileSync(configPath);
82
+ fs.writeJSONSync(configPath, {
83
+ [key]: value,
84
+ });
85
+ }
86
+ console.log(`set key: ${key}, value: ${value}`);
87
+ break;
88
+ case 'delete':
89
+ if (!key)
90
+ return console.log('Usage: taro config delete <key>');
91
+ if (fs.existsSync(configPath)) {
92
+ displayConfigPath(configPath);
93
+ const config = fs.readJSONSync(configPath);
94
+ delete config[key];
95
+ fs.writeJSONSync(configPath, config);
96
+ }
97
+ console.log(`deleted: ${key}`);
98
+ break;
99
+ case 'list':
100
+ case 'ls':
101
+ if (fs.existsSync(configPath)) {
102
+ displayConfigPath(configPath);
103
+ console.log('Config info:');
104
+ const config = fs.readJSONSync(configPath);
105
+ if (json) {
106
+ console.log(JSON.stringify(config, null, 2));
107
+ }
108
+ else {
109
+ for (const key in config) {
110
+ console.log(`${key}=${config[key]}`);
111
+ }
112
+ }
113
+ }
114
+ break;
115
+ default:
116
+ break;
117
+ }
118
+ },
119
+ });
120
+ };
121
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/presets/commands/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { IPluginContext } from '@spcsn/taro-service';
2
+ declare const _default: (ctx: IPluginContext) => void;
3
+ export default _default;
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ const hooks = __importStar(require("../constant"));
37
+ exports.default = (ctx) => {
38
+ ctx.registerCommand({
39
+ name: 'create',
40
+ optionsMap: {
41
+ '--name [name]': '名称',
42
+ '--dir [dir]': '路径',
43
+ '--subpkg [subpkg]': '分包路径',
44
+ '--description [description]': '介绍',
45
+ '--type [type]': '模版类型(page(默认)|plugin-command|plugin-build|plugin-template)',
46
+ },
47
+ synopsisList: [
48
+ 'taro create page',
49
+ 'taro create --name=page --description=desc',
50
+ 'taro create my-plugin --type=plugin-command',
51
+ ],
52
+ fn({ _, options }) {
53
+ const type = options.type || "page" /* createTemplateTypeEnum.PAGE */;
54
+ const name = _[1] || options.name;
55
+ const description = options.description || '';
56
+ const afterCreate = options.afterCreate;
57
+ const templateSource = options.templateSource;
58
+ const framework = options.framework;
59
+ const css = options.css;
60
+ const typescript = options.typescript;
61
+ const clone = options.clone;
62
+ const { chalk } = ctx.helper;
63
+ const { appPath } = ctx.paths;
64
+ switch (type) {
65
+ case "page" /* createTemplateTypeEnum.PAGE */: {
66
+ if (typeof name !== 'string') {
67
+ return console.log(chalk.red('请输入需要创建的页面名称'));
68
+ }
69
+ const Page = require('../../create/page').default;
70
+ const page = new Page({
71
+ clone,
72
+ subPkg: options.subpkg,
73
+ framework,
74
+ css,
75
+ typescript,
76
+ pageDir: options.dir,
77
+ pageName: name,
78
+ projectDir: appPath,
79
+ description,
80
+ templateSource,
81
+ afterCreate,
82
+ async modifyCustomTemplateConfig(cb) {
83
+ await ctx.applyPlugins({ name: hooks.MODIFY_CREATE_TEMPLATE, opts: cb });
84
+ },
85
+ });
86
+ page.create();
87
+ break;
88
+ }
89
+ case "plugin-command" /* createTemplateTypeEnum.PLUGIN_COMMAND */:
90
+ case "plugin-build" /* createTemplateTypeEnum.PLUGIN_BUILD */:
91
+ case "plugin-template" /* createTemplateTypeEnum.PLUGIN_TEMPLATE */: {
92
+ if (typeof name !== 'string') {
93
+ return console.log(chalk.red('请输入需要创建的插件名称'));
94
+ }
95
+ const Plugin = require('../../create/plugin').default;
96
+ const plugin = new Plugin({
97
+ pluginName: name,
98
+ projectDir: appPath,
99
+ type,
100
+ description,
101
+ template: 'plugin-compile',
102
+ });
103
+ plugin.create();
104
+ break;
105
+ }
106
+ default:
107
+ break;
108
+ }
109
+ },
110
+ });
111
+ };
112
+ //# sourceMappingURL=create.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/presets/commands/create.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mDAAqC;AAwBrC,kBAAe,CAAC,GAAmB,EAAE,EAAE;IACrC,GAAG,CAAC,eAAe,CAAC;QAClB,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,eAAe,EAAE,IAAI;YACrB,aAAa,EAAE,IAAI;YACnB,mBAAmB,EAAE,MAAM;YAC3B,6BAA6B,EAAE,IAAI;YACnC,eAAe,EAAE,4DAA4D;SAC9E;QACD,YAAY,EAAE;YACZ,kBAAkB;YAClB,4CAA4C;YAC5C,6CAA6C;SAC9C;QACD,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE;YACf,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,4CAA+B,CAAC;YACzD,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC;YAClC,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;YAC9C,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;YACxC,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;YAC9C,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;YACpC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;YACxB,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;YACtC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;YAC5B,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;YAC7B,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC;YAE9B,QAAQ,IAAI,EAAE,CAAC;gBACb,6CAAgC,CAAC,CAAC,CAAC;oBACjC,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;wBAC7B,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC;oBAChD,CAAC;oBAED,MAAM,IAAI,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC;oBAClD,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC;wBACpB,KAAK;wBACL,MAAM,EAAE,OAAO,CAAC,MAAM;wBACtB,SAAS;wBACT,GAAG;wBACH,UAAU;wBACV,OAAO,EAAE,OAAO,CAAC,GAAG;wBACpB,QAAQ,EAAE,IAAI;wBACd,UAAU,EAAE,OAAO;wBACnB,WAAW;wBACX,cAAc;wBACd,WAAW;wBACX,KAAK,CAAC,0BAA0B,CAAC,EAA4B;4BAC3D,MAAM,GAAG,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,sBAAsB,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;wBAC3E,CAAC;qBACF,CAAC,CAAC;oBAEH,IAAI,CAAC,MAAM,EAAE,CAAC;oBACd,MAAM;gBACR,CAAC;gBACD,kEAA2C;gBAC3C,8DAAyC;gBACzC,mEAA2C,CAAC,CAAC,CAAC;oBAC5C,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;wBAC7B,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC;oBAChD,CAAC;oBAED,MAAM,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC,OAAO,CAAC;oBACtD,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC;wBACxB,UAAU,EAAE,IAAI;wBAChB,UAAU,EAAE,OAAO;wBACnB,IAAI;wBACJ,WAAW;wBACX,QAAQ,EAAE,gBAAgB;qBAC3B,CAAC,CAAC;oBAEH,MAAM,CAAC,MAAM,EAAE,CAAC;oBAChB,MAAM;gBACR,CAAC;gBACD;oBACE,MAAM;YACV,CAAC;QACH,CAAC;KACF,CAAC,CAAC;AACL,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { IPluginContext } from '@spcsn/taro-service';
2
+ declare const _default: (ctx: IPluginContext) => void;
3
+ export default _default;