@zeppos/zeus-cli 1.0.18 → 1.0.26

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/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" + account);
103
- }
104
- data.name = data.phoneOrEmail.split('@')[0];
105
- return [4 /*yield*/, postForm(REGIST_URL + "/registrations/" + data.phoneOrEmail + "/tokens", data)];
106
- case 1:
107
- checkInfo = _a.sent();
108
- return [4 /*yield*/, postForm(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) {
@@ -142,7 +91,7 @@ var login = function (args) { return __awaiter(void 0, void 0, void 0, function
142
91
  {
143
92
  name: 'account',
144
93
  type: 'input',
145
- message: "Enter your account (Mobile/E-mail): " + (accountInfo ? "(" + accountInfo + ")" : '')
94
+ message: "Enter your account (Mobile/E-mail): ".concat(accountInfo ? "(".concat(accountInfo, ")") : '')
146
95
  },
147
96
  {
148
97
  name: 'password',
@@ -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
  })];
@@ -162,40 +111,49 @@ var login = function (args) { return __awaiter(void 0, void 0, void 0, function
162
111
  loginInfo_1 = _a.sent();
163
112
  token = lodash_1["default"].get(loginInfo_1, 'token_info.app_token');
164
113
  if (token) {
165
- logger.success("logged in with account: " + answer.account);
114
+ logger.success("logged in with account: ".concat(answer.account));
166
115
  storage.set(project_1.loginStorageKey.account, answer.account);
167
116
  storage.set(project_1.loginStorageKey.accountToken, token);
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(project_1.loginConfig.LOGIN_URL + "?project_name=" + project_1.loginConfig.PROJECT_NAME + "&platform_app=" + project_1.loginConfig.PLATFORM_APP + "&project_redirect_uri=" + 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,20 +58,22 @@ 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"));
65
65
  var path = __importStar(require("path"));
66
+ // import fsExtra from 'fs-extra'
66
67
  var inquirer_1 = __importDefault(require("inquirer"));
67
68
  var chokidar_1 = __importDefault(require("chokidar"));
69
+ // import * as compressing from 'compressing'
68
70
  var logger = __importStar(require("../utils/logger"));
69
71
  var build_1 = require("./build");
70
72
  var storage_1 = require("./storage");
71
73
  var simulator_1 = require("./simulator");
72
74
  var device_1 = require("../config/device");
73
- var DEFAULT_HOST = '127.0.0.1';
74
- var DEFAULT_PORT = '7650';
75
+ exports.DEFAULT_HOST = '127.0.0.1';
76
+ exports.DEFAULT_PORT = '7650';
75
77
  var getDeviceInternalCodename = function (curTarget) {
76
78
  var _a;
77
79
  var appJsonFilePath = path.resolve('./app.json');
@@ -86,24 +88,24 @@ var run = function (args) { return __awaiter(void 0, void 0, void 0, function ()
86
88
  case 0:
87
89
  storage = new storage_1.Storage({ cmd: lodash_1["default"].get(args, '$0') });
88
90
  simulatorHost = storage.get('simulator_host');
89
- simulatorPort = storage.get('simulator_port') || DEFAULT_PORT;
91
+ simulatorPort = storage.get('simulator_port') || exports.DEFAULT_PORT;
90
92
  if (!!simulatorHost) return [3 /*break*/, 2];
91
93
  return [4 /*yield*/, inquirer_1["default"].prompt([
92
94
  {
93
95
  name: 'host',
94
96
  type: 'input',
95
- message: "simulator host (" + DEFAULT_HOST + "):"
97
+ message: "simulator host (".concat(exports.DEFAULT_HOST, "):")
96
98
  },
97
99
  {
98
100
  name: 'port',
99
101
  type: 'input',
100
- message: "simulator port (" + DEFAULT_PORT + "):"
102
+ message: "simulator port (".concat(exports.DEFAULT_PORT, "):")
101
103
  }
102
104
  ])];
103
105
  case 1:
104
106
  answer = _a.sent();
105
- simulatorHost = answer.host || DEFAULT_HOST;
106
- simulatorPort = answer.port || DEFAULT_PORT;
107
+ simulatorHost = answer.host || exports.DEFAULT_HOST;
108
+ simulatorPort = answer.port || exports.DEFAULT_PORT;
107
109
  storage.set('simulator_host', simulatorHost);
108
110
  storage.set('simulator_port', simulatorPort);
109
111
  _a.label = 2;
@@ -112,7 +114,7 @@ var run = function (args) { return __awaiter(void 0, void 0, void 0, function ()
112
114
  return [4 /*yield*/, (0, build_1.chooseBuildPackages)()];
113
115
  case 3:
114
116
  packages = _a.sent();
115
- simulator = new simulator_1.Simulator("http://" + simulatorHost + ":" + simulatorPort);
117
+ simulator = new simulator_1.Simulator("http://".concat(simulatorHost, ":").concat(simulatorPort));
116
118
  refreshSimulator = lodash_1["default"].debounce(function () { return __awaiter(void 0, void 0, void 0, function () {
117
119
  var zpkBuffer, targetDeviceInternalName, projectName;
118
120
  return __generator(this, function (_a) {
@@ -124,9 +126,9 @@ var run = function (args) { return __awaiter(void 0, void 0, void 0, function ()
124
126
  zpkBuffer = _a.sent();
125
127
  if (zpkBuffer) {
126
128
  logger.info('rebuild done');
127
- logger.info('refrshing simulator...');
129
+ logger.info('refreshing simulator...');
128
130
  targetDeviceInternalName = getDeviceInternalCodename(packages[0]);
129
- projectName = process.cwd().split('/').slice(-1)[0];
131
+ projectName = path.parse(process.cwd()).base;
130
132
  simulator.upload(zpkBuffer, projectName, targetDeviceInternalName);
131
133
  }
132
134
  else {
@@ -161,7 +163,7 @@ var run = function (args) { return __awaiter(void 0, void 0, void 0, function ()
161
163
  // }
162
164
  if (!hasStarted) {
163
165
  hasStarted = true;
164
- logger.log(chalk_1["default"].green("[" + args['$0'] + "] watching the changes in this project..."));
166
+ logger.log(chalk_1["default"].green("[".concat(args['$0'], "] watching the changes in this project...")));
165
167
  }
166
168
  return [2 /*return*/];
167
169
  }
@@ -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;
@@ -26,7 +26,7 @@ var Storage = /** @class */ (function () {
26
26
  this._dataTime = 0;
27
27
  var homePath = os_1["default"].homedir();
28
28
  var cmdName = 'zeus';
29
- this._filePath = path_1["default"].resolve(homePath, ".zepp/." + cmdName);
29
+ this._filePath = path_1["default"].resolve(homePath, ".zepp/.".concat(cmdName));
30
30
  this._dataTimeout = timeout || 1000 * 60;
31
31
  this._dataEditTimeout = editTimeout || 1000;
32
32
  this._data = {};
@@ -49,7 +49,7 @@ var Storage = /** @class */ (function () {
49
49
  var _this = this;
50
50
  var dotenvArray = [];
51
51
  Object.keys(this._data).forEach(function (key) {
52
- dotenvArray.push(key + "=" + _this._data[key]);
52
+ dotenvArray.push("".concat(key, "=").concat(_this._data[key]));
53
53
  });
54
54
  fs_1["default"].writeFileSync(this._filePath, dotenvArray.join('\n'));
55
55
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zeppos/zeus-cli",
3
- "version": "1.0.18",
3
+ "version": "1.0.26",
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
  })
@@ -124,7 +124,7 @@
124
124
  },
125
125
  "i18n": {
126
126
  "en-US": {
127
- "name": "Hello World"
127
+ "appName": "Hello World"
128
128
  }
129
129
  },
130
130
  "defaultLanguage": "en-US"
@@ -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
  }