@onekeyfe/hd-core 0.2.28 → 0.2.29
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/dist/api/CheckBootloaderRelease.d.ts +10 -0
- package/dist/api/CheckBootloaderRelease.d.ts.map +1 -0
- package/dist/api/device/DeviceUpdateBootloader.d.ts +9 -0
- package/dist/api/device/DeviceUpdateBootloader.d.ts.map +1 -0
- package/dist/api/firmware/getBinary.d.ts +1 -0
- package/dist/api/firmware/getBinary.d.ts.map +1 -1
- package/dist/api/firmware/updateBootloader.d.ts +3 -0
- package/dist/api/firmware/updateBootloader.d.ts.map +1 -0
- package/dist/api/firmware/uploadFirmware.d.ts +1 -0
- package/dist/api/firmware/uploadFirmware.d.ts.map +1 -1
- package/dist/api/index.d.ts +2 -0
- package/dist/api/index.d.ts.map +1 -1
- package/dist/data-manager/DataManager.d.ts +1 -0
- package/dist/data-manager/DataManager.d.ts.map +1 -1
- package/dist/index.d.ts +19 -4
- package/dist/index.js +112 -1
- package/dist/inject.d.ts.map +1 -1
- package/dist/types/api/checkBootloaderRelease.d.ts +8 -0
- package/dist/types/api/checkBootloaderRelease.d.ts.map +1 -0
- package/dist/types/api/checkTransportRelease.d.ts +1 -1
- package/dist/types/api/checkTransportRelease.d.ts.map +1 -1
- package/dist/types/api/deviceUpdateBootloader.d.ts +4 -0
- package/dist/types/api/deviceUpdateBootloader.d.ts.map +1 -0
- package/dist/types/api/index.d.ts +4 -0
- package/dist/types/api/index.d.ts.map +1 -1
- package/dist/types/settings.d.ts +2 -1
- package/dist/types/settings.d.ts.map +1 -1
- package/dist/utils/deviceFeaturesUtils.d.ts +2 -1
- package/dist/utils/deviceFeaturesUtils.d.ts.map +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/api/CheckBootloaderRelease.ts +26 -0
- package/src/api/device/DeviceUpdateBootloader.ts +68 -0
- package/src/api/firmware/updateBootloader.ts +22 -0
- package/src/api/firmware/uploadFirmware.ts +14 -0
- package/src/api/index.ts +2 -0
- package/src/data-manager/DataManager.ts +12 -1
- package/src/inject.ts +3 -0
- package/src/types/api/checkBootloaderRelease.ts +11 -0
- package/src/types/api/checkTransportRelease.ts +1 -1
- package/src/types/api/deviceUpdateBootloader.ts +4 -0
- package/src/types/api/index.ts +4 -0
- package/src/types/settings.ts +2 -1
- package/src/utils/deviceFeaturesUtils.ts +10 -2
- package/src/utils/index.ts +2 -0
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { BaseMethod } from './BaseMethod';
|
|
2
|
+
export default class CheckBootloaderRelease extends BaseMethod {
|
|
3
|
+
init(): void;
|
|
4
|
+
run(): Promise<{
|
|
5
|
+
shouldUpdate: boolean;
|
|
6
|
+
status: string;
|
|
7
|
+
release: string | undefined;
|
|
8
|
+
} | null>;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=CheckBootloaderRelease.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CheckBootloaderRelease.d.ts","sourceRoot":"","sources":["../../src/api/CheckBootloaderRelease.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAM1C,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,UAAU;IAC5D,IAAI;IAME,GAAG;;;;;CAYV"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Deferred } from '@onekeyfe/hd-shared';
|
|
2
|
+
import { BaseMethod } from '../BaseMethod';
|
|
3
|
+
export default class DeviceUpdateBootloader extends BaseMethod {
|
|
4
|
+
checkPromise: Deferred<any> | null;
|
|
5
|
+
init(): void;
|
|
6
|
+
postTipMessage: (message: string) => void;
|
|
7
|
+
run(): Promise<boolean>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=DeviceUpdateBootloader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DeviceUpdateBootloader.d.ts","sourceRoot":"","sources":["../../../src/api/device/DeviceUpdateBootloader.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE1E,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAQ3C,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,UAAU;IAC5D,YAAY,EAAE,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,CAAQ;IAE1C,IAAI;IAMJ,cAAc,YAAa,MAAM,UAS/B;IAEI,GAAG;CAqCV"}
|
|
@@ -13,6 +13,7 @@ export declare const getBinary: ({ features, updateType, version }: GetBinaryPro
|
|
|
13
13
|
resource?: string | undefined;
|
|
14
14
|
fullResource?: string | undefined;
|
|
15
15
|
fullResourceRange?: string[] | undefined;
|
|
16
|
+
bootloaderResource?: string | undefined;
|
|
16
17
|
fingerprint: string;
|
|
17
18
|
version: import("../../types").IVersionArray;
|
|
18
19
|
changelog: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getBinary.d.ts","sourceRoot":"","sources":["../../../src/api/firmware/getBinary.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAMvC,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,UAAU,GAAG,KAAK,CAAC;CAChC;AAED,UAAU,cAAe,SAAQ,YAAY;IAC3C,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,eAAO,MAAM,SAAS,sCAA6C,cAAc
|
|
1
|
+
{"version":3,"file":"getBinary.d.ts","sourceRoot":"","sources":["../../../src/api/firmware/getBinary.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAMvC,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,UAAU,GAAG,KAAK,CAAC;CAChC;AAED,UAAU,cAAe,SAAQ,YAAY;IAC3C,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,eAAO,MAAM,SAAS,sCAA6C,cAAc;;;;;;;;;;;;;;EA2BhF,CAAC;AAEF,eAAO,MAAM,oBAAoB,QAAe,MAAM;;EAWrD,CAAC;AAEF,eAAO,MAAM,OAAO,6BAA8B,YAAY,2DAO7D,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"updateBootloader.d.ts","sourceRoot":"","sources":["../../../src/api/firmware/updateBootloader.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAOvC,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,WAarD"}
|
|
@@ -7,4 +7,5 @@ export declare const waitBleInstall: (updateType: string) => Promise<void>;
|
|
|
7
7
|
export declare const uploadFirmware: (updateType: 'firmware' | 'ble', typedCall: TypedCall, postMessage: (message: CoreMessage) => void, device: Device, { payload }: PROTO.FirmwareUpload) => Promise<Success>;
|
|
8
8
|
export declare const updateResource: (typedCall: TypedCall, fileName: string, data: ArrayBuffer) => Promise<Success>;
|
|
9
9
|
export declare const updateResources: (typedCall: TypedCall, postMessage: (message: CoreMessage) => void, device: Device, source: ArrayBuffer) => Promise<boolean>;
|
|
10
|
+
export declare const updateBootloader: (typedCall: TypedCall, postMessage: (message: CoreMessage) => void, device: Device, source: ArrayBuffer) => Promise<boolean>;
|
|
10
11
|
//# sourceMappingURL=uploadFirmware.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uploadFirmware.d.ts","sourceRoot":"","sources":["../../../src/api/firmware/uploadFirmware.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,OAAO,EAAU,WAAW,EAA+B,MAAM,cAAc,CAAC;AAChF,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,SAAS,EAAwB,MAAM,6BAA6B,CAAC;AAuCnF,eAAO,MAAM,cAAc,eAAsB,MAAM,kBAKtD,CAAC;AAEF,eAAO,MAAM,cAAc,eACb,UAAU,GAAG,KAAK,aACnB,SAAS,yBACG,WAAW,KAAK,IAAI,UACnC,MAAM,eACD,MAAM,cAAc,qBAgDlC,CAAC;AAmCF,eAAO,MAAM,cAAc,cAAqB,SAAS,YAAY,MAAM,QAAQ,WAAW,qBAY7F,CAAC;AAEF,eAAO,MAAM,eAAe,cACf,SAAS,yBACG,WAAW,KAAK,IAAI,UACnC,MAAM,UACN,WAAW,qBAwBpB,CAAC"}
|
|
1
|
+
{"version":3,"file":"uploadFirmware.d.ts","sourceRoot":"","sources":["../../../src/api/firmware/uploadFirmware.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,OAAO,EAAU,WAAW,EAA+B,MAAM,cAAc,CAAC;AAChF,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,SAAS,EAAwB,MAAM,6BAA6B,CAAC;AAuCnF,eAAO,MAAM,cAAc,eAAsB,MAAM,kBAKtD,CAAC;AAEF,eAAO,MAAM,cAAc,eACb,UAAU,GAAG,KAAK,aACnB,SAAS,yBACG,WAAW,KAAK,IAAI,UACnC,MAAM,eACD,MAAM,cAAc,qBAgDlC,CAAC;AAmCF,eAAO,MAAM,cAAc,cAAqB,SAAS,YAAY,MAAM,QAAQ,WAAW,qBAY7F,CAAC;AAEF,eAAO,MAAM,eAAe,cACf,SAAS,yBACG,WAAW,KAAK,IAAI,UACnC,MAAM,UACN,WAAW,qBAwBpB,CAAC;AAEF,eAAO,MAAM,gBAAgB,cAChB,SAAS,yBACG,WAAW,KAAK,IAAI,UACnC,MAAM,UACN,WAAW,qBAQpB,CAAC"}
|
package/dist/api/index.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ export { default as checkFirmwareRelease } from './CheckFirmwareRelease';
|
|
|
6
6
|
export { default as checkBLEFirmwareRelease } from './CheckBLEFirmwareRelease';
|
|
7
7
|
export { default as checkTransportRelease } from './CheckTransportRelease';
|
|
8
8
|
export { default as checkBridgeStatus } from './CheckBridgeStatus';
|
|
9
|
+
export { default as checkBootloaderRelease } from './CheckBootloaderRelease';
|
|
9
10
|
export { default as deviceBackup } from './device/DeviceBackup';
|
|
10
11
|
export { default as deviceChangePin } from './device/DeviceChangePin';
|
|
11
12
|
export { default as deviceFlags } from './device/DeviceFlags';
|
|
@@ -20,6 +21,7 @@ export { default as deviceSupportFeatures } from './device/DeviceSupportFeatures
|
|
|
20
21
|
export { default as deviceVerify } from './device/DeviceVerify';
|
|
21
22
|
export { default as deviceWipe } from './device/DeviceWipe';
|
|
22
23
|
export { default as deviceFullyUploadResource } from './device/DeviceFullyUploadResource';
|
|
24
|
+
export { default as deviceUpdateBootloader } from './device/DeviceUpdateBootloader';
|
|
23
25
|
export { default as firmwareUpdate } from './FirmwareUpdate';
|
|
24
26
|
export { default as firmwareUpdateV2 } from './FirmwareUpdateV2';
|
|
25
27
|
export { default as requestWebUsbDevice } from './RequestWebUsbDevice';
|
package/dist/api/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AACxF,OAAO,EAAE,OAAO,IAAI,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC1F,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAClF,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AACxF,OAAO,EAAE,OAAO,IAAI,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC1F,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAClF,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC1F,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAEpF,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAEvE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAE7D,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAErE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAC7E,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AACvF,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAErF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAC7E,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAErE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAC9E,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAClF,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAChF,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AACxF,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEpF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAEzE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAE5E,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAErF,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAE5E,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAE5E,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAEvE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAE5E,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAElF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAEzE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAEzE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AACrF,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAE7E,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAC9E,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAExF,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAC9E,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,oCAAoC,CAAC"}
|
|
@@ -9,6 +9,7 @@ export default class DataManager {
|
|
|
9
9
|
static getFirmwareStatus: (features: Features) => IDeviceFirmwareStatus;
|
|
10
10
|
static getSysResourcesLatestRelease: (features: Features, forcedUpdateRes?: boolean | undefined) => string | undefined;
|
|
11
11
|
static getSysFullResource: (features: Features) => string | undefined;
|
|
12
|
+
static getBootloaderResource: (features: Features) => string | undefined;
|
|
12
13
|
static getFirmwareChangelog: (features: Features) => {
|
|
13
14
|
"zh-CN": string;
|
|
14
15
|
"en-US": string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataManager.d.ts","sourceRoot":"","sources":["../../src/data-manager/DataManager.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EACV,eAAe,EACf,aAAa,EACb,SAAS,EAET,QAAQ,EACR,qBAAqB,EACrB,wBAAwB,EACxB,gBAAgB,EACjB,MAAM,UAAU,CAAC;AAKlB,MAAM,CAAC,OAAO,OAAO,WAAW;IAC9B,MAAM,CAAC,SAAS,EAAE,aAAa,CAiB7B;IAEF,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAAQ;IAEvC,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAC;IAEjC,MAAM,CAAC,QAAQ,EAAE;QAAE,OAAO,EAAE,IAAI,CAAA;KAAE,CAEhC;IAEF,MAAM,CAAC,iBAAiB,aAAc,QAAQ,KAAG,qBAAqB,CAepE;IAMF,MAAM,CAAC,4BAA4B,aAAc,QAAQ,+DAgBvD;IAMF,MAAM,CAAC,kBAAkB,aAAc,QAAQ,wBAU7C;IAEF,MAAM,CAAC,oBAAoB,aAAc,QAAQ;;;QAe/C;IAEF,MAAM,CAAC,wBAAwB,aAAc,QAAQ,yDAgBnD;IAEF,MAAM,CAAC,oBAAoB,aAAc,QAAQ,KAAG,wBAAwB,CAY1E;IAEF,MAAM,CAAC,uBAAuB,aAAc,QAAQ;;;QAWlD;IAEF,MAAM,CAAC,2BAA2B,aAAc,QAAQ,4DAItD;IAEF,MAAM,CAAC,kBAAkB,iBAAkB,MAAM,KAAG,gBAAgB,CAKlE;WAEW,IAAI,CAAC,QAAQ,EAAE,eAAe;IAwB3C,MAAM,CAAC,mBAAmB;IAI1B,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,SAAS,GAAG,eAAe;IAEpD,MAAM,CAAC,WAAW,CAAC,CAAC,SAAS,MAAM,eAAe,EAAE,GAAG,EAAE,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC;CAShF"}
|
|
1
|
+
{"version":3,"file":"DataManager.d.ts","sourceRoot":"","sources":["../../src/data-manager/DataManager.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EACV,eAAe,EACf,aAAa,EACb,SAAS,EAET,QAAQ,EACR,qBAAqB,EACrB,wBAAwB,EACxB,gBAAgB,EACjB,MAAM,UAAU,CAAC;AAKlB,MAAM,CAAC,OAAO,OAAO,WAAW;IAC9B,MAAM,CAAC,SAAS,EAAE,aAAa,CAiB7B;IAEF,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAAQ;IAEvC,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAC;IAEjC,MAAM,CAAC,QAAQ,EAAE;QAAE,OAAO,EAAE,IAAI,CAAA;KAAE,CAEhC;IAEF,MAAM,CAAC,iBAAiB,aAAc,QAAQ,KAAG,qBAAqB,CAepE;IAMF,MAAM,CAAC,4BAA4B,aAAc,QAAQ,+DAgBvD;IAMF,MAAM,CAAC,kBAAkB,aAAc,QAAQ,wBAU7C;IAEF,MAAM,CAAC,qBAAqB,aAAc,QAAQ,wBAShD;IAEF,MAAM,CAAC,oBAAoB,aAAc,QAAQ;;;QAe/C;IAEF,MAAM,CAAC,wBAAwB,aAAc,QAAQ,yDAgBnD;IAEF,MAAM,CAAC,oBAAoB,aAAc,QAAQ,KAAG,wBAAwB,CAY1E;IAEF,MAAM,CAAC,uBAAuB,aAAc,QAAQ;;;QAWlD;IAEF,MAAM,CAAC,2BAA2B,aAAc,QAAQ,4DAItD;IAEF,MAAM,CAAC,kBAAkB,iBAAkB,MAAM,KAAG,gBAAgB,CAKlE;WAEW,IAAI,CAAC,QAAQ,EAAE,eAAe;IAwB3C,MAAM,CAAC,mBAAmB;IAI1B,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,SAAS,GAAG,eAAe;IAEpD,MAAM,CAAC,WAAW,CAAC,CAAC,SAAS,MAAM,eAAe,EAAE,GAAG,EAAE,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC;CAShF"}
|
package/dist/index.d.ts
CHANGED
|
@@ -148,6 +148,7 @@ declare type IFirmwareReleaseInfo = {
|
|
|
148
148
|
resource?: string;
|
|
149
149
|
fullResource?: string;
|
|
150
150
|
fullResourceRange?: string[];
|
|
151
|
+
bootloaderResource?: string;
|
|
151
152
|
fingerprint: string;
|
|
152
153
|
version: IVersionArray;
|
|
153
154
|
changelog: {
|
|
@@ -168,7 +169,7 @@ declare type IBLEFirmwareReleaseInfo = {
|
|
|
168
169
|
declare type DeviceTypeMap = {
|
|
169
170
|
[k in IDeviceType]: {
|
|
170
171
|
firmware: IFirmwareReleaseInfo[];
|
|
171
|
-
'firmware-
|
|
172
|
+
'firmware-v3'?: IFirmwareReleaseInfo[];
|
|
172
173
|
ble: IBLEFirmwareReleaseInfo[];
|
|
173
174
|
};
|
|
174
175
|
};
|
|
@@ -233,10 +234,17 @@ declare type ReleaseInfo = {
|
|
|
233
234
|
};
|
|
234
235
|
declare type TransportReleaseStatus = 'valid' | 'outdated';
|
|
235
236
|
|
|
236
|
-
declare function checkTransportRelease(): Response<TransportReleaseStatus>;
|
|
237
|
+
declare function checkTransportRelease(connectId?: string): Response<TransportReleaseStatus>;
|
|
237
238
|
|
|
238
239
|
declare function checkBridgeStatus(): Response<boolean>;
|
|
239
240
|
|
|
241
|
+
declare type CheckBootloaderReleaseResponse = {
|
|
242
|
+
shouldUpdate: boolean;
|
|
243
|
+
status: 'outdated' | 'valid';
|
|
244
|
+
release: string | undefined;
|
|
245
|
+
} | null;
|
|
246
|
+
declare function checkBootloaderRelease(connectId?: string): Response<CheckBootloaderReleaseResponse>;
|
|
247
|
+
|
|
240
248
|
declare function searchDevices(): Response<SearchDevice[]>;
|
|
241
249
|
|
|
242
250
|
declare function getFeatures(connectId?: string): Response<Features>;
|
|
@@ -371,6 +379,8 @@ declare function deviceSupportFeatures(connectId?: string): Response<DeviceSuppo
|
|
|
371
379
|
|
|
372
380
|
declare function deviceFullyUploadResource(connectId: string, params: CommonParams): Response<Success$1>;
|
|
373
381
|
|
|
382
|
+
declare function deviceUpdateBootloader(connectId: string): Response<Success$1>;
|
|
383
|
+
|
|
374
384
|
declare type CipheredKeyValue = {
|
|
375
385
|
path: string;
|
|
376
386
|
} & CipheredKeyValue$1;
|
|
@@ -1505,6 +1515,7 @@ declare type CoreApi = {
|
|
|
1505
1515
|
getLogs: typeof getLogs;
|
|
1506
1516
|
checkTransportRelease: typeof checkTransportRelease;
|
|
1507
1517
|
checkBridgeStatus: typeof checkBridgeStatus;
|
|
1518
|
+
checkBootloaderRelease: typeof checkBootloaderRelease;
|
|
1508
1519
|
searchDevices: typeof searchDevices;
|
|
1509
1520
|
requestWebUsbDevice: typeof requestWebUsbDevice;
|
|
1510
1521
|
getFeatures: typeof getFeatures;
|
|
@@ -1523,6 +1534,7 @@ declare type CoreApi = {
|
|
|
1523
1534
|
deviceVerify: typeof deviceVerify;
|
|
1524
1535
|
deviceWipe: typeof deviceWipe;
|
|
1525
1536
|
deviceFullyUploadResource: typeof deviceFullyUploadResource;
|
|
1537
|
+
deviceUpdateBootloader: typeof deviceUpdateBootloader;
|
|
1526
1538
|
checkFirmwareRelease: typeof checkFirmwareRelease;
|
|
1527
1539
|
checkBLEFirmwareRelease: typeof checkBLEFirmwareRelease;
|
|
1528
1540
|
firmwareUpdate: typeof firmwareUpdate;
|
|
@@ -2056,12 +2068,14 @@ declare const getDeviceTypeByDeviceId: (deviceId?: string | undefined) => IDevic
|
|
|
2056
2068
|
declare const getDeviceUUID: (features: Features) => string;
|
|
2057
2069
|
declare const getDeviceLabel: (features: Features) => string;
|
|
2058
2070
|
declare const supportInputPinOnSoftware: (features: Features) => SupportFeatureType;
|
|
2059
|
-
declare const getFirmwareUpdateField: (features: Features, updateType: 'firmware' | 'ble') => "firmware" | "ble" | "firmware-
|
|
2071
|
+
declare const getFirmwareUpdateField: (features: Features, updateType: 'firmware' | 'ble') => "firmware" | "ble" | "firmware-v3";
|
|
2060
2072
|
|
|
2061
2073
|
declare const getHDPath: (path: string) => Array<number>;
|
|
2062
2074
|
declare const getScriptType: (path: Array<number>) => InputScriptType;
|
|
2063
2075
|
declare const getOutputScriptType: (path?: number[] | undefined) => ChangeOutputScriptType;
|
|
2064
2076
|
|
|
2077
|
+
declare function checkNeedUpdateBoot(features: Features): boolean;
|
|
2078
|
+
|
|
2065
2079
|
declare type LogMessage = {
|
|
2066
2080
|
level: string;
|
|
2067
2081
|
prefix: string;
|
|
@@ -2125,6 +2139,7 @@ declare class DataManager {
|
|
|
2125
2139
|
static getFirmwareStatus: (features: Features) => IDeviceFirmwareStatus;
|
|
2126
2140
|
static getSysResourcesLatestRelease: (features: Features, forcedUpdateRes?: boolean | undefined) => string | undefined;
|
|
2127
2141
|
static getSysFullResource: (features: Features) => string | undefined;
|
|
2142
|
+
static getBootloaderResource: (features: Features) => string | undefined;
|
|
2128
2143
|
static getFirmwareChangelog: (features: Features) => {
|
|
2129
2144
|
"zh-CN": string;
|
|
2130
2145
|
"en-US": string;
|
|
@@ -2145,4 +2160,4 @@ declare class DataManager {
|
|
|
2145
2160
|
|
|
2146
2161
|
declare const HardwareSdk: ({ init, call, dispose, eventEmitter, uiResponse, cancel, }: InjectApi) => CoreApi;
|
|
2147
2162
|
|
|
2148
|
-
export { AccountAddress, AccountAddresses, AlgoAddress, AlgoGetAddressParams, AlgoSignTransactionParams, AlgoSignedTx, AptosAddress, AptosGetAddressParams, AptosGetPublicKeyParams, AptosMessageSignature, AptosPublicKey, AptosSignMessageParams, AptosSignTransactionParams, AptosSignedTx, AssetsMap, BTCAddress, BTCGetAddressParams, BTCGetPublicKeyParams, BTCPublicKey, BTCSignMessageParams, BTCSignTransactionParams, BTCVerifyMessageParams, BleReleaseInfoEvent, BleReleaseInfoPayload, CORE_EVENT, CallMethod, CallMethodAnyResponse, CallMethodKeys, CallMethodPayload, CallMethodResponse, CallMethodUnion, CardanoAddress, CardanoGetAddressMethodParams, CardanoGetAddressParams, CardanoSignTransaction, CardanoSignedTxData, CipheredKeyValue, CipheredKeyValueParams, CommonParams, ConfluxAddress, ConfluxGetAddressParams, ConfluxSignMessageCIP23Params, ConfluxSignMessageParams, ConfluxSignTransactionParams, ConfluxSignedTx, ConfluxTransaction, ConnectSettings, Core, CoreApi, CoreMessage, CosmosAddress, CosmosGetAddressParams, CosmosGetPublicKeyParams, CosmosPublicKey, CosmosSignTransactionParams, CosmosSignedTx, DEFAULT_PRIORITY, DEVICE, DEVICE_EVENT, DataManager, Device$1 as Device, DeviceButtonRequest, DeviceButtonRequestPayload, DeviceChangePinParams, DeviceConnnectRequest, DeviceDisconnnectRequest, DeviceEvent, DeviceEventListenerFn, DeviceEventMessage, DeviceFeaturesPayload, DeviceFirmwareRange, DeviceFlagsParams, DeviceMode, DeviceRecoveryParams, DeviceResetParams, DeviceSendFeatures, DeviceSendSupportFeatures, DeviceSettingsParams, DeviceStatus, DeviceSupportFeatures, DeviceSupportFeaturesPayload, DeviceTypeMap, DeviceUploadResourceParams, DeviceVerifyParams, DeviceVerifySignature, EVMAccessList, EVMAddress, EVMGetAddressParams, EVMGetPublicKeyParams, EVMPublicKey, EVMSignMessageEIP712Params, EVMSignMessageParams, EVMSignTransactionParams, EVMSignTypedDataParams, EVMSignedTx, EVMTransaction, EVMTransactionEIP1559, EVMVerifyMessageParams, EthereumSignTypedDataMessage, EthereumSignTypedDataTypeProperty, EthereumSignTypedDataTypes, FIRMWARE, FIRMWARE_EVENT, Features, FilecoinAddress, FilecoinGetAddressParams, FilecoinSignTransactionParams, FilecoinSignedTx, FirmwareEvent, FirmwareMessage, FirmwareProgress, FirmwareRange, FirmwareRelease$1 as FirmwareRelease, FirmwareTip, FirmwareUpdateBinaryParams, FirmwareUpdateParams, IBLEFirmwareReleaseInfo, IDeviceBLEFirmwareStatus, IDeviceFirmwareStatus, IDeviceModel, IDeviceType, IFRAME, IFirmwareReleaseInfo, IFrameBridge, IFrameCallMessage, IFrameCancelMessage, IFrameEvent, IFrameEventMessage, IFrameInit, ILocale, ITransportStatus, IVersionArray, KnownDevice, LOG, LOG_EVENT, LogEvent, LogEventMessage, LogOutput, LoggerNames, MajorVersion, MethodResponseMessage, NEMAddress, NEMAggregateModificationTransaction, NEMGetAddressParams, NEMImportanceTransaction, NEMMosaic, NEMMosaicCreationTransaction, NEMMultisigTransaction, NEMProvisionNamespaceTransaction, NEMSignTransactionParams, NEMSupplyChangeTransaction, NEMTransaction, NEMTransferTransaction, NearAddress, NearGetAddressParams, NearSignTransactionParams, Params, PolkadotAddress, PolkadotGetAddressParams, PolkadotSignTransactionParams, PolkadotSignedTx, PostMessageEvent, RESPONSE_EVENT, RefTransaction, ReleaseInfo, ReleaseInfoEvent, ReleaseInfoPayload, RemoteConfigResponse, Response, SearchDevice, SignedTransaction, SolanaAddress, SolanaGetAddressParams, SolanaSignTransactionParams, SolanaSignedTx, StarcoinAddress, StarcoinGetAddressParams, StarcoinGetPublicKeyParams, StarcoinPublicKey, StarcoinSignMessageParams, StarcoinSignTransactionParams, StarcoinVerifyMessageParams, StellarAddress, StellarAsset, StellarGetAddressParams, StellarOperation, StellarSignTransactionParams, StellarTransaction, StrictFeatures, Success, SuiAddress, SuiGetAddressParams, SuiGetPublicKeyParams, SuiPublicKey, SuiSignTransactionParams, SuiSignedTx, SupportFeatureType, SupportFeatures, TransactionOptions, TransportReleaseStatus, TronAddress, TronGetAddressParams, TronSignMessageParams, TronSignTransactionParams, TronTransaction, TronTransactionContract, TronTransferContract, TronTriggerSmartContract, UI_EVENT, UI_REQUEST, UI_RESPONSE, UiEvent, UiEventMessage, UiPromise, UiPromiseResponse, UiRequestButton, UiRequestDeviceAction, UiRequestPassphrase, UiRequestPassphraseOnDevice, UiRequestWithoutPayload, UiResponseEvent, UiResponseMessage, UiResponsePassphrase, UiResponsePin, UnavailableCapabilities, UnavailableCapability, Unsuccessful, VersionArray, corsValidator, createDeviceMessage, createErrorMessage, createFirmwareMessage, createIFrameMessage, createLogMessage, createResponseMessage, createUiMessage, createUiResponse, HardwareSdk as default, enableLog, getDeviceLabel, getDeviceType, getDeviceTypeByBleName, getDeviceTypeByDeviceId, getDeviceUUID, getEnv, getFirmwareUpdateField, getHDPath, getHomeScreenHex, getLog, getLogger, getOutputScriptType, getSDKVersion, getScriptType, getTimeStamp, httpRequest, init as initCore, isValidVersionArray, isValidVersionString, normalizeVersionArray, parseConnectSettings, parseMessage, patchFeatures, safeThrowError, setLoggerPostMessage, supportInputPinOnSoftware, versionCompare, versionSplit, wait };
|
|
2163
|
+
export { AccountAddress, AccountAddresses, AlgoAddress, AlgoGetAddressParams, AlgoSignTransactionParams, AlgoSignedTx, AptosAddress, AptosGetAddressParams, AptosGetPublicKeyParams, AptosMessageSignature, AptosPublicKey, AptosSignMessageParams, AptosSignTransactionParams, AptosSignedTx, AssetsMap, BTCAddress, BTCGetAddressParams, BTCGetPublicKeyParams, BTCPublicKey, BTCSignMessageParams, BTCSignTransactionParams, BTCVerifyMessageParams, BleReleaseInfoEvent, BleReleaseInfoPayload, CORE_EVENT, CallMethod, CallMethodAnyResponse, CallMethodKeys, CallMethodPayload, CallMethodResponse, CallMethodUnion, CardanoAddress, CardanoGetAddressMethodParams, CardanoGetAddressParams, CardanoSignTransaction, CardanoSignedTxData, CipheredKeyValue, CipheredKeyValueParams, CommonParams, ConfluxAddress, ConfluxGetAddressParams, ConfluxSignMessageCIP23Params, ConfluxSignMessageParams, ConfluxSignTransactionParams, ConfluxSignedTx, ConfluxTransaction, ConnectSettings, Core, CoreApi, CoreMessage, CosmosAddress, CosmosGetAddressParams, CosmosGetPublicKeyParams, CosmosPublicKey, CosmosSignTransactionParams, CosmosSignedTx, DEFAULT_PRIORITY, DEVICE, DEVICE_EVENT, DataManager, Device$1 as Device, DeviceButtonRequest, DeviceButtonRequestPayload, DeviceChangePinParams, DeviceConnnectRequest, DeviceDisconnnectRequest, DeviceEvent, DeviceEventListenerFn, DeviceEventMessage, DeviceFeaturesPayload, DeviceFirmwareRange, DeviceFlagsParams, DeviceMode, DeviceRecoveryParams, DeviceResetParams, DeviceSendFeatures, DeviceSendSupportFeatures, DeviceSettingsParams, DeviceStatus, DeviceSupportFeatures, DeviceSupportFeaturesPayload, DeviceTypeMap, DeviceUploadResourceParams, DeviceVerifyParams, DeviceVerifySignature, EVMAccessList, EVMAddress, EVMGetAddressParams, EVMGetPublicKeyParams, EVMPublicKey, EVMSignMessageEIP712Params, EVMSignMessageParams, EVMSignTransactionParams, EVMSignTypedDataParams, EVMSignedTx, EVMTransaction, EVMTransactionEIP1559, EVMVerifyMessageParams, EthereumSignTypedDataMessage, EthereumSignTypedDataTypeProperty, EthereumSignTypedDataTypes, FIRMWARE, FIRMWARE_EVENT, Features, FilecoinAddress, FilecoinGetAddressParams, FilecoinSignTransactionParams, FilecoinSignedTx, FirmwareEvent, FirmwareMessage, FirmwareProgress, FirmwareRange, FirmwareRelease$1 as FirmwareRelease, FirmwareTip, FirmwareUpdateBinaryParams, FirmwareUpdateParams, IBLEFirmwareReleaseInfo, IDeviceBLEFirmwareStatus, IDeviceFirmwareStatus, IDeviceModel, IDeviceType, IFRAME, IFirmwareReleaseInfo, IFrameBridge, IFrameCallMessage, IFrameCancelMessage, IFrameEvent, IFrameEventMessage, IFrameInit, ILocale, ITransportStatus, IVersionArray, KnownDevice, LOG, LOG_EVENT, LogEvent, LogEventMessage, LogOutput, LoggerNames, MajorVersion, MethodResponseMessage, NEMAddress, NEMAggregateModificationTransaction, NEMGetAddressParams, NEMImportanceTransaction, NEMMosaic, NEMMosaicCreationTransaction, NEMMultisigTransaction, NEMProvisionNamespaceTransaction, NEMSignTransactionParams, NEMSupplyChangeTransaction, NEMTransaction, NEMTransferTransaction, NearAddress, NearGetAddressParams, NearSignTransactionParams, Params, PolkadotAddress, PolkadotGetAddressParams, PolkadotSignTransactionParams, PolkadotSignedTx, PostMessageEvent, RESPONSE_EVENT, RefTransaction, ReleaseInfo, ReleaseInfoEvent, ReleaseInfoPayload, RemoteConfigResponse, Response, SearchDevice, SignedTransaction, SolanaAddress, SolanaGetAddressParams, SolanaSignTransactionParams, SolanaSignedTx, StarcoinAddress, StarcoinGetAddressParams, StarcoinGetPublicKeyParams, StarcoinPublicKey, StarcoinSignMessageParams, StarcoinSignTransactionParams, StarcoinVerifyMessageParams, StellarAddress, StellarAsset, StellarGetAddressParams, StellarOperation, StellarSignTransactionParams, StellarTransaction, StrictFeatures, Success, SuiAddress, SuiGetAddressParams, SuiGetPublicKeyParams, SuiPublicKey, SuiSignTransactionParams, SuiSignedTx, SupportFeatureType, SupportFeatures, TransactionOptions, TransportReleaseStatus, TronAddress, TronGetAddressParams, TronSignMessageParams, TronSignTransactionParams, TronTransaction, TronTransactionContract, TronTransferContract, TronTriggerSmartContract, UI_EVENT, UI_REQUEST, UI_RESPONSE, UiEvent, UiEventMessage, UiPromise, UiPromiseResponse, UiRequestButton, UiRequestDeviceAction, UiRequestPassphrase, UiRequestPassphraseOnDevice, UiRequestWithoutPayload, UiResponseEvent, UiResponseMessage, UiResponsePassphrase, UiResponsePin, UnavailableCapabilities, UnavailableCapability, Unsuccessful, VersionArray, checkNeedUpdateBoot, corsValidator, createDeviceMessage, createErrorMessage, createFirmwareMessage, createIFrameMessage, createLogMessage, createResponseMessage, createUiMessage, createUiResponse, HardwareSdk as default, enableLog, getDeviceLabel, getDeviceType, getDeviceTypeByBleName, getDeviceTypeByDeviceId, getDeviceUUID, getEnv, getFirmwareUpdateField, getHDPath, getHomeScreenHex, getLog, getLogger, getOutputScriptType, getSDKVersion, getScriptType, getTimeStamp, httpRequest, init as initCore, isValidVersionArray, isValidVersionString, normalizeVersionArray, parseConnectSettings, parseMessage, patchFeatures, safeThrowError, setLoggerPostMessage, supportInputPinOnSoftware, versionCompare, versionSplit, wait };
|
package/dist/index.js
CHANGED
|
@@ -44,6 +44,7 @@ const inject = ({ call, cancel, dispose, eventEmitter, init, uiResponse, }) => {
|
|
|
44
44
|
checkBLEFirmwareRelease: connectId => call({ connectId, method: 'checkBLEFirmwareRelease' }),
|
|
45
45
|
checkTransportRelease: () => call({ method: 'checkTransportRelease' }),
|
|
46
46
|
checkBridgeStatus: () => call({ method: 'checkBridgeStatus' }),
|
|
47
|
+
checkBootloaderRelease: connectId => call({ connectId, method: 'checkBootloaderRelease' }),
|
|
47
48
|
cipherKeyValue: (connectId, deviceId, params) => call(Object.assign(Object.assign({}, params), { connectId, deviceId, method: 'cipherKeyValue' })),
|
|
48
49
|
deviceBackup: connectId => call({ connectId, method: 'deviceBackup' }),
|
|
49
50
|
deviceChangePin: (connectId, params) => call(Object.assign(Object.assign({}, params), { connectId, method: 'deviceChangePin' })),
|
|
@@ -59,6 +60,7 @@ const inject = ({ call, cancel, dispose, eventEmitter, init, uiResponse, }) => {
|
|
|
59
60
|
deviceVerify: (connectId, params) => call(Object.assign(Object.assign({}, params), { connectId, method: 'deviceVerify' })),
|
|
60
61
|
deviceWipe: connectId => call({ connectId, method: 'deviceWipe' }),
|
|
61
62
|
deviceFullyUploadResource: connectId => call({ connectId, method: 'deviceFullyUploadResource' }),
|
|
63
|
+
deviceUpdateBootloader: connectId => call({ connectId, method: 'deviceUpdateBootloader' }),
|
|
62
64
|
getPassphraseState: (connectId, params) => call(Object.assign(Object.assign({}, params), { connectId, method: 'getPassphraseState' })),
|
|
63
65
|
evmGetAddress: (connectId, deviceId, params) => call(Object.assign(Object.assign({}, params), { connectId, deviceId, method: 'evmGetAddress' })),
|
|
64
66
|
evmGetPublicKey: (connectId, deviceId, params) => call(Object.assign(Object.assign({}, params), { connectId, deviceId, method: 'evmGetPublicKey' })),
|
|
@@ -829,6 +831,14 @@ const getDeviceBLEFirmwareVersion = (features) => {
|
|
|
829
831
|
}
|
|
830
832
|
return features.ble_ver.split('.');
|
|
831
833
|
};
|
|
834
|
+
const getDeviceBootloaderVersion = (features) => {
|
|
835
|
+
if (!features.bootloader_version)
|
|
836
|
+
return [0, 0, 0];
|
|
837
|
+
if (semver__default["default"].valid(features.bootloader_version)) {
|
|
838
|
+
return features.bootloader_version.split('.');
|
|
839
|
+
}
|
|
840
|
+
return [0, 0, 0];
|
|
841
|
+
};
|
|
832
842
|
const supportInputPinOnSoftware = (features) => {
|
|
833
843
|
if (!features)
|
|
834
844
|
return { support: false };
|
|
@@ -889,7 +899,7 @@ const getFirmwareUpdateField = (features, updateType) => {
|
|
|
889
899
|
if (deviceType === 'touch') {
|
|
890
900
|
if (semver__default["default"].lt(deviceFirmwareVersion.join('.'), '3.4.0'))
|
|
891
901
|
return 'firmware';
|
|
892
|
-
return 'firmware-
|
|
902
|
+
return 'firmware-v3';
|
|
893
903
|
}
|
|
894
904
|
return 'firmware';
|
|
895
905
|
};
|
|
@@ -10731,6 +10741,17 @@ function patchFeatures(response) {
|
|
|
10731
10741
|
return response;
|
|
10732
10742
|
}
|
|
10733
10743
|
|
|
10744
|
+
function checkNeedUpdateBoot(features) {
|
|
10745
|
+
const deviceType = getDeviceType(features);
|
|
10746
|
+
if (deviceType !== 'touch')
|
|
10747
|
+
return false;
|
|
10748
|
+
const currentVersion = getDeviceFirmwareVersion(features).join('.');
|
|
10749
|
+
const bootloaderVersion = getDeviceBootloaderVersion(features).join('.');
|
|
10750
|
+
return (semver__default["default"].gte(currentVersion, '3.2.0') &&
|
|
10751
|
+
semver__default["default"].gte(currentVersion, '4.1.0') &&
|
|
10752
|
+
semver__default["default"].lte(bootloaderVersion, '2.4.0'));
|
|
10753
|
+
}
|
|
10754
|
+
|
|
10734
10755
|
const LOG_EVENT = 'LOG_EVENT';
|
|
10735
10756
|
const LOG = {
|
|
10736
10757
|
OUTPUT: 'log-output',
|
|
@@ -11244,6 +11265,16 @@ DataManager.getSysFullResource = (features) => {
|
|
|
11244
11265
|
const targetDeviceConfig = targetDeviceConfigList.filter(item => !!item.fullResource);
|
|
11245
11266
|
return (_d = findLatestRelease(targetDeviceConfig)) === null || _d === void 0 ? void 0 : _d.fullResource;
|
|
11246
11267
|
};
|
|
11268
|
+
DataManager.getBootloaderResource = (features) => {
|
|
11269
|
+
var _b, _c, _d;
|
|
11270
|
+
const deviceType = getDeviceType(features);
|
|
11271
|
+
if (deviceType !== 'pro' && deviceType !== 'touch')
|
|
11272
|
+
return undefined;
|
|
11273
|
+
const firmwareUpdateField = getFirmwareUpdateField(features, 'firmware');
|
|
11274
|
+
const targetDeviceConfigList = (_c = (_b = _a.deviceMap[deviceType]) === null || _b === void 0 ? void 0 : _b[firmwareUpdateField]) !== null && _c !== void 0 ? _c : [];
|
|
11275
|
+
const targetDeviceConfig = targetDeviceConfigList.filter(item => !!item.bootloaderResource);
|
|
11276
|
+
return (_d = findLatestRelease(targetDeviceConfig)) === null || _d === void 0 ? void 0 : _d.bootloaderResource;
|
|
11277
|
+
};
|
|
11247
11278
|
DataManager.getFirmwareChangelog = (features) => {
|
|
11248
11279
|
var _b, _c;
|
|
11249
11280
|
const deviceType = getDeviceType(features);
|
|
@@ -12692,6 +12723,28 @@ class CheckBridgeStatus extends BaseMethod {
|
|
|
12692
12723
|
}
|
|
12693
12724
|
}
|
|
12694
12725
|
|
|
12726
|
+
class CheckBootloaderRelease extends BaseMethod {
|
|
12727
|
+
init() {
|
|
12728
|
+
this.allowDeviceMode = [...this.allowDeviceMode, UI_REQUEST.BOOTLOADER];
|
|
12729
|
+
this.checkDeviceId = true;
|
|
12730
|
+
this.useDevicePassphraseState = false;
|
|
12731
|
+
}
|
|
12732
|
+
run() {
|
|
12733
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
12734
|
+
if (this.device.features) {
|
|
12735
|
+
const shouldUpdate = checkNeedUpdateBoot(this.device.features);
|
|
12736
|
+
const resource = DataManager.getBootloaderResource(this.device.features);
|
|
12737
|
+
return Promise.resolve({
|
|
12738
|
+
shouldUpdate,
|
|
12739
|
+
status: shouldUpdate ? 'outdated' : 'valid',
|
|
12740
|
+
release: resource,
|
|
12741
|
+
});
|
|
12742
|
+
}
|
|
12743
|
+
return null;
|
|
12744
|
+
});
|
|
12745
|
+
}
|
|
12746
|
+
}
|
|
12747
|
+
|
|
12695
12748
|
class DeviceBackup extends BaseMethod {
|
|
12696
12749
|
init() {
|
|
12697
12750
|
this.useDevicePassphraseState = false;
|
|
@@ -13352,6 +13405,14 @@ const updateResources = (typedCall, postMessage, device, source) => __awaiter(vo
|
|
|
13352
13405
|
postProgressTip(device, 'UpdateSysResourceSuccess', postMessage);
|
|
13353
13406
|
return true;
|
|
13354
13407
|
});
|
|
13408
|
+
const updateBootloader = (typedCall, postMessage, device, source) => __awaiter(void 0, void 0, void 0, function* () {
|
|
13409
|
+
postProgressTip(device, 'UpdateBootloader', postMessage);
|
|
13410
|
+
postProgressMessage(device, Math.floor(0), postMessage);
|
|
13411
|
+
yield updateResource(typedCall, 'bootloader.bin', source);
|
|
13412
|
+
postProgressMessage(device, Math.floor(100), postMessage);
|
|
13413
|
+
postProgressTip(device, 'UpdateBootloaderSuccess', postMessage);
|
|
13414
|
+
return true;
|
|
13415
|
+
});
|
|
13355
13416
|
|
|
13356
13417
|
class DeviceFullyUploadResource extends BaseMethod {
|
|
13357
13418
|
constructor() {
|
|
@@ -13401,6 +13462,53 @@ class DeviceFullyUploadResource extends BaseMethod {
|
|
|
13401
13462
|
}
|
|
13402
13463
|
}
|
|
13403
13464
|
|
|
13465
|
+
class DeviceUpdateBootloader extends BaseMethod {
|
|
13466
|
+
constructor() {
|
|
13467
|
+
super(...arguments);
|
|
13468
|
+
this.checkPromise = null;
|
|
13469
|
+
this.postTipMessage = (message) => {
|
|
13470
|
+
this.postMessage(createUiMessage(UI_REQUEST.FIRMWARE_TIP, {
|
|
13471
|
+
device: this.device.toMessageObject(),
|
|
13472
|
+
data: {
|
|
13473
|
+
message,
|
|
13474
|
+
},
|
|
13475
|
+
}));
|
|
13476
|
+
};
|
|
13477
|
+
}
|
|
13478
|
+
init() {
|
|
13479
|
+
this.allowDeviceMode = [UI_REQUEST.BOOTLOADER, UI_REQUEST.INITIALIZE];
|
|
13480
|
+
this.requireDeviceMode = [];
|
|
13481
|
+
this.useDevicePassphraseState = false;
|
|
13482
|
+
}
|
|
13483
|
+
run() {
|
|
13484
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
13485
|
+
const { device } = this;
|
|
13486
|
+
const { features } = device;
|
|
13487
|
+
if (!(features === null || features === void 0 ? void 0 : features.bootloader_mode) && features) {
|
|
13488
|
+
if (features && checkNeedUpdateBoot(features)) {
|
|
13489
|
+
this.postTipMessage('CheckLatestUiResource');
|
|
13490
|
+
const resourceUrl = DataManager.getBootloaderResource(features);
|
|
13491
|
+
if (resourceUrl) {
|
|
13492
|
+
this.postTipMessage('DownloadLatestBootloaderResource');
|
|
13493
|
+
const resource = yield getSysResourceBinary(resourceUrl);
|
|
13494
|
+
this.postTipMessage('DownloadLatestBootloaderResourceSuccess');
|
|
13495
|
+
if (resource) {
|
|
13496
|
+
try {
|
|
13497
|
+
yield updateBootloader(this.device.getCommands().typedCall.bind(this.device.getCommands()), this.postMessage, device, resource.binary);
|
|
13498
|
+
return yield Promise.resolve(true);
|
|
13499
|
+
}
|
|
13500
|
+
catch (e) {
|
|
13501
|
+
return Promise.reject(hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.RuntimeError, `update bootloader error, err: ${e}`));
|
|
13502
|
+
}
|
|
13503
|
+
}
|
|
13504
|
+
}
|
|
13505
|
+
}
|
|
13506
|
+
}
|
|
13507
|
+
return Promise.resolve(true);
|
|
13508
|
+
});
|
|
13509
|
+
}
|
|
13510
|
+
}
|
|
13511
|
+
|
|
13404
13512
|
class FirmwareUpdate extends BaseMethod {
|
|
13405
13513
|
init() {
|
|
13406
13514
|
this.allowDeviceMode = [UI_REQUEST.BOOTLOADER, UI_REQUEST.INITIALIZE];
|
|
@@ -18044,6 +18152,7 @@ var ApiMethods = /*#__PURE__*/Object.freeze({
|
|
|
18044
18152
|
checkBLEFirmwareRelease: CheckBLEFirmwareRelease,
|
|
18045
18153
|
checkTransportRelease: CheckTransportRelease,
|
|
18046
18154
|
checkBridgeStatus: CheckBridgeStatus,
|
|
18155
|
+
checkBootloaderRelease: CheckBootloaderRelease,
|
|
18047
18156
|
deviceBackup: DeviceBackup,
|
|
18048
18157
|
deviceChangePin: DeviceChangePin,
|
|
18049
18158
|
deviceFlags: DeviceFlags,
|
|
@@ -18058,6 +18167,7 @@ var ApiMethods = /*#__PURE__*/Object.freeze({
|
|
|
18058
18167
|
deviceVerify: DeviceVerify,
|
|
18059
18168
|
deviceWipe: DeviceWipe,
|
|
18060
18169
|
deviceFullyUploadResource: DeviceFullyUploadResource,
|
|
18170
|
+
deviceUpdateBootloader: DeviceUpdateBootloader,
|
|
18061
18171
|
firmwareUpdate: FirmwareUpdate,
|
|
18062
18172
|
firmwareUpdateV2: FirmwareUpdateV2,
|
|
18063
18173
|
requestWebUsbDevice: RequestWebUsbDevice,
|
|
@@ -18800,6 +18910,7 @@ exports.RESPONSE_EVENT = RESPONSE_EVENT;
|
|
|
18800
18910
|
exports.UI_EVENT = UI_EVENT;
|
|
18801
18911
|
exports.UI_REQUEST = UI_REQUEST$1;
|
|
18802
18912
|
exports.UI_RESPONSE = UI_RESPONSE;
|
|
18913
|
+
exports.checkNeedUpdateBoot = checkNeedUpdateBoot;
|
|
18803
18914
|
exports.corsValidator = corsValidator;
|
|
18804
18915
|
exports.createDeviceMessage = createDeviceMessage;
|
|
18805
18916
|
exports.createErrorMessage = createErrorMessage;
|
package/dist/inject.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inject.d.ts","sourceRoot":"","sources":["../src/inject.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,UAAU,CAAC;IACjB,YAAY,EAAE,YAAY,CAAC;IAC3B,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAC5B,UAAU,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAClC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC3B;AAED,eAAO,MAAM,MAAM,+DAOhB,SAAS,KAAG,
|
|
1
|
+
{"version":3,"file":"inject.d.ts","sourceRoot":"","sources":["../src/inject.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,UAAU,CAAC;IACjB,YAAY,EAAE,YAAY,CAAC;IAC3B,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAC5B,UAAU,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAClC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC3B;AAED,eAAO,MAAM,MAAM,+DAOhB,SAAS,KAAG,OAqNd,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Response } from '../params';
|
|
2
|
+
export declare type CheckBootloaderReleaseResponse = {
|
|
3
|
+
shouldUpdate: boolean;
|
|
4
|
+
status: 'outdated' | 'valid';
|
|
5
|
+
release: string | undefined;
|
|
6
|
+
} | null;
|
|
7
|
+
export declare function checkBootloaderRelease(connectId?: string): Response<CheckBootloaderReleaseResponse>;
|
|
8
|
+
//# sourceMappingURL=checkBootloaderRelease.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkBootloaderRelease.d.ts","sourceRoot":"","sources":["../../../src/types/api/checkBootloaderRelease.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAE1C,oBAAY,8BAA8B,GAAG;IAC3C,YAAY,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC;IAC7B,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B,GAAG,IAAI,CAAC;AAET,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAC5C,SAAS,CAAC,EAAE,MAAM,GACjB,QAAQ,CAAC,8BAA8B,CAAC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { Response } from '../params';
|
|
2
2
|
import { TransportReleaseStatus } from '../firmware';
|
|
3
|
-
export declare function checkTransportRelease(): Response<TransportReleaseStatus>;
|
|
3
|
+
export declare function checkTransportRelease(connectId?: string): Response<TransportReleaseStatus>;
|
|
4
4
|
//# sourceMappingURL=checkTransportRelease.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkTransportRelease.d.ts","sourceRoot":"","sources":["../../../src/types/api/checkTransportRelease.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAErD,MAAM,CAAC,OAAO,UAAU,qBAAqB,
|
|
1
|
+
{"version":3,"file":"checkTransportRelease.d.ts","sourceRoot":"","sources":["../../../src/types/api/checkTransportRelease.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAErD,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC,sBAAsB,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deviceUpdateBootloader.d.ts","sourceRoot":"","sources":["../../../src/types/api/deviceUpdateBootloader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAE1C,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC"}
|
|
@@ -4,6 +4,7 @@ import { init } from './init';
|
|
|
4
4
|
import { getLogs } from './getLogs';
|
|
5
5
|
import { checkTransportRelease } from './checkTransportRelease';
|
|
6
6
|
import { checkBridgeStatus } from './checkBridgeStatus';
|
|
7
|
+
import { checkBootloaderRelease } from './checkBootloaderRelease';
|
|
7
8
|
import { searchDevices } from './searchDevices';
|
|
8
9
|
import { getFeatures } from './getFeatures';
|
|
9
10
|
import { getPassphraseState } from './getPassphraseState';
|
|
@@ -25,6 +26,7 @@ import { deviceUpdateReboot } from './deviceUpdateReboot';
|
|
|
25
26
|
import { deviceUploadResource } from './deviceUploadResource';
|
|
26
27
|
import { deviceSupportFeatures } from './deviceSupportFeatures';
|
|
27
28
|
import { deviceFullyUploadResource } from './deviceFullyUploadResource';
|
|
29
|
+
import { deviceUpdateBootloader } from './deviceUpdateBootloader';
|
|
28
30
|
import { cipherKeyValue } from './cipherKeyValue';
|
|
29
31
|
import { evmGetAddress } from './evmGetAddress';
|
|
30
32
|
import { evmGetPublicKey } from './evmGetPublicKey';
|
|
@@ -93,6 +95,7 @@ export declare type CoreApi = {
|
|
|
93
95
|
getLogs: typeof getLogs;
|
|
94
96
|
checkTransportRelease: typeof checkTransportRelease;
|
|
95
97
|
checkBridgeStatus: typeof checkBridgeStatus;
|
|
98
|
+
checkBootloaderRelease: typeof checkBootloaderRelease;
|
|
96
99
|
searchDevices: typeof searchDevices;
|
|
97
100
|
requestWebUsbDevice: typeof requestWebUsbDevice;
|
|
98
101
|
getFeatures: typeof getFeatures;
|
|
@@ -111,6 +114,7 @@ export declare type CoreApi = {
|
|
|
111
114
|
deviceVerify: typeof deviceVerify;
|
|
112
115
|
deviceWipe: typeof deviceWipe;
|
|
113
116
|
deviceFullyUploadResource: typeof deviceFullyUploadResource;
|
|
117
|
+
deviceUpdateBootloader: typeof deviceUpdateBootloader;
|
|
114
118
|
checkFirmwareRelease: typeof checkFirmwareRelease;
|
|
115
119
|
checkBLEFirmwareRelease: typeof checkBLEFirmwareRelease;
|
|
116
120
|
firmwareUpdate: typeof firmwareUpdate;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/api/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/api/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,cAAc,UAAU,CAAC;AAEzB,oBAAY,OAAO,GAAG;IAIpB,IAAI,EAAE,OAAO,IAAI,CAAC;IAClB,EAAE,EAAE,OAAO,EAAE,CAAC;IACd,GAAG,EAAE,OAAO,GAAG,CAAC;IAChB,kBAAkB,EAAE,OAAO,kBAAkB,CAAC;IAC9C,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,IAAI,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;IACpC,UAAU,EAAE,OAAO,UAAU,CAAC;IAC9B,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,OAAO,EAAE,OAAO,OAAO,CAAC;IAKxB,qBAAqB,EAAE,OAAO,qBAAqB,CAAC;IACpD,iBAAiB,EAAE,OAAO,iBAAiB,CAAC;IAC5C,sBAAsB,EAAE,OAAO,sBAAsB,CAAC;IAKtD,aAAa,EAAE,OAAO,aAAa,CAAC;IACpC,mBAAmB,EAAE,OAAO,mBAAmB,CAAC;IAChD,WAAW,EAAE,OAAO,WAAW,CAAC;IAChC,kBAAkB,EAAE,OAAO,kBAAkB,CAAC;IAC9C,YAAY,EAAE,OAAO,YAAY,CAAC;IAClC,eAAe,EAAE,OAAO,eAAe,CAAC;IACxC,WAAW,EAAE,OAAO,WAAW,CAAC;IAChC,yBAAyB,EAAE,OAAO,yBAAyB,CAAC;IAC5D,wBAAwB,EAAE,OAAO,wBAAwB,CAAC;IAC1D,cAAc,EAAE,OAAO,cAAc,CAAC;IACtC,WAAW,EAAE,OAAO,WAAW,CAAC;IAChC,cAAc,EAAE,OAAO,cAAc,CAAC;IACtC,kBAAkB,EAAE,OAAO,kBAAkB,CAAC;IAC9C,oBAAoB,EAAE,OAAO,oBAAoB,CAAC;IAClD,qBAAqB,EAAE,OAAO,qBAAqB,CAAC;IACpD,YAAY,EAAE,OAAO,YAAY,CAAC;IAClC,UAAU,EAAE,OAAO,UAAU,CAAC;IAC9B,yBAAyB,EAAE,OAAO,yBAAyB,CAAC;IAC5D,sBAAsB,EAAE,OAAO,sBAAsB,CAAC;IACtD,oBAAoB,EAAE,OAAO,oBAAoB,CAAC;IAClD,uBAAuB,EAAE,OAAO,uBAAuB,CAAC;IACxD,cAAc,EAAE,OAAO,cAAc,CAAC;IACtC,gBAAgB,EAAE,OAAO,gBAAgB,CAAC;IAE1C,cAAc,EAAE,OAAO,cAAc,CAAC;IAKtC,aAAa,EAAE,OAAO,aAAa,CAAC;IACpC,eAAe,EAAE,OAAO,eAAe,CAAC;IACxC,cAAc,EAAE,OAAO,cAAc,CAAC;IACtC,oBAAoB,EAAE,OAAO,oBAAoB,CAAC;IAClD,kBAAkB,EAAE,OAAO,kBAAkB,CAAC;IAC9C,gBAAgB,EAAE,OAAO,gBAAgB,CAAC;IAC1C,gBAAgB,EAAE,OAAO,gBAAgB,CAAC;IAK1C,aAAa,EAAE,OAAO,aAAa,CAAC;IACpC,eAAe,EAAE,OAAO,eAAe,CAAC;IACxC,cAAc,EAAE,OAAO,cAAc,CAAC;IACtC,kBAAkB,EAAE,OAAO,kBAAkB,CAAC;IAC9C,gBAAgB,EAAE,OAAO,gBAAgB,CAAC;IAK1C,kBAAkB,EAAE,OAAO,kBAAkB,CAAC;IAC9C,oBAAoB,EAAE,OAAO,oBAAoB,CAAC;IAClD,mBAAmB,EAAE,OAAO,mBAAmB,CAAC;IAChD,uBAAuB,EAAE,OAAO,uBAAuB,CAAC;IACxD,qBAAqB,EAAE,OAAO,qBAAqB,CAAC;IAKpD,aAAa,EAAE,OAAO,aAAa,CAAC;IACpC,kBAAkB,EAAE,OAAO,kBAAkB,CAAC;IAK9C,aAAa,EAAE,OAAO,aAAa,CAAC;IACpC,kBAAkB,EAAE,OAAO,kBAAkB,CAAC;IAK9C,iBAAiB,EAAE,OAAO,iBAAiB,CAAC;IAC5C,sBAAsB,EAAE,OAAO,sBAAsB,CAAC;IAKtD,cAAc,EAAE,OAAO,cAAc,CAAC;IACtC,eAAe,EAAE,OAAO,eAAe,CAAC;IACxC,mBAAmB,EAAE,OAAO,mBAAmB,CAAC;IAKhD,iBAAiB,EAAE,OAAO,iBAAiB,CAAC;IAC5C,kBAAkB,EAAE,OAAO,kBAAkB,CAAC;IAC9C,uBAAuB,EAAE,OAAO,uBAAuB,CAAC;IACxD,sBAAsB,EAAE,OAAO,sBAAsB,CAAC;IAKtD,cAAc,EAAE,OAAO,cAAc,CAAC;IACtC,mBAAmB,EAAE,OAAO,mBAAmB,CAAC;IAKhD,eAAe,EAAE,OAAO,eAAe,CAAC;IACxC,iBAAiB,EAAE,OAAO,iBAAiB,CAAC;IAC5C,gBAAgB,EAAE,OAAO,gBAAgB,CAAC;IAC1C,oBAAoB,EAAE,OAAO,oBAAoB,CAAC;IAKlD,cAAc,EAAE,OAAO,cAAc,CAAC;IACtC,mBAAmB,EAAE,OAAO,mBAAmB,CAAC;IAKhD,gBAAgB,EAAE,OAAO,gBAAgB,CAAC;IAC1C,kBAAkB,EAAE,OAAO,kBAAkB,CAAC;IAC9C,qBAAqB,EAAE,OAAO,qBAAqB,CAAC;IAKpD,aAAa,EAAE,OAAO,aAAa,CAAC;IACpC,kBAAkB,EAAE,OAAO,kBAAkB,CAAC;IAK9C,aAAa,EAAE,OAAO,aAAa,CAAC;IACpC,eAAe,EAAE,OAAO,eAAe,CAAC;IACxC,kBAAkB,EAAE,OAAO,kBAAkB,CAAC;IAK9C,iBAAiB,EAAE,OAAO,iBAAiB,CAAC;IAC5C,mBAAmB,EAAE,OAAO,mBAAmB,CAAC;IAChD,sBAAsB,EAAE,OAAO,sBAAsB,CAAC;IACtD,kBAAkB,EAAE,OAAO,kBAAkB,CAAC;IAK9C,kBAAkB,EAAE,OAAO,kBAAkB,CAAC;IAC9C,uBAAuB,EAAE,OAAO,uBAAuB,CAAC;IAKxD,kBAAkB,EAAE,OAAO,kBAAkB,CAAC;IAC9C,uBAAuB,EAAE,OAAO,uBAAuB,CAAC;CACzD,CAAC"}
|
package/dist/types/settings.d.ts
CHANGED
|
@@ -24,6 +24,7 @@ export declare type IFirmwareReleaseInfo = {
|
|
|
24
24
|
resource?: string;
|
|
25
25
|
fullResource?: string;
|
|
26
26
|
fullResourceRange?: string[];
|
|
27
|
+
bootloaderResource?: string;
|
|
27
28
|
fingerprint: string;
|
|
28
29
|
version: IVersionArray;
|
|
29
30
|
changelog: {
|
|
@@ -44,7 +45,7 @@ export declare type IBLEFirmwareReleaseInfo = {
|
|
|
44
45
|
export declare type DeviceTypeMap = {
|
|
45
46
|
[k in IDeviceType]: {
|
|
46
47
|
firmware: IFirmwareReleaseInfo[];
|
|
47
|
-
'firmware-
|
|
48
|
+
'firmware-v3'?: IFirmwareReleaseInfo[];
|
|
48
49
|
ble: IBLEFirmwareReleaseInfo[];
|
|
49
50
|
};
|
|
50
51
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../src/types/settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5C,oBAAY,eAAe,GAAG;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,GAAG,EAAE,MAAM,GAAG,KAAK,GAAG,cAAc,GAAG,UAAU,GAAG,cAAc,GAAG,QAAQ,CAAC;IAC9E,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,oBAAY,aAAa,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAErD,oBAAY,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;AAGxC,oBAAY,oBAAoB,GAAG;IACjC,QAAQ,EAAE,OAAO,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IAEZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,aAAa,CAAC;IACvB,SAAS,EAAE;SACR,CAAC,IAAI,OAAO,GAAG,MAAM;KACvB,CAAC;CACH,CAAC;AAGF,oBAAY,uBAAuB,GAAG;IACpC,QAAQ,EAAE,OAAO,CAAC;IAElB,GAAG,EAAE,MAAM,CAAC;IAEZ,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,aAAa,CAAC;IACvB,SAAS,EAAE;SACR,CAAC,IAAI,OAAO,GAAG,MAAM;KACvB,CAAC;CACH,CAAC;AAEF,oBAAY,aAAa,GAAG;KACzB,CAAC,IAAI,WAAW,GAAG;QAClB,QAAQ,EAAE,oBAAoB,EAAE,CAAC;QACjC,aAAa,CAAC,EAAE,oBAAoB,EAAE,CAAC;QACvC,GAAG,EAAE,uBAAuB,EAAE,CAAC;KAChC;CACF,CAAC;AAEF,oBAAY,SAAS,GAAG;IACtB,MAAM,EAAE;QACN,OAAO,EAAE,aAAa,CAAC;QACvB,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,GAAG,EAAE,MAAM,CAAC;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE;aACR,CAAC,IAAI,OAAO,GAAG,MAAM;SACvB,CAAC;KACH,CAAC;CACH,CAAC;AAEF,oBAAY,oBAAoB,GAAG;IACjC,MAAM,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;CAC7B,GAAG,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../src/types/settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5C,oBAAY,eAAe,GAAG;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,GAAG,EAAE,MAAM,GAAG,KAAK,GAAG,cAAc,GAAG,UAAU,GAAG,cAAc,GAAG,QAAQ,CAAC;IAC9E,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,oBAAY,aAAa,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAErD,oBAAY,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;AAGxC,oBAAY,oBAAoB,GAAG;IACjC,QAAQ,EAAE,OAAO,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IAEZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,aAAa,CAAC;IACvB,SAAS,EAAE;SACR,CAAC,IAAI,OAAO,GAAG,MAAM;KACvB,CAAC;CACH,CAAC;AAGF,oBAAY,uBAAuB,GAAG;IACpC,QAAQ,EAAE,OAAO,CAAC;IAElB,GAAG,EAAE,MAAM,CAAC;IAEZ,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,aAAa,CAAC;IACvB,SAAS,EAAE;SACR,CAAC,IAAI,OAAO,GAAG,MAAM;KACvB,CAAC;CACH,CAAC;AAEF,oBAAY,aAAa,GAAG;KACzB,CAAC,IAAI,WAAW,GAAG;QAClB,QAAQ,EAAE,oBAAoB,EAAE,CAAC;QACjC,aAAa,CAAC,EAAE,oBAAoB,EAAE,CAAC;QACvC,GAAG,EAAE,uBAAuB,EAAE,CAAC;KAChC;CACF,CAAC;AAEF,oBAAY,SAAS,GAAG;IACtB,MAAM,EAAE;QACN,OAAO,EAAE,aAAa,CAAC;QACvB,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,GAAG,EAAE,MAAM,CAAC;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE;aACR,CAAC,IAAI,OAAO,GAAG,MAAM;SACvB,CAAC;KACH,CAAC;CACH,CAAC;AAEF,oBAAY,oBAAoB,GAAG;IACjC,MAAM,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;CAC7B,GAAG,aAAa,CAAC"}
|
|
@@ -9,10 +9,11 @@ export declare const getDeviceUUID: (features: Features) => string;
|
|
|
9
9
|
export declare const getDeviceLabel: (features: Features) => string;
|
|
10
10
|
export declare const getDeviceFirmwareVersion: (features: Features | undefined) => IVersionArray;
|
|
11
11
|
export declare const getDeviceBLEFirmwareVersion: (features: Features) => IVersionArray | null;
|
|
12
|
+
export declare const getDeviceBootloaderVersion: (features: Features) => IVersionArray;
|
|
12
13
|
export declare const supportInputPinOnSoftware: (features: Features) => SupportFeatureType;
|
|
13
14
|
export declare const supportNewPassphrase: (features?: import("packages/hd-transport/dist").Features | undefined) => SupportFeatureType;
|
|
14
15
|
export declare const getPassphraseState: (features: Features, commands: DeviceCommands) => Promise<string | false>;
|
|
15
16
|
export declare const supportBatchPublicKey: (features?: import("packages/hd-transport/dist").Features | undefined) => boolean;
|
|
16
17
|
export declare const supportModifyHomescreen: (features?: import("packages/hd-transport/dist").Features | undefined) => SupportFeatureType;
|
|
17
|
-
export declare const getFirmwareUpdateField: (features: Features, updateType: 'firmware' | 'ble') => "firmware" | "ble" | "firmware-
|
|
18
|
+
export declare const getFirmwareUpdateField: (features: Features, updateType: 'firmware' | 'ble') => "firmware" | "ble" | "firmware-v3";
|
|
18
19
|
//# sourceMappingURL=deviceFeaturesUtils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deviceFeaturesUtils.d.ts","sourceRoot":"","sources":["../../src/utils/deviceFeaturesUtils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,EACV,QAAQ,EACR,aAAa,EACb,WAAW,EACX,YAAY,EACZ,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAElB,eAAO,MAAM,cAAc,4EAA0B,YAUpD,CAAC;AAEF,eAAO,MAAM,aAAa,4EAA0B,WAUnD,CAAC;AAEF,eAAO,MAAM,yBAAyB,4EAA0B,WACvC,CAAC;AAE1B,eAAO,MAAM,sBAAsB,iCAAoB,WAAW,GAAG,IAKpE,CAAC;AAEF,eAAO,MAAM,uBAAuB,qCAAwB,WAQ3D,CAAC;AAEF,eAAO,MAAM,aAAa,aAAc,QAAQ,WAM/C,CAAC;AAEF,eAAO,MAAM,cAAc,aAAc,QAAQ,WAOhD,CAAC;AAKF,eAAO,MAAM,wBAAwB,aAAc,QAAQ,GAAG,SAAS,kBAOtE,CAAC;AAKF,eAAO,MAAM,2BAA2B,aAAc,QAAQ,KAAG,aAAa,GAAG,IAQhF,CAAC;AAEF,eAAO,MAAM,yBAAyB,aAAc,QAAQ,KAAG,kBAU9D,CAAC;AAEF,eAAO,MAAM,oBAAoB,4EAA0B,kBAW1D,CAAC;AAEF,eAAO,MAAM,kBAAkB,aAAoB,QAAQ,YAAY,cAAc,4BAUpF,CAAC;AAEF,eAAO,MAAM,qBAAqB,4EAA0B,OAU3D,CAAC;AAEF,eAAO,MAAM,uBAAuB,4EAA0B,kBAU7D,CAAC;AAKF,eAAO,MAAM,sBAAsB,aAAc,QAAQ,cAAc,UAAU,GAAG,KAAK,uCAYxF,CAAC"}
|
|
1
|
+
{"version":3,"file":"deviceFeaturesUtils.d.ts","sourceRoot":"","sources":["../../src/utils/deviceFeaturesUtils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,EACV,QAAQ,EACR,aAAa,EACb,WAAW,EACX,YAAY,EACZ,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAElB,eAAO,MAAM,cAAc,4EAA0B,YAUpD,CAAC;AAEF,eAAO,MAAM,aAAa,4EAA0B,WAUnD,CAAC;AAEF,eAAO,MAAM,yBAAyB,4EAA0B,WACvC,CAAC;AAE1B,eAAO,MAAM,sBAAsB,iCAAoB,WAAW,GAAG,IAKpE,CAAC;AAEF,eAAO,MAAM,uBAAuB,qCAAwB,WAQ3D,CAAC;AAEF,eAAO,MAAM,aAAa,aAAc,QAAQ,WAM/C,CAAC;AAEF,eAAO,MAAM,cAAc,aAAc,QAAQ,WAOhD,CAAC;AAKF,eAAO,MAAM,wBAAwB,aAAc,QAAQ,GAAG,SAAS,kBAOtE,CAAC;AAKF,eAAO,MAAM,2BAA2B,aAAc,QAAQ,KAAG,aAAa,GAAG,IAQhF,CAAC;AAEF,eAAO,MAAM,0BAA0B,aAAc,QAAQ,kBAM5D,CAAC;AAEF,eAAO,MAAM,yBAAyB,aAAc,QAAQ,KAAG,kBAU9D,CAAC;AAEF,eAAO,MAAM,oBAAoB,4EAA0B,kBAW1D,CAAC;AAEF,eAAO,MAAM,kBAAkB,aAAoB,QAAQ,YAAY,cAAc,4BAUpF,CAAC;AAEF,eAAO,MAAM,qBAAqB,4EAA0B,OAU3D,CAAC;AAEF,eAAO,MAAM,uBAAuB,4EAA0B,kBAU7D,CAAC;AAKF,eAAO,MAAM,sBAAsB,aAAc,QAAQ,cAAc,UAAU,GAAG,KAAK,uCAYxF,CAAC"}
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ export * from './versionUtils';
|
|
|
3
3
|
export * from './patch';
|
|
4
4
|
export { getDeviceType, getDeviceTypeByBleName, getDeviceTypeByDeviceId, getDeviceUUID, getDeviceLabel, getFirmwareUpdateField, supportInputPinOnSoftware, } from './deviceFeaturesUtils';
|
|
5
5
|
export { getHDPath, getScriptType, getOutputScriptType } from '../api/helpers/pathUtils';
|
|
6
|
+
export { checkNeedUpdateBoot } from '../api/firmware/updateBootloader';
|
|
6
7
|
export { getLogger, enableLog, LoggerNames, getLog, setLoggerPostMessage } from './logger';
|
|
7
8
|
export { getHomeScreenHex } from './homescreen';
|
|
8
9
|
export declare const wait: (ms: number) => Promise<unknown>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,uBAAuB,EACvB,aAAa,EACb,cAAc,EACd,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEzF,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAE3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,eAAO,MAAM,IAAI,OAAQ,MAAM,qBAG3B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,uBAAuB,EACvB,aAAa,EACb,cAAc,EACd,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEzF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAEvE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAE3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,eAAO,MAAM,IAAI,OAAQ,MAAM,qBAG3B,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@onekeyfe/hd-core",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.29",
|
|
4
4
|
"description": "> TODO: description",
|
|
5
5
|
"author": "OneKey",
|
|
6
6
|
"homepage": "https://github.com/OneKeyHQ/hardware-js-sdk#readme",
|
|
@@ -24,8 +24,8 @@
|
|
|
24
24
|
"url": "https://github.com/OneKeyHQ/hardware-js-sdk/issues"
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@onekeyfe/hd-shared": "^0.2.
|
|
28
|
-
"@onekeyfe/hd-transport": "^0.2.
|
|
27
|
+
"@onekeyfe/hd-shared": "^0.2.29",
|
|
28
|
+
"@onekeyfe/hd-transport": "^0.2.29",
|
|
29
29
|
"axios": "^0.27.2",
|
|
30
30
|
"bignumber.js": "^9.0.2",
|
|
31
31
|
"jszip": "^3.10.1",
|
|
@@ -42,5 +42,5 @@
|
|
|
42
42
|
"@types/semver": "^7.3.9",
|
|
43
43
|
"ripple-keypairs": "^1.1.4"
|
|
44
44
|
},
|
|
45
|
-
"gitHead": "
|
|
45
|
+
"gitHead": "fe8cb7c73571d43ef6db56af728ee69ac3fa731e"
|
|
46
46
|
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { BaseMethod } from './BaseMethod';
|
|
2
|
+
|
|
3
|
+
import { UI_REQUEST } from '../constants/ui-request';
|
|
4
|
+
import { checkNeedUpdateBoot } from './firmware/updateBootloader';
|
|
5
|
+
import { DataManager } from '../data-manager';
|
|
6
|
+
|
|
7
|
+
export default class CheckBootloaderRelease extends BaseMethod {
|
|
8
|
+
init() {
|
|
9
|
+
this.allowDeviceMode = [...this.allowDeviceMode, UI_REQUEST.BOOTLOADER];
|
|
10
|
+
this.checkDeviceId = true;
|
|
11
|
+
this.useDevicePassphraseState = false;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
async run() {
|
|
15
|
+
if (this.device.features) {
|
|
16
|
+
const shouldUpdate = checkNeedUpdateBoot(this.device.features);
|
|
17
|
+
const resource = DataManager.getBootloaderResource(this.device.features);
|
|
18
|
+
return Promise.resolve({
|
|
19
|
+
shouldUpdate,
|
|
20
|
+
status: shouldUpdate ? 'outdated' : 'valid',
|
|
21
|
+
release: resource,
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
return null;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { ERRORS, HardwareErrorCode, Deferred } from '@onekeyfe/hd-shared';
|
|
2
|
+
import { UI_REQUEST } from '../../constants/ui-request';
|
|
3
|
+
import { BaseMethod } from '../BaseMethod';
|
|
4
|
+
import { getSysResourceBinary } from '../firmware/getBinary';
|
|
5
|
+
import { updateBootloader } from '../firmware/uploadFirmware';
|
|
6
|
+
import { createUiMessage } from '../../events/ui-request';
|
|
7
|
+
import type { KnownDevice } from '../../types';
|
|
8
|
+
import { DataManager } from '../../data-manager';
|
|
9
|
+
import { checkNeedUpdateBoot } from '../firmware/updateBootloader';
|
|
10
|
+
|
|
11
|
+
export default class DeviceUpdateBootloader extends BaseMethod {
|
|
12
|
+
checkPromise: Deferred<any> | null = null;
|
|
13
|
+
|
|
14
|
+
init() {
|
|
15
|
+
this.allowDeviceMode = [UI_REQUEST.BOOTLOADER, UI_REQUEST.INITIALIZE];
|
|
16
|
+
this.requireDeviceMode = [];
|
|
17
|
+
this.useDevicePassphraseState = false;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
postTipMessage = (message: string) => {
|
|
21
|
+
this.postMessage(
|
|
22
|
+
createUiMessage(UI_REQUEST.FIRMWARE_TIP, {
|
|
23
|
+
device: this.device.toMessageObject() as KnownDevice,
|
|
24
|
+
data: {
|
|
25
|
+
message,
|
|
26
|
+
},
|
|
27
|
+
})
|
|
28
|
+
);
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
async run() {
|
|
32
|
+
const { device } = this;
|
|
33
|
+
const { features } = device;
|
|
34
|
+
|
|
35
|
+
if (!features?.bootloader_mode && features) {
|
|
36
|
+
// check & upgrade firmware resource
|
|
37
|
+
if (features && checkNeedUpdateBoot(features)) {
|
|
38
|
+
this.postTipMessage('CheckLatestUiResource');
|
|
39
|
+
const resourceUrl = DataManager.getBootloaderResource(features);
|
|
40
|
+
if (resourceUrl) {
|
|
41
|
+
this.postTipMessage('DownloadLatestBootloaderResource');
|
|
42
|
+
const resource = await getSysResourceBinary(resourceUrl);
|
|
43
|
+
this.postTipMessage('DownloadLatestBootloaderResourceSuccess');
|
|
44
|
+
if (resource) {
|
|
45
|
+
try {
|
|
46
|
+
await updateBootloader(
|
|
47
|
+
this.device.getCommands().typedCall.bind(this.device.getCommands()),
|
|
48
|
+
this.postMessage,
|
|
49
|
+
device,
|
|
50
|
+
resource.binary
|
|
51
|
+
);
|
|
52
|
+
return await Promise.resolve(true);
|
|
53
|
+
} catch (e) {
|
|
54
|
+
return Promise.reject(
|
|
55
|
+
ERRORS.TypedError(
|
|
56
|
+
HardwareErrorCode.RuntimeError,
|
|
57
|
+
`update bootloader error, err: ${e}`
|
|
58
|
+
)
|
|
59
|
+
);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
return Promise.resolve(true);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import semver from 'semver';
|
|
2
|
+
import { Features } from '../../types';
|
|
3
|
+
import { getDeviceType } from '../../utils';
|
|
4
|
+
import {
|
|
5
|
+
getDeviceBootloaderVersion,
|
|
6
|
+
getDeviceFirmwareVersion,
|
|
7
|
+
} from '../../utils/deviceFeaturesUtils';
|
|
8
|
+
|
|
9
|
+
export function checkNeedUpdateBoot(features: Features) {
|
|
10
|
+
const deviceType = getDeviceType(features);
|
|
11
|
+
if (deviceType !== 'touch') return false;
|
|
12
|
+
const currentVersion = getDeviceFirmwareVersion(features).join('.');
|
|
13
|
+
const bootloaderVersion = getDeviceBootloaderVersion(features).join('.');
|
|
14
|
+
return (
|
|
15
|
+
// support ResourceUpdate version 3.2.0
|
|
16
|
+
semver.gte(currentVersion, '3.2.0') &&
|
|
17
|
+
// support update bootloader version 4.1.0
|
|
18
|
+
semver.gte(currentVersion, '4.1.0') &&
|
|
19
|
+
// target bootloader version
|
|
20
|
+
semver.lte(bootloaderVersion, '2.4.0')
|
|
21
|
+
);
|
|
22
|
+
}
|
|
@@ -183,3 +183,17 @@ export const updateResources = async (
|
|
|
183
183
|
postProgressTip(device, 'UpdateSysResourceSuccess', postMessage);
|
|
184
184
|
return true;
|
|
185
185
|
};
|
|
186
|
+
|
|
187
|
+
export const updateBootloader = async (
|
|
188
|
+
typedCall: TypedCall,
|
|
189
|
+
postMessage: (message: CoreMessage) => void,
|
|
190
|
+
device: Device,
|
|
191
|
+
source: ArrayBuffer
|
|
192
|
+
) => {
|
|
193
|
+
postProgressTip(device, 'UpdateBootloader', postMessage);
|
|
194
|
+
postProgressMessage(device, Math.floor(0), postMessage);
|
|
195
|
+
await updateResource(typedCall, 'bootloader.bin', source);
|
|
196
|
+
postProgressMessage(device, Math.floor(100), postMessage);
|
|
197
|
+
postProgressTip(device, 'UpdateBootloaderSuccess', postMessage);
|
|
198
|
+
return true;
|
|
199
|
+
};
|
package/src/api/index.ts
CHANGED
|
@@ -6,6 +6,7 @@ export { default as checkFirmwareRelease } from './CheckFirmwareRelease';
|
|
|
6
6
|
export { default as checkBLEFirmwareRelease } from './CheckBLEFirmwareRelease';
|
|
7
7
|
export { default as checkTransportRelease } from './CheckTransportRelease';
|
|
8
8
|
export { default as checkBridgeStatus } from './CheckBridgeStatus';
|
|
9
|
+
export { default as checkBootloaderRelease } from './CheckBootloaderRelease';
|
|
9
10
|
export { default as deviceBackup } from './device/DeviceBackup';
|
|
10
11
|
export { default as deviceChangePin } from './device/DeviceChangePin';
|
|
11
12
|
export { default as deviceFlags } from './device/DeviceFlags';
|
|
@@ -20,6 +21,7 @@ export { default as deviceSupportFeatures } from './device/DeviceSupportFeatures
|
|
|
20
21
|
export { default as deviceVerify } from './device/DeviceVerify';
|
|
21
22
|
export { default as deviceWipe } from './device/DeviceWipe';
|
|
22
23
|
export { default as deviceFullyUploadResource } from './device/DeviceFullyUploadResource';
|
|
24
|
+
export { default as deviceUpdateBootloader } from './device/DeviceUpdateBootloader';
|
|
23
25
|
|
|
24
26
|
export { default as firmwareUpdate } from './FirmwareUpdate';
|
|
25
27
|
export { default as firmwareUpdateV2 } from './FirmwareUpdateV2';
|
|
@@ -21,7 +21,7 @@ import type {
|
|
|
21
21
|
} from '../types';
|
|
22
22
|
import { getReleaseChangelog, getReleaseStatus, findLatestRelease } from '../utils/release';
|
|
23
23
|
|
|
24
|
-
type FirmwareField = 'firmware' | 'firmware-
|
|
24
|
+
type FirmwareField = 'firmware' | 'firmware-v3';
|
|
25
25
|
|
|
26
26
|
export default class DataManager {
|
|
27
27
|
static deviceMap: DeviceTypeMap = {
|
|
@@ -106,6 +106,17 @@ export default class DataManager {
|
|
|
106
106
|
return findLatestRelease(targetDeviceConfig)?.fullResource;
|
|
107
107
|
};
|
|
108
108
|
|
|
109
|
+
static getBootloaderResource = (features: Features) => {
|
|
110
|
+
const deviceType = getDeviceType(features);
|
|
111
|
+
|
|
112
|
+
if (deviceType !== 'pro' && deviceType !== 'touch') return undefined;
|
|
113
|
+
const firmwareUpdateField = getFirmwareUpdateField(features, 'firmware') as FirmwareField;
|
|
114
|
+
const targetDeviceConfigList = this.deviceMap[deviceType]?.[firmwareUpdateField] ?? [];
|
|
115
|
+
const targetDeviceConfig = targetDeviceConfigList.filter(item => !!item.bootloaderResource);
|
|
116
|
+
|
|
117
|
+
return findLatestRelease(targetDeviceConfig)?.bootloaderResource;
|
|
118
|
+
};
|
|
119
|
+
|
|
109
120
|
static getFirmwareChangelog = (features: Features) => {
|
|
110
121
|
const deviceType = getDeviceType(features);
|
|
111
122
|
const deviceFirmwareVersion = getDeviceFirmwareVersion(features);
|
package/src/inject.ts
CHANGED
|
@@ -73,6 +73,8 @@ export const inject = ({
|
|
|
73
73
|
*/
|
|
74
74
|
checkBridgeStatus: () => call({ method: 'checkBridgeStatus' }),
|
|
75
75
|
|
|
76
|
+
checkBootloaderRelease: connectId => call({ connectId, method: 'checkBootloaderRelease' }),
|
|
77
|
+
|
|
76
78
|
cipherKeyValue: (connectId, deviceId, params) =>
|
|
77
79
|
call({ ...params, connectId, deviceId, method: 'cipherKeyValue' }),
|
|
78
80
|
|
|
@@ -94,6 +96,7 @@ export const inject = ({
|
|
|
94
96
|
deviceWipe: connectId => call({ connectId, method: 'deviceWipe' }),
|
|
95
97
|
deviceFullyUploadResource: connectId =>
|
|
96
98
|
call({ connectId, method: 'deviceFullyUploadResource' }),
|
|
99
|
+
deviceUpdateBootloader: connectId => call({ connectId, method: 'deviceUpdateBootloader' }),
|
|
97
100
|
getPassphraseState: (connectId, params) =>
|
|
98
101
|
call({ ...params, connectId, method: 'getPassphraseState' }),
|
|
99
102
|
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Response } from '../params';
|
|
2
|
+
|
|
3
|
+
export type CheckBootloaderReleaseResponse = {
|
|
4
|
+
shouldUpdate: boolean;
|
|
5
|
+
status: 'outdated' | 'valid';
|
|
6
|
+
release: string | undefined;
|
|
7
|
+
} | null;
|
|
8
|
+
|
|
9
|
+
export declare function checkBootloaderRelease(
|
|
10
|
+
connectId?: string
|
|
11
|
+
): Response<CheckBootloaderReleaseResponse>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { Response } from '../params';
|
|
2
2
|
import { TransportReleaseStatus } from '../firmware';
|
|
3
3
|
|
|
4
|
-
export declare function checkTransportRelease(): Response<TransportReleaseStatus>;
|
|
4
|
+
export declare function checkTransportRelease(connectId?: string): Response<TransportReleaseStatus>;
|
package/src/types/api/index.ts
CHANGED
|
@@ -5,6 +5,7 @@ import { init } from './init';
|
|
|
5
5
|
import { getLogs } from './getLogs';
|
|
6
6
|
import { checkTransportRelease } from './checkTransportRelease';
|
|
7
7
|
import { checkBridgeStatus } from './checkBridgeStatus';
|
|
8
|
+
import { checkBootloaderRelease } from './checkBootloaderRelease';
|
|
8
9
|
|
|
9
10
|
import { searchDevices } from './searchDevices';
|
|
10
11
|
import { getFeatures } from './getFeatures';
|
|
@@ -28,6 +29,7 @@ import { deviceUpdateReboot } from './deviceUpdateReboot';
|
|
|
28
29
|
import { deviceUploadResource } from './deviceUploadResource';
|
|
29
30
|
import { deviceSupportFeatures } from './deviceSupportFeatures';
|
|
30
31
|
import { deviceFullyUploadResource } from './deviceFullyUploadResource';
|
|
32
|
+
import { deviceUpdateBootloader } from './deviceUpdateBootloader';
|
|
31
33
|
|
|
32
34
|
import { cipherKeyValue } from './cipherKeyValue';
|
|
33
35
|
|
|
@@ -123,6 +125,7 @@ export type CoreApi = {
|
|
|
123
125
|
*/
|
|
124
126
|
checkTransportRelease: typeof checkTransportRelease;
|
|
125
127
|
checkBridgeStatus: typeof checkBridgeStatus;
|
|
128
|
+
checkBootloaderRelease: typeof checkBootloaderRelease;
|
|
126
129
|
|
|
127
130
|
/**
|
|
128
131
|
* Device function
|
|
@@ -145,6 +148,7 @@ export type CoreApi = {
|
|
|
145
148
|
deviceVerify: typeof deviceVerify;
|
|
146
149
|
deviceWipe: typeof deviceWipe;
|
|
147
150
|
deviceFullyUploadResource: typeof deviceFullyUploadResource;
|
|
151
|
+
deviceUpdateBootloader: typeof deviceUpdateBootloader;
|
|
148
152
|
checkFirmwareRelease: typeof checkFirmwareRelease;
|
|
149
153
|
checkBLEFirmwareRelease: typeof checkBLEFirmwareRelease;
|
|
150
154
|
firmwareUpdate: typeof firmwareUpdate;
|
package/src/types/settings.ts
CHANGED
|
@@ -32,6 +32,7 @@ export type IFirmwareReleaseInfo = {
|
|
|
32
32
|
/** Firmware full UI resource */
|
|
33
33
|
fullResource?: string;
|
|
34
34
|
fullResourceRange?: string[];
|
|
35
|
+
bootloaderResource?: string;
|
|
35
36
|
fingerprint: string;
|
|
36
37
|
version: IVersionArray;
|
|
37
38
|
changelog: {
|
|
@@ -57,7 +58,7 @@ export type IBLEFirmwareReleaseInfo = {
|
|
|
57
58
|
export type DeviceTypeMap = {
|
|
58
59
|
[k in IDeviceType]: {
|
|
59
60
|
firmware: IFirmwareReleaseInfo[];
|
|
60
|
-
'firmware-
|
|
61
|
+
'firmware-v3'?: IFirmwareReleaseInfo[];
|
|
61
62
|
ble: IBLEFirmwareReleaseInfo[];
|
|
62
63
|
};
|
|
63
64
|
};
|
|
@@ -95,6 +95,14 @@ export const getDeviceBLEFirmwareVersion = (features: Features): IVersionArray |
|
|
|
95
95
|
return features.ble_ver.split('.') as unknown as IVersionArray;
|
|
96
96
|
};
|
|
97
97
|
|
|
98
|
+
export const getDeviceBootloaderVersion = (features: Features): IVersionArray => {
|
|
99
|
+
if (!features.bootloader_version) return [0, 0, 0];
|
|
100
|
+
if (semver.valid(features.bootloader_version)) {
|
|
101
|
+
return features.bootloader_version.split('.') as unknown as IVersionArray;
|
|
102
|
+
}
|
|
103
|
+
return [0, 0, 0];
|
|
104
|
+
};
|
|
105
|
+
|
|
98
106
|
export const supportInputPinOnSoftware = (features: Features): SupportFeatureType => {
|
|
99
107
|
if (!features) return { support: false };
|
|
100
108
|
|
|
@@ -157,7 +165,7 @@ export const supportModifyHomescreen = (features?: Features): SupportFeatureType
|
|
|
157
165
|
};
|
|
158
166
|
|
|
159
167
|
/**
|
|
160
|
-
* Since 3.5.0, Touch uses the firmware-
|
|
168
|
+
* Since 3.5.0, Touch uses the firmware-v3 field to get firmware release info
|
|
161
169
|
*/
|
|
162
170
|
export const getFirmwareUpdateField = (features: Features, updateType: 'firmware' | 'ble') => {
|
|
163
171
|
const deviceType = getDeviceType(features);
|
|
@@ -168,7 +176,7 @@ export const getFirmwareUpdateField = (features: Features, updateType: 'firmware
|
|
|
168
176
|
|
|
169
177
|
if (deviceType === 'touch') {
|
|
170
178
|
if (semver.lt(deviceFirmwareVersion.join('.'), '3.4.0')) return 'firmware';
|
|
171
|
-
return 'firmware-
|
|
179
|
+
return 'firmware-v3';
|
|
172
180
|
}
|
|
173
181
|
return 'firmware';
|
|
174
182
|
};
|
package/src/utils/index.ts
CHANGED
|
@@ -12,6 +12,8 @@ export {
|
|
|
12
12
|
} from './deviceFeaturesUtils';
|
|
13
13
|
export { getHDPath, getScriptType, getOutputScriptType } from '../api/helpers/pathUtils';
|
|
14
14
|
|
|
15
|
+
export { checkNeedUpdateBoot } from '../api/firmware/updateBootloader';
|
|
16
|
+
|
|
15
17
|
export { getLogger, enableLog, LoggerNames, getLog, setLoggerPostMessage } from './logger';
|
|
16
18
|
|
|
17
19
|
export { getHomeScreenHex } from './homescreen';
|