@onekeyfe/hd-transport-react-native 1.1.27-alpha.39 → 1.1.27-alpha.40
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/index.d.ts.map +1 -1
- package/dist/index.js +26 -14
- package/package.json +5 -5
- package/src/index.ts +28 -14
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAIL,UAAU,IAAI,aAAa,EAE5B,MAAM,sBAAsB,CAAC;AAE9B,OAAO,SAAS,EAAE,EAEhB,KAAK,oBAAoB,EAGzB,KAAK,YAAY,EAGjB,KAAK,oBAAoB,EAE1B,MAAM,wBAAwB,CAAC;AAuBhC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACjF,OAAO,KAAK,YAAY,MAAM,QAAQ,CAAC;AACvC,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAsBjE,MAAM,MAAM,mBAAmB,GAAG;IAChC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,2BAA2B,CAAC,EAAE,OAAO,CAAC;CACvC,CAAC;AAqBF,wBAAgB,4BAA4B,CAAC,MAAM,GAAE,mBAAwB,QA0B5E;AAED,wBAAgB,wBAAwB,SAGvC;AAED,wBAAgB,sBAAsB;;;;;;;EAErC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -325,8 +325,9 @@ function hasKnownOneKeyService(device) {
|
|
|
325
325
|
var _a;
|
|
326
326
|
return ((_a = device === null || device === void 0 ? void 0 : device.serviceUUIDs) !== null && _a !== void 0 ? _a : []).some(serviceUuid => getInfosForServiceUuid(serviceUuid, 'classic'));
|
|
327
327
|
}
|
|
328
|
+
const ANDROID_REQUEST_MTU = 256;
|
|
328
329
|
const connectOptions = {
|
|
329
|
-
requestMTU:
|
|
330
|
+
requestMTU: ANDROID_REQUEST_MTU,
|
|
330
331
|
timeout: 3000,
|
|
331
332
|
refreshGatt: 'OnConnected',
|
|
332
333
|
};
|
|
@@ -341,6 +342,22 @@ const tryToGetConfiguration = (device) => {
|
|
|
341
342
|
return null;
|
|
342
343
|
return infos;
|
|
343
344
|
};
|
|
345
|
+
const requestAndroidMtu = (device) => __awaiter(void 0, void 0, void 0, function* () {
|
|
346
|
+
if (reactNative.Platform.OS !== 'android')
|
|
347
|
+
return device;
|
|
348
|
+
try {
|
|
349
|
+
const mtuDevice = yield device.requestMTU(ANDROID_REQUEST_MTU);
|
|
350
|
+
Log === null || Log === void 0 ? void 0 : Log.debug('[ReactNativeBleTransport] Android MTU requested:', {
|
|
351
|
+
requested: ANDROID_REQUEST_MTU,
|
|
352
|
+
mtu: mtuDevice.mtu,
|
|
353
|
+
});
|
|
354
|
+
return mtuDevice;
|
|
355
|
+
}
|
|
356
|
+
catch (error) {
|
|
357
|
+
Log === null || Log === void 0 ? void 0 : Log.debug('[ReactNativeBleTransport] Android MTU request failed:', error);
|
|
358
|
+
return device;
|
|
359
|
+
}
|
|
360
|
+
});
|
|
344
361
|
function remapError(error) {
|
|
345
362
|
var _a;
|
|
346
363
|
if (error instanceof reactNativeBlePlx.BleError) {
|
|
@@ -611,6 +628,7 @@ class ReactNativeBleTransport {
|
|
|
611
628
|
}
|
|
612
629
|
}
|
|
613
630
|
}
|
|
631
|
+
device = yield requestAndroidMtu(device);
|
|
614
632
|
yield device.discoverAllServicesAndCharacteristics();
|
|
615
633
|
let infos = tryToGetConfiguration(device);
|
|
616
634
|
let characteristics;
|
|
@@ -1137,22 +1155,16 @@ class ReactNativeBleTransport {
|
|
|
1137
1155
|
throw this.createProtocolMismatchError(expectedProtocol);
|
|
1138
1156
|
}
|
|
1139
1157
|
if (expectedProtocol === 'V2') {
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
return 'V2';
|
|
1144
|
-
}
|
|
1145
|
-
throw this.createProtocolMismatchError(expectedProtocol);
|
|
1158
|
+
this.deviceProtocol.set(uuid, 'V2');
|
|
1159
|
+
Log === null || Log === void 0 ? void 0 : Log.debug(`[ReactNativeBleTransport] detectProtocol: uuid=${uuid} -> V2 (expected)`);
|
|
1160
|
+
return 'V2';
|
|
1146
1161
|
}
|
|
1147
1162
|
if (protocolHint === 'V2') {
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
return 'V2';
|
|
1152
|
-
}
|
|
1153
|
-
throw this.createProtocolMismatchError('V2');
|
|
1163
|
+
this.deviceProtocol.set(uuid, 'V2');
|
|
1164
|
+
Log === null || Log === void 0 ? void 0 : Log.debug(`[ReactNativeBleTransport] detectProtocol: uuid=${uuid} -> V2 (hint)`);
|
|
1165
|
+
return 'V2';
|
|
1154
1166
|
}
|
|
1155
|
-
if (this.deviceProtocol.get(uuid) === 'V2'
|
|
1167
|
+
if (this.deviceProtocol.get(uuid) === 'V2') {
|
|
1156
1168
|
this.deviceProtocol.set(uuid, 'V2');
|
|
1157
1169
|
Log === null || Log === void 0 ? void 0 : Log.debug(`[ReactNativeBleTransport] detectProtocol: uuid=${uuid} -> V2 (cached)`);
|
|
1158
1170
|
return 'V2';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@onekeyfe/hd-transport-react-native",
|
|
3
|
-
"version": "1.1.27-alpha.
|
|
3
|
+
"version": "1.1.27-alpha.40",
|
|
4
4
|
"homepage": "https://github.com/OneKeyHQ/hardware-js-sdk#readme",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -19,11 +19,11 @@
|
|
|
19
19
|
"lint:fix": "eslint . --fix"
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@onekeyfe/hd-core": "1.1.27-alpha.
|
|
23
|
-
"@onekeyfe/hd-shared": "1.1.27-alpha.
|
|
24
|
-
"@onekeyfe/hd-transport": "1.1.27-alpha.
|
|
22
|
+
"@onekeyfe/hd-core": "1.1.27-alpha.40",
|
|
23
|
+
"@onekeyfe/hd-shared": "1.1.27-alpha.40",
|
|
24
|
+
"@onekeyfe/hd-transport": "1.1.27-alpha.40",
|
|
25
25
|
"@onekeyfe/react-native-ble-utils": "^0.1.4",
|
|
26
26
|
"react-native-ble-plx": "3.5.1"
|
|
27
27
|
},
|
|
28
|
-
"gitHead": "
|
|
28
|
+
"gitHead": "484f6253dd8c776fc4037f5da171c8f2226baea6"
|
|
29
29
|
}
|
package/src/index.ts
CHANGED
|
@@ -149,8 +149,10 @@ function hasKnownOneKeyService(device?: Device | null) {
|
|
|
149
149
|
);
|
|
150
150
|
}
|
|
151
151
|
|
|
152
|
+
const ANDROID_REQUEST_MTU = 256;
|
|
153
|
+
|
|
152
154
|
const connectOptions: Record<string, unknown> = {
|
|
153
|
-
requestMTU:
|
|
155
|
+
requestMTU: ANDROID_REQUEST_MTU,
|
|
154
156
|
timeout: 3000,
|
|
155
157
|
refreshGatt: 'OnConnected',
|
|
156
158
|
};
|
|
@@ -166,6 +168,22 @@ const tryToGetConfiguration = (device: Device) => {
|
|
|
166
168
|
return infos;
|
|
167
169
|
};
|
|
168
170
|
|
|
171
|
+
const requestAndroidMtu = async (device: Device) => {
|
|
172
|
+
if (Platform.OS !== 'android') return device;
|
|
173
|
+
|
|
174
|
+
try {
|
|
175
|
+
const mtuDevice = await device.requestMTU(ANDROID_REQUEST_MTU);
|
|
176
|
+
Log?.debug('[ReactNativeBleTransport] Android MTU requested:', {
|
|
177
|
+
requested: ANDROID_REQUEST_MTU,
|
|
178
|
+
mtu: mtuDevice.mtu,
|
|
179
|
+
});
|
|
180
|
+
return mtuDevice;
|
|
181
|
+
} catch (error) {
|
|
182
|
+
Log?.debug('[ReactNativeBleTransport] Android MTU request failed:', error);
|
|
183
|
+
return device;
|
|
184
|
+
}
|
|
185
|
+
};
|
|
186
|
+
|
|
169
187
|
type IOBleErrorRemap = Error | BleError | null | undefined;
|
|
170
188
|
|
|
171
189
|
function remapError(error: IOBleErrorRemap) {
|
|
@@ -528,6 +546,8 @@ export default class ReactNativeBleTransport {
|
|
|
528
546
|
}
|
|
529
547
|
}
|
|
530
548
|
|
|
549
|
+
device = await requestAndroidMtu(device);
|
|
550
|
+
|
|
531
551
|
await device.discoverAllServicesAndCharacteristics();
|
|
532
552
|
let infos = tryToGetConfiguration(device);
|
|
533
553
|
let characteristics;
|
|
@@ -1191,24 +1211,18 @@ export default class ReactNativeBleTransport {
|
|
|
1191
1211
|
}
|
|
1192
1212
|
|
|
1193
1213
|
if (expectedProtocol === 'V2') {
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
return 'V2';
|
|
1198
|
-
}
|
|
1199
|
-
throw this.createProtocolMismatchError(expectedProtocol);
|
|
1214
|
+
this.deviceProtocol.set(uuid, 'V2');
|
|
1215
|
+
Log?.debug(`[ReactNativeBleTransport] detectProtocol: uuid=${uuid} -> V2 (expected)`);
|
|
1216
|
+
return 'V2';
|
|
1200
1217
|
}
|
|
1201
1218
|
|
|
1202
1219
|
if (protocolHint === 'V2') {
|
|
1203
|
-
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
return 'V2';
|
|
1207
|
-
}
|
|
1208
|
-
throw this.createProtocolMismatchError('V2');
|
|
1220
|
+
this.deviceProtocol.set(uuid, 'V2');
|
|
1221
|
+
Log?.debug(`[ReactNativeBleTransport] detectProtocol: uuid=${uuid} -> V2 (hint)`);
|
|
1222
|
+
return 'V2';
|
|
1209
1223
|
}
|
|
1210
1224
|
|
|
1211
|
-
if (this.deviceProtocol.get(uuid) === 'V2'
|
|
1225
|
+
if (this.deviceProtocol.get(uuid) === 'V2') {
|
|
1212
1226
|
this.deviceProtocol.set(uuid, 'V2');
|
|
1213
1227
|
Log?.debug(`[ReactNativeBleTransport] detectProtocol: uuid=${uuid} -> V2 (cached)`);
|
|
1214
1228
|
return 'V2';
|