aiot-toolkit 2.0.3-beta.7 → 2.0.3-beta.9
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 +158 -184
- package/lib/builder/AndroidUxBuilder.js +14 -15
- package/lib/builder/IBuilder.js +1 -2
- package/lib/builder/UxBuilderBase.js +130 -132
- package/lib/builder/VelaUxBuilder.d.ts +3 -2
- package/lib/builder/VelaUxBuilder.js +65 -75
- package/lib/builder/XtsBuilder.js +85 -92
- package/lib/index.js +48 -13
- package/lib/interface/CommandInterface.js +4 -1
- package/lib/interface/VelaEmulatorInterface.js +4 -1
- package/lib/starter/AndroidUxStart.js +158 -158
- package/lib/starter/IStarter.js +39 -37
- package/lib/starter/VelaUxStarter.d.ts +8 -3
- package/lib/starter/VelaUxStarter.js +155 -196
- package/lib/starter/XtsStarter.js +16 -17
- package/lib/starter/androidRouter/LinkMode.js +12 -8
- package/lib/starter/androidRouter/PackageRouter.js +144 -140
- package/lib/utils/AdbUtils.js +48 -76
- package/lib/utils/DeviceUtil.js +277 -293
- package/lib/utils/RequestUtils.js +54 -68
- package/lib/utils/VelaAvdUtils.d.ts +9 -54
- package/lib/utils/VelaAvdUtils.js +127 -436
- package/lib/waiter.js +35 -35
- package/package.json +9 -15
package/lib/bin.js
CHANGED
|
@@ -1,202 +1,176 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
"use strict";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
var
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
const semver_1 = __importDefault(require("semver"));
|
|
3
|
+
|
|
4
|
+
var _sharedUtils = require("@aiot-toolkit/shared-utils");
|
|
5
|
+
var _semver = _interopRequireDefault(require("semver"));
|
|
6
|
+
var _aiotpack = require("@aiot-toolkit/aiotpack");
|
|
7
|
+
var _commander = require("@aiot-toolkit/commander");
|
|
8
|
+
var _AndroidUxBuilder = _interopRequireDefault(require("./builder/AndroidUxBuilder"));
|
|
9
|
+
var _VelaUxBuilder = _interopRequireDefault(require("./builder/VelaUxBuilder"));
|
|
10
|
+
var _XtsBuilder = _interopRequireDefault(require("./builder/XtsBuilder"));
|
|
11
|
+
var _AndroidUxStart = _interopRequireDefault(require("./starter/AndroidUxStart"));
|
|
12
|
+
var _VelaUxStarter = _interopRequireDefault(require("./starter/VelaUxStarter"));
|
|
13
|
+
var _XtsStarter = _interopRequireDefault(require("./starter/XtsStarter"));
|
|
14
|
+
var _DeviceUtil = _interopRequireDefault(require("./utils/DeviceUtil"));
|
|
15
|
+
var _VelaAvdUtils = _interopRequireDefault(require("./utils/VelaAvdUtils"));
|
|
16
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
18
17
|
// 支持的最低node版本
|
|
19
18
|
const NODE_MINIMUM_VERSION = '18.0.0';
|
|
20
19
|
checkVersion();
|
|
21
|
-
const aiotpack_1 = require("@aiot-toolkit/aiotpack");
|
|
22
|
-
const commander_1 = require("@aiot-toolkit/commander");
|
|
23
|
-
const shared_utils_2 = require("@aiot-toolkit/shared-utils");
|
|
24
|
-
const AndroidUxBuilder_1 = __importDefault(require("./builder/AndroidUxBuilder"));
|
|
25
|
-
const VelaUxBuilder_1 = __importDefault(require("./builder/VelaUxBuilder"));
|
|
26
|
-
const XtsBuilder_1 = __importDefault(require("./builder/XtsBuilder"));
|
|
27
|
-
const AndroidUxStart_1 = __importDefault(require("./starter/AndroidUxStart"));
|
|
28
|
-
const VelaUxStarter_1 = __importDefault(require("./starter/VelaUxStarter"));
|
|
29
|
-
const XtsStarter_1 = __importDefault(require("./starter/XtsStarter"));
|
|
30
|
-
const DeviceUtil_1 = __importDefault(require("./utils/DeviceUtil"));
|
|
31
|
-
const VelaAvdUtils_1 = __importDefault(require("./utils/VelaAvdUtils"));
|
|
32
20
|
// 校验当前环境中的node
|
|
33
21
|
function checkVersion() {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
}
|
|
22
|
+
const currentVersion = process.versions.node;
|
|
23
|
+
if (_semver.default.lt(currentVersion, NODE_MINIMUM_VERSION)) {
|
|
24
|
+
_sharedUtils.ColorConsole.throw('It is detected that the current NodeJS version ', {
|
|
25
|
+
word: currentVersion
|
|
26
|
+
}, ' is too low, please upgrade to NodeJS version higher than ', {
|
|
27
|
+
word: NODE_MINIMUM_VERSION
|
|
28
|
+
});
|
|
29
|
+
process.exit();
|
|
30
|
+
}
|
|
39
31
|
}
|
|
32
|
+
|
|
40
33
|
// 配置支持的 builder 类型,新增的项目类型,需在此处加上类型
|
|
41
34
|
const projectMapper = {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
35
|
+
[_sharedUtils.ProjectType.VELA_UX]: {
|
|
36
|
+
builder: _VelaUxBuilder.default,
|
|
37
|
+
starter: _VelaUxStarter.default
|
|
38
|
+
},
|
|
39
|
+
[_sharedUtils.ProjectType.VELA_XTS]: {
|
|
40
|
+
builder: _XtsBuilder.default,
|
|
41
|
+
starter: _XtsStarter.default
|
|
42
|
+
},
|
|
43
|
+
[_sharedUtils.ProjectType.ANDDROID_UX]: {
|
|
44
|
+
builder: _AndroidUxBuilder.default,
|
|
45
|
+
starter: _AndroidUxStart.default
|
|
46
|
+
}
|
|
54
47
|
};
|
|
55
48
|
function findBuilder() {
|
|
56
|
-
|
|
57
|
-
|
|
49
|
+
const projectType = _sharedUtils.ProjectType.getProjectType(process.cwd());
|
|
50
|
+
return new projectMapper[projectType].builder();
|
|
58
51
|
}
|
|
59
52
|
function build(command, description) {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
};
|
|
53
|
+
const builder = findBuilder();
|
|
54
|
+
const paramList = builder?.params;
|
|
55
|
+
return {
|
|
56
|
+
name: command,
|
|
57
|
+
description,
|
|
58
|
+
paramList,
|
|
59
|
+
action: async option => {
|
|
60
|
+
try {
|
|
61
|
+
// 获取对应的 build;如果存在,执行 build 函数,不存在,提示
|
|
62
|
+
option.mode = command === 'release' ? _aiotpack.CompileMode.PRODUCTION : _aiotpack.CompileMode.DEVELOPMENT;
|
|
63
|
+
const projectPath = process.cwd();
|
|
64
|
+
await builder.build(projectPath, option);
|
|
65
|
+
} catch (error) {
|
|
66
|
+
_sharedUtils.ColorConsole.error('Build Error:', {
|
|
67
|
+
word: error?.toString() || 'unknown error'
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
};
|
|
80
72
|
}
|
|
81
73
|
function findStarter(command, description) {
|
|
82
|
-
|
|
83
|
-
|
|
74
|
+
const projectType = _sharedUtils.ProjectType.getProjectType(process.cwd());
|
|
75
|
+
return new projectMapper[projectType].starter(command, description);
|
|
84
76
|
}
|
|
85
|
-
function main() {
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
action: (option) => __awaiter(this, void 0, void 0, function* () {
|
|
184
|
-
const { avdNames } = option;
|
|
185
|
-
avdNames.forEach((avdName) => {
|
|
186
|
-
VelaAvdUtils_1.default.velaAvdCls.deleteVelaAvd(avdName);
|
|
187
|
-
});
|
|
188
|
-
})
|
|
189
|
-
},
|
|
190
|
-
{
|
|
191
|
-
name: 'initEmulatorEnv',
|
|
192
|
-
description: 'init/reset emulator environment',
|
|
193
|
-
action: () => __awaiter(this, void 0, void 0, function* () {
|
|
194
|
-
VelaAvdUtils_1.default.initEmulatorEnv();
|
|
195
|
-
})
|
|
196
|
-
}
|
|
197
|
-
]
|
|
198
|
-
};
|
|
199
|
-
commander_1.Command.registeProgram(config);
|
|
200
|
-
});
|
|
77
|
+
async function main() {
|
|
78
|
+
const config = {
|
|
79
|
+
name: 'aiot-toolkit',
|
|
80
|
+
description: 'contains build, dev, release, etc. commands for aiot toolkit',
|
|
81
|
+
version: require('../package.json').version,
|
|
82
|
+
commandList: [build('build', 'build project'), build('release', 'release the project'), findStarter('start', 'start project').getCommond(), {
|
|
83
|
+
name: 'getConnectedDevices',
|
|
84
|
+
description: 'get all connected devices',
|
|
85
|
+
action: async () => {
|
|
86
|
+
try {
|
|
87
|
+
const connectedDevices = await _DeviceUtil.default.getAllConnectedDevices();
|
|
88
|
+
_sharedUtils.ColorConsole.info(`The connected devices are: ${connectedDevices ? connectedDevices.join(', ') : 'null'}`);
|
|
89
|
+
} catch (error) {
|
|
90
|
+
_sharedUtils.ColorConsole.throw(`Error: getConnectedDevices failed`);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}, {
|
|
94
|
+
name: 'getPlatforms',
|
|
95
|
+
description: 'get available platform(s) on selected device',
|
|
96
|
+
paramList: [{
|
|
97
|
+
name: 'ip',
|
|
98
|
+
description: 'device ip(eg 127.0.0.1)',
|
|
99
|
+
type: 'string',
|
|
100
|
+
enableInquirer: true
|
|
101
|
+
}, {
|
|
102
|
+
name: 'port',
|
|
103
|
+
description: 'device port(eg 39517)',
|
|
104
|
+
type: 'string',
|
|
105
|
+
enableInquirer: true
|
|
106
|
+
}, {
|
|
107
|
+
name: 'sn',
|
|
108
|
+
description: 'view the serial number of the connected device through the "adb devices" command, if it is a device connected via wifi, the format is "ip address:5555"',
|
|
109
|
+
type: 'string',
|
|
110
|
+
enableInquirer: true
|
|
111
|
+
}],
|
|
112
|
+
action: async option => {
|
|
113
|
+
await _DeviceUtil.default.getAvailablePlatform(option);
|
|
114
|
+
}
|
|
115
|
+
}, {
|
|
116
|
+
name: 'installDbgAndMkp',
|
|
117
|
+
description: 'install "org.hapjs.debugger" & "org.hapjs.mockup" ',
|
|
118
|
+
paramList: [{
|
|
119
|
+
name: 'ip',
|
|
120
|
+
description: 'device ip(eg 127.0.0.1)',
|
|
121
|
+
type: 'string'
|
|
122
|
+
}, {
|
|
123
|
+
name: 'port',
|
|
124
|
+
description: 'device ip(eg 5555)',
|
|
125
|
+
type: 'string'
|
|
126
|
+
}],
|
|
127
|
+
action: async option => {
|
|
128
|
+
try {
|
|
129
|
+
const successMessage = await _DeviceUtil.default.installDbgAndMkp(option);
|
|
130
|
+
_sharedUtils.ColorConsole.success(`${successMessage}`);
|
|
131
|
+
} catch (error) {
|
|
132
|
+
_sharedUtils.ColorConsole.throw(`installDbgAndMkp failed, errorMessage:'}`, {
|
|
133
|
+
word: error?.toString() || 'unknown error'
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
}, {
|
|
138
|
+
name: 'createVVD',
|
|
139
|
+
description: 'create a vela virtual device',
|
|
140
|
+
action: async () => {
|
|
141
|
+
_VelaAvdUtils.default.createVelaVvdByInquire();
|
|
142
|
+
}
|
|
143
|
+
}, {
|
|
144
|
+
name: 'deleteVVD',
|
|
145
|
+
description: 'delete vela virtual device(s)',
|
|
146
|
+
paramList: [{
|
|
147
|
+
name: 'avdNames',
|
|
148
|
+
description: 'avd names to delete',
|
|
149
|
+
enableInquirer: true,
|
|
150
|
+
type: 'checkbox',
|
|
151
|
+
choices: _VelaAvdUtils.default.vvdManager.getVvdList().map(item => {
|
|
152
|
+
return {
|
|
153
|
+
name: item.name,
|
|
154
|
+
value: item.name
|
|
155
|
+
};
|
|
156
|
+
})
|
|
157
|
+
}],
|
|
158
|
+
action: async option => {
|
|
159
|
+
const {
|
|
160
|
+
avdNames
|
|
161
|
+
} = option;
|
|
162
|
+
avdNames.forEach(avdName => {
|
|
163
|
+
_VelaAvdUtils.default.vvdManager.deleteVvd(avdName);
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
}, {
|
|
167
|
+
name: 'initEmulatorEnv',
|
|
168
|
+
description: 'init/reset emulator environment',
|
|
169
|
+
action: async () => {
|
|
170
|
+
_VelaAvdUtils.default.initEmulatorEnv();
|
|
171
|
+
}
|
|
172
|
+
}]
|
|
173
|
+
};
|
|
174
|
+
_commander.Command.registeProgram(config);
|
|
201
175
|
}
|
|
202
|
-
main();
|
|
176
|
+
main();
|
|
@@ -1,20 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _sharedUtils = require("@aiot-toolkit/shared-utils");
|
|
8
|
+
var _UxBuilderBase = _interopRequireDefault(require("./UxBuilderBase"));
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
8
10
|
/**
|
|
9
11
|
* AndroidUxBuilder
|
|
10
12
|
*/
|
|
11
|
-
class AndroidUxBuilder extends
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
match(projectPath) {
|
|
17
|
-
return shared_utils_1.ProjectType.getProjectType(projectPath) === shared_utils_1.ProjectType.ANDDROID_UX;
|
|
18
|
-
}
|
|
13
|
+
class AndroidUxBuilder extends _UxBuilderBase.default {
|
|
14
|
+
params = [];
|
|
15
|
+
match(projectPath) {
|
|
16
|
+
return _sharedUtils.ProjectType.getProjectType(projectPath) === _sharedUtils.ProjectType.ANDDROID_UX;
|
|
17
|
+
}
|
|
19
18
|
}
|
|
20
|
-
exports.default = AndroidUxBuilder;
|
|
19
|
+
var _default = exports.default = AndroidUxBuilder;
|
package/lib/builder/IBuilder.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
1
|
+
"use strict";
|