@tarojs/service 3.6.5 → 3.6.6-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Config.js +25 -4
- package/dist/Config.js.map +1 -1
- package/dist/Kernel.js +62 -21
- package/dist/Kernel.js.map +1 -1
- package/dist/utils/index.js +25 -8
- package/dist/utils/index.js.map +1 -1
- package/package.json +5 -4
- package/src/Config.ts +30 -5
- package/src/Kernel.ts +72 -21
- package/src/utils/index.ts +24 -8
- package/types/Config.d.ts +5 -0
- package/types/Kernel.d.ts +10 -3
- package/types/utils/index.d.ts +2 -2
package/dist/Config.js
CHANGED
|
@@ -2,19 +2,25 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const helper_1 = require("@tarojs/helper");
|
|
4
4
|
const fs = require("fs-extra");
|
|
5
|
+
const ora = require("ora");
|
|
5
6
|
const path = require("path");
|
|
6
7
|
const merge = require("webpack-merge");
|
|
7
8
|
const constants_1 = require("./utils/constants");
|
|
8
9
|
class Config {
|
|
9
10
|
constructor(opts) {
|
|
10
11
|
this.appPath = opts.appPath;
|
|
12
|
+
this.disableGlobalConfig = !!(opts === null || opts === void 0 ? void 0 : opts.disableGlobalConfig);
|
|
11
13
|
this.init();
|
|
12
14
|
}
|
|
13
15
|
init() {
|
|
16
|
+
this.initialConfig = {};
|
|
17
|
+
this.initialGlobalConfig = {};
|
|
18
|
+
this.isInitSuccess = false;
|
|
14
19
|
this.configPath = (0, helper_1.resolveScriptPath)(path.join(this.appPath, constants_1.CONFIG_DIR_NAME, constants_1.DEFAULT_CONFIG_FILE));
|
|
15
20
|
if (!fs.existsSync(this.configPath)) {
|
|
16
|
-
this.
|
|
17
|
-
|
|
21
|
+
if (this.disableGlobalConfig)
|
|
22
|
+
return;
|
|
23
|
+
this.initGlobalConfig();
|
|
18
24
|
}
|
|
19
25
|
else {
|
|
20
26
|
(0, helper_1.createSwcRegister)({
|
|
@@ -27,12 +33,27 @@ class Config {
|
|
|
27
33
|
this.isInitSuccess = true;
|
|
28
34
|
}
|
|
29
35
|
catch (err) {
|
|
30
|
-
this.initialConfig = {};
|
|
31
|
-
this.isInitSuccess = false;
|
|
32
36
|
console.log(err);
|
|
33
37
|
}
|
|
34
38
|
}
|
|
35
39
|
}
|
|
40
|
+
initGlobalConfig() {
|
|
41
|
+
const homedir = (0, helper_1.getUserHomeDir)();
|
|
42
|
+
if (!homedir)
|
|
43
|
+
return console.error('获取不到用户 home 路径');
|
|
44
|
+
const globalPluginConfigPath = path.join((0, helper_1.getUserHomeDir)(), helper_1.TARO_GLOBAL_CONFIG_DIR, helper_1.TARO_GLOBAL_CONFIG_FILE);
|
|
45
|
+
const spinner = ora(`开始获取 taro 全局配置文件: ${globalPluginConfigPath}`).start();
|
|
46
|
+
if (!fs.existsSync(globalPluginConfigPath))
|
|
47
|
+
return spinner.warn(`获取 taro 全局配置文件失败,不存在全局配置文件:${globalPluginConfigPath}`);
|
|
48
|
+
try {
|
|
49
|
+
this.initialGlobalConfig = fs.readJSONSync(globalPluginConfigPath) || {};
|
|
50
|
+
spinner.succeed('获取 taro 全局配置成功');
|
|
51
|
+
}
|
|
52
|
+
catch (e) {
|
|
53
|
+
spinner.stop();
|
|
54
|
+
console.warn(`获取全局配置失败,如果需要启用全局插件请查看配置文件: ${globalPluginConfigPath} `);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
36
57
|
getConfigWithNamed(platform, configName) {
|
|
37
58
|
const initialConfig = this.initialConfig;
|
|
38
59
|
const sourceDirName = initialConfig.sourceRoot || helper_1.SOURCE_DIR;
|
package/dist/Config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Config.js","sourceRoot":"","sources":["../src/Config.ts"],"names":[],"mappings":";;AAAA,
|
|
1
|
+
{"version":3,"file":"Config.js","sourceRoot":"","sources":["../src/Config.ts"],"names":[],"mappings":"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"}
|
package/dist/Kernel.js
CHANGED
|
@@ -26,6 +26,7 @@ class Kernel extends events_1.EventEmitter {
|
|
|
26
26
|
this.appPath = options.appPath || process.cwd();
|
|
27
27
|
this.optsPresets = options.presets;
|
|
28
28
|
this.optsPlugins = options.plugins;
|
|
29
|
+
this.disableGlobalConfig = options.disableGlobalConfig;
|
|
29
30
|
this.hooks = new Map();
|
|
30
31
|
this.methods = new Map();
|
|
31
32
|
this.commands = new Map();
|
|
@@ -36,9 +37,11 @@ class Kernel extends events_1.EventEmitter {
|
|
|
36
37
|
}
|
|
37
38
|
initConfig() {
|
|
38
39
|
this.config = new Config_1.default({
|
|
39
|
-
appPath: this.appPath
|
|
40
|
+
appPath: this.appPath,
|
|
41
|
+
disableGlobalConfig: this.disableGlobalConfig
|
|
40
42
|
});
|
|
41
43
|
this.initialConfig = this.config.initialConfig;
|
|
44
|
+
this.initialGlobalConfig = this.config.initialGlobalConfig;
|
|
42
45
|
this.debugger('initConfig', this.initialConfig);
|
|
43
46
|
}
|
|
44
47
|
initPaths() {
|
|
@@ -61,46 +64,68 @@ class Kernel extends events_1.EventEmitter {
|
|
|
61
64
|
}
|
|
62
65
|
initPresetsAndPlugins() {
|
|
63
66
|
const initialConfig = this.initialConfig;
|
|
64
|
-
const
|
|
65
|
-
const
|
|
66
|
-
|
|
67
|
+
const initialGlobalConfig = this.initialGlobalConfig;
|
|
68
|
+
const cliAndProjectConfigPresets = (0, utils_1.mergePlugins)(this.optsPresets || [], initialConfig.presets || [])();
|
|
69
|
+
const cliAndProjectPlugins = (0, utils_1.mergePlugins)(this.optsPlugins || [], initialConfig.plugins || [])();
|
|
70
|
+
const globalPlugins = (0, utils_1.convertPluginsToObject)(initialGlobalConfig.plugins || [])();
|
|
71
|
+
const globalPresets = (0, utils_1.convertPluginsToObject)(initialGlobalConfig.presets || [])();
|
|
72
|
+
this.debugger('initPresetsAndPlugins', cliAndProjectConfigPresets, cliAndProjectPlugins);
|
|
73
|
+
this.debugger('globalPresetsAndPlugins', globalPlugins, globalPresets);
|
|
67
74
|
process.env.NODE_ENV !== 'test' &&
|
|
68
75
|
helper.createSwcRegister({
|
|
69
|
-
only: [
|
|
76
|
+
only: [
|
|
77
|
+
...Object.keys(cliAndProjectConfigPresets),
|
|
78
|
+
...Object.keys(cliAndProjectPlugins),
|
|
79
|
+
...Object.keys(globalPresets),
|
|
80
|
+
...Object.keys(globalPlugins)
|
|
81
|
+
]
|
|
70
82
|
});
|
|
71
83
|
this.plugins = new Map();
|
|
72
84
|
this.extraPlugins = {};
|
|
73
|
-
this.
|
|
74
|
-
this.
|
|
85
|
+
this.globalExtraPlugins = {};
|
|
86
|
+
this.resolvePresets(cliAndProjectConfigPresets, globalPresets);
|
|
87
|
+
this.resolvePlugins(cliAndProjectPlugins, globalPlugins);
|
|
75
88
|
}
|
|
76
|
-
resolvePresets(
|
|
77
|
-
const
|
|
78
|
-
while (
|
|
79
|
-
this.initPreset(
|
|
89
|
+
resolvePresets(cliAndProjectPresets, globalPresets) {
|
|
90
|
+
const resolvedCliAndProjectPresets = (0, utils_1.resolvePresetsOrPlugins)(this.appPath, cliAndProjectPresets, constants_1.PluginType.Preset);
|
|
91
|
+
while (resolvedCliAndProjectPresets.length) {
|
|
92
|
+
this.initPreset(resolvedCliAndProjectPresets.shift());
|
|
93
|
+
}
|
|
94
|
+
const globalConfigRootPath = path.join(helper.getUserHomeDir(), helper.TARO_GLOBAL_CONFIG_DIR);
|
|
95
|
+
const resolvedGlobalPresets = (0, utils_1.resolvePresetsOrPlugins)(globalConfigRootPath, globalPresets, constants_1.PluginType.Plugin, true);
|
|
96
|
+
while (resolvedGlobalPresets.length) {
|
|
97
|
+
this.initPreset(resolvedGlobalPresets.shift(), true);
|
|
80
98
|
}
|
|
81
99
|
}
|
|
82
|
-
resolvePlugins(
|
|
83
|
-
|
|
84
|
-
const
|
|
85
|
-
|
|
86
|
-
|
|
100
|
+
resolvePlugins(cliAndProjectPlugins, globalPlugins) {
|
|
101
|
+
cliAndProjectPlugins = (0, lodash_1.merge)(this.extraPlugins, cliAndProjectPlugins);
|
|
102
|
+
const resolvedCliAndProjectPlugins = (0, utils_1.resolvePresetsOrPlugins)(this.appPath, cliAndProjectPlugins, constants_1.PluginType.Plugin);
|
|
103
|
+
globalPlugins = (0, lodash_1.merge)(this.globalExtraPlugins, globalPlugins);
|
|
104
|
+
const globalConfigRootPath = path.join(helper.getUserHomeDir(), helper.TARO_GLOBAL_CONFIG_DIR);
|
|
105
|
+
const resolvedGlobalPlugins = (0, utils_1.resolvePresetsOrPlugins)(globalConfigRootPath, globalPlugins, constants_1.PluginType.Plugin, true);
|
|
106
|
+
const resolvedPlugins = resolvedCliAndProjectPlugins.concat(resolvedGlobalPlugins);
|
|
107
|
+
while (resolvedPlugins.length) {
|
|
108
|
+
this.initPlugin(resolvedPlugins.shift());
|
|
87
109
|
}
|
|
88
110
|
this.extraPlugins = {};
|
|
111
|
+
this.globalExtraPlugins = {};
|
|
89
112
|
}
|
|
90
|
-
initPreset(preset) {
|
|
113
|
+
initPreset(preset, isGlobalConfigPreset) {
|
|
91
114
|
this.debugger('initPreset', preset);
|
|
92
115
|
const { id, path, opts, apply } = preset;
|
|
93
116
|
const pluginCtx = this.initPluginCtx({ id, path, ctx: this });
|
|
94
117
|
const { presets, plugins } = apply()(pluginCtx, opts) || {};
|
|
95
118
|
this.registerPlugin(preset);
|
|
96
119
|
if (Array.isArray(presets)) {
|
|
97
|
-
const _presets = (0, utils_1.resolvePresetsOrPlugins)(this.appPath, (0, utils_1.convertPluginsToObject)(presets)(), constants_1.PluginType.Preset);
|
|
120
|
+
const _presets = (0, utils_1.resolvePresetsOrPlugins)(this.appPath, (0, utils_1.convertPluginsToObject)(presets)(), constants_1.PluginType.Preset, isGlobalConfigPreset);
|
|
98
121
|
while (_presets.length) {
|
|
99
|
-
this.initPreset(_presets.shift());
|
|
122
|
+
this.initPreset(_presets.shift(), isGlobalConfigPreset);
|
|
100
123
|
}
|
|
101
124
|
}
|
|
102
125
|
if (Array.isArray(plugins)) {
|
|
103
|
-
|
|
126
|
+
isGlobalConfigPreset
|
|
127
|
+
? (this.globalExtraPlugins = (0, lodash_1.merge)(this.globalExtraPlugins, (0, utils_1.convertPluginsToObject)(plugins)()))
|
|
128
|
+
: (this.extraPlugins = (0, lodash_1.merge)(this.extraPlugins, (0, utils_1.convertPluginsToObject)(plugins)()));
|
|
104
129
|
}
|
|
105
130
|
}
|
|
106
131
|
initPlugin(plugin) {
|
|
@@ -111,6 +136,21 @@ class Kernel extends events_1.EventEmitter {
|
|
|
111
136
|
apply()(pluginCtx, opts);
|
|
112
137
|
this.checkPluginOpts(pluginCtx, opts);
|
|
113
138
|
}
|
|
139
|
+
applyCliCommandPlugin(commandNames = []) {
|
|
140
|
+
const existsCliCommand = [];
|
|
141
|
+
for (let i = 0; i < commandNames.length; i++) {
|
|
142
|
+
const commandName = commandNames[i];
|
|
143
|
+
const commandFilePath = path.resolve(this.cliCommandsPath, `${commandName}.js`);
|
|
144
|
+
if (this.cliCommands.includes(commandName))
|
|
145
|
+
existsCliCommand.push(commandFilePath);
|
|
146
|
+
}
|
|
147
|
+
const commandPlugins = (0, utils_1.convertPluginsToObject)(existsCliCommand || [])();
|
|
148
|
+
helper.createSwcRegister({ only: [...Object.keys(commandPlugins)] });
|
|
149
|
+
const resolvedCommandPlugins = (0, utils_1.resolvePresetsOrPlugins)(this.appPath, commandPlugins, constants_1.PluginType.Plugin);
|
|
150
|
+
while (resolvedCommandPlugins.length) {
|
|
151
|
+
this.initPlugin(resolvedCommandPlugins.shift());
|
|
152
|
+
}
|
|
153
|
+
}
|
|
114
154
|
checkPluginOpts(pluginCtx, opts) {
|
|
115
155
|
if (typeof pluginCtx.optsSchema !== 'function') {
|
|
116
156
|
return;
|
|
@@ -145,7 +185,8 @@ class Kernel extends events_1.EventEmitter {
|
|
|
145
185
|
'helper',
|
|
146
186
|
'runOpts',
|
|
147
187
|
'initialConfig',
|
|
148
|
-
'applyPlugins'
|
|
188
|
+
'applyPlugins',
|
|
189
|
+
'applyCliCommandPlugin'
|
|
149
190
|
];
|
|
150
191
|
internalMethods.forEach(name => {
|
|
151
192
|
if (!this.methods.has(name)) {
|
package/dist/Kernel.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Kernel.js","sourceRoot":"","sources":["../src/Kernel.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Kernel.js","sourceRoot":"","sources":["../src/Kernel.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,yCAAwC;AACxC,2CAAgD;AAChD,mCAAqC;AACrC,mCAA8B;AAC9B,6BAA4B;AAC5B,qCAAkD;AAElD,qCAA6B;AAC7B,qCAA6B;AAC7B,mCAAqG;AACrG,iDAK0B;AAqB1B,MAAqB,MAAO,SAAQ,qBAAY;IAwB9C,YAAa,OAAuB;QAClC,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,cAAa,CAAC,CAAA;QACxG,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,EAAE,CAAA;QAC/C,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,OAAO,CAAA;QAClC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,OAAO,CAAA;QAClC,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAA;QACtD,IAAI,CAAC,KAAK,GAAG,IAAI,GAAG,EAAE,CAAA;QACtB,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,EAAE,CAAA;QACxB,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAA;QACzB,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,EAAE,CAAA;QAC1B,IAAI,CAAC,UAAU,EAAE,CAAA;QACjB,IAAI,CAAC,UAAU,EAAE,CAAA;QACjB,IAAI,CAAC,SAAS,EAAE,CAAA;IAClB,CAAC;IAED,UAAU;QACR,IAAI,CAAC,MAAM,GAAG,IAAI,gBAAM,CAAC;YACvB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;SAC9C,CAAC,CAAA;QACF,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAA;QAC9C,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAA;QAC1D,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,IAAI,CAAC,aAAa,CAAC,CAAA;IACjD,CAAC;IAED,SAAS;QACP,IAAI,CAAC,KAAK,GAAG;YACX,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,eAAe,EAAE,MAAM,CAAC,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;SACrF,CAAA;QACX,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE;YAC7B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE;gBACxB,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU;gBAClC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,UAAoB,CAAC;gBAC5E,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,UAAoB,CAAC;aAChF,CAAC,CAAA;SACH;QACD,IAAI,CAAC,QAAQ,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;IACnE,CAAC;IAED,UAAU;QACR,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;IAC7B,CAAC;IAED,qBAAqB;QACnB,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAA;QACxC,MAAM,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAA;QACpD,MAAM,0BAA0B,GAAG,IAAA,oBAAY,EAAC,IAAI,CAAC,WAAW,IAAI,EAAE,EAAE,aAAa,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,CAAA;QACtG,MAAM,oBAAoB,GAAG,IAAA,oBAAY,EAAC,IAAI,CAAC,WAAW,IAAI,EAAE,EAAE,aAAa,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,CAAA;QAChG,MAAM,aAAa,GAAG,IAAA,8BAAsB,EAAC,mBAAmB,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,CAAA;QACjF,MAAM,aAAa,GAAG,IAAA,8BAAsB,EAAC,mBAAmB,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,CAAA;QACjF,IAAI,CAAC,QAAQ,CAAC,uBAAuB,EAAE,0BAA0B,EAAE,oBAAoB,CAAC,CAAA;QACxF,IAAI,CAAC,QAAQ,CAAC,yBAAyB,EAAE,aAAa,EAAE,aAAa,CAAC,CAAA;QACtE,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM;YAC/B,MAAM,CAAC,iBAAiB,CAAC;gBACvB,IAAI,EAAE;oBACJ,GAAG,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC;oBAC1C,GAAG,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC;oBACpC,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;oBAC7B,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;iBAC9B;aACF,CAAC,CAAA;QACF,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,EAAE,CAAA;QACxB,IAAI,CAAC,YAAY,GAAG,EAAE,CAAA;QACtB,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAA;QAC5B,IAAI,CAAC,cAAc,CAAC,0BAA0B,EAAE,aAAa,CAAC,CAAA;QAC9D,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,aAAa,CAAC,CAAA;IAC1D,CAAC;IAED,cAAc,CAAE,oBAAoC,EAAE,aAA6B;QACjF,MAAM,4BAA4B,GAAG,IAAA,+BAAuB,EAAC,IAAI,CAAC,OAAO,EAAE,oBAAoB,EAAE,sBAAU,CAAC,MAAM,CAAC,CAAA;QACnH,OAAO,4BAA4B,CAAC,MAAM,EAAE;YAC1C,IAAI,CAAC,UAAU,CAAC,4BAA4B,CAAC,KAAK,EAAG,CAAC,CAAA;SACvD;QAED,MAAM,oBAAoB,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,MAAM,CAAC,sBAAsB,CAAC,CAAA;QAC9F,MAAM,qBAAqB,GAAG,IAAA,+BAAuB,EAAC,oBAAoB,EAAG,aAAa,EAAE,sBAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QACpH,OAAO,qBAAqB,CAAC,MAAM,EAAE;YACnC,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,KAAK,EAAG,EAAE,IAAI,CAAC,CAAA;SACtD;IACH,CAAC;IAED,cAAc,CAAE,oBAAoC,EAAE,aAA6B;QACjF,oBAAoB,GAAG,IAAA,cAAK,EAAC,IAAI,CAAC,YAAY,EAAE,oBAAoB,CAAC,CAAA;QACrE,MAAM,4BAA4B,GAAG,IAAA,+BAAuB,EAAC,IAAI,CAAC,OAAO,EAAE,oBAAoB,EAAE,sBAAU,CAAC,MAAM,CAAC,CAAA;QAEnH,aAAa,GAAG,IAAA,cAAK,EAAC,IAAI,CAAC,kBAAkB,EAAE,aAAa,CAAC,CAAA;QAC7D,MAAM,oBAAoB,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,MAAM,CAAC,sBAAsB,CAAC,CAAA;QAC9F,MAAM,qBAAqB,GAAG,IAAA,+BAAuB,EAAC,oBAAoB,EAAG,aAAa,EAAE,sBAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QAEpH,MAAM,eAAe,GAAG,4BAA4B,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAA;QAElF,OAAO,eAAe,CAAC,MAAM,EAAE;YAC7B,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,KAAK,EAAG,CAAC,CAAA;SAC1C;QAED,IAAI,CAAC,YAAY,GAAG,EAAE,CAAA;QACtB,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAA;IAC9B,CAAC;IAED,UAAU,CAAE,MAAe,EAAE,oBAA8B;QACzD,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;QACnC,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,CAAA;QACxC,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAA;QAC7D,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,CAAA;QAC3D,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAA;QAC3B,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC1B,MAAM,QAAQ,GAAG,IAAA,+BAAuB,EAAC,IAAI,CAAC,OAAO,EAAE,IAAA,8BAAsB,EAAC,OAAO,CAAC,EAAE,EAAE,sBAAU,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAA;YAClI,OAAO,QAAQ,CAAC,MAAM,EAAE;gBACtB,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,EAAG,EAAE,oBAAoB,CAAC,CAAA;aACzD;SACF;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC1B,oBAAoB;gBAClB,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,GAAG,IAAA,cAAK,EAAC,IAAI,CAAC,kBAAkB,EAAE,IAAA,8BAAsB,EAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBAC/F,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,GAAG,IAAA,cAAK,EAAC,IAAI,CAAC,YAAY,EAAE,IAAA,8BAAsB,EAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;SACtF;IACH,CAAC;IAED,UAAU,CAAE,MAAe;QACzB,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,CAAA;QACxC,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAA;QAC7D,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;QACnC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAA;QAC3B,KAAK,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;QACxB,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;IACvC,CAAC;IAED,qBAAqB,CAAE,eAAyB,EAAE;QAChD,MAAM,gBAAgB,GAAa,EAAE,CAAA;QACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAG;YAC7C,MAAM,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,CAAA;YACnC,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,WAAW,KAAK,CAAC,CAAA;YAC/E,IAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC;gBAAE,gBAAgB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;SAClF;QACD,MAAM,cAAc,GAAG,IAAA,8BAAsB,EAAC,gBAAgB,IAAI,EAAE,CAAC,EAAE,CAAA;QACvE,MAAM,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,CAAE,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAE,EAAE,CAAC,CAAA;QACtE,MAAM,sBAAsB,GAAG,IAAA,+BAAuB,EAAC,IAAI,CAAC,OAAO,EAAG,cAAc,EAAE,sBAAU,CAAC,MAAM,CAAC,CAAA;QACxG,OAAO,sBAAsB,CAAC,MAAM,EAAE;YACpC,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,KAAK,EAAG,CAAC,CAAA;SACjD;IACH,CAAC;IAED,eAAe,CAAE,SAAS,EAAE,IAAI;QAC9B,IAAI,OAAO,SAAS,CAAC,UAAU,KAAK,UAAU,EAAE;YAC9C,OAAM;SACP;QACD,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAA;QAC3C,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;QAC1B,MAAM,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QACxC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;YACzB,MAAM,IAAI,KAAK,CAAC,KAAK,SAAS,CAAC,EAAE,wBAAwB,CAAC,CAAA;SAC3D;QACD,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QACvC,IAAI,KAAK,EAAE;YACT,KAAK,CAAC,OAAO,GAAG,KAAK,SAAS,CAAC,EAAE,iBAAiB,CAAA;YAClD,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;IAED,cAAc,CAAE,MAAe;QAC7B,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAA;QACvC,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;YAC/B,MAAM,IAAI,KAAK,CAAC,MAAM,MAAM,CAAC,EAAE,OAAO,CAAC,CAAA;SACxC;QACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;IACrC,CAAC;IAED,aAAa,CAAE,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAA6C;QACzE,MAAM,SAAS,GAAG,IAAI,gBAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAA;QAC/C,MAAM,eAAe,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;QAC9C,MAAM,UAAU,GAAG;YACjB,SAAS;YACT,SAAS;YACT,WAAW;YACX,OAAO;YACP,QAAQ;YACR,SAAS;YACT,eAAe;YACf,cAAc;YACd,uBAAuB;SACxB,CAAA;QACD,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBAC3B,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;aAC/B;QACH,CAAC,CAAC,CAAA;QACF,OAAO,IAAI,KAAK,CAAC,SAAS,EAAE;YAC1B,GAAG,EAAE,CAAC,MAAM,EAAE,IAAY,EAAE,EAAE;gBAC5B,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;oBAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;oBACrC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;wBACzB,OAAO,CAAC,GAAG,GAAG,EAAE,EAAE;4BAChB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gCACpB,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;4BACvB,CAAC,CAAC,CAAA;wBACJ,CAAC,CAAA;qBACF;oBACD,OAAO,MAAM,CAAA;iBACd;gBACD,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;oBAC7B,OAAO,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;iBAC7E;gBACD,OAAO,MAAM,CAAC,IAAI,CAAC,CAAA;YACrB,CAAC;SACF,CAAC,CAAA;IACJ,CAAC;IAEK,YAAY,CAAE,IAA6D;;YAC/E,IAAI,IAAI,CAAA;YACR,IAAI,UAAU,CAAA;YACd,IAAI,IAAI,CAAA;YACR,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;gBAC5B,IAAI,GAAG,IAAI,CAAA;aACZ;iBAAM;gBACL,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;gBAChB,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;gBAC5B,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;aACjB;YACD,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA;YAC7B,IAAI,CAAC,QAAQ,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAA;YAC1C,IAAI,CAAC,QAAQ,CAAC,2BAA2B,UAAU,EAAE,CAAC,CAAA;YACtD,IAAI,CAAC,QAAQ,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAA;YAC1C,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;gBAC5B,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAA;aAClC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;YACxC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;gBACjB,OAAO,MAAM,UAAU,CAAA;aACxB;YACD,MAAM,SAAS,GAAG,IAAI,kCAAwB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;YACvD,IAAI,KAAK,CAAC,MAAM,EAAE;gBAChB,MAAM,MAAM,GAAU,EAAE,CAAA;gBACxB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;oBACxB,SAAS,CAAC,UAAU,CAAC;wBACnB,IAAI,EAAE,IAAI,CAAC,MAAO;wBAClB,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,CAAC;wBACtB,aAAa;wBACb,MAAM,EAAE,IAAI,CAAC,MAAM;qBACpB,EAAE,CAAM,GAAG,EAAC,EAAE;wBACb,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;wBACpC,IAAI,0BAAc,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,yBAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;4BACzD,OAAO,GAAG,CAAA;yBACX;wBACD,IAAI,uBAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;4BAC1B,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;4BAChB,OAAO,MAAM,CAAA;yBACd;wBACD,OAAO,IAAI,CAAA;oBACb,CAAC,CAAA,CAAC,CAAA;iBACH;aACF;YACD,OAAO,MAAM,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;QAC5C,CAAC;KAAA;IAED,eAAe,CAAE,QAAQ;QACvB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;YACjC,MAAM,IAAI,KAAK,CAAC,WAAW,QAAQ,EAAE,CAAC,CAAA;SACvC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAA;QAC5C,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,aAAa,CAAC,CAAA;QACxF,OAAO,CAAC,GAAG,CAAC,aAAa,GAAG,IAAA,wBAAe,EAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,aAAa,CAAC,CAAA;QAC9E,OAAO,cAAc,CAAA;IACvB,CAAC;IAED,UAAU,CAAE,IAAI;QACd,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;IACrB,CAAC;IAED,OAAO,CAAE,IAAY;QACnB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACvC,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAE,CAAA;QACnC,iBAAiB,CAAC,GAAG,CAAC,YAAY,EAAE,0BAA0B,CAAC,CAAA;QAC/D,IAAI,gBAAgB,GAAG,IAAI,GAAG,EAAE,CAAA;QAChC,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,EAAE;YACvB,gBAAgB,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,CAAC,CAAC,CAAA;SAChE;QACD,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,gBAAgB,EAAE,GAAG,iBAAiB,CAAC,CAAC,CAAA;QACvE,IAAA,oBAAY,EAAC,IAAI,EAAE,UAAU,EAAE,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,EAAC,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC,CAAA;IACpG,CAAC;IAEK,GAAG,CAAE,IAA2C;;;YACpD,IAAI,IAAI,CAAA;YACR,IAAI,IAAI,CAAA;YACR,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;gBAC5B,IAAI,GAAG,IAAI,CAAA;aACZ;iBAAM;gBACL,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;gBAChB,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;aACjB;YACD,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAA;YAC5B,IAAI,CAAC,QAAQ,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAA;YACzC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAA;YAChC,IAAI,CAAC,QAAQ,CAAC,mBAAmB,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;YACjE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;YAErB,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAA;YACtC,IAAI,CAAC,qBAAqB,EAAE,CAAA;YAE5B,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAA;YAElC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAA;YAChC,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAA;YAElC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBAC5B,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,QAAQ,CAAC,CAAA;aACjC;YAED,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,EAAE;gBAChB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;aAC1B;YAED,IAAI,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,0CAAE,QAAQ,EAAE;gBAC3B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;gBACzD,MAAM,IAAI,CAAC,YAAY,CAAC;oBACtB,IAAI,EAAE,kBAAkB;oBACxB,IAAI,EAAE;wBACJ,IAAI,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM;qBACnB;iBACF,CAAC,CAAA;aACH;YAED,MAAM,IAAI,CAAC,YAAY,CAAC;gBACtB,IAAI;gBACJ,IAAI;aACL,CAAC,CAAA;;KACH;CACF;AAjWD,yBAiWC"}
|
package/dist/utils/index.js
CHANGED
|
@@ -41,9 +41,13 @@ function mergePlugins(dist, src) {
|
|
|
41
41
|
}
|
|
42
42
|
exports.mergePlugins = mergePlugins;
|
|
43
43
|
// getModuleDefaultExport
|
|
44
|
-
function resolvePresetsOrPlugins(root, args, type) {
|
|
45
|
-
|
|
46
|
-
|
|
44
|
+
function resolvePresetsOrPlugins(root, args, type, skipError) {
|
|
45
|
+
var _a, _b;
|
|
46
|
+
// 全局的插件引入报错,不抛出 Error 影响主流程,而是通过 log 提醒然后把插件 filter 掉,保证主流程不变
|
|
47
|
+
const resolvedPresetsOrPlugins = [];
|
|
48
|
+
const presetsOrPluginsNames = Object.keys(args) || [];
|
|
49
|
+
for (let i = 0; i < presetsOrPluginsNames.length; i++) {
|
|
50
|
+
const item = presetsOrPluginsNames[i];
|
|
47
51
|
let fPath;
|
|
48
52
|
try {
|
|
49
53
|
fPath = resolve.sync(item, {
|
|
@@ -54,14 +58,19 @@ function resolvePresetsOrPlugins(root, args, type) {
|
|
|
54
58
|
catch (err) {
|
|
55
59
|
if ((_a = args[item]) === null || _a === void 0 ? void 0 : _a.backup) {
|
|
56
60
|
// 如果项目中没有,可以使用 CLI 中的插件
|
|
57
|
-
fPath = args[item].backup;
|
|
61
|
+
fPath = (_b = args[item]) === null || _b === void 0 ? void 0 : _b.backup;
|
|
62
|
+
}
|
|
63
|
+
else if (skipError) {
|
|
64
|
+
// 如果跳过报错,那么 log 提醒,并且不使用该插件
|
|
65
|
+
console.log(helper_1.chalk.yellow(`找不到插件依赖 "${item}",请先在项目中安装,项目路径:${root}`));
|
|
66
|
+
continue;
|
|
58
67
|
}
|
|
59
68
|
else {
|
|
60
|
-
console.log(helper_1.chalk.red(
|
|
69
|
+
console.log(helper_1.chalk.red(`找不到插件依赖 "${item}",请先在项目中安装,项目路径:${root}`));
|
|
61
70
|
process.exit(1);
|
|
62
71
|
}
|
|
63
72
|
}
|
|
64
|
-
|
|
73
|
+
const resolvedItem = {
|
|
65
74
|
id: fPath,
|
|
66
75
|
path: fPath,
|
|
67
76
|
type,
|
|
@@ -72,11 +81,19 @@ function resolvePresetsOrPlugins(root, args, type) {
|
|
|
72
81
|
}
|
|
73
82
|
catch (error) {
|
|
74
83
|
console.error(error);
|
|
75
|
-
|
|
84
|
+
// 全局的插件运行报错,不抛出 Error 影响主流程,而是通过 log 提醒然后把插件 filter 掉,保证主流程不变
|
|
85
|
+
if (skipError) {
|
|
86
|
+
console.error(`插件依赖 "${item}" 加载失败,请检查插件配置`);
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
throw new Error(`插件依赖 "${item}" 加载失败,请检查插件配置`);
|
|
90
|
+
}
|
|
76
91
|
}
|
|
77
92
|
}
|
|
78
93
|
};
|
|
79
|
-
|
|
94
|
+
resolvedPresetsOrPlugins.push(resolvedItem);
|
|
95
|
+
}
|
|
96
|
+
return resolvedPresetsOrPlugins;
|
|
80
97
|
}
|
|
81
98
|
exports.resolvePresetsOrPlugins = resolvePresetsOrPlugins;
|
|
82
99
|
function supplementBlank(length) {
|
package/dist/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;AAAA,2CAA8D;AAC9D,mCAA8B;AAC9B,6BAA4B;AAC5B,mCAAkC;AAO3B,MAAM,QAAQ,GAA8B,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAAtE,QAAA,QAAQ,YAA8D;AAEnF,SAAgB,aAAa,CAAE,UAAkB;IAC/C,IAAI,IAAA,gBAAQ,EAAC,UAAU,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,OAAO,UAAU,CAAA;IAC1E,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;AAClD,CAAC;AAHD,sCAGC;AAED,SAAgB,sBAAsB,CAAE,KAAmB;IACzD,OAAO,GAAG,EAAE;QACV,MAAM,GAAG,GAAmB,EAAE,CAAA;QAC9B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACxB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBACnB,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;oBAC5B,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,CAAA;oBAChC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;iBACjB;qBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;oBAC9B,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;oBACnC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;iBACpB;YACH,CAAC,CAAC,CAAA;SACH;QACD,OAAO,GAAG,CAAA;IACZ,CAAC,CAAA;AACH,CAAC;AAhBD,wDAgBC;AAED,SAAgB,YAAY,CAAE,IAAkB,EAAE,GAAiB;IACjE,OAAO,GAAG,EAAE;QACV,MAAM,MAAM,GAAG,sBAAsB,CAAC,GAAG,CAAC,EAAE,CAAA;QAC5C,MAAM,OAAO,GAAG,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAA;QAC9C,OAAO,IAAA,cAAK,EAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IAC/B,CAAC,CAAA;AACH,CAAC;AAND,oCAMC;AAED,yBAAyB;AACzB,SAAgB,uBAAuB,CAAE,IAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tarojs/service",
|
|
3
|
-
"version": "3.6.
|
|
3
|
+
"version": "3.6.6-alpha.1",
|
|
4
4
|
"description": "Taro Service",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"types": "types/index.d.ts",
|
|
@@ -30,9 +30,10 @@
|
|
|
30
30
|
"resolve": "^1.22.0",
|
|
31
31
|
"tapable": "^1.1.3",
|
|
32
32
|
"webpack-merge": "^4.2.2",
|
|
33
|
-
"
|
|
34
|
-
"@tarojs/
|
|
35
|
-
"@tarojs/
|
|
33
|
+
"ora": "^5.0.0",
|
|
34
|
+
"@tarojs/helper": "3.6.6-alpha.1",
|
|
35
|
+
"@tarojs/shared": "3.6.6-alpha.1",
|
|
36
|
+
"@tarojs/taro": "3.6.6-alpha.1"
|
|
36
37
|
},
|
|
37
38
|
"devDependencies": {
|
|
38
39
|
"webpack": "5.78.0"
|
package/src/Config.ts
CHANGED
|
@@ -2,11 +2,15 @@ import {
|
|
|
2
2
|
createSwcRegister,
|
|
3
3
|
ENTRY,
|
|
4
4
|
getModuleDefaultExport,
|
|
5
|
+
getUserHomeDir,
|
|
5
6
|
OUTPUT_DIR,
|
|
6
7
|
resolveScriptPath,
|
|
7
|
-
SOURCE_DIR
|
|
8
|
+
SOURCE_DIR,
|
|
9
|
+
TARO_GLOBAL_CONFIG_DIR,
|
|
10
|
+
TARO_GLOBAL_CONFIG_FILE
|
|
8
11
|
} from '@tarojs/helper'
|
|
9
12
|
import * as fs from 'fs-extra'
|
|
13
|
+
import * as ora from 'ora'
|
|
10
14
|
import * as path from 'path'
|
|
11
15
|
import * as merge from 'webpack-merge'
|
|
12
16
|
|
|
@@ -19,23 +23,31 @@ import type { IProjectConfig } from '@tarojs/taro/types/compile'
|
|
|
19
23
|
|
|
20
24
|
interface IConfigOptions {
|
|
21
25
|
appPath: string
|
|
26
|
+
disableGlobalConfig?: boolean
|
|
22
27
|
}
|
|
23
28
|
|
|
24
29
|
export default class Config {
|
|
25
30
|
appPath: string
|
|
26
31
|
configPath: string
|
|
27
32
|
initialConfig: IProjectConfig
|
|
33
|
+
initialGlobalConfig: IProjectConfig
|
|
28
34
|
isInitSuccess: boolean
|
|
35
|
+
disableGlobalConfig: boolean
|
|
36
|
+
|
|
29
37
|
constructor (opts: IConfigOptions) {
|
|
30
38
|
this.appPath = opts.appPath
|
|
39
|
+
this.disableGlobalConfig = !!opts?.disableGlobalConfig
|
|
31
40
|
this.init()
|
|
32
41
|
}
|
|
33
42
|
|
|
34
43
|
init () {
|
|
44
|
+
this.initialConfig = {}
|
|
45
|
+
this.initialGlobalConfig = {}
|
|
46
|
+
this.isInitSuccess = false
|
|
35
47
|
this.configPath = resolveScriptPath(path.join(this.appPath, CONFIG_DIR_NAME, DEFAULT_CONFIG_FILE))
|
|
36
48
|
if (!fs.existsSync(this.configPath)) {
|
|
37
|
-
this.
|
|
38
|
-
this.
|
|
49
|
+
if(this.disableGlobalConfig) return
|
|
50
|
+
this.initGlobalConfig()
|
|
39
51
|
} else {
|
|
40
52
|
createSwcRegister({
|
|
41
53
|
only: [
|
|
@@ -46,13 +58,26 @@ export default class Config {
|
|
|
46
58
|
this.initialConfig = getModuleDefaultExport(require(this.configPath))(merge)
|
|
47
59
|
this.isInitSuccess = true
|
|
48
60
|
} catch (err) {
|
|
49
|
-
this.initialConfig = {}
|
|
50
|
-
this.isInitSuccess = false
|
|
51
61
|
console.log(err)
|
|
52
62
|
}
|
|
53
63
|
}
|
|
54
64
|
}
|
|
55
65
|
|
|
66
|
+
initGlobalConfig () {
|
|
67
|
+
const homedir = getUserHomeDir()
|
|
68
|
+
if(!homedir) return console.error('获取不到用户 home 路径')
|
|
69
|
+
const globalPluginConfigPath = path.join(getUserHomeDir(), TARO_GLOBAL_CONFIG_DIR, TARO_GLOBAL_CONFIG_FILE)
|
|
70
|
+
const spinner = ora(`开始获取 taro 全局配置文件: ${globalPluginConfigPath}`).start()
|
|
71
|
+
if (!fs.existsSync(globalPluginConfigPath)) return spinner.warn(`获取 taro 全局配置文件失败,不存在全局配置文件:${globalPluginConfigPath}`)
|
|
72
|
+
try {
|
|
73
|
+
this.initialGlobalConfig = fs.readJSONSync(globalPluginConfigPath) || {}
|
|
74
|
+
spinner.succeed('获取 taro 全局配置成功')
|
|
75
|
+
}catch(e){
|
|
76
|
+
spinner.stop()
|
|
77
|
+
console.warn(`获取全局配置失败,如果需要启用全局插件请查看配置文件: ${globalPluginConfigPath} `)
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
56
81
|
getConfigWithNamed (platform, configName) {
|
|
57
82
|
const initialConfig = this.initialConfig
|
|
58
83
|
const sourceDirName = initialConfig.sourceRoot || SOURCE_DIR
|
package/src/Kernel.ts
CHANGED
|
@@ -29,6 +29,7 @@ import type {
|
|
|
29
29
|
|
|
30
30
|
interface IKernelOptions {
|
|
31
31
|
appPath: string
|
|
32
|
+
disableGlobalConfig: boolean
|
|
32
33
|
presets?: PluginItem[]
|
|
33
34
|
plugins?: PluginItem[]
|
|
34
35
|
}
|
|
@@ -42,10 +43,15 @@ export default class Kernel extends EventEmitter {
|
|
|
42
43
|
plugins: Map<string, IPlugin>
|
|
43
44
|
paths: IPaths
|
|
44
45
|
extraPlugins: IPluginsObject
|
|
46
|
+
globalExtraPlugins: IPluginsObject
|
|
45
47
|
config: Config
|
|
46
48
|
initialConfig: IProjectConfig
|
|
49
|
+
initialGlobalConfig: IProjectConfig
|
|
47
50
|
hooks: Map<string, IHook[]>
|
|
48
51
|
methods: Map<string, Func[]>
|
|
52
|
+
cliCommands: string []
|
|
53
|
+
cliCommandsPath: string
|
|
54
|
+
disableGlobalConfig: boolean
|
|
49
55
|
commands: Map<string, ICommand>
|
|
50
56
|
platforms: Map<string, IPlatform>
|
|
51
57
|
helper: any
|
|
@@ -58,6 +64,7 @@ export default class Kernel extends EventEmitter {
|
|
|
58
64
|
this.appPath = options.appPath || process.cwd()
|
|
59
65
|
this.optsPresets = options.presets
|
|
60
66
|
this.optsPlugins = options.plugins
|
|
67
|
+
this.disableGlobalConfig = options.disableGlobalConfig
|
|
61
68
|
this.hooks = new Map()
|
|
62
69
|
this.methods = new Map()
|
|
63
70
|
this.commands = new Map()
|
|
@@ -69,9 +76,11 @@ export default class Kernel extends EventEmitter {
|
|
|
69
76
|
|
|
70
77
|
initConfig () {
|
|
71
78
|
this.config = new Config({
|
|
72
|
-
appPath: this.appPath
|
|
79
|
+
appPath: this.appPath,
|
|
80
|
+
disableGlobalConfig: this.disableGlobalConfig
|
|
73
81
|
})
|
|
74
82
|
this.initialConfig = this.config.initialConfig
|
|
83
|
+
this.initialGlobalConfig = this.config.initialGlobalConfig
|
|
75
84
|
this.debugger('initConfig', this.initialConfig)
|
|
76
85
|
}
|
|
77
86
|
|
|
@@ -97,50 +106,76 @@ export default class Kernel extends EventEmitter {
|
|
|
97
106
|
|
|
98
107
|
initPresetsAndPlugins () {
|
|
99
108
|
const initialConfig = this.initialConfig
|
|
100
|
-
const
|
|
101
|
-
const
|
|
102
|
-
this.
|
|
109
|
+
const initialGlobalConfig = this.initialGlobalConfig
|
|
110
|
+
const cliAndProjectConfigPresets = mergePlugins(this.optsPresets || [], initialConfig.presets || [])()
|
|
111
|
+
const cliAndProjectPlugins = mergePlugins(this.optsPlugins || [], initialConfig.plugins || [])()
|
|
112
|
+
const globalPlugins = convertPluginsToObject(initialGlobalConfig.plugins || [])()
|
|
113
|
+
const globalPresets = convertPluginsToObject(initialGlobalConfig.presets || [])()
|
|
114
|
+
this.debugger('initPresetsAndPlugins', cliAndProjectConfigPresets, cliAndProjectPlugins)
|
|
115
|
+
this.debugger('globalPresetsAndPlugins', globalPlugins, globalPresets)
|
|
103
116
|
process.env.NODE_ENV !== 'test' &&
|
|
104
117
|
helper.createSwcRegister({
|
|
105
|
-
only: [
|
|
118
|
+
only: [
|
|
119
|
+
...Object.keys(cliAndProjectConfigPresets),
|
|
120
|
+
...Object.keys(cliAndProjectPlugins),
|
|
121
|
+
...Object.keys(globalPresets),
|
|
122
|
+
...Object.keys(globalPlugins)
|
|
123
|
+
]
|
|
106
124
|
})
|
|
107
125
|
this.plugins = new Map()
|
|
108
126
|
this.extraPlugins = {}
|
|
109
|
-
this.
|
|
110
|
-
this.
|
|
127
|
+
this.globalExtraPlugins = {}
|
|
128
|
+
this.resolvePresets(cliAndProjectConfigPresets, globalPresets)
|
|
129
|
+
this.resolvePlugins(cliAndProjectPlugins, globalPlugins)
|
|
111
130
|
}
|
|
112
131
|
|
|
113
|
-
resolvePresets (
|
|
114
|
-
const
|
|
115
|
-
while (
|
|
116
|
-
this.initPreset(
|
|
132
|
+
resolvePresets (cliAndProjectPresets: IPluginsObject, globalPresets: IPluginsObject) {
|
|
133
|
+
const resolvedCliAndProjectPresets = resolvePresetsOrPlugins(this.appPath, cliAndProjectPresets, PluginType.Preset)
|
|
134
|
+
while (resolvedCliAndProjectPresets.length) {
|
|
135
|
+
this.initPreset(resolvedCliAndProjectPresets.shift()!)
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
const globalConfigRootPath = path.join(helper.getUserHomeDir(), helper.TARO_GLOBAL_CONFIG_DIR)
|
|
139
|
+
const resolvedGlobalPresets = resolvePresetsOrPlugins(globalConfigRootPath , globalPresets, PluginType.Plugin, true)
|
|
140
|
+
while (resolvedGlobalPresets.length) {
|
|
141
|
+
this.initPreset(resolvedGlobalPresets.shift()!, true)
|
|
117
142
|
}
|
|
118
143
|
}
|
|
119
144
|
|
|
120
|
-
resolvePlugins (
|
|
121
|
-
|
|
122
|
-
const
|
|
145
|
+
resolvePlugins (cliAndProjectPlugins: IPluginsObject, globalPlugins: IPluginsObject) {
|
|
146
|
+
cliAndProjectPlugins = merge(this.extraPlugins, cliAndProjectPlugins)
|
|
147
|
+
const resolvedCliAndProjectPlugins = resolvePresetsOrPlugins(this.appPath, cliAndProjectPlugins, PluginType.Plugin)
|
|
148
|
+
|
|
149
|
+
globalPlugins = merge(this.globalExtraPlugins, globalPlugins)
|
|
150
|
+
const globalConfigRootPath = path.join(helper.getUserHomeDir(), helper.TARO_GLOBAL_CONFIG_DIR)
|
|
151
|
+
const resolvedGlobalPlugins = resolvePresetsOrPlugins(globalConfigRootPath , globalPlugins, PluginType.Plugin, true)
|
|
152
|
+
|
|
153
|
+
const resolvedPlugins = resolvedCliAndProjectPlugins.concat(resolvedGlobalPlugins)
|
|
123
154
|
|
|
124
|
-
while (
|
|
125
|
-
this.initPlugin(
|
|
155
|
+
while (resolvedPlugins.length) {
|
|
156
|
+
this.initPlugin(resolvedPlugins.shift()!)
|
|
126
157
|
}
|
|
158
|
+
|
|
127
159
|
this.extraPlugins = {}
|
|
160
|
+
this.globalExtraPlugins = {}
|
|
128
161
|
}
|
|
129
162
|
|
|
130
|
-
initPreset (preset: IPreset) {
|
|
163
|
+
initPreset (preset: IPreset, isGlobalConfigPreset?: boolean) {
|
|
131
164
|
this.debugger('initPreset', preset)
|
|
132
165
|
const { id, path, opts, apply } = preset
|
|
133
166
|
const pluginCtx = this.initPluginCtx({ id, path, ctx: this })
|
|
134
167
|
const { presets, plugins } = apply()(pluginCtx, opts) || {}
|
|
135
168
|
this.registerPlugin(preset)
|
|
136
169
|
if (Array.isArray(presets)) {
|
|
137
|
-
const _presets = resolvePresetsOrPlugins(this.appPath, convertPluginsToObject(presets)(), PluginType.Preset)
|
|
170
|
+
const _presets = resolvePresetsOrPlugins(this.appPath, convertPluginsToObject(presets)(), PluginType.Preset, isGlobalConfigPreset)
|
|
138
171
|
while (_presets.length) {
|
|
139
|
-
this.initPreset(_presets.shift()
|
|
172
|
+
this.initPreset(_presets.shift()!, isGlobalConfigPreset)
|
|
140
173
|
}
|
|
141
174
|
}
|
|
142
175
|
if (Array.isArray(plugins)) {
|
|
143
|
-
|
|
176
|
+
isGlobalConfigPreset
|
|
177
|
+
? (this.globalExtraPlugins = merge(this.globalExtraPlugins, convertPluginsToObject(plugins)()))
|
|
178
|
+
: (this.extraPlugins = merge(this.extraPlugins, convertPluginsToObject(plugins)()))
|
|
144
179
|
}
|
|
145
180
|
}
|
|
146
181
|
|
|
@@ -153,6 +188,21 @@ export default class Kernel extends EventEmitter {
|
|
|
153
188
|
this.checkPluginOpts(pluginCtx, opts)
|
|
154
189
|
}
|
|
155
190
|
|
|
191
|
+
applyCliCommandPlugin (commandNames: string[] = []) {
|
|
192
|
+
const existsCliCommand: string[] = []
|
|
193
|
+
for( let i = 0; i < commandNames.length; i++ ) {
|
|
194
|
+
const commandName = commandNames[i]
|
|
195
|
+
const commandFilePath = path.resolve(this.cliCommandsPath, `${commandName}.js`)
|
|
196
|
+
if(this.cliCommands.includes(commandName)) existsCliCommand.push(commandFilePath)
|
|
197
|
+
}
|
|
198
|
+
const commandPlugins = convertPluginsToObject(existsCliCommand || [])()
|
|
199
|
+
helper.createSwcRegister({ only: [ ...Object.keys(commandPlugins) ] })
|
|
200
|
+
const resolvedCommandPlugins = resolvePresetsOrPlugins(this.appPath , commandPlugins, PluginType.Plugin)
|
|
201
|
+
while (resolvedCommandPlugins.length) {
|
|
202
|
+
this.initPlugin(resolvedCommandPlugins.shift()!)
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
|
|
156
206
|
checkPluginOpts (pluginCtx, opts) {
|
|
157
207
|
if (typeof pluginCtx.optsSchema !== 'function') {
|
|
158
208
|
return
|
|
@@ -189,7 +239,8 @@ export default class Kernel extends EventEmitter {
|
|
|
189
239
|
'helper',
|
|
190
240
|
'runOpts',
|
|
191
241
|
'initialConfig',
|
|
192
|
-
'applyPlugins'
|
|
242
|
+
'applyPlugins',
|
|
243
|
+
'applyCliCommandPlugin'
|
|
193
244
|
]
|
|
194
245
|
internalMethods.forEach(name => {
|
|
195
246
|
if (!this.methods.has(name)) {
|
package/src/utils/index.ts
CHANGED
|
@@ -4,9 +4,9 @@ import * as path from 'path'
|
|
|
4
4
|
import * as resolve from 'resolve'
|
|
5
5
|
|
|
6
6
|
import { PluginType } from './constants'
|
|
7
|
-
import { IPlugin, IPluginsObject } from './types'
|
|
8
7
|
|
|
9
8
|
import type { PluginItem } from '@tarojs/taro/types/compile'
|
|
9
|
+
import type { IPlugin, IPluginsObject } from './types'
|
|
10
10
|
|
|
11
11
|
export const isNpmPkg: (name: string) => boolean = name => !(/^(\.|\/)/.test(name))
|
|
12
12
|
|
|
@@ -42,8 +42,12 @@ export function mergePlugins (dist: PluginItem[], src: PluginItem[]) {
|
|
|
42
42
|
}
|
|
43
43
|
|
|
44
44
|
// getModuleDefaultExport
|
|
45
|
-
export function resolvePresetsOrPlugins (root: string, args, type: PluginType): IPlugin[] {
|
|
46
|
-
|
|
45
|
+
export function resolvePresetsOrPlugins (root: string, args: IPluginsObject, type: PluginType, skipError?: boolean): IPlugin[] {
|
|
46
|
+
// 全局的插件引入报错,不抛出 Error 影响主流程,而是通过 log 提醒然后把插件 filter 掉,保证主流程不变
|
|
47
|
+
const resolvedPresetsOrPlugins: IPlugin[] = []
|
|
48
|
+
const presetsOrPluginsNames = Object.keys(args) || []
|
|
49
|
+
for( let i = 0; i < presetsOrPluginsNames.length; i++ ) {
|
|
50
|
+
const item = presetsOrPluginsNames[i]
|
|
47
51
|
let fPath
|
|
48
52
|
try {
|
|
49
53
|
fPath = resolve.sync(item, {
|
|
@@ -53,13 +57,17 @@ export function resolvePresetsOrPlugins (root: string, args, type: PluginType):
|
|
|
53
57
|
} catch (err) {
|
|
54
58
|
if (args[item]?.backup) {
|
|
55
59
|
// 如果项目中没有,可以使用 CLI 中的插件
|
|
56
|
-
fPath = args[item]
|
|
60
|
+
fPath = args[item]?.backup
|
|
61
|
+
} else if (skipError) {
|
|
62
|
+
// 如果跳过报错,那么 log 提醒,并且不使用该插件
|
|
63
|
+
console.log(chalk.yellow(`找不到插件依赖 "${item}",请先在项目中安装,项目路径:${root}`))
|
|
64
|
+
continue
|
|
57
65
|
} else {
|
|
58
|
-
console.log(chalk.red(
|
|
66
|
+
console.log(chalk.red(`找不到插件依赖 "${item}",请先在项目中安装,项目路径:${root}`))
|
|
59
67
|
process.exit(1)
|
|
60
68
|
}
|
|
61
69
|
}
|
|
62
|
-
|
|
70
|
+
const resolvedItem = {
|
|
63
71
|
id: fPath,
|
|
64
72
|
path: fPath,
|
|
65
73
|
type,
|
|
@@ -69,11 +77,19 @@ export function resolvePresetsOrPlugins (root: string, args, type: PluginType):
|
|
|
69
77
|
return getModuleDefaultExport(require(fPath))
|
|
70
78
|
} catch (error) {
|
|
71
79
|
console.error(error)
|
|
72
|
-
|
|
80
|
+
// 全局的插件运行报错,不抛出 Error 影响主流程,而是通过 log 提醒然后把插件 filter 掉,保证主流程不变
|
|
81
|
+
if(skipError) {
|
|
82
|
+
console.error(`插件依赖 "${item}" 加载失败,请检查插件配置`)
|
|
83
|
+
} else {
|
|
84
|
+
throw new Error(`插件依赖 "${item}" 加载失败,请检查插件配置`)
|
|
85
|
+
}
|
|
73
86
|
}
|
|
74
87
|
}
|
|
75
88
|
}
|
|
76
|
-
|
|
89
|
+
resolvedPresetsOrPlugins.push(resolvedItem)
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
return resolvedPresetsOrPlugins
|
|
77
93
|
}
|
|
78
94
|
|
|
79
95
|
function supplementBlank (length) {
|
package/types/Config.d.ts
CHANGED
|
@@ -1,14 +1,19 @@
|
|
|
1
|
+
import * as ora from 'ora';
|
|
1
2
|
import type { IProjectConfig } from '@tarojs/taro/types/compile';
|
|
2
3
|
interface IConfigOptions {
|
|
3
4
|
appPath: string;
|
|
5
|
+
disableGlobalConfig?: boolean;
|
|
4
6
|
}
|
|
5
7
|
export default class Config {
|
|
6
8
|
appPath: string;
|
|
7
9
|
configPath: string;
|
|
8
10
|
initialConfig: IProjectConfig;
|
|
11
|
+
initialGlobalConfig: IProjectConfig;
|
|
9
12
|
isInitSuccess: boolean;
|
|
13
|
+
disableGlobalConfig: boolean;
|
|
10
14
|
constructor(opts: IConfigOptions);
|
|
11
15
|
init(): void;
|
|
16
|
+
initGlobalConfig(): void | ora.Ora;
|
|
12
17
|
getConfigWithNamed(platform: any, configName: any): any;
|
|
13
18
|
}
|
|
14
19
|
export {};
|
package/types/Kernel.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ import type { IProjectConfig, PluginItem } from '@tarojs/taro/types/compile';
|
|
|
6
6
|
import type { Func, ICommand, IHook, IPaths, IPlatform, IPlugin, IPluginsObject, IPreset } from './utils/types';
|
|
7
7
|
interface IKernelOptions {
|
|
8
8
|
appPath: string;
|
|
9
|
+
disableGlobalConfig: boolean;
|
|
9
10
|
presets?: PluginItem[];
|
|
10
11
|
plugins?: PluginItem[];
|
|
11
12
|
}
|
|
@@ -18,10 +19,15 @@ export default class Kernel extends EventEmitter {
|
|
|
18
19
|
plugins: Map<string, IPlugin>;
|
|
19
20
|
paths: IPaths;
|
|
20
21
|
extraPlugins: IPluginsObject;
|
|
22
|
+
globalExtraPlugins: IPluginsObject;
|
|
21
23
|
config: Config;
|
|
22
24
|
initialConfig: IProjectConfig;
|
|
25
|
+
initialGlobalConfig: IProjectConfig;
|
|
23
26
|
hooks: Map<string, IHook[]>;
|
|
24
27
|
methods: Map<string, Func[]>;
|
|
28
|
+
cliCommands: string[];
|
|
29
|
+
cliCommandsPath: string;
|
|
30
|
+
disableGlobalConfig: boolean;
|
|
25
31
|
commands: Map<string, ICommand>;
|
|
26
32
|
platforms: Map<string, IPlatform>;
|
|
27
33
|
helper: any;
|
|
@@ -32,10 +38,11 @@ export default class Kernel extends EventEmitter {
|
|
|
32
38
|
initPaths(): void;
|
|
33
39
|
initHelper(): void;
|
|
34
40
|
initPresetsAndPlugins(): void;
|
|
35
|
-
resolvePresets(
|
|
36
|
-
resolvePlugins(
|
|
37
|
-
initPreset(preset: IPreset): void;
|
|
41
|
+
resolvePresets(cliAndProjectPresets: IPluginsObject, globalPresets: IPluginsObject): void;
|
|
42
|
+
resolvePlugins(cliAndProjectPlugins: IPluginsObject, globalPlugins: IPluginsObject): void;
|
|
43
|
+
initPreset(preset: IPreset, isGlobalConfigPreset?: boolean): void;
|
|
38
44
|
initPlugin(plugin: IPlugin): void;
|
|
45
|
+
applyCliCommandPlugin(commandNames?: string[]): void;
|
|
39
46
|
checkPluginOpts(pluginCtx: any, opts: any): void;
|
|
40
47
|
registerPlugin(plugin: IPlugin): void;
|
|
41
48
|
initPluginCtx({ id, path, ctx }: {
|
package/types/utils/index.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { PluginType } from './constants';
|
|
2
|
-
import { IPlugin, IPluginsObject } from './types';
|
|
3
2
|
import type { PluginItem } from '@tarojs/taro/types/compile';
|
|
3
|
+
import type { IPlugin, IPluginsObject } from './types';
|
|
4
4
|
export declare const isNpmPkg: (name: string) => boolean;
|
|
5
5
|
export declare function getPluginPath(pluginPath: string): string;
|
|
6
6
|
export declare function convertPluginsToObject(items: PluginItem[]): () => IPluginsObject;
|
|
7
7
|
export declare function mergePlugins(dist: PluginItem[], src: PluginItem[]): () => IPluginsObject;
|
|
8
|
-
export declare function resolvePresetsOrPlugins(root: string, args:
|
|
8
|
+
export declare function resolvePresetsOrPlugins(root: string, args: IPluginsObject, type: PluginType, skipError?: boolean): IPlugin[];
|
|
9
9
|
export declare function printHelpLog(command: any, optionsList: Map<string, string>, synopsisList?: Set<string>): void;
|