@onekeyfe/hd-core 1.1.10-alpha.3 → 1.1.10-alpha.4

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.
@@ -1,14 +1,27 @@
1
1
  import { BaseMethod } from '../BaseMethod';
2
- import { EVMTransaction, EVMTransactionEIP1559 } from '../../types';
2
+ import { EVMTransaction, EVMTransactionEIP1559, EVMTransactionEIP7702 } from '../../types';
3
3
  export default class EVMSignTransaction extends BaseMethod {
4
4
  addressN: number[];
5
5
  isEIP1559: boolean;
6
- formattedTx: EVMTransaction | EVMTransactionEIP1559 | undefined;
6
+ isEIP7702: boolean;
7
+ formattedTx: EVMTransaction | EVMTransactionEIP1559 | EVMTransactionEIP7702 | undefined;
8
+ private hasEIP7702Features;
9
+ private hasEIP1559Features;
7
10
  init(): void;
8
11
  getVersionRange(): {
12
+ model_classic1s: {
13
+ min: string;
14
+ };
15
+ model_touch: {
16
+ min: string;
17
+ };
18
+ model_mini?: undefined;
19
+ } | {
9
20
  model_mini: {
10
21
  min: string;
11
22
  };
23
+ model_classic1s?: undefined;
24
+ model_touch?: undefined;
12
25
  };
13
26
  run(): Promise<import("../../types").EVMSignedTx>;
14
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"EVMSignTransaction.d.ts","sourceRoot":"","sources":["../../../src/api/evm/EVMSignTransaction.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAA4B,cAAc,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAM9F,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,UAAU;IACxD,QAAQ,EAAE,MAAM,EAAE,CAAM;IAExB,SAAS,UAAS;IAElB,WAAW,EAAE,cAAc,GAAG,qBAAqB,GAAG,SAAS,CAAC;IAEhE,IAAI;IAoCJ,eAAe;;;;;IAeT,GAAG;CAqBV"}
1
+ {"version":3,"file":"EVMSignTransaction.d.ts","sourceRoot":"","sources":["../../../src/api/evm/EVMSignTransaction.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAEL,cAAc,EACd,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,aAAa,CAAC;AAMrB,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,UAAU;IACxD,QAAQ,EAAE,MAAM,EAAE,CAAM;IAExB,SAAS,UAAS;IAElB,SAAS,UAAS;IAElB,WAAW,EAAE,cAAc,GAAG,qBAAqB,GAAG,qBAAqB,GAAG,SAAS,CAAC;IAMxF,OAAO,CAAC,kBAAkB;IAS1B,OAAO,CAAC,kBAAkB;IAI1B,IAAI;IA+CJ,eAAe;;;;;;;;;;;;;;;IAyBT,GAAG;CAuBV"}
@@ -1,5 +1,5 @@
1
1
  import { EthereumTxRequestOneKey, TypedCall } from '@onekeyfe/hd-transport';
2
- import { EVMSignedTx, EVMTransaction, EVMTransactionEIP1559 } from '../../../types';
2
+ import { EVMSignedTx, EVMTransaction, EVMTransactionEIP1559, EVMTransactionEIP7702 } from '../../../types';
3
3
  export declare const processTxRequest: ({ typedCall, request, data, chainId, supportTrezor, }: {
4
4
  typedCall: TypedCall;
5
5
  request: EthereumTxRequestOneKey;
@@ -19,10 +19,17 @@ export declare const evmSignTxEip1559: ({ typedCall, addressN, tx, supportTrezor
19
19
  tx: EVMTransactionEIP1559;
20
20
  supportTrezor?: boolean | undefined;
21
21
  }) => Promise<EVMSignedTx>;
22
- export declare const signTransaction: ({ typedCall, isEIP1559, addressN, tx, }: {
22
+ export declare const evmSignTxEip7702: ({ typedCall, addressN, tx, supportTrezor, }: {
23
+ typedCall: TypedCall;
24
+ addressN: number[];
25
+ tx: EVMTransactionEIP7702;
26
+ supportTrezor?: boolean | undefined;
27
+ }) => Promise<EVMSignedTx>;
28
+ export declare const signTransaction: ({ typedCall, isEIP1559, isEIP7702, addressN, tx, }: {
23
29
  addressN: number[];
24
- tx: EVMTransaction | EVMTransactionEIP1559;
30
+ tx: EVMTransaction | EVMTransactionEIP1559 | EVMTransactionEIP7702;
25
31
  isEIP1559: boolean;
32
+ isEIP7702?: boolean | undefined;
26
33
  typedCall: TypedCall;
27
34
  }) => Promise<EVMSignedTx>;
28
35
  //# sourceMappingURL=signTransaction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"signTransaction.d.ts","sourceRoot":"","sources":["../../../../src/api/evm/latest/signTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,uBAAuB,EAEvB,SAAS,EACV,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAIpF,eAAO,MAAM,gBAAgB;eAOhB,SAAS;aACX,uBAAuB;UAC1B,MAAM;cACF,MAAM,GAAG,SAAS;;MAE1B,QAAQ,WAAW,CA6CtB,CAAC;AAEF,eAAO,MAAM,SAAS;eAMT,SAAS;cACV,MAAM,EAAE;QACd,cAAc;;0BAgDnB,CAAC;AAEF,eAAO,MAAM,gBAAgB;eAMhB,SAAS;cACV,MAAM,EAAE;QACd,qBAAqB;;0BA4C1B,CAAC;AACF,eAAO,MAAM,eAAe;cAMhB,MAAM,EAAE;QACd,cAAc,GAAG,qBAAqB;eAC/B,OAAO;eACP,SAAS;0BAI4C,CAAC"}
1
+ {"version":3,"file":"signTransaction.d.ts","sourceRoot":"","sources":["../../../../src/api/evm/latest/signTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,uBAAuB,EAEvB,SAAS,EACV,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,WAAW,EACX,cAAc,EACd,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,gBAAgB,CAAC;AAIxB,eAAO,MAAM,gBAAgB;eAOhB,SAAS;aACX,uBAAuB;UAC1B,MAAM;cACF,MAAM,GAAG,SAAS;;MAE1B,QAAQ,WAAW,CAyDtB,CAAC;AAEF,eAAO,MAAM,SAAS;eAMT,SAAS;cACV,MAAM,EAAE;QACd,cAAc;;0BAgDnB,CAAC;AAEF,eAAO,MAAM,gBAAgB;eAMhB,SAAS;cACV,MAAM,EAAE;QACd,qBAAqB;;0BA4C1B,CAAC;AAEF,eAAO,MAAM,gBAAgB;eAMhB,SAAS;cACV,MAAM,EAAE;QACd,qBAAqB;;0BA2D1B,CAAC;AAEF,eAAO,MAAM,eAAe;cAOhB,MAAM,EAAE;QACd,cAAc,GAAG,qBAAqB,GAAG,qBAAqB;eACvD,OAAO;;eAEP,SAAS;0BAQrB,CAAC"}
@@ -1,9 +1,10 @@
1
1
  import { TypedCall } from '@onekeyfe/hd-transport';
2
- import { EVMTransaction, EVMTransactionEIP1559 } from '../../../types';
3
- export declare const signTransaction: ({ typedCall, isEIP1559, addressN, tx, }: {
2
+ import { EVMTransaction, EVMTransactionEIP1559, EVMTransactionEIP7702 } from '../../../types';
3
+ export declare const signTransaction: ({ typedCall, isEIP1559, isEIP7702, addressN, tx, }: {
4
4
  addressN: number[];
5
- tx: EVMTransaction | EVMTransactionEIP1559;
5
+ tx: EVMTransaction | EVMTransactionEIP1559 | EVMTransactionEIP7702;
6
6
  isEIP1559: boolean;
7
+ isEIP7702: boolean;
7
8
  typedCall: TypedCall;
8
9
  }) => Promise<import("../../../types").EVMSignedTx>;
9
10
  //# sourceMappingURL=signTransaction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"signTransaction.d.ts","sourceRoot":"","sources":["../../../../src/api/evm/legacyV1/signTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAGvE,eAAO,MAAM,eAAe;cAMhB,MAAM,EAAE;QACd,cAAc,GAAG,qBAAqB;eAC/B,OAAO;eACP,SAAS;mDASiE,CAAC"}
1
+ {"version":3,"file":"signTransaction.d.ts","sourceRoot":"","sources":["../../../../src/api/evm/legacyV1/signTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAG9F,eAAO,MAAM,eAAe;cAOhB,MAAM,EAAE;QACd,cAAc,GAAG,qBAAqB,GAAG,qBAAqB;eACvD,OAAO;eACP,OAAO;eACP,SAAS;mDAoBrB,CAAC"}
package/dist/index.d.ts CHANGED
@@ -762,6 +762,7 @@ type EVMSignedTx = {
762
762
  v: string;
763
763
  r: string;
764
764
  s: string;
765
+ authorizationSignatures?: EVMAuthorizationSignature[];
765
766
  };
766
767
  type EVMTransaction = {
767
768
  to: string;
@@ -791,9 +792,34 @@ type EVMTransactionEIP1559 = {
791
792
  maxPriorityFeePerGas: string;
792
793
  accessList?: EVMAccessList[];
793
794
  };
795
+ type EVMAuthorizationSignature = {
796
+ yParity: number;
797
+ r: string;
798
+ s: string;
799
+ };
800
+ type EVMAuthorization = {
801
+ addressN?: number[];
802
+ chainId: number;
803
+ address: string;
804
+ nonce: string;
805
+ signature?: EVMAuthorizationSignature;
806
+ };
807
+ type EVMTransactionEIP7702 = {
808
+ to: string;
809
+ value: string;
810
+ gasLimit: string;
811
+ gasPrice?: typeof undefined;
812
+ nonce: string;
813
+ data?: string;
814
+ chainId: number;
815
+ maxFeePerGas: string;
816
+ maxPriorityFeePerGas: string;
817
+ accessList?: EVMAccessList[];
818
+ authorizationList: EVMAuthorization[];
819
+ };
794
820
  type EVMSignTransactionParams = {
795
821
  path: string | number[];
796
- transaction: EVMTransaction | EVMTransactionEIP1559;
822
+ transaction: EVMTransaction | EVMTransactionEIP1559 | EVMTransactionEIP7702;
797
823
  };
798
824
  declare function evmSignTransaction(connectId: string, deviceId: string, params: CommonParams & EVMSignTransactionParams): Response<EVMSignedTx>;
799
825
 
@@ -3230,4 +3256,4 @@ declare const HardwareSdk: ({ init, call, dispose, eventEmitter, uiResponse, can
3230
3256
  declare const HardwareSDKLowLevel: ({ init, call, dispose, eventEmitter, addHardwareGlobalEventListener, uiResponse, cancel, updateSettings, switchTransport, }: LowLevelInjectApi) => LowLevelCoreApi;
3231
3257
  declare const HardwareTopLevelSdk: () => CoreApi;
3232
3258
 
3233
- export { AccountAddress, AccountAddresses, AlephiumAddress, AlephiumGetAddressParams, AlephiumSignMessageParams, AlephiumSignTransactionParams, AlephiumSignedTx, AlgoAddress, AlgoGetAddressParams, AlgoSignTransactionParams, AlgoSignedTx, AllNetworkAddressParams, AllNetworkGetAddressParams, AptosAddress, AptosGetAddressParams, AptosGetPublicKeyParams, AptosMessageSignature, AptosPublicKey, AptosSignInMessageParams, AptosSignInMessageSignature, AptosSignMessageParams, AptosSignTransactionParams, AptosSignedTx, AssetsMap, BTCAddress, BTCGetAddressParams, BTCGetPublicKeyParams, BTCPublicKey, BTCSignMessageParams, BTCSignTransactionParams, BTCVerifyMessageParams, BenfenAddress, BenfenGetAddressParams, BenfenGetPublicKeyParams, BenfenPublicKey, BenfenSignMessageParams, BenfenSignTransactionParams, BenfenSignedTx, BleReleaseInfoEvent, BleReleaseInfoPayload, CORE_EVENT, CallMethod, CallMethodAnyResponse, CallMethodKeys, CallMethodPayload, CallMethodResponse, CallMethodUnion, CardanoAddress, CardanoGetAddressMethodParams, CardanoGetAddressParams, CardanoSignMessageMethodParams, CardanoSignMessageParams, 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, DeviceModelToTypes, DeviceProgress, DeviceRecoveryParams, DeviceResetParams, DeviceSendFeatures, DeviceSendSupportFeatures, DeviceSettingsParams, DeviceStatus, DeviceSupportFeatures, DeviceSupportFeaturesPayload, DeviceTypeMap, DeviceTypeToModels, DeviceUploadResourceParams, DeviceVerifyParams, DeviceVerifySignature, DnxAddress, DnxGetAddressParams, DnxSignTransactionParams, DnxSignature, DnxTxKey, EOneKeyDeviceMode, 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, FirmwareProcessing, FirmwareProgress, FirmwareRange, FirmwareRelease, FirmwareTip, FirmwareUpdateBinaryParams, FirmwareUpdateParams, FirmwareUpdateTipMessage, FirmwareUpdateV3Params, HardwareSDKLowLevel, HardwareTopLevelSdk, IBLEFirmwareReleaseInfo, IDeviceBLEFirmwareStatus, IDeviceFirmwareStatus, IDeviceModel, IDeviceType, IFRAME, IFirmwareField, IFirmwareReleaseInfo, IFirmwareUpdateProgressType, IFirmwareUpdateTipMessage, IFrameBridge, IFrameCallMessage, IFrameCallback, IFrameCallbackMessage, IFrameCancelMessage, IFrameEvent, IFrameEventMessage, IFrameInit, IFrameSwitchTransport, IFrameSwitchTransportMessage, ILocale, ITransportStatus, IVersionArray, IVersionRange, 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, NervosAddress, NervosGetAddressParams, NervosSignTransactionParams, NervosSignedTx, NexaAddress, NexaGetAddressParams, NexaSignInputParams, NexaSignOutputParams, NexaSignTransactionParams, NexaSignature, OnekeyFeatures, Params, PassphraseRequestPayload, PolkadotAddress, PolkadotGetAddressParams, PolkadotSignTransactionParams, PolkadotSignedTx, PostMessageEvent, PreviousAddressResult, RESPONSE_EVENT, RefTransaction, ReleaseInfo, ReleaseInfoEvent, ReleaseInfoPayload, RemoteConfigResponse, Response, ScdoAddress, ScdoGetAddressParams, ScdoSignMessageParams, ScdoSignTransactionParams, ScdoSignedTx, SearchDevice, SignedTransaction, SolSignMessageParams, SolSignMessageResponse, SolSignOffchainMessageParams, SolSignOffchainMessageResponse, 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, TonAddress, TonGetAddressParams, TonSignMessageParams, TonSignProofParams, 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, UiRequestFirmwareProgressing, UiRequestPassphrase, UiRequestPassphraseOnDevice, UiRequestSelectDeviceInBootloaderForWebDevice, UiRequestWithoutPayload, UiResponseEvent, UiResponseMessage, UiResponsePassphrase, UiResponsePin, UiResponseSelectDeviceInBootloaderForWebDevice, UnavailableCapabilities, UnavailableCapability, Unsuccessful, VersionArray, checkNeedUpdateBootForClassicAndMini, checkNeedUpdateBootForTouch, cleanupCallback, corsValidator, createDeviceMessage, createErrorMessage, createFirmwareMessage, createIFrameMessage, createLogMessage, createResponseMessage, createUiMessage, createUiResponse, HardwareSdk as default, enableLog, executeCallback, getDeviceBLEFirmwareVersion, getDeviceBleName, getDeviceBoardloaderVersion, getDeviceBootloaderVersion, getDeviceFirmwareVersion, getDeviceLabel, getDeviceType, getDeviceTypeByBleName, getDeviceUUID, getEnv, getFirmwareType, getFirmwareUpdateField, getFirmwareUpdateFieldArray, getHDPath, getHomeScreenDefaultList, getHomeScreenHex, getHomeScreenSize, getLog, getLogger, getMethodVersionRange, getOutputScriptType, getSDKVersion, getScriptType, getTimeStamp, httpRequest, init as initCore, isBleConnect, isValidVersionArray, isValidVersionString, normalizeVersionArray, parseConnectSettings, parseMessage, patchFeatures, safeThrowError, setLoggerPostMessage, supportInputPinOnSoftware, switchTransport, versionCompare, versionSplit, wait, whitelist, whitelistExtension };
3259
+ export { AccountAddress, AccountAddresses, AlephiumAddress, AlephiumGetAddressParams, AlephiumSignMessageParams, AlephiumSignTransactionParams, AlephiumSignedTx, AlgoAddress, AlgoGetAddressParams, AlgoSignTransactionParams, AlgoSignedTx, AllNetworkAddressParams, AllNetworkGetAddressParams, AptosAddress, AptosGetAddressParams, AptosGetPublicKeyParams, AptosMessageSignature, AptosPublicKey, AptosSignInMessageParams, AptosSignInMessageSignature, AptosSignMessageParams, AptosSignTransactionParams, AptosSignedTx, AssetsMap, BTCAddress, BTCGetAddressParams, BTCGetPublicKeyParams, BTCPublicKey, BTCSignMessageParams, BTCSignTransactionParams, BTCVerifyMessageParams, BenfenAddress, BenfenGetAddressParams, BenfenGetPublicKeyParams, BenfenPublicKey, BenfenSignMessageParams, BenfenSignTransactionParams, BenfenSignedTx, BleReleaseInfoEvent, BleReleaseInfoPayload, CORE_EVENT, CallMethod, CallMethodAnyResponse, CallMethodKeys, CallMethodPayload, CallMethodResponse, CallMethodUnion, CardanoAddress, CardanoGetAddressMethodParams, CardanoGetAddressParams, CardanoSignMessageMethodParams, CardanoSignMessageParams, 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, DeviceModelToTypes, DeviceProgress, DeviceRecoveryParams, DeviceResetParams, DeviceSendFeatures, DeviceSendSupportFeatures, DeviceSettingsParams, DeviceStatus, DeviceSupportFeatures, DeviceSupportFeaturesPayload, DeviceTypeMap, DeviceTypeToModels, DeviceUploadResourceParams, DeviceVerifyParams, DeviceVerifySignature, DnxAddress, DnxGetAddressParams, DnxSignTransactionParams, DnxSignature, DnxTxKey, EOneKeyDeviceMode, EVMAccessList, EVMAddress, EVMAuthorization, EVMAuthorizationSignature, EVMGetAddressParams, EVMGetPublicKeyParams, EVMPublicKey, EVMSignMessageEIP712Params, EVMSignMessageParams, EVMSignTransactionParams, EVMSignTypedDataParams, EVMSignedTx, EVMTransaction, EVMTransactionEIP1559, EVMTransactionEIP7702, EVMVerifyMessageParams, EthereumSignTypedDataMessage, EthereumSignTypedDataTypeProperty, EthereumSignTypedDataTypes, FIRMWARE, FIRMWARE_EVENT, Features, FilecoinAddress, FilecoinGetAddressParams, FilecoinSignTransactionParams, FilecoinSignedTx, FirmwareEvent, FirmwareMessage, FirmwareProcessing, FirmwareProgress, FirmwareRange, FirmwareRelease, FirmwareTip, FirmwareUpdateBinaryParams, FirmwareUpdateParams, FirmwareUpdateTipMessage, FirmwareUpdateV3Params, HardwareSDKLowLevel, HardwareTopLevelSdk, IBLEFirmwareReleaseInfo, IDeviceBLEFirmwareStatus, IDeviceFirmwareStatus, IDeviceModel, IDeviceType, IFRAME, IFirmwareField, IFirmwareReleaseInfo, IFirmwareUpdateProgressType, IFirmwareUpdateTipMessage, IFrameBridge, IFrameCallMessage, IFrameCallback, IFrameCallbackMessage, IFrameCancelMessage, IFrameEvent, IFrameEventMessage, IFrameInit, IFrameSwitchTransport, IFrameSwitchTransportMessage, ILocale, ITransportStatus, IVersionArray, IVersionRange, 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, NervosAddress, NervosGetAddressParams, NervosSignTransactionParams, NervosSignedTx, NexaAddress, NexaGetAddressParams, NexaSignInputParams, NexaSignOutputParams, NexaSignTransactionParams, NexaSignature, OnekeyFeatures, Params, PassphraseRequestPayload, PolkadotAddress, PolkadotGetAddressParams, PolkadotSignTransactionParams, PolkadotSignedTx, PostMessageEvent, PreviousAddressResult, RESPONSE_EVENT, RefTransaction, ReleaseInfo, ReleaseInfoEvent, ReleaseInfoPayload, RemoteConfigResponse, Response, ScdoAddress, ScdoGetAddressParams, ScdoSignMessageParams, ScdoSignTransactionParams, ScdoSignedTx, SearchDevice, SignedTransaction, SolSignMessageParams, SolSignMessageResponse, SolSignOffchainMessageParams, SolSignOffchainMessageResponse, 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, TonAddress, TonGetAddressParams, TonSignMessageParams, TonSignProofParams, 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, UiRequestFirmwareProgressing, UiRequestPassphrase, UiRequestPassphraseOnDevice, UiRequestSelectDeviceInBootloaderForWebDevice, UiRequestWithoutPayload, UiResponseEvent, UiResponseMessage, UiResponsePassphrase, UiResponsePin, UiResponseSelectDeviceInBootloaderForWebDevice, UnavailableCapabilities, UnavailableCapability, Unsuccessful, VersionArray, checkNeedUpdateBootForClassicAndMini, checkNeedUpdateBootForTouch, cleanupCallback, corsValidator, createDeviceMessage, createErrorMessage, createFirmwareMessage, createIFrameMessage, createLogMessage, createResponseMessage, createUiMessage, createUiResponse, HardwareSdk as default, enableLog, executeCallback, getDeviceBLEFirmwareVersion, getDeviceBleName, getDeviceBoardloaderVersion, getDeviceBootloaderVersion, getDeviceFirmwareVersion, getDeviceLabel, getDeviceType, getDeviceTypeByBleName, getDeviceUUID, getEnv, getFirmwareType, getFirmwareUpdateField, getFirmwareUpdateFieldArray, getHDPath, getHomeScreenDefaultList, getHomeScreenHex, getHomeScreenSize, getLog, getLogger, getMethodVersionRange, getOutputScriptType, getSDKVersion, getScriptType, getTimeStamp, httpRequest, init as initCore, isBleConnect, isValidVersionArray, isValidVersionString, normalizeVersionArray, parseConnectSettings, parseMessage, patchFeatures, safeThrowError, setLoggerPostMessage, supportInputPinOnSoftware, switchTransport, versionCompare, versionSplit, wait, whitelist, whitelistExtension };
package/dist/index.js CHANGED
@@ -32169,17 +32169,26 @@ const processTxRequest = ({ typedCall, request, data, chainId, supportTrezor, })
32169
32169
  let v = request.signature_v;
32170
32170
  const r = request.signature_r;
32171
32171
  const s = request.signature_s;
32172
+ const authorizationSignatures = request.authorization_signatures;
32172
32173
  if (v == null || r == null || s == null) {
32173
32174
  throw hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.RuntimeError, 'processTxRequest: Unexpected request');
32174
32175
  }
32175
32176
  if (chainId && v <= 1) {
32176
32177
  v += 2 * chainId + 35;
32177
32178
  }
32178
- return Promise.resolve({
32179
+ const result = {
32179
32180
  v: `0x${v.toString(16)}`,
32180
32181
  r: `0x${r}`,
32181
32182
  s: `0x${s}`,
32182
- });
32183
+ };
32184
+ if (authorizationSignatures && authorizationSignatures.length > 0) {
32185
+ result.authorizationSignatures = authorizationSignatures.map(sig => ({
32186
+ yParity: sig.y_parity,
32187
+ r: sig.r,
32188
+ s: sig.s,
32189
+ }));
32190
+ }
32191
+ return Promise.resolve(result);
32183
32192
  }
32184
32193
  const [first, rest] = cutString(data, request.data_length * 2);
32185
32194
  let response;
@@ -32264,21 +32273,75 @@ const evmSignTxEip1559 = ({ typedCall, addressN, tx, supportTrezor, }) => __awai
32264
32273
  }
32265
32274
  return processTxRequest({ typedCall, request: response.message, data: rest, supportTrezor });
32266
32275
  });
32267
- const signTransaction$1 = ({ typedCall, isEIP1559, addressN, tx, }) => __awaiter(void 0, void 0, void 0, function* () {
32276
+ const evmSignTxEip7702 = ({ typedCall, addressN, tx, supportTrezor, }) => __awaiter(void 0, void 0, void 0, function* () {
32277
+ const { to, value, gasLimit, nonce, data, chainId, maxFeePerGas, maxPriorityFeePerGas, accessList, authorizationList, } = tx;
32278
+ const length = data == null ? 0 : data.length / 2;
32279
+ const [first, rest] = cutString(data, 1024 * 2);
32280
+ const message = {
32281
+ address_n: addressN,
32282
+ nonce: stripHexStartZeroes(nonce),
32283
+ max_gas_fee: stripHexStartZeroes(maxFeePerGas),
32284
+ max_priority_fee: stripHexStartZeroes(maxPriorityFeePerGas),
32285
+ gas_limit: stripHexStartZeroes(gasLimit),
32286
+ to,
32287
+ value: stripHexStartZeroes(value),
32288
+ data_length: length,
32289
+ data_initial_chunk: first,
32290
+ chain_id: chainId,
32291
+ access_list: (accessList || []).map(a => ({
32292
+ address: a.address,
32293
+ storage_keys: a.storageKeys,
32294
+ })),
32295
+ authorization_list: authorizationList.map(auth => ({
32296
+ address_n: auth.addressN || [],
32297
+ chain_id: auth.chainId,
32298
+ address: addHexPrefix(auth.address),
32299
+ nonce: stripHexStartZeroes(auth.nonce),
32300
+ signature: auth.signature
32301
+ ? {
32302
+ y_parity: auth.signature.yParity,
32303
+ r: auth.signature.r,
32304
+ s: auth.signature.s,
32305
+ }
32306
+ : undefined,
32307
+ })),
32308
+ };
32309
+ let response;
32310
+ if (supportTrezor) {
32311
+ throw hdShared.ERRORS.TypedError(hdShared.HardwareErrorCode.RuntimeError, 'EIP7702 not supported by Trezor');
32312
+ }
32313
+ else {
32314
+ response = yield typedCall('EthereumSignTxEIP7702OneKey', 'EthereumTxRequestOneKey', message);
32315
+ }
32316
+ return processTxRequest({ typedCall, request: response.message, data: rest, supportTrezor });
32317
+ });
32318
+ const signTransaction$1 = ({ typedCall, isEIP1559, isEIP7702, addressN, tx, }) => __awaiter(void 0, void 0, void 0, function* () {
32319
+ if (isEIP7702) {
32320
+ return evmSignTxEip7702({ typedCall, addressN, tx: tx });
32321
+ }
32268
32322
  return isEIP1559
32269
32323
  ? evmSignTxEip1559({ typedCall, addressN, tx: tx })
32270
32324
  : evmSignTx({ typedCall, addressN, tx: tx });
32271
32325
  });
32272
32326
 
32273
- const signTransaction = ({ typedCall, isEIP1559, addressN, tx, }) => __awaiter(void 0, void 0, void 0, function* () {
32274
- return isEIP1559
32275
- ? evmSignTxEip1559({
32327
+ const signTransaction = ({ typedCall, isEIP1559, isEIP7702, addressN, tx, }) => __awaiter(void 0, void 0, void 0, function* () {
32328
+ if (isEIP7702) {
32329
+ return evmSignTxEip7702({
32276
32330
  typedCall,
32277
32331
  addressN,
32278
32332
  tx: tx,
32279
32333
  supportTrezor: true,
32280
- })
32281
- : evmSignTx({ typedCall, addressN, tx: tx, supportTrezor: true });
32334
+ });
32335
+ }
32336
+ if (isEIP1559) {
32337
+ return evmSignTxEip1559({
32338
+ typedCall,
32339
+ addressN,
32340
+ tx: tx,
32341
+ supportTrezor: true,
32342
+ });
32343
+ }
32344
+ return evmSignTx({ typedCall, addressN, tx: tx, supportTrezor: true });
32282
32345
  });
32283
32346
 
32284
32347
  class EVMSignTransaction extends BaseMethod {
@@ -32286,6 +32349,14 @@ class EVMSignTransaction extends BaseMethod {
32286
32349
  super(...arguments);
32287
32350
  this.addressN = [];
32288
32351
  this.isEIP1559 = false;
32352
+ this.isEIP7702 = false;
32353
+ }
32354
+ hasEIP7702Features(tx) {
32355
+ const authList = tx.authorizationList;
32356
+ return !!(authList && Array.isArray(authList) && authList.length > 0);
32357
+ }
32358
+ hasEIP1559Features(tx) {
32359
+ return !!(tx.maxFeePerGas && tx.maxPriorityFeePerGas);
32289
32360
  }
32290
32361
  init() {
32291
32362
  this.checkDeviceId = true;
@@ -32297,7 +32368,8 @@ class EVMSignTransaction extends BaseMethod {
32297
32368
  const { path, transaction } = this.payload;
32298
32369
  this.addressN = validatePath(path, 3);
32299
32370
  const tx = transaction;
32300
- this.isEIP1559 = !!tx.maxFeePerGas && !!tx.maxPriorityFeePerGas;
32371
+ this.isEIP7702 = this.hasEIP7702Features(tx);
32372
+ this.isEIP1559 = this.hasEIP1559Features(tx) && !this.isEIP7702;
32301
32373
  const schema = [
32302
32374
  { name: 'to', type: 'hexString', required: true },
32303
32375
  { name: 'value', type: 'hexString', required: true },
@@ -32306,7 +32378,12 @@ class EVMSignTransaction extends BaseMethod {
32306
32378
  { name: 'chainId', type: 'number', required: true },
32307
32379
  { name: 'data', type: 'hexString' },
32308
32380
  ];
32309
- if (this.isEIP1559) {
32381
+ if (this.isEIP7702) {
32382
+ schema.push({ name: 'maxFeePerGas', type: 'hexString', required: true });
32383
+ schema.push({ name: 'maxPriorityFeePerGas', type: 'hexString', required: true });
32384
+ schema.push({ name: 'authorizationList', type: 'array', required: true });
32385
+ }
32386
+ else if (this.isEIP1559) {
32310
32387
  schema.push({ name: 'maxFeePerGas', type: 'hexString', required: true });
32311
32388
  schema.push({ name: 'maxPriorityFeePerGas', type: 'hexString', required: true });
32312
32389
  }
@@ -32318,6 +32395,16 @@ class EVMSignTransaction extends BaseMethod {
32318
32395
  this.formattedTx = formatAnyHex(tx);
32319
32396
  }
32320
32397
  getVersionRange() {
32398
+ if (this.isEIP7702) {
32399
+ return {
32400
+ model_classic1s: {
32401
+ min: '3.13.0',
32402
+ },
32403
+ model_touch: {
32404
+ min: '4.16.0',
32405
+ },
32406
+ };
32407
+ }
32321
32408
  if (this.isEIP1559) {
32322
32409
  return {
32323
32410
  model_mini: {
@@ -32333,7 +32420,7 @@ class EVMSignTransaction extends BaseMethod {
32333
32420
  }
32334
32421
  run() {
32335
32422
  return __awaiter(this, void 0, void 0, function* () {
32336
- const { addressN, isEIP1559, formattedTx } = this;
32423
+ const { addressN, isEIP1559, isEIP7702, formattedTx } = this;
32337
32424
  if (formattedTx == null)
32338
32425
  throw hdShared.ERRORS.TypedError('Runtime', 'formattedTx is not set');
32339
32426
  if (TransportManager.getMessageVersion() === 'v1') {
@@ -32342,6 +32429,7 @@ class EVMSignTransaction extends BaseMethod {
32342
32429
  addressN,
32343
32430
  tx: formattedTx,
32344
32431
  isEIP1559,
32432
+ isEIP7702,
32345
32433
  });
32346
32434
  }
32347
32435
  return signTransaction$1({
@@ -32349,6 +32437,7 @@ class EVMSignTransaction extends BaseMethod {
32349
32437
  addressN,
32350
32438
  tx: formattedTx,
32351
32439
  isEIP1559,
32440
+ isEIP7702,
32352
32441
  });
32353
32442
  });
32354
32443
  }
@@ -3,6 +3,7 @@ export type EVMSignedTx = {
3
3
  v: string;
4
4
  r: string;
5
5
  s: string;
6
+ authorizationSignatures?: EVMAuthorizationSignature[];
6
7
  };
7
8
  export type EVMTransaction = {
8
9
  to: string;
@@ -32,9 +33,34 @@ export type EVMTransactionEIP1559 = {
32
33
  maxPriorityFeePerGas: string;
33
34
  accessList?: EVMAccessList[];
34
35
  };
36
+ export type EVMAuthorizationSignature = {
37
+ yParity: number;
38
+ r: string;
39
+ s: string;
40
+ };
41
+ export type EVMAuthorization = {
42
+ addressN?: number[];
43
+ chainId: number;
44
+ address: string;
45
+ nonce: string;
46
+ signature?: EVMAuthorizationSignature;
47
+ };
48
+ export type EVMTransactionEIP7702 = {
49
+ to: string;
50
+ value: string;
51
+ gasLimit: string;
52
+ gasPrice?: typeof undefined;
53
+ nonce: string;
54
+ data?: string;
55
+ chainId: number;
56
+ maxFeePerGas: string;
57
+ maxPriorityFeePerGas: string;
58
+ accessList?: EVMAccessList[];
59
+ authorizationList: EVMAuthorization[];
60
+ };
35
61
  export type EVMSignTransactionParams = {
36
62
  path: string | number[];
37
- transaction: EVMTransaction | EVMTransactionEIP1559;
63
+ transaction: EVMTransaction | EVMTransactionEIP1559 | EVMTransactionEIP7702;
38
64
  };
39
65
  export declare function evmSignTransaction(connectId: string, deviceId: string, params: CommonParams & EVMSignTransactionParams): Response<EVMSignedTx>;
40
66
  //# sourceMappingURL=evmSignTransaction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"evmSignTransaction.d.ts","sourceRoot":"","sources":["../../../src/types/api/evmSignTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAExD,MAAM,MAAM,WAAW,GAAG;IACxB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,SAAS,CAAC;IAChC,oBAAoB,CAAC,EAAE,OAAO,SAAS,CAAC;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,SAAS,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,UAAU,CAAC,EAAE,aAAa,EAAE,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACxB,WAAW,EAAE,cAAc,GAAG,qBAAqB,CAAC;CACrD,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,kBAAkB,CACxC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,YAAY,GAAG,wBAAwB,GAC9C,QAAQ,CAAC,WAAW,CAAC,CAAC"}
1
+ {"version":3,"file":"evmSignTransaction.d.ts","sourceRoot":"","sources":["../../../src/types/api/evmSignTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAExD,MAAM,MAAM,WAAW,GAAG;IACxB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,uBAAuB,CAAC,EAAE,yBAAyB,EAAE,CAAC;CACvD,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,SAAS,CAAC;IAChC,oBAAoB,CAAC,EAAE,OAAO,SAAS,CAAC;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,SAAS,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,UAAU,CAAC,EAAE,aAAa,EAAE,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,yBAAyB,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,SAAS,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,UAAU,CAAC,EAAE,aAAa,EAAE,CAAC;IAC7B,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACxB,WAAW,EAAE,cAAc,GAAG,qBAAqB,GAAG,qBAAqB,CAAC;CAC7E,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,kBAAkB,CACxC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,YAAY,GAAG,wBAAwB,GAC9C,QAAQ,CAAC,WAAW,CAAC,CAAC"}
@@ -18,7 +18,7 @@ export type { EVMAddress, EVMGetAddressParams } from './evmGetAddress';
18
18
  export type { EVMPublicKey, EVMGetPublicKeyParams } from './evmGetPublicKey';
19
19
  export type { EVMSignMessageParams } from './evmSignMessage';
20
20
  export type { EVMSignMessageEIP712Params } from './evmSignMessageEIP712';
21
- export type { EVMTransaction, EVMTransactionEIP1559, EVMSignedTx, EVMSignTransactionParams, EVMAccessList, } from './evmSignTransaction';
21
+ export type { EVMTransaction, EVMTransactionEIP1559, EVMTransactionEIP7702, EVMAuthorization, EVMAuthorizationSignature, EVMSignedTx, EVMSignTransactionParams, EVMAccessList, } from './evmSignTransaction';
22
22
  export type { EthereumSignTypedDataTypes, EthereumSignTypedDataTypeProperty, EthereumSignTypedDataMessage, EVMSignTypedDataParams, } from './evmSignTypedData';
23
23
  export type { EVMVerifyMessageParams } from './evmVerifyMessage';
24
24
  export type { StarcoinAddress, StarcoinGetAddressParams } from './starcoinGetAddress';
@@ -1 +1 @@
1
- {"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../../src/types/api/export.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../../src/types/api/export.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@onekeyfe/hd-core",
3
- "version": "1.1.10-alpha.3",
4
- "description": "> TODO: description",
3
+ "version": "1.1.10-alpha.4",
4
+ "description": "Core processes and APIs for communicating with OneKey hardware devices.",
5
5
  "author": "OneKey",
6
6
  "homepage": "https://github.com/OneKeyHQ/hardware-js-sdk#readme",
7
7
  "license": "ISC",
@@ -25,8 +25,8 @@
25
25
  "url": "https://github.com/OneKeyHQ/hardware-js-sdk/issues"
26
26
  },
27
27
  "dependencies": {
28
- "@onekeyfe/hd-shared": "1.1.10-alpha.3",
29
- "@onekeyfe/hd-transport": "1.1.10-alpha.3",
28
+ "@onekeyfe/hd-shared": "1.1.10-alpha.4",
29
+ "@onekeyfe/hd-transport": "1.1.10-alpha.4",
30
30
  "axios": "^0.27.2",
31
31
  "bignumber.js": "^9.0.2",
32
32
  "bytebuffer": "^5.0.1",
@@ -46,5 +46,5 @@
46
46
  "@types/web-bluetooth": "^0.0.21",
47
47
  "ripple-keypairs": "^1.3.1"
48
48
  },
49
- "gitHead": "55245dea4df039801783083d0587451feb1ea17c"
49
+ "gitHead": "8767f388354b17b84015f4a0ee820a138611e193"
50
50
  }
@@ -3,7 +3,12 @@ import { UI_REQUEST } from '../../constants/ui-request';
3
3
  import { validatePath } from '../helpers/pathUtils';
4
4
  import { BaseMethod } from '../BaseMethod';
5
5
  import { SchemaParam, validateParams } from '../helpers/paramsValidator';
6
- import { EVMSignTransactionParams, EVMTransaction, EVMTransactionEIP1559 } from '../../types';
6
+ import {
7
+ EVMSignTransactionParams,
8
+ EVMTransaction,
9
+ EVMTransactionEIP1559,
10
+ EVMTransactionEIP7702,
11
+ } from '../../types';
7
12
  import { formatAnyHex } from '../helpers/hexUtils';
8
13
  import TransportManager from '../../data-manager/TransportManager';
9
14
  import { signTransaction } from './latest/signTransaction';
@@ -14,7 +19,26 @@ export default class EVMSignTransaction extends BaseMethod {
14
19
 
15
20
  isEIP1559 = false;
16
21
 
17
- formattedTx: EVMTransaction | EVMTransactionEIP1559 | undefined;
22
+ isEIP7702 = false;
23
+
24
+ formattedTx: EVMTransaction | EVMTransactionEIP1559 | EVMTransactionEIP7702 | undefined;
25
+
26
+ /**
27
+ * Check if transaction has EIP7702 authorization list
28
+ * Following ethereumjs pattern for type detection
29
+ */
30
+ private hasEIP7702Features(tx: EVMSignTransactionParams['transaction']): boolean {
31
+ const authList = (tx as EVMTransactionEIP7702).authorizationList;
32
+ return !!(authList && Array.isArray(authList) && authList.length > 0);
33
+ }
34
+
35
+ /**
36
+ * Check if transaction has EIP1559 fee market features
37
+ * Both maxFeePerGas and maxPriorityFeePerGas must be present
38
+ */
39
+ private hasEIP1559Features(tx: EVMSignTransactionParams['transaction']): boolean {
40
+ return !!(tx.maxFeePerGas && tx.maxPriorityFeePerGas);
41
+ }
18
42
 
19
43
  init() {
20
44
  this.checkDeviceId = true;
@@ -29,7 +53,14 @@ export default class EVMSignTransaction extends BaseMethod {
29
53
 
30
54
  const tx: EVMSignTransactionParams['transaction'] = transaction;
31
55
 
32
- this.isEIP1559 = !!tx.maxFeePerGas && !!tx.maxPriorityFeePerGas;
56
+ // Transaction type detection based on distinctive features
57
+ // Following ethereumjs pattern: check most specific features first
58
+
59
+ // EIP7702: Has authorizationList (extends EIP1559)
60
+ this.isEIP7702 = this.hasEIP7702Features(tx);
61
+
62
+ // EIP1559: Has EIP1559 fee fields but no authorizationList (extends EIP2930)
63
+ this.isEIP1559 = this.hasEIP1559Features(tx) && !this.isEIP7702;
33
64
 
34
65
  // check if transaction is valid
35
66
  const schema: SchemaParam[] = [
@@ -40,7 +71,11 @@ export default class EVMSignTransaction extends BaseMethod {
40
71
  { name: 'chainId', type: 'number', required: true },
41
72
  { name: 'data', type: 'hexString' },
42
73
  ];
43
- if (this.isEIP1559) {
74
+ if (this.isEIP7702) {
75
+ schema.push({ name: 'maxFeePerGas', type: 'hexString', required: true });
76
+ schema.push({ name: 'maxPriorityFeePerGas', type: 'hexString', required: true });
77
+ schema.push({ name: 'authorizationList', type: 'array', required: true });
78
+ } else if (this.isEIP1559) {
44
79
  schema.push({ name: 'maxFeePerGas', type: 'hexString', required: true });
45
80
  schema.push({ name: 'maxPriorityFeePerGas', type: 'hexString', required: true });
46
81
  } else {
@@ -53,6 +88,16 @@ export default class EVMSignTransaction extends BaseMethod {
53
88
  }
54
89
 
55
90
  getVersionRange() {
91
+ if (this.isEIP7702) {
92
+ return {
93
+ model_classic1s: {
94
+ min: '3.13.0',
95
+ },
96
+ model_touch: {
97
+ min: '4.16.0',
98
+ },
99
+ };
100
+ }
56
101
  if (this.isEIP1559) {
57
102
  return {
58
103
  model_mini: {
@@ -68,7 +113,7 @@ export default class EVMSignTransaction extends BaseMethod {
68
113
  }
69
114
 
70
115
  async run() {
71
- const { addressN, isEIP1559, formattedTx } = this;
116
+ const { addressN, isEIP1559, isEIP7702, formattedTx } = this;
72
117
 
73
118
  if (formattedTx == null) throw ERRORS.TypedError('Runtime', 'formattedTx is not set');
74
119
 
@@ -78,6 +123,7 @@ export default class EVMSignTransaction extends BaseMethod {
78
123
  addressN,
79
124
  tx: formattedTx,
80
125
  isEIP1559,
126
+ isEIP7702,
81
127
  });
82
128
  }
83
129
 
@@ -86,6 +132,7 @@ export default class EVMSignTransaction extends BaseMethod {
86
132
  addressN,
87
133
  tx: formattedTx,
88
134
  isEIP1559,
135
+ isEIP7702,
89
136
  });
90
137
  }
91
138
  }
@@ -1,14 +1,20 @@
1
1
  import {
2
2
  EthereumSignTx,
3
3
  EthereumSignTxEIP1559,
4
+ EthereumSignTxEIP7702OneKey,
4
5
  EthereumTxRequestOneKey,
5
6
  MessageResponse,
6
7
  TypedCall,
7
8
  } from '@onekeyfe/hd-transport';
8
9
  import { ERRORS, HardwareErrorCode } from '@onekeyfe/hd-shared';
9
- import { EVMSignedTx, EVMTransaction, EVMTransactionEIP1559 } from '../../../types';
10
+ import {
11
+ EVMSignedTx,
12
+ EVMTransaction,
13
+ EVMTransactionEIP1559,
14
+ EVMTransactionEIP7702,
15
+ } from '../../../types';
10
16
  import { cutString } from '../../helpers/stringUtils';
11
- import { stripHexStartZeroes } from '../../helpers/hexUtils';
17
+ import { stripHexStartZeroes, addHexPrefix } from '../../helpers/hexUtils';
12
18
 
13
19
  export const processTxRequest = async ({
14
20
  typedCall,
@@ -27,6 +33,7 @@ export const processTxRequest = async ({
27
33
  let v = request.signature_v;
28
34
  const r = request.signature_r;
29
35
  const s = request.signature_s;
36
+ const authorizationSignatures = request.authorization_signatures;
30
37
 
31
38
  if (v == null || r == null || s == null) {
32
39
  throw ERRORS.TypedError(
@@ -40,11 +47,22 @@ export const processTxRequest = async ({
40
47
  v += 2 * chainId + 35;
41
48
  }
42
49
 
43
- return Promise.resolve({
50
+ const result: any = {
44
51
  v: `0x${v.toString(16)}`,
45
52
  r: `0x${r}`,
46
53
  s: `0x${s}`,
47
- });
54
+ };
55
+
56
+ // Add authorization signatures for EIP7702 transactions
57
+ if (authorizationSignatures && authorizationSignatures.length > 0) {
58
+ result.authorizationSignatures = authorizationSignatures.map(sig => ({
59
+ yParity: sig.y_parity,
60
+ r: sig.r,
61
+ s: sig.s,
62
+ }));
63
+ }
64
+
65
+ return Promise.resolve(result);
48
66
  }
49
67
 
50
68
  const [first, rest] = cutString(data, request.data_length * 2);
@@ -180,17 +198,93 @@ export const evmSignTxEip1559 = async ({
180
198
 
181
199
  return processTxRequest({ typedCall, request: response.message, data: rest, supportTrezor });
182
200
  };
201
+
202
+ export const evmSignTxEip7702 = async ({
203
+ typedCall,
204
+ addressN,
205
+ tx,
206
+ supportTrezor,
207
+ }: {
208
+ typedCall: TypedCall;
209
+ addressN: number[];
210
+ tx: EVMTransactionEIP7702;
211
+ supportTrezor?: boolean;
212
+ }) => {
213
+ const {
214
+ to,
215
+ value,
216
+ gasLimit,
217
+ nonce,
218
+ data,
219
+ chainId,
220
+ maxFeePerGas,
221
+ maxPriorityFeePerGas,
222
+ accessList,
223
+ authorizationList,
224
+ } = tx;
225
+
226
+ const length = data == null ? 0 : data.length / 2;
227
+
228
+ const [first, rest] = cutString(data, 1024 * 2);
229
+
230
+ const message: EthereumSignTxEIP7702OneKey = {
231
+ address_n: addressN,
232
+ nonce: stripHexStartZeroes(nonce),
233
+ max_gas_fee: stripHexStartZeroes(maxFeePerGas),
234
+ max_priority_fee: stripHexStartZeroes(maxPriorityFeePerGas),
235
+ gas_limit: stripHexStartZeroes(gasLimit),
236
+ to,
237
+ value: stripHexStartZeroes(value),
238
+ data_length: length,
239
+ data_initial_chunk: first,
240
+ chain_id: chainId,
241
+ access_list: (accessList || []).map(a => ({
242
+ address: a.address,
243
+ storage_keys: a.storageKeys,
244
+ })),
245
+ authorization_list: authorizationList.map(auth => ({
246
+ address_n: auth.addressN || [],
247
+ chain_id: auth.chainId,
248
+ address: addHexPrefix(auth.address),
249
+ nonce: stripHexStartZeroes(auth.nonce),
250
+ signature: auth.signature
251
+ ? {
252
+ y_parity: auth.signature.yParity,
253
+ r: auth.signature.r,
254
+ s: auth.signature.s,
255
+ }
256
+ : undefined,
257
+ })),
258
+ };
259
+
260
+ let response;
261
+ if (supportTrezor) {
262
+ // Note: Trezor doesn't support EIP7702 yet, this is for future compatibility
263
+ throw ERRORS.TypedError(HardwareErrorCode.RuntimeError, 'EIP7702 not supported by Trezor');
264
+ } else {
265
+ response = await typedCall('EthereumSignTxEIP7702OneKey', 'EthereumTxRequestOneKey', message);
266
+ }
267
+
268
+ return processTxRequest({ typedCall, request: response.message, data: rest, supportTrezor });
269
+ };
270
+
183
271
  export const signTransaction = async ({
184
272
  typedCall,
185
273
  isEIP1559,
274
+ isEIP7702,
186
275
  addressN,
187
276
  tx,
188
277
  }: {
189
278
  addressN: number[];
190
- tx: EVMTransaction | EVMTransactionEIP1559;
279
+ tx: EVMTransaction | EVMTransactionEIP1559 | EVMTransactionEIP7702;
191
280
  isEIP1559: boolean;
281
+ isEIP7702?: boolean;
192
282
  typedCall: TypedCall;
193
- }) =>
194
- isEIP1559
283
+ }) => {
284
+ if (isEIP7702) {
285
+ return evmSignTxEip7702({ typedCall, addressN, tx: tx as EVMTransactionEIP7702 });
286
+ }
287
+ return isEIP1559
195
288
  ? evmSignTxEip1559({ typedCall, addressN, tx: tx as EVMTransactionEIP1559 })
196
289
  : evmSignTx({ typedCall, addressN, tx: tx as EVMTransaction });
290
+ };
@@ -1,23 +1,36 @@
1
1
  import { TypedCall } from '@onekeyfe/hd-transport';
2
- import { EVMTransaction, EVMTransactionEIP1559 } from '../../../types';
3
- import { evmSignTx, evmSignTxEip1559 } from '../latest/signTransaction';
2
+ import { EVMTransaction, EVMTransactionEIP1559, EVMTransactionEIP7702 } from '../../../types';
3
+ import { evmSignTx, evmSignTxEip1559, evmSignTxEip7702 } from '../latest/signTransaction';
4
4
 
5
5
  export const signTransaction = async ({
6
6
  typedCall,
7
7
  isEIP1559,
8
+ isEIP7702,
8
9
  addressN,
9
10
  tx,
10
11
  }: {
11
12
  addressN: number[];
12
- tx: EVMTransaction | EVMTransactionEIP1559;
13
+ tx: EVMTransaction | EVMTransactionEIP1559 | EVMTransactionEIP7702;
13
14
  isEIP1559: boolean;
15
+ isEIP7702: boolean;
14
16
  typedCall: TypedCall;
15
- }) =>
16
- isEIP1559
17
- ? evmSignTxEip1559({
18
- typedCall,
19
- addressN,
20
- tx: tx as EVMTransactionEIP1559,
21
- supportTrezor: true,
22
- })
23
- : evmSignTx({ typedCall, addressN, tx: tx as EVMTransaction, supportTrezor: true });
17
+ }) => {
18
+ if (isEIP7702) {
19
+ return evmSignTxEip7702({
20
+ typedCall,
21
+ addressN,
22
+ tx: tx as EVMTransactionEIP7702,
23
+ supportTrezor: true,
24
+ });
25
+ }
26
+ if (isEIP1559) {
27
+ return evmSignTxEip1559({
28
+ typedCall,
29
+ addressN,
30
+ tx: tx as EVMTransactionEIP1559,
31
+ supportTrezor: true,
32
+ });
33
+ }
34
+
35
+ return evmSignTx({ typedCall, addressN, tx: tx as EVMTransaction, supportTrezor: true });
36
+ };
@@ -4,6 +4,7 @@ export type EVMSignedTx = {
4
4
  v: string;
5
5
  r: string;
6
6
  s: string;
7
+ authorizationSignatures?: EVMAuthorizationSignature[];
7
8
  };
8
9
 
9
10
  export type EVMTransaction = {
@@ -37,9 +38,37 @@ export type EVMTransactionEIP1559 = {
37
38
  accessList?: EVMAccessList[];
38
39
  };
39
40
 
41
+ export type EVMAuthorizationSignature = {
42
+ yParity: number;
43
+ r: string;
44
+ s: string;
45
+ };
46
+
47
+ export type EVMAuthorization = {
48
+ addressN?: number[];
49
+ chainId: number;
50
+ address: string;
51
+ nonce: string;
52
+ signature?: EVMAuthorizationSignature;
53
+ };
54
+
55
+ export type EVMTransactionEIP7702 = {
56
+ to: string;
57
+ value: string;
58
+ gasLimit: string;
59
+ gasPrice?: typeof undefined;
60
+ nonce: string;
61
+ data?: string;
62
+ chainId: number;
63
+ maxFeePerGas: string;
64
+ maxPriorityFeePerGas: string;
65
+ accessList?: EVMAccessList[];
66
+ authorizationList: EVMAuthorization[];
67
+ };
68
+
40
69
  export type EVMSignTransactionParams = {
41
70
  path: string | number[];
42
- transaction: EVMTransaction | EVMTransactionEIP1559;
71
+ transaction: EVMTransaction | EVMTransactionEIP1559 | EVMTransactionEIP7702;
43
72
  };
44
73
 
45
74
  export declare function evmSignTransaction(
@@ -36,6 +36,9 @@ export type { EVMSignMessageEIP712Params } from './evmSignMessageEIP712';
36
36
  export type {
37
37
  EVMTransaction,
38
38
  EVMTransactionEIP1559,
39
+ EVMTransactionEIP7702,
40
+ EVMAuthorization,
41
+ EVMAuthorizationSignature,
39
42
  EVMSignedTx,
40
43
  EVMSignTransactionParams,
41
44
  EVMAccessList,