@zeppos/zeus-cli 1.0.22 → 1.0.24

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/bin/cli.js CHANGED
@@ -27,5 +27,6 @@ yargs_1["default"].usage('Usage: $0 <command> [args?]')
27
27
  // @ts-ignore
28
28
  .command('build', 'build this project for production', proxy, index_1.buildProd)
29
29
  .command('config', 'set or get the config value', proxy, index_1.config)
30
+ .command('status', 'view information such as login and emulator connection status', proxy, index_1.status)
30
31
  .fail(index_1.help)
31
32
  .argv;
package/config/project.js CHANGED
@@ -3,8 +3,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  exports.__esModule = true;
6
- exports.loginStorageKey = exports.loginConfig = exports.LocalServerConfig = exports.TemplateCopyType = exports.AppSourceType = exports.AppType = void 0;
6
+ exports.loginStorageKey = exports.loginConfig = exports.ACCOUNT_ENV = exports.ACCOUNT_ENV_KEY = exports.TemplateCopyType = exports.AppSourceType = exports.AppType = void 0;
7
7
  var lodash_1 = __importDefault(require("lodash"));
8
+ var storage_1 = require("../modules/storage");
8
9
  var AppType;
9
10
  (function (AppType) {
10
11
  AppType["APP"] = "app";
@@ -20,19 +21,18 @@ var TemplateCopyType;
20
21
  TemplateCopyType["CLONE"] = "clone";
21
22
  TemplateCopyType["EDIT"] = "edit";
22
23
  })(TemplateCopyType = exports.TemplateCopyType || (exports.TemplateCopyType = {}));
23
- var LocalServerConfig;
24
- (function (LocalServerConfig) {
25
- LocalServerConfig["HOSTNAME"] = "localhost";
26
- LocalServerConfig[LocalServerConfig["PORT"] = 8086] = "PORT";
27
- })(LocalServerConfig = exports.LocalServerConfig || (exports.LocalServerConfig = {}));
28
- var loginURL = 'https://user.huami.com/universalLogin/index.html#/login';
29
- var loginUrl = new URL(loginURL);
24
+ exports.ACCOUNT_ENV_KEY = 'account_env';
25
+ var storage = new storage_1.Storage({ cmd: '' });
26
+ exports.ACCOUNT_ENV = storage.get(exports.ACCOUNT_ENV_KEY) ? storage.get(exports.ACCOUNT_ENV_KEY) : storage.set(exports.ACCOUNT_ENV_KEY, 'production');
27
+ var loginTestURL = 'https://user-testing.huami.com/universalLogin/index.html#/login';
28
+ var loginProURL = 'https://user.huami.com/universalLogin/index.html#/login';
29
+ var curLoginURL = exports.ACCOUNT_ENV === 'production' ? loginProURL : loginTestURL;
30
+ var loginUrl = new URL(curLoginURL);
30
31
  var accountPrefix = "____".concat(lodash_1["default"].replace(loginUrl.host, /\./g, '_'), "__");
31
32
  exports.loginConfig = {
32
- LOGIN_URL: loginURL,
33
+ LOGIN_URL: curLoginURL,
33
34
  PROJECT_NAME: 'zeppos_zeus_cli',
34
- PLATFORM_APP: 'com.huami.watch.hmwatchmanager',
35
- PROJECT_REDIRECT_URI: encodeURIComponent("http://".concat(LocalServerConfig.HOSTNAME, ":").concat(LocalServerConfig.PORT, "/"))
35
+ PLATFORM_APP: 'com.huami.watch.hmwatchmanager'
36
36
  };
37
37
  exports.loginStorageKey = {
38
38
  accountToken: "".concat(accountPrefix, "token"),
package/index.js CHANGED
@@ -16,3 +16,4 @@ __exportStar(require("./modules/build"), exports);
16
16
  __exportStar(require("./modules/create"), exports);
17
17
  __exportStar(require("./modules/login"), exports);
18
18
  __exportStar(require("./modules/config"), exports);
19
+ __exportStar(require("./modules/status"), exports);
package/modules/build.js CHANGED
@@ -83,7 +83,6 @@ var qrcode_terminal_1 = __importDefault(require("qrcode-terminal"));
83
83
  var inquirer_1 = __importDefault(require("inquirer"));
84
84
  var login_1 = require("./login");
85
85
  var logger = __importStar(require("../utils/logger"));
86
- var storage_1 = require("./storage");
87
86
  var project_1 = require("../config/project");
88
87
  var chalk_1 = __importDefault(require("chalk"));
89
88
  var BuildMode;
@@ -188,7 +187,9 @@ var build = function (mode, packages) {
188
187
  };
189
188
  if (mode === BuildMode.PROD || mode === BuildMode.PREVIEW) {
190
189
  Object.assign(buildOptions, {
191
- png2vg: true
190
+ png2vg: true,
191
+ jsc: TransformType.C,
192
+ prune: true // js转成bin之后删除js脚本(开启转 bin 之后,需要在 win 上 preview 验证一下转 C 是否正常)
192
193
  });
193
194
  }
194
195
  _a.label = 3;
@@ -237,12 +238,10 @@ var checkIsWatchFaceProject = function () {
237
238
  return appType === project_1.AppType.WATCHFACE;
238
239
  };
239
240
  var buildPreview = function (args) { return __awaiter(void 0, void 0, void 0, function () {
240
- var storage, _a, apptoken, userid, cname, form, buildInfo, isWatchFaceProject;
241
+ var _a, apptoken, userid, cname, form, buildInfo, isWatchFaceProject;
241
242
  return __generator(this, function (_b) {
242
243
  switch (_b.label) {
243
- case 0:
244
- storage = new storage_1.Storage({ cmd: lodash_1["default"].get(args, '$0') });
245
- return [4 /*yield*/, (0, login_1.login)(args)];
244
+ case 0: return [4 /*yield*/, (0, login_1.login)(args)];
246
245
  case 1:
247
246
  _a = _b.sent(), apptoken = _a.apptoken, userid = _a.userid, cname = _a.cname;
248
247
  form = new form_data_1["default"]();
package/modules/config.js CHANGED
@@ -63,6 +63,7 @@ var lodash_1 = __importDefault(require("lodash"));
63
63
  var chalk_1 = __importDefault(require("chalk"));
64
64
  var storage_1 = require("./storage");
65
65
  var logger = __importStar(require("../utils/logger"));
66
+ var project_1 = require("../config/project");
66
67
  var config = function (args) { return __awaiter(void 0, void 0, void 0, function () {
67
68
  var cmd, _a, space, _b, method, values, allowedMethods, storage, commonHandleNotKeyTips, config_1;
68
69
  return __generator(this, function (_c) {
@@ -102,6 +103,10 @@ var config = function (args) { return __awaiter(void 0, void 0, void 0, function
102
103
  logger.error('please input <key>');
103
104
  }
104
105
  else {
106
+ // 切换登录环境时清除原有 token
107
+ if (key === project_1.ACCOUNT_ENV_KEY && storage.get(project_1.ACCOUNT_ENV_KEY) !== value) {
108
+ storage["delete"](project_1.loginStorageKey.accountToken);
109
+ }
105
110
  storage.set(key, value);
106
111
  logger.success("config: ".concat(key, "=").concat(value));
107
112
  }
@@ -87,6 +87,7 @@ var fs = __importStar(require("fs"));
87
87
  var fs_extra_1 = __importDefault(require("fs-extra"));
88
88
  var path_1 = require("path");
89
89
  var fs_1 = require("fs");
90
+ var yeoman_environment_1 = __importDefault(require("yeoman-environment"));
90
91
  var local_app_1 = require("./local-app");
91
92
  var yeoman_app_1 = require("./yeoman-app");
92
93
  var project_1 = require("../../config/project");
@@ -94,15 +95,16 @@ var device_1 = require("../../config/device");
94
95
  var font_icon_1 = __importDefault(require("../../font-icon"));
95
96
  var logger = __importStar(require("../../utils/logger"));
96
97
  var sleep_1 = require("../../utils/sleep");
97
- var yeoman_environment_1 = __importDefault(require("yeoman-environment"));
98
+ var shell = require('shelljs');
98
99
  var TEMPLATE_DIR = (0, path_1.resolve)(__dirname, '../../public/template');
99
100
  var create = function (args) { return __awaiter(void 0, void 0, void 0, function () {
100
- var _a, cmd, projectName, cwdPath, workDir, beforeFiles, localTemplates, localChoices, watchfaceTemplateChoices, appTemplateChoices, env, generagtorMate, generagtorMateKeys, answer, choosePkg;
101
+ var _a, cmd, projectName, cwdPath, beforeFiles, workDir, localTemplates, localChoices, watchfaceTemplateChoices, appTemplateChoices, env, generatorMate, generatorMateKeys, answer, choosePkg;
101
102
  return __generator(this, function (_b) {
102
103
  switch (_b.label) {
103
104
  case 0:
104
105
  _a = args._ || [], cmd = _a[0], projectName = _a[1];
105
106
  cwdPath = (0, path_1.resolve)('./');
107
+ beforeFiles = [];
106
108
  workDir = cwdPath;
107
109
  if (cmd === 'create') {
108
110
  if (projectName) {
@@ -117,7 +119,6 @@ var create = function (args) { return __awaiter(void 0, void 0, void 0, function
117
119
  process.exit(1);
118
120
  }
119
121
  }
120
- beforeFiles = [];
121
122
  if (fs.existsSync(workDir)) {
122
123
  rd.eachFileSync(workDir, function (file) {
123
124
  beforeFiles.push(file);
@@ -162,14 +163,14 @@ var create = function (args) { return __awaiter(void 0, void 0, void 0, function
162
163
  }
163
164
  env = yeoman_environment_1["default"].createEnv();
164
165
  env.lookup();
165
- generagtorMate = env.getGeneratorsMeta();
166
- generagtorMateKeys = Object.keys(generagtorMate);
167
- if (generagtorMateKeys.length) {
166
+ generatorMate = env.getGeneratorsMeta();
167
+ generatorMateKeys = Object.keys(generatorMate);
168
+ if (generatorMateKeys.length) {
168
169
  if (localChoices.length) {
169
170
  // @ts-ignore
170
171
  localChoices.push(new inquirer_1["default"].Separator());
171
172
  }
172
- generagtorMateKeys.forEach(function (name) {
173
+ generatorMateKeys.forEach(function (name) {
173
174
  if (/:(app|all)$/.test(name)) {
174
175
  localChoices.push({
175
176
  name: name,
@@ -260,7 +261,7 @@ var create = function (args) { return __awaiter(void 0, void 0, void 0, function
260
261
  _b.sent();
261
262
  if (choosePkg.type === project_1.AppSourceType.YEOMAN) {
262
263
  logger.info("".concat(lodash_1["default"].upperFirst(cmd), " application using yeoman template \"").concat(choosePkg.name, "\"."));
263
- (0, yeoman_app_1.createYeomanApp)(__assign(__assign({}, answer), { env: env, templateInfo: generagtorMate[choosePkg.name] }));
264
+ (0, yeoman_app_1.createYeomanApp)(__assign(__assign({}, answer), { env: env, templateInfo: generatorMate[choosePkg.name] }));
264
265
  }
265
266
  else {
266
267
  logger.info("".concat(lodash_1["default"].upperFirst(cmd), " application using local template \"").concat(choosePkg.name, "\"."));
@@ -286,6 +287,8 @@ var create = function (args) { return __awaiter(void 0, void 0, void 0, function
286
287
  });
287
288
  logger.log('\n');
288
289
  logger.success("project created successfully by \"".concat(choosePkg.name, "\" template.\n"));
290
+ shell.cd("".concat(projectName));
291
+ shell.exec('npm install');
289
292
  return [4 /*yield*/, (0, sleep_1.sleep)(300)];
290
293
  case 4:
291
294
  _b.sent();
@@ -55,6 +55,7 @@ var os_1 = __importDefault(require("os"));
55
55
  var lodash_1 = __importDefault(require("lodash"));
56
56
  var path_1 = require("path");
57
57
  var fs_extra_1 = __importDefault(require("fs-extra"));
58
+ var fs_1 = __importDefault(require("fs"));
58
59
  var project_1 = require("../../config/project");
59
60
  var device_1 = require("../../config/device");
60
61
  // 生成模板项目
@@ -63,6 +64,9 @@ var createLocalApp = function (args) { return __awaiter(void 0, void 0, void 0,
63
64
  return __generator(this, function (_a) {
64
65
  workDir = args.workDir, templateInfo = args.templateInfo, withAppSide = args.withAppSide, withSettings = args.withSettings, buildTargets = args.buildTargets, appType = args.appType;
65
66
  fs_extra_1["default"].copySync(templateInfo.path, workDir);
67
+ fs_extra_1["default"].copySync((0, path_1.resolve)(__dirname, '../../public/template/jsconfig.json'), "".concat(workDir, "/jsconfig.json"));
68
+ fs_extra_1["default"].copySync((0, path_1.resolve)(__dirname, '../../public/template/package.json'), "".concat(workDir, "/package.json"));
69
+ fs_1["default"].writeFileSync("".concat(workDir, "/global.d.ts"), '/// <reference path="node_modules/@zeppos/device-types/index.d.ts" />');
66
70
  appJsonPath = (0, path_1.resolve)(workDir, './app.json');
67
71
  appJson = fs_extra_1["default"].readJsonSync(appJsonPath);
68
72
  appID = Math.floor(Math.random() * 10001) + 20000;
package/modules/help.js CHANGED
@@ -78,6 +78,7 @@ var help = function () { return __awaiter(void 0, void 0, void 0, function () {
78
78
  logger.log("".concat(cmd, " preview preview this project in your device"));
79
79
  logger.log("".concat(cmd, " build build this project for production"));
80
80
  logger.log("".concat(cmd, " config <term> set or get the config value"));
81
+ logger.log("".concat(cmd, " status view information such as login and emulator connection status"));
81
82
  logger.log('');
82
83
  logger.log('');
83
84
  logger.log("".concat(cmd, "@").concat(pkg.version, " ").concat(path.resolve(__dirname, '../')));
package/modules/login.js CHANGED
@@ -59,68 +59,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
59
59
  };
60
60
  exports.__esModule = true;
61
61
  exports.logout = exports.login = void 0;
62
- var qs_1 = __importDefault(require("qs"));
63
62
  var lodash_1 = __importDefault(require("lodash"));
64
- var axios_1 = __importDefault(require("axios"));
65
63
  var inquirer_1 = __importDefault(require("inquirer"));
66
64
  var storage_1 = require("./storage");
67
65
  var logger = __importStar(require("../utils/logger"));
68
66
  var project_1 = require("../config/project");
67
+ var login_1 = require("../utils/login");
68
+ var get_port_1 = __importDefault(require("get-port"));
69
69
  var open = require('open');
70
70
  var http = require('http');
71
71
  var url = require('url');
72
72
  var querystring = require('querystring');
73
- var REGIST_URL = 'https://api-user.huami.com';
74
- var LOGIN_URL = 'https://account.huami.com';
75
- var postForm = function (url, data) {
76
- return (0, axios_1["default"])({
77
- method: 'POST',
78
- headers: {
79
- 'content-type': 'application/x-www-form-urlencoded'
80
- },
81
- data: qs_1["default"].stringify(data),
82
- url: url
83
- });
84
- };
85
- var loginByLocal = function (account, password) { return __awaiter(void 0, void 0, void 0, function () {
86
- var data, checkInfo, loginInfo;
87
- return __generator(this, function (_a) {
88
- switch (_a.label) {
89
- case 0:
90
- data = {
91
- client_id: 'HuaMi',
92
- country_code: 'zh-CN',
93
- json_response: 'true',
94
- name: '',
95
- password: password,
96
- phoneOrEmail: account,
97
- redirect_uri: 'https://s3-us-west-2.amazonaws.com/hm-registration/successsignin.html',
98
- state: 'REDIRECTION',
99
- token: 'access'
100
- };
101
- if (/^[1][0-9]{10}$/.test(account)) {
102
- data.phoneOrEmail = encodeURIComponent("+86".concat(account));
103
- }
104
- data.name = data.phoneOrEmail.split('@')[0];
105
- return [4 /*yield*/, postForm("".concat(REGIST_URL, "/registrations/").concat(data.phoneOrEmail, "/tokens"), data)];
106
- case 1:
107
- checkInfo = _a.sent();
108
- return [4 /*yield*/, postForm("".concat(LOGIN_URL, "/v2/client/login"), {
109
- app_name: 'com.huami.webapp',
110
- app_version: '4.3.0',
111
- code: lodash_1["default"].get(checkInfo, 'data.access', ''),
112
- country_code: 'zh-cn',
113
- device_id: '02:00:00:00:00:00',
114
- device_model: 'web',
115
- grant_type: 'access_token',
116
- third_name: 'huami'
117
- })];
118
- case 2:
119
- loginInfo = (_a.sent()).data;
120
- return [2 /*return*/, loginInfo];
121
- }
122
- });
123
- }); };
124
73
  var login = function (args) { return __awaiter(void 0, void 0, void 0, function () {
125
74
  var storage, accountInfo, apptoken, userid, cname, isLocal, answer, loginInfo_1, token, loginInfo;
126
75
  return __generator(this, function (_a) {
@@ -154,7 +103,7 @@ var login = function (args) { return __awaiter(void 0, void 0, void 0, function
154
103
  case 1:
155
104
  answer = _a.sent();
156
105
  answer.account = answer.account || accountInfo;
157
- return [4 /*yield*/, loginByLocal(answer.account, answer.password)["catch"](function () {
106
+ return [4 /*yield*/, (0, login_1.loginByLocal)(answer.account, answer.password)["catch"](function () {
158
107
  logger.error('logged in failed, please check your account and password');
159
108
  process.exit(1);
160
109
  })];
@@ -168,34 +117,43 @@ var login = function (args) { return __awaiter(void 0, void 0, void 0, function
168
117
  }
169
118
  _a.label = 3;
170
119
  case 3: return [4 /*yield*/, new Promise(function (resolve) { return __awaiter(void 0, void 0, void 0, function () {
171
- var server;
120
+ var server, HOSTNAME, PORT, PROJECT_REDIRECT_URI;
172
121
  return __generator(this, function (_a) {
173
122
  switch (_a.label) {
174
123
  case 0:
175
- server = http.createServer(function (req, res) {
176
- var arg = url.parse(req.url).query;
177
- var params = querystring.parse(arg);
178
- var apptoken = params.apptoken, userid = params.userid, cname = params.cname;
179
- res.statusCode = 200;
180
- res.setHeader('Content-Type', 'text/plain');
181
- res.end('Login is successful, please return to the operation interface manually');
182
- if (apptoken) {
183
- resolve({ apptoken: apptoken, userid: userid, cname: cname });
184
- storage.set(project_1.loginStorageKey.userid, userid);
185
- storage.set(project_1.loginStorageKey.cname, cname);
186
- storage.set(project_1.loginStorageKey.accountToken, apptoken);
187
- logger.success('logger success');
188
- server.close();
189
- // 在执行 preview 命令需要登录时不退出程序
190
- if (!args) {
191
- process.exit(1);
124
+ server = http.createServer(function (req, res) { return __awaiter(void 0, void 0, void 0, function () {
125
+ var arg, params, apptoken, userid, cname;
126
+ return __generator(this, function (_a) {
127
+ arg = url.parse(req.url).query;
128
+ params = querystring.parse(arg);
129
+ apptoken = params.apptoken, userid = params.userid, cname = params.cname;
130
+ res.statusCode = 200;
131
+ res.setHeader('Content-Type', 'text/plain');
132
+ res.end('Login is successful, please return to the operation interface manually');
133
+ if (apptoken) {
134
+ resolve({ apptoken: apptoken, userid: userid, cname: cname });
135
+ storage.set(project_1.loginStorageKey.userid, userid);
136
+ storage.set(project_1.loginStorageKey.cname, cname);
137
+ storage.set(project_1.loginStorageKey.accountToken, apptoken);
138
+ logger.success('logger success');
139
+ server.close();
140
+ // 在执行 preview 命令需要登录时不退出程序
141
+ if (!args) {
142
+ process.exit(1);
143
+ }
192
144
  }
193
- }
194
- });
195
- server.listen(project_1.LocalServerConfig.PORT, project_1.LocalServerConfig.HOSTNAME);
196
- // 打开浏览器的登录页面
197
- return [4 /*yield*/, open("".concat(project_1.loginConfig.LOGIN_URL, "?project_name=").concat(project_1.loginConfig.PROJECT_NAME, "&platform_app=").concat(project_1.loginConfig.PLATFORM_APP, "&project_redirect_uri=").concat(project_1.loginConfig.PROJECT_REDIRECT_URI))];
145
+ return [2 /*return*/];
146
+ });
147
+ }); });
148
+ HOSTNAME = 'localhost';
149
+ return [4 /*yield*/, (0, get_port_1["default"])({ port: 8086 })];
198
150
  case 1:
151
+ PORT = _a.sent();
152
+ PROJECT_REDIRECT_URI = encodeURIComponent("http://".concat(HOSTNAME, ":").concat(PORT, "/"));
153
+ server.listen(PORT, HOSTNAME);
154
+ // 打开浏览器的登录页面
155
+ return [4 /*yield*/, open("".concat(project_1.loginConfig.LOGIN_URL, "?project_name=").concat(project_1.loginConfig.PROJECT_NAME, "&platform_app=").concat(project_1.loginConfig.PLATFORM_APP, "&project_redirect_uri=").concat(PROJECT_REDIRECT_URI))];
156
+ case 2:
199
157
  // 打开浏览器的登录页面
200
158
  _a.sent();
201
159
  return [2 /*return*/];
package/modules/run.js CHANGED
@@ -58,7 +58,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
58
58
  return (mod && mod.__esModule) ? mod : { "default": mod };
59
59
  };
60
60
  exports.__esModule = true;
61
- exports.run = void 0;
61
+ exports.run = exports.DEFAULT_PORT = exports.DEFAULT_HOST = void 0;
62
62
  var fs_1 = __importDefault(require("fs"));
63
63
  var lodash_1 = __importDefault(require("lodash"));
64
64
  var chalk_1 = __importDefault(require("chalk"));
@@ -72,8 +72,8 @@ var build_1 = require("./build");
72
72
  var storage_1 = require("./storage");
73
73
  var simulator_1 = require("./simulator");
74
74
  var device_1 = require("../config/device");
75
- var DEFAULT_HOST = '127.0.0.1';
76
- var DEFAULT_PORT = '7650';
75
+ exports.DEFAULT_HOST = '127.0.0.1';
76
+ exports.DEFAULT_PORT = '7650';
77
77
  var getDeviceInternalCodename = function (curTarget) {
78
78
  var _a;
79
79
  var appJsonFilePath = path.resolve('./app.json');
@@ -88,24 +88,24 @@ var run = function (args) { return __awaiter(void 0, void 0, void 0, function ()
88
88
  case 0:
89
89
  storage = new storage_1.Storage({ cmd: lodash_1["default"].get(args, '$0') });
90
90
  simulatorHost = storage.get('simulator_host');
91
- simulatorPort = storage.get('simulator_port') || DEFAULT_PORT;
91
+ simulatorPort = storage.get('simulator_port') || exports.DEFAULT_PORT;
92
92
  if (!!simulatorHost) return [3 /*break*/, 2];
93
93
  return [4 /*yield*/, inquirer_1["default"].prompt([
94
94
  {
95
95
  name: 'host',
96
96
  type: 'input',
97
- message: "simulator host (".concat(DEFAULT_HOST, "):")
97
+ message: "simulator host (".concat(exports.DEFAULT_HOST, "):")
98
98
  },
99
99
  {
100
100
  name: 'port',
101
101
  type: 'input',
102
- message: "simulator port (".concat(DEFAULT_PORT, "):")
102
+ message: "simulator port (".concat(exports.DEFAULT_PORT, "):")
103
103
  }
104
104
  ])];
105
105
  case 1:
106
106
  answer = _a.sent();
107
- simulatorHost = answer.host || DEFAULT_HOST;
108
- simulatorPort = answer.port || DEFAULT_PORT;
107
+ simulatorHost = answer.host || exports.DEFAULT_HOST;
108
+ simulatorPort = answer.port || exports.DEFAULT_PORT;
109
109
  storage.set('simulator_host', simulatorHost);
110
110
  storage.set('simulator_port', simulatorPort);
111
111
  _a.label = 2;
@@ -126,7 +126,7 @@ var run = function (args) { return __awaiter(void 0, void 0, void 0, function ()
126
126
  zpkBuffer = _a.sent();
127
127
  if (zpkBuffer) {
128
128
  logger.info('rebuild done');
129
- logger.info('refrshing simulator...');
129
+ logger.info('refreshing simulator...');
130
130
  targetDeviceInternalName = getDeviceInternalCodename(packages[0]);
131
131
  projectName = path.parse(process.cwd()).base;
132
132
  simulator.upload(zpkBuffer, projectName, targetDeviceInternalName);
@@ -22,6 +22,8 @@ exports.__esModule = true;
22
22
  exports.Simulator = void 0;
23
23
  var socket_io_client_1 = require("socket.io-client");
24
24
  var logger = __importStar(require("../utils/logger"));
25
+ var storage_1 = require("./storage");
26
+ var storage = new storage_1.Storage({ cmd: '' });
25
27
  var Simulator = /** @class */ (function () {
26
28
  function Simulator(url, options) {
27
29
  this.previewId = 1;
@@ -29,9 +31,11 @@ var Simulator = /** @class */ (function () {
29
31
  logger.info('connecting to simulator');
30
32
  this.socket = (0, socket_io_client_1.io)(url, options || {});
31
33
  this.socket.on('connect', function () {
34
+ storage.set('____simulator_connect_status', 'connected');
32
35
  logger.success('simulator connected');
33
36
  });
34
37
  this.socket.on('disconnect', function () {
38
+ storage.set('____simulator_connect_status', 'disconnected');
35
39
  logger.error('simulator disconnected, please restart the simulator');
36
40
  });
37
41
  }
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
22
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
23
+ return new (P || (P = Promise))(function (resolve, reject) {
24
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
25
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
26
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
27
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
28
+ });
29
+ };
30
+ var __generator = (this && this.__generator) || function (thisArg, body) {
31
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
32
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
33
+ function verb(n) { return function (v) { return step([n, v]); }; }
34
+ function step(op) {
35
+ if (f) throw new TypeError("Generator is already executing.");
36
+ while (_) try {
37
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
38
+ if (y = 0, t) op = [op[0] & 2, t.value];
39
+ switch (op[0]) {
40
+ case 0: case 1: t = op; break;
41
+ case 4: _.label++; return { value: op[1], done: false };
42
+ case 5: _.label++; y = op[1]; op = [0]; continue;
43
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
44
+ default:
45
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
46
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
47
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
48
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
49
+ if (t[2]) _.ops.pop();
50
+ _.trys.pop(); continue;
51
+ }
52
+ op = body.call(thisArg, _);
53
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
54
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
55
+ }
56
+ };
57
+ var __importDefault = (this && this.__importDefault) || function (mod) {
58
+ return (mod && mod.__esModule) ? mod : { "default": mod };
59
+ };
60
+ exports.__esModule = true;
61
+ exports.status = void 0;
62
+ var chalk_1 = __importDefault(require("chalk"));
63
+ var logger = __importStar(require("../utils/logger"));
64
+ var storage_1 = require("./storage");
65
+ var project_1 = require("../config/project");
66
+ var login_1 = require("../utils/login");
67
+ var run_1 = require("./run");
68
+ var status = function () { return __awaiter(void 0, void 0, void 0, function () {
69
+ var storage, apptoken, userid, cname, host, loginStatus, userInfo, _a, userName, simulatorHost, simulatorPort, simulatorConnectStatus;
70
+ return __generator(this, function (_b) {
71
+ switch (_b.label) {
72
+ case 0:
73
+ storage = new storage_1.Storage({ cmd: '' });
74
+ apptoken = storage.get(project_1.loginStorageKey.accountToken);
75
+ userid = storage.get(project_1.loginStorageKey.userid);
76
+ cname = storage.get(project_1.loginStorageKey.cname);
77
+ host = cname.split(',').filter(function (h) { return h.indexOf('api-mifit') > -1; })[0];
78
+ loginStatus = (apptoken && userid && cname) ? 'logged' : 'logout';
79
+ return [4 /*yield*/, (0, login_1.getUserInfo)(host, userid, apptoken)];
80
+ case 1:
81
+ userInfo = _b.sent();
82
+ _a = (userInfo || {}).userName, userName = _a === void 0 ? '' : _a;
83
+ simulatorHost = storage.get('simulator_host') || run_1.DEFAULT_HOST;
84
+ simulatorPort = storage.get('simulator_port') || run_1.DEFAULT_PORT;
85
+ simulatorConnectStatus = storage.get('____simulator_connect_status');
86
+ logger.log('login status:', chalk_1["default"].yellow(loginStatus));
87
+ if (loginStatus === 'logged') {
88
+ logger.log('nickName:', chalk_1["default"].yellow(userName));
89
+ logger.log('userID:', chalk_1["default"].yellow(userid));
90
+ }
91
+ logger.log('simulator connect status:', chalk_1["default"].yellow(simulatorConnectStatus ? simulatorConnectStatus : 'disconnected'));
92
+ logger.log('simulator host:', chalk_1["default"].yellow(simulatorHost));
93
+ logger.log('simulator port:', chalk_1["default"].yellow(simulatorPort));
94
+ return [2 /*return*/];
95
+ }
96
+ });
97
+ }); };
98
+ exports.status = status;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zeppos/zeus-cli",
3
- "version": "1.0.22",
3
+ "version": "1.0.24",
4
4
  "description": "zeus mini-program tools",
5
5
  "main": "index.js",
6
6
  "author": "zepp",
@@ -37,7 +37,7 @@
37
37
  "webpack": "^5.52.0"
38
38
  },
39
39
  "dependencies": {
40
- "@zeppos/zpm": "^2.1.48",
40
+ "@zeppos/zpm": "^2.1.49",
41
41
  "axios": "^0.23.0",
42
42
  "chalk": "^4.1.2",
43
43
  "chokidar": "^3.5.2",
@@ -46,6 +46,7 @@
46
46
  "findup-sync": "^4.0.0",
47
47
  "form-data": "^4.0.0",
48
48
  "fs-extra": "^10.0.0",
49
+ "get-port": "5.1.1",
49
50
  "inquirer": "^8.1.2",
50
51
  "lodash": "^4.17.21",
51
52
  "npm-keyword": "^6.1.0",
@@ -53,6 +54,7 @@
53
54
  "qrcode-terminal": "^0.12.0",
54
55
  "qs": "^6.10.1",
55
56
  "rd": "^2.0.1",
57
+ "shelljs": "^0.8.4",
56
58
  "socket.io-client": "^4.3.0",
57
59
  "update-notifier": "^5.1.0",
58
60
  "yargs": "^17.1.1",
@@ -1,32 +1,10 @@
1
1
  App({
2
- globalData: {
3
-
4
- },
2
+ globalData: {},
5
3
  onCreate(options) {
6
4
  console.log('app on create invoke')
7
5
  },
8
6
 
9
- onShow(options) {
10
- console.log('app on show invoke')
11
- },
12
-
13
- onHide(options) {
14
- console.log('app on hide invoke')
15
- },
16
-
17
7
  onDestroy(options) {
18
- console.log('app on destory invoke')
19
- },
20
-
21
- onError(error) {
22
- console.log('app on error invoke')
23
- },
24
-
25
- onPageNotFound(obj) {
26
- console.log('app on page not found invoke')
27
- },
28
-
29
- onUnhandledRejection(obj) {
30
- console.log('app on un handle rejection invoke')
8
+ console.log('app on destroy invoke')
31
9
  }
32
10
  })
@@ -1,32 +1,10 @@
1
1
  App({
2
- globalData: {
3
-
4
- },
2
+ globalData: {},
5
3
  onCreate(options) {
6
4
  console.log('app on create invoke')
7
5
  },
8
6
 
9
- onShow(options) {
10
- console.log('app on show invoke')
11
- },
12
-
13
- onHide(options) {
14
- console.log('app on hide invoke')
15
- },
16
-
17
7
  onDestroy(options) {
18
- console.log('app on destory invoke')
19
- },
20
-
21
- onError(error) {
22
- console.log('app on error invoke')
23
- },
24
-
25
- onPageNotFound(obj) {
26
- console.log('app on page not found invoke')
27
- },
28
-
29
- onUnhandledRejection(obj) {
30
- console.log('app on un handle rejection invoke')
8
+ console.log('app on destroy invoke')
31
9
  }
32
10
  })
@@ -1,16 +1,18 @@
1
- import { textStyle } from './index.style'
1
+ import { TEXT_STYLE } from './index.style'
2
2
 
3
3
  const logger = DeviceRuntimeCore.HmLogger.getLogger('helloworld')
4
4
  Page({
5
5
  build() {
6
6
  logger.debug('page build invoked')
7
- h.text(textStyle)
7
+ hmUI.createWidget(hmUI.widget.TEXT, {
8
+ ...TEXT_STYLE,
9
+ })
8
10
  },
9
11
  onInit() {
10
12
  logger.debug('page onInit invoked')
11
13
  },
12
14
 
13
- onDestory() {
14
- logger.debug('page onDestory invoked')
15
+ onDestroy() {
16
+ logger.debug('page onDestroy invoked')
15
17
  },
16
18
  })
@@ -1,32 +1,15 @@
1
1
  import { gettext } from "i18n"
2
- import { assets } from './../../../utils/index'
3
2
 
4
- const image = assets('image')
3
+ export const { width: DEVICE_WIDTH, height: DEVICE_HEIGHT } = hmSetting.getDeviceInfo()
5
4
 
6
- export const textStyle = {
7
- attrs: {
8
- text: gettext('appName')
9
- },
10
- styles: {
11
- x: 42,
12
- y: 246,
13
- w: 480 - 42 * 2,
14
- h: 138,
15
- color: 0xFFFFFF,
16
- text_size: 36,
17
- align_h: h.ALIGN.CENTER_H,
18
- text_style: hmUI.text_style.WRAP
19
- }
20
- }
21
-
22
- export const imageStyle = {
23
- attrs: {
24
- src: image('logo.png')
25
- },
26
- styles: {
27
- x: 115,
28
- y: 100,
29
- w: 250,
30
- h: 56,
31
- },
5
+ export const TEXT_STYLE = {
6
+ text: gettext('appName'),
7
+ x: px(42),
8
+ y: px(200),
9
+ w: DEVICE_WIDTH - px(42) * 2,
10
+ h: px(100),
11
+ color: 0xffffff,
12
+ text_size: px(36),
13
+ align_h: hmUI.align.CENTER_H,
14
+ text_style: hmUI.text_style.WRAP,
32
15
  }
@@ -1,16 +1,18 @@
1
- import { textStyle } from './index.style'
1
+ import { TEXT_STYLE } from './index.style'
2
2
 
3
3
  const logger = DeviceRuntimeCore.HmLogger.getLogger('helloworld')
4
4
  Page({
5
5
  build() {
6
6
  logger.debug('page build invoked')
7
- h.text(textStyle)
7
+ hmUI.createWidget(hmUI.widget.TEXT, {
8
+ ...TEXT_STYLE,
9
+ })
8
10
  },
9
11
  onInit() {
10
12
  logger.debug('page onInit invoked')
11
13
  },
12
14
 
13
- onDestory() {
14
- logger.debug('page onDestory invoked')
15
+ onDestroy() {
16
+ logger.debug('page onDestroy invoked')
15
17
  },
16
18
  })
@@ -1,32 +1,15 @@
1
1
  import { gettext } from "i18n"
2
- import { assets } from './../../../utils/index'
3
2
 
4
- const image = assets('image')
3
+ export const { width: DEVICE_WIDTH, height: DEVICE_HEIGHT } = hmSetting.getDeviceInfo()
5
4
 
6
- export const textStyle = {
7
- attrs: {
8
- text: gettext('appName')
9
- },
10
- styles: {
11
- x: 42,
12
- y: 246,
13
- w: 480 - 42 * 2,
14
- h: 138,
15
- color: 0xFFFFFF,
16
- text_size: 36,
17
- align_h: h.ALIGN.CENTER_H,
18
- text_style: hmUI.text_style.WRAP
19
- }
20
- }
21
-
22
- export const imageStyle = {
23
- attrs: {
24
- src: image('logo.png')
25
- },
26
- styles: {
27
- x: 115,
28
- y: 100,
29
- w: 250,
30
- h: 56,
31
- },
5
+ export const TEXT_STYLE = {
6
+ text: gettext('appName'),
7
+ x: px(42),
8
+ y: px(200),
9
+ w: DEVICE_WIDTH - px(42) * 2,
10
+ h: px(100),
11
+ color: 0xffffff,
12
+ text_size: px(36),
13
+ align_h: hmUI.align.CENTER_H,
14
+ text_style: hmUI.text_style.WRAP,
32
15
  }
@@ -1,16 +1,19 @@
1
- import { textStyle } from './index.style'
1
+ import { TEXT_STYLE } from './index.style'
2
2
 
3
3
  const logger = DeviceRuntimeCore.HmLogger.getLogger('helloworld')
4
+
4
5
  Page({
5
6
  build() {
6
7
  logger.debug('page build invoked')
7
- h.text(textStyle)
8
+ hmUI.createWidget(hmUI.widget.TEXT, {
9
+ ...TEXT_STYLE,
10
+ })
8
11
  },
9
12
  onInit() {
10
13
  logger.debug('page onInit invoked')
11
14
  },
12
15
 
13
- onDestory() {
14
- logger.debug('page onDestory invoked')
16
+ onDestroy() {
17
+ logger.debug('page onDestroy invoked')
15
18
  },
16
19
  })
@@ -1,32 +1,15 @@
1
1
  import { gettext } from "i18n"
2
- import { assets } from './../../../utils/index'
3
2
 
4
- const image = assets('image')
3
+ export const { width: DEVICE_WIDTH, height: DEVICE_HEIGHT } = hmSetting.getDeviceInfo()
5
4
 
6
- export const textStyle = {
7
- attrs: {
8
- text: gettext('appName')
9
- },
10
- styles: {
11
- x: 42,
12
- y: 246,
13
- w: 480 - 42 * 2,
14
- h: 138,
15
- color: 0xFFFFFF,
16
- text_size: 36,
17
- align_h: h.ALIGN.CENTER_H,
18
- text_style: hmUI.text_style.WRAP
19
- }
5
+ export const TEXT_STYLE = {
6
+ text: gettext('appName'),
7
+ x: 42,
8
+ y: 200,
9
+ w: DEVICE_WIDTH - 42 * 2,
10
+ h: 100,
11
+ color: 0xffffff,
12
+ text_size: 36,
13
+ align_h: hmUI.align.CENTER_H,
14
+ text_style: hmUI.text_style.WRAP,
20
15
  }
21
-
22
- export const imageStyle = {
23
- attrs: {
24
- src: image('logo.png')
25
- },
26
- styles: {
27
- x: 115,
28
- y: 100,
29
- w: 250,
30
- h: 56,
31
- },
32
- }
@@ -0,0 +1,14 @@
1
+ {
2
+ "compilerOptions": {
3
+ "module": "commonjs",
4
+ "target": "es6",
5
+ "checkJs": true
6
+ },
7
+ "exclude": [
8
+ "node_modules",
9
+ "**/node_modules/*"
10
+ ],
11
+ "files": [
12
+ "node_modules/@zeppos/device-types/index.d.ts"
13
+ ]
14
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "name": "empty",
3
+ "version": "1.0.0",
4
+ "description": "",
5
+ "main": "app.js",
6
+ "scripts": {
7
+ "test": "echo \"Error: no test specified\" && exit 1"
8
+ },
9
+ "author": "",
10
+ "license": "ISC",
11
+ "devDependencies": {
12
+ "@zeppos/device-types": "^1.0.0"
13
+ }
14
+ }
@@ -3,8 +3,5 @@ import './shared/device-polyfill'
3
3
  App({
4
4
  globalData: {},
5
5
  onCreate(options) {},
6
- onDestroy(options) {},
7
- onError(error) {},
8
- onPageNotFound(obj) {},
9
- onUnhandledRejection(obj) {},
6
+ onDestroy(options) {}
10
7
  })
@@ -432,7 +432,7 @@ WatchFace({
432
432
  this.init_view()
433
433
  },
434
434
 
435
- onDestory() {
436
- logger.log('index page.js on destory invoke')
435
+ onDestroy() {
436
+ logger.log('index page.js on destroy invoke')
437
437
  },
438
438
  })
package/utils/login.js ADDED
@@ -0,0 +1,126 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ exports.__esModule = true;
42
+ exports.getUserInfo = exports.loginByLocal = void 0;
43
+ var axios_1 = __importDefault(require("axios"));
44
+ var lodash_1 = __importDefault(require("lodash"));
45
+ var qs_1 = __importDefault(require("qs"));
46
+ var project_1 = require("../config/project");
47
+ var REGISTER_TEST_URL = 'https://api-mifit-staging.huami.com';
48
+ var REGISTER_PRO_URL = 'https://api-user.huami.com';
49
+ var CUR_REGISTER_URL = project_1.ACCOUNT_ENV === 'test' ? REGISTER_TEST_URL : REGISTER_PRO_URL;
50
+ var LOGIN_URL = 'https://account.huami.com';
51
+ var postForm = function (url, data) {
52
+ return (0, axios_1["default"])({
53
+ method: 'POST',
54
+ headers: {
55
+ 'content-type': 'application/x-www-form-urlencoded'
56
+ },
57
+ data: qs_1["default"].stringify(data),
58
+ url: url
59
+ });
60
+ };
61
+ var loginByLocal = function (account, password) { return __awaiter(void 0, void 0, void 0, function () {
62
+ var data, checkInfo, loginInfo;
63
+ return __generator(this, function (_a) {
64
+ switch (_a.label) {
65
+ case 0:
66
+ data = {
67
+ client_id: 'HuaMi',
68
+ country_code: 'zh-CN',
69
+ json_response: 'true',
70
+ name: '',
71
+ password: password,
72
+ phoneOrEmail: account,
73
+ redirect_uri: 'https://s3-us-west-2.amazonaws.com/hm-registration/successsignin.html',
74
+ state: 'REDIRECTION',
75
+ token: 'access'
76
+ };
77
+ if (/^[1][0-9]{10}$/.test(account)) {
78
+ data.phoneOrEmail = encodeURIComponent("+86".concat(account));
79
+ }
80
+ data.name = data.phoneOrEmail.split('@')[0];
81
+ return [4 /*yield*/, postForm("".concat(CUR_REGISTER_URL, "/registrations/").concat(data.phoneOrEmail, "/tokens"), data)];
82
+ case 1:
83
+ checkInfo = _a.sent();
84
+ return [4 /*yield*/, postForm("".concat(LOGIN_URL, "/v2/client/login"), {
85
+ app_name: 'com.huami.webapp',
86
+ app_version: '4.3.0',
87
+ code: lodash_1["default"].get(checkInfo, 'data.access', ''),
88
+ country_code: 'zh-cn',
89
+ device_id: '02:00:00:00:00:00',
90
+ device_model: 'web',
91
+ grant_type: 'access_token',
92
+ third_name: 'huami'
93
+ })];
94
+ case 2:
95
+ loginInfo = (_a.sent()).data;
96
+ return [2 /*return*/, loginInfo];
97
+ }
98
+ });
99
+ }); };
100
+ exports.loginByLocal = loginByLocal;
101
+ var getUserInfo = function (host, userid, apptoken) { return __awaiter(void 0, void 0, void 0, function () {
102
+ var userInfo, data, error_1;
103
+ return __generator(this, function (_a) {
104
+ switch (_a.label) {
105
+ case 0:
106
+ _a.trys.push([0, 2, , 3]);
107
+ return [4 /*yield*/, axios_1["default"].get("https://".concat(host, "/v1/soc/user/").concat(userid), {
108
+ headers: {
109
+ app_token: apptoken,
110
+ 'Content-Type': 'application/json',
111
+ user_id: userid,
112
+ app_name: 'com.huami.webapp'
113
+ }
114
+ })];
115
+ case 1:
116
+ userInfo = _a.sent();
117
+ data = userInfo.data.data;
118
+ return [2 /*return*/, data];
119
+ case 2:
120
+ error_1 = _a.sent();
121
+ return [3 /*break*/, 3];
122
+ case 3: return [2 /*return*/];
123
+ }
124
+ });
125
+ }); };
126
+ exports.getUserInfo = getUserInfo;