@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,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/internal/app-binder/task/ProvideTransactionFieldDescriptionTask.test.ts"],
|
|
4
|
-
"sourcesContent": ["import {\n type ClearSignContextSuccess,\n type ClearSignContextSuccessType,\n ClearSignContextType,\n ContainerPath,\n type ContextModule,\n} from \"@ledgerhq/context-module\";\nimport {\n CommandResultFactory,\n type InternalApi,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\nimport { Left, Nothing, Right } from \"purify-ts\";\n\nimport { GetChallengeCommand } from \"@internal/app-binder/command/GetChallengeCommand\";\nimport { ProvideEnumCommand } from \"@internal/app-binder/command/ProvideEnumCommand\";\nimport { ProvideNFTInformationCommand } from \"@internal/app-binder/command/ProvideNFTInformationCommand\";\nimport { ProvideTokenInformationCommand } from \"@internal/app-binder/command/ProvideTokenInformationCommand\";\nimport { ProvideTransactionFieldDescriptionCommand } from \"@internal/app-binder/command/ProvideTransactionFieldDescriptionCommand\";\nimport { ProvideTrustedNameCommand } from \"@internal/app-binder/command/ProvideTrustedNameCommand\";\nimport { type TransactionParserService } from \"@internal/transaction/service/parser/TransactionParserService\";\n\nimport { ProvideTransactionFieldDescriptionTask } from \"./ProvideTransactionFieldDescriptionTask\";\n\ndescribe(\"ProvideTransactionFieldDescriptionTask\", () => {\n const transactionParserMock = {\n extractValue: vi.fn(),\n } as unknown as TransactionParserService;\n const contextModuleMock = {\n getContext: vi.fn(),\n } as unknown as ContextModule;\n const apiMock: InternalApi = {\n sendCommand: vi.fn(),\n } as unknown as InternalApi;\n\n beforeEach(() => {\n vi.clearAllMocks();\n });\n\n describe(\"should call the right provide command\", () => {\n it.each<{\n type: ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n >[\"type\"];\n commandInstanceType: unknown;\n }>([\n {\n type: ClearSignContextType.NFT,\n commandInstanceType: ProvideNFTInformationCommand,\n },\n {\n type: ClearSignContextType.TOKEN,\n commandInstanceType: ProvideTokenInformationCommand,\n },\n {\n type: ClearSignContextType.TRUSTED_NAME,\n commandInstanceType: ProvideTrustedNameCommand,\n },\n {\n type: ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n commandInstanceType: ProvideTransactionFieldDescriptionCommand,\n },\n ])(\"when type is $type\", async ({ type, commandInstanceType }) => {\n // GIVEN\n const spy = vi\n .spyOn(apiMock, \"sendCommand\")\n .mockResolvedValueOnce(CommandResultFactory({ data: \"ok\" }));\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess = {\n type,\n payload,\n };\n\n // WHEN\n await new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n }).run();\n\n // THEN\n expect(spy.mock.calls[0]![0]).toBeInstanceOf(commandInstanceType);\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(1);\n });\n\n it(\"when type is transactionFieldDescription with a enum reference\", async () => {\n // GIVEN\n const spy = vi\n .spyOn(apiMock, \"sendCommand\")\n .mockResolvedValueOnce(CommandResultFactory({ data: \"ok\" }))\n .mockResolvedValueOnce(CommandResultFactory({ data: \"ok\" }));\n\n vi.spyOn(transactionParserMock, \"extractValue\").mockReturnValueOnce(\n Right([new Uint8Array([0x01, 0x02, 0x03, 0x04])]),\n );\n\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess = {\n type: ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n payload,\n reference: {\n type: ClearSignContextType.ENUM,\n valuePath: ContainerPath.VALUE,\n id: 0x42,\n },\n };\n\n // WHEN\n await new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [\n {\n id: 0x42,\n value: 0x01,\n type: ClearSignContextType.ENUM,\n payload: \"0x060708\",\n },\n {\n id: 0x42,\n value: 0x04,\n type: ClearSignContextType.ENUM,\n payload: \"0x080706\",\n },\n ],\n }).run();\n\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(2);\n expect(spy.mock.calls[0]![0]).toBeInstanceOf(ProvideEnumCommand);\n // @ts-expect-error args exists\n expect(spy.mock.calls[0]![0].args.data).toEqual(\n new Uint8Array([0x00, 0x03, 0x08, 0x07, 0x06]),\n ); // length + value of the enum with id 0x42 and value 0x04\n expect(spy.mock.calls[1]![0]).toBeInstanceOf(\n ProvideTransactionFieldDescriptionCommand,\n );\n });\n });\n\n describe(\"should return nothing\", () => {\n it.each<\n ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n >[\"type\"]\n >([\n ClearSignContextType.NFT,\n ClearSignContextType.TOKEN,\n ClearSignContextType.TRUSTED_NAME,\n ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n ])(\"when type is %s with no reference\", async (type) => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess = {\n type,\n payload,\n };\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({ data: \"ok\" }),\n );\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(result).toEqual(Nothing);\n });\n });\n\n describe(\"should provide a reference context\", () => {\n it.each<\n ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n >[\"type\"]\n >([ClearSignContextType.NFT, ClearSignContextType.TOKEN])(\n \"when type is %s with a reference\",\n async (type) => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess = {\n type,\n payload,\n reference: {\n type: ClearSignContextType.TOKEN,\n valuePath: ContainerPath.VALUE,\n },\n };\n // provide reference context\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({ data: \"ok\" }),\n );\n // provide context\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({ data: \"ok\" }),\n );\n vi.spyOn(transactionParserMock, \"extractValue\").mockReturnValueOnce(\n Right([new Uint8Array([0x01, 0x02, 0x03, 0x04])]),\n );\n vi.spyOn(contextModuleMock, \"getContext\").mockResolvedValueOnce({\n type,\n payload,\n });\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(contextModuleMock.getContext).toHaveBeenCalledTimes(1);\n expect(contextModuleMock.getContext).toHaveBeenCalledWith({\n type: ClearSignContextType.TOKEN,\n chainId: 1,\n address: \"0x01020304\",\n });\n expect(result).toEqual(Nothing);\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(2);\n },\n );\n\n it(\"when type is trustes-name with a reference\", async () => {\n // GIVEN\n const payload1 = `0x01020304`;\n const payload2 = `0x05060708`;\n const extractedValue = new Uint8Array([0x11, 0x22, 0x33, 0x44]);\n const extractedValueAddress = \"0x11223344\";\n const field: ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n > = {\n type: ClearSignContextType.TRUSTED_NAME,\n payload: payload1,\n reference: {\n type: ClearSignContextType.TRUSTED_NAME,\n valuePath: ContainerPath.VALUE,\n types: [\"type\"],\n sources: [\"source\"],\n },\n };\n\n vi.spyOn(apiMock, \"sendCommand\")\n // getChallenge\n .mockResolvedValueOnce(\n CommandResultFactory({ data: { challenge: 0x42 } }),\n )\n // provide reference context\n .mockResolvedValueOnce(CommandResultFactory({ data: \"ok\" }))\n // provide context\n .mockResolvedValueOnce(CommandResultFactory({ data: \"ok\" }));\n\n vi.spyOn(transactionParserMock, \"extractValue\").mockReturnValueOnce(\n Right([extractedValue]),\n );\n\n vi.spyOn(contextModuleMock, \"getContext\").mockResolvedValueOnce({\n type: ClearSignContextType.TRUSTED_NAME,\n payload: payload2,\n });\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(contextModuleMock.getContext).toHaveBeenCalledTimes(1);\n // getContext for the extracted value address\n expect(contextModuleMock.getContext).toHaveBeenCalledWith({\n type: ClearSignContextType.TRUSTED_NAME,\n chainId: 1,\n address: extractedValueAddress,\n types: [\"type\"],\n sources: [\"source\"],\n challenge: 0x42,\n });\n expect(result).toEqual(Nothing);\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(3);\n expect(apiMock.sendCommand).toHaveBeenNthCalledWith(\n 1,\n new GetChallengeCommand(),\n );\n expect(apiMock.sendCommand).toHaveBeenNthCalledWith(\n 2,\n new ProvideTrustedNameCommand({\n data: new Uint8Array([0x00, 0x04, 0x05, 0x06, 0x07, 0x08]),\n isFirstChunk: true,\n }),\n );\n expect(apiMock.sendCommand).toHaveBeenNthCalledWith(\n 3,\n new ProvideTrustedNameCommand({\n data: new Uint8Array([0x00, 0x04, 0x01, 0x02, 0x03, 0x04]),\n isFirstChunk: true,\n }),\n );\n });\n\n it(\"when type is token with a constant reference\", async () => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess = {\n type: ClearSignContextType.TOKEN,\n payload,\n reference: {\n type: ClearSignContextType.TOKEN,\n value: \"0x09080706\",\n },\n };\n vi.spyOn(apiMock, \"sendCommand\")\n // provide reference context\n .mockResolvedValueOnce(CommandResultFactory({ data: \"ok\" }))\n // provide context\n .mockResolvedValueOnce(CommandResultFactory({ data: \"ok\" }));\n\n vi.spyOn(contextModuleMock, \"getContext\").mockResolvedValueOnce({\n type: ClearSignContextType.TOKEN,\n payload: \"0x05060708\",\n });\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(transactionParserMock.extractValue).not.toHaveBeenCalled();\n expect(contextModuleMock.getContext).toHaveBeenCalledTimes(1);\n expect(contextModuleMock.getContext).toHaveBeenCalledWith({\n type: ClearSignContextType.TOKEN,\n chainId: 1,\n address: \"0x09080706\",\n });\n expect(result).toEqual(Nothing);\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(2);\n });\n\n it(\"when type is a ntf with a constant reference\", async () => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess = {\n type: ClearSignContextType.NFT,\n payload,\n reference: {\n type: ClearSignContextType.NFT,\n value: \"0x09080706\",\n },\n };\n // provide reference context\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({ data: \"ok\" }),\n );\n // provide context\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({ data: \"ok\" }),\n );\n vi.spyOn(contextModuleMock, \"getContext\").mockResolvedValueOnce({\n type: ClearSignContextType.NFT,\n payload: \"0x05060708\",\n });\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(transactionParserMock.extractValue).not.toHaveBeenCalled();\n expect(contextModuleMock.getContext).toHaveBeenCalledTimes(1);\n expect(contextModuleMock.getContext).toHaveBeenCalledWith({\n type: ClearSignContextType.NFT,\n chainId: 1,\n address: \"0x09080706\",\n });\n expect(result).toEqual(Nothing);\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(2);\n });\n });\n\n describe(\"should not provide a reference context\", () => {\n it(\"when the path is not found in transaction payload\", async () => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n > = {\n type: ClearSignContextType.TRUSTED_NAME,\n payload,\n reference: {\n type: ClearSignContextType.TRUSTED_NAME,\n valuePath: ContainerPath.VALUE,\n types: [\"type\"],\n sources: [\"source\"],\n },\n };\n // provide context\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({ data: \"ok\" }),\n );\n\n vi.spyOn(transactionParserMock, \"extractValue\").mockReturnValueOnce(\n Left(new Error(\"path not found\")),\n );\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(result).toEqual(Nothing);\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(1);\n expect(contextModuleMock.getContext).not.toHaveBeenCalled();\n });\n\n it(\"when getContext return a type error\", async () => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n > = {\n type: ClearSignContextType.TRUSTED_NAME,\n payload,\n reference: {\n type: ClearSignContextType.TRUSTED_NAME,\n valuePath: ContainerPath.VALUE,\n types: [\"type\"],\n sources: [\"source\"],\n },\n };\n vi.spyOn(transactionParserMock, \"extractValue\").mockReturnValueOnce(\n Right([new Uint8Array([0x11, 0x22, 0x33, 0x44])]),\n );\n vi.spyOn(contextModuleMock, \"getContext\").mockResolvedValueOnce({\n type: ClearSignContextType.ERROR,\n error: new Error(\"getContext error\"),\n });\n // getChallenge\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({ data: { challenge: 0x42 } }),\n );\n // provide context\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({ data: \"ok\" }),\n );\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(result).toEqual(Nothing);\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(2);\n expect(contextModuleMock.getContext).toHaveBeenCalledTimes(1);\n });\n\n it(\"when no enum descriptor is found\", async () => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess = {\n type: ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n payload,\n reference: {\n type: ClearSignContextType.ENUM,\n valuePath: ContainerPath.VALUE,\n id: 0x42,\n },\n };\n\n vi.spyOn(transactionParserMock, \"extractValue\").mockReturnValueOnce(\n Right([new Uint8Array([0x01, 0x02, 0x03, 0x04])]),\n );\n\n const spy = vi\n .spyOn(apiMock, \"sendCommand\")\n .mockResolvedValueOnce(CommandResultFactory({ data: \"ok\" }));\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(result).toEqual(Nothing);\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(1);\n expect(spy.mock.calls[0]![0]).toBeInstanceOf(\n ProvideTransactionFieldDescriptionCommand,\n );\n });\n\n it(\"when the enum reference path value is empty\", async () => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess = {\n type: ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n payload,\n reference: {\n type: ClearSignContextType.ENUM,\n valuePath: ContainerPath.VALUE,\n id: 0x42,\n },\n };\n\n vi.spyOn(transactionParserMock, \"extractValue\").mockReturnValueOnce(\n Right([new Uint8Array([])]),\n ); // empty value\n\n const spy = vi\n .spyOn(apiMock, \"sendCommand\")\n .mockResolvedValueOnce(CommandResultFactory({ data: \"ok\" }));\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [\n {\n id: 0x42,\n value: 0x01,\n type: ClearSignContextType.ENUM,\n payload: \"0x060708\",\n },\n {\n id: 0x42,\n value: 0x04,\n type: ClearSignContextType.ENUM,\n payload: \"0x080706\",\n },\n ],\n });\n const result = await task.run();\n\n // THEN\n expect(result).toEqual(Nothing);\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(1);\n expect(spy.mock.calls[0]![0]).toBeInstanceOf(\n ProvideTransactionFieldDescriptionCommand,\n );\n });\n });\n\n describe(\"should return an error\", () => {\n it.each<\n ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n >[\"type\"]\n >([\n ClearSignContextType.TRANSACTION_INFO,\n ClearSignContextType.PLUGIN,\n ClearSignContextType.EXTERNAL_PLUGIN,\n ])(\"when type is %s\", async (type) => {\n // GIVEN\n const payload = `payload-${type}`;\n const field: ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n > = {\n type,\n payload,\n };\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(result.extract()).toEqual(\n CommandResultFactory({\n error: new InvalidStatusWordError(\n `The context type [${type}] is not valid as a transaction field or metadata`,\n ),\n }),\n );\n });\n\n it(\"when type is unknown\", async () => {\n // GIVEN\n const payload = `payload-unknown`;\n const field = {\n type: \"unknown\" as ClearSignContextType,\n payload,\n } as ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n >;\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(result.extract()).toEqual(\n CommandResultFactory({\n error: new InvalidStatusWordError(\n `The context type [unknown] is not covered`,\n ),\n }),\n );\n });\n\n it(\"when getChallenge fails\", async () => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n > = {\n type: ClearSignContextType.TRUSTED_NAME,\n payload,\n reference: {\n type: ClearSignContextType.TRUSTED_NAME,\n valuePath: ContainerPath.VALUE,\n types: [\"type\"],\n sources: [\"source\"],\n },\n };\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"getChallenge error\"),\n }),\n );\n vi.spyOn(transactionParserMock, \"extractValue\").mockReturnValueOnce(\n Right([new Uint8Array([0x11, 0x22, 0x33, 0x44])]),\n );\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(result.extract()).toEqual(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"getChallenge error\"),\n }),\n );\n });\n\n it(\"when provide reference with a token fails\", async () => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n > = {\n type: ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n payload,\n reference: {\n type: ClearSignContextType.TOKEN,\n valuePath: ContainerPath.VALUE,\n },\n };\n // provide reference context\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"provide reference error\"),\n }),\n );\n // provide field\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({ data: \"ok\" }),\n );\n vi.spyOn(transactionParserMock, \"extractValue\").mockReturnValueOnce(\n Right([new Uint8Array([0x11, 0x22, 0x33, 0x44])]),\n );\n vi.spyOn(contextModuleMock, \"getContext\").mockResolvedValueOnce({\n type: ClearSignContextType.TOKEN,\n payload: \"0x05060708\",\n });\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(result.extract()).toEqual(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"provide reference error\"),\n }),\n );\n });\n\n it(\"when provide reference with a trusted name fails\", async () => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n > = {\n type: ClearSignContextType.TRUSTED_NAME,\n payload,\n reference: {\n type: ClearSignContextType.TRUSTED_NAME,\n valuePath: ContainerPath.VALUE,\n types: [\"type\"],\n sources: [\"source\"],\n },\n };\n // getChallenge\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({ data: \"ok\" }),\n );\n // provide reference context\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"provide reference error\"),\n }),\n );\n vi.spyOn(transactionParserMock, \"extractValue\").mockReturnValueOnce(\n Right([new Uint8Array([0x11, 0x22, 0x33, 0x44])]),\n );\n vi.spyOn(contextModuleMock, \"getContext\").mockResolvedValueOnce({\n type: ClearSignContextType.TRUSTED_NAME,\n payload: \"0x05060708\",\n });\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [],\n });\n const result = await task.run();\n\n // THEN\n expect(result.extract()).toEqual(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"provide reference error\"),\n }),\n );\n });\n\n it(\"when provide reference with a enum reference fails\", async () => {\n // GIVEN\n const payload = `0x01020304`;\n const field: ClearSignContextSuccess = {\n type: ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n payload,\n reference: {\n type: ClearSignContextType.ENUM,\n valuePath: ContainerPath.VALUE,\n id: 0x42,\n },\n };\n\n vi.spyOn(transactionParserMock, \"extractValue\").mockReturnValueOnce(\n Right([new Uint8Array([0x01, 0x02, 0x03, 0x04])]),\n );\n\n const spy = vi\n .spyOn(apiMock, \"sendCommand\")\n .mockResolvedValueOnce(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"provide reference error\"),\n }),\n )\n .mockResolvedValueOnce(\n CommandResultFactory({\n data: \"ok\",\n }),\n );\n\n // WHEN\n const task = new ProvideTransactionFieldDescriptionTask(apiMock, {\n field,\n serializedTransaction: new Uint8Array(),\n chainId: 1,\n transactionParser: transactionParserMock,\n contextModule: contextModuleMock,\n transactionEnums: [\n {\n id: 0x42,\n value: 0x04,\n type: ClearSignContextType.ENUM,\n payload: \"0x080706\",\n },\n ],\n });\n const result = await task.run();\n\n // THEN\n expect(result.extract()).toEqual(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"provide reference error\"),\n }),\n );\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(1);\n expect(spy.mock.calls[0]![0]).toBeInstanceOf(ProvideEnumCommand);\n });\n });\n});\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["import_context_module", "import_device_management_kit", "import_purify_ts", "import_GetChallengeCommand", "import_ProvideEnumCommand", "import_ProvideNFTInformationCommand", "import_ProvideTokenInformationCommand", "import_ProvideTransactionFieldDescriptionCommand", "import_ProvideTrustedNameCommand", "import_ProvideTransactionFieldDescriptionTask", "transactionParserMock", "contextModuleMock", "apiMock", "type", "commandInstanceType", "spy", "field", "result", "payload", "payload1", "payload2", "extractedValue", "extractedValueAddress"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";var d=Object.defineProperty;var f=Object.getOwnPropertyDescriptor;var x=Object.getOwnPropertyNames;var T=Object.prototype.hasOwnProperty;var g=(a,t)=>{for(var n in t)d(a,n,{get:t[n],enumerable:!0})},k=(a,t,n,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of x(t))!T.call(a,r)&&r!==n&&d(a,r,{get:()=>t[r],enumerable:!(o=f(t,r))||o.enumerable});return a};var S=a=>k(d({},"__esModule",{value:!0}),a);var E={};g(E,{ProvideTransactionGenericContextTask:()=>P});module.exports=S(E);var i=require("@ledgerhq/device-management-kit"),l=require("@ledgerhq/signer-utils"),s=require("purify-ts"),C=require("../../app-binder/command/ProvideTransactionInformationCommand"),m=require("../../app-binder/command/StoreTransactionCommand"),p=require("./ProvideTransactionFieldDescriptionTask"),u=require("./SendCommandInChunksTask"),y=require("./SendPayloadInChunksTask");class P{constructor(t,n){this.api=t;this.args=n}async run(){const t=l.DerivationPathUtils.splitPath(this.args.derivationPath),n=new i.ByteArrayBuilder;n.add8BitUIntToData(t.length),t.forEach(e=>{n.add32BitUIntToData(e)}),n.addBufferToData(this.args.serializedTransaction);const o=await new u.SendCommandInChunksTask(this.api,{data:n.build(),commandFactory:e=>new m.StoreTransactionCommand({serializedTransaction:e.chunkedData,isFirstChunk:e.isFirstChunk})}).run();if(!(0,i.isSuccessCommandResult)(o))return(0,s.Just)(o);if(this.args.context.transactionInfoCertificate){const{keyUsageNumber:e,payload:c}=this.args.context.transactionInfoCertificate;await this.api.sendCommand(new i.LoadCertificateCommand({keyUsage:e,certificate:c}))}const r=await new y.SendPayloadInChunksTask(this.api,{payload:this.args.context.transactionInfo,commandFactory:e=>new C.ProvideTransactionInformationCommand({data:e.chunkedData,isFirstChunk:e.isFirstChunk})}).run();if(!(0,i.isSuccessCommandResult)(r))return(0,s.Just)(r);const h=this.args.web3Check?[...this.args.context.transactionFields,this.args.web3Check]:this.args.context.transactionFields;for(const e of h){const c=await new p.ProvideTransactionFieldDescriptionTask(this.api,{field:e,serializedTransaction:this.args.serializedTransaction,chainId:this.args.chainId,transactionParser:this.args.transactionParser,contextModule:this.args.contextModule,transactionEnums:this.args.context.transactionEnums}).run();if(c.isJust())return c}return s.Nothing}}0&&(module.exports={ProvideTransactionGenericContextTask});
|
|
2
|
-
//# sourceMappingURL=ProvideTransactionGenericContextTask.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/internal/app-binder/task/ProvideTransactionGenericContextTask.ts"],
|
|
4
|
-
"sourcesContent": ["import {\n type ClearSignContextSuccess,\n type ClearSignContextSuccessType,\n type ClearSignContextType,\n type ContextModule,\n type PkiCertificate,\n} from \"@ledgerhq/context-module\";\nimport {\n ByteArrayBuilder,\n type CommandErrorResult,\n type InternalApi,\n isSuccessCommandResult,\n LoadCertificateCommand,\n} from \"@ledgerhq/device-management-kit\";\nimport { DerivationPathUtils } from \"@ledgerhq/signer-utils\";\nimport { Just, type Maybe, Nothing } from \"purify-ts\";\n\nimport { ProvideTransactionInformationCommand } from \"@internal/app-binder/command/ProvideTransactionInformationCommand\";\nimport { StoreTransactionCommand } from \"@internal/app-binder/command/StoreTransactionCommand\";\nimport { type EthErrorCodes } from \"@internal/app-binder/command/utils/ethAppErrors\";\nimport { type TransactionParserService } from \"@internal/transaction/service/parser/TransactionParserService\";\n\nimport { ProvideTransactionFieldDescriptionTask } from \"./ProvideTransactionFieldDescriptionTask\";\nimport { SendCommandInChunksTask } from \"./SendCommandInChunksTask\";\nimport { SendPayloadInChunksTask } from \"./SendPayloadInChunksTask\";\n\nexport type GenericContext = {\n readonly transactionInfo: string;\n readonly transactionInfoCertificate: PkiCertificate;\n readonly transactionFields: ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n >[];\n readonly transactionEnums: ClearSignContextSuccess<ClearSignContextType.ENUM>[];\n};\n\nexport type ProvideTransactionGenericContextTaskArgs = {\n readonly contextModule: ContextModule;\n readonly transactionParser: TransactionParserService;\n readonly chainId: number;\n readonly derivationPath: string;\n readonly serializedTransaction: Uint8Array;\n readonly context: GenericContext;\n readonly web3Check: ClearSignContextSuccess<ClearSignContextType.WEB3_CHECK> | null;\n};\n\nexport type ProvideTransactionGenericContextTaskErrorCodes =\n void | EthErrorCodes;\n\nexport class ProvideTransactionGenericContextTask {\n constructor(\n private api: InternalApi,\n private args: ProvideTransactionGenericContextTaskArgs,\n ) {}\n\n async run(): Promise<\n Maybe<CommandErrorResult<ProvideTransactionGenericContextTaskErrorCodes>>\n > {\n // Store the transaction in the device memory\n const paths = DerivationPathUtils.splitPath(this.args.derivationPath);\n const builder = new ByteArrayBuilder();\n builder.add8BitUIntToData(paths.length);\n paths.forEach((path) => {\n builder.add32BitUIntToData(path);\n });\n builder.addBufferToData(this.args.serializedTransaction);\n const storeTransactionResult = await new SendCommandInChunksTask(this.api, {\n data: builder.build(),\n commandFactory: (args) =>\n new StoreTransactionCommand({\n serializedTransaction: args.chunkedData,\n isFirstChunk: args.isFirstChunk,\n }),\n }).run();\n\n if (!isSuccessCommandResult(storeTransactionResult)) {\n return Just(storeTransactionResult);\n }\n\n if (this.args.context.transactionInfoCertificate) {\n const { keyUsageNumber: keyUsage, payload: certificate } =\n this.args.context.transactionInfoCertificate;\n await this.api.sendCommand(\n new LoadCertificateCommand({\n keyUsage,\n certificate,\n }),\n );\n }\n\n // Provide the transaction information\n const transactionInfoResult = await new SendPayloadInChunksTask(this.api, {\n payload: this.args.context.transactionInfo,\n commandFactory: (args) =>\n new ProvideTransactionInformationCommand({\n data: args.chunkedData,\n isFirstChunk: args.isFirstChunk,\n }),\n }).run();\n\n if (!isSuccessCommandResult(transactionInfoResult)) {\n return Just(transactionInfoResult);\n }\n\n // If there is a web3 check, add it to the transactionField array\n const fields = this.args.web3Check\n ? [...this.args.context.transactionFields, this.args.web3Check]\n : this.args.context.transactionFields;\n\n // Provide the transaction field description and according metadata reference\n for (const field of fields) {\n const result = await new ProvideTransactionFieldDescriptionTask(\n this.api,\n {\n field,\n serializedTransaction: this.args.serializedTransaction,\n chainId: this.args.chainId,\n transactionParser: this.args.transactionParser,\n contextModule: this.args.contextModule,\n transactionEnums: this.args.context.transactionEnums,\n },\n ).run();\n\n if (result.isJust()) {\n return result;\n }\n }\n\n return Nothing;\n }\n}\n"],
|
|
5
|
-
"mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,0CAAAE,IAAA,eAAAC,EAAAH,GAOA,IAAAI,EAMO,2CACPC,EAAoC,kCACpCC,EAA0C,qBAE1CC,EAAqD,6EACrDC,EAAwC,gEAIxCC,EAAuD,oDACvDC,EAAwC,qCACxCC,EAAwC,qCAwBjC,MAAMT,CAAqC,CAChD,YACUU,EACAC,EACR,CAFQ,SAAAD,EACA,UAAAC,CACP,CAEH,MAAM,KAEJ,CAEA,MAAMC,EAAQ,sBAAoB,UAAU,KAAK,KAAK,cAAc,EAC9DC,EAAU,IAAI,mBACpBA,EAAQ,kBAAkBD,EAAM,MAAM,EACtCA,EAAM,QAASE,GAAS,CACtBD,EAAQ,mBAAmBC,CAAI,CACjC,CAAC,EACDD,EAAQ,gBAAgB,KAAK,KAAK,qBAAqB,EACvD,MAAME,EAAyB,MAAM,IAAI,0BAAwB,KAAK,IAAK,CACzE,KAAMF,EAAQ,MAAM,EACpB,eAAiBF,GACf,IAAI,0BAAwB,CAC1B,sBAAuBA,EAAK,YAC5B,aAAcA,EAAK,YACrB,CAAC,CACL,CAAC,EAAE,IAAI,EAEP,GAAI,IAAC,0BAAuBI,CAAsB,EAChD,SAAO,QAAKA,CAAsB,EAGpC,GAAI,KAAK,KAAK,QAAQ,2BAA4B,CAChD,KAAM,CAAE,eAAgBC,EAAU,QAASC,CAAY,EACrD,KAAK,KAAK,QAAQ,2BACpB,MAAM,KAAK,IAAI,YACb,IAAI,yBAAuB,CACzB,SAAAD,EACA,YAAAC,CACF,CAAC,CACH,CACF,CAGA,MAAMC,EAAwB,MAAM,IAAI,0BAAwB,KAAK,IAAK,CACxE,QAAS,KAAK,KAAK,QAAQ,gBAC3B,eAAiBP,GACf,IAAI,uCAAqC,CACvC,KAAMA,EAAK,YACX,aAAcA,EAAK,YACrB,CAAC,CACL,CAAC,EAAE,IAAI,EAEP,GAAI,IAAC,0BAAuBO,CAAqB,EAC/C,SAAO,QAAKA,CAAqB,EAInC,MAAMC,EAAS,KAAK,KAAK,UACrB,CAAC,GAAG,KAAK,KAAK,QAAQ,kBAAmB,KAAK,KAAK,SAAS,EAC5D,KAAK,KAAK,QAAQ,kBAGtB,UAAWC,KAASD,EAAQ,CAC1B,MAAME,EAAS,MAAM,IAAI,yCACvB,KAAK,IACL,CACE,MAAAD,EACA,sBAAuB,KAAK,KAAK,sBACjC,QAAS,KAAK,KAAK,QACnB,kBAAmB,KAAK,KAAK,kBAC7B,cAAe,KAAK,KAAK,cACzB,iBAAkB,KAAK,KAAK,QAAQ,gBACtC,CACF,EAAE,IAAI,EAEN,GAAIC,EAAO,OAAO,EAChB,OAAOA,CAEX,CAEA,OAAO,SACT,CACF",
|
|
6
|
-
"names": ["ProvideTransactionGenericContextTask_exports", "__export", "ProvideTransactionGenericContextTask", "__toCommonJS", "import_device_management_kit", "import_signer_utils", "import_purify_ts", "import_ProvideTransactionInformationCommand", "import_StoreTransactionCommand", "import_ProvideTransactionFieldDescriptionTask", "import_SendCommandInChunksTask", "import_SendPayloadInChunksTask", "api", "args", "paths", "builder", "path", "storeTransactionResult", "keyUsage", "certificate", "transactionInfoResult", "fields", "field", "result"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";var e=require("@ledgerhq/device-management-kit"),o=require("purify-ts"),m=require("../../app-binder/device-action/__test-utils__/makeInternalApi"),i=require("./ProvideTransactionFieldDescriptionTask"),r=require("./ProvideTransactionGenericContextTask"),a=require("./SendCommandInChunksTask"),c=require("./SendPayloadInChunksTask");describe("ProvideTransactionGenericContextTask",()=>{const C="44/60'/0'/0'/0/0",y=new Uint8Array([18,52]),l="0x5678",u=[],d=[],v=1,x={},T={},p={keyUsageNumber:0,payload:new Uint8Array([18,52])},s={derivationPath:C,serializedTransaction:y,context:{transactionInfo:l,transactionInfoCertificate:p,transactionFields:u,transactionEnums:d},chainId:v,transactionParser:x,contextModule:T,web3Check:null},n=(0,m.makeDeviceActionInternalApiMock)();describe("run",()=>{beforeEach(()=>{vi.resetAllMocks()}),describe("should return an error",()=>{it("when storeTransactionResult fail",async()=>{vi.spyOn(a.SendCommandInChunksTask.prototype,"run").mockResolvedValue((0,e.CommandResultFactory)({error:new e.InvalidStatusWordError("storeTransactionError")})),vi.spyOn(n,"sendCommand").mockResolvedValueOnce((0,e.CommandResultFactory)({data:void 0}));const t=await new r.ProvideTransactionGenericContextTask(n,s).run();expect(t).toEqual((0,o.Just)((0,e.CommandResultFactory)({error:new e.InvalidStatusWordError("storeTransactionError")})))}),it("when provideTransactionInformationResult fail",async()=>{vi.spyOn(a.SendCommandInChunksTask.prototype,"run").mockResolvedValue((0,e.CommandResultFactory)({data:"0x1234"})),vi.spyOn(c.SendPayloadInChunksTask.prototype,"run").mockResolvedValue((0,e.CommandResultFactory)({error:new e.InvalidStatusWordError("provideTransactionInformationError")})),vi.spyOn(n,"sendCommand").mockResolvedValueOnce((0,e.CommandResultFactory)({data:void 0}));const t=await new r.ProvideTransactionGenericContextTask(n,s).run();expect(t).toEqual((0,o.Just)((0,e.CommandResultFactory)({error:new e.InvalidStatusWordError("provideTransactionInformationError")})))}),it("when ProvideTransactionGenericContextTask fail",async()=>{vi.spyOn(a.SendCommandInChunksTask.prototype,"run").mockResolvedValue((0,e.CommandResultFactory)({data:"0x1234"})),vi.spyOn(c.SendPayloadInChunksTask.prototype,"run").mockResolvedValue((0,e.CommandResultFactory)({data:"0x5678"})),vi.spyOn(i.ProvideTransactionFieldDescriptionTask.prototype,"run").mockResolvedValue((0,o.Just)((0,e.CommandResultFactory)({error:new e.InvalidStatusWordError("provideTransactionGenericContextTaskError")}))),vi.spyOn(n,"sendCommand").mockResolvedValueOnce((0,e.CommandResultFactory)({data:void 0}));const t=await new r.ProvideTransactionGenericContextTask(n,{...s,context:{transactionInfo:l,transactionInfoCertificate:p,transactionFields:[{}],transactionEnums:d}}).run();expect(t).toEqual((0,o.Just)((0,e.CommandResultFactory)({error:new e.InvalidStatusWordError("provideTransactionGenericContextTaskError")})))})}),it("should call ProvideTransactionFieldDescriptionTask for each field",async()=>{const t=["field-1","field-2"];vi.spyOn(a.SendCommandInChunksTask.prototype,"run").mockResolvedValue((0,e.CommandResultFactory)({data:"0x1234"})),vi.spyOn(c.SendPayloadInChunksTask.prototype,"run").mockResolvedValue((0,e.CommandResultFactory)({data:"0x5678"})),vi.spyOn(i.ProvideTransactionFieldDescriptionTask.prototype,"run").mockResolvedValue(o.Nothing),vi.spyOn(n,"sendCommand").mockResolvedValueOnce((0,e.CommandResultFactory)({data:void 0})),await new r.ProvideTransactionGenericContextTask(n,{...s,context:{transactionInfo:l,transactionInfoCertificate:p,transactionFields:t,transactionEnums:d}}).run(),expect(i.ProvideTransactionFieldDescriptionTask.prototype.run).toHaveBeenCalledTimes(2)}),it("should return Nothing when all fields are provided",async()=>{vi.spyOn(a.SendCommandInChunksTask.prototype,"run").mockResolvedValue((0,e.CommandResultFactory)({data:"0x1234"})),vi.spyOn(c.SendPayloadInChunksTask.prototype,"run").mockResolvedValue((0,e.CommandResultFactory)({data:"0x5678"})),vi.spyOn(i.ProvideTransactionFieldDescriptionTask.prototype,"run").mockResolvedValue(o.Nothing),vi.spyOn(n,"sendCommand").mockResolvedValueOnce((0,e.CommandResultFactory)({data:void 0}));const t=await new r.ProvideTransactionGenericContextTask(n,s).run();expect(t).toEqual(o.Nothing)}),it("should load the transaction info certificate",async()=>{vi.spyOn(a.SendCommandInChunksTask.prototype,"run").mockResolvedValue((0,e.CommandResultFactory)({data:"0x1234"})),vi.spyOn(c.SendPayloadInChunksTask.prototype,"run").mockResolvedValue((0,e.CommandResultFactory)({data:"0x5678"})),vi.spyOn(i.ProvideTransactionFieldDescriptionTask.prototype,"run").mockResolvedValue(o.Nothing),await new r.ProvideTransactionGenericContextTask(n,{...s,context:{transactionInfo:l,transactionInfoCertificate:p,transactionFields:u,transactionEnums:d}}).run(),expect(n.sendCommand).toHaveBeenCalledTimes(1)})})});
|
|
2
|
-
//# sourceMappingURL=ProvideTransactionGenericContextTask.test.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/internal/app-binder/task/ProvideTransactionGenericContextTask.test.ts"],
|
|
4
|
-
"sourcesContent": ["import {\n type ClearSignContextSuccess,\n type ClearSignContextSuccessType,\n type ClearSignContextType,\n type ContextModule,\n type PkiCertificate,\n} from \"@ledgerhq/context-module\";\nimport {\n type CommandErrorResult,\n CommandResultFactory,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\nimport { Just, Nothing } from \"purify-ts\";\n\nimport { makeDeviceActionInternalApiMock } from \"@internal/app-binder/device-action/__test-utils__/makeInternalApi\";\nimport { type TransactionParserService } from \"@internal/transaction/service/parser/TransactionParserService\";\n\nimport { ProvideTransactionFieldDescriptionTask } from \"./ProvideTransactionFieldDescriptionTask\";\nimport {\n ProvideTransactionGenericContextTask,\n type ProvideTransactionGenericContextTaskArgs,\n} from \"./ProvideTransactionGenericContextTask\";\nimport { SendCommandInChunksTask } from \"./SendCommandInChunksTask\";\nimport { SendPayloadInChunksTask } from \"./SendPayloadInChunksTask\";\n\ndescribe(\"ProvideTransactionGenericContextTask\", () => {\n const derivationPath = \"44/60'/0'/0'/0/0\";\n const serializedTransaction = new Uint8Array([0x12, 0x34]);\n const transactionInfo = \"0x5678\";\n const transactionFields: ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n >[] = [];\n const transactionEnums: ClearSignContextSuccess<ClearSignContextType.ENUM>[] =\n [];\n const chainId = 1;\n const transactionParser = {} as TransactionParserService;\n const contextModule = {} as ContextModule;\n const transactionInfoCertificate: PkiCertificate = {\n keyUsageNumber: 0,\n payload: new Uint8Array([0x12, 0x34]),\n };\n\n const defaultArgs: ProvideTransactionGenericContextTaskArgs = {\n derivationPath,\n serializedTransaction,\n context: {\n transactionInfo,\n transactionInfoCertificate,\n transactionFields,\n transactionEnums,\n },\n chainId,\n transactionParser,\n contextModule,\n web3Check: null,\n };\n\n const apiMock = makeDeviceActionInternalApiMock();\n\n describe(\"run\", () => {\n beforeEach(() => {\n vi.resetAllMocks();\n });\n\n describe(\"should return an error\", () => {\n it(\"when storeTransactionResult fail\", async () => {\n // GIVEN\n vi.spyOn(SendCommandInChunksTask.prototype, \"run\").mockResolvedValue(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"storeTransactionError\"),\n }),\n );\n // loadCertificateCommand\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({\n data: undefined,\n }),\n );\n\n // WHEN\n const result = await new ProvideTransactionGenericContextTask(\n apiMock,\n defaultArgs,\n ).run();\n\n // THEN\n expect(result).toEqual(\n Just(\n CommandResultFactory({\n error: new InvalidStatusWordError(\"storeTransactionError\"),\n }),\n ),\n );\n });\n\n it(\"when provideTransactionInformationResult fail\", async () => {\n // GIVEN\n vi.spyOn(SendCommandInChunksTask.prototype, \"run\").mockResolvedValue(\n CommandResultFactory({\n data: \"0x1234\",\n }),\n );\n vi.spyOn(SendPayloadInChunksTask.prototype, \"run\").mockResolvedValue(\n CommandResultFactory({\n error: new InvalidStatusWordError(\n \"provideTransactionInformationError\",\n ),\n }),\n );\n // loadCertificateCommand\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({\n data: undefined,\n }),\n );\n\n // WHEN\n const result = await new ProvideTransactionGenericContextTask(\n apiMock,\n defaultArgs,\n ).run();\n\n // THEN\n expect(result).toEqual(\n Just(\n CommandResultFactory({\n error: new InvalidStatusWordError(\n \"provideTransactionInformationError\",\n ),\n }),\n ),\n );\n });\n\n it(\"when ProvideTransactionGenericContextTask fail\", async () => {\n // GIVEN\n vi.spyOn(SendCommandInChunksTask.prototype, \"run\").mockResolvedValue(\n CommandResultFactory({\n data: \"0x1234\",\n }),\n );\n vi.spyOn(SendPayloadInChunksTask.prototype, \"run\").mockResolvedValue(\n CommandResultFactory({\n data: \"0x5678\",\n }),\n );\n vi.spyOn(\n ProvideTransactionFieldDescriptionTask.prototype,\n \"run\",\n ).mockResolvedValue(\n Just(\n CommandResultFactory({\n error: new InvalidStatusWordError(\n \"provideTransactionGenericContextTaskError\",\n ),\n }) as CommandErrorResult,\n ),\n );\n // loadCertificateCommand\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({\n data: undefined,\n }),\n );\n\n // WHEN\n const result = await new ProvideTransactionGenericContextTask(apiMock, {\n ...defaultArgs,\n context: {\n transactionInfo,\n transactionInfoCertificate,\n transactionFields: [\n {} as ClearSignContextSuccess<ClearSignContextType.TRANSACTION_INFO>,\n ],\n transactionEnums,\n },\n }).run();\n\n // THEN\n expect(result).toEqual(\n Just(\n CommandResultFactory({\n error: new InvalidStatusWordError(\n \"provideTransactionGenericContextTaskError\",\n ),\n }),\n ),\n );\n });\n });\n\n it(\"should call ProvideTransactionFieldDescriptionTask for each field\", async () => {\n // GIVEN\n const fields: ClearSignContextSuccess<ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION>[] =\n [\n \"field-1\" as unknown as ClearSignContextSuccess<ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION>,\n \"field-2\" as unknown as ClearSignContextSuccess<ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION>,\n ];\n vi.spyOn(SendCommandInChunksTask.prototype, \"run\").mockResolvedValue(\n CommandResultFactory({\n data: \"0x1234\",\n }),\n );\n vi.spyOn(SendPayloadInChunksTask.prototype, \"run\").mockResolvedValue(\n CommandResultFactory({\n data: \"0x5678\",\n }),\n );\n vi.spyOn(\n ProvideTransactionFieldDescriptionTask.prototype,\n \"run\",\n ).mockResolvedValue(Nothing);\n // loadCertificateCommand\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({\n data: undefined,\n }),\n );\n\n // WHEN\n await new ProvideTransactionGenericContextTask(apiMock, {\n ...defaultArgs,\n context: {\n transactionInfo,\n transactionInfoCertificate,\n transactionFields: fields,\n transactionEnums,\n },\n }).run();\n\n // THEN\n expect(\n ProvideTransactionFieldDescriptionTask.prototype.run,\n ).toHaveBeenCalledTimes(2);\n });\n\n it(\"should return Nothing when all fields are provided\", async () => {\n // GIVEN\n vi.spyOn(SendCommandInChunksTask.prototype, \"run\").mockResolvedValue(\n CommandResultFactory({\n data: \"0x1234\",\n }),\n );\n vi.spyOn(SendPayloadInChunksTask.prototype, \"run\").mockResolvedValue(\n CommandResultFactory({\n data: \"0x5678\",\n }),\n );\n vi.spyOn(\n ProvideTransactionFieldDescriptionTask.prototype,\n \"run\",\n ).mockResolvedValue(Nothing);\n // loadCertificateCommand\n vi.spyOn(apiMock, \"sendCommand\").mockResolvedValueOnce(\n CommandResultFactory({\n data: undefined,\n }),\n );\n\n // WHEN\n const result = await new ProvideTransactionGenericContextTask(\n apiMock,\n defaultArgs,\n ).run();\n\n // THEN\n expect(result).toEqual(Nothing);\n });\n\n it(\"should load the transaction info certificate\", async () => {\n // GIVEN\n vi.spyOn(SendCommandInChunksTask.prototype, \"run\").mockResolvedValue(\n CommandResultFactory({\n data: \"0x1234\",\n }),\n );\n vi.spyOn(SendPayloadInChunksTask.prototype, \"run\").mockResolvedValue(\n CommandResultFactory({\n data: \"0x5678\",\n }),\n );\n vi.spyOn(\n ProvideTransactionFieldDescriptionTask.prototype,\n \"run\",\n ).mockResolvedValue(Nothing);\n\n // WHEN\n await new ProvideTransactionGenericContextTask(apiMock, {\n ...defaultArgs,\n context: {\n transactionInfo,\n transactionInfoCertificate,\n transactionFields,\n transactionEnums,\n },\n }).run();\n\n // THEN\n expect(apiMock.sendCommand).toHaveBeenCalledTimes(1);\n });\n });\n});\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["import_device_management_kit", "import_purify_ts", "import_makeInternalApi", "import_ProvideTransactionFieldDescriptionTask", "import_ProvideTransactionGenericContextTask", "import_SendCommandInChunksTask", "import_SendPayloadInChunksTask", "derivationPath", "serializedTransaction", "transactionInfo", "transactionFields", "transactionEnums", "chainId", "transactionParser", "contextModule", "transactionInfoCertificate", "defaultArgs", "apiMock", "result", "fields"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";var a=Object.defineProperty;var f=Object.getOwnPropertyDescriptor;var y=Object.getOwnPropertyNames;var b=Object.prototype.hasOwnProperty;var g=(o,t)=>{for(var r in t)a(o,r,{get:t[r],enumerable:!0})},T=(o,t,r,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let e of y(t))!b.call(o,e)&&e!==r&&a(o,e,{get:()=>t[e],enumerable:!(i=f(t,e))||i.enumerable});return o};var x=o=>T(a({},"__esModule",{value:!0}),o),u=(o,t,r,i)=>{for(var e=i>1?void 0:i?f(t,r):t,s=o.length-1,c;s>=0;s--)(c=o[s])&&(e=(i?c(t,r,e):c(e))||e);return i&&e&&a(t,r,e),e};var M={};g(M,{EthersRawTransactionMapper:()=>n});module.exports=x(M);var d=require("@ledgerhq/device-management-kit"),m=require("ethers"),l=require("inversify"),p=require("purify-ts");let n=class{map(t){try{const r=m.ethers.Transaction.from((0,d.bufferToHexaString)(t));return(0,p.Just)({subset:{chainId:Number(r.chainId.toString()),to:r.to??void 0,data:r.data},serializedTransaction:(0,m.getBytes)(r.unsignedSerialized),type:r.type||0})}catch{return p.Nothing}}};n=u([(0,l.injectable)()],n);0&&(module.exports={EthersRawTransactionMapper});
|
|
2
|
-
//# sourceMappingURL=EthersRawTransactionMapper.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../../src/internal/transaction/service/mapper/EthersRawTransactionMapper.ts"],
|
|
4
|
-
"sourcesContent": ["import { bufferToHexaString } from \"@ledgerhq/device-management-kit\";\nimport { ethers, getBytes } from \"ethers\";\nimport { injectable } from \"inversify\";\nimport { Just, Maybe, Nothing } from \"purify-ts\";\n\nimport { TransactionMapperResult } from \"./model/TransactionMapperResult\";\nimport { TransactionMapper } from \"./TransactionMapper\";\n\n@injectable()\nexport class EthersRawTransactionMapper implements TransactionMapper {\n map(transaction: Uint8Array): Maybe<TransactionMapperResult> {\n try {\n const tx = ethers.Transaction.from(bufferToHexaString(transaction));\n return Just({\n subset: {\n chainId: Number(tx.chainId.toString()),\n to: tx.to ?? undefined,\n data: tx.data,\n },\n serializedTransaction: getBytes(tx.unsignedSerialized),\n type: tx.type || 0,\n });\n } catch (_error) {\n return Nothing;\n }\n }\n}\n"],
|
|
5
|
-
"mappings": "2iBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,gCAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAAmC,2CACnCC,EAAiC,kBACjCC,EAA2B,qBAC3BC,EAAqC,qBAM9B,IAAMC,EAAN,KAA8D,CACnE,IAAIC,EAAyD,CAC3D,GAAI,CACF,MAAMC,EAAK,SAAO,YAAY,QAAK,sBAAmBD,CAAW,CAAC,EAClE,SAAO,QAAK,CACV,OAAQ,CACN,QAAS,OAAOC,EAAG,QAAQ,SAAS,CAAC,EACrC,GAAIA,EAAG,IAAM,OACb,KAAMA,EAAG,IACX,EACA,yBAAuB,YAASA,EAAG,kBAAkB,EACrD,KAAMA,EAAG,MAAQ,CACnB,CAAC,CACH,MAAiB,CACf,OAAO,SACT,CACF,CACF,EAjBaF,EAANG,EAAA,IADN,cAAW,GACCH",
|
|
6
|
-
"names": ["EthersRawTransactionMapper_exports", "__export", "EthersRawTransactionMapper", "__toCommonJS", "import_device_management_kit", "import_ethers", "import_inversify", "import_purify_ts", "EthersRawTransactionMapper", "transaction", "tx", "__decorateClass"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";var r=require("@ledgerhq/device-management-kit"),a=require("ethers"),o=require("./EthersRawTransactionMapper");describe("RawTransactionMapper",()=>{const n=new o.EthersRawTransactionMapper;it("should return Nothing when empty raw transaction",()=>{const e=new Uint8Array(0),t=n.map(e);expect(t.isNothing()).toBeTruthy()}),it("should return Nothing when invalid raw transaction",()=>{const e=new Uint8Array(1),t=n.map(e);expect(t.isNothing()).toBeTruthy()}),it("should return a TransactionMapperResult",()=>{const e=(0,r.hexaStringToBuffer)(a.Transaction.from({chainId:1,to:"0x1234567890123456789012345678901234567890",data:"0x123456"}).unsignedSerialized),t=n.map(e);expect(t.isJust()).toBeTruthy(),expect(t.extract()?.serializedTransaction).toEqual((0,a.getBytes)(e)),expect(t.extract()?.subset).toEqual({chainId:1,to:"0x1234567890123456789012345678901234567890",data:"0x123456"}),expect(t.extract()?.type).toEqual(2)}),it("should return a TransactionMapperResult with undefined to",()=>{const e=(0,r.hexaStringToBuffer)(a.Transaction.from({chainId:1,data:"0x123456"}).unsignedSerialized),t=n.map(e);expect(t.isJust()).toBeTruthy(),expect(t.extract()?.serializedTransaction).toEqual((0,a.getBytes)(e)),expect(t.extract()?.subset).toEqual({chainId:1,to:void 0,data:"0x123456"}),expect(t.extract()?.type).toEqual(2)}),it("should return a TransactionMapperResult with empty data",()=>{const e=(0,r.hexaStringToBuffer)(a.Transaction.from({chainId:1,to:"0x1234567890123456789012345678901234567890"}).unsignedSerialized),t=n.map(e);expect(t.isJust()).toBeTruthy(),expect(t.extract()?.serializedTransaction).toEqual((0,a.getBytes)(e)),expect(t.extract()?.subset).toEqual({chainId:1,to:"0x1234567890123456789012345678901234567890",data:"0x"}),expect(t.extract()?.type).toEqual(2)}),it("should return a TransactionMapperResult with a custom type",()=>{const e=(0,r.hexaStringToBuffer)(a.Transaction.from({chainId:1,to:"0x1234567890123456789012345678901234567890",data:"0x123456",type:1}).unsignedSerialized),t=n.map(e);expect(t.isJust()).toBeTruthy(),expect(t.extract()?.serializedTransaction).toEqual((0,a.getBytes)(e)),expect(t.extract()?.subset).toEqual({chainId:1,to:"0x1234567890123456789012345678901234567890",data:"0x123456"}),expect(t.extract()?.type).toEqual(1)})});
|
|
2
|
-
//# sourceMappingURL=EthersRawTransactionMapper.test.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../../src/internal/transaction/service/mapper/EthersRawTransactionMapper.test.ts"],
|
|
4
|
-
"sourcesContent": ["import { hexaStringToBuffer } from \"@ledgerhq/device-management-kit\";\nimport { getBytes, Transaction } from \"ethers\";\n\nimport { EthersRawTransactionMapper } from \"./EthersRawTransactionMapper\";\n\ndescribe(\"RawTransactionMapper\", () => {\n const mapper = new EthersRawTransactionMapper();\n\n it(\"should return Nothing when empty raw transaction\", () => {\n // GIVEN\n const transaction = new Uint8Array(0);\n\n // WHEN\n const result = mapper.map(transaction);\n\n // THEN\n expect(result.isNothing()).toBeTruthy();\n });\n\n it(\"should return Nothing when invalid raw transaction\", () => {\n // GIVEN\n const transaction = new Uint8Array(1);\n\n // WHEN\n const result = mapper.map(transaction);\n\n // THEN\n expect(result.isNothing()).toBeTruthy();\n });\n\n it(\"should return a TransactionMapperResult\", () => {\n // GIVEN\n const transaction = hexaStringToBuffer(\n Transaction.from({\n chainId: 1,\n to: \"0x1234567890123456789012345678901234567890\",\n data: \"0x123456\",\n }).unsignedSerialized,\n )!;\n\n // WHEN\n const result = mapper.map(transaction);\n\n // THEN\n expect(result.isJust()).toBeTruthy();\n expect(result.extract()?.serializedTransaction).toEqual(\n getBytes(transaction),\n );\n expect(result.extract()?.subset).toEqual({\n chainId: 1,\n to: \"0x1234567890123456789012345678901234567890\",\n data: \"0x123456\",\n });\n expect(result.extract()?.type).toEqual(2);\n });\n\n it(\"should return a TransactionMapperResult with undefined to\", () => {\n // GIVEN\n const transaction = hexaStringToBuffer(\n Transaction.from({\n chainId: 1,\n data: \"0x123456\",\n }).unsignedSerialized,\n )!;\n\n // WHEN\n const result = mapper.map(transaction);\n\n // THEN\n expect(result.isJust()).toBeTruthy();\n expect(result.extract()?.serializedTransaction).toEqual(\n getBytes(transaction),\n );\n expect(result.extract()?.subset).toEqual({\n chainId: 1,\n to: undefined,\n data: \"0x123456\",\n });\n expect(result.extract()?.type).toEqual(2);\n });\n\n it(\"should return a TransactionMapperResult with empty data\", () => {\n // GIVEN\n const transaction = hexaStringToBuffer(\n Transaction.from({\n chainId: 1,\n to: \"0x1234567890123456789012345678901234567890\",\n }).unsignedSerialized,\n )!;\n\n // WHEN\n const result = mapper.map(transaction);\n\n // THEN\n expect(result.isJust()).toBeTruthy();\n expect(result.extract()?.serializedTransaction).toEqual(\n getBytes(transaction),\n );\n expect(result.extract()?.subset).toEqual({\n chainId: 1,\n to: \"0x1234567890123456789012345678901234567890\",\n data: \"0x\",\n });\n expect(result.extract()?.type).toEqual(2);\n });\n\n it(\"should return a TransactionMapperResult with a custom type\", () => {\n // GIVEN\n const transaction = hexaStringToBuffer(\n Transaction.from({\n chainId: 1,\n to: \"0x1234567890123456789012345678901234567890\",\n data: \"0x123456\",\n type: 1,\n }).unsignedSerialized,\n )!;\n\n // WHEN\n const result = mapper.map(transaction);\n\n // THEN\n expect(result.isJust()).toBeTruthy();\n expect(result.extract()?.serializedTransaction).toEqual(\n getBytes(transaction),\n );\n expect(result.extract()?.subset).toEqual({\n chainId: 1,\n to: \"0x1234567890123456789012345678901234567890\",\n data: \"0x123456\",\n });\n expect(result.extract()?.type).toEqual(1);\n });\n});\n"],
|
|
5
|
-
"mappings": "aAAA,IAAAA,EAAmC,2CACnCC,EAAsC,kBAEtCC,EAA2C,wCAE3C,SAAS,uBAAwB,IAAM,CACrC,MAAMC,EAAS,IAAI,6BAEnB,GAAG,mDAAoD,IAAM,CAE3D,MAAMC,EAAc,IAAI,WAAW,CAAC,EAG9BC,EAASF,EAAO,IAAIC,CAAW,EAGrC,OAAOC,EAAO,UAAU,CAAC,EAAE,WAAW,CACxC,CAAC,EAED,GAAG,qDAAsD,IAAM,CAE7D,MAAMD,EAAc,IAAI,WAAW,CAAC,EAG9BC,EAASF,EAAO,IAAIC,CAAW,EAGrC,OAAOC,EAAO,UAAU,CAAC,EAAE,WAAW,CACxC,CAAC,EAED,GAAG,0CAA2C,IAAM,CAElD,MAAMD,KAAc,sBAClB,cAAY,KAAK,CACf,QAAS,EACT,GAAI,6CACJ,KAAM,UACR,CAAC,EAAE,kBACL,EAGMC,EAASF,EAAO,IAAIC,CAAW,EAGrC,OAAOC,EAAO,OAAO,CAAC,EAAE,WAAW,EACnC,OAAOA,EAAO,QAAQ,GAAG,qBAAqB,EAAE,WAC9C,YAASD,CAAW,CACtB,EACA,OAAOC,EAAO,QAAQ,GAAG,MAAM,EAAE,QAAQ,CACvC,QAAS,EACT,GAAI,6CACJ,KAAM,UACR,CAAC,EACD,OAAOA,EAAO,QAAQ,GAAG,IAAI,EAAE,QAAQ,CAAC,CAC1C,CAAC,EAED,GAAG,4DAA6D,IAAM,CAEpE,MAAMD,KAAc,sBAClB,cAAY,KAAK,CACf,QAAS,EACT,KAAM,UACR,CAAC,EAAE,kBACL,EAGMC,EAASF,EAAO,IAAIC,CAAW,EAGrC,OAAOC,EAAO,OAAO,CAAC,EAAE,WAAW,EACnC,OAAOA,EAAO,QAAQ,GAAG,qBAAqB,EAAE,WAC9C,YAASD,CAAW,CACtB,EACA,OAAOC,EAAO,QAAQ,GAAG,MAAM,EAAE,QAAQ,CACvC,QAAS,EACT,GAAI,OACJ,KAAM,UACR,CAAC,EACD,OAAOA,EAAO,QAAQ,GAAG,IAAI,EAAE,QAAQ,CAAC,CAC1C,CAAC,EAED,GAAG,0DAA2D,IAAM,CAElE,MAAMD,KAAc,sBAClB,cAAY,KAAK,CACf,QAAS,EACT,GAAI,4CACN,CAAC,EAAE,kBACL,EAGMC,EAASF,EAAO,IAAIC,CAAW,EAGrC,OAAOC,EAAO,OAAO,CAAC,EAAE,WAAW,EACnC,OAAOA,EAAO,QAAQ,GAAG,qBAAqB,EAAE,WAC9C,YAASD,CAAW,CACtB,EACA,OAAOC,EAAO,QAAQ,GAAG,MAAM,EAAE,QAAQ,CACvC,QAAS,EACT,GAAI,6CACJ,KAAM,IACR,CAAC,EACD,OAAOA,EAAO,QAAQ,GAAG,IAAI,EAAE,QAAQ,CAAC,CAC1C,CAAC,EAED,GAAG,6DAA8D,IAAM,CAErE,MAAMD,KAAc,sBAClB,cAAY,KAAK,CACf,QAAS,EACT,GAAI,6CACJ,KAAM,WACN,KAAM,CACR,CAAC,EAAE,kBACL,EAGMC,EAASF,EAAO,IAAIC,CAAW,EAGrC,OAAOC,EAAO,OAAO,CAAC,EAAE,WAAW,EACnC,OAAOA,EAAO,QAAQ,GAAG,qBAAqB,EAAE,WAC9C,YAASD,CAAW,CACtB,EACA,OAAOC,EAAO,QAAQ,GAAG,MAAM,EAAE,QAAQ,CACvC,QAAS,EACT,GAAI,6CACJ,KAAM,UACR,CAAC,EACD,OAAOA,EAAO,QAAQ,GAAG,IAAI,EAAE,QAAQ,CAAC,CAC1C,CAAC,CACH,CAAC",
|
|
6
|
-
"names": ["import_device_management_kit", "import_ethers", "import_EthersRawTransactionMapper", "mapper", "transaction", "result"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";var p=Object.defineProperty;var o=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var s=Object.prototype.hasOwnProperty;var c=(r,a,n,e)=>{if(a&&typeof a=="object"||typeof a=="function")for(let t of i(a))!s.call(r,t)&&t!==n&&p(r,t,{get:()=>a[t],enumerable:!(e=o(a,t))||e.enumerable});return r};var m=r=>c(p({},"__esModule",{value:!0}),r);var y={};module.exports=m(y);
|
|
2
|
-
//# sourceMappingURL=TransactionMapper.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../../src/internal/transaction/service/mapper/TransactionMapper.ts"],
|
|
4
|
-
"sourcesContent": ["import { type Maybe } from \"purify-ts\";\n\nimport { type TransactionMapperResult } from \"./model/TransactionMapperResult\";\n\nexport interface TransactionMapper {\n map(transaction: Uint8Array): Maybe<TransactionMapperResult>;\n}\n"],
|
|
5
|
-
"mappings": "+WAAA,IAAAA,EAAA,kBAAAC,EAAAD",
|
|
6
|
-
"names": ["TransactionMapper_exports", "__toCommonJS"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";var a=require("purify-ts"),o=require("./TransactionMapperService");const n=t=>({map:vi.fn().mockReturnValue(t)});describe("TransactionMapperService",()=>{let t;beforeEach(()=>{vi.clearAllMocks()}),it("should return a TransactionSubset",()=>{const e=[n((0,a.Just)({data:"data"})),n(a.Nothing)];t=new o.TransactionMapperService(e);const r=t.mapTransactionToSubset(new Uint8Array(0));expect(e[0].map).toHaveBeenCalled(),expect(e[1].map).not.toHaveBeenCalled(),expect(r).toEqual((0,a.Right)({data:"data"}))}),it("should return a TransactionSubset for the second mapper",()=>{const e=[n(a.Nothing),n((0,a.Just)({data:"data-2"}))];t=new o.TransactionMapperService(e);const r=t.mapTransactionToSubset(new Uint8Array(0));expect(e[0].map).toHaveBeenCalled(),expect(e[1].map).toHaveBeenCalled(),expect(r).toEqual((0,a.Right)({data:"data-2"}))}),it("should return an error",()=>{const e=[n(a.Nothing),n(a.Nothing)];t=new o.TransactionMapperService(e);const r=t.mapTransactionToSubset(new Uint8Array(0));expect(e[0].map).toHaveBeenCalled(),expect(e[1].map).toHaveBeenCalled(),expect(r.isLeft()).toBeTruthy()})});
|
|
2
|
-
//# sourceMappingURL=TransactionMapperService.test.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../../src/internal/transaction/service/mapper/TransactionMapperService.test.ts"],
|
|
4
|
-
"sourcesContent": ["import { type TransactionSubset } from \"@ledgerhq/context-module\";\nimport { Just, type Maybe, Nothing, Right } from \"purify-ts\";\n\nimport { TransactionMapperService } from \"./TransactionMapperService\";\n\nconst transactionMapperBuilder = (value?: Maybe<TransactionSubset>) => {\n const map = vi.fn().mockReturnValue(value);\n return { map };\n};\n\ndescribe(\"TransactionMapperService\", () => {\n let service: TransactionMapperService;\n\n beforeEach(() => {\n vi.clearAllMocks();\n });\n\n it(\"should return a TransactionSubset\", () => {\n // GIVEN\n const mappers = [\n transactionMapperBuilder(Just({ data: \"data\" } as TransactionSubset)),\n transactionMapperBuilder(Nothing),\n ];\n service = new TransactionMapperService(mappers);\n\n // WHEN\n const result = service.mapTransactionToSubset(new Uint8Array(0));\n\n // THEN\n expect(mappers[0]!.map).toHaveBeenCalled();\n expect(mappers[1]!.map).not.toHaveBeenCalled();\n expect(result).toEqual(Right({ data: \"data\" }));\n });\n\n it(\"should return a TransactionSubset for the second mapper\", () => {\n // GIVEN\n const mappers = [\n transactionMapperBuilder(Nothing),\n transactionMapperBuilder(Just({ data: \"data-2\" } as TransactionSubset)),\n ];\n service = new TransactionMapperService(mappers);\n\n // WHEN\n const result = service.mapTransactionToSubset(new Uint8Array(0));\n\n // THEN\n expect(mappers[0]!.map).toHaveBeenCalled();\n expect(mappers[1]!.map).toHaveBeenCalled();\n expect(result).toEqual(Right({ data: \"data-2\" }));\n });\n\n it(\"should return an error\", () => {\n // GIVEN\n const mappers = [\n transactionMapperBuilder(Nothing),\n transactionMapperBuilder(Nothing),\n ];\n service = new TransactionMapperService(mappers);\n\n // WHEN\n const result = service.mapTransactionToSubset(new Uint8Array(0));\n\n // THEN\n expect(mappers[0]!.map).toHaveBeenCalled();\n expect(mappers[1]!.map).toHaveBeenCalled();\n expect(result.isLeft()).toBeTruthy();\n });\n});\n"],
|
|
5
|
-
"mappings": "aACA,IAAAA,EAAiD,qBAEjDC,EAAyC,sCAEzC,MAAMC,EAA4BC,IAEzB,CAAE,IADG,GAAG,GAAG,EAAE,gBAAgBA,CAAK,CAC5B,GAGf,SAAS,2BAA4B,IAAM,CACzC,IAAIC,EAEJ,WAAW,IAAM,CACf,GAAG,cAAc,CACnB,CAAC,EAED,GAAG,oCAAqC,IAAM,CAE5C,MAAMC,EAAU,CACdH,KAAyB,QAAK,CAAE,KAAM,MAAO,CAAsB,CAAC,EACpEA,EAAyB,SAAO,CAClC,EACAE,EAAU,IAAI,2BAAyBC,CAAO,EAG9C,MAAMC,EAASF,EAAQ,uBAAuB,IAAI,WAAW,CAAC,CAAC,EAG/D,OAAOC,EAAQ,CAAC,EAAG,GAAG,EAAE,iBAAiB,EACzC,OAAOA,EAAQ,CAAC,EAAG,GAAG,EAAE,IAAI,iBAAiB,EAC7C,OAAOC,CAAM,EAAE,WAAQ,SAAM,CAAE,KAAM,MAAO,CAAC,CAAC,CAChD,CAAC,EAED,GAAG,0DAA2D,IAAM,CAElE,MAAMD,EAAU,CACdH,EAAyB,SAAO,EAChCA,KAAyB,QAAK,CAAE,KAAM,QAAS,CAAsB,CAAC,CACxE,EACAE,EAAU,IAAI,2BAAyBC,CAAO,EAG9C,MAAMC,EAASF,EAAQ,uBAAuB,IAAI,WAAW,CAAC,CAAC,EAG/D,OAAOC,EAAQ,CAAC,EAAG,GAAG,EAAE,iBAAiB,EACzC,OAAOA,EAAQ,CAAC,EAAG,GAAG,EAAE,iBAAiB,EACzC,OAAOC,CAAM,EAAE,WAAQ,SAAM,CAAE,KAAM,QAAS,CAAC,CAAC,CAClD,CAAC,EAED,GAAG,yBAA0B,IAAM,CAEjC,MAAMD,EAAU,CACdH,EAAyB,SAAO,EAChCA,EAAyB,SAAO,CAClC,EACAE,EAAU,IAAI,2BAAyBC,CAAO,EAG9C,MAAMC,EAASF,EAAQ,uBAAuB,IAAI,WAAW,CAAC,CAAC,EAG/D,OAAOC,EAAQ,CAAC,EAAG,GAAG,EAAE,iBAAiB,EACzC,OAAOA,EAAQ,CAAC,EAAG,GAAG,EAAE,iBAAiB,EACzC,OAAOC,EAAO,OAAO,CAAC,EAAE,WAAW,CACrC,CAAC,CACH,CAAC",
|
|
6
|
-
"names": ["import_purify_ts", "import_TransactionMapperService", "transactionMapperBuilder", "value", "service", "mappers", "result"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const e=["1inch","Aave","Alkemi","Angle","APWine","ArtBlocks","Brick Towers","capsa","cBridge","ChorusOne","CIAN","Coinbase","Cometh","Compound","DODO","EigenLayer","ENS","Figment","Harvest","Kelp","Kiln","Lens","libertify","Lido","[ L ] Market","Midas","Morpho","Nested","OKX Web3","OpenSea","P2P.org","Paraswap","POAP","QuickSwap","Rarible","Ribbon","Ricochet","Rocket Pool","Spool","Squid","Staderlabs","StakeDAO","StakeKit","Swell","Thales","Yearn","Uniswap"];export{e as ETHEREUM_PLUGINS};
|
|
2
|
-
//# sourceMappingURL=plugins.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/internal/app-binder/constant/plugins.ts"],
|
|
4
|
-
"sourcesContent": ["export const ETHEREUM_PLUGINS: string[] = [\n \"1inch\",\n \"Aave\",\n \"Alkemi\",\n \"Angle\",\n \"APWine\",\n \"ArtBlocks\",\n \"Brick Towers\",\n \"capsa\",\n \"cBridge\",\n \"ChorusOne\",\n \"CIAN\",\n \"Coinbase\",\n \"Cometh\",\n \"Compound\",\n \"DODO\",\n \"EigenLayer\",\n \"ENS\",\n \"Figment\",\n \"Harvest\",\n \"Kelp\",\n \"Kiln\",\n \"Lens\",\n \"libertify\",\n \"Lido\",\n \"[ L ] Market\",\n \"Midas\",\n \"Morpho\",\n \"Nested\",\n \"OKX Web3\",\n \"OpenSea\",\n \"P2P.org\",\n \"Paraswap\",\n \"POAP\",\n \"QuickSwap\",\n \"Rarible\",\n \"Ribbon\",\n \"Ricochet\",\n \"Rocket Pool\",\n \"Spool\",\n \"Squid\",\n \"Staderlabs\",\n \"StakeDAO\",\n \"StakeKit\",\n \"Swell\",\n \"Thales\",\n \"Yearn\",\n \"Uniswap\",\n];\n"],
|
|
5
|
-
"mappings": "AAAO,MAAMA,EAA6B,CACxC,QACA,OACA,SACA,QACA,SACA,YACA,eACA,QACA,UACA,YACA,OACA,WACA,SACA,WACA,OACA,aACA,MACA,UACA,UACA,OACA,OACA,OACA,YACA,OACA,eACA,QACA,SACA,SACA,WACA,UACA,UACA,WACA,OACA,YACA,UACA,SACA,WACA,cACA,QACA,QACA,aACA,WACA,WACA,QACA,SACA,QACA,SACF",
|
|
6
|
-
"names": ["ETHEREUM_PLUGINS"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{ClearSignContextType as t}from"@ledgerhq/context-module";import{DeviceModelId as I,isSuccessCommandResult as k}from"@ledgerhq/device-management-kit";import{GetChallengeCommand as A}from"../../app-binder/command/GetChallengeCommand";import{GetWeb3CheckTask as E}from"../../app-binder/task/GetWeb3CheckTask";import{ApplicationChecker as N}from"../../shared/utils/ApplicationChecker";class O{constructor(n,a,r=(s,o)=>new E(s,o)){this.api=n;this.args=a;this.getWeb3ChecksFactory=r}async run(){const{contextModule:n,mapper:a,transaction:r,options:s,appConfig:o,derivationPath:g}=this.args,p=this.api.getDeviceSessionState(),C=a.mapTransactionToSubset(r);C.ifLeft(e=>{throw e});const{subset:d,serializedTransaction:m,type:f}=C.unsafeCoerce();let y=null;o.web3ChecksEnabled&&(y=(await this.getWeb3ChecksFactory(this.api,{contextModule:n,derivationPath:g,mapper:a,transaction:r}).run()).web3Check);let S;const T=await this.api.sendCommand(new A);k(T)&&(S=T.data.challenge);const u=await n.getContexts({challenge:S,domain:s.domain,deviceModelId:p.deviceModelId,...d}),c=u.filter(e=>e.type!==t.ERROR&&e.type!==t.ENUM),x=u.filter(e=>e.type===t.ENUM);let l=[];const i=c.find(e=>e.type===t.TRANSACTION_INFO);if(i&&!i.certificate)throw new Error("Transaction info certificate is missing");if(!this.supportsGenericParser(p,o)||i===void 0)l=c.filter(e=>e.type!==t.TRANSACTION_INFO&&e.type!==t.TRANSACTION_FIELD_DESCRIPTION);else{const e=c.filter(h=>h.type===t.TRANSACTION_FIELD_DESCRIPTION);l={transactionInfo:i.payload,transactionInfoCertificate:i.certificate,transactionFields:e,transactionEnums:x}}return{clearSignContexts:l,serializedTransaction:m,chainId:d.chainId,transactionType:f,web3Check:y}}supportsGenericParser(n,a){return new N(n,a).withMinVersionExclusive("1.14.0").excludeDeviceModel(I.NANO_S).check()}}export{O as BuildTransactionContextTask};
|
|
2
|
-
//# sourceMappingURL=BuildTransactionContextTask.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/internal/app-binder/task/BuildTransactionContextTask.ts"],
|
|
4
|
-
"sourcesContent": ["import {\n type ClearSignContextSuccess,\n type ClearSignContextSuccessType,\n ClearSignContextType,\n type ContextModule,\n} from \"@ledgerhq/context-module\";\nimport {\n DeviceModelId,\n type DeviceSessionState,\n type InternalApi,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { type GetConfigCommandResponse } from \"@api/app-binder/GetConfigCommandTypes\";\nimport { type TransactionOptions } from \"@api/model/TransactionOptions\";\nimport { type TransactionType } from \"@api/model/TransactionType\";\nimport { GetChallengeCommand } from \"@internal/app-binder/command/GetChallengeCommand\";\nimport {\n GetWeb3CheckTask,\n type GetWeb3CheckTaskArgs,\n} from \"@internal/app-binder/task/GetWeb3CheckTask\";\nimport { ApplicationChecker } from \"@internal/shared/utils/ApplicationChecker\";\nimport { type TransactionMapperService } from \"@internal/transaction/service/mapper/TransactionMapperService\";\n\nimport { type GenericContext } from \"./ProvideTransactionGenericContextTask\";\n\nexport type BuildTransactionTaskResult = {\n readonly clearSignContexts: ClearSignContextSuccess[] | GenericContext;\n readonly serializedTransaction: Uint8Array;\n readonly chainId: number;\n readonly transactionType: TransactionType;\n readonly web3Check: ClearSignContextSuccess<ClearSignContextType.WEB3_CHECK> | null;\n};\n\nexport type BuildTransactionContextTaskArgs = {\n readonly contextModule: ContextModule;\n readonly mapper: TransactionMapperService;\n readonly transaction: Uint8Array;\n readonly options: TransactionOptions;\n readonly appConfig: GetConfigCommandResponse;\n readonly derivationPath: string;\n};\n\nexport class BuildTransactionContextTask {\n constructor(\n private readonly api: InternalApi,\n private readonly args: BuildTransactionContextTaskArgs,\n private readonly getWeb3ChecksFactory = (\n api: InternalApi,\n args: GetWeb3CheckTaskArgs,\n ) => new GetWeb3CheckTask(api, args),\n ) {}\n\n async run(): Promise<BuildTransactionTaskResult> {\n const {\n contextModule,\n mapper,\n transaction,\n options,\n appConfig,\n derivationPath,\n } = this.args;\n const deviceState = this.api.getDeviceSessionState();\n\n // Parse transaction\n const parsed = mapper.mapTransactionToSubset(transaction);\n parsed.ifLeft((err) => {\n throw err;\n });\n const { subset, serializedTransaction, type } = parsed.unsafeCoerce();\n\n // Run the web3checks if needed\n let web3Check: ClearSignContextSuccess<ClearSignContextType.WEB3_CHECK> | null =\n null;\n if (appConfig.web3ChecksEnabled) {\n web3Check = (\n await this.getWeb3ChecksFactory(this.api, {\n contextModule,\n derivationPath,\n mapper,\n transaction,\n }).run()\n ).web3Check;\n }\n\n // Get challenge\n let challenge: string | undefined = undefined;\n const challengeRes = await this.api.sendCommand(new GetChallengeCommand());\n if (isSuccessCommandResult(challengeRes)) {\n challenge = challengeRes.data.challenge;\n }\n\n // Get the clear sign contexts\n const clearSignContexts = await contextModule.getContexts({\n challenge: challenge,\n domain: options.domain,\n deviceModelId: deviceState.deviceModelId,\n ...subset,\n });\n\n // NOTE: we need to filter out the ENUM and ERROR types\n // ENUM are handled differently\n // ERROR are not handled at all for now\n const clearSignContextsSuccess: ClearSignContextSuccess<\n Exclude<ClearSignContextSuccessType, ClearSignContextType.ENUM>\n >[] = clearSignContexts.filter(\n (context) =>\n context.type !== ClearSignContextType.ERROR &&\n context.type !== ClearSignContextType.ENUM,\n );\n\n // Retrieve all ENUM contexts\n const transactionEnums: ClearSignContextSuccess<ClearSignContextType.ENUM>[] =\n clearSignContexts.filter(\n (context) => context.type === ClearSignContextType.ENUM,\n );\n\n let filteredContexts: ClearSignContextSuccess[] | GenericContext = [];\n const transactionInfo = clearSignContextsSuccess.find(\n (ctx) => ctx.type === ClearSignContextType.TRANSACTION_INFO,\n );\n\n if (transactionInfo && !transactionInfo.certificate) {\n throw new Error(\"Transaction info certificate is missing\");\n }\n\n // If the device does not support the generic parser,\n // we need to filter out the transaction info and transaction field description\n // as they are not supported by the device\n if (\n !this.supportsGenericParser(deviceState, appConfig) ||\n transactionInfo === undefined\n ) {\n filteredContexts = clearSignContextsSuccess.filter(\n (ctx) =>\n ctx.type !== ClearSignContextType.TRANSACTION_INFO &&\n ctx.type !== ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n );\n } else {\n const transactionFields = clearSignContextsSuccess.filter(\n (ctx) =>\n ctx.type === ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n );\n filteredContexts = {\n transactionInfo: transactionInfo.payload,\n transactionInfoCertificate: transactionInfo.certificate!,\n transactionFields,\n transactionEnums,\n };\n }\n\n return {\n clearSignContexts: filteredContexts,\n serializedTransaction,\n chainId: subset.chainId,\n transactionType: type,\n web3Check,\n };\n }\n\n private supportsGenericParser(\n deviceState: DeviceSessionState,\n appConfig: GetConfigCommandResponse,\n ): boolean {\n return new ApplicationChecker(deviceState, appConfig)\n .withMinVersionExclusive(\"1.14.0\")\n .excludeDeviceModel(DeviceModelId.NANO_S)\n .check();\n }\n}\n"],
|
|
5
|
-
"mappings": "AAAA,OAGE,wBAAAA,MAEK,2BACP,OACE,iBAAAC,EAGA,0BAAAC,MACK,kCAKP,OAAS,uBAAAC,MAA2B,mDACpC,OACE,oBAAAC,MAEK,6CACP,OAAS,sBAAAC,MAA0B,4CAsB5B,MAAMC,CAA4B,CACvC,YACmBC,EACAC,EACAC,EAAuB,CACtCF,EACAC,IACG,IAAIJ,EAAiBG,EAAKC,CAAI,EACnC,CANiB,SAAAD,EACA,UAAAC,EACA,0BAAAC,CAIhB,CAEH,MAAM,KAA2C,CAC/C,KAAM,CACJ,cAAAC,EACA,OAAAC,EACA,YAAAC,EACA,QAAAC,EACA,UAAAC,EACA,eAAAC,CACF,EAAI,KAAK,KACHC,EAAc,KAAK,IAAI,sBAAsB,EAG7CC,EAASN,EAAO,uBAAuBC,CAAW,EACxDK,EAAO,OAAQC,GAAQ,CACrB,MAAMA,CACR,CAAC,EACD,KAAM,CAAE,OAAAC,EAAQ,sBAAAC,EAAuB,KAAAC,CAAK,EAAIJ,EAAO,aAAa,EAGpE,IAAIK,EACF,KACER,EAAU,oBACZQ,GACE,MAAM,KAAK,qBAAqB,KAAK,IAAK,CACxC,cAAAZ,EACA,eAAAK,EACA,OAAAJ,EACA,YAAAC,CACF,CAAC,EAAE,IAAI,GACP,WAIJ,IAAIW,EACJ,MAAMC,EAAe,MAAM,KAAK,IAAI,YAAY,IAAIrB,CAAqB,EACrED,EAAuBsB,CAAY,IACrCD,EAAYC,EAAa,KAAK,WAIhC,MAAMC,EAAoB,MAAMf,EAAc,YAAY,CACxD,UAAWa,EACX,OAAQV,EAAQ,OAChB,cAAeG,EAAY,cAC3B,GAAGG,CACL,CAAC,EAKKO,EAEAD,EAAkB,OACrBE,GACCA,EAAQ,OAAS3B,EAAqB,OACtC2B,EAAQ,OAAS3B,EAAqB,IAC1C,EAGM4B,EACJH,EAAkB,OACfE,GAAYA,EAAQ,OAAS3B,EAAqB,IACrD,EAEF,IAAI6B,EAA+D,CAAC,EACpE,MAAMC,EAAkBJ,EAAyB,KAC9CK,GAAQA,EAAI,OAAS/B,EAAqB,gBAC7C,EAEA,GAAI8B,GAAmB,CAACA,EAAgB,YACtC,MAAM,IAAI,MAAM,yCAAyC,EAM3D,GACE,CAAC,KAAK,sBAAsBd,EAAaF,CAAS,GAClDgB,IAAoB,OAEpBD,EAAmBH,EAAyB,OACzCK,GACCA,EAAI,OAAS/B,EAAqB,kBAClC+B,EAAI,OAAS/B,EAAqB,6BACtC,MACK,CACL,MAAMgC,EAAoBN,EAAyB,OAChDK,GACCA,EAAI,OAAS/B,EAAqB,6BACtC,EACA6B,EAAmB,CACjB,gBAAiBC,EAAgB,QACjC,2BAA4BA,EAAgB,YAC5C,kBAAAE,EACA,iBAAAJ,CACF,CACF,CAEA,MAAO,CACL,kBAAmBC,EACnB,sBAAAT,EACA,QAASD,EAAO,QAChB,gBAAiBE,EACjB,UAAAC,CACF,CACF,CAEQ,sBACNN,EACAF,EACS,CACT,OAAO,IAAIT,EAAmBW,EAAaF,CAAS,EACjD,wBAAwB,QAAQ,EAChC,mBAAmBb,EAAc,MAAM,EACvC,MAAM,CACX,CACF",
|
|
6
|
-
"names": ["ClearSignContextType", "DeviceModelId", "isSuccessCommandResult", "GetChallengeCommand", "GetWeb3CheckTask", "ApplicationChecker", "BuildTransactionContextTask", "api", "args", "getWeb3ChecksFactory", "contextModule", "mapper", "transaction", "options", "appConfig", "derivationPath", "deviceState", "parsed", "err", "subset", "serializedTransaction", "type", "web3Check", "challenge", "challengeRes", "clearSignContexts", "clearSignContextsSuccess", "context", "transactionEnums", "filteredContexts", "transactionInfo", "ctx", "transactionFields"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{ClearSignContextType as n}from"@ledgerhq/context-module";import{CommandResultFactory as h,DeviceModelId as l,DeviceSessionStateType as d,DeviceStatus as p,hexaStringToBuffer as E,UnknownDeviceExchangeError as g}from"@ledgerhq/device-management-kit";import{Transaction as v}from"ethers";import{Left as O,Right as y}from"purify-ts";import{makeDeviceActionInternalApiMock as w}from"../../app-binder/device-action/__test-utils__/makeInternalApi";import{BuildTransactionContextTask as C}from"./BuildTransactionContextTask";describe("BuildTransactionContextTask",()=>{const i={getContext:vi.fn(),getContexts:vi.fn(),getTypedDataFilters:vi.fn(),getWeb3Checks:vi.fn()},r={mapTransactionToSubset:vi.fn()},R={domain:"domain-name.eth"},x=E(v.from({chainId:1n,nonce:0,data:"0x"}).unsignedSerialized),S={keyUsageNumber:1,payload:new Uint8Array([1,2,3])};let u;const a=w(),c=vi.fn();function T(t){return{blindSigningEnabled:!1,web3ChecksEnabled:t,web3ChecksOptIn:!1,version:"1.13.0"}}beforeEach(()=>{vi.resetAllMocks(),a.sendCommand.mockResolvedValue(h({data:{challenge:"challenge"}})),c.mockReturnValue({run:async()=>({web3Check:null})}),u={contextModule:i,mapper:r,transaction:x,options:R,appConfig:T(!1),derivationPath:"44'/60'/0'/0/0"}}),it("should build the transaction context without clear sign contexts",async()=>{const t=new Uint8Array([1,2,3]),e=[],o={subset:{chainId:1,to:void 0,data:"0x"},serializedTransaction:t,type:0};r.mapTransactionToSubset.mockReturnValueOnce(y(o)),i.getContexts.mockResolvedValueOnce(e),a.getDeviceSessionState.mockReturnValueOnce({sessionStateType:d.ReadyWithoutSecureChannel,deviceStatus:p.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.12.0"},deviceModelId:l.FLEX,isSecureConnectionAllowed:!1});const s=await new C(a,{...u,appConfig:T(!0)},c).run();expect(s).toEqual({clearSignContexts:e,serializedTransaction:t,chainId:1,transactionType:0,web3Check:null})}),it("should build the transaction context with web3checks",async()=>{const t=new Uint8Array([1,2,3]),e=[],o={subset:{chainId:1,to:void 0,data:"0x"},serializedTransaction:t,type:0},s="web3Check";c.mockReturnValueOnce({run:async()=>({web3Check:s})}),r.mapTransactionToSubset.mockReturnValueOnce(y(o)),i.getContexts.mockResolvedValueOnce(e),a.getDeviceSessionState.mockReturnValueOnce({sessionStateType:d.ReadyWithoutSecureChannel,deviceStatus:p.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.12.0"},deviceModelId:l.FLEX,isSecureConnectionAllowed:!1});const m=await new C(a,{...u,appConfig:T(!0)},c).run();expect(m).toEqual({clearSignContexts:e,serializedTransaction:t,chainId:1,transactionType:0,web3Check:s})}),it("should build the transaction context with clear sign contexts",async()=>{const t=new Uint8Array([1,2,3]),e=[{type:n.TOKEN,payload:"payload-1"},{type:n.NFT,payload:"payload-2"}],o={subset:{chainId:1,to:void 0,data:"0x"},serializedTransaction:t,type:2},s="web3Check";c.mockReturnValueOnce({run:async()=>({web3Check:s})}),r.mapTransactionToSubset.mockReturnValueOnce(y(o)),i.getContexts.mockResolvedValueOnce(e),a.getDeviceSessionState.mockReturnValueOnce({sessionStateType:d.ReadyWithoutSecureChannel,deviceStatus:p.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.12.0"},deviceModelId:l.FLEX,isSecureConnectionAllowed:!1});const m=await new C(a,u,c).run();expect(m).toEqual({clearSignContexts:e,serializedTransaction:t,chainId:1,transactionType:2,web3Check:null})}),it("should build the transaction context with generic-parser context",async()=>{const t=new Uint8Array([1,2,3]),e=[{type:n.TRANSACTION_INFO,payload:"payload-1",certificate:S},{type:n.TRANSACTION_FIELD_DESCRIPTION,payload:"payload-2"},{type:n.ENUM,payload:"payload-3",id:1,value:2,certificate:S},{type:n.TRANSACTION_FIELD_DESCRIPTION,payload:"payload-4"}],o={subset:{chainId:1,to:void 0,data:"0x"},serializedTransaction:t,type:2};r.mapTransactionToSubset.mockReturnValueOnce(y(o)),i.getContexts.mockResolvedValueOnce(e),a.getDeviceSessionState.mockReturnValueOnce({sessionStateType:d.ReadyWithoutSecureChannel,deviceStatus:p.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.15.0"},deviceModelId:l.FLEX,isSecureConnectionAllowed:!1});const s=await new C(a,u,c).run();expect(s).toEqual({clearSignContexts:{transactionInfo:"payload-1",transactionInfoCertificate:S,transactionFields:[e[1],e[3]],transactionEnums:[e[2]]},serializedTransaction:t,chainId:1,transactionType:2,web3Check:null})}),it("should call the mapper with the transaction",async()=>{const t=new Uint8Array([1,2,3]),e=[],o={subset:{chainId:1,to:void 0,data:"0x"},serializedTransaction:t,type:0};r.mapTransactionToSubset.mockReturnValueOnce(y(o)),i.getContexts.mockResolvedValueOnce(e),a.getDeviceSessionState.mockReturnValueOnce({sessionStateType:d.ReadyWithoutSecureChannel,deviceStatus:p.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.12.0"},deviceModelId:l.FLEX,isSecureConnectionAllowed:!1}),await new C(a,u,c).run(),expect(r.mapTransactionToSubset).toHaveBeenCalledWith(x)}),it("should call the web3checks factory with correct parameters",async()=>{const t=new Uint8Array([1,2,3]),e=[],o={subset:{chainId:1,to:void 0,data:"0x"},serializedTransaction:t,type:0};r.mapTransactionToSubset.mockReturnValueOnce(y(o)),i.getContexts.mockResolvedValueOnce(e),a.getDeviceSessionState.mockReturnValueOnce({sessionStateType:d.ReadyWithoutSecureChannel,deviceStatus:p.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.12.0"},deviceModelId:l.FLEX,isSecureConnectionAllowed:!1}),await new C(a,{...u,appConfig:T(!0)},c).run(),expect(c).toHaveBeenCalledWith(a,{contextModule:i,derivationPath:"44'/60'/0'/0/0",mapper:r,transaction:x})}),it("should call the context module with the correct parameters",async()=>{const t=new Uint8Array([1,2,3]),e=[],o={subset:{chainId:1,to:void 0,data:"0x"},serializedTransaction:t,type:0};r.mapTransactionToSubset.mockReturnValueOnce(y(o)),i.getContexts.mockResolvedValueOnce(e),a.getDeviceSessionState.mockReturnValueOnce({sessionStateType:d.ReadyWithoutSecureChannel,deviceStatus:p.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.12.0"},deviceModelId:l.FLEX,isSecureConnectionAllowed:!1}),await new C(a,u,c).run(),expect(i.getContexts).toHaveBeenCalledWith({deviceModelId:l.FLEX,challenge:"challenge",domain:"domain-name.eth",...o.subset})}),it("should call the context module without context on error",async()=>{const t=new Uint8Array([1,2,3]),e=[],o={subset:{chainId:1,to:void 0,data:"0x"},serializedTransaction:t,type:0};r.mapTransactionToSubset.mockReturnValueOnce(y(o)),i.getContexts.mockResolvedValueOnce(e),a.getDeviceSessionState.mockReturnValueOnce({sessionStateType:d.ReadyWithoutSecureChannel,deviceStatus:p.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.12.0"},deviceModelId:l.FLEX,isSecureConnectionAllowed:!1}),a.sendCommand.mockResolvedValueOnce(h({error:new g})),await new C(a,u,c).run(),expect(i.getContexts).toHaveBeenCalledWith({deviceModelId:l.FLEX,challenge:void 0,domain:"domain-name.eth",...o.subset})}),it("should throw an error if the mapper returns an error",async()=>{const t=new Error("error");r.mapTransactionToSubset.mockReturnValueOnce(O(t)),a.getDeviceSessionState.mockReturnValueOnce({sessionStateType:d.ReadyWithoutSecureChannel,deviceStatus:p.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.12.0"},deviceModelId:l.FLEX,isSecureConnectionAllowed:!1});const e=new C(a,u,c);await expect(e.run()).rejects.toThrow(t)}),it("should exclude error contexts from the result",async()=>{const t=new Uint8Array([1,2,3]),e=[{type:n.ERROR,error:new Error("error")},{type:n.TOKEN,payload:"payload-1"},{type:n.ERROR,error:new Error("error")},{type:n.NFT,payload:"payload-2"}],o={subset:{chainId:1,to:void 0,data:"0x"},serializedTransaction:t,type:0};r.mapTransactionToSubset.mockReturnValueOnce(y(o)),i.getContexts.mockResolvedValueOnce(e),a.getDeviceSessionState.mockReturnValueOnce({sessionStateType:d.ReadyWithoutSecureChannel,deviceStatus:p.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.12.0"},deviceModelId:l.FLEX,isSecureConnectionAllowed:!1});const s=await new C(a,u,c).run();expect(s).toEqual({clearSignContexts:[e[1],e[3]],serializedTransaction:t,chainId:1,transactionType:0,web3Check:null})}),it("should exclude generic-parser contexts from the result on old apps",async()=>{const t=new Uint8Array([1,2,3]),e=[{type:n.TRANSACTION_INFO,payload:"transaction_info",certificate:S},{type:n.TOKEN,payload:"payload-1"},{type:n.TRANSACTION_FIELD_DESCRIPTION,payload:"transaction_field"},{type:n.NFT,payload:"payload-2"},{type:n.ENUM,payload:"enum",id:1,value:2,certificate:S}],o={subset:{chainId:1,to:void 0,data:"0x"},serializedTransaction:t,type:0};r.mapTransactionToSubset.mockReturnValueOnce(y(o)),i.getContexts.mockResolvedValueOnce(e),a.getDeviceSessionState.mockReturnValueOnce({sessionStateType:d.ReadyWithoutSecureChannel,deviceStatus:p.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.12.0"},deviceModelId:l.FLEX,isSecureConnectionAllowed:!1});const s=await new C(a,u,c).run();expect(s).toEqual({clearSignContexts:[e[1],e[3]],serializedTransaction:t,chainId:1,transactionType:0,web3Check:null})}),it("should exclude generic-parser contexts from the result if no transaction_info was found",async()=>{const t=new Uint8Array([1,2,3]),e=[{type:n.TRANSACTION_FIELD_DESCRIPTION,payload:"transaction_field"},{type:n.TOKEN,payload:"payload-1"},{type:n.ENUM,payload:"enum",id:1,value:2},{type:n.NFT,payload:"payload-2"}],o={subset:{chainId:1,to:void 0,data:"0x"},serializedTransaction:t,type:0};r.mapTransactionToSubset.mockReturnValueOnce(y(o)),i.getContexts.mockResolvedValueOnce(e),a.getDeviceSessionState.mockReturnValueOnce({sessionStateType:d.ReadyWithoutSecureChannel,deviceStatus:p.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.14.0"},deviceModelId:l.FLEX,isSecureConnectionAllowed:!1});const s=await new C(a,u,c).run();expect(s).toEqual({clearSignContexts:[e[1],e[3]],serializedTransaction:t,chainId:1,transactionType:0,web3Check:null})}),it("should exclude legacy contexts from the result for generic-parser transactions",async()=>{const t=new Uint8Array([1,2,3]),e=[{type:n.TOKEN,payload:"payload-1"},{type:n.TRANSACTION_INFO,payload:"payload-2",certificate:S},{type:n.EXTERNAL_PLUGIN,payload:"payload-3"},{type:n.TRANSACTION_FIELD_DESCRIPTION,payload:"payload-4"},{type:n.ENUM,payload:"payload-5",id:1,value:2,certificate:S}],o={subset:{chainId:1,to:void 0,data:"0x"},serializedTransaction:t,type:2};r.mapTransactionToSubset.mockReturnValueOnce(y(o)),i.getContexts.mockResolvedValueOnce(e),a.getDeviceSessionState.mockReturnValueOnce({sessionStateType:d.ReadyWithoutSecureChannel,deviceStatus:p.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.15.0"},deviceModelId:l.FLEX,isSecureConnectionAllowed:!1});const s=await new C(a,u,c).run();expect(s).toEqual({clearSignContexts:{transactionInfo:"payload-2",transactionInfoCertificate:S,transactionFields:[e[3]],transactionEnums:[e[4]]},serializedTransaction:t,chainId:1,transactionType:2,web3Check:null})}),it("should exclude generic-parser contexts with a nano s device",async()=>{const t=new Uint8Array([1,2,3]),e=[{type:n.TOKEN,payload:"payload-1"},{type:n.TRANSACTION_INFO,payload:"payload-2",certificate:S},{type:n.TRANSACTION_FIELD_DESCRIPTION,payload:"payload-3"},{type:n.ENUM,payload:"payload-4",id:1,value:2,certificate:S}],o={subset:{chainId:1,to:void 0,data:"0x"},serializedTransaction:t,type:2};r.mapTransactionToSubset.mockReturnValueOnce(y(o)),i.getContexts.mockResolvedValueOnce(e),a.getDeviceSessionState.mockReturnValueOnce({sessionStateType:d.ReadyWithoutSecureChannel,deviceStatus:p.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.14.0"},deviceModelId:l.NANO_S,isSecureConnectionAllowed:!1});const s=await new C(a,u,c).run();expect(s).toEqual({clearSignContexts:[e[0]],serializedTransaction:t,chainId:1,transactionType:2,web3Check:null})}),it("should exclude generic-parser contexts with an old app version",async()=>{const t=new Uint8Array([1,2,3]),e=[{type:n.TOKEN,payload:"payload-1"},{type:n.TRANSACTION_INFO,payload:"payload-2",certificate:S},{type:n.TRANSACTION_FIELD_DESCRIPTION,payload:"payload-3"},{type:n.ENUM,payload:"payload-4",id:1,value:2,certificate:S}],o={subset:{chainId:1,to:void 0,data:"0x"},serializedTransaction:t,type:2};r.mapTransactionToSubset.mockReturnValueOnce(y(o)),i.getContexts.mockResolvedValueOnce(e),a.getDeviceSessionState.mockReturnValueOnce({sessionStateType:d.ReadyWithoutSecureChannel,deviceStatus:p.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.12.0"},deviceModelId:l.FLEX,isSecureConnectionAllowed:!1});const s=await new C(a,u,c).run();expect(s).toEqual({clearSignContexts:[e[0]],serializedTransaction:t,chainId:1,transactionType:2,web3Check:null})}),it("should exclude generic-parser contexts with a non ready device",async()=>{const t=new Uint8Array([1,2,3]),e=[{type:n.TOKEN,payload:"payload-1"},{type:n.TRANSACTION_INFO,payload:"payload-2",certificate:S},{type:n.TRANSACTION_FIELD_DESCRIPTION,payload:"payload-3"},{type:n.ENUM,payload:"payload-4",id:1,value:2,certificate:S}],o={subset:{chainId:1,to:void 0,data:"0x"},serializedTransaction:t,type:2};r.mapTransactionToSubset.mockReturnValueOnce(y(o)),i.getContexts.mockResolvedValueOnce(e),a.getDeviceSessionState.mockReturnValueOnce({sessionStateType:d.Connected,deviceStatus:p.NOT_CONNECTED,deviceModelId:l.FLEX});const s=await new C(a,u,c).run();expect(s).toEqual({clearSignContexts:[e[0]],serializedTransaction:t,chainId:1,transactionType:2,web3Check:null})}),it("should return an error if the transaction info certificate is missing",async()=>{const t=new Uint8Array([1,2,3]),e=[{type:n.TRANSACTION_INFO,payload:"payload-1"},{type:n.TRANSACTION_FIELD_DESCRIPTION,payload:"payload-2"},{type:n.ENUM,payload:"payload-3",id:1,value:2}],o={subset:{chainId:1,to:void 0,data:"0x"},serializedTransaction:t,type:2};r.mapTransactionToSubset.mockReturnValueOnce(y(o)),i.getContexts.mockResolvedValueOnce(e),a.getDeviceSessionState.mockReturnValueOnce({sessionStateType:d.ReadyWithoutSecureChannel,deviceStatus:p.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.14.0"},deviceModelId:l.FLEX,isSecureConnectionAllowed:!1});const s=new C(a,u,c);await expect(s.run()).rejects.toThrow("Transaction info certificate is missing")})});
|
|
2
|
-
//# sourceMappingURL=BuildTransactionContextTask.test.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/internal/app-binder/task/BuildTransactionContextTask.test.ts"],
|
|
4
|
-
"sourcesContent": ["import {\n type ClearSignContext,\n type ClearSignContextSuccess,\n ClearSignContextType,\n type PkiCertificate,\n} from \"@ledgerhq/context-module\";\nimport {\n CommandResultFactory,\n DeviceModelId,\n DeviceSessionStateType,\n DeviceStatus,\n hexaStringToBuffer,\n UnknownDeviceExchangeError,\n} from \"@ledgerhq/device-management-kit\";\nimport { Transaction } from \"ethers\";\nimport { Left, Right } from \"purify-ts\";\n\nimport type { GetConfigCommandResponse } from \"@api/app-binder/GetConfigCommandTypes\";\nimport { makeDeviceActionInternalApiMock } from \"@internal/app-binder/device-action/__test-utils__/makeInternalApi\";\nimport { type TransactionMapperResult } from \"@internal/transaction/service/mapper/model/TransactionMapperResult\";\nimport { type TransactionMapperService } from \"@internal/transaction/service/mapper/TransactionMapperService\";\n\nimport {\n BuildTransactionContextTask,\n type BuildTransactionContextTaskArgs,\n} from \"./BuildTransactionContextTask\";\n\ndescribe(\"BuildTransactionContextTask\", () => {\n const contextModuleMock = {\n getContext: vi.fn(),\n getContexts: vi.fn(),\n getTypedDataFilters: vi.fn(),\n getWeb3Checks: vi.fn(),\n };\n const mapperMock = {\n mapTransactionToSubset: vi.fn(),\n };\n const defaultOptions = {\n domain: \"domain-name.eth\",\n };\n const defaultTransaction: Uint8Array = hexaStringToBuffer(\n Transaction.from({\n chainId: 1n,\n nonce: 0,\n data: \"0x\",\n }).unsignedSerialized,\n )!;\n const defaultCertificate: PkiCertificate = {\n keyUsageNumber: 1,\n payload: new Uint8Array([0x01, 0x02, 0x03]),\n };\n\n let defaultArgs: BuildTransactionContextTaskArgs;\n const apiMock = makeDeviceActionInternalApiMock();\n const getWeb3ChecksFactoryMock = vi.fn();\n\n function createAppConfig(\n web3ChecksEnabled: boolean,\n ): GetConfigCommandResponse {\n return {\n blindSigningEnabled: false,\n web3ChecksEnabled,\n web3ChecksOptIn: false,\n version: \"1.13.0\",\n };\n }\n\n beforeEach(() => {\n vi.resetAllMocks();\n apiMock.sendCommand.mockResolvedValue(\n CommandResultFactory({ data: { challenge: \"challenge\" } }),\n );\n getWeb3ChecksFactoryMock.mockReturnValue({\n run: async () => ({ web3Check: null }),\n });\n\n defaultArgs = {\n contextModule: contextModuleMock,\n mapper: mapperMock as unknown as TransactionMapperService,\n transaction: defaultTransaction,\n options: defaultOptions,\n appConfig: createAppConfig(false),\n derivationPath: \"44'/60'/0'/0/0\",\n };\n });\n\n it(\"should build the transaction context without clear sign contexts\", async () => {\n // GIVEN\n const serializedTransaction = new Uint8Array([0x01, 0x02, 0x03]);\n const clearSignContexts: ClearSignContext[] = [];\n const mapperResult: TransactionMapperResult = {\n subset: { chainId: 1, to: undefined, data: \"0x\" },\n serializedTransaction,\n type: 0,\n };\n mapperMock.mapTransactionToSubset.mockReturnValueOnce(Right(mapperResult));\n contextModuleMock.getContexts.mockResolvedValueOnce(clearSignContexts);\n apiMock.getDeviceSessionState.mockReturnValueOnce({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n installedApps: [],\n currentApp: { name: \"Ethereum\", version: \"1.12.0\" },\n deviceModelId: DeviceModelId.FLEX,\n isSecureConnectionAllowed: false,\n });\n\n // WHEN\n const result = await new BuildTransactionContextTask(\n apiMock,\n { ...defaultArgs, appConfig: createAppConfig(true) },\n getWeb3ChecksFactoryMock,\n ).run();\n\n // THEN\n expect(result).toEqual({\n clearSignContexts,\n serializedTransaction,\n chainId: 1,\n transactionType: 0,\n web3Check: null,\n });\n });\n\n it(\"should build the transaction context with web3checks\", async () => {\n // GIVEN\n const serializedTransaction = new Uint8Array([0x01, 0x02, 0x03]);\n const clearSignContexts: ClearSignContext[] = [];\n const mapperResult: TransactionMapperResult = {\n subset: { chainId: 1, to: undefined, data: \"0x\" },\n serializedTransaction,\n type: 0,\n };\n const expectedWeb3Check =\n \"web3Check\" as unknown as ClearSignContextSuccess<ClearSignContextType.WEB3_CHECK>;\n getWeb3ChecksFactoryMock.mockReturnValueOnce({\n run: async () => ({ web3Check: expectedWeb3Check }),\n });\n mapperMock.mapTransactionToSubset.mockReturnValueOnce(Right(mapperResult));\n contextModuleMock.getContexts.mockResolvedValueOnce(clearSignContexts);\n apiMock.getDeviceSessionState.mockReturnValueOnce({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n installedApps: [],\n currentApp: { name: \"Ethereum\", version: \"1.12.0\" },\n deviceModelId: DeviceModelId.FLEX,\n isSecureConnectionAllowed: false,\n });\n\n // WHEN\n const result = await new BuildTransactionContextTask(\n apiMock,\n { ...defaultArgs, appConfig: createAppConfig(true) },\n getWeb3ChecksFactoryMock,\n ).run();\n\n // THEN\n expect(result).toEqual({\n clearSignContexts,\n serializedTransaction,\n chainId: 1,\n transactionType: 0,\n web3Check: expectedWeb3Check,\n });\n });\n\n it(\"should build the transaction context with clear sign contexts\", async () => {\n // GIVEN\n const serializedTransaction = new Uint8Array([0x01, 0x02, 0x03]);\n const clearSignContexts: ClearSignContext[] = [\n {\n type: ClearSignContextType.TOKEN,\n payload: \"payload-1\",\n },\n {\n type: ClearSignContextType.NFT,\n payload: \"payload-2\",\n },\n ];\n const mapperResult: TransactionMapperResult = {\n subset: { chainId: 1, to: undefined, data: \"0x\" },\n serializedTransaction,\n type: 2,\n };\n const expectedWeb3Check =\n \"web3Check\" as unknown as ClearSignContextSuccess<ClearSignContextType.WEB3_CHECK>;\n getWeb3ChecksFactoryMock.mockReturnValueOnce({\n run: async () => ({ web3Check: expectedWeb3Check }),\n });\n mapperMock.mapTransactionToSubset.mockReturnValueOnce(Right(mapperResult));\n contextModuleMock.getContexts.mockResolvedValueOnce(clearSignContexts);\n apiMock.getDeviceSessionState.mockReturnValueOnce({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n installedApps: [],\n currentApp: { name: \"Ethereum\", version: \"1.12.0\" },\n deviceModelId: DeviceModelId.FLEX,\n isSecureConnectionAllowed: false,\n });\n\n // WHEN\n const result = await new BuildTransactionContextTask(\n apiMock,\n defaultArgs,\n getWeb3ChecksFactoryMock,\n ).run();\n\n // THEN\n expect(result).toEqual({\n clearSignContexts,\n serializedTransaction,\n chainId: 1,\n transactionType: 2,\n web3Check: null,\n });\n });\n\n it(\"should build the transaction context with generic-parser context\", async () => {\n // GIVEN\n const serializedTransaction = new Uint8Array([0x01, 0x02, 0x03]);\n const clearSignContexts: ClearSignContext[] = [\n {\n type: ClearSignContextType.TRANSACTION_INFO,\n payload: \"payload-1\",\n certificate: defaultCertificate,\n },\n {\n type: ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n payload: \"payload-2\",\n },\n {\n type: ClearSignContextType.ENUM,\n payload: \"payload-3\",\n id: 1,\n value: 2,\n certificate: defaultCertificate,\n },\n {\n type: ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n payload: \"payload-4\",\n },\n ];\n const mapperResult: TransactionMapperResult = {\n subset: { chainId: 1, to: undefined, data: \"0x\" },\n serializedTransaction,\n type: 2,\n };\n mapperMock.mapTransactionToSubset.mockReturnValueOnce(Right(mapperResult));\n contextModuleMock.getContexts.mockResolvedValueOnce(clearSignContexts);\n apiMock.getDeviceSessionState.mockReturnValueOnce({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n installedApps: [],\n currentApp: { name: \"Ethereum\", version: \"1.15.0\" },\n deviceModelId: DeviceModelId.FLEX,\n isSecureConnectionAllowed: false,\n });\n\n // WHEN\n const result = await new BuildTransactionContextTask(\n apiMock,\n defaultArgs,\n getWeb3ChecksFactoryMock,\n ).run();\n\n // THEN\n expect(result).toEqual({\n clearSignContexts: {\n transactionInfo: \"payload-1\",\n transactionInfoCertificate: defaultCertificate,\n transactionFields: [clearSignContexts[1], clearSignContexts[3]],\n transactionEnums: [clearSignContexts[2]],\n },\n serializedTransaction,\n chainId: 1,\n transactionType: 2,\n web3Check: null,\n });\n });\n\n it(\"should call the mapper with the transaction\", async () => {\n // GIVEN\n const serializedTransaction = new Uint8Array([0x01, 0x02, 0x03]);\n const clearSignContexts: ClearSignContext[] = [];\n const mapperResult: TransactionMapperResult = {\n subset: { chainId: 1, to: undefined, data: \"0x\" },\n serializedTransaction,\n type: 0,\n };\n mapperMock.mapTransactionToSubset.mockReturnValueOnce(Right(mapperResult));\n contextModuleMock.getContexts.mockResolvedValueOnce(clearSignContexts);\n apiMock.getDeviceSessionState.mockReturnValueOnce({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n installedApps: [],\n currentApp: { name: \"Ethereum\", version: \"1.12.0\" },\n deviceModelId: DeviceModelId.FLEX,\n isSecureConnectionAllowed: false,\n });\n\n // WHEN\n await new BuildTransactionContextTask(\n apiMock,\n defaultArgs,\n getWeb3ChecksFactoryMock,\n ).run();\n\n // THEN\n expect(mapperMock.mapTransactionToSubset).toHaveBeenCalledWith(\n defaultTransaction,\n );\n });\n\n it(\"should call the web3checks factory with correct parameters\", async () => {\n // GIVEN\n const serializedTransaction = new Uint8Array([0x01, 0x02, 0x03]);\n const clearSignContexts: ClearSignContext[] = [];\n const mapperResult: TransactionMapperResult = {\n subset: { chainId: 1, to: undefined, data: \"0x\" },\n serializedTransaction,\n type: 0,\n };\n mapperMock.mapTransactionToSubset.mockReturnValueOnce(Right(mapperResult));\n contextModuleMock.getContexts.mockResolvedValueOnce(clearSignContexts);\n apiMock.getDeviceSessionState.mockReturnValueOnce({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n installedApps: [],\n currentApp: { name: \"Ethereum\", version: \"1.12.0\" },\n deviceModelId: DeviceModelId.FLEX,\n isSecureConnectionAllowed: false,\n });\n\n // WHEN\n await new BuildTransactionContextTask(\n apiMock,\n { ...defaultArgs, appConfig: createAppConfig(true) },\n getWeb3ChecksFactoryMock,\n ).run();\n\n // THEN\n expect(getWeb3ChecksFactoryMock).toHaveBeenCalledWith(apiMock, {\n contextModule: contextModuleMock,\n derivationPath: \"44'/60'/0'/0/0\",\n mapper: mapperMock,\n transaction: defaultTransaction,\n });\n });\n\n it(\"should call the context module with the correct parameters\", async () => {\n // GIVEN\n const serializedTransaction = new Uint8Array([0x01, 0x02, 0x03]);\n const clearSignContexts: ClearSignContext[] = [];\n const mapperResult: TransactionMapperResult = {\n subset: { chainId: 1, to: undefined, data: \"0x\" },\n serializedTransaction,\n type: 0,\n };\n mapperMock.mapTransactionToSubset.mockReturnValueOnce(Right(mapperResult));\n contextModuleMock.getContexts.mockResolvedValueOnce(clearSignContexts);\n apiMock.getDeviceSessionState.mockReturnValueOnce({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n installedApps: [],\n currentApp: { name: \"Ethereum\", version: \"1.12.0\" },\n deviceModelId: DeviceModelId.FLEX,\n isSecureConnectionAllowed: false,\n });\n\n // WHEN\n await new BuildTransactionContextTask(\n apiMock,\n defaultArgs,\n getWeb3ChecksFactoryMock,\n ).run();\n\n // THEN\n expect(contextModuleMock.getContexts).toHaveBeenCalledWith({\n deviceModelId: DeviceModelId.FLEX,\n challenge: \"challenge\",\n domain: \"domain-name.eth\",\n ...mapperResult.subset,\n });\n });\n\n it(\"should call the context module without context on error\", async () => {\n // GIVEN\n const serializedTransaction = new Uint8Array([0x01, 0x02, 0x03]);\n const clearSignContexts: ClearSignContext[] = [];\n const mapperResult: TransactionMapperResult = {\n subset: { chainId: 1, to: undefined, data: \"0x\" },\n serializedTransaction,\n type: 0,\n };\n mapperMock.mapTransactionToSubset.mockReturnValueOnce(Right(mapperResult));\n contextModuleMock.getContexts.mockResolvedValueOnce(clearSignContexts);\n apiMock.getDeviceSessionState.mockReturnValueOnce({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n installedApps: [],\n currentApp: { name: \"Ethereum\", version: \"1.12.0\" },\n deviceModelId: DeviceModelId.FLEX,\n isSecureConnectionAllowed: false,\n });\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({ error: new UnknownDeviceExchangeError() }),\n );\n\n // WHEN\n await new BuildTransactionContextTask(\n apiMock,\n defaultArgs,\n getWeb3ChecksFactoryMock,\n ).run();\n\n // THEN\n expect(contextModuleMock.getContexts).toHaveBeenCalledWith({\n deviceModelId: DeviceModelId.FLEX,\n challenge: undefined,\n domain: \"domain-name.eth\",\n ...mapperResult.subset,\n });\n });\n\n it(\"should throw an error if the mapper returns an error\", async () => {\n // GIVEN\n const error = new Error(\"error\");\n mapperMock.mapTransactionToSubset.mockReturnValueOnce(Left(error));\n apiMock.getDeviceSessionState.mockReturnValueOnce({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n installedApps: [],\n currentApp: { name: \"Ethereum\", version: \"1.12.0\" },\n deviceModelId: DeviceModelId.FLEX,\n isSecureConnectionAllowed: false,\n });\n\n // WHEN\n const task = new BuildTransactionContextTask(\n apiMock,\n defaultArgs,\n getWeb3ChecksFactoryMock,\n );\n\n // THEN\n await expect(task.run()).rejects.toThrow(error);\n });\n\n it(\"should exclude error contexts from the result\", async () => {\n // GIVEN\n const serializedTransaction = new Uint8Array([0x01, 0x02, 0x03]);\n const clearSignContexts: ClearSignContext[] = [\n {\n type: ClearSignContextType.ERROR,\n error: new Error(\"error\"),\n },\n {\n type: ClearSignContextType.TOKEN,\n payload: \"payload-1\",\n },\n {\n type: ClearSignContextType.ERROR,\n error: new Error(\"error\"),\n },\n {\n type: ClearSignContextType.NFT,\n payload: \"payload-2\",\n },\n ];\n const mapperResult: TransactionMapperResult = {\n subset: { chainId: 1, to: undefined, data: \"0x\" },\n serializedTransaction,\n type: 0,\n };\n mapperMock.mapTransactionToSubset.mockReturnValueOnce(Right(mapperResult));\n contextModuleMock.getContexts.mockResolvedValueOnce(clearSignContexts);\n apiMock.getDeviceSessionState.mockReturnValueOnce({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n installedApps: [],\n currentApp: { name: \"Ethereum\", version: \"1.12.0\" },\n deviceModelId: DeviceModelId.FLEX,\n isSecureConnectionAllowed: false,\n });\n\n // WHEN\n const result = await new BuildTransactionContextTask(\n apiMock,\n defaultArgs,\n getWeb3ChecksFactoryMock,\n ).run();\n\n // THEN\n expect(result).toEqual({\n clearSignContexts: [clearSignContexts[1], clearSignContexts[3]],\n serializedTransaction,\n chainId: 1,\n transactionType: 0,\n web3Check: null,\n });\n });\n\n it(\"should exclude generic-parser contexts from the result on old apps\", async () => {\n // GIVEN\n const serializedTransaction = new Uint8Array([0x01, 0x02, 0x03]);\n const clearSignContexts: ClearSignContext[] = [\n {\n type: ClearSignContextType.TRANSACTION_INFO,\n payload: \"transaction_info\",\n certificate: defaultCertificate,\n },\n {\n type: ClearSignContextType.TOKEN,\n payload: \"payload-1\",\n },\n {\n type: ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n payload: \"transaction_field\",\n },\n {\n type: ClearSignContextType.NFT,\n payload: \"payload-2\",\n },\n {\n type: ClearSignContextType.ENUM,\n payload: \"enum\",\n id: 1,\n value: 2,\n certificate: defaultCertificate,\n },\n ];\n const mapperResult: TransactionMapperResult = {\n subset: { chainId: 1, to: undefined, data: \"0x\" },\n serializedTransaction,\n type: 0,\n };\n mapperMock.mapTransactionToSubset.mockReturnValueOnce(Right(mapperResult));\n contextModuleMock.getContexts.mockResolvedValueOnce(clearSignContexts);\n apiMock.getDeviceSessionState.mockReturnValueOnce({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n installedApps: [],\n currentApp: { name: \"Ethereum\", version: \"1.12.0\" },\n deviceModelId: DeviceModelId.FLEX,\n isSecureConnectionAllowed: false,\n });\n\n // WHEN\n const result = await new BuildTransactionContextTask(\n apiMock,\n defaultArgs,\n getWeb3ChecksFactoryMock,\n ).run();\n\n // THEN\n expect(result).toEqual({\n clearSignContexts: [clearSignContexts[1], clearSignContexts[3]],\n serializedTransaction,\n chainId: 1,\n transactionType: 0,\n web3Check: null,\n });\n });\n\n it(\"should exclude generic-parser contexts from the result if no transaction_info was found\", async () => {\n // GIVEN\n const serializedTransaction = new Uint8Array([0x01, 0x02, 0x03]);\n const clearSignContexts: ClearSignContext[] = [\n {\n type: ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n payload: \"transaction_field\",\n },\n {\n type: ClearSignContextType.TOKEN,\n payload: \"payload-1\",\n },\n {\n type: ClearSignContextType.ENUM,\n payload: \"enum\",\n id: 1,\n value: 2,\n },\n {\n type: ClearSignContextType.NFT,\n payload: \"payload-2\",\n },\n ];\n const mapperResult: TransactionMapperResult = {\n subset: { chainId: 1, to: undefined, data: \"0x\" },\n serializedTransaction,\n type: 0,\n };\n mapperMock.mapTransactionToSubset.mockReturnValueOnce(Right(mapperResult));\n contextModuleMock.getContexts.mockResolvedValueOnce(clearSignContexts);\n apiMock.getDeviceSessionState.mockReturnValueOnce({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n installedApps: [],\n currentApp: { name: \"Ethereum\", version: \"1.14.0\" },\n deviceModelId: DeviceModelId.FLEX,\n isSecureConnectionAllowed: false,\n });\n\n // WHEN\n const result = await new BuildTransactionContextTask(\n apiMock,\n defaultArgs,\n getWeb3ChecksFactoryMock,\n ).run();\n\n // THEN\n expect(result).toEqual({\n clearSignContexts: [clearSignContexts[1], clearSignContexts[3]],\n serializedTransaction,\n chainId: 1,\n transactionType: 0,\n web3Check: null,\n });\n });\n\n it(\"should exclude legacy contexts from the result for generic-parser transactions\", async () => {\n // GIVEN\n const serializedTransaction = new Uint8Array([0x01, 0x02, 0x03]);\n const clearSignContexts: ClearSignContext[] = [\n {\n type: ClearSignContextType.TOKEN,\n payload: \"payload-1\",\n },\n {\n type: ClearSignContextType.TRANSACTION_INFO,\n payload: \"payload-2\",\n certificate: defaultCertificate,\n },\n {\n type: ClearSignContextType.EXTERNAL_PLUGIN,\n payload: \"payload-3\",\n },\n {\n type: ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n payload: \"payload-4\",\n },\n {\n type: ClearSignContextType.ENUM,\n payload: \"payload-5\",\n id: 1,\n value: 2,\n certificate: defaultCertificate,\n },\n ];\n const mapperResult: TransactionMapperResult = {\n subset: { chainId: 1, to: undefined, data: \"0x\" },\n serializedTransaction,\n type: 2,\n };\n mapperMock.mapTransactionToSubset.mockReturnValueOnce(Right(mapperResult));\n contextModuleMock.getContexts.mockResolvedValueOnce(clearSignContexts);\n apiMock.getDeviceSessionState.mockReturnValueOnce({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n installedApps: [],\n currentApp: { name: \"Ethereum\", version: \"1.15.0\" },\n deviceModelId: DeviceModelId.FLEX,\n isSecureConnectionAllowed: false,\n });\n\n // WHEN\n const result = await new BuildTransactionContextTask(\n apiMock,\n defaultArgs,\n getWeb3ChecksFactoryMock,\n ).run();\n\n // THEN\n expect(result).toEqual({\n clearSignContexts: {\n transactionInfo: \"payload-2\",\n transactionInfoCertificate: defaultCertificate,\n transactionFields: [clearSignContexts[3]],\n transactionEnums: [clearSignContexts[4]],\n },\n serializedTransaction,\n chainId: 1,\n transactionType: 2,\n web3Check: null,\n });\n });\n\n it(\"should exclude generic-parser contexts with a nano s device\", async () => {\n // GIVEN\n const serializedTransaction = new Uint8Array([0x01, 0x02, 0x03]);\n const clearSignContexts: ClearSignContext[] = [\n {\n type: ClearSignContextType.TOKEN,\n payload: \"payload-1\",\n },\n {\n type: ClearSignContextType.TRANSACTION_INFO,\n payload: \"payload-2\",\n certificate: defaultCertificate,\n },\n {\n type: ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n payload: \"payload-3\",\n },\n {\n type: ClearSignContextType.ENUM,\n payload: \"payload-4\",\n id: 1,\n value: 2,\n certificate: defaultCertificate,\n },\n ];\n const mapperResult: TransactionMapperResult = {\n subset: { chainId: 1, to: undefined, data: \"0x\" },\n serializedTransaction,\n type: 2,\n };\n mapperMock.mapTransactionToSubset.mockReturnValueOnce(Right(mapperResult));\n contextModuleMock.getContexts.mockResolvedValueOnce(clearSignContexts);\n apiMock.getDeviceSessionState.mockReturnValueOnce({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n installedApps: [],\n currentApp: { name: \"Ethereum\", version: \"1.14.0\" },\n deviceModelId: DeviceModelId.NANO_S,\n isSecureConnectionAllowed: false,\n });\n\n // WHEN\n const result = await new BuildTransactionContextTask(\n apiMock,\n defaultArgs,\n getWeb3ChecksFactoryMock,\n ).run();\n\n // THEN\n expect(result).toEqual({\n clearSignContexts: [clearSignContexts[0]],\n serializedTransaction,\n chainId: 1,\n transactionType: 2,\n web3Check: null,\n });\n });\n\n it(\"should exclude generic-parser contexts with an old app version\", async () => {\n // GIVEN\n const serializedTransaction = new Uint8Array([0x01, 0x02, 0x03]);\n const clearSignContexts: ClearSignContext[] = [\n {\n type: ClearSignContextType.TOKEN,\n payload: \"payload-1\",\n },\n {\n type: ClearSignContextType.TRANSACTION_INFO,\n payload: \"payload-2\",\n certificate: defaultCertificate,\n },\n {\n type: ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n payload: \"payload-3\",\n },\n {\n type: ClearSignContextType.ENUM,\n payload: \"payload-4\",\n id: 1,\n value: 2,\n certificate: defaultCertificate,\n },\n ];\n const mapperResult: TransactionMapperResult = {\n subset: { chainId: 1, to: undefined, data: \"0x\" },\n serializedTransaction,\n type: 2,\n };\n mapperMock.mapTransactionToSubset.mockReturnValueOnce(Right(mapperResult));\n contextModuleMock.getContexts.mockResolvedValueOnce(clearSignContexts);\n apiMock.getDeviceSessionState.mockReturnValueOnce({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n installedApps: [],\n currentApp: { name: \"Ethereum\", version: \"1.12.0\" },\n deviceModelId: DeviceModelId.FLEX,\n isSecureConnectionAllowed: false,\n });\n\n // WHEN\n const result = await new BuildTransactionContextTask(\n apiMock,\n defaultArgs,\n getWeb3ChecksFactoryMock,\n ).run();\n\n // THEN\n expect(result).toEqual({\n clearSignContexts: [clearSignContexts[0]],\n serializedTransaction,\n chainId: 1,\n transactionType: 2,\n web3Check: null,\n });\n });\n\n it(\"should exclude generic-parser contexts with a non ready device\", async () => {\n // GIVEN\n const serializedTransaction = new Uint8Array([0x01, 0x02, 0x03]);\n const clearSignContexts: ClearSignContext[] = [\n {\n type: ClearSignContextType.TOKEN,\n payload: \"payload-1\",\n },\n {\n type: ClearSignContextType.TRANSACTION_INFO,\n payload: \"payload-2\",\n certificate: defaultCertificate,\n },\n {\n type: ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n payload: \"payload-3\",\n },\n {\n type: ClearSignContextType.ENUM,\n payload: \"payload-4\",\n id: 1,\n value: 2,\n certificate: defaultCertificate,\n },\n ];\n const mapperResult: TransactionMapperResult = {\n subset: { chainId: 1, to: undefined, data: \"0x\" },\n serializedTransaction,\n type: 2,\n };\n mapperMock.mapTransactionToSubset.mockReturnValueOnce(Right(mapperResult));\n contextModuleMock.getContexts.mockResolvedValueOnce(clearSignContexts);\n apiMock.getDeviceSessionState.mockReturnValueOnce({\n sessionStateType: DeviceSessionStateType.Connected,\n deviceStatus: DeviceStatus.NOT_CONNECTED,\n deviceModelId: DeviceModelId.FLEX,\n });\n\n // WHEN\n const result = await new BuildTransactionContextTask(\n apiMock,\n defaultArgs,\n getWeb3ChecksFactoryMock,\n ).run();\n\n // THEN\n expect(result).toEqual({\n clearSignContexts: [clearSignContexts[0]],\n serializedTransaction,\n chainId: 1,\n transactionType: 2,\n web3Check: null,\n });\n });\n\n it(\"should return an error if the transaction info certificate is missing\", async () => {\n // GIVEN\n const serializedTransaction = new Uint8Array([0x01, 0x02, 0x03]);\n const clearSignContexts: ClearSignContext[] = [\n {\n type: ClearSignContextType.TRANSACTION_INFO,\n payload: \"payload-1\",\n },\n {\n type: ClearSignContextType.TRANSACTION_FIELD_DESCRIPTION,\n payload: \"payload-2\",\n },\n {\n type: ClearSignContextType.ENUM,\n payload: \"payload-3\",\n id: 1,\n value: 2,\n },\n ];\n const mapperResult: TransactionMapperResult = {\n subset: { chainId: 1, to: undefined, data: \"0x\" },\n serializedTransaction,\n type: 2,\n };\n mapperMock.mapTransactionToSubset.mockReturnValueOnce(Right(mapperResult));\n contextModuleMock.getContexts.mockResolvedValueOnce(clearSignContexts);\n apiMock.getDeviceSessionState.mockReturnValueOnce({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n installedApps: [],\n currentApp: { name: \"Ethereum\", version: \"1.14.0\" },\n deviceModelId: DeviceModelId.FLEX,\n isSecureConnectionAllowed: false,\n });\n\n // WHEN\n const task = new BuildTransactionContextTask(\n apiMock,\n defaultArgs,\n getWeb3ChecksFactoryMock,\n );\n\n // THEN\n await expect(task.run()).rejects.toThrow(\n \"Transaction info certificate is missing\",\n );\n });\n});\n"],
|
|
5
|
-
"mappings": "AAAA,OAGE,wBAAAA,MAEK,2BACP,OACE,wBAAAC,EACA,iBAAAC,EACA,0BAAAC,EACA,gBAAAC,EACA,sBAAAC,EACA,8BAAAC,MACK,kCACP,OAAS,eAAAC,MAAmB,SAC5B,OAAS,QAAAC,EAAM,SAAAC,MAAa,YAG5B,OAAS,mCAAAC,MAAuC,oEAIhD,OACE,+BAAAC,MAEK,gCAEP,SAAS,8BAA+B,IAAM,CAC5C,MAAMC,EAAoB,CACxB,WAAY,GAAG,GAAG,EAClB,YAAa,GAAG,GAAG,EACnB,oBAAqB,GAAG,GAAG,EAC3B,cAAe,GAAG,GAAG,CACvB,EACMC,EAAa,CACjB,uBAAwB,GAAG,GAAG,CAChC,EACMC,EAAiB,CACrB,OAAQ,iBACV,EACMC,EAAiCV,EACrCE,EAAY,KAAK,CACf,QAAS,GACT,MAAO,EACP,KAAM,IACR,CAAC,EAAE,kBACL,EACMS,EAAqC,CACzC,eAAgB,EAChB,QAAS,IAAI,WAAW,CAAC,EAAM,EAAM,CAAI,CAAC,CAC5C,EAEA,IAAIC,EACJ,MAAMC,EAAUR,EAAgC,EAC1CS,EAA2B,GAAG,GAAG,EAEvC,SAASC,EACPC,EAC0B,CAC1B,MAAO,CACL,oBAAqB,GACrB,kBAAAA,EACA,gBAAiB,GACjB,QAAS,QACX,CACF,CAEA,WAAW,IAAM,CACf,GAAG,cAAc,EACjBH,EAAQ,YAAY,kBAClBjB,EAAqB,CAAE,KAAM,CAAE,UAAW,WAAY,CAAE,CAAC,CAC3D,EACAkB,EAAyB,gBAAgB,CACvC,IAAK,UAAa,CAAE,UAAW,IAAK,EACtC,CAAC,EAEDF,EAAc,CACZ,cAAeL,EACf,OAAQC,EACR,YAAaE,EACb,QAASD,EACT,UAAWM,EAAgB,EAAK,EAChC,eAAgB,gBAClB,CACF,CAAC,EAED,GAAG,mEAAoE,SAAY,CAEjF,MAAME,EAAwB,IAAI,WAAW,CAAC,EAAM,EAAM,CAAI,CAAC,EACzDC,EAAwC,CAAC,EACzCC,EAAwC,CAC5C,OAAQ,CAAE,QAAS,EAAG,GAAI,OAAW,KAAM,IAAK,EAChD,sBAAAF,EACA,KAAM,CACR,EACAT,EAAW,uBAAuB,oBAAoBJ,EAAMe,CAAY,CAAC,EACzEZ,EAAkB,YAAY,sBAAsBW,CAAiB,EACrEL,EAAQ,sBAAsB,oBAAoB,CAChD,iBAAkBf,EAAuB,0BACzC,aAAcC,EAAa,UAC3B,cAAe,CAAC,EAChB,WAAY,CAAE,KAAM,WAAY,QAAS,QAAS,EAClD,cAAeF,EAAc,KAC7B,0BAA2B,EAC7B,CAAC,EAGD,MAAMuB,EAAS,MAAM,IAAId,EACvBO,EACA,CAAE,GAAGD,EAAa,UAAWG,EAAgB,EAAI,CAAE,EACnDD,CACF,EAAE,IAAI,EAGN,OAAOM,CAAM,EAAE,QAAQ,CACrB,kBAAAF,EACA,sBAAAD,EACA,QAAS,EACT,gBAAiB,EACjB,UAAW,IACb,CAAC,CACH,CAAC,EAED,GAAG,uDAAwD,SAAY,CAErE,MAAMA,EAAwB,IAAI,WAAW,CAAC,EAAM,EAAM,CAAI,CAAC,EACzDC,EAAwC,CAAC,EACzCC,EAAwC,CAC5C,OAAQ,CAAE,QAAS,EAAG,GAAI,OAAW,KAAM,IAAK,EAChD,sBAAAF,EACA,KAAM,CACR,EACMI,EACJ,YACFP,EAAyB,oBAAoB,CAC3C,IAAK,UAAa,CAAE,UAAWO,CAAkB,EACnD,CAAC,EACDb,EAAW,uBAAuB,oBAAoBJ,EAAMe,CAAY,CAAC,EACzEZ,EAAkB,YAAY,sBAAsBW,CAAiB,EACrEL,EAAQ,sBAAsB,oBAAoB,CAChD,iBAAkBf,EAAuB,0BACzC,aAAcC,EAAa,UAC3B,cAAe,CAAC,EAChB,WAAY,CAAE,KAAM,WAAY,QAAS,QAAS,EAClD,cAAeF,EAAc,KAC7B,0BAA2B,EAC7B,CAAC,EAGD,MAAMuB,EAAS,MAAM,IAAId,EACvBO,EACA,CAAE,GAAGD,EAAa,UAAWG,EAAgB,EAAI,CAAE,EACnDD,CACF,EAAE,IAAI,EAGN,OAAOM,CAAM,EAAE,QAAQ,CACrB,kBAAAF,EACA,sBAAAD,EACA,QAAS,EACT,gBAAiB,EACjB,UAAWI,CACb,CAAC,CACH,CAAC,EAED,GAAG,gEAAiE,SAAY,CAE9E,MAAMJ,EAAwB,IAAI,WAAW,CAAC,EAAM,EAAM,CAAI,CAAC,EACzDC,EAAwC,CAC5C,CACE,KAAMvB,EAAqB,MAC3B,QAAS,WACX,EACA,CACE,KAAMA,EAAqB,IAC3B,QAAS,WACX,CACF,EACMwB,EAAwC,CAC5C,OAAQ,CAAE,QAAS,EAAG,GAAI,OAAW,KAAM,IAAK,EAChD,sBAAAF,EACA,KAAM,CACR,EACMI,EACJ,YACFP,EAAyB,oBAAoB,CAC3C,IAAK,UAAa,CAAE,UAAWO,CAAkB,EACnD,CAAC,EACDb,EAAW,uBAAuB,oBAAoBJ,EAAMe,CAAY,CAAC,EACzEZ,EAAkB,YAAY,sBAAsBW,CAAiB,EACrEL,EAAQ,sBAAsB,oBAAoB,CAChD,iBAAkBf,EAAuB,0BACzC,aAAcC,EAAa,UAC3B,cAAe,CAAC,EAChB,WAAY,CAAE,KAAM,WAAY,QAAS,QAAS,EAClD,cAAeF,EAAc,KAC7B,0BAA2B,EAC7B,CAAC,EAGD,MAAMuB,EAAS,MAAM,IAAId,EACvBO,EACAD,EACAE,CACF,EAAE,IAAI,EAGN,OAAOM,CAAM,EAAE,QAAQ,CACrB,kBAAAF,EACA,sBAAAD,EACA,QAAS,EACT,gBAAiB,EACjB,UAAW,IACb,CAAC,CACH,CAAC,EAED,GAAG,mEAAoE,SAAY,CAEjF,MAAMA,EAAwB,IAAI,WAAW,CAAC,EAAM,EAAM,CAAI,CAAC,EACzDC,EAAwC,CAC5C,CACE,KAAMvB,EAAqB,iBAC3B,QAAS,YACT,YAAagB,CACf,EACA,CACE,KAAMhB,EAAqB,8BAC3B,QAAS,WACX,EACA,CACE,KAAMA,EAAqB,KAC3B,QAAS,YACT,GAAI,EACJ,MAAO,EACP,YAAagB,CACf,EACA,CACE,KAAMhB,EAAqB,8BAC3B,QAAS,WACX,CACF,EACMwB,EAAwC,CAC5C,OAAQ,CAAE,QAAS,EAAG,GAAI,OAAW,KAAM,IAAK,EAChD,sBAAAF,EACA,KAAM,CACR,EACAT,EAAW,uBAAuB,oBAAoBJ,EAAMe,CAAY,CAAC,EACzEZ,EAAkB,YAAY,sBAAsBW,CAAiB,EACrEL,EAAQ,sBAAsB,oBAAoB,CAChD,iBAAkBf,EAAuB,0BACzC,aAAcC,EAAa,UAC3B,cAAe,CAAC,EAChB,WAAY,CAAE,KAAM,WAAY,QAAS,QAAS,EAClD,cAAeF,EAAc,KAC7B,0BAA2B,EAC7B,CAAC,EAGD,MAAMuB,EAAS,MAAM,IAAId,EACvBO,EACAD,EACAE,CACF,EAAE,IAAI,EAGN,OAAOM,CAAM,EAAE,QAAQ,CACrB,kBAAmB,CACjB,gBAAiB,YACjB,2BAA4BT,EAC5B,kBAAmB,CAACO,EAAkB,CAAC,EAAGA,EAAkB,CAAC,CAAC,EAC9D,iBAAkB,CAACA,EAAkB,CAAC,CAAC,CACzC,EACA,sBAAAD,EACA,QAAS,EACT,gBAAiB,EACjB,UAAW,IACb,CAAC,CACH,CAAC,EAED,GAAG,8CAA+C,SAAY,CAE5D,MAAMA,EAAwB,IAAI,WAAW,CAAC,EAAM,EAAM,CAAI,CAAC,EACzDC,EAAwC,CAAC,EACzCC,EAAwC,CAC5C,OAAQ,CAAE,QAAS,EAAG,GAAI,OAAW,KAAM,IAAK,EAChD,sBAAAF,EACA,KAAM,CACR,EACAT,EAAW,uBAAuB,oBAAoBJ,EAAMe,CAAY,CAAC,EACzEZ,EAAkB,YAAY,sBAAsBW,CAAiB,EACrEL,EAAQ,sBAAsB,oBAAoB,CAChD,iBAAkBf,EAAuB,0BACzC,aAAcC,EAAa,UAC3B,cAAe,CAAC,EAChB,WAAY,CAAE,KAAM,WAAY,QAAS,QAAS,EAClD,cAAeF,EAAc,KAC7B,0BAA2B,EAC7B,CAAC,EAGD,MAAM,IAAIS,EACRO,EACAD,EACAE,CACF,EAAE,IAAI,EAGN,OAAON,EAAW,sBAAsB,EAAE,qBACxCE,CACF,CACF,CAAC,EAED,GAAG,6DAA8D,SAAY,CAE3E,MAAMO,EAAwB,IAAI,WAAW,CAAC,EAAM,EAAM,CAAI,CAAC,EACzDC,EAAwC,CAAC,EACzCC,EAAwC,CAC5C,OAAQ,CAAE,QAAS,EAAG,GAAI,OAAW,KAAM,IAAK,EAChD,sBAAAF,EACA,KAAM,CACR,EACAT,EAAW,uBAAuB,oBAAoBJ,EAAMe,CAAY,CAAC,EACzEZ,EAAkB,YAAY,sBAAsBW,CAAiB,EACrEL,EAAQ,sBAAsB,oBAAoB,CAChD,iBAAkBf,EAAuB,0BACzC,aAAcC,EAAa,UAC3B,cAAe,CAAC,EAChB,WAAY,CAAE,KAAM,WAAY,QAAS,QAAS,EAClD,cAAeF,EAAc,KAC7B,0BAA2B,EAC7B,CAAC,EAGD,MAAM,IAAIS,EACRO,EACA,CAAE,GAAGD,EAAa,UAAWG,EAAgB,EAAI,CAAE,EACnDD,CACF,EAAE,IAAI,EAGN,OAAOA,CAAwB,EAAE,qBAAqBD,EAAS,CAC7D,cAAeN,EACf,eAAgB,iBAChB,OAAQC,EACR,YAAaE,CACf,CAAC,CACH,CAAC,EAED,GAAG,6DAA8D,SAAY,CAE3E,MAAMO,EAAwB,IAAI,WAAW,CAAC,EAAM,EAAM,CAAI,CAAC,EACzDC,EAAwC,CAAC,EACzCC,EAAwC,CAC5C,OAAQ,CAAE,QAAS,EAAG,GAAI,OAAW,KAAM,IAAK,EAChD,sBAAAF,EACA,KAAM,CACR,EACAT,EAAW,uBAAuB,oBAAoBJ,EAAMe,CAAY,CAAC,EACzEZ,EAAkB,YAAY,sBAAsBW,CAAiB,EACrEL,EAAQ,sBAAsB,oBAAoB,CAChD,iBAAkBf,EAAuB,0BACzC,aAAcC,EAAa,UAC3B,cAAe,CAAC,EAChB,WAAY,CAAE,KAAM,WAAY,QAAS,QAAS,EAClD,cAAeF,EAAc,KAC7B,0BAA2B,EAC7B,CAAC,EAGD,MAAM,IAAIS,EACRO,EACAD,EACAE,CACF,EAAE,IAAI,EAGN,OAAOP,EAAkB,WAAW,EAAE,qBAAqB,CACzD,cAAeV,EAAc,KAC7B,UAAW,YACX,OAAQ,kBACR,GAAGsB,EAAa,MAClB,CAAC,CACH,CAAC,EAED,GAAG,0DAA2D,SAAY,CAExE,MAAMF,EAAwB,IAAI,WAAW,CAAC,EAAM,EAAM,CAAI,CAAC,EACzDC,EAAwC,CAAC,EACzCC,EAAwC,CAC5C,OAAQ,CAAE,QAAS,EAAG,GAAI,OAAW,KAAM,IAAK,EAChD,sBAAAF,EACA,KAAM,CACR,EACAT,EAAW,uBAAuB,oBAAoBJ,EAAMe,CAAY,CAAC,EACzEZ,EAAkB,YAAY,sBAAsBW,CAAiB,EACrEL,EAAQ,sBAAsB,oBAAoB,CAChD,iBAAkBf,EAAuB,0BACzC,aAAcC,EAAa,UAC3B,cAAe,CAAC,EAChB,WAAY,CAAE,KAAM,WAAY,QAAS,QAAS,EAClD,cAAeF,EAAc,KAC7B,0BAA2B,EAC7B,CAAC,EACDgB,EAAQ,YAAY,sBAClBjB,EAAqB,CAAE,MAAO,IAAIK,CAA6B,CAAC,CAClE,EAGA,MAAM,IAAIK,EACRO,EACAD,EACAE,CACF,EAAE,IAAI,EAGN,OAAOP,EAAkB,WAAW,EAAE,qBAAqB,CACzD,cAAeV,EAAc,KAC7B,UAAW,OACX,OAAQ,kBACR,GAAGsB,EAAa,MAClB,CAAC,CACH,CAAC,EAED,GAAG,uDAAwD,SAAY,CAErE,MAAMG,EAAQ,IAAI,MAAM,OAAO,EAC/Bd,EAAW,uBAAuB,oBAAoBL,EAAKmB,CAAK,CAAC,EACjET,EAAQ,sBAAsB,oBAAoB,CAChD,iBAAkBf,EAAuB,0BACzC,aAAcC,EAAa,UAC3B,cAAe,CAAC,EAChB,WAAY,CAAE,KAAM,WAAY,QAAS,QAAS,EAClD,cAAeF,EAAc,KAC7B,0BAA2B,EAC7B,CAAC,EAGD,MAAM0B,EAAO,IAAIjB,EACfO,EACAD,EACAE,CACF,EAGA,MAAM,OAAOS,EAAK,IAAI,CAAC,EAAE,QAAQ,QAAQD,CAAK,CAChD,CAAC,EAED,GAAG,gDAAiD,SAAY,CAE9D,MAAML,EAAwB,IAAI,WAAW,CAAC,EAAM,EAAM,CAAI,CAAC,EACzDC,EAAwC,CAC5C,CACE,KAAMvB,EAAqB,MAC3B,MAAO,IAAI,MAAM,OAAO,CAC1B,EACA,CACE,KAAMA,EAAqB,MAC3B,QAAS,WACX,EACA,CACE,KAAMA,EAAqB,MAC3B,MAAO,IAAI,MAAM,OAAO,CAC1B,EACA,CACE,KAAMA,EAAqB,IAC3B,QAAS,WACX,CACF,EACMwB,EAAwC,CAC5C,OAAQ,CAAE,QAAS,EAAG,GAAI,OAAW,KAAM,IAAK,EAChD,sBAAAF,EACA,KAAM,CACR,EACAT,EAAW,uBAAuB,oBAAoBJ,EAAMe,CAAY,CAAC,EACzEZ,EAAkB,YAAY,sBAAsBW,CAAiB,EACrEL,EAAQ,sBAAsB,oBAAoB,CAChD,iBAAkBf,EAAuB,0BACzC,aAAcC,EAAa,UAC3B,cAAe,CAAC,EAChB,WAAY,CAAE,KAAM,WAAY,QAAS,QAAS,EAClD,cAAeF,EAAc,KAC7B,0BAA2B,EAC7B,CAAC,EAGD,MAAMuB,EAAS,MAAM,IAAId,EACvBO,EACAD,EACAE,CACF,EAAE,IAAI,EAGN,OAAOM,CAAM,EAAE,QAAQ,CACrB,kBAAmB,CAACF,EAAkB,CAAC,EAAGA,EAAkB,CAAC,CAAC,EAC9D,sBAAAD,EACA,QAAS,EACT,gBAAiB,EACjB,UAAW,IACb,CAAC,CACH,CAAC,EAED,GAAG,qEAAsE,SAAY,CAEnF,MAAMA,EAAwB,IAAI,WAAW,CAAC,EAAM,EAAM,CAAI,CAAC,EACzDC,EAAwC,CAC5C,CACE,KAAMvB,EAAqB,iBAC3B,QAAS,mBACT,YAAagB,CACf,EACA,CACE,KAAMhB,EAAqB,MAC3B,QAAS,WACX,EACA,CACE,KAAMA,EAAqB,8BAC3B,QAAS,mBACX,EACA,CACE,KAAMA,EAAqB,IAC3B,QAAS,WACX,EACA,CACE,KAAMA,EAAqB,KAC3B,QAAS,OACT,GAAI,EACJ,MAAO,EACP,YAAagB,CACf,CACF,EACMQ,EAAwC,CAC5C,OAAQ,CAAE,QAAS,EAAG,GAAI,OAAW,KAAM,IAAK,EAChD,sBAAAF,EACA,KAAM,CACR,EACAT,EAAW,uBAAuB,oBAAoBJ,EAAMe,CAAY,CAAC,EACzEZ,EAAkB,YAAY,sBAAsBW,CAAiB,EACrEL,EAAQ,sBAAsB,oBAAoB,CAChD,iBAAkBf,EAAuB,0BACzC,aAAcC,EAAa,UAC3B,cAAe,CAAC,EAChB,WAAY,CAAE,KAAM,WAAY,QAAS,QAAS,EAClD,cAAeF,EAAc,KAC7B,0BAA2B,EAC7B,CAAC,EAGD,MAAMuB,EAAS,MAAM,IAAId,EACvBO,EACAD,EACAE,CACF,EAAE,IAAI,EAGN,OAAOM,CAAM,EAAE,QAAQ,CACrB,kBAAmB,CAACF,EAAkB,CAAC,EAAGA,EAAkB,CAAC,CAAC,EAC9D,sBAAAD,EACA,QAAS,EACT,gBAAiB,EACjB,UAAW,IACb,CAAC,CACH,CAAC,EAED,GAAG,0FAA2F,SAAY,CAExG,MAAMA,EAAwB,IAAI,WAAW,CAAC,EAAM,EAAM,CAAI,CAAC,EACzDC,EAAwC,CAC5C,CACE,KAAMvB,EAAqB,8BAC3B,QAAS,mBACX,EACA,CACE,KAAMA,EAAqB,MAC3B,QAAS,WACX,EACA,CACE,KAAMA,EAAqB,KAC3B,QAAS,OACT,GAAI,EACJ,MAAO,CACT,EACA,CACE,KAAMA,EAAqB,IAC3B,QAAS,WACX,CACF,EACMwB,EAAwC,CAC5C,OAAQ,CAAE,QAAS,EAAG,GAAI,OAAW,KAAM,IAAK,EAChD,sBAAAF,EACA,KAAM,CACR,EACAT,EAAW,uBAAuB,oBAAoBJ,EAAMe,CAAY,CAAC,EACzEZ,EAAkB,YAAY,sBAAsBW,CAAiB,EACrEL,EAAQ,sBAAsB,oBAAoB,CAChD,iBAAkBf,EAAuB,0BACzC,aAAcC,EAAa,UAC3B,cAAe,CAAC,EAChB,WAAY,CAAE,KAAM,WAAY,QAAS,QAAS,EAClD,cAAeF,EAAc,KAC7B,0BAA2B,EAC7B,CAAC,EAGD,MAAMuB,EAAS,MAAM,IAAId,EACvBO,EACAD,EACAE,CACF,EAAE,IAAI,EAGN,OAAOM,CAAM,EAAE,QAAQ,CACrB,kBAAmB,CAACF,EAAkB,CAAC,EAAGA,EAAkB,CAAC,CAAC,EAC9D,sBAAAD,EACA,QAAS,EACT,gBAAiB,EACjB,UAAW,IACb,CAAC,CACH,CAAC,EAED,GAAG,iFAAkF,SAAY,CAE/F,MAAMA,EAAwB,IAAI,WAAW,CAAC,EAAM,EAAM,CAAI,CAAC,EACzDC,EAAwC,CAC5C,CACE,KAAMvB,EAAqB,MAC3B,QAAS,WACX,EACA,CACE,KAAMA,EAAqB,iBAC3B,QAAS,YACT,YAAagB,CACf,EACA,CACE,KAAMhB,EAAqB,gBAC3B,QAAS,WACX,EACA,CACE,KAAMA,EAAqB,8BAC3B,QAAS,WACX,EACA,CACE,KAAMA,EAAqB,KAC3B,QAAS,YACT,GAAI,EACJ,MAAO,EACP,YAAagB,CACf,CACF,EACMQ,EAAwC,CAC5C,OAAQ,CAAE,QAAS,EAAG,GAAI,OAAW,KAAM,IAAK,EAChD,sBAAAF,EACA,KAAM,CACR,EACAT,EAAW,uBAAuB,oBAAoBJ,EAAMe,CAAY,CAAC,EACzEZ,EAAkB,YAAY,sBAAsBW,CAAiB,EACrEL,EAAQ,sBAAsB,oBAAoB,CAChD,iBAAkBf,EAAuB,0BACzC,aAAcC,EAAa,UAC3B,cAAe,CAAC,EAChB,WAAY,CAAE,KAAM,WAAY,QAAS,QAAS,EAClD,cAAeF,EAAc,KAC7B,0BAA2B,EAC7B,CAAC,EAGD,MAAMuB,EAAS,MAAM,IAAId,EACvBO,EACAD,EACAE,CACF,EAAE,IAAI,EAGN,OAAOM,CAAM,EAAE,QAAQ,CACrB,kBAAmB,CACjB,gBAAiB,YACjB,2BAA4BT,EAC5B,kBAAmB,CAACO,EAAkB,CAAC,CAAC,EACxC,iBAAkB,CAACA,EAAkB,CAAC,CAAC,CACzC,EACA,sBAAAD,EACA,QAAS,EACT,gBAAiB,EACjB,UAAW,IACb,CAAC,CACH,CAAC,EAED,GAAG,8DAA+D,SAAY,CAE5E,MAAMA,EAAwB,IAAI,WAAW,CAAC,EAAM,EAAM,CAAI,CAAC,EACzDC,EAAwC,CAC5C,CACE,KAAMvB,EAAqB,MAC3B,QAAS,WACX,EACA,CACE,KAAMA,EAAqB,iBAC3B,QAAS,YACT,YAAagB,CACf,EACA,CACE,KAAMhB,EAAqB,8BAC3B,QAAS,WACX,EACA,CACE,KAAMA,EAAqB,KAC3B,QAAS,YACT,GAAI,EACJ,MAAO,EACP,YAAagB,CACf,CACF,EACMQ,EAAwC,CAC5C,OAAQ,CAAE,QAAS,EAAG,GAAI,OAAW,KAAM,IAAK,EAChD,sBAAAF,EACA,KAAM,CACR,EACAT,EAAW,uBAAuB,oBAAoBJ,EAAMe,CAAY,CAAC,EACzEZ,EAAkB,YAAY,sBAAsBW,CAAiB,EACrEL,EAAQ,sBAAsB,oBAAoB,CAChD,iBAAkBf,EAAuB,0BACzC,aAAcC,EAAa,UAC3B,cAAe,CAAC,EAChB,WAAY,CAAE,KAAM,WAAY,QAAS,QAAS,EAClD,cAAeF,EAAc,OAC7B,0BAA2B,EAC7B,CAAC,EAGD,MAAMuB,EAAS,MAAM,IAAId,EACvBO,EACAD,EACAE,CACF,EAAE,IAAI,EAGN,OAAOM,CAAM,EAAE,QAAQ,CACrB,kBAAmB,CAACF,EAAkB,CAAC,CAAC,EACxC,sBAAAD,EACA,QAAS,EACT,gBAAiB,EACjB,UAAW,IACb,CAAC,CACH,CAAC,EAED,GAAG,iEAAkE,SAAY,CAE/E,MAAMA,EAAwB,IAAI,WAAW,CAAC,EAAM,EAAM,CAAI,CAAC,EACzDC,EAAwC,CAC5C,CACE,KAAMvB,EAAqB,MAC3B,QAAS,WACX,EACA,CACE,KAAMA,EAAqB,iBAC3B,QAAS,YACT,YAAagB,CACf,EACA,CACE,KAAMhB,EAAqB,8BAC3B,QAAS,WACX,EACA,CACE,KAAMA,EAAqB,KAC3B,QAAS,YACT,GAAI,EACJ,MAAO,EACP,YAAagB,CACf,CACF,EACMQ,EAAwC,CAC5C,OAAQ,CAAE,QAAS,EAAG,GAAI,OAAW,KAAM,IAAK,EAChD,sBAAAF,EACA,KAAM,CACR,EACAT,EAAW,uBAAuB,oBAAoBJ,EAAMe,CAAY,CAAC,EACzEZ,EAAkB,YAAY,sBAAsBW,CAAiB,EACrEL,EAAQ,sBAAsB,oBAAoB,CAChD,iBAAkBf,EAAuB,0BACzC,aAAcC,EAAa,UAC3B,cAAe,CAAC,EAChB,WAAY,CAAE,KAAM,WAAY,QAAS,QAAS,EAClD,cAAeF,EAAc,KAC7B,0BAA2B,EAC7B,CAAC,EAGD,MAAMuB,EAAS,MAAM,IAAId,EACvBO,EACAD,EACAE,CACF,EAAE,IAAI,EAGN,OAAOM,CAAM,EAAE,QAAQ,CACrB,kBAAmB,CAACF,EAAkB,CAAC,CAAC,EACxC,sBAAAD,EACA,QAAS,EACT,gBAAiB,EACjB,UAAW,IACb,CAAC,CACH,CAAC,EAED,GAAG,iEAAkE,SAAY,CAE/E,MAAMA,EAAwB,IAAI,WAAW,CAAC,EAAM,EAAM,CAAI,CAAC,EACzDC,EAAwC,CAC5C,CACE,KAAMvB,EAAqB,MAC3B,QAAS,WACX,EACA,CACE,KAAMA,EAAqB,iBAC3B,QAAS,YACT,YAAagB,CACf,EACA,CACE,KAAMhB,EAAqB,8BAC3B,QAAS,WACX,EACA,CACE,KAAMA,EAAqB,KAC3B,QAAS,YACT,GAAI,EACJ,MAAO,EACP,YAAagB,CACf,CACF,EACMQ,EAAwC,CAC5C,OAAQ,CAAE,QAAS,EAAG,GAAI,OAAW,KAAM,IAAK,EAChD,sBAAAF,EACA,KAAM,CACR,EACAT,EAAW,uBAAuB,oBAAoBJ,EAAMe,CAAY,CAAC,EACzEZ,EAAkB,YAAY,sBAAsBW,CAAiB,EACrEL,EAAQ,sBAAsB,oBAAoB,CAChD,iBAAkBf,EAAuB,UACzC,aAAcC,EAAa,cAC3B,cAAeF,EAAc,IAC/B,CAAC,EAGD,MAAMuB,EAAS,MAAM,IAAId,EACvBO,EACAD,EACAE,CACF,EAAE,IAAI,EAGN,OAAOM,CAAM,EAAE,QAAQ,CACrB,kBAAmB,CAACF,EAAkB,CAAC,CAAC,EACxC,sBAAAD,EACA,QAAS,EACT,gBAAiB,EACjB,UAAW,IACb,CAAC,CACH,CAAC,EAED,GAAG,wEAAyE,SAAY,CAEtF,MAAMA,EAAwB,IAAI,WAAW,CAAC,EAAM,EAAM,CAAI,CAAC,EACzDC,EAAwC,CAC5C,CACE,KAAMvB,EAAqB,iBAC3B,QAAS,WACX,EACA,CACE,KAAMA,EAAqB,8BAC3B,QAAS,WACX,EACA,CACE,KAAMA,EAAqB,KAC3B,QAAS,YACT,GAAI,EACJ,MAAO,CACT,CACF,EACMwB,EAAwC,CAC5C,OAAQ,CAAE,QAAS,EAAG,GAAI,OAAW,KAAM,IAAK,EAChD,sBAAAF,EACA,KAAM,CACR,EACAT,EAAW,uBAAuB,oBAAoBJ,EAAMe,CAAY,CAAC,EACzEZ,EAAkB,YAAY,sBAAsBW,CAAiB,EACrEL,EAAQ,sBAAsB,oBAAoB,CAChD,iBAAkBf,EAAuB,0BACzC,aAAcC,EAAa,UAC3B,cAAe,CAAC,EAChB,WAAY,CAAE,KAAM,WAAY,QAAS,QAAS,EAClD,cAAeF,EAAc,KAC7B,0BAA2B,EAC7B,CAAC,EAGD,MAAM0B,EAAO,IAAIjB,EACfO,EACAD,EACAE,CACF,EAGA,MAAM,OAAOS,EAAK,IAAI,CAAC,EAAE,QAAQ,QAC/B,yCACF,CACF,CAAC,CACH,CAAC",
|
|
6
|
-
"names": ["ClearSignContextType", "CommandResultFactory", "DeviceModelId", "DeviceSessionStateType", "DeviceStatus", "hexaStringToBuffer", "UnknownDeviceExchangeError", "Transaction", "Left", "Right", "makeDeviceActionInternalApiMock", "BuildTransactionContextTask", "contextModuleMock", "mapperMock", "defaultOptions", "defaultTransaction", "defaultCertificate", "defaultArgs", "apiMock", "getWeb3ChecksFactoryMock", "createAppConfig", "web3ChecksEnabled", "serializedTransaction", "clearSignContexts", "mapperResult", "result", "expectedWeb3Check", "error", "task"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{ClearSignContextType as C}from"@ledgerhq/context-module";import{bufferToHexaString as d,isSuccessCommandResult as l}from"@ledgerhq/device-management-kit";import{GetAddressCommand as p}from"../../app-binder/command/GetAddressCommand";class x{constructor(e,r){this.api=e;this.args=r}async run(){const e=await this.api.sendCommand(new p({derivationPath:this.args.derivationPath,checkOnDevice:!1,returnChainCode:!1}));if(!l(e))return{web3Check:null,error:e.error};const r=e.data.address,{deviceModelId:s}=this.api.getDeviceSessionState(),{contextModule:n}=this.args;let t;if(this.isRawTx(this.args)){const a=this.args.mapper.mapTransactionToSubset(this.args.transaction);if(a.isRight()){const{subset:o,serializedTransaction:i}=a.extract(),c={deviceModelId:s,from:r,rawTx:d(i),chainId:o.chainId};t=await n.getWeb3Checks(c)}else throw a.extract()}else{const a={deviceModelId:s,from:r,data:this.args.data};t=await n.getWeb3Checks(a)}return t===null||t?.type!==C.WEB3_CHECK?{web3Check:null}:{web3Check:t}}isRawTx(e){return"transaction"in e}}export{x as GetWeb3CheckTask};
|
|
2
|
-
//# sourceMappingURL=GetWeb3CheckTask.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/internal/app-binder/task/GetWeb3CheckTask.ts"],
|
|
4
|
-
"sourcesContent": ["import {\n type ClearSignContext,\n type ClearSignContextSuccess,\n ClearSignContextType,\n type ContextModule,\n type Web3CheckContext,\n} from \"@ledgerhq/context-module\";\nimport {\n bufferToHexaString,\n type DmkError,\n type InternalApi,\n isSuccessCommandResult,\n} from \"@ledgerhq/device-management-kit\";\n\nimport { type TypedData } from \"@api/model/TypedData\";\nimport { GetAddressCommand } from \"@internal/app-binder/command/GetAddressCommand\";\nimport { type TransactionMapperService } from \"@internal/transaction/service/mapper/TransactionMapperService\";\n\nexport type GetWeb3CheckTaskResult =\n | {\n readonly web3Check: ClearSignContextSuccess<ClearSignContextType.WEB3_CHECK> | null;\n }\n | {\n readonly web3Check: null;\n error: DmkError;\n };\n\nexport type GetWeb3CheckTypedDataTaskArgs = {\n readonly contextModule: ContextModule;\n readonly derivationPath: string;\n readonly data: TypedData;\n};\nexport type GetWeb3CheckRawTxTaskArgs = {\n readonly contextModule: ContextModule;\n readonly derivationPath: string;\n readonly mapper: TransactionMapperService;\n readonly transaction: Uint8Array;\n};\nexport type GetWeb3CheckTaskArgs =\n | GetWeb3CheckTypedDataTaskArgs\n | GetWeb3CheckRawTxTaskArgs;\n\nexport class GetWeb3CheckTask {\n constructor(\n private readonly api: InternalApi,\n private readonly args: GetWeb3CheckTaskArgs,\n ) {}\n\n async run(): Promise<GetWeb3CheckTaskResult> {\n // Get sender address\n const getAddressResult = await this.api.sendCommand(\n new GetAddressCommand({\n derivationPath: this.args.derivationPath,\n checkOnDevice: false,\n returnChainCode: false,\n }),\n );\n if (!isSuccessCommandResult(getAddressResult)) {\n return {\n web3Check: null,\n error: getAddressResult.error,\n };\n }\n\n const address = getAddressResult.data.address;\n const { deviceModelId } = this.api.getDeviceSessionState();\n const { contextModule } = this.args;\n let web3CheckContext: ClearSignContext | null;\n\n if (this.isRawTx(this.args)) {\n // Transaction simulation\n const parsed = this.args.mapper.mapTransactionToSubset(\n this.args.transaction,\n );\n if (parsed.isRight()) {\n const { subset, serializedTransaction } = parsed.extract();\n const web3Params: Web3CheckContext = {\n deviceModelId,\n from: address,\n rawTx: bufferToHexaString(serializedTransaction),\n chainId: subset.chainId,\n };\n web3CheckContext = await contextModule.getWeb3Checks(web3Params);\n } else {\n throw parsed.extract();\n }\n } else {\n // Typed data simulation\n const web3Params: Web3CheckContext = {\n deviceModelId,\n from: address,\n data: this.args.data,\n };\n web3CheckContext = await contextModule.getWeb3Checks(web3Params);\n }\n\n if (\n web3CheckContext === null ||\n web3CheckContext?.type !== ClearSignContextType.WEB3_CHECK\n ) {\n return {\n web3Check: null,\n };\n }\n\n return {\n web3Check: web3CheckContext,\n };\n }\n\n private isRawTx(\n args: GetWeb3CheckTaskArgs,\n ): args is GetWeb3CheckRawTxTaskArgs {\n return \"transaction\" in args;\n }\n}\n"],
|
|
5
|
-
"mappings": "AAAA,OAGE,wBAAAA,MAGK,2BACP,OACE,sBAAAC,EAGA,0BAAAC,MACK,kCAGP,OAAS,qBAAAC,MAAyB,iDA2B3B,MAAMC,CAAiB,CAC5B,YACmBC,EACAC,EACjB,CAFiB,SAAAD,EACA,UAAAC,CAChB,CAEH,MAAM,KAAuC,CAE3C,MAAMC,EAAmB,MAAM,KAAK,IAAI,YACtC,IAAIJ,EAAkB,CACpB,eAAgB,KAAK,KAAK,eAC1B,cAAe,GACf,gBAAiB,EACnB,CAAC,CACH,EACA,GAAI,CAACD,EAAuBK,CAAgB,EAC1C,MAAO,CACL,UAAW,KACX,MAAOA,EAAiB,KAC1B,EAGF,MAAMC,EAAUD,EAAiB,KAAK,QAChC,CAAE,cAAAE,CAAc,EAAI,KAAK,IAAI,sBAAsB,EACnD,CAAE,cAAAC,CAAc,EAAI,KAAK,KAC/B,IAAIC,EAEJ,GAAI,KAAK,QAAQ,KAAK,IAAI,EAAG,CAE3B,MAAMC,EAAS,KAAK,KAAK,OAAO,uBAC9B,KAAK,KAAK,WACZ,EACA,GAAIA,EAAO,QAAQ,EAAG,CACpB,KAAM,CAAE,OAAAC,EAAQ,sBAAAC,CAAsB,EAAIF,EAAO,QAAQ,EACnDG,EAA+B,CACnC,cAAAN,EACA,KAAMD,EACN,MAAOP,EAAmBa,CAAqB,EAC/C,QAASD,EAAO,OAClB,EACAF,EAAmB,MAAMD,EAAc,cAAcK,CAAU,CACjE,KACE,OAAMH,EAAO,QAAQ,CAEzB,KAAO,CAEL,MAAMG,EAA+B,CACnC,cAAAN,EACA,KAAMD,EACN,KAAM,KAAK,KAAK,IAClB,EACAG,EAAmB,MAAMD,EAAc,cAAcK,CAAU,CACjE,CAEA,OACEJ,IAAqB,MACrBA,GAAkB,OAASX,EAAqB,WAEzC,CACL,UAAW,IACb,EAGK,CACL,UAAWW,CACb,CACF,CAEQ,QACNL,EACmC,CACnC,MAAO,gBAAiBA,CAC1B,CACF",
|
|
6
|
-
"names": ["ClearSignContextType", "bufferToHexaString", "isSuccessCommandResult", "GetAddressCommand", "GetWeb3CheckTask", "api", "args", "getAddressResult", "address", "deviceModelId", "contextModule", "web3CheckContext", "parsed", "subset", "serializedTransaction", "web3Params"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{CommandResultFactory as s,DeviceModelId as i,DeviceSessionStateType as m,DeviceStatus as p,InvalidStatusWordError as l}from"@ledgerhq/device-management-kit";import{Left as k,Right as u}from"purify-ts";import{makeDeviceActionInternalApiMock as w}from"../../app-binder/device-action/__test-utils__/makeInternalApi";import{GetWeb3CheckTask as r}from"../../app-binder/task/GetWeb3CheckTask";describe("GetWeb3CheckTask",()=>{const e=w(),n={getWeb3Checks:vi.fn()},t={mapTransactionToSubset:vi.fn()},c=new Uint8Array([1,2,3,4]),o="44'/60'/0'/0/0";describe("run",()=>{beforeEach(()=>{vi.clearAllMocks(),e.getDeviceSessionState.mockReturnValueOnce({sessionStateType:m.ReadyWithoutSecureChannel,deviceStatus:p.CONNECTED,installedApps:[],currentApp:{name:"Ethereum",version:"1.16.0"},deviceModelId:i.FLEX,isSecureConnectionAllowed:!0})}),describe("errors",()=>{it("should throw an error if mapTransactionToSubset assert.fails",async()=>{const a=new Error("error");e.sendCommand.mockResolvedValueOnce(s({data:{address:"address"}})),t.mapTransactionToSubset.mockReturnValue(k(a));try{await new r(e,{contextModule:n,mapper:t,transaction:c,derivationPath:o}).run(),assert.fail("should throw an error")}catch(d){expect(d).toEqual(a)}}),it("should return a context error if GetAddressCommand assert.fails",async()=>{t.mapTransactionToSubset.mockReturnValue(u({subset:{},serializedTransaction:new Uint8Array})),e.sendCommand.mockResolvedValueOnce(s({error:new l("error")}));const a=await new r(e,{contextModule:n,mapper:t,transaction:c,derivationPath:o}).run();expect(a).toEqual({web3Check:null,error:new l("error")})}),it("should return null if the type is not a ClearSignContextSuccess web3check",async()=>{t.mapTransactionToSubset.mockReturnValue(u({subset:{},serializedTransaction:new Uint8Array})),e.sendCommand.mockResolvedValueOnce(s({data:{address:"address"}})),n.getWeb3Checks.mockResolvedValue({type:"invalid-type",id:1});const a=await new r(e,{contextModule:n,mapper:t,transaction:c,derivationPath:o}).run();expect(a).toEqual({web3Check:null})})}),describe("success",()=>{it("should return null if the context module does not have a web3 check",async()=>{t.mapTransactionToSubset.mockReturnValue(u({subset:{},serializedTransaction:new Uint8Array})),e.sendCommand.mockResolvedValueOnce(s({data:{address:"address"}})),n.getWeb3Checks.mockResolvedValue(null);const a=await new r(e,{contextModule:n,mapper:t,transaction:c,derivationPath:o}).run();expect(a).toEqual({web3Check:null})}),it("should return a web3 check",async()=>{const a={type:"web3Check",id:1};t.mapTransactionToSubset.mockReturnValue(u({subset:{},serializedTransaction:new Uint8Array})),e.sendCommand.mockResolvedValueOnce(s({data:{address:"address"}})),n.getWeb3Checks.mockResolvedValue(a);const d=await new r(e,{contextModule:n,mapper:t,transaction:c,derivationPath:o}).run();expect(d).toEqual({web3Check:a})}),it("should return a web3 check for typed data",async()=>{const a={type:"web3Check",id:1};e.sendCommand.mockResolvedValueOnce(s({data:{address:"address"}})),n.getWeb3Checks.mockResolvedValue(a);const d=await new r(e,{contextModule:n,data:"typed data",derivationPath:o}).run();expect(d).toEqual({web3Check:a})}),it("should call the context module with the right parameters",async()=>{t.mapTransactionToSubset.mockReturnValue(u({subset:{chainId:15,from:"from"},serializedTransaction:new Uint8Array([1,2,3])})),e.sendCommand.mockResolvedValueOnce(s({data:{address:"address"}})),n.getWeb3Checks.mockResolvedValue(null),await new r(e,{contextModule:n,mapper:t,transaction:c,derivationPath:o}).run(),expect(n.getWeb3Checks).toHaveBeenCalledWith({deviceModelId:i.FLEX,from:"address",rawTx:"0x010203",chainId:15})})})})});
|
|
2
|
-
//# sourceMappingURL=GetWeb3CheckTask.test.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/internal/app-binder/task/GetWeb3CheckTask.test.ts"],
|
|
4
|
-
"sourcesContent": ["import { type ContextModule } from \"@ledgerhq/context-module\";\nimport {\n CommandResultFactory,\n DeviceModelId,\n DeviceSessionStateType,\n DeviceStatus,\n InvalidStatusWordError,\n} from \"@ledgerhq/device-management-kit\";\nimport { Left, Right } from \"purify-ts\";\n\nimport { type TypedData } from \"@api/model/TypedData\";\nimport { makeDeviceActionInternalApiMock } from \"@internal/app-binder/device-action/__test-utils__/makeInternalApi\";\nimport { GetWeb3CheckTask } from \"@internal/app-binder/task/GetWeb3CheckTask\";\nimport { type TransactionMapperService } from \"@internal/transaction/service/mapper/TransactionMapperService\";\n\ndescribe(\"GetWeb3CheckTask\", () => {\n const apiMock = makeDeviceActionInternalApiMock();\n const contextModuleMock = {\n getWeb3Checks: vi.fn(),\n };\n const mapperMock = {\n mapTransactionToSubset: vi.fn(),\n };\n const transaction = new Uint8Array([0x01, 0x02, 0x03, 0x04]);\n const derivationPath = \"44'/60'/0'/0/0\";\n\n describe(\"run\", () => {\n beforeEach(() => {\n vi.clearAllMocks();\n\n apiMock.getDeviceSessionState.mockReturnValueOnce({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n installedApps: [],\n currentApp: { name: \"Ethereum\", version: \"1.16.0\" },\n deviceModelId: DeviceModelId.FLEX,\n isSecureConnectionAllowed: true,\n });\n });\n\n describe(\"errors\", () => {\n it(\"should throw an error if mapTransactionToSubset assert.fails\", async () => {\n // GIVEN\n const error = new Error(\"error\");\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({ data: { address: \"address\" } }),\n );\n mapperMock.mapTransactionToSubset.mockReturnValue(Left(error));\n\n // WHEN\n try {\n await new GetWeb3CheckTask(apiMock, {\n contextModule: contextModuleMock as unknown as ContextModule,\n mapper: mapperMock as unknown as TransactionMapperService,\n transaction,\n derivationPath,\n }).run();\n assert.fail(\"should throw an error\");\n } catch (e) {\n // THEN\n expect(e).toEqual(error);\n }\n });\n\n it(\"should return a context error if GetAddressCommand assert.fails\", async () => {\n // GIVEN\n mapperMock.mapTransactionToSubset.mockReturnValue(\n Right({ subset: {}, serializedTransaction: new Uint8Array() }),\n );\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({ error: new InvalidStatusWordError(\"error\") }),\n );\n\n // WHEN\n const result = await new GetWeb3CheckTask(apiMock, {\n contextModule: contextModuleMock as unknown as ContextModule,\n mapper: mapperMock as unknown as TransactionMapperService,\n transaction,\n derivationPath,\n }).run();\n\n // THEN\n expect(result).toEqual({\n web3Check: null,\n error: new InvalidStatusWordError(\"error\"),\n });\n });\n\n it(\"should return null if the type is not a ClearSignContextSuccess web3check\", async () => {\n // GIVEN\n mapperMock.mapTransactionToSubset.mockReturnValue(\n Right({ subset: {}, serializedTransaction: new Uint8Array() }),\n );\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({ data: { address: \"address\" } }),\n );\n contextModuleMock.getWeb3Checks.mockResolvedValue({\n type: \"invalid-type\",\n id: 1,\n });\n\n // WHEN\n const result = await new GetWeb3CheckTask(apiMock, {\n contextModule: contextModuleMock as unknown as ContextModule,\n mapper: mapperMock as unknown as TransactionMapperService,\n transaction,\n derivationPath,\n }).run();\n\n // THEN\n expect(result).toEqual({\n web3Check: null,\n });\n });\n });\n\n describe(\"success\", () => {\n it(\"should return null if the context module does not have a web3 check\", async () => {\n // GIVEN\n mapperMock.mapTransactionToSubset.mockReturnValue(\n Right({ subset: {}, serializedTransaction: new Uint8Array() }),\n );\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({ data: { address: \"address\" } }),\n );\n contextModuleMock.getWeb3Checks.mockResolvedValue(null);\n\n // WHEN\n const result = await new GetWeb3CheckTask(apiMock, {\n contextModule: contextModuleMock as unknown as ContextModule,\n mapper: mapperMock as unknown as TransactionMapperService,\n transaction,\n derivationPath,\n }).run();\n\n // THEN\n expect(result).toEqual({\n web3Check: null,\n });\n });\n\n it(\"should return a web3 check\", async () => {\n // GIVEN\n const web3Check = { type: \"web3Check\", id: 1 };\n mapperMock.mapTransactionToSubset.mockReturnValue(\n Right({ subset: {}, serializedTransaction: new Uint8Array() }),\n );\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({ data: { address: \"address\" } }),\n );\n contextModuleMock.getWeb3Checks.mockResolvedValue(web3Check);\n\n // WHEN\n const result = await new GetWeb3CheckTask(apiMock, {\n contextModule: contextModuleMock as unknown as ContextModule,\n mapper: mapperMock as unknown as TransactionMapperService,\n transaction,\n derivationPath,\n }).run();\n\n // THEN\n expect(result).toEqual({\n web3Check,\n });\n });\n\n it(\"should return a web3 check for typed data\", async () => {\n // GIVEN\n const web3Check = { type: \"web3Check\", id: 1 };\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({ data: { address: \"address\" } }),\n );\n contextModuleMock.getWeb3Checks.mockResolvedValue(web3Check);\n\n // WHEN\n const result = await new GetWeb3CheckTask(apiMock, {\n contextModule: contextModuleMock as unknown as ContextModule,\n data: \"typed data\" as unknown as TypedData,\n derivationPath,\n }).run();\n\n // THEN\n expect(result).toEqual({\n web3Check,\n });\n });\n\n it(\"should call the context module with the right parameters\", async () => {\n // GIVEN\n mapperMock.mapTransactionToSubset.mockReturnValue(\n Right({\n subset: { chainId: 15, from: \"from\" },\n serializedTransaction: new Uint8Array([0x01, 0x02, 0x03]),\n }),\n );\n apiMock.sendCommand.mockResolvedValueOnce(\n CommandResultFactory({ data: { address: \"address\" } }),\n );\n contextModuleMock.getWeb3Checks.mockResolvedValue(null);\n\n // WHEN\n await new GetWeb3CheckTask(apiMock, {\n contextModule: contextModuleMock as unknown as ContextModule,\n mapper: mapperMock as unknown as TransactionMapperService,\n transaction,\n derivationPath,\n }).run();\n\n // THEN\n expect(contextModuleMock.getWeb3Checks).toHaveBeenCalledWith({\n deviceModelId: DeviceModelId.FLEX,\n from: \"address\",\n rawTx: \"0x010203\",\n chainId: 15,\n });\n });\n });\n });\n});\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["CommandResultFactory", "DeviceModelId", "DeviceSessionStateType", "DeviceStatus", "InvalidStatusWordError", "Left", "Right", "makeDeviceActionInternalApiMock", "GetWeb3CheckTask", "apiMock", "contextModuleMock", "mapperMock", "transaction", "derivationPath", "error", "e", "result", "web3Check"]
|
|
7
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{ClearSignContextType as t}from"@ledgerhq/context-module";import{CommandResultFactory as a,InvalidStatusWordError as i,isSuccessCommandResult as s,LoadCertificateCommand as d}from"@ledgerhq/device-management-kit";import{Just as m,Nothing as c}from"purify-ts";import{ProvideNFTInformationCommand as u}from"../../app-binder/command/ProvideNFTInformationCommand";import{ProvideTokenInformationCommand as p}from"../../app-binder/command/ProvideTokenInformationCommand";import{ProvideTrustedNameCommand as h}from"../../app-binder/command/ProvideTrustedNameCommand";import{ProvideWeb3CheckCommand as T}from"../../app-binder/command/ProvideWeb3CheckCommand";import{SetExternalPluginCommand as E}from"../../app-binder/command/SetExternalPluginCommand";import{SetPluginCommand as l}from"../../app-binder/command/SetPluginCommand";import{SendPayloadInChunksTask as C}from"./SendPayloadInChunksTask";class R{constructor(r,e){this.api=r;this.args=e}async run(){for(const r of this.args.clearSignContexts){const e=await this.provideContext(r);if(!s(e))return m(e)}if(this.args.web3Check){const r=await this.provideContext(this.args.web3Check);if(!s(r))return m(r)}return c}async provideContext({type:r,payload:e,certificate:o}){switch(o&&await this.api.sendCommand(new d({keyUsage:o.keyUsageNumber,certificate:o.payload})),r){case t.PLUGIN:return await this.api.sendCommand(new l({payload:e}));case t.EXTERNAL_PLUGIN:return await this.api.sendCommand(new E({payload:e}));case t.NFT:return await this.api.sendCommand(new u({payload:e}));case t.TOKEN:return await this.api.sendCommand(new p({payload:e}));case t.TRUSTED_NAME:return new C(this.api,{payload:e,commandFactory:n=>new h({data:n.chunkedData,isFirstChunk:n.isFirstChunk})}).run();case t.ENUM:case t.TRANSACTION_FIELD_DESCRIPTION:case t.TRANSACTION_INFO:return a({error:new i("The context type [EXTERNAL_PLUGIN] is not valid here")});case t.WEB3_CHECK:return new C(this.api,{payload:e,commandFactory:n=>new T({payload:n.chunkedData,isFirstChunk:n.isFirstChunk})}).run();default:{const n=r;return a({error:new i(`The context type [${n}] is not covered`)})}}}}export{R as ProvideTransactionContextTask};
|
|
2
|
-
//# sourceMappingURL=ProvideTransactionContextTask.js.map
|