aiot-toolkit 2.0.5-beta.8 → 2.0.5-widget-provider-beta.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/README.md +94 -92
- package/lib/bin.js +5 -6
- package/lib/builder/AndroidUxBuilder.js +2 -2
- package/lib/builder/UxBuilderBase.js +22 -14
- package/lib/builder/VelaUxBuilder.js +2 -2
- package/lib/interface/IVelaUxBuilderOption.d.ts +8 -0
- package/lib/interface/IVelaUxBuilderOption.js +15 -6
- package/lib/starter/AndroidUxStart.js +19 -19
- package/lib/starter/IStarter.js +10 -10
- package/lib/starter/VelaUxStarter.js +8 -8
- package/lib/starter/androidRouter/LinkMode.js +2 -2
- package/lib/starter/androidRouter/PackageRouter.js +34 -34
- package/lib/starter/androidRouter/h5/index.css +167 -167
- package/lib/starter/androidRouter/h5/index.html +58 -58
- package/lib/starter/androidRouter/h5/index.js +66 -66
- package/lib/utils/AdbUtils.js +2 -2
- package/lib/utils/DeviceUtil.js +40 -40
- package/lib/utils/RequestUtils.js +2 -2
- package/lib/utils/VelaAvdUtils.js +2 -2
- package/package.json +7 -7
- package/lib/builder/XtsBuilder.d.ts +0 -18
- package/lib/builder/XtsBuilder.js +0 -94
- package/lib/starter/XtsStarter.d.ts +0 -9
- package/lib/starter/XtsStarter.js +0 -18
package/lib/utils/DeviceUtil.js
CHANGED
|
@@ -11,16 +11,16 @@ var _path = _interopRequireDefault(require("path"));
|
|
|
11
11
|
var _AdbUtils = _interopRequireDefault(require("./AdbUtils"));
|
|
12
12
|
var _RequestUtils = _interopRequireDefault(require("./RequestUtils"));
|
|
13
13
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
|
-
/**
|
|
15
|
-
* DeviceUtil
|
|
14
|
+
/**
|
|
15
|
+
* DeviceUtil
|
|
16
16
|
*/
|
|
17
17
|
class DeviceUtil {
|
|
18
18
|
static ipRegExp = /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/;
|
|
19
19
|
static CLIENT_PORT = 39517;
|
|
20
20
|
static quickapp_url = 'https://statres.quickapp.cn/quickapp/quickapptool/release/platform/';
|
|
21
|
-
/**
|
|
22
|
-
* 获取连接上的所有设备数组,供IDE使用
|
|
23
|
-
* @returns
|
|
21
|
+
/**
|
|
22
|
+
* 获取连接上的所有设备数组,供IDE使用
|
|
23
|
+
* @returns
|
|
24
24
|
*/
|
|
25
25
|
static getAllConnectedDevices() {
|
|
26
26
|
try {
|
|
@@ -36,10 +36,10 @@ class DeviceUtil {
|
|
|
36
36
|
_sharedUtils.ColorConsole.throw('Error getting connection information of adb device');
|
|
37
37
|
}
|
|
38
38
|
}
|
|
39
|
-
/**
|
|
40
|
-
* 安装调试器、预览版
|
|
41
|
-
* @param options
|
|
42
|
-
* @returns
|
|
39
|
+
/**
|
|
40
|
+
* 安装调试器、预览版
|
|
41
|
+
* @param options
|
|
42
|
+
* @returns
|
|
43
43
|
*/
|
|
44
44
|
static async installDbgAndMkp(options) {
|
|
45
45
|
try {
|
|
@@ -71,14 +71,14 @@ class DeviceUtil {
|
|
|
71
71
|
return Promise.reject(new Error(`Failed to install , error message:${error?.toString() || 'unknown error'}`));
|
|
72
72
|
}
|
|
73
73
|
}
|
|
74
|
-
/**
|
|
75
|
-
* 如果是TV等AIOT设备,需要通过IP连接
|
|
76
|
-
* 1. 若ip为空,则询问是否要连接新设备
|
|
77
|
-
* 2. 无需连接新设备,返回
|
|
78
|
-
* 3. 连接新设备,输入ip值(可输入多个ip,以逗号隔断)
|
|
79
|
-
* 4. 判断输入值,空则输出info并返回
|
|
80
|
-
* 5. 处理ip,输入每个ip设备的端口号,尝试连接,给出连接结果
|
|
81
|
-
* @param ip
|
|
74
|
+
/**
|
|
75
|
+
* 如果是TV等AIOT设备,需要通过IP连接
|
|
76
|
+
* 1. 若ip为空,则询问是否要连接新设备
|
|
77
|
+
* 2. 无需连接新设备,返回
|
|
78
|
+
* 3. 连接新设备,输入ip值(可输入多个ip,以逗号隔断)
|
|
79
|
+
* 4. 判断输入值,空则输出info并返回
|
|
80
|
+
* 5. 处理ip,输入每个ip设备的端口号,尝试连接,给出连接结果
|
|
81
|
+
* @param ip
|
|
82
82
|
*/
|
|
83
83
|
static async connectDevice(ip) {
|
|
84
84
|
try {
|
|
@@ -137,11 +137,11 @@ class DeviceUtil {
|
|
|
137
137
|
}
|
|
138
138
|
} catch {}
|
|
139
139
|
}
|
|
140
|
-
/**
|
|
141
|
-
* 选择一个或者多个设备
|
|
142
|
-
* @param deviceList
|
|
143
|
-
* @param orderText
|
|
144
|
-
* @returns
|
|
140
|
+
/**
|
|
141
|
+
* 选择一个或者多个设备
|
|
142
|
+
* @param deviceList
|
|
143
|
+
* @param orderText
|
|
144
|
+
* @returns
|
|
145
145
|
*/
|
|
146
146
|
static async queryDevice(deviceList) {
|
|
147
147
|
let orderText = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
|
|
@@ -164,11 +164,11 @@ class DeviceUtil {
|
|
|
164
164
|
});
|
|
165
165
|
return chooseDevices[0] === ALL_TEXT ? deviceList : chooseDevices;
|
|
166
166
|
}
|
|
167
|
-
/**
|
|
168
|
-
* 下载apk
|
|
169
|
-
* @param options
|
|
170
|
-
* @param isQuickAppDebugger
|
|
171
|
-
* @returns
|
|
167
|
+
/**
|
|
168
|
+
* 下载apk
|
|
169
|
+
* @param options
|
|
170
|
+
* @param isQuickAppDebugger
|
|
171
|
+
* @returns
|
|
172
172
|
*/
|
|
173
173
|
static async downloadApk(options, isQuickAppDebugger) {
|
|
174
174
|
const {
|
|
@@ -200,14 +200,14 @@ class DeviceUtil {
|
|
|
200
200
|
}
|
|
201
201
|
}
|
|
202
202
|
}
|
|
203
|
-
/**
|
|
204
|
-
* 获取设备上的快应用框架(需要先安装调试器)
|
|
205
|
-
* 1. 请求获取平台信息
|
|
206
|
-
* 2. 若获取结果为空或者undefined,则等待3s再次请求
|
|
207
|
-
* 3. 若获取结果不为空,但属性availablePlatforms为空,则等待3s再次请求
|
|
208
|
-
* 4. 若请求次数超过3次,则结束请求
|
|
209
|
-
* 5. 否则打印获取结果
|
|
210
|
-
* @param options
|
|
203
|
+
/**
|
|
204
|
+
* 获取设备上的快应用框架(需要先安装调试器)
|
|
205
|
+
* 1. 请求获取平台信息
|
|
206
|
+
* 2. 若获取结果为空或者undefined,则等待3s再次请求
|
|
207
|
+
* 3. 若获取结果不为空,但属性availablePlatforms为空,则等待3s再次请求
|
|
208
|
+
* 4. 若请求次数超过3次,则结束请求
|
|
209
|
+
* 5. 否则打印获取结果
|
|
210
|
+
* @param options
|
|
211
211
|
*/
|
|
212
212
|
static async getAvailablePlatform(options) {
|
|
213
213
|
try {
|
|
@@ -256,11 +256,11 @@ class DeviceUtil {
|
|
|
256
256
|
_sharedUtils.ColorConsole.throw(`Error getting the list of Quickapp engines on the device`);
|
|
257
257
|
}
|
|
258
258
|
}
|
|
259
|
-
/**
|
|
260
|
-
* 给设备列表中的每个设备安装apk
|
|
261
|
-
* @param deviceList
|
|
262
|
-
* @param apkPath
|
|
263
|
-
* @returns
|
|
259
|
+
/**
|
|
260
|
+
* 给设备列表中的每个设备安装apk
|
|
261
|
+
* @param deviceList
|
|
262
|
+
* @param apkPath
|
|
263
|
+
* @returns
|
|
264
264
|
*/
|
|
265
265
|
static async installApk() {
|
|
266
266
|
let deviceList = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
@@ -9,8 +9,8 @@ var _axios = _interopRequireDefault(require("axios"));
|
|
|
9
9
|
var _fsExtra = _interopRequireDefault(require("fs-extra"));
|
|
10
10
|
var _path = _interopRequireDefault(require("path"));
|
|
11
11
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
|
-
/**
|
|
13
|
-
* RequestUtils
|
|
12
|
+
/**
|
|
13
|
+
* RequestUtils
|
|
14
14
|
*/
|
|
15
15
|
class RequestUtils {
|
|
16
16
|
static async sendReq(client, api, params) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "aiot-toolkit",
|
|
3
|
-
"version": "2.0.5-beta.
|
|
3
|
+
"version": "2.0.5-widget-provider-beta.1",
|
|
4
4
|
"description": "Tools for creating, developing, and packaging aiot applications.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"aiot"
|
|
@@ -22,14 +22,14 @@
|
|
|
22
22
|
"test": "node ./__tests__/aiot-toolkit.test.js"
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@aiot-toolkit/aiotpack": "2.0.5-beta.
|
|
26
|
-
"@aiot-toolkit/commander": "2.0.5-beta.
|
|
27
|
-
"@aiot-toolkit/emulator": "2.0.5-beta.
|
|
28
|
-
"@aiot-toolkit/shared-utils": "2.0.5-beta.
|
|
25
|
+
"@aiot-toolkit/aiotpack": "2.0.5-widget-provider-beta.1",
|
|
26
|
+
"@aiot-toolkit/commander": "2.0.5-widget-provider-beta.1",
|
|
27
|
+
"@aiot-toolkit/emulator": "2.0.5-widget-provider-beta.1",
|
|
28
|
+
"@aiot-toolkit/shared-utils": "2.0.5-widget-provider-beta.1",
|
|
29
29
|
"@inquirer/prompts": "^5.3.0",
|
|
30
30
|
"@miwt/adb": "^0.9.0",
|
|
31
31
|
"axios": "^1.7.4",
|
|
32
|
-
"file-lane": "2.0.5-beta.
|
|
32
|
+
"file-lane": "2.0.5-widget-provider-beta.1",
|
|
33
33
|
"fs-extra": "^11.2.0",
|
|
34
34
|
"koa-router": "^13.0.1",
|
|
35
35
|
"lodash": "^4.17.21",
|
|
@@ -43,5 +43,5 @@
|
|
|
43
43
|
"@types/qr-image": "^3.2.9",
|
|
44
44
|
"@types/semver": "^7.5.8"
|
|
45
45
|
},
|
|
46
|
-
"gitHead": "
|
|
46
|
+
"gitHead": "64842a2c374b8b3b344cef377d9c032eaf1a99a7"
|
|
47
47
|
}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { IParam } from '@aiot-toolkit/commander';
|
|
2
|
-
import IBuilder from './IBuilder';
|
|
3
|
-
export interface IBuilderOption {
|
|
4
|
-
watch?: boolean;
|
|
5
|
-
skip?: string;
|
|
6
|
-
}
|
|
7
|
-
/**
|
|
8
|
-
* XtsBuilder
|
|
9
|
-
*/
|
|
10
|
-
declare class XtsBuilder implements IBuilder<IBuilderOption> {
|
|
11
|
-
static readonly PROJECT_TYPE = "xts quick app";
|
|
12
|
-
private fileLane?;
|
|
13
|
-
match(projectPath: string): boolean;
|
|
14
|
-
build(projectPath: string, options: IBuilderOption): Promise<void>;
|
|
15
|
-
dispose(): Promise<void>;
|
|
16
|
-
readonly params: IParam[];
|
|
17
|
-
}
|
|
18
|
-
export default XtsBuilder;
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _aiotpack = require("@aiot-toolkit/aiotpack");
|
|
8
|
-
var _sharedUtils = require("@aiot-toolkit/shared-utils");
|
|
9
|
-
var _fileLane = require("file-lane");
|
|
10
|
-
var _fs = _interopRequireDefault(require("fs"));
|
|
11
|
-
var _path = _interopRequireDefault(require("path"));
|
|
12
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
13
|
-
/**
|
|
14
|
-
* XtsBuilder
|
|
15
|
-
*/
|
|
16
|
-
class XtsBuilder {
|
|
17
|
-
static PROJECT_TYPE = 'xts quick app';
|
|
18
|
-
match(projectPath) {
|
|
19
|
-
// app/app.xts 存在视为xts项目
|
|
20
|
-
return _fs.default.existsSync(_path.default.resolve(projectPath, 'app/app.xts'));
|
|
21
|
-
}
|
|
22
|
-
async build(projectPath, options) {
|
|
23
|
-
if (this.fileLane) {
|
|
24
|
-
// 已经在运行中,请先停止
|
|
25
|
-
throw new Error('already running, please stop first: builder.stop()');
|
|
26
|
-
}
|
|
27
|
-
const watch = options.watch || false;
|
|
28
|
-
_sharedUtils.ColorConsole.success('Start build...\n', {
|
|
29
|
-
word: 'ProjectPath: ',
|
|
30
|
-
style: _sharedUtils.ColorConsole.getStyle(_sharedUtils.Loglevel.SUCCESS)
|
|
31
|
-
}, projectPath, '\n', {
|
|
32
|
-
word: 'buildOptions: ',
|
|
33
|
-
style: _sharedUtils.ColorConsole.getStyle(_sharedUtils.Loglevel.SUCCESS)
|
|
34
|
-
}, JSON.stringify(options));
|
|
35
|
-
const compilerOptions = {
|
|
36
|
-
skip: _sharedUtils.StringUtil.string2arrayByComma(options.skip)
|
|
37
|
-
};
|
|
38
|
-
const config = new _aiotpack.XtsConfig(projectPath);
|
|
39
|
-
if (compilerOptions.skip?.includes('xts2ts')) {
|
|
40
|
-
_sharedUtils.ColorConsole.info("### skip compile xts to ts due to --skip ${compilerOptions?.skip.join(',')}");
|
|
41
|
-
const context = _fileLane.FileLaneUtil.createContext(config.output, projectPath);
|
|
42
|
-
const preWorks = config.beforeCompile || [];
|
|
43
|
-
for (let item of preWorks) {
|
|
44
|
-
try {
|
|
45
|
-
await item({
|
|
46
|
-
context,
|
|
47
|
-
config,
|
|
48
|
-
compilerOption: compilerOptions
|
|
49
|
-
});
|
|
50
|
-
} catch (error) {
|
|
51
|
-
// 报错 prework的item error
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
const follWorks = config.afterCompile || [];
|
|
55
|
-
for (let item of follWorks) {
|
|
56
|
-
try {
|
|
57
|
-
await item.worker({
|
|
58
|
-
context,
|
|
59
|
-
config,
|
|
60
|
-
compilerOption: compilerOptions
|
|
61
|
-
});
|
|
62
|
-
} catch (error) {
|
|
63
|
-
// 报错 prework的item error
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
} else {
|
|
67
|
-
this.fileLane = new _fileLane.FileLane(config, projectPath, compilerOptions);
|
|
68
|
-
this.fileLane.start({
|
|
69
|
-
watch
|
|
70
|
-
});
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
async dispose() {
|
|
74
|
-
await this.fileLane?.dispose();
|
|
75
|
-
this.fileLane = undefined;
|
|
76
|
-
}
|
|
77
|
-
params = (() => [{
|
|
78
|
-
name: 'skip',
|
|
79
|
-
type: 'string',
|
|
80
|
-
description: `Can configure skip steps, comma separated, optional values: ${_aiotpack.skipList.join(',')}`,
|
|
81
|
-
validate(value) {
|
|
82
|
-
// TODO: validate 不起作用
|
|
83
|
-
const res = _sharedUtils.StringUtil.string2arrayByComma(value);
|
|
84
|
-
const unValid = res.find(r => {
|
|
85
|
-
return !_aiotpack.skipList.includes(r);
|
|
86
|
-
});
|
|
87
|
-
if (unValid) {
|
|
88
|
-
return `${unValid} is unvalidate, validate value are ${_aiotpack.skipList.join(',')}, Multiple values separated by commas`;
|
|
89
|
-
}
|
|
90
|
-
return true;
|
|
91
|
-
}
|
|
92
|
-
}])();
|
|
93
|
-
}
|
|
94
|
-
var _default = exports.default = XtsBuilder;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { IParam } from '@aiot-toolkit/commander';
|
|
2
|
-
import XtsBuilder from '../builder/XtsBuilder';
|
|
3
|
-
import IStarter from './IStarter';
|
|
4
|
-
declare class XtsStarter extends IStarter {
|
|
5
|
-
builder: XtsBuilder;
|
|
6
|
-
params: IParam[];
|
|
7
|
-
start(projectPath: string, options: any): void;
|
|
8
|
-
}
|
|
9
|
-
export default XtsStarter;
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _XtsBuilder = _interopRequireDefault(require("../builder/XtsBuilder"));
|
|
8
|
-
var _IStarter = _interopRequireDefault(require("./IStarter"));
|
|
9
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
|
-
class XtsStarter extends _IStarter.default {
|
|
11
|
-
builder = (() => new _XtsBuilder.default())();
|
|
12
|
-
params = [];
|
|
13
|
-
start(projectPath, options) {
|
|
14
|
-
console.log(projectPath, options);
|
|
15
|
-
throw new Error('Method not implemented.');
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
var _default = exports.default = XtsStarter;
|