@onekeyfe/hd-core 1.2.0-alpha.21 → 1.2.0-alpha.22
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__/DeviceCommands.test.ts +87 -2
- package/__tests__/connectSettings.test.ts +47 -5
- package/__tests__/device-identity.test.ts +24 -2
- package/__tests__/device-settings.test.ts +1 -1
- package/__tests__/device-wallet-session-store.test.ts +111 -7
- package/__tests__/firmware-update/firmware-artifact-source.test.ts +119 -0
- package/__tests__/firmware-update/firmware-host-binding.test.ts +70 -0
- package/__tests__/firmware-update/firmware-update-capabilities.test.ts +13 -0
- package/__tests__/firmware-update/firmware-update-plan.test.ts +326 -0
- package/__tests__/firmware-update/firmware-update-prepared-plan.test.ts +200 -0
- package/__tests__/firmware-update/firmware-update-v2-download-before-boot.test.ts +39 -30
- package/__tests__/firmware-update/firmware-upload-source.test.ts +70 -0
- package/__tests__/open-wallet-session.test.ts +253 -13
- package/__tests__/pro2Wallpaper.test.ts +7 -18
- package/__tests__/protocol-v2-unlock-policy.test.ts +45 -0
- package/__tests__/protocol-v2.test.ts +415 -145
- package/__tests__/public-device-state-api.test.ts +69 -62
- package/__tests__/public-pro2-api-boundary.test.ts +8 -34
- package/dist/api/BaseMethod.d.ts +2 -1
- package/dist/api/BaseMethod.d.ts.map +1 -1
- package/dist/api/CheckAllFirmwareRelease.d.ts.map +1 -1
- package/dist/api/ClearSessionCache.d.ts.map +1 -1
- package/dist/api/FirmwareUpdate.d.ts.map +1 -1
- package/dist/api/FirmwareUpdateV2.d.ts +11 -0
- package/dist/api/FirmwareUpdateV2.d.ts.map +1 -1
- package/dist/api/FirmwareUpdateV3.d.ts +7 -3
- package/dist/api/FirmwareUpdateV3.d.ts.map +1 -1
- package/dist/api/FirmwareUpdateV4.d.ts +29 -10
- package/dist/api/FirmwareUpdateV4.d.ts.map +1 -1
- package/dist/api/OpenWalletSession.d.ts.map +1 -1
- package/dist/api/conflux/ConfluxGetAddress.d.ts +1 -0
- package/dist/api/conflux/ConfluxGetAddress.d.ts.map +1 -1
- package/dist/api/conflux/ConfluxSignMessage.d.ts +1 -0
- package/dist/api/conflux/ConfluxSignMessage.d.ts.map +1 -1
- package/dist/api/conflux/ConfluxSignMessageCIP23.d.ts +1 -0
- package/dist/api/conflux/ConfluxSignMessageCIP23.d.ts.map +1 -1
- package/dist/api/conflux/ConfluxSignTransaction.d.ts +1 -0
- package/dist/api/conflux/ConfluxSignTransaction.d.ts.map +1 -1
- package/dist/api/device/DeviceUnlock.d.ts +1 -1
- package/dist/api/device/DeviceUnlock.d.ts.map +1 -1
- package/dist/api/device/DeviceUpdateBootloader.d.ts +5 -1
- package/dist/api/device/DeviceUpdateBootloader.d.ts.map +1 -1
- package/dist/api/firmware/FirmwareArtifactSource.d.ts +26 -0
- package/dist/api/firmware/FirmwareArtifactSource.d.ts.map +1 -0
- package/dist/api/firmware/FirmwareHostBinding.d.ts +6 -0
- package/dist/api/firmware/FirmwareHostBinding.d.ts.map +1 -0
- package/dist/api/firmware/FirmwareUpdateBaseMethod.d.ts +7 -0
- package/dist/api/firmware/FirmwareUpdateBaseMethod.d.ts.map +1 -1
- package/dist/api/firmware/FirmwareUpdateCapabilities.d.ts +3 -0
- package/dist/api/firmware/FirmwareUpdateCapabilities.d.ts.map +1 -0
- package/dist/api/firmware/FirmwareUpdatePlan.d.ts +24 -0
- package/dist/api/firmware/FirmwareUpdatePlan.d.ts.map +1 -0
- package/dist/api/firmware/FirmwareUpdatePreparedPlan.d.ts +25 -0
- package/dist/api/firmware/FirmwareUpdatePreparedPlan.d.ts.map +1 -0
- package/dist/api/firmware/getBinary.d.ts +7 -0
- package/dist/api/firmware/getBinary.d.ts.map +1 -1
- package/dist/api/firmware/updateBootloader.d.ts +2 -0
- package/dist/api/firmware/updateBootloader.d.ts.map +1 -1
- package/dist/api/firmware/uploadFirmware.d.ts +9 -1
- package/dist/api/firmware/uploadFirmware.d.ts.map +1 -1
- package/dist/api/helpers/protocolV2FileWrite.d.ts.map +1 -1
- package/dist/api/index.d.ts +0 -17
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/nexa/NexaSignTransaction.d.ts +1 -0
- package/dist/api/nexa/NexaSignTransaction.d.ts.map +1 -1
- package/dist/api/stellar/StellarSignTransaction.d.ts +1 -1
- package/dist/data-manager/DataManager.d.ts +1 -0
- package/dist/data-manager/DataManager.d.ts.map +1 -1
- package/dist/data-manager/connectSettings.d.ts.map +1 -1
- package/dist/device/Device.d.ts.map +1 -1
- package/dist/device/DeviceCommands.d.ts.map +1 -1
- package/dist/device/DeviceStateMapper.d.ts.map +1 -1
- package/dist/device/DeviceStateProjector.d.ts.map +1 -1
- package/dist/events/logBlockEvent.d.ts.map +1 -1
- package/dist/index.d.ts +265 -226
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3045 -1550
- package/dist/inject.d.ts.map +1 -1
- package/dist/lowLevelInject.d.ts.map +1 -1
- package/dist/protocols/protocol-v2/settingsUnlockPolicy.d.ts.map +1 -1
- package/dist/protocols/protocol-v2/unlockPolicy.d.ts +4 -0
- package/dist/protocols/protocol-v2/unlockPolicy.d.ts.map +1 -0
- package/dist/protocols/protocol-v2/unlockRetry.d.ts.map +1 -1
- package/dist/protocols/protocol-v2/walletSession.d.ts.map +1 -1
- package/dist/topLevelInject.d.ts.map +1 -1
- package/dist/types/api/checkAllFirmwareRelease.d.ts +3 -0
- package/dist/types/api/checkAllFirmwareRelease.d.ts.map +1 -1
- package/dist/types/api/deviceUnlock.d.ts +2 -2
- package/dist/types/api/deviceUnlock.d.ts.map +1 -1
- package/dist/types/api/deviceUpdateBootloader.d.ts +6 -0
- package/dist/types/api/deviceUpdateBootloader.d.ts.map +1 -1
- package/dist/types/api/export.d.ts +4 -1
- package/dist/types/api/export.d.ts.map +1 -1
- package/dist/types/api/firmwareUpdate.d.ts +69 -0
- package/dist/types/api/firmwareUpdate.d.ts.map +1 -1
- package/dist/types/api/firmwareUpdateCapabilities.d.ts +9 -0
- package/dist/types/api/firmwareUpdateCapabilities.d.ts.map +1 -0
- package/dist/types/api/firmwareUpdatePlan.d.ts +27 -0
- package/dist/types/api/firmwareUpdatePlan.d.ts.map +1 -0
- package/dist/types/api/firmwareUpdatePreparedPlan.d.ts +42 -0
- package/dist/types/api/firmwareUpdatePreparedPlan.d.ts.map +1 -0
- package/dist/types/api/index.d.ts +10 -19
- package/dist/types/api/index.d.ts.map +1 -1
- package/dist/types/api/openWalletSession.d.ts +1 -0
- package/dist/types/api/openWalletSession.d.ts.map +1 -1
- package/dist/types/api/protocolV2.d.ts +3 -76
- package/dist/types/api/protocolV2.d.ts.map +1 -1
- package/dist/types/api/sessionCache.d.ts +4 -1
- package/dist/types/api/sessionCache.d.ts.map +1 -1
- package/dist/types/settings.d.ts +13 -0
- package/dist/types/settings.d.ts.map +1 -1
- package/dist/utils/deviceFeaturesUtils.d.ts.map +1 -1
- package/dist/utils/patch.d.ts +1 -1
- package/dist/utils/patch.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/api/BaseMethod.ts +8 -3
- package/src/api/CheckAllFirmwareRelease.ts +16 -3
- package/src/api/ClearSessionCache.ts +4 -0
- package/src/api/FirmwareUpdate.ts +8 -1
- package/src/api/FirmwareUpdateV2.ts +284 -119
- package/src/api/FirmwareUpdateV3.ts +248 -55
- package/src/api/FirmwareUpdateV4.ts +816 -328
- package/src/api/OpenWalletSession.ts +74 -25
- package/src/api/UploadPortfolio.ts +1 -1
- package/src/api/conflux/ConfluxGetAddress.ts +2 -0
- package/src/api/conflux/ConfluxSignMessage.ts +2 -0
- package/src/api/conflux/ConfluxSignMessageCIP23.ts +2 -0
- package/src/api/conflux/ConfluxSignTransaction.ts +2 -0
- package/src/api/device/DeviceChangePin.ts +1 -1
- package/src/api/device/DeviceUnlock.ts +1 -2
- package/src/api/device/DeviceUpdateBootloader.ts +114 -6
- package/src/api/device/DeviceWipe.ts +1 -1
- package/src/api/firmware/FirmwareArtifactSource.ts +278 -0
- package/src/api/firmware/FirmwareHostBinding.ts +100 -0
- package/src/api/firmware/FirmwareUpdateBaseMethod.ts +50 -0
- package/src/api/firmware/FirmwareUpdateCapabilities.ts +9 -0
- package/src/api/firmware/FirmwareUpdatePlan.ts +621 -0
- package/src/api/firmware/FirmwareUpdatePreparedPlan.ts +378 -0
- package/src/api/firmware/updateBootloader.ts +19 -4
- package/src/api/firmware/uploadFirmware.ts +140 -22
- package/src/api/helpers/protocolV2FileWrite.ts +6 -0
- package/src/api/index.ts +0 -18
- package/src/api/nexa/NexaSignTransaction.ts +2 -0
- package/src/api/protocol-v2/DeviceUploadWallpaper.ts +1 -1
- package/src/data/messages/messages-protocol-v2.json +77 -4
- package/src/data-manager/DataManager.ts +33 -33
- package/src/data-manager/connectSettings.ts +11 -0
- package/src/device/Device.ts +50 -60
- package/src/device/DeviceCommands.ts +58 -14
- package/src/device/DeviceStateMapper.ts +18 -1
- package/src/device/DeviceStateProjector.ts +7 -1
- package/src/events/logBlockEvent.ts +1 -0
- package/src/index.ts +5 -0
- package/src/inject.ts +22 -25
- package/src/lowLevelInject.ts +5 -1
- package/src/protocols/protocol-v2/deviceSession.ts +1 -1
- package/src/protocols/protocol-v2/settingsUnlockPolicy.ts +2 -2
- package/src/protocols/protocol-v2/unlockPolicy.ts +105 -0
- package/src/protocols/protocol-v2/unlockRetry.ts +1 -3
- package/src/protocols/protocol-v2/walletSession.ts +68 -12
- package/src/topLevelInject.ts +5 -1
- package/src/types/api/checkAllFirmwareRelease.ts +3 -0
- package/src/types/api/deviceUnlock.ts +2 -5
- package/src/types/api/deviceUpdateBootloader.ts +6 -0
- package/src/types/api/export.ts +18 -0
- package/src/types/api/firmwareUpdate.ts +76 -0
- package/src/types/api/firmwareUpdateCapabilities.ts +9 -0
- package/src/types/api/firmwareUpdatePlan.ts +36 -0
- package/src/types/api/firmwareUpdatePreparedPlan.ts +53 -0
- package/src/types/api/index.ts +14 -34
- package/src/types/api/openWalletSession.ts +2 -0
- package/src/types/api/protocolV2.ts +3 -156
- package/src/types/api/sessionCache.ts +9 -4
- package/src/types/settings.ts +13 -0
- package/src/utils/deviceFeaturesUtils.ts +5 -1
|
@@ -28,34 +28,38 @@ describe('public device state API boundary', () => {
|
|
|
28
28
|
expect(api.getFeatures).toBeInstanceOf(Function);
|
|
29
29
|
expect(api.getOnekeyFeatures).toBeInstanceOf(Function);
|
|
30
30
|
expect(api).not.toHaveProperty('getDeviceInfo');
|
|
31
|
-
expect(api
|
|
32
|
-
expect(api
|
|
31
|
+
expect(api).not.toHaveProperty('deviceInfoGet');
|
|
32
|
+
expect(api).not.toHaveProperty('deviceStatusGet');
|
|
33
33
|
expect(api).not.toHaveProperty('deviceSettingsGet');
|
|
34
34
|
expect(api).not.toHaveProperty('deviceSessionOpen');
|
|
35
35
|
expect(api).not.toHaveProperty('deviceSettingsSet');
|
|
36
36
|
expect(api).not.toHaveProperty('deviceSettingsPageShow');
|
|
37
|
-
expect(api
|
|
38
|
-
expect(api
|
|
39
|
-
expect(api
|
|
40
|
-
expect(api
|
|
41
|
-
expect(api
|
|
42
|
-
expect(api
|
|
43
|
-
expect(api
|
|
44
|
-
expect(api
|
|
37
|
+
expect(api).not.toHaveProperty('deviceFirmwareUpdate');
|
|
38
|
+
expect(api).not.toHaveProperty('deviceGetFirmwareUpdateStatus');
|
|
39
|
+
expect(api).not.toHaveProperty('deviceFactoryInfoSet');
|
|
40
|
+
expect(api).not.toHaveProperty('deviceFactoryInfoGet');
|
|
41
|
+
expect(api).not.toHaveProperty('filesystemPermissionFix');
|
|
42
|
+
expect(api).not.toHaveProperty('filesystemFormat');
|
|
43
|
+
expect(api).not.toHaveProperty('fileRead');
|
|
44
|
+
expect(api).not.toHaveProperty('fileWrite');
|
|
45
|
+
expect(api).not.toHaveProperty('fileDelete');
|
|
46
|
+
expect(api).not.toHaveProperty('dirRemove');
|
|
45
47
|
expect(api).not.toHaveProperty('filesystemFileRead');
|
|
46
48
|
expect(api).not.toHaveProperty('filesystemDirList');
|
|
47
49
|
|
|
48
50
|
expect(publicMethods).not.toHaveProperty('getDeviceInfo');
|
|
49
|
-
expect(publicMethods).toHaveProperty('deviceInfoGet');
|
|
50
|
-
expect(publicMethods).toHaveProperty('deviceStatusGet');
|
|
51
|
+
expect(publicMethods).not.toHaveProperty('deviceInfoGet');
|
|
52
|
+
expect(publicMethods).not.toHaveProperty('deviceStatusGet');
|
|
51
53
|
expect(publicMethods).not.toHaveProperty('deviceSettingsGet');
|
|
52
54
|
expect(publicMethods).not.toHaveProperty('deviceSessionOpen');
|
|
53
55
|
expect(publicMethods).not.toHaveProperty('deviceSettingsSet');
|
|
54
56
|
expect(publicMethods).not.toHaveProperty('deviceSettingsPageShow');
|
|
55
|
-
expect(publicMethods).toHaveProperty('filesystemPermissionFix');
|
|
56
|
-
expect(publicMethods).toHaveProperty('filesystemFormat');
|
|
57
|
-
expect(publicMethods).toHaveProperty('fileRead');
|
|
58
|
-
expect(publicMethods).toHaveProperty('fileWrite');
|
|
57
|
+
expect(publicMethods).not.toHaveProperty('filesystemPermissionFix');
|
|
58
|
+
expect(publicMethods).not.toHaveProperty('filesystemFormat');
|
|
59
|
+
expect(publicMethods).not.toHaveProperty('fileRead');
|
|
60
|
+
expect(publicMethods).not.toHaveProperty('fileWrite');
|
|
61
|
+
expect(publicMethods).not.toHaveProperty('fileDelete');
|
|
62
|
+
expect(publicMethods).not.toHaveProperty('dirRemove');
|
|
59
63
|
expect(publicMethods).not.toHaveProperty('filesystemFileRead');
|
|
60
64
|
});
|
|
61
65
|
|
|
@@ -125,39 +129,38 @@ describe('public device state API boundary', () => {
|
|
|
125
129
|
});
|
|
126
130
|
|
|
127
131
|
test.each([
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
} as any);
|
|
135
|
-
|
|
136
|
-
expect(instance).toBeInstanceOf(Method);
|
|
137
|
-
});
|
|
138
|
-
|
|
139
|
-
test.each([
|
|
140
|
-
'protocolInfoRequest',
|
|
141
|
-
'ping',
|
|
142
|
-
'deviceFirmwareUpdate',
|
|
143
|
-
'deviceGetFirmwareUpdateStatus',
|
|
144
|
-
'deviceFactoryInfoSet',
|
|
145
|
-
'deviceFactoryInfoGet',
|
|
146
|
-
])('keeps the public development method %s available to the dispatcher', name => {
|
|
147
|
-
expect(
|
|
132
|
+
'deviceSessionOpen',
|
|
133
|
+
'deviceSettingsGet',
|
|
134
|
+
'deviceSettingsSet',
|
|
135
|
+
'deviceSettingsPageShow',
|
|
136
|
+
])('rejects removed raw method %s', name => {
|
|
137
|
+
expect(() =>
|
|
148
138
|
findMethod({
|
|
149
139
|
id: 1,
|
|
150
140
|
payload: { method: name },
|
|
151
141
|
} as any)
|
|
152
|
-
).
|
|
142
|
+
).toThrow(`Method ${name} is not set`);
|
|
153
143
|
});
|
|
154
144
|
|
|
155
145
|
test.each([
|
|
156
|
-
'
|
|
157
|
-
'
|
|
158
|
-
'
|
|
159
|
-
'
|
|
160
|
-
|
|
146
|
+
'deviceFirmwareUpdate',
|
|
147
|
+
'deviceFactoryInfoSet',
|
|
148
|
+
'filesystemPermissionFix',
|
|
149
|
+
'filesystemFormat',
|
|
150
|
+
'deviceInfoGet',
|
|
151
|
+
'deviceStatusGet',
|
|
152
|
+
'protocolInfoRequest',
|
|
153
|
+
'ping',
|
|
154
|
+
'deviceGetFirmwareUpdateStatus',
|
|
155
|
+
'deviceFactoryInfoGet',
|
|
156
|
+
'fileRead',
|
|
157
|
+
'dirList',
|
|
158
|
+
'dirMake',
|
|
159
|
+
'pathInfo',
|
|
160
|
+
'fileWrite',
|
|
161
|
+
'fileDelete',
|
|
162
|
+
'dirRemove',
|
|
163
|
+
])('rejects removed privileged method %s', name => {
|
|
161
164
|
expect(() =>
|
|
162
165
|
findMethod({
|
|
163
166
|
id: 1,
|
|
@@ -166,18 +169,6 @@ describe('public device state API boundary', () => {
|
|
|
166
169
|
).toThrow(`Method ${name} is not set`);
|
|
167
170
|
});
|
|
168
171
|
|
|
169
|
-
test.each(['filesystemPermissionFix', 'filesystemFormat'])(
|
|
170
|
-
'keeps the development maintenance method %s available to the dispatcher',
|
|
171
|
-
name => {
|
|
172
|
-
expect(
|
|
173
|
-
findMethod({
|
|
174
|
-
id: 1,
|
|
175
|
-
payload: { method: name },
|
|
176
|
-
} as any)
|
|
177
|
-
).toBeDefined();
|
|
178
|
-
}
|
|
179
|
-
);
|
|
180
|
-
|
|
181
172
|
test('projects getFeatures from the canonical state for Protocol V1 compatibility', async () => {
|
|
182
173
|
const state = createEmptyDeviceState({
|
|
183
174
|
deviceId: 'device-1',
|
|
@@ -240,18 +231,34 @@ describe('public device state API boundary', () => {
|
|
|
240
231
|
});
|
|
241
232
|
});
|
|
242
233
|
|
|
243
|
-
//
|
|
244
|
-
// @ts-expect-error getDeviceInfo
|
|
234
|
+
// These raw Protocol V2 commands are intentionally absent from CoreApi.
|
|
235
|
+
// @ts-expect-error getDeviceInfo is not part of the public API
|
|
245
236
|
type RemovedGetDeviceInfo = CoreApi['getDeviceInfo'];
|
|
246
|
-
// @ts-expect-error deviceInfoGet
|
|
237
|
+
// @ts-expect-error deviceInfoGet is not part of the public API
|
|
247
238
|
type RemovedDeviceInfoGet = CoreApi['deviceInfoGet'];
|
|
248
|
-
// @ts-expect-error deviceStatusGet
|
|
239
|
+
// @ts-expect-error deviceStatusGet is not part of the public API
|
|
249
240
|
type RemovedDeviceStatusGet = CoreApi['deviceStatusGet'];
|
|
250
|
-
// @ts-expect-error
|
|
241
|
+
// @ts-expect-error protocolInfoRequest is not part of the public API
|
|
242
|
+
type RemovedProtocolInfoRequest = CoreApi['protocolInfoRequest'];
|
|
243
|
+
// @ts-expect-error ping is not part of the public API
|
|
244
|
+
type RemovedPing = CoreApi['ping'];
|
|
245
|
+
// @ts-expect-error deviceGetFirmwareUpdateStatus is not part of the public API
|
|
246
|
+
type RemovedFirmwareUpdateStatus = CoreApi['deviceGetFirmwareUpdateStatus'];
|
|
247
|
+
// @ts-expect-error deviceFactoryInfoGet is not part of the public API
|
|
248
|
+
type RemovedFactoryInfoGet = CoreApi['deviceFactoryInfoGet'];
|
|
249
|
+
// @ts-expect-error fileRead is not part of the public API
|
|
250
|
+
type RemovedFileRead = CoreApi['fileRead'];
|
|
251
|
+
// @ts-expect-error dirList is not part of the public API
|
|
252
|
+
type RemovedDirList = CoreApi['dirList'];
|
|
253
|
+
// @ts-expect-error dirMake is not part of the public API
|
|
254
|
+
type RemovedDirMake = CoreApi['dirMake'];
|
|
255
|
+
// @ts-expect-error pathInfo is not part of the public API
|
|
256
|
+
type RemovedPathInfo = CoreApi['pathInfo'];
|
|
257
|
+
// @ts-expect-error deviceSettingsGet is not part of the public API
|
|
251
258
|
type RemovedDeviceSettingsGet = CoreApi['deviceSettingsGet'];
|
|
252
|
-
// @ts-expect-error deviceSettingsSet
|
|
259
|
+
// @ts-expect-error deviceSettingsSet is not part of the public API
|
|
253
260
|
type RemovedDeviceSettingsSet = CoreApi['deviceSettingsSet'];
|
|
254
|
-
// @ts-expect-error deviceSettingsPageShow
|
|
261
|
+
// @ts-expect-error deviceSettingsPageShow is not part of the public API
|
|
255
262
|
type RemovedDeviceSettingsPageShow = CoreApi['deviceSettingsPageShow'];
|
|
256
|
-
// @ts-expect-error refreshDeviceState
|
|
263
|
+
// @ts-expect-error refreshDeviceState was replaced by getDeviceState scope
|
|
257
264
|
type RemovedRefreshDeviceState = CoreApi['refreshDeviceState'];
|
|
@@ -9,26 +9,20 @@ jest.mock('../src/data/config', () => ({
|
|
|
9
9
|
getSDKVersion: () => '0.0.0-test',
|
|
10
10
|
}));
|
|
11
11
|
|
|
12
|
-
const
|
|
12
|
+
const removedRawMethodNames = [
|
|
13
13
|
'deviceInfoGet',
|
|
14
14
|
'deviceStatusGet',
|
|
15
15
|
'protocolInfoRequest',
|
|
16
16
|
'ping',
|
|
17
|
-
'deviceFirmwareUpdate',
|
|
18
17
|
'deviceGetFirmwareUpdateStatus',
|
|
19
|
-
'deviceFactoryInfoSet',
|
|
20
18
|
'deviceFactoryInfoGet',
|
|
21
|
-
] as const;
|
|
22
|
-
|
|
23
|
-
const removedRawSettingsMethodNames = [
|
|
24
19
|
'deviceSettingsGet',
|
|
25
20
|
'deviceSettingsSet',
|
|
26
21
|
'deviceSettingsPageShow',
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
const publicFilesystemMethodNames = [
|
|
30
|
-
'filesystemPermissionFix',
|
|
22
|
+
'deviceFactoryInfoSet',
|
|
31
23
|
'filesystemFormat',
|
|
24
|
+
'filesystemPermissionFix',
|
|
25
|
+
'deviceFirmwareUpdate',
|
|
32
26
|
'fileRead',
|
|
33
27
|
'fileWrite',
|
|
34
28
|
'fileDelete',
|
|
@@ -49,23 +43,15 @@ const unpublishedFilesystemAliases = [
|
|
|
49
43
|
] as const;
|
|
50
44
|
|
|
51
45
|
describe('public Pro2 API boundary', () => {
|
|
52
|
-
test('exposes
|
|
46
|
+
test('exposes business APIs without raw device or filesystem commands', () => {
|
|
53
47
|
const api = createCoreApi(jest.fn() as CoreApi['call']) as Record<string, unknown>;
|
|
54
48
|
|
|
55
49
|
expect(api.deviceGetOnboardingStatus).toBeInstanceOf(Function);
|
|
56
50
|
expect(api.uploadPortfolio).toBeInstanceOf(Function);
|
|
57
51
|
|
|
58
|
-
publicDevelopmentMethodNames.forEach(name => {
|
|
59
|
-
expect(api).toHaveProperty(name, expect.any(Function));
|
|
60
|
-
expect(publicMethods).toHaveProperty(name);
|
|
61
|
-
});
|
|
62
|
-
publicFilesystemMethodNames.forEach(name => {
|
|
63
|
-
expect(api).toHaveProperty(name, expect.any(Function));
|
|
64
|
-
expect(publicMethods).toHaveProperty(name);
|
|
65
|
-
});
|
|
66
52
|
expect(api).not.toHaveProperty('deviceSessionOpen');
|
|
67
53
|
expect(publicMethods).not.toHaveProperty('deviceSessionOpen');
|
|
68
|
-
|
|
54
|
+
removedRawMethodNames.forEach(name => {
|
|
69
55
|
expect(api).not.toHaveProperty(name);
|
|
70
56
|
expect(publicMethods).not.toHaveProperty(name);
|
|
71
57
|
});
|
|
@@ -75,18 +61,6 @@ describe('public Pro2 API boundary', () => {
|
|
|
75
61
|
});
|
|
76
62
|
});
|
|
77
63
|
|
|
78
|
-
test.each([...publicDevelopmentMethodNames, ...publicFilesystemMethodNames])(
|
|
79
|
-
'keeps %s available to the dispatcher',
|
|
80
|
-
name => {
|
|
81
|
-
expect(
|
|
82
|
-
findMethod({
|
|
83
|
-
id: 1,
|
|
84
|
-
payload: { method: name },
|
|
85
|
-
} as any)
|
|
86
|
-
).toBeDefined();
|
|
87
|
-
}
|
|
88
|
-
);
|
|
89
|
-
|
|
90
64
|
test('rejects deviceSessionOpen at the SDK dispatcher boundary', () => {
|
|
91
65
|
expect(() =>
|
|
92
66
|
findMethod({
|
|
@@ -96,8 +70,8 @@ describe('public Pro2 API boundary', () => {
|
|
|
96
70
|
).toThrow('Method deviceSessionOpen is not set');
|
|
97
71
|
});
|
|
98
72
|
|
|
99
|
-
test.each(
|
|
100
|
-
'rejects removed raw
|
|
73
|
+
test.each(removedRawMethodNames)(
|
|
74
|
+
'rejects removed raw method %s at the SDK dispatcher boundary',
|
|
101
75
|
name => {
|
|
102
76
|
expect(() =>
|
|
103
77
|
findMethod({
|
package/dist/api/BaseMethod.d.ts
CHANGED
|
@@ -5,7 +5,8 @@ import type { CoreMessage } from '../events';
|
|
|
5
5
|
import type { ProtocolV2InteractionDescriptor } from '../protocols/protocol-v2/uiInteraction';
|
|
6
6
|
import type { RequestContext } from '../utils/tracing';
|
|
7
7
|
import type { CoreContext } from '../core';
|
|
8
|
-
|
|
8
|
+
import { type UnlockPolicy } from '../protocols/protocol-v2/unlockPolicy';
|
|
9
|
+
export type { UnlockPolicy } from '../protocols/protocol-v2/unlockPolicy';
|
|
9
10
|
export type ProtocolV2UiMode = 'auto' | 'none';
|
|
10
11
|
export declare abstract class BaseMethod<Params = undefined> {
|
|
11
12
|
abortSignal?: AbortSignal;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseMethod.d.ts","sourceRoot":"","sources":["../../src/api/BaseMethod.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,KAAK,eAAe,MAAM,2BAA2B,CAAC;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAe,MAAM,UAAU,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,wCAAwC,CAAC;AAC9F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"BaseMethod.d.ts","sourceRoot":"","sources":["../../src/api/BaseMethod.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,KAAK,eAAe,MAAM,2BAA2B,CAAC;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAe,MAAM,UAAU,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,wCAAwC,CAAC;AAC9F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAEL,KAAK,YAAY,EAClB,MAAM,uCAAuC,CAAC;AAE/C,YAAY,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC1E,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,MAAM,CAAC;AA6B/C,8BAAsB,UAAU,CAAC,MAAM,GAAG,SAAS;IACjD,WAAW,CAAC,EAAE,WAAW,CAAC;IAE1B,UAAU,EAAE,MAAM,CAAC;IAGnB,MAAM,EAAE,MAAM,CAAC;IAGf,MAAM,EAAE,MAAM,CAAC;IAOf,SAAS,CAAC,EAAE,MAAM,CAAC;IAKnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,WAAW,CAAC,EAAE,MAAM,CAAC;IAKrB,IAAI,EAAE,MAAM,CAAC;IAEb,UAAU,EAAG,MAAM,CAAC;IAEpB,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,cAAc,CAAC,EAAE,cAAc,CAAC;IAKhC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE7B,SAAS,CAAC,EAAE,eAAe,CAAC;IAK5B,SAAS,EAAE,OAAO,CAAC;IAMnB,eAAe,EAAE,MAAM,EAAE,CAAC;IAK1B,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAK5B,qBAAqB,UAAQ;IAK7B,aAAa,UAAS;IAKtB,wBAAwB,UAAQ;IAMhC,oBAAoB,UAAS;IAG7B,qBAAqB,UAAS;IAG9B,eAAe,UAAS;IAGxB,UAAU,SAAa;IAGvB,aAAa,IAAI,MAAM;IAiBvB,wBAAwB,UAAS;IAQjC,iBAAiB,UAAS;IAG1B,YAAY,EAAE,YAAY,CAAU;IAGpC,uBAAuB,CAAC,EAAE,+BAA+B,CAAC;IAG1D,gBAAgB,EAAE,gBAAgB,CAAU;IAE5C,SAAS,CAAC,cAAc;IAUxB,WAAW,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;IAE5C,OAAO,CAAC,EAAE,WAAW,CAAC;IAEtB,4BAA4B,UAAS;gBAEzB,OAAO,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,GAAG,CAAA;KAAE;IAalD,QAAQ,CAAC,IAAI,IAAI,IAAI;IAErB,QAAQ,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IAE5B,eAAe,IAAI,mBAAmB;IAItC,UAAU,CAAC,OAAO,EAAE,WAAW;IAQ/B,SAAS,CAAC,MAAM,EAAE,MAAM;IA2BxB,oBAAoB;IAsBpB,yBAAyB;IAczB,SAAS,CAAC,wBAAwB,CAChC,cAAc,EAAE,MAAM,OAAO,EAC7B,eAAe,EAAE,MAAM,mBAAmB,EAC1C,OAAO,CAAC,EAAE;QACR,wBAAwB,CAAC,EAAE,OAAO,CAAC;KACpC;IA+BH,OAAO,CAAC,6CAA6C;IAqB/C,yBAAyB;IA4B/B,OAAO;IAGP,0BAA0B,SAAU;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,UAOrE;CACH"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckAllFirmwareRelease.d.ts","sourceRoot":"","sources":["../../src/api/CheckAllFirmwareRelease.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"CheckAllFirmwareRelease.d.ts","sourceRoot":"","sources":["../../src/api/CheckAllFirmwareRelease.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAW1C,OAAO,KAAK,EACV,kBAAkB,EAEnB,MAAM,sCAAsC,CAAC;AAE9C,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,UAAU;IAC7D,IAAI;IAME,GAAG;CA8DV"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClearSessionCache.d.ts","sourceRoot":"","sources":["../../src/api/ClearSessionCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"ClearSessionCache.d.ts","sourceRoot":"","sources":["../../src/api/ClearSessionCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAI1C,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEzE,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,UAAU,CAAC,uBAAuB,CAAC;IAChF,IAAI;IAaJ,GAAG;;;CAWJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FirmwareUpdate.d.ts","sourceRoot":"","sources":["../../src/api/FirmwareUpdate.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAW1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD,KAAK,MAAM,GAAG;IACZ,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,EAAE,UAAU,GAAG,KAAK,CAAC;CAChC,CAAC;AAIF,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,UAAU,CAAC,MAAM,CAAC;IAC5D,YAAY,EAAE,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,CAAQ;IAE1C,IAAI;IAgCJ,cAAc,YAAa,MAAM,UAS/B;IAEF,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS;IAsD/C,GAAG;
|
|
1
|
+
{"version":3,"file":"FirmwareUpdate.d.ts","sourceRoot":"","sources":["../../src/api/FirmwareUpdate.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAW1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD,KAAK,MAAM,GAAG;IACZ,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,EAAE,UAAU,GAAG,KAAK,CAAC;CAChC,CAAC;AAIF,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,UAAU,CAAC,MAAM,CAAC;IAC5D,YAAY,EAAE,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,CAAQ;IAE1C,IAAI;IAgCJ,cAAc,YAAa,MAAM,UAS/B;IAEF,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS;IAsD/C,GAAG;CAuGV"}
|
|
@@ -1,8 +1,19 @@
|
|
|
1
1
|
import { type Deferred, type EFirmwareType } from '@onekeyfe/hd-shared';
|
|
2
2
|
import { BaseMethod } from './BaseMethod';
|
|
3
3
|
import type { Features } from '../types';
|
|
4
|
+
import type { FirmwareArtifactReader, FirmwareArtifactReference } from '../types/api/firmwareUpdate';
|
|
5
|
+
import type { FirmwareUpdatePreparedPlan } from '../types/api/firmwareUpdatePreparedPlan';
|
|
4
6
|
type Params = {
|
|
5
7
|
binary?: ArrayBuffer;
|
|
8
|
+
artifact?: FirmwareArtifactReference;
|
|
9
|
+
resourceArtifact?: FirmwareArtifactReference;
|
|
10
|
+
resourceEntries?: Array<{
|
|
11
|
+
entryName: string;
|
|
12
|
+
artifact: FirmwareArtifactReference;
|
|
13
|
+
}>;
|
|
14
|
+
artifactReader?: FirmwareArtifactReader;
|
|
15
|
+
preparedPlan?: FirmwareUpdatePreparedPlan;
|
|
16
|
+
platform?: FirmwareUpdatePreparedPlan['platform'];
|
|
6
17
|
version?: number[];
|
|
7
18
|
updateType: 'firmware' | 'ble';
|
|
8
19
|
forcedUpdateRes?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FirmwareUpdateV2.d.ts","sourceRoot":"","sources":["../../src/api/FirmwareUpdateV2.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,QAAQ,EAEb,KAAK,aAAa,EAKnB,MAAM,qBAAqB,CAAC;AAI7B,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"FirmwareUpdateV2.d.ts","sourceRoot":"","sources":["../../src/api/FirmwareUpdateV2.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,QAAQ,EAEb,KAAK,aAAa,EAKnB,MAAM,qBAAqB,CAAC;AAI7B,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAqB1C,OAAO,KAAK,EAAE,QAAQ,EAAe,MAAM,UAAU,CAAC;AAEtD,OAAO,KAAK,EACV,sBAAsB,EACtB,yBAAyB,EAC1B,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AAE1F,KAAK,MAAM,GAAG;IACZ,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IACrC,gBAAgB,CAAC,EAAE,yBAAyB,CAAC;IAC7C,eAAe,CAAC,EAAE,KAAK,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,yBAAyB,CAAC;KACrC,CAAC,CAAC;IACH,cAAc,CAAC,EAAE,sBAAsB,CAAC;IACxC,YAAY,CAAC,EAAE,0BAA0B,CAAC;IAC1C,QAAQ,CAAC,EAAE,0BAA0B,CAAC,UAAU,CAAC,CAAC;IAClD,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,EAAE,UAAU,GAAG,KAAK,CAAC;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,YAAY,CAAC,EAAE,aAAa,CAAC;CAC9B,CAAC;AAkFF,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,UAAU,CAAC,MAAM,CAAC;IAC9D,YAAY,EAAE,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,CAAQ;IAE1C,IAAI;IA6EJ,cAAc,YAAa,MAAM,UAS/B;YAEY,qCAAqC;IAkBnD,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS;YAkFvC,4BAA4B;IAuB1C,qBAAqB;IAUrB,uBAAuB,CAAC,UAAU,EAAE,MAAM;IAc1C,gCAAgC,CAAC,QAAQ,EAAE,QAAQ,GAAG,SAAS,EAAE,YAAY,EAAE,aAAa;IAwBtF,GAAG;CAsQV"}
|
|
@@ -5,6 +5,7 @@ export declare const MIN_UPDATE_V3_BOOTLOADER_VERSION = "2.8.0";
|
|
|
5
5
|
export default class FirmwareUpdateV3 extends FirmwareUpdateBaseMethod<FirmwareUpdateV3Params> {
|
|
6
6
|
checkPromise: Deferred<any> | null;
|
|
7
7
|
private isSwitchFirmware;
|
|
8
|
+
private artifactSources;
|
|
8
9
|
init(): void;
|
|
9
10
|
run(): Promise<{
|
|
10
11
|
bootloaderVersion: string;
|
|
@@ -13,9 +14,12 @@ export default class FirmwareUpdateV3 extends FirmwareUpdateBaseMethod<FirmwareU
|
|
|
13
14
|
}>;
|
|
14
15
|
private runProtocolV1;
|
|
15
16
|
private validateDeviceAndVersion;
|
|
16
|
-
private
|
|
17
|
-
private
|
|
18
|
-
private
|
|
17
|
+
private openArtifactSource;
|
|
18
|
+
private closeArtifactSources;
|
|
19
|
+
private assertSdkDownloadAllowed;
|
|
20
|
+
private prepareResourceInput;
|
|
21
|
+
private prepareBootloaderSource;
|
|
22
|
+
private prepareFirmwareAndBleSources;
|
|
19
23
|
private executeUpdate;
|
|
20
24
|
private extractUpdateModeProgress;
|
|
21
25
|
private isGetFeaturesTimeoutError;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FirmwareUpdateV3.d.ts","sourceRoot":"","sources":["../../src/api/FirmwareUpdateV3.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"FirmwareUpdateV3.d.ts","sourceRoot":"","sources":["../../src/api/FirmwareUpdateV3.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;AAW/E,OAAO,KAAK,EAEV,sBAAsB,EACvB,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,QAAQ,EAAiB,MAAM,qBAAqB,CAAC;AAMnE,eAAO,MAAM,gCAAgC,UAAU,CAAC;AAaxD,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,wBAAwB,CAAC,sBAAsB,CAAC;IAC5F,YAAY,EAAE,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,CAAQ;IAE1C,OAAO,CAAC,gBAAgB,CAAS;IAEjC,OAAO,CAAC,eAAe,CAA4B;IAEnD,IAAI;IAmFE,GAAG;;;;;YAcK,aAAa;IAuD3B,OAAO,CAAC,wBAAwB;YAiBlB,kBAAkB;YAelB,oBAAoB;IAKlC,OAAO,CAAC,wBAAwB;YAgBlB,oBAAoB;YA2DpB,uBAAuB;YAuBvB,4BAA4B;YA+E5B,aAAa;IAwN3B,OAAO,CAAC,yBAAyB;IAajC,OAAO,CAAC,yBAAyB;IAQjC,OAAO,CAAC,qBAAqB;IAmB7B,OAAO,CAAC,sCAAsC;IAexC,sBAAsB,CAAC,OAAO,EAAE,MAAM;CAuE7C"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { FirmwareUpdateBaseMethod } from './firmware/FirmwareUpdateBaseMethod';
|
|
2
2
|
import type { FirmwareUpdateV4Params } from '../types/api/firmwareUpdate';
|
|
3
|
-
export declare const assertProtocolV2ReconnectIdentity: (
|
|
4
|
-
allowMissingActual?: boolean;
|
|
5
|
-
}) => void;
|
|
3
|
+
export declare const assertProtocolV2ReconnectIdentity: (expectedSerialNumber?: string, actualSerialNumber?: string) => void;
|
|
6
4
|
export default class FirmwareUpdateV4 extends FirmwareUpdateBaseMethod<FirmwareUpdateV4Params> {
|
|
7
|
-
private
|
|
5
|
+
private protocolV2ExpectedSerialNumber?;
|
|
6
|
+
private protocolV2PreparedSources;
|
|
7
|
+
private protocolV2ExecutionInLoader;
|
|
8
|
+
private protocolV2CompletedTargetVersions;
|
|
9
|
+
private protocolV2LatestFinalFeatures?;
|
|
8
10
|
init(): void;
|
|
9
11
|
private getProtocolV2FirmwareChunkSize;
|
|
10
12
|
run(): Promise<{
|
|
@@ -13,7 +15,22 @@ export default class FirmwareUpdateV4 extends FirmwareUpdateBaseMethod<FirmwareU
|
|
|
13
15
|
firmwareVersion: string;
|
|
14
16
|
}>;
|
|
15
17
|
private runProtocolV2;
|
|
18
|
+
private openProtocolV2PreparedSource;
|
|
19
|
+
private openProtocolV2MemorySource;
|
|
20
|
+
private closeProtocolV2PreparedSources;
|
|
21
|
+
private prepareProtocolV2InstallSources;
|
|
22
|
+
private prepareProtocolV2ResourceSources;
|
|
23
|
+
private runProtocolV2PreparedArtifacts;
|
|
24
|
+
private validateExpectedTargetVersions;
|
|
25
|
+
private getExpectedProtocolV2TargetVersion;
|
|
26
|
+
private assertExpectedProtocolV2Versions;
|
|
27
|
+
private getProtocolV2RequestedTargets;
|
|
16
28
|
private getProtocolV2DeviceFeatures;
|
|
29
|
+
private getProtocolV2SerialNumber;
|
|
30
|
+
private assertProtocolV2DeviceInfoIdentity;
|
|
31
|
+
private requestProtocolV2PhysicalIdentity;
|
|
32
|
+
private captureProtocolV2PhysicalIdentity;
|
|
33
|
+
private verifyProtocolV2ReconnectIdentity;
|
|
17
34
|
private prepareBootloaderBinary;
|
|
18
35
|
private hasExplicitProtocolV2Payload;
|
|
19
36
|
private buildProtocolV2InstallItems;
|
|
@@ -24,27 +41,29 @@ export default class FirmwareUpdateV4 extends FirmwareUpdateBaseMethod<FirmwareU
|
|
|
24
41
|
private downloadRemoteProtocolV2Component;
|
|
25
42
|
private prepareRemoteProtocolV2Binaries;
|
|
26
43
|
private prepareProtocolV2ResourceBundles;
|
|
27
|
-
private
|
|
28
|
-
private syncProtocolV2ResourceBundles;
|
|
44
|
+
private materializeProtocolV2ResourceBundles;
|
|
29
45
|
private isProtocolV2ResourceBundleUpToDate;
|
|
30
46
|
private isProtocolV2BootloaderMode;
|
|
31
47
|
enterProtocolV2BootloaderMode(): Promise<boolean>;
|
|
32
48
|
private waitForProtocolV2BootloaderMode;
|
|
33
49
|
private collectExplicitTargetBinaries;
|
|
50
|
+
private buildProtocolV2ExecutionPhases;
|
|
51
|
+
private executeProtocolV2Phases;
|
|
52
|
+
private executeProtocolV2SourceUpdate;
|
|
34
53
|
private executeProtocolV2Update;
|
|
54
|
+
private executeProtocolV2TransferPhase;
|
|
55
|
+
private protocolV2SourceUpdateProcess;
|
|
35
56
|
private getProtocolV2InstallItemStagingPath;
|
|
36
57
|
private verifyProtocolV2StagedFile;
|
|
37
58
|
private assertProtocolV2TargetStatus;
|
|
38
59
|
private waitForProtocolV2FirmwareUpdateComplete;
|
|
39
60
|
private exitProtocolV2BootloaderToNormal;
|
|
40
61
|
private waitForProtocolV2FinalFeatures;
|
|
62
|
+
private completeProtocolV2FinalVerification;
|
|
41
63
|
private waitForProtocolV2ReconnectAndFeatures;
|
|
42
64
|
private reconnectProtocolV2Device;
|
|
43
65
|
private ensureProtocolV2DeviceAcquired;
|
|
44
|
-
private
|
|
45
|
-
private protocolV2CommonUpdateProcess;
|
|
46
|
-
private protocolV2WriteWholeFile;
|
|
47
|
-
private getProtocolV2FirmwareTransferTransport;
|
|
66
|
+
private isProtocolV2ReconnectIdentityError;
|
|
48
67
|
private fileWriteChunk;
|
|
49
68
|
private recoverProtocolV2FileTransfer;
|
|
50
69
|
private acquireProtocolV2BleDevice;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FirmwareUpdateV4.d.ts","sourceRoot":"","sources":["../../src/api/FirmwareUpdateV4.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"FirmwareUpdateV4.d.ts","sourceRoot":"","sources":["../../src/api/FirmwareUpdateV4.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;AAe/E,OAAO,KAAK,EAEV,sBAAsB,EAEvB,MAAM,6BAA6B,CAAC;AA4VrC,eAAO,MAAM,iCAAiC,0BACrB,MAAM,uBACR,MAAM,SAc5B,CAAC;AAUF,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,wBAAwB,CAAC,sBAAsB,CAAC;IAC5F,OAAO,CAAC,8BAA8B,CAAC,CAAS;IAEhD,OAAO,CAAC,yBAAyB,CAA4B;IAE7D,OAAO,CAAC,2BAA2B,CAAS;IAE5C,OAAO,CAAC,iCAAiC,CAA6B;IAEtE,OAAO,CAAC,6BAA6B,CAAC,CAAW;IAEjD,IAAI;IA2HJ,OAAO,CAAC,8BAA8B;IAgBhC,GAAG;;;;;YAYK,aAAa;YAsEb,4BAA4B;YAkB5B,0BAA0B;YAY1B,8BAA8B;YAK9B,+BAA+B;YAqD/B,gCAAgC;YA+ChC,8BAA8B;IAsB5C,OAAO,CAAC,8BAA8B;IA0BtC,OAAO,CAAC,kCAAkC;IAc1C,OAAO,CAAC,gCAAgC;IAiDxC,OAAO,CAAC,6BAA6B;YAsBvB,2BAA2B;IAWzC,OAAO,CAAC,yBAAyB;IAKjC,OAAO,CAAC,kCAAkC;YAO5B,iCAAiC;YAOjC,iCAAiC;YAOjC,iCAAiC;IAM/C,OAAO,CAAC,uBAAuB;IAI/B,OAAO,CAAC,4BAA4B;IAQpC,OAAO,CAAC,2BAA2B;IAsBnC,OAAO,CAAC,yBAAyB;IAiBjC,OAAO,CAAC,wBAAwB;IAkBhC,OAAO,CAAC,6BAA6B;YAMvB,8BAA8B;YA6C9B,iCAAiC;YAmBjC,+BAA+B;IA+D7C,OAAO,CAAC,gCAAgC;YAyC1B,oCAAoC;YAkCpC,kCAAkC;IAgChD,OAAO,CAAC,0BAA0B;IAO5B,6BAA6B;YA0BrB,+BAA+B;IA4C7C,OAAO,CAAC,6BAA6B;IAkCrC,OAAO,CAAC,8BAA8B;YA8CxB,uBAAuB;YAiCvB,6BAA6B;YAa7B,uBAAuB;YA6CvB,8BAA8B;YA2D9B,6BAA6B;IA0D3C,OAAO,CAAC,mCAAmC;YAI7B,0BAA0B;IAaxC,OAAO,CAAC,4BAA4B;YA+FtB,uCAAuC;YA0GvC,gCAAgC;YAShC,8BAA8B;YAsB9B,mCAAmC;YAWnC,qCAAqC;YA2CrC,yBAAyB;YAiDzB,8BAA8B;IAU5C,OAAO,CAAC,kCAAkC;YAI5B,cAAc;YA+Bd,6BAA6B;YAU7B,0BAA0B;YAS1B,6BAA6B;YAmB7B,gBAAgB;IAiB9B,OAAO,CAAC,qBAAqB;CAM9B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenWalletSession.d.ts","sourceRoot":"","sources":["../../src/api/OpenWalletSession.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG1C,OAAO,KAAK,EACV,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"OpenWalletSession.d.ts","sourceRoot":"","sources":["../../src/api/OpenWalletSession.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG1C,OAAO,KAAK,EACV,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,gCAAgC,CAAC;AA4CxC,KAAK,iCAAiC,GAAG,uBAAuB,GAAG;IACjE,oBAAoB,CAAC,EAAE;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC;CACH,CAAC;AAqEF,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,UAAU,CAAC,iCAAiC,CAAC;IAC1F,IAAI;IAOE,GAAG,IAAI,OAAO,CAAC,wBAAwB,CAAC;CAoI/C"}
|
|
@@ -2,6 +2,7 @@ import { BaseMethod } from '../BaseMethod';
|
|
|
2
2
|
import type { ConfluxGetAddress as HardwareConfluxGetAddress } from '@onekeyfe/hd-transport';
|
|
3
3
|
import type { ConfluxAddress } from '../../types/api/confluxGetAddress';
|
|
4
4
|
export default class ConfluxGetAddress extends BaseMethod<HardwareConfluxGetAddress[]> {
|
|
5
|
+
checkDeviceId: boolean;
|
|
5
6
|
hasBundle: boolean;
|
|
6
7
|
init(): void;
|
|
7
8
|
getVersionRange(): {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfluxGetAddress.d.ts","sourceRoot":"","sources":["../../../src/api/conflux/ConfluxGetAddress.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,OAAO,KAAK,EAAE,iBAAiB,IAAI,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAC7F,OAAO,KAAK,EAAE,cAAc,EAA2B,MAAM,mCAAmC,CAAC;AAEjG,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,UAAU,CAAC,yBAAyB,EAAE,CAAC;IACpF,SAAS,UAAS;IAElB,IAAI;IA8BJ,eAAe;;;;;IAQT,GAAG;CA4BV"}
|
|
1
|
+
{"version":3,"file":"ConfluxGetAddress.d.ts","sourceRoot":"","sources":["../../../src/api/conflux/ConfluxGetAddress.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,OAAO,KAAK,EAAE,iBAAiB,IAAI,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAC7F,OAAO,KAAK,EAAE,cAAc,EAA2B,MAAM,mCAAmC,CAAC;AAEjG,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,UAAU,CAAC,yBAAyB,EAAE,CAAC;IACpF,aAAa,UAAQ;IAErB,SAAS,UAAS;IAElB,IAAI;IA8BJ,eAAe;;;;;IAQT,GAAG;CA4BV"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { BaseMethod } from '../BaseMethod';
|
|
2
2
|
import type { ConfluxSignMessage as HardwareConfluxSignMessage } from '@onekeyfe/hd-transport';
|
|
3
3
|
export default class ConfluxSignMessage extends BaseMethod<HardwareConfluxSignMessage> {
|
|
4
|
+
checkDeviceId: boolean;
|
|
4
5
|
init(): void;
|
|
5
6
|
getVersionRange(): {
|
|
6
7
|
model_mini: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfluxSignMessage.d.ts","sourceRoot":"","sources":["../../../src/api/conflux/ConfluxSignMessage.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAI3C,OAAO,KAAK,EAAE,kBAAkB,IAAI,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AAE/F,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,UAAU,CAAC,0BAA0B,CAAC;IACpF,IAAI;IAqBJ,eAAe;;;;;IAQT,GAAG;CAWV"}
|
|
1
|
+
{"version":3,"file":"ConfluxSignMessage.d.ts","sourceRoot":"","sources":["../../../src/api/conflux/ConfluxSignMessage.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAI3C,OAAO,KAAK,EAAE,kBAAkB,IAAI,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AAE/F,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,UAAU,CAAC,0BAA0B,CAAC;IACpF,aAAa,UAAQ;IAErB,IAAI;IAqBJ,eAAe;;;;;IAQT,GAAG;CAWV"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { BaseMethod } from '../BaseMethod';
|
|
2
2
|
import type { ConfluxSignMessageCIP23 as HardwareConfluxSignMessageCIP23 } from '@onekeyfe/hd-transport';
|
|
3
3
|
export default class ConfluxSignMessageCIP23 extends BaseMethod<HardwareConfluxSignMessageCIP23> {
|
|
4
|
+
checkDeviceId: boolean;
|
|
4
5
|
init(): void;
|
|
5
6
|
getVersionRange(): {
|
|
6
7
|
model_mini: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfluxSignMessageCIP23.d.ts","sourceRoot":"","sources":["../../../src/api/conflux/ConfluxSignMessageCIP23.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAI3C,OAAO,KAAK,EAAE,uBAAuB,IAAI,+BAA+B,EAAE,MAAM,wBAAwB,CAAC;AAEzG,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,UAAU,CAAC,+BAA+B,CAAC;IAC9F,IAAI;IAqBJ,eAAe;;;;;IAQT,GAAG;CAWV"}
|
|
1
|
+
{"version":3,"file":"ConfluxSignMessageCIP23.d.ts","sourceRoot":"","sources":["../../../src/api/conflux/ConfluxSignMessageCIP23.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAI3C,OAAO,KAAK,EAAE,uBAAuB,IAAI,+BAA+B,EAAE,MAAM,wBAAwB,CAAC;AAEzG,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,UAAU,CAAC,+BAA+B,CAAC;IAC9F,aAAa,UAAQ;IAErB,IAAI;IAqBJ,eAAe;;;;;IAQT,GAAG;CAWV"}
|
|
@@ -2,6 +2,7 @@ import { BaseMethod } from '../BaseMethod';
|
|
|
2
2
|
import type { ConfluxSignedTx, ConfluxTransaction } from '../../types/api/confluxSignTransaction';
|
|
3
3
|
import type { ConfluxTxRequest } from '@onekeyfe/hd-transport';
|
|
4
4
|
export default class ConfluxSignTransaction extends BaseMethod {
|
|
5
|
+
checkDeviceId: boolean;
|
|
5
6
|
addressN: number[];
|
|
6
7
|
formattedTx: ConfluxTransaction | undefined;
|
|
7
8
|
init(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfluxSignTransaction.d.ts","sourceRoot":"","sources":["../../../src/api/conflux/ConfluxSignTransaction.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAM3C,OAAO,KAAK,EAEV,eAAe,EACf,kBAAkB,EACnB,MAAM,wCAAwC,CAAC;AAChD,OAAO,KAAK,EAAiB,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE9E,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,UAAU;IAC5D,QAAQ,EAAE,MAAM,EAAE,CAAM;IAExB,WAAW,EAAE,kBAAkB,GAAG,SAAS,CAAC;IAE5C,IAAI;IAkCJ,gBAAgB,YAAmB,gBAAgB,QAAQ,MAAM,KAAG,QAAQ,eAAe,CAAC,CAuB1F;IAEF,SAAS,aAAoB,MAAM,EAAE,MAAM,kBAAkB,8BAkC3D;IAEF,eAAe;;;;;IAQT,GAAG;CAaV"}
|
|
1
|
+
{"version":3,"file":"ConfluxSignTransaction.d.ts","sourceRoot":"","sources":["../../../src/api/conflux/ConfluxSignTransaction.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAM3C,OAAO,KAAK,EAEV,eAAe,EACf,kBAAkB,EACnB,MAAM,wCAAwC,CAAC;AAChD,OAAO,KAAK,EAAiB,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE9E,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,UAAU;IAC5D,aAAa,UAAQ;IAErB,QAAQ,EAAE,MAAM,EAAE,CAAM;IAExB,WAAW,EAAE,kBAAkB,GAAG,SAAS,CAAC;IAE5C,IAAI;IAkCJ,gBAAgB,YAAmB,gBAAgB,QAAQ,MAAM,KAAG,QAAQ,eAAe,CAAC,CAuB1F;IAEF,SAAS,aAAoB,MAAM,EAAE,MAAM,kBAAkB,8BAkC3D;IAEF,eAAe;;;;;IAQT,GAAG;CAaV"}
|
|
@@ -2,6 +2,6 @@ import { BaseMethod } from '../BaseMethod';
|
|
|
2
2
|
import type { LockDevice } from '@onekeyfe/hd-transport';
|
|
3
3
|
export default class DeviceUnlock extends BaseMethod<LockDevice> {
|
|
4
4
|
init(): void;
|
|
5
|
-
run(): Promise<import("../..").
|
|
5
|
+
run(): Promise<import("../..").Features | undefined>;
|
|
6
6
|
}
|
|
7
7
|
//# sourceMappingURL=DeviceUnlock.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeviceUnlock.d.ts","sourceRoot":"","sources":["../../../src/api/device/DeviceUnlock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,UAAU,CAAC,UAAU,CAAC;IAC9D,IAAI;IAaE,GAAG;
|
|
1
|
+
{"version":3,"file":"DeviceUnlock.d.ts","sourceRoot":"","sources":["../../../src/api/device/DeviceUnlock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,UAAU,CAAC,UAAU,CAAC;IAC9D,IAAI;IAaE,GAAG;CAGV"}
|
|
@@ -2,13 +2,17 @@ import { FirmwareUpdateBaseMethod } from '../firmware/FirmwareUpdateBaseMethod';
|
|
|
2
2
|
import type { EFirmwareType } from '@onekeyfe/hd-shared';
|
|
3
3
|
import type { Device } from '../../device/Device';
|
|
4
4
|
import type { Features } from '../../types';
|
|
5
|
+
import type { FirmwareByteSource } from '../firmware/FirmwareArtifactSource';
|
|
5
6
|
export default class DeviceUpdateBootloader extends FirmwareUpdateBaseMethod<any> {
|
|
6
7
|
init(): void;
|
|
7
8
|
updateBootloaderWithEmmcFileWrite(_device: Device, binary: ArrayBuffer): Promise<boolean>;
|
|
8
|
-
|
|
9
|
+
updateBootloaderWithEmmcFileWriteFromSource(_device: Device, source: FirmwareByteSource): Promise<boolean>;
|
|
10
|
+
updateTouchBootloader({ device, features, firmwareType, binary: preparedBinary, source: preparedSource, }: {
|
|
9
11
|
device: Device;
|
|
10
12
|
features?: Features;
|
|
11
13
|
firmwareType: EFirmwareType;
|
|
14
|
+
binary?: ArrayBuffer;
|
|
15
|
+
source?: FirmwareByteSource;
|
|
12
16
|
}): Promise<boolean | undefined>;
|
|
13
17
|
run(): Promise<boolean | undefined>;
|
|
14
18
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeviceUpdateBootloader.d.ts","sourceRoot":"","sources":["../../../src/api/device/DeviceUpdateBootloader.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"DeviceUpdateBootloader.d.ts","sourceRoot":"","sources":["../../../src/api/device/DeviceUpdateBootloader.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAWhF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAE7E,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,wBAAwB,CAAC,GAAG,CAAC;IAC/E,IAAI;IAOE,iCAAiC,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW;IAoBtE,2CAA2C,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,kBAAkB;IAcvF,qBAAqB,CAAC,EAC1B,MAAM,EACN,QAAQ,EACR,YAAY,EACZ,MAAM,EAAE,cAAc,EACtB,MAAM,EAAE,cAAc,GACvB,EAAE;QACD,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,QAAQ,CAAC;QACpB,YAAY,EAAE,aAAa,CAAC;QAC5B,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,MAAM,CAAC,EAAE,kBAAkB,CAAC;KAC7B;IA0EK,GAAG;CAoEV"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { FirmwareArtifactReader, FirmwareArtifactReference } from '../../types/api/firmwareUpdate';
|
|
2
|
+
export declare const MAX_FIRMWARE_ARTIFACT_READ_BYTES: number;
|
|
3
|
+
export interface FirmwareByteSource {
|
|
4
|
+
readonly size: number;
|
|
5
|
+
readAt(offset: number, length: number): Promise<ArrayBuffer>;
|
|
6
|
+
close(): Promise<void>;
|
|
7
|
+
}
|
|
8
|
+
export declare const assertFirmwareArtifactReference: (artifact: FirmwareArtifactReference) => FirmwareArtifactReference;
|
|
9
|
+
export declare const assertFirmwareArtifactRead: (size: number, offset: number, length: number) => void;
|
|
10
|
+
export declare const openFirmwareByteSource: ({ binary, artifact, reader, }: {
|
|
11
|
+
binary?: ArrayBuffer | undefined;
|
|
12
|
+
artifact?: FirmwareArtifactReference | undefined;
|
|
13
|
+
reader?: FirmwareArtifactReader | undefined;
|
|
14
|
+
}) => Promise<FirmwareByteSource | null>;
|
|
15
|
+
export declare const readFirmwareByteSourceFully: (source: FirmwareByteSource) => Promise<ArrayBuffer>;
|
|
16
|
+
export declare const writeFirmwareByteSource: ({ source, chunkSize, write, }: {
|
|
17
|
+
source: FirmwareByteSource;
|
|
18
|
+
chunkSize: number;
|
|
19
|
+
write: (input: {
|
|
20
|
+
data: ArrayBuffer;
|
|
21
|
+
sourceOffset: number;
|
|
22
|
+
length: number;
|
|
23
|
+
first: boolean;
|
|
24
|
+
}) => Promise<number>;
|
|
25
|
+
}) => Promise<number>;
|
|
26
|
+
//# sourceMappingURL=FirmwareArtifactSource.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FirmwareArtifactSource.d.ts","sourceRoot":"","sources":["../../../src/api/firmware/FirmwareArtifactSource.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,sBAAsB,EACtB,yBAAyB,EAC1B,MAAM,gCAAgC,CAAC;AAExC,eAAO,MAAM,gCAAgC,QAAa,CAAC;AAE3D,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAqBD,eAAO,MAAM,+BAA+B,aAChC,yBAAyB,KAClC,yBAsBF,CAAC;AAEF,eAAO,MAAM,0BAA0B,SAAU,MAAM,UAAU,MAAM,UAAU,MAAM,SAoBtF,CAAC;AA8GF,eAAO,MAAM,sBAAsB;;;;MAQ/B,QAAQ,kBAAkB,GAAG,IAAI,CAqBpC,CAAC;AAEF,eAAO,MAAM,2BAA2B,WAC9B,kBAAkB,KACzB,QAAQ,WAAW,CASrB,CAAC;AAEF,eAAO,MAAM,uBAAuB;YAK1B,kBAAkB;eACf,MAAM;mBACF;QACb,IAAI,EAAE,WAAW,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;QACrB,QAAQ,MAAM,CAAC;QACf,KAAK,EAAE,OAAO,CAAC;KAChB,KAAK,QAAQ,MAAM,CAAC;qBA+BtB,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { FirmwareUpdateHostBinding } from '../../types/api/firmwareUpdate';
|
|
2
|
+
export declare const registerFirmwareUpdateHostBinding: (binding: FirmwareUpdateHostBinding) => number;
|
|
3
|
+
export declare const unregisterFirmwareUpdateHostBinding: (generation?: number) => boolean;
|
|
4
|
+
export declare const getFirmwareUpdateHostBindingGeneration: () => number;
|
|
5
|
+
export declare const resolveFirmwareUpdateHostBinding: (generation: number | undefined) => FirmwareUpdateHostBinding;
|
|
6
|
+
//# sourceMappingURL=FirmwareHostBinding.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FirmwareHostBinding.d.ts","sourceRoot":"","sources":["../../../src/api/firmware/FirmwareHostBinding.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAsFhF,eAAO,MAAM,iCAAiC,YAAa,yBAAyB,KAAG,MACxC,CAAC;AAEhD,eAAO,MAAM,mCAAmC,gBAAiB,MAAM,KAAG,OACtB,CAAC;AAErD,eAAO,MAAM,sCAAsC,QAAO,MACb,CAAC;AAE9C,eAAO,MAAM,gCAAgC,eAC/B,MAAM,GAAG,SAAS,KAC7B,yBAA0F,CAAC"}
|