@giteeteam/apps-cli 0.1.7 → 0.1.10
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/index.js +31 -35
- package/package.json +2 -3
package/dist/index.js
CHANGED
|
@@ -5,7 +5,6 @@ var commander = require('commander');
|
|
|
5
5
|
var appsBundler = require('@giteeteam/apps-bundler');
|
|
6
6
|
var fse = require('fs-extra');
|
|
7
7
|
var path = require('path');
|
|
8
|
-
var fs = require('fs');
|
|
9
8
|
var archiver = require('archiver');
|
|
10
9
|
var ora = require('ora');
|
|
11
10
|
var yaml = require('yaml');
|
|
@@ -20,7 +19,6 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
|
|
|
20
19
|
|
|
21
20
|
var fse__default = /*#__PURE__*/_interopDefaultLegacy(fse);
|
|
22
21
|
var path__default = /*#__PURE__*/_interopDefaultLegacy(path);
|
|
23
|
-
var fs__default = /*#__PURE__*/_interopDefaultLegacy(fs);
|
|
24
22
|
var archiver__default = /*#__PURE__*/_interopDefaultLegacy(archiver);
|
|
25
23
|
var ora__default = /*#__PURE__*/_interopDefaultLegacy(ora);
|
|
26
24
|
var inquirer__default = /*#__PURE__*/_interopDefaultLegacy(inquirer);
|
|
@@ -28,7 +26,7 @@ var simpleGit__default = /*#__PURE__*/_interopDefaultLegacy(simpleGit);
|
|
|
28
26
|
var readline__default = /*#__PURE__*/_interopDefaultLegacy(readline);
|
|
29
27
|
var execa__default = /*#__PURE__*/_interopDefaultLegacy(execa);
|
|
30
28
|
|
|
31
|
-
var version = "0.1.
|
|
29
|
+
var version = "0.1.10";
|
|
32
30
|
|
|
33
31
|
const packageApp = async (outputDir, manifest, _copyFiles = []) => {
|
|
34
32
|
// add copy file manifest
|
|
@@ -50,7 +48,7 @@ const packageApp = async (outputDir, manifest, _copyFiles = []) => {
|
|
|
50
48
|
};
|
|
51
49
|
|
|
52
50
|
const readPkgName = async () => {
|
|
53
|
-
const fileBuffer = await
|
|
51
|
+
const fileBuffer = await fse__default["default"].readFile(path__default["default"].resolve('./package.json'));
|
|
54
52
|
const fileStr = fileBuffer.toString();
|
|
55
53
|
const fileJson = JSON.parse(fileStr);
|
|
56
54
|
return fileJson === null || fileJson === void 0 ? void 0 : fileJson.name;
|
|
@@ -60,7 +58,7 @@ const archiveApp = async (archiveDir) => {
|
|
|
60
58
|
const outputFile = path__default["default"].resolve(`./${pkgName}.zip`);
|
|
61
59
|
await fse__default["default"].remove(outputFile);
|
|
62
60
|
return new Promise((resolve, reject) => {
|
|
63
|
-
const output =
|
|
61
|
+
const output = fse__default["default"].createWriteStream(outputFile);
|
|
64
62
|
const archive = archiver__default["default"]('zip', {
|
|
65
63
|
zlib: { level: 9 }, // Sets the compression level.
|
|
66
64
|
});
|
|
@@ -136,7 +134,7 @@ const getManifestObject = async () => {
|
|
|
136
134
|
};
|
|
137
135
|
|
|
138
136
|
var run$1 = async (opts) => {
|
|
139
|
-
const { outputDir, inputDir, prod, copyFiles } = opts;
|
|
137
|
+
const { outputDir, inputDir, prod, copyFiles, zip } = opts;
|
|
140
138
|
const manifest = await getManifestObject();
|
|
141
139
|
// bundle
|
|
142
140
|
await execActionWithSpinner({
|
|
@@ -150,12 +148,14 @@ var run$1 = async (opts) => {
|
|
|
150
148
|
error: 'package failed',
|
|
151
149
|
succeed: 'package success',
|
|
152
150
|
}, () => packageApp(outputDir, manifest, copyFiles));
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
151
|
+
if (zip) {
|
|
152
|
+
// archive
|
|
153
|
+
await execActionWithSpinner({
|
|
154
|
+
start: 'start archive',
|
|
155
|
+
error: 'archive failed',
|
|
156
|
+
succeed: 'archive success',
|
|
157
|
+
}, () => archiveApp(outputDir));
|
|
158
|
+
}
|
|
159
159
|
};
|
|
160
160
|
|
|
161
161
|
var build = async (options) => {
|
|
@@ -164,19 +164,18 @@ var build = async (options) => {
|
|
|
164
164
|
inputDir: path__default["default"].resolve('src'),
|
|
165
165
|
prod: !!options.prod,
|
|
166
166
|
copyFiles: options.copy,
|
|
167
|
+
zip: options.zip,
|
|
167
168
|
});
|
|
168
169
|
};
|
|
169
170
|
|
|
170
|
-
const fileExists = (profilePath) => fs__default["default"].existsSync(profilePath);
|
|
171
|
-
|
|
172
171
|
const init = async (projectPath) => {
|
|
173
172
|
const git = simpleGit__default["default"](projectPath);
|
|
174
173
|
await git.init();
|
|
175
174
|
return;
|
|
176
175
|
};
|
|
177
176
|
const clone = async (repoUrl, projectPath) => {
|
|
178
|
-
if (!
|
|
179
|
-
await
|
|
177
|
+
if (!(await fse__default["default"].pathExists(projectPath))) {
|
|
178
|
+
await fse__default["default"].mkdir(projectPath);
|
|
180
179
|
}
|
|
181
180
|
const git = simpleGit__default["default"](projectPath);
|
|
182
181
|
await git.clone(repoUrl, projectPath);
|
|
@@ -192,15 +191,11 @@ var TemplateType;
|
|
|
192
191
|
// 重写替换文件内带模版的地方。格式为 {{field}}
|
|
193
192
|
// options为字段变量
|
|
194
193
|
const rewriteTemplateField = async (path, options) => {
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
fs__default["default"].writeFile(path, content.replace(/{{(\w+)}}/g, (match, key) => (typeof options[key] === 'string' ? options[key] : match)), () => {
|
|
201
|
-
resolve();
|
|
202
|
-
});
|
|
203
|
-
});
|
|
194
|
+
if (!(await fse__default["default"].pathExists(path))) {
|
|
195
|
+
return;
|
|
196
|
+
}
|
|
197
|
+
const content = await fse__default["default"].readFile(path, { encoding: 'utf-8' });
|
|
198
|
+
await fse__default["default"].writeFile(path, content.replace(/{{(\w+)}}/g, (match, key) => (typeof options[key] === 'string' ? options[key] : match)));
|
|
204
199
|
};
|
|
205
200
|
|
|
206
201
|
const toStartOfLine = (stream) => {
|
|
@@ -280,18 +275,19 @@ const dependenciesInstall = async (projectPath) => {
|
|
|
280
275
|
var run = async (options) => {
|
|
281
276
|
const { cwd, packageName } = options;
|
|
282
277
|
const projectPath = path__default["default"].join(cwd, packageName);
|
|
283
|
-
if (
|
|
278
|
+
if (await fse__default["default"].pathExists(projectPath)) {
|
|
284
279
|
console.error('项目文件夹已存在!请删除或者换个项目名');
|
|
285
280
|
return;
|
|
286
281
|
}
|
|
282
|
+
// 选择模板类型 micro or uikit
|
|
287
283
|
const templateType = await selectTemplate();
|
|
284
|
+
// 从远程仓库clone模板
|
|
288
285
|
await cloneRepo(templateURL, projectPath);
|
|
289
286
|
// 将指定模板复制到跟目录
|
|
290
287
|
await fse__default["default"].copy(path__default["default"].join(projectPath, templateType), projectPath);
|
|
291
288
|
// 删除各个模板文件夹
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
}
|
|
289
|
+
await Promise.all(Object.values(TemplateType).map(t => fse__default["default"].remove(path__default["default"].join(projectPath, t))));
|
|
290
|
+
// 删除源远程仓库的git
|
|
295
291
|
await fse__default["default"].remove(path__default["default"].join(projectPath, './.git'));
|
|
296
292
|
const appId = uuid.v4();
|
|
297
293
|
const files = [
|
|
@@ -303,12 +299,11 @@ var run = async (options) => {
|
|
|
303
299
|
'./static/micro/src/App.tsx',
|
|
304
300
|
'./static/micro/src/index.tsx',
|
|
305
301
|
];
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
}
|
|
302
|
+
// 模板替换
|
|
303
|
+
await Promise.all(files.map(file => rewriteTemplateField(path__default["default"].join(projectPath, file), {
|
|
304
|
+
appId,
|
|
305
|
+
projectName: packageName,
|
|
306
|
+
})));
|
|
312
307
|
await dependenciesInstall(projectPath);
|
|
313
308
|
await init(projectPath);
|
|
314
309
|
console.log('项目初始化成功!');
|
|
@@ -332,6 +327,7 @@ program.version(version).description('Giteeteam Apps Cli');
|
|
|
332
327
|
program
|
|
333
328
|
.command('build')
|
|
334
329
|
.option('--prod', 'build in production')
|
|
330
|
+
.option('--no-zip', 'no archive')
|
|
335
331
|
.option('-c --copy [letters...]', 'copy files')
|
|
336
332
|
.action(build);
|
|
337
333
|
program.command('create [name]').action(create);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@giteeteam/apps-cli",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.10",
|
|
4
4
|
"description": "Giteeteam Apps cli",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"typescript",
|
|
@@ -55,6 +55,5 @@
|
|
|
55
55
|
"@types/fs-extra": "^9.0.13",
|
|
56
56
|
"@types/inquirer": "^8.2.1",
|
|
57
57
|
"@types/uuid": "^8.3.4"
|
|
58
|
-
}
|
|
59
|
-
"gitHead": "f5ee334b9452e62368ca01347ad0c7c56655b533"
|
|
58
|
+
}
|
|
60
59
|
}
|