@onekeyfe/hd-core 1.2.0-alpha.81 → 1.2.0-alpha.84
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/__tests__/check-all-firmware-release-protocol-v2.test.ts +266 -0
- package/__tests__/check-firmware-release-protocol-v2.test.ts +36 -0
- package/__tests__/protocol-v2.test.ts +181 -2
- package/dist/api/CheckAllFirmwareRelease.d.ts.map +1 -1
- package/dist/api/CheckBLEFirmwareRelease.d.ts +1 -1
- package/dist/api/CheckBLEFirmwareRelease.d.ts.map +1 -1
- package/dist/api/CheckBootloaderRelease.d.ts +1 -1
- package/dist/api/CheckBootloaderRelease.d.ts.map +1 -1
- package/dist/api/CheckFirmwareRelease.d.ts +1 -1
- package/dist/api/CheckFirmwareRelease.d.ts.map +1 -1
- package/dist/api/FirmwareUpdateV4.d.ts +1 -0
- package/dist/api/FirmwareUpdateV4.d.ts.map +1 -1
- package/dist/api/firmware/FirmwareUpdatePlan.d.ts +33 -0
- package/dist/api/firmware/FirmwareUpdatePlan.d.ts.map +1 -1
- package/dist/api/firmware/protocolV2Release.d.ts.map +1 -1
- package/dist/index.d.ts +4 -3
- package/dist/index.js +202 -66
- package/dist/types/api/checkAllFirmwareRelease.d.ts +1 -0
- package/dist/types/api/checkAllFirmwareRelease.d.ts.map +1 -1
- package/dist/types/api/checkBLEFirmwareRelease.d.ts +1 -1
- package/dist/types/api/checkBLEFirmwareRelease.d.ts.map +1 -1
- package/dist/types/api/checkBootloaderRelease.d.ts +1 -1
- package/dist/types/api/checkBootloaderRelease.d.ts.map +1 -1
- package/dist/types/api/checkFirmwareRelease.d.ts +1 -1
- package/dist/types/api/checkFirmwareRelease.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/api/CheckAllFirmwareRelease.ts +76 -5
- package/src/api/CheckBLEFirmwareRelease.ts +4 -10
- package/src/api/CheckBootloaderRelease.ts +1 -8
- package/src/api/CheckFirmwareRelease.ts +6 -12
- package/src/api/FirmwareUpdateV4.ts +61 -21
- package/src/api/firmware/FirmwareUpdatePlan.ts +154 -37
- package/src/api/firmware/protocolV2Release.ts +2 -0
- package/src/types/api/checkAllFirmwareRelease.ts +1 -0
- package/src/types/api/checkBLEFirmwareRelease.ts +1 -1
- package/src/types/api/checkBootloaderRelease.ts +1 -1
- package/src/types/api/checkFirmwareRelease.ts +1 -1
- package/src/utils/deviceFeaturesUtils.ts +2 -2
|
@@ -1,7 +1,30 @@
|
|
|
1
1
|
import { EFirmwareType } from '@onekeyfe/hd-shared';
|
|
2
|
+
import type { FirmwareUpdateV4Target } from '../../types/api/firmwareUpdate';
|
|
2
3
|
import type { FirmwareUpdatePlan, FirmwareUpdatePlanForceTarget, FirmwareUpdatePlanTarget } from '../../types/api/firmwareUpdatePlan';
|
|
3
4
|
import type { Features } from '../../types';
|
|
4
5
|
type FirmwareUpdatePlatform = 'native' | 'desktop' | 'ext' | 'web' | 'web-embed';
|
|
6
|
+
type ReleaseRecord = {
|
|
7
|
+
url?: unknown;
|
|
8
|
+
webUpdate?: unknown;
|
|
9
|
+
resource?: unknown;
|
|
10
|
+
fullResource?: unknown;
|
|
11
|
+
fullResourceRange?: unknown;
|
|
12
|
+
bootloaderResource?: unknown;
|
|
13
|
+
version?: unknown;
|
|
14
|
+
components?: unknown;
|
|
15
|
+
installOrder?: unknown;
|
|
16
|
+
resourceBundles?: unknown;
|
|
17
|
+
fingerprint?: unknown;
|
|
18
|
+
fingerprintWeb?: unknown;
|
|
19
|
+
expectedSize?: unknown;
|
|
20
|
+
resourceFingerprint?: unknown;
|
|
21
|
+
resourceExpectedSize?: unknown;
|
|
22
|
+
fullResourceFingerprint?: unknown;
|
|
23
|
+
fullResourceExpectedSize?: unknown;
|
|
24
|
+
bootloaderFingerprint?: unknown;
|
|
25
|
+
bootloaderExpectedSize?: unknown;
|
|
26
|
+
bootloaderVersion?: unknown;
|
|
27
|
+
};
|
|
5
28
|
type ReleaseSelection = {
|
|
6
29
|
shouldUpdate?: boolean;
|
|
7
30
|
status?: unknown;
|
|
@@ -9,9 +32,19 @@ type ReleaseSelection = {
|
|
|
9
32
|
};
|
|
10
33
|
export declare const digestFirmwareUpdateContract: (value: unknown) => string;
|
|
11
34
|
export declare const validateFirmwareUpdatePlanForceTargets: (value: unknown) => FirmwareUpdatePlanForceTarget[];
|
|
35
|
+
export declare const validateProtocolV2FirmwareUpdateTargets: (value: unknown) => FirmwareUpdateV4Target[];
|
|
12
36
|
export declare const FIRMWARE_UPDATE_PLAN_TARGETS: Set<FirmwareUpdatePlanTarget>;
|
|
13
37
|
export declare const FIRMWARE_UPDATE_PLAN_ROLES: Set<string>;
|
|
14
38
|
export declare const assertFirmwareUpdatePlan: (value: unknown) => FirmwareUpdatePlan;
|
|
39
|
+
export declare const buildProtocolV2FirmwareUpdatePlan: ({ features, firmwareType, platform, release, targetsToUpdate, forceUpdateTargets, resourceArchiveAvailable, }: {
|
|
40
|
+
features: Features;
|
|
41
|
+
firmwareType: EFirmwareType;
|
|
42
|
+
platform: FirmwareUpdatePlatform;
|
|
43
|
+
release: ReleaseRecord | undefined;
|
|
44
|
+
targetsToUpdate: readonly FirmwareUpdateV4Target[];
|
|
45
|
+
forceUpdateTargets?: FirmwareUpdatePlanForceTarget[] | undefined;
|
|
46
|
+
resourceArchiveAvailable: boolean;
|
|
47
|
+
}) => FirmwareUpdatePlan;
|
|
15
48
|
export declare const buildFirmwareUpdatePlan: ({ features, firmwareType, platform, firmware, ble, bootloader, forceUpdateTargets, }: {
|
|
16
49
|
features: Features;
|
|
17
50
|
firmwareType: EFirmwareType;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FirmwareUpdatePlan.d.ts","sourceRoot":"","sources":["../../../src/api/firmware/FirmwareUpdatePlan.ts"],"names":[],"mappings":"AAEA,OAAO,EAAe,aAAa,EAA6B,MAAM,qBAAqB,CAAC;AAU5F,OAAO,KAAK,EACV,kBAAkB,EAElB,6BAA6B,EAC7B,wBAAwB,EACzB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,KAAK,sBAAsB,GAAG,QAAQ,GAAG,SAAS,GAAG,KAAK,GAAG,KAAK,GAAG,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"FirmwareUpdatePlan.d.ts","sourceRoot":"","sources":["../../../src/api/firmware/FirmwareUpdatePlan.ts"],"names":[],"mappings":"AAEA,OAAO,EAAe,aAAa,EAA6B,MAAM,qBAAqB,CAAC;AAU5F,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAC7E,OAAO,KAAK,EACV,kBAAkB,EAElB,6BAA6B,EAC7B,wBAAwB,EACzB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,KAAK,sBAAsB,GAAG,QAAQ,GAAG,SAAS,GAAG,KAAK,GAAG,KAAK,GAAG,WAAW,CAAC;AAEjF,KAAK,aAAa,GAAG;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEF,KAAK,gBAAgB,GAAG;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AA+GF,eAAO,MAAM,4BAA4B,UAAW,OAAO,KAAG,MAG3D,CAAC;AAkBJ,eAAO,MAAM,sCAAsC,UAC1C,OAAO,KACb,6BAA6B,EAa/B,CAAC;AAEF,eAAO,MAAM,uCAAuC,UAC3C,OAAO,KACb,sBAAsB,EAaxB,CAAC;AAuBF,eAAO,MAAM,4BAA4B,+BAavC,CAAC;AAEH,eAAO,MAAM,0BAA0B,aAOrC,CAAC;AAYH,eAAO,MAAM,wBAAwB,UAAW,OAAO,KAAG,kBAyHzD,CAAC;AA0RF,eAAO,MAAM,iCAAiC;cASlC,QAAQ;kBACJ,aAAa;cACjB,sBAAsB;aACvB,aAAa,GAAG,SAAS;qBACjB,SAAS,sBAAsB,EAAE;;8BAExB,OAAO;MAC/B,kBA2CH,CAAC;AAEF,eAAO,MAAM,uBAAuB;cASxB,QAAQ;kBACJ,aAAa;cACjB,sBAAsB;cACtB,gBAAgB;SACrB,gBAAgB;;;MAGnB,kBAyIH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocolV2Release.d.ts","sourceRoot":"","sources":["../../../src/api/firmware/protocolV2Release.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAA6B,MAAM,qBAAqB,CAAC;AAI/E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EACV,WAAW,EACX,QAAQ,EACR,oBAAoB,EACpB,kCAAkC,EACnC,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EACV,0BAA0B,EAC1B,8BAA8B,EAE/B,MAAM,yCAAyC,CAAC;AACjD,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AAEhF,eAAO,MAAM,iCAAiC,EAAE,SAAS,kCAAkC,EAO1F,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,SAAS,kCAAkC,EAEhF,CAAC;AAEF,eAAO,MAAM,8BAA8B,EAAE,SAAS,kCAAkC,EAEvF,CAAC;AAEF,MAAM,MAAM,gCAAgC,GAAG;IAC7C,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,GAAG;QACrC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,YAAY,CAAC,GAAG;YACtD,UAAU,EAAE,WAAW,CAAC,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC;SAChD,CAAC;KACH,CAAC;IACF,QAAQ,EAAE,QAAQ,CAAC;IACnB,YAAY,EAAE,aAAa,CAAC;IAC5B,OAAO,EAAE,oBAAoB,GAAG,SAAS,CAAC;CAC3C,CAAC;AAEF,wBAAsB,oCAAoC,CAAC,EACzD,MAAM,EACN,YAAY,EAAE,iBAAiB,EAC/B,iBAAyB,EACzB,UAAU,GACX,EAAE;IACD,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC,gCAAgC,CAAC,CA4B5C;AAED,wBAAgB,kCAAkC,CAChD,IAAI,EAAE,6BAA6B,EACnC,gBAAgB,EAAE,SAAS,kCAAkC,EAAE,GAC9D,6BAA6B,CAiC/B;AAED,wBAAgB,+BAA+B,CAAC,EAC9C,IAAI,EACJ,KAAK,EACL,OAAO,GACR,EAAE;IACD,IAAI,EAAE,6BAA6B,CAAC;IACpC,KAAK,EAAE,WAAW,CAAC;IACnB,OAAO,EAAE,0BAA0B,CAAC,SAAS,CAAC,CAAC;CAChD,GAAG,0BAA0B,
|
|
1
|
+
{"version":3,"file":"protocolV2Release.d.ts","sourceRoot":"","sources":["../../../src/api/firmware/protocolV2Release.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAA6B,MAAM,qBAAqB,CAAC;AAI/E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EACV,WAAW,EACX,QAAQ,EACR,oBAAoB,EACpB,kCAAkC,EACnC,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EACV,0BAA0B,EAC1B,8BAA8B,EAE/B,MAAM,yCAAyC,CAAC;AACjD,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AAEhF,eAAO,MAAM,iCAAiC,EAAE,SAAS,kCAAkC,EAO1F,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,SAAS,kCAAkC,EAEhF,CAAC;AAEF,eAAO,MAAM,8BAA8B,EAAE,SAAS,kCAAkC,EAEvF,CAAC;AAEF,MAAM,MAAM,gCAAgC,GAAG;IAC7C,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,GAAG;QACrC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,YAAY,CAAC,GAAG;YACtD,UAAU,EAAE,WAAW,CAAC,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC;SAChD,CAAC;KACH,CAAC;IACF,QAAQ,EAAE,QAAQ,CAAC;IACnB,YAAY,EAAE,aAAa,CAAC;IAC5B,OAAO,EAAE,oBAAoB,GAAG,SAAS,CAAC;CAC3C,CAAC;AAEF,wBAAsB,oCAAoC,CAAC,EACzD,MAAM,EACN,YAAY,EAAE,iBAAiB,EAC/B,iBAAyB,EACzB,UAAU,GACX,EAAE;IACD,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC,gCAAgC,CAAC,CA4B5C;AAED,wBAAgB,kCAAkC,CAChD,IAAI,EAAE,6BAA6B,EACnC,gBAAgB,EAAE,SAAS,kCAAkC,EAAE,GAC9D,6BAA6B,CAiC/B;AAED,wBAAgB,+BAA+B,CAAC,EAC9C,IAAI,EACJ,KAAK,EACL,OAAO,GACR,EAAE;IACD,IAAI,EAAE,6BAA6B,CAAC;IACpC,KAAK,EAAE,WAAW,CAAC;IACnB,OAAO,EAAE,0BAA0B,CAAC,SAAS,CAAC,CAAC;CAChD,GAAG,0BAA0B,CAU7B;AAED,wBAAgB,iCAAiC,CAC/C,IAAI,EAAE,6BAA6B,EACnC,eAAe,EAAE,kCAAkC,GAClD,8BAA8B,GAAG,SAAS,CAmB5C"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1542,10 +1542,11 @@ type CheckAllFirmwareReleaseParams = {
|
|
|
1542
1542
|
firmwareType?: EFirmwareType;
|
|
1543
1543
|
platform?: 'native' | 'desktop' | 'ext' | 'web' | 'web-embed';
|
|
1544
1544
|
forceUpdateTargets?: FirmwareUpdatePlanForceTarget[];
|
|
1545
|
+
protocolV2ForceUpdateTargets?: FirmwareUpdateV4Target[];
|
|
1545
1546
|
};
|
|
1546
1547
|
declare function checkAllFirmwareRelease(connectId?: string, params?: CommonParams & CheckAllFirmwareReleaseParams): Response<AllFirmwareRelease>;
|
|
1547
1548
|
|
|
1548
|
-
type CheckBootloaderReleaseResponse = FirmwareReleaseCheckResult;
|
|
1549
|
+
type CheckBootloaderReleaseResponse = FirmwareReleaseCheckResult | null;
|
|
1549
1550
|
type CheckBootloaderReleaseParams = {
|
|
1550
1551
|
willUpdateFirmwareVersion?: string;
|
|
1551
1552
|
firmwareType?: EFirmwareType;
|
|
@@ -1622,9 +1623,9 @@ declare function openWalletSession(connectId: string, params: CommonParams & Ope
|
|
|
1622
1623
|
type CheckFirmwareReleaseParams = {
|
|
1623
1624
|
firmwareType?: EFirmwareType;
|
|
1624
1625
|
};
|
|
1625
|
-
declare function checkFirmwareRelease(connectId?: string, params?: CheckFirmwareReleaseParams): Response<FirmwareReleaseCheckResult>;
|
|
1626
|
+
declare function checkFirmwareRelease(connectId?: string, params?: CheckFirmwareReleaseParams): Response<FirmwareReleaseCheckResult | null>;
|
|
1626
1627
|
|
|
1627
|
-
declare function checkBLEFirmwareRelease(connectId?: string): Response<FirmwareReleaseCheckResult>;
|
|
1628
|
+
declare function checkBLEFirmwareRelease(connectId?: string): Response<FirmwareReleaseCheckResult | null>;
|
|
1628
1629
|
|
|
1629
1630
|
interface FirmwareUpdateCapabilities {
|
|
1630
1631
|
planSchemaVersion: 2;
|
package/dist/index.js
CHANGED
|
@@ -522,6 +522,10 @@ const PROTOCOL_V2_TARGETS = {
|
|
|
522
522
|
SE03: 'se03',
|
|
523
523
|
SE04: 'se04',
|
|
524
524
|
};
|
|
525
|
+
const PROTOCOL_V2_FIRMWARE_UPDATE_TARGETS = new Set([
|
|
526
|
+
...Object.values(PROTOCOL_V2_TARGETS),
|
|
527
|
+
'resource',
|
|
528
|
+
]);
|
|
525
529
|
const asRecord = (value) => value && typeof value === 'object' && !Array.isArray(value)
|
|
526
530
|
? value
|
|
527
531
|
: undefined;
|
|
@@ -609,6 +613,18 @@ const validateFirmwareUpdatePlanForceTargets = (value) => {
|
|
|
609
613
|
}
|
|
610
614
|
return [...value];
|
|
611
615
|
};
|
|
616
|
+
const validateProtocolV2FirmwareUpdateTargets = (value) => {
|
|
617
|
+
if (value === undefined) {
|
|
618
|
+
return [];
|
|
619
|
+
}
|
|
620
|
+
if (!Array.isArray(value) ||
|
|
621
|
+
value.length > PROTOCOL_V2_FIRMWARE_UPDATE_TARGETS.size ||
|
|
622
|
+
value.some(target => !PROTOCOL_V2_FIRMWARE_UPDATE_TARGETS.has(target)) ||
|
|
623
|
+
new Set(value).size !== value.length) {
|
|
624
|
+
return planError('Protocol V2 firmware update targets are invalid');
|
|
625
|
+
}
|
|
626
|
+
return [...value];
|
|
627
|
+
};
|
|
612
628
|
const assertExactKeys = (value, required, optional = []) => {
|
|
613
629
|
const allowed = new Set([...required, ...optional]);
|
|
614
630
|
if (required.some(key => !Object.prototype.hasOwnProperty.call(value, key)) ||
|
|
@@ -773,7 +789,7 @@ const selectResourceUrl = ({ release, features, platform, }) => {
|
|
|
773
789
|
};
|
|
774
790
|
const getExecutor = (features) => {
|
|
775
791
|
const deviceType = getDeviceType(features);
|
|
776
|
-
if (deviceType === hdShared.EDeviceType.Pro2) {
|
|
792
|
+
if (deviceType === hdShared.EDeviceType.Pro2 || deviceType === hdShared.EDeviceType.Neo) {
|
|
777
793
|
return 'v4';
|
|
778
794
|
}
|
|
779
795
|
if (deviceType === hdShared.EDeviceType.Pro &&
|
|
@@ -782,7 +798,7 @@ const getExecutor = (features) => {
|
|
|
782
798
|
}
|
|
783
799
|
return 'v2';
|
|
784
800
|
};
|
|
785
|
-
const buildProtocolV2Artifacts = (release, { includeComponents = true, includeResources = true, } = {}) => {
|
|
801
|
+
const buildProtocolV2Artifacts = (release, { includeComponents = true, includeResources = true, componentTargets: selectedComponentTargets, } = {}) => {
|
|
786
802
|
var _a;
|
|
787
803
|
const components = asRecord(release.components);
|
|
788
804
|
if (includeComponents && !components) {
|
|
@@ -794,23 +810,32 @@ const buildProtocolV2Artifacts = (release, { includeComponents = true, includeRe
|
|
|
794
810
|
const componentKeys = includeComponents && components
|
|
795
811
|
? [...installOrder, ...Object.keys(components).filter(key => !installOrder.includes(key))]
|
|
796
812
|
: [];
|
|
813
|
+
const selectedComponentKeys = selectedComponentTargets
|
|
814
|
+
? componentKeys.filter(key => {
|
|
815
|
+
var _a;
|
|
816
|
+
const component = asRecord(components === null || components === void 0 ? void 0 : components[key]);
|
|
817
|
+
const targetName = (_a = asString(component === null || component === void 0 ? void 0 : component.target)) === null || _a === void 0 ? void 0 : _a.toUpperCase();
|
|
818
|
+
const target = targetName ? PROTOCOL_V2_TARGETS[targetName] : undefined;
|
|
819
|
+
return !!target && selectedComponentTargets.has(target);
|
|
820
|
+
})
|
|
821
|
+
: componentKeys;
|
|
797
822
|
const artifacts = [];
|
|
798
823
|
const targets = [];
|
|
799
|
-
const
|
|
800
|
-
for (const key of
|
|
824
|
+
const componentTargetSet = new Set();
|
|
825
|
+
for (const key of selectedComponentKeys) {
|
|
801
826
|
const component = asRecord(components === null || components === void 0 ? void 0 : components[key]);
|
|
802
827
|
const targetName = (_a = asString(component === null || component === void 0 ? void 0 : component.target)) === null || _a === void 0 ? void 0 : _a.toUpperCase();
|
|
828
|
+
const target = targetName ? PROTOCOL_V2_TARGETS[targetName] : undefined;
|
|
803
829
|
if (targetName === 'ROMLOADER') {
|
|
804
830
|
throw hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.RuntimeError, 'Protocol V2 ROMLOADER requires its dedicated loader flow', { firmwareUpdateCode: 'FirmwarePlanInvalid' });
|
|
805
831
|
}
|
|
806
|
-
const target = targetName ? PROTOCOL_V2_TARGETS[targetName] : undefined;
|
|
807
832
|
if (!component || !target) {
|
|
808
833
|
throw hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.RuntimeError, `Protocol V2 component ${key} has an unsupported target`, { firmwareUpdateCode: 'FirmwarePlanInvalid' });
|
|
809
834
|
}
|
|
810
|
-
if (
|
|
835
|
+
if (componentTargetSet.has(target)) {
|
|
811
836
|
throw hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.RuntimeError, `Protocol V2 component ${key} duplicates target ${target}`, { firmwareUpdateCode: 'FirmwarePlanInvalid' });
|
|
812
837
|
}
|
|
813
|
-
|
|
838
|
+
componentTargetSet.add(target);
|
|
814
839
|
artifacts.push(Object.assign(Object.assign({ artifactId: `component:${target}`, role: 'component', target, url: assertArtifactUrl(component.url, `Protocol V2 component ${key}`), container: 'raw', logicalName: key }, asIntegrity({
|
|
815
840
|
size: component.expectedSize,
|
|
816
841
|
sha256: component.fingerprint,
|
|
@@ -865,6 +890,63 @@ const assertForcedTargetsRepresented = ({ executor, forcedTargets, artifacts, ta
|
|
|
865
890
|
}
|
|
866
891
|
}
|
|
867
892
|
};
|
|
893
|
+
const finalizeFirmwareUpdatePlan = ({ features, firmwareType, platform, artifacts, targetsToUpdate, }) => {
|
|
894
|
+
const executor = getExecutor(features);
|
|
895
|
+
const bootloaderMode = resolveDeviceBootloaderMode(features);
|
|
896
|
+
const reportedIdentity = getDeviceUUID(features);
|
|
897
|
+
const deviceIdentity = reportedIdentity === 'unavailable' ? '' : reportedIdentity;
|
|
898
|
+
if (artifacts.length > 0 &&
|
|
899
|
+
(platform === 'native' || platform === 'desktop') &&
|
|
900
|
+
!deviceIdentity &&
|
|
901
|
+
!(bootloaderMode && executor === 'v2')) {
|
|
902
|
+
throw hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.RuntimeError, 'Prepared firmware update requires a stable device identity', { firmwareUpdateCode: 'FirmwarePlanInvalid' });
|
|
903
|
+
}
|
|
904
|
+
const planWithoutDigest = {
|
|
905
|
+
schemaVersion: 2,
|
|
906
|
+
executor,
|
|
907
|
+
deviceIdentity: deviceIdentity || 'unavailable',
|
|
908
|
+
deviceModel: String(getDeviceType(features)),
|
|
909
|
+
firmwareType,
|
|
910
|
+
platform,
|
|
911
|
+
artifacts,
|
|
912
|
+
targetsToUpdate,
|
|
913
|
+
};
|
|
914
|
+
return assertFirmwareUpdatePlan(Object.assign(Object.assign({}, planWithoutDigest), { planDigest: digestFirmwareUpdatePlan(planWithoutDigest) }));
|
|
915
|
+
};
|
|
916
|
+
const buildProtocolV2FirmwareUpdatePlan = ({ features, firmwareType, platform, release, targetsToUpdate, forceUpdateTargets, resourceArchiveAvailable, }) => {
|
|
917
|
+
const validatedForceTargets = validateFirmwareUpdatePlanForceTargets(forceUpdateTargets);
|
|
918
|
+
if (validatedForceTargets.some(target => target === 'ble' || target === 'bootloader')) {
|
|
919
|
+
planError('Protocol V2 does not support forced BLE or legacy bootloader targets');
|
|
920
|
+
}
|
|
921
|
+
const requestedComponentTargets = new Set(targetsToUpdate.filter(target => target !== 'resource'));
|
|
922
|
+
if (getDeviceType(features) === hdShared.EDeviceType.Neo &&
|
|
923
|
+
(requestedComponentTargets.has('se03') || requestedComponentTargets.has('se04'))) {
|
|
924
|
+
planError('Neo does not support Protocol V2 targets se03 or se04');
|
|
925
|
+
}
|
|
926
|
+
const protocolV2 = buildProtocolV2Artifacts(release !== null && release !== void 0 ? release : {}, {
|
|
927
|
+
includeComponents: requestedComponentTargets.size > 0,
|
|
928
|
+
includeResources: false,
|
|
929
|
+
componentTargets: requestedComponentTargets,
|
|
930
|
+
});
|
|
931
|
+
const representedTargets = new Set(protocolV2.targets);
|
|
932
|
+
const missingTarget = Array.from(requestedComponentTargets).find(target => !representedTargets.has(target));
|
|
933
|
+
if (missingTarget) {
|
|
934
|
+
planError(`Protocol V2 release does not contain requested target ${missingTarget}`);
|
|
935
|
+
}
|
|
936
|
+
if (validatedForceTargets.includes('firmware') && protocolV2.targets.length === 0) {
|
|
937
|
+
planError('Forced firmware update target firmware is not represented by the plan');
|
|
938
|
+
}
|
|
939
|
+
if (validatedForceTargets.includes('resource') && !resourceArchiveAvailable) {
|
|
940
|
+
planError('Forced firmware update target resource has no Protocol V2 resource archive');
|
|
941
|
+
}
|
|
942
|
+
return finalizeFirmwareUpdatePlan({
|
|
943
|
+
features,
|
|
944
|
+
firmwareType,
|
|
945
|
+
platform,
|
|
946
|
+
artifacts: protocolV2.artifacts,
|
|
947
|
+
targetsToUpdate: protocolV2.targets,
|
|
948
|
+
});
|
|
949
|
+
};
|
|
868
950
|
const buildFirmwareUpdatePlan = ({ features, firmwareType, platform, firmware, ble, bootloader, forceUpdateTargets, }) => {
|
|
869
951
|
var _a, _b, _c, _d, _e, _f, _g;
|
|
870
952
|
const executor = getExecutor(features);
|
|
@@ -951,25 +1033,13 @@ const buildFirmwareUpdatePlan = ({ features, firmwareType, platform, firmware, b
|
|
|
951
1033
|
artifacts,
|
|
952
1034
|
targetsToUpdate,
|
|
953
1035
|
});
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
if (artifacts.length > 0 &&
|
|
957
|
-
(platform === 'native' || platform === 'desktop') &&
|
|
958
|
-
!deviceIdentity &&
|
|
959
|
-
!(bootloaderMode && executor === 'v2')) {
|
|
960
|
-
throw hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.RuntimeError, 'Prepared firmware update requires a stable device identity', { firmwareUpdateCode: 'FirmwarePlanInvalid' });
|
|
961
|
-
}
|
|
962
|
-
const planWithoutDigest = {
|
|
963
|
-
schemaVersion: 2,
|
|
964
|
-
executor,
|
|
965
|
-
deviceIdentity: deviceIdentity || 'unavailable',
|
|
966
|
-
deviceModel: String(getDeviceType(features)),
|
|
1036
|
+
return finalizeFirmwareUpdatePlan({
|
|
1037
|
+
features,
|
|
967
1038
|
firmwareType,
|
|
968
1039
|
platform,
|
|
969
1040
|
artifacts,
|
|
970
1041
|
targetsToUpdate,
|
|
971
|
-
};
|
|
972
|
-
return assertFirmwareUpdatePlan(Object.assign(Object.assign({}, planWithoutDigest), { planDigest: digestFirmwareUpdatePlan(planWithoutDigest) }));
|
|
1042
|
+
});
|
|
973
1043
|
};
|
|
974
1044
|
|
|
975
1045
|
const preparedPlanError = (message) => {
|
|
@@ -41925,7 +41995,7 @@ const getFirmwareUpdateField = ({ features, updateType, targetVersion, firmwareT
|
|
|
41925
41995
|
if (deviceType === hdShared.EDeviceType.Pro) {
|
|
41926
41996
|
return latestFirmwareField;
|
|
41927
41997
|
}
|
|
41928
|
-
if (deviceType === hdShared.EDeviceType.Pro2) {
|
|
41998
|
+
if (deviceType === hdShared.EDeviceType.Pro2 || deviceType === hdShared.EDeviceType.Neo) {
|
|
41929
41999
|
return 'firmware-v1';
|
|
41930
42000
|
}
|
|
41931
42001
|
return 'firmware';
|
|
@@ -41957,7 +42027,7 @@ const getFirmwareUpdateFieldArray = (features, updateType) => {
|
|
|
41957
42027
|
if (deviceType === 'pro') {
|
|
41958
42028
|
return ['firmware-v8'];
|
|
41959
42029
|
}
|
|
41960
|
-
if (deviceType === 'pro2') {
|
|
42030
|
+
if (deviceType === 'pro2' || deviceType === 'neo') {
|
|
41961
42031
|
return ['firmware-v1'];
|
|
41962
42032
|
}
|
|
41963
42033
|
return ['firmware'];
|
|
@@ -47688,9 +47758,11 @@ class CheckAllFirmwareRelease extends BaseMethod {
|
|
|
47688
47758
|
});
|
|
47689
47759
|
}
|
|
47690
47760
|
runProtocolV2() {
|
|
47761
|
+
var _a;
|
|
47691
47762
|
return __awaiter(this, void 0, void 0, function* () {
|
|
47692
|
-
const { checkFirmwareHash = false, firmwareType: firmwareTypeParam } = this
|
|
47693
|
-
|
|
47763
|
+
const { checkFirmwareHash = false, firmwareType: firmwareTypeParam, platform, forceUpdateTargets, protocolV2ForceUpdateTargets, } = this.payload;
|
|
47764
|
+
const validatedForceUpdateTargets = validateFirmwareUpdatePlanForceTargets(forceUpdateTargets);
|
|
47765
|
+
const validatedProtocolV2ForceUpdateTargets = validateProtocolV2FirmwareUpdateTargets(protocolV2ForceUpdateTargets);
|
|
47694
47766
|
const { state, features, firmwareType, release } = yield loadProtocolV2FirmwareReleaseContext({
|
|
47695
47767
|
device: this.device,
|
|
47696
47768
|
firmwareType: firmwareTypeParam,
|
|
@@ -47709,10 +47781,57 @@ class CheckAllFirmwareRelease extends BaseMethod {
|
|
|
47709
47781
|
const resourceSource = DataManager.getProtocolV2ResourceSource(resourceDeviceType);
|
|
47710
47782
|
const resourceStatus = 'unknown';
|
|
47711
47783
|
const resourcePreparationRequired = !!resourceSource;
|
|
47784
|
+
const detectedComponentTargets = validatedForceUpdateTargets.includes('firmware')
|
|
47785
|
+
? plan.components.flatMap(component => component.updateTarget ? [component.updateTarget] : [])
|
|
47786
|
+
: plan.targetsToUpdate;
|
|
47787
|
+
const componentTargetsToUpdate = Array.from(new Set([
|
|
47788
|
+
...detectedComponentTargets,
|
|
47789
|
+
...validatedProtocolV2ForceUpdateTargets.filter(target => target !== 'resource'),
|
|
47790
|
+
]));
|
|
47791
|
+
const forceResourceUpdate = validatedForceUpdateTargets.includes('resource') ||
|
|
47792
|
+
validatedProtocolV2ForceUpdateTargets.includes('resource');
|
|
47712
47793
|
const targetsToUpdate = Array.from(new Set([
|
|
47713
|
-
...
|
|
47714
|
-
...(resourcePreparationRequired ? ['resource'] : []),
|
|
47794
|
+
...componentTargetsToUpdate,
|
|
47795
|
+
...(resourcePreparationRequired || forceResourceUpdate ? ['resource'] : []),
|
|
47715
47796
|
]));
|
|
47797
|
+
let firmwareUpdatePlan;
|
|
47798
|
+
try {
|
|
47799
|
+
const shouldBuildFirmwareUpdatePlan = componentTargetsToUpdate.length > 0 ||
|
|
47800
|
+
validatedForceUpdateTargets.some(target => target !== 'resource') ||
|
|
47801
|
+
validatedProtocolV2ForceUpdateTargets.some(target => target !== 'resource') ||
|
|
47802
|
+
(forceResourceUpdate && !resourcePreparationRequired);
|
|
47803
|
+
const requestedPlatform = platform !== null && platform !== void 0 ? platform : 'web';
|
|
47804
|
+
const requiresDeviceIdentity = requestedPlatform === 'native' || requestedPlatform === 'desktop';
|
|
47805
|
+
const canBindPreparedPlan = !requiresDeviceIdentity || !!getDeviceSerialNo(features);
|
|
47806
|
+
if (shouldBuildFirmwareUpdatePlan) {
|
|
47807
|
+
const validatedPlan = buildProtocolV2FirmwareUpdatePlan({
|
|
47808
|
+
features,
|
|
47809
|
+
firmwareType,
|
|
47810
|
+
platform: canBindPreparedPlan ? requestedPlatform : 'web',
|
|
47811
|
+
release,
|
|
47812
|
+
targetsToUpdate,
|
|
47813
|
+
forceUpdateTargets: validatedForceUpdateTargets,
|
|
47814
|
+
resourceArchiveAvailable: resourcePreparationRequired,
|
|
47815
|
+
});
|
|
47816
|
+
firmwareUpdatePlan = canBindPreparedPlan ? validatedPlan : undefined;
|
|
47817
|
+
if (!canBindPreparedPlan) {
|
|
47818
|
+
Log$c.warn('[CheckAllFirmwareRelease] Protocol V2 device identity is unavailable; using the release result without a prepared Plan');
|
|
47819
|
+
}
|
|
47820
|
+
}
|
|
47821
|
+
else {
|
|
47822
|
+
firmwareUpdatePlan = undefined;
|
|
47823
|
+
}
|
|
47824
|
+
}
|
|
47825
|
+
catch (error) {
|
|
47826
|
+
if (validatedForceUpdateTargets.length > 0 ||
|
|
47827
|
+
validatedProtocolV2ForceUpdateTargets.length > 0 ||
|
|
47828
|
+
!(error instanceof hdShared.HardwareError) ||
|
|
47829
|
+
((_a = error.params) === null || _a === void 0 ? void 0 : _a.firmwareUpdateCode) !== 'FirmwarePlanInvalid') {
|
|
47830
|
+
throw error;
|
|
47831
|
+
}
|
|
47832
|
+
Log$c.warn('[CheckAllFirmwareRelease] Optional Protocol V2 firmware Plan is unavailable; using the release result');
|
|
47833
|
+
firmwareUpdatePlan = undefined;
|
|
47834
|
+
}
|
|
47716
47835
|
const firmwarePlan = summarizeProtocolV2FirmwareRelease(plan, PROTOCOL_V2_MAIN_FIRMWARE_TARGETS);
|
|
47717
47836
|
const blePlan = summarizeProtocolV2FirmwareRelease(plan, PROTOCOL_V2_BLE_TARGETS);
|
|
47718
47837
|
const bootloaderPlan = summarizeProtocolV2FirmwareRelease(plan, PROTOCOL_V2_BOOTLOADER_TARGETS);
|
|
@@ -47728,7 +47847,8 @@ class CheckAllFirmwareRelease extends BaseMethod {
|
|
|
47728
47847
|
state,
|
|
47729
47848
|
release: getProtocolV2ComponentReleaseInfo(plan, 'BOOTLOADER'),
|
|
47730
47849
|
}), features, protocol: 'V2', deviceType: state.identity.deviceType }, plan), { status,
|
|
47731
|
-
resourceStatus, resourceArchive: resourceSource, resourcePreparationRequired, hasUpgrade:
|
|
47850
|
+
resourceStatus, resourceArchive: resourceSource, resourcePreparationRequired, hasUpgrade: targetsToUpdate.length > 0, targetsToUpdate,
|
|
47851
|
+
firmwareUpdatePlan });
|
|
47732
47852
|
});
|
|
47733
47853
|
}
|
|
47734
47854
|
}
|
|
@@ -47750,6 +47870,8 @@ class CheckFirmwareRelease extends BaseMethod {
|
|
|
47750
47870
|
var _a;
|
|
47751
47871
|
return __awaiter(this, void 0, void 0, function* () {
|
|
47752
47872
|
const payload = this.payload;
|
|
47873
|
+
if (!this.device.features)
|
|
47874
|
+
return null;
|
|
47753
47875
|
if (this.device.isProtocolV2()) {
|
|
47754
47876
|
const { state, firmwareType, release } = yield loadProtocolV2FirmwareReleaseContext({
|
|
47755
47877
|
device: this.device,
|
|
@@ -47764,13 +47886,10 @@ class CheckFirmwareRelease extends BaseMethod {
|
|
|
47764
47886
|
}), PROTOCOL_V2_MAIN_FIRMWARE_TARGETS);
|
|
47765
47887
|
return toProtocolV2FirmwareReleaseInfo({ plan, state, release });
|
|
47766
47888
|
}
|
|
47767
|
-
|
|
47768
|
-
|
|
47769
|
-
|
|
47770
|
-
|
|
47771
|
-
return releaseInfo;
|
|
47772
|
-
}
|
|
47773
|
-
throw hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.RuntimeError, 'checkFirmwareRelease requires initialized device features');
|
|
47889
|
+
const deviceFirmwareType = this.device.getCurrentFirmwareType();
|
|
47890
|
+
const firmwareType = (_a = payload.firmwareType) !== null && _a !== void 0 ? _a : deviceFirmwareType;
|
|
47891
|
+
const releaseInfo = getFirmwareReleaseInfo(this.device.features, firmwareType);
|
|
47892
|
+
return releaseInfo;
|
|
47774
47893
|
});
|
|
47775
47894
|
}
|
|
47776
47895
|
}
|
|
@@ -47790,6 +47909,8 @@ class CheckBLEFirmwareRelease extends BaseMethod {
|
|
|
47790
47909
|
}
|
|
47791
47910
|
run() {
|
|
47792
47911
|
return __awaiter(this, void 0, void 0, function* () {
|
|
47912
|
+
if (!this.device.features)
|
|
47913
|
+
return null;
|
|
47793
47914
|
if (this.device.isProtocolV2()) {
|
|
47794
47915
|
const { state, firmwareType, release } = yield loadProtocolV2FirmwareReleaseContext({
|
|
47795
47916
|
device: this.device,
|
|
@@ -47807,11 +47928,8 @@ class CheckBLEFirmwareRelease extends BaseMethod {
|
|
|
47807
47928
|
release: getProtocolV2ComponentReleaseInfo(plan, 'COPROCESSOR'),
|
|
47808
47929
|
});
|
|
47809
47930
|
}
|
|
47810
|
-
|
|
47811
|
-
|
|
47812
|
-
return releaseInfo;
|
|
47813
|
-
}
|
|
47814
|
-
throw hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.RuntimeError, 'checkBLEFirmwareRelease requires initialized device features');
|
|
47931
|
+
const releaseInfo = getBleFirmwareReleaseInfo(this.device.features);
|
|
47932
|
+
return releaseInfo;
|
|
47815
47933
|
});
|
|
47816
47934
|
}
|
|
47817
47935
|
}
|
|
@@ -47882,9 +48000,8 @@ class CheckBootloaderRelease extends BaseMethod {
|
|
|
47882
48000
|
run() {
|
|
47883
48001
|
var _a;
|
|
47884
48002
|
return __awaiter(this, void 0, void 0, function* () {
|
|
47885
|
-
if (!this.device.features)
|
|
47886
|
-
|
|
47887
|
-
}
|
|
48003
|
+
if (!this.device.features)
|
|
48004
|
+
return null;
|
|
47888
48005
|
const { features } = this.device;
|
|
47889
48006
|
const payload = this.payload;
|
|
47890
48007
|
if (this.device.isProtocolV2()) {
|
|
@@ -51536,7 +51653,7 @@ class FirmwareUpdateV4 extends FirmwareUpdateBaseMethod {
|
|
|
51536
51653
|
});
|
|
51537
51654
|
}
|
|
51538
51655
|
runProtocolV2() {
|
|
51539
|
-
var _a, _b, _c, _d, _e;
|
|
51656
|
+
var _a, _b, _c, _d, _e, _f;
|
|
51540
51657
|
return __awaiter(this, void 0, void 0, function* () {
|
|
51541
51658
|
yield this.captureProtocolV2PhysicalIdentity();
|
|
51542
51659
|
const deviceFeatures = yield this.getProtocolV2DeviceFeatures();
|
|
@@ -51564,7 +51681,14 @@ class FirmwareUpdateV4 extends FirmwareUpdateBaseMethod {
|
|
|
51564
51681
|
resourceBundles = this.prepareExplicitProtocolV2ResourceFiles();
|
|
51565
51682
|
fwBinaryMap = this.collectExplicitTargetBinaries();
|
|
51566
51683
|
bootloaderBinary = this.prepareBootloaderBinary();
|
|
51567
|
-
const
|
|
51684
|
+
const explicitInstallItems = this.buildProtocolV2InstallItems({
|
|
51685
|
+
bootloaderBinary,
|
|
51686
|
+
fwBinaryMap,
|
|
51687
|
+
});
|
|
51688
|
+
const missingFirmwareTargets = this.getMissingProtocolV2FirmwareTargets(explicitInstallItems);
|
|
51689
|
+
const needsRemoteFirmware = ((_e = this.params.targetsToUpdate) === null || _e === void 0 ? void 0 : _e.length)
|
|
51690
|
+
? missingFirmwareTargets.length > 0
|
|
51691
|
+
: !this.hasExplicitProtocolV2Payload(explicitInstallItems);
|
|
51568
51692
|
if (needsPreparedResources) {
|
|
51569
51693
|
throw hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.RuntimeError, 'Protocol V2 resource manifest must be prepared by the external firmware host', {
|
|
51570
51694
|
firmwareUpdateCode: 'FirmwareArtifactsNotPrepared',
|
|
@@ -51581,7 +51705,7 @@ class FirmwareUpdateV4 extends FirmwareUpdateBaseMethod {
|
|
|
51581
51705
|
yield DataManager.forceReloadData();
|
|
51582
51706
|
}
|
|
51583
51707
|
if (needsRemoteFirmware) {
|
|
51584
|
-
const remoteBinaries = yield this.prepareRemoteProtocolV2Binaries(firmwareType, deviceFeatures);
|
|
51708
|
+
const remoteBinaries = yield this.prepareRemoteProtocolV2Binaries(firmwareType, deviceFeatures, explicitInstallItems);
|
|
51585
51709
|
bootloaderBinary = remoteBinaries.bootloaderBinary;
|
|
51586
51710
|
fwBinaryMap = remoteBinaries.fwBinaryMap;
|
|
51587
51711
|
installItems = remoteBinaries.installItems;
|
|
@@ -51592,7 +51716,7 @@ class FirmwareUpdateV4 extends FirmwareUpdateBaseMethod {
|
|
|
51592
51716
|
if (typeof err === 'object' &&
|
|
51593
51717
|
err !== null &&
|
|
51594
51718
|
'params' in err &&
|
|
51595
|
-
((
|
|
51719
|
+
((_f = err.params) === null || _f === void 0 ? void 0 : _f.firmwareUpdateCode) === 'FirmwareArtifactsNotPrepared') {
|
|
51596
51720
|
throw err;
|
|
51597
51721
|
}
|
|
51598
51722
|
if (err instanceof hdShared.HardwareError && err.errorCode === hdShared.HardwareErrorCode.NetworkError) {
|
|
@@ -51907,11 +52031,17 @@ class FirmwareUpdateV4 extends FirmwareUpdateBaseMethod {
|
|
|
51907
52031
|
var _a;
|
|
51908
52032
|
return (_a = this.params.bootloaderBinary) !== null && _a !== void 0 ? _a : null;
|
|
51909
52033
|
}
|
|
51910
|
-
hasExplicitProtocolV2Payload(
|
|
52034
|
+
hasExplicitProtocolV2Payload(installItems) {
|
|
52035
|
+
var _a;
|
|
52036
|
+
return !!((_a = this.params.resourceFiles) === null || _a === void 0 ? void 0 : _a.length) || installItems.length > 0;
|
|
52037
|
+
}
|
|
52038
|
+
getMissingProtocolV2FirmwareTargets(installItems) {
|
|
51911
52039
|
var _a;
|
|
51912
|
-
|
|
51913
|
-
|
|
51914
|
-
|
|
52040
|
+
const preparedTargets = new Set(installItems.flatMap(item => {
|
|
52041
|
+
const target = PROTOCOL_V2_UPDATE_TARGET_BY_TARGET_ID.get(item.targetId);
|
|
52042
|
+
return target ? [target] : [];
|
|
52043
|
+
}));
|
|
52044
|
+
return ((_a = this.params.targetsToUpdate) !== null && _a !== void 0 ? _a : []).filter(target => target !== 'resource' && !preparedTargets.has(target));
|
|
51915
52045
|
}
|
|
51916
52046
|
buildProtocolV2InstallItems({ bootloaderBinary, fwBinaryMap, }) {
|
|
51917
52047
|
const installItems = [];
|
|
@@ -51974,7 +52104,7 @@ class FirmwareUpdateV4 extends FirmwareUpdateBaseMethod {
|
|
|
51974
52104
|
return Object.assign(Object.assign({}, target), { binary });
|
|
51975
52105
|
});
|
|
51976
52106
|
}
|
|
51977
|
-
prepareRemoteProtocolV2Binaries(firmwareType, features) {
|
|
52107
|
+
prepareRemoteProtocolV2Binaries(firmwareType, features, explicitInstallItems = []) {
|
|
51978
52108
|
var _a, _b;
|
|
51979
52109
|
return __awaiter(this, void 0, void 0, function* () {
|
|
51980
52110
|
const release = DataManager.getFirmwareLatestRelease(features, firmwareType);
|
|
@@ -51982,6 +52112,10 @@ class FirmwareUpdateV4 extends FirmwareUpdateBaseMethod {
|
|
|
51982
52112
|
const fwBinaryMap = [];
|
|
51983
52113
|
const installItems = [];
|
|
51984
52114
|
if (!release) {
|
|
52115
|
+
const missingFirmwareTargets = this.getMissingProtocolV2FirmwareTargets(explicitInstallItems);
|
|
52116
|
+
if (missingFirmwareTargets.length > 0) {
|
|
52117
|
+
throw hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.RuntimeError, `Protocol V2 firmware release is unavailable for requested targets: ${missingFirmwareTargets.join(', ')}`);
|
|
52118
|
+
}
|
|
51985
52119
|
return {
|
|
51986
52120
|
bootloaderBinary,
|
|
51987
52121
|
fwBinaryMap,
|
|
@@ -51990,6 +52124,8 @@ class FirmwareUpdateV4 extends FirmwareUpdateBaseMethod {
|
|
|
51990
52124
|
}
|
|
51991
52125
|
const entries = this.getRemoteComponentEntries(release);
|
|
51992
52126
|
const targetsToUpdate = new Set((_a = this.params.targetsToUpdate) !== null && _a !== void 0 ? _a : []);
|
|
52127
|
+
const explicitInstallItemByTargetId = new Map(explicitInstallItems.map(item => [item.targetId, item]));
|
|
52128
|
+
const preparedTargets = new Set();
|
|
51993
52129
|
for (const [key, component] of entries) {
|
|
51994
52130
|
const targetName = (_b = component.target) === null || _b === void 0 ? void 0 : _b.toUpperCase();
|
|
51995
52131
|
const target = PROTOCOL_V2_REMOTE_COMPONENT_TARGETS[targetName];
|
|
@@ -51997,27 +52133,27 @@ class FirmwareUpdateV4 extends FirmwareUpdateBaseMethod {
|
|
|
51997
52133
|
? PROTOCOL_V2_UPDATE_TARGET_BY_TARGET_ID.get(target.targetId)
|
|
51998
52134
|
: undefined;
|
|
51999
52135
|
if (updateTarget && targetsToUpdate.has(updateTarget)) {
|
|
52000
|
-
const
|
|
52001
|
-
|
|
52002
|
-
|
|
52003
|
-
|
|
52004
|
-
fileName: remoteBinary.fileName,
|
|
52005
|
-
binary: remoteBinary.binary,
|
|
52006
|
-
targetId: remoteBinary.targetId,
|
|
52007
|
-
kind: remoteBinary.kind,
|
|
52008
|
-
});
|
|
52136
|
+
const explicitInstallItem = explicitInstallItemByTargetId.get(target.targetId);
|
|
52137
|
+
const installItem = explicitInstallItem !== null && explicitInstallItem !== void 0 ? explicitInstallItem : (yield this.downloadRemoteProtocolV2Component(key, component));
|
|
52138
|
+
if (installItem.kind === 'bootloader') {
|
|
52139
|
+
bootloaderBinary = installItem.binary;
|
|
52009
52140
|
}
|
|
52010
52141
|
else {
|
|
52011
52142
|
const binaryEntry = {
|
|
52012
|
-
fileName:
|
|
52013
|
-
binary:
|
|
52014
|
-
targetId:
|
|
52143
|
+
fileName: installItem.fileName,
|
|
52144
|
+
binary: installItem.binary,
|
|
52145
|
+
targetId: installItem.targetId,
|
|
52015
52146
|
};
|
|
52016
52147
|
fwBinaryMap.push(binaryEntry);
|
|
52017
|
-
installItems.push(Object.assign(Object.assign({}, binaryEntry), { kind: remoteBinary.kind }));
|
|
52018
52148
|
}
|
|
52149
|
+
installItems.push(Object.assign({}, installItem));
|
|
52150
|
+
preparedTargets.add(updateTarget);
|
|
52019
52151
|
}
|
|
52020
52152
|
}
|
|
52153
|
+
const missingTarget = Array.from(targetsToUpdate).find(target => target !== 'resource' && !preparedTargets.has(target));
|
|
52154
|
+
if (missingTarget) {
|
|
52155
|
+
throw hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.RuntimeError, `Protocol V2 release does not contain requested target ${missingTarget}`);
|
|
52156
|
+
}
|
|
52021
52157
|
return {
|
|
52022
52158
|
bootloaderBinary,
|
|
52023
52159
|
fwBinaryMap,
|
|
@@ -62,6 +62,7 @@ export type CheckAllFirmwareReleaseParams = {
|
|
|
62
62
|
firmwareType?: EFirmwareType;
|
|
63
63
|
platform?: 'native' | 'desktop' | 'ext' | 'web' | 'web-embed';
|
|
64
64
|
forceUpdateTargets?: FirmwareUpdatePlanForceTarget[];
|
|
65
|
+
protocolV2ForceUpdateTargets?: FirmwareUpdateV4Target[];
|
|
65
66
|
};
|
|
66
67
|
export declare function checkAllFirmwareRelease(connectId?: string, params?: CommonParams & CheckAllFirmwareReleaseParams): Response<AllFirmwareRelease>;
|
|
67
68
|
//# sourceMappingURL=checkAllFirmwareRelease.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkAllFirmwareRelease.d.ts","sourceRoot":"","sources":["../../../src/types/api/checkAllFirmwareRelease.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"checkAllFirmwareRelease.d.ts","sourceRoot":"","sources":["../../../src/types/api/checkAllFirmwareRelease.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { Response } from '../params';
|
|
2
2
|
import type { FirmwareReleaseCheckResult } from './checkAllFirmwareRelease';
|
|
3
|
-
export declare function checkBLEFirmwareRelease(connectId?: string): Response<FirmwareReleaseCheckResult>;
|
|
3
|
+
export declare function checkBLEFirmwareRelease(connectId?: string): Response<FirmwareReleaseCheckResult | null>;
|
|
4
4
|
//# sourceMappingURL=checkBLEFirmwareRelease.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkBLEFirmwareRelease.d.ts","sourceRoot":"","sources":["../../../src/types/api/checkBLEFirmwareRelease.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAE5E,MAAM,CAAC,OAAO,UAAU,uBAAuB,CAC7C,SAAS,CAAC,EAAE,MAAM,GACjB,QAAQ,CAAC,0BAA0B,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"checkBLEFirmwareRelease.d.ts","sourceRoot":"","sources":["../../../src/types/api/checkBLEFirmwareRelease.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAE5E,MAAM,CAAC,OAAO,UAAU,uBAAuB,CAC7C,SAAS,CAAC,EAAE,MAAM,GACjB,QAAQ,CAAC,0BAA0B,GAAG,IAAI,CAAC,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { EFirmwareType } from '@onekeyfe/hd-shared';
|
|
2
2
|
import type { CommonParams, Response } from '../params';
|
|
3
3
|
import type { FirmwareReleaseCheckResult } from './checkAllFirmwareRelease';
|
|
4
|
-
export type CheckBootloaderReleaseResponse = FirmwareReleaseCheckResult;
|
|
4
|
+
export type CheckBootloaderReleaseResponse = FirmwareReleaseCheckResult | null;
|
|
5
5
|
export type CheckBootloaderReleaseParams = {
|
|
6
6
|
willUpdateFirmwareVersion?: string;
|
|
7
7
|
firmwareType?: EFirmwareType;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkBootloaderRelease.d.ts","sourceRoot":"","sources":["../../../src/types/api/checkBootloaderRelease.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACxD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAE5E,MAAM,MAAM,8BAA8B,GAAG,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"checkBootloaderRelease.d.ts","sourceRoot":"","sources":["../../../src/types/api/checkBootloaderRelease.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACxD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAE5E,MAAM,MAAM,8BAA8B,GAAG,0BAA0B,GAAG,IAAI,CAAC;AAE/E,MAAM,MAAM,4BAA4B,GAAG;IACzC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,YAAY,CAAC,EAAE,aAAa,CAAC;CAC9B,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAC5C,SAAS,CAAC,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,YAAY,GAAG,4BAA4B,GACnD,QAAQ,CAAC,8BAA8B,CAAC,CAAC"}
|
|
@@ -4,5 +4,5 @@ import type { FirmwareReleaseCheckResult } from './checkAllFirmwareRelease';
|
|
|
4
4
|
export type CheckFirmwareReleaseParams = {
|
|
5
5
|
firmwareType?: EFirmwareType;
|
|
6
6
|
};
|
|
7
|
-
export declare function checkFirmwareRelease(connectId?: string, params?: CheckFirmwareReleaseParams): Response<FirmwareReleaseCheckResult>;
|
|
7
|
+
export declare function checkFirmwareRelease(connectId?: string, params?: CheckFirmwareReleaseParams): Response<FirmwareReleaseCheckResult | null>;
|
|
8
8
|
//# sourceMappingURL=checkFirmwareRelease.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkFirmwareRelease.d.ts","sourceRoot":"","sources":["../../../src/types/api/checkFirmwareRelease.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAE5E,MAAM,MAAM,0BAA0B,GAAG;IACvC,YAAY,CAAC,EAAE,aAAa,CAAC;CAC9B,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAC1C,SAAS,CAAC,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,0BAA0B,GAClC,QAAQ,CAAC,0BAA0B,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"checkFirmwareRelease.d.ts","sourceRoot":"","sources":["../../../src/types/api/checkFirmwareRelease.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAE5E,MAAM,MAAM,0BAA0B,GAAG;IACvC,YAAY,CAAC,EAAE,aAAa,CAAC;CAC9B,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAC1C,SAAS,CAAC,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,0BAA0B,GAClC,QAAQ,CAAC,0BAA0B,GAAG,IAAI,CAAC,CAAC"}
|