@onekeyfe/hd-core 0.0.10 → 0.1.0
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/BaseMethod.d.ts +2 -0
- package/dist/api/BaseMethod.d.ts.map +1 -1
- package/dist/api/FirmwareUpdate.d.ts +14 -0
- package/dist/api/FirmwareUpdate.d.ts.map +1 -0
- package/dist/api/firmware/getBinary.d.ts +33 -0
- package/dist/api/firmware/getBinary.d.ts.map +1 -0
- package/dist/api/firmware/uploadFirmware.d.ts +8 -0
- package/dist/api/firmware/uploadFirmware.d.ts.map +1 -0
- package/dist/api/index.d.ts +1 -0
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/stellar/StellarSignTransaction.d.ts +1 -1
- package/dist/constants/errors.d.ts +1 -0
- package/dist/constants/errors.d.ts.map +1 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/device/Device.d.ts +1 -0
- package/dist/device/Device.d.ts.map +1 -1
- package/dist/device/DeviceCommands.d.ts +1 -0
- package/dist/device/DeviceCommands.d.ts.map +1 -1
- package/dist/events/ui-request.d.ts +9 -1
- package/dist/events/ui-request.d.ts.map +1 -1
- package/dist/index.d.ts +67 -4
- package/dist/index.js +126 -3
- package/dist/inject.d.ts.map +1 -1
- package/dist/types/api/firmwareUpdate.d.ts +13 -0
- package/dist/types/api/firmwareUpdate.d.ts.map +1 -0
- package/dist/types/api/index.d.ts +2 -0
- package/dist/types/api/index.d.ts.map +1 -1
- package/dist/types/device.d.ts +38 -0
- package/dist/types/device.d.ts.map +1 -1
- package/dist/types/firmware.d.ts +2 -1
- package/dist/types/firmware.d.ts.map +1 -1
- package/dist/types/params.d.ts +3 -0
- package/dist/types/params.d.ts.map +1 -1
- package/dist/utils/assets.d.ts +1 -1
- package/dist/utils/assets.d.ts.map +1 -1
- package/dist/utils/networkUtils.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/api/BaseMethod.ts +4 -0
- package/src/api/FirmwareUpdate.ts +78 -0
- package/src/api/firmware/getBinary.ts +46 -0
- package/src/api/firmware/uploadFirmware.ts +72 -0
- package/src/api/index.ts +2 -0
- package/src/constants/errors.ts +1 -0
- package/src/core/index.ts +1 -0
- package/src/device/Device.ts +4 -0
- package/src/device/DeviceCommands.ts +2 -0
- package/src/events/ui-request.ts +15 -1
- package/src/inject.ts +2 -0
- package/src/types/api/firmwareUpdate.ts +21 -0
- package/src/types/api/index.ts +3 -0
- package/src/types/device.ts +44 -0
- package/src/types/firmware.ts +2 -1
- package/src/types/params.ts +2 -0
- package/src/utils/assets.ts +1 -1
- package/src/utils/networkUtils.ts +3 -1
package/dist/api/BaseMethod.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Device } from '../device/Device';
|
|
2
2
|
import DeviceConnector from '../device/DeviceConnector';
|
|
3
3
|
import { DeviceFirmwareRange } from '../types';
|
|
4
|
+
import { CoreMessage } from '../events';
|
|
4
5
|
export declare abstract class BaseMethod<Params = undefined> {
|
|
5
6
|
responseID: number;
|
|
6
7
|
device: Device;
|
|
@@ -13,6 +14,7 @@ export declare abstract class BaseMethod<Params = undefined> {
|
|
|
13
14
|
useDevice: boolean;
|
|
14
15
|
allowDeviceMode: string[];
|
|
15
16
|
requireDeviceMode: string[];
|
|
17
|
+
postMessage: (message: CoreMessage) => void;
|
|
16
18
|
constructor(message: {
|
|
17
19
|
id?: number;
|
|
18
20
|
payload: any;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseMethod.d.ts","sourceRoot":"","sources":["../../src/api/BaseMethod.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,eAAe,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"BaseMethod.d.ts","sourceRoot":"","sources":["../../src/api/BaseMethod.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,eAAe,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC,8BAAsB,UAAU,CAAC,MAAM,GAAG,SAAS;IACjD,UAAU,EAAE,MAAM,CAAC;IAGnB,MAAM,EAAE,MAAM,CAAC;IAGf,MAAM,EAAE,MAAM,CAAC;IAOf,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,WAAW,CAAC,EAAE,MAAM,CAAC;IAKrB,IAAI,EAAE,MAAM,CAAC;IAKb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE7B,SAAS,CAAC,EAAE,eAAe,CAAC;IAK5B,SAAS,EAAE,OAAO,CAAC;IAKnB,eAAe,EAAE,MAAM,EAAE,CAAC;IAK1B,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAG5B,WAAW,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;gBAEhC,OAAO,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,GAAG,CAAA;KAAE;IAWlD,QAAQ,CAAC,IAAI,IAAI,IAAI;IAErB,QAAQ,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IAE5B,eAAe,IAAI,mBAAmB;IAItC,SAAS,CAAC,MAAM,EAAE,MAAM;IAKxB,OAAO;CACR"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { BaseMethod } from './BaseMethod';
|
|
2
|
+
declare type Params = {
|
|
3
|
+
binary?: ArrayBuffer;
|
|
4
|
+
version?: number[];
|
|
5
|
+
updateType: 'firmware' | 'ble';
|
|
6
|
+
};
|
|
7
|
+
export default class FirmwareUpdate extends BaseMethod<Params> {
|
|
8
|
+
init(): void;
|
|
9
|
+
run(): Promise<{
|
|
10
|
+
message: string;
|
|
11
|
+
}>;
|
|
12
|
+
}
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=FirmwareUpdate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FirmwareUpdate.d.ts","sourceRoot":"","sources":["../../src/api/FirmwareUpdate.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAK1C,aAAK,MAAM,GAAG;IACZ,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,EAAE,UAAU,GAAG,KAAK,CAAC;CAChC,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,UAAU,CAAC,MAAM,CAAC;IAC5D,IAAI;IAgCE,GAAG;;;CA+BV"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Features } from '../../types';
|
|
2
|
+
export interface GetInfoProps {
|
|
3
|
+
features: Features;
|
|
4
|
+
updateType: 'firmware' | 'ble';
|
|
5
|
+
}
|
|
6
|
+
interface GetBinaryProps extends GetInfoProps {
|
|
7
|
+
version?: number[];
|
|
8
|
+
}
|
|
9
|
+
export declare const getBinary: ({ features, updateType, version }: GetBinaryProps) => Promise<{
|
|
10
|
+
binary: any;
|
|
11
|
+
required: boolean;
|
|
12
|
+
url: string;
|
|
13
|
+
fingerprint: string;
|
|
14
|
+
version: import("../../types").IVersionArray;
|
|
15
|
+
changelog: {
|
|
16
|
+
"zh-CN": string;
|
|
17
|
+
"en-US": string;
|
|
18
|
+
};
|
|
19
|
+
} | {
|
|
20
|
+
binary: any;
|
|
21
|
+
required: boolean;
|
|
22
|
+
url: string;
|
|
23
|
+
webUpdate: string;
|
|
24
|
+
fingerprint: string;
|
|
25
|
+
fingerprintWeb: string;
|
|
26
|
+
version: import("../../types").IVersionArray;
|
|
27
|
+
changelog: {
|
|
28
|
+
"zh-CN": string;
|
|
29
|
+
"en-US": string;
|
|
30
|
+
};
|
|
31
|
+
}>;
|
|
32
|
+
export {};
|
|
33
|
+
//# sourceMappingURL=getBinary.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getBinary.d.ts","sourceRoot":"","sources":["../../../src/api/firmware/getBinary.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAKvC,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;;;;;;;;;;;;;;;;;;;;;;EAsBhF,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { CoreMessage } from '../../events';
|
|
2
|
+
import { PROTO } from '../../constants';
|
|
3
|
+
import type { Device } from '../../device/Device';
|
|
4
|
+
import type { TypedCall } from '../../device/DeviceCommands';
|
|
5
|
+
export declare const uploadFirmware: (updateType: 'firmware' | 'ble', typedCall: TypedCall, postMessage: (message: CoreMessage) => void, device: Device, { payload }: PROTO.FirmwareUpload) => Promise<{
|
|
6
|
+
message: string;
|
|
7
|
+
}>;
|
|
8
|
+
//# sourceMappingURL=uploadFirmware.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uploadFirmware.d.ts","sourceRoot":"","sources":["../../../src/api/firmware/uploadFirmware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,WAAW,EAA+B,MAAM,cAAc,CAAC;AAChF,OAAO,EAAU,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAuB7D,eAAO,MAAM,cAAc,eACb,UAAU,GAAG,KAAK,aACnB,SAAS,yBACG,WAAW,KAAK,IAAI,UACnC,MAAM,eACD,MAAM,cAAc;;EAwClC,CAAC"}
|
package/dist/api/index.d.ts
CHANGED
|
@@ -36,4 +36,5 @@ export { default as solGetAddress } from './solana/SolGetAddress';
|
|
|
36
36
|
export { default as solSignTransaction } from './solana/SolSignTransaction';
|
|
37
37
|
export { default as stellarGetAddress } from './stellar/StellarGetAddress';
|
|
38
38
|
export { default as stellarSignTransaction } from './stellar/StellarSignTransaction';
|
|
39
|
+
export { default as firmwareUpdate } from './FirmwareUpdate';
|
|
39
40
|
//# sourceMappingURL=index.d.ts.map
|
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":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -135,7 +135,7 @@ export default class StellarSignTransaction extends BaseMethod<HardwareStellarSi
|
|
|
135
135
|
value?: undefined;
|
|
136
136
|
bump_to?: undefined;
|
|
137
137
|
} | {
|
|
138
|
-
signer_type?: 0 |
|
|
138
|
+
signer_type?: 0 | 2 | 1 | undefined;
|
|
139
139
|
signer_key?: string | Buffer | undefined;
|
|
140
140
|
signer_weight?: number | undefined;
|
|
141
141
|
type: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/constants/errors.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/constants/errors.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;CAwBvB,CAAC;AAEF,qBAAa,WAAY,SAAQ,KAAK;IACpC,IAAI,EAAE,MAAM,CAAC;IAEb,OAAO,EAAE,MAAM,CAAC;gBAEJ,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAK1C;AAED,eAAO,MAAM,UAAU,OAAQ,MAAM,kBAAkB,8CACN,CAAC;AAGlD,eAAO,MAAM,cAAc,YAAa,GAAG,QAK1C,CAAC"}
|
package/dist/core/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":";AACA,OAAO,YAAY,MAAM,QAAQ,CAAC;AASlC,OAAO,EACL,WAAW,EAYZ,MAAM,WAAW,CAAC;AAEnB,OAAO,KAAK,EAAE,eAAe,EAAe,MAAM,UAAU,CAAC;AAE7D,OAAO,eAAe,MAAM,2BAA2B,CAAC;AAgBxD,eAAO,MAAM,OAAO,YAAmB,WAAW,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":";AACA,OAAO,YAAY,MAAM,QAAQ,CAAC;AASlC,OAAO,EACL,WAAW,EAYZ,MAAM,WAAW,CAAC;AAEnB,OAAO,KAAK,EAAE,eAAe,EAAe,MAAM,UAAU,CAAC;AAE7D,OAAO,eAAe,MAAM,2BAA2B,CAAC;AAgBxD,eAAO,MAAM,OAAO,YAAmB,WAAW,iBA6JjD,CAAC;AA8HF,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,YAAY;IACtC,aAAa,CAAC,OAAO,EAAE,WAAW;IA2BxC,OAAO;CAGR;AAED,eAAO,MAAM,QAAQ,YAGpB,CAAC;AAEF,eAAO,MAAM,aAAa,uBAGzB,CAAC;AAMF,eAAO,MAAM,IAAI,aAAoB,eAAe,aAAa,GAAG,8BAgBnE,CAAC"}
|
package/dist/device/Device.d.ts
CHANGED
|
@@ -41,6 +41,7 @@ export declare class Device extends EventEmitter {
|
|
|
41
41
|
connect(): Promise<boolean>;
|
|
42
42
|
acquire(): Promise<void>;
|
|
43
43
|
release(): Promise<void>;
|
|
44
|
+
getCommands(): DeviceCommands;
|
|
44
45
|
getInternalState(): string;
|
|
45
46
|
initialize(): Promise<void>;
|
|
46
47
|
getFeatures(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Device.d.ts","sourceRoot":"","sources":["../../src/device/Device.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Device.d.ts","sourceRoot":"","sources":["../../src/device/Device.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,5 +31,6 @@ export declare class DeviceCommands {
|
|
|
31
31
|
_filterCommonTypes(res: DefaultMessageResponse): Promise<DefaultMessageResponse>;
|
|
32
32
|
_promptPin(type?: Messages.PinMatrixRequestType): Promise<string>;
|
|
33
33
|
}
|
|
34
|
+
export declare type TypedCall = DeviceCommands['typedCall'];
|
|
34
35
|
export {};
|
|
35
36
|
//# sourceMappingURL=DeviceCommands.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeviceCommands.d.ts","sourceRoot":"","sources":["../../src/device/DeviceCommands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAIlE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGvC,aAAK,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAC;AACxC,aAAK,UAAU,GAAG,MAAM,WAAW,CAAC;AACpC,oBAAY,oBAAoB,CAAC,CAAC,SAAS,UAAU,IAAI;IACvD,IAAI,EAAE,CAAC,CAAC;IACR,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;CACzB,CAAC;AACF,aAAK,oBAAoB,GAAG;KACzB,CAAC,IAAI,MAAM,WAAW,GAAG,oBAAoB,CAAC,CAAC,CAAC;CAClD,CAAC;AACF,oBAAY,sBAAsB,GAAG,oBAAoB,CAAC,MAAM,WAAW,CAAC,CAAC;AAE7E,oBAAY,wBAAwB,GAAG;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAcF,qBAAa,cAAc;IACzB,MAAM,EAAE,MAAM,CAAC;IAEf,SAAS,EAAE,SAAS,CAAC;IAErB,MAAM,EAAE,MAAM,CAAC;IAEf,QAAQ,EAAE,OAAO,CAAC;IAElB,WAAW,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAE9C,kBAAkB,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;gBAE/B,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAO1C,OAAO;IAMD,IAAI,CACR,IAAI,EAAE,UAAU,EAChB,GAAG,GAAE,sBAAsB,CAAC,SAAS,CAAM,GAC1C,OAAO,CAAC,sBAAsB,CAAC;IAelC,SAAS,CAAC,CAAC,SAAS,UAAU,EAAE,CAAC,SAAS,UAAU,EAAE,EACpD,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,CAAC,EACV,GAAG,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,GACnB,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IAE3C,SAAS,CAAC,CAAC,SAAS,UAAU,EAAE,CAAC,SAAS,UAAU,EAClD,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,CAAC,EACV,GAAG,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,GACnB,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;IAyB7B,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,sBAAsB,CAAC,SAAS,CAAC;IAK3E,kBAAkB,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAoEhF,UAAU,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,oBAAoB;CAkBhD"}
|
|
1
|
+
{"version":3,"file":"DeviceCommands.d.ts","sourceRoot":"","sources":["../../src/device/DeviceCommands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAIlE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGvC,aAAK,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAC;AACxC,aAAK,UAAU,GAAG,MAAM,WAAW,CAAC;AACpC,oBAAY,oBAAoB,CAAC,CAAC,SAAS,UAAU,IAAI;IACvD,IAAI,EAAE,CAAC,CAAC;IACR,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;CACzB,CAAC;AACF,aAAK,oBAAoB,GAAG;KACzB,CAAC,IAAI,MAAM,WAAW,GAAG,oBAAoB,CAAC,CAAC,CAAC;CAClD,CAAC;AACF,oBAAY,sBAAsB,GAAG,oBAAoB,CAAC,MAAM,WAAW,CAAC,CAAC;AAE7E,oBAAY,wBAAwB,GAAG;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAcF,qBAAa,cAAc;IACzB,MAAM,EAAE,MAAM,CAAC;IAEf,SAAS,EAAE,SAAS,CAAC;IAErB,MAAM,EAAE,MAAM,CAAC;IAEf,QAAQ,EAAE,OAAO,CAAC;IAElB,WAAW,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAE9C,kBAAkB,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;gBAE/B,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAO1C,OAAO;IAMD,IAAI,CACR,IAAI,EAAE,UAAU,EAChB,GAAG,GAAE,sBAAsB,CAAC,SAAS,CAAM,GAC1C,OAAO,CAAC,sBAAsB,CAAC;IAelC,SAAS,CAAC,CAAC,SAAS,UAAU,EAAE,CAAC,SAAS,UAAU,EAAE,EACpD,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,CAAC,EACV,GAAG,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,GACnB,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IAE3C,SAAS,CAAC,CAAC,SAAS,UAAU,EAAE,CAAC,SAAS,UAAU,EAClD,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,CAAC,EACV,GAAG,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,GACnB,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;IAyB7B,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,sBAAsB,CAAC,SAAS,CAAC;IAK3E,kBAAkB,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAoEhF,UAAU,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,oBAAoB;CAkBhD;AAED,oBAAY,SAAS,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC"}
|
|
@@ -10,6 +10,7 @@ export declare const UI_REQUEST: {
|
|
|
10
10
|
readonly CLOSE_UI_WINDOW: "ui-close_window";
|
|
11
11
|
readonly BLUETOOTH_PERMISSION: "ui-bluetooth_permission";
|
|
12
12
|
readonly LOCATION_PERMISSION: "ui-location_permission";
|
|
13
|
+
readonly FIRMWARE_PROGRESS: "ui-firmware-progress";
|
|
13
14
|
};
|
|
14
15
|
export interface UiRequestWithoutPayload {
|
|
15
16
|
type: typeof UI_REQUEST.CLOSE_UI_WINDOW | typeof UI_REQUEST.BLUETOOTH_PERMISSION | typeof UI_REQUEST.LOCATION_PERMISSION;
|
|
@@ -26,7 +27,14 @@ export interface UiRequestButton {
|
|
|
26
27
|
type: typeof UI_REQUEST.REQUEST_BUTTON;
|
|
27
28
|
payload: DeviceButtonRequest['payload'];
|
|
28
29
|
}
|
|
29
|
-
export
|
|
30
|
+
export interface FirmwareProgress {
|
|
31
|
+
type: typeof UI_REQUEST.FIRMWARE_PROGRESS;
|
|
32
|
+
payload: {
|
|
33
|
+
device: Device;
|
|
34
|
+
progress: number;
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
export declare type UiEvent = UiRequestWithoutPayload | UiRequestDeviceAction | UiRequestButton | FirmwareProgress;
|
|
30
38
|
export declare type UiEventMessage = UiEvent & {
|
|
31
39
|
event: typeof UI_EVENT;
|
|
32
40
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui-request.d.ts","sourceRoot":"","sources":["../../src/events/ui-request.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEhD,eAAO,MAAM,QAAQ,aAAa,CAAC;AAEnC,eAAO,MAAM,UAAU
|
|
1
|
+
{"version":3,"file":"ui-request.d.ts","sourceRoot":"","sources":["../../src/events/ui-request.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEhD,eAAO,MAAM,QAAQ,aAAa,CAAC;AAEnC,eAAO,MAAM,UAAU;;;;;;;;CAWb,CAAC;AAEX,MAAM,WAAW,uBAAuB;IACtC,IAAI,EACA,OAAO,UAAU,CAAC,eAAe,GACjC,OAAO,UAAU,CAAC,oBAAoB,GACtC,OAAO,UAAU,CAAC,mBAAmB,CAAC;IAC1C,OAAO,CAAC,EAAE,OAAO,SAAS,CAAC;CAC5B;AAED,oBAAY,qBAAqB,GAAG;IAClC,IAAI,EAAE,OAAO,UAAU,CAAC,WAAW,CAAC;IACpC,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,KAAK,CAAC,oBAAoB,GAAG,wBAAwB,CAAC;KAC9D,CAAC;CACH,CAAC;AAEF,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,OAAO,UAAU,CAAC,cAAc,CAAC;IACvC,OAAO,EAAE,mBAAmB,CAAC,SAAS,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,OAAO,UAAU,CAAC,iBAAiB,CAAC;IAC1C,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAED,oBAAY,OAAO,GACf,uBAAuB,GACvB,qBAAqB,GACrB,eAAe,GACf,gBAAgB,CAAC;AAErB,oBAAY,cAAc,GAAG,OAAO,GAAG;IAAE,KAAK,EAAE,OAAO,QAAQ,CAAA;CAAE,CAAC;AAElE,eAAO,MAAM,eAAe,EAAE,gBAAgB,CAAC,OAAO,QAAQ,EAAE,OAAO,CAK5D,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -6,6 +6,9 @@ import { EthereumPublicKey, EthereumMessageSignature, Success as Success$1, Addr
|
|
|
6
6
|
interface CommonParams {
|
|
7
7
|
keepSession?: boolean;
|
|
8
8
|
}
|
|
9
|
+
declare type Params<T> = CommonParams & T & {
|
|
10
|
+
bundle?: undefined;
|
|
11
|
+
};
|
|
9
12
|
interface Unsuccessful {
|
|
10
13
|
success: false;
|
|
11
14
|
payload: {
|
|
@@ -27,6 +30,7 @@ declare const ERROR_CODES: {
|
|
|
27
30
|
Method_InvalidParameter: string;
|
|
28
31
|
Call_API: string;
|
|
29
32
|
Call_NotResponse: string;
|
|
33
|
+
Method_FirmwareUpdate_DownloadFailed: string;
|
|
30
34
|
Transport_InvalidProtobuf: string;
|
|
31
35
|
Device_FwException: string;
|
|
32
36
|
Device_UnexpectedMode: string;
|
|
@@ -167,6 +171,43 @@ declare type DeviceFirmwareRange = {
|
|
|
167
171
|
max?: string;
|
|
168
172
|
};
|
|
169
173
|
};
|
|
174
|
+
declare type FeaturesNarrowing = {
|
|
175
|
+
major_version: 2;
|
|
176
|
+
fw_major: null;
|
|
177
|
+
fw_minor: null;
|
|
178
|
+
fw_patch: null;
|
|
179
|
+
bootloader_mode: true;
|
|
180
|
+
firmware_present: false;
|
|
181
|
+
} | {
|
|
182
|
+
major_version: 2;
|
|
183
|
+
fw_major: null;
|
|
184
|
+
fw_minor: null;
|
|
185
|
+
fw_patch: null;
|
|
186
|
+
bootloader_mode: null;
|
|
187
|
+
firmware_present: null;
|
|
188
|
+
} | {
|
|
189
|
+
major_version: 2;
|
|
190
|
+
fw_major: 2;
|
|
191
|
+
fw_minor: number;
|
|
192
|
+
fw_patch: number;
|
|
193
|
+
bootloader_mode: true;
|
|
194
|
+
firmware_present: true;
|
|
195
|
+
} | {
|
|
196
|
+
major_version: 1;
|
|
197
|
+
fw_major: null;
|
|
198
|
+
fw_minor: null;
|
|
199
|
+
fw_patch: null;
|
|
200
|
+
bootloader_mode: true;
|
|
201
|
+
firmware_present: false;
|
|
202
|
+
} | {
|
|
203
|
+
major_version: 1;
|
|
204
|
+
fw_major: null;
|
|
205
|
+
fw_minor: null;
|
|
206
|
+
fw_patch: null;
|
|
207
|
+
bootloader_mode: true;
|
|
208
|
+
firmware_present: true;
|
|
209
|
+
};
|
|
210
|
+
declare type StrictFeatures = Features & FeaturesNarrowing;
|
|
170
211
|
|
|
171
212
|
declare function searchDevices(): Response<SearchDevice[]>;
|
|
172
213
|
|
|
@@ -188,7 +229,8 @@ interface FirmwareRange {
|
|
|
188
229
|
max: string;
|
|
189
230
|
};
|
|
190
231
|
}
|
|
191
|
-
declare type
|
|
232
|
+
declare type MajorVersion = 1 | 2;
|
|
233
|
+
declare type VersionArray = [MajorVersion, number, number];
|
|
192
234
|
declare type FirmwareRelease = {
|
|
193
235
|
required: boolean;
|
|
194
236
|
url: string;
|
|
@@ -834,6 +876,17 @@ declare function cipherKeyValue(connectId: string, params: CommonParams & {
|
|
|
834
876
|
bundle?: CipheredKeyValueParams[];
|
|
835
877
|
}): Response<Array<CipheredKeyValue>>;
|
|
836
878
|
|
|
879
|
+
interface FirmwareUpdateBinary {
|
|
880
|
+
binary: ArrayBuffer;
|
|
881
|
+
}
|
|
882
|
+
interface FirmwareUpdate {
|
|
883
|
+
version: number[];
|
|
884
|
+
btcOnly?: boolean;
|
|
885
|
+
updateType: 'firmware' | 'ble';
|
|
886
|
+
}
|
|
887
|
+
declare function firmwareUpdate(connectId: string | undefined, params: Params<FirmwareUpdate>): Response<Messages.Success>;
|
|
888
|
+
declare function firmwareUpdate(connectId: string | undefined, params: Params<FirmwareUpdateBinary>): Response<Messages.Success>;
|
|
889
|
+
|
|
837
890
|
declare type CoreApi = {
|
|
838
891
|
init: typeof init$1;
|
|
839
892
|
on: typeof on;
|
|
@@ -881,6 +934,7 @@ declare type CoreApi = {
|
|
|
881
934
|
solSignTransaction: typeof solSignTransaction;
|
|
882
935
|
stellarGetAddress: typeof stellarGetAddress;
|
|
883
936
|
stellarSignTransaction: typeof stellarSignTransaction;
|
|
937
|
+
firmwareUpdate: typeof firmwareUpdate;
|
|
884
938
|
};
|
|
885
939
|
|
|
886
940
|
declare type UnionToIntersection<U> = (U extends any ? (k: U) => void : never) extends (k: infer I) => void ? I : never;
|
|
@@ -941,6 +995,7 @@ declare const UI_REQUEST: {
|
|
|
941
995
|
readonly CLOSE_UI_WINDOW: "ui-close_window";
|
|
942
996
|
readonly BLUETOOTH_PERMISSION: "ui-bluetooth_permission";
|
|
943
997
|
readonly LOCATION_PERMISSION: "ui-location_permission";
|
|
998
|
+
readonly FIRMWARE_PROGRESS: "ui-firmware-progress";
|
|
944
999
|
};
|
|
945
1000
|
interface UiRequestWithoutPayload {
|
|
946
1001
|
type: typeof UI_REQUEST.CLOSE_UI_WINDOW | typeof UI_REQUEST.BLUETOOTH_PERMISSION | typeof UI_REQUEST.LOCATION_PERMISSION;
|
|
@@ -957,7 +1012,14 @@ interface UiRequestButton {
|
|
|
957
1012
|
type: typeof UI_REQUEST.REQUEST_BUTTON;
|
|
958
1013
|
payload: DeviceButtonRequest['payload'];
|
|
959
1014
|
}
|
|
960
|
-
|
|
1015
|
+
interface FirmwareProgress {
|
|
1016
|
+
type: typeof UI_REQUEST.FIRMWARE_PROGRESS;
|
|
1017
|
+
payload: {
|
|
1018
|
+
device: Device$1;
|
|
1019
|
+
progress: number;
|
|
1020
|
+
};
|
|
1021
|
+
}
|
|
1022
|
+
declare type UiEvent = UiRequestWithoutPayload | UiRequestDeviceAction | UiRequestButton | FirmwareProgress;
|
|
961
1023
|
declare type UiEventMessage = UiEvent & {
|
|
962
1024
|
event: typeof UI_EVENT;
|
|
963
1025
|
};
|
|
@@ -1121,7 +1183,7 @@ declare class Log {
|
|
|
1121
1183
|
declare const initLog: (prefix: string, enabled?: boolean | undefined) => Log;
|
|
1122
1184
|
declare const enableLog: (enabled?: boolean | undefined) => void;
|
|
1123
1185
|
|
|
1124
|
-
declare const httpRequest: (url: string,
|
|
1186
|
+
declare const httpRequest: (url: string, type: string) => any;
|
|
1125
1187
|
declare const getTimeStamp: () => number;
|
|
1126
1188
|
|
|
1127
1189
|
declare const isValidVersionString: (version: string) => boolean;
|
|
@@ -1228,6 +1290,7 @@ declare class Device extends EventEmitter {
|
|
|
1228
1290
|
connect(): Promise<boolean>;
|
|
1229
1291
|
acquire(): Promise<void>;
|
|
1230
1292
|
release(): Promise<void>;
|
|
1293
|
+
getCommands(): DeviceCommands;
|
|
1231
1294
|
getInternalState(): string;
|
|
1232
1295
|
initialize(): Promise<void>;
|
|
1233
1296
|
getFeatures(): Promise<void>;
|
|
@@ -1297,4 +1360,4 @@ declare class DataManager {
|
|
|
1297
1360
|
|
|
1298
1361
|
declare const HardwareSdk: ({ init, call, dispose, eventEmitter, uiResponse, cancel, }: InjectApi) => CoreApi;
|
|
1299
1362
|
|
|
1300
|
-
export { AccountAddress, AccountAddresses, AssetsMap, BTCAddress, BTCGetAddressParams, BTCGetPublicKeyParams, BTCPublicKey, BTCSignMessageParams, BTCSignTransactionParams, BTCVerifyMessageParams, CORE_EVENT, CallMethod, CallMethodAnyResponse, CallMethodKeys, CallMethodPayload, CallMethodResponse, CallMethodUnion, CipheredKeyValue, CipheredKeyValueParams, CommonParams, ConnectSettings, Core, CoreApi, CoreMessage, DEFAULT_PRIORITY, DEVICE, DEVICE_EVENT, DataManager, Deferred, Device$1 as Device, DeviceButtonRequest, DeviceButtonRequestPayload, DeviceChangePinParams, DeviceEvent, DeviceEventListenerFn, DeviceEventMessage, DeviceFirmwareRange, DeviceFlagsParams, DeviceMode, DeviceRecoveryParams, DeviceResetParams, DeviceSettingsParams, DeviceStatus, DeviceTypeMap, errors as ERRORS, EVMAccessList, EVMAddress, EVMGetAddressParams, EVMGetPublicKeyParams, EVMPublicKey, EVMSignMessageEIP712Params, EVMSignMessageParams, EVMSignTransactionParams, EVMSignTypedDataParams, EVMSignedTx, EVMTransaction, EVMTransactionEIP1559, EVMVerifyMessageParams, EthereumSignTypedDataMessage, EthereumSignTypedDataTypeProperty, EthereumSignTypedDataTypes, Features, FirmwareRange, FirmwareRelease, IBLEFirmwareReleaseInfo, IDeviceBLEFirmwareStatus, IDeviceFirmwareStatus, IDeviceModel, IDeviceType, IFRAME, IFirmwareReleaseInfo, IFrameBridge, IFrameCallMessage, IFrameEvent, IFrameEventMessage, IFrameInit, ILocale, ITransportStatus, IVersionArray, KnownDevice, MethodResponseMessage, NEMAddress, NEMAggregateModificationTransaction, NEMGetAddressParams, NEMImportanceTransaction, NEMMosaic, NEMMosaicCreationTransaction, NEMMultisigTransaction, NEMProvisionNamespaceTransaction, NEMSignTransactionParams, NEMSupplyChangeTransaction, NEMTransaction, NEMTransferTransaction, PostMessageEvent, RESPONSE_EVENT, RefTransaction, ReleaseInfo, RemoteConfigResponse, Response, SearchDevice, SignedTransaction, SolanaAddress, SolanaGetAddressParams, SolanaSignTransactionParams, SolanaSignedTx, StarcoinAddress, StarcoinGetAddressParams, StarcoinGetPublicKeyParams, StarcoinPublicKey, StarcoinSignMessageParams, StarcoinSignTransactionParams, StarcoinVerifyMessageParams, StellarAddress, StellarAsset, StellarGetAddressParams, StellarOperation, StellarSignTransactionParams, StellarTransaction, Success, TransactionOptions, TransportReleaseStatus, UI_EVENT, UI_REQUEST, UI_RESPONSE, UiEvent, UiEventMessage, UiPromise, UiPromiseResponse, UiRequestButton, UiRequestDeviceAction, UiRequestWithoutPayload, UiResponseEvent, UiResponseMessage, UiResponsePin, UnavailableCapabilities, UnavailableCapability, Unsuccessful, VersionArray, corsValidator, create, createDeviceMessage, createErrorMessage, createIFrameMessage, createResponseMessage, createUiMessage, createUiResponse, HardwareSdk as default, enableLog, getDeviceLabel, getDeviceType, getDeviceTypeByBleName, getDeviceTypeByDeviceId, getDeviceUUID, getEnv, getHDPath, getScriptType, getTimeStamp, httpRequest, init as initCore, initLog, isValidVersionArray, isValidVersionString, normalizeVersionArray, parseConnectSettings, parseMessage, versionCompare, versionSplit };
|
|
1363
|
+
export { AccountAddress, AccountAddresses, AssetsMap, BTCAddress, BTCGetAddressParams, BTCGetPublicKeyParams, BTCPublicKey, BTCSignMessageParams, BTCSignTransactionParams, BTCVerifyMessageParams, CORE_EVENT, CallMethod, CallMethodAnyResponse, CallMethodKeys, CallMethodPayload, CallMethodResponse, CallMethodUnion, CipheredKeyValue, CipheredKeyValueParams, CommonParams, ConnectSettings, Core, CoreApi, CoreMessage, DEFAULT_PRIORITY, DEVICE, DEVICE_EVENT, DataManager, Deferred, Device$1 as Device, DeviceButtonRequest, DeviceButtonRequestPayload, DeviceChangePinParams, DeviceEvent, DeviceEventListenerFn, DeviceEventMessage, DeviceFirmwareRange, DeviceFlagsParams, DeviceMode, DeviceRecoveryParams, DeviceResetParams, DeviceSettingsParams, DeviceStatus, DeviceTypeMap, errors as ERRORS, EVMAccessList, EVMAddress, EVMGetAddressParams, EVMGetPublicKeyParams, EVMPublicKey, EVMSignMessageEIP712Params, EVMSignMessageParams, EVMSignTransactionParams, EVMSignTypedDataParams, EVMSignedTx, EVMTransaction, EVMTransactionEIP1559, EVMVerifyMessageParams, EthereumSignTypedDataMessage, EthereumSignTypedDataTypeProperty, EthereumSignTypedDataTypes, Features, FirmwareProgress, FirmwareRange, FirmwareRelease, IBLEFirmwareReleaseInfo, IDeviceBLEFirmwareStatus, IDeviceFirmwareStatus, IDeviceModel, IDeviceType, IFRAME, IFirmwareReleaseInfo, IFrameBridge, IFrameCallMessage, IFrameEvent, IFrameEventMessage, IFrameInit, ILocale, ITransportStatus, IVersionArray, KnownDevice, MajorVersion, MethodResponseMessage, NEMAddress, NEMAggregateModificationTransaction, NEMGetAddressParams, NEMImportanceTransaction, NEMMosaic, NEMMosaicCreationTransaction, NEMMultisigTransaction, NEMProvisionNamespaceTransaction, NEMSignTransactionParams, NEMSupplyChangeTransaction, NEMTransaction, NEMTransferTransaction, Params, PostMessageEvent, RESPONSE_EVENT, RefTransaction, ReleaseInfo, RemoteConfigResponse, Response, SearchDevice, SignedTransaction, SolanaAddress, SolanaGetAddressParams, SolanaSignTransactionParams, SolanaSignedTx, StarcoinAddress, StarcoinGetAddressParams, StarcoinGetPublicKeyParams, StarcoinPublicKey, StarcoinSignMessageParams, StarcoinSignTransactionParams, StarcoinVerifyMessageParams, StellarAddress, StellarAsset, StellarGetAddressParams, StellarOperation, StellarSignTransactionParams, StellarTransaction, StrictFeatures, Success, TransactionOptions, TransportReleaseStatus, UI_EVENT, UI_REQUEST, UI_RESPONSE, UiEvent, UiEventMessage, UiPromise, UiPromiseResponse, UiRequestButton, UiRequestDeviceAction, UiRequestWithoutPayload, UiResponseEvent, UiResponseMessage, UiResponsePin, UnavailableCapabilities, UnavailableCapability, Unsuccessful, VersionArray, corsValidator, create, createDeviceMessage, createErrorMessage, createIFrameMessage, createResponseMessage, createUiMessage, createUiResponse, HardwareSdk as default, enableLog, getDeviceLabel, getDeviceType, getDeviceTypeByBleName, getDeviceTypeByDeviceId, getDeviceUUID, getEnv, getHDPath, getScriptType, getTimeStamp, httpRequest, init as initCore, initLog, isValidVersionArray, isValidVersionString, normalizeVersionArray, parseConnectSettings, parseMessage, versionCompare, versionSplit };
|
package/dist/index.js
CHANGED
|
@@ -67,6 +67,7 @@ const inject = ({ call, cancel, dispose, eventEmitter, init, uiResponse, }) => {
|
|
|
67
67
|
solSignTransaction: (connectId, params) => call(Object.assign(Object.assign({}, params), { connectId, method: 'solSignTransaction' })),
|
|
68
68
|
stellarGetAddress: (connectId, params) => call(Object.assign(Object.assign({}, params), { connectId, method: 'stellarGetAddress' })),
|
|
69
69
|
stellarSignTransaction: (connectId, params) => call(Object.assign(Object.assign({}, params), { connectId, method: 'stellarSignTransaction' })),
|
|
70
|
+
firmwareUpdate: (connectId, params) => call(Object.assign(Object.assign({}, params), { connectId, method: 'firmwareUpdate' })),
|
|
70
71
|
};
|
|
71
72
|
return api;
|
|
72
73
|
};
|
|
@@ -608,6 +609,7 @@ const ERROR_CODES = {
|
|
|
608
609
|
Method_InvalidParameter: '',
|
|
609
610
|
Call_API: '',
|
|
610
611
|
Call_NotResponse: 'No response data',
|
|
612
|
+
Method_FirmwareUpdate_DownloadFailed: '',
|
|
611
613
|
Transport_InvalidProtobuf: '',
|
|
612
614
|
Device_FwException: '',
|
|
613
615
|
Device_UnexpectedMode: '',
|
|
@@ -720,20 +722,21 @@ const httpRequest$1 = (url, type = 'text') => __awaiter(void 0, void 0, void 0,
|
|
|
720
722
|
const response = yield axios__default["default"].request({
|
|
721
723
|
url,
|
|
722
724
|
withCredentials: false,
|
|
725
|
+
responseType: type === 'binary' ? 'arraybuffer' : 'json',
|
|
723
726
|
});
|
|
724
727
|
if (+response.status === 200) {
|
|
725
728
|
if (type === 'json') {
|
|
726
729
|
return response.data;
|
|
727
730
|
}
|
|
728
731
|
if (type === 'binary') {
|
|
729
|
-
return response.data
|
|
732
|
+
return response.data;
|
|
730
733
|
}
|
|
731
734
|
return response.data;
|
|
732
735
|
}
|
|
733
736
|
throw new Error(`httpRequest error: ${url} ${response.statusText}`);
|
|
734
737
|
});
|
|
735
738
|
|
|
736
|
-
const httpRequest = (url,
|
|
739
|
+
const httpRequest = (url, type) => httpRequest$1(url, type);
|
|
737
740
|
const getTimeStamp = () => new Date().getTime();
|
|
738
741
|
|
|
739
742
|
const VER_NUMS = 3;
|
|
@@ -9963,6 +9966,7 @@ const UI_REQUEST$1 = {
|
|
|
9963
9966
|
CLOSE_UI_WINDOW: 'ui-close_window',
|
|
9964
9967
|
BLUETOOTH_PERMISSION: 'ui-bluetooth_permission',
|
|
9965
9968
|
LOCATION_PERMISSION: 'ui-location_permission',
|
|
9969
|
+
FIRMWARE_PROGRESS: 'ui-firmware-progress',
|
|
9966
9970
|
};
|
|
9967
9971
|
const createUiMessage = (type, payload) => ({
|
|
9968
9972
|
event: UI_EVENT,
|
|
@@ -10379,6 +10383,9 @@ class Device extends events.exports {
|
|
|
10379
10383
|
}
|
|
10380
10384
|
});
|
|
10381
10385
|
}
|
|
10386
|
+
getCommands() {
|
|
10387
|
+
return this.commands;
|
|
10388
|
+
}
|
|
10382
10389
|
getInternalState() {
|
|
10383
10390
|
return this.internalState[this.instance];
|
|
10384
10391
|
}
|
|
@@ -12830,6 +12837,120 @@ class StellarSignTransaction extends BaseMethod {
|
|
|
12830
12837
|
}
|
|
12831
12838
|
}
|
|
12832
12839
|
|
|
12840
|
+
const getBinary = ({ features, updateType, version }) => __awaiter(void 0, void 0, void 0, function* () {
|
|
12841
|
+
const releaseInfo = getInfo({ features, updateType });
|
|
12842
|
+
if (!releaseInfo) {
|
|
12843
|
+
throw TypedError('Runtime', 'no firmware found for this device');
|
|
12844
|
+
}
|
|
12845
|
+
if (version &&
|
|
12846
|
+
!semver__default["default"].eq(releaseInfo.version, version)) {
|
|
12847
|
+
throw TypedError('Runtime', 'firmware version mismatch');
|
|
12848
|
+
}
|
|
12849
|
+
const url = updateType === 'ble' ? releaseInfo.webUpdate : releaseInfo.url;
|
|
12850
|
+
const fw = yield httpRequest(url, 'binary');
|
|
12851
|
+
return Object.assign(Object.assign({}, releaseInfo), { binary: fw });
|
|
12852
|
+
});
|
|
12853
|
+
const getInfo = ({ features, updateType }) => {
|
|
12854
|
+
var _a, _b, _c;
|
|
12855
|
+
const deviceType = getDeviceType(features);
|
|
12856
|
+
const { deviceMap } = DataManager;
|
|
12857
|
+
const releaseInfo = (_c = (_b = (_a = deviceMap === null || deviceMap === void 0 ? void 0 : deviceMap[deviceType]) === null || _a === void 0 ? void 0 : _a[updateType]) === null || _b === void 0 ? void 0 : _b[0]) !== null && _c !== void 0 ? _c : null;
|
|
12858
|
+
return releaseInfo;
|
|
12859
|
+
};
|
|
12860
|
+
|
|
12861
|
+
const postConfirmationMessage = (device) => {
|
|
12862
|
+
var _a;
|
|
12863
|
+
if ((_a = device.features) === null || _a === void 0 ? void 0 : _a.firmware_present) {
|
|
12864
|
+
device.emit(DEVICE.BUTTON, device, { code: 'ButtonRequest_FirmwareUpdate' });
|
|
12865
|
+
}
|
|
12866
|
+
};
|
|
12867
|
+
const postProgressMessage = (device, progress, postMessage) => {
|
|
12868
|
+
postMessage(createUiMessage(UI_REQUEST$1.FIRMWARE_PROGRESS, {
|
|
12869
|
+
device: device.toMessageObject(),
|
|
12870
|
+
progress,
|
|
12871
|
+
}));
|
|
12872
|
+
};
|
|
12873
|
+
const uploadFirmware = (updateType, typedCall, postMessage, device, { payload }) => __awaiter(void 0, void 0, void 0, function* () {
|
|
12874
|
+
var _a, _b;
|
|
12875
|
+
if (((_a = device.features) === null || _a === void 0 ? void 0 : _a.major_version) === 1) {
|
|
12876
|
+
postConfirmationMessage(device);
|
|
12877
|
+
const eraseCommand = updateType === 'firmware' ? 'FirmwareErase' : 'FirmwareErase_ex';
|
|
12878
|
+
yield typedCall(eraseCommand, 'Success', {});
|
|
12879
|
+
postProgressMessage(device, 0, postMessage);
|
|
12880
|
+
const { message } = yield typedCall('FirmwareUpload', 'Success', {
|
|
12881
|
+
payload,
|
|
12882
|
+
});
|
|
12883
|
+
return message;
|
|
12884
|
+
}
|
|
12885
|
+
if (((_b = device.features) === null || _b === void 0 ? void 0 : _b.major_version) === 2) {
|
|
12886
|
+
postConfirmationMessage(device);
|
|
12887
|
+
const length = payload.byteLength;
|
|
12888
|
+
let response = yield typedCall('FirmwareErase', ['FirmwareRequest', 'Success'], { length });
|
|
12889
|
+
while (response.type !== 'Success') {
|
|
12890
|
+
const start = response.message.offset;
|
|
12891
|
+
const end = response.message.offset + response.message.length;
|
|
12892
|
+
const chunk = payload.slice(start, end);
|
|
12893
|
+
if (start > 0) {
|
|
12894
|
+
postProgressMessage(device, Math.round((start / length) * 100), postMessage);
|
|
12895
|
+
}
|
|
12896
|
+
response = yield typedCall('FirmwareUpload', ['FirmwareRequest', 'Success'], {
|
|
12897
|
+
payload: chunk,
|
|
12898
|
+
});
|
|
12899
|
+
}
|
|
12900
|
+
postProgressMessage(device, 100, postMessage);
|
|
12901
|
+
return response.message;
|
|
12902
|
+
}
|
|
12903
|
+
throw TypedError('Runtime', 'uploadFirmware: unknown major_version');
|
|
12904
|
+
});
|
|
12905
|
+
|
|
12906
|
+
class FirmwareUpdate extends BaseMethod {
|
|
12907
|
+
init() {
|
|
12908
|
+
this.allowDeviceMode = [UI_REQUEST.BOOTLOADER, UI_REQUEST.INITIALIZE];
|
|
12909
|
+
this.requireDeviceMode = [UI_REQUEST.BOOTLOADER];
|
|
12910
|
+
const { payload } = this;
|
|
12911
|
+
validateParams(payload, [
|
|
12912
|
+
{ name: 'version', type: 'array' },
|
|
12913
|
+
{ name: 'binary', type: 'buffer' },
|
|
12914
|
+
]);
|
|
12915
|
+
if (!payload.updateType) {
|
|
12916
|
+
throw TypedError('Method_InvalidParameter', 'updateType is required');
|
|
12917
|
+
}
|
|
12918
|
+
this.params = { updateType: payload.updateType };
|
|
12919
|
+
if ('version' in payload) {
|
|
12920
|
+
this.params = Object.assign(Object.assign({}, this.params), { version: payload.version });
|
|
12921
|
+
}
|
|
12922
|
+
if ('binary' in payload) {
|
|
12923
|
+
this.params = Object.assign(Object.assign({}, this.params), { binary: payload.binary });
|
|
12924
|
+
}
|
|
12925
|
+
}
|
|
12926
|
+
run() {
|
|
12927
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
12928
|
+
const { device, params } = this;
|
|
12929
|
+
let binary;
|
|
12930
|
+
try {
|
|
12931
|
+
if (params.binary) {
|
|
12932
|
+
binary = this.params.binary;
|
|
12933
|
+
}
|
|
12934
|
+
else {
|
|
12935
|
+
if (!device.features) {
|
|
12936
|
+
throw TypedError('Runtime', 'no features found for this device');
|
|
12937
|
+
}
|
|
12938
|
+
const firmware = yield getBinary({
|
|
12939
|
+
features: device.features,
|
|
12940
|
+
version: params.version,
|
|
12941
|
+
updateType: params.updateType,
|
|
12942
|
+
});
|
|
12943
|
+
binary = firmware.binary;
|
|
12944
|
+
}
|
|
12945
|
+
}
|
|
12946
|
+
catch (err) {
|
|
12947
|
+
throw TypedError('Method_FirmwareUpdate_DownloadFailed', err);
|
|
12948
|
+
}
|
|
12949
|
+
return uploadFirmware(params.updateType, this.device.getCommands().typedCall.bind(this.device.getCommands()), this.postMessage, device, { payload: binary });
|
|
12950
|
+
});
|
|
12951
|
+
}
|
|
12952
|
+
}
|
|
12953
|
+
|
|
12833
12954
|
var ApiMethods = /*#__PURE__*/Object.freeze({
|
|
12834
12955
|
__proto__: null,
|
|
12835
12956
|
searchDevices: SearchDevices,
|
|
@@ -12869,7 +12990,8 @@ var ApiMethods = /*#__PURE__*/Object.freeze({
|
|
|
12869
12990
|
solGetAddress: SolGetAddress,
|
|
12870
12991
|
solSignTransaction: SolSignTransaction,
|
|
12871
12992
|
stellarGetAddress: StellarGetAddress,
|
|
12872
|
-
stellarSignTransaction: StellarSignTransaction
|
|
12993
|
+
stellarSignTransaction: StellarSignTransaction,
|
|
12994
|
+
firmwareUpdate: FirmwareUpdate
|
|
12873
12995
|
});
|
|
12874
12996
|
|
|
12875
12997
|
function findMethod(message) {
|
|
@@ -13043,6 +13165,7 @@ const callAPI = (message) => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
13043
13165
|
try {
|
|
13044
13166
|
method = findMethod(message);
|
|
13045
13167
|
method.connector = _connector;
|
|
13168
|
+
method.postMessage = postMessage;
|
|
13046
13169
|
method.init();
|
|
13047
13170
|
}
|
|
13048
13171
|
catch (error) {
|
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,OA8Gd,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { PROTO } from '../../constants';
|
|
2
|
+
import type { Params, Response } from '../params';
|
|
3
|
+
export interface FirmwareUpdateBinary {
|
|
4
|
+
binary: ArrayBuffer;
|
|
5
|
+
}
|
|
6
|
+
export interface FirmwareUpdate {
|
|
7
|
+
version: number[];
|
|
8
|
+
btcOnly?: boolean;
|
|
9
|
+
updateType: 'firmware' | 'ble';
|
|
10
|
+
}
|
|
11
|
+
export declare function firmwareUpdate(connectId: string | undefined, params: Params<FirmwareUpdate>): Response<PROTO.Success>;
|
|
12
|
+
export declare function firmwareUpdate(connectId: string | undefined, params: Params<FirmwareUpdateBinary>): Response<PROTO.Success>;
|
|
13
|
+
//# sourceMappingURL=firmwareUpdate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"firmwareUpdate.d.ts","sourceRoot":"","sources":["../../../src/types/api/firmwareUpdate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAElD,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,UAAU,GAAG,KAAK,CAAC;CAChC;AAED,MAAM,CAAC,OAAO,UAAU,cAAc,CACpC,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,MAAM,EAAE,MAAM,CAAC,cAAc,CAAC,GAC7B,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AAC3B,MAAM,CAAC,OAAO,UAAU,cAAc,CACpC,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,MAAM,EAAE,MAAM,CAAC,oBAAoB,CAAC,GACnC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC"}
|
|
@@ -39,6 +39,7 @@ import { solSignTransaction } from './solSignTransaction';
|
|
|
39
39
|
import { stellarGetAddress } from './stellarGetAddress';
|
|
40
40
|
import { stellarSignTransaction } from './stellarSignTransaction';
|
|
41
41
|
import { cipherKeyValue } from './cipherKeyValue';
|
|
42
|
+
import { firmwareUpdate } from './firmwareUpdate';
|
|
42
43
|
export * from './export';
|
|
43
44
|
export declare type CoreApi = {
|
|
44
45
|
init: typeof init;
|
|
@@ -87,5 +88,6 @@ export declare type CoreApi = {
|
|
|
87
88
|
solSignTransaction: typeof solSignTransaction;
|
|
88
89
|
stellarGetAddress: typeof stellarGetAddress;
|
|
89
90
|
stellarSignTransaction: typeof stellarSignTransaction;
|
|
91
|
+
firmwareUpdate: typeof firmwareUpdate;
|
|
90
92
|
};
|
|
91
93
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/api/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/api/index.ts"],"names":[],"mappings":"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"}
|
package/dist/types/device.d.ts
CHANGED
|
@@ -41,4 +41,42 @@ export declare type DeviceFirmwareRange = {
|
|
|
41
41
|
max?: string;
|
|
42
42
|
};
|
|
43
43
|
};
|
|
44
|
+
declare type FeaturesNarrowing = {
|
|
45
|
+
major_version: 2;
|
|
46
|
+
fw_major: null;
|
|
47
|
+
fw_minor: null;
|
|
48
|
+
fw_patch: null;
|
|
49
|
+
bootloader_mode: true;
|
|
50
|
+
firmware_present: false;
|
|
51
|
+
} | {
|
|
52
|
+
major_version: 2;
|
|
53
|
+
fw_major: null;
|
|
54
|
+
fw_minor: null;
|
|
55
|
+
fw_patch: null;
|
|
56
|
+
bootloader_mode: null;
|
|
57
|
+
firmware_present: null;
|
|
58
|
+
} | {
|
|
59
|
+
major_version: 2;
|
|
60
|
+
fw_major: 2;
|
|
61
|
+
fw_minor: number;
|
|
62
|
+
fw_patch: number;
|
|
63
|
+
bootloader_mode: true;
|
|
64
|
+
firmware_present: true;
|
|
65
|
+
} | {
|
|
66
|
+
major_version: 1;
|
|
67
|
+
fw_major: null;
|
|
68
|
+
fw_minor: null;
|
|
69
|
+
fw_patch: null;
|
|
70
|
+
bootloader_mode: true;
|
|
71
|
+
firmware_present: false;
|
|
72
|
+
} | {
|
|
73
|
+
major_version: 1;
|
|
74
|
+
fw_major: null;
|
|
75
|
+
fw_minor: null;
|
|
76
|
+
fw_patch: null;
|
|
77
|
+
bootloader_mode: true;
|
|
78
|
+
firmware_present: true;
|
|
79
|
+
};
|
|
80
|
+
export declare type StrictFeatures = Features & FeaturesNarrowing;
|
|
81
|
+
export {};
|
|
44
82
|
//# sourceMappingURL=device.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../../src/types/device.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,oBAAY,YAAY,GAAG,WAAW,GAAG,UAAU,GAAG,MAAM,CAAC;AAE7D,oBAAY,UAAU,GAAG,QAAQ,GAAG,YAAY,GAAG,YAAY,GAAG,UAAU,CAAC;AAE7E,oBAAY,qBAAqB,GAC7B,eAAe,GACf,YAAY,GACZ,iBAAiB,GACjB,yBAAyB,CAAC;AAE9B,oBAAY,uBAAuB,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,qBAAqB,CAAA;CAAE,CAAC;AAE/E,oBAAY,WAAW,GAAG;IACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,WAAW,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,SAAS,CAAC;IACzB,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC;IACzB,uBAAuB,EAAE,uBAAuB,CAAC;IACjD,kBAAkB,EAAE,aAAa,GAAG,IAAI,CAAC;IACzC,eAAe,EAAE,aAAa,GAAG,IAAI,CAAC;CACvC,CAAC;AAEF,oBAAY,YAAY,GAAG;IACzB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,WAAW,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAgCF,oBAAY,MAAM,GAAG,WAAW,CAAC;AAEjC,oBAAY,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;AAEtC,oBAAY,WAAW,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;AAI/D,oBAAY,YAAY,GAAG,YAAY,GAAG,aAAa,CAAC;AAExD,oBAAY,qBAAqB,GAAG,OAAO,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC;AAE3F,oBAAY,wBAAwB,GAAG,OAAO,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC;AAE9F,oBAAY,gBAAgB,GAAG,OAAO,GAAG,UAAU,CAAC;AAEpD,oBAAY,mBAAmB,GAAG;KAC/B,UAAU,IAAI,WAAW,GAAG,YAAY,CAAC,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE;CAC3E,CAAC"}
|
|
1
|
+
{"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../../src/types/device.ts"],"names":[],"mappings":"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"}
|
package/dist/types/firmware.d.ts
CHANGED
|
@@ -8,7 +8,8 @@ export interface FirmwareRange {
|
|
|
8
8
|
max: string;
|
|
9
9
|
};
|
|
10
10
|
}
|
|
11
|
-
export declare type
|
|
11
|
+
export declare type MajorVersion = 1 | 2;
|
|
12
|
+
export declare type VersionArray = [MajorVersion, number, number];
|
|
12
13
|
export declare type FirmwareRelease = {
|
|
13
14
|
required: boolean;
|
|
14
15
|
url: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firmware.d.ts","sourceRoot":"","sources":["../../src/types/firmware.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE;QACH,GAAG,EAAE,MAAM,CAAC;QACZ,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;IACF,GAAG,EAAE;QACH,GAAG,EAAE,MAAM,CAAC;QACZ,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;CACH;AAED,oBAAY,YAAY,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"firmware.d.ts","sourceRoot":"","sources":["../../src/types/firmware.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE;QACH,GAAG,EAAE,MAAM,CAAC;QACZ,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;IACF,GAAG,EAAE;QACH,GAAG,EAAE,MAAM,CAAC;QACZ,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;CACH;AAED,oBAAY,YAAY,GAAG,CAAC,GAAG,CAAC,CAAC;AACjC,oBAAY,YAAY,GAAG,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAE1D,oBAAY,eAAe,GAAG;IAC5B,QAAQ,EAAE,OAAO,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7C,OAAO,EAAE,YAAY,CAAC;IACtB,oBAAoB,EAAE,YAAY,CAAC;IACnC,sBAAsB,EAAE,YAAY,CAAC;IACrC,kBAAkB,CAAC,EAAE,YAAY,CAAC;IAClC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,oBAAY,WAAW,GAAG;IACxB,SAAS,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC;IACpC,OAAO,EAAE,eAAe,CAAC;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,eAAe,CAAC;IACxB,UAAU,EAAE,OAAO,GAAG,IAAI,CAAC;IAC3B,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;CACzB,CAAC;AAEF,oBAAY,sBAAsB,GAAG,OAAO,GAAG,UAAU,CAAC"}
|
package/dist/types/params.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"params.d.ts","sourceRoot":"","sources":["../../src/types/params.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,KAAK,CAAC;IACf,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3C;AAED,MAAM,WAAW,OAAO,CAAC,CAAC;IACxB,OAAO,EAAE,IAAI,CAAC;IACd,OAAO,EAAE,CAAC,CAAC;CACZ;AAED,oBAAY,QAAQ,CAAC,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"params.d.ts","sourceRoot":"","sources":["../../src/types/params.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,oBAAY,MAAM,CAAC,CAAC,IAAI,YAAY,GAAG,CAAC,GAAG;IAAE,MAAM,CAAC,EAAE,SAAS,CAAA;CAAE,CAAC;AAElE,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,KAAK,CAAC;IACf,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3C;AAED,MAAM,WAAW,OAAO,CAAC,CAAC;IACxB,OAAO,EAAE,IAAI,CAAC;IACd,OAAO,EAAE,CAAC,CAAC;CACZ;AAED,oBAAY,QAAQ,CAAC,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC"}
|
package/dist/utils/assets.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assets.d.ts","sourceRoot":"","sources":["../../src/utils/assets.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW,QAAS,MAAM,
|
|
1
|
+
{"version":3,"file":"assets.d.ts","sourceRoot":"","sources":["../../src/utils/assets.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW,QAAS,MAAM,QAAQ,MAAM,KAAG,GAAoC,CAAC;AAE7F,eAAO,MAAM,YAAY,cAA6B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"networkUtils.d.ts","sourceRoot":"","sources":["../../src/utils/networkUtils.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW,QAAe,MAAM,
|
|
1
|
+
{"version":3,"file":"networkUtils.d.ts","sourceRoot":"","sources":["../../src/utils/networkUtils.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW,QAAe,MAAM,gCAiB5C,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@onekeyfe/hd-core",
|
|
3
|
-
"version": "0.0
|
|
3
|
+
"version": "0.1.0",
|
|
4
4
|
"description": "> TODO: description",
|
|
5
5
|
"author": "OneKey",
|
|
6
6
|
"homepage": "https://github.com/OneKeyHQ/hardware-js-sdk#readme",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"url": "https://github.com/OneKeyHQ/hardware-js-sdk/issues"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@onekeyfe/hd-transport": "^0.0
|
|
28
|
+
"@onekeyfe/hd-transport": "^0.1.0",
|
|
29
29
|
"axios": "^0.27.2",
|
|
30
30
|
"bignumber.js": "^9.0.2",
|
|
31
31
|
"parse-uri": "^1.0.7",
|
|
@@ -35,5 +35,5 @@
|
|
|
35
35
|
"@types/parse-uri": "^1.0.0",
|
|
36
36
|
"@types/semver": "^7.3.9"
|
|
37
37
|
},
|
|
38
|
-
"gitHead": "
|
|
38
|
+
"gitHead": "d50dc424865150391b7249d1010ee75dc2074a7e"
|
|
39
39
|
}
|
package/src/api/BaseMethod.ts
CHANGED
|
@@ -2,6 +2,7 @@ import { UI_REQUEST } from '../constants/ui-request';
|
|
|
2
2
|
import { Device } from '../device/Device';
|
|
3
3
|
import DeviceConnector from '../device/DeviceConnector';
|
|
4
4
|
import { DeviceFirmwareRange } from '../types';
|
|
5
|
+
import { CoreMessage } from '../events';
|
|
5
6
|
|
|
6
7
|
export abstract class BaseMethod<Params = undefined> {
|
|
7
8
|
responseID: number;
|
|
@@ -48,6 +49,9 @@ export abstract class BaseMethod<Params = undefined> {
|
|
|
48
49
|
*/
|
|
49
50
|
requireDeviceMode: string[];
|
|
50
51
|
|
|
52
|
+
// @ts-expect-error: strictPropertyInitialization
|
|
53
|
+
postMessage: (message: CoreMessage) => void;
|
|
54
|
+
|
|
51
55
|
constructor(message: { id?: number; payload: any }) {
|
|
52
56
|
const { payload } = message;
|
|
53
57
|
this.name = payload.method;
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { ERRORS } from '../constants';
|
|
2
|
+
import { UI_REQUEST } from '../constants/ui-request';
|
|
3
|
+
import { BaseMethod } from './BaseMethod';
|
|
4
|
+
import { validateParams } from './helpers/paramsValidator';
|
|
5
|
+
import { getBinary } from './firmware/getBinary';
|
|
6
|
+
import { uploadFirmware } from './firmware/uploadFirmware';
|
|
7
|
+
|
|
8
|
+
type Params = {
|
|
9
|
+
binary?: ArrayBuffer;
|
|
10
|
+
version?: number[];
|
|
11
|
+
updateType: 'firmware' | 'ble';
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
export default class FirmwareUpdate extends BaseMethod<Params> {
|
|
15
|
+
init() {
|
|
16
|
+
this.allowDeviceMode = [UI_REQUEST.BOOTLOADER, UI_REQUEST.INITIALIZE];
|
|
17
|
+
this.requireDeviceMode = [UI_REQUEST.BOOTLOADER];
|
|
18
|
+
|
|
19
|
+
const { payload } = this;
|
|
20
|
+
|
|
21
|
+
validateParams(payload, [
|
|
22
|
+
{ name: 'version', type: 'array' },
|
|
23
|
+
{ name: 'binary', type: 'buffer' },
|
|
24
|
+
]);
|
|
25
|
+
|
|
26
|
+
if (!payload.updateType) {
|
|
27
|
+
throw ERRORS.TypedError('Method_InvalidParameter', 'updateType is required');
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
this.params = { updateType: payload.updateType };
|
|
31
|
+
|
|
32
|
+
if ('version' in payload) {
|
|
33
|
+
this.params = {
|
|
34
|
+
...this.params,
|
|
35
|
+
version: payload.version,
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
if ('binary' in payload) {
|
|
40
|
+
this.params = {
|
|
41
|
+
...this.params,
|
|
42
|
+
binary: payload.binary,
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
async run() {
|
|
48
|
+
const { device, params } = this;
|
|
49
|
+
|
|
50
|
+
let binary;
|
|
51
|
+
|
|
52
|
+
try {
|
|
53
|
+
if (params.binary) {
|
|
54
|
+
binary = this.params.binary;
|
|
55
|
+
} else {
|
|
56
|
+
if (!device.features) {
|
|
57
|
+
throw ERRORS.TypedError('Runtime', 'no features found for this device');
|
|
58
|
+
}
|
|
59
|
+
const firmware = await getBinary({
|
|
60
|
+
features: device.features,
|
|
61
|
+
version: params.version,
|
|
62
|
+
updateType: params.updateType,
|
|
63
|
+
});
|
|
64
|
+
binary = firmware.binary;
|
|
65
|
+
}
|
|
66
|
+
} catch (err) {
|
|
67
|
+
throw ERRORS.TypedError('Method_FirmwareUpdate_DownloadFailed', err);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
return uploadFirmware(
|
|
71
|
+
params.updateType,
|
|
72
|
+
this.device.getCommands().typedCall.bind(this.device.getCommands()),
|
|
73
|
+
this.postMessage,
|
|
74
|
+
device,
|
|
75
|
+
{ payload: binary }
|
|
76
|
+
);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import semver from 'semver';
|
|
2
|
+
import { Features } from '../../types';
|
|
3
|
+
import { getDeviceType, httpRequest } from '../../utils';
|
|
4
|
+
import { DataManager } from '../../data-manager';
|
|
5
|
+
import { ERRORS } from '../../constants';
|
|
6
|
+
|
|
7
|
+
export interface GetInfoProps {
|
|
8
|
+
features: Features;
|
|
9
|
+
updateType: 'firmware' | 'ble';
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
interface GetBinaryProps extends GetInfoProps {
|
|
13
|
+
version?: number[];
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export const getBinary = async ({ features, updateType, version }: GetBinaryProps) => {
|
|
17
|
+
const releaseInfo = getInfo({ features, updateType });
|
|
18
|
+
|
|
19
|
+
if (!releaseInfo) {
|
|
20
|
+
throw ERRORS.TypedError('Runtime', 'no firmware found for this device');
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
if (
|
|
24
|
+
version &&
|
|
25
|
+
!semver.eq(releaseInfo.version as unknown as semver.SemVer, version as unknown as semver.SemVer)
|
|
26
|
+
) {
|
|
27
|
+
throw ERRORS.TypedError('Runtime', 'firmware version mismatch');
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
// @ts-expect-error
|
|
31
|
+
const url = updateType === 'ble' ? releaseInfo.webUpdate : releaseInfo.url;
|
|
32
|
+
const fw = await httpRequest(url, 'binary');
|
|
33
|
+
|
|
34
|
+
return {
|
|
35
|
+
...releaseInfo,
|
|
36
|
+
binary: fw,
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
const getInfo = ({ features, updateType }: GetInfoProps) => {
|
|
41
|
+
const deviceType = getDeviceType(features);
|
|
42
|
+
const { deviceMap } = DataManager;
|
|
43
|
+
const releaseInfo = deviceMap?.[deviceType]?.[updateType]?.[0] ?? null;
|
|
44
|
+
|
|
45
|
+
return releaseInfo;
|
|
46
|
+
};
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { DEVICE, CoreMessage, createUiMessage, UI_REQUEST } from '../../events';
|
|
2
|
+
import { ERRORS, PROTO } from '../../constants';
|
|
3
|
+
import type { Device } from '../../device/Device';
|
|
4
|
+
import type { TypedCall } from '../../device/DeviceCommands';
|
|
5
|
+
import { KnownDevice } from '../../types';
|
|
6
|
+
|
|
7
|
+
const postConfirmationMessage = (device: Device) => {
|
|
8
|
+
// only if firmware is already installed. fresh device does not require button confirmation
|
|
9
|
+
if (device.features?.firmware_present) {
|
|
10
|
+
device.emit(DEVICE.BUTTON, device, { code: 'ButtonRequest_FirmwareUpdate' });
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
const postProgressMessage = (
|
|
15
|
+
device: Device,
|
|
16
|
+
progress: number,
|
|
17
|
+
postMessage: (message: CoreMessage) => void
|
|
18
|
+
) => {
|
|
19
|
+
postMessage(
|
|
20
|
+
createUiMessage(UI_REQUEST.FIRMWARE_PROGRESS, {
|
|
21
|
+
device: device.toMessageObject() as KnownDevice,
|
|
22
|
+
progress,
|
|
23
|
+
})
|
|
24
|
+
);
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
export const uploadFirmware = async (
|
|
28
|
+
updateType: 'firmware' | 'ble',
|
|
29
|
+
typedCall: TypedCall,
|
|
30
|
+
postMessage: (message: CoreMessage) => void,
|
|
31
|
+
device: Device,
|
|
32
|
+
{ payload }: PROTO.FirmwareUpload
|
|
33
|
+
) => {
|
|
34
|
+
if (device.features?.major_version === 1) {
|
|
35
|
+
postConfirmationMessage(device);
|
|
36
|
+
const eraseCommand = updateType === 'firmware' ? 'FirmwareErase' : 'FirmwareErase_ex';
|
|
37
|
+
await typedCall(eraseCommand as unknown as any, 'Success', {});
|
|
38
|
+
postProgressMessage(device, 0, postMessage);
|
|
39
|
+
const { message } = await typedCall('FirmwareUpload', 'Success', {
|
|
40
|
+
payload,
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
return message;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
if (device.features?.major_version === 2) {
|
|
47
|
+
postConfirmationMessage(device);
|
|
48
|
+
const length = payload.byteLength;
|
|
49
|
+
|
|
50
|
+
let response = await typedCall('FirmwareErase', ['FirmwareRequest', 'Success'], { length });
|
|
51
|
+
while (response.type !== 'Success') {
|
|
52
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
53
|
+
const start = response.message.offset!;
|
|
54
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
55
|
+
const end = response.message.offset! + response.message.length!;
|
|
56
|
+
const chunk = payload.slice(start, end);
|
|
57
|
+
|
|
58
|
+
if (start > 0) {
|
|
59
|
+
postProgressMessage(device, Math.round((start / length) * 100), postMessage);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
response = await typedCall('FirmwareUpload', ['FirmwareRequest', 'Success'], {
|
|
63
|
+
payload: chunk,
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
postProgressMessage(device, 100, postMessage);
|
|
68
|
+
return response.message;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
throw ERRORS.TypedError('Runtime', 'uploadFirmware: unknown major_version');
|
|
72
|
+
};
|
package/src/api/index.ts
CHANGED
|
@@ -39,3 +39,5 @@ export { default as solSignTransaction } from './solana/SolSignTransaction';
|
|
|
39
39
|
|
|
40
40
|
export { default as stellarGetAddress } from './stellar/StellarGetAddress';
|
|
41
41
|
export { default as stellarSignTransaction } from './stellar/StellarSignTransaction';
|
|
42
|
+
|
|
43
|
+
export { default as firmwareUpdate } from './FirmwareUpdate';
|
package/src/constants/errors.ts
CHANGED
package/src/core/index.ts
CHANGED
|
@@ -57,6 +57,7 @@ export const callAPI = async (message: CoreMessage) => {
|
|
|
57
57
|
try {
|
|
58
58
|
method = findMethod(message as IFrameCallMessage);
|
|
59
59
|
method.connector = _connector;
|
|
60
|
+
method.postMessage = postMessage;
|
|
60
61
|
method.init();
|
|
61
62
|
} catch (error) {
|
|
62
63
|
return Promise.reject(error);
|
package/src/device/Device.ts
CHANGED
package/src/events/ui-request.ts
CHANGED
|
@@ -14,6 +14,8 @@ export const UI_REQUEST = {
|
|
|
14
14
|
|
|
15
15
|
BLUETOOTH_PERMISSION: 'ui-bluetooth_permission',
|
|
16
16
|
LOCATION_PERMISSION: 'ui-location_permission',
|
|
17
|
+
|
|
18
|
+
FIRMWARE_PROGRESS: 'ui-firmware-progress',
|
|
17
19
|
} as const;
|
|
18
20
|
|
|
19
21
|
export interface UiRequestWithoutPayload {
|
|
@@ -37,7 +39,19 @@ export interface UiRequestButton {
|
|
|
37
39
|
payload: DeviceButtonRequest['payload'];
|
|
38
40
|
}
|
|
39
41
|
|
|
40
|
-
export
|
|
42
|
+
export interface FirmwareProgress {
|
|
43
|
+
type: typeof UI_REQUEST.FIRMWARE_PROGRESS;
|
|
44
|
+
payload: {
|
|
45
|
+
device: Device;
|
|
46
|
+
progress: number;
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export type UiEvent =
|
|
51
|
+
| UiRequestWithoutPayload
|
|
52
|
+
| UiRequestDeviceAction
|
|
53
|
+
| UiRequestButton
|
|
54
|
+
| FirmwareProgress;
|
|
41
55
|
|
|
42
56
|
export type UiEventMessage = UiEvent & { event: typeof UI_EVENT };
|
|
43
57
|
|
package/src/inject.ts
CHANGED
|
@@ -124,6 +124,8 @@ export const inject = ({
|
|
|
124
124
|
call({ ...params, connectId, method: 'stellarGetAddress' }),
|
|
125
125
|
stellarSignTransaction: (connectId, params) =>
|
|
126
126
|
call({ ...params, connectId, method: 'stellarSignTransaction' }),
|
|
127
|
+
|
|
128
|
+
firmwareUpdate: (connectId, params) => call({ ...params, connectId, method: 'firmwareUpdate' }),
|
|
127
129
|
};
|
|
128
130
|
return api;
|
|
129
131
|
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { PROTO } from '../../constants';
|
|
2
|
+
import type { Params, Response } from '../params';
|
|
3
|
+
|
|
4
|
+
export interface FirmwareUpdateBinary {
|
|
5
|
+
binary: ArrayBuffer;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export interface FirmwareUpdate {
|
|
9
|
+
version: number[];
|
|
10
|
+
btcOnly?: boolean;
|
|
11
|
+
updateType: 'firmware' | 'ble';
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export declare function firmwareUpdate(
|
|
15
|
+
connectId: string | undefined,
|
|
16
|
+
params: Params<FirmwareUpdate>
|
|
17
|
+
): Response<PROTO.Success>;
|
|
18
|
+
export declare function firmwareUpdate(
|
|
19
|
+
connectId: string | undefined,
|
|
20
|
+
params: Params<FirmwareUpdateBinary>
|
|
21
|
+
): Response<PROTO.Success>;
|
package/src/types/api/index.ts
CHANGED
|
@@ -39,6 +39,7 @@ import { solSignTransaction } from './solSignTransaction';
|
|
|
39
39
|
import { stellarGetAddress } from './stellarGetAddress';
|
|
40
40
|
import { stellarSignTransaction } from './stellarSignTransaction';
|
|
41
41
|
import { cipherKeyValue } from './cipherKeyValue';
|
|
42
|
+
import { firmwareUpdate } from './firmwareUpdate';
|
|
42
43
|
|
|
43
44
|
export * from './export';
|
|
44
45
|
|
|
@@ -108,4 +109,6 @@ export type CoreApi = {
|
|
|
108
109
|
|
|
109
110
|
stellarGetAddress: typeof stellarGetAddress;
|
|
110
111
|
stellarSignTransaction: typeof stellarSignTransaction;
|
|
112
|
+
|
|
113
|
+
firmwareUpdate: typeof firmwareUpdate;
|
|
111
114
|
};
|
package/src/types/device.ts
CHANGED
|
@@ -86,3 +86,47 @@ export type ITransportStatus = 'valid' | 'outdated';
|
|
|
86
86
|
export type DeviceFirmwareRange = {
|
|
87
87
|
[deviceType in IDeviceType | IDeviceModel]?: { min: string; max?: string };
|
|
88
88
|
};
|
|
89
|
+
|
|
90
|
+
type FeaturesNarrowing =
|
|
91
|
+
| {
|
|
92
|
+
major_version: 2;
|
|
93
|
+
fw_major: null;
|
|
94
|
+
fw_minor: null;
|
|
95
|
+
fw_patch: null;
|
|
96
|
+
bootloader_mode: true;
|
|
97
|
+
firmware_present: false;
|
|
98
|
+
}
|
|
99
|
+
| {
|
|
100
|
+
major_version: 2;
|
|
101
|
+
fw_major: null;
|
|
102
|
+
fw_minor: null;
|
|
103
|
+
fw_patch: null;
|
|
104
|
+
bootloader_mode: null;
|
|
105
|
+
firmware_present: null;
|
|
106
|
+
}
|
|
107
|
+
| {
|
|
108
|
+
major_version: 2;
|
|
109
|
+
fw_major: 2;
|
|
110
|
+
fw_minor: number;
|
|
111
|
+
fw_patch: number;
|
|
112
|
+
bootloader_mode: true;
|
|
113
|
+
firmware_present: true;
|
|
114
|
+
}
|
|
115
|
+
| {
|
|
116
|
+
major_version: 1;
|
|
117
|
+
fw_major: null;
|
|
118
|
+
fw_minor: null;
|
|
119
|
+
fw_patch: null;
|
|
120
|
+
bootloader_mode: true;
|
|
121
|
+
firmware_present: false;
|
|
122
|
+
}
|
|
123
|
+
| {
|
|
124
|
+
major_version: 1;
|
|
125
|
+
fw_major: null;
|
|
126
|
+
fw_minor: null;
|
|
127
|
+
fw_patch: null;
|
|
128
|
+
bootloader_mode: true;
|
|
129
|
+
firmware_present: true;
|
|
130
|
+
};
|
|
131
|
+
|
|
132
|
+
export type StrictFeatures = Features & FeaturesNarrowing;
|
package/src/types/firmware.ts
CHANGED
package/src/types/params.ts
CHANGED
package/src/utils/assets.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { httpRequest as browserHttpRequest } from './networkUtils';
|
|
2
2
|
|
|
3
|
-
export const httpRequest = (url: string,
|
|
3
|
+
export const httpRequest = (url: string, type: string): any => browserHttpRequest(url, type);
|
|
4
4
|
|
|
5
5
|
export const getTimeStamp = () => new Date().getTime();
|
|
@@ -4,13 +4,15 @@ export const httpRequest = async (url: string, type = 'text') => {
|
|
|
4
4
|
const response = await axios.request({
|
|
5
5
|
url,
|
|
6
6
|
withCredentials: false,
|
|
7
|
+
responseType: type === 'binary' ? 'arraybuffer' : 'json',
|
|
7
8
|
});
|
|
9
|
+
|
|
8
10
|
if (+response.status === 200) {
|
|
9
11
|
if (type === 'json') {
|
|
10
12
|
return response.data;
|
|
11
13
|
}
|
|
12
14
|
if (type === 'binary') {
|
|
13
|
-
return response.data
|
|
15
|
+
return response.data;
|
|
14
16
|
}
|
|
15
17
|
return response.data;
|
|
16
18
|
}
|