hunter-open-sdk 1.0.2 → 1.0.3

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.
@@ -19,10 +19,6 @@ var Sentry = require("@sentry/browser");
19
19
  // saas回调
20
20
  var saasCallBack;
21
21
 
22
- // 驱动安装状态
23
- var isDriverInstalling = false;
24
- var isDriverReady = false;
25
-
26
22
  // usb监听
27
23
  var usbListener = null;
28
24
 
@@ -202,146 +198,124 @@ var updateDllFileCheck = function updateDllFileCheck() {
202
198
  * 检查并安装驱动
203
199
  */
204
200
  var checkAndInstallDriver = function checkAndInstallDriver() {
205
- if (!(0, _utils.isWin)()) {
206
- isDriverReady = true; // Mac不需要驱动,直接设置为就绪
207
- return;
208
- }
209
- (0, _winDriver.checkHasDriver)().then(function (res) {
210
- if (res) {
211
- isDriverReady = true; // 已有驱动,设置为就绪
201
+ return new Promise(function (resolve, reject) {
202
+ if (!(0, _utils.isWin)()) {
203
+ resolve();
212
204
  return;
213
205
  }
214
-
215
- // 没有驱动,开始下载安装
216
- isDriverInstalling = true;
217
- (0, _winDriver.downloadDriver)(function (percent) {
218
- saasCallBack({
219
- data: {
220
- eventName: 'type_need_install_driver',
221
- eventCode: 0,
222
- eventContent: JSON.stringify({
223
- percent: percent // 下载进度
224
- })
225
- }
226
- });
227
- }).then(function () {
228
- // 成功
229
- console.log('驱动下载并安装成功');
230
- isDriverInstalling = false;
231
- isDriverReady = true;
232
- saasCallBack({
233
- data: {
234
- eventName: 'type_install_driver_result',
235
- eventCode: 0 // 0 成功 -1 失败
236
- }
206
+ (0, _winDriver.checkHasDriver)().then(function (res) {
207
+ if (res) {
208
+ resolve();
209
+ return;
210
+ }
211
+ (0, _winDriver.downloadDriver)(function (percent) {
212
+ saasCallBack({
213
+ data: {
214
+ eventName: 'type_need_install_driver',
215
+ eventCode: 0,
216
+ eventContent: JSON.stringify({
217
+ percent: percent // 下载进度
218
+ })
219
+ }
220
+ });
221
+ }).then(function () {
222
+ // 成功
223
+ console.log('驱动下载并安装成功');
224
+ saasCallBack({
225
+ data: {
226
+ eventName: 'type_install_driver_result',
227
+ eventCode: 0 // 0 成功 -1 失败
228
+ }
229
+ });
230
+ resolve();
231
+ }).catch(function (err) {
232
+ // 失败
233
+ console.error('驱动下载或安装失败', err);
234
+ Sentry.captureException('驱动下载或安装失败:' + JSON.stringify(err));
235
+ saasCallBack({
236
+ data: {
237
+ eventName: 'type_install_driver_result',
238
+ eventCode: -1 // 0 成功 -1 失败
239
+ }
240
+ });
241
+ reject();
237
242
  });
238
243
  }).catch(function (err) {
239
- // 失败
240
- console.error('驱动下载或安装失败', err);
241
- Sentry.captureException('驱动下载或安装失败:' + JSON.stringify(err));
242
- isDriverInstalling = false;
243
- saasCallBack({
244
- data: {
245
- eventName: 'type_install_driver_result',
246
- eventCode: -1 // 0 成功 -1 失败
247
- }
248
- });
244
+ console.error('驱动检测失败', err);
245
+ Sentry.captureException('驱动检测失败:' + JSON.stringify(err));
246
+ reject();
249
247
  });
250
- }).catch(function (err) {
251
- console.error('驱动检测失败', err);
252
- Sentry.captureException('驱动检测失败:' + JSON.stringify(err));
253
248
  });
254
249
  };
255
- var RegisterEvent = exports.RegisterEvent = function RegisterEvent(params, callBack) {
256
- saasCallBack = callBack;
250
+ var RegisterEvent = exports.RegisterEvent = /*#__PURE__*/function () {
251
+ var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(params, callBack) {
252
+ return _regenerator.default.wrap(function _callee3$(_context3) {
253
+ while (1) switch (_context3.prev = _context3.next) {
254
+ case 0:
255
+ saasCallBack = callBack;
257
256
 
258
- // 检查是否需要更新dll
259
- updateDllFileCheck();
257
+ // 检查是否需要更新dll
258
+ updateDllFileCheck();
260
259
 
261
- // 在插线之前就检测驱动状态
262
- checkAndInstallDriver();
263
- usbListener = new usbmux.createListener().on('attached', /*#__PURE__*/function () {
264
- var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(udid) {
265
- return _regenerator.default.wrap(function _callee2$(_context2) {
266
- while (1) switch (_context2.prev = _context2.next) {
267
- case 0:
268
- if (udid) {
269
- _context2.next = 2;
270
- break;
271
- }
272
- return _context2.abrupt("return");
273
- case 2:
274
- // 插入设备通知
260
+ // 在插线之前就检测驱动状态
261
+ _context3.next = 4;
262
+ return checkAndInstallDriver();
263
+ case 4:
264
+ usbListener = new usbmux.createListener().on('attached', /*#__PURE__*/function () {
265
+ var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(udid) {
266
+ return _regenerator.default.wrap(function _callee2$(_context2) {
267
+ while (1) switch (_context2.prev = _context2.next) {
268
+ case 0:
269
+ if (udid) {
270
+ _context2.next = 2;
271
+ break;
272
+ }
273
+ return _context2.abrupt("return");
274
+ case 2:
275
+ // 插入设备通知
276
+ saasCallBack({
277
+ data: {
278
+ eventName: 'type_usb_device_result',
279
+ udid: udid,
280
+ eventCode: 0
281
+ }
282
+ });
283
+ // 有驱动,直接运行脚本
284
+ DevicePair(udid, params);
285
+ case 4:
286
+ case "end":
287
+ return _context2.stop();
288
+ }
289
+ }, _callee2);
290
+ }));
291
+ return function (_x3) {
292
+ return _ref3.apply(this, arguments);
293
+ };
294
+ }()).on('detached', function (udid) {
295
+ // 拔出设备
275
296
  saasCallBack({
276
297
  data: {
277
298
  eventName: 'type_usb_device_result',
278
299
  udid: udid,
279
- eventCode: 0
300
+ eventCode: -1
280
301
  }
281
302
  });
282
- if ((0, _utils.isWin)()) {
283
- // windows检查驱动 mac不需要
284
- // 检查驱动是否就绪
285
- if (isDriverReady) {
286
- // 驱动就绪,直接进行配对
287
- DevicePair(udid, params);
288
- } else if (isDriverInstalling) {
289
- // 驱动正在安装中,通知用户等待
290
- saasCallBack({
291
- data: {
292
- eventName: 'type_usb_device_result',
293
- udid: udid,
294
- eventCode: -2,
295
- // -2 表示驱动安装中,请等待
296
- eventContent: JSON.stringify({
297
- message: '驱动正在安装中,请稍后重试'
298
- })
299
- }
300
- });
301
- } else {
302
- // 驱动未安装,重新触发安装流程
303
- checkAndInstallDriver();
304
- saasCallBack({
305
- data: {
306
- eventName: 'type_usb_device_result',
307
- udid: udid,
308
- eventCode: -3,
309
- // -3 表示需要安装驱动
310
- eventContent: JSON.stringify({
311
- message: '需要安装驱动,正在处理中'
312
- })
313
- }
314
- });
315
- }
316
- } else {
317
- // 有驱动,直接运行脚本
318
- DevicePair(udid, params);
319
- }
320
- case 4:
321
- case "end":
322
- return _context2.stop();
323
- }
324
- }, _callee2);
325
- }));
326
- return function (_x) {
327
- return _ref2.apply(this, arguments);
328
- };
329
- }()).on('detached', function (udid) {
330
- // 拔出设备
331
- saasCallBack({
332
- data: {
333
- eventName: 'type_usb_device_result',
334
- udid: udid,
335
- eventCode: -1
303
+ }).on('error', function (err) {
304
+ console.log('usb连接错误:', err);
305
+ Sentry.captureException('usb连接错误:' + JSON.stringify(err));
306
+ var errMsg = "usb\u8FDE\u63A5\u9519\u8BEF\uFF1A".concat(err);
307
+ throw new Error(errMsg);
308
+ });
309
+ case 5:
310
+ case "end":
311
+ return _context3.stop();
336
312
  }
337
- });
338
- }).on('error', function (err) {
339
- console.log('usb连接错误:', err);
340
- Sentry.captureException('usb连接错误:' + JSON.stringify(err));
341
- var errMsg = "usb\u8FDE\u63A5\u9519\u8BEF\uFF1A".concat(err);
342
- throw new Error(errMsg);
343
- });
344
- };
313
+ }, _callee3);
314
+ }));
315
+ return function RegisterEvent(_x, _x2) {
316
+ return _ref2.apply(this, arguments);
317
+ };
318
+ }();
345
319
  var UnregisterEvent = exports.UnregisterEvent = function UnregisterEvent() {
346
320
  usbListener && usbListener.destroy();
347
321
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hunter-open-sdk",
3
- "version": "1.0.2",
3
+ "version": "1.0.3",
4
4
  "description": "采货侠SaaS版本桌面端sdk",
5
5
  "scripts": {
6
6
  "start": "zz dev",