@onekeyfe/hd-web-sdk 0.1.13 → 0.1.17
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/build/iframe.html +1 -1
- package/build/js/iframe.bc96e38a35b7448d677b.js +3 -0
- package/build/js/{iframe.b96245cb401eda8e8824.js.LICENSE.txt → iframe.bc96e38a35b7448d677b.js.LICENSE.txt} +0 -0
- package/build/js/iframe.bc96e38a35b7448d677b.js.map +1 -0
- package/build/onekey-js-sdk.js +634 -507
- package/build/onekey-js-sdk.js.map +1 -1
- package/build/onekey-js-sdk.min.js +1 -1
- package/build/onekey-js-sdk.min.js.map +1 -1
- package/dist/iframe/index.d.ts.map +1 -1
- package/dist/iframe/index.js +1 -1
- package/dist/iframe/index.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +16 -4
- package/dist/index.js.map +1 -1
- package/dist/utils/bridgeUtils.d.ts.map +1 -1
- package/dist/utils/bridgeUtils.js +9 -4
- package/dist/utils/bridgeUtils.js.map +1 -1
- package/package.json +5 -5
- package/src/iframe/index.ts +3 -2
- package/src/index.ts +21 -6
- package/src/utils/bridgeUtils.ts +10 -5
- package/build/js/iframe.b96245cb401eda8e8824.js +0 -3
- package/build/js/iframe.b96245cb401eda8e8824.js.map +0 -1
package/build/onekey-js-sdk.js
CHANGED
|
@@ -4072,6 +4072,9 @@ const inject = ({
|
|
|
4072
4072
|
dispose,
|
|
4073
4073
|
uiResponse,
|
|
4074
4074
|
cancel,
|
|
4075
|
+
getLogs: () => call({
|
|
4076
|
+
method: 'getLogs'
|
|
4077
|
+
}),
|
|
4075
4078
|
searchDevices: () => call({
|
|
4076
4079
|
method: 'searchDevices'
|
|
4077
4080
|
}),
|
|
@@ -4785,337 +4788,6 @@ function eventTargetAgnosticAddListener(emitter, name, listener, flags) {
|
|
|
4785
4788
|
}
|
|
4786
4789
|
}
|
|
4787
4790
|
|
|
4788
|
-
const httpRequest$1 = (url, type = 'text') => __awaiter(void 0, void 0, void 0, function* () {
|
|
4789
|
-
const response = yield axios__default["default"].request({
|
|
4790
|
-
url,
|
|
4791
|
-
withCredentials: false,
|
|
4792
|
-
responseType: type === 'binary' ? 'arraybuffer' : 'json'
|
|
4793
|
-
});
|
|
4794
|
-
|
|
4795
|
-
if (+response.status === 200) {
|
|
4796
|
-
if (type === 'json') {
|
|
4797
|
-
return response.data;
|
|
4798
|
-
}
|
|
4799
|
-
|
|
4800
|
-
if (type === 'binary') {
|
|
4801
|
-
return response.data;
|
|
4802
|
-
}
|
|
4803
|
-
|
|
4804
|
-
return response.data;
|
|
4805
|
-
}
|
|
4806
|
-
|
|
4807
|
-
throw new Error(`httpRequest error: ${url} ${response.statusText}`);
|
|
4808
|
-
});
|
|
4809
|
-
|
|
4810
|
-
const httpRequest = (url, type) => httpRequest$1(url, type);
|
|
4811
|
-
|
|
4812
|
-
const getTimeStamp = () => new Date().getTime();
|
|
4813
|
-
|
|
4814
|
-
const VER_NUMS = 3;
|
|
4815
|
-
const versionRegex = new RegExp(/^[0-9]{1,3}(\.[0-9]{1,3}){0,2}$/);
|
|
4816
|
-
|
|
4817
|
-
const isValidVersionString = version => versionRegex.test(version);
|
|
4818
|
-
|
|
4819
|
-
const isValidVersionArray = version => {
|
|
4820
|
-
if (!Array.isArray(version)) {
|
|
4821
|
-
return false;
|
|
4822
|
-
}
|
|
4823
|
-
|
|
4824
|
-
if (version.length === 0 || version.length > VER_NUMS) {
|
|
4825
|
-
return false;
|
|
4826
|
-
}
|
|
4827
|
-
|
|
4828
|
-
if (version[0] === 0) {
|
|
4829
|
-
return false;
|
|
4830
|
-
}
|
|
4831
|
-
|
|
4832
|
-
for (let i = 0; i < version.length; i++) {
|
|
4833
|
-
if (typeof version[i] !== 'number' || version[i] < 0) {
|
|
4834
|
-
return false;
|
|
4835
|
-
}
|
|
4836
|
-
}
|
|
4837
|
-
|
|
4838
|
-
return true;
|
|
4839
|
-
};
|
|
4840
|
-
|
|
4841
|
-
const normalizeVersionArray = version => {
|
|
4842
|
-
if (version.length === VER_NUMS) {
|
|
4843
|
-
return version;
|
|
4844
|
-
}
|
|
4845
|
-
|
|
4846
|
-
const partialVersion = [...version];
|
|
4847
|
-
|
|
4848
|
-
for (let i = version.length; i < VER_NUMS; i++) {
|
|
4849
|
-
partialVersion.push(0);
|
|
4850
|
-
}
|
|
4851
|
-
|
|
4852
|
-
return partialVersion;
|
|
4853
|
-
};
|
|
4854
|
-
|
|
4855
|
-
const versionSplit = version => {
|
|
4856
|
-
if (!isValidVersionString(version)) {
|
|
4857
|
-
return [0, 0, 0];
|
|
4858
|
-
}
|
|
4859
|
-
|
|
4860
|
-
return version.split('.').map(v => Number(v));
|
|
4861
|
-
};
|
|
4862
|
-
|
|
4863
|
-
const versionCompare = (a, b) => {
|
|
4864
|
-
if (typeof a === 'string' && typeof b === 'string' && a === b) {
|
|
4865
|
-
return 0;
|
|
4866
|
-
}
|
|
4867
|
-
|
|
4868
|
-
const pa = typeof a === 'string' ? versionSplit(a) : a;
|
|
4869
|
-
const pb = typeof b === 'string' ? versionSplit(b) : b;
|
|
4870
|
-
const vpa = isValidVersionArray(pa);
|
|
4871
|
-
const vpb = isValidVersionArray(pb);
|
|
4872
|
-
|
|
4873
|
-
if (!vpa && !vpb) {
|
|
4874
|
-
return 0;
|
|
4875
|
-
}
|
|
4876
|
-
|
|
4877
|
-
if (!vpa && vpb) {
|
|
4878
|
-
return -1;
|
|
4879
|
-
}
|
|
4880
|
-
|
|
4881
|
-
if (vpa && !vpb) {
|
|
4882
|
-
return 1;
|
|
4883
|
-
}
|
|
4884
|
-
|
|
4885
|
-
const npa = normalizeVersionArray(pa);
|
|
4886
|
-
const npb = normalizeVersionArray(pb);
|
|
4887
|
-
|
|
4888
|
-
for (let i = 0; i < VER_NUMS; i++) {
|
|
4889
|
-
if (npa[i] > npb[i]) return 1;
|
|
4890
|
-
if (npb[i] > npa[i]) return -1;
|
|
4891
|
-
}
|
|
4892
|
-
|
|
4893
|
-
return 0;
|
|
4894
|
-
};
|
|
4895
|
-
|
|
4896
|
-
function patchFeatures(response) {
|
|
4897
|
-
if (response.type !== 'Features') {
|
|
4898
|
-
return response;
|
|
4899
|
-
}
|
|
4900
|
-
|
|
4901
|
-
if (response.message.major_version < 1) {
|
|
4902
|
-
response.message.major_version = 1;
|
|
4903
|
-
}
|
|
4904
|
-
|
|
4905
|
-
return response;
|
|
4906
|
-
}
|
|
4907
|
-
|
|
4908
|
-
const getDeviceModel = features => {
|
|
4909
|
-
if (!features || typeof features !== 'object') {
|
|
4910
|
-
return 'model_mini';
|
|
4911
|
-
}
|
|
4912
|
-
|
|
4913
|
-
if (features.model === '1') {
|
|
4914
|
-
return 'model_mini';
|
|
4915
|
-
}
|
|
4916
|
-
|
|
4917
|
-
return 'model_touch';
|
|
4918
|
-
};
|
|
4919
|
-
|
|
4920
|
-
const getDeviceType = features => {
|
|
4921
|
-
if (!features || typeof features !== 'object' || !features.serial_no) {
|
|
4922
|
-
return 'classic';
|
|
4923
|
-
}
|
|
4924
|
-
|
|
4925
|
-
const serialNo = features.serial_no;
|
|
4926
|
-
const miniFlag = serialNo.slice(0, 2);
|
|
4927
|
-
if (miniFlag.toLowerCase() === 'mi') return 'mini';
|
|
4928
|
-
if (miniFlag.toLowerCase() === 'tc') return 'touch';
|
|
4929
|
-
return 'classic';
|
|
4930
|
-
};
|
|
4931
|
-
|
|
4932
|
-
const getDeviceTypeOnBootloader = features => {
|
|
4933
|
-
if (!features || typeof features !== 'object') {
|
|
4934
|
-
return 'classic';
|
|
4935
|
-
}
|
|
4936
|
-
|
|
4937
|
-
if (features.model === 'T') {
|
|
4938
|
-
return 'touch';
|
|
4939
|
-
}
|
|
4940
|
-
|
|
4941
|
-
return getDeviceType(features);
|
|
4942
|
-
};
|
|
4943
|
-
|
|
4944
|
-
const getDeviceTypeByBleName = name => {
|
|
4945
|
-
if (!name) return 'classic';
|
|
4946
|
-
if (name.startsWith('MI')) return 'mini';
|
|
4947
|
-
if (name.startsWith('T')) return 'touch';
|
|
4948
|
-
return 'classic';
|
|
4949
|
-
};
|
|
4950
|
-
|
|
4951
|
-
const getDeviceTypeByDeviceId = deviceId => {
|
|
4952
|
-
if (!deviceId) {
|
|
4953
|
-
return 'classic';
|
|
4954
|
-
}
|
|
4955
|
-
|
|
4956
|
-
const miniFlag = deviceId.slice(0, 2);
|
|
4957
|
-
if (miniFlag.toLowerCase() === 'mi') return 'mini';
|
|
4958
|
-
return 'classic';
|
|
4959
|
-
};
|
|
4960
|
-
|
|
4961
|
-
const getDeviceUUID = features => {
|
|
4962
|
-
const deviceType = getDeviceType(features);
|
|
4963
|
-
|
|
4964
|
-
if (deviceType === 'classic') {
|
|
4965
|
-
return features.onekey_serial;
|
|
4966
|
-
}
|
|
4967
|
-
|
|
4968
|
-
return features.serial_no;
|
|
4969
|
-
};
|
|
4970
|
-
|
|
4971
|
-
const getDeviceLabel = features => {
|
|
4972
|
-
const deviceType = getDeviceType(features);
|
|
4973
|
-
|
|
4974
|
-
if (typeof features.label === 'string') {
|
|
4975
|
-
return features.label;
|
|
4976
|
-
}
|
|
4977
|
-
|
|
4978
|
-
return `My OneKey ${deviceType.charAt(0).toUpperCase() + deviceType.slice(1)}`;
|
|
4979
|
-
};
|
|
4980
|
-
|
|
4981
|
-
const getDeviceFirmwareVersion = features => {
|
|
4982
|
-
if (!features) return [0, 0, 0];
|
|
4983
|
-
|
|
4984
|
-
if (features.onekey_version) {
|
|
4985
|
-
return features.onekey_version.split('.');
|
|
4986
|
-
}
|
|
4987
|
-
|
|
4988
|
-
return [features.major_version, features.minor_version, features.patch_version];
|
|
4989
|
-
};
|
|
4990
|
-
|
|
4991
|
-
const getDeviceBLEFirmwareVersion = features => {
|
|
4992
|
-
if (!features.ble_ver) {
|
|
4993
|
-
return null;
|
|
4994
|
-
}
|
|
4995
|
-
|
|
4996
|
-
return features.ble_ver.split('.');
|
|
4997
|
-
};
|
|
4998
|
-
|
|
4999
|
-
const HD_HARDENED = 0x80000000;
|
|
5000
|
-
|
|
5001
|
-
const toHardened = n => (n | HD_HARDENED) >>> 0;
|
|
5002
|
-
|
|
5003
|
-
const fromHardened = n => (n & ~HD_HARDENED) >>> 0;
|
|
5004
|
-
|
|
5005
|
-
const PATH_NOT_VALID = hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.CallMethodInvalidParameter, 'Not a valid path');
|
|
5006
|
-
const PATH_NEGATIVE_VALUES = hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.CallMethodInvalidParameter, 'Path cannot contain negative values');
|
|
5007
|
-
|
|
5008
|
-
const getHDPath = path => {
|
|
5009
|
-
const parts = path.toLowerCase().split('/');
|
|
5010
|
-
if (parts[0] !== 'm') throw PATH_NOT_VALID;
|
|
5011
|
-
return parts.filter(p => p !== 'm' && p !== '').map(p => {
|
|
5012
|
-
let hardened = false;
|
|
5013
|
-
|
|
5014
|
-
if (p.substr(p.length - 1) === "'") {
|
|
5015
|
-
hardened = true;
|
|
5016
|
-
p = p.substr(0, p.length - 1);
|
|
5017
|
-
}
|
|
5018
|
-
|
|
5019
|
-
let n = parseInt(p);
|
|
5020
|
-
|
|
5021
|
-
if (Number.isNaN(n)) {
|
|
5022
|
-
throw PATH_NOT_VALID;
|
|
5023
|
-
} else if (n < 0) {
|
|
5024
|
-
throw PATH_NEGATIVE_VALUES;
|
|
5025
|
-
}
|
|
5026
|
-
|
|
5027
|
-
if (hardened) {
|
|
5028
|
-
n = toHardened(n);
|
|
5029
|
-
}
|
|
5030
|
-
|
|
5031
|
-
return n;
|
|
5032
|
-
});
|
|
5033
|
-
};
|
|
5034
|
-
|
|
5035
|
-
const isMultisigPath = path => Array.isArray(path) && path[0] === toHardened(48);
|
|
5036
|
-
|
|
5037
|
-
const isSegwitPath = path => Array.isArray(path) && path[0] === toHardened(49);
|
|
5038
|
-
|
|
5039
|
-
const getScriptType = path => {
|
|
5040
|
-
if (!Array.isArray(path) || path.length < 1) return 'SPENDADDRESS';
|
|
5041
|
-
const p1 = fromHardened(path[0]);
|
|
5042
|
-
|
|
5043
|
-
switch (p1) {
|
|
5044
|
-
case 48:
|
|
5045
|
-
return 'SPENDMULTISIG';
|
|
5046
|
-
|
|
5047
|
-
case 49:
|
|
5048
|
-
return 'SPENDP2SHWITNESS';
|
|
5049
|
-
|
|
5050
|
-
case 84:
|
|
5051
|
-
return 'SPENDWITNESS';
|
|
5052
|
-
|
|
5053
|
-
default:
|
|
5054
|
-
return 'SPENDADDRESS';
|
|
5055
|
-
}
|
|
5056
|
-
};
|
|
5057
|
-
|
|
5058
|
-
const getOutputScriptType = path => {
|
|
5059
|
-
if (!Array.isArray(path) || path.length < 1) return 'PAYTOADDRESS';
|
|
5060
|
-
|
|
5061
|
-
if (path[0] === 49) {
|
|
5062
|
-
return 'PAYTOP2SHWITNESS';
|
|
5063
|
-
}
|
|
5064
|
-
|
|
5065
|
-
const p = fromHardened(path[0]);
|
|
5066
|
-
|
|
5067
|
-
switch (p) {
|
|
5068
|
-
case 48:
|
|
5069
|
-
return 'PAYTOMULTISIG';
|
|
5070
|
-
|
|
5071
|
-
case 49:
|
|
5072
|
-
return 'PAYTOP2SHWITNESS';
|
|
5073
|
-
|
|
5074
|
-
case 84:
|
|
5075
|
-
return 'PAYTOWITNESS';
|
|
5076
|
-
|
|
5077
|
-
default:
|
|
5078
|
-
return 'PAYTOADDRESS';
|
|
5079
|
-
}
|
|
5080
|
-
};
|
|
5081
|
-
|
|
5082
|
-
const serializedPath = path => {
|
|
5083
|
-
const pathStr = path.map(p => {
|
|
5084
|
-
if (p & HD_HARDENED) {
|
|
5085
|
-
return `${p & ~HD_HARDENED}'`;
|
|
5086
|
-
}
|
|
5087
|
-
|
|
5088
|
-
return p;
|
|
5089
|
-
}).join('/');
|
|
5090
|
-
return `m/${pathStr}`;
|
|
5091
|
-
};
|
|
5092
|
-
|
|
5093
|
-
const validatePath = (path, length = 0, base = false) => {
|
|
5094
|
-
let valid;
|
|
5095
|
-
|
|
5096
|
-
if (typeof path === 'string') {
|
|
5097
|
-
valid = getHDPath(path);
|
|
5098
|
-
} else if (Array.isArray(path)) {
|
|
5099
|
-
valid = path.map(p => {
|
|
5100
|
-
const n = parseInt(p);
|
|
5101
|
-
|
|
5102
|
-
if (Number.isNaN(n)) {
|
|
5103
|
-
throw PATH_NOT_VALID;
|
|
5104
|
-
} else if (n < 0) {
|
|
5105
|
-
throw PATH_NEGATIVE_VALUES;
|
|
5106
|
-
}
|
|
5107
|
-
|
|
5108
|
-
return n;
|
|
5109
|
-
});
|
|
5110
|
-
} else {
|
|
5111
|
-
valid = undefined;
|
|
5112
|
-
}
|
|
5113
|
-
|
|
5114
|
-
if (!valid) throw PATH_NOT_VALID;
|
|
5115
|
-
if (length > 0 && valid.length < length) throw PATH_NOT_VALID;
|
|
5116
|
-
return base ? valid.splice(0, 3) : valid;
|
|
5117
|
-
};
|
|
5118
|
-
|
|
5119
4791
|
var nested = {
|
|
5120
4792
|
BinanceGetAddress: {
|
|
5121
4793
|
fields: {
|
|
@@ -13776,6 +13448,513 @@ var MessagesJSON = {
|
|
|
13776
13448
|
nested: nested
|
|
13777
13449
|
};
|
|
13778
13450
|
|
|
13451
|
+
const httpRequest$1 = (url, type = 'text') => __awaiter(void 0, void 0, void 0, function* () {
|
|
13452
|
+
const response = yield axios__default["default"].request({
|
|
13453
|
+
url,
|
|
13454
|
+
withCredentials: false,
|
|
13455
|
+
responseType: type === 'binary' ? 'arraybuffer' : 'json'
|
|
13456
|
+
});
|
|
13457
|
+
|
|
13458
|
+
if (+response.status === 200) {
|
|
13459
|
+
if (type === 'json') {
|
|
13460
|
+
return response.data;
|
|
13461
|
+
}
|
|
13462
|
+
|
|
13463
|
+
if (type === 'binary') {
|
|
13464
|
+
return response.data;
|
|
13465
|
+
}
|
|
13466
|
+
|
|
13467
|
+
return response.data;
|
|
13468
|
+
}
|
|
13469
|
+
|
|
13470
|
+
throw new Error(`httpRequest error: ${url} ${response.statusText}`);
|
|
13471
|
+
});
|
|
13472
|
+
|
|
13473
|
+
const httpRequest = (url, type) => httpRequest$1(url, type);
|
|
13474
|
+
|
|
13475
|
+
const getTimeStamp = () => new Date().getTime();
|
|
13476
|
+
|
|
13477
|
+
const VER_NUMS = 3;
|
|
13478
|
+
const versionRegex = new RegExp(/^[0-9]{1,3}(\.[0-9]{1,3}){0,2}$/);
|
|
13479
|
+
|
|
13480
|
+
const isValidVersionString = version => versionRegex.test(version);
|
|
13481
|
+
|
|
13482
|
+
const isValidVersionArray = version => {
|
|
13483
|
+
if (!Array.isArray(version)) {
|
|
13484
|
+
return false;
|
|
13485
|
+
}
|
|
13486
|
+
|
|
13487
|
+
if (version.length === 0 || version.length > VER_NUMS) {
|
|
13488
|
+
return false;
|
|
13489
|
+
}
|
|
13490
|
+
|
|
13491
|
+
if (version[0] === 0) {
|
|
13492
|
+
return false;
|
|
13493
|
+
}
|
|
13494
|
+
|
|
13495
|
+
for (let i = 0; i < version.length; i++) {
|
|
13496
|
+
if (typeof version[i] !== 'number' || version[i] < 0) {
|
|
13497
|
+
return false;
|
|
13498
|
+
}
|
|
13499
|
+
}
|
|
13500
|
+
|
|
13501
|
+
return true;
|
|
13502
|
+
};
|
|
13503
|
+
|
|
13504
|
+
const normalizeVersionArray = version => {
|
|
13505
|
+
if (version.length === VER_NUMS) {
|
|
13506
|
+
return version;
|
|
13507
|
+
}
|
|
13508
|
+
|
|
13509
|
+
const partialVersion = [...version];
|
|
13510
|
+
|
|
13511
|
+
for (let i = version.length; i < VER_NUMS; i++) {
|
|
13512
|
+
partialVersion.push(0);
|
|
13513
|
+
}
|
|
13514
|
+
|
|
13515
|
+
return partialVersion;
|
|
13516
|
+
};
|
|
13517
|
+
|
|
13518
|
+
const versionSplit = version => {
|
|
13519
|
+
if (!isValidVersionString(version)) {
|
|
13520
|
+
return [0, 0, 0];
|
|
13521
|
+
}
|
|
13522
|
+
|
|
13523
|
+
return version.split('.').map(v => Number(v));
|
|
13524
|
+
};
|
|
13525
|
+
|
|
13526
|
+
const versionCompare = (a, b) => {
|
|
13527
|
+
if (typeof a === 'string' && typeof b === 'string' && a === b) {
|
|
13528
|
+
return 0;
|
|
13529
|
+
}
|
|
13530
|
+
|
|
13531
|
+
const pa = typeof a === 'string' ? versionSplit(a) : a;
|
|
13532
|
+
const pb = typeof b === 'string' ? versionSplit(b) : b;
|
|
13533
|
+
const vpa = isValidVersionArray(pa);
|
|
13534
|
+
const vpb = isValidVersionArray(pb);
|
|
13535
|
+
|
|
13536
|
+
if (!vpa && !vpb) {
|
|
13537
|
+
return 0;
|
|
13538
|
+
}
|
|
13539
|
+
|
|
13540
|
+
if (!vpa && vpb) {
|
|
13541
|
+
return -1;
|
|
13542
|
+
}
|
|
13543
|
+
|
|
13544
|
+
if (vpa && !vpb) {
|
|
13545
|
+
return 1;
|
|
13546
|
+
}
|
|
13547
|
+
|
|
13548
|
+
const npa = normalizeVersionArray(pa);
|
|
13549
|
+
const npb = normalizeVersionArray(pb);
|
|
13550
|
+
|
|
13551
|
+
for (let i = 0; i < VER_NUMS; i++) {
|
|
13552
|
+
if (npa[i] > npb[i]) return 1;
|
|
13553
|
+
if (npb[i] > npa[i]) return -1;
|
|
13554
|
+
}
|
|
13555
|
+
|
|
13556
|
+
return 0;
|
|
13557
|
+
};
|
|
13558
|
+
|
|
13559
|
+
function patchFeatures(response) {
|
|
13560
|
+
if (response.type !== 'Features') {
|
|
13561
|
+
return response;
|
|
13562
|
+
}
|
|
13563
|
+
|
|
13564
|
+
if (response.message.major_version < 1) {
|
|
13565
|
+
response.message.major_version = 1;
|
|
13566
|
+
}
|
|
13567
|
+
|
|
13568
|
+
return response;
|
|
13569
|
+
}
|
|
13570
|
+
|
|
13571
|
+
const getDeviceModel = features => {
|
|
13572
|
+
if (!features || typeof features !== 'object') {
|
|
13573
|
+
return 'model_mini';
|
|
13574
|
+
}
|
|
13575
|
+
|
|
13576
|
+
if (features.model === '1') {
|
|
13577
|
+
return 'model_mini';
|
|
13578
|
+
}
|
|
13579
|
+
|
|
13580
|
+
return 'model_touch';
|
|
13581
|
+
};
|
|
13582
|
+
|
|
13583
|
+
const getDeviceType = features => {
|
|
13584
|
+
if (!features || typeof features !== 'object' || !features.serial_no) {
|
|
13585
|
+
return 'classic';
|
|
13586
|
+
}
|
|
13587
|
+
|
|
13588
|
+
const serialNo = features.serial_no;
|
|
13589
|
+
const miniFlag = serialNo.slice(0, 2);
|
|
13590
|
+
if (miniFlag.toLowerCase() === 'mi') return 'mini';
|
|
13591
|
+
if (miniFlag.toLowerCase() === 'tc') return 'touch';
|
|
13592
|
+
return 'classic';
|
|
13593
|
+
};
|
|
13594
|
+
|
|
13595
|
+
const getDeviceTypeOnBootloader = features => getDeviceType(features);
|
|
13596
|
+
|
|
13597
|
+
const getDeviceTypeByBleName = name => {
|
|
13598
|
+
if (!name) return 'classic';
|
|
13599
|
+
if (name.startsWith('MI')) return 'mini';
|
|
13600
|
+
if (name.startsWith('T')) return 'touch';
|
|
13601
|
+
return 'classic';
|
|
13602
|
+
};
|
|
13603
|
+
|
|
13604
|
+
const getDeviceTypeByDeviceId = deviceId => {
|
|
13605
|
+
if (!deviceId) {
|
|
13606
|
+
return 'classic';
|
|
13607
|
+
}
|
|
13608
|
+
|
|
13609
|
+
const miniFlag = deviceId.slice(0, 2);
|
|
13610
|
+
if (miniFlag.toLowerCase() === 'mi') return 'mini';
|
|
13611
|
+
return 'classic';
|
|
13612
|
+
};
|
|
13613
|
+
|
|
13614
|
+
const getDeviceUUID = features => {
|
|
13615
|
+
const deviceType = getDeviceType(features);
|
|
13616
|
+
|
|
13617
|
+
if (deviceType === 'classic') {
|
|
13618
|
+
return features.onekey_serial;
|
|
13619
|
+
}
|
|
13620
|
+
|
|
13621
|
+
return features.serial_no;
|
|
13622
|
+
};
|
|
13623
|
+
|
|
13624
|
+
const getDeviceLabel = features => {
|
|
13625
|
+
const deviceType = getDeviceType(features);
|
|
13626
|
+
|
|
13627
|
+
if (typeof features.label === 'string') {
|
|
13628
|
+
return features.label;
|
|
13629
|
+
}
|
|
13630
|
+
|
|
13631
|
+
return `My OneKey ${deviceType.charAt(0).toUpperCase() + deviceType.slice(1)}`;
|
|
13632
|
+
};
|
|
13633
|
+
|
|
13634
|
+
const getDeviceFirmwareVersion = features => {
|
|
13635
|
+
if (!features) return [0, 0, 0];
|
|
13636
|
+
|
|
13637
|
+
if (features.onekey_version) {
|
|
13638
|
+
return features.onekey_version.split('.');
|
|
13639
|
+
}
|
|
13640
|
+
|
|
13641
|
+
return [features.major_version, features.minor_version, features.patch_version];
|
|
13642
|
+
};
|
|
13643
|
+
|
|
13644
|
+
const getDeviceBLEFirmwareVersion = features => {
|
|
13645
|
+
if (!features.ble_ver) {
|
|
13646
|
+
return null;
|
|
13647
|
+
}
|
|
13648
|
+
|
|
13649
|
+
return features.ble_ver.split('.');
|
|
13650
|
+
};
|
|
13651
|
+
|
|
13652
|
+
const HD_HARDENED = 0x80000000;
|
|
13653
|
+
|
|
13654
|
+
const toHardened = n => (n | HD_HARDENED) >>> 0;
|
|
13655
|
+
|
|
13656
|
+
const fromHardened = n => (n & ~HD_HARDENED) >>> 0;
|
|
13657
|
+
|
|
13658
|
+
const PATH_NOT_VALID = hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.CallMethodInvalidParameter, 'Not a valid path');
|
|
13659
|
+
const PATH_NEGATIVE_VALUES = hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.CallMethodInvalidParameter, 'Path cannot contain negative values');
|
|
13660
|
+
|
|
13661
|
+
const getHDPath = path => {
|
|
13662
|
+
const parts = path.toLowerCase().split('/');
|
|
13663
|
+
if (parts[0] !== 'm') throw PATH_NOT_VALID;
|
|
13664
|
+
return parts.filter(p => p !== 'm' && p !== '').map(p => {
|
|
13665
|
+
let hardened = false;
|
|
13666
|
+
|
|
13667
|
+
if (p.substr(p.length - 1) === "'") {
|
|
13668
|
+
hardened = true;
|
|
13669
|
+
p = p.substr(0, p.length - 1);
|
|
13670
|
+
}
|
|
13671
|
+
|
|
13672
|
+
let n = parseInt(p);
|
|
13673
|
+
|
|
13674
|
+
if (Number.isNaN(n)) {
|
|
13675
|
+
throw PATH_NOT_VALID;
|
|
13676
|
+
} else if (n < 0) {
|
|
13677
|
+
throw PATH_NEGATIVE_VALUES;
|
|
13678
|
+
}
|
|
13679
|
+
|
|
13680
|
+
if (hardened) {
|
|
13681
|
+
n = toHardened(n);
|
|
13682
|
+
}
|
|
13683
|
+
|
|
13684
|
+
return n;
|
|
13685
|
+
});
|
|
13686
|
+
};
|
|
13687
|
+
|
|
13688
|
+
const isMultisigPath = path => Array.isArray(path) && path[0] === toHardened(48);
|
|
13689
|
+
|
|
13690
|
+
const isSegwitPath = path => Array.isArray(path) && path[0] === toHardened(49);
|
|
13691
|
+
|
|
13692
|
+
const getScriptType = path => {
|
|
13693
|
+
if (!Array.isArray(path) || path.length < 1) return 'SPENDADDRESS';
|
|
13694
|
+
const p1 = fromHardened(path[0]);
|
|
13695
|
+
|
|
13696
|
+
switch (p1) {
|
|
13697
|
+
case 48:
|
|
13698
|
+
return 'SPENDMULTISIG';
|
|
13699
|
+
|
|
13700
|
+
case 49:
|
|
13701
|
+
return 'SPENDP2SHWITNESS';
|
|
13702
|
+
|
|
13703
|
+
case 84:
|
|
13704
|
+
return 'SPENDWITNESS';
|
|
13705
|
+
|
|
13706
|
+
default:
|
|
13707
|
+
return 'SPENDADDRESS';
|
|
13708
|
+
}
|
|
13709
|
+
};
|
|
13710
|
+
|
|
13711
|
+
const getOutputScriptType = path => {
|
|
13712
|
+
if (!Array.isArray(path) || path.length < 1) return 'PAYTOADDRESS';
|
|
13713
|
+
|
|
13714
|
+
if (path[0] === 49) {
|
|
13715
|
+
return 'PAYTOP2SHWITNESS';
|
|
13716
|
+
}
|
|
13717
|
+
|
|
13718
|
+
const p = fromHardened(path[0]);
|
|
13719
|
+
|
|
13720
|
+
switch (p) {
|
|
13721
|
+
case 48:
|
|
13722
|
+
return 'PAYTOMULTISIG';
|
|
13723
|
+
|
|
13724
|
+
case 49:
|
|
13725
|
+
return 'PAYTOP2SHWITNESS';
|
|
13726
|
+
|
|
13727
|
+
case 84:
|
|
13728
|
+
return 'PAYTOWITNESS';
|
|
13729
|
+
|
|
13730
|
+
default:
|
|
13731
|
+
return 'PAYTOADDRESS';
|
|
13732
|
+
}
|
|
13733
|
+
};
|
|
13734
|
+
|
|
13735
|
+
const serializedPath = path => {
|
|
13736
|
+
const pathStr = path.map(p => {
|
|
13737
|
+
if (p & HD_HARDENED) {
|
|
13738
|
+
return `${p & ~HD_HARDENED}'`;
|
|
13739
|
+
}
|
|
13740
|
+
|
|
13741
|
+
return p;
|
|
13742
|
+
}).join('/');
|
|
13743
|
+
return `m/${pathStr}`;
|
|
13744
|
+
};
|
|
13745
|
+
|
|
13746
|
+
const validatePath = (path, length = 0, base = false) => {
|
|
13747
|
+
let valid;
|
|
13748
|
+
|
|
13749
|
+
if (typeof path === 'string') {
|
|
13750
|
+
valid = getHDPath(path);
|
|
13751
|
+
} else if (Array.isArray(path)) {
|
|
13752
|
+
valid = path.map(p => {
|
|
13753
|
+
const n = parseInt(p);
|
|
13754
|
+
|
|
13755
|
+
if (Number.isNaN(n)) {
|
|
13756
|
+
throw PATH_NOT_VALID;
|
|
13757
|
+
} else if (n < 0) {
|
|
13758
|
+
throw PATH_NEGATIVE_VALUES;
|
|
13759
|
+
}
|
|
13760
|
+
|
|
13761
|
+
return n;
|
|
13762
|
+
});
|
|
13763
|
+
} else {
|
|
13764
|
+
valid = undefined;
|
|
13765
|
+
}
|
|
13766
|
+
|
|
13767
|
+
if (!valid) throw PATH_NOT_VALID;
|
|
13768
|
+
if (length > 0 && valid.length < length) throw PATH_NOT_VALID;
|
|
13769
|
+
return base ? valid.splice(0, 3) : valid;
|
|
13770
|
+
};
|
|
13771
|
+
|
|
13772
|
+
const LOG_EVENT = 'LOG_EVENT';
|
|
13773
|
+
const LOG = {
|
|
13774
|
+
OUTPUT: 'log-output'
|
|
13775
|
+
};
|
|
13776
|
+
|
|
13777
|
+
const createLogMessage = (type, payload) => ({
|
|
13778
|
+
event: LOG_EVENT,
|
|
13779
|
+
type,
|
|
13780
|
+
payload
|
|
13781
|
+
});
|
|
13782
|
+
|
|
13783
|
+
const MAX_ENTRIES = 500;
|
|
13784
|
+
let postMessage$1;
|
|
13785
|
+
|
|
13786
|
+
class Log$6 {
|
|
13787
|
+
constructor(prefix, enabled) {
|
|
13788
|
+
this.prefix = prefix;
|
|
13789
|
+
this.enabled = enabled;
|
|
13790
|
+
this.messages = [];
|
|
13791
|
+
}
|
|
13792
|
+
|
|
13793
|
+
addMessage(level, prefix, ...args) {
|
|
13794
|
+
this.messages.push({
|
|
13795
|
+
level,
|
|
13796
|
+
prefix,
|
|
13797
|
+
message: args,
|
|
13798
|
+
timestamp: new Date().getTime()
|
|
13799
|
+
});
|
|
13800
|
+
|
|
13801
|
+
if (this.messages.length > MAX_ENTRIES) {
|
|
13802
|
+
this.messages.shift();
|
|
13803
|
+
}
|
|
13804
|
+
}
|
|
13805
|
+
|
|
13806
|
+
log(...args) {
|
|
13807
|
+
this.addMessage('log', this.prefix, ...args);
|
|
13808
|
+
sendLogMessage(this.prefix, ...args);
|
|
13809
|
+
|
|
13810
|
+
if (!this.enabled) {
|
|
13811
|
+
return;
|
|
13812
|
+
}
|
|
13813
|
+
|
|
13814
|
+
console.log(this.prefix, ...args);
|
|
13815
|
+
}
|
|
13816
|
+
|
|
13817
|
+
error(...args) {
|
|
13818
|
+
this.addMessage('error', this.prefix, ...args);
|
|
13819
|
+
sendLogMessage(this.prefix, ...args);
|
|
13820
|
+
|
|
13821
|
+
if (!this.enabled) {
|
|
13822
|
+
return;
|
|
13823
|
+
}
|
|
13824
|
+
|
|
13825
|
+
console.error(this.prefix, ...args);
|
|
13826
|
+
}
|
|
13827
|
+
|
|
13828
|
+
warn(...args) {
|
|
13829
|
+
this.addMessage('warn', this.prefix, ...args);
|
|
13830
|
+
sendLogMessage(this.prefix, ...args);
|
|
13831
|
+
|
|
13832
|
+
if (!this.enabled) {
|
|
13833
|
+
return;
|
|
13834
|
+
}
|
|
13835
|
+
|
|
13836
|
+
console.warn(this.prefix, ...args);
|
|
13837
|
+
}
|
|
13838
|
+
|
|
13839
|
+
debug(...args) {
|
|
13840
|
+
this.addMessage('debug', this.prefix, ...args);
|
|
13841
|
+
sendLogMessage(this.prefix, ...args);
|
|
13842
|
+
|
|
13843
|
+
if (!this.enabled) {
|
|
13844
|
+
return;
|
|
13845
|
+
}
|
|
13846
|
+
|
|
13847
|
+
console.log(this.prefix, ...args);
|
|
13848
|
+
}
|
|
13849
|
+
|
|
13850
|
+
}
|
|
13851
|
+
|
|
13852
|
+
const _logs = {};
|
|
13853
|
+
|
|
13854
|
+
const initLog = (prefix, enabled) => {
|
|
13855
|
+
const instance = new Log$6(prefix, !!enabled);
|
|
13856
|
+
_logs[prefix] = instance;
|
|
13857
|
+
return instance;
|
|
13858
|
+
};
|
|
13859
|
+
|
|
13860
|
+
const enableLog = enabled => {
|
|
13861
|
+
Object.keys(_logs).forEach(key => {
|
|
13862
|
+
_logs[key].enabled = !!enabled;
|
|
13863
|
+
});
|
|
13864
|
+
};
|
|
13865
|
+
|
|
13866
|
+
const getLog = () => {
|
|
13867
|
+
let logs = [];
|
|
13868
|
+
Object.keys(_logs).forEach(key => {
|
|
13869
|
+
logs = logs.concat(_logs[key].messages);
|
|
13870
|
+
});
|
|
13871
|
+
logs.sort((a, b) => a.timestamp - b.timestamp);
|
|
13872
|
+
return logs;
|
|
13873
|
+
};
|
|
13874
|
+
|
|
13875
|
+
const setLoggerPostMessage = postMessageFn => {
|
|
13876
|
+
postMessage$1 = postMessageFn;
|
|
13877
|
+
};
|
|
13878
|
+
|
|
13879
|
+
const serializeLog = (...args) => args.map(arg => {
|
|
13880
|
+
if (typeof arg === 'string') {
|
|
13881
|
+
return arg;
|
|
13882
|
+
}
|
|
13883
|
+
|
|
13884
|
+
if (typeof arg === 'number') {
|
|
13885
|
+
return arg;
|
|
13886
|
+
}
|
|
13887
|
+
|
|
13888
|
+
if (typeof arg === 'boolean') {
|
|
13889
|
+
return arg;
|
|
13890
|
+
}
|
|
13891
|
+
|
|
13892
|
+
if (typeof arg === 'undefined') {
|
|
13893
|
+
return arg;
|
|
13894
|
+
}
|
|
13895
|
+
|
|
13896
|
+
if (typeof arg === 'object') {
|
|
13897
|
+
return JSON.stringify(arg, getCircularReplacer());
|
|
13898
|
+
}
|
|
13899
|
+
|
|
13900
|
+
return arg;
|
|
13901
|
+
});
|
|
13902
|
+
|
|
13903
|
+
const getCircularReplacer = () => {
|
|
13904
|
+
const seen = new WeakSet();
|
|
13905
|
+
return (_, value) => {
|
|
13906
|
+
if (typeof value === 'object' && value !== null) {
|
|
13907
|
+
if (seen.has(value)) {
|
|
13908
|
+
return;
|
|
13909
|
+
}
|
|
13910
|
+
|
|
13911
|
+
seen.add(value);
|
|
13912
|
+
}
|
|
13913
|
+
|
|
13914
|
+
return value;
|
|
13915
|
+
};
|
|
13916
|
+
};
|
|
13917
|
+
|
|
13918
|
+
const sendLogMessage = (prefix, ...args) => {
|
|
13919
|
+
postMessage$1 === null || postMessage$1 === void 0 ? void 0 : postMessage$1(createLogMessage(LOG.OUTPUT, serializeLog(prefix, ...args)));
|
|
13920
|
+
};
|
|
13921
|
+
|
|
13922
|
+
exports.d0 = void 0;
|
|
13923
|
+
|
|
13924
|
+
(function (LoggerNames) {
|
|
13925
|
+
LoggerNames["Core"] = "Core";
|
|
13926
|
+
LoggerNames["Transport"] = "Transport";
|
|
13927
|
+
LoggerNames["Device"] = "Device";
|
|
13928
|
+
LoggerNames["DeviceCommands"] = "DeviceCommands";
|
|
13929
|
+
LoggerNames["DeviceConnector"] = "DeviceConnector";
|
|
13930
|
+
LoggerNames["DeviceList"] = "DeviceList";
|
|
13931
|
+
LoggerNames["HdBleSdk"] = "@onekey/hd-ble-sdk";
|
|
13932
|
+
LoggerNames["HdTransportHttp"] = "@onekey/hd-transport-http";
|
|
13933
|
+
LoggerNames["HdBleTransport"] = "@onekey/hd-ble-transport";
|
|
13934
|
+
LoggerNames["Connect"] = "@onekey/connect";
|
|
13935
|
+
LoggerNames["Iframe"] = "IFrame";
|
|
13936
|
+
LoggerNames["SendMessage"] = "[SendMessage]";
|
|
13937
|
+
LoggerNames["Method"] = "[Method]";
|
|
13938
|
+
})(exports.d0 || (exports.d0 = {}));
|
|
13939
|
+
|
|
13940
|
+
const LoggerMap = {
|
|
13941
|
+
[exports.d0.Core]: initLog(exports.d0.Core),
|
|
13942
|
+
[exports.d0.Transport]: initLog(exports.d0.Transport),
|
|
13943
|
+
[exports.d0.Device]: initLog(exports.d0.Device),
|
|
13944
|
+
[exports.d0.DeviceCommands]: initLog(exports.d0.DeviceCommands),
|
|
13945
|
+
[exports.d0.DeviceConnector]: initLog(exports.d0.DeviceConnector),
|
|
13946
|
+
[exports.d0.DeviceList]: initLog(exports.d0.DeviceList),
|
|
13947
|
+
[exports.d0.HdBleSdk]: initLog(exports.d0.HdBleSdk),
|
|
13948
|
+
[exports.d0.HdTransportHttp]: initLog(exports.d0.HdTransportHttp),
|
|
13949
|
+
[exports.d0.HdBleTransport]: initLog(exports.d0.HdBleTransport),
|
|
13950
|
+
[exports.d0.Connect]: initLog(exports.d0.Connect),
|
|
13951
|
+
[exports.d0.Iframe]: initLog(exports.d0.Iframe),
|
|
13952
|
+
[exports.d0.SendMessage]: initLog(exports.d0.SendMessage),
|
|
13953
|
+
[exports.d0.Method]: initLog(exports.d0.Method)
|
|
13954
|
+
};
|
|
13955
|
+
|
|
13956
|
+
const getLogger = key => LoggerMap[key];
|
|
13957
|
+
|
|
13779
13958
|
const getReleaseStatus = (releases, currentVersion) => {
|
|
13780
13959
|
const newVersions = releases.filter(r => semver__default["default"].gt(r.version.join('.'), currentVersion));
|
|
13781
13960
|
|
|
@@ -13948,11 +14127,13 @@ DataManager.getTransportStatus = localVersion => {
|
|
|
13948
14127
|
return isLatest ? 'valid' : 'outdated';
|
|
13949
14128
|
};
|
|
13950
14129
|
|
|
13951
|
-
const Log$5 =
|
|
14130
|
+
const Log$5 = getLogger(exports.d0.Transport);
|
|
14131
|
+
const BleLogger = getLogger(exports.d0.HdBleTransport);
|
|
14132
|
+
const HttpLogger = getLogger(exports.d0.HdTransportHttp);
|
|
13952
14133
|
|
|
13953
14134
|
class TransportManager {
|
|
13954
14135
|
static load() {
|
|
13955
|
-
|
|
14136
|
+
Log$5.debug('transport manager load');
|
|
13956
14137
|
this.defaultMessages = DataManager.getProtobufMessages();
|
|
13957
14138
|
this.currentMessages = this.defaultMessages;
|
|
13958
14139
|
}
|
|
@@ -13965,13 +14146,13 @@ class TransportManager {
|
|
|
13965
14146
|
|
|
13966
14147
|
if (env === 'react-native') {
|
|
13967
14148
|
if (!this.reactNativeInit) {
|
|
13968
|
-
yield this.transport.init();
|
|
14149
|
+
yield this.transport.init(BleLogger);
|
|
13969
14150
|
this.reactNativeInit = true;
|
|
13970
14151
|
} else {
|
|
13971
14152
|
Log$5.debug('React Native Do Not Initializing transports');
|
|
13972
14153
|
}
|
|
13973
14154
|
} else {
|
|
13974
|
-
yield this.transport.init();
|
|
14155
|
+
yield this.transport.init(HttpLogger);
|
|
13975
14156
|
}
|
|
13976
14157
|
|
|
13977
14158
|
Log$5.debug('Configuring transports');
|
|
@@ -13979,6 +14160,10 @@ class TransportManager {
|
|
|
13979
14160
|
Log$5.debug('Configuring transports done');
|
|
13980
14161
|
} catch (error) {
|
|
13981
14162
|
Log$5.debug('Initializing transports error: ', error);
|
|
14163
|
+
|
|
14164
|
+
if (error.code === 'ECONNABORTED') {
|
|
14165
|
+
throw hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.BridgeTimeoutError);
|
|
14166
|
+
}
|
|
13982
14167
|
}
|
|
13983
14168
|
});
|
|
13984
14169
|
}
|
|
@@ -14013,7 +14198,7 @@ class TransportManager {
|
|
|
14013
14198
|
this.transport = new TransportConstructor();
|
|
14014
14199
|
}
|
|
14015
14200
|
|
|
14016
|
-
|
|
14201
|
+
Log$5.debug('set transport: ', this.transport);
|
|
14017
14202
|
}
|
|
14018
14203
|
|
|
14019
14204
|
static getTransport() {
|
|
@@ -14158,7 +14343,7 @@ const assertType = (res, resType) => {
|
|
|
14158
14343
|
}
|
|
14159
14344
|
};
|
|
14160
14345
|
|
|
14161
|
-
const Log$4 =
|
|
14346
|
+
const Log$4 = getLogger(exports.d0.DeviceCommands);
|
|
14162
14347
|
|
|
14163
14348
|
class DeviceCommands {
|
|
14164
14349
|
constructor(device, mainId) {
|
|
@@ -14185,7 +14370,7 @@ class DeviceCommands {
|
|
|
14185
14370
|
var _a, _b;
|
|
14186
14371
|
|
|
14187
14372
|
return __awaiter(this, void 0, void 0, function* () {
|
|
14188
|
-
|
|
14373
|
+
Log$4.debug('[DeviceCommands] [call] Sending', type);
|
|
14189
14374
|
|
|
14190
14375
|
try {
|
|
14191
14376
|
const promise = this.transport.call(this.mainId, type, msg);
|
|
@@ -14219,7 +14404,7 @@ class DeviceCommands {
|
|
|
14219
14404
|
try {
|
|
14220
14405
|
assertType(response, resType);
|
|
14221
14406
|
} catch (error) {
|
|
14222
|
-
|
|
14407
|
+
Log$4.debug('DeviceCommands typedcall error: ', error);
|
|
14223
14408
|
|
|
14224
14409
|
if (error instanceof hdShared.HardwareError) {
|
|
14225
14410
|
if (error.errorCode === hdShared.HardwareErrorCode.ResponseUnexpectTypeError) {
|
|
@@ -14244,7 +14429,7 @@ class DeviceCommands {
|
|
|
14244
14429
|
}
|
|
14245
14430
|
|
|
14246
14431
|
_filterCommonTypes(res) {
|
|
14247
|
-
|
|
14432
|
+
Log$4.debug('_filterCommonTypes: ', res);
|
|
14248
14433
|
|
|
14249
14434
|
if (res.type === 'Failure') {
|
|
14250
14435
|
const {
|
|
@@ -14447,7 +14632,7 @@ const parseRunOptions = options => {
|
|
|
14447
14632
|
return options;
|
|
14448
14633
|
};
|
|
14449
14634
|
|
|
14450
|
-
const Log$3 =
|
|
14635
|
+
const Log$3 = getLogger(exports.d0.Device);
|
|
14451
14636
|
|
|
14452
14637
|
class Device extends events.exports {
|
|
14453
14638
|
constructor(descriptor) {
|
|
@@ -14809,7 +14994,7 @@ class Device extends events.exports {
|
|
|
14809
14994
|
}
|
|
14810
14995
|
|
|
14811
14996
|
const cacheDeviceMap = new Map();
|
|
14812
|
-
const Log$2 =
|
|
14997
|
+
const Log$2 = getLogger(exports.d0.DeviceList);
|
|
14813
14998
|
|
|
14814
14999
|
class DeviceList extends events.exports {
|
|
14815
15000
|
constructor() {
|
|
@@ -14827,7 +15012,7 @@ class DeviceList extends events.exports {
|
|
|
14827
15012
|
const descriptorList = (_c = deviceDiff === null || deviceDiff === void 0 ? void 0 : deviceDiff.descriptors) !== null && _c !== void 0 ? _c : [];
|
|
14828
15013
|
this.devices = {};
|
|
14829
15014
|
const deviceList = [];
|
|
14830
|
-
|
|
15015
|
+
Log$2.debug('get device list');
|
|
14831
15016
|
|
|
14832
15017
|
try {
|
|
14833
15018
|
for (var descriptorList_1 = __asyncValues(descriptorList), descriptorList_1_1; descriptorList_1_1 = yield descriptorList_1.next(), !descriptorList_1_1.done;) {
|
|
@@ -16284,19 +16469,26 @@ class CheckTransportRelease extends BaseMethod {
|
|
|
16284
16469
|
|
|
16285
16470
|
}
|
|
16286
16471
|
|
|
16287
|
-
class CheckBridgeStatus extends BaseMethod {
|
|
16472
|
+
class CheckBridgeStatus$1 extends BaseMethod {
|
|
16288
16473
|
init() {
|
|
16289
16474
|
this.useDevice = false;
|
|
16290
16475
|
}
|
|
16291
16476
|
|
|
16292
16477
|
run() {
|
|
16293
16478
|
return __awaiter(this, void 0, void 0, function* () {
|
|
16294
|
-
return new Promise(resolve => {
|
|
16479
|
+
return new Promise((resolve, reject) => {
|
|
16295
16480
|
axios__default["default"].request({
|
|
16296
16481
|
url: 'http://localhost:21320',
|
|
16297
16482
|
method: 'POST',
|
|
16298
|
-
withCredentials: false
|
|
16299
|
-
|
|
16483
|
+
withCredentials: false,
|
|
16484
|
+
timeout: 3000
|
|
16485
|
+
}).then(() => resolve(true)).catch(e => {
|
|
16486
|
+
if (e.code === 'ECONNABORTED') {
|
|
16487
|
+
reject(hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.BridgeTimeoutError));
|
|
16488
|
+
} else {
|
|
16489
|
+
resolve(false);
|
|
16490
|
+
}
|
|
16491
|
+
});
|
|
16300
16492
|
});
|
|
16301
16493
|
});
|
|
16302
16494
|
}
|
|
@@ -16575,7 +16767,7 @@ class DeviceVerify extends BaseMethod {
|
|
|
16575
16767
|
data: sha256__default["default"].sha256(this.params.data)
|
|
16576
16768
|
}));
|
|
16577
16769
|
response = res.message;
|
|
16578
|
-
} else
|
|
16770
|
+
} else {
|
|
16579
16771
|
const signatureRes = yield this.device.commands.typedCall('SESignMessage', 'SEMessageSignature', {
|
|
16580
16772
|
message: this.params.data
|
|
16581
16773
|
});
|
|
@@ -18497,6 +18689,8 @@ class FirmwareUpdate extends BaseMethod {
|
|
|
18497
18689
|
}
|
|
18498
18690
|
|
|
18499
18691
|
run() {
|
|
18692
|
+
var _a;
|
|
18693
|
+
|
|
18500
18694
|
return __awaiter(this, void 0, void 0, function* () {
|
|
18501
18695
|
const {
|
|
18502
18696
|
device,
|
|
@@ -18520,7 +18714,7 @@ class FirmwareUpdate extends BaseMethod {
|
|
|
18520
18714
|
binary = firmware.binary;
|
|
18521
18715
|
}
|
|
18522
18716
|
} catch (err) {
|
|
18523
|
-
throw hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.FirmwareUpdateDownloadFailed, err);
|
|
18717
|
+
throw hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.FirmwareUpdateDownloadFailed, (_a = err.message) !== null && _a !== void 0 ? _a : err);
|
|
18524
18718
|
}
|
|
18525
18719
|
|
|
18526
18720
|
return uploadFirmware(params.updateType, this.device.getCommands().typedCall.bind(this.device.getCommands()), this.postMessage, device, {
|
|
@@ -18531,6 +18725,20 @@ class FirmwareUpdate extends BaseMethod {
|
|
|
18531
18725
|
|
|
18532
18726
|
}
|
|
18533
18727
|
|
|
18728
|
+
class CheckBridgeStatus extends BaseMethod {
|
|
18729
|
+
init() {
|
|
18730
|
+
this.useDevice = false;
|
|
18731
|
+
}
|
|
18732
|
+
|
|
18733
|
+
run() {
|
|
18734
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
18735
|
+
const logs = getLog();
|
|
18736
|
+
return Promise.resolve(logs);
|
|
18737
|
+
});
|
|
18738
|
+
}
|
|
18739
|
+
|
|
18740
|
+
}
|
|
18741
|
+
|
|
18534
18742
|
var ApiMethods = /*#__PURE__*/Object.freeze({
|
|
18535
18743
|
__proto__: null,
|
|
18536
18744
|
searchDevices: SearchDevices,
|
|
@@ -18544,7 +18752,7 @@ var ApiMethods = /*#__PURE__*/Object.freeze({
|
|
|
18544
18752
|
checkFirmwareRelease: CheckFirmwareRelease,
|
|
18545
18753
|
checkBLEFirmwareRelease: CheckBLEFirmwareRelease,
|
|
18546
18754
|
checkTransportRelease: CheckTransportRelease,
|
|
18547
|
-
checkBridgeStatus: CheckBridgeStatus,
|
|
18755
|
+
checkBridgeStatus: CheckBridgeStatus$1,
|
|
18548
18756
|
deviceBackup: DeviceBackup,
|
|
18549
18757
|
deviceChangePin: DeviceChangePin,
|
|
18550
18758
|
deviceFlags: DeviceFlags,
|
|
@@ -18573,7 +18781,8 @@ var ApiMethods = /*#__PURE__*/Object.freeze({
|
|
|
18573
18781
|
solSignTransaction: SolSignTransaction,
|
|
18574
18782
|
stellarGetAddress: StellarGetAddress,
|
|
18575
18783
|
stellarSignTransaction: StellarSignTransaction,
|
|
18576
|
-
firmwareUpdate: FirmwareUpdate
|
|
18784
|
+
firmwareUpdate: FirmwareUpdate,
|
|
18785
|
+
getLogs: CheckBridgeStatus
|
|
18577
18786
|
});
|
|
18578
18787
|
|
|
18579
18788
|
function findMethod(message) {
|
|
@@ -18606,7 +18815,7 @@ const resolveAfter = (msec, value) => new Promise(resolve => {
|
|
|
18606
18815
|
setTimeout(resolve, msec, value);
|
|
18607
18816
|
});
|
|
18608
18817
|
|
|
18609
|
-
const Log$1 =
|
|
18818
|
+
const Log$1 = getLogger(exports.d0.DeviceConnector);
|
|
18610
18819
|
|
|
18611
18820
|
const getDiff = (current, descriptors) => {
|
|
18612
18821
|
const env = DataManager.getSettings('env');
|
|
@@ -18719,7 +18928,7 @@ class DeviceConnector {
|
|
|
18719
18928
|
|
|
18720
18929
|
acquire(path, session) {
|
|
18721
18930
|
return __awaiter(this, void 0, void 0, function* () {
|
|
18722
|
-
|
|
18931
|
+
Log$1.debug('acquire', path, session);
|
|
18723
18932
|
const env = DataManager.getSettings('env');
|
|
18724
18933
|
|
|
18725
18934
|
try {
|
|
@@ -18762,7 +18971,7 @@ class DeviceConnector {
|
|
|
18762
18971
|
|
|
18763
18972
|
}
|
|
18764
18973
|
|
|
18765
|
-
const Log =
|
|
18974
|
+
const Log = getLogger(exports.d0.Core);
|
|
18766
18975
|
|
|
18767
18976
|
let _core;
|
|
18768
18977
|
|
|
@@ -18825,7 +19034,7 @@ const callAPI = message => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
18825
19034
|
return Promise.reject(error);
|
|
18826
19035
|
}
|
|
18827
19036
|
|
|
18828
|
-
Log.debug('Call API - setDevice: ', device);
|
|
19037
|
+
Log.debug('Call API - setDevice: ', device.mainId);
|
|
18829
19038
|
(_a = method.setDevice) === null || _a === void 0 ? void 0 : _a.call(method, device);
|
|
18830
19039
|
device.on(DEVICE.PIN, onDevicePinHandler);
|
|
18831
19040
|
device.on(DEVICE.BUTTON, (d, code) => {
|
|
@@ -18880,7 +19089,7 @@ const callAPI = message => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
18880
19089
|
}
|
|
18881
19090
|
});
|
|
18882
19091
|
|
|
18883
|
-
Log.debug('Call API - Device Run: ', device);
|
|
19092
|
+
Log.debug('Call API - Device Run: ', device.mainId);
|
|
18884
19093
|
|
|
18885
19094
|
const deviceRun = () => device.run(inner);
|
|
18886
19095
|
|
|
@@ -18889,7 +19098,7 @@ const callAPI = message => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
18889
19098
|
try {
|
|
18890
19099
|
return yield _callPromise.promise;
|
|
18891
19100
|
} catch (e) {
|
|
18892
|
-
|
|
19101
|
+
Log.debug('Device Run Error: ', e);
|
|
18893
19102
|
return createResponseMessage(method.responseID, false, {
|
|
18894
19103
|
error: e
|
|
18895
19104
|
});
|
|
@@ -19015,7 +19224,7 @@ const closePopup = () => {
|
|
|
19015
19224
|
};
|
|
19016
19225
|
|
|
19017
19226
|
const onDevicePinHandler = (...[device, type, callback]) => __awaiter(void 0, void 0, void 0, function* () {
|
|
19018
|
-
|
|
19227
|
+
Log.debug('onDevicePinHandler');
|
|
19019
19228
|
const uiPromise = createUiPromise(UI_RESPONSE.RECEIVE_PIN, device);
|
|
19020
19229
|
postMessage(createUiMessage(UI_REQUEST$1.REQUEST_PIN, {
|
|
19021
19230
|
device: device.toMessageObject(),
|
|
@@ -19127,7 +19336,12 @@ const init = (settings, Transport) => __awaiter(void 0, void 0, void 0, function
|
|
|
19127
19336
|
Log.error('DataManager.load error');
|
|
19128
19337
|
}
|
|
19129
19338
|
|
|
19130
|
-
|
|
19339
|
+
enableLog(DataManager.getSettings('debug'));
|
|
19340
|
+
|
|
19341
|
+
if (DataManager.getSettings('env') !== 'react-native') {
|
|
19342
|
+
setLoggerPostMessage(postMessage);
|
|
19343
|
+
}
|
|
19344
|
+
|
|
19131
19345
|
initCore();
|
|
19132
19346
|
initConnector();
|
|
19133
19347
|
return _core;
|
|
@@ -19152,18 +19366,6 @@ const HardwareSdk = ({
|
|
|
19152
19366
|
cancel
|
|
19153
19367
|
});
|
|
19154
19368
|
|
|
19155
|
-
Object.defineProperty(exports, "yI", ({
|
|
19156
|
-
enumerable: true,
|
|
19157
|
-
get: function () {
|
|
19158
|
-
return hdShared.enableLog;
|
|
19159
|
-
}
|
|
19160
|
-
}));
|
|
19161
|
-
Object.defineProperty(exports, "KR", ({
|
|
19162
|
-
enumerable: true,
|
|
19163
|
-
get: function () {
|
|
19164
|
-
return hdShared.initLog;
|
|
19165
|
-
}
|
|
19166
|
-
}));
|
|
19167
19369
|
__webpack_unused_export__ = ({
|
|
19168
19370
|
enumerable: true,
|
|
19169
19371
|
get: function () {
|
|
@@ -19177,6 +19379,8 @@ __webpack_unused_export__ = DEVICE;
|
|
|
19177
19379
|
__webpack_unused_export__ = DEVICE_EVENT;
|
|
19178
19380
|
__webpack_unused_export__ = DataManager;
|
|
19179
19381
|
exports.Bg = IFRAME;
|
|
19382
|
+
__webpack_unused_export__ = LOG;
|
|
19383
|
+
exports.og = LOG_EVENT;
|
|
19180
19384
|
__webpack_unused_export__ = RESPONSE_EVENT;
|
|
19181
19385
|
exports.rF = UI_EVENT;
|
|
19182
19386
|
__webpack_unused_export__ = UI_REQUEST$1;
|
|
@@ -19185,10 +19389,12 @@ __webpack_unused_export__ = corsValidator;
|
|
|
19185
19389
|
__webpack_unused_export__ = createDeviceMessage;
|
|
19186
19390
|
exports.xG = createErrorMessage;
|
|
19187
19391
|
__webpack_unused_export__ = createIFrameMessage;
|
|
19392
|
+
__webpack_unused_export__ = createLogMessage;
|
|
19188
19393
|
__webpack_unused_export__ = createResponseMessage;
|
|
19189
19394
|
__webpack_unused_export__ = createUiMessage;
|
|
19190
19395
|
__webpack_unused_export__ = createUiResponse;
|
|
19191
19396
|
exports.ZP = HardwareSdk;
|
|
19397
|
+
exports.yI = enableLog;
|
|
19192
19398
|
__webpack_unused_export__ = getDeviceLabel;
|
|
19193
19399
|
__webpack_unused_export__ = getDeviceType;
|
|
19194
19400
|
__webpack_unused_export__ = getDeviceTypeByBleName;
|
|
@@ -19196,6 +19402,8 @@ __webpack_unused_export__ = getDeviceTypeByDeviceId;
|
|
|
19196
19402
|
__webpack_unused_export__ = getDeviceUUID;
|
|
19197
19403
|
__webpack_unused_export__ = getEnv;
|
|
19198
19404
|
__webpack_unused_export__ = getHDPath;
|
|
19405
|
+
__webpack_unused_export__ = getLog;
|
|
19406
|
+
exports.jl = getLogger;
|
|
19199
19407
|
__webpack_unused_export__ = getScriptType;
|
|
19200
19408
|
__webpack_unused_export__ = getTimeStamp;
|
|
19201
19409
|
__webpack_unused_export__ = httpRequest;
|
|
@@ -19207,6 +19415,7 @@ exports._4 = parseConnectSettings;
|
|
|
19207
19415
|
exports.kW = parseMessage;
|
|
19208
19416
|
__webpack_unused_export__ = patchFeatures;
|
|
19209
19417
|
__webpack_unused_export__ = safeThrowError;
|
|
19418
|
+
exports.hZ = setLoggerPostMessage;
|
|
19210
19419
|
__webpack_unused_export__ = versionCompare;
|
|
19211
19420
|
__webpack_unused_export__ = versionSplit;
|
|
19212
19421
|
|
|
@@ -20317,6 +20526,7 @@ function createDeferred(arg, data) {
|
|
|
20317
20526
|
}
|
|
20318
20527
|
|
|
20319
20528
|
function fillStringWithArguments(value, object) {
|
|
20529
|
+
if (typeof value !== 'string') return value;
|
|
20320
20530
|
return value.replace(/\{([^}]+)\}/g, (_, arg) => object[arg] || '?');
|
|
20321
20531
|
}
|
|
20322
20532
|
|
|
@@ -20389,7 +20599,8 @@ const HardwareErrorCode = {
|
|
|
20389
20599
|
ActionCancelled: 803,
|
|
20390
20600
|
FirmwareError: 804,
|
|
20391
20601
|
ResponseUnexpectTypeError: 805,
|
|
20392
|
-
BridgeNetworkError: 806
|
|
20602
|
+
BridgeNetworkError: 806,
|
|
20603
|
+
BridgeTimeoutError: 807
|
|
20393
20604
|
};
|
|
20394
20605
|
const HardwareErrorCodeMessage = {
|
|
20395
20606
|
[HardwareErrorCode.UnknownError]: 'Unknown error occurred. Check message property.',
|
|
@@ -20432,7 +20643,8 @@ const HardwareErrorCodeMessage = {
|
|
|
20432
20643
|
[HardwareErrorCode.ActionCancelled]: 'Action cancelled by user',
|
|
20433
20644
|
[HardwareErrorCode.FirmwareError]: 'Firmware installation failed',
|
|
20434
20645
|
[HardwareErrorCode.ResponseUnexpectTypeError]: 'Response type is not expected',
|
|
20435
|
-
[HardwareErrorCode.BridgeNetworkError]: 'Bridge network error'
|
|
20646
|
+
[HardwareErrorCode.BridgeNetworkError]: 'Bridge network error',
|
|
20647
|
+
[HardwareErrorCode.BridgeTimeoutError]: 'Bridge network timeout'
|
|
20436
20648
|
};
|
|
20437
20649
|
|
|
20438
20650
|
const TypedError = (hardwareError, message) => {
|
|
@@ -20464,145 +20676,33 @@ const serializeError = payload => {
|
|
|
20464
20676
|
return payload;
|
|
20465
20677
|
};
|
|
20466
20678
|
|
|
20679
|
+
const CreateErrorByMessage = message => {
|
|
20680
|
+
for (const code of Object.values(HardwareErrorCode)) {
|
|
20681
|
+
if (HardwareErrorCodeMessage[code] === message) {
|
|
20682
|
+
return TypedError(code);
|
|
20683
|
+
}
|
|
20684
|
+
}
|
|
20685
|
+
|
|
20686
|
+
return new HardwareError(message);
|
|
20687
|
+
};
|
|
20688
|
+
|
|
20467
20689
|
var HardwareError$1 = /*#__PURE__*/Object.freeze({
|
|
20468
20690
|
__proto__: null,
|
|
20469
20691
|
HardwareError: HardwareError,
|
|
20470
20692
|
HardwareErrorCode: HardwareErrorCode,
|
|
20471
20693
|
HardwareErrorCodeMessage: HardwareErrorCodeMessage,
|
|
20472
20694
|
TypedError: TypedError,
|
|
20473
|
-
serializeError: serializeError
|
|
20695
|
+
serializeError: serializeError,
|
|
20696
|
+
CreateErrorByMessage: CreateErrorByMessage
|
|
20474
20697
|
});
|
|
20475
|
-
|
|
20476
|
-
|
|
20477
|
-
class Log {
|
|
20478
|
-
constructor(prefix, enabled, logger) {
|
|
20479
|
-
this.prefix = prefix;
|
|
20480
|
-
this.enabled = enabled;
|
|
20481
|
-
this.messages = [];
|
|
20482
|
-
|
|
20483
|
-
if (logger) {
|
|
20484
|
-
this.logger = logger;
|
|
20485
|
-
}
|
|
20486
|
-
}
|
|
20487
|
-
|
|
20488
|
-
addMessage(level, prefix, ...args) {
|
|
20489
|
-
this.messages.push({
|
|
20490
|
-
level,
|
|
20491
|
-
prefix,
|
|
20492
|
-
message: args,
|
|
20493
|
-
timestamp: new Date().getTime()
|
|
20494
|
-
});
|
|
20495
|
-
|
|
20496
|
-
if (this.messages.length > MAX_ENTRIES) {
|
|
20497
|
-
this.messages.shift();
|
|
20498
|
-
}
|
|
20499
|
-
}
|
|
20500
|
-
|
|
20501
|
-
log(...args) {
|
|
20502
|
-
this.addMessage('log', this.prefix, ...args);
|
|
20503
|
-
|
|
20504
|
-
if (!this.enabled) {
|
|
20505
|
-
return;
|
|
20506
|
-
}
|
|
20507
|
-
|
|
20508
|
-
if (this.logger) {
|
|
20509
|
-
this.logger.info(this.prefix, ...args);
|
|
20510
|
-
} else {
|
|
20511
|
-
console.log(this.prefix, ...args);
|
|
20512
|
-
}
|
|
20513
|
-
}
|
|
20514
|
-
|
|
20515
|
-
error(...args) {
|
|
20516
|
-
this.addMessage('error', this.prefix, ...args);
|
|
20517
|
-
|
|
20518
|
-
if (!this.enabled) {
|
|
20519
|
-
return;
|
|
20520
|
-
}
|
|
20521
|
-
|
|
20522
|
-
if (this.logger) {
|
|
20523
|
-
this.logger.error(this.prefix, ...args);
|
|
20524
|
-
} else {
|
|
20525
|
-
console.error(this.prefix, ...args);
|
|
20526
|
-
}
|
|
20527
|
-
}
|
|
20528
|
-
|
|
20529
|
-
warn(...args) {
|
|
20530
|
-
this.addMessage('warn', this.prefix, ...args);
|
|
20531
|
-
|
|
20532
|
-
if (!this.enabled) {
|
|
20533
|
-
return;
|
|
20534
|
-
}
|
|
20535
|
-
|
|
20536
|
-
if (this.logger) {
|
|
20537
|
-
this.logger.warn(this.prefix, ...args);
|
|
20538
|
-
} else {
|
|
20539
|
-
console.warn(this.prefix, ...args);
|
|
20540
|
-
}
|
|
20541
|
-
}
|
|
20542
|
-
|
|
20543
|
-
debug(...args) {
|
|
20544
|
-
this.addMessage('debug', this.prefix, ...args);
|
|
20545
|
-
|
|
20546
|
-
if (!this.enabled) {
|
|
20547
|
-
return;
|
|
20548
|
-
}
|
|
20549
|
-
|
|
20550
|
-
if (this.logger) {
|
|
20551
|
-
this.logger.debug(this.prefix, ...args);
|
|
20552
|
-
} else {
|
|
20553
|
-
console.log(this.prefix, ...args);
|
|
20554
|
-
}
|
|
20555
|
-
}
|
|
20556
|
-
|
|
20557
|
-
}
|
|
20558
|
-
|
|
20559
|
-
const _logs = {};
|
|
20560
|
-
|
|
20561
|
-
const initLog = (prefix, enabled, logger) => {
|
|
20562
|
-
const instance = new Log(prefix, !!enabled, logger);
|
|
20563
|
-
_logs[prefix] = instance;
|
|
20564
|
-
return instance;
|
|
20565
|
-
};
|
|
20566
|
-
|
|
20567
|
-
const enableLog = enabled => {
|
|
20568
|
-
Object.keys(_logs).forEach(key => {
|
|
20569
|
-
_logs[key].enabled = !!enabled;
|
|
20570
|
-
});
|
|
20571
|
-
};
|
|
20572
|
-
|
|
20573
|
-
const setOutsideLogger = logger => {
|
|
20574
|
-
Object.keys(_logs).forEach(key => {
|
|
20575
|
-
_logs[key].logger = logger;
|
|
20576
|
-
});
|
|
20577
|
-
};
|
|
20578
|
-
|
|
20579
|
-
const enableLogByPrefix = (prefix, enabled) => {
|
|
20580
|
-
if (_logs[prefix]) {
|
|
20581
|
-
_logs[prefix].enabled = enabled;
|
|
20582
|
-
}
|
|
20583
|
-
};
|
|
20584
|
-
|
|
20585
|
-
const getLog = () => {
|
|
20586
|
-
let logs = [];
|
|
20587
|
-
Object.keys(_logs).forEach(key => {
|
|
20588
|
-
logs = logs.concat(_logs[key].messages);
|
|
20589
|
-
});
|
|
20590
|
-
logs.sort((a, b) => a.timestamp - b.timestamp);
|
|
20591
|
-
return logs;
|
|
20592
|
-
};
|
|
20593
|
-
|
|
20698
|
+
exports.CreateErrorByMessage = CreateErrorByMessage;
|
|
20594
20699
|
exports.ERRORS = HardwareError$1;
|
|
20595
20700
|
exports.HardwareError = HardwareError;
|
|
20596
20701
|
exports.HardwareErrorCode = HardwareErrorCode;
|
|
20597
20702
|
exports.HardwareErrorCodeMessage = HardwareErrorCodeMessage;
|
|
20598
20703
|
exports.TypedError = TypedError;
|
|
20599
20704
|
exports.createDeferred = createDeferred;
|
|
20600
|
-
exports.enableLog = enableLog;
|
|
20601
|
-
exports.enableLogByPrefix = enableLogByPrefix;
|
|
20602
|
-
exports.getLog = getLog;
|
|
20603
|
-
exports.initLog = initLog;
|
|
20604
20705
|
exports.serializeError = serializeError;
|
|
20605
|
-
exports.setOutsideLogger = setOutsideLogger;
|
|
20606
20706
|
|
|
20607
20707
|
/***/ }),
|
|
20608
20708
|
|
|
@@ -45606,12 +45706,13 @@ function createCodeJsBridgeReceive(payloadStr) {
|
|
|
45606
45706
|
;// CONCATENATED MODULE: ./src/utils/bridgeUtils.ts
|
|
45607
45707
|
|
|
45608
45708
|
|
|
45709
|
+
|
|
45609
45710
|
// eslint-disable-next-line import/no-mutable-exports
|
|
45610
45711
|
|
|
45611
45712
|
let frameBridge; // eslint-disable-next-line import/no-mutable-exports
|
|
45612
45713
|
|
|
45613
45714
|
let hostBridge;
|
|
45614
|
-
const Log = (0,dist/*
|
|
45715
|
+
const Log = (0,dist/* getLogger */.jl)(dist/* LoggerNames.SendMessage */.d0.SendMessage);
|
|
45615
45716
|
const createJsBridge = params => {
|
|
45616
45717
|
const bridge = new JsBridgeIframe(params);
|
|
45617
45718
|
|
|
@@ -45625,17 +45726,24 @@ const sendMessage = async (messages, isHost = true) => {
|
|
|
45625
45726
|
const bridge = isHost ? hostBridge : frameBridge;
|
|
45626
45727
|
|
|
45627
45728
|
try {
|
|
45628
|
-
|
|
45729
|
+
if (messages.event !== 'LOG_EVENT') {
|
|
45730
|
+
Log.debug('request: ', messages);
|
|
45731
|
+
}
|
|
45732
|
+
|
|
45629
45733
|
const result = await (bridge === null || bridge === void 0 ? void 0 : bridge.request({
|
|
45630
45734
|
scope: bridge_config.scope,
|
|
45631
45735
|
data: { ...messages
|
|
45632
45736
|
}
|
|
45633
45737
|
}));
|
|
45634
|
-
|
|
45738
|
+
|
|
45739
|
+
if (messages.event !== 'LOG_EVENT') {
|
|
45740
|
+
Log.debug('response: ', result);
|
|
45741
|
+
}
|
|
45742
|
+
|
|
45635
45743
|
return result;
|
|
45636
45744
|
} catch (error) {
|
|
45637
45745
|
Log.error(error);
|
|
45638
|
-
throw error;
|
|
45746
|
+
throw shared_dist.ERRORS.CreateErrorByMessage(error.message);
|
|
45639
45747
|
}
|
|
45640
45748
|
};
|
|
45641
45749
|
|
|
@@ -45647,7 +45755,7 @@ const sendMessage = async (messages, isHost = true) => {
|
|
|
45647
45755
|
|
|
45648
45756
|
|
|
45649
45757
|
const eventEmitter = new (events_default())();
|
|
45650
|
-
const src_Log = (0,dist/*
|
|
45758
|
+
const src_Log = (0,dist/* getLogger */.jl)(dist/* LoggerNames.Connect */.d0.Connect);
|
|
45651
45759
|
|
|
45652
45760
|
let _settings = (0,dist/* parseConnectSettings */._4)();
|
|
45653
45761
|
|
|
@@ -45667,6 +45775,10 @@ const handleMessage = async message => {
|
|
|
45667
45775
|
eventEmitter.emit(message.type, message.payload);
|
|
45668
45776
|
break;
|
|
45669
45777
|
|
|
45778
|
+
case dist/* LOG_EVENT */.og:
|
|
45779
|
+
eventEmitter.emit(message.event, message);
|
|
45780
|
+
break;
|
|
45781
|
+
|
|
45670
45782
|
default:
|
|
45671
45783
|
src_Log.log('No need to be captured message', message.event);
|
|
45672
45784
|
}
|
|
@@ -45722,9 +45834,17 @@ const createJSBridge = messageEvent => {
|
|
|
45722
45834
|
targetOrigin: origin,
|
|
45723
45835
|
receiveHandler: async messageEvent => {
|
|
45724
45836
|
const message = (0,dist/* parseMessage */.kW)(messageEvent);
|
|
45725
|
-
|
|
45837
|
+
|
|
45838
|
+
if (message.event !== 'LOG_EVENT') {
|
|
45839
|
+
src_Log.debug('Host Bridge Receive message: ', message);
|
|
45840
|
+
}
|
|
45841
|
+
|
|
45726
45842
|
const response = await handleMessage(message);
|
|
45727
|
-
|
|
45843
|
+
|
|
45844
|
+
if (message.event !== 'LOG_EVENT') {
|
|
45845
|
+
src_Log.debug('Host Bridge response: ', response);
|
|
45846
|
+
}
|
|
45847
|
+
|
|
45728
45848
|
return response;
|
|
45729
45849
|
}
|
|
45730
45850
|
});
|
|
@@ -45740,13 +45860,14 @@ const src_init = async settings => {
|
|
|
45740
45860
|
...settings
|
|
45741
45861
|
});
|
|
45742
45862
|
(0,dist/* enableLog */.yI)(!!settings.debug);
|
|
45863
|
+
(0,dist/* setLoggerPostMessage */.hZ)(handleMessage);
|
|
45743
45864
|
src_Log.debug('init');
|
|
45744
45865
|
window.addEventListener('message', createJSBridge);
|
|
45745
45866
|
window.addEventListener('unload', src_dispose);
|
|
45746
45867
|
|
|
45747
45868
|
try {
|
|
45748
45869
|
await init({ ..._settings,
|
|
45749
|
-
version: "0.1.
|
|
45870
|
+
version: "0.1.17"
|
|
45750
45871
|
});
|
|
45751
45872
|
return true;
|
|
45752
45873
|
} catch (e) {
|
|
@@ -45786,7 +45907,13 @@ const call = async params => {
|
|
|
45786
45907
|
return (0,dist/* createErrorMessage */.xG)(shared_dist.ERRORS.TypedError(shared_dist.HardwareErrorCode.CallMethodNotResponse));
|
|
45787
45908
|
} catch (error) {
|
|
45788
45909
|
src_Log.error('__call error: ', error);
|
|
45789
|
-
|
|
45910
|
+
let err = error;
|
|
45911
|
+
|
|
45912
|
+
if (!(err instanceof shared_dist.HardwareError)) {
|
|
45913
|
+
err = shared_dist.ERRORS.CreateErrorByMessage(error.message);
|
|
45914
|
+
}
|
|
45915
|
+
|
|
45916
|
+
return (0,dist/* createErrorMessage */.xG)(err);
|
|
45790
45917
|
}
|
|
45791
45918
|
};
|
|
45792
45919
|
|