@onekeyfe/hd-shared 1.2.7 → 1.2.8-alpha.2
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/HardwareError.d.ts +1 -2
- package/dist/HardwareError.d.ts.map +1 -1
- package/dist/constants.d.ts +2 -2
- package/dist/constants.d.ts.map +1 -1
- package/dist/index.d.ts +9 -10
- package/dist/index.js +4 -18
- package/package.json +2 -2
- package/src/HardwareError.test.ts +0 -11
- package/src/HardwareError.ts +8 -21
- package/src/constants.ts +2 -0
package/dist/HardwareError.d.ts
CHANGED
|
@@ -123,11 +123,10 @@ export declare const HardwareErrorCode: {
|
|
|
123
123
|
readonly LowlevelTrasnportConnectError: 900;
|
|
124
124
|
readonly WebDeviceNotFoundOrNeedsPermission: 901;
|
|
125
125
|
readonly WebDevicePromptAccessError: 902;
|
|
126
|
+
readonly WebUsbDeviceAccessError: 903;
|
|
126
127
|
};
|
|
127
128
|
export declare const HardwareErrorCodeMessage: HardwareErrorCodeMessageMapping;
|
|
128
129
|
export declare const TypedError: (hardwareError: ErrorCodeUnion | string, message?: string, params?: any) => HardwareError;
|
|
129
|
-
export declare const isBleStaleBondHardwareError: (error: unknown) => boolean;
|
|
130
|
-
export declare const isBleStaleBondErrorText: (text: string) => boolean;
|
|
131
130
|
export declare const serializeError: (payload: any) => any;
|
|
132
131
|
export declare const CreateErrorByMessage: (message: string) => HardwareError;
|
|
133
132
|
export declare const CreateHardwareErrorByBridgeError: (raw: string) => HardwareError;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HardwareError.d.ts","sourceRoot":"","sources":["../src/HardwareError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,OAAO,CAAC,OAAO,iBAAiB,CAAC,CAAC;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,GAAG,CAAC;CACd;AAED,KAAK,OAAO,CAAC,CAAC,SAAS,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AAE5C,KAAK,+BAA+B,GAAG;KAAG,CAAC,IAAI,OAAO,CAAC,OAAO,iBAAiB,CAAC,GAAG,MAAM;CAAE,CAAC;AAE5F,KAAK,cAAc,GAAG,OAAO,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAsCxD,qBAAa,aAAc,SAAQ,KAAK;IACtC,SAAS,EAAE,cAAc,CAAkC;IAE3D,OAAO,SAAM;IAEb,MAAM,EAAE,GAAG,CAAM;gBAEL,aAAa,EAAE,cAAc,GAAG,MAAM;CAmBnD;AAED,eAAO,MAAM,iBAAiB
|
|
1
|
+
{"version":3,"file":"HardwareError.d.ts","sourceRoot":"","sources":["../src/HardwareError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,OAAO,CAAC,OAAO,iBAAiB,CAAC,CAAC;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,GAAG,CAAC;CACd;AAED,KAAK,OAAO,CAAC,CAAC,SAAS,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AAE5C,KAAK,+BAA+B,GAAG;KAAG,CAAC,IAAI,OAAO,CAAC,OAAO,iBAAiB,CAAC,GAAG,MAAM;CAAE,CAAC;AAE5F,KAAK,cAAc,GAAG,OAAO,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAsCxD,qBAAa,aAAc,SAAQ,KAAK;IACtC,SAAS,EAAE,cAAc,CAAkC;IAE3D,OAAO,SAAM;IAEb,MAAM,EAAE,GAAG,CAAM;gBAEL,aAAa,EAAE,cAAc,GAAG,MAAM;CAmBnD;AAED,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAocpB,CAAC;AAEX,eAAO,MAAM,wBAAwB,EAAE,+BA0J7B,CAAC;AAEX,eAAO,MAAM,UAAU,kBACN,cAAc,GAAG,MAAM,YAC5B,MAAM,WACP,GAAG,kBAMb,CAAC;AAEF,eAAO,MAAM,cAAc,YAAa,GAAG,QAe1C,CAAC;AAEF,eAAO,MAAM,oBAAoB,YAAa,MAAM,KAAG,aAOtD,CAAC;AAGF,eAAO,MAAM,gCAAgC,QAAS,MAAM,KAAG,aAQ9D,CAAC;AAEF,QAAA,MAAM,uCAAuC;oBAM3B,MAAM;oBACN,MAAM;;;mBAcvB,CAAC;AAEF,QAAA,MAAM,sCAAsC;oBAM1B,MAAM;oBACN,MAAM;;;mBAcvB,CAAC;AAEF,QAAA,MAAM,yCAAyC,cAClC,MAAM,GAAG,SAAS,YACnB,MAAM,GAAG,SAAS,iBACb,CAAC,UAAU,GAAG,KAAK,CAAC,EAAE,oBACnB;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,kBAsBF,CAAC;AAEF,QAAA,MAAM,6BAA6B,mBACjB,MAAM,qBACH,MAAM,eACZ,MAAM,kBAQpB,CAAC;AAEF,QAAA,MAAM,4BAA4B,aACtB,MAAM,aACL,MAAM,cACL,MAAM,cACN,MAAM,aACP,MAAM,kBAWlB,CAAC;AAEF,QAAA,MAAM,iCAAiC,eAAgB,MAAM,gBAAgB,aAAa,kBAItF,CAAC;AAEL,OAAO,EACL,uCAAuC,EACvC,sCAAsC,EACtC,yCAAyC,EACzC,6BAA6B,EAC7B,4BAA4B,EAC5B,iCAAiC,GAClC,CAAC"}
|
package/dist/constants.d.ts
CHANGED
|
@@ -18,8 +18,8 @@ type WebUsbIdentityDescriptor = {
|
|
|
18
18
|
manufacturerName?: string | null;
|
|
19
19
|
};
|
|
20
20
|
export declare const isKnownTrezorWebUsbDevice: (descriptor: WebUsbIdentityDescriptor) => boolean;
|
|
21
|
-
export declare const ERROR_CODES_REQUIRE_RELEASE: readonly [106, 107, 109, 112, 805, 801, 802, 812];
|
|
22
|
-
export declare const ERROR_CODES_REQUIRE_DISCONNECT: readonly [106, 805];
|
|
21
|
+
export declare const ERROR_CODES_REQUIRE_RELEASE: readonly [903, 106, 107, 109, 112, 805, 801, 802, 812];
|
|
22
|
+
export declare const ERROR_CODES_REQUIRE_DISCONNECT: readonly [903, 106, 805];
|
|
23
23
|
export declare enum EOneKeyBleMessageKeys {
|
|
24
24
|
BLE_SELECT = "$onekey-ble-select",
|
|
25
25
|
BLE_SELECT_RESULT = "$onekey-ble-select-result",
|
package/dist/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";AAEA,eAAO,MAAM,yBAAyB;;;CAG5B,CAAC;AAEX,MAAM,MAAM,uBAAuB,GACjC,CAAC,OAAO,yBAAyB,CAAC,CAAC,MAAM,OAAO,yBAAyB,CAAC,CAAC;AAE7E,eAAO,MAAM,oBAAoB;;;GAOhC,CAAC;AAGF,eAAO,MAAM,0BAA0B;;;EAAqD,CAAC;AAE7F,KAAK,wBAAwB,GAAG;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC,CAAC;AAIF,eAAO,MAAM,yBAAyB,eAAgB,wBAAwB,KAAG,OAQhF,CAAC;AAMF,eAAO,MAAM,2BAA2B,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";AAEA,eAAO,MAAM,yBAAyB;;;CAG5B,CAAC;AAEX,MAAM,MAAM,uBAAuB,GACjC,CAAC,OAAO,yBAAyB,CAAC,CAAC,MAAM,OAAO,yBAAyB,CAAC,CAAC;AAE7E,eAAO,MAAM,oBAAoB;;;GAOhC,CAAC;AAGF,eAAO,MAAM,0BAA0B;;;EAAqD,CAAC;AAE7F,KAAK,wBAAwB,GAAG;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC,CAAC;AAIF,eAAO,MAAM,yBAAyB,eAAgB,wBAAwB,KAAG,OAQhF,CAAC;AAMF,eAAO,MAAM,2BAA2B,wDAU9B,CAAC;AAMX,eAAO,MAAM,8BAA8B,0BAIjC,CAAC;AAGX,oBAAY,qBAAqB;IAE/B,UAAU,uBAAuB;IACjC,iBAAiB,8BAA8B;IAC/C,aAAa,0BAA0B;IACvC,kBAAkB,+BAA+B;IACjD,cAAc,2BAA2B;IACzC,oBAAoB,iCAAiC;IAGrD,mBAAmB,gCAAgC;IACnD,oBAAoB,iCAAiC;IAGrD,aAAa,0BAA0B;IACvC,oBAAoB,iCAAiC;IAGrD,uBAAuB,oCAAoC;IAC3D,sBAAsB,mCAAmC;IAGzD,mBAAmB,gCAAgC;IACnD,mBAAmB,gCAAgC;IACnD,oBAAoB,iCAAiC;IACrD,iBAAiB,8BAA8B;IAG/C,iBAAiB,8BAA8B;IAC/C,oBAAoB,iCAAiC;IACrD,eAAe,4BAA4B;IAC3C,mBAAmB,gCAAgC;IACnD,qBAAqB,kCAAkC;IACvD,sBAAsB,mCAAmC;IACzD,qBAAqB,kCAAkC;IACvD,wBAAwB,qCAAqC;CAC9D;AAUD,oBAAY,oBAAoB;IAE9B,kBAAkB,wBAAwB;IAE1C,aAAa,oBAAoB;CAClC;AAED,eAAO,MAAM,mBAAmB,yCAAyC,CAAC;AAC1E,eAAO,MAAM,gCAAgC,yCAAyC,CAAC;AACvF,eAAO,MAAM,iCAAiC,yCAAyC,CAAC;AAIxF,eAAO,MAAM,aAAa,UAAW,MAAM,GAAG,UAAU,KAAG,OAa1D,CAAC;AAkBF,eAAO,MAAM,cAAc,SAAU,MAAM,GAAG,IAAI,OAAO,MAAM,KAAG,OA2BjE,CAAC;AAEF,eAAO,MAAM,0BAA0B,cAAe,MAAM,GAAG,IAAI,cAAc,MAAM,GAAG,IAAI,qBAG/E,CAAC;AAEhB,KAAK,kBAAkB,GAAG;IACxB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B,CAAC;AAEF,eAAO,MAAM,0BAA0B,WAAY,kBAAkB,KAAG,MAAM,GAAG,SAehF,CAAC;AAEF,KAAK,uBAAuB,GAAG;IAC7B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,YAAY,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC;CACxD,CAAC;AAIF,eAAO,MAAM,gBAAgB,UAAW,MAAM,GAAG,IAAI,WACP,CAAC;AAE/C,eAAO,MAAM,yBAAyB,SAAU,MAAM,KAAG,YAAY,MAAM,CAc1E,CAAC;AAEF,eAAO,MAAM,mBAAmB,eAClB,MAAM,GAAG,IAAI,GAAG,SAAS,WAC5B,YAAY,MAAM,CAAC,YACgB,CAAC;AAmC/C,eAAO,MAAM,6BAA6B,WAAY,MAAM,GAAG,IAAI,YAWlE,CAAC;AAEF,eAAO,MAAM,oCAAoC,UAAW,MAAM,WAejE,CAAC;AAUF,eAAO,MAAM,oCAAoC,UAAW,MAAM,WAWjE,CAAC;AAEF,eAAO,MAAM,mBAAmB,UAAW,MAAM,GAAG,IAAI,UAAU,MAAM,GAAG,IAAI,YAO9E,CAAC;AAEF,eAAO,MAAM,6BAA6B,iBAC1B,MAAM,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,IAAI,GAAG,SAAS,YAIhE,CAAC;AAOJ,eAAO,MAAM,mBAAmB,WAAY,MAAM,GAAG,IAAI,KAAG,OAiB3D,CAAC;AAEF,eAAO,MAAM,uBAAuB,2CAKjC,uBAAuB,KAAG,OAiB5B,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -22,12 +22,12 @@ declare const isKnownTrezorWebUsbDevice: (descriptor: WebUsbIdentityDescriptor)
|
|
|
22
22
|
* Error codes that require device release after occurrence
|
|
23
23
|
* These errors indicate the device is in an invalid state and needs to be released
|
|
24
24
|
*/
|
|
25
|
-
declare const ERROR_CODES_REQUIRE_RELEASE: readonly [106, 107, 109, 112, 805, 801, 802, 812];
|
|
25
|
+
declare const ERROR_CODES_REQUIRE_RELEASE: readonly [903, 106, 107, 109, 112, 805, 801, 802, 812];
|
|
26
26
|
/**
|
|
27
27
|
* Error codes that require device disconnect before release
|
|
28
28
|
* These errors indicate a communication failure that requires full reconnection
|
|
29
29
|
*/
|
|
30
|
-
declare const ERROR_CODES_REQUIRE_DISCONNECT: readonly [106, 805];
|
|
30
|
+
declare const ERROR_CODES_REQUIRE_DISCONNECT: readonly [903, 106, 805];
|
|
31
31
|
declare enum EOneKeyBleMessageKeys {
|
|
32
32
|
BLE_SELECT = "$onekey-ble-select",
|
|
33
33
|
BLE_SELECT_RESULT = "$onekey-ble-select-result",
|
|
@@ -449,7 +449,7 @@ declare const HardwareErrorCode: {
|
|
|
449
449
|
*/
|
|
450
450
|
readonly FirmwareVerificationFailed: 820;
|
|
451
451
|
/**
|
|
452
|
-
*
|
|
452
|
+
* USB access needs OS permission (bridge/libusb or WebUSB).
|
|
453
453
|
*/
|
|
454
454
|
readonly BridgeNeedsPermission: 821;
|
|
455
455
|
readonly CallQueueActionCancelled: 822;
|
|
@@ -505,11 +505,14 @@ declare const HardwareErrorCode: {
|
|
|
505
505
|
* Web USB or Web Bluetooth device prompt access error
|
|
506
506
|
*/
|
|
507
507
|
readonly WebDevicePromptAccessError: 902;
|
|
508
|
+
/**
|
|
509
|
+
* WebUSB device is present, but its interface or endpoint is unavailable
|
|
510
|
+
* @params: { operation: 'open' | 'claimInterface' | 'transferIn' | 'transferOut'; nativeErrorName?: string; nativeErrorMessage?: string }
|
|
511
|
+
*/
|
|
512
|
+
readonly WebUsbDeviceAccessError: 903;
|
|
508
513
|
};
|
|
509
514
|
declare const HardwareErrorCodeMessage: HardwareErrorCodeMessageMapping;
|
|
510
515
|
declare const TypedError: (hardwareError: ErrorCodeUnion | string, message?: string, params?: any) => HardwareError;
|
|
511
|
-
declare const isBleStaleBondHardwareError: (error: unknown) => boolean;
|
|
512
|
-
declare const isBleStaleBondErrorText: (text: string) => boolean;
|
|
513
516
|
declare const serializeError: (payload: any) => any;
|
|
514
517
|
declare const CreateErrorByMessage: (message: string) => HardwareError;
|
|
515
518
|
declare const CreateHardwareErrorByBridgeError: (raw: string) => HardwareError;
|
|
@@ -545,8 +548,6 @@ declare const HardwareError$1_HardwareError: typeof HardwareError;
|
|
|
545
548
|
declare const HardwareError$1_HardwareErrorCode: typeof HardwareErrorCode;
|
|
546
549
|
declare const HardwareError$1_HardwareErrorCodeMessage: typeof HardwareErrorCodeMessage;
|
|
547
550
|
declare const HardwareError$1_TypedError: typeof TypedError;
|
|
548
|
-
declare const HardwareError$1_isBleStaleBondHardwareError: typeof isBleStaleBondHardwareError;
|
|
549
|
-
declare const HardwareError$1_isBleStaleBondErrorText: typeof isBleStaleBondErrorText;
|
|
550
551
|
declare const HardwareError$1_serializeError: typeof serializeError;
|
|
551
552
|
declare const HardwareError$1_CreateErrorByMessage: typeof CreateErrorByMessage;
|
|
552
553
|
declare const HardwareError$1_CreateHardwareErrorByBridgeError: typeof CreateHardwareErrorByBridgeError;
|
|
@@ -563,8 +564,6 @@ declare namespace HardwareError$1 {
|
|
|
563
564
|
HardwareError$1_HardwareErrorCode as HardwareErrorCode,
|
|
564
565
|
HardwareError$1_HardwareErrorCodeMessage as HardwareErrorCodeMessage,
|
|
565
566
|
HardwareError$1_TypedError as TypedError,
|
|
566
|
-
HardwareError$1_isBleStaleBondHardwareError as isBleStaleBondHardwareError,
|
|
567
|
-
HardwareError$1_isBleStaleBondErrorText as isBleStaleBondErrorText,
|
|
568
567
|
HardwareError$1_serializeError as serializeError,
|
|
569
568
|
HardwareError$1_CreateErrorByMessage as CreateErrorByMessage,
|
|
570
569
|
HardwareError$1_CreateHardwareErrorByBridgeError as CreateHardwareErrorByBridgeError,
|
|
@@ -585,4 +584,4 @@ declare enum EDeviceType {
|
|
|
585
584
|
Neo = "neo"
|
|
586
585
|
}
|
|
587
586
|
|
|
588
|
-
export { CreateErrorByMessage, CreateHardwareErrorByBridgeError, Deferred, EBleDisconnectReason, EDeviceType, EFirmwareType, EOneKeyBleMessageKeys, HardwareError$1 as ERRORS, ERROR_CODES_REQUIRE_DISCONNECT, ERROR_CODES_REQUIRE_RELEASE, HARDWARE_CONNECT_PROTOCOL, HardwareConnectProtocol, HardwareError, HardwareErrorCode, HardwareErrorCodeMessage, IHardwareError, ONEKEY_NOTIFY_CHARACTERISTIC_UUID, ONEKEY_PROTOCOL_V2_USB_IDS, ONEKEY_SERVICE_UUID, ONEKEY_WEBUSB_FILTER, ONEKEY_WRITE_CHARACTERISTIC_UUID, TypedError, canonicalizePro2BleAdvertisementName, createDefectiveFirmwareError, createDeferred, createDeprecatedHardwareError, createDeviceNotSupportMethodError, createKnownBleUuidAliases, createNeedUpgradeFirmwareHardwareError, createNewFirmwareForceUpdateHardwareError, createNewFirmwareUnReleaseHardwareError, hasOnekeyCommunicationService, inferProtocolHintFromUsbId,
|
|
587
|
+
export { CreateErrorByMessage, CreateHardwareErrorByBridgeError, Deferred, EBleDisconnectReason, EDeviceType, EFirmwareType, EOneKeyBleMessageKeys, HardwareError$1 as ERRORS, ERROR_CODES_REQUIRE_DISCONNECT, ERROR_CODES_REQUIRE_RELEASE, HARDWARE_CONNECT_PROTOCOL, HardwareConnectProtocol, HardwareError, HardwareErrorCode, HardwareErrorCodeMessage, IHardwareError, ONEKEY_NOTIFY_CHARACTERISTIC_UUID, ONEKEY_PROTOCOL_V2_USB_IDS, ONEKEY_SERVICE_UUID, ONEKEY_WEBUSB_FILTER, ONEKEY_WRITE_CHARACTERISTIC_UUID, TypedError, canonicalizePro2BleAdvertisementName, createDefectiveFirmwareError, createDeferred, createDeprecatedHardwareError, createDeviceNotSupportMethodError, createKnownBleUuidAliases, createNeedUpgradeFirmwareHardwareError, createNewFirmwareForceUpdateHardwareError, createNewFirmwareUnReleaseHardwareError, hasOnekeyCommunicationService, inferProtocolHintFromUsbId, isHeaderChunk, isKnownTrezorWebUsbDevice, isOnekeyBluetoothDevice, isOnekeyDevice, isPro2FamilyBleName, isPro2FindMyAdvertisementName, isSameOnekeyBleName, matchesKnownBleUuid, normalizeBleUuid, normalizePro2FindMyAdvertisementName, resolveOneKeyUsbDevicePath, serializeError, wait };
|
package/dist/index.js
CHANGED
|
@@ -172,6 +172,7 @@ const HardwareErrorCode = {
|
|
|
172
172
|
LowlevelTrasnportConnectError: 900,
|
|
173
173
|
WebDeviceNotFoundOrNeedsPermission: 901,
|
|
174
174
|
WebDevicePromptAccessError: 902,
|
|
175
|
+
WebUsbDeviceAccessError: 903,
|
|
175
176
|
};
|
|
176
177
|
const HardwareErrorCodeMessage = {
|
|
177
178
|
[HardwareErrorCode.UnknownError]: 'Unknown error occurred. Check message property.',
|
|
@@ -281,6 +282,7 @@ const HardwareErrorCodeMessage = {
|
|
|
281
282
|
[HardwareErrorCode.LowlevelTrasnportConnectError]: 'Lowlevel transport connect error',
|
|
282
283
|
[HardwareErrorCode.WebDeviceNotFoundOrNeedsPermission]: 'Web-USB or Web-Bluetooth device not found or needs permission',
|
|
283
284
|
[HardwareErrorCode.WebDevicePromptAccessError]: 'Web-USB or Web-Bluetooth device prompt access error',
|
|
285
|
+
[HardwareErrorCode.WebUsbDeviceAccessError]: 'WebUSB device access failed',
|
|
284
286
|
};
|
|
285
287
|
const TypedError = (hardwareError, message, params) => {
|
|
286
288
|
if (typeof hardwareError === 'string') {
|
|
@@ -288,20 +290,6 @@ const TypedError = (hardwareError, message, params) => {
|
|
|
288
290
|
}
|
|
289
291
|
return new HardwareError({ errorCode: hardwareError, message: message !== null && message !== void 0 ? message : '', params });
|
|
290
292
|
};
|
|
291
|
-
const isBleStaleBondHardwareError = (error) => {
|
|
292
|
-
const code = error === null || error === void 0 ? void 0 : error.errorCode;
|
|
293
|
-
return (code === HardwareErrorCode.BleDeviceBondError ||
|
|
294
|
-
code === HardwareErrorCode.BlePeerRemovedPairingInformation ||
|
|
295
|
-
code === HardwareErrorCode.BleBondInvalid);
|
|
296
|
-
};
|
|
297
|
-
const isBleStaleBondErrorText = (text) => {
|
|
298
|
-
const value = text.toLowerCase();
|
|
299
|
-
return (value.includes('encryption is insufficient') ||
|
|
300
|
-
value.includes('insufficient encryption') ||
|
|
301
|
-
value.includes('peer removed pairing information') ||
|
|
302
|
-
value.includes('cberrordomain:14') ||
|
|
303
|
-
value.includes('gatt_insuf_authentication'));
|
|
304
|
-
};
|
|
305
293
|
const serializeError = (payload) => {
|
|
306
294
|
if (payload && payload.error instanceof HardwareError) {
|
|
307
295
|
return {
|
|
@@ -393,8 +381,6 @@ var HardwareError$1 = /*#__PURE__*/Object.freeze({
|
|
|
393
381
|
HardwareErrorCode: HardwareErrorCode,
|
|
394
382
|
HardwareErrorCodeMessage: HardwareErrorCodeMessage,
|
|
395
383
|
TypedError: TypedError,
|
|
396
|
-
isBleStaleBondHardwareError: isBleStaleBondHardwareError,
|
|
397
|
-
isBleStaleBondErrorText: isBleStaleBondErrorText,
|
|
398
384
|
serializeError: serializeError,
|
|
399
385
|
CreateErrorByMessage: CreateErrorByMessage,
|
|
400
386
|
CreateHardwareErrorByBridgeError: CreateHardwareErrorByBridgeError,
|
|
@@ -428,6 +414,7 @@ const isKnownTrezorWebUsbDevice = (descriptor) => {
|
|
|
428
414
|
return manufacturerName != null && TREZOR_WEBUSB_MANUFACTURER_NAMES.has(manufacturerName);
|
|
429
415
|
};
|
|
430
416
|
const ERROR_CODES_REQUIRE_RELEASE = [
|
|
417
|
+
HardwareErrorCode.WebUsbDeviceAccessError,
|
|
431
418
|
HardwareErrorCode.DeviceInitializeFailed,
|
|
432
419
|
HardwareErrorCode.DeviceInterruptedFromOutside,
|
|
433
420
|
HardwareErrorCode.DeviceInterruptedFromUser,
|
|
@@ -438,6 +425,7 @@ const ERROR_CODES_REQUIRE_RELEASE = [
|
|
|
438
425
|
HardwareErrorCode.UnexpectPassphrase,
|
|
439
426
|
];
|
|
440
427
|
const ERROR_CODES_REQUIRE_DISCONNECT = [
|
|
428
|
+
HardwareErrorCode.WebUsbDeviceAccessError,
|
|
441
429
|
HardwareErrorCode.DeviceInitializeFailed,
|
|
442
430
|
HardwareErrorCode.ResponseUnexpectTypeError,
|
|
443
431
|
];
|
|
@@ -770,8 +758,6 @@ exports.createNewFirmwareForceUpdateHardwareError = createNewFirmwareForceUpdate
|
|
|
770
758
|
exports.createNewFirmwareUnReleaseHardwareError = createNewFirmwareUnReleaseHardwareError;
|
|
771
759
|
exports.hasOnekeyCommunicationService = hasOnekeyCommunicationService;
|
|
772
760
|
exports.inferProtocolHintFromUsbId = inferProtocolHintFromUsbId;
|
|
773
|
-
exports.isBleStaleBondErrorText = isBleStaleBondErrorText;
|
|
774
|
-
exports.isBleStaleBondHardwareError = isBleStaleBondHardwareError;
|
|
775
761
|
exports.isHeaderChunk = isHeaderChunk;
|
|
776
762
|
exports.isKnownTrezorWebUsbDevice = isKnownTrezorWebUsbDevice;
|
|
777
763
|
exports.isOnekeyBluetoothDevice = isOnekeyBluetoothDevice;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@onekeyfe/hd-shared",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.8-alpha.2",
|
|
4
4
|
"description": "Hardware SDK's shared tool library",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"Hardware-SDK",
|
|
@@ -26,5 +26,5 @@
|
|
|
26
26
|
"lint": "eslint .",
|
|
27
27
|
"lint:fix": "eslint . --fix"
|
|
28
28
|
},
|
|
29
|
-
"gitHead": "
|
|
29
|
+
"gitHead": "74ac64464df3806ef44ad54d313378754c3eaed2"
|
|
30
30
|
}
|
|
@@ -2,7 +2,6 @@ import {
|
|
|
2
2
|
HardwareErrorCode,
|
|
3
3
|
HardwareErrorCodeMessage,
|
|
4
4
|
TypedError,
|
|
5
|
-
isBleStaleBondErrorText,
|
|
6
5
|
serializeError,
|
|
7
6
|
} from './HardwareError';
|
|
8
7
|
|
|
@@ -50,14 +49,4 @@ describe('HardwareErrorCode compatibility', () => {
|
|
|
50
49
|
'pairing information is no longer valid'
|
|
51
50
|
);
|
|
52
51
|
});
|
|
53
|
-
|
|
54
|
-
test('recognizes the macOS CoreBluetooth stale-pairing error without matching generic failures', () => {
|
|
55
|
-
expect(
|
|
56
|
-
isBleStaleBondErrorText(
|
|
57
|
-
'CBErrorDomain:14 Peer removed pairing information on the device side'
|
|
58
|
-
)
|
|
59
|
-
).toBe(true);
|
|
60
|
-
expect(isBleStaleBondErrorText('CBATTErrorDomain:14 localized native message')).toBe(false);
|
|
61
|
-
expect(isBleStaleBondErrorText('connection failed')).toBe(false);
|
|
62
|
-
});
|
|
63
52
|
});
|
package/src/HardwareError.ts
CHANGED
|
@@ -456,7 +456,7 @@ export const HardwareErrorCode = {
|
|
|
456
456
|
FirmwareVerificationFailed: 820,
|
|
457
457
|
|
|
458
458
|
/**
|
|
459
|
-
*
|
|
459
|
+
* USB access needs OS permission (bridge/libusb or WebUSB).
|
|
460
460
|
*/
|
|
461
461
|
BridgeNeedsPermission: 821,
|
|
462
462
|
|
|
@@ -522,6 +522,12 @@ export const HardwareErrorCode = {
|
|
|
522
522
|
* Web USB or Web Bluetooth device prompt access error
|
|
523
523
|
*/
|
|
524
524
|
WebDevicePromptAccessError: 902,
|
|
525
|
+
|
|
526
|
+
/**
|
|
527
|
+
* WebUSB device is present, but its interface or endpoint is unavailable
|
|
528
|
+
* @params: { operation: 'open' | 'claimInterface' | 'transferIn' | 'transferOut'; nativeErrorName?: string; nativeErrorMessage?: string }
|
|
529
|
+
*/
|
|
530
|
+
WebUsbDeviceAccessError: 903,
|
|
525
531
|
} as const;
|
|
526
532
|
|
|
527
533
|
export const HardwareErrorCodeMessage: HardwareErrorCodeMessageMapping = {
|
|
@@ -677,6 +683,7 @@ export const HardwareErrorCodeMessage: HardwareErrorCodeMessageMapping = {
|
|
|
677
683
|
'Web-USB or Web-Bluetooth device not found or needs permission',
|
|
678
684
|
[HardwareErrorCode.WebDevicePromptAccessError]:
|
|
679
685
|
'Web-USB or Web-Bluetooth device prompt access error',
|
|
686
|
+
[HardwareErrorCode.WebUsbDeviceAccessError]: 'WebUSB device access failed',
|
|
680
687
|
} as const;
|
|
681
688
|
|
|
682
689
|
export const TypedError = (
|
|
@@ -690,26 +697,6 @@ export const TypedError = (
|
|
|
690
697
|
return new HardwareError({ errorCode: hardwareError, message: message ?? '', params });
|
|
691
698
|
};
|
|
692
699
|
|
|
693
|
-
export const isBleStaleBondHardwareError = (error: unknown): boolean => {
|
|
694
|
-
const code = (error as { errorCode?: unknown })?.errorCode;
|
|
695
|
-
return (
|
|
696
|
-
code === HardwareErrorCode.BleDeviceBondError ||
|
|
697
|
-
code === HardwareErrorCode.BlePeerRemovedPairingInformation ||
|
|
698
|
-
code === HardwareErrorCode.BleBondInvalid
|
|
699
|
-
);
|
|
700
|
-
};
|
|
701
|
-
|
|
702
|
-
export const isBleStaleBondErrorText = (text: string): boolean => {
|
|
703
|
-
const value = text.toLowerCase();
|
|
704
|
-
return (
|
|
705
|
-
value.includes('encryption is insufficient') ||
|
|
706
|
-
value.includes('insufficient encryption') ||
|
|
707
|
-
value.includes('peer removed pairing information') ||
|
|
708
|
-
value.includes('cberrordomain:14') ||
|
|
709
|
-
value.includes('gatt_insuf_authentication')
|
|
710
|
-
);
|
|
711
|
-
};
|
|
712
|
-
|
|
713
700
|
export const serializeError = (payload: any) => {
|
|
714
701
|
if (payload && payload.error instanceof HardwareError) {
|
|
715
702
|
return {
|
package/src/constants.ts
CHANGED
|
@@ -43,6 +43,7 @@ export const isKnownTrezorWebUsbDevice = (descriptor: WebUsbIdentityDescriptor):
|
|
|
43
43
|
* These errors indicate the device is in an invalid state and needs to be released
|
|
44
44
|
*/
|
|
45
45
|
export const ERROR_CODES_REQUIRE_RELEASE = [
|
|
46
|
+
HardwareErrorCode.WebUsbDeviceAccessError,
|
|
46
47
|
HardwareErrorCode.DeviceInitializeFailed,
|
|
47
48
|
HardwareErrorCode.DeviceInterruptedFromOutside,
|
|
48
49
|
HardwareErrorCode.DeviceInterruptedFromUser,
|
|
@@ -58,6 +59,7 @@ export const ERROR_CODES_REQUIRE_RELEASE = [
|
|
|
58
59
|
* These errors indicate a communication failure that requires full reconnection
|
|
59
60
|
*/
|
|
60
61
|
export const ERROR_CODES_REQUIRE_DISCONNECT = [
|
|
62
|
+
HardwareErrorCode.WebUsbDeviceAccessError,
|
|
61
63
|
HardwareErrorCode.DeviceInitializeFailed,
|
|
62
64
|
HardwareErrorCode.ResponseUnexpectTypeError,
|
|
63
65
|
] as const;
|