@ledgerhq/device-signer-kit-ethereum 0.0.0-signer-eth-plugin-fix-20250331141239 → 0.0.0-solana-signer-20251204160729
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/README.md +112 -1
- package/lib/cjs/api/SignerEth.js +1 -1
- package/lib/cjs/api/SignerEth.js.map +1 -1
- package/lib/cjs/api/SignerEthBuilder.js +1 -1
- package/lib/cjs/api/SignerEthBuilder.js.map +3 -3
- package/lib/cjs/api/SignerEthBuilder.test.js +1 -1
- package/lib/cjs/api/SignerEthBuilder.test.js.map +3 -3
- package/lib/cjs/api/app-binder/SignDelegationAuthorizationTypes.js +2 -0
- package/lib/cjs/api/app-binder/SignDelegationAuthorizationTypes.js.map +7 -0
- package/lib/cjs/api/app-binder/SignTransactionDeviceActionTypes.js +1 -1
- package/lib/cjs/api/app-binder/SignTransactionDeviceActionTypes.js.map +2 -2
- package/lib/cjs/api/app-binder/SignTypedDataDeviceActionTypes.js +1 -1
- package/lib/cjs/api/app-binder/SignTypedDataDeviceActionTypes.js.map +2 -2
- package/lib/cjs/api/app-binder/VerifySafeAddressDeviceActionTypes.js +2 -0
- package/lib/cjs/api/app-binder/VerifySafeAddressDeviceActionTypes.js.map +7 -0
- package/lib/cjs/api/index.js +1 -1
- package/lib/cjs/api/index.js.map +3 -3
- package/lib/cjs/api/model/AddressOptions.js +1 -1
- package/lib/cjs/api/model/AddressOptions.js.map +1 -1
- package/lib/cjs/api/model/ClearSigningType.js +2 -0
- package/lib/cjs/api/model/ClearSigningType.js.map +7 -0
- package/lib/cjs/api/model/MessageOptions.js +2 -0
- package/lib/cjs/api/model/MessageOptions.js.map +7 -0
- package/lib/cjs/api/model/SafeAddressOptions.js +2 -0
- package/lib/cjs/api/model/SafeAddressOptions.js.map +7 -0
- package/lib/cjs/api/model/TransactionOptions.js +1 -1
- package/lib/cjs/api/model/TransactionOptions.js.map +1 -1
- package/lib/cjs/api/model/TypedDataOptions.js +2 -0
- package/lib/cjs/api/model/TypedDataOptions.js.map +7 -0
- package/lib/cjs/internal/DefaultSignerEth.js +1 -1
- package/lib/cjs/internal/DefaultSignerEth.js.map +3 -3
- package/lib/cjs/internal/DefaultSignerEth.test.js +1 -1
- package/lib/cjs/internal/DefaultSignerEth.test.js.map +3 -3
- package/lib/cjs/internal/address/di/addressModule.js +1 -1
- package/lib/cjs/internal/address/di/addressModule.js.map +3 -3
- package/lib/cjs/internal/address/di/addressModule.test.js +1 -1
- package/lib/cjs/internal/address/di/addressModule.test.js.map +2 -2
- package/lib/cjs/internal/address/use-case/GetAddressUseCase.js +1 -1
- package/lib/cjs/internal/address/use-case/GetAddressUseCase.js.map +2 -2
- package/lib/cjs/internal/address/use-case/GetAddressUseCase.test.js +1 -1
- package/lib/cjs/internal/address/use-case/GetAddressUseCase.test.js.map +2 -2
- package/lib/cjs/internal/app-binder/EthAppBinder.js +1 -1
- package/lib/cjs/internal/app-binder/EthAppBinder.js.map +3 -3
- package/lib/cjs/internal/app-binder/EthAppBinder.test.js +1 -1
- package/lib/cjs/internal/app-binder/EthAppBinder.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/command/GetAddressCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/GetAddressCommand.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/GetAddressCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/GetAddressCommand.test.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/GetAppConfigurationCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/GetAppConfigurationCommand.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/GetAppConfigurationCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/GetAppConfigurationCommand.test.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/GetChallengeCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/GetChallengeCommand.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/GetChallengeCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/GetChallengeCommand.test.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/ProvideEnumCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/ProvideEnumCommand.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/ProvideEnumCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/ProvideEnumCommand.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/command/ProvideNFTInformationCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/ProvideNFTInformationCommand.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/ProvideNFTInformationCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/ProvideNFTInformationCommand.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/command/ProvideNetworkConfigurationCommand.js +2 -0
- package/lib/cjs/internal/app-binder/command/ProvideNetworkConfigurationCommand.js.map +7 -0
- package/lib/cjs/internal/app-binder/command/ProvideNetworkConfigurationCommand.test.js +2 -0
- package/lib/cjs/internal/app-binder/command/ProvideNetworkConfigurationCommand.test.js.map +7 -0
- package/lib/cjs/internal/app-binder/command/ProvideProxyInfoCommand.js +2 -0
- package/lib/cjs/internal/app-binder/command/ProvideProxyInfoCommand.js.map +7 -0
- package/lib/cjs/internal/app-binder/command/ProvideProxyInfoCommand.test.js +2 -0
- package/lib/cjs/internal/app-binder/command/ProvideProxyInfoCommand.test.js.map +7 -0
- package/lib/cjs/internal/app-binder/command/ProvideSafeAccountCommand.js +2 -0
- package/lib/cjs/internal/app-binder/command/ProvideSafeAccountCommand.js.map +7 -0
- package/lib/cjs/internal/app-binder/command/ProvideSafeAccountCommand.test.js +2 -0
- package/lib/cjs/internal/app-binder/command/ProvideSafeAccountCommand.test.js.map +7 -0
- package/lib/cjs/internal/app-binder/command/ProvideTokenInformationCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/ProvideTokenInformationCommand.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/ProvideTokenInformationCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/ProvideTokenInformationCommand.test.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/command/ProvideTransactionInformationCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/ProvideTransactionInformationCommand.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/ProvideTransactionInformationCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/ProvideTransactionInformationCommand.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/command/ProvideTrustedNameCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/ProvideTrustedNameCommand.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/ProvideTrustedNameCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/ProvideTrustedNameCommand.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/command/ProvideWeb3CheckCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/ProvideWeb3CheckCommand.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/ProvideWeb3CheckCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/ProvideWeb3CheckCommand.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/command/SendEIP712FilteringCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/SendEIP712FilteringCommand.js.map +3 -3
- package/lib/cjs/internal/app-binder/command/SendEIP712FilteringCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/SendEIP712FilteringCommand.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/command/SendEIP712StructDefinitionCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/SendEIP712StructDefinitionCommand.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/command/SendEIP712StructImplemCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/SendEIP712StructImplemCommand.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/SendEIP712StructImplemCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/SendEIP712StructImplemCommand.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/command/SetExternalPluginCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/SetExternalPluginCommand.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/SetExternalPluginCommand.test.js +2 -2
- package/lib/cjs/internal/app-binder/command/SetExternalPluginCommand.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/command/SetPluginCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/SetPluginCommand.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/SetPluginCommand.test.js +2 -2
- package/lib/cjs/internal/app-binder/command/SetPluginCommand.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/command/SignAuthorizationDelegationCommand.js +2 -0
- package/lib/cjs/internal/app-binder/command/SignAuthorizationDelegationCommand.js.map +7 -0
- package/lib/cjs/internal/app-binder/command/SignAuthorizationDelegationCommand.test.js +2 -0
- package/lib/cjs/internal/app-binder/command/SignAuthorizationDelegationCommand.test.js.map +7 -0
- package/lib/cjs/internal/app-binder/command/SignEIP712Command.js +1 -1
- package/lib/cjs/internal/app-binder/command/SignEIP712Command.js.map +3 -3
- package/lib/cjs/internal/app-binder/command/SignEIP712Command.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/SignEIP712Command.test.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/SignPersonalMessageCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/SignPersonalMessageCommand.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/SignPersonalMessageCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/SignPersonalMessageCommand.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/command/SignTransactionCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/SignTransactionCommand.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/SignTransactionCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/SignTransactionCommand.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/command/StartTransactionCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/StartTransactionCommand.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/StartTransactionCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/StartTransactionCommand.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/command/StoreTransactionCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/StoreTransactionCommand.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/StoreTransactionCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/StoreTransactionCommand.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/command/Web3CheckOptInCommand.js +1 -1
- package/lib/cjs/internal/app-binder/command/Web3CheckOptInCommand.js.map +2 -2
- package/lib/cjs/internal/app-binder/command/Web3CheckOptInCommand.test.js +1 -1
- package/lib/cjs/internal/app-binder/command/Web3CheckOptInCommand.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.js +1 -1
- package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.js.map +3 -3
- package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.js +1 -1
- package/lib/cjs/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.js +1 -1
- package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.js.map +3 -3
- package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.js +1 -1
- package/lib/cjs/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/device-action/VerifySafeAddress/VerifySafeAddress.js +2 -0
- package/lib/cjs/internal/app-binder/device-action/VerifySafeAddress/VerifySafeAddress.js.map +7 -0
- package/lib/cjs/internal/app-binder/device-action/VerifySafeAddress/VerifySafeAddress.test.js +2 -0
- package/lib/cjs/internal/app-binder/device-action/VerifySafeAddress/VerifySafeAddress.test.js.map +7 -0
- package/lib/cjs/internal/app-binder/device-action/__test-utils__/makeInternalApi.js +1 -1
- package/lib/cjs/internal/app-binder/device-action/__test-utils__/makeInternalApi.js.map +3 -3
- package/lib/cjs/internal/app-binder/device-action/__test-utils__/testDeviceActionUntilStep.js +2 -0
- package/lib/cjs/internal/app-binder/device-action/__test-utils__/testDeviceActionUntilStep.js.map +7 -0
- package/lib/cjs/internal/app-binder/di/appBinderModule.js +1 -1
- package/lib/cjs/internal/app-binder/di/appBinderModule.js.map +3 -3
- package/lib/cjs/internal/app-binder/task/BuildBaseContexts.js +2 -0
- package/lib/cjs/internal/app-binder/task/BuildBaseContexts.js.map +7 -0
- package/lib/cjs/internal/app-binder/task/BuildBaseContexts.test.js +2 -0
- package/lib/cjs/internal/app-binder/task/BuildBaseContexts.test.js.map +7 -0
- package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.js +1 -1
- package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.js.map +3 -3
- package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.test.js +1 -1
- package/lib/cjs/internal/app-binder/task/BuildEIP712ContextTask.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/task/BuildFullContextsTask.js +2 -0
- package/lib/cjs/internal/app-binder/task/BuildFullContextsTask.js.map +7 -0
- package/lib/cjs/internal/app-binder/task/BuildFullContextsTask.test.js +2 -0
- package/lib/cjs/internal/app-binder/task/BuildFullContextsTask.test.js.map +7 -0
- package/lib/cjs/internal/app-binder/task/BuildSafeAddressContextTask.js +2 -0
- package/lib/cjs/internal/app-binder/task/BuildSafeAddressContextTask.js.map +7 -0
- package/lib/cjs/internal/app-binder/task/BuildSafeAddressContextTask.test.js +2 -0
- package/lib/cjs/internal/app-binder/task/BuildSafeAddressContextTask.test.js.map +7 -0
- package/lib/cjs/internal/app-binder/task/BuildSubcontextsTask.js +2 -0
- package/lib/cjs/internal/app-binder/task/BuildSubcontextsTask.js.map +7 -0
- package/lib/cjs/internal/app-binder/task/BuildSubcontextsTask.test.js +2 -0
- package/lib/cjs/internal/app-binder/task/BuildSubcontextsTask.test.js.map +7 -0
- package/lib/cjs/internal/app-binder/task/ParseNestedTransactionTask.js +2 -0
- package/lib/cjs/internal/app-binder/task/ParseNestedTransactionTask.js.map +7 -0
- package/lib/cjs/internal/app-binder/task/ParseNestedTransactionTask.test.js +2 -0
- package/lib/cjs/internal/app-binder/task/ParseNestedTransactionTask.test.js.map +7 -0
- package/lib/cjs/internal/app-binder/task/ParseTransactionTask.js +2 -0
- package/lib/cjs/internal/app-binder/task/ParseTransactionTask.js.map +7 -0
- package/lib/cjs/internal/app-binder/task/ParseTransactionTask.test.js +2 -0
- package/lib/cjs/internal/app-binder/task/ParseTransactionTask.test.js.map +7 -0
- package/lib/cjs/internal/app-binder/task/ProvideContextTask.js +2 -0
- package/lib/cjs/internal/app-binder/task/ProvideContextTask.js.map +7 -0
- package/lib/cjs/internal/app-binder/task/ProvideContextTask.test.js +2 -0
- package/lib/cjs/internal/app-binder/task/ProvideContextTask.test.js.map +7 -0
- package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.js +1 -1
- package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.js.map +3 -3
- package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.test.js +1 -1
- package/lib/cjs/internal/app-binder/task/ProvideEIP712ContextTask.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/task/ProvideTransactionContextsTask.js +2 -0
- package/lib/cjs/internal/app-binder/task/ProvideTransactionContextsTask.js.map +7 -0
- package/lib/cjs/internal/app-binder/task/ProvideTransactionContextsTask.test.js +2 -0
- package/lib/cjs/internal/app-binder/task/ProvideTransactionContextsTask.test.js.map +7 -0
- package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.js +1 -1
- package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.js.map +3 -3
- package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.test.js +1 -1
- package/lib/cjs/internal/app-binder/task/SendPayloadInChunksTask.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/task/SendSignAuthorizationDelegationTask.js +2 -0
- package/lib/cjs/internal/app-binder/task/SendSignAuthorizationDelegationTask.js.map +7 -0
- package/lib/cjs/internal/app-binder/task/SendSignAuthorizationDelegationTask.test.js +2 -0
- package/lib/cjs/internal/app-binder/task/SendSignAuthorizationDelegationTask.test.js.map +7 -0
- package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.js +1 -1
- package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.js.map +3 -3
- package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.test.js +1 -1
- package/lib/cjs/internal/app-binder/task/SendSignTransactionTask.test.js.map +3 -3
- package/lib/cjs/internal/app-binder/task/SignTypedDataLegacyTask.js +2 -0
- package/lib/cjs/internal/app-binder/task/SignTypedDataLegacyTask.js.map +7 -0
- package/lib/cjs/internal/app-binder/task/SignTypedDataLegacyTask.test.js +2 -0
- package/lib/cjs/internal/app-binder/task/SignTypedDataLegacyTask.test.js.map +7 -0
- package/lib/cjs/internal/di.js +1 -1
- package/lib/cjs/internal/di.js.map +3 -3
- package/lib/cjs/internal/eip7702/di/eip7702Module.js +2 -0
- package/lib/cjs/internal/eip7702/di/eip7702Module.js.map +7 -0
- package/lib/cjs/internal/eip7702/di/eip7702Module.test.js +2 -0
- package/lib/cjs/internal/eip7702/di/eip7702Module.test.js.map +7 -0
- package/lib/cjs/internal/eip7702/di/eip7702Types.js +2 -0
- package/lib/cjs/internal/eip7702/di/eip7702Types.js.map +7 -0
- package/lib/cjs/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.js +2 -0
- package/lib/cjs/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.js.map +7 -0
- package/lib/cjs/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.test.js +2 -0
- package/lib/cjs/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.test.js.map +7 -0
- package/lib/cjs/internal/message/di/messageModule.js +1 -1
- package/lib/cjs/internal/message/di/messageModule.js.map +3 -3
- package/lib/cjs/internal/message/di/messageModule.test.js +1 -1
- package/lib/cjs/internal/message/di/messageModule.test.js.map +2 -2
- package/lib/cjs/internal/message/use-case/SignMessageUseCase.js +1 -1
- package/lib/cjs/internal/message/use-case/SignMessageUseCase.js.map +3 -3
- package/lib/cjs/internal/message/use-case/SignMessageUseCase.test.js +1 -1
- package/lib/cjs/internal/message/use-case/SignMessageUseCase.test.js.map +2 -2
- package/lib/cjs/internal/safe/di/safeModule.js +2 -0
- package/lib/cjs/internal/safe/di/safeModule.js.map +7 -0
- package/lib/cjs/internal/safe/di/safeModule.test.js +2 -0
- package/lib/cjs/internal/safe/di/safeModule.test.js.map +7 -0
- package/lib/cjs/internal/safe/di/safeTypes.js +2 -0
- package/lib/cjs/internal/safe/di/safeTypes.js.map +7 -0
- package/lib/cjs/internal/safe/use-case/VerifySafeAddressUseCase.js +2 -0
- package/lib/cjs/internal/safe/use-case/VerifySafeAddressUseCase.js.map +7 -0
- package/lib/cjs/internal/safe/use-case/VerifySafeAddressUseCase.test.js +2 -0
- package/lib/cjs/internal/safe/use-case/VerifySafeAddressUseCase.test.js.map +7 -0
- package/lib/cjs/internal/shared/utils/ApplicationChecker.js +1 -1
- package/lib/cjs/internal/shared/utils/ApplicationChecker.js.map +3 -3
- package/lib/cjs/internal/shared/utils/ApplicationChecker.test.js +1 -1
- package/lib/cjs/internal/shared/utils/ApplicationChecker.test.js.map +2 -2
- package/lib/cjs/internal/transaction/di/transactionModule.js +1 -1
- package/lib/cjs/internal/transaction/di/transactionModule.js.map +3 -3
- package/lib/cjs/internal/transaction/di/transactionModule.test.js +1 -1
- package/lib/cjs/internal/transaction/di/transactionModule.test.js.map +2 -2
- package/lib/cjs/internal/transaction/service/mapper/EthersTransactionMapperService.js +2 -0
- package/lib/cjs/internal/transaction/service/mapper/EthersTransactionMapperService.js.map +7 -0
- package/lib/cjs/internal/transaction/service/mapper/EthersTransactionMapperService.test.js +2 -0
- package/lib/cjs/internal/transaction/service/mapper/EthersTransactionMapperService.test.js.map +7 -0
- package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.js +1 -1
- package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.js.map +3 -3
- package/lib/cjs/internal/transaction/service/parser/TransactionParserService.js +1 -1
- package/lib/cjs/internal/transaction/service/parser/TransactionParserService.js.map +3 -3
- package/lib/cjs/internal/transaction/service/parser/TransactionParserService.test.js +1 -1
- package/lib/cjs/internal/transaction/service/parser/TransactionParserService.test.js.map +3 -3
- package/lib/cjs/internal/typed-data/di/typedDataModule.js +1 -1
- package/lib/cjs/internal/typed-data/di/typedDataModule.js.map +3 -3
- package/lib/cjs/internal/typed-data/di/typedDataModule.test.js +1 -1
- package/lib/cjs/internal/typed-data/di/typedDataModule.test.js.map +2 -2
- package/lib/cjs/internal/typed-data/service/DefaultTypedDataParserService.js +1 -1
- package/lib/cjs/internal/typed-data/service/DefaultTypedDataParserService.js.map +2 -2
- package/lib/cjs/internal/typed-data/service/TypedDataParser.js +1 -1
- package/lib/cjs/internal/typed-data/service/TypedDataParser.js.map +3 -3
- package/lib/cjs/internal/typed-data/service/TypedDataParser.test.js +1 -1
- package/lib/cjs/internal/typed-data/service/TypedDataParser.test.js.map +2 -2
- package/lib/cjs/internal/typed-data/use-case/SignTypedDataUseCase.js +1 -1
- package/lib/cjs/internal/typed-data/use-case/SignTypedDataUseCase.js.map +3 -3
- package/lib/cjs/internal/typed-data/use-case/SignTypedDataUseCase.test.js +1 -1
- package/lib/cjs/internal/typed-data/use-case/SignTypedDataUseCase.test.js.map +2 -2
- package/lib/cjs/package.json +43 -40
- package/lib/esm/api/SignerEthBuilder.js +1 -1
- package/lib/esm/api/SignerEthBuilder.js.map +3 -3
- package/lib/esm/api/SignerEthBuilder.test.js +1 -1
- package/lib/esm/api/SignerEthBuilder.test.js.map +3 -3
- package/lib/esm/api/app-binder/SignDelegationAuthorizationTypes.js +1 -0
- package/lib/esm/api/app-binder/SignTransactionDeviceActionTypes.js +1 -1
- package/lib/esm/api/app-binder/SignTransactionDeviceActionTypes.js.map +2 -2
- package/lib/esm/api/app-binder/SignTypedDataDeviceActionTypes.js +1 -1
- package/lib/esm/api/app-binder/SignTypedDataDeviceActionTypes.js.map +2 -2
- package/lib/esm/api/app-binder/VerifySafeAddressDeviceActionTypes.js +2 -0
- package/lib/esm/api/app-binder/VerifySafeAddressDeviceActionTypes.js.map +7 -0
- package/lib/esm/api/index.js +1 -1
- package/lib/esm/api/index.js.map +2 -2
- package/lib/esm/api/model/ClearSigningType.js +2 -0
- package/lib/esm/api/model/ClearSigningType.js.map +7 -0
- package/lib/esm/api/model/MessageOptions.js +1 -0
- package/lib/esm/api/model/MessageOptions.js.map +7 -0
- package/lib/esm/api/model/SafeAddressOptions.js +1 -0
- package/lib/esm/api/model/SafeAddressOptions.js.map +7 -0
- package/lib/esm/api/model/TypedDataOptions.js +1 -0
- package/lib/esm/api/model/TypedDataOptions.js.map +7 -0
- package/lib/esm/internal/DefaultSignerEth.js +1 -1
- package/lib/esm/internal/DefaultSignerEth.js.map +3 -3
- package/lib/esm/internal/DefaultSignerEth.test.js +1 -1
- package/lib/esm/internal/DefaultSignerEth.test.js.map +3 -3
- package/lib/esm/internal/address/di/addressModule.js +1 -1
- package/lib/esm/internal/address/di/addressModule.js.map +3 -3
- package/lib/esm/internal/address/di/addressModule.test.js +1 -1
- package/lib/esm/internal/address/di/addressModule.test.js.map +2 -2
- package/lib/esm/internal/address/use-case/GetAddressUseCase.js +1 -1
- package/lib/esm/internal/address/use-case/GetAddressUseCase.js.map +2 -2
- package/lib/esm/internal/address/use-case/GetAddressUseCase.test.js +1 -1
- package/lib/esm/internal/address/use-case/GetAddressUseCase.test.js.map +2 -2
- package/lib/esm/internal/app-binder/EthAppBinder.js +1 -1
- package/lib/esm/internal/app-binder/EthAppBinder.js.map +3 -3
- package/lib/esm/internal/app-binder/EthAppBinder.test.js +1 -1
- package/lib/esm/internal/app-binder/EthAppBinder.test.js.map +3 -3
- package/lib/esm/internal/app-binder/command/GetAddressCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/GetAddressCommand.js.map +2 -2
- package/lib/esm/internal/app-binder/command/GetAddressCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/GetAddressCommand.test.js.map +2 -2
- package/lib/esm/internal/app-binder/command/GetAppConfigurationCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/GetAppConfigurationCommand.js.map +2 -2
- package/lib/esm/internal/app-binder/command/GetAppConfigurationCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/GetAppConfigurationCommand.test.js.map +2 -2
- package/lib/esm/internal/app-binder/command/GetChallengeCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/GetChallengeCommand.js.map +2 -2
- package/lib/esm/internal/app-binder/command/GetChallengeCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/GetChallengeCommand.test.js.map +2 -2
- package/lib/esm/internal/app-binder/command/ProvideEnumCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/ProvideEnumCommand.js.map +2 -2
- package/lib/esm/internal/app-binder/command/ProvideEnumCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/ProvideEnumCommand.test.js.map +3 -3
- package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.js.map +2 -2
- package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/ProvideNFTInformationCommand.test.js.map +3 -3
- package/lib/esm/internal/app-binder/command/ProvideNetworkConfigurationCommand.js +2 -0
- package/lib/esm/internal/app-binder/command/ProvideNetworkConfigurationCommand.js.map +7 -0
- package/lib/esm/internal/app-binder/command/ProvideNetworkConfigurationCommand.test.js +2 -0
- package/lib/esm/internal/app-binder/command/ProvideNetworkConfigurationCommand.test.js.map +7 -0
- package/lib/esm/internal/app-binder/command/ProvideProxyInfoCommand.js +2 -0
- package/lib/esm/internal/app-binder/command/ProvideProxyInfoCommand.js.map +7 -0
- package/lib/esm/internal/app-binder/command/ProvideProxyInfoCommand.test.js +2 -0
- package/lib/esm/internal/app-binder/command/ProvideProxyInfoCommand.test.js.map +7 -0
- package/lib/esm/internal/app-binder/command/ProvideSafeAccountCommand.js +2 -0
- package/lib/esm/internal/app-binder/command/ProvideSafeAccountCommand.js.map +7 -0
- package/lib/esm/internal/app-binder/command/ProvideSafeAccountCommand.test.js +2 -0
- package/lib/esm/internal/app-binder/command/ProvideSafeAccountCommand.test.js.map +7 -0
- package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.js.map +2 -2
- package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/ProvideTokenInformationCommand.test.js.map +2 -2
- package/lib/esm/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.js.map +2 -2
- package/lib/esm/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.test.js.map +3 -3
- package/lib/esm/internal/app-binder/command/ProvideTransactionInformationCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/ProvideTransactionInformationCommand.js.map +2 -2
- package/lib/esm/internal/app-binder/command/ProvideTransactionInformationCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/ProvideTransactionInformationCommand.test.js.map +3 -3
- package/lib/esm/internal/app-binder/command/ProvideTrustedNameCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/ProvideTrustedNameCommand.js.map +2 -2
- package/lib/esm/internal/app-binder/command/ProvideTrustedNameCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/ProvideTrustedNameCommand.test.js.map +3 -3
- package/lib/esm/internal/app-binder/command/ProvideWeb3CheckCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/ProvideWeb3CheckCommand.js.map +2 -2
- package/lib/esm/internal/app-binder/command/ProvideWeb3CheckCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/ProvideWeb3CheckCommand.test.js.map +3 -3
- package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.js.map +3 -3
- package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/SendEIP712FilteringCommand.test.js.map +3 -3
- package/lib/esm/internal/app-binder/command/SendEIP712StructDefinitionCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/SendEIP712StructDefinitionCommand.js.map +2 -2
- package/lib/esm/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.js.map +3 -3
- package/lib/esm/internal/app-binder/command/SendEIP712StructImplemCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/SendEIP712StructImplemCommand.js.map +2 -2
- package/lib/esm/internal/app-binder/command/SendEIP712StructImplemCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/SendEIP712StructImplemCommand.test.js.map +3 -3
- package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.js.map +2 -2
- package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.test.js +2 -2
- package/lib/esm/internal/app-binder/command/SetExternalPluginCommand.test.js.map +3 -3
- package/lib/esm/internal/app-binder/command/SetPluginCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/SetPluginCommand.js.map +2 -2
- package/lib/esm/internal/app-binder/command/SetPluginCommand.test.js +2 -2
- package/lib/esm/internal/app-binder/command/SetPluginCommand.test.js.map +3 -3
- package/lib/esm/internal/app-binder/command/SignAuthorizationDelegationCommand.js +2 -0
- package/lib/esm/internal/app-binder/command/SignAuthorizationDelegationCommand.js.map +7 -0
- package/lib/esm/internal/app-binder/command/SignAuthorizationDelegationCommand.test.js +2 -0
- package/lib/esm/internal/app-binder/command/SignAuthorizationDelegationCommand.test.js.map +7 -0
- package/lib/esm/internal/app-binder/command/SignEIP712Command.js +1 -1
- package/lib/esm/internal/app-binder/command/SignEIP712Command.js.map +2 -2
- package/lib/esm/internal/app-binder/command/SignEIP712Command.test.js +1 -1
- package/lib/esm/internal/app-binder/command/SignEIP712Command.test.js.map +2 -2
- package/lib/esm/internal/app-binder/command/SignPersonalMessageCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/SignPersonalMessageCommand.js.map +2 -2
- package/lib/esm/internal/app-binder/command/SignPersonalMessageCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/SignPersonalMessageCommand.test.js.map +3 -3
- package/lib/esm/internal/app-binder/command/SignTransactionCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/SignTransactionCommand.js.map +2 -2
- package/lib/esm/internal/app-binder/command/SignTransactionCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/SignTransactionCommand.test.js.map +3 -3
- package/lib/esm/internal/app-binder/command/StartTransactionCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/StartTransactionCommand.js.map +2 -2
- package/lib/esm/internal/app-binder/command/StartTransactionCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/StartTransactionCommand.test.js.map +3 -3
- package/lib/esm/internal/app-binder/command/StoreTransactionCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/StoreTransactionCommand.js.map +2 -2
- package/lib/esm/internal/app-binder/command/StoreTransactionCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/StoreTransactionCommand.test.js.map +3 -3
- package/lib/esm/internal/app-binder/command/Web3CheckOptInCommand.js +1 -1
- package/lib/esm/internal/app-binder/command/Web3CheckOptInCommand.js.map +2 -2
- package/lib/esm/internal/app-binder/command/Web3CheckOptInCommand.test.js +1 -1
- package/lib/esm/internal/app-binder/command/Web3CheckOptInCommand.test.js.map +3 -3
- package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.js +1 -1
- package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.js.map +3 -3
- package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.js +1 -1
- package/lib/esm/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.test.js.map +3 -3
- package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.js +1 -1
- package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.js.map +3 -3
- package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.js +1 -1
- package/lib/esm/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.test.js.map +3 -3
- package/lib/esm/internal/app-binder/device-action/VerifySafeAddress/VerifySafeAddress.js +2 -0
- package/lib/esm/internal/app-binder/device-action/VerifySafeAddress/VerifySafeAddress.js.map +7 -0
- package/lib/esm/internal/app-binder/device-action/VerifySafeAddress/VerifySafeAddress.test.js +2 -0
- package/lib/esm/internal/app-binder/device-action/VerifySafeAddress/VerifySafeAddress.test.js.map +7 -0
- package/lib/esm/internal/app-binder/device-action/__test-utils__/makeInternalApi.js +1 -1
- package/lib/esm/internal/app-binder/device-action/__test-utils__/makeInternalApi.js.map +3 -3
- package/lib/esm/internal/app-binder/device-action/__test-utils__/testDeviceActionUntilStep.js +2 -0
- package/lib/esm/internal/app-binder/device-action/__test-utils__/testDeviceActionUntilStep.js.map +7 -0
- package/lib/esm/internal/app-binder/di/appBinderModule.js +1 -1
- package/lib/esm/internal/app-binder/di/appBinderModule.js.map +3 -3
- package/lib/esm/internal/app-binder/task/BuildBaseContexts.js +2 -0
- package/lib/esm/internal/app-binder/task/BuildBaseContexts.js.map +7 -0
- package/lib/esm/internal/app-binder/task/BuildBaseContexts.test.js +2 -0
- package/lib/esm/internal/app-binder/task/BuildBaseContexts.test.js.map +7 -0
- package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.js +1 -1
- package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.js.map +3 -3
- package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.test.js +1 -1
- package/lib/esm/internal/app-binder/task/BuildEIP712ContextTask.test.js.map +3 -3
- package/lib/esm/internal/app-binder/task/BuildFullContextsTask.js +2 -0
- package/lib/esm/internal/app-binder/task/BuildFullContextsTask.js.map +7 -0
- package/lib/esm/internal/app-binder/task/BuildFullContextsTask.test.js +2 -0
- package/lib/esm/internal/app-binder/task/BuildFullContextsTask.test.js.map +7 -0
- package/lib/esm/internal/app-binder/task/BuildSafeAddressContextTask.js +2 -0
- package/lib/esm/internal/app-binder/task/BuildSafeAddressContextTask.js.map +7 -0
- package/lib/esm/internal/app-binder/task/BuildSafeAddressContextTask.test.js +2 -0
- package/lib/esm/internal/app-binder/task/BuildSafeAddressContextTask.test.js.map +7 -0
- package/lib/esm/internal/app-binder/task/BuildSubcontextsTask.js +2 -0
- package/lib/esm/internal/app-binder/task/BuildSubcontextsTask.js.map +7 -0
- package/lib/esm/internal/app-binder/task/BuildSubcontextsTask.test.js +2 -0
- package/lib/esm/internal/app-binder/task/BuildSubcontextsTask.test.js.map +7 -0
- package/lib/esm/internal/app-binder/task/ParseNestedTransactionTask.js +2 -0
- package/lib/esm/internal/app-binder/task/ParseNestedTransactionTask.js.map +7 -0
- package/lib/esm/internal/app-binder/task/ParseNestedTransactionTask.test.js +2 -0
- package/lib/esm/internal/app-binder/task/ParseNestedTransactionTask.test.js.map +7 -0
- package/lib/esm/internal/app-binder/task/ParseTransactionTask.js +2 -0
- package/lib/esm/internal/app-binder/task/ParseTransactionTask.js.map +7 -0
- package/lib/esm/internal/app-binder/task/ParseTransactionTask.test.js +2 -0
- package/lib/esm/internal/app-binder/task/ParseTransactionTask.test.js.map +7 -0
- package/lib/esm/internal/app-binder/task/ProvideContextTask.js +2 -0
- package/lib/esm/internal/app-binder/task/ProvideContextTask.js.map +7 -0
- package/lib/esm/internal/app-binder/task/ProvideContextTask.test.js +2 -0
- package/lib/esm/internal/app-binder/task/ProvideContextTask.test.js.map +7 -0
- package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.js +1 -1
- package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.js.map +3 -3
- package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.test.js +1 -1
- package/lib/esm/internal/app-binder/task/ProvideEIP712ContextTask.test.js.map +3 -3
- package/lib/esm/internal/app-binder/task/ProvideTransactionContextsTask.js +2 -0
- package/lib/esm/internal/app-binder/task/ProvideTransactionContextsTask.js.map +7 -0
- package/lib/esm/internal/app-binder/task/ProvideTransactionContextsTask.test.js +2 -0
- package/lib/esm/internal/app-binder/task/ProvideTransactionContextsTask.test.js.map +7 -0
- package/lib/esm/internal/app-binder/task/SendPayloadInChunksTask.js +1 -1
- package/lib/esm/internal/app-binder/task/SendPayloadInChunksTask.js.map +3 -3
- package/lib/esm/internal/app-binder/task/SendPayloadInChunksTask.test.js +1 -1
- package/lib/esm/internal/app-binder/task/SendPayloadInChunksTask.test.js.map +3 -3
- package/lib/esm/internal/app-binder/task/SendSignAuthorizationDelegationTask.js +2 -0
- package/lib/esm/internal/app-binder/task/SendSignAuthorizationDelegationTask.js.map +7 -0
- package/lib/esm/internal/app-binder/task/SendSignAuthorizationDelegationTask.test.js +2 -0
- package/lib/esm/internal/app-binder/task/SendSignAuthorizationDelegationTask.test.js.map +7 -0
- package/lib/esm/internal/app-binder/task/SendSignTransactionTask.js +1 -1
- package/lib/esm/internal/app-binder/task/SendSignTransactionTask.js.map +3 -3
- package/lib/esm/internal/app-binder/task/SendSignTransactionTask.test.js +1 -1
- package/lib/esm/internal/app-binder/task/SendSignTransactionTask.test.js.map +3 -3
- package/lib/esm/internal/app-binder/task/SignTypedDataLegacyTask.js +2 -0
- package/lib/esm/internal/app-binder/task/SignTypedDataLegacyTask.js.map +7 -0
- package/lib/esm/internal/app-binder/task/SignTypedDataLegacyTask.test.js +2 -0
- package/lib/esm/internal/app-binder/task/SignTypedDataLegacyTask.test.js.map +7 -0
- package/lib/esm/internal/di.js +1 -1
- package/lib/esm/internal/di.js.map +3 -3
- package/lib/esm/internal/eip7702/di/eip7702Module.js +2 -0
- package/lib/esm/internal/eip7702/di/eip7702Module.js.map +7 -0
- package/lib/esm/internal/eip7702/di/eip7702Module.test.js +2 -0
- package/lib/esm/internal/eip7702/di/eip7702Module.test.js.map +7 -0
- package/lib/esm/internal/eip7702/di/eip7702Types.js +2 -0
- package/lib/esm/internal/eip7702/di/eip7702Types.js.map +7 -0
- package/lib/esm/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.js +2 -0
- package/lib/esm/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.js.map +7 -0
- package/lib/esm/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.test.js +2 -0
- package/lib/esm/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.test.js.map +7 -0
- package/lib/esm/internal/message/di/messageModule.js +1 -1
- package/lib/esm/internal/message/di/messageModule.js.map +3 -3
- package/lib/esm/internal/message/di/messageModule.test.js +1 -1
- package/lib/esm/internal/message/di/messageModule.test.js.map +2 -2
- package/lib/esm/internal/message/use-case/SignMessageUseCase.js +1 -1
- package/lib/esm/internal/message/use-case/SignMessageUseCase.js.map +3 -3
- package/lib/esm/internal/message/use-case/SignMessageUseCase.test.js +1 -1
- package/lib/esm/internal/message/use-case/SignMessageUseCase.test.js.map +2 -2
- package/lib/esm/internal/safe/di/safeModule.js +2 -0
- package/lib/esm/internal/safe/di/safeModule.js.map +7 -0
- package/lib/esm/internal/safe/di/safeModule.test.js +2 -0
- package/lib/esm/internal/safe/di/safeModule.test.js.map +7 -0
- package/lib/esm/internal/safe/di/safeTypes.js +2 -0
- package/lib/esm/internal/safe/di/safeTypes.js.map +7 -0
- package/lib/esm/internal/safe/use-case/VerifySafeAddressUseCase.js +2 -0
- package/lib/esm/internal/safe/use-case/VerifySafeAddressUseCase.js.map +7 -0
- package/lib/esm/internal/safe/use-case/VerifySafeAddressUseCase.test.js +2 -0
- package/lib/esm/internal/safe/use-case/VerifySafeAddressUseCase.test.js.map +7 -0
- package/lib/esm/internal/shared/utils/ApplicationChecker.js +1 -1
- package/lib/esm/internal/shared/utils/ApplicationChecker.js.map +3 -3
- package/lib/esm/internal/shared/utils/ApplicationChecker.test.js +1 -1
- package/lib/esm/internal/shared/utils/ApplicationChecker.test.js.map +2 -2
- package/lib/esm/internal/transaction/di/transactionModule.js +1 -1
- package/lib/esm/internal/transaction/di/transactionModule.js.map +3 -3
- package/lib/esm/internal/transaction/di/transactionModule.test.js +1 -1
- package/lib/esm/internal/transaction/di/transactionModule.test.js.map +2 -2
- package/lib/esm/internal/transaction/service/mapper/EthersTransactionMapperService.js +2 -0
- package/lib/esm/internal/transaction/service/mapper/EthersTransactionMapperService.js.map +7 -0
- package/lib/esm/internal/transaction/service/mapper/EthersTransactionMapperService.test.js +2 -0
- package/lib/esm/internal/transaction/service/mapper/EthersTransactionMapperService.test.js.map +7 -0
- package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.js +0 -1
- package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.js.map +4 -4
- package/lib/esm/internal/transaction/service/parser/TransactionParserService.js +1 -1
- package/lib/esm/internal/transaction/service/parser/TransactionParserService.js.map +3 -3
- package/lib/esm/internal/transaction/service/parser/TransactionParserService.test.js +1 -1
- package/lib/esm/internal/transaction/service/parser/TransactionParserService.test.js.map +3 -3
- package/lib/esm/internal/typed-data/di/typedDataModule.js +1 -1
- package/lib/esm/internal/typed-data/di/typedDataModule.js.map +3 -3
- package/lib/esm/internal/typed-data/di/typedDataModule.test.js +1 -1
- package/lib/esm/internal/typed-data/di/typedDataModule.test.js.map +2 -2
- package/lib/esm/internal/typed-data/service/DefaultTypedDataParserService.js +1 -1
- package/lib/esm/internal/typed-data/service/DefaultTypedDataParserService.js.map +2 -2
- package/lib/esm/internal/typed-data/service/TypedDataParser.js +1 -1
- package/lib/esm/internal/typed-data/service/TypedDataParser.js.map +3 -3
- package/lib/esm/internal/typed-data/service/TypedDataParser.test.js +1 -1
- package/lib/esm/internal/typed-data/service/TypedDataParser.test.js.map +2 -2
- package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.js +1 -1
- package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.js.map +3 -3
- package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.test.js +1 -1
- package/lib/esm/internal/typed-data/use-case/SignTypedDataUseCase.test.js.map +2 -2
- package/lib/esm/package.json +43 -40
- package/lib/types/api/SignerEth.d.ts +11 -4
- package/lib/types/api/SignerEth.d.ts.map +1 -1
- package/lib/types/api/SignerEthBuilder.d.ts +4 -2
- package/lib/types/api/SignerEthBuilder.d.ts.map +1 -1
- package/lib/types/api/app-binder/SignDelegationAuthorizationTypes.d.ts +19 -0
- package/lib/types/api/app-binder/SignDelegationAuthorizationTypes.d.ts.map +1 -0
- package/lib/types/api/app-binder/SignTransactionDeviceActionTypes.d.ts +18 -12
- package/lib/types/api/app-binder/SignTransactionDeviceActionTypes.d.ts.map +1 -1
- package/lib/types/api/app-binder/SignTypedDataDeviceActionTypes.d.ts +13 -1
- package/lib/types/api/app-binder/SignTypedDataDeviceActionTypes.d.ts.map +1 -1
- package/lib/types/api/app-binder/VerifySafeAddressDeviceActionTypes.d.ts +30 -0
- package/lib/types/api/app-binder/VerifySafeAddressDeviceActionTypes.d.ts.map +1 -0
- package/lib/types/api/index.d.ts +5 -4
- package/lib/types/api/index.d.ts.map +1 -1
- package/lib/types/api/model/AddressOptions.d.ts +1 -0
- package/lib/types/api/model/AddressOptions.d.ts.map +1 -1
- package/lib/types/api/model/ClearSigningType.d.ts +5 -0
- package/lib/types/api/model/ClearSigningType.d.ts.map +1 -0
- package/lib/types/api/model/MessageOptions.d.ts +4 -0
- package/lib/types/api/model/MessageOptions.d.ts.map +1 -0
- package/lib/types/api/model/SafeAddressOptions.d.ts +5 -0
- package/lib/types/api/model/SafeAddressOptions.d.ts.map +1 -0
- package/lib/types/api/model/TransactionOptions.d.ts +1 -0
- package/lib/types/api/model/TransactionOptions.d.ts.map +1 -1
- package/lib/types/api/model/TypedDataOptions.d.ts +4 -0
- package/lib/types/api/model/TypedDataOptions.d.ts.map +1 -0
- package/lib/types/internal/DefaultSignerEth.d.ts +10 -3
- package/lib/types/internal/DefaultSignerEth.d.ts.map +1 -1
- package/lib/types/internal/address/di/addressModule.d.ts.map +1 -1
- package/lib/types/internal/address/use-case/GetAddressUseCase.d.ts.map +1 -1
- package/lib/types/internal/app-binder/EthAppBinder.d.ts +19 -3
- package/lib/types/internal/app-binder/EthAppBinder.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/GetAddressCommand.d.ts +1 -0
- package/lib/types/internal/app-binder/command/GetAddressCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/GetAppConfigurationCommand.d.ts +1 -0
- package/lib/types/internal/app-binder/command/GetAppConfigurationCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/GetChallengeCommand.d.ts +1 -0
- package/lib/types/internal/app-binder/command/GetChallengeCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/ProvideEnumCommand.d.ts +1 -0
- package/lib/types/internal/app-binder/command/ProvideEnumCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/ProvideNFTInformationCommand.d.ts +1 -0
- package/lib/types/internal/app-binder/command/ProvideNFTInformationCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/ProvideNetworkConfigurationCommand.d.ts +29 -0
- package/lib/types/internal/app-binder/command/ProvideNetworkConfigurationCommand.d.ts.map +1 -0
- package/lib/types/internal/app-binder/command/ProvideNetworkConfigurationCommand.test.d.ts +2 -0
- package/lib/types/internal/app-binder/command/ProvideNetworkConfigurationCommand.test.d.ts.map +1 -0
- package/lib/types/internal/app-binder/command/ProvideProxyInfoCommand.d.ts +21 -0
- package/lib/types/internal/app-binder/command/ProvideProxyInfoCommand.d.ts.map +1 -0
- package/lib/types/internal/app-binder/command/ProvideProxyInfoCommand.test.d.ts +2 -0
- package/lib/types/internal/app-binder/command/ProvideProxyInfoCommand.test.d.ts.map +1 -0
- package/lib/types/internal/app-binder/command/ProvideSafeAccountCommand.d.ts +35 -0
- package/lib/types/internal/app-binder/command/ProvideSafeAccountCommand.d.ts.map +1 -0
- package/lib/types/internal/app-binder/command/ProvideSafeAccountCommand.test.d.ts +2 -0
- package/lib/types/internal/app-binder/command/ProvideSafeAccountCommand.test.d.ts.map +1 -0
- package/lib/types/internal/app-binder/command/ProvideTokenInformationCommand.d.ts +1 -0
- package/lib/types/internal/app-binder/command/ProvideTokenInformationCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.d.ts +1 -0
- package/lib/types/internal/app-binder/command/ProvideTransactionFieldDescriptionCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/ProvideTransactionInformationCommand.d.ts +1 -0
- package/lib/types/internal/app-binder/command/ProvideTransactionInformationCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/ProvideTrustedNameCommand.d.ts +1 -0
- package/lib/types/internal/app-binder/command/ProvideTrustedNameCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/ProvideWeb3CheckCommand.d.ts +1 -0
- package/lib/types/internal/app-binder/command/ProvideWeb3CheckCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/SendEIP712FilteringCommand.d.ts +30 -1
- package/lib/types/internal/app-binder/command/SendEIP712FilteringCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/SendEIP712StructDefinitionCommand.d.ts +1 -0
- package/lib/types/internal/app-binder/command/SendEIP712StructDefinitionCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/SendEIP712StructImplemCommand.d.ts +1 -0
- package/lib/types/internal/app-binder/command/SendEIP712StructImplemCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/SetExternalPluginCommand.d.ts +1 -0
- package/lib/types/internal/app-binder/command/SetExternalPluginCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/SetPluginCommand.d.ts +1 -0
- package/lib/types/internal/app-binder/command/SetPluginCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/SignAuthorizationDelegationCommand.d.ts +30 -0
- package/lib/types/internal/app-binder/command/SignAuthorizationDelegationCommand.d.ts.map +1 -0
- package/lib/types/internal/app-binder/command/SignAuthorizationDelegationCommand.test.d.ts +2 -0
- package/lib/types/internal/app-binder/command/SignAuthorizationDelegationCommand.test.d.ts.map +1 -0
- package/lib/types/internal/app-binder/command/SignEIP712Command.d.ts +1 -0
- package/lib/types/internal/app-binder/command/SignEIP712Command.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/SignPersonalMessageCommand.d.ts +1 -0
- package/lib/types/internal/app-binder/command/SignPersonalMessageCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/SignTransactionCommand.d.ts +1 -0
- package/lib/types/internal/app-binder/command/SignTransactionCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/StartTransactionCommand.d.ts +1 -0
- package/lib/types/internal/app-binder/command/StartTransactionCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/StoreTransactionCommand.d.ts +1 -0
- package/lib/types/internal/app-binder/command/StoreTransactionCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/Web3CheckOptInCommand.d.ts +1 -0
- package/lib/types/internal/app-binder/command/Web3CheckOptInCommand.d.ts.map +1 -1
- package/lib/types/internal/app-binder/command/utils/ethAppErrors.d.ts.map +1 -1
- package/lib/types/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts +19 -36
- package/lib/types/internal/app-binder/device-action/SignTransaction/SignTransactionDeviceAction.d.ts.map +1 -1
- package/lib/types/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.d.ts +10 -2
- package/lib/types/internal/app-binder/device-action/SignTypedData/SignTypedDataDeviceAction.d.ts.map +1 -1
- package/lib/types/internal/app-binder/device-action/VerifySafeAddress/VerifySafeAddress.d.ts +20 -0
- package/lib/types/internal/app-binder/device-action/VerifySafeAddress/VerifySafeAddress.d.ts.map +1 -0
- package/lib/types/internal/app-binder/device-action/VerifySafeAddress/VerifySafeAddress.test.d.ts +2 -0
- package/lib/types/internal/app-binder/device-action/VerifySafeAddress/VerifySafeAddress.test.d.ts.map +1 -0
- package/lib/types/internal/app-binder/device-action/__test-utils__/makeInternalApi.d.ts.map +1 -1
- package/lib/types/internal/app-binder/device-action/__test-utils__/setupOpenAppDAMock.d.ts.map +1 -1
- package/lib/types/internal/app-binder/device-action/__test-utils__/testDeviceActionUntilStep.d.ts +6 -0
- package/lib/types/internal/app-binder/device-action/__test-utils__/testDeviceActionUntilStep.d.ts.map +1 -0
- package/lib/types/internal/app-binder/di/appBinderModule.d.ts.map +1 -1
- package/lib/types/internal/app-binder/task/BuildBaseContexts.d.ts +47 -0
- package/lib/types/internal/app-binder/task/BuildBaseContexts.d.ts.map +1 -0
- package/lib/types/internal/app-binder/task/BuildBaseContexts.test.d.ts +2 -0
- package/lib/types/internal/app-binder/task/BuildBaseContexts.test.d.ts.map +1 -0
- package/lib/types/internal/app-binder/task/BuildEIP712ContextTask.d.ts +10 -3
- package/lib/types/internal/app-binder/task/BuildEIP712ContextTask.d.ts.map +1 -1
- package/lib/types/internal/app-binder/task/BuildFullContextsTask.d.ts +39 -0
- package/lib/types/internal/app-binder/task/BuildFullContextsTask.d.ts.map +1 -0
- package/lib/types/internal/app-binder/task/BuildFullContextsTask.test.d.ts +2 -0
- package/lib/types/internal/app-binder/task/BuildFullContextsTask.test.d.ts.map +1 -0
- package/lib/types/internal/app-binder/task/BuildSafeAddressContextTask.d.ts +19 -0
- package/lib/types/internal/app-binder/task/BuildSafeAddressContextTask.d.ts.map +1 -0
- package/lib/types/internal/app-binder/task/BuildSafeAddressContextTask.test.d.ts +2 -0
- package/lib/types/internal/app-binder/task/BuildSafeAddressContextTask.test.d.ts.map +1 -0
- package/lib/types/internal/app-binder/task/BuildSubcontextsTask.d.ts +28 -0
- package/lib/types/internal/app-binder/task/BuildSubcontextsTask.d.ts.map +1 -0
- package/lib/types/internal/app-binder/task/BuildSubcontextsTask.test.d.ts +2 -0
- package/lib/types/internal/app-binder/task/BuildSubcontextsTask.test.d.ts.map +1 -0
- package/lib/types/internal/app-binder/task/ParseNestedTransactionTask.d.ts +21 -0
- package/lib/types/internal/app-binder/task/ParseNestedTransactionTask.d.ts.map +1 -0
- package/lib/types/internal/app-binder/task/ParseNestedTransactionTask.test.d.ts +2 -0
- package/lib/types/internal/app-binder/task/ParseNestedTransactionTask.test.d.ts.map +1 -0
- package/lib/types/internal/app-binder/task/ParseTransactionTask.d.ts +17 -0
- package/lib/types/internal/app-binder/task/ParseTransactionTask.d.ts.map +1 -0
- package/lib/types/internal/app-binder/task/ParseTransactionTask.test.d.ts +2 -0
- package/lib/types/internal/app-binder/task/ParseTransactionTask.test.d.ts.map +1 -0
- package/lib/types/internal/app-binder/task/ProvideContextTask.d.ts +22 -0
- package/lib/types/internal/app-binder/task/ProvideContextTask.d.ts.map +1 -0
- package/lib/types/internal/app-binder/task/ProvideContextTask.test.d.ts +2 -0
- package/lib/types/internal/app-binder/task/ProvideContextTask.test.d.ts.map +1 -0
- package/lib/types/internal/app-binder/task/ProvideEIP712ContextTask.d.ts +16 -7
- package/lib/types/internal/app-binder/task/ProvideEIP712ContextTask.d.ts.map +1 -1
- package/lib/types/internal/app-binder/task/ProvideTransactionContextsTask.d.ts +36 -0
- package/lib/types/internal/app-binder/task/ProvideTransactionContextsTask.d.ts.map +1 -0
- package/lib/types/internal/app-binder/task/ProvideTransactionContextsTask.test.d.ts +2 -0
- package/lib/types/internal/app-binder/task/ProvideTransactionContextsTask.test.d.ts.map +1 -0
- package/lib/types/internal/app-binder/task/SendPayloadInChunksTask.d.ts +2 -2
- package/lib/types/internal/app-binder/task/SendPayloadInChunksTask.d.ts.map +1 -1
- package/lib/types/internal/app-binder/task/SendSignAuthorizationDelegationTask.d.ts +18 -0
- package/lib/types/internal/app-binder/task/SendSignAuthorizationDelegationTask.d.ts.map +1 -0
- package/lib/types/internal/app-binder/task/SendSignAuthorizationDelegationTask.test.d.ts +2 -0
- package/lib/types/internal/app-binder/task/SendSignAuthorizationDelegationTask.test.d.ts.map +1 -0
- package/lib/types/internal/app-binder/task/SendSignTransactionTask.d.ts +2 -1
- package/lib/types/internal/app-binder/task/SendSignTransactionTask.d.ts.map +1 -1
- package/lib/types/internal/app-binder/task/SignTypedDataLegacyTask.d.ts +12 -0
- package/lib/types/internal/app-binder/task/SignTypedDataLegacyTask.d.ts.map +1 -0
- package/lib/types/internal/app-binder/task/SignTypedDataLegacyTask.test.d.ts +2 -0
- package/lib/types/internal/app-binder/task/SignTypedDataLegacyTask.test.d.ts.map +1 -0
- package/lib/types/internal/di.d.ts.map +1 -1
- package/lib/types/internal/eip7702/di/eip7702Module.d.ts +3 -0
- package/lib/types/internal/eip7702/di/eip7702Module.d.ts.map +1 -0
- package/lib/types/internal/eip7702/di/eip7702Module.test.d.ts +2 -0
- package/lib/types/internal/eip7702/di/eip7702Module.test.d.ts.map +1 -0
- package/lib/types/internal/eip7702/di/eip7702Types.d.ts +4 -0
- package/lib/types/internal/eip7702/di/eip7702Types.d.ts.map +1 -0
- package/lib/types/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.d.ts +8 -0
- package/lib/types/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.d.ts.map +1 -0
- package/lib/types/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.test.d.ts +2 -0
- package/lib/types/internal/eip7702/use-case/SignDelegationAuthorizationUseCase.test.d.ts.map +1 -0
- package/lib/types/internal/message/di/messageModule.d.ts.map +1 -1
- package/lib/types/internal/message/use-case/SignMessageUseCase.d.ts +2 -1
- package/lib/types/internal/message/use-case/SignMessageUseCase.d.ts.map +1 -1
- package/lib/types/internal/safe/di/safeModule.d.ts +3 -0
- package/lib/types/internal/safe/di/safeModule.d.ts.map +1 -0
- package/lib/types/internal/safe/di/safeModule.test.d.ts +2 -0
- package/lib/types/internal/safe/di/safeModule.test.d.ts.map +1 -0
- package/lib/types/internal/safe/di/safeTypes.d.ts +4 -0
- package/lib/types/internal/safe/di/safeTypes.d.ts.map +1 -0
- package/lib/types/internal/safe/use-case/VerifySafeAddressUseCase.d.ts +9 -0
- package/lib/types/internal/safe/use-case/VerifySafeAddressUseCase.d.ts.map +1 -0
- package/lib/types/internal/safe/use-case/VerifySafeAddressUseCase.test.d.ts +2 -0
- package/lib/types/internal/safe/use-case/VerifySafeAddressUseCase.test.d.ts.map +1 -0
- package/lib/types/internal/shared/utils/ApplicationChecker.d.ts.map +1 -1
- package/lib/types/internal/transaction/di/transactionModule.d.ts.map +1 -1
- package/lib/types/internal/transaction/service/mapper/EthersTransactionMapperService.d.ts +8 -0
- package/lib/types/internal/transaction/service/mapper/EthersTransactionMapperService.d.ts.map +1 -0
- package/lib/types/internal/transaction/service/mapper/EthersTransactionMapperService.test.d.ts +2 -0
- package/lib/types/internal/transaction/service/mapper/EthersTransactionMapperService.test.d.ts.map +1 -0
- package/lib/types/internal/transaction/service/mapper/TransactionMapperService.d.ts +4 -7
- package/lib/types/internal/transaction/service/mapper/TransactionMapperService.d.ts.map +1 -1
- package/lib/types/internal/transaction/service/parser/TransactionParserService.d.ts +2 -2
- package/lib/types/internal/transaction/service/parser/TransactionParserService.d.ts.map +1 -1
- package/lib/types/internal/typed-data/di/typedDataModule.d.ts.map +1 -1
- package/lib/types/internal/typed-data/service/TypedDataParser.d.ts +4 -2
- package/lib/types/internal/typed-data/service/TypedDataParser.d.ts.map +1 -1
- package/lib/types/internal/typed-data/use-case/SignTypedDataUseCase.d.ts +2 -1
- package/lib/types/internal/typed-data/use-case/SignTypedDataUseCase.d.ts.map +1 -1
- package/lib/types/tsconfig.prod.tsbuildinfo +1 -1
- package/package.json +41 -38
- package/lib/cjs/internal/app-binder/constant/plugins.js +0 -2
- package/lib/cjs/internal/app-binder/constant/plugins.js.map +0 -7
- package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.js +0 -2
- package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.js.map +0 -7
- package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.test.js +0 -2
- package/lib/cjs/internal/app-binder/task/BuildTransactionContextTask.test.js.map +0 -7
- package/lib/cjs/internal/app-binder/task/GetWeb3CheckTask.js +0 -2
- package/lib/cjs/internal/app-binder/task/GetWeb3CheckTask.js.map +0 -7
- package/lib/cjs/internal/app-binder/task/GetWeb3CheckTask.test.js +0 -2
- package/lib/cjs/internal/app-binder/task/GetWeb3CheckTask.test.js.map +0 -7
- package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.js +0 -2
- package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.js.map +0 -7
- package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.test.js +0 -2
- package/lib/cjs/internal/app-binder/task/ProvideTransactionContextTask.test.js.map +0 -7
- package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.js +0 -2
- package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.js.map +0 -7
- package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.js +0 -2
- package/lib/cjs/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.js.map +0 -7
- package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.js +0 -2
- package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.js.map +0 -7
- package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.test.js +0 -2
- package/lib/cjs/internal/app-binder/task/ProvideTransactionGenericContextTask.test.js.map +0 -7
- package/lib/cjs/internal/transaction/service/mapper/EthersRawTransactionMapper.js +0 -2
- package/lib/cjs/internal/transaction/service/mapper/EthersRawTransactionMapper.js.map +0 -7
- package/lib/cjs/internal/transaction/service/mapper/EthersRawTransactionMapper.test.js +0 -2
- package/lib/cjs/internal/transaction/service/mapper/EthersRawTransactionMapper.test.js.map +0 -7
- package/lib/cjs/internal/transaction/service/mapper/TransactionMapper.js +0 -2
- package/lib/cjs/internal/transaction/service/mapper/TransactionMapper.js.map +0 -7
- package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.test.js +0 -2
- package/lib/cjs/internal/transaction/service/mapper/TransactionMapperService.test.js.map +0 -7
- package/lib/esm/internal/app-binder/constant/plugins.js +0 -2
- package/lib/esm/internal/app-binder/constant/plugins.js.map +0 -7
- package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.js +0 -2
- package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.js.map +0 -7
- package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.test.js +0 -2
- package/lib/esm/internal/app-binder/task/BuildTransactionContextTask.test.js.map +0 -7
- package/lib/esm/internal/app-binder/task/GetWeb3CheckTask.js +0 -2
- package/lib/esm/internal/app-binder/task/GetWeb3CheckTask.js.map +0 -7
- package/lib/esm/internal/app-binder/task/GetWeb3CheckTask.test.js +0 -2
- package/lib/esm/internal/app-binder/task/GetWeb3CheckTask.test.js.map +0 -7
- package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.js +0 -2
- package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.js.map +0 -7
- package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.test.js +0 -2
- package/lib/esm/internal/app-binder/task/ProvideTransactionContextTask.test.js.map +0 -7
- package/lib/esm/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.js +0 -2
- package/lib/esm/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.js.map +0 -7
- package/lib/esm/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.js +0 -2
- package/lib/esm/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.js.map +0 -7
- package/lib/esm/internal/app-binder/task/ProvideTransactionGenericContextTask.js +0 -2
- package/lib/esm/internal/app-binder/task/ProvideTransactionGenericContextTask.js.map +0 -7
- package/lib/esm/internal/app-binder/task/ProvideTransactionGenericContextTask.test.js +0 -2
- package/lib/esm/internal/app-binder/task/ProvideTransactionGenericContextTask.test.js.map +0 -7
- package/lib/esm/internal/transaction/service/mapper/EthersRawTransactionMapper.js +0 -2
- package/lib/esm/internal/transaction/service/mapper/EthersRawTransactionMapper.js.map +0 -7
- package/lib/esm/internal/transaction/service/mapper/EthersRawTransactionMapper.test.js +0 -2
- package/lib/esm/internal/transaction/service/mapper/EthersRawTransactionMapper.test.js.map +0 -7
- package/lib/esm/internal/transaction/service/mapper/TransactionMapper.js +0 -1
- package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.test.js +0 -2
- package/lib/esm/internal/transaction/service/mapper/TransactionMapperService.test.js.map +0 -7
- package/lib/types/internal/app-binder/constant/plugins.d.ts +0 -2
- package/lib/types/internal/app-binder/constant/plugins.d.ts.map +0 -1
- package/lib/types/internal/app-binder/task/BuildTransactionContextTask.d.ts +0 -32
- package/lib/types/internal/app-binder/task/BuildTransactionContextTask.d.ts.map +0 -1
- package/lib/types/internal/app-binder/task/BuildTransactionContextTask.test.d.ts +0 -2
- package/lib/types/internal/app-binder/task/BuildTransactionContextTask.test.d.ts.map +0 -1
- package/lib/types/internal/app-binder/task/GetWeb3CheckTask.d.ts +0 -30
- package/lib/types/internal/app-binder/task/GetWeb3CheckTask.d.ts.map +0 -1
- package/lib/types/internal/app-binder/task/GetWeb3CheckTask.test.d.ts +0 -2
- package/lib/types/internal/app-binder/task/GetWeb3CheckTask.test.d.ts.map +0 -1
- package/lib/types/internal/app-binder/task/ProvideTransactionContextTask.d.ts +0 -38
- package/lib/types/internal/app-binder/task/ProvideTransactionContextTask.d.ts.map +0 -1
- package/lib/types/internal/app-binder/task/ProvideTransactionContextTask.test.d.ts +0 -2
- package/lib/types/internal/app-binder/task/ProvideTransactionContextTask.test.d.ts.map +0 -1
- package/lib/types/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.d.ts +0 -80
- package/lib/types/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.d.ts.map +0 -1
- package/lib/types/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.d.ts +0 -2
- package/lib/types/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.d.ts.map +0 -1
- package/lib/types/internal/app-binder/task/ProvideTransactionGenericContextTask.d.ts +0 -28
- package/lib/types/internal/app-binder/task/ProvideTransactionGenericContextTask.d.ts.map +0 -1
- package/lib/types/internal/app-binder/task/ProvideTransactionGenericContextTask.test.d.ts +0 -2
- package/lib/types/internal/app-binder/task/ProvideTransactionGenericContextTask.test.d.ts.map +0 -1
- package/lib/types/internal/transaction/service/mapper/EthersRawTransactionMapper.d.ts +0 -7
- package/lib/types/internal/transaction/service/mapper/EthersRawTransactionMapper.d.ts.map +0 -1
- package/lib/types/internal/transaction/service/mapper/EthersRawTransactionMapper.test.d.ts +0 -2
- package/lib/types/internal/transaction/service/mapper/EthersRawTransactionMapper.test.d.ts.map +0 -1
- package/lib/types/internal/transaction/service/mapper/TransactionMapper.d.ts +0 -6
- package/lib/types/internal/transaction/service/mapper/TransactionMapper.d.ts.map +0 -1
- package/lib/types/internal/transaction/service/mapper/TransactionMapperService.test.d.ts +0 -2
- package/lib/types/internal/transaction/service/mapper/TransactionMapperService.test.d.ts.map +0 -1
- /package/lib/esm/{internal/transaction/service/mapper/TransactionMapper.js.map → api/app-binder/SignDelegationAuthorizationTypes.js.map} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var o=require("@ledgerhq/device-management-kit"),n=require("purify-ts"),r=require("../../typed-data/model/Types"),
|
|
1
|
+
"use strict";var o=require("@ledgerhq/device-management-kit"),n=require("purify-ts"),r=require("../../typed-data/model/Types"),t=require("./SendEIP712StructDefinitionCommand");const d=Uint8Array.from([224,26,0,0,12,69,73,80,55,49,50,68,111,109,97,105,110]),s=Uint8Array.from([224,26,0,0,5,71,114,111,117,112]),i=Uint8Array.from([224,26,0,255,6,5,4,110,97,109,101]),u=Uint8Array.from([224,26,0,255,9,5,7,118,101,114,115,105,111,110]),p=Uint8Array.from([224,26,0,255,10,66,32,7,99,104,97,105,110,73,100]),c=Uint8Array.from([224,26,0,255,19,3,17,118,101,114,105,102,121,105,110,103,67,111,110,116,114,97,99,116]),m=Uint8Array.from([224,26,0,255,18,128,6,80,101,114,115,111,110,1,0,7,109,101,109,98,101,114,115]),f=Uint8Array.from([224,26,0,255,13,0,6,80,101,114,115,111,110,4,102,114,111,109]),E=Uint8Array.from([224,26,0,255,11,131,1,0,7,119,97,108,108,101,116,115]),A=Uint8Array.from([224,26,0,255,17,7,15,115,116,97,116,105,99,69,120,116,114,97,100,97,116,97]),y=Uint8Array.from([224,26,0,255,20,7,18,114,101,112,108,97,99,101,109,101,110,116,80,97,116,116,101,114,110]),l=Uint8Array.from([224,26,0,255,11,70,4,8,100,97,116,97,84,121,112,101]),_=Uint8Array.from([224,26,0,255,14,133,2,1,3,0,8,100,111,99,117,109,101,110,116]),w=Uint8Array.from([224,26,0,255,14,194,1,4,0,0,0,0,6,100,101,112,116,104,121]);describe("SendEIP712StructDefinitionCommand",()=>{let x;describe("name",()=>{it("should be 'sendEIP712StructDefinition'",()=>{const e=new t.SendEIP712StructDefinitionCommand({command:t.StructDefinitionCommand.Name,name:"test"});expect(e.name).toBe("sendEIP712StructDefinition")})}),describe("getApdu",()=>{it("should return the apdu for 'EIP712Domain' name definition",()=>{x=new t.SendEIP712StructDefinitionCommand({command:t.StructDefinitionCommand.Name,name:"EIP712Domain"});const e=x.getApdu();expect(e.getRawApdu()).toStrictEqual(d)}),it("should return the apdu for 'Group' name definition",()=>{x=new t.SendEIP712StructDefinitionCommand({command:t.StructDefinitionCommand.Name,name:"Group"});const e=x.getApdu();expect(e.getRawApdu()).toStrictEqual(s)}),it("should return the apdu for 'name' of type 'string'",()=>{x=new t.SendEIP712StructDefinitionCommand({command:t.StructDefinitionCommand.Field,name:"name",type:new r.PrimitiveType("string","string",n.Nothing)});const e=x.getApdu();expect(e.getRawApdu()).toStrictEqual(i)}),it("should return the apdu for 'version' of type 'string'",()=>{x=new t.SendEIP712StructDefinitionCommand({command:t.StructDefinitionCommand.Field,name:"version",type:new r.PrimitiveType("string","string",n.Nothing)});const e=x.getApdu();expect(e.getRawApdu()).toStrictEqual(u)}),it("should return the apdu for 'chainId' of type 'uint256'",()=>{x=new t.SendEIP712StructDefinitionCommand({command:t.StructDefinitionCommand.Field,name:"chainId",type:new r.PrimitiveType("uint256","uint",(0,n.Just)(32))});const e=x.getApdu();expect(e.getRawApdu()).toStrictEqual(p)}),it("should return the apdu for 'verifyingContract' of type 'address'",()=>{x=new t.SendEIP712StructDefinitionCommand({command:t.StructDefinitionCommand.Field,name:"verifyingContract",type:new r.PrimitiveType("address","address",n.Nothing)});const e=x.getApdu();expect(e.getRawApdu()).toStrictEqual(c)}),it("should return the apdu for 'members' of type 'Person[]'",()=>{x=new t.SendEIP712StructDefinitionCommand({command:t.StructDefinitionCommand.Field,name:"members",type:new r.ArrayType("Person[]",new r.StructType("Person"),"Person",n.Nothing,[n.Nothing])});const e=x.getApdu();expect(e.getRawApdu()).toStrictEqual(m)}),it("should return the apdu for 'from' of type 'Person'",()=>{x=new t.SendEIP712StructDefinitionCommand({command:t.StructDefinitionCommand.Field,name:"from",type:new r.StructType("Person")});const e=x.getApdu();expect(e.getRawApdu()).toStrictEqual(f)}),it("should return the apdu for 'wallets' of type 'address[]'",()=>{x=new t.SendEIP712StructDefinitionCommand({command:t.StructDefinitionCommand.Field,name:"wallets",type:new r.ArrayType("address[]",new r.PrimitiveType("address","address",n.Nothing),"address",n.Nothing,[n.Nothing])});const e=x.getApdu();expect(e.getRawApdu()).toStrictEqual(E)}),it("should return the apdu for 'staticExtradata' of type 'bytes'",()=>{x=new t.SendEIP712StructDefinitionCommand({command:t.StructDefinitionCommand.Field,name:"staticExtradata",type:new r.PrimitiveType("bytes","bytes",n.Nothing)});const e=x.getApdu();expect(e.getRawApdu()).toStrictEqual(A)}),it("should return the apdu for 'replacementPattern' of type 'bytes'",()=>{x=new t.SendEIP712StructDefinitionCommand({command:t.StructDefinitionCommand.Field,name:"replacementPattern",type:new r.PrimitiveType("bytes","bytes",n.Nothing)});const e=x.getApdu();expect(e.getRawApdu()).toStrictEqual(y)}),it("should return the apdu for 'dataType' of type 'bytes4'",()=>{x=new t.SendEIP712StructDefinitionCommand({command:t.StructDefinitionCommand.Field,name:"dataType",type:new r.PrimitiveType("bytes4","bytes",(0,n.Just)(4))});const e=x.getApdu();expect(e.getRawApdu()).toStrictEqual(l)}),it("should return the apdu for 'document' of type 'string[3][]'",()=>{x=new t.SendEIP712StructDefinitionCommand({command:t.StructDefinitionCommand.Field,name:"document",type:new r.ArrayType("string[3][]",new r.PrimitiveType("string","string",n.Nothing),"string[3]",n.Nothing,[(0,n.Just)(3),n.Nothing])});const e=x.getApdu();expect(e.getRawApdu()).toStrictEqual(_)}),it("should return the apdu for 'depthy' of type 'uint8[][][][]'",()=>{x=new t.SendEIP712StructDefinitionCommand({command:t.StructDefinitionCommand.Field,name:"depthy",type:new r.ArrayType("uint8[][][][]",new r.PrimitiveType("uint8","uint",(0,n.Just)(1)),"uint8[][][]",n.Nothing,[n.Nothing,n.Nothing,n.Nothing,n.Nothing])});const e=x.getApdu();expect(e.getRawApdu()).toStrictEqual(w)})}),describe("parseResponse",()=>{it("should parse the response",()=>{const e={statusCode:Uint8Array.from([144,0]),data:new Uint8Array},a=x.parseResponse(e);expect(a).toStrictEqual((0,o.CommandResultFactory)({data:void 0}))}),it("should throw an error if the response is not successful",()=>{const e={statusCode:Uint8Array.from([85,21]),data:new Uint8Array},a=x.parseResponse(e);expect((0,o.isSuccessCommandResult)(a)).toBe(!1)})})});
|
|
2
2
|
//# sourceMappingURL=SendEIP712StructDefinitionCommand.test.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../src/internal/app-binder/command/SendEIP712StructDefinitionCommand.test.ts"],
|
|
4
|
-
"sourcesContent": ["import {\n type Command,\n CommandResultFactory,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\nimport { Just, Nothing } from \"purify-ts\";\n\nimport {\n ArrayType,\n PrimitiveType,\n StructType,\n} from \"@internal/typed-data/model/Types\";\n\nimport { type EthErrorCodes } from \"./utils/ethAppErrors\";\nimport {\n SendEIP712StructDefinitionCommand,\n type SendEIP712StructDefinitionCommandArgs,\n StructDefinitionCommand,\n} from \"./SendEIP712StructDefinitionCommand\";\n\nconst EIP712_DEF_NAME_EIP712DOMAIN = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0x00, 0x0c, 0x45, 0x49, 0x50, 0x37, 0x31, 0x32, 0x44, 0x6f,\n 0x6d, 0x61, 0x69, 0x6e,\n]);\n\nconst EIP712_DEF_NAME_GROUP = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0x00, 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70,\n]);\n\n// name string\nconst EIP712_DEF_FIELD_NAME_STRING = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x06, 0x05, 0x04, 0x6e, 0x61, 0x6d, 0x65,\n]);\n\n// version string\nconst EIP712_DEF_FIELD_VERSION_STRING = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x09, 0x05, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,\n 0x6e,\n]);\n\n// chainId uint256\nconst EIP712_DEF_FIELD_CHAINID_UINT256 = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0a, 0x42, 0x20, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e,\n 0x49, 0x64,\n]);\n\n// verifyingContract address\nconst EIP712_DEF_FIELD_VERIFYINGCONTRACT_ADDRESS = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x13, 0x03, 0x11, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79,\n 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74,\n]);\n\n// members Person[]\nconst EIP712_DEF_FIELD_MEMBERS_PERSON = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x12, 0x80, 0x06, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e,\n 0x01, 0x00, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73,\n]);\n\n// from Person\nconst EIP712_DEF_FIELD_FROM_PERSON = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0d, 0x00, 0x06, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e,\n 0x04, 0x66, 0x72, 0x6f, 0x6d,\n]);\n\n// wallets address[]\nconst EIP712_DEF_FIELD_WALLETS_ADDRESS = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0b, 0x83, 0x01, 0x00, 0x07, 0x77, 0x61, 0x6c, 0x6c,\n 0x65, 0x74, 0x73,\n]);\n\n// staticExtradata bytes\nconst EIP712_DEF_FIELD_STATICEXTRADATA_BYTES = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x11, 0x07, 0x0f, 0x73, 0x74, 0x61, 0x74, 0x69, 0x63,\n 0x45, 0x78, 0x74, 0x72, 0x61, 0x64, 0x61, 0x74, 0x61,\n]);\n\n// replacementPattern bytes\nconst EIP712_DEF_FIELD_REPLACEMENTPATTERN_BYTES = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x14, 0x07, 0x12, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63,\n 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e,\n]);\n\n// dataType bytes4\nconst EIP712_DEF_FIELD_DATA_TYPE_BYTES4 = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0b, 0x46, 0x04, 0x08, 0x64, 0x61, 0x74, 0x61, 0x54,\n 0x79, 0x70, 0x65,\n]);\n\n// document string[3][]\nconst EIP712_DEF_FIELD_DOCUMENT_STRING = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0e, 0x85, 0x02, 0x01, 0x03, 0x00, 0x08, 0x64, 0x6f,\n 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,\n]);\n\n// depthy uint8[][][][]\nconst EIP712_DEF_FIELD_DEPTHY_UINT8 = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0e, 0xc2, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x06,\n 0x64, 0x65, 0x70, 0x74, 0x68, 0x79,\n]);\n\n// TODO: find examples for bool and int types.\n\ndescribe(\"SendEIP712StructDefinitionCommand\", () => {\n let command: Command<\n void,\n SendEIP712StructDefinitionCommandArgs,\n EthErrorCodes\n >;\n\n describe(\"getApdu\", () => {\n it(\"should return the apdu for 'EIP712Domain' name definition\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Name,\n name: \"EIP712Domain\",\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_NAME_EIP712DOMAIN);\n });\n\n it(\"should return the apdu for 'Group' name definition\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Name,\n name: \"Group\",\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_NAME_GROUP);\n });\n\n it(\"should return the apdu for 'name' of type 'string'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"name\",\n type: new PrimitiveType(\"string\", \"string\", Nothing),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_NAME_STRING);\n });\n\n it(\"should return the apdu for 'version' of type 'string'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"version\",\n type: new PrimitiveType(\"string\", \"string\", Nothing),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_VERSION_STRING);\n });\n\n it(\"should return the apdu for 'chainId' of type 'uint256'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"chainId\",\n type: new PrimitiveType(\"uint256\", \"uint\", Just(32)),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_CHAINID_UINT256);\n });\n\n it(\"should return the apdu for 'verifyingContract' of type 'address'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"verifyingContract\",\n type: new PrimitiveType(\"address\", \"address\", Nothing),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n EIP712_DEF_FIELD_VERIFYINGCONTRACT_ADDRESS,\n );\n });\n\n it(\"should return the apdu for 'members' of type 'Person[]'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"members\",\n type: new ArrayType(\n \"Person[]\",\n new StructType(\"Person\"),\n \"Person\",\n Nothing,\n [Nothing],\n ),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_MEMBERS_PERSON);\n });\n\n it(\"should return the apdu for 'from' of type 'Person'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"from\",\n type: new StructType(\"Person\"),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_FROM_PERSON);\n });\n\n it(\"should return the apdu for 'wallets' of type 'address[]'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"wallets\",\n type: new ArrayType(\n \"address[]\",\n new PrimitiveType(\"address\", \"address\", Nothing),\n \"address\",\n Nothing,\n [Nothing],\n ),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_WALLETS_ADDRESS);\n });\n\n it(\"should return the apdu for 'staticExtradata' of type 'bytes'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"staticExtradata\",\n type: new PrimitiveType(\"bytes\", \"bytes\", Nothing),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n EIP712_DEF_FIELD_STATICEXTRADATA_BYTES,\n );\n });\n\n it(\"should return the apdu for 'replacementPattern' of type 'bytes'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"replacementPattern\",\n type: new PrimitiveType(\"bytes\", \"bytes\", Nothing),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n EIP712_DEF_FIELD_REPLACEMENTPATTERN_BYTES,\n );\n });\n\n it(\"should return the apdu for 'dataType' of type 'bytes4'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"dataType\",\n type: new PrimitiveType(\"bytes4\", \"bytes\", Just(4)),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n EIP712_DEF_FIELD_DATA_TYPE_BYTES4,\n );\n });\n\n it(\"should return the apdu for 'document' of type 'string[3][]'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"document\",\n type: new ArrayType(\n \"string[3][]\",\n new PrimitiveType(\"string\", \"string\", Nothing),\n \"string[3]\",\n Nothing,\n [Just(3), Nothing],\n ),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_DOCUMENT_STRING);\n });\n\n it(\"should return the apdu for 'depthy' of type 'uint8[][][][]'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"depthy\",\n type: new ArrayType(\n \"uint8[][][][]\",\n new PrimitiveType(\"uint8\", \"uint\", Just(1)),\n \"uint8[][][]\",\n Nothing,\n [Nothing, Nothing, Nothing, Nothing],\n ),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_DEPTHY_UINT8);\n });\n });\n\n describe(\"parseResponse\", () => {\n it(\"should parse the response\", () => {\n // GIVEN\n const response = {\n statusCode: Uint8Array.from([0x90, 0x00]),\n data: new Uint8Array(),\n };\n\n // WHEN\n const parsedResponse = command.parseResponse(response);\n\n // THEN\n expect(parsedResponse).toStrictEqual(\n CommandResultFactory({ data: undefined }),\n );\n });\n\n it(\"should throw an error if the response is not successful\", () => {\n // GIVEN\n const response = {\n statusCode: Uint8Array.from([0x55, 0x15]),\n data: new Uint8Array(),\n };\n\n // WHEN\n const result = command.parseResponse(response);\n\n // THEN\n expect(isSuccessCommandResult(result)).toBe(false);\n });\n });\n});\n"],
|
|
5
|
-
"mappings": "aAAA,IAAAA,EAIO,2CACPC,EAA8B,qBAE9BC,EAIO,4CAGPC,EAIO,+CAEP,MAAMC,EAA+B,WAAW,KAAK,CACnD,IAAM,GAAM,EAAM,EAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,GAAM,IACxE,IAAM,GAAM,IAAM,GACpB,CAAC,EAEKC,EAAwB,WAAW,KAAK,CAC5C,IAAM,GAAM,EAAM,EAAM,EAAM,GAAM,IAAM,IAAM,IAAM,GACxD,CAAC,EAGKC,EAA+B,WAAW,KAAK,CACnD,IAAM,GAAM,EAAM,IAAM,EAAM,EAAM,EAAM,IAAM,GAAM,IAAM,GAC9D,CAAC,EAGKC,EAAkC,WAAW,KAAK,CACtD,IAAM,GAAM,EAAM,IAAM,EAAM,EAAM,EAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IACxE,GACF,CAAC,EAGKC,EAAmC,WAAW,KAAK,CACvD,IAAM,GAAM,EAAM,IAAM,GAAM,GAAM,GAAM,EAAM,GAAM,IAAM,GAAM,IAAM,IACxE,GAAM,GACR,CAAC,EAGKC,EAA6C,WAAW,KAAK,CACjE,IAAM,GAAM,EAAM,IAAM,GAAM,EAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IACxE,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,GAAM,GAAM,GAC9D,CAAC,EAGKC,EAAkC,WAAW,KAAK,CACtD,IAAM,GAAM,EAAM,IAAM,GAAM,IAAM,EAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IACxE,EAAM,EAAM,EAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GACxD,CAAC,EAGKC,EAA+B,WAAW,KAAK,CACnD,IAAM,GAAM,EAAM,IAAM,GAAM,EAAM,EAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IACxE,EAAM,IAAM,IAAM,IAAM,GAC1B,CAAC,EAGKC,EAAmC,WAAW,KAAK,CACvD,IAAM,GAAM,EAAM,IAAM,GAAM,IAAM,EAAM,EAAM,EAAM,IAAM,GAAM,IAAM,IACxE,IAAM,IAAM,GACd,CAAC,EAGKC,EAAyC,WAAW,KAAK,CAC7D,IAAM,GAAM,EAAM,IAAM,GAAM,EAAM,GAAM,IAAM,IAAM,GAAM,IAAM,IAAM,GACxE,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,GAAM,IAAM,EAClD,CAAC,EAGKC,EAA4C,WAAW,KAAK,CAChE,IAAM,GAAM,EAAM,IAAM,GAAM,EAAM,GAAM,IAAM,IAAM,IAAM,IAAM,GAAM,GACxE,IAAM,IAAM,IAAM,IAAM,IAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,GACpE,CAAC,EAGKC,EAAoC,WAAW,KAAK,CACxD,IAAM,GAAM,EAAM,IAAM,GAAM,GAAM,EAAM,EAAM,IAAM,GAAM,IAAM,GAAM,GACxE,IAAM,IAAM,GACd,CAAC,EAGKC,EAAmC,WAAW,KAAK,CACvD,IAAM,GAAM,EAAM,IAAM,GAAM,IAAM,EAAM,EAAM,EAAM,EAAM,EAAM,IAAM,IACxE,GAAM,IAAM,IAAM,IAAM,IAAM,GAChC,CAAC,EAGKC,EAAgC,WAAW,KAAK,CACpD,IAAM,GAAM,EAAM,IAAM,GAAM,IAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EACxE,IAAM,IAAM,IAAM,IAAM,IAAM,GAChC,CAAC,EAID,SAAS,oCAAqC,IAAM,CAClD,IAAIC,EAMJ,SAAS,UAAW,IAAM,CACxB,GAAG,4DAA6D,IAAM,
|
|
6
|
-
"names": ["import_device_management_kit", "import_purify_ts", "import_Types", "import_SendEIP712StructDefinitionCommand", "EIP712_DEF_NAME_EIP712DOMAIN", "EIP712_DEF_NAME_GROUP", "EIP712_DEF_FIELD_NAME_STRING", "EIP712_DEF_FIELD_VERSION_STRING", "EIP712_DEF_FIELD_CHAINID_UINT256", "EIP712_DEF_FIELD_VERIFYINGCONTRACT_ADDRESS", "EIP712_DEF_FIELD_MEMBERS_PERSON", "EIP712_DEF_FIELD_FROM_PERSON", "EIP712_DEF_FIELD_WALLETS_ADDRESS", "EIP712_DEF_FIELD_STATICEXTRADATA_BYTES", "EIP712_DEF_FIELD_REPLACEMENTPATTERN_BYTES", "EIP712_DEF_FIELD_DATA_TYPE_BYTES4", "EIP712_DEF_FIELD_DOCUMENT_STRING", "EIP712_DEF_FIELD_DEPTHY_UINT8", "command", "apdu", "response", "parsedResponse", "result"]
|
|
4
|
+
"sourcesContent": ["import {\n type Command,\n CommandResultFactory,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\nimport { Just, Nothing } from \"purify-ts\";\n\nimport {\n ArrayType,\n PrimitiveType,\n StructType,\n} from \"@internal/typed-data/model/Types\";\n\nimport { type EthErrorCodes } from \"./utils/ethAppErrors\";\nimport {\n SendEIP712StructDefinitionCommand,\n type SendEIP712StructDefinitionCommandArgs,\n StructDefinitionCommand,\n} from \"./SendEIP712StructDefinitionCommand\";\n\nconst EIP712_DEF_NAME_EIP712DOMAIN = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0x00, 0x0c, 0x45, 0x49, 0x50, 0x37, 0x31, 0x32, 0x44, 0x6f,\n 0x6d, 0x61, 0x69, 0x6e,\n]);\n\nconst EIP712_DEF_NAME_GROUP = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0x00, 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70,\n]);\n\n// name string\nconst EIP712_DEF_FIELD_NAME_STRING = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x06, 0x05, 0x04, 0x6e, 0x61, 0x6d, 0x65,\n]);\n\n// version string\nconst EIP712_DEF_FIELD_VERSION_STRING = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x09, 0x05, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,\n 0x6e,\n]);\n\n// chainId uint256\nconst EIP712_DEF_FIELD_CHAINID_UINT256 = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0a, 0x42, 0x20, 0x07, 0x63, 0x68, 0x61, 0x69, 0x6e,\n 0x49, 0x64,\n]);\n\n// verifyingContract address\nconst EIP712_DEF_FIELD_VERIFYINGCONTRACT_ADDRESS = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x13, 0x03, 0x11, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79,\n 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74,\n]);\n\n// members Person[]\nconst EIP712_DEF_FIELD_MEMBERS_PERSON = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x12, 0x80, 0x06, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e,\n 0x01, 0x00, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73,\n]);\n\n// from Person\nconst EIP712_DEF_FIELD_FROM_PERSON = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0d, 0x00, 0x06, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e,\n 0x04, 0x66, 0x72, 0x6f, 0x6d,\n]);\n\n// wallets address[]\nconst EIP712_DEF_FIELD_WALLETS_ADDRESS = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0b, 0x83, 0x01, 0x00, 0x07, 0x77, 0x61, 0x6c, 0x6c,\n 0x65, 0x74, 0x73,\n]);\n\n// staticExtradata bytes\nconst EIP712_DEF_FIELD_STATICEXTRADATA_BYTES = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x11, 0x07, 0x0f, 0x73, 0x74, 0x61, 0x74, 0x69, 0x63,\n 0x45, 0x78, 0x74, 0x72, 0x61, 0x64, 0x61, 0x74, 0x61,\n]);\n\n// replacementPattern bytes\nconst EIP712_DEF_FIELD_REPLACEMENTPATTERN_BYTES = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x14, 0x07, 0x12, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63,\n 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e,\n]);\n\n// dataType bytes4\nconst EIP712_DEF_FIELD_DATA_TYPE_BYTES4 = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0b, 0x46, 0x04, 0x08, 0x64, 0x61, 0x74, 0x61, 0x54,\n 0x79, 0x70, 0x65,\n]);\n\n// document string[3][]\nconst EIP712_DEF_FIELD_DOCUMENT_STRING = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0e, 0x85, 0x02, 0x01, 0x03, 0x00, 0x08, 0x64, 0x6f,\n 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,\n]);\n\n// depthy uint8[][][][]\nconst EIP712_DEF_FIELD_DEPTHY_UINT8 = Uint8Array.from([\n 0xe0, 0x1a, 0x00, 0xff, 0x0e, 0xc2, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x06,\n 0x64, 0x65, 0x70, 0x74, 0x68, 0x79,\n]);\n\n// TODO: find examples for bool and int types.\n\ndescribe(\"SendEIP712StructDefinitionCommand\", () => {\n let command: Command<\n void,\n SendEIP712StructDefinitionCommandArgs,\n EthErrorCodes\n >;\n\n describe(\"name\", () => {\n it(\"should be 'sendEIP712StructDefinition'\", () => {\n const cmd = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Name,\n name: \"test\",\n });\n expect(cmd.name).toBe(\"sendEIP712StructDefinition\");\n });\n });\n\n describe(\"getApdu\", () => {\n it(\"should return the apdu for 'EIP712Domain' name definition\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Name,\n name: \"EIP712Domain\",\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_NAME_EIP712DOMAIN);\n });\n\n it(\"should return the apdu for 'Group' name definition\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Name,\n name: \"Group\",\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_NAME_GROUP);\n });\n\n it(\"should return the apdu for 'name' of type 'string'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"name\",\n type: new PrimitiveType(\"string\", \"string\", Nothing),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_NAME_STRING);\n });\n\n it(\"should return the apdu for 'version' of type 'string'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"version\",\n type: new PrimitiveType(\"string\", \"string\", Nothing),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_VERSION_STRING);\n });\n\n it(\"should return the apdu for 'chainId' of type 'uint256'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"chainId\",\n type: new PrimitiveType(\"uint256\", \"uint\", Just(32)),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_CHAINID_UINT256);\n });\n\n it(\"should return the apdu for 'verifyingContract' of type 'address'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"verifyingContract\",\n type: new PrimitiveType(\"address\", \"address\", Nothing),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n EIP712_DEF_FIELD_VERIFYINGCONTRACT_ADDRESS,\n );\n });\n\n it(\"should return the apdu for 'members' of type 'Person[]'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"members\",\n type: new ArrayType(\n \"Person[]\",\n new StructType(\"Person\"),\n \"Person\",\n Nothing,\n [Nothing],\n ),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_MEMBERS_PERSON);\n });\n\n it(\"should return the apdu for 'from' of type 'Person'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"from\",\n type: new StructType(\"Person\"),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_FROM_PERSON);\n });\n\n it(\"should return the apdu for 'wallets' of type 'address[]'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"wallets\",\n type: new ArrayType(\n \"address[]\",\n new PrimitiveType(\"address\", \"address\", Nothing),\n \"address\",\n Nothing,\n [Nothing],\n ),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_WALLETS_ADDRESS);\n });\n\n it(\"should return the apdu for 'staticExtradata' of type 'bytes'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"staticExtradata\",\n type: new PrimitiveType(\"bytes\", \"bytes\", Nothing),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n EIP712_DEF_FIELD_STATICEXTRADATA_BYTES,\n );\n });\n\n it(\"should return the apdu for 'replacementPattern' of type 'bytes'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"replacementPattern\",\n type: new PrimitiveType(\"bytes\", \"bytes\", Nothing),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n EIP712_DEF_FIELD_REPLACEMENTPATTERN_BYTES,\n );\n });\n\n it(\"should return the apdu for 'dataType' of type 'bytes4'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"dataType\",\n type: new PrimitiveType(\"bytes4\", \"bytes\", Just(4)),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(\n EIP712_DEF_FIELD_DATA_TYPE_BYTES4,\n );\n });\n\n it(\"should return the apdu for 'document' of type 'string[3][]'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"document\",\n type: new ArrayType(\n \"string[3][]\",\n new PrimitiveType(\"string\", \"string\", Nothing),\n \"string[3]\",\n Nothing,\n [Just(3), Nothing],\n ),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_DOCUMENT_STRING);\n });\n\n it(\"should return the apdu for 'depthy' of type 'uint8[][][][]'\", () => {\n // GIVEN\n command = new SendEIP712StructDefinitionCommand({\n command: StructDefinitionCommand.Field,\n name: \"depthy\",\n type: new ArrayType(\n \"uint8[][][][]\",\n new PrimitiveType(\"uint8\", \"uint\", Just(1)),\n \"uint8[][][]\",\n Nothing,\n [Nothing, Nothing, Nothing, Nothing],\n ),\n });\n\n // WHEN\n const apdu = command.getApdu();\n\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(EIP712_DEF_FIELD_DEPTHY_UINT8);\n });\n });\n\n describe(\"parseResponse\", () => {\n it(\"should parse the response\", () => {\n // GIVEN\n const response = {\n statusCode: Uint8Array.from([0x90, 0x00]),\n data: new Uint8Array(),\n };\n\n // WHEN\n const parsedResponse = command.parseResponse(response);\n\n // THEN\n expect(parsedResponse).toStrictEqual(\n CommandResultFactory({ data: undefined }),\n );\n });\n\n it(\"should throw an error if the response is not successful\", () => {\n // GIVEN\n const response = {\n statusCode: Uint8Array.from([0x55, 0x15]),\n data: new Uint8Array(),\n };\n\n // WHEN\n const result = command.parseResponse(response);\n\n // THEN\n expect(isSuccessCommandResult(result)).toBe(false);\n });\n });\n});\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["import_device_management_kit", "import_purify_ts", "import_Types", "import_SendEIP712StructDefinitionCommand", "EIP712_DEF_NAME_EIP712DOMAIN", "EIP712_DEF_NAME_GROUP", "EIP712_DEF_FIELD_NAME_STRING", "EIP712_DEF_FIELD_VERSION_STRING", "EIP712_DEF_FIELD_CHAINID_UINT256", "EIP712_DEF_FIELD_VERIFYINGCONTRACT_ADDRESS", "EIP712_DEF_FIELD_MEMBERS_PERSON", "EIP712_DEF_FIELD_FROM_PERSON", "EIP712_DEF_FIELD_WALLETS_ADDRESS", "EIP712_DEF_FIELD_STATICEXTRADATA_BYTES", "EIP712_DEF_FIELD_REPLACEMENTPATTERN_BYTES", "EIP712_DEF_FIELD_DATA_TYPE_BYTES4", "EIP712_DEF_FIELD_DOCUMENT_STRING", "EIP712_DEF_FIELD_DEPTHY_UINT8", "command", "cmd", "apdu", "response", "parsedResponse", "result"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var p=Object.defineProperty;var
|
|
1
|
+
"use strict";var p=Object.defineProperty;var l=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var A=Object.prototype.hasOwnProperty;var E=(t,e)=>{for(var d in e)p(t,d,{get:e[d],enumerable:!0})},y=(t,e,d,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of i(e))!A.call(t,o)&&o!==d&&p(t,o,{get:()=>e[o],enumerable:!(r=l(e,o))||r.enumerable});return t};var c=t=>y(p({},"__esModule",{value:!0}),t);var R={};E(R,{SendEIP712StructImplemCommand:()=>g,StructImplemType:()=>u});module.exports=c(R);var a=require("@ledgerhq/device-management-kit"),m=require("@ledgerhq/signer-utils"),n=require("purify-ts"),s=require("./utils/ethAppErrors"),u=(r=>(r[r.ROOT=0]="ROOT",r[r.ARRAY=15]="ARRAY",r[r.FIELD=255]="FIELD",r))(u||{});class g{constructor(e){this.args=e}name="sendEIP712StructImplem";errorHelper=new m.CommandErrorHelper(s.ETH_APP_ERRORS,s.EthAppCommandErrorFactory);getApdu(){const e={cla:224,ins:28,p1:this.args.type!=255||this.args.value.isLastChunk?0:1,p2:this.args.type};switch(this.args.type){case 0:return new a.ApduBuilder(e).addAsciiStringToData(this.args.value).build();case 15:return new a.ApduBuilder(e).add8BitUIntToData(this.args.value).build();case 255:return new a.ApduBuilder(e).addBufferToData(this.args.value.data).build()}}parseResponse(e){return n.Maybe.fromNullable(this.errorHelper.getError(e)).orDefault((0,a.CommandResultFactory)({data:void 0}))}}0&&(module.exports={SendEIP712StructImplemCommand,StructImplemType});
|
|
2
2
|
//# sourceMappingURL=SendEIP712StructImplemCommand.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../src/internal/app-binder/command/SendEIP712StructImplemCommand.ts"],
|
|
4
|
-
"sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#eip712-send-struct-implementation\nimport {\n type Apdu,\n ApduBuilder,\n type ApduBuilderArgs,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n} from \"@ledgerhq/device-management-kit\";\nimport { CommandErrorHelper } from \"@ledgerhq/signer-utils\";\nimport { Maybe } from \"purify-ts\";\n\nimport {\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n type EthErrorCodes,\n} from \"./utils/ethAppErrors\";\n\nexport enum StructImplemType {\n ROOT = 0x00,\n ARRAY = 0x0f,\n FIELD = 0xff,\n}\n\nexport type SendEIP712StructImplemCommandArgs =\n | {\n type: StructImplemType.ROOT;\n value: string;\n }\n | {\n type: StructImplemType.ARRAY;\n value: number;\n }\n | {\n type: StructImplemType.FIELD;\n value: {\n /**\n * The chunk of the data that is ready to send, that is to say, prefixed by its length in two bytes.\n * Eg. 01020304 => [0x00, 0x04, 0x01, 0x02, 0x03, 0x04] where [0x00, 0x04] are the length of the data.\n */\n data: Uint8Array;\n isLastChunk: boolean;\n };\n };\n\nexport class SendEIP712StructImplemCommand\n implements Command<void, SendEIP712StructImplemCommandArgs, EthErrorCodes>\n{\n private readonly errorHelper = new CommandErrorHelper<void, EthErrorCodes>(\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n );\n constructor(private readonly args: SendEIP712StructImplemCommandArgs) {}\n\n getApdu(): Apdu {\n const apduBuilderArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x1c,\n p1:\n this.args.type != StructImplemType.FIELD || this.args.value.isLastChunk\n ? 0x00\n : 0x01,\n p2: this.args.type,\n };\n switch (this.args.type) {\n case StructImplemType.ROOT:\n return new ApduBuilder(apduBuilderArgs)\n .addAsciiStringToData(this.args.value)\n .build();\n case StructImplemType.ARRAY:\n return new ApduBuilder(apduBuilderArgs)\n .add8BitUIntToData(this.args.value)\n .build();\n case StructImplemType.FIELD:\n return new ApduBuilder(apduBuilderArgs)\n .addBufferToData(this.args.value.data)\n .build();\n }\n }\n\n parseResponse(response: ApduResponse): CommandResult<void, EthErrorCodes> {\n return Maybe.fromNullable(this.errorHelper.getError(response)).orDefault(\n CommandResultFactory({ data: undefined }),\n );\n }\n}\n"],
|
|
5
|
-
"mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,mCAAAE,EAAA,qBAAAC,IAAA,eAAAC,EAAAJ,GACA,IAAAK,EAQO,2CACPC,EAAmC,kCACnCC,EAAsB,qBAEtBC,EAIO,gCAEKL,OACVA,IAAA,KAAO,GAAP,OACAA,IAAA,MAAQ,IAAR,QACAA,IAAA,MAAQ,KAAR,QAHUA,OAAA,IA2BL,MAAMD,CAEb,
|
|
4
|
+
"sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#eip712-send-struct-implementation\nimport {\n type Apdu,\n ApduBuilder,\n type ApduBuilderArgs,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n} from \"@ledgerhq/device-management-kit\";\nimport { CommandErrorHelper } from \"@ledgerhq/signer-utils\";\nimport { Maybe } from \"purify-ts\";\n\nimport {\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n type EthErrorCodes,\n} from \"./utils/ethAppErrors\";\n\nexport enum StructImplemType {\n ROOT = 0x00,\n ARRAY = 0x0f,\n FIELD = 0xff,\n}\n\nexport type SendEIP712StructImplemCommandArgs =\n | {\n type: StructImplemType.ROOT;\n value: string;\n }\n | {\n type: StructImplemType.ARRAY;\n value: number;\n }\n | {\n type: StructImplemType.FIELD;\n value: {\n /**\n * The chunk of the data that is ready to send, that is to say, prefixed by its length in two bytes.\n * Eg. 01020304 => [0x00, 0x04, 0x01, 0x02, 0x03, 0x04] where [0x00, 0x04] are the length of the data.\n */\n data: Uint8Array;\n isLastChunk: boolean;\n };\n };\n\nexport class SendEIP712StructImplemCommand\n implements Command<void, SendEIP712StructImplemCommandArgs, EthErrorCodes>\n{\n readonly name = \"sendEIP712StructImplem\";\n private readonly errorHelper = new CommandErrorHelper<void, EthErrorCodes>(\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n );\n constructor(private readonly args: SendEIP712StructImplemCommandArgs) {}\n\n getApdu(): Apdu {\n const apduBuilderArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x1c,\n p1:\n this.args.type != StructImplemType.FIELD || this.args.value.isLastChunk\n ? 0x00\n : 0x01,\n p2: this.args.type,\n };\n switch (this.args.type) {\n case StructImplemType.ROOT:\n return new ApduBuilder(apduBuilderArgs)\n .addAsciiStringToData(this.args.value)\n .build();\n case StructImplemType.ARRAY:\n return new ApduBuilder(apduBuilderArgs)\n .add8BitUIntToData(this.args.value)\n .build();\n case StructImplemType.FIELD:\n return new ApduBuilder(apduBuilderArgs)\n .addBufferToData(this.args.value.data)\n .build();\n }\n }\n\n parseResponse(response: ApduResponse): CommandResult<void, EthErrorCodes> {\n return Maybe.fromNullable(this.errorHelper.getError(response)).orDefault(\n CommandResultFactory({ data: undefined }),\n );\n }\n}\n"],
|
|
5
|
+
"mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,mCAAAE,EAAA,qBAAAC,IAAA,eAAAC,EAAAJ,GACA,IAAAK,EAQO,2CACPC,EAAmC,kCACnCC,EAAsB,qBAEtBC,EAIO,gCAEKL,OACVA,IAAA,KAAO,GAAP,OACAA,IAAA,MAAQ,IAAR,QACAA,IAAA,MAAQ,KAAR,QAHUA,OAAA,IA2BL,MAAMD,CAEb,CAME,YAA6BO,EAAyC,CAAzC,UAAAA,CAA0C,CAL9D,KAAO,yBACC,YAAc,IAAI,qBACjC,iBACA,2BACF,EAGA,SAAgB,CACd,MAAMC,EAAmC,CACvC,IAAK,IACL,IAAK,GACL,GACE,KAAK,KAAK,MAAQ,KAA0B,KAAK,KAAK,MAAM,YACxD,EACA,EACN,GAAI,KAAK,KAAK,IAChB,EACA,OAAQ,KAAK,KAAK,KAAM,CACtB,IAAK,GACH,OAAO,IAAI,cAAYA,CAAe,EACnC,qBAAqB,KAAK,KAAK,KAAK,EACpC,MAAM,EACX,IAAK,IACH,OAAO,IAAI,cAAYA,CAAe,EACnC,kBAAkB,KAAK,KAAK,KAAK,EACjC,MAAM,EACX,IAAK,KACH,OAAO,IAAI,cAAYA,CAAe,EACnC,gBAAgB,KAAK,KAAK,MAAM,IAAI,EACpC,MAAM,CACb,CACF,CAEA,cAAcC,EAA4D,CACxE,OAAO,QAAM,aAAa,KAAK,YAAY,SAASA,CAAQ,CAAC,EAAE,aAC7D,wBAAqB,CAAE,KAAM,MAAU,CAAC,CAC1C,CACF,CACF",
|
|
6
6
|
"names": ["SendEIP712StructImplemCommand_exports", "__export", "SendEIP712StructImplemCommand", "StructImplemType", "__toCommonJS", "import_device_management_kit", "import_signer_utils", "import_purify_ts", "import_ethAppErrors", "args", "apduBuilderArgs", "response"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var o=require("@ledgerhq/device-management-kit"),e=require("./SendEIP712StructImplemCommand");const s=Uint8Array.from([224,28,0,0,6,108,101,100,103,101,114]),c=Uint8Array.from([224,28,0,15,1,19]),a=Uint8Array.from([224,28,0,255,6,0,4,1,2,3,4]),m=Uint8Array.from([224,28,1,255,5,5,6,7,8,9]);describe("SendEIP712StructImplemCommand",()=>{describe("getApdu",()=>{it("should return the correct APDU for ROOT",()=>{const t={type:e.StructImplemType.ROOT,value:"ledger"},r=new e.SendEIP712StructImplemCommand(t).getApdu();expect(r.getRawApdu()).toStrictEqual(s)}),it("should return the correct APDU for ARRAY",()=>{const t={type:e.StructImplemType.ARRAY,value:19},r=new e.SendEIP712StructImplemCommand(t).getApdu();expect(r.getRawApdu()).toStrictEqual(c)}),it("should return the correct APDU for FIELD when receiving last chunk",()=>{const t={type:e.StructImplemType.FIELD,value:{data:Uint8Array.from([0,4,1,2,3,4]),isLastChunk:!0}},r=new e.SendEIP712StructImplemCommand(t).getApdu();expect(r.getRawApdu()).toStrictEqual(a)}),it("should return the correct APDU for FIELD when receiving other chunk",()=>{const t={type:e.StructImplemType.FIELD,value:{data:Uint8Array.from([5,6,7,8,9]),isLastChunk:!1}},r=new e.SendEIP712StructImplemCommand(t).getApdu();expect(r.getRawApdu()).toStrictEqual(m)})}),describe("parseResponse",()=>{it("should return an error if the response status code is not success",()=>{const t={data:new Uint8Array,statusCode:new Uint8Array([106,128])},r=new e.SendEIP712StructImplemCommand({type:e.StructImplemType.ROOT,value:"ledger"}).parseResponse(t);expect((0,o.isSuccessCommandResult)(r)).toBe(!1)}),it("should not return an error if the response status code is success",()=>{const t={data:new Uint8Array,statusCode:new Uint8Array([144,0])},n=new e.SendEIP712StructImplemCommand({type:e.StructImplemType.ROOT,value:"ledger"});expect(n.parseResponse(t)).toStrictEqual((0,o.CommandResultFactory)({data:void 0}))})})});
|
|
1
|
+
"use strict";var o=require("@ledgerhq/device-management-kit"),e=require("./SendEIP712StructImplemCommand");const s=Uint8Array.from([224,28,0,0,6,108,101,100,103,101,114]),c=Uint8Array.from([224,28,0,15,1,19]),a=Uint8Array.from([224,28,0,255,6,0,4,1,2,3,4]),m=Uint8Array.from([224,28,1,255,5,5,6,7,8,9]);describe("SendEIP712StructImplemCommand",()=>{describe("name",()=>{it("should be 'sendEIP712StructImplem'",()=>{const t=new e.SendEIP712StructImplemCommand({type:e.StructImplemType.ROOT,value:"test"});expect(t.name).toBe("sendEIP712StructImplem")})}),describe("getApdu",()=>{it("should return the correct APDU for ROOT",()=>{const t={type:e.StructImplemType.ROOT,value:"ledger"},r=new e.SendEIP712StructImplemCommand(t).getApdu();expect(r.getRawApdu()).toStrictEqual(s)}),it("should return the correct APDU for ARRAY",()=>{const t={type:e.StructImplemType.ARRAY,value:19},r=new e.SendEIP712StructImplemCommand(t).getApdu();expect(r.getRawApdu()).toStrictEqual(c)}),it("should return the correct APDU for FIELD when receiving last chunk",()=>{const t={type:e.StructImplemType.FIELD,value:{data:Uint8Array.from([0,4,1,2,3,4]),isLastChunk:!0}},r=new e.SendEIP712StructImplemCommand(t).getApdu();expect(r.getRawApdu()).toStrictEqual(a)}),it("should return the correct APDU for FIELD when receiving other chunk",()=>{const t={type:e.StructImplemType.FIELD,value:{data:Uint8Array.from([5,6,7,8,9]),isLastChunk:!1}},r=new e.SendEIP712StructImplemCommand(t).getApdu();expect(r.getRawApdu()).toStrictEqual(m)})}),describe("parseResponse",()=>{it("should return an error if the response status code is not success",()=>{const t={data:new Uint8Array,statusCode:new Uint8Array([106,128])},r=new e.SendEIP712StructImplemCommand({type:e.StructImplemType.ROOT,value:"ledger"}).parseResponse(t);expect((0,o.isSuccessCommandResult)(r)).toBe(!1)}),it("should not return an error if the response status code is success",()=>{const t={data:new Uint8Array,statusCode:new Uint8Array([144,0])},n=new e.SendEIP712StructImplemCommand({type:e.StructImplemType.ROOT,value:"ledger"});expect(n.parseResponse(t)).toStrictEqual((0,o.CommandResultFactory)({data:void 0}))})})});
|
|
2
2
|
//# sourceMappingURL=SendEIP712StructImplemCommand.test.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../src/internal/app-binder/command/SendEIP712StructImplemCommand.test.ts"],
|
|
4
|
-
"sourcesContent": ["import {\n CommandResultFactory,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\n\nimport {\n SendEIP712StructImplemCommand,\n type SendEIP712StructImplemCommandArgs,\n StructImplemType,\n} from \"./SendEIP712StructImplemCommand\";\n\nconst ROOT_APDU = Uint8Array.from([\n 0xe0, 0x1c, 0x00, 0x00, 0x06, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x72,\n]);\n\nconst ARRAY_APDU = Uint8Array.from([0xe0, 0x1c, 0x00, 0x0f, 0x01, 0x13]);\n\nconst FIELD_LAST_CHUNK_APDU = Uint8Array.from([\n 0xe0, 0x1c, 0x00, 0xff, 0x06, 0x00, 0x04, 0x01, 0x02, 0x03, 0x04,\n]);\n\nconst FIELD_OTHER_CHUNK_APDU = Uint8Array.from([\n 0xe0, 0x1c, 0x01, 0xff, 0x05, 0x05, 0x06, 0x07, 0x08, 0x09,\n]);\n\ndescribe(\"SendEIP712StructImplemCommand\", () => {\n describe(\"getApdu\", () => {\n it(\"should return the correct APDU for ROOT\", () => {\n // GIVEN\n const args: SendEIP712StructImplemCommandArgs = {\n type: StructImplemType.ROOT,\n value: \"ledger\",\n };\n // WHEN\n const command = new SendEIP712StructImplemCommand(args);\n const apdu = command.getApdu();\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(ROOT_APDU);\n });\n it(\"should return the correct APDU for ARRAY\", () => {\n // GIVEN\n const args: SendEIP712StructImplemCommandArgs = {\n type: StructImplemType.ARRAY,\n value: 19,\n };\n // WHEN\n const command = new SendEIP712StructImplemCommand(args);\n const apdu = command.getApdu();\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(ARRAY_APDU);\n });\n it(\"should return the correct APDU for FIELD when receiving last chunk\", () => {\n // GIVEN\n const args: SendEIP712StructImplemCommandArgs = {\n type: StructImplemType.FIELD,\n value: {\n data: Uint8Array.from([0x00, 0x04, 0x01, 0x02, 0x03, 0x04]),\n isLastChunk: true,\n },\n };\n // WHEN\n const command = new SendEIP712StructImplemCommand(args);\n const apdu = command.getApdu();\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(FIELD_LAST_CHUNK_APDU);\n });\n it(\"should return the correct APDU for FIELD when receiving other chunk\", () => {\n // GIVEN\n const args: SendEIP712StructImplemCommandArgs = {\n type: StructImplemType.FIELD,\n value: {\n data: Uint8Array.from([0x05, 0x06, 0x07, 0x08, 0x09]),\n isLastChunk: false,\n },\n };\n // WHEN\n const command = new SendEIP712StructImplemCommand(args);\n const apdu = command.getApdu();\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(FIELD_OTHER_CHUNK_APDU);\n });\n });\n describe(\"parseResponse\", () => {\n it(\"should return an error if the response status code is not success\", () => {\n // GIVEN\n const response = {\n data: new Uint8Array(),\n statusCode: new Uint8Array([0x6a, 0x80]),\n };\n // WHEN\n const command = new SendEIP712StructImplemCommand({\n type: StructImplemType.ROOT,\n value: \"ledger\",\n });\n // THEN\n const result = command.parseResponse(response);\n expect(isSuccessCommandResult(result)).toBe(false);\n });\n it(\"should not return an error if the response status code is success\", () => {\n // GIVEN\n const response = {\n data: new Uint8Array(),\n statusCode: new Uint8Array([0x90, 0x00]),\n };\n // WHEN\n const command = new SendEIP712StructImplemCommand({\n type: StructImplemType.ROOT,\n value: \"ledger\",\n });\n // THEN\n expect(command.parseResponse(response)).toStrictEqual(\n CommandResultFactory({ data: undefined }),\n );\n });\n });\n});\n"],
|
|
5
|
-
"mappings": "aAAA,IAAAA,EAGO,2CAEPC,EAIO,2CAEP,MAAMC,EAAY,WAAW,KAAK,CAChC,IAAM,GAAM,EAAM,EAAM,EAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAC9D,CAAC,EAEKC,EAAa,WAAW,KAAK,CAAC,IAAM,GAAM,EAAM,GAAM,EAAM,EAAI,CAAC,EAEjEC,EAAwB,WAAW,KAAK,CAC5C,IAAM,GAAM,EAAM,IAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,CAC9D,CAAC,EAEKC,EAAyB,WAAW,KAAK,CAC7C,IAAM,GAAM,EAAM,IAAM,EAAM,EAAM,EAAM,EAAM,EAAM,CACxD,CAAC,EAED,SAAS,gCAAiC,IAAM,CAC9C,SAAS,UAAW,IAAM,CACxB,GAAG,0CAA2C,IAAM,CAElD,MAAMC,EAA0C,CAC9C,KAAM,mBAAiB,KACvB,MAAO,QACT,EAGMC,EADU,IAAI,gCAA8BD,CAAI,EACjC,QAAQ,EAE7B,OAAOC,EAAK,WAAW,CAAC,EAAE,
|
|
6
|
-
"names": ["import_device_management_kit", "import_SendEIP712StructImplemCommand", "ROOT_APDU", "ARRAY_APDU", "FIELD_LAST_CHUNK_APDU", "FIELD_OTHER_CHUNK_APDU", "args", "apdu", "response", "result"
|
|
4
|
+
"sourcesContent": ["import {\n CommandResultFactory,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\n\nimport {\n SendEIP712StructImplemCommand,\n type SendEIP712StructImplemCommandArgs,\n StructImplemType,\n} from \"./SendEIP712StructImplemCommand\";\n\nconst ROOT_APDU = Uint8Array.from([\n 0xe0, 0x1c, 0x00, 0x00, 0x06, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x72,\n]);\n\nconst ARRAY_APDU = Uint8Array.from([0xe0, 0x1c, 0x00, 0x0f, 0x01, 0x13]);\n\nconst FIELD_LAST_CHUNK_APDU = Uint8Array.from([\n 0xe0, 0x1c, 0x00, 0xff, 0x06, 0x00, 0x04, 0x01, 0x02, 0x03, 0x04,\n]);\n\nconst FIELD_OTHER_CHUNK_APDU = Uint8Array.from([\n 0xe0, 0x1c, 0x01, 0xff, 0x05, 0x05, 0x06, 0x07, 0x08, 0x09,\n]);\n\ndescribe(\"SendEIP712StructImplemCommand\", () => {\n describe(\"name\", () => {\n it(\"should be 'sendEIP712StructImplem'\", () => {\n const command = new SendEIP712StructImplemCommand({\n type: StructImplemType.ROOT,\n value: \"test\",\n });\n expect(command.name).toBe(\"sendEIP712StructImplem\");\n });\n });\n\n describe(\"getApdu\", () => {\n it(\"should return the correct APDU for ROOT\", () => {\n // GIVEN\n const args: SendEIP712StructImplemCommandArgs = {\n type: StructImplemType.ROOT,\n value: \"ledger\",\n };\n // WHEN\n const command = new SendEIP712StructImplemCommand(args);\n const apdu = command.getApdu();\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(ROOT_APDU);\n });\n it(\"should return the correct APDU for ARRAY\", () => {\n // GIVEN\n const args: SendEIP712StructImplemCommandArgs = {\n type: StructImplemType.ARRAY,\n value: 19,\n };\n // WHEN\n const command = new SendEIP712StructImplemCommand(args);\n const apdu = command.getApdu();\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(ARRAY_APDU);\n });\n it(\"should return the correct APDU for FIELD when receiving last chunk\", () => {\n // GIVEN\n const args: SendEIP712StructImplemCommandArgs = {\n type: StructImplemType.FIELD,\n value: {\n data: Uint8Array.from([0x00, 0x04, 0x01, 0x02, 0x03, 0x04]),\n isLastChunk: true,\n },\n };\n // WHEN\n const command = new SendEIP712StructImplemCommand(args);\n const apdu = command.getApdu();\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(FIELD_LAST_CHUNK_APDU);\n });\n it(\"should return the correct APDU for FIELD when receiving other chunk\", () => {\n // GIVEN\n const args: SendEIP712StructImplemCommandArgs = {\n type: StructImplemType.FIELD,\n value: {\n data: Uint8Array.from([0x05, 0x06, 0x07, 0x08, 0x09]),\n isLastChunk: false,\n },\n };\n // WHEN\n const command = new SendEIP712StructImplemCommand(args);\n const apdu = command.getApdu();\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(FIELD_OTHER_CHUNK_APDU);\n });\n });\n describe(\"parseResponse\", () => {\n it(\"should return an error if the response status code is not success\", () => {\n // GIVEN\n const response = {\n data: new Uint8Array(),\n statusCode: new Uint8Array([0x6a, 0x80]),\n };\n // WHEN\n const command = new SendEIP712StructImplemCommand({\n type: StructImplemType.ROOT,\n value: \"ledger\",\n });\n // THEN\n const result = command.parseResponse(response);\n expect(isSuccessCommandResult(result)).toBe(false);\n });\n it(\"should not return an error if the response status code is success\", () => {\n // GIVEN\n const response = {\n data: new Uint8Array(),\n statusCode: new Uint8Array([0x90, 0x00]),\n };\n // WHEN\n const command = new SendEIP712StructImplemCommand({\n type: StructImplemType.ROOT,\n value: \"ledger\",\n });\n // THEN\n expect(command.parseResponse(response)).toStrictEqual(\n CommandResultFactory({ data: undefined }),\n );\n });\n });\n});\n"],
|
|
5
|
+
"mappings": "aAAA,IAAAA,EAGO,2CAEPC,EAIO,2CAEP,MAAMC,EAAY,WAAW,KAAK,CAChC,IAAM,GAAM,EAAM,EAAM,EAAM,IAAM,IAAM,IAAM,IAAM,IAAM,GAC9D,CAAC,EAEKC,EAAa,WAAW,KAAK,CAAC,IAAM,GAAM,EAAM,GAAM,EAAM,EAAI,CAAC,EAEjEC,EAAwB,WAAW,KAAK,CAC5C,IAAM,GAAM,EAAM,IAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,CAC9D,CAAC,EAEKC,EAAyB,WAAW,KAAK,CAC7C,IAAM,GAAM,EAAM,IAAM,EAAM,EAAM,EAAM,EAAM,EAAM,CACxD,CAAC,EAED,SAAS,gCAAiC,IAAM,CAC9C,SAAS,OAAQ,IAAM,CACrB,GAAG,qCAAsC,IAAM,CAC7C,MAAMC,EAAU,IAAI,gCAA8B,CAChD,KAAM,mBAAiB,KACvB,MAAO,MACT,CAAC,EACD,OAAOA,EAAQ,IAAI,EAAE,KAAK,wBAAwB,CACpD,CAAC,CACH,CAAC,EAED,SAAS,UAAW,IAAM,CACxB,GAAG,0CAA2C,IAAM,CAElD,MAAMC,EAA0C,CAC9C,KAAM,mBAAiB,KACvB,MAAO,QACT,EAGMC,EADU,IAAI,gCAA8BD,CAAI,EACjC,QAAQ,EAE7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cAAcN,CAAS,CACnD,CAAC,EACD,GAAG,2CAA4C,IAAM,CAEnD,MAAMK,EAA0C,CAC9C,KAAM,mBAAiB,MACvB,MAAO,EACT,EAGMC,EADU,IAAI,gCAA8BD,CAAI,EACjC,QAAQ,EAE7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cAAcL,CAAU,CACpD,CAAC,EACD,GAAG,qEAAsE,IAAM,CAE7E,MAAMI,EAA0C,CAC9C,KAAM,mBAAiB,MACvB,MAAO,CACL,KAAM,WAAW,KAAK,CAAC,EAAM,EAAM,EAAM,EAAM,EAAM,CAAI,CAAC,EAC1D,YAAa,EACf,CACF,EAGMC,EADU,IAAI,gCAA8BD,CAAI,EACjC,QAAQ,EAE7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cAAcJ,CAAqB,CAC/D,CAAC,EACD,GAAG,sEAAuE,IAAM,CAE9E,MAAMG,EAA0C,CAC9C,KAAM,mBAAiB,MACvB,MAAO,CACL,KAAM,WAAW,KAAK,CAAC,EAAM,EAAM,EAAM,EAAM,CAAI,CAAC,EACpD,YAAa,EACf,CACF,EAGMC,EADU,IAAI,gCAA8BD,CAAI,EACjC,QAAQ,EAE7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cAAcH,CAAsB,CAChE,CAAC,CACH,CAAC,EACD,SAAS,gBAAiB,IAAM,CAC9B,GAAG,oEAAqE,IAAM,CAE5E,MAAMI,EAAW,CACf,KAAM,IAAI,WACV,WAAY,IAAI,WAAW,CAAC,IAAM,GAAI,CAAC,CACzC,EAOMC,EALU,IAAI,gCAA8B,CAChD,KAAM,mBAAiB,KACvB,MAAO,QACT,CAAC,EAEsB,cAAcD,CAAQ,EAC7C,UAAO,0BAAuBC,CAAM,CAAC,EAAE,KAAK,EAAK,CACnD,CAAC,EACD,GAAG,oEAAqE,IAAM,CAE5E,MAAMD,EAAW,CACf,KAAM,IAAI,WACV,WAAY,IAAI,WAAW,CAAC,IAAM,CAAI,CAAC,CACzC,EAEMH,EAAU,IAAI,gCAA8B,CAChD,KAAM,mBAAiB,KACvB,MAAO,QACT,CAAC,EAED,OAAOA,EAAQ,cAAcG,CAAQ,CAAC,EAAE,iBACtC,wBAAqB,CAAE,KAAM,MAAU,CAAC,CAC1C,CACF,CAAC,CACH,CAAC,CACH,CAAC",
|
|
6
|
+
"names": ["import_device_management_kit", "import_SendEIP712StructImplemCommand", "ROOT_APDU", "ARRAY_APDU", "FIELD_LAST_CHUNK_APDU", "FIELD_OTHER_CHUNK_APDU", "command", "args", "apdu", "response", "result"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var d=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var u=Object.prototype.hasOwnProperty;var g=(e,r)=>{for(var o in r)d(e,o,{get:r[o],enumerable:!0})},E=(e,r,o,s)=>{if(r&&typeof r=="object"||typeof r=="function")for(let t of i(r))!u.call(e,t)&&t!==o&&d(e,t,{get:()=>r[t],enumerable:!(s=m(r,t))||s.enumerable});return e};var A=e=>E(d({},"__esModule",{value:!0}),e);var C={};g(C,{SetExternalPluginCommand:()=>y});module.exports=A(C);var a=require("@ledgerhq/device-management-kit"),p=require("@ledgerhq/signer-utils"),l=require("purify-ts"),n=require("./utils/ethAppErrors");class y{constructor(r){this.args=r}name="setExternalPlugin";errorHelper=new p.CommandErrorHelper(n.ETH_APP_ERRORS,n.EthAppCommandErrorFactory);getApdu(){const r={cla:224,ins:18,p1:0,p2:0};return new a.ApduBuilder(r).addHexaStringToData(this.args.payload).addHexaStringToData(this.args.signature??"").build()}parseResponse(r){return l.Maybe.fromNullable(this.errorHelper.getError(r)).orDefault((0,a.CommandResultFactory)({data:void 0}))}}0&&(module.exports={SetExternalPluginCommand});
|
|
2
2
|
//# sourceMappingURL=SetExternalPluginCommand.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../src/internal/app-binder/command/SetExternalPluginCommand.ts"],
|
|
4
|
-
"sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#set-external-plugin\nimport {\n type Apdu,\n ApduBuilder,\n type ApduBuilderArgs,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n} from \"@ledgerhq/device-management-kit\";\nimport { CommandErrorHelper } from \"@ledgerhq/signer-utils\";\nimport { Maybe } from \"purify-ts\";\n\nimport {\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n type EthErrorCodes,\n} from \"./utils/ethAppErrors\";\n\ntype SetExternalPluginCommandArgs = {\n payload: string;\n signature?: string;\n};\n\nexport class SetExternalPluginCommand\n implements Command<void, SetExternalPluginCommandArgs, EthErrorCodes>\n{\n constructor(private readonly args: SetExternalPluginCommandArgs) {}\n private readonly errorHelper = new CommandErrorHelper<void, EthErrorCodes>(\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n );\n\n getApdu(): Apdu {\n const setExternalPluginBuilderArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x12,\n p1: 0x00,\n p2: 0x00,\n };\n return (\n new ApduBuilder(setExternalPluginBuilderArgs)\n .addHexaStringToData(this.args.payload)\n /**\n * The signature is normally integrated in the payload, but keeping this step for safety reasons and will be removed in the future.\n */\n .addHexaStringToData(this.args.signature ?? \"\")\n .build()\n );\n }\n\n parseResponse(\n apduResponse: ApduResponse,\n ): CommandResult<void, EthErrorCodes> {\n return Maybe.fromNullable(\n this.errorHelper.getError(apduResponse),\n ).orDefault(CommandResultFactory({ data: undefined }));\n }\n}\n"],
|
|
5
|
-
"mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,8BAAAE,IAAA,eAAAC,EAAAH,GACA,IAAAI,EAQO,2CACPC,EAAmC,kCACnCC,EAAsB,qBAEtBC,EAIO,gCAOA,MAAML,CAEb,
|
|
4
|
+
"sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#set-external-plugin\nimport {\n type Apdu,\n ApduBuilder,\n type ApduBuilderArgs,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n} from \"@ledgerhq/device-management-kit\";\nimport { CommandErrorHelper } from \"@ledgerhq/signer-utils\";\nimport { Maybe } from \"purify-ts\";\n\nimport {\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n type EthErrorCodes,\n} from \"./utils/ethAppErrors\";\n\ntype SetExternalPluginCommandArgs = {\n payload: string;\n signature?: string;\n};\n\nexport class SetExternalPluginCommand\n implements Command<void, SetExternalPluginCommandArgs, EthErrorCodes>\n{\n readonly name = \"setExternalPlugin\";\n\n constructor(private readonly args: SetExternalPluginCommandArgs) {}\n private readonly errorHelper = new CommandErrorHelper<void, EthErrorCodes>(\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n );\n\n getApdu(): Apdu {\n const setExternalPluginBuilderArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x12,\n p1: 0x00,\n p2: 0x00,\n };\n return (\n new ApduBuilder(setExternalPluginBuilderArgs)\n .addHexaStringToData(this.args.payload)\n /**\n * The signature is normally integrated in the payload, but keeping this step for safety reasons and will be removed in the future.\n */\n .addHexaStringToData(this.args.signature ?? \"\")\n .build()\n );\n }\n\n parseResponse(\n apduResponse: ApduResponse,\n ): CommandResult<void, EthErrorCodes> {\n return Maybe.fromNullable(\n this.errorHelper.getError(apduResponse),\n ).orDefault(CommandResultFactory({ data: undefined }));\n }\n}\n"],
|
|
5
|
+
"mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,8BAAAE,IAAA,eAAAC,EAAAH,GACA,IAAAI,EAQO,2CACPC,EAAmC,kCACnCC,EAAsB,qBAEtBC,EAIO,gCAOA,MAAML,CAEb,CAGE,YAA6BM,EAAoC,CAApC,UAAAA,CAAqC,CAFzD,KAAO,oBAGC,YAAc,IAAI,qBACjC,iBACA,2BACF,EAEA,SAAgB,CACd,MAAMC,EAAgD,CACpD,IAAK,IACL,IAAK,GACL,GAAI,EACJ,GAAI,CACN,EACA,OACE,IAAI,cAAYA,CAA4B,EACzC,oBAAoB,KAAK,KAAK,OAAO,EAIrC,oBAAoB,KAAK,KAAK,WAAa,EAAE,EAC7C,MAAM,CAEb,CAEA,cACEC,EACoC,CACpC,OAAO,QAAM,aACX,KAAK,YAAY,SAASA,CAAY,CACxC,EAAE,aAAU,wBAAqB,CAAE,KAAM,MAAU,CAAC,CAAC,CACvD,CACF",
|
|
6
6
|
"names": ["SetExternalPluginCommand_exports", "__export", "SetExternalPluginCommand", "__toCommonJS", "import_device_management_kit", "import_signer_utils", "import_purify_ts", "import_ethAppErrors", "args", "setExternalPluginBuilderArgs", "apduResponse"]
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
"use strict";var e=require("@ledgerhq/device-management-kit"),
|
|
1
|
+
"use strict";var e=require("@ledgerhq/device-management-kit"),o=require("../../app-binder/command/SetExternalPluginCommand"),n=require("./utils/ethAppErrors");const s=[8,80,97,114,97,115,119,97,112,222,241,113,254,72,207,1,21,177,216,11,136,220,142,171,89,23,111,238,87,169,5,156,187],d=[4,130,187,242,243,79,54,123,46,91,194,24,71,182,86,111,33,240,151,107,34,211,56,138,154,94,68,106,198,45,37,207,114,91,98,162,85,91,45,212,100,164,218,10,178,244,213,6,130,5,67,175,29,36,36,112,177,177,169,105,162,117,120,243,83],c=[224,18,0,0,s.length+d.length,...s,...d];describe("Set External plugin",()=>{describe("name",()=>{it("should be 'setExternalPlugin'",()=>{const r=new o.SetExternalPluginCommand({payload:""});expect(r.name).toBe("setExternalPlugin")})}),describe("getApdu",()=>{it("should retrieve correct apdu",()=>{const t=new o.SetExternalPluginCommand({payload:s.map(x=>x.toString(16).padStart(2,"0")).join(""),signature:d.map(x=>x.toString(16).padStart(2,"0")).join("")}).getApdu();expect(t.getRawApdu()).toStrictEqual(Uint8Array.from(c))})}),describe("parseResponse",()=>{it.each`
|
|
2
2
|
apduResponseCode | errorCode
|
|
3
3
|
${Uint8Array.from([106,128])} | ${"6a80"}
|
|
4
4
|
${Uint8Array.from([105,132])} | ${"6984"}
|
|
5
5
|
${Uint8Array.from([109,0])} | ${"6d00"}
|
|
6
|
-
`("should return an error for the response status code $errorCode",({apduResponseCode:
|
|
6
|
+
`("should return an error for the response status code $errorCode",({apduResponseCode:r,errorCode:t})=>{const x=new e.ApduResponse({data:Uint8Array.from([]),statusCode:r}),a=new o.SetExternalPluginCommand({payload:"",signature:""}).parseResponse(x);expect((0,e.isSuccessCommandResult)(a)).toBe(!1),(0,e.isSuccessCommandResult)(a)||(expect(a.error).toBeInstanceOf(n.EthAppCommandError),a.error instanceof n.EthAppCommandError&&expect(a.error.errorCode).toStrictEqual(t))}),it("should return a global error",()=>{const r=new o.SetExternalPluginCommand({payload:"",signature:""}),t=new e.ApduResponse({statusCode:Uint8Array.from([85,21]),data:Uint8Array.from([])}),x=r.parseResponse(t);expect((0,e.isSuccessCommandResult)(x)).toBe(!1),(0,e.isSuccessCommandResult)(x)||(expect(x.error).toBeInstanceOf(e.GlobalCommandError),x.error instanceof e.GlobalCommandError&&expect(x.error.errorCode).toStrictEqual("5515"))}),it("should return void if status is success",()=>{const r=new o.SetExternalPluginCommand({payload:"",signature:""}),t=new e.ApduResponse({statusCode:Uint8Array.from([144,0]),data:Uint8Array.from([])});expect(r.parseResponse(t)).toStrictEqual((0,e.CommandResultFactory)({data:void 0}))})})});
|
|
7
7
|
//# sourceMappingURL=SetExternalPluginCommand.test.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../src/internal/app-binder/command/SetExternalPluginCommand.test.ts"],
|
|
4
|
-
"sourcesContent": ["import {\n ApduResponse,\n CommandResultFactory,\n GlobalCommandError,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { SetExternalPluginCommand } from \"@internal/app-binder/command/SetExternalPluginCommand\";\n\nimport { EthAppCommandError } from \"./utils/ethAppErrors\";\n\n/**\n * Test payload contains:\n * Length of plugin name : 08\n * Plugin Name : Paraswap\n * contract address: 0xdef171fe48cf0115b1d80b88dc8eab59176fee57\n * method selector: 0xa9059cbb\n */\nconst SET_EXTERNAL_PLUGIN_PAYLOAD = [\n 0x08, 0x50, 0x61, 0x72, 0x61, 0x73, 0x77, 0x61, 0x70, 0xde, 0xf1, 0x71, 0xfe,\n 0x48, 0xcf, 0x01, 0x15, 0xb1, 0xd8, 0x0b, 0x88, 0xdc, 0x8e, 0xab, 0x59, 0x17,\n 0x6f, 0xee, 0x57, 0xa9, 0x05, 0x9c, 0xbb,\n];\n// Public signature key: https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#set-external-plugin\nconst SET_EXTERNAL_PLUGIN_SIGNATURE = [\n 0x04, 0x82, 0xbb, 0xf2, 0xf3, 0x4f, 0x36, 0x7b, 0x2e, 0x5b, 0xc2, 0x18, 0x47,\n 0xb6, 0x56, 0x6f, 0x21, 0xf0, 0x97, 0x6b, 0x22, 0xd3, 0x38, 0x8a, 0x9a, 0x5e,\n 0x44, 0x6a, 0xc6, 0x2d, 0x25, 0xcf, 0x72, 0x5b, 0x62, 0xa2, 0x55, 0x5b, 0x2d,\n 0xd4, 0x64, 0xa4, 0xda, 0x0a, 0xb2, 0xf4, 0xd5, 0x06, 0x82, 0x05, 0x43, 0xaf,\n 0x1d, 0x24, 0x24, 0x70, 0xb1, 0xb1, 0xa9, 0x69, 0xa2, 0x75, 0x78, 0xf3, 0x53,\n];\nconst SET_EXTERNAL_PLUGIN_APDU = [\n 0xe0,\n 0x12,\n 0x00,\n 0x00,\n SET_EXTERNAL_PLUGIN_PAYLOAD.length + SET_EXTERNAL_PLUGIN_SIGNATURE.length,\n ...SET_EXTERNAL_PLUGIN_PAYLOAD,\n ...SET_EXTERNAL_PLUGIN_SIGNATURE,\n];\n\ndescribe(\"Set External plugin\", () => {\n describe(\"getApdu\", () => {\n it(\"should retrieve correct apdu\", () => {\n // given\n const command = new SetExternalPluginCommand({\n payload: SET_EXTERNAL_PLUGIN_PAYLOAD.map((x) =>\n x.toString(16).padStart(2, \"0\"),\n ).join(\"\"),\n signature: SET_EXTERNAL_PLUGIN_SIGNATURE.map((x) =>\n x.toString(16).padStart(2, \"0\"),\n ).join(\"\"),\n });\n // when\n const apdu = command.getApdu();\n // then\n expect(apdu.getRawApdu()).toStrictEqual(\n Uint8Array.from(SET_EXTERNAL_PLUGIN_APDU),\n );\n });\n });\n describe(\"parseResponse\", () => {\n it.each`\n apduResponseCode | errorCode\n ${Uint8Array.from([0x6a, 0x80])} | ${\"6a80\"}\n ${Uint8Array.from([0x69, 0x84])} | ${\"6984\"}\n ${Uint8Array.from([0x6d, 0x00])} | ${\"6d00\"}\n `(\n \"should return an error for the response status code $errorCode\",\n ({\n apduResponseCode,\n errorCode,\n }: Record<\"apduResponseCode\" | \"errorCode\", Uint8Array>) => {\n // GIVEN\n const response = new ApduResponse({\n data: Uint8Array.from([]),\n statusCode: apduResponseCode,\n });\n const command = new SetExternalPluginCommand({\n payload: \"\",\n signature: \"\",\n });\n // WHEN\n const result = command.parseResponse(response);\n // THEN\n expect(isSuccessCommandResult(result)).toBe(false);\n if (!isSuccessCommandResult(result)) {\n expect(result.error).toBeInstanceOf(EthAppCommandError);\n if (result.error instanceof EthAppCommandError)\n expect(result.error.errorCode).toStrictEqual(errorCode);\n }\n },\n );\n it(\"should return a global error\", () => {\n // given\n const command = new SetExternalPluginCommand({\n payload: \"\",\n signature: \"\",\n });\n // when\n const apduResponse = new ApduResponse({\n statusCode: Uint8Array.from([0x55, 0x15]),\n data: Uint8Array.from([]),\n });\n // then\n const result = command.parseResponse(apduResponse);\n expect(isSuccessCommandResult(result)).toBe(false);\n if (!isSuccessCommandResult(result)) {\n expect(result.error).toBeInstanceOf(GlobalCommandError);\n if (result.error instanceof GlobalCommandError)\n expect(result.error.errorCode).toStrictEqual(\"5515\");\n }\n });\n it(\"should return void if status is success\", () => {\n // given\n const command = new SetExternalPluginCommand({\n payload: \"\",\n signature: \"\",\n });\n // when\n const apduResponse = new ApduResponse({\n statusCode: Uint8Array.from([0x90, 0x00]),\n data: Uint8Array.from([]),\n });\n // then\n expect(command.parseResponse(apduResponse)).toStrictEqual(\n CommandResultFactory({ data: undefined }),\n );\n });\n });\n});\n"],
|
|
5
|
-
"mappings": "aAAA,IAAAA,EAKO,2CAEPC,EAAyC,iEAEzCC,EAAmC,gCASnC,MAAMC,EAA8B,CAClC,EAAM,GAAM,GAAM,IAAM,GAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IACxE,GAAM,IAAM,EAAM,GAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,IAAM,GAAM,GACxE,IAAM,IAAM,GAAM,IAAM,EAAM,IAAM,GACtC,EAEMC,EAAgC,CACpC,EAAM,IAAM,IAAM,IAAM,IAAM,GAAM,GAAM,IAAM,GAAM,GAAM,IAAM,GAAM,GACxE,IAAM,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,GAAM,IAAM,IAAM,GACxE,GAAM,IAAM,IAAM,GAAM,GAAM,IAAM,IAAM,GAAM,GAAM,IAAM,GAAM,GAAM,GACxE,IAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,EAAM,IAAM,EAAM,GAAM,IACxE,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,EAC1E,EACMC,EAA2B,CAC/B,IACA,GACA,EACA,EACAF,EAA4B,OAASC,EAA8B,OACnE,GAAGD,EACH,GAAGC,CACL,EAEA,SAAS,sBAAuB,IAAM,CACpC,SAAS,UAAW,IAAM,CACxB,GAAG,+BAAgC,IAAM,CAWvC,
|
|
6
|
-
"names": ["import_device_management_kit", "import_SetExternalPluginCommand", "import_ethAppErrors", "SET_EXTERNAL_PLUGIN_PAYLOAD", "SET_EXTERNAL_PLUGIN_SIGNATURE", "SET_EXTERNAL_PLUGIN_APDU", "apdu", "apduResponseCode", "errorCode", "response", "result", "
|
|
4
|
+
"sourcesContent": ["import {\n ApduResponse,\n CommandResultFactory,\n GlobalCommandError,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { SetExternalPluginCommand } from \"@internal/app-binder/command/SetExternalPluginCommand\";\n\nimport { EthAppCommandError } from \"./utils/ethAppErrors\";\n\n/**\n * Test payload contains:\n * Length of plugin name : 08\n * Plugin Name : Paraswap\n * contract address: 0xdef171fe48cf0115b1d80b88dc8eab59176fee57\n * method selector: 0xa9059cbb\n */\nconst SET_EXTERNAL_PLUGIN_PAYLOAD = [\n 0x08, 0x50, 0x61, 0x72, 0x61, 0x73, 0x77, 0x61, 0x70, 0xde, 0xf1, 0x71, 0xfe,\n 0x48, 0xcf, 0x01, 0x15, 0xb1, 0xd8, 0x0b, 0x88, 0xdc, 0x8e, 0xab, 0x59, 0x17,\n 0x6f, 0xee, 0x57, 0xa9, 0x05, 0x9c, 0xbb,\n];\n// Public signature key: https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#set-external-plugin\nconst SET_EXTERNAL_PLUGIN_SIGNATURE = [\n 0x04, 0x82, 0xbb, 0xf2, 0xf3, 0x4f, 0x36, 0x7b, 0x2e, 0x5b, 0xc2, 0x18, 0x47,\n 0xb6, 0x56, 0x6f, 0x21, 0xf0, 0x97, 0x6b, 0x22, 0xd3, 0x38, 0x8a, 0x9a, 0x5e,\n 0x44, 0x6a, 0xc6, 0x2d, 0x25, 0xcf, 0x72, 0x5b, 0x62, 0xa2, 0x55, 0x5b, 0x2d,\n 0xd4, 0x64, 0xa4, 0xda, 0x0a, 0xb2, 0xf4, 0xd5, 0x06, 0x82, 0x05, 0x43, 0xaf,\n 0x1d, 0x24, 0x24, 0x70, 0xb1, 0xb1, 0xa9, 0x69, 0xa2, 0x75, 0x78, 0xf3, 0x53,\n];\nconst SET_EXTERNAL_PLUGIN_APDU = [\n 0xe0,\n 0x12,\n 0x00,\n 0x00,\n SET_EXTERNAL_PLUGIN_PAYLOAD.length + SET_EXTERNAL_PLUGIN_SIGNATURE.length,\n ...SET_EXTERNAL_PLUGIN_PAYLOAD,\n ...SET_EXTERNAL_PLUGIN_SIGNATURE,\n];\n\ndescribe(\"Set External plugin\", () => {\n describe(\"name\", () => {\n it(\"should be 'setExternalPlugin'\", () => {\n const command = new SetExternalPluginCommand({ payload: \"\" });\n expect(command.name).toBe(\"setExternalPlugin\");\n });\n });\n\n describe(\"getApdu\", () => {\n it(\"should retrieve correct apdu\", () => {\n // given\n const command = new SetExternalPluginCommand({\n payload: SET_EXTERNAL_PLUGIN_PAYLOAD.map((x) =>\n x.toString(16).padStart(2, \"0\"),\n ).join(\"\"),\n signature: SET_EXTERNAL_PLUGIN_SIGNATURE.map((x) =>\n x.toString(16).padStart(2, \"0\"),\n ).join(\"\"),\n });\n // when\n const apdu = command.getApdu();\n // then\n expect(apdu.getRawApdu()).toStrictEqual(\n Uint8Array.from(SET_EXTERNAL_PLUGIN_APDU),\n );\n });\n });\n describe(\"parseResponse\", () => {\n it.each`\n apduResponseCode | errorCode\n ${Uint8Array.from([0x6a, 0x80])} | ${\"6a80\"}\n ${Uint8Array.from([0x69, 0x84])} | ${\"6984\"}\n ${Uint8Array.from([0x6d, 0x00])} | ${\"6d00\"}\n `(\n \"should return an error for the response status code $errorCode\",\n ({\n apduResponseCode,\n errorCode,\n }: Record<\"apduResponseCode\" | \"errorCode\", Uint8Array>) => {\n // GIVEN\n const response = new ApduResponse({\n data: Uint8Array.from([]),\n statusCode: apduResponseCode,\n });\n const command = new SetExternalPluginCommand({\n payload: \"\",\n signature: \"\",\n });\n // WHEN\n const result = command.parseResponse(response);\n // THEN\n expect(isSuccessCommandResult(result)).toBe(false);\n if (!isSuccessCommandResult(result)) {\n expect(result.error).toBeInstanceOf(EthAppCommandError);\n if (result.error instanceof EthAppCommandError)\n expect(result.error.errorCode).toStrictEqual(errorCode);\n }\n },\n );\n it(\"should return a global error\", () => {\n // given\n const command = new SetExternalPluginCommand({\n payload: \"\",\n signature: \"\",\n });\n // when\n const apduResponse = new ApduResponse({\n statusCode: Uint8Array.from([0x55, 0x15]),\n data: Uint8Array.from([]),\n });\n // then\n const result = command.parseResponse(apduResponse);\n expect(isSuccessCommandResult(result)).toBe(false);\n if (!isSuccessCommandResult(result)) {\n expect(result.error).toBeInstanceOf(GlobalCommandError);\n if (result.error instanceof GlobalCommandError)\n expect(result.error.errorCode).toStrictEqual(\"5515\");\n }\n });\n it(\"should return void if status is success\", () => {\n // given\n const command = new SetExternalPluginCommand({\n payload: \"\",\n signature: \"\",\n });\n // when\n const apduResponse = new ApduResponse({\n statusCode: Uint8Array.from([0x90, 0x00]),\n data: Uint8Array.from([]),\n });\n // then\n expect(command.parseResponse(apduResponse)).toStrictEqual(\n CommandResultFactory({ data: undefined }),\n );\n });\n });\n});\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["import_device_management_kit", "import_SetExternalPluginCommand", "import_ethAppErrors", "SET_EXTERNAL_PLUGIN_PAYLOAD", "SET_EXTERNAL_PLUGIN_SIGNATURE", "SET_EXTERNAL_PLUGIN_APDU", "command", "apdu", "apduResponseCode", "errorCode", "response", "result", "apduResponse"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var p=Object.defineProperty;var l=Object.getOwnPropertyDescriptor;var u=Object.getOwnPropertyNames;var i=Object.prototype.hasOwnProperty;var g=(e,r)=>{for(var t in r)p(e,t,{get:r[t],enumerable:!0})},A=(e,r,t,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let o of u(r))!i.call(e,o)&&o!==t&&p(e,o,{get:()=>r[o],enumerable:!(n=l(r,o))||n.enumerable});return e};var y=e=>A(p({},"__esModule",{value:!0}),e);var E={};g(E,{SetPluginCommand:()=>C});module.exports=y(E);var d=require("@ledgerhq/device-management-kit"),m=require("@ledgerhq/signer-utils"),s=require("purify-ts"),a=require("./utils/ethAppErrors");class C{constructor(r){this.args=r}name="setPlugin";errorHelper=new m.CommandErrorHelper(a.ETH_APP_ERRORS,a.EthAppCommandErrorFactory);getApdu(){const r={cla:224,ins:22,p1:0,p2:0};return new d.ApduBuilder(r).addHexaStringToData(this.args.payload).build()}parseResponse(r){return s.Maybe.fromNullable(this.errorHelper.getError(r)).orDefault((0,d.CommandResultFactory)({data:void 0}))}}0&&(module.exports={SetPluginCommand});
|
|
2
2
|
//# sourceMappingURL=SetPluginCommand.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../src/internal/app-binder/command/SetPluginCommand.ts"],
|
|
4
|
-
"sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#set-plugin\nimport {\n type Apdu,\n ApduBuilder,\n type ApduBuilderArgs,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n} from \"@ledgerhq/device-management-kit\";\nimport { CommandErrorHelper } from \"@ledgerhq/signer-utils\";\nimport { Maybe } from \"purify-ts\";\n\nimport {\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n type EthErrorCodes,\n} from \"./utils/ethAppErrors\";\n\nexport type SetPluginCommandArgs = {\n /**\n * The stringified hexa representation of the plugin signature.\n */\n payload: string;\n};\n\nexport class SetPluginCommand\n implements Command<void, SetPluginCommandArgs, EthErrorCodes>\n{\n private readonly errorHelper = new CommandErrorHelper<void, EthErrorCodes>(\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n );\n\n constructor(private readonly args: SetPluginCommandArgs) {}\n\n getApdu(): Apdu {\n const apduBuilderArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x16,\n p1: 0x00,\n p2: 0x00,\n };\n return new ApduBuilder(apduBuilderArgs)\n .addHexaStringToData(this.args.payload)\n .build();\n }\n\n parseResponse(response: ApduResponse): CommandResult<void, EthErrorCodes> {\n return Maybe.fromNullable(this.errorHelper.getError(response)).orDefault(\n CommandResultFactory({ data: undefined }),\n );\n }\n}\n"],
|
|
5
|
-
"mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,sBAAAE,IAAA,eAAAC,EAAAH,GACA,IAAAI,EAQO,2CACPC,EAAmC,kCACnCC,EAAsB,qBAEtBC,EAIO,gCASA,MAAML,CAEb,
|
|
4
|
+
"sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#set-plugin\nimport {\n type Apdu,\n ApduBuilder,\n type ApduBuilderArgs,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n} from \"@ledgerhq/device-management-kit\";\nimport { CommandErrorHelper } from \"@ledgerhq/signer-utils\";\nimport { Maybe } from \"purify-ts\";\n\nimport {\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n type EthErrorCodes,\n} from \"./utils/ethAppErrors\";\n\nexport type SetPluginCommandArgs = {\n /**\n * The stringified hexa representation of the plugin signature.\n */\n payload: string;\n};\n\nexport class SetPluginCommand\n implements Command<void, SetPluginCommandArgs, EthErrorCodes>\n{\n readonly name = \"setPlugin\";\n private readonly errorHelper = new CommandErrorHelper<void, EthErrorCodes>(\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n );\n\n constructor(private readonly args: SetPluginCommandArgs) {}\n\n getApdu(): Apdu {\n const apduBuilderArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x16,\n p1: 0x00,\n p2: 0x00,\n };\n return new ApduBuilder(apduBuilderArgs)\n .addHexaStringToData(this.args.payload)\n .build();\n }\n\n parseResponse(response: ApduResponse): CommandResult<void, EthErrorCodes> {\n return Maybe.fromNullable(this.errorHelper.getError(response)).orDefault(\n CommandResultFactory({ data: undefined }),\n );\n }\n}\n"],
|
|
5
|
+
"mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,sBAAAE,IAAA,eAAAC,EAAAH,GACA,IAAAI,EAQO,2CACPC,EAAmC,kCACnCC,EAAsB,qBAEtBC,EAIO,gCASA,MAAML,CAEb,CAOE,YAA6BM,EAA4B,CAA5B,UAAAA,CAA6B,CANjD,KAAO,YACC,YAAc,IAAI,qBACjC,iBACA,2BACF,EAIA,SAAgB,CACd,MAAMC,EAAmC,CACvC,IAAK,IACL,IAAK,GACL,GAAI,EACJ,GAAI,CACN,EACA,OAAO,IAAI,cAAYA,CAAe,EACnC,oBAAoB,KAAK,KAAK,OAAO,EACrC,MAAM,CACX,CAEA,cAAcC,EAA4D,CACxE,OAAO,QAAM,aAAa,KAAK,YAAY,SAASA,CAAQ,CAAC,EAAE,aAC7D,wBAAqB,CAAE,KAAM,MAAU,CAAC,CAC1C,CACF,CACF",
|
|
6
6
|
"names": ["SetPluginCommand_exports", "__export", "SetPluginCommand", "__toCommonJS", "import_device_management_kit", "import_signer_utils", "import_purify_ts", "import_ethAppErrors", "args", "apduBuilderArgs", "response"]
|
|
7
7
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var e=require("@ledgerhq/device-management-kit"),t=require("./utils/ethAppErrors"),c=require("./SetPluginCommand");const s="010106455243373231c5b07a55501014f36ec5d39d950a321439f6dd7642842e0e0000000000000001020147304502206d9f515916283e08fa6cdab205668c0739c558dcd6691a69ce74cd89fbc2cc6e022100c28c17b058e6d453570a58d69ff62042037dc61149af2f5161d5c36fdc5dc301",a=Uint8Array.from([224,22,0,0,115,1,1,6,69,82,67,55,50,49,197,176,122,85,80,16,20,243,110,197,211,157,149,10,50,20,57,246,221,118,66,132,46,14,0,0,0,0,0,0,0,1,2,1,71,48,69,2,32,109,159,81,89,22,40,62,8,250,108,218,178,5,102,140,7,57,197,88,220,214,105,26,105,206,116,205,137,251,194,204,110,2,33,0,194,140,23,176,88,230,212,83,87,10,88,214,159,246,32,66,3,125,198,17,73,175,47,81,97,213,195,111,220,93,195,1]);describe("SetPluginCommand",()=>{describe("name",()=>{it("should be 'setPlugin'",()=>{const x=new c.SetPluginCommand({payload:""});expect(x.name).toBe("setPlugin")})}),describe("getApdu",()=>{it("returns the correct APDU",()=>{const x={payload:s},o=new c.SetPluginCommand(x).getApdu();expect(o.getRawApdu()).toStrictEqual(a)})}),describe("parseResponse",()=>{it.each`
|
|
2
2
|
apduResponseCode | errorCode
|
|
3
3
|
${Uint8Array.from([105,132])} | ${"6984"}
|
|
4
4
|
${Uint8Array.from([109,0])} | ${"6d00"}
|
|
5
|
-
`("should return an error for the response status code $errorCode",({apduResponseCode:
|
|
5
|
+
`("should return an error for the response status code $errorCode",({apduResponseCode:x,errorCode:d})=>{const o=new e.ApduResponse({data:Uint8Array.from([]),statusCode:x}),r=new c.SetPluginCommand({payload:""}).parseResponse(o);expect((0,e.isSuccessCommandResult)(r)).toBe(!1),(0,e.isSuccessCommandResult)(r)||(expect(r.error).toBeInstanceOf(t.EthAppCommandError),r.error instanceof t.EthAppCommandError&&expect(r.error.errorCode).toStrictEqual(d))}),it("should return success if the response status code is correct",()=>{const x={data:Buffer.from([]),statusCode:Buffer.from([144,0])},o=new c.SetPluginCommand({payload:""}).parseResponse(x);expect((0,e.isSuccessCommandResult)(o)).toBe(!0)})})});
|
|
6
6
|
//# sourceMappingURL=SetPluginCommand.test.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../src/internal/app-binder/command/SetPluginCommand.test.ts"],
|
|
4
|
-
"sourcesContent": ["import {\n ApduResponse,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { EthAppCommandError } from \"./utils/ethAppErrors\";\nimport {\n SetPluginCommand,\n type SetPluginCommandArgs,\n} from \"./SetPluginCommand\";\n\nconst SET_PLUGIN_COMMAND_PAYLOAD =\n \"010106455243373231c5b07a55501014f36ec5d39d950a321439f6dd7642842e0e0000000000000001020147304502206d9f515916283e08fa6cdab205668c0739c558dcd6691a69ce74cd89fbc2cc6e022100c28c17b058e6d453570a58d69ff62042037dc61149af2f5161d5c36fdc5dc301\";\n\nconst SET_PLUGIN_COMMAND_APDU = Uint8Array.from([\n 0xe0, 0x16, 0x00, 0x00, 0x73, 0x01, 0x01, 0x06, 0x45, 0x52, 0x43, 0x37, 0x32,\n 0x31, 0xc5, 0xb0, 0x7a, 0x55, 0x50, 0x10, 0x14, 0xf3, 0x6e, 0xc5, 0xd3, 0x9d,\n 0x95, 0x0a, 0x32, 0x14, 0x39, 0xf6, 0xdd, 0x76, 0x42, 0x84, 0x2e, 0x0e, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x01, 0x47, 0x30, 0x45, 0x02,\n 0x20, 0x6d, 0x9f, 0x51, 0x59, 0x16, 0x28, 0x3e, 0x08, 0xfa, 0x6c, 0xda, 0xb2,\n 0x05, 0x66, 0x8c, 0x07, 0x39, 0xc5, 0x58, 0xdc, 0xd6, 0x69, 0x1a, 0x69, 0xce,\n 0x74, 0xcd, 0x89, 0xfb, 0xc2, 0xcc, 0x6e, 0x02, 0x21, 0x00, 0xc2, 0x8c, 0x17,\n 0xb0, 0x58, 0xe6, 0xd4, 0x53, 0x57, 0x0a, 0x58, 0xd6, 0x9f, 0xf6, 0x20, 0x42,\n 0x03, 0x7d, 0xc6, 0x11, 0x49, 0xaf, 0x2f, 0x51, 0x61, 0xd5, 0xc3, 0x6f, 0xdc,\n 0x5d, 0xc3, 0x01,\n]);\n\ndescribe(\"SetPluginCommand\", () => {\n describe(\"getApdu\", () => {\n it(\"returns the correct APDU\", () => {\n // GIVEN\n const args: SetPluginCommandArgs = {\n payload: SET_PLUGIN_COMMAND_PAYLOAD,\n };\n // WHEN\n const command = new SetPluginCommand(args);\n const apdu = command.getApdu();\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(SET_PLUGIN_COMMAND_APDU);\n });\n });\n describe(\"parseResponse\", () => {\n it.each`\n apduResponseCode | errorCode\n ${Uint8Array.from([0x69, 0x84])} | ${\"6984\"}\n ${Uint8Array.from([0x6d, 0x00])} | ${\"6d00\"}\n `(\n \"should return an error for the response status code $errorCode\",\n ({\n apduResponseCode,\n errorCode,\n }: Record<\"apduResponseCode\" | \"errorCode\", Uint8Array>) => {\n // GIVEN\n const response = new ApduResponse({\n data: Uint8Array.from([]),\n statusCode: apduResponseCode,\n });\n const command = new SetPluginCommand({ payload: \"\" });\n // WHEN\n const result = command.parseResponse(response);\n // THEN\n expect(isSuccessCommandResult(result)).toBe(false);\n if (!isSuccessCommandResult(result)) {\n expect(result.error).toBeInstanceOf(EthAppCommandError);\n if (result.error instanceof EthAppCommandError)\n expect(result.error.errorCode).toStrictEqual(errorCode);\n }\n },\n );\n\n it(\"should return success if the response status code is correct\", () => {\n // GIVEN\n const response: ApduResponse = {\n data: Buffer.from([]),\n statusCode: Buffer.from([0x90, 0x00]), // Success status code\n };\n // WHEN\n const command = new SetPluginCommand({ payload: \"\" });\n const result = command.parseResponse(response);\n // THEN\n expect(isSuccessCommandResult(result)).toBe(true);\n });\n });\n});\n"],
|
|
5
|
-
"mappings": "aAAA,IAAAA,EAGO,2CAEPC,EAAmC,gCACnCC,EAGO,8BAEP,MAAMC,EACJ,yOAEIC,EAA0B,WAAW,KAAK,CAC9C,IAAM,GAAM,EAAM,EAAM,IAAM,EAAM,EAAM,EAAM,GAAM,GAAM,GAAM,GAAM,GACxE,GAAM,IAAM,IAAM,IAAM,GAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IACxE,IAAM,GAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,GAAM,GAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,GAAM,GAAM,GAAM,EACxE,GAAM,IAAM,IAAM,GAAM,GAAM,GAAM,GAAM,GAAM,EAAM,IAAM,IAAM,IAAM,IACxE,EAAM,IAAM,IAAM,EAAM,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IACxE,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,EAAM,GAAM,EAAM,IAAM,IAAM,GACxE,IAAM,GAAM,IAAM,IAAM,GAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,GAAM,GACxE,EAAM,IAAM,IAAM,GAAM,GAAM,IAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IACxE,GAAM,IAAM,CACd,CAAC,EAED,SAAS,mBAAoB,IAAM,CACjC,SAAS,UAAW,IAAM,CACxB,GAAG,2BAA4B,IAAM,CAEnC,MAAMC,EAA6B,CACjC,
|
|
6
|
-
"names": ["import_device_management_kit", "import_ethAppErrors", "import_SetPluginCommand", "SET_PLUGIN_COMMAND_PAYLOAD", "SET_PLUGIN_COMMAND_APDU", "args", "apdu", "apduResponseCode", "errorCode", "response", "result"]
|
|
4
|
+
"sourcesContent": ["import {\n ApduResponse,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { EthAppCommandError } from \"./utils/ethAppErrors\";\nimport {\n SetPluginCommand,\n type SetPluginCommandArgs,\n} from \"./SetPluginCommand\";\n\nconst SET_PLUGIN_COMMAND_PAYLOAD =\n \"010106455243373231c5b07a55501014f36ec5d39d950a321439f6dd7642842e0e0000000000000001020147304502206d9f515916283e08fa6cdab205668c0739c558dcd6691a69ce74cd89fbc2cc6e022100c28c17b058e6d453570a58d69ff62042037dc61149af2f5161d5c36fdc5dc301\";\n\nconst SET_PLUGIN_COMMAND_APDU = Uint8Array.from([\n 0xe0, 0x16, 0x00, 0x00, 0x73, 0x01, 0x01, 0x06, 0x45, 0x52, 0x43, 0x37, 0x32,\n 0x31, 0xc5, 0xb0, 0x7a, 0x55, 0x50, 0x10, 0x14, 0xf3, 0x6e, 0xc5, 0xd3, 0x9d,\n 0x95, 0x0a, 0x32, 0x14, 0x39, 0xf6, 0xdd, 0x76, 0x42, 0x84, 0x2e, 0x0e, 0x00,\n 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x01, 0x47, 0x30, 0x45, 0x02,\n 0x20, 0x6d, 0x9f, 0x51, 0x59, 0x16, 0x28, 0x3e, 0x08, 0xfa, 0x6c, 0xda, 0xb2,\n 0x05, 0x66, 0x8c, 0x07, 0x39, 0xc5, 0x58, 0xdc, 0xd6, 0x69, 0x1a, 0x69, 0xce,\n 0x74, 0xcd, 0x89, 0xfb, 0xc2, 0xcc, 0x6e, 0x02, 0x21, 0x00, 0xc2, 0x8c, 0x17,\n 0xb0, 0x58, 0xe6, 0xd4, 0x53, 0x57, 0x0a, 0x58, 0xd6, 0x9f, 0xf6, 0x20, 0x42,\n 0x03, 0x7d, 0xc6, 0x11, 0x49, 0xaf, 0x2f, 0x51, 0x61, 0xd5, 0xc3, 0x6f, 0xdc,\n 0x5d, 0xc3, 0x01,\n]);\n\ndescribe(\"SetPluginCommand\", () => {\n describe(\"name\", () => {\n it(\"should be 'setPlugin'\", () => {\n const command = new SetPluginCommand({ payload: \"\" });\n expect(command.name).toBe(\"setPlugin\");\n });\n });\n\n describe(\"getApdu\", () => {\n it(\"returns the correct APDU\", () => {\n // GIVEN\n const args: SetPluginCommandArgs = {\n payload: SET_PLUGIN_COMMAND_PAYLOAD,\n };\n // WHEN\n const command = new SetPluginCommand(args);\n const apdu = command.getApdu();\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(SET_PLUGIN_COMMAND_APDU);\n });\n });\n describe(\"parseResponse\", () => {\n it.each`\n apduResponseCode | errorCode\n ${Uint8Array.from([0x69, 0x84])} | ${\"6984\"}\n ${Uint8Array.from([0x6d, 0x00])} | ${\"6d00\"}\n `(\n \"should return an error for the response status code $errorCode\",\n ({\n apduResponseCode,\n errorCode,\n }: Record<\"apduResponseCode\" | \"errorCode\", Uint8Array>) => {\n // GIVEN\n const response = new ApduResponse({\n data: Uint8Array.from([]),\n statusCode: apduResponseCode,\n });\n const command = new SetPluginCommand({ payload: \"\" });\n // WHEN\n const result = command.parseResponse(response);\n // THEN\n expect(isSuccessCommandResult(result)).toBe(false);\n if (!isSuccessCommandResult(result)) {\n expect(result.error).toBeInstanceOf(EthAppCommandError);\n if (result.error instanceof EthAppCommandError)\n expect(result.error.errorCode).toStrictEqual(errorCode);\n }\n },\n );\n\n it(\"should return success if the response status code is correct\", () => {\n // GIVEN\n const response: ApduResponse = {\n data: Buffer.from([]),\n statusCode: Buffer.from([0x90, 0x00]), // Success status code\n };\n // WHEN\n const command = new SetPluginCommand({ payload: \"\" });\n const result = command.parseResponse(response);\n // THEN\n expect(isSuccessCommandResult(result)).toBe(true);\n });\n });\n});\n"],
|
|
5
|
+
"mappings": "aAAA,IAAAA,EAGO,2CAEPC,EAAmC,gCACnCC,EAGO,8BAEP,MAAMC,EACJ,yOAEIC,EAA0B,WAAW,KAAK,CAC9C,IAAM,GAAM,EAAM,EAAM,IAAM,EAAM,EAAM,EAAM,GAAM,GAAM,GAAM,GAAM,GACxE,GAAM,IAAM,IAAM,IAAM,GAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,IACxE,IAAM,GAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,GAAM,GAAM,EACxE,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,EAAM,GAAM,GAAM,GAAM,EACxE,GAAM,IAAM,IAAM,GAAM,GAAM,GAAM,GAAM,GAAM,EAAM,IAAM,IAAM,IAAM,IACxE,EAAM,IAAM,IAAM,EAAM,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAAM,IACxE,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,IAAM,EAAM,GAAM,EAAM,IAAM,IAAM,GACxE,IAAM,GAAM,IAAM,IAAM,GAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,GAAM,GACxE,EAAM,IAAM,IAAM,GAAM,GAAM,IAAM,GAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IACxE,GAAM,IAAM,CACd,CAAC,EAED,SAAS,mBAAoB,IAAM,CACjC,SAAS,OAAQ,IAAM,CACrB,GAAG,wBAAyB,IAAM,CAChC,MAAMC,EAAU,IAAI,mBAAiB,CAAE,QAAS,EAAG,CAAC,EACpD,OAAOA,EAAQ,IAAI,EAAE,KAAK,WAAW,CACvC,CAAC,CACH,CAAC,EAED,SAAS,UAAW,IAAM,CACxB,GAAG,2BAA4B,IAAM,CAEnC,MAAMC,EAA6B,CACjC,QAASH,CACX,EAGMI,EADU,IAAI,mBAAiBD,CAAI,EACpB,QAAQ,EAE7B,OAAOC,EAAK,WAAW,CAAC,EAAE,cAAcH,CAAuB,CACjE,CAAC,CACH,CAAC,EACD,SAAS,gBAAiB,IAAM,CAC9B,GAAG;AAAA;AAAA,QAEC,WAAW,KAAK,CAAC,IAAM,GAAI,CAAC,CAAC,MAAM,MAAM;AAAA,QACzC,WAAW,KAAK,CAAC,IAAM,CAAI,CAAC,CAAC,MAAM,MAAM;AAAA,MAE3C,iEACA,CAAC,CACC,iBAAAI,EACA,UAAAC,CACF,IAA4D,CAE1D,MAAMC,EAAW,IAAI,eAAa,CAChC,KAAM,WAAW,KAAK,CAAC,CAAC,EACxB,WAAYF,CACd,CAAC,EAGKG,EAFU,IAAI,mBAAiB,CAAE,QAAS,EAAG,CAAC,EAE7B,cAAcD,CAAQ,EAE7C,UAAO,0BAAuBC,CAAM,CAAC,EAAE,KAAK,EAAK,KAC5C,0BAAuBA,CAAM,IAChC,OAAOA,EAAO,KAAK,EAAE,eAAe,oBAAkB,EAClDA,EAAO,iBAAiB,sBAC1B,OAAOA,EAAO,MAAM,SAAS,EAAE,cAAcF,CAAS,EAE5D,CACF,EAEA,GAAG,+DAAgE,IAAM,CAEvE,MAAMC,EAAyB,CAC7B,KAAM,OAAO,KAAK,CAAC,CAAC,EACpB,WAAY,OAAO,KAAK,CAAC,IAAM,CAAI,CAAC,CACtC,EAGMC,EADU,IAAI,mBAAiB,CAAE,QAAS,EAAG,CAAC,EAC7B,cAAcD,CAAQ,EAE7C,UAAO,0BAAuBC,CAAM,CAAC,EAAE,KAAK,EAAI,CAClD,CAAC,CACH,CAAC,CACH,CAAC",
|
|
6
|
+
"names": ["import_device_management_kit", "import_ethAppErrors", "import_SetPluginCommand", "SET_PLUGIN_COMMAND_PAYLOAD", "SET_PLUGIN_COMMAND_APDU", "command", "args", "apdu", "apduResponseCode", "errorCode", "response", "result"]
|
|
7
7
|
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var d=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var g=Object.getOwnPropertyNames;var A=Object.prototype.hasOwnProperty;var E=(e,r)=>{for(var o in r)d(e,o,{get:r[o],enumerable:!0})},l=(e,r,o,i)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of g(r))!A.call(e,n)&&n!==o&&d(e,n,{get:()=>r[n],enumerable:!(i=p(r,n))||i.enumerable});return e};var h=e=>l(d({},"__esModule",{value:!0}),e);var S={};E(S,{SignEIP7702AuthorizationCommand:()=>c});module.exports=h(S);var t=require("@ledgerhq/device-management-kit"),u=require("@ledgerhq/signer-utils"),a=require("purify-ts"),s=require("./utils/ethAppErrors");const y=32,C=32;class c{name="signEIP7702Authorization";args;errorHelper=new u.CommandErrorHelper(s.ETH_APP_ERRORS,s.EthAppCommandErrorFactory);constructor(r){this.args=r}getApdu(){const{data:r,isFirstChunk:o}=this.args,i={cla:224,ins:52,p1:o?1:0,p2:0};return new t.ApduBuilder(i).addBufferToData(r).build()}parseResponse(r){return a.Maybe.fromNullable(this.errorHelper.getError(r)).orDefaultLazy(()=>{const o=new t.ApduParser(r),i=o.extract8BitUInt();if(i===void 0)return(0,t.CommandResultFactory)({data:a.Nothing});const n=o.encodeToHexaString(o.extractFieldByLength(y),!0);if(!n)return(0,t.CommandResultFactory)({error:new t.InvalidStatusWordError("R is missing")});const m=o.encodeToHexaString(o.extractFieldByLength(C),!0);return m?(0,t.CommandResultFactory)({data:(0,a.Just)({r:n,s:m,v:i})}):(0,t.CommandResultFactory)({error:new t.InvalidStatusWordError("S is missing")})})}}0&&(module.exports={SignEIP7702AuthorizationCommand});
|
|
2
|
+
//# sourceMappingURL=SignAuthorizationDelegationCommand.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../src/internal/app-binder/command/SignAuthorizationDelegationCommand.ts"],
|
|
4
|
+
"sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#sign-eth-personal-message\nimport {\n type Apdu,\n ApduBuilder,\n type ApduBuilderArgs,\n ApduParser,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\nimport { CommandErrorHelper } from \"@ledgerhq/signer-utils\";\nimport { Just, Maybe, Nothing } from \"purify-ts\";\n\nimport { type Signature } from \"@api/model/Signature\";\n\nimport {\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n type EthErrorCodes,\n} from \"./utils/ethAppErrors\";\n\nconst R_LENGTH = 32;\nconst S_LENGTH = 32;\n\nexport type SignEIP7702AuthorizationCommandArgs = {\n /**\n * The data to sign in max 255 bytes chunks\n * Data is a concatenation of the following:\n * - Derivation path length (1 byte)\n * - Derivation path (4 bytes per element)\n * - Nonce (4 bytes)\n * - Chain ID (4 bytes)\n * - Address (20 bytes)\n */\n readonly data: Uint8Array;\n /**\n * If this is the first chunk of the message\n */\n readonly isFirstChunk: boolean;\n};\n\nexport type SignEIP7702AuthorizationCommandResponse = Maybe<Signature>;\n\nexport class SignEIP7702AuthorizationCommand\n implements\n Command<\n SignEIP7702AuthorizationCommandResponse,\n SignEIP7702AuthorizationCommandArgs,\n EthErrorCodes\n >\n{\n readonly name = \"signEIP7702Authorization\";\n readonly args: SignEIP7702AuthorizationCommandArgs;\n private readonly errorHelper = new CommandErrorHelper<\n SignEIP7702AuthorizationCommandResponse,\n EthErrorCodes\n >(ETH_APP_ERRORS, EthAppCommandErrorFactory);\n\n constructor(args: SignEIP7702AuthorizationCommandArgs) {\n this.args = args;\n }\n\n getApdu(): Apdu {\n const { data, isFirstChunk } = this.args;\n const signEIP7702AuthorizationArgs: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x34,\n p1: isFirstChunk ? 0x01 : 0x00,\n p2: 0x00,\n };\n\n return new ApduBuilder(signEIP7702AuthorizationArgs)\n .addBufferToData(data)\n .build();\n }\n\n parseResponse(\n apduResponse: ApduResponse,\n ): CommandResult<SignEIP7702AuthorizationCommandResponse, EthErrorCodes> {\n return Maybe.fromNullable(\n this.errorHelper.getError(apduResponse),\n ).orDefaultLazy(() => {\n const parser = new ApduParser(apduResponse);\n\n // The data is returned only for the last chunk\n const v = parser.extract8BitUInt();\n if (v === undefined) {\n return CommandResultFactory({ data: Nothing });\n }\n\n const r = parser.encodeToHexaString(\n parser.extractFieldByLength(R_LENGTH),\n true,\n );\n if (!r) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\"R is missing\"),\n });\n }\n\n const s = parser.encodeToHexaString(\n parser.extractFieldByLength(S_LENGTH),\n true,\n );\n if (!s) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\"S is missing\"),\n });\n }\n\n return CommandResultFactory({\n data: Just({\n r,\n s,\n v,\n }),\n });\n });\n }\n}\n"],
|
|
5
|
+
"mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,qCAAAE,IAAA,eAAAC,EAAAH,GACA,IAAAI,EAUO,2CACPC,EAAmC,kCACnCC,EAAqC,qBAIrCC,EAIO,gCAEP,MAAMC,EAAW,GACXC,EAAW,GAqBV,MAAMP,CAOb,CACW,KAAO,2BACP,KACQ,YAAc,IAAI,qBAGjC,iBAAgB,2BAAyB,EAE3C,YAAYQ,EAA2C,CACrD,KAAK,KAAOA,CACd,CAEA,SAAgB,CACd,KAAM,CAAE,KAAAC,EAAM,aAAAC,CAAa,EAAI,KAAK,KAC9BC,EAAgD,CACpD,IAAK,IACL,IAAK,GACL,GAAID,EAAe,EAAO,EAC1B,GAAI,CACN,EAEA,OAAO,IAAI,cAAYC,CAA4B,EAChD,gBAAgBF,CAAI,EACpB,MAAM,CACX,CAEA,cACEG,EACuE,CACvE,OAAO,QAAM,aACX,KAAK,YAAY,SAASA,CAAY,CACxC,EAAE,cAAc,IAAM,CACpB,MAAMC,EAAS,IAAI,aAAWD,CAAY,EAGpCE,EAAID,EAAO,gBAAgB,EACjC,GAAIC,IAAM,OACR,SAAO,wBAAqB,CAAE,KAAM,SAAQ,CAAC,EAG/C,MAAMC,EAAIF,EAAO,mBACfA,EAAO,qBAAqBP,CAAQ,EACpC,EACF,EACA,GAAI,CAACS,EACH,SAAO,wBAAqB,CAC1B,MAAO,IAAI,yBAAuB,cAAc,CAClD,CAAC,EAGH,MAAMC,EAAIH,EAAO,mBACfA,EAAO,qBAAqBN,CAAQ,EACpC,EACF,EACA,OAAKS,KAME,wBAAqB,CAC1B,QAAM,QAAK,CACT,EAAAD,EACA,EAAAC,EACA,EAAAF,CACF,CAAC,CACH,CAAC,KAXQ,wBAAqB,CAC1B,MAAO,IAAI,yBAAuB,cAAc,CAClD,CAAC,CAUL,CAAC,CACH,CACF",
|
|
6
|
+
"names": ["SignAuthorizationDelegationCommand_exports", "__export", "SignEIP7702AuthorizationCommand", "__toCommonJS", "import_device_management_kit", "import_signer_utils", "import_purify_ts", "import_ethAppErrors", "R_LENGTH", "S_LENGTH", "args", "data", "isFirstChunk", "signEIP7702AuthorizationArgs", "apduResponse", "parser", "v", "r", "s"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var s=require("@ledgerhq/device-management-kit"),o=require("purify-ts"),r=require("./SignAuthorizationDelegationCommand");const a=Uint8Array.from([224,52,1,0,8,0,6,76,101,100,103,101,114]),c=Uint8Array.from([224,52,0,0,8,0,6,76,101,100,103,101,114]),x=new Uint8Array([27,151,164,202,143,105,70,51,89,38,1,245,162,62,11,204,85,60,157,10,144,211,163,66,45,87,85,8,169,40,152,185,110,105,80,208,46,116,233,193,2,193,100,162,37,83,48,130,202,189,216,144,239,196,99,246,127,96,206,254,140,63,135,207,206]);describe("SignEIP7702AuthorizationCommand",()=>{describe("name",()=>{it("should be 'signEIP7702Authorization'",()=>{const t=new r.SignEIP7702AuthorizationCommand({data:new Uint8Array,isFirstChunk:!0});expect(t.name).toBe("signEIP7702Authorization")})}),describe("getApdu",()=>{it("should return the first chunk raw APDU",()=>{const t={data:a.slice(5),isFirstChunk:!0},e=new r.SignEIP7702AuthorizationCommand(t).getApdu();expect(e.getRawApdu()).toStrictEqual(a)}),it("should return the next chunk raw APDU",()=>{const t={data:a.slice(5),isFirstChunk:!1},e=new r.SignEIP7702AuthorizationCommand(t).getApdu();expect(e.getRawApdu()).toStrictEqual(c)})}),describe("parseResponse",()=>{it("should return an error if the response status code is invalid",()=>{const t={data:Buffer.from([]),statusCode:Buffer.from([106,128])},e=new r.SignEIP7702AuthorizationCommand({data:Uint8Array.from([]),isFirstChunk:!0}).parseResponse(t);expect((0,s.isSuccessCommandResult)(e)).toBe(!1)}),it("should return success without result for first chunk",()=>{const t={statusCode:Buffer.from([144,0]),data:Buffer.from([])},e=new r.SignEIP7702AuthorizationCommand({data:Uint8Array.from([]),isFirstChunk:!0}).parseResponse(t);expect(e).toStrictEqual((0,s.CommandResultFactory)({data:o.Nothing}))}),it("should return success if the response signature is valid",()=>{const t={statusCode:Buffer.from([144,0]),data:x},e=new r.SignEIP7702AuthorizationCommand({data:Uint8Array.from([]),isFirstChunk:!0}).parseResponse(t);expect(e).toStrictEqual((0,s.CommandResultFactory)({data:(0,o.Just)({r:"0x97a4ca8f694633592601f5a23e0bcc553c9d0a90d3a3422d575508a92898b96e",s:"0x6950d02e74e9c102c164a225533082cabdd890efc463f67f60cefe8c3f87cfce",v:27})}))}),it("should return an error if r is missing",()=>{const t={statusCode:Buffer.from([144,0]),data:x.slice(0,32)},e=new r.SignEIP7702AuthorizationCommand({data:Uint8Array.from([]),isFirstChunk:!0}).parseResponse(t);expect(e).toStrictEqual((0,s.CommandResultFactory)({error:new s.InvalidStatusWordError("R is missing")}))}),it("should return an error if s is missing",()=>{const t={statusCode:Buffer.from([144,0]),data:x.slice(0,64)},e=new r.SignEIP7702AuthorizationCommand({data:Uint8Array.from([]),isFirstChunk:!0}).parseResponse(t);expect(e).toStrictEqual((0,s.CommandResultFactory)({error:new s.InvalidStatusWordError("S is missing")}))})})});
|
|
2
|
+
//# sourceMappingURL=SignAuthorizationDelegationCommand.test.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../src/internal/app-binder/command/SignAuthorizationDelegationCommand.test.ts"],
|
|
4
|
+
"sourcesContent": ["import {\n type ApduResponse,\n CommandResultFactory,\n InvalidStatusWordError,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\nimport { Just, Nothing } from \"purify-ts\";\n\nimport {\n SignEIP7702AuthorizationCommand,\n type SignEIP7702AuthorizationCommandArgs,\n} from \"./SignAuthorizationDelegationCommand\";\n\nconst FIRST_CHUNK_APDU = Uint8Array.from([\n 0xe0, 0x34, 0x01, 0x00, 0x08, 0x00, 0x06, 0x4c, 0x65, 0x64, 0x67, 0x65, 0x72,\n]);\n\nconst NEXT_CHUNK_APDU = Uint8Array.from([\n 0xe0, 0x34, 0x00, 0x00, 0x08, 0x00, 0x06, 0x4c, 0x65, 0x64, 0x67, 0x65, 0x72,\n]);\n\nconst SUCCESS_RESPONSE = new Uint8Array([\n 0x1b, 0x97, 0xa4, 0xca, 0x8f, 0x69, 0x46, 0x33, 0x59, 0x26, 0x01, 0xf5, 0xa2,\n 0x3e, 0x0b, 0xcc, 0x55, 0x3c, 0x9d, 0x0a, 0x90, 0xd3, 0xa3, 0x42, 0x2d, 0x57,\n 0x55, 0x08, 0xa9, 0x28, 0x98, 0xb9, 0x6e, 0x69, 0x50, 0xd0, 0x2e, 0x74, 0xe9,\n 0xc1, 0x02, 0xc1, 0x64, 0xa2, 0x25, 0x53, 0x30, 0x82, 0xca, 0xbd, 0xd8, 0x90,\n 0xef, 0xc4, 0x63, 0xf6, 0x7f, 0x60, 0xce, 0xfe, 0x8c, 0x3f, 0x87, 0xcf, 0xce,\n]);\n\ndescribe(\"SignEIP7702AuthorizationCommand\", () => {\n describe(\"name\", () => {\n it(\"should be 'signEIP7702Authorization'\", () => {\n const command = new SignEIP7702AuthorizationCommand({\n data: new Uint8Array(),\n isFirstChunk: true,\n });\n expect(command.name).toBe(\"signEIP7702Authorization\");\n });\n });\n\n describe(\"getApdu\", () => {\n it(\"should return the first chunk raw APDU\", () => {\n // GIVEN\n const args: SignEIP7702AuthorizationCommandArgs = {\n data: FIRST_CHUNK_APDU.slice(5),\n isFirstChunk: true,\n };\n // WHEN\n const command = new SignEIP7702AuthorizationCommand(args);\n const apdu = command.getApdu();\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(FIRST_CHUNK_APDU);\n });\n\n it(\"should return the next chunk raw APDU\", () => {\n // GIVEN\n const args: SignEIP7702AuthorizationCommandArgs = {\n data: FIRST_CHUNK_APDU.slice(5),\n isFirstChunk: false,\n };\n // WHEN\n const command = new SignEIP7702AuthorizationCommand(args);\n const apdu = command.getApdu();\n // THEN\n expect(apdu.getRawApdu()).toStrictEqual(NEXT_CHUNK_APDU);\n });\n });\n\n describe(\"parseResponse\", () => {\n it(\"should return an error if the response status code is invalid\", () => {\n // GIVEN\n const response: ApduResponse = {\n data: Buffer.from([]),\n statusCode: Buffer.from([0x6a, 0x80]), // Invalid status code\n };\n // WHEN\n const command = new SignEIP7702AuthorizationCommand({\n data: Uint8Array.from([]),\n isFirstChunk: true,\n });\n const result = command.parseResponse(response);\n // THEN\n expect(isSuccessCommandResult(result)).toBe(false);\n });\n\n it(\"should return success without result for first chunk\", () => {\n // GIVEN\n const response: ApduResponse = {\n statusCode: Buffer.from([0x90, 0x00]), // Success status code\n data: Buffer.from([]),\n };\n // WHEN\n const command = new SignEIP7702AuthorizationCommand({\n data: Uint8Array.from([]),\n isFirstChunk: true,\n });\n const result = command.parseResponse(response);\n // THEN\n expect(result).toStrictEqual(\n CommandResultFactory({\n data: Nothing,\n }),\n );\n });\n\n it(\"should return success if the response signature is valid\", () => {\n // GIVEN\n const response: ApduResponse = {\n statusCode: Buffer.from([0x90, 0x00]), // Success status code\n data: SUCCESS_RESPONSE,\n };\n // WHEN\n const command = new SignEIP7702AuthorizationCommand({\n data: Uint8Array.from([]),\n isFirstChunk: true,\n });\n const result = command.parseResponse(response);\n // THEN\n expect(result).toStrictEqual(\n CommandResultFactory({\n data: Just({\n r: \"0x97a4ca8f694633592601f5a23e0bcc553c9d0a90d3a3422d575508a92898b96e\",\n s: \"0x6950d02e74e9c102c164a225533082cabdd890efc463f67f60cefe8c3f87cfce\",\n v: 27,\n }),\n }),\n );\n });\n\n it(\"should return an error if r is missing\", () => {\n // GIVEN\n const response: ApduResponse = {\n statusCode: Buffer.from([0x90, 0x00]), // Success status code\n data: SUCCESS_RESPONSE.slice(0, 32),\n };\n // WHEN\n const command = new SignEIP7702AuthorizationCommand({\n data: Uint8Array.from([]),\n isFirstChunk: true,\n });\n const result = command.parseResponse(response);\n // THEN\n expect(result).toStrictEqual(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"R is missing\"),\n }),\n );\n });\n\n it(\"should return an error if s is missing\", () => {\n // GIVEN\n const response: ApduResponse = {\n statusCode: Buffer.from([0x90, 0x00]), // Success status code\n data: SUCCESS_RESPONSE.slice(0, 64),\n };\n // WHEN\n const command = new SignEIP7702AuthorizationCommand({\n data: Uint8Array.from([]),\n isFirstChunk: true,\n });\n const result = command.parseResponse(response);\n // THEN\n expect(result).toStrictEqual(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"S is missing\"),\n }),\n );\n });\n });\n});\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["import_device_management_kit", "import_purify_ts", "import_SignAuthorizationDelegationCommand", "FIRST_CHUNK_APDU", "NEXT_CHUNK_APDU", "SUCCESS_RESPONSE", "command", "args", "apdu", "response", "result"]
|
|
7
|
+
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var p=Object.defineProperty;var l=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var c=Object.prototype.hasOwnProperty;var y=(o,r)=>{for(var e in r)p(o,e,{get:r[e],enumerable:!0})},A=(o,r,e,
|
|
1
|
+
"use strict";var p=Object.defineProperty;var l=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var c=Object.prototype.hasOwnProperty;var y=(o,r)=>{for(var e in r)p(o,e,{get:r[e],enumerable:!0})},A=(o,r,e,s)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of E(r))!c.call(o,n)&&n!==e&&p(o,n,{get:()=>r[n],enumerable:!(s=l(r,n))||s.enumerable});return o};var C=o=>A(p({},"__esModule",{value:!0}),o);var x={};y(x,{SignEIP712Command:()=>h});module.exports=C(x);var t=require("@ledgerhq/device-management-kit"),i=require("@ledgerhq/signer-utils"),g=require("purify-ts"),d=require("./utils/ethAppErrors");const S=32,P=32;class h{constructor(r){this.args=r}name="signEIP712";errorHelper=new i.CommandErrorHelper(d.ETH_APP_ERRORS,d.EthAppCommandErrorFactory);getApdu(){const{derivationPath:r,legacyArgs:e}=this.args,s={cla:224,ins:12,p1:0,p2:e.isJust()?0:1},n=i.DerivationPathUtils.splitPath(r),a=new t.ApduBuilder(s);a.add8BitUIntToData(n.length);for(const m of n)a.add32BitUIntToData(m);return e.ifJust(({domainHash:m,messageHash:u})=>{a.addHexaStringToData(m),a.addHexaStringToData(u)}),a.build()}parseResponse(r){return g.Maybe.fromNullable(this.errorHelper.getError(r)).orDefaultLazy(()=>{const e=new t.ApduParser(r),s=e.extract8BitUInt();if(s===void 0)return(0,t.CommandResultFactory)({error:new t.InvalidStatusWordError("V is missing")});const n=e.encodeToHexaString(e.extractFieldByLength(S),!0);if(!n)return(0,t.CommandResultFactory)({error:new t.InvalidStatusWordError("R is missing")});const a=e.encodeToHexaString(e.extractFieldByLength(P),!0);return a?(0,t.CommandResultFactory)({data:{r:n,s:a,v:s}}):(0,t.CommandResultFactory)({error:new t.InvalidStatusWordError("S is missing")})})}}0&&(module.exports={SignEIP712Command});
|
|
2
2
|
//# sourceMappingURL=SignEIP712Command.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../src/internal/app-binder/command/SignEIP712Command.ts"],
|
|
4
|
-
"sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#sign-eth-eip-712\nimport {\n type Apdu,\n ApduBuilder,\n type ApduBuilderArgs,\n ApduParser,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\nimport {\n CommandErrorHelper,\n DerivationPathUtils,\n} from \"@ledgerhq/signer-utils\";\nimport { Maybe } from \"purify-ts\";\n\nimport { type Signature } from \"@api/model/Signature\";\n\nimport {\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n type EthErrorCodes,\n} from \"./utils/ethAppErrors\";\n\nconst R_LENGTH = 32;\nconst S_LENGTH = 32;\n\n/**\n * Legacy implementation parameters. It is now replaced with prior calls to the following commands:\n * - SendEIP712StructDefinitionCommand\n * - SendEIP712StructImplemCommand\n * - SendEIP712FilteringCommand\n */\nexport type SignEIP712CommandV0Args = {\n domainHash: string;\n messageHash: string;\n};\n\nexport type SignEIP712CommandArgs = {\n readonly derivationPath: string;\n readonly legacyArgs: Maybe<SignEIP712CommandV0Args>;\n};\n\nexport type SignEIP712CommandResponse = Signature;\n\nexport class SignEIP712Command\n implements\n Command<SignEIP712CommandResponse, SignEIP712CommandArgs, EthErrorCodes>\n{\n private readonly errorHelper = new CommandErrorHelper<\n SignEIP712CommandResponse,\n EthErrorCodes\n >(ETH_APP_ERRORS, EthAppCommandErrorFactory);\n\n constructor(private readonly args: SignEIP712CommandArgs) {}\n\n getApdu(): Apdu {\n const { derivationPath, legacyArgs } = this.args;\n\n const signEIP712Args: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x0c,\n p1: 0x00,\n p2: legacyArgs.isJust() ? 0x00 : 0x01,\n };\n const paths = DerivationPathUtils.splitPath(derivationPath);\n const builder = new ApduBuilder(signEIP712Args);\n builder.add8BitUIntToData(paths.length);\n for (const path of paths) {\n builder.add32BitUIntToData(path);\n }\n\n legacyArgs.ifJust(({ domainHash, messageHash }) => {\n builder.addHexaStringToData(domainHash);\n builder.addHexaStringToData(messageHash);\n });\n\n return builder.build();\n }\n\n parseResponse(\n apduResponse: ApduResponse,\n ): CommandResult<SignEIP712CommandResponse, EthErrorCodes> {\n return Maybe.fromNullable(\n this.errorHelper.getError(apduResponse),\n ).orDefaultLazy(() => {\n const parser = new ApduParser(apduResponse);\n\n const v = parser.extract8BitUInt();\n if (v === undefined) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\"V is missing\"),\n });\n }\n\n const r = parser.encodeToHexaString(\n parser.extractFieldByLength(R_LENGTH),\n true,\n );\n if (!r) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\"R is missing\"),\n });\n }\n\n const s = parser.encodeToHexaString(\n parser.extractFieldByLength(S_LENGTH),\n true,\n );\n if (!s) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\"S is missing\"),\n });\n }\n\n return CommandResultFactory({\n data: {\n r,\n s,\n v,\n },\n });\n });\n }\n}\n"],
|
|
5
|
-
"mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,uBAAAE,IAAA,eAAAC,EAAAH,GACA,IAAAI,EAUO,2CACPC,EAGO,kCACPC,EAAsB,qBAItBC,EAIO,gCAEP,MAAMC,EAAW,GACXC,EAAW,GAoBV,MAAMP,CAGb,
|
|
6
|
-
"names": ["SignEIP712Command_exports", "__export", "SignEIP712Command", "__toCommonJS", "import_device_management_kit", "import_signer_utils", "import_purify_ts", "import_ethAppErrors", "R_LENGTH", "S_LENGTH", "args", "derivationPath", "legacyArgs", "signEIP712Args", "paths", "builder", "path", "domainHash", "messageHash", "apduResponse", "parser", "v", "r"]
|
|
4
|
+
"sourcesContent": ["// https://github.com/LedgerHQ/app-ethereum/blob/develop/doc/ethapp.adoc#sign-eth-eip-712\nimport {\n type Apdu,\n ApduBuilder,\n type ApduBuilderArgs,\n ApduParser,\n type ApduResponse,\n type Command,\n type CommandResult,\n CommandResultFactory,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\nimport {\n CommandErrorHelper,\n DerivationPathUtils,\n} from \"@ledgerhq/signer-utils\";\nimport { Maybe } from \"purify-ts\";\n\nimport { type Signature } from \"@api/model/Signature\";\n\nimport {\n ETH_APP_ERRORS,\n EthAppCommandErrorFactory,\n type EthErrorCodes,\n} from \"./utils/ethAppErrors\";\n\nconst R_LENGTH = 32;\nconst S_LENGTH = 32;\n\n/**\n * Legacy implementation parameters. It is now replaced with prior calls to the following commands:\n * - SendEIP712StructDefinitionCommand\n * - SendEIP712StructImplemCommand\n * - SendEIP712FilteringCommand\n */\nexport type SignEIP712CommandV0Args = {\n domainHash: string;\n messageHash: string;\n};\n\nexport type SignEIP712CommandArgs = {\n readonly derivationPath: string;\n readonly legacyArgs: Maybe<SignEIP712CommandV0Args>;\n};\n\nexport type SignEIP712CommandResponse = Signature;\n\nexport class SignEIP712Command\n implements\n Command<SignEIP712CommandResponse, SignEIP712CommandArgs, EthErrorCodes>\n{\n readonly name = \"signEIP712\";\n private readonly errorHelper = new CommandErrorHelper<\n SignEIP712CommandResponse,\n EthErrorCodes\n >(ETH_APP_ERRORS, EthAppCommandErrorFactory);\n\n constructor(private readonly args: SignEIP712CommandArgs) {}\n\n getApdu(): Apdu {\n const { derivationPath, legacyArgs } = this.args;\n\n const signEIP712Args: ApduBuilderArgs = {\n cla: 0xe0,\n ins: 0x0c,\n p1: 0x00,\n p2: legacyArgs.isJust() ? 0x00 : 0x01,\n };\n const paths = DerivationPathUtils.splitPath(derivationPath);\n const builder = new ApduBuilder(signEIP712Args);\n builder.add8BitUIntToData(paths.length);\n for (const path of paths) {\n builder.add32BitUIntToData(path);\n }\n\n legacyArgs.ifJust(({ domainHash, messageHash }) => {\n builder.addHexaStringToData(domainHash);\n builder.addHexaStringToData(messageHash);\n });\n\n return builder.build();\n }\n\n parseResponse(\n apduResponse: ApduResponse,\n ): CommandResult<SignEIP712CommandResponse, EthErrorCodes> {\n return Maybe.fromNullable(\n this.errorHelper.getError(apduResponse),\n ).orDefaultLazy(() => {\n const parser = new ApduParser(apduResponse);\n\n const v = parser.extract8BitUInt();\n if (v === undefined) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\"V is missing\"),\n });\n }\n\n const r = parser.encodeToHexaString(\n parser.extractFieldByLength(R_LENGTH),\n true,\n );\n if (!r) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\"R is missing\"),\n });\n }\n\n const s = parser.encodeToHexaString(\n parser.extractFieldByLength(S_LENGTH),\n true,\n );\n if (!s) {\n return CommandResultFactory({\n error: new InvalidStatusWordError(\"S is missing\"),\n });\n }\n\n return CommandResultFactory({\n data: {\n r,\n s,\n v,\n },\n });\n });\n }\n}\n"],
|
|
5
|
+
"mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,uBAAAE,IAAA,eAAAC,EAAAH,GACA,IAAAI,EAUO,2CACPC,EAGO,kCACPC,EAAsB,qBAItBC,EAIO,gCAEP,MAAMC,EAAW,GACXC,EAAW,GAoBV,MAAMP,CAGb,CAOE,YAA6BQ,EAA6B,CAA7B,UAAAA,CAA8B,CANlD,KAAO,aACC,YAAc,IAAI,qBAGjC,iBAAgB,2BAAyB,EAI3C,SAAgB,CACd,KAAM,CAAE,eAAAC,EAAgB,WAAAC,CAAW,EAAI,KAAK,KAEtCC,EAAkC,CACtC,IAAK,IACL,IAAK,GACL,GAAI,EACJ,GAAID,EAAW,OAAO,EAAI,EAAO,CACnC,EACME,EAAQ,sBAAoB,UAAUH,CAAc,EACpDI,EAAU,IAAI,cAAYF,CAAc,EAC9CE,EAAQ,kBAAkBD,EAAM,MAAM,EACtC,UAAWE,KAAQF,EACjBC,EAAQ,mBAAmBC,CAAI,EAGjC,OAAAJ,EAAW,OAAO,CAAC,CAAE,WAAAK,EAAY,YAAAC,CAAY,IAAM,CACjDH,EAAQ,oBAAoBE,CAAU,EACtCF,EAAQ,oBAAoBG,CAAW,CACzC,CAAC,EAEMH,EAAQ,MAAM,CACvB,CAEA,cACEI,EACyD,CACzD,OAAO,QAAM,aACX,KAAK,YAAY,SAASA,CAAY,CACxC,EAAE,cAAc,IAAM,CACpB,MAAMC,EAAS,IAAI,aAAWD,CAAY,EAEpCE,EAAID,EAAO,gBAAgB,EACjC,GAAIC,IAAM,OACR,SAAO,wBAAqB,CAC1B,MAAO,IAAI,yBAAuB,cAAc,CAClD,CAAC,EAGH,MAAMC,EAAIF,EAAO,mBACfA,EAAO,qBAAqBZ,CAAQ,EACpC,EACF,EACA,GAAI,CAACc,EACH,SAAO,wBAAqB,CAC1B,MAAO,IAAI,yBAAuB,cAAc,CAClD,CAAC,EAGH,MAAMC,EAAIH,EAAO,mBACfA,EAAO,qBAAqBX,CAAQ,EACpC,EACF,EACA,OAAKc,KAME,wBAAqB,CAC1B,KAAM,CACJ,EAAAD,EACA,EAAAC,EACA,EAAAF,CACF,CACF,CAAC,KAXQ,wBAAqB,CAC1B,MAAO,IAAI,yBAAuB,cAAc,CAClD,CAAC,CAUL,CAAC,CACH,CACF",
|
|
6
|
+
"names": ["SignEIP712Command_exports", "__export", "SignEIP712Command", "__toCommonJS", "import_device_management_kit", "import_signer_utils", "import_purify_ts", "import_ethAppErrors", "R_LENGTH", "S_LENGTH", "args", "derivationPath", "legacyArgs", "signEIP712Args", "paths", "builder", "path", "domainHash", "messageHash", "apduResponse", "parser", "v", "r", "s"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var t=require("@ledgerhq/device-management-kit"),a=require("purify-ts"),o=require("./SignEIP712Command");const s=Uint8Array.from([224,12,0,1,21,5,128,0,0,44,128,0,0,60,128,0,0,0,0,0,0,0,0,0,0,0]),r=Uint8Array.from([224,12,0,0,85,5,128,0,0,44,128,0,0,60,128,0,0,0,0,0,0,0,0,0,0,0,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34]),
|
|
1
|
+
"use strict";var t=require("@ledgerhq/device-management-kit"),a=require("purify-ts"),o=require("./SignEIP712Command");const s=Uint8Array.from([224,12,0,1,21,5,128,0,0,44,128,0,0,60,128,0,0,0,0,0,0,0,0,0,0,0]),r=Uint8Array.from([224,12,0,0,85,5,128,0,0,44,128,0,0,60,128,0,0,0,0,0,0,0,0,0,0,0,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34]),n=Uint8Array.from([28,138,84,5,16,225,59,15,43,17,164,81,39,87,22,210,158,8,202,173,7,232,154,28,132,150,71,130,251,94,26,215,136,100,160,222,35,91,39,15,190,129,232,228,6,136,244,169,249,173,157,40,61,105,5,82,201,51,29,119,115,206,175,165,19]),d={statusCode:Uint8Array.from([144,0]),data:n},c={statusCode:Uint8Array.from([85,21]),data:new Uint8Array},i=Uint8Array.from([1,2]),m={statusCode:Uint8Array.from([144,0]),data:i};describe("SignEIP712Command",()=>{let e;beforeEach(()=>{e=new o.SignEIP712Command({derivationPath:"44'/60'/0'/0/0",legacyArgs:a.Nothing})}),describe("name",()=>{it("should be 'signEIP712'",()=>{expect(e.name).toBe("signEIP712")})}),describe("getApdu",()=>{it("should provide the derivation path",()=>{const x=e.getApdu();expect(x.getRawApdu()).toStrictEqual(s)})}),describe("parseResponse",()=>{it("should parse the response",()=>{const x=e.parseResponse(d);expect(x).toStrictEqual((0,t.CommandResultFactory)({data:{v:28,r:"0x8a540510e13b0f2b11a451275716d29e08caad07e89a1c84964782fb5e1ad788",s:"0x64a0de235b270fbe81e8e40688f4a9f9ad9d283d690552c9331d7773ceafa513"}}))}),it("should return an error if the response is not successful",()=>{const x=e.parseResponse(c);expect((0,t.isSuccessCommandResult)(x)).toBe(!1)}),it("should return an error if the response is too short",()=>{const x=e.parseResponse(m);expect((0,t.isSuccessCommandResult)(x)).toBe(!1)})})});describe("SignEIP712Command V0",()=>{describe("getApdu",()=>{it("should provide the derivation path and hashes",()=>{const x=new o.SignEIP712Command({derivationPath:"44'/60'/0'/0/0",legacyArgs:(0,a.Just)({domainHash:"0x1111111111111111111111111111111111111111111111111111111111111111",messageHash:"0x2222222222222222222222222222222222222222222222222222222222222222"})}).getApdu();expect(x.getRawApdu()).toStrictEqual(r)})})});
|
|
2
2
|
//# sourceMappingURL=SignEIP712Command.test.js.map
|