@onekeyfe/hd-core 0.0.2 → 0.0.5
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/api/{BTCGetAddress.d.ts → btc/BTCGetAddress.d.ts} +2 -2
- package/dist/api/btc/BTCGetAddress.d.ts.map +1 -0
- package/dist/api/{BTCGetPublicKey.d.ts → btc/BTCGetPublicKey.d.ts} +2 -2
- package/dist/api/btc/BTCGetPublicKey.d.ts.map +1 -0
- package/dist/api/{BTCSignMessage.d.ts → btc/BTCSignMessage.d.ts} +1 -1
- package/dist/api/btc/BTCSignMessage.d.ts.map +1 -0
- package/dist/api/{BTCSignTransaction.d.ts → btc/BTCSignTransaction.d.ts} +3 -3
- package/dist/api/btc/BTCSignTransaction.d.ts.map +1 -0
- package/dist/api/{BTCVerifyMessage.d.ts → btc/BTCVerifyMessage.d.ts} +1 -1
- package/dist/api/btc/BTCVerifyMessage.d.ts.map +1 -0
- package/dist/api/{helpers → btc/helpers}/btcParamsUtils.d.ts +0 -0
- package/dist/api/btc/helpers/btcParamsUtils.d.ts.map +1 -0
- package/dist/api/{helpers/btc → btc/helpers}/signtx.d.ts +0 -0
- package/dist/api/{helpers/btc → btc/helpers}/signtx.d.ts.map +1 -1
- package/dist/api/{helpers/btc → btc/helpers}/signtxLegacy.d.ts +0 -0
- package/dist/api/{helpers/btc → btc/helpers}/signtxLegacy.d.ts.map +1 -1
- package/dist/api/{DeviceBackup.d.ts → device/DeviceBackup.d.ts} +1 -1
- package/dist/api/device/DeviceBackup.d.ts.map +1 -0
- package/dist/api/{DeviceChangePin.d.ts → device/DeviceChangePin.d.ts} +1 -1
- package/dist/api/device/DeviceChangePin.d.ts.map +1 -0
- package/dist/api/{DeviceFlags.d.ts → device/DeviceFlags.d.ts} +1 -1
- package/dist/api/device/DeviceFlags.d.ts.map +1 -0
- package/dist/api/{DeviceRebootToBootloader.d.ts → device/DeviceRebootToBootloader.d.ts} +1 -1
- package/dist/api/device/DeviceRebootToBootloader.d.ts.map +1 -0
- package/dist/api/{DeviceRecovery.d.ts → device/DeviceRecovery.d.ts} +1 -1
- package/dist/api/device/DeviceRecovery.d.ts.map +1 -0
- package/dist/api/{DeviceReset.d.ts → device/DeviceReset.d.ts} +1 -1
- package/dist/api/device/DeviceReset.d.ts.map +1 -0
- package/dist/api/{DeviceSettings.d.ts → device/DeviceSettings.d.ts} +1 -1
- package/dist/api/device/DeviceSettings.d.ts.map +1 -0
- package/dist/api/{DeviceUpdateReboot.d.ts → device/DeviceUpdateReboot.d.ts} +1 -1
- package/dist/api/device/DeviceUpdateReboot.d.ts.map +1 -0
- package/dist/api/{DeviceWipe.d.ts → device/DeviceWipe.d.ts} +1 -1
- package/dist/api/device/DeviceWipe.d.ts.map +1 -0
- package/dist/api/{EVMGetAddress.d.ts → evm/EVMGetAddress.d.ts} +2 -2
- package/dist/api/evm/EVMGetAddress.d.ts.map +1 -0
- package/dist/api/{EVMGetPublicKey.d.ts → evm/EVMGetPublicKey.d.ts} +2 -2
- package/dist/api/evm/EVMGetPublicKey.d.ts.map +1 -0
- package/dist/api/{EVMSignMessage.d.ts → evm/EVMSignMessage.d.ts} +1 -1
- package/dist/api/evm/EVMSignMessage.d.ts.map +1 -0
- package/dist/api/{EVMSignMessageEIP712.d.ts → evm/EVMSignMessageEIP712.d.ts} +1 -1
- package/dist/api/evm/EVMSignMessageEIP712.d.ts.map +1 -0
- package/dist/api/{EVMSignTransaction.d.ts → evm/EVMSignTransaction.d.ts} +2 -2
- package/dist/api/evm/EVMSignTransaction.d.ts.map +1 -0
- package/dist/api/{EVMSignTypedData.d.ts → evm/EVMSignTypedData.d.ts} +3 -3
- package/dist/api/evm/EVMSignTypedData.d.ts.map +1 -0
- package/dist/api/{EVMVerifyMessage.d.ts → evm/EVMVerifyMessage.d.ts} +1 -1
- package/dist/api/evm/EVMVerifyMessage.d.ts.map +1 -0
- package/dist/api/helpers/pathUtils.d.ts +0 -1
- package/dist/api/helpers/pathUtils.d.ts.map +1 -1
- package/dist/api/index.d.ts +26 -21
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/starcoin/StarcoinGetAddress.d.ts +9 -0
- package/dist/api/starcoin/StarcoinGetAddress.d.ts.map +1 -0
- package/dist/api/starcoin/StarcoinGetPublicKey.d.ts +9 -0
- package/dist/api/starcoin/StarcoinGetPublicKey.d.ts.map +1 -0
- package/dist/api/starcoin/StarcoinSignMessage.d.ts +10 -0
- package/dist/api/starcoin/StarcoinSignMessage.d.ts.map +1 -0
- package/dist/api/starcoin/StarcoinSignTransaction.d.ts +10 -0
- package/dist/api/starcoin/StarcoinSignTransaction.d.ts.map +1 -0
- package/dist/api/starcoin/StarcoinVerifyMessage.d.ts +9 -0
- package/dist/api/starcoin/StarcoinVerifyMessage.d.ts.map +1 -0
- package/dist/core/index.d.ts.map +1 -1
- package/dist/events/core.d.ts +2 -1
- package/dist/events/core.d.ts.map +1 -1
- package/dist/events/device.d.ts +15 -0
- package/dist/events/device.d.ts.map +1 -1
- package/dist/events/ui-request.d.ts +13 -1
- package/dist/events/ui-request.d.ts.map +1 -1
- package/dist/index.d.ts +167 -28
- package/dist/index.js +335 -148
- package/dist/inject.d.ts.map +1 -1
- package/dist/types/api/btcSignTransaction.d.ts +2 -2
- package/dist/types/api/btcSignTransaction.d.ts.map +1 -1
- package/dist/types/api/export.d.ts +23 -0
- package/dist/types/api/export.d.ts.map +1 -0
- package/dist/types/api/index.d.ts +11 -0
- package/dist/types/api/index.d.ts.map +1 -1
- package/dist/types/api/init.d.ts +1 -1
- package/dist/types/api/init.d.ts.map +1 -1
- package/dist/types/api/starcoinGetAddress.d.ts +14 -0
- package/dist/types/api/starcoinGetAddress.d.ts.map +1 -0
- package/dist/types/api/starcoinGetPublicKey.d.ts +14 -0
- package/dist/types/api/starcoinGetPublicKey.d.ts.map +1 -0
- package/dist/types/api/starcoinSignMessage.d.ts +8 -0
- package/dist/types/api/starcoinSignMessage.d.ts.map +1 -0
- package/dist/types/api/starcoinSignTransaction.d.ts +8 -0
- package/dist/types/api/starcoinSignTransaction.d.ts.map +1 -0
- package/dist/types/api/starcoinVerifyMessage.d.ts +9 -0
- package/dist/types/api/starcoinVerifyMessage.d.ts.map +1 -0
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/api/{BTCGetAddress.ts → btc/BTCGetAddress.ts} +5 -5
- package/src/api/{BTCGetPublicKey.ts → btc/BTCGetPublicKey.ts} +8 -8
- package/src/api/{BTCSignMessage.ts → btc/BTCSignMessage.ts} +5 -5
- package/src/api/{BTCSignTransaction.ts → btc/BTCSignTransaction.ts} +8 -8
- package/src/api/{BTCVerifyMessage.ts → btc/BTCVerifyMessage.ts} +4 -4
- package/src/api/{helpers → btc/helpers}/btcParamsUtils.ts +3 -3
- package/src/api/{helpers/btc → btc/helpers}/signtx.ts +0 -0
- package/src/api/{helpers/btc → btc/helpers}/signtxLegacy.ts +0 -0
- package/src/api/{DeviceBackup.ts → device/DeviceBackup.ts} +1 -1
- package/src/api/{DeviceChangePin.ts → device/DeviceChangePin.ts} +2 -2
- package/src/api/{DeviceFlags.ts → device/DeviceFlags.ts} +2 -2
- package/src/api/{DeviceRebootToBootloader.ts → device/DeviceRebootToBootloader.ts} +1 -1
- package/src/api/{DeviceRecovery.ts → device/DeviceRecovery.ts} +2 -2
- package/src/api/{DeviceReset.ts → device/DeviceReset.ts} +2 -2
- package/src/api/{DeviceSettings.ts → device/DeviceSettings.ts} +2 -2
- package/src/api/{DeviceUpdateReboot.ts → device/DeviceUpdateReboot.ts} +1 -1
- package/src/api/{DeviceWipe.ts → device/DeviceWipe.ts} +1 -1
- package/src/api/{EVMGetAddress.ts → evm/EVMGetAddress.ts} +5 -5
- package/src/api/{EVMGetPublicKey.ts → evm/EVMGetPublicKey.ts} +5 -5
- package/src/api/{EVMSignMessage.ts → evm/EVMSignMessage.ts} +5 -5
- package/src/api/{EVMSignMessageEIP712.ts → evm/EVMSignMessageEIP712.ts} +5 -5
- package/src/api/{EVMSignTransaction.ts → evm/EVMSignTransaction.ts} +9 -9
- package/src/api/{EVMSignTypedData.ts → evm/EVMSignTypedData.ts} +8 -8
- package/src/api/{EVMVerifyMessage.ts → evm/EVMVerifyMessage.ts} +4 -4
- package/src/api/helpers/pathUtils.ts +1 -1
- package/src/api/index.ts +26 -21
- package/src/api/starcoin/StarcoinGetAddress.ts +57 -0
- package/src/api/starcoin/StarcoinGetPublicKey.ts +64 -0
- package/src/api/starcoin/StarcoinSignMessage.ts +40 -0
- package/src/api/starcoin/StarcoinSignTransaction.ts +36 -0
- package/src/api/starcoin/StarcoinVerifyMessage.ts +33 -0
- package/src/core/index.ts +25 -0
- package/src/events/core.ts +8 -1
- package/src/events/device.ts +27 -0
- package/src/events/ui-request.ts +16 -1
- package/src/inject.ts +12 -1
- package/src/types/api/btcSignTransaction.ts +1 -2
- package/src/types/api/export.ts +43 -0
- package/src/types/api/index.ts +13 -0
- package/src/types/api/init.ts +1 -1
- package/src/types/api/starcoinGetAddress.ts +21 -0
- package/src/types/api/starcoinGetPublicKey.ts +21 -0
- package/src/types/api/starcoinSignMessage.ts +12 -0
- package/src/types/api/starcoinSignTransaction.ts +12 -0
- package/src/types/api/starcoinVerifyMessage.ts +13 -0
- package/src/utils/index.ts +2 -0
- package/dist/api/BTCGetAddress.d.ts.map +0 -1
- package/dist/api/BTCGetPublicKey.d.ts.map +0 -1
- package/dist/api/BTCSignMessage.d.ts.map +0 -1
- package/dist/api/BTCSignTransaction.d.ts.map +0 -1
- package/dist/api/BTCVerifyMessage.d.ts.map +0 -1
- package/dist/api/DeviceBackup.d.ts.map +0 -1
- package/dist/api/DeviceChangePin.d.ts.map +0 -1
- package/dist/api/DeviceFlags.d.ts.map +0 -1
- package/dist/api/DeviceRebootToBootloader.d.ts.map +0 -1
- package/dist/api/DeviceRecovery.d.ts.map +0 -1
- package/dist/api/DeviceReset.d.ts.map +0 -1
- package/dist/api/DeviceSettings.d.ts.map +0 -1
- package/dist/api/DeviceUpdateReboot.d.ts.map +0 -1
- package/dist/api/DeviceWipe.d.ts.map +0 -1
- package/dist/api/EVMGetAddress.d.ts.map +0 -1
- package/dist/api/EVMGetPublicKey.d.ts.map +0 -1
- package/dist/api/EVMSignMessage.d.ts.map +0 -1
- package/dist/api/EVMSignMessageEIP712.d.ts.map +0 -1
- package/dist/api/EVMSignTransaction.d.ts.map +0 -1
- package/dist/api/EVMSignTypedData.d.ts.map +0 -1
- package/dist/api/EVMVerifyMessage.d.ts.map +0 -1
- package/dist/api/helpers/btcParamsUtils.d.ts.map +0 -1
package/dist/index.js
CHANGED
|
@@ -40,7 +40,7 @@ const inject = ({ call, cancel, dispose, eventEmitter, init, uiResponse, }) => {
|
|
|
40
40
|
deviceRebootToBootloader: connectId => call({ connectId, method: 'deviceRebootToBootloader' }),
|
|
41
41
|
deviceRecovery: (connectId, params) => call(Object.assign(Object.assign({}, params), { connectId, method: 'deviceRecovery' })),
|
|
42
42
|
deviceReset: (connectId, params) => call(Object.assign(Object.assign({}, params), { connectId, method: 'deviceReset' })),
|
|
43
|
-
deviceSettings: connectId => call({ connectId, method: 'deviceSettings' }),
|
|
43
|
+
deviceSettings: (connectId, params) => call(Object.assign(Object.assign({}, params), { connectId, method: 'deviceSettings' })),
|
|
44
44
|
deviceUpdateReboot: connectId => call({ connectId, method: 'deviceUpdateReboot' }),
|
|
45
45
|
deviceWipe: connectId => call({ connectId, method: 'deviceWipe' }),
|
|
46
46
|
evmGetAddress: (connectId, params) => call(Object.assign(Object.assign({}, params), { connectId, method: 'evmGetAddress' })),
|
|
@@ -55,6 +55,11 @@ const inject = ({ call, cancel, dispose, eventEmitter, init, uiResponse, }) => {
|
|
|
55
55
|
btcSignMessage: (connectId, params) => call(Object.assign(Object.assign({}, params), { connectId, method: 'btcSignMessage' })),
|
|
56
56
|
btcSignTransaction: (connectId, params) => call(Object.assign(Object.assign({}, params), { connectId, method: 'btcSignTransaction' })),
|
|
57
57
|
btcVerifyMessage: (connectId, params) => call(Object.assign(Object.assign({}, params), { connectId, method: 'btcVerifyMessage' })),
|
|
58
|
+
starcoinGetAddress: (connectId, params) => call(Object.assign(Object.assign({}, params), { connectId, method: 'starcoinGetAddress' })),
|
|
59
|
+
starcoinGetPublicKey: (connectId, params) => call(Object.assign(Object.assign({}, params), { connectId, method: 'starcoinGetPublicKey' })),
|
|
60
|
+
starcoinSignMessage: (connectId, params) => call(Object.assign(Object.assign({}, params), { connectId, method: 'starcoinSignMessage' })),
|
|
61
|
+
starcoinSignTransaction: (connectId, params) => call(Object.assign(Object.assign({}, params), { connectId, method: 'starcoinSignTransaction' })),
|
|
62
|
+
starcoinVerifyMessage: (connectId, params) => call(Object.assign(Object.assign({}, params), { connectId, method: 'starcoinVerifyMessage' })),
|
|
58
63
|
};
|
|
59
64
|
return api;
|
|
60
65
|
};
|
|
@@ -803,6 +808,146 @@ function create(arg, data) {
|
|
|
803
808
|
};
|
|
804
809
|
}
|
|
805
810
|
|
|
811
|
+
const getDeviceType = (features) => {
|
|
812
|
+
if (!features || typeof features !== 'object' || !features.serial_no) {
|
|
813
|
+
return 'classic';
|
|
814
|
+
}
|
|
815
|
+
const serialNo = features.serial_no;
|
|
816
|
+
const miniFlag = serialNo.slice(0, 2);
|
|
817
|
+
if (miniFlag.toLowerCase() === 'mi')
|
|
818
|
+
return 'mini';
|
|
819
|
+
return 'classic';
|
|
820
|
+
};
|
|
821
|
+
const getDeviceUUID = (features) => {
|
|
822
|
+
const deviceType = getDeviceType(features);
|
|
823
|
+
if (deviceType === 'classic') {
|
|
824
|
+
return features.onekey_serial;
|
|
825
|
+
}
|
|
826
|
+
return features.serial_no;
|
|
827
|
+
};
|
|
828
|
+
const getDeviceLabel = (features) => {
|
|
829
|
+
const deviceType = getDeviceType(features);
|
|
830
|
+
if (typeof features.label === 'string') {
|
|
831
|
+
return features.label;
|
|
832
|
+
}
|
|
833
|
+
return `My OneKey ${deviceType.charAt(0).toUpperCase() + deviceType.slice(1)}`;
|
|
834
|
+
};
|
|
835
|
+
const getDeviceFirmwareVersion = (features) => {
|
|
836
|
+
if (features.onekey_version) {
|
|
837
|
+
return features.onekey_version.split('.');
|
|
838
|
+
}
|
|
839
|
+
return [features.major_version, features.minor_version, features.patch_version];
|
|
840
|
+
};
|
|
841
|
+
const getDeviceBLEFirmwareVersion = (features) => {
|
|
842
|
+
if (!features.ble_ver) {
|
|
843
|
+
return null;
|
|
844
|
+
}
|
|
845
|
+
return features.ble_ver.split('.');
|
|
846
|
+
};
|
|
847
|
+
|
|
848
|
+
const HD_HARDENED = 0x80000000;
|
|
849
|
+
const toHardened = (n) => (n | HD_HARDENED) >>> 0;
|
|
850
|
+
const fromHardened = (n) => (n & ~HD_HARDENED) >>> 0;
|
|
851
|
+
const PATH_NOT_VALID = TypedError('Method_InvalidParameter', 'Not a valid path');
|
|
852
|
+
const PATH_NEGATIVE_VALUES = TypedError('Method_InvalidParameter', 'Path cannot contain negative values');
|
|
853
|
+
const getHDPath = (path) => {
|
|
854
|
+
const parts = path.toLowerCase().split('/');
|
|
855
|
+
if (parts[0] !== 'm')
|
|
856
|
+
throw PATH_NOT_VALID;
|
|
857
|
+
return parts
|
|
858
|
+
.filter((p) => p !== 'm' && p !== '')
|
|
859
|
+
.map((p) => {
|
|
860
|
+
let hardened = false;
|
|
861
|
+
if (p.substr(p.length - 1) === "'") {
|
|
862
|
+
hardened = true;
|
|
863
|
+
p = p.substr(0, p.length - 1);
|
|
864
|
+
}
|
|
865
|
+
let n = parseInt(p);
|
|
866
|
+
if (Number.isNaN(n)) {
|
|
867
|
+
throw PATH_NOT_VALID;
|
|
868
|
+
}
|
|
869
|
+
else if (n < 0) {
|
|
870
|
+
throw PATH_NEGATIVE_VALUES;
|
|
871
|
+
}
|
|
872
|
+
if (hardened) {
|
|
873
|
+
n = toHardened(n);
|
|
874
|
+
}
|
|
875
|
+
return n;
|
|
876
|
+
});
|
|
877
|
+
};
|
|
878
|
+
const isMultisigPath = (path) => Array.isArray(path) && path[0] === toHardened(48);
|
|
879
|
+
const isSegwitPath = (path) => Array.isArray(path) && path[0] === toHardened(49);
|
|
880
|
+
const getScriptType = (path) => {
|
|
881
|
+
if (!Array.isArray(path) || path.length < 1)
|
|
882
|
+
return 'SPENDADDRESS';
|
|
883
|
+
const p1 = fromHardened(path[0]);
|
|
884
|
+
switch (p1) {
|
|
885
|
+
case 48:
|
|
886
|
+
return 'SPENDMULTISIG';
|
|
887
|
+
case 49:
|
|
888
|
+
return 'SPENDP2SHWITNESS';
|
|
889
|
+
case 84:
|
|
890
|
+
return 'SPENDWITNESS';
|
|
891
|
+
default:
|
|
892
|
+
return 'SPENDADDRESS';
|
|
893
|
+
}
|
|
894
|
+
};
|
|
895
|
+
const getOutputScriptType = (path) => {
|
|
896
|
+
if (!Array.isArray(path) || path.length < 1)
|
|
897
|
+
return 'PAYTOADDRESS';
|
|
898
|
+
if (path[0] === 49) {
|
|
899
|
+
return 'PAYTOP2SHWITNESS';
|
|
900
|
+
}
|
|
901
|
+
const p = fromHardened(path[0]);
|
|
902
|
+
switch (p) {
|
|
903
|
+
case 48:
|
|
904
|
+
return 'PAYTOMULTISIG';
|
|
905
|
+
case 49:
|
|
906
|
+
return 'PAYTOP2SHWITNESS';
|
|
907
|
+
case 84:
|
|
908
|
+
return 'PAYTOWITNESS';
|
|
909
|
+
default:
|
|
910
|
+
return 'PAYTOADDRESS';
|
|
911
|
+
}
|
|
912
|
+
};
|
|
913
|
+
const serializedPath = (path) => {
|
|
914
|
+
const pathStr = path
|
|
915
|
+
.map((p) => {
|
|
916
|
+
if (p & HD_HARDENED) {
|
|
917
|
+
return `${p & ~HD_HARDENED}'`;
|
|
918
|
+
}
|
|
919
|
+
return p;
|
|
920
|
+
})
|
|
921
|
+
.join('/');
|
|
922
|
+
return `m/${pathStr}`;
|
|
923
|
+
};
|
|
924
|
+
const validatePath = (path, length = 0, base = false) => {
|
|
925
|
+
let valid;
|
|
926
|
+
if (typeof path === 'string') {
|
|
927
|
+
valid = getHDPath(path);
|
|
928
|
+
}
|
|
929
|
+
else if (Array.isArray(path)) {
|
|
930
|
+
valid = path.map((p) => {
|
|
931
|
+
const n = parseInt(p);
|
|
932
|
+
if (Number.isNaN(n)) {
|
|
933
|
+
throw PATH_NOT_VALID;
|
|
934
|
+
}
|
|
935
|
+
else if (n < 0) {
|
|
936
|
+
throw PATH_NEGATIVE_VALUES;
|
|
937
|
+
}
|
|
938
|
+
return n;
|
|
939
|
+
});
|
|
940
|
+
}
|
|
941
|
+
else {
|
|
942
|
+
valid = undefined;
|
|
943
|
+
}
|
|
944
|
+
if (!valid)
|
|
945
|
+
throw PATH_NOT_VALID;
|
|
946
|
+
if (length > 0 && valid.length < length)
|
|
947
|
+
throw PATH_NOT_VALID;
|
|
948
|
+
return base ? valid.splice(0, 3) : valid;
|
|
949
|
+
};
|
|
950
|
+
|
|
806
951
|
var nested = {
|
|
807
952
|
BinanceGetAddress: {
|
|
808
953
|
fields: {
|
|
@@ -9556,43 +9701,6 @@ var MessagesJSON = {
|
|
|
9556
9701
|
nested: nested
|
|
9557
9702
|
};
|
|
9558
9703
|
|
|
9559
|
-
const getDeviceType = (features) => {
|
|
9560
|
-
if (!features || typeof features !== 'object' || !features.serial_no) {
|
|
9561
|
-
return 'classic';
|
|
9562
|
-
}
|
|
9563
|
-
const serialNo = features.serial_no;
|
|
9564
|
-
const miniFlag = serialNo.slice(0, 2);
|
|
9565
|
-
if (miniFlag.toLowerCase() === 'mi')
|
|
9566
|
-
return 'mini';
|
|
9567
|
-
return 'classic';
|
|
9568
|
-
};
|
|
9569
|
-
const getDeviceUUID = (features) => {
|
|
9570
|
-
const deviceType = getDeviceType(features);
|
|
9571
|
-
if (deviceType === 'classic') {
|
|
9572
|
-
return features.onekey_serial;
|
|
9573
|
-
}
|
|
9574
|
-
return features.serial_no;
|
|
9575
|
-
};
|
|
9576
|
-
const getDeviceLabel = (features) => {
|
|
9577
|
-
const deviceType = getDeviceType(features);
|
|
9578
|
-
if (typeof features.label === 'string') {
|
|
9579
|
-
return features.label;
|
|
9580
|
-
}
|
|
9581
|
-
return `My OneKey ${deviceType.charAt(0).toUpperCase() + deviceType.slice(1)}`;
|
|
9582
|
-
};
|
|
9583
|
-
const getDeviceFirmwareVersion = (features) => {
|
|
9584
|
-
if (features.onekey_version) {
|
|
9585
|
-
return features.onekey_version.split('.');
|
|
9586
|
-
}
|
|
9587
|
-
return [features.major_version, features.minor_version, features.patch_version];
|
|
9588
|
-
};
|
|
9589
|
-
const getDeviceBLEFirmwareVersion = (features) => {
|
|
9590
|
-
if (!features.ble_ver) {
|
|
9591
|
-
return null;
|
|
9592
|
-
}
|
|
9593
|
-
return features.ble_ver.split('.');
|
|
9594
|
-
};
|
|
9595
|
-
|
|
9596
9704
|
var _a;
|
|
9597
9705
|
class DataManager {
|
|
9598
9706
|
static load(settings) {
|
|
@@ -9800,6 +9908,9 @@ const createErrorMessage = (error) => ({
|
|
|
9800
9908
|
const UI_EVENT = 'UI_EVENT';
|
|
9801
9909
|
const UI_REQUEST$1 = {
|
|
9802
9910
|
REQUEST_PIN: 'ui-request_pin',
|
|
9911
|
+
INVALID_PIN: 'ui-invalid_pin',
|
|
9912
|
+
REQUEST_BUTTON: 'ui-button',
|
|
9913
|
+
CLOSE_UI_WINDOW: 'ui-close_window',
|
|
9803
9914
|
};
|
|
9804
9915
|
const createUiMessage = (type, payload) => ({
|
|
9805
9916
|
event: UI_EVENT,
|
|
@@ -9836,6 +9947,7 @@ const createUiResponse = (type, payload) => ({
|
|
|
9836
9947
|
payload,
|
|
9837
9948
|
});
|
|
9838
9949
|
|
|
9950
|
+
const DEVICE_EVENT = 'DEVICE_EVENT';
|
|
9839
9951
|
const DEVICE = {
|
|
9840
9952
|
CONNECT: 'device-connect',
|
|
9841
9953
|
CONNECT_UNACQUIRED: 'device-connect_unacquired',
|
|
@@ -9854,6 +9966,11 @@ const DEVICE = {
|
|
|
9854
9966
|
PASSPHRASE_ON_DEVICE: 'passphrase_on_device',
|
|
9855
9967
|
WORD: 'word',
|
|
9856
9968
|
};
|
|
9969
|
+
const createDeviceMessage = (type, payload) => ({
|
|
9970
|
+
event: DEVICE_EVENT,
|
|
9971
|
+
type,
|
|
9972
|
+
payload,
|
|
9973
|
+
});
|
|
9857
9974
|
|
|
9858
9975
|
const assertType = (res, resType) => {
|
|
9859
9976
|
const splitResTypes = Array.isArray(resType) ? resType : resType.split('|');
|
|
@@ -10478,109 +10595,6 @@ class GetFeatures extends BaseMethod {
|
|
|
10478
10595
|
}
|
|
10479
10596
|
}
|
|
10480
10597
|
|
|
10481
|
-
const HD_HARDENED = 0x80000000;
|
|
10482
|
-
const toHardened = (n) => (n | HD_HARDENED) >>> 0;
|
|
10483
|
-
const fromHardened = (n) => (n & ~HD_HARDENED) >>> 0;
|
|
10484
|
-
const PATH_NOT_VALID = TypedError('Method_InvalidParameter', 'Not a valid path');
|
|
10485
|
-
const PATH_NEGATIVE_VALUES = TypedError('Method_InvalidParameter', 'Path cannot contain negative values');
|
|
10486
|
-
const getHDPath = (path) => {
|
|
10487
|
-
const parts = path.toLowerCase().split('/');
|
|
10488
|
-
if (parts[0] !== 'm')
|
|
10489
|
-
throw PATH_NOT_VALID;
|
|
10490
|
-
return parts
|
|
10491
|
-
.filter((p) => p !== 'm' && p !== '')
|
|
10492
|
-
.map((p) => {
|
|
10493
|
-
let hardened = false;
|
|
10494
|
-
if (p.substr(p.length - 1) === "'") {
|
|
10495
|
-
hardened = true;
|
|
10496
|
-
p = p.substr(0, p.length - 1);
|
|
10497
|
-
}
|
|
10498
|
-
let n = parseInt(p);
|
|
10499
|
-
if (Number.isNaN(n)) {
|
|
10500
|
-
throw PATH_NOT_VALID;
|
|
10501
|
-
}
|
|
10502
|
-
else if (n < 0) {
|
|
10503
|
-
throw PATH_NEGATIVE_VALUES;
|
|
10504
|
-
}
|
|
10505
|
-
if (hardened) {
|
|
10506
|
-
n = toHardened(n);
|
|
10507
|
-
}
|
|
10508
|
-
return n;
|
|
10509
|
-
});
|
|
10510
|
-
};
|
|
10511
|
-
const isMultisigPath = (path) => Array.isArray(path) && path[0] === toHardened(48);
|
|
10512
|
-
const isSegwitPath = (path) => Array.isArray(path) && path[0] === toHardened(49);
|
|
10513
|
-
const getScriptType = (path) => {
|
|
10514
|
-
if (!Array.isArray(path) || path.length < 1)
|
|
10515
|
-
return 'SPENDADDRESS';
|
|
10516
|
-
const p1 = fromHardened(path[0]);
|
|
10517
|
-
switch (p1) {
|
|
10518
|
-
case 48:
|
|
10519
|
-
return 'SPENDMULTISIG';
|
|
10520
|
-
case 49:
|
|
10521
|
-
return 'SPENDP2SHWITNESS';
|
|
10522
|
-
case 84:
|
|
10523
|
-
return 'SPENDWITNESS';
|
|
10524
|
-
default:
|
|
10525
|
-
return 'SPENDADDRESS';
|
|
10526
|
-
}
|
|
10527
|
-
};
|
|
10528
|
-
const getOutputScriptType = (path) => {
|
|
10529
|
-
if (!Array.isArray(path) || path.length < 1)
|
|
10530
|
-
return 'PAYTOADDRESS';
|
|
10531
|
-
if (path[0] === 49) {
|
|
10532
|
-
return 'PAYTOP2SHWITNESS';
|
|
10533
|
-
}
|
|
10534
|
-
const p = fromHardened(path[0]);
|
|
10535
|
-
switch (p) {
|
|
10536
|
-
case 48:
|
|
10537
|
-
return 'PAYTOMULTISIG';
|
|
10538
|
-
case 49:
|
|
10539
|
-
return 'PAYTOP2SHWITNESS';
|
|
10540
|
-
case 84:
|
|
10541
|
-
return 'PAYTOWITNESS';
|
|
10542
|
-
default:
|
|
10543
|
-
return 'PAYTOADDRESS';
|
|
10544
|
-
}
|
|
10545
|
-
};
|
|
10546
|
-
const serializedPath = (path) => {
|
|
10547
|
-
const pathStr = path
|
|
10548
|
-
.map((p) => {
|
|
10549
|
-
if (p & HD_HARDENED) {
|
|
10550
|
-
return `${p & ~HD_HARDENED}'`;
|
|
10551
|
-
}
|
|
10552
|
-
return p;
|
|
10553
|
-
})
|
|
10554
|
-
.join('/');
|
|
10555
|
-
return `m/${pathStr}`;
|
|
10556
|
-
};
|
|
10557
|
-
const validatePath = (path, length = 0, base = false) => {
|
|
10558
|
-
let valid;
|
|
10559
|
-
if (typeof path === 'string') {
|
|
10560
|
-
valid = getHDPath(path);
|
|
10561
|
-
}
|
|
10562
|
-
else if (Array.isArray(path)) {
|
|
10563
|
-
valid = path.map((p) => {
|
|
10564
|
-
const n = parseInt(p);
|
|
10565
|
-
if (Number.isNaN(n)) {
|
|
10566
|
-
throw PATH_NOT_VALID;
|
|
10567
|
-
}
|
|
10568
|
-
else if (n < 0) {
|
|
10569
|
-
throw PATH_NEGATIVE_VALUES;
|
|
10570
|
-
}
|
|
10571
|
-
return n;
|
|
10572
|
-
});
|
|
10573
|
-
}
|
|
10574
|
-
else {
|
|
10575
|
-
valid = undefined;
|
|
10576
|
-
}
|
|
10577
|
-
if (!valid)
|
|
10578
|
-
throw PATH_NOT_VALID;
|
|
10579
|
-
if (length > 0 && valid.length < length)
|
|
10580
|
-
throw PATH_NOT_VALID;
|
|
10581
|
-
return base ? valid.splice(0, 3) : valid;
|
|
10582
|
-
};
|
|
10583
|
-
|
|
10584
10598
|
const hasHexPrefix = (str) => str.slice(0, 2).toLowerCase() === '0x';
|
|
10585
10599
|
const stripHexPrefix = (str) => (hasHexPrefix(str) ? str.slice(2) : str);
|
|
10586
10600
|
const addHexPrefix = (str) => (hasHexPrefix(str) ? str : `0x${str}`);
|
|
@@ -10973,8 +10987,8 @@ class BTCGetPublicKey extends BaseMethod {
|
|
|
10973
10987
|
}
|
|
10974
10988
|
init() {
|
|
10975
10989
|
this.allowDeviceMode = [...this.allowDeviceMode, UI_REQUEST.INITIALIZE];
|
|
10976
|
-
|
|
10977
|
-
const payload = hasBundle ? this.payload : { bundle: [this.payload] };
|
|
10990
|
+
this.hasBundle = Object.prototype.hasOwnProperty.call(this.payload, 'bundle');
|
|
10991
|
+
const payload = this.hasBundle ? this.payload : { bundle: [this.payload] };
|
|
10978
10992
|
validateParams(payload, [{ name: 'bundle', type: 'array' }]);
|
|
10979
10993
|
this.params = [];
|
|
10980
10994
|
payload.bundle.forEach((batch) => {
|
|
@@ -11726,7 +11740,7 @@ class EVMGetPublicKey extends BaseMethod {
|
|
|
11726
11740
|
}
|
|
11727
11741
|
}
|
|
11728
11742
|
|
|
11729
|
-
class EVMSignMessage$
|
|
11743
|
+
class EVMSignMessage$2 extends BaseMethod {
|
|
11730
11744
|
init() {
|
|
11731
11745
|
this.allowDeviceMode = [...this.allowDeviceMode, UI_REQUEST.INITIALIZE];
|
|
11732
11746
|
validateParams(this.payload, [
|
|
@@ -11791,7 +11805,7 @@ class EVMSignTransaction extends BaseMethod {
|
|
|
11791
11805
|
let v = request.signature_v;
|
|
11792
11806
|
const r = request.signature_r;
|
|
11793
11807
|
const s = request.signature_s;
|
|
11794
|
-
if (
|
|
11808
|
+
if (v == null || r == null || s == null) {
|
|
11795
11809
|
throw TypedError('Runtime', 'processTxRequest: Unexpected request');
|
|
11796
11810
|
}
|
|
11797
11811
|
if (chain_id && v <= 1) {
|
|
@@ -11946,7 +11960,7 @@ class EVMSignMessageEIP712 extends BaseMethod {
|
|
|
11946
11960
|
}
|
|
11947
11961
|
}
|
|
11948
11962
|
|
|
11949
|
-
class EVMSignMessage extends BaseMethod {
|
|
11963
|
+
class EVMSignMessage$1 extends BaseMethod {
|
|
11950
11964
|
init() {
|
|
11951
11965
|
this.allowDeviceMode = [...this.allowDeviceMode, UI_REQUEST.INITIALIZE];
|
|
11952
11966
|
validateParams(this.payload, [
|
|
@@ -11969,6 +11983,151 @@ class EVMSignMessage extends BaseMethod {
|
|
|
11969
11983
|
}
|
|
11970
11984
|
}
|
|
11971
11985
|
|
|
11986
|
+
class StarcoinGetAddress extends BaseMethod {
|
|
11987
|
+
constructor() {
|
|
11988
|
+
super(...arguments);
|
|
11989
|
+
this.hasBundle = false;
|
|
11990
|
+
}
|
|
11991
|
+
init() {
|
|
11992
|
+
var _a;
|
|
11993
|
+
this.allowDeviceMode = [...this.allowDeviceMode, UI_REQUEST.INITIALIZE];
|
|
11994
|
+
this.hasBundle = !!((_a = this.payload) === null || _a === void 0 ? void 0 : _a.bundle);
|
|
11995
|
+
const payload = this.hasBundle ? this.payload : { bundle: [this.payload] };
|
|
11996
|
+
validateParams(payload, [{ name: 'bundle', type: 'array' }]);
|
|
11997
|
+
this.params = [];
|
|
11998
|
+
payload.bundle.forEach((batch) => {
|
|
11999
|
+
var _a;
|
|
12000
|
+
const addressN = validatePath(batch.path, 3);
|
|
12001
|
+
validateParams(batch, [
|
|
12002
|
+
{ name: 'path', required: true },
|
|
12003
|
+
{ name: 'showOnOneKey', type: 'boolean' },
|
|
12004
|
+
]);
|
|
12005
|
+
const showOnOneKey = (_a = batch.showOnOneKey) !== null && _a !== void 0 ? _a : true;
|
|
12006
|
+
this.params.push({
|
|
12007
|
+
address_n: addressN,
|
|
12008
|
+
show_display: showOnOneKey,
|
|
12009
|
+
});
|
|
12010
|
+
});
|
|
12011
|
+
}
|
|
12012
|
+
run() {
|
|
12013
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
12014
|
+
const responses = [];
|
|
12015
|
+
for (let i = 0; i < this.params.length; i++) {
|
|
12016
|
+
const param = this.params[i];
|
|
12017
|
+
const res = yield this.device.commands.typedCall('StarcoinGetAddress', 'StarcoinAddress', Object.assign({}, param));
|
|
12018
|
+
responses.push(Object.assign({ path: serializedPath(param.address_n) }, res.message));
|
|
12019
|
+
}
|
|
12020
|
+
return Promise.resolve(this.hasBundle ? responses : responses[0]);
|
|
12021
|
+
});
|
|
12022
|
+
}
|
|
12023
|
+
}
|
|
12024
|
+
|
|
12025
|
+
class StarcoinGetPublicKey extends BaseMethod {
|
|
12026
|
+
constructor() {
|
|
12027
|
+
super(...arguments);
|
|
12028
|
+
this.hasBundle = false;
|
|
12029
|
+
}
|
|
12030
|
+
init() {
|
|
12031
|
+
var _a;
|
|
12032
|
+
this.allowDeviceMode = [...this.allowDeviceMode, UI_REQUEST.INITIALIZE];
|
|
12033
|
+
this.hasBundle = !!((_a = this.payload) === null || _a === void 0 ? void 0 : _a.bundle);
|
|
12034
|
+
const payload = this.hasBundle ? this.payload : { bundle: [this.payload] };
|
|
12035
|
+
validateParams(payload, [{ name: 'bundle', type: 'array' }]);
|
|
12036
|
+
this.params = [];
|
|
12037
|
+
payload.bundle.forEach((batch) => {
|
|
12038
|
+
var _a;
|
|
12039
|
+
const addressN = validatePath(batch.path, 3);
|
|
12040
|
+
validateParams(batch, [
|
|
12041
|
+
{ name: 'path', required: true },
|
|
12042
|
+
{ name: 'showOnOneKey', type: 'boolean' },
|
|
12043
|
+
]);
|
|
12044
|
+
const showOnOneKey = (_a = batch.showOnOneKey) !== null && _a !== void 0 ? _a : true;
|
|
12045
|
+
this.params.push({
|
|
12046
|
+
address_n: addressN,
|
|
12047
|
+
show_display: showOnOneKey,
|
|
12048
|
+
});
|
|
12049
|
+
});
|
|
12050
|
+
}
|
|
12051
|
+
run() {
|
|
12052
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
12053
|
+
const responses = [];
|
|
12054
|
+
for (let i = 0; i < this.params.length; i++) {
|
|
12055
|
+
const param = this.params[i];
|
|
12056
|
+
const res = yield this.device.commands.typedCall('StarcoinGetPublicKey', 'StarcoinPublicKey', Object.assign({}, param));
|
|
12057
|
+
responses.push(Object.assign({ path: serializedPath(param.address_n) }, res.message));
|
|
12058
|
+
}
|
|
12059
|
+
return Promise.resolve(this.hasBundle ? responses : responses[0]);
|
|
12060
|
+
});
|
|
12061
|
+
}
|
|
12062
|
+
}
|
|
12063
|
+
|
|
12064
|
+
class StarcoinSignMessage extends BaseMethod {
|
|
12065
|
+
init() {
|
|
12066
|
+
this.allowDeviceMode = [...this.allowDeviceMode, UI_REQUEST.INITIALIZE];
|
|
12067
|
+
validateParams(this.payload, [
|
|
12068
|
+
{ name: 'path', required: true },
|
|
12069
|
+
{ name: 'messageHex', type: 'hexString', required: true },
|
|
12070
|
+
]);
|
|
12071
|
+
const { path, messageHex } = this.payload;
|
|
12072
|
+
const addressN = validatePath(path, 3);
|
|
12073
|
+
this.params = {
|
|
12074
|
+
address_n: addressN,
|
|
12075
|
+
message: formatAnyHex(messageHex),
|
|
12076
|
+
};
|
|
12077
|
+
}
|
|
12078
|
+
run() {
|
|
12079
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
12080
|
+
const res = yield this.device.commands.typedCall('StarcoinSignMessage', 'StarcoinMessageSignature', Object.assign({}, this.params));
|
|
12081
|
+
return Promise.resolve(res.message);
|
|
12082
|
+
});
|
|
12083
|
+
}
|
|
12084
|
+
}
|
|
12085
|
+
|
|
12086
|
+
class StarcoinSignTransaction extends BaseMethod {
|
|
12087
|
+
init() {
|
|
12088
|
+
this.allowDeviceMode = [...this.allowDeviceMode, UI_REQUEST.INITIALIZE];
|
|
12089
|
+
validateParams(this.payload, [
|
|
12090
|
+
{ name: 'path', required: true },
|
|
12091
|
+
{ name: 'rawTx', type: 'hexString', required: true },
|
|
12092
|
+
]);
|
|
12093
|
+
const { path, rawTx } = this.payload;
|
|
12094
|
+
const addressN = validatePath(path, 3);
|
|
12095
|
+
this.params = {
|
|
12096
|
+
address_n: addressN,
|
|
12097
|
+
raw_tx: formatAnyHex(rawTx),
|
|
12098
|
+
};
|
|
12099
|
+
}
|
|
12100
|
+
run() {
|
|
12101
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
12102
|
+
const res = yield this.device.commands.typedCall('StarcoinSignTx', 'StarcoinSignedTx', Object.assign({}, this.params));
|
|
12103
|
+
return Promise.resolve(res.message);
|
|
12104
|
+
});
|
|
12105
|
+
}
|
|
12106
|
+
}
|
|
12107
|
+
|
|
12108
|
+
class EVMSignMessage extends BaseMethod {
|
|
12109
|
+
init() {
|
|
12110
|
+
this.allowDeviceMode = [...this.allowDeviceMode, UI_REQUEST.INITIALIZE];
|
|
12111
|
+
validateParams(this.payload, [
|
|
12112
|
+
{ name: 'publicKey', type: 'string', required: true },
|
|
12113
|
+
{ name: 'messageHex', type: 'hexString', required: true },
|
|
12114
|
+
{ name: 'signature', type: 'hexString', required: true },
|
|
12115
|
+
]);
|
|
12116
|
+
const { publicKey, messageHex, signature } = formatAnyHex(this.payload);
|
|
12117
|
+
this.params = {
|
|
12118
|
+
public_key: publicKey,
|
|
12119
|
+
message: messageHex,
|
|
12120
|
+
signature,
|
|
12121
|
+
};
|
|
12122
|
+
}
|
|
12123
|
+
run() {
|
|
12124
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
12125
|
+
const res = yield this.device.commands.typedCall('StarcoinVerifyMessage', 'Success', Object.assign({}, this.params));
|
|
12126
|
+
return Promise.resolve(res.message);
|
|
12127
|
+
});
|
|
12128
|
+
}
|
|
12129
|
+
}
|
|
12130
|
+
|
|
11972
12131
|
var ApiMethods = /*#__PURE__*/Object.freeze({
|
|
11973
12132
|
__proto__: null,
|
|
11974
12133
|
searchDevices: SearchDevices,
|
|
@@ -11992,11 +12151,16 @@ var ApiMethods = /*#__PURE__*/Object.freeze({
|
|
|
11992
12151
|
deviceWipe: DeviceWipe,
|
|
11993
12152
|
evmGetAddress: EvmGetAddress,
|
|
11994
12153
|
evmGetPublicKey: EVMGetPublicKey,
|
|
11995
|
-
evmSignMessage: EVMSignMessage$
|
|
12154
|
+
evmSignMessage: EVMSignMessage$2,
|
|
11996
12155
|
evmSignMessageEIP712: EVMSignMessageEIP712$1,
|
|
11997
12156
|
evmSignTransaction: EVMSignTransaction,
|
|
11998
12157
|
evmSignTypedData: EVMSignMessageEIP712,
|
|
11999
|
-
evmVerifyMessage: EVMSignMessage
|
|
12158
|
+
evmVerifyMessage: EVMSignMessage$1,
|
|
12159
|
+
starcoinGetAddress: StarcoinGetAddress,
|
|
12160
|
+
starcoinGetPublicKey: StarcoinGetPublicKey,
|
|
12161
|
+
starcoinSignMessage: StarcoinSignMessage,
|
|
12162
|
+
starcoinSignTransaction: StarcoinSignTransaction,
|
|
12163
|
+
starcoinVerifyMessage: EVMSignMessage
|
|
12000
12164
|
});
|
|
12001
12165
|
|
|
12002
12166
|
function findMethod(message) {
|
|
@@ -12206,6 +12370,9 @@ const callAPI = (message) => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
12206
12370
|
Log.debug('Call API - setDevice: ', device);
|
|
12207
12371
|
(_a = method.setDevice) === null || _a === void 0 ? void 0 : _a.call(method, device);
|
|
12208
12372
|
device.on(DEVICE.PIN, onDevicePinHandler);
|
|
12373
|
+
device.on(DEVICE.BUTTON, (d, code) => {
|
|
12374
|
+
onDeviceButtonHandler(d, code);
|
|
12375
|
+
});
|
|
12209
12376
|
try {
|
|
12210
12377
|
const inner = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
12211
12378
|
const unexpectedMode = device.hasUnexpectedMode(method.allowDeviceMode, method.requireDeviceMode);
|
|
@@ -12243,6 +12410,8 @@ const callAPI = (message) => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
12243
12410
|
method.dispose();
|
|
12244
12411
|
}
|
|
12245
12412
|
}
|
|
12413
|
+
closePopup();
|
|
12414
|
+
cleanup();
|
|
12246
12415
|
}
|
|
12247
12416
|
});
|
|
12248
12417
|
function initDeviceList(method) {
|
|
@@ -12292,6 +12461,13 @@ function initDeviceForBle(method) {
|
|
|
12292
12461
|
device.deviceConnector = _connector;
|
|
12293
12462
|
return device;
|
|
12294
12463
|
}
|
|
12464
|
+
const cleanup = () => {
|
|
12465
|
+
_uiPromises = [];
|
|
12466
|
+
Log.debug('Cleanup...');
|
|
12467
|
+
};
|
|
12468
|
+
const closePopup = () => {
|
|
12469
|
+
postMessage(createUiMessage(UI_REQUEST$1.CLOSE_UI_WINDOW));
|
|
12470
|
+
};
|
|
12295
12471
|
const onDevicePinHandler = (...[device, type, callback]) => __awaiter(void 0, void 0, void 0, function* () {
|
|
12296
12472
|
console.log('onDevicePinHandler');
|
|
12297
12473
|
const uiPromise = createUiPromise(UI_RESPONSE.RECEIVE_PIN, device);
|
|
@@ -12302,6 +12478,10 @@ const onDevicePinHandler = (...[device, type, callback]) => __awaiter(void 0, vo
|
|
|
12302
12478
|
const uiResp = yield uiPromise.promise;
|
|
12303
12479
|
callback(null, uiResp.payload);
|
|
12304
12480
|
});
|
|
12481
|
+
const onDeviceButtonHandler = (...[device, request]) => {
|
|
12482
|
+
postMessage(createDeviceMessage(DEVICE.BUTTON, Object.assign(Object.assign({}, request), { device: device.toMessageObject() })));
|
|
12483
|
+
postMessage(createUiMessage(UI_REQUEST$1.REQUEST_BUTTON, { device: device.toMessageObject() }));
|
|
12484
|
+
};
|
|
12305
12485
|
const postMessage = (message) => {
|
|
12306
12486
|
_core.emit(CORE_EVENT, message);
|
|
12307
12487
|
};
|
|
@@ -12384,6 +12564,7 @@ exports.CORE_EVENT = CORE_EVENT;
|
|
|
12384
12564
|
exports.Core = Core;
|
|
12385
12565
|
exports.DEFAULT_PRIORITY = DEFAULT_PRIORITY;
|
|
12386
12566
|
exports.DEVICE = DEVICE;
|
|
12567
|
+
exports.DEVICE_EVENT = DEVICE_EVENT;
|
|
12387
12568
|
exports.DataManager = DataManager;
|
|
12388
12569
|
exports.ERRORS = errors;
|
|
12389
12570
|
exports.IFRAME = IFRAME;
|
|
@@ -12393,6 +12574,7 @@ exports.UI_REQUEST = UI_REQUEST$1;
|
|
|
12393
12574
|
exports.UI_RESPONSE = UI_RESPONSE;
|
|
12394
12575
|
exports.corsValidator = corsValidator;
|
|
12395
12576
|
exports.create = create;
|
|
12577
|
+
exports.createDeviceMessage = createDeviceMessage;
|
|
12396
12578
|
exports.createErrorMessage = createErrorMessage;
|
|
12397
12579
|
exports.createIFrameMessage = createIFrameMessage;
|
|
12398
12580
|
exports.createResponseMessage = createResponseMessage;
|
|
@@ -12400,7 +12582,12 @@ exports.createUiMessage = createUiMessage;
|
|
|
12400
12582
|
exports.createUiResponse = createUiResponse;
|
|
12401
12583
|
exports["default"] = HardwareSdk;
|
|
12402
12584
|
exports.enableLog = enableLog;
|
|
12585
|
+
exports.getDeviceLabel = getDeviceLabel;
|
|
12586
|
+
exports.getDeviceType = getDeviceType;
|
|
12587
|
+
exports.getDeviceUUID = getDeviceUUID;
|
|
12403
12588
|
exports.getEnv = getEnv;
|
|
12589
|
+
exports.getHDPath = getHDPath;
|
|
12590
|
+
exports.getScriptType = getScriptType;
|
|
12404
12591
|
exports.getTimeStamp = getTimeStamp;
|
|
12405
12592
|
exports.httpRequest = httpRequest;
|
|
12406
12593
|
exports.initCore = init;
|
package/dist/inject.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inject.d.ts","sourceRoot":"","sources":["../src/inject.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,UAAU,CAAC;IACjB,YAAY,EAAE,YAAY,CAAC;IAC3B,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAC5B,UAAU,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAClC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC3B;AAED,eAAO,MAAM,MAAM,+DAOhB,SAAS,KAAG,
|
|
1
|
+
{"version":3,"file":"inject.d.ts","sourceRoot":"","sources":["../src/inject.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,UAAU,CAAC;IACjB,YAAY,EAAE,YAAY,CAAC;IAC3B,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAC5B,UAAU,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAClC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC3B;AAED,eAAO,MAAM,MAAM,+DAOhB,SAAS,KAAG,OA6Fd,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { TxInput as OrigTxInput, PrevInput,
|
|
1
|
+
import { TxInput as OrigTxInput, PrevInput, TxOutputBinType, TxOutputType, TxInputType } from '@onekeyfe/hd-transport/src/types/messages';
|
|
2
2
|
import type { CommonParams, Response } from '../params';
|
|
3
3
|
export declare type SignedTransaction = {
|
|
4
4
|
signatures: string[];
|
|
@@ -70,5 +70,5 @@ export declare type BTCSignTransactionParams = {
|
|
|
70
70
|
branchId?: number;
|
|
71
71
|
timestamp?: number;
|
|
72
72
|
};
|
|
73
|
-
export declare function btcSignTransaction(connectId: string, params: CommonParams & BTCSignTransactionParams): Response<
|
|
73
|
+
export declare function btcSignTransaction(connectId: string, params: CommonParams & BTCSignTransactionParams): Response<SignedTransaction>;
|
|
74
74
|
//# sourceMappingURL=btcSignTransaction.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"btcSignTransaction.d.ts","sourceRoot":"","sources":["../../../src/types/api/btcSignTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,IAAI,WAAW,EACtB,SAAS,EACT,
|
|
1
|
+
{"version":3,"file":"btcSignTransaction.d.ts","sourceRoot":"","sources":["../../../src/types/api/btcSignTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,IAAI,WAAW,EACtB,SAAS,EACT,eAAe,EACf,YAAY,EACZ,WAAW,EACZ,MAAM,2CAA2C,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAExD,oBAAY,iBAAiB,GAAG;IAC9B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,oBAAY,kBAAkB,GAAG;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,oBAAY,cAAc,GACtB;IACE,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,WAAW,EAAE,eAAe,EAAE,CAAC;IAC/B,OAAO,CAAC,EAAE,OAAO,SAAS,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GACD;IACE,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,SAAS,CAAC;IAC/B,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEN,oBAAY,cAAc,GAAG;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,oBAAY,gBAAgB,GAAG;IAC7B,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,IAAI,EAAE,cAAc,EAAE,CAAC;IACvB,MAAM,EAAE,cAAc,EAAE,CAAC;CAC1B,CAAC;AAEF,oBAAY,wBAAwB,GAAG;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,OAAO,CAAC,EAAE;QAER,SAAS,EAAE,gBAAgB,CAAC;KAC7B,CAAC;IACF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,kBAAkB,CACxC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,YAAY,GAAG,wBAAwB,GAC9C,QAAQ,CAAC,iBAAiB,CAAC,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export type { BTCAddress, BTCGetAddressParams } from './btcGetAddress';
|
|
2
|
+
export type { BTCPublicKey, BTCGetPublicKeyParams } from './btcGetPublicKey';
|
|
3
|
+
export type { BTCSignMessageParams } from './btcSignMessage';
|
|
4
|
+
export type { BTCVerifyMessageParams } from './btcVerifyMessage';
|
|
5
|
+
export type { RefTransaction, AccountAddress, AccountAddresses, BTCSignTransactionParams, SignedTransaction, TransactionOptions, } from './btcSignTransaction';
|
|
6
|
+
export type { DeviceChangePinParams } from './deviceChangePin';
|
|
7
|
+
export type { DeviceFlagsParams } from './deviceFlags';
|
|
8
|
+
export type { DeviceRecoveryParams } from './deviceRecovery';
|
|
9
|
+
export type { DeviceResetParams } from './deviceReset';
|
|
10
|
+
export type { DeviceSettingsParams } from './deviceSettings';
|
|
11
|
+
export type { EVMAddress, EVMGetAddressParams } from './evmGetAddress';
|
|
12
|
+
export type { EVMPublicKey, EVMGetPublicKeyParams } from './evmGetPublicKey';
|
|
13
|
+
export type { EVMSignMessageParams } from './evmSignMessage';
|
|
14
|
+
export type { EVMSignMessageEIP712Params } from './evmSignMessageEIP712';
|
|
15
|
+
export type { EVMTransaction, EVMTransactionEIP1559, EVMSignedTx, EVMSignTransactionParams, EVMAccessList, } from './evmSignTransaction';
|
|
16
|
+
export type { EthereumSignTypedDataTypes, EthereumSignTypedDataTypeProperty, EthereumSignTypedDataMessage, EVMSignTypedDataParams, } from './evmSignTypedData';
|
|
17
|
+
export type { EVMVerifyMessageParams } from './evmVerifyMessage';
|
|
18
|
+
export type { StarcoinAddress, StarcoinGetAddressParams } from './starcoinGetAddress';
|
|
19
|
+
export type { StarcoinPublicKey, StarcoinGetPublicKeyParams } from './starcoinGetPublicKey';
|
|
20
|
+
export type { StarcoinSignMessageParams } from './starcoinSignMessage';
|
|
21
|
+
export type { StarcoinSignTransactionParams } from './starcoinSignTransaction';
|
|
22
|
+
export type { StarcoinVerifyMessageParams } from './starcoinVerifyMessage';
|
|
23
|
+
//# sourceMappingURL=export.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../../src/types/api/export.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACvE,YAAY,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC7E,YAAY,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,YAAY,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AACjE,YAAY,EACV,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,wBAAwB,EACxB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAE9B,YAAY,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC/D,YAAY,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,YAAY,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,YAAY,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,YAAY,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAE7D,YAAY,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACvE,YAAY,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC7E,YAAY,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,YAAY,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AACzE,YAAY,EACV,cAAc,EACd,qBAAqB,EACrB,WAAW,EACX,wBAAwB,EACxB,aAAa,GACd,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,0BAA0B,EAC1B,iCAAiC,EACjC,4BAA4B,EAC5B,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEjE,YAAY,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AACtF,YAAY,EAAE,iBAAiB,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AAC5F,YAAY,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AACvE,YAAY,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAC;AAC/E,YAAY,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC"}
|