@cloudbase/cli 2.0.12-alpha.2 → 2.0.12

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.
@@ -4,16 +4,6 @@
4
4
  // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
5
5
  "version": "0.2.0",
6
6
  "configurations": [
7
- {
8
- "name": "Launch Program",
9
- "program": "${workspaceFolder}/bin/tcb.js",
10
- "request": "launch",
11
- "skipFiles": [
12
- "<node_internals>/**"
13
- ],
14
- "args": ["lowcode", "watch"],
15
- "type": "node"
16
- },
17
7
  {
18
8
  "type": "node",
19
9
  "request": "launch",
package/bin/cloudbase.js CHANGED
File without changes
package/bin/tcb.js CHANGED
File without changes
@@ -21,7 +21,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
21
21
  });
22
22
  };
23
23
  Object.defineProperty(exports, "__esModule", { value: true });
24
- exports.DanielWatch = exports.LowCodeWatch = void 0;
24
+ exports.LowCodeWatch = void 0;
25
25
  const common_1 = require("../common");
26
26
  const lowcode_cli_1 = require("@cloudbase/lowcode-cli");
27
27
  const decorators_1 = require("../../decorators");
@@ -48,7 +48,7 @@ let LowCodeWatch = class LowCodeWatch extends common_1.Command {
48
48
  return __awaiter(this, void 0, void 0, function* () {
49
49
  yield (0, lowcode_cli_1.watchApp)({
50
50
  watchPort: 8288,
51
- wxDevtoolPath: options === null || options === void 0 ? void 0 : options.wxDevtoolPath
51
+ wxDevtoolPath: options === null || options === void 0 ? void 0 : options.wxDevtoolPath,
52
52
  });
53
53
  });
54
54
  }
@@ -65,31 +65,3 @@ LowCodeWatch = __decorate([
65
65
  (0, common_1.ICommand)()
66
66
  ], LowCodeWatch);
67
67
  exports.LowCodeWatch = LowCodeWatch;
68
- let DanielWatch = class DanielWatch extends common_1.Command {
69
- get options() {
70
- return {
71
- cmd: 'lowcode',
72
- childCmd: 'watch-ws',
73
- options: [],
74
- desc: '开启云开发低码的本地开发模式',
75
- requiredEnvId: false
76
- };
77
- }
78
- execute(ctx, options) {
79
- return __awaiter(this, void 0, void 0, function* () {
80
- console.log('>>> 启动啦');
81
- });
82
- }
83
- };
84
- __decorate([
85
- (0, decorators_1.InjectParams)(),
86
- __param(0, (0, decorators_1.CmdContext)()),
87
- __param(1, (0, decorators_1.ArgsOptions)()),
88
- __metadata("design:type", Function),
89
- __metadata("design:paramtypes", [Object, Object]),
90
- __metadata("design:returntype", Promise)
91
- ], DanielWatch.prototype, "execute", null);
92
- DanielWatch = __decorate([
93
- (0, common_1.ICommand)()
94
- ], DanielWatch);
95
- exports.DanielWatch = DanielWatch;
@@ -15,8 +15,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.logEnvCheck = exports.checkTcbrEnv = void 0;
16
16
  const chalk_1 = __importDefault(require("chalk"));
17
17
  const error_1 = require("../error");
18
- const net_1 = require("./net");
19
- const tcbService = net_1.CloudApiService.getInstance('tcb');
18
+ const tcbrApi_1 = require("./tcbrApi");
20
19
  const oldCmdSet = `
21
20
  服务列表:tcb run:deprecated list --envId <envId>
22
21
  创建服务:tcb run:deprecated create --envId <envId> --name <name>
@@ -45,11 +44,13 @@ function checkTcbrEnv(envId, isTcbr) {
45
44
  if (envId === undefined) {
46
45
  throw new error_1.CloudBaseError('请使用 -e 或 --envId 指定环境 ID');
47
46
  }
48
- const { EnvList: [envInfo] } = yield tcbService.request('DescribeEnvs', {
47
+ const { data: res } = yield (0, tcbrApi_1.callTcbrApi)('DescribeCloudRunEnvs', {
49
48
  EnvId: envId
50
49
  });
50
+ const { EnvList } = res;
51
+ const envInfo = EnvList === null || EnvList === void 0 ? void 0 : EnvList.find((item) => (item === null || item === void 0 ? void 0 : item.EnvId) === envId);
51
52
  if (envInfo === undefined) {
52
- throw new error_1.CloudBaseError('无法读取到有效的环境信息,请检查环境 ID 是否正确');
53
+ throw new error_1.CloudBaseError(`无法读取到有效的环境信息,请检查环境 ID 是否正确\nrequestId: ${res === null || res === void 0 ? void 0 : res.RequestId}`);
53
54
  }
54
55
  if ((envInfo.EnvType === 'tcbr' && isTcbr) || (envInfo.EnvType !== 'tcbr' && !isTcbr)) {
55
56
  return 0;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cloudbase/cli",
3
- "version": "2.0.12-alpha.2",
3
+ "version": "2.0.12",
4
4
  "description": "cli tool for cloudbase",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {
@@ -11,7 +11,8 @@
11
11
  "test": "jest --runInBand --forceExit --detectOpenHandles --coverage --verbose --testTimeout=10000",
12
12
  "tsc": "tsc",
13
13
  "pkg": "pkg ./bin/cloudbase.js --out-path ./pkg",
14
- "postinstall": "node ./post-install.js || exit 0"
14
+ "postinstall": "node ./post-install.js || exit 0",
15
+ "prepublishOnly": "npm run build"
15
16
  },
16
17
  "repository": {
17
18
  "type": "git",
@@ -23,7 +24,7 @@
23
24
  },
24
25
  "husky": {
25
26
  "hooks": {
26
- "pre-commit": "npm run build && git add ."
27
+ "pre-commit": "npm run build"
27
28
  }
28
29
  },
29
30
  "author": "cwuyiqing@gmail.com",
@@ -31,7 +32,7 @@
31
32
  "dependencies": {
32
33
  "@cloudbase/cloud-api": "^0.5.5",
33
34
  "@cloudbase/framework-core": "^1.6.1",
34
- "@cloudbase/lowcode-cli": "0.14.5-alpha.2",
35
+ "@cloudbase/lowcode-cli": "^0.14.3",
35
36
  "@cloudbase/manager-node": "4.0.1",
36
37
  "@cloudbase/toolbox": "^0.7.3",
37
38
  "@sentry/node": "^5.10.2",
@@ -28,25 +28,7 @@ export class LowCodeWatch extends Command {
28
28
  async execute(@CmdContext() ctx, @ArgsOptions() options) {
29
29
  await watchApp({
30
30
  watchPort: 8288,
31
- wxDevtoolPath: options?.wxDevtoolPath
31
+ wxDevtoolPath: options?.wxDevtoolPath,
32
32
  })
33
33
  }
34
34
  }
35
-
36
- @ICommand()
37
- export class DanielWatch extends Command {
38
- get options() {
39
- return {
40
- cmd: 'lowcode',
41
- childCmd: 'watch-ws',
42
- options: [],
43
- desc: '开启云开发低码的本地开发模式',
44
- requiredEnvId: false
45
- }
46
- }
47
-
48
- @InjectParams()
49
- async execute(@CmdContext() ctx, @ArgsOptions() options) {
50
- console.log('>>> 启动啦')
51
- }
52
- }
@@ -2,7 +2,7 @@ import chalk from 'chalk'
2
2
  import { CloudBaseError } from '../error'
3
3
  import { CloudApiService } from './net'
4
4
  import { EnumEnvCheck } from '../constant'
5
- const tcbService = CloudApiService.getInstance('tcb')
5
+ import { callTcbrApi } from './tcbrApi'
6
6
 
7
7
  const oldCmdSet =
8
8
  `
@@ -36,15 +36,17 @@ const newCmdSet =
36
36
  * @returns
37
37
  */
38
38
  export async function checkTcbrEnv(envId: string | undefined, isTcbr: boolean): Promise<EnumEnvCheck> | never {
39
- if(envId === undefined) {
39
+ if (envId === undefined) {
40
40
  throw new CloudBaseError('请使用 -e 或 --envId 指定环境 ID')
41
41
  }
42
- const { EnvList: [envInfo] } = await tcbService.request('DescribeEnvs', {
42
+ const { data: res } = await callTcbrApi('DescribeCloudRunEnvs', {
43
43
  EnvId: envId
44
44
  })
45
+ const { EnvList } = res
46
+ const envInfo = EnvList?.find((item: { EnvId: string }) => item?.EnvId === envId)
45
47
 
46
- if(envInfo === undefined) {
47
- throw new CloudBaseError('无法读取到有效的环境信息,请检查环境 ID 是否正确')
48
+ if (envInfo === undefined) {
49
+ throw new CloudBaseError(`无法读取到有效的环境信息,请检查环境 ID 是否正确\nrequestId: ${res?.RequestId}`)
48
50
  }
49
51
 
50
52
  if ((envInfo.EnvType === 'tcbr' && isTcbr) || (envInfo.EnvType !== 'tcbr' && !isTcbr)) {
@@ -57,7 +59,7 @@ export async function checkTcbrEnv(envId: string | undefined, isTcbr: boolean):
57
59
  }
58
60
 
59
61
  export function logEnvCheck(envId: string, warningType: EnumEnvCheck) {
60
- if(warningType === EnumEnvCheck.EnvNewCmdOld) {
62
+ if (warningType === EnumEnvCheck.EnvNewCmdOld) {
61
63
  // 当前环境是 tcbr 环境且使用的不是 tcbr 新操作集
62
64
  throw new CloudBaseError(`当前能力不支持 ${envId} 环境,请使用如下操作集:${chalk.grey(newCmdSet)}`)
63
65
  } else if (warningType === EnumEnvCheck.EnvOldCmdNew) {
@@ -12,13 +12,3 @@ export declare class LowCodeWatch extends Command {
12
12
  };
13
13
  execute(ctx: any, options: any): Promise<void>;
14
14
  }
15
- export declare class DanielWatch extends Command {
16
- get options(): {
17
- cmd: string;
18
- childCmd: string;
19
- options: any[];
20
- desc: string;
21
- requiredEnvId: boolean;
22
- };
23
- execute(ctx: any, options: any): Promise<void>;
24
- }
@@ -1,84 +0,0 @@
1
- # Logs
2
- logs
3
- *.log
4
- npm-debug.log*
5
- yarn-debug.log*
6
- yarn-error.log*
7
- package-lock.json
8
- yarn.lock
9
-
10
- # Runtime data
11
- pids
12
- *.pid
13
- *.seed
14
- *.pid.lock
15
-
16
- # Directory for instrumented libs generated by jscoverage/JSCover
17
- lib-cov
18
-
19
- # Coverage directory used by tools like istanbul
20
- coverage
21
-
22
- # nyc test coverage
23
- .nyc_output
24
-
25
- # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
26
- .grunt
27
-
28
- # Bower dependency directory (https://bower.io/)
29
- bower_components
30
-
31
- # node-waf configuration
32
- .lock-wscript
33
-
34
- # Compiled binary addons (https://nodejs.org/api/addons.html)
35
- build/Release
36
-
37
- # Dependency directories
38
- node_modules/
39
- jspm_packages/
40
-
41
- # TypeScript v1 declaration files
42
- typings/
43
-
44
- # Optional npm cache directory
45
- .npm
46
-
47
- # Optional eslint cache
48
- .eslintcache
49
-
50
- # Optional REPL history
51
- .node_repl_history
52
-
53
- # Output of 'npm pack'
54
- *.tgz
55
-
56
- # Yarn Integrity file
57
- .yarn-integrity
58
-
59
- # dotenv environment variables file
60
- .env
61
-
62
- # next.js build output
63
- .next
64
-
65
- dist
66
-
67
- example/**/tcb.json
68
-
69
- node_modules
70
-
71
- .idea
72
- .vscode/*
73
- !.vscode/launch.json
74
-
75
- # Test api Key
76
- test/api-key.js
77
-
78
- pkg/
79
-
80
- .DS_Store
81
-
82
- # Build files
83
- /lib
84
- /types
@@ -1,86 +0,0 @@
1
- # Logs
2
- logs
3
- *.log
4
- npm-debug.log*
5
- yarn-debug.log*
6
- yarn-error.log*
7
- package-lock.json
8
- yarn.lock
9
-
10
- # Runtime data
11
- pids
12
- *.pid
13
- *.seed
14
- *.pid.lock
15
-
16
- # Directory for instrumented libs generated by jscoverage/JSCover
17
- lib-cov
18
-
19
- # Coverage directory used by tools like istanbul
20
- coverage
21
-
22
- # nyc test coverage
23
- .nyc_output
24
-
25
- # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
26
- .grunt
27
-
28
- # Bower dependency directory (https://bower.io/)
29
- bower_components
30
-
31
- # node-waf configuration
32
- .lock-wscript
33
-
34
- # Compiled binary addons (https://nodejs.org/api/addons.html)
35
- build/Release
36
-
37
- # Dependency directories
38
- node_modules/
39
- jspm_packages/
40
-
41
- # TypeScript v1 declaration files
42
- typings/
43
-
44
- # Optional npm cache directory
45
- .npm
46
-
47
- # Optional eslint cache
48
- .eslintcache
49
-
50
- # Optional REPL history
51
- .node_repl_history
52
-
53
- # Output of 'npm pack'
54
- *.tgz
55
-
56
- # Yarn Integrity file
57
- .yarn-integrity
58
-
59
- # dotenv environment variables file
60
- .env
61
-
62
- # next.js build output
63
- .next
64
-
65
- dist
66
-
67
- example/**/tcb.json
68
-
69
- node_modules
70
-
71
- .idea
72
- .vscode/*
73
- !.vscode/launch.json
74
-
75
- # Test api Key
76
- test/api-key.js
77
-
78
- pkg/
79
-
80
- .DS_Store
81
-
82
- # Build files
83
- /lib
84
- /types
85
-
86
- .history
@@ -1,88 +0,0 @@
1
- {
2
- "name": "@cloudbase/cli",
3
- "version": "2.0.11",
4
- "description": "cli tool for cloudbase",
5
- "main": "lib/index.js",
6
- "scripts": {
7
- "build": "rimraf lib types && tsc",
8
- "watch": "rimraf lib types && tsc -w",
9
- "dev": "rimraf lib types && tsc -w",
10
- "eslint": "eslint \"./**/*.ts\"",
11
- "test": "jest --runInBand --forceExit --detectOpenHandles --coverage --verbose --testTimeout=10000",
12
- "tsc": "tsc",
13
- "pkg": "pkg ./bin/cloudbase.js --out-path ./pkg",
14
- "postinstall": "node ./post-install.js || exit 0"
15
- },
16
- "repository": {
17
- "type": "git",
18
- "url": "https://github.com/TencentCloudBase/cloud-base-cli.git"
19
- },
20
- "bin": {
21
- "tcb": "bin/tcb.js",
22
- "cloudbase": "bin/cloudbase.js"
23
- },
24
- "husky": {
25
- "hooks": {
26
- "pre-commit": "npm run build && git add ."
27
- }
28
- },
29
- "author": "cwuyiqing@gmail.com",
30
- "license": "ISC",
31
- "dependencies": {
32
- "@cloudbase/cloud-api": "^0.5.5",
33
- "@cloudbase/framework-core": "^1.6.1",
34
- "@cloudbase/lowcode-cli": "^0.14.3",
35
- "@cloudbase/manager-node": "4.0.1",
36
- "@cloudbase/toolbox": "^0.7.3",
37
- "@sentry/node": "^5.10.2",
38
- "address": "^1.1.2",
39
- "chalk": "^2.4.2",
40
- "cli-table3": "^0.5.1",
41
- "commander": "7",
42
- "del": "^5.1.0",
43
- "didyoumean": "^1.2.2",
44
- "enquirer": "^2.3.6",
45
- "execa": "^4.0.3",
46
- "fs-extra": "^8.1.0",
47
- "https-proxy-agent": "^5.0.1",
48
- "inquirer": "^6.5.0",
49
- "lodash": "^4.17.21",
50
- "log-symbols": "^3.0.0",
51
- "lowdb": "^1.0.0",
52
- "make-dir": "^3.0.0",
53
- "node-fetch": "^2.6.0",
54
- "open": "^7.0.0",
55
- "ora": "^4.0.2",
56
- "portfinder": "^1.0.28",
57
- "progress": "^2.0.3",
58
- "query-string": "^6.8.1",
59
- "reflect-metadata": "^0.1.13",
60
- "semver": "^7.3.7",
61
- "tar-fs": "^2.0.1",
62
- "terminal-link": "^2.1.1",
63
- "unzipper": "^0.10.10",
64
- "update-notifier": "^4.0.0",
65
- "xdg-basedir": "^4.0.0",
66
- "yargs": "^16.2.0",
67
- "yargs-parser": "^21.0.1"
68
- },
69
- "devDependencies": {
70
- "@types/jest": "^27",
71
- "@types/koa__router": "^8.0.11",
72
- "@types/lodash": "^4.14.182",
73
- "@types/node": "^12.12.38",
74
- "@types/node-fetch": "^2.5.4",
75
- "@types/react": "^17.0.37",
76
- "@types/semver": "^7.3.9",
77
- "@types/webpack-dev-server": "^3.11.1",
78
- "@typescript-eslint/eslint-plugin": "^4.8.1",
79
- "@typescript-eslint/parser": "^4.8.1",
80
- "eslint": "^7.14.0",
81
- "eslint-config-alloy": "^3.8.2",
82
- "husky": "^3.0.9",
83
- "jest": "^27",
84
- "rimraf": "^3.0.2",
85
- "ts-jest": "^27",
86
- "typescript": "^4.7.2"
87
- }
88
- }
@@ -1,88 +0,0 @@
1
- {
2
- "name": "@cloudbase/cli",
3
- "version": "2.0.11",
4
- "description": "cli tool for cloudbase",
5
- "main": "lib/index.js",
6
- "scripts": {
7
- "build": "rimraf lib types && tsc",
8
- "watch": "rimraf lib types && tsc -w",
9
- "dev": "rimraf lib types && tsc -w",
10
- "eslint": "eslint \"./**/*.ts\"",
11
- "test": "jest --runInBand --forceExit --detectOpenHandles --coverage --verbose --testTimeout=10000",
12
- "tsc": "tsc",
13
- "pkg": "pkg ./bin/cloudbase.js --out-path ./pkg",
14
- "postinstall": "node ./post-install.js || exit 0"
15
- },
16
- "repository": {
17
- "type": "git",
18
- "url": "https://github.com/TencentCloudBase/cloud-base-cli.git"
19
- },
20
- "bin": {
21
- "tcb": "bin/tcb.js",
22
- "cloudbase": "bin/cloudbase.js"
23
- },
24
- "husky": {
25
- "hooks": {
26
- "pre-commit": "npm run build && git add ."
27
- }
28
- },
29
- "author": "cwuyiqing@gmail.com",
30
- "license": "ISC",
31
- "dependencies": {
32
- "@cloudbase/cloud-api": "^0.5.5",
33
- "@cloudbase/framework-core": "^1.6.1",
34
- "@cloudbase/lowcode-cli": "0.14.5-alpha.0",
35
- "@cloudbase/manager-node": "4.0.1",
36
- "@cloudbase/toolbox": "^0.7.3",
37
- "@sentry/node": "^5.10.2",
38
- "address": "^1.1.2",
39
- "chalk": "^2.4.2",
40
- "cli-table3": "^0.5.1",
41
- "commander": "7",
42
- "del": "^5.1.0",
43
- "didyoumean": "^1.2.2",
44
- "enquirer": "^2.3.6",
45
- "execa": "^4.0.3",
46
- "fs-extra": "^8.1.0",
47
- "https-proxy-agent": "^5.0.1",
48
- "inquirer": "^6.5.0",
49
- "lodash": "^4.17.21",
50
- "log-symbols": "^3.0.0",
51
- "lowdb": "^1.0.0",
52
- "make-dir": "^3.0.0",
53
- "node-fetch": "^2.6.0",
54
- "open": "^7.0.0",
55
- "ora": "^4.0.2",
56
- "portfinder": "^1.0.28",
57
- "progress": "^2.0.3",
58
- "query-string": "^6.8.1",
59
- "reflect-metadata": "^0.1.13",
60
- "semver": "^7.3.7",
61
- "tar-fs": "^2.0.1",
62
- "terminal-link": "^2.1.1",
63
- "unzipper": "^0.10.10",
64
- "update-notifier": "^4.0.0",
65
- "xdg-basedir": "^4.0.0",
66
- "yargs": "^16.2.0",
67
- "yargs-parser": "^21.0.1"
68
- },
69
- "devDependencies": {
70
- "@types/jest": "^27",
71
- "@types/koa__router": "^8.0.11",
72
- "@types/lodash": "^4.14.182",
73
- "@types/node": "^12.12.38",
74
- "@types/node-fetch": "^2.5.4",
75
- "@types/react": "^17.0.37",
76
- "@types/semver": "^7.3.9",
77
- "@types/webpack-dev-server": "^3.11.1",
78
- "@typescript-eslint/eslint-plugin": "^4.8.1",
79
- "@typescript-eslint/parser": "^4.8.1",
80
- "eslint": "^7.14.0",
81
- "eslint-config-alloy": "^3.8.2",
82
- "husky": "^3.0.9",
83
- "jest": "^27",
84
- "rimraf": "^3.0.2",
85
- "ts-jest": "^27",
86
- "typescript": "^4.7.2"
87
- }
88
- }
@@ -1,88 +0,0 @@
1
- {
2
- "name": "@cloudbase/cli",
3
- "version": "2.0.12-alpha.0",
4
- "description": "cli tool for cloudbase",
5
- "main": "lib/index.js",
6
- "scripts": {
7
- "build": "rimraf lib types && tsc",
8
- "watch": "rimraf lib types && tsc -w",
9
- "dev": "rimraf lib types && tsc -w",
10
- "eslint": "eslint \"./**/*.ts\"",
11
- "test": "jest --runInBand --forceExit --detectOpenHandles --coverage --verbose --testTimeout=10000",
12
- "tsc": "tsc",
13
- "pkg": "pkg ./bin/cloudbase.js --out-path ./pkg",
14
- "postinstall": "node ./post-install.js || exit 0"
15
- },
16
- "repository": {
17
- "type": "git",
18
- "url": "https://github.com/TencentCloudBase/cloud-base-cli.git"
19
- },
20
- "bin": {
21
- "tcb": "bin/tcb.js",
22
- "cloudbase": "bin/cloudbase.js"
23
- },
24
- "husky": {
25
- "hooks": {
26
- "pre-commit": "npm run build && git add ."
27
- }
28
- },
29
- "author": "cwuyiqing@gmail.com",
30
- "license": "ISC",
31
- "dependencies": {
32
- "@cloudbase/cloud-api": "^0.5.5",
33
- "@cloudbase/framework-core": "^1.6.1",
34
- "@cloudbase/lowcode-cli": "0.14.5-alpha.1",
35
- "@cloudbase/manager-node": "4.0.1",
36
- "@cloudbase/toolbox": "^0.7.3",
37
- "@sentry/node": "^5.10.2",
38
- "address": "^1.1.2",
39
- "chalk": "^2.4.2",
40
- "cli-table3": "^0.5.1",
41
- "commander": "7",
42
- "del": "^5.1.0",
43
- "didyoumean": "^1.2.2",
44
- "enquirer": "^2.3.6",
45
- "execa": "^4.0.3",
46
- "fs-extra": "^8.1.0",
47
- "https-proxy-agent": "^5.0.1",
48
- "inquirer": "^6.5.0",
49
- "lodash": "^4.17.21",
50
- "log-symbols": "^3.0.0",
51
- "lowdb": "^1.0.0",
52
- "make-dir": "^3.0.0",
53
- "node-fetch": "^2.6.0",
54
- "open": "^7.0.0",
55
- "ora": "^4.0.2",
56
- "portfinder": "^1.0.28",
57
- "progress": "^2.0.3",
58
- "query-string": "^6.8.1",
59
- "reflect-metadata": "^0.1.13",
60
- "semver": "^7.3.7",
61
- "tar-fs": "^2.0.1",
62
- "terminal-link": "^2.1.1",
63
- "unzipper": "^0.10.10",
64
- "update-notifier": "^4.0.0",
65
- "xdg-basedir": "^4.0.0",
66
- "yargs": "^16.2.0",
67
- "yargs-parser": "^21.0.1"
68
- },
69
- "devDependencies": {
70
- "@types/jest": "^27",
71
- "@types/koa__router": "^8.0.11",
72
- "@types/lodash": "^4.14.182",
73
- "@types/node": "^12.12.38",
74
- "@types/node-fetch": "^2.5.4",
75
- "@types/react": "^17.0.37",
76
- "@types/semver": "^7.3.9",
77
- "@types/webpack-dev-server": "^3.11.1",
78
- "@typescript-eslint/eslint-plugin": "^4.8.1",
79
- "@typescript-eslint/parser": "^4.8.1",
80
- "eslint": "^7.14.0",
81
- "eslint-config-alloy": "^3.8.2",
82
- "husky": "^3.0.9",
83
- "jest": "^27",
84
- "rimraf": "^3.0.2",
85
- "ts-jest": "^27",
86
- "typescript": "^4.7.2"
87
- }
88
- }