@onekeyfe/hd-core 1.2.0-alpha.73 → 1.2.0-alpha.74

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.
@@ -2,8 +2,8 @@ import { EDeviceType, EFirmwareType } from '@onekeyfe/hd-shared';
2
2
 
3
3
  import { buildFirmwareUpdatePlan } from '../../src/api/firmware/FirmwareUpdatePlan';
4
4
  import {
5
- assertFirmwareUpdatePreparedPlanDeviceIdentity,
6
5
  assertFirmwareUpdatePreparedPlanBinding,
6
+ assertFirmwareUpdatePreparedPlanDeviceIdentity,
7
7
  prepareFirmwareUpdatePlan,
8
8
  validateFirmwareUpdatePreparedPlan,
9
9
  } from '../../src/api/firmware/FirmwareUpdatePreparedPlan';
@@ -1,7 +1,8 @@
1
1
  import FirmwareUpdateV3 from '../../src/api/FirmwareUpdateV3';
2
- import type { Device } from '../../src/device/Device';
3
2
  import { DevicePool } from '../../src/device/DevicePool';
4
3
 
4
+ import type { Device } from '../../src/device/Device';
5
+
5
6
  jest.mock('../../src/data/config', () => ({
6
7
  getSDKVersion: jest.fn(() => '1.0.0'),
7
8
  DEFAULT_DOMAIN: 'https://jssdk.onekey.so/1.0.0/',
@@ -1 +1 @@
1
- {"version":3,"file":"FirmwareUpdateV4.d.ts","sourceRoot":"","sources":["../../src/api/FirmwareUpdateV4.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAkD,MAAM,qBAAqB,CAAC;AAyBlG,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;AAwB/E,OAAO,KAAK,EAEV,sBAAsB,EAEvB,MAAM,6BAA6B,CAAC;AA2CrC,wBAAgB,wCAAwC,CACtD,UAAU,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS,EAC5C,MAAM,EAAE,sBAAsB,QAgB/B;AAgUD,eAAO,MAAM,oCAAoC,WACvC,WAAW,GAAG,UAAU,eACnB,MAAM,GAAG,SAAS,YAKhC,CAAC;AAEF,eAAO,MAAM,iCAAiC,0BACrB,MAAM,uBACR,MAAM,iBACZ,MAAM,eACR,MAAM,SAsBpB,CAAC;AAUF,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,wBAAwB,CAAC,sBAAsB,CAAC;IAC5F,OAAO,CAAC,8BAA8B,CAAC,CAAS;IAEhD,OAAO,CAAC,sBAAsB,CAAC,CAAS;IAExC,qBAAqB;IAIrB,OAAO,CAAC,yBAAyB,CAA4B;IAE7D,OAAO,CAAC,2BAA2B,CAAS;IAE5C,OAAO,CAAC,iCAAiC,CAA6B;IAEtE,OAAO,CAAC,6BAA6B,CAAC,CAAW;IAEjD,OAAO,CAAC,6BAA6B,CAAS;IAE9C,IAAI;IAoHJ,OAAO,CAAC,8BAA8B;IAwBhC,GAAG;;;;;YAKK,aAAa;YAwHb,4BAA4B;YAkB5B,0BAA0B;YAY1B,8BAA8B;YAK9B,+BAA+B;YAqD/B,gCAAgC;YAmDhC,8BAA8B;IAsB5C,OAAO,CAAC,8BAA8B;IA0BtC,OAAO,CAAC,kCAAkC;IAc1C,OAAO,CAAC,gCAAgC;IAsDxC,OAAO,CAAC,6BAA6B;YAsBvB,2BAA2B;IAWzC,OAAO,CAAC,yBAAyB;IAKjC,OAAO,CAAC,kCAAkC;IAS1C,OAAO,CAAC,8BAA8B;YAMxB,iCAAiC;YAOjC,iCAAiC;YAkBjC,iCAAiC;IAM/C,OAAO,CAAC,uBAAuB;IAI/B,OAAO,CAAC,4BAA4B;IAQpC,OAAO,CAAC,2BAA2B;IAsBnC,OAAO,CAAC,yBAAyB;IAiBjC,OAAO,CAAC,wBAAwB;YAkBlB,iCAAiC;YAmCjC,+BAA+B;IAqD7C,OAAO,CAAC,uBAAuB;YAMjB,8BAA8B;YA0C9B,+BAA+B;IAgD7C,OAAO,CAAC,8BAA8B;IAetC,OAAO,CAAC,sCAAsC;YAmChC,gCAAgC;YAqChC,0BAA0B;IAexC,OAAO,CAAC,6BAA6B;YAMvB,8BAA8B;YA8C9B,kCAAkC;IAgChD,OAAO,CAAC,0BAA0B;IAUlC,OAAO,CAAC,yBAAyB;IAc3B,6BAA6B;YAgCrB,+BAA+B;IAkD7C,OAAO,CAAC,6BAA6B;IAkCrC,OAAO,CAAC,8BAA8B;YA8CxB,uBAAuB;YAiCvB,6BAA6B;YAa7B,uBAAuB;YA0CvB,8BAA8B;YA2D9B,6BAA6B;IAuE3C,OAAO,CAAC,mCAAmC;YAI7B,0BAA0B;IAaxC,OAAO,CAAC,4BAA4B;IAyGpC,OAAO,CAAC,6BAA6B;YAcvB,uCAAuC;YA0JvC,gCAAgC;YAehC,yBAAyB;YAQzB,8BAA8B;IAQ5C,OAAO,CAAC,0BAA0B;YAkBpB,mCAAmC;YAWnC,qCAAqC;YAgDrC,yBAAyB;YA8DzB,8BAA8B;IAU5C,OAAO,CAAC,kCAAkC;YAQ5B,cAAc;YAuCd,6BAA6B;YAW7B,0BAA0B;YAS1B,6BAA6B;YAmB7B,gBAAgB;IAiB9B,OAAO,CAAC,qBAAqB;CAM9B"}
1
+ {"version":3,"file":"FirmwareUpdateV4.d.ts","sourceRoot":"","sources":["../../src/api/FirmwareUpdateV4.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAkD,MAAM,qBAAqB,CAAC;AAyBlG,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;AAwB/E,OAAO,KAAK,EAEV,sBAAsB,EAEvB,MAAM,6BAA6B,CAAC;AA+CrC,wBAAgB,wCAAwC,CACtD,UAAU,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS,EAC5C,MAAM,EAAE,sBAAsB,QAgB/B;AAgUD,eAAO,MAAM,oCAAoC,WACvC,WAAW,GAAG,UAAU,eACnB,MAAM,GAAG,SAAS,YAKhC,CAAC;AAEF,eAAO,MAAM,iCAAiC,0BACrB,MAAM,uBACR,MAAM,iBACZ,MAAM,eACR,MAAM,SAsBpB,CAAC;AAUF,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,wBAAwB,CAAC,sBAAsB,CAAC;IAC5F,OAAO,CAAC,8BAA8B,CAAC,CAAS;IAEhD,OAAO,CAAC,sBAAsB,CAAC,CAAS;IAExC,qBAAqB;IAIrB,OAAO,CAAC,yBAAyB,CAA4B;IAE7D,OAAO,CAAC,2BAA2B,CAAS;IAE5C,OAAO,CAAC,iCAAiC,CAA6B;IAEtE,OAAO,CAAC,6BAA6B,CAAC,CAAW;IAEjD,OAAO,CAAC,6BAA6B,CAAS;IAE9C,IAAI;IAoHJ,OAAO,CAAC,8BAA8B;IAwBhC,GAAG;;;;;YAKK,aAAa;YAwHb,4BAA4B;YAkB5B,0BAA0B;YAY1B,8BAA8B;YAK9B,+BAA+B;YAqD/B,gCAAgC;YAmDhC,8BAA8B;IAsB5C,OAAO,CAAC,8BAA8B;IA0BtC,OAAO,CAAC,kCAAkC;IAc1C,OAAO,CAAC,gCAAgC;IAsDxC,OAAO,CAAC,6BAA6B;YAsBvB,2BAA2B;IAWzC,OAAO,CAAC,yBAAyB;IAKjC,OAAO,CAAC,kCAAkC;IAS1C,OAAO,CAAC,8BAA8B;YAMxB,iCAAiC;YAOjC,iCAAiC;YAkBjC,iCAAiC;IAM/C,OAAO,CAAC,uBAAuB;IAI/B,OAAO,CAAC,4BAA4B;IAQpC,OAAO,CAAC,2BAA2B;IAsBnC,OAAO,CAAC,yBAAyB;IAiBjC,OAAO,CAAC,wBAAwB;YAkBlB,iCAAiC;YAmCjC,+BAA+B;IAqD7C,OAAO,CAAC,uBAAuB;YAMjB,8BAA8B;YA0C9B,+BAA+B;IAgD7C,OAAO,CAAC,8BAA8B;IAetC,OAAO,CAAC,sCAAsC;YAmChC,gCAAgC;YAqChC,0BAA0B;IAexC,OAAO,CAAC,6BAA6B;YAMvB,8BAA8B;YA8C9B,kCAAkC;IAgChD,OAAO,CAAC,0BAA0B;IAUlC,OAAO,CAAC,yBAAyB;IAc3B,6BAA6B;YAgCrB,+BAA+B;IAkD7C,OAAO,CAAC,6BAA6B;IAkCrC,OAAO,CAAC,8BAA8B;YA8CxB,uBAAuB;YAiCvB,6BAA6B;YAa7B,uBAAuB;YA0CvB,8BAA8B;YA2D9B,6BAA6B;IAuE3C,OAAO,CAAC,mCAAmC;YAI7B,0BAA0B;IAaxC,OAAO,CAAC,4BAA4B;IAyGpC,OAAO,CAAC,6BAA6B;YAcvB,uCAAuC;YA0JvC,gCAAgC;YAehC,yBAAyB;YAQzB,8BAA8B;IAQ5C,OAAO,CAAC,0BAA0B;YAkBpB,mCAAmC;YAWnC,qCAAqC;YAgDrC,yBAAyB;YA8DzB,8BAA8B;IAU5C,OAAO,CAAC,kCAAkC;YAQ5B,cAAc;YAuCd,6BAA6B;YAW7B,0BAA0B;YAS1B,6BAA6B;YAmB7B,gBAAgB;IAiB9B,OAAO,CAAC,qBAAqB;CAM9B"}
package/dist/index.js CHANGED
@@ -50925,6 +50925,7 @@ const INSTALLABLE_FIRMWARE_TARGET_IDS = new Set([
50925
50925
  new Map(Object.entries(ProtocolV2FirmwareTargetType).flatMap(([key, value]) => INSTALLABLE_FIRMWARE_TARGET_IDS.has(value) ? [[key, value]] : []));
50926
50926
 
50927
50927
  const Log$6 = getLogger(exports.LoggerNames.Method);
50928
+ const SESSION_ERROR$1 = 'session not found';
50928
50929
  const PROTOCOL_V2_BOOTLOADER_RECONNECT_TIMEOUT = 90 * 1000;
50929
50930
  const PROTOCOL_V2_FINAL_RECONNECT_TIMEOUT = 3 * 60 * 1000;
50930
50931
  const PROTOCOL_V2_SHORT_RESPONSE_TIMEOUT = 5 * 1000;
@@ -51295,7 +51296,7 @@ class FirmwareUpdateV4 extends FirmwareUpdateBaseMethod {
51295
51296
  resourceBundleArtifacts: payload.resourceBundleArtifacts,
51296
51297
  };
51297
51298
  }
51298
- getProtocolV2FirmwareChunkSize(direction = 'write', filePath) {
51299
+ getProtocolV2FirmwareChunkSize(direction, filePath) {
51299
51300
  var _a, _b;
51300
51301
  const payloadChunkSize = Number((_a = this.params) === null || _a === void 0 ? void 0 : _a.chunkSize);
51301
51302
  const env = DataManager.getSettings('env');
@@ -51880,7 +51881,7 @@ class FirmwareUpdateV4 extends FirmwareUpdateBaseMethod {
51880
51881
  return false;
51881
51882
  }
51882
51883
  const digest = sha256.sha256.create();
51883
- const chunkSize = this.getProtocolV2FirmwareChunkSize();
51884
+ const chunkSize = this.getProtocolV2FirmwareChunkSize('write');
51884
51885
  let offset = 0;
51885
51886
  while (offset < file.size) {
51886
51887
  const response = yield commands.typedCall('FilesystemFileRead', 'FilesystemFile', {
@@ -51960,7 +51961,7 @@ class FirmwareUpdateV4 extends FirmwareUpdateBaseMethod {
51960
51961
  : yield readProtocolV2ResourceInventory({
51961
51962
  commands: this.device.getCommands(),
51962
51963
  resources,
51963
- chunkSize: this.getProtocolV2FirmwareChunkSize(),
51964
+ chunkSize: this.getProtocolV2FirmwareChunkSize('write'),
51964
51965
  timeoutMs: PROTOCOL_V2_SHORT_RESPONSE_TIMEOUT,
51965
51966
  });
51966
51967
  const plan = buildProtocolV2ResourceUpdatePlan({
@@ -52750,8 +52751,8 @@ class FirmwareUpdateV4 extends FirmwareUpdateBaseMethod {
52750
52751
  });
52751
52752
  if (writeRes.type !== 'FilesystemFile') {
52752
52753
  if (writeRes.type === 'CallMethodError') {
52753
- if (((_a = writeRes.message.error) !== null && _a !== void 0 ? _a : '').indexOf(SESSION_ERROR) > -1) {
52754
- throw hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.RuntimeError, SESSION_ERROR);
52754
+ if (((_a = writeRes.message.error) !== null && _a !== void 0 ? _a : '').indexOf(SESSION_ERROR$1) > -1) {
52755
+ throw hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.RuntimeError, SESSION_ERROR$1);
52755
52756
  }
52756
52757
  }
52757
52758
  throw hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.EmmcFileWriteFirmwareError, 'transfer data error');
@@ -52920,7 +52921,7 @@ const Log$4 = getLogger(exports.LoggerNames.Core);
52920
52921
  const MIN_FILE_CHUNK_SIZE = 64;
52921
52922
  const FILE_TRANSFER_RATE_WINDOW_MS = 1000;
52922
52923
  const FILE_TRANSFER_LOG_INTERVAL_MS = 10000;
52923
- const SESSION_ERROR$1 = 'session not found';
52924
+ const SESSION_ERROR = 'session not found';
52924
52925
  function formatFileTransferRate(bytesPerSecond) {
52925
52926
  return (Math.max(bytesPerSecond, 0) / 1024).toFixed(2);
52926
52927
  }
@@ -53088,8 +53089,8 @@ function writeProtocolV2File(options) {
53088
53089
  const responseType = response.type;
53089
53090
  if (responseType && responseType !== 'FilesystemFile') {
53090
53091
  const responseError = (_l = response.message) === null || _l === void 0 ? void 0 : _l.error;
53091
- if (typeof responseError === 'string' && responseError.includes(SESSION_ERROR$1)) {
53092
- throw hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.RuntimeError, SESSION_ERROR$1);
53092
+ if (typeof responseError === 'string' && responseError.includes(SESSION_ERROR)) {
53093
+ throw hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.RuntimeError, SESSION_ERROR);
53093
53094
  }
53094
53095
  throw hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.RuntimeError, `FilesystemFileWrite received unexpected response ${responseType}`);
53095
53096
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@onekeyfe/hd-core",
3
- "version": "1.2.0-alpha.73",
3
+ "version": "1.2.0-alpha.74",
4
4
  "description": "Core processes and APIs for communicating with OneKey hardware devices.",
5
5
  "author": "OneKey",
6
6
  "homepage": "https://github.com/OneKeyHQ/hardware-js-sdk#readme",
@@ -25,8 +25,8 @@
25
25
  "url": "https://github.com/OneKeyHQ/hardware-js-sdk/issues"
26
26
  },
27
27
  "dependencies": {
28
- "@onekeyfe/hd-shared": "1.2.0-alpha.73",
29
- "@onekeyfe/hd-transport": "1.2.0-alpha.73",
28
+ "@onekeyfe/hd-shared": "1.2.0-alpha.74",
29
+ "@onekeyfe/hd-transport": "1.2.0-alpha.74",
30
30
  "axios": "1.15.2",
31
31
  "bignumber.js": "^9.0.2",
32
32
  "bytebuffer": "^5.0.1",
@@ -44,5 +44,5 @@
44
44
  "@types/w3c-web-usb": "^1.0.10",
45
45
  "@types/web-bluetooth": "^0.0.21"
46
46
  },
47
- "gitHead": "5fd2c617e179181cdb15243aec8bbbe28c77cd27"
47
+ "gitHead": "4b263fb8e60a3286d9ad12d6b3bce3b0f8d023ce"
48
48
  }
@@ -1,8 +1,8 @@
1
1
  import { EDeviceType, ERRORS, HardwareError, HardwareErrorCode, wait } from '@onekeyfe/hd-shared';
2
2
  import {
3
3
  DeviceRebootType,
4
- PROTOCOL_V2_BLE_FILE_READ_CHUNK_SIZE,
5
4
  PROTOCOL_V2_BLE_FILE_CHUNK_SIZE,
5
+ PROTOCOL_V2_BLE_FILE_READ_CHUNK_SIZE,
6
6
  PROTOCOL_V2_BLE_FIRMWARE_FILE_CHUNK_SIZE,
7
7
  PROTOCOL_V2_WEBUSB_FILE_CHUNK_SIZE,
8
8
  } from '@onekeyfe/hd-transport';
@@ -67,6 +67,10 @@ import type { FirmwareByteSource } from './firmware/FirmwareArtifactSource';
67
67
 
68
68
  const Log = getLogger(LoggerNames.Method);
69
69
 
70
+ // Restored after a rebase dropped the declaration while keeping its use in
71
+ // fileWriteChunk; without it that error branch throws ReferenceError instead of
72
+ // the intended typed session error.
73
+ const SESSION_ERROR = 'session not found';
70
74
  const PROTOCOL_V2_BOOTLOADER_RECONNECT_TIMEOUT = 90 * 1000;
71
75
  const PROTOCOL_V2_FINAL_RECONNECT_TIMEOUT = 3 * 60 * 1000;
72
76
  const PROTOCOL_V2_SHORT_RESPONSE_TIMEOUT = 5 * 1000;
@@ -612,7 +616,7 @@ export default class FirmwareUpdateV4 extends FirmwareUpdateBaseMethod<FirmwareU
612
616
  };
613
617
  }
614
618
 
615
- private getProtocolV2FirmwareChunkSize(direction: 'read' | 'write' = 'write', filePath?: string) {
619
+ private getProtocolV2FirmwareChunkSize(direction: 'read' | 'write', filePath?: string) {
616
620
  const payloadChunkSize = Number(this.params?.chunkSize);
617
621
  const env = DataManager.getSettings('env');
618
622
  const isBle = this.params?.platform === 'native' || (env && DataManager.isBleConnect(env));
@@ -1325,7 +1329,7 @@ export default class FirmwareUpdateV4 extends FirmwareUpdateBaseMethod<FirmwareU
1325
1329
  }
1326
1330
 
1327
1331
  const digest = sha256.create();
1328
- const chunkSize = this.getProtocolV2FirmwareChunkSize();
1332
+ const chunkSize = this.getProtocolV2FirmwareChunkSize('write');
1329
1333
  let offset = 0;
1330
1334
  while (offset < file.size) {
1331
1335
  const response = await commands.typedCall(
@@ -1420,7 +1424,7 @@ export default class FirmwareUpdateV4 extends FirmwareUpdateBaseMethod<FirmwareU
1420
1424
  : await readProtocolV2ResourceInventory({
1421
1425
  commands: this.device.getCommands(),
1422
1426
  resources,
1423
- chunkSize: this.getProtocolV2FirmwareChunkSize(),
1427
+ chunkSize: this.getProtocolV2FirmwareChunkSize('write'),
1424
1428
  timeoutMs: PROTOCOL_V2_SHORT_RESPONSE_TIMEOUT,
1425
1429
  });
1426
1430
  const plan = buildProtocolV2ResourceUpdatePlan({