@onekeyfe/hd-core 0.3.38 → 0.3.40-alpha.0
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/polkadot/networks.d.ts +2 -1
- package/dist/api/polkadot/networks.d.ts.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.js +33 -8
- package/dist/utils/deviceFeaturesUtils.d.ts.map +1 -1
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/api/polkadot/networks.ts +12 -0
- package/src/utils/deviceFeaturesUtils.ts +15 -5
- package/src/utils/index.ts +2 -0
- package/src/utils/semver.test.js +53 -0
|
@@ -4,7 +4,8 @@ declare enum Networks {
|
|
|
4
4
|
Westend = "westend",
|
|
5
5
|
Kusama = "kusama",
|
|
6
6
|
Astar = "astar",
|
|
7
|
-
JoyStream = "joystream"
|
|
7
|
+
JoyStream = "joystream",
|
|
8
|
+
Manta = "manta"
|
|
8
9
|
}
|
|
9
10
|
export default Networks;
|
|
10
11
|
export declare function getPolkadotVersionRange(network: string): DeviceFirmwareRange;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"networks.d.ts","sourceRoot":"","sources":["../../../src/api/polkadot/networks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAGvD,aAAK,QAAQ;IACX,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,SAAS,cAAc;
|
|
1
|
+
{"version":3,"file":"networks.d.ts","sourceRoot":"","sources":["../../../src/api/polkadot/networks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAGvD,aAAK,QAAQ;IACX,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,SAAS,cAAc;IACvB,KAAK,UAAU;CAChB;AA+BD,eAAe,QAAQ,CAAC;AAExB,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,uBAEtD;AAED,wBAAgB,iCAAiC,CAAC,QAAQ,EAAE,MAAM,EAAE;;;;;;;EAQnE"}
|
package/dist/index.d.ts
CHANGED
|
@@ -2413,6 +2413,8 @@ declare const getDeviceTypeByBleName: (name?: string) => IDeviceType | null;
|
|
|
2413
2413
|
declare const getDeviceTypeByDeviceId: (deviceId?: string) => IDeviceType;
|
|
2414
2414
|
declare const getDeviceUUID: (features: Features) => string;
|
|
2415
2415
|
declare const getDeviceLabel: (features: Features) => string;
|
|
2416
|
+
declare const getDeviceFirmwareVersion: (features: Features | undefined) => IVersionArray;
|
|
2417
|
+
declare const getDeviceBootloaderVersion: (features: Features) => IVersionArray;
|
|
2416
2418
|
declare const supportInputPinOnSoftware: (features: Features) => SupportFeatureType;
|
|
2417
2419
|
declare const getFirmwareUpdateField: ({ features, updateType, targetVersion, }: {
|
|
2418
2420
|
features: Features;
|
|
@@ -2486,4 +2488,4 @@ declare const HardwareSdk: ({ init, call, dispose, eventEmitter, uiResponse, can
|
|
|
2486
2488
|
declare const HardwareSDKLowLevel: ({ init, call, dispose, eventEmitter, addHardwareGlobalEventListener, uiResponse, cancel, updateSettings, }: LowLevelInjectApi) => LowLevelCoreApi;
|
|
2487
2489
|
declare const HardwareTopLevelSdk: () => CoreApi;
|
|
2488
2490
|
|
|
2489
|
-
export { AccountAddress, AccountAddresses, AlgoAddress, AlgoGetAddressParams, AlgoSignTransactionParams, AlgoSignedTx, AptosAddress, AptosGetAddressParams, AptosGetPublicKeyParams, AptosMessageSignature, AptosPublicKey, AptosSignMessageParams, AptosSignTransactionParams, AptosSignedTx, AssetsMap, BTCAddress, BTCGetAddressParams, BTCGetPublicKeyParams, BTCPublicKey, BTCSignMessageParams, BTCSignTransactionParams, BTCVerifyMessageParams, BleReleaseInfoEvent, BleReleaseInfoPayload, CORE_EVENT, CallMethod, CallMethodAnyResponse, CallMethodKeys, CallMethodPayload, CallMethodResponse, CallMethodUnion, CardanoAddress, CardanoGetAddressMethodParams, CardanoGetAddressParams, CardanoSignTransaction, CardanoSignedTxData, CipheredKeyValue, CipheredKeyValueParams, CommonParams, ConfluxAddress, ConfluxGetAddressParams, ConfluxSignMessageCIP23Params, ConfluxSignMessageParams, ConfluxSignTransactionParams, ConfluxSignedTx, ConfluxTransaction, ConnectSettings, Core, CoreApi, CoreMessage, CosmosAddress, CosmosGetAddressParams, CosmosGetPublicKeyParams, CosmosPublicKey, CosmosSignTransactionParams, CosmosSignedTx, DEFAULT_PRIORITY, DEVICE, DEVICE_EVENT, DataManager, Device$1 as Device, DeviceButtonRequest, DeviceButtonRequestPayload, DeviceChangePinParams, DeviceConnnectRequest, DeviceDisconnnectRequest, DeviceEvent, DeviceEventListenerFn, DeviceEventMessage, DeviceFeaturesPayload, DeviceFirmwareRange, DeviceFlagsParams, DeviceMode, DeviceModelToTypes, DeviceRecoveryParams, DeviceResetParams, DeviceSendFeatures, DeviceSendSupportFeatures, DeviceSettingsParams, DeviceStatus, DeviceSupportFeatures, DeviceSupportFeaturesPayload, DeviceTypeMap, DeviceTypeToModels, DeviceUploadResourceParams, DeviceVerifyParams, DeviceVerifySignature, EVMAccessList, EVMAddress, EVMGetAddressParams, EVMGetPublicKeyParams, EVMPublicKey, EVMSignMessageEIP712Params, EVMSignMessageParams, EVMSignTransactionParams, EVMSignTypedDataParams, EVMSignedTx, EVMTransaction, EVMTransactionEIP1559, EVMVerifyMessageParams, EthereumSignTypedDataMessage, EthereumSignTypedDataTypeProperty, EthereumSignTypedDataTypes, FIRMWARE, FIRMWARE_EVENT, Features, FilecoinAddress, FilecoinGetAddressParams, FilecoinSignTransactionParams, FilecoinSignedTx, FirmwareEvent, FirmwareMessage, FirmwareProgress, FirmwareRange, FirmwareRelease$1 as FirmwareRelease, FirmwareTip, FirmwareUpdateBinaryParams, FirmwareUpdateParams, HardwareSDKLowLevel, HardwareTopLevelSdk, IBLEFirmwareReleaseInfo, IDeviceBLEFirmwareStatus, IDeviceFirmwareStatus, IDeviceModel, IDeviceType, IFRAME, IFirmwareReleaseInfo, IFrameBridge, IFrameCallMessage, IFrameCancelMessage, IFrameEvent, IFrameEventMessage, IFrameInit, ILocale, ITransportStatus, IVersionArray, KaspaAddress, KaspaGetAddressParams, KaspaSignInputParams, KaspaSignOutputParams, KaspaSignTransactionParams, KaspaSignature, KnownDevice, LOG, LOG_EVENT, LogBlockEvent, LogEvent, LogEventMessage, LogOutput, LoggerNames, LowLevelCoreApi, LowLevelInjectApi, MajorVersion, MethodResponseMessage, NEMAddress, NEMAggregateModificationTransaction, NEMGetAddressParams, NEMImportanceTransaction, NEMMosaic, NEMMosaicCreationTransaction, NEMMultisigTransaction, NEMProvisionNamespaceTransaction, NEMSignTransactionParams, NEMSupplyChangeTransaction, NEMTransaction, NEMTransferTransaction, NearAddress, NearGetAddressParams, NearSignTransactionParams, NexaAddress, NexaGetAddressParams, NexaSignInputParams, NexaSignOutputParams, NexaSignTransactionParams, NexaSignature, Params, PolkadotAddress, PolkadotGetAddressParams, PolkadotSignTransactionParams, PolkadotSignedTx, PostMessageEvent, PreviousAddressResult, RESPONSE_EVENT, RefTransaction, ReleaseInfo, ReleaseInfoEvent, ReleaseInfoPayload, RemoteConfigResponse, Response, SearchDevice, SignedTransaction, SolanaAddress, SolanaGetAddressParams, SolanaSignTransactionParams, SolanaSignedTx, StarcoinAddress, StarcoinGetAddressParams, StarcoinGetPublicKeyParams, StarcoinPublicKey, StarcoinSignMessageParams, StarcoinSignTransactionParams, StarcoinVerifyMessageParams, StellarAddress, StellarAsset, StellarGetAddressParams, StellarOperation, StellarSignTransactionParams, StellarTransaction, StrictFeatures, Success, SuiAddress, SuiGetAddressParams, SuiGetPublicKeyParams, SuiPublicKey, SuiSignMessageParams, SuiSignTransactionParams, SuiSignedTx, SupportFeatureType, SupportFeatures, TopLevelInjectApi, TransactionOptions, TransportReleaseStatus, TronAddress, TronDelegateResourceContract, TronFreezeBalanceV2Contract, TronGetAddressParams, TronSignMessageParams, TronSignTransactionParams, TronTransaction, TronTransactionContract, TronTransferContract, TronTriggerSmartContract, TronUnDelegateResourceContract, TronUnfreezeBalanceV2Contract, TronWithdrawBalanceContract, TronWithdrawExpireUnfreezeContract, UI_EVENT, UI_REQUEST, UI_RESPONSE, UiEvent, UiEventMessage, UiPromise, UiPromiseResponse, UiRequestButton, UiRequestDeviceAction, UiRequestPassphrase, UiRequestPassphraseOnDevice, UiRequestWithoutPayload, UiResponseEvent, UiResponseMessage, UiResponsePassphrase, UiResponsePin, UnavailableCapabilities, UnavailableCapability, Unsuccessful, VersionArray, checkNeedUpdateBootForClassicAndMini, checkNeedUpdateBootForTouch, corsValidator, createDeviceMessage, createErrorMessage, createFirmwareMessage, createIFrameMessage, createLogMessage, createResponseMessage, createUiMessage, createUiResponse, HardwareSdk as default, enableLog, getDeviceLabel, getDeviceType, getDeviceTypeByBleName, getDeviceTypeByDeviceId, getDeviceUUID, getEnv, getFirmwareUpdateField, getHDPath, getHomeScreenHex, getLog, getLogger, getOutputScriptType, getSDKVersion, getScriptType, getTimeStamp, httpRequest, init as initCore, isBleConnect, isValidVersionArray, isValidVersionString, normalizeVersionArray, parseConnectSettings, parseMessage, patchFeatures, safeThrowError, setLoggerPostMessage, supportInputPinOnSoftware, versionCompare, versionSplit, wait };
|
|
2491
|
+
export { AccountAddress, AccountAddresses, AlgoAddress, AlgoGetAddressParams, AlgoSignTransactionParams, AlgoSignedTx, AptosAddress, AptosGetAddressParams, AptosGetPublicKeyParams, AptosMessageSignature, AptosPublicKey, AptosSignMessageParams, AptosSignTransactionParams, AptosSignedTx, AssetsMap, BTCAddress, BTCGetAddressParams, BTCGetPublicKeyParams, BTCPublicKey, BTCSignMessageParams, BTCSignTransactionParams, BTCVerifyMessageParams, BleReleaseInfoEvent, BleReleaseInfoPayload, CORE_EVENT, CallMethod, CallMethodAnyResponse, CallMethodKeys, CallMethodPayload, CallMethodResponse, CallMethodUnion, CardanoAddress, CardanoGetAddressMethodParams, CardanoGetAddressParams, CardanoSignTransaction, CardanoSignedTxData, CipheredKeyValue, CipheredKeyValueParams, CommonParams, ConfluxAddress, ConfluxGetAddressParams, ConfluxSignMessageCIP23Params, ConfluxSignMessageParams, ConfluxSignTransactionParams, ConfluxSignedTx, ConfluxTransaction, ConnectSettings, Core, CoreApi, CoreMessage, CosmosAddress, CosmosGetAddressParams, CosmosGetPublicKeyParams, CosmosPublicKey, CosmosSignTransactionParams, CosmosSignedTx, DEFAULT_PRIORITY, DEVICE, DEVICE_EVENT, DataManager, Device$1 as Device, DeviceButtonRequest, DeviceButtonRequestPayload, DeviceChangePinParams, DeviceConnnectRequest, DeviceDisconnnectRequest, DeviceEvent, DeviceEventListenerFn, DeviceEventMessage, DeviceFeaturesPayload, DeviceFirmwareRange, DeviceFlagsParams, DeviceMode, DeviceModelToTypes, DeviceRecoveryParams, DeviceResetParams, DeviceSendFeatures, DeviceSendSupportFeatures, DeviceSettingsParams, DeviceStatus, DeviceSupportFeatures, DeviceSupportFeaturesPayload, DeviceTypeMap, DeviceTypeToModels, DeviceUploadResourceParams, DeviceVerifyParams, DeviceVerifySignature, EVMAccessList, EVMAddress, EVMGetAddressParams, EVMGetPublicKeyParams, EVMPublicKey, EVMSignMessageEIP712Params, EVMSignMessageParams, EVMSignTransactionParams, EVMSignTypedDataParams, EVMSignedTx, EVMTransaction, EVMTransactionEIP1559, EVMVerifyMessageParams, EthereumSignTypedDataMessage, EthereumSignTypedDataTypeProperty, EthereumSignTypedDataTypes, FIRMWARE, FIRMWARE_EVENT, Features, FilecoinAddress, FilecoinGetAddressParams, FilecoinSignTransactionParams, FilecoinSignedTx, FirmwareEvent, FirmwareMessage, FirmwareProgress, FirmwareRange, FirmwareRelease$1 as FirmwareRelease, FirmwareTip, FirmwareUpdateBinaryParams, FirmwareUpdateParams, HardwareSDKLowLevel, HardwareTopLevelSdk, IBLEFirmwareReleaseInfo, IDeviceBLEFirmwareStatus, IDeviceFirmwareStatus, IDeviceModel, IDeviceType, IFRAME, IFirmwareReleaseInfo, IFrameBridge, IFrameCallMessage, IFrameCancelMessage, IFrameEvent, IFrameEventMessage, IFrameInit, ILocale, ITransportStatus, IVersionArray, KaspaAddress, KaspaGetAddressParams, KaspaSignInputParams, KaspaSignOutputParams, KaspaSignTransactionParams, KaspaSignature, KnownDevice, LOG, LOG_EVENT, LogBlockEvent, LogEvent, LogEventMessage, LogOutput, LoggerNames, LowLevelCoreApi, LowLevelInjectApi, MajorVersion, MethodResponseMessage, NEMAddress, NEMAggregateModificationTransaction, NEMGetAddressParams, NEMImportanceTransaction, NEMMosaic, NEMMosaicCreationTransaction, NEMMultisigTransaction, NEMProvisionNamespaceTransaction, NEMSignTransactionParams, NEMSupplyChangeTransaction, NEMTransaction, NEMTransferTransaction, NearAddress, NearGetAddressParams, NearSignTransactionParams, NexaAddress, NexaGetAddressParams, NexaSignInputParams, NexaSignOutputParams, NexaSignTransactionParams, NexaSignature, Params, PolkadotAddress, PolkadotGetAddressParams, PolkadotSignTransactionParams, PolkadotSignedTx, PostMessageEvent, PreviousAddressResult, RESPONSE_EVENT, RefTransaction, ReleaseInfo, ReleaseInfoEvent, ReleaseInfoPayload, RemoteConfigResponse, Response, SearchDevice, SignedTransaction, SolanaAddress, SolanaGetAddressParams, SolanaSignTransactionParams, SolanaSignedTx, StarcoinAddress, StarcoinGetAddressParams, StarcoinGetPublicKeyParams, StarcoinPublicKey, StarcoinSignMessageParams, StarcoinSignTransactionParams, StarcoinVerifyMessageParams, StellarAddress, StellarAsset, StellarGetAddressParams, StellarOperation, StellarSignTransactionParams, StellarTransaction, StrictFeatures, Success, SuiAddress, SuiGetAddressParams, SuiGetPublicKeyParams, SuiPublicKey, SuiSignMessageParams, SuiSignTransactionParams, SuiSignedTx, SupportFeatureType, SupportFeatures, TopLevelInjectApi, TransactionOptions, TransportReleaseStatus, TronAddress, TronDelegateResourceContract, TronFreezeBalanceV2Contract, TronGetAddressParams, TronSignMessageParams, TronSignTransactionParams, TronTransaction, TronTransactionContract, TronTransferContract, TronTriggerSmartContract, TronUnDelegateResourceContract, TronUnfreezeBalanceV2Contract, TronWithdrawBalanceContract, TronWithdrawExpireUnfreezeContract, UI_EVENT, UI_REQUEST, UI_RESPONSE, UiEvent, UiEventMessage, UiPromise, UiPromiseResponse, UiRequestButton, UiRequestDeviceAction, UiRequestPassphrase, UiRequestPassphraseOnDevice, UiRequestWithoutPayload, UiResponseEvent, UiResponseMessage, UiResponsePassphrase, UiResponsePin, UnavailableCapabilities, UnavailableCapability, Unsuccessful, VersionArray, checkNeedUpdateBootForClassicAndMini, checkNeedUpdateBootForTouch, corsValidator, createDeviceMessage, createErrorMessage, createFirmwareMessage, createIFrameMessage, createLogMessage, createResponseMessage, createUiMessage, createUiResponse, HardwareSdk as default, enableLog, getDeviceBootloaderVersion, getDeviceFirmwareVersion, getDeviceLabel, getDeviceType, getDeviceTypeByBleName, getDeviceTypeByDeviceId, getDeviceUUID, getEnv, getFirmwareUpdateField, getHDPath, getHomeScreenHex, getLog, getLogger, getOutputScriptType, getSDKVersion, getScriptType, getTimeStamp, httpRequest, init as initCore, isBleConnect, isValidVersionArray, isValidVersionString, normalizeVersionArray, parseConnectSettings, parseMessage, patchFeatures, safeThrowError, setLoggerPostMessage, supportInputPinOnSoftware, versionCompare, versionSplit, wait };
|
package/dist/index.js
CHANGED
|
@@ -23400,8 +23400,10 @@ const getDeviceType = (features) => {
|
|
|
23400
23400
|
return 'classic1s';
|
|
23401
23401
|
case 'MINI':
|
|
23402
23402
|
return 'mini';
|
|
23403
|
+
case 'TOUCH':
|
|
23404
|
+
return 'touch';
|
|
23403
23405
|
case 'TOUCH_PRO':
|
|
23404
|
-
return '
|
|
23406
|
+
return 'touch';
|
|
23405
23407
|
}
|
|
23406
23408
|
if (!features.serial_no)
|
|
23407
23409
|
return 'classic';
|
|
@@ -23421,6 +23423,8 @@ const getDeviceTypeByBleName = (name) => {
|
|
|
23421
23423
|
return 'mini';
|
|
23422
23424
|
if (name.startsWith('T'))
|
|
23423
23425
|
return 'touch';
|
|
23426
|
+
if (name.startsWith('P'))
|
|
23427
|
+
return 'touch';
|
|
23424
23428
|
return 'classic';
|
|
23425
23429
|
};
|
|
23426
23430
|
const getDeviceTypeByDeviceId = (deviceId) => {
|
|
@@ -23450,16 +23454,19 @@ const getDeviceLabel = (features) => {
|
|
|
23450
23454
|
return `My OneKey ${deviceType.charAt(0).toUpperCase() + deviceType.slice(1)}`;
|
|
23451
23455
|
};
|
|
23452
23456
|
const getDeviceFirmwareVersion = (features) => {
|
|
23453
|
-
var _a, _b, _c;
|
|
23457
|
+
var _a, _b, _c, _d, _e;
|
|
23454
23458
|
if (!features)
|
|
23455
23459
|
return [0, 0, 0];
|
|
23456
|
-
if (features.
|
|
23457
|
-
return features.
|
|
23460
|
+
if (semver__default["default"].valid(features.onekey_firmware_version)) {
|
|
23461
|
+
return (_a = features.onekey_firmware_version) === null || _a === void 0 ? void 0 : _a.split('.');
|
|
23462
|
+
}
|
|
23463
|
+
if (semver__default["default"].valid(features.onekey_version)) {
|
|
23464
|
+
return (_b = features.onekey_version) === null || _b === void 0 ? void 0 : _b.split('.');
|
|
23458
23465
|
}
|
|
23459
23466
|
return [
|
|
23460
|
-
(
|
|
23461
|
-
(
|
|
23462
|
-
(
|
|
23467
|
+
(_c = features.major_version) !== null && _c !== void 0 ? _c : '0',
|
|
23468
|
+
(_d = features.minor_version) !== null && _d !== void 0 ? _d : '0',
|
|
23469
|
+
(_e = features.patch_version) !== null && _e !== void 0 ? _e : '0',
|
|
23463
23470
|
];
|
|
23464
23471
|
};
|
|
23465
23472
|
const getDeviceBLEFirmwareVersion = (features) => {
|
|
@@ -23472,6 +23479,10 @@ const getDeviceBLEFirmwareVersion = (features) => {
|
|
|
23472
23479
|
return features.ble_ver.split('.');
|
|
23473
23480
|
};
|
|
23474
23481
|
const getDeviceBootloaderVersion = (features) => {
|
|
23482
|
+
var _a, _b;
|
|
23483
|
+
if (semver__default["default"].valid(features.onekey_boot_version)) {
|
|
23484
|
+
return (_a = features.onekey_boot_version) === null || _a === void 0 ? void 0 : _a.split('.');
|
|
23485
|
+
}
|
|
23475
23486
|
if (!features.bootloader_version) {
|
|
23476
23487
|
if (features.bootloader_mode) {
|
|
23477
23488
|
return [features.major_version, features.minor_version, features.patch_version];
|
|
@@ -23479,7 +23490,7 @@ const getDeviceBootloaderVersion = (features) => {
|
|
|
23479
23490
|
return [0, 0, 0];
|
|
23480
23491
|
}
|
|
23481
23492
|
if (semver__default["default"].valid(features.bootloader_version)) {
|
|
23482
|
-
return features.bootloader_version.split('.');
|
|
23493
|
+
return (_b = features.bootloader_version) === null || _b === void 0 ? void 0 : _b.split('.');
|
|
23483
23494
|
}
|
|
23484
23495
|
return [0, 0, 0];
|
|
23485
23496
|
};
|
|
@@ -31080,6 +31091,7 @@ var Networks;
|
|
|
31080
31091
|
Networks["Kusama"] = "kusama";
|
|
31081
31092
|
Networks["Astar"] = "astar";
|
|
31082
31093
|
Networks["JoyStream"] = "joystream";
|
|
31094
|
+
Networks["Manta"] = "manta";
|
|
31083
31095
|
})(Networks || (Networks = {}));
|
|
31084
31096
|
const baseVersionRange = {
|
|
31085
31097
|
model_mini: {
|
|
@@ -31098,6 +31110,14 @@ const specialVersionRange = {
|
|
|
31098
31110
|
min: '4.7.0',
|
|
31099
31111
|
},
|
|
31100
31112
|
},
|
|
31113
|
+
[Networks.Manta]: {
|
|
31114
|
+
model_mini: {
|
|
31115
|
+
min: '3.7.0',
|
|
31116
|
+
},
|
|
31117
|
+
model_touch: {
|
|
31118
|
+
min: '4.9.0',
|
|
31119
|
+
},
|
|
31120
|
+
},
|
|
31101
31121
|
};
|
|
31102
31122
|
function getPolkadotVersionRange(network) {
|
|
31103
31123
|
var _a;
|
|
@@ -31107,6 +31127,9 @@ function getPolkadotVersionRangeWithBundle(networks) {
|
|
|
31107
31127
|
if (networks.includes(Networks.JoyStream)) {
|
|
31108
31128
|
return specialVersionRange[Networks.JoyStream];
|
|
31109
31129
|
}
|
|
31130
|
+
if (networks.includes(Networks.Manta)) {
|
|
31131
|
+
return specialVersionRange[Networks.Manta];
|
|
31132
|
+
}
|
|
31110
31133
|
return baseVersionRange;
|
|
31111
31134
|
}
|
|
31112
31135
|
|
|
@@ -32914,6 +32937,8 @@ exports.createUiMessage = createUiMessage;
|
|
|
32914
32937
|
exports.createUiResponse = createUiResponse;
|
|
32915
32938
|
exports["default"] = HardwareSdk;
|
|
32916
32939
|
exports.enableLog = enableLog;
|
|
32940
|
+
exports.getDeviceBootloaderVersion = getDeviceBootloaderVersion;
|
|
32941
|
+
exports.getDeviceFirmwareVersion = getDeviceFirmwareVersion;
|
|
32917
32942
|
exports.getDeviceLabel = getDeviceLabel;
|
|
32918
32943
|
exports.getDeviceType = getDeviceType;
|
|
32919
32944
|
exports.getDeviceTypeByBleName = getDeviceTypeByBleName;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deviceFeaturesUtils.d.ts","sourceRoot":"","sources":["../../src/utils/deviceFeaturesUtils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,EACV,QAAQ,EACR,YAAY,EACZ,WAAW,EACX,aAAa,EACb,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAElB,OAAoB,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAEzF,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE1C,eAAO,MAAM,cAAc,cAAe,QAAQ,KAAG,YAcpD,CAAC;AAEF,eAAO,MAAM,aAAa,cAAe,QAAQ,KAAG,
|
|
1
|
+
{"version":3,"file":"deviceFeaturesUtils.d.ts","sourceRoot":"","sources":["../../src/utils/deviceFeaturesUtils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,EACV,QAAQ,EACR,YAAY,EACZ,WAAW,EACX,aAAa,EACb,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAElB,OAAoB,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAEzF,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE1C,eAAO,MAAM,cAAc,cAAe,QAAQ,KAAG,YAcpD,CAAC;AAEF,eAAO,MAAM,aAAa,cAAe,QAAQ,KAAG,WA4BnD,CAAC;AAEF,eAAO,MAAM,yBAAyB,cAAe,QAAQ,KAAG,WACvC,CAAC;AAE1B,eAAO,MAAM,sBAAsB,UAAW,MAAM,KAAG,WAAW,GAAG,IAMpE,CAAC;AAGF,eAAO,MAAM,uBAAuB,cAAe,MAAM,KAAG,WAQ3D,CAAC;AAEF,eAAO,MAAM,aAAa,aAAc,QAAQ,WAS/C,CAAC;AAEF,eAAO,MAAM,cAAc,aAAc,QAAQ,WAOhD,CAAC;AAKF,eAAO,MAAM,wBAAwB,aAAc,QAAQ,GAAG,SAAS,kBActE,CAAC;AAKF,eAAO,MAAM,2BAA2B,aAAc,QAAQ,KAAG,aAAa,GAAG,IAQhF,CAAC;AAEF,eAAO,MAAM,0BAA0B,aAAc,QAAQ,kBAe5D,CAAC;AAEF,eAAO,MAAM,wBAAwB,aACzB,QAAQ,GAAG,SAAS,KAC7B;IAAE,QAAQ,EAAE,IAAI,CAAC;IAAC,cAAc,EAAE,cAAc,CAAA;CAiClD,CAAC;AAEF,eAAO,MAAM,yBAAyB,aAAc,QAAQ,KAAG,kBAU9D,CAAC;AAEF,eAAO,MAAM,oBAAoB,cAAe,QAAQ,KAAG,kBAW1D,CAAC;AAEF,eAAO,MAAM,uCAAuC,WAAkB,MAAM,4BAY3E,CAAC;AAEF,eAAO,MAAM,kBAAkB,aACnB,QAAQ,GAAG,SAAS,YACpB,cAAc,4BAgBzB,CAAC;AAEF,eAAO,MAAM,qBAAqB,cAAe,QAAQ,KAAG,OAU3D,CAAC;AAEF,eAAO,MAAM,uBAAuB,cAAe,QAAQ,KAAG,kBAU7D,CAAC;AAKF,eAAO,MAAM,sBAAsB;cAKvB,QAAQ;gBACN,UAAU,GAAG,KAAK;;MAE5B,KAAK,GAAG,aAsBX,CAAC"}
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export * from './assets';
|
|
2
2
|
export * from './versionUtils';
|
|
3
3
|
export * from './patch';
|
|
4
|
-
export { getDeviceType, getDeviceTypeByBleName, getDeviceTypeByDeviceId, getDeviceUUID, getDeviceLabel, getFirmwareUpdateField, supportInputPinOnSoftware, } from './deviceFeaturesUtils';
|
|
4
|
+
export { getDeviceType, getDeviceTypeByBleName, getDeviceTypeByDeviceId, getDeviceUUID, getDeviceLabel, getFirmwareUpdateField, getDeviceFirmwareVersion, getDeviceBootloaderVersion, supportInputPinOnSoftware, } from './deviceFeaturesUtils';
|
|
5
5
|
export { getHDPath, getScriptType, getOutputScriptType } from '../api/helpers/pathUtils';
|
|
6
6
|
export { checkNeedUpdateBootForTouch, checkNeedUpdateBootForClassicAndMini, } from '../api/firmware/updateBootloader';
|
|
7
7
|
export { getLogger, enableLog, LoggerNames, getLog, setLoggerPostMessage } from './logger';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,uBAAuB,EACvB,aAAa,EACb,cAAc,EACd,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEzF,OAAO,EACL,2BAA2B,EAC3B,oCAAoC,GACrC,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAE3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,eAAO,MAAM,IAAI,OAAQ,MAAM,qBAG3B,CAAC;AAEL,eAAO,MAAM,YAAY,QAAS,MAAM,YAAiD,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,uBAAuB,EACvB,aAAa,EACb,cAAc,EACd,sBAAsB,EACtB,wBAAwB,EACxB,0BAA0B,EAC1B,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEzF,OAAO,EACL,2BAA2B,EAC3B,oCAAoC,GACrC,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAE3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,eAAO,MAAM,IAAI,OAAQ,MAAM,qBAG3B,CAAC;AAEL,eAAO,MAAM,YAAY,QAAS,MAAM,YAAiD,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@onekeyfe/hd-core",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.40-alpha.0",
|
|
4
4
|
"description": "> TODO: description",
|
|
5
5
|
"author": "OneKey",
|
|
6
6
|
"homepage": "https://github.com/OneKeyHQ/hardware-js-sdk#readme",
|
|
@@ -25,8 +25,8 @@
|
|
|
25
25
|
"url": "https://github.com/OneKeyHQ/hardware-js-sdk/issues"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@onekeyfe/hd-shared": "^0.3.
|
|
29
|
-
"@onekeyfe/hd-transport": "^0.3.
|
|
28
|
+
"@onekeyfe/hd-shared": "^0.3.40-alpha.0",
|
|
29
|
+
"@onekeyfe/hd-transport": "^0.3.40-alpha.0",
|
|
30
30
|
"axios": "^0.27.2",
|
|
31
31
|
"bignumber.js": "^9.0.2",
|
|
32
32
|
"bytebuffer": "^5.0.1",
|
|
@@ -44,5 +44,5 @@
|
|
|
44
44
|
"@types/semver": "^7.3.9",
|
|
45
45
|
"ripple-keypairs": "^1.1.4"
|
|
46
46
|
},
|
|
47
|
-
"gitHead": "
|
|
47
|
+
"gitHead": "1682b66aae6682f2f31239fed2d941ccb98491ca"
|
|
48
48
|
}
|
|
@@ -7,6 +7,7 @@ enum Networks {
|
|
|
7
7
|
Kusama = 'kusama',
|
|
8
8
|
Astar = 'astar',
|
|
9
9
|
JoyStream = 'joystream',
|
|
10
|
+
Manta = 'manta',
|
|
10
11
|
}
|
|
11
12
|
|
|
12
13
|
// All polkadot networks are included in no special case
|
|
@@ -28,6 +29,14 @@ const specialVersionRange: Record<string, DeviceFirmwareRange> = {
|
|
|
28
29
|
min: '4.7.0',
|
|
29
30
|
},
|
|
30
31
|
},
|
|
32
|
+
[Networks.Manta]: {
|
|
33
|
+
model_mini: {
|
|
34
|
+
min: '3.7.0',
|
|
35
|
+
},
|
|
36
|
+
model_touch: {
|
|
37
|
+
min: '4.9.0',
|
|
38
|
+
},
|
|
39
|
+
},
|
|
31
40
|
};
|
|
32
41
|
|
|
33
42
|
export default Networks;
|
|
@@ -40,5 +49,8 @@ export function getPolkadotVersionRangeWithBundle(networks: string[]) {
|
|
|
40
49
|
if (networks.includes(Networks.JoyStream)) {
|
|
41
50
|
return specialVersionRange[Networks.JoyStream];
|
|
42
51
|
}
|
|
52
|
+
if (networks.includes(Networks.Manta)) {
|
|
53
|
+
return specialVersionRange[Networks.Manta];
|
|
54
|
+
}
|
|
43
55
|
return baseVersionRange;
|
|
44
56
|
}
|
|
@@ -35,7 +35,7 @@ export const getDeviceType = (features?: Features): IDeviceType => {
|
|
|
35
35
|
return 'classic';
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
// classic1s 3.5.0
|
|
38
|
+
// classic1s 3.5.0 pro 4.6.0
|
|
39
39
|
switch (features.onekey_device_type) {
|
|
40
40
|
case 'CLASSIC':
|
|
41
41
|
return 'classic';
|
|
@@ -43,8 +43,10 @@ export const getDeviceType = (features?: Features): IDeviceType => {
|
|
|
43
43
|
return 'classic1s';
|
|
44
44
|
case 'MINI':
|
|
45
45
|
return 'mini';
|
|
46
|
+
case 'TOUCH':
|
|
47
|
+
return 'touch';
|
|
46
48
|
case 'TOUCH_PRO':
|
|
47
|
-
return '
|
|
49
|
+
return 'touch';
|
|
48
50
|
default:
|
|
49
51
|
// other
|
|
50
52
|
}
|
|
@@ -65,6 +67,7 @@ export const getDeviceTypeByBleName = (name?: string): IDeviceType | null => {
|
|
|
65
67
|
if (!name) return 'classic';
|
|
66
68
|
if (name.startsWith('MI')) return 'mini';
|
|
67
69
|
if (name.startsWith('T')) return 'touch';
|
|
70
|
+
if (name.startsWith('P')) return 'touch';
|
|
68
71
|
return 'classic';
|
|
69
72
|
};
|
|
70
73
|
|
|
@@ -105,8 +108,11 @@ export const getDeviceLabel = (features: Features) => {
|
|
|
105
108
|
export const getDeviceFirmwareVersion = (features: Features | undefined): IVersionArray => {
|
|
106
109
|
if (!features) return [0, 0, 0];
|
|
107
110
|
|
|
108
|
-
if (features.
|
|
109
|
-
return features.
|
|
111
|
+
if (semver.valid(features.onekey_firmware_version)) {
|
|
112
|
+
return features.onekey_firmware_version?.split('.') as unknown as IVersionArray;
|
|
113
|
+
}
|
|
114
|
+
if (semver.valid(features.onekey_version)) {
|
|
115
|
+
return features.onekey_version?.split('.') as unknown as IVersionArray;
|
|
110
116
|
}
|
|
111
117
|
return [
|
|
112
118
|
features.major_version ?? '0',
|
|
@@ -129,6 +135,10 @@ export const getDeviceBLEFirmwareVersion = (features: Features): IVersionArray |
|
|
|
129
135
|
};
|
|
130
136
|
|
|
131
137
|
export const getDeviceBootloaderVersion = (features: Features): IVersionArray => {
|
|
138
|
+
// classic1s 3.5.0 pro 4.6.0
|
|
139
|
+
if (semver.valid(features.onekey_boot_version)) {
|
|
140
|
+
return features.onekey_boot_version?.split('.') as unknown as IVersionArray;
|
|
141
|
+
}
|
|
132
142
|
if (!features.bootloader_version) {
|
|
133
143
|
if (features.bootloader_mode) {
|
|
134
144
|
return [features.major_version, features.minor_version, features.patch_version];
|
|
@@ -136,7 +146,7 @@ export const getDeviceBootloaderVersion = (features: Features): IVersionArray =>
|
|
|
136
146
|
return [0, 0, 0];
|
|
137
147
|
}
|
|
138
148
|
if (semver.valid(features.bootloader_version)) {
|
|
139
|
-
return features.bootloader_version
|
|
149
|
+
return features.bootloader_version?.split('.') as unknown as IVersionArray;
|
|
140
150
|
}
|
|
141
151
|
return [0, 0, 0];
|
|
142
152
|
};
|
package/src/utils/index.ts
CHANGED
|
@@ -8,6 +8,8 @@ export {
|
|
|
8
8
|
getDeviceUUID,
|
|
9
9
|
getDeviceLabel,
|
|
10
10
|
getFirmwareUpdateField,
|
|
11
|
+
getDeviceFirmwareVersion,
|
|
12
|
+
getDeviceBootloaderVersion,
|
|
11
13
|
supportInputPinOnSoftware,
|
|
12
14
|
} from './deviceFeaturesUtils';
|
|
13
15
|
export { getHDPath, getScriptType, getOutputScriptType } from '../api/helpers/pathUtils';
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import semver from 'semver';
|
|
2
|
+
|
|
3
|
+
const semverTest = [
|
|
4
|
+
{
|
|
5
|
+
description: 'success - normal version',
|
|
6
|
+
version: '2.10.0',
|
|
7
|
+
expected: '2.10.0',
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
description: 'success - 0.0.0 version',
|
|
11
|
+
version: '0.0.0',
|
|
12
|
+
expected: '0.0.0',
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
description: 'error - 0 version',
|
|
16
|
+
version: '0',
|
|
17
|
+
expected: null,
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
description: 'error - unnecessary version',
|
|
21
|
+
version: '2.10.0 QA',
|
|
22
|
+
expected: null,
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
description: 'error - normal version',
|
|
26
|
+
version: '2.10',
|
|
27
|
+
expected: null,
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
description: 'error - null version',
|
|
31
|
+
version: null,
|
|
32
|
+
expected: null,
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
description: 'error - empty version',
|
|
36
|
+
version: '',
|
|
37
|
+
expected: null,
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
description: 'error - undefined version',
|
|
41
|
+
version: undefined,
|
|
42
|
+
expected: null,
|
|
43
|
+
},
|
|
44
|
+
];
|
|
45
|
+
|
|
46
|
+
describe('Check Semver', () => {
|
|
47
|
+
semverTest.forEach(data => {
|
|
48
|
+
test(data.description, () => {
|
|
49
|
+
const { version, expected } = data;
|
|
50
|
+
expect(semver.valid(version)).toBe(expected);
|
|
51
|
+
});
|
|
52
|
+
});
|
|
53
|
+
});
|