@zeppos/zeus-cli 1.0.16 → 1.0.18

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/config/project.js CHANGED
@@ -36,5 +36,7 @@ exports.loginConfig = {
36
36
  };
37
37
  exports.loginStorageKey = {
38
38
  accountToken: accountPrefix + "token",
39
- account: accountPrefix + "account"
39
+ account: accountPrefix + "account",
40
+ userid: accountPrefix + "userid",
41
+ cname: accountPrefix + "cname"
40
42
  };
package/modules/build.js CHANGED
@@ -77,7 +77,6 @@ var rd = __importStar(require("rd"));
77
77
  var path = __importStar(require("path"));
78
78
  var lodash_1 = __importDefault(require("lodash"));
79
79
  var axios_1 = __importDefault(require("axios"));
80
- var url_1 = require("url");
81
80
  var fs_extra_1 = __importDefault(require("fs-extra"));
82
81
  var form_data_1 = __importDefault(require("form-data"));
83
82
  var qrcode_terminal_1 = __importDefault(require("qrcode-terminal"));
@@ -86,7 +85,6 @@ var login_1 = require("./login");
86
85
  var logger = __importStar(require("../utils/logger"));
87
86
  var storage_1 = require("./storage");
88
87
  var project_1 = require("../config/project");
89
- var STUDIO_URL = 'https://studio.huami.com';
90
88
  var BuildMode;
91
89
  (function (BuildMode) {
92
90
  BuildMode["DEV"] = "development";
@@ -195,29 +193,25 @@ var checkIsWatchFaceProject = function () {
195
193
  return appType === project_1.AppType.WATCHFACE;
196
194
  };
197
195
  var buildPreview = function (args) { return __awaiter(void 0, void 0, void 0, function () {
198
- var storage, isWatchFaceProject, userToken, form, buildInfo;
199
- return __generator(this, function (_a) {
200
- switch (_a.label) {
196
+ var storage, isWatchFaceProject, _a, apptoken, userid, cname, form, buildInfo;
197
+ return __generator(this, function (_b) {
198
+ switch (_b.label) {
201
199
  case 0:
202
200
  storage = new storage_1.Storage({ cmd: lodash_1["default"].get(args, '$0') });
203
201
  isWatchFaceProject = checkIsWatchFaceProject();
204
- // TODO: preview 支持打包表盘
205
- if (isWatchFaceProject) {
206
- logger.info('coming soon');
207
- return [2 /*return*/];
208
- }
209
202
  return [4 /*yield*/, (0, login_1.login)(args)];
210
203
  case 1:
211
- userToken = _a.sent();
204
+ _a = _b.sent(), apptoken = _a.apptoken, userid = _a.userid, cname = _a.cname;
212
205
  form = new form_data_1["default"]();
213
206
  logger.info('building preview...');
214
207
  return [4 /*yield*/, (0, exports.build)(BuildMode.PREVIEW)];
215
208
  case 2:
216
- buildInfo = _a.sent();
209
+ buildInfo = _b.sent();
217
210
  logger.info('getting preview package...');
218
- form.append('uploadFile', fs_1["default"].createReadStream("./dist/" + buildInfo));
211
+ form.append('file', fs_1["default"].createReadStream("./dist/" + buildInfo));
212
+ form.append('app_type', isWatchFaceProject ? '1' : '2');
219
213
  form.getLength(function (err, length) { return __awaiter(void 0, void 0, void 0, function () {
220
- var previewInfo, _a, prtcl, path, studioUrl;
214
+ var host, previewInfo, _a, protocol, code;
221
215
  return __generator(this, function (_b) {
222
216
  switch (_b.label) {
223
217
  case 0:
@@ -226,15 +220,15 @@ var buildPreview = function (args) { return __awaiter(void 0, void 0, void 0, fu
226
220
  return [2 /*return*/];
227
221
  }
228
222
  logger.info('generating preview qrcode...');
229
- return [4 /*yield*/, axios_1["default"].post(STUDIO_URL + "/upload/package/preview", form, {
230
- headers: __assign(__assign({}, form.getHeaders()), { 'content-length': "" + length, apptoken: userToken })
223
+ host = cname.split(',').filter(function (h) { return h.indexOf('api-mifit') > -1; })[0];
224
+ return [4 /*yield*/, axios_1["default"].post("https://" + host + "/custom/tools/app-dial/upload?userid=" + userid, form, {
225
+ headers: __assign(__assign({}, form.getHeaders()), { 'content-length': "" + length, apptoken: apptoken })
231
226
  })];
232
227
  case 1:
233
228
  previewInfo = _b.sent();
234
- _a = lodash_1["default"].get(previewInfo, 'data.data', {}), prtcl = _a.prtcl, path = _a.path;
235
- if (prtcl && path) {
236
- studioUrl = new url_1.URL(STUDIO_URL);
237
- qrcode_terminal_1["default"].generate(prtcl + "://" + studioUrl.host + path, { small: true });
229
+ _a = lodash_1["default"].get(previewInfo, 'data', {}), protocol = _a.protocol, code = _a.code;
230
+ if (protocol && code) {
231
+ qrcode_terminal_1["default"].generate(protocol + "://" + host + "/custom/tools/app-dial/download/" + code, { small: true });
238
232
  logger.success('please use Zepp APP to scan the qrcode below to preview your app.');
239
233
  }
240
234
  else {
package/modules/login.js CHANGED
@@ -122,17 +122,19 @@ var loginByLocal = function (account, password) { return __awaiter(void 0, void
122
122
  });
123
123
  }); };
124
124
  var login = function (args) { return __awaiter(void 0, void 0, void 0, function () {
125
- var storage, accountInfo, historyToken, isLocal, answer, loginInfo, token_1, token;
125
+ var storage, accountInfo, apptoken, userid, cname, isLocal, answer, loginInfo_1, token, loginInfo;
126
126
  return __generator(this, function (_a) {
127
127
  switch (_a.label) {
128
128
  case 0:
129
129
  storage = new storage_1.Storage({ cmd: lodash_1["default"].get(args, '$0') });
130
130
  accountInfo = storage.get(project_1.loginStorageKey.account);
131
- historyToken = storage.get(project_1.loginStorageKey.accountToken);
132
- if (!lodash_1["default"].get(args, 'relogin') && historyToken) {
131
+ apptoken = storage.get(project_1.loginStorageKey.accountToken);
132
+ userid = storage.get(project_1.loginStorageKey.userid);
133
+ cname = storage.get(project_1.loginStorageKey.cname);
134
+ if (!lodash_1["default"].get(args, 'relogin') && apptoken && userid && cname) {
133
135
  // logger.success(`have logged in with account: ${accountInfo}`)
134
136
  logger.success("Has logged");
135
- return [2 /*return*/, historyToken];
137
+ return [2 /*return*/, { apptoken: apptoken, userid: userid, cname: cname }];
136
138
  }
137
139
  isLocal = false;
138
140
  if (!isLocal) return [3 /*break*/, 3];
@@ -157,12 +159,12 @@ var login = function (args) { return __awaiter(void 0, void 0, void 0, function
157
159
  process.exit(1);
158
160
  })];
159
161
  case 2:
160
- loginInfo = _a.sent();
161
- token_1 = lodash_1["default"].get(loginInfo, 'token_info.app_token');
162
- if (token_1) {
162
+ loginInfo_1 = _a.sent();
163
+ token = lodash_1["default"].get(loginInfo_1, 'token_info.app_token');
164
+ if (token) {
163
165
  logger.success("logged in with account: " + answer.account);
164
166
  storage.set(project_1.loginStorageKey.account, answer.account);
165
- storage.set(project_1.loginStorageKey.accountToken, token_1);
167
+ storage.set(project_1.loginStorageKey.accountToken, token);
166
168
  }
167
169
  _a.label = 3;
168
170
  case 3: return [4 /*yield*/, new Promise(function (resolve) { return __awaiter(void 0, void 0, void 0, function () {
@@ -173,13 +175,15 @@ var login = function (args) { return __awaiter(void 0, void 0, void 0, function
173
175
  server = http.createServer(function (req, res) {
174
176
  var arg = url.parse(req.url).query;
175
177
  var params = querystring.parse(arg);
176
- var appToken = params['apptoken'];
178
+ var apptoken = params.apptoken, userid = params.userid, cname = params.cname;
177
179
  res.statusCode = 200;
178
180
  res.setHeader('Content-Type', 'text/plain');
179
181
  res.end('Login is successful, please return to the operation interface manually');
180
- if (appToken) {
181
- resolve(appToken);
182
- storage.set(project_1.loginStorageKey.accountToken, appToken);
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);
183
187
  logger.success('logger success');
184
188
  server.close();
185
189
  // 在执行 preview 命令需要登录时不退出程序
@@ -199,8 +203,8 @@ var login = function (args) { return __awaiter(void 0, void 0, void 0, function
199
203
  });
200
204
  }); })];
201
205
  case 4:
202
- token = _a.sent();
203
- return [2 /*return*/, token];
206
+ loginInfo = _a.sent();
207
+ return [2 /*return*/, loginInfo];
204
208
  }
205
209
  });
206
210
  }); };
@@ -209,6 +213,8 @@ var logout = function () {
209
213
  var storage = new storage_1.Storage({ cmd: '' });
210
214
  storage["delete"](project_1.loginStorageKey.accountToken);
211
215
  storage["delete"](project_1.loginStorageKey.account);
216
+ storage["delete"](project_1.loginStorageKey.userid);
217
+ storage["delete"](project_1.loginStorageKey.cname);
212
218
  logger.success('Logged out');
213
219
  };
214
220
  exports.logout = logout;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zeppos/zeus-cli",
3
- "version": "1.0.16",
3
+ "version": "1.0.18",
4
4
  "description": "zeus mini-program tools",
5
5
  "main": "index.js",
6
6
  "author": "zepp",