@onekeyfe/hd-core 0.3.38 → 0.3.39

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.
@@ -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;CACxB;AAuBD,eAAe,QAAQ,CAAC;AAExB,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,uBAEtD;AAED,wBAAgB,iCAAiC,CAAC,QAAQ,EAAE,MAAM,EAAE;;;;;;;EAKnE"}
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,6 +23400,8 @@ 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
23406
  return 'pro';
23405
23407
  }
@@ -23450,16 +23452,19 @@ const getDeviceLabel = (features) => {
23450
23452
  return `My OneKey ${deviceType.charAt(0).toUpperCase() + deviceType.slice(1)}`;
23451
23453
  };
23452
23454
  const getDeviceFirmwareVersion = (features) => {
23453
- var _a, _b, _c;
23455
+ var _a, _b, _c, _d, _e;
23454
23456
  if (!features)
23455
23457
  return [0, 0, 0];
23456
- if (features.onekey_version) {
23457
- return features.onekey_version.split('.');
23458
+ if (semver__default["default"].valid(features.onekey_firmware_version)) {
23459
+ return (_a = features.onekey_firmware_version) === null || _a === void 0 ? void 0 : _a.split('.');
23460
+ }
23461
+ if (semver__default["default"].valid(features.onekey_version)) {
23462
+ return (_b = features.onekey_version) === null || _b === void 0 ? void 0 : _b.split('.');
23458
23463
  }
23459
23464
  return [
23460
- (_a = features.major_version) !== null && _a !== void 0 ? _a : '0',
23461
- (_b = features.minor_version) !== null && _b !== void 0 ? _b : '0',
23462
- (_c = features.patch_version) !== null && _c !== void 0 ? _c : '0',
23465
+ (_c = features.major_version) !== null && _c !== void 0 ? _c : '0',
23466
+ (_d = features.minor_version) !== null && _d !== void 0 ? _d : '0',
23467
+ (_e = features.patch_version) !== null && _e !== void 0 ? _e : '0',
23463
23468
  ];
23464
23469
  };
23465
23470
  const getDeviceBLEFirmwareVersion = (features) => {
@@ -23472,6 +23477,10 @@ const getDeviceBLEFirmwareVersion = (features) => {
23472
23477
  return features.ble_ver.split('.');
23473
23478
  };
23474
23479
  const getDeviceBootloaderVersion = (features) => {
23480
+ var _a, _b;
23481
+ if (semver__default["default"].valid(features.onekey_boot_version)) {
23482
+ return (_a = features.onekey_boot_version) === null || _a === void 0 ? void 0 : _a.split('.');
23483
+ }
23475
23484
  if (!features.bootloader_version) {
23476
23485
  if (features.bootloader_mode) {
23477
23486
  return [features.major_version, features.minor_version, features.patch_version];
@@ -23479,7 +23488,7 @@ const getDeviceBootloaderVersion = (features) => {
23479
23488
  return [0, 0, 0];
23480
23489
  }
23481
23490
  if (semver__default["default"].valid(features.bootloader_version)) {
23482
- return features.bootloader_version.split('.');
23491
+ return (_b = features.bootloader_version) === null || _b === void 0 ? void 0 : _b.split('.');
23483
23492
  }
23484
23493
  return [0, 0, 0];
23485
23494
  };
@@ -31080,6 +31089,7 @@ var Networks;
31080
31089
  Networks["Kusama"] = "kusama";
31081
31090
  Networks["Astar"] = "astar";
31082
31091
  Networks["JoyStream"] = "joystream";
31092
+ Networks["Manta"] = "manta";
31083
31093
  })(Networks || (Networks = {}));
31084
31094
  const baseVersionRange = {
31085
31095
  model_mini: {
@@ -31098,6 +31108,14 @@ const specialVersionRange = {
31098
31108
  min: '4.7.0',
31099
31109
  },
31100
31110
  },
31111
+ [Networks.Manta]: {
31112
+ model_mini: {
31113
+ min: '3.7.0',
31114
+ },
31115
+ model_touch: {
31116
+ min: '4.9.0',
31117
+ },
31118
+ },
31101
31119
  };
31102
31120
  function getPolkadotVersionRange(network) {
31103
31121
  var _a;
@@ -31107,6 +31125,9 @@ function getPolkadotVersionRangeWithBundle(networks) {
31107
31125
  if (networks.includes(Networks.JoyStream)) {
31108
31126
  return specialVersionRange[Networks.JoyStream];
31109
31127
  }
31128
+ if (networks.includes(Networks.Manta)) {
31129
+ return specialVersionRange[Networks.Manta];
31130
+ }
31110
31131
  return baseVersionRange;
31111
31132
  }
31112
31133
 
@@ -32914,6 +32935,8 @@ exports.createUiMessage = createUiMessage;
32914
32935
  exports.createUiResponse = createUiResponse;
32915
32936
  exports["default"] = HardwareSdk;
32916
32937
  exports.enableLog = enableLog;
32938
+ exports.getDeviceBootloaderVersion = getDeviceBootloaderVersion;
32939
+ exports.getDeviceFirmwareVersion = getDeviceFirmwareVersion;
32917
32940
  exports.getDeviceLabel = getDeviceLabel;
32918
32941
  exports.getDeviceType = getDeviceType;
32919
32942
  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,WA0BnD,CAAC;AAEF,eAAO,MAAM,yBAAyB,cAAe,QAAQ,KAAG,WACvC,CAAC;AAE1B,eAAO,MAAM,sBAAsB,UAAW,MAAM,KAAG,WAAW,GAAG,IAKpE,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,kBAWtE,CAAC;AAKF,eAAO,MAAM,2BAA2B,aAAc,QAAQ,KAAG,aAAa,GAAG,IAQhF,CAAC;AAEF,eAAO,MAAM,0BAA0B,aAAc,QAAQ,kBAW5D,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"}
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,IAKpE,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"}
@@ -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.38",
3
+ "version": "0.3.39",
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.38",
29
- "@onekeyfe/hd-transport": "^0.3.38",
28
+ "@onekeyfe/hd-shared": "^0.3.39",
29
+ "@onekeyfe/hd-transport": "^0.3.39",
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": "85e740c727ad9fbd53bbec5b29315b5058858531"
47
+ "gitHead": "e8bfd1d5fded9eef1d92afaec3d27ead515eacb6"
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,6 +43,8 @@ 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
49
  return 'pro';
48
50
  default:
@@ -105,8 +107,11 @@ export const getDeviceLabel = (features: Features) => {
105
107
  export const getDeviceFirmwareVersion = (features: Features | undefined): IVersionArray => {
106
108
  if (!features) return [0, 0, 0];
107
109
 
108
- if (features.onekey_version) {
109
- return features.onekey_version.split('.') as unknown as IVersionArray;
110
+ if (semver.valid(features.onekey_firmware_version)) {
111
+ return features.onekey_firmware_version?.split('.') as unknown as IVersionArray;
112
+ }
113
+ if (semver.valid(features.onekey_version)) {
114
+ return features.onekey_version?.split('.') as unknown as IVersionArray;
110
115
  }
111
116
  return [
112
117
  features.major_version ?? '0',
@@ -129,6 +134,10 @@ export const getDeviceBLEFirmwareVersion = (features: Features): IVersionArray |
129
134
  };
130
135
 
131
136
  export const getDeviceBootloaderVersion = (features: Features): IVersionArray => {
137
+ // classic1s 3.5.0 pro 4.6.0
138
+ if (semver.valid(features.onekey_boot_version)) {
139
+ return features.onekey_boot_version?.split('.') as unknown as IVersionArray;
140
+ }
132
141
  if (!features.bootloader_version) {
133
142
  if (features.bootloader_mode) {
134
143
  return [features.major_version, features.minor_version, features.patch_version];
@@ -136,7 +145,7 @@ export const getDeviceBootloaderVersion = (features: Features): IVersionArray =>
136
145
  return [0, 0, 0];
137
146
  }
138
147
  if (semver.valid(features.bootloader_version)) {
139
- return features.bootloader_version.split('.') as unknown as IVersionArray;
148
+ return features.bootloader_version?.split('.') as unknown as IVersionArray;
140
149
  }
141
150
  return [0, 0, 0];
142
151
  };
@@ -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
+ });