@onekeyfe/hd-shared 1.2.0-alpha.162 → 1.2.0-alpha.163
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/constants.d.ts +0 -2
- package/dist/constants.d.ts.map +1 -1
- package/dist/index.d.ts +1 -11
- package/dist/index.js +0 -22
- package/package.json +2 -2
- package/src/constants.test.ts +0 -39
- package/src/constants.ts +0 -30
package/dist/constants.d.ts
CHANGED
|
@@ -74,8 +74,6 @@ export declare const createKnownBleUuidAliases: (uuid: string) => ReadonlySet<st
|
|
|
74
74
|
export declare const matchesKnownBleUuid: (actualUuid: string | null | undefined, aliases: ReadonlySet<string>) => boolean;
|
|
75
75
|
export declare const isPro2FindMyAdvertisementName: (value?: string | null) => boolean;
|
|
76
76
|
export declare const normalizePro2FindMyAdvertisementName: (value: string) => string;
|
|
77
|
-
export declare const canonicalizePro2BleAdvertisementName: (value: string) => string;
|
|
78
|
-
export declare const isSameOnekeyBleName: (left?: string | null, right?: string | null) => boolean;
|
|
79
77
|
export declare const hasOnekeyCommunicationService: (serviceUuids: Array<string | null | undefined> | null | undefined) => boolean;
|
|
80
78
|
export declare const isOnekeyBluetoothDevice: ({ id, name, localName, serviceUuids, }: BluetoothDeviceIdentity) => boolean;
|
|
81
79
|
export {};
|
package/dist/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -92,16 +92,6 @@ declare const createKnownBleUuidAliases: (uuid: string) => ReadonlySet<string>;
|
|
|
92
92
|
declare const matchesKnownBleUuid: (actualUuid: string | null | undefined, aliases: ReadonlySet<string>) => boolean;
|
|
93
93
|
declare const isPro2FindMyAdvertisementName: (value?: string | null) => boolean;
|
|
94
94
|
declare const normalizePro2FindMyAdvertisementName: (value: string) => string;
|
|
95
|
-
/**
|
|
96
|
-
* Current Pro2 advertisements use "Pro 2 XXXX". Older firmware used "Pro2 XXXX".
|
|
97
|
-
* Discovery and DeviceInfo both go through this helper so the public BLE name
|
|
98
|
-
* stays on the spaced form without changing OneKey Pro / Neo names.
|
|
99
|
-
*
|
|
100
|
-
* Match the compact Pro2 form first. A leading "Pro 2" regex would also eat the
|
|
101
|
-
* first digit of a OneKey Pro suffix such as "Pro 22D8" or "Pro 2D8F".
|
|
102
|
-
*/
|
|
103
|
-
declare const canonicalizePro2BleAdvertisementName: (value: string) => string;
|
|
104
|
-
declare const isSameOnekeyBleName: (left?: string | null, right?: string | null) => boolean;
|
|
105
95
|
declare const hasOnekeyCommunicationService: (serviceUuids: Array<string | null | undefined> | null | undefined) => boolean;
|
|
106
96
|
declare const isOnekeyBluetoothDevice: ({ id, name, localName, serviceUuids, }: BluetoothDeviceIdentity) => boolean;
|
|
107
97
|
|
|
@@ -568,4 +558,4 @@ declare enum EDeviceType {
|
|
|
568
558
|
Neo = "neo"
|
|
569
559
|
}
|
|
570
560
|
|
|
571
|
-
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,
|
|
561
|
+
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, createDefectiveFirmwareError, createDeferred, createDeprecatedHardwareError, createDeviceNotSupportMethodError, createKnownBleUuidAliases, createNeedUpgradeFirmwareHardwareError, createNewFirmwareForceUpdateHardwareError, createNewFirmwareUnReleaseHardwareError, hasOnekeyCommunicationService, inferProtocolHintFromUsbId, isHeaderChunk, isKnownTrezorWebUsbDevice, isOnekeyBluetoothDevice, isOnekeyDevice, isPro2FindMyAdvertisementName, matchesKnownBleUuid, normalizeBleUuid, normalizePro2FindMyAdvertisementName, resolveOneKeyUsbDevicePath, serializeError, wait };
|
package/dist/index.js
CHANGED
|
@@ -601,26 +601,6 @@ const normalizePro2FindMyAdvertisementName = (value) => {
|
|
|
601
601
|
}
|
|
602
602
|
return value;
|
|
603
603
|
};
|
|
604
|
-
const canonicalizePro2BleAdvertisementName = (value) => {
|
|
605
|
-
const withoutFindMy = normalizePro2FindMyAdvertisementName(value);
|
|
606
|
-
const compact = compactBleName(withoutFindMy);
|
|
607
|
-
if (!PRO2_COMPACT_NAME_PATTERN.test(compact))
|
|
608
|
-
return withoutFindMy;
|
|
609
|
-
const match = withoutFindMy.match(/^(onekey\s*)?pro\s*2\s*/i);
|
|
610
|
-
if (!match)
|
|
611
|
-
return withoutFindMy;
|
|
612
|
-
const rest = withoutFindMy.slice(match[0].length);
|
|
613
|
-
const prefix = match[1] ? 'OneKey Pro 2' : 'Pro 2';
|
|
614
|
-
return rest ? `${prefix} ${rest}` : prefix;
|
|
615
|
-
};
|
|
616
|
-
const isSameOnekeyBleName = (left, right) => {
|
|
617
|
-
if (!left || !right)
|
|
618
|
-
return false;
|
|
619
|
-
if (left === right)
|
|
620
|
-
return true;
|
|
621
|
-
return (compactBleName(canonicalizePro2BleAdvertisementName(left)) ===
|
|
622
|
-
compactBleName(canonicalizePro2BleAdvertisementName(right)));
|
|
623
|
-
};
|
|
624
604
|
const hasOnekeyCommunicationService = (serviceUuids) => (serviceUuids !== null && serviceUuids !== void 0 ? serviceUuids : []).some(uuid => matchesKnownBleUuid(uuid, ONEKEY_COMMUNICATION_SERVICE_ALIASES));
|
|
625
605
|
const isOnekeyBluetoothDevice = ({ id, name, localName, serviceUuids, }) => {
|
|
626
606
|
const advertisedServiceUuids = serviceUuids !== null && serviceUuids !== void 0 ? serviceUuids : [];
|
|
@@ -725,7 +705,6 @@ exports.ONEKEY_SERVICE_UUID = ONEKEY_SERVICE_UUID;
|
|
|
725
705
|
exports.ONEKEY_WEBUSB_FILTER = ONEKEY_WEBUSB_FILTER;
|
|
726
706
|
exports.ONEKEY_WRITE_CHARACTERISTIC_UUID = ONEKEY_WRITE_CHARACTERISTIC_UUID;
|
|
727
707
|
exports.TypedError = TypedError;
|
|
728
|
-
exports.canonicalizePro2BleAdvertisementName = canonicalizePro2BleAdvertisementName;
|
|
729
708
|
exports.createDefectiveFirmwareError = createDefectiveFirmwareError;
|
|
730
709
|
exports.createDeferred = createDeferred;
|
|
731
710
|
exports.createDeprecatedHardwareError = createDeprecatedHardwareError;
|
|
@@ -741,7 +720,6 @@ exports.isKnownTrezorWebUsbDevice = isKnownTrezorWebUsbDevice;
|
|
|
741
720
|
exports.isOnekeyBluetoothDevice = isOnekeyBluetoothDevice;
|
|
742
721
|
exports.isOnekeyDevice = isOnekeyDevice;
|
|
743
722
|
exports.isPro2FindMyAdvertisementName = isPro2FindMyAdvertisementName;
|
|
744
|
-
exports.isSameOnekeyBleName = isSameOnekeyBleName;
|
|
745
723
|
exports.matchesKnownBleUuid = matchesKnownBleUuid;
|
|
746
724
|
exports.normalizeBleUuid = normalizeBleUuid;
|
|
747
725
|
exports.normalizePro2FindMyAdvertisementName = normalizePro2FindMyAdvertisementName;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@onekeyfe/hd-shared",
|
|
3
|
-
"version": "1.2.0-alpha.
|
|
3
|
+
"version": "1.2.0-alpha.163",
|
|
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": "afed1c82345fc277cadf49677ab8371e6c6f3f9a"
|
|
30
30
|
}
|
package/src/constants.test.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import {
|
|
2
|
-
canonicalizePro2BleAdvertisementName,
|
|
3
2
|
createKnownBleUuidAliases,
|
|
4
3
|
hasOnekeyCommunicationService,
|
|
5
4
|
inferProtocolHintFromUsbId,
|
|
@@ -7,7 +6,6 @@ import {
|
|
|
7
6
|
isOnekeyBluetoothDevice,
|
|
8
7
|
isOnekeyDevice,
|
|
9
8
|
isPro2FindMyAdvertisementName,
|
|
10
|
-
isSameOnekeyBleName,
|
|
11
9
|
matchesKnownBleUuid,
|
|
12
10
|
normalizePro2FindMyAdvertisementName,
|
|
13
11
|
resolveOneKeyUsbDevicePath,
|
|
@@ -19,9 +17,7 @@ describe('hardware device identity filters', () => {
|
|
|
19
17
|
expect(isOnekeyDevice('Pro A1B2')).toBe(true);
|
|
20
18
|
expect(isOnekeyDevice('Neo A1B2')).toBe(true);
|
|
21
19
|
expect(isOnekeyDevice('Pro2A1B2')).toBe(true);
|
|
22
|
-
expect(isOnekeyDevice('Pro 2 A1B2')).toBe(true);
|
|
23
20
|
expect(isOnekeyDevice('OneKeyPro2A1B2')).toBe(true);
|
|
24
|
-
expect(isOnekeyDevice('OneKey Pro 2 A1B2')).toBe(true);
|
|
25
21
|
expect(isOnekeyDevice('Neo22D8')).toBe(true);
|
|
26
22
|
expect(isOnekeyDevice('K1234')).toBe(true);
|
|
27
23
|
expect(isOnekeyDevice('S8')).toBe(true);
|
|
@@ -46,12 +42,6 @@ describe('hardware device identity filters', () => {
|
|
|
46
42
|
serviceUuids: ['0001', 'fffd'],
|
|
47
43
|
})
|
|
48
44
|
).toBe(true);
|
|
49
|
-
expect(
|
|
50
|
-
isOnekeyBluetoothDevice({
|
|
51
|
-
name: 'Pro 2 A1B2',
|
|
52
|
-
serviceUuids: ['0001', 'fffd'],
|
|
53
|
-
})
|
|
54
|
-
).toBe(true);
|
|
55
45
|
expect(
|
|
56
46
|
isOnekeyBluetoothDevice({
|
|
57
47
|
localName: 'Pro2 A1B2 - Find My',
|
|
@@ -114,35 +104,6 @@ describe('hardware device identity filters', () => {
|
|
|
114
104
|
expect(normalizePro2FindMyAdvertisementName(name)).toBe(expected);
|
|
115
105
|
});
|
|
116
106
|
|
|
117
|
-
it.each([
|
|
118
|
-
['Pro2 A1B2', 'Pro 2 A1B2'],
|
|
119
|
-
['Pro2A1B2', 'Pro 2 A1B2'],
|
|
120
|
-
['Pro 2 A1B2', 'Pro 2 A1B2'],
|
|
121
|
-
['Pro 2 0088', 'Pro 2 0088'],
|
|
122
|
-
['Pro2 22D8 - Find My', 'Pro 2 22D8'],
|
|
123
|
-
['Pro 2 A1B2 - Find My', 'Pro 2 A1B2'],
|
|
124
|
-
['OneKeyPro2A1B2', 'OneKey Pro 2 A1B2'],
|
|
125
|
-
['OneKey Pro 2 A1B2', 'OneKey Pro 2 A1B2'],
|
|
126
|
-
['OneKey Pro 2', 'OneKey Pro 2'],
|
|
127
|
-
['Pro A1B2', 'Pro A1B2'],
|
|
128
|
-
['Pro 22D8', 'Pro 22D8'],
|
|
129
|
-
['Pro 2D8F', 'Pro 2D8F'],
|
|
130
|
-
['OneKey Pro 22D8', 'OneKey Pro 22D8'],
|
|
131
|
-
['Neo 22D8', 'Neo 22D8'],
|
|
132
|
-
])('canonicalizes the public Pro2 advertisement name %s', (name, expected) => {
|
|
133
|
-
expect(canonicalizePro2BleAdvertisementName(name)).toBe(expected);
|
|
134
|
-
});
|
|
135
|
-
|
|
136
|
-
it('treats compact and spaced Pro2 BLE names as the same device', () => {
|
|
137
|
-
expect(isSameOnekeyBleName('Pro2 6136', 'Pro 2 6136')).toBe(true);
|
|
138
|
-
expect(isSameOnekeyBleName('Pro2 6136 - Find My', 'Pro 2 6136')).toBe(true);
|
|
139
|
-
expect(isSameOnekeyBleName('Pro 2 6136', 'Pro 2 0088')).toBe(false);
|
|
140
|
-
expect(isSameOnekeyBleName('Pro A1B2', 'Pro 2 A1B2')).toBe(false);
|
|
141
|
-
expect(isSameOnekeyBleName('Pro 22D8', 'Pro 22D8')).toBe(true);
|
|
142
|
-
expect(isSameOnekeyBleName('Pro 22D8', 'Pro2 22D8')).toBe(false);
|
|
143
|
-
expect(isSameOnekeyBleName('Pro 22D8', 'Pro 2 22D8')).toBe(false);
|
|
144
|
-
});
|
|
145
|
-
|
|
146
107
|
it('keeps OneKey discovery on the communication service', () => {
|
|
147
108
|
expect(
|
|
148
109
|
isOnekeyBluetoothDevice({
|
package/src/constants.ts
CHANGED
|
@@ -307,36 +307,6 @@ export const normalizePro2FindMyAdvertisementName = (value: string) => {
|
|
|
307
307
|
return value;
|
|
308
308
|
};
|
|
309
309
|
|
|
310
|
-
/**
|
|
311
|
-
* Current Pro2 advertisements use "Pro 2 XXXX". Older firmware used "Pro2 XXXX".
|
|
312
|
-
* Discovery and DeviceInfo both go through this helper so the public BLE name
|
|
313
|
-
* stays on the spaced form without changing OneKey Pro / Neo names.
|
|
314
|
-
*
|
|
315
|
-
* Match the compact Pro2 form first. A leading "Pro 2" regex would also eat the
|
|
316
|
-
* first digit of a OneKey Pro suffix such as "Pro 22D8" or "Pro 2D8F".
|
|
317
|
-
*/
|
|
318
|
-
export const canonicalizePro2BleAdvertisementName = (value: string) => {
|
|
319
|
-
const withoutFindMy = normalizePro2FindMyAdvertisementName(value);
|
|
320
|
-
const compact = compactBleName(withoutFindMy);
|
|
321
|
-
if (!PRO2_COMPACT_NAME_PATTERN.test(compact)) return withoutFindMy;
|
|
322
|
-
|
|
323
|
-
const match = withoutFindMy.match(/^(onekey\s*)?pro\s*2\s*/i);
|
|
324
|
-
if (!match) return withoutFindMy;
|
|
325
|
-
|
|
326
|
-
const rest = withoutFindMy.slice(match[0].length);
|
|
327
|
-
const prefix = match[1] ? 'OneKey Pro 2' : 'Pro 2';
|
|
328
|
-
return rest ? `${prefix} ${rest}` : prefix;
|
|
329
|
-
};
|
|
330
|
-
|
|
331
|
-
export const isSameOnekeyBleName = (left?: string | null, right?: string | null) => {
|
|
332
|
-
if (!left || !right) return false;
|
|
333
|
-
if (left === right) return true;
|
|
334
|
-
return (
|
|
335
|
-
compactBleName(canonicalizePro2BleAdvertisementName(left)) ===
|
|
336
|
-
compactBleName(canonicalizePro2BleAdvertisementName(right))
|
|
337
|
-
);
|
|
338
|
-
};
|
|
339
|
-
|
|
340
310
|
export const hasOnekeyCommunicationService = (
|
|
341
311
|
serviceUuids: Array<string | null | undefined> | null | undefined
|
|
342
312
|
) =>
|