@wagq/wa-cli 0.6.23 → 0.6.25
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/README.md +24 -10
- package/config/command.js +13 -4
- package/lib/batchUpdate/getUpdateLibs.js +18 -0
- package/lib/batchUpdate/index.js +20 -0
- package/package.json +5 -1
- package/utils/packages.js +20 -0
package/README.md
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
# cli 工具
|
|
2
2
|
|
|
3
3
|
使用方式 全局安装后 可使用 wa [命令]
|
|
4
|
+
|
|
4
5
|
- 更多描述可以使用help查看
|
|
5
6
|
|
|
6
7
|
```
|
|
@@ -8,32 +9,45 @@
|
|
|
8
9
|
```
|
|
9
10
|
|
|
10
11
|
- 初始化项目
|
|
12
|
+
|
|
11
13
|
```bash
|
|
12
|
-
|
|
14
|
+
wa init
|
|
13
15
|
```
|
|
14
16
|
|
|
15
17
|
- 启动本地服务
|
|
18
|
+
|
|
19
|
+
- `-P` 3000 指定端口
|
|
20
|
+
- `-S` true 开启https
|
|
21
|
+
|
|
16
22
|
```bash
|
|
17
|
-
|
|
23
|
+
wa server [path]
|
|
18
24
|
```
|
|
19
|
-
可选参数
|
|
20
|
-
-P 3000 指定端口
|
|
21
|
-
-S true 开启https
|
|
22
25
|
|
|
23
26
|
- 转换 xlsx 文件为多语言配置
|
|
24
|
-
wa xlsx2Config [path] [name] [ext]
|
|
25
|
-
参数
|
|
26
27
|
|
|
27
|
-
- path 文件路径
|
|
28
|
-
- name 被转换目标文件名称
|
|
29
|
-
- ext 转换后文件扩展名 json 或 ts
|
|
28
|
+
- `path` 文件路径
|
|
29
|
+
- `name` 被转换目标文件名称
|
|
30
|
+
- `ext` 转换后文件扩展名 json 或 ts
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
wa xlsx2Config [path] [name] [ext]
|
|
34
|
+
```
|
|
30
35
|
|
|
31
36
|
- 同步远端低代码配置
|
|
37
|
+
|
|
32
38
|
```bash
|
|
33
39
|
wa daml
|
|
34
40
|
```
|
|
35
41
|
|
|
36
42
|
- 同步远端应用所有页面的低代码配置
|
|
43
|
+
|
|
37
44
|
```bash
|
|
38
45
|
wa damls
|
|
39
46
|
```
|
|
47
|
+
|
|
48
|
+
- batchUpdate
|
|
49
|
+
批量更新指定组织下的包
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
wa batchUpdate
|
|
53
|
+
```
|
package/config/command.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
const init = require("../lib/init");
|
|
2
2
|
const server = require("../lib/server");
|
|
3
3
|
const xlsx2Config = require("../lib/locale/xlsx2Config");
|
|
4
|
-
const asyncDaml = require(
|
|
5
|
-
const asyncDamlByApp = require(
|
|
4
|
+
const asyncDaml = require("../lib/daml/async");
|
|
5
|
+
const asyncDamlByApp = require("../lib/daml/asyncByApp");
|
|
6
|
+
const batchUpdate = require("../lib/batchUpdate");
|
|
6
7
|
|
|
7
8
|
const command = [
|
|
8
9
|
{
|
|
@@ -13,6 +14,14 @@ const command = [
|
|
|
13
14
|
asyncDaml();
|
|
14
15
|
},
|
|
15
16
|
},
|
|
17
|
+
{
|
|
18
|
+
name: "batchUpdate",
|
|
19
|
+
alias: "bu",
|
|
20
|
+
description: "批量升级依赖包,可以指定组织,只更新组织下的依赖",
|
|
21
|
+
action: () => {
|
|
22
|
+
batchUpdate();
|
|
23
|
+
},
|
|
24
|
+
},
|
|
16
25
|
{
|
|
17
26
|
name: "damls",
|
|
18
27
|
description: `从应用同步所有页面的逻辑器与变量值,
|
|
@@ -23,8 +32,8 @@ const command = [
|
|
|
23
32
|
appName为应用名称,也是你区分不同应用的标识,所有生成的文件都会放在appName文件夹下`,
|
|
24
33
|
alias: "da",
|
|
25
34
|
action: () => {
|
|
26
|
-
asyncDamlByApp()
|
|
27
|
-
}
|
|
35
|
+
asyncDamlByApp();
|
|
36
|
+
},
|
|
28
37
|
},
|
|
29
38
|
{
|
|
30
39
|
name: "init",
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
const { execSync } = require("child_process");
|
|
2
|
+
const log = require("../../utils/log");
|
|
3
|
+
const { getPackageTxt } = require("../../utils/packages");
|
|
4
|
+
|
|
5
|
+
const getupdateContent = async (prefix) => {
|
|
6
|
+
let packageTxt = getPackageTxt();
|
|
7
|
+
const reg = new RegExp(`"(${prefix}\/[\\w|-]+)".+,`, "g");
|
|
8
|
+
packageTxt = packageTxt.replace(reg, (_, name) => {
|
|
9
|
+
let version = execSync(`npm view ${name} version`).toString();
|
|
10
|
+
version = version.substring(0, version.length - 1);
|
|
11
|
+
log.info(`${name} => ${version}`);
|
|
12
|
+
return `"${name}": "^${version}",`;
|
|
13
|
+
});
|
|
14
|
+
|
|
15
|
+
return packageTxt;
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
module.exports = getupdateContent;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
const { writePackageTxt } = require("../../utils/packages");
|
|
2
|
+
const getupdateContent = require("./getUpdateLibs");
|
|
3
|
+
const Prompt = require("inquirer");
|
|
4
|
+
|
|
5
|
+
const batchUpdate = async () => {
|
|
6
|
+
const quetionList = [
|
|
7
|
+
{
|
|
8
|
+
type: "input",
|
|
9
|
+
name: "prefix",
|
|
10
|
+
message: "请输入需要更新的包组织,如只更新@wagq,输入@wagq",
|
|
11
|
+
default: "@wagq",
|
|
12
|
+
},
|
|
13
|
+
];
|
|
14
|
+
|
|
15
|
+
const { prefix } = await Prompt.default.prompt(quetionList);
|
|
16
|
+
const packageContent = await getupdateContent(prefix);
|
|
17
|
+
writePackageTxt(packageContent);
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
module.exports = batchUpdate;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wagq/wa-cli",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.25",
|
|
4
4
|
"description": "wa的脚手架",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -8,6 +8,10 @@
|
|
|
8
8
|
"pub": "npm publish --access public --registry=https://registry.npmjs.org",
|
|
9
9
|
"dev": "node ./bin/wa.js"
|
|
10
10
|
},
|
|
11
|
+
"exports": {
|
|
12
|
+
"cert": "./config/cert.pem",
|
|
13
|
+
"key": "./config/key.pem"
|
|
14
|
+
},
|
|
11
15
|
"keywords": [
|
|
12
16
|
"wa的脚手架"
|
|
13
17
|
],
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
const fs = require("fs");
|
|
2
|
+
|
|
3
|
+
const getPackageInfo = () => {
|
|
4
|
+
const packageJson = require("./package.json");
|
|
5
|
+
return packageJson;
|
|
6
|
+
};
|
|
7
|
+
|
|
8
|
+
const getPackageTxt = () => {
|
|
9
|
+
return fs.readFileSync("./package.json", "utf-8");
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
const writePackageTxt = (content) => {
|
|
13
|
+
return fs.writeFileSync("./package.json", content, "utf-8");
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
module.exports = {
|
|
17
|
+
getPackageInfo,
|
|
18
|
+
getPackageTxt,
|
|
19
|
+
writePackageTxt,
|
|
20
|
+
};
|