@onekeyfe/hd-core 1.0.0-alpha.4 → 1.0.0-alpha.6
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/CheckBLEFirmwareRelease.d.ts +1 -0
- package/dist/api/CheckBLEFirmwareRelease.d.ts.map +1 -1
- package/dist/api/CheckBootloaderRelease.d.ts +6 -1
- package/dist/api/CheckBootloaderRelease.d.ts.map +1 -1
- package/dist/api/CheckFirmwareRelease.d.ts +1 -0
- package/dist/api/CheckFirmwareRelease.d.ts.map +1 -1
- package/dist/api/firmware/releaseHelper.d.ts +11 -0
- package/dist/api/firmware/releaseHelper.d.ts.map +1 -1
- package/dist/data-manager/DataManager.d.ts.map +1 -1
- package/dist/index.d.ts +5 -0
- package/dist/index.js +37 -14
- package/dist/types/api/checkBLEFirmwareRelease.d.ts +1 -0
- package/dist/types/api/checkBLEFirmwareRelease.d.ts.map +1 -1
- package/dist/types/api/checkBootloaderRelease.d.ts +1 -0
- package/dist/types/api/checkBootloaderRelease.d.ts.map +1 -1
- package/dist/types/api/checkFirmwareRelease.d.ts +1 -0
- package/dist/types/api/checkFirmwareRelease.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/api/CheckBLEFirmwareRelease.ts +5 -2
- package/src/api/CheckBootloaderRelease.ts +3 -3
- package/src/api/CheckFirmwareRelease.ts +6 -0
- package/src/api/GetFeatures.ts +1 -1
- package/src/api/firmware/releaseHelper.ts +23 -0
- package/src/data-manager/DataManager.ts +9 -7
- package/src/types/api/checkBLEFirmwareRelease.ts +1 -0
- package/src/types/api/checkBootloaderRelease.ts +1 -0
- package/src/types/api/checkFirmwareRelease.ts +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckBLEFirmwareRelease.d.ts","sourceRoot":"","sources":["../../src/api/CheckBLEFirmwareRelease.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAK1C,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,UAAU;IAC7D,IAAI;
|
|
1
|
+
{"version":3,"file":"CheckBLEFirmwareRelease.d.ts","sourceRoot":"","sources":["../../src/api/CheckBLEFirmwareRelease.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAK1C,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,UAAU;IAC7D,IAAI;IAUJ,GAAG;;;;;;;;;CAOJ"}
|
|
@@ -4,7 +4,12 @@ export default class CheckBootloaderRelease extends BaseMethod {
|
|
|
4
4
|
run(): Promise<{
|
|
5
5
|
shouldUpdate: boolean;
|
|
6
6
|
status: string;
|
|
7
|
-
|
|
7
|
+
changelog: ({
|
|
8
|
+
"zh-CN": string;
|
|
9
|
+
"en-US": string;
|
|
10
|
+
} | undefined)[];
|
|
11
|
+
release: import("../types").IFirmwareReleaseInfo | undefined;
|
|
12
|
+
bootloaderMode: boolean;
|
|
8
13
|
} | null>;
|
|
9
14
|
}
|
|
10
15
|
//# sourceMappingURL=CheckBootloaderRelease.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckBootloaderRelease.d.ts","sourceRoot":"","sources":["../../src/api/CheckBootloaderRelease.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAW1C,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,UAAU;IAC5D,IAAI;IAME,GAAG
|
|
1
|
+
{"version":3,"file":"CheckBootloaderRelease.d.ts","sourceRoot":"","sources":["../../src/api/CheckBootloaderRelease.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAW1C,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,UAAU;IAC5D,IAAI;IAME,GAAG;;;;;;;;;;CAuBV"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckFirmwareRelease.d.ts","sourceRoot":"","sources":["../../src/api/CheckFirmwareRelease.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"CheckFirmwareRelease.d.ts","sourceRoot":"","sources":["../../src/api/CheckFirmwareRelease.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAK1C,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,UAAU;IAC1D,IAAI;IAUJ,GAAG;;;;;;;;;CAOJ"}
|
|
@@ -6,6 +6,7 @@ export declare const getFirmwareReleaseInfo: (features: Features) => {
|
|
|
6
6
|
"en-US": string;
|
|
7
7
|
}[];
|
|
8
8
|
release: import("../../types").IFirmwareReleaseInfo | undefined;
|
|
9
|
+
bootloaderMode: boolean;
|
|
9
10
|
};
|
|
10
11
|
export declare const getBleFirmwareReleaseInfo: (features: Features) => {
|
|
11
12
|
status: import("../../types").IDeviceBLEFirmwareStatus;
|
|
@@ -14,5 +15,15 @@ export declare const getBleFirmwareReleaseInfo: (features: Features) => {
|
|
|
14
15
|
"en-US": string;
|
|
15
16
|
}[];
|
|
16
17
|
release: import("../../types").IBLEFirmwareReleaseInfo | undefined;
|
|
18
|
+
bootloaderMode: boolean;
|
|
19
|
+
};
|
|
20
|
+
export declare const getBootloaderReleaseInfo: (features: Features) => {
|
|
21
|
+
status: undefined;
|
|
22
|
+
changelog: ({
|
|
23
|
+
"zh-CN": string;
|
|
24
|
+
"en-US": string;
|
|
25
|
+
} | undefined)[];
|
|
26
|
+
release: import("../../types").IFirmwareReleaseInfo | undefined;
|
|
27
|
+
bootloaderMode: boolean;
|
|
17
28
|
};
|
|
18
29
|
//# sourceMappingURL=releaseHelper.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"releaseHelper.d.ts","sourceRoot":"","sources":["../../../src/api/firmware/releaseHelper.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,eAAO,MAAM,sBAAsB,aAAc,QAAQ
|
|
1
|
+
{"version":3,"file":"releaseHelper.d.ts","sourceRoot":"","sources":["../../../src/api/firmware/releaseHelper.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,eAAO,MAAM,sBAAsB,aAAc,QAAQ;;;;;;;;CAWxD,CAAC;AAEF,eAAO,MAAM,yBAAyB,aAAc,QAAQ;;;;;;;;CAW3D,CAAC;AAEF,eAAO,MAAM,wBAAwB,aAAc,QAAQ;;;;;;;;CAiB1D,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataManager.d.ts","sourceRoot":"","sources":["../../src/data-manager/DataManager.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EACV,SAAS,EACT,eAAe,EACf,aAAa,EACb,QAAQ,EACR,wBAAwB,EACxB,qBAAqB,EACrB,gBAAgB,EAChB,aAAa,EAEd,MAAM,UAAU,CAAC;AAIlB,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,aAAa,GAAG,aAAa,CAAC;AAEvE,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,IAAI,CAAC;AAE7C,MAAM,CAAC,OAAO,OAAO,WAAW;IAC9B,MAAM,CAAC,SAAS,EAAE,aAAa,CAqB7B;IAEF,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAAQ;IAEvC,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAC;IAEjC,MAAM,CAAC,QAAQ,EAAE;SAAG,OAAO,IAAI,cAAc,GAAG,IAAI;KAAE,CAGpD;IAEF,MAAM,CAAC,kBAAkB,SAAK;IAE9B,MAAM,CAAC,iBAAiB,aAAc,QAAQ,KAAG,qBAAqB,CAiBpE;IAMF,MAAM,CAAC,4BAA4B,aAAc,QAAQ,oBAAoB,OAAO,wBAmBlF;IAMF,MAAM,CAAC,kBAAkB,aAAc,QAAQ,wBAc7C;IAEF,MAAM,CAAC,qBAAqB,aAAc,QAAQ,wBAahD;IAEF,MAAM,CAAC,0BAA0B,aAAc,QAAQ,KAAG,aAAa,GAAG,SAAS,CAYjF;IAEF,MAAM,CAAC,mCAAmC,aAAc,QAAQ,KAAG,aAAa,GAAG,SAAS,CAe1F;IAEF,MAAM,CAAC,oBAAoB,aAAc,QAAQ;;;
|
|
1
|
+
{"version":3,"file":"DataManager.d.ts","sourceRoot":"","sources":["../../src/data-manager/DataManager.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EACV,SAAS,EACT,eAAe,EACf,aAAa,EACb,QAAQ,EACR,wBAAwB,EACxB,qBAAqB,EACrB,gBAAgB,EAChB,aAAa,EAEd,MAAM,UAAU,CAAC;AAIlB,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,aAAa,GAAG,aAAa,CAAC;AAEvE,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,IAAI,CAAC;AAE7C,MAAM,CAAC,OAAO,OAAO,WAAW;IAC9B,MAAM,CAAC,SAAS,EAAE,aAAa,CAqB7B;IAEF,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAAQ;IAEvC,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAC;IAEjC,MAAM,CAAC,QAAQ,EAAE;SAAG,OAAO,IAAI,cAAc,GAAG,IAAI;KAAE,CAGpD;IAEF,MAAM,CAAC,kBAAkB,SAAK;IAE9B,MAAM,CAAC,iBAAiB,aAAc,QAAQ,KAAG,qBAAqB,CAiBpE;IAMF,MAAM,CAAC,4BAA4B,aAAc,QAAQ,oBAAoB,OAAO,wBAmBlF;IAMF,MAAM,CAAC,kBAAkB,aAAc,QAAQ,wBAc7C;IAEF,MAAM,CAAC,qBAAqB,aAAc,QAAQ,wBAahD;IAEF,MAAM,CAAC,0BAA0B,aAAc,QAAQ,KAAG,aAAa,GAAG,SAAS,CAYjF;IAEF,MAAM,CAAC,mCAAmC,aAAc,QAAQ,KAAG,aAAa,GAAG,SAAS,CAe1F;IAEF,MAAM,CAAC,oBAAoB,aAAc,QAAQ;;;QAsB/C;IAEF,MAAM,CAAC,wBAAwB,aAAc,QAAQ,yDAqBnD;IAEF,MAAM,CAAC,oBAAoB,aAAc,QAAQ,KAAG,wBAAwB,CAc1E;IAEF,MAAM,CAAC,uBAAuB,aAAc,QAAQ;;;QAalD;IAEF,MAAM,CAAC,2BAA2B,aAAc,QAAQ,4DAMtD;IAEF,MAAM,CAAC,kBAAkB,iBAAkB,MAAM,KAAG,gBAAgB,CAKlE;WAEW,IAAI,CAAC,QAAQ,EAAE,eAAe;WAgC9B,kBAAkB;IAQ/B,MAAM,CAAC,mBAAmB,CAAC,cAAc,GAAE,cAAyB,GAAG,IAAI;IAI3E,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,SAAS,GAAG,eAAe;IAEpD,MAAM,CAAC,WAAW,CAAC,CAAC,SAAS,MAAM,eAAe,EAAE,GAAG,EAAE,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC;IAU/E,MAAM,CAAC,YAAY,QAAS,eAAe,CAAC,KAAK,CAAC,aACH;CAChD"}
|
package/dist/index.d.ts
CHANGED
|
@@ -287,6 +287,7 @@ type CheckBootloaderReleaseResponse = {
|
|
|
287
287
|
shouldUpdate: boolean;
|
|
288
288
|
status: 'outdated' | 'valid';
|
|
289
289
|
release: string | undefined;
|
|
290
|
+
bootloaderMode: boolean;
|
|
290
291
|
} | null;
|
|
291
292
|
declare function checkBootloaderRelease(connectId?: string, params?: CommonParams & {
|
|
292
293
|
willUpdateFirmwareVersion?: string;
|
|
@@ -307,6 +308,7 @@ type FirmwareRelease = {
|
|
|
307
308
|
'zh-CN': string;
|
|
308
309
|
}[];
|
|
309
310
|
release: IFirmwareReleaseInfo;
|
|
311
|
+
bootloaderMode: boolean;
|
|
310
312
|
};
|
|
311
313
|
declare function checkFirmwareRelease(connectId?: string): Response<FirmwareRelease>;
|
|
312
314
|
|
|
@@ -317,6 +319,7 @@ type BleFirmwareRelease = {
|
|
|
317
319
|
'en-US': string;
|
|
318
320
|
}[];
|
|
319
321
|
release: IBLEFirmwareReleaseInfo;
|
|
322
|
+
bootloaderMode: boolean;
|
|
320
323
|
};
|
|
321
324
|
declare function checkBLEFirmwareRelease(connectId?: string): Response<BleFirmwareRelease>;
|
|
322
325
|
|
|
@@ -2231,6 +2234,7 @@ declare const getFirmwareReleaseInfo: (features: Features) => {
|
|
|
2231
2234
|
"en-US": string;
|
|
2232
2235
|
}[];
|
|
2233
2236
|
release: IFirmwareReleaseInfo | undefined;
|
|
2237
|
+
bootloaderMode: boolean;
|
|
2234
2238
|
};
|
|
2235
2239
|
declare const getBleFirmwareReleaseInfo: (features: Features) => {
|
|
2236
2240
|
status: IDeviceBLEFirmwareStatus;
|
|
@@ -2239,6 +2243,7 @@ declare const getBleFirmwareReleaseInfo: (features: Features) => {
|
|
|
2239
2243
|
"en-US": string;
|
|
2240
2244
|
}[];
|
|
2241
2245
|
release: IBLEFirmwareReleaseInfo | undefined;
|
|
2246
|
+
bootloaderMode: boolean;
|
|
2242
2247
|
};
|
|
2243
2248
|
|
|
2244
2249
|
declare const FIRMWARE_EVENT = "FIRMWARE_EVENT";
|
package/dist/index.js
CHANGED
|
@@ -23318,7 +23318,7 @@ DataManager.getFirmwareStatus = (features) => {
|
|
|
23318
23318
|
if (features.firmware_present === false) {
|
|
23319
23319
|
return 'none';
|
|
23320
23320
|
}
|
|
23321
|
-
if (DeviceModelToTypes.
|
|
23321
|
+
if (DeviceModelToTypes.model_mini.includes(deviceType) && features.bootloader_mode) {
|
|
23322
23322
|
return 'unknown';
|
|
23323
23323
|
}
|
|
23324
23324
|
const firmwareUpdateField = getFirmwareUpdateField({ features, updateType: 'firmware' });
|
|
@@ -23407,15 +23407,15 @@ DataManager.getFirmwareChangelog = (features) => {
|
|
|
23407
23407
|
if (deviceType === 'unknown')
|
|
23408
23408
|
return [];
|
|
23409
23409
|
const deviceFirmwareVersion = getDeviceFirmwareVersion(features);
|
|
23410
|
-
if (features.firmware_present === false ||
|
|
23411
|
-
(DeviceModelToTypes.model_classic.includes(deviceType) && features.bootloader_mode)) {
|
|
23412
|
-
return [];
|
|
23413
|
-
}
|
|
23414
23410
|
const firmwareUpdateField = getFirmwareUpdateField({
|
|
23415
23411
|
features,
|
|
23416
23412
|
updateType: 'firmware',
|
|
23417
23413
|
});
|
|
23418
23414
|
const targetDeviceConfigList = (_c = (_b = _a.deviceMap[deviceType]) === null || _b === void 0 ? void 0 : _b[firmwareUpdateField]) !== null && _c !== void 0 ? _c : [];
|
|
23415
|
+
if (features.firmware_present === false ||
|
|
23416
|
+
(DeviceModelToTypes.model_classic.includes(deviceType) && features.bootloader_mode)) {
|
|
23417
|
+
return getReleaseChangelog(targetDeviceConfigList, '0.0.0');
|
|
23418
|
+
}
|
|
23419
23419
|
const currentVersion = deviceFirmwareVersion.join('.');
|
|
23420
23420
|
return getReleaseChangelog(targetDeviceConfigList, currentVersion);
|
|
23421
23421
|
};
|
|
@@ -25312,20 +25312,38 @@ const getFirmwareReleaseInfo = (features) => {
|
|
|
25312
25312
|
const firmwareStatus = DataManager.getFirmwareStatus(features);
|
|
25313
25313
|
const changelog = DataManager.getFirmwareChangelog(features);
|
|
25314
25314
|
const release = DataManager.getFirmwareLatestRelease(features);
|
|
25315
|
+
const bootloaderMode = !!features.bootloader_mode;
|
|
25315
25316
|
return {
|
|
25316
25317
|
status: firmwareStatus,
|
|
25317
25318
|
changelog,
|
|
25318
25319
|
release,
|
|
25320
|
+
bootloaderMode,
|
|
25319
25321
|
};
|
|
25320
25322
|
};
|
|
25321
25323
|
const getBleFirmwareReleaseInfo = (features) => {
|
|
25322
25324
|
const firmwareStatus = DataManager.getBLEFirmwareStatus(features);
|
|
25323
25325
|
const changelog = DataManager.getBleFirmwareChangelog(features);
|
|
25324
25326
|
const release = DataManager.getBleFirmwareLatestRelease(features);
|
|
25327
|
+
const bootloaderMode = !!features.bootloader_mode;
|
|
25325
25328
|
return {
|
|
25326
25329
|
status: firmwareStatus,
|
|
25327
25330
|
changelog,
|
|
25328
25331
|
release,
|
|
25332
|
+
bootloaderMode,
|
|
25333
|
+
};
|
|
25334
|
+
};
|
|
25335
|
+
const getBootloaderReleaseInfo = (features) => {
|
|
25336
|
+
const release = DataManager.getFirmwareLatestRelease(features);
|
|
25337
|
+
const changelog = [release === null || release === void 0 ? void 0 : release.bootloaderChangelog].filter(item => item != null &&
|
|
25338
|
+
typeof item === 'object' &&
|
|
25339
|
+
Object.prototype.hasOwnProperty.call(item, 'zh-CN') &&
|
|
25340
|
+
Object.prototype.hasOwnProperty.call(item, 'en-US'));
|
|
25341
|
+
const bootloaderMode = !!features.bootloader_mode;
|
|
25342
|
+
return {
|
|
25343
|
+
status: undefined,
|
|
25344
|
+
changelog,
|
|
25345
|
+
release,
|
|
25346
|
+
bootloaderMode,
|
|
25329
25347
|
};
|
|
25330
25348
|
};
|
|
25331
25349
|
|
|
@@ -25433,7 +25451,8 @@ class GetFeatures extends BaseMethod {
|
|
|
25433
25451
|
this.skipForceUpdateCheck = true;
|
|
25434
25452
|
}
|
|
25435
25453
|
run() {
|
|
25436
|
-
|
|
25454
|
+
var _a;
|
|
25455
|
+
if (this.payload.detectBootloaderDevice && ((_a = this.device.features) === null || _a === void 0 ? void 0 : _a.bootloader_mode)) {
|
|
25437
25456
|
return Promise.reject(hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.DeviceDetectInBootloaderMode));
|
|
25438
25457
|
}
|
|
25439
25458
|
return Promise.resolve(this.device.features);
|
|
@@ -25496,6 +25515,11 @@ class CheckBridgeStatus$1 extends BaseMethod {
|
|
|
25496
25515
|
|
|
25497
25516
|
class CheckFirmwareRelease extends BaseMethod {
|
|
25498
25517
|
init() {
|
|
25518
|
+
this.notAllowDeviceMode = [
|
|
25519
|
+
...this.notAllowDeviceMode,
|
|
25520
|
+
UI_REQUEST.INITIALIZE,
|
|
25521
|
+
UI_REQUEST.BOOTLOADER,
|
|
25522
|
+
];
|
|
25499
25523
|
this.useDevicePassphraseState = false;
|
|
25500
25524
|
this.skipForceUpdateCheck = true;
|
|
25501
25525
|
}
|
|
@@ -25510,8 +25534,11 @@ class CheckFirmwareRelease extends BaseMethod {
|
|
|
25510
25534
|
|
|
25511
25535
|
class CheckBLEFirmwareRelease extends BaseMethod {
|
|
25512
25536
|
init() {
|
|
25513
|
-
this.notAllowDeviceMode = [
|
|
25514
|
-
|
|
25537
|
+
this.notAllowDeviceMode = [
|
|
25538
|
+
...this.notAllowDeviceMode,
|
|
25539
|
+
UI_REQUEST.INITIALIZE,
|
|
25540
|
+
UI_REQUEST.BOOTLOADER,
|
|
25541
|
+
];
|
|
25515
25542
|
this.useDevicePassphraseState = false;
|
|
25516
25543
|
this.skipForceUpdateCheck = true;
|
|
25517
25544
|
}
|
|
@@ -25652,12 +25679,8 @@ class CheckBootloaderRelease extends BaseMethod {
|
|
|
25652
25679
|
else if (deviceType === 'touch') {
|
|
25653
25680
|
shouldUpdate = checkNeedUpdateBootForTouch(features);
|
|
25654
25681
|
}
|
|
25655
|
-
const
|
|
25656
|
-
return Promise.resolve({
|
|
25657
|
-
shouldUpdate,
|
|
25658
|
-
status: shouldUpdate ? 'outdated' : 'valid',
|
|
25659
|
-
release: resource,
|
|
25660
|
-
});
|
|
25682
|
+
const releaseInfo = getBootloaderReleaseInfo(features);
|
|
25683
|
+
return Promise.resolve(Object.assign(Object.assign({}, releaseInfo), { shouldUpdate, status: shouldUpdate ? 'outdated' : 'valid' }));
|
|
25661
25684
|
});
|
|
25662
25685
|
}
|
|
25663
25686
|
}
|
|
@@ -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,wBAAwB,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAEtD,KAAK,kBAAkB,GAAG;IACxB,MAAM,EAAE,wBAAwB,CAAC;IACjC,SAAS,EAAE;QACT,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;KACjB,EAAE,CAAC;IACJ,OAAO,EAAE,uBAAuB,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,wBAAwB,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAEtD,KAAK,kBAAkB,GAAG;IACxB,MAAM,EAAE,wBAAwB,CAAC;IACjC,SAAS,EAAE;QACT,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;KACjB,EAAE,CAAC;IACJ,OAAO,EAAE,uBAAuB,CAAC;IACjC,cAAc,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,uBAAuB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC,kBAAkB,CAAC,CAAC"}
|
|
@@ -3,6 +3,7 @@ export type CheckBootloaderReleaseResponse = {
|
|
|
3
3
|
shouldUpdate: boolean;
|
|
4
4
|
status: 'outdated' | 'valid';
|
|
5
5
|
release: string | undefined;
|
|
6
|
+
bootloaderMode: boolean;
|
|
6
7
|
} | null;
|
|
7
8
|
export declare function checkBootloaderRelease(connectId?: string, params?: CommonParams & {
|
|
8
9
|
willUpdateFirmwareVersion?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkBootloaderRelease.d.ts","sourceRoot":"","sources":["../../../src/types/api/checkBootloaderRelease.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAExD,MAAM,MAAM,8BAA8B,GAAG;IAC3C,YAAY,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC;IAC7B,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"checkBootloaderRelease.d.ts","sourceRoot":"","sources":["../../../src/types/api/checkBootloaderRelease.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAExD,MAAM,MAAM,8BAA8B,GAAG;IAC3C,YAAY,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC;IAC7B,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,cAAc,EAAE,OAAO,CAAC;CACzB,GAAG,IAAI,CAAC;AAET,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAC5C,SAAS,CAAC,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,YAAY,GAAG;IACtB,yBAAyB,CAAC,EAAE,MAAM,CAAC;CACpC,GACA,QAAQ,CAAC,8BAA8B,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkFirmwareRelease.d.ts","sourceRoot":"","sources":["../../../src/types/api/checkFirmwareRelease.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD,KAAK,eAAe,GAAG;IACrB,MAAM,EAAE,qBAAqB,CAAC;IAC9B,SAAS,EAAE;QACT,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;KACjB,EAAE,CAAC;IACJ,OAAO,EAAE,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"checkFirmwareRelease.d.ts","sourceRoot":"","sources":["../../../src/types/api/checkFirmwareRelease.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD,KAAK,eAAe,GAAG;IACrB,MAAM,EAAE,qBAAqB,CAAC;IAC9B,SAAS,EAAE;QACT,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;KACjB,EAAE,CAAC;IACJ,OAAO,EAAE,oBAAoB,CAAC;IAC9B,cAAc,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@onekeyfe/hd-core",
|
|
3
|
-
"version": "1.0.0-alpha.
|
|
3
|
+
"version": "1.0.0-alpha.6",
|
|
4
4
|
"description": "> TODO: description",
|
|
5
5
|
"author": "OneKey",
|
|
6
6
|
"homepage": "https://github.com/OneKeyHQ/hardware-js-sdk#readme",
|
|
@@ -25,8 +25,8 @@
|
|
|
25
25
|
"url": "https://github.com/OneKeyHQ/hardware-js-sdk/issues"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@onekeyfe/hd-shared": "^1.0.0-alpha.
|
|
29
|
-
"@onekeyfe/hd-transport": "^1.0.0-alpha.
|
|
28
|
+
"@onekeyfe/hd-shared": "^1.0.0-alpha.6",
|
|
29
|
+
"@onekeyfe/hd-transport": "^1.0.0-alpha.6",
|
|
30
30
|
"axios": "^0.27.2",
|
|
31
31
|
"bignumber.js": "^9.0.2",
|
|
32
32
|
"bytebuffer": "^5.0.1",
|
|
@@ -44,5 +44,5 @@
|
|
|
44
44
|
"@types/semver": "^7.3.9",
|
|
45
45
|
"ripple-keypairs": "^1.1.4"
|
|
46
46
|
},
|
|
47
|
-
"gitHead": "
|
|
47
|
+
"gitHead": "d13f1147cbc7f7e01df3c9b2d563668c43b14aaa"
|
|
48
48
|
}
|
|
@@ -5,8 +5,11 @@ import { getBleFirmwareReleaseInfo } from './firmware/releaseHelper';
|
|
|
5
5
|
|
|
6
6
|
export default class CheckBLEFirmwareRelease extends BaseMethod {
|
|
7
7
|
init() {
|
|
8
|
-
this.notAllowDeviceMode = [
|
|
9
|
-
|
|
8
|
+
this.notAllowDeviceMode = [
|
|
9
|
+
...this.notAllowDeviceMode,
|
|
10
|
+
UI_REQUEST.INITIALIZE,
|
|
11
|
+
UI_REQUEST.BOOTLOADER,
|
|
12
|
+
];
|
|
10
13
|
this.useDevicePassphraseState = false;
|
|
11
14
|
this.skipForceUpdateCheck = true;
|
|
12
15
|
}
|
|
@@ -5,9 +5,9 @@ import {
|
|
|
5
5
|
checkNeedUpdateBootForClassicAndMini,
|
|
6
6
|
checkNeedUpdateBootForTouch,
|
|
7
7
|
} from './firmware/updateBootloader';
|
|
8
|
-
import { DataManager } from '../data-manager';
|
|
9
8
|
import { getDeviceType } from '../utils';
|
|
10
9
|
import { DeviceModelToTypes } from '../types';
|
|
10
|
+
import { getBootloaderReleaseInfo } from './firmware/releaseHelper';
|
|
11
11
|
|
|
12
12
|
export default class CheckBootloaderRelease extends BaseMethod {
|
|
13
13
|
init() {
|
|
@@ -32,11 +32,11 @@ export default class CheckBootloaderRelease extends BaseMethod {
|
|
|
32
32
|
} else if (deviceType === 'touch') {
|
|
33
33
|
shouldUpdate = checkNeedUpdateBootForTouch(features);
|
|
34
34
|
}
|
|
35
|
-
const
|
|
35
|
+
const releaseInfo = getBootloaderReleaseInfo(features);
|
|
36
36
|
return Promise.resolve({
|
|
37
|
+
...releaseInfo,
|
|
37
38
|
shouldUpdate,
|
|
38
39
|
status: shouldUpdate ? 'outdated' : 'valid',
|
|
39
|
-
release: resource,
|
|
40
40
|
});
|
|
41
41
|
}
|
|
42
42
|
}
|
|
@@ -1,9 +1,15 @@
|
|
|
1
1
|
import { BaseMethod } from './BaseMethod';
|
|
2
|
+
import { UI_REQUEST } from '../constants/ui-request';
|
|
2
3
|
|
|
3
4
|
import { getFirmwareReleaseInfo } from './firmware/releaseHelper';
|
|
4
5
|
|
|
5
6
|
export default class CheckFirmwareRelease extends BaseMethod {
|
|
6
7
|
init() {
|
|
8
|
+
this.notAllowDeviceMode = [
|
|
9
|
+
...this.notAllowDeviceMode,
|
|
10
|
+
UI_REQUEST.INITIALIZE,
|
|
11
|
+
UI_REQUEST.BOOTLOADER,
|
|
12
|
+
];
|
|
7
13
|
this.useDevicePassphraseState = false;
|
|
8
14
|
this.skipForceUpdateCheck = true;
|
|
9
15
|
}
|
package/src/api/GetFeatures.ts
CHANGED
|
@@ -14,7 +14,7 @@ export default class GetFeatures extends BaseMethod {
|
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
run() {
|
|
17
|
-
if (this.payload.detectBootloaderDevice && this.device.features
|
|
17
|
+
if (this.payload.detectBootloaderDevice && this.device.features?.bootloader_mode) {
|
|
18
18
|
return Promise.reject(ERRORS.TypedError(HardwareErrorCode.DeviceDetectInBootloaderMode));
|
|
19
19
|
}
|
|
20
20
|
return Promise.resolve(this.device.features);
|
|
@@ -5,10 +5,12 @@ export const getFirmwareReleaseInfo = (features: Features) => {
|
|
|
5
5
|
const firmwareStatus = DataManager.getFirmwareStatus(features);
|
|
6
6
|
const changelog = DataManager.getFirmwareChangelog(features);
|
|
7
7
|
const release = DataManager.getFirmwareLatestRelease(features);
|
|
8
|
+
const bootloaderMode = !!features.bootloader_mode;
|
|
8
9
|
return {
|
|
9
10
|
status: firmwareStatus,
|
|
10
11
|
changelog,
|
|
11
12
|
release,
|
|
13
|
+
bootloaderMode,
|
|
12
14
|
};
|
|
13
15
|
};
|
|
14
16
|
|
|
@@ -16,9 +18,30 @@ export const getBleFirmwareReleaseInfo = (features: Features) => {
|
|
|
16
18
|
const firmwareStatus = DataManager.getBLEFirmwareStatus(features);
|
|
17
19
|
const changelog = DataManager.getBleFirmwareChangelog(features);
|
|
18
20
|
const release = DataManager.getBleFirmwareLatestRelease(features);
|
|
21
|
+
const bootloaderMode = !!features.bootloader_mode;
|
|
19
22
|
return {
|
|
20
23
|
status: firmwareStatus,
|
|
21
24
|
changelog,
|
|
22
25
|
release,
|
|
26
|
+
bootloaderMode,
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
export const getBootloaderReleaseInfo = (features: Features) => {
|
|
31
|
+
const release = DataManager.getFirmwareLatestRelease(features);
|
|
32
|
+
const changelog = [release?.bootloaderChangelog].filter(
|
|
33
|
+
item =>
|
|
34
|
+
item != null &&
|
|
35
|
+
typeof item === 'object' &&
|
|
36
|
+
Object.prototype.hasOwnProperty.call(item, 'zh-CN') &&
|
|
37
|
+
Object.prototype.hasOwnProperty.call(item, 'en-US')
|
|
38
|
+
);
|
|
39
|
+
|
|
40
|
+
const bootloaderMode = !!features.bootloader_mode;
|
|
41
|
+
return {
|
|
42
|
+
status: undefined,
|
|
43
|
+
changelog,
|
|
44
|
+
release,
|
|
45
|
+
bootloaderMode,
|
|
23
46
|
};
|
|
24
47
|
};
|
|
@@ -72,7 +72,7 @@ export default class DataManager {
|
|
|
72
72
|
return 'none';
|
|
73
73
|
}
|
|
74
74
|
|
|
75
|
-
if (DeviceModelToTypes.
|
|
75
|
+
if (DeviceModelToTypes.model_mini.includes(deviceType) && features.bootloader_mode) {
|
|
76
76
|
return 'unknown';
|
|
77
77
|
}
|
|
78
78
|
|
|
@@ -179,18 +179,20 @@ export default class DataManager {
|
|
|
179
179
|
|
|
180
180
|
const deviceFirmwareVersion = getDeviceFirmwareVersion(features);
|
|
181
181
|
|
|
182
|
+
const firmwareUpdateField = getFirmwareUpdateField({
|
|
183
|
+
features,
|
|
184
|
+
updateType: 'firmware',
|
|
185
|
+
}) as FirmwareField;
|
|
186
|
+
const targetDeviceConfigList = this.deviceMap[deviceType]?.[firmwareUpdateField] ?? [];
|
|
187
|
+
|
|
182
188
|
if (
|
|
183
189
|
features.firmware_present === false ||
|
|
184
190
|
(DeviceModelToTypes.model_classic.includes(deviceType) && features.bootloader_mode)
|
|
185
191
|
) {
|
|
186
|
-
return
|
|
192
|
+
// Always return least changelog
|
|
193
|
+
return getReleaseChangelog(targetDeviceConfigList, '0.0.0');
|
|
187
194
|
}
|
|
188
195
|
|
|
189
|
-
const firmwareUpdateField = getFirmwareUpdateField({
|
|
190
|
-
features,
|
|
191
|
-
updateType: 'firmware',
|
|
192
|
-
}) as FirmwareField;
|
|
193
|
-
const targetDeviceConfigList = this.deviceMap[deviceType]?.[firmwareUpdateField] ?? [];
|
|
194
196
|
const currentVersion = deviceFirmwareVersion.join('.');
|
|
195
197
|
return getReleaseChangelog(targetDeviceConfigList, currentVersion);
|
|
196
198
|
};
|