aiot-toolkit 2.0.2-dev.3 → 2.0.2-dev.4

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/lib/bin.js CHANGED
@@ -158,15 +158,15 @@ function main() {
158
158
  })
159
159
  },
160
160
  {
161
- name: 'createVelaAvd',
162
- description: 'create a vela avd instance',
161
+ name: 'createVVD',
162
+ description: 'create a vela virtual device',
163
163
  action: () => __awaiter(this, void 0, void 0, function* () {
164
164
  VelaAvdUtils_1.default.createVelaAvdByInquire();
165
165
  })
166
166
  },
167
167
  {
168
- name: 'deleteVelaAvd',
169
- description: 'delete vela avd instance(s)',
168
+ name: 'deleteVVD',
169
+ description: 'delete vela virtual device(s)',
170
170
  paramList: [
171
171
  {
172
172
  name: 'avdNames',
@@ -2,7 +2,7 @@ import { ICommand, IParam } from '@aiot-toolkit/commander';
2
2
  /**
3
3
  * IStarter
4
4
  */
5
- export default class IStarter<O = any> {
5
+ export default abstract class IStarter<O = any> {
6
6
  protected name: string;
7
7
  protected description: string;
8
8
  /**
@@ -19,5 +19,5 @@ export default class IStarter<O = any> {
19
19
  * @param projectPath 项目路径
20
20
  * @param options 命令参数
21
21
  */
22
- start(projectPath: string, options: O): void | Promise<void>;
22
+ abstract start(projectPath: string, options: O): void | Promise<void>;
23
23
  }
@@ -35,11 +35,5 @@ class IStarter {
35
35
  })
36
36
  };
37
37
  }
38
- /**
39
- * 运行项目
40
- * @param projectPath 项目路径
41
- * @param options 命令参数
42
- */
43
- start(projectPath, options) { }
44
38
  }
45
39
  exports.default = IStarter;
@@ -97,11 +97,14 @@ class UxStarter extends IStarter_1.default {
97
97
  // build
98
98
  yield this.builder.build(projectPath, options);
99
99
  // start
100
- const goldfishInstance = new emulator_1.GoldfishInstance({
100
+ const params = {
101
101
  sdkHome: path_1.default.resolve(os_1.default.homedir(), '.export'),
102
102
  avdHome: path_1.default.resolve(os_1.default.homedir(), '.android/avd'),
103
103
  projectPath
104
- });
104
+ };
105
+ const goldfishInstance = (0, emulator_1.findInstance)(avdName, params);
106
+ if (!goldfishInstance)
107
+ return;
105
108
  let vncPort;
106
109
  if (options.openVNC) {
107
110
  vncPort = yield portfinder_1.default.getPortPromise({ port: constants_1.defaultVncPort, stopPort: constants_1.defaultVncPort + 100 });
@@ -1,6 +1,6 @@
1
- import ParamType from "@aiot-toolkit/commander/lib/interface/IParam";
2
- import XtsBuilder from "../builder/XtsBuilder";
3
- import IStarter from "./IStarter";
1
+ import ParamType from '@aiot-toolkit/commander/lib/interface/IParam';
2
+ import XtsBuilder from '../builder/XtsBuilder';
3
+ import IStarter from './IStarter';
4
4
  declare class XtsStarter extends IStarter {
5
5
  builder: XtsBuilder;
6
6
  params: ParamType[];
@@ -11,6 +11,9 @@ class XtsStarter extends IStarter_1.default {
11
11
  this.builder = new XtsBuilder_1.default();
12
12
  this.params = [];
13
13
  }
14
- start(projectPath, options) { }
14
+ start(projectPath, options) {
15
+ console.log(projectPath, options);
16
+ throw new Error('Method not implemented.');
17
+ }
15
18
  }
16
19
  exports.default = XtsStarter;
@@ -31,6 +31,12 @@ declare class VelaAvdUtils {
31
31
  static getv9fsToolUrl(version?: string): string;
32
32
  /** 获取资源文件下载地址 */
33
33
  static getDownloadUrl(dir: string, version?: string, filename?: string): string;
34
+ /**
35
+ * 判断vela镜像是release版还是dev版
36
+ * @param velaImage 镜像名称或者镜像路径
37
+ * @returns
38
+ */
39
+ static isReleaseVelaImage(velaImage: string): boolean;
34
40
  /**
35
41
  * 命令行访问方式创建模拟器
36
42
  */
@@ -110,6 +110,9 @@ class VelaAvdUtils {
110
110
  }
111
111
  /** 根据host获取vela镜像下载地址 */
112
112
  static getSystemImageUrl(version = 'vela-release-4.0') {
113
+ if (this.isReleaseVelaImage(version)) {
114
+ return `${VelaAvdUtils.systemImageBaseUrl}/${version}/image.zip`;
115
+ }
113
116
  return `${VelaAvdUtils.systemImageBaseUrl}/${version}/nuttx`;
114
117
  }
115
118
  /** 根据host获取ya-vm-file-server下载地址 */
@@ -135,6 +138,14 @@ class VelaAvdUtils {
135
138
  static getDownloadUrl(dir, version = '0.0.1', filename = dir) {
136
139
  return `${VelaAvdUtils.baseUrl}/${dir}/v${version}/${filename}.zip`;
137
140
  }
141
+ /**
142
+ * 判断vela镜像是release版还是dev版
143
+ * @param velaImage 镜像名称或者镜像路径
144
+ * @returns
145
+ */
146
+ static isReleaseVelaImage(velaImage) {
147
+ return velaImage.includes('release');
148
+ }
138
149
  /**
139
150
  * 命令行访问方式创建模拟器
140
151
  */
@@ -198,7 +209,7 @@ class VelaAvdUtils {
198
209
  const velaImage = (yield (0, prompts_1.select)({
199
210
  message: 'vela image.',
200
211
  choices: [
201
- // { value: 'vela-release-4.0', name: 'vela正式版(4.0)' },
212
+ // { value: 'vela-release-4.0-pre', name: 'vela抢先版(4.0)' },
202
213
  { value: 'vela-dev-0.0.2', name: 'vela开发版(dev, 0.0.2)' }
203
214
  ]
204
215
  }));
@@ -215,7 +226,12 @@ class VelaAvdUtils {
215
226
  const imageDir = path_1.default.resolve(VelaAvdUtils.sdkHome, 'system-images', velaImage);
216
227
  const imageExists = fs_extra_1.default.existsSync(path_1.default.resolve(imageDir, 'nuttx'));
217
228
  if (!imageExists) {
218
- yield VelaAvdUtils.downloadFromCdn(velaImageDownloadUrl, imageDir, 'nuttx');
229
+ if (this.isReleaseVelaImage(velaImage)) {
230
+ yield VelaAvdUtils.downloadAndUnzip(velaImageDownloadUrl, imageDir);
231
+ }
232
+ else {
233
+ yield VelaAvdUtils.downloadFromCdn(velaImageDownloadUrl, imageDir, 'nuttx');
234
+ }
219
235
  ColorConsole_1.default.success(`Download vela image succeed.`);
220
236
  }
221
237
  // 下载快应用qa文件
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aiot-toolkit",
3
- "version": "2.0.2-dev.3",
3
+ "version": "2.0.2-dev.4",
4
4
  "description": "Tools for creating, developing, and packaging aiot applications.",
5
5
  "keywords": [
6
6
  "aiot"
@@ -21,22 +21,22 @@
21
21
  "test": "node ./__tests__/aiot-toolkit.test.js"
22
22
  },
23
23
  "dependencies": {
24
- "@aiot-toolkit/commander": "2.0.2-dev.3",
25
- "@aiot-toolkit/emulator": "2.0.2-dev.3",
26
- "@aiot-toolkit/shared-utils": "2.0.2-dev.3",
24
+ "@aiot-toolkit/commander": "2.0.2-dev.4",
25
+ "@aiot-toolkit/emulator": "2.0.2-dev.4",
26
+ "@aiot-toolkit/shared-utils": "2.0.2-dev.4",
27
27
  "@miwt/adb": "^0.7.1",
28
28
  "adb-commander": "^0.1.9",
29
29
  "adm-zip": "^0.5.10",
30
30
  "axios": "^1.5.0",
31
31
  "cli-progress": "^3.12.0",
32
- "create-aiot": "2.0.2-dev.3",
32
+ "create-aiot": "2.0.2-dev.4",
33
33
  "fast-glob": "^3.3.2",
34
- "file-lane": "2.0.2-dev.3",
34
+ "file-lane": "2.0.2-dev.4",
35
35
  "ws": "^8.15.1"
36
36
  },
37
37
  "devDependencies": {
38
38
  "@types/adm-zip": "^0.5.4",
39
39
  "@types/ws": "^8.5.10"
40
40
  },
41
- "gitHead": "e143a7038d5efaa59f01b2e2eb98422b1ec01097"
41
+ "gitHead": "534fdc7c6f018623c05499bf9add8db813ef8660"
42
42
  }