@ledgerhq/live-common 34.54.0-nightly.20251206023719 → 34.54.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/__tests__/test-helpers/bridge.js +1 -1
- package/lib/__tests__/test-helpers/bridge.js.map +1 -1
- package/lib/__tests__/test-helpers/environment.js +0 -1
- package/lib/__tests__/test-helpers/environment.js.map +1 -1
- package/lib/account/index.d.ts +0 -1
- package/lib/account/index.d.ts.map +1 -1
- package/lib/account/index.js +1 -4
- package/lib/account/index.js.map +1 -1
- package/lib/bridge/generic-alpaca/accountBridge.d.ts +1 -1
- package/lib/bridge/generic-alpaca/accountBridge.d.ts.map +1 -1
- package/lib/bridge/generic-alpaca/accountBridge.js +1 -2
- package/lib/bridge/generic-alpaca/accountBridge.js.map +1 -1
- package/lib/bridge/generic-alpaca/broadcast.d.ts.map +1 -1
- package/lib/bridge/generic-alpaca/broadcast.js +3 -3
- package/lib/bridge/generic-alpaca/broadcast.js.map +1 -1
- package/lib/bridge/generic-alpaca/currencyBridge.d.ts.map +1 -1
- package/lib/bridge/generic-alpaca/currencyBridge.js +3 -3
- package/lib/bridge/generic-alpaca/currencyBridge.js.map +1 -1
- package/lib/bridge/generic-alpaca/estimateMaxSpendable.d.ts.map +1 -1
- package/lib/bridge/generic-alpaca/estimateMaxSpendable.js +1 -2
- package/lib/bridge/generic-alpaca/estimateMaxSpendable.js.map +1 -1
- package/lib/bridge/generic-alpaca/getAccountShape.d.ts.map +1 -1
- package/lib/bridge/generic-alpaca/getAccountShape.js +7 -16
- package/lib/bridge/generic-alpaca/getAccountShape.js.map +1 -1
- package/lib/bridge/generic-alpaca/getTransactionStatus.d.ts.map +1 -1
- package/lib/bridge/generic-alpaca/getTransactionStatus.js +1 -16
- package/lib/bridge/generic-alpaca/getTransactionStatus.js.map +1 -1
- package/lib/bridge/generic-alpaca/prepareTransaction.d.ts.map +1 -1
- package/lib/bridge/generic-alpaca/prepareTransaction.js +4 -38
- package/lib/bridge/generic-alpaca/prepareTransaction.js.map +1 -1
- package/lib/bridge/generic-alpaca/signOperation.d.ts.map +1 -1
- package/lib/bridge/generic-alpaca/signOperation.js +2 -18
- package/lib/bridge/generic-alpaca/signOperation.js.map +1 -1
- package/lib/bridge/generic-alpaca/signer/Eth.d.ts +0 -2
- package/lib/bridge/generic-alpaca/signer/Eth.d.ts.map +1 -1
- package/lib/bridge/generic-alpaca/signer/Eth.js +1 -8
- package/lib/bridge/generic-alpaca/signer/Eth.js.map +1 -1
- package/lib/bridge/generic-alpaca/signer/index.d.ts.map +1 -1
- package/lib/bridge/generic-alpaca/signer/index.js +0 -7
- package/lib/bridge/generic-alpaca/signer/index.js.map +1 -1
- package/lib/bridge/generic-alpaca/types.d.ts +0 -4
- package/lib/bridge/generic-alpaca/types.d.ts.map +1 -1
- package/lib/bridge/generic-alpaca/utils.d.ts.map +1 -1
- package/lib/bridge/generic-alpaca/utils.js +3 -12
- package/lib/bridge/generic-alpaca/utils.js.map +1 -1
- package/lib/bridge/impl.d.ts.map +1 -1
- package/lib/bridge/impl.js +3 -14
- package/lib/bridge/impl.js.map +1 -1
- package/lib/currencies/cryptoIcons.d.ts +3 -0
- package/lib/currencies/cryptoIcons.d.ts.map +1 -0
- package/lib/currencies/cryptoIcons.js +24 -0
- package/lib/currencies/cryptoIcons.js.map +1 -0
- package/lib/currencies/helpers.d.ts +0 -1
- package/lib/currencies/helpers.d.ts.map +1 -1
- package/lib/currencies/helpers.js +1 -7
- package/lib/currencies/helpers.js.map +1 -1
- package/lib/e2e/data/deviceLabelsData.d.ts.map +1 -1
- package/lib/e2e/data/deviceLabelsData.js +0 -1
- package/lib/e2e/data/deviceLabelsData.js.map +1 -1
- package/lib/e2e/enum/Device.d.ts +0 -1
- package/lib/e2e/enum/Device.d.ts.map +1 -1
- package/lib/e2e/enum/Device.js +0 -1
- package/lib/e2e/enum/Device.js.map +1 -1
- package/lib/e2e/families/cardano.d.ts.map +1 -1
- package/lib/e2e/families/cardano.js +14 -29
- package/lib/e2e/families/cardano.js.map +1 -1
- package/lib/e2e/index.d.ts +3 -23
- package/lib/e2e/index.d.ts.map +1 -1
- package/lib/e2e/index.js +1 -21
- package/lib/e2e/index.js.map +1 -1
- package/lib/e2e/speculos.d.ts.map +1 -1
- package/lib/e2e/speculos.js +4 -31
- package/lib/e2e/speculos.js.map +1 -1
- package/lib/e2e/speculosAppVersion.d.ts.map +1 -1
- package/lib/e2e/speculosAppVersion.js +2 -6
- package/lib/e2e/speculosAppVersion.js.map +1 -1
- package/lib/e2e/swap.d.ts.map +1 -1
- package/lib/e2e/swap.js +6 -7
- package/lib/e2e/swap.js.map +1 -1
- package/lib/env.react.d.ts +1 -1
- package/lib/env.react.d.ts.map +1 -1
- package/lib/exchange/swap/postSwapState.d.ts.map +1 -1
- package/lib/exchange/swap/postSwapState.js +6 -10
- package/lib/exchange/swap/postSwapState.js.map +1 -1
- package/lib/exchange/swap/types.d.ts +1 -3
- package/lib/exchange/swap/types.d.ts.map +1 -1
- package/lib/families/bitcoin/walletApiAdapter.d.ts.map +1 -1
- package/lib/families/bitcoin/walletApiAdapter.js +0 -3
- package/lib/families/bitcoin/walletApiAdapter.js.map +1 -1
- package/lib/families/canton/config.d.ts.map +1 -1
- package/lib/families/canton/config.js +4 -4
- package/lib/families/canton/config.js.map +1 -1
- package/lib/families/canton/react.d.ts +0 -2
- package/lib/families/canton/react.d.ts.map +1 -1
- package/lib/families/canton/react.js +1 -40
- package/lib/families/canton/react.js.map +1 -1
- package/lib/families/celo/setup.d.ts.map +1 -1
- package/lib/families/celo/setup.js +0 -11
- package/lib/families/celo/setup.js.map +1 -1
- package/lib/families/evm/bridge/mock.d.ts +0 -1
- package/lib/families/evm/bridge/mock.d.ts.map +1 -1
- package/lib/families/evm/bridge/mock.js +0 -12
- package/lib/families/evm/bridge/mock.js.map +1 -1
- package/lib/families/evm/setup.d.ts +4 -1
- package/lib/families/evm/setup.d.ts.map +1 -1
- package/lib/families/evm/setup.js +8 -1
- package/lib/families/evm/setup.js.map +1 -1
- package/lib/families/evm/walletApiAdapter.d.ts +0 -7
- package/lib/families/evm/walletApiAdapter.d.ts.map +1 -1
- package/lib/families/evm/walletApiAdapter.js +2 -36
- package/lib/families/evm/walletApiAdapter.js.map +1 -1
- package/lib/families/polkadot/config.js +1 -1
- package/lib/families/polkadot/config.js.map +1 -1
- package/lib/families/stacks/constants.d.ts +1 -1
- package/lib/families/stacks/constants.d.ts.map +1 -1
- package/lib/families/stacks/constants.js +1 -1
- package/lib/families/stacks/constants.js.map +1 -1
- package/lib/featureFlags/defaultFeatures.d.ts.map +1 -1
- package/lib/featureFlags/defaultFeatures.js +1 -18
- package/lib/featureFlags/defaultFeatures.js.map +1 -1
- package/lib/featureFlags/stakePrograms/index.js +4 -4
- package/lib/featureFlags/stakePrograms/index.js.map +1 -1
- package/lib/featureFlags/useFeature.d.ts +1 -1
- package/lib/featureFlags/useFeature.d.ts.map +1 -1
- package/lib/generated/bridge/js.d.ts +1 -0
- package/lib/generated/bridge/js.d.ts.map +1 -1
- package/lib/generated/bridge/js.js +32 -30
- package/lib/generated/bridge/js.js.map +1 -1
- package/lib/generated/bridge/mock.d.ts +0 -1
- package/lib/generated/bridge/mock.d.ts.map +1 -1
- package/lib/helpers.d.ts +0 -1
- package/lib/helpers.d.ts.map +1 -1
- package/lib/helpers.js +0 -15
- package/lib/helpers.js.map +1 -1
- package/lib/hw/getAppAndVersion.d.ts +1 -3
- package/lib/hw/getAppAndVersion.d.ts.map +1 -1
- package/lib/hw/getAppAndVersion.js +2 -2
- package/lib/hw/getAppAndVersion.js.map +1 -1
- package/lib/load/speculos.d.ts.map +1 -1
- package/lib/load/speculos.js +0 -1
- package/lib/load/speculos.js.map +1 -1
- package/lib/operation.d.ts.map +1 -1
- package/lib/operation.js +2 -7
- package/lib/operation.js.map +1 -1
- package/lib/postOnboarding/reducer.d.ts +0 -2
- package/lib/postOnboarding/reducer.d.ts.map +1 -1
- package/lib/react.d.ts +16 -0
- package/lib/react.d.ts.map +1 -0
- package/lib/react.js +64 -0
- package/lib/react.js.map +1 -0
- package/lib/reactNative.d.ts +16 -0
- package/lib/reactNative.d.ts.map +1 -0
- package/lib/reactNative.js +43 -0
- package/lib/reactNative.js.map +1 -0
- package/lib/wallet-api/Exchange/server.d.ts.map +1 -1
- package/lib/wallet-api/Exchange/server.js +0 -4
- package/lib/wallet-api/Exchange/server.js.map +1 -1
- package/lib/wallet-api/constants.d.ts +1 -1
- package/lib/walletSync/getEnvironmentParams.js +6 -6
- package/lib/walletSync/getEnvironmentParams.js.map +1 -1
- package/lib-es/__tests__/test-helpers/bridge.js +1 -1
- package/lib-es/__tests__/test-helpers/bridge.js.map +1 -1
- package/lib-es/__tests__/test-helpers/environment.js +0 -1
- package/lib-es/__tests__/test-helpers/environment.js.map +1 -1
- package/lib-es/account/index.d.ts +0 -1
- package/lib-es/account/index.d.ts.map +1 -1
- package/lib-es/account/index.js +0 -1
- package/lib-es/account/index.js.map +1 -1
- package/lib-es/bridge/generic-alpaca/accountBridge.d.ts +1 -1
- package/lib-es/bridge/generic-alpaca/accountBridge.d.ts.map +1 -1
- package/lib-es/bridge/generic-alpaca/accountBridge.js +1 -2
- package/lib-es/bridge/generic-alpaca/accountBridge.js.map +1 -1
- package/lib-es/bridge/generic-alpaca/broadcast.d.ts.map +1 -1
- package/lib-es/bridge/generic-alpaca/broadcast.js +3 -3
- package/lib-es/bridge/generic-alpaca/broadcast.js.map +1 -1
- package/lib-es/bridge/generic-alpaca/currencyBridge.d.ts.map +1 -1
- package/lib-es/bridge/generic-alpaca/currencyBridge.js +3 -3
- package/lib-es/bridge/generic-alpaca/currencyBridge.js.map +1 -1
- package/lib-es/bridge/generic-alpaca/estimateMaxSpendable.d.ts.map +1 -1
- package/lib-es/bridge/generic-alpaca/estimateMaxSpendable.js +1 -2
- package/lib-es/bridge/generic-alpaca/estimateMaxSpendable.js.map +1 -1
- package/lib-es/bridge/generic-alpaca/getAccountShape.d.ts.map +1 -1
- package/lib-es/bridge/generic-alpaca/getAccountShape.js +7 -16
- package/lib-es/bridge/generic-alpaca/getAccountShape.js.map +1 -1
- package/lib-es/bridge/generic-alpaca/getTransactionStatus.d.ts.map +1 -1
- package/lib-es/bridge/generic-alpaca/getTransactionStatus.js +1 -16
- package/lib-es/bridge/generic-alpaca/getTransactionStatus.js.map +1 -1
- package/lib-es/bridge/generic-alpaca/prepareTransaction.d.ts.map +1 -1
- package/lib-es/bridge/generic-alpaca/prepareTransaction.js +4 -38
- package/lib-es/bridge/generic-alpaca/prepareTransaction.js.map +1 -1
- package/lib-es/bridge/generic-alpaca/signOperation.d.ts.map +1 -1
- package/lib-es/bridge/generic-alpaca/signOperation.js +2 -18
- package/lib-es/bridge/generic-alpaca/signOperation.js.map +1 -1
- package/lib-es/bridge/generic-alpaca/signer/Eth.d.ts +0 -2
- package/lib-es/bridge/generic-alpaca/signer/Eth.d.ts.map +1 -1
- package/lib-es/bridge/generic-alpaca/signer/Eth.js +0 -4
- package/lib-es/bridge/generic-alpaca/signer/Eth.js.map +1 -1
- package/lib-es/bridge/generic-alpaca/signer/index.d.ts.map +1 -1
- package/lib-es/bridge/generic-alpaca/signer/index.js +0 -7
- package/lib-es/bridge/generic-alpaca/signer/index.js.map +1 -1
- package/lib-es/bridge/generic-alpaca/types.d.ts +0 -4
- package/lib-es/bridge/generic-alpaca/types.d.ts.map +1 -1
- package/lib-es/bridge/generic-alpaca/utils.d.ts.map +1 -1
- package/lib-es/bridge/generic-alpaca/utils.js +3 -12
- package/lib-es/bridge/generic-alpaca/utils.js.map +1 -1
- package/lib-es/bridge/impl.d.ts.map +1 -1
- package/lib-es/bridge/impl.js +3 -14
- package/lib-es/bridge/impl.js.map +1 -1
- package/lib-es/currencies/cryptoIcons.d.ts +3 -0
- package/lib-es/currencies/cryptoIcons.d.ts.map +1 -0
- package/lib-es/currencies/cryptoIcons.js +20 -0
- package/lib-es/currencies/cryptoIcons.js.map +1 -0
- package/lib-es/currencies/helpers.d.ts +0 -1
- package/lib-es/currencies/helpers.d.ts.map +1 -1
- package/lib-es/currencies/helpers.js +0 -5
- package/lib-es/currencies/helpers.js.map +1 -1
- package/lib-es/e2e/data/deviceLabelsData.d.ts.map +1 -1
- package/lib-es/e2e/data/deviceLabelsData.js +0 -1
- package/lib-es/e2e/data/deviceLabelsData.js.map +1 -1
- package/lib-es/e2e/enum/Device.d.ts +0 -1
- package/lib-es/e2e/enum/Device.d.ts.map +1 -1
- package/lib-es/e2e/enum/Device.js +0 -1
- package/lib-es/e2e/enum/Device.js.map +1 -1
- package/lib-es/e2e/families/cardano.d.ts.map +1 -1
- package/lib-es/e2e/families/cardano.js +14 -29
- package/lib-es/e2e/families/cardano.js.map +1 -1
- package/lib-es/e2e/index.d.ts +3 -23
- package/lib-es/e2e/index.d.ts.map +1 -1
- package/lib-es/e2e/index.js +0 -16
- package/lib-es/e2e/index.js.map +1 -1
- package/lib-es/e2e/speculos.d.ts.map +1 -1
- package/lib-es/e2e/speculos.js +4 -31
- package/lib-es/e2e/speculos.js.map +1 -1
- package/lib-es/e2e/speculosAppVersion.d.ts.map +1 -1
- package/lib-es/e2e/speculosAppVersion.js +2 -6
- package/lib-es/e2e/speculosAppVersion.js.map +1 -1
- package/lib-es/e2e/swap.d.ts.map +1 -1
- package/lib-es/e2e/swap.js +6 -7
- package/lib-es/e2e/swap.js.map +1 -1
- package/lib-es/env.react.d.ts +1 -1
- package/lib-es/env.react.d.ts.map +1 -1
- package/lib-es/exchange/swap/postSwapState.d.ts.map +1 -1
- package/lib-es/exchange/swap/postSwapState.js +6 -10
- package/lib-es/exchange/swap/postSwapState.js.map +1 -1
- package/lib-es/exchange/swap/types.d.ts +1 -3
- package/lib-es/exchange/swap/types.d.ts.map +1 -1
- package/lib-es/families/bitcoin/walletApiAdapter.d.ts.map +1 -1
- package/lib-es/families/bitcoin/walletApiAdapter.js +0 -3
- package/lib-es/families/bitcoin/walletApiAdapter.js.map +1 -1
- package/lib-es/families/canton/config.d.ts.map +1 -1
- package/lib-es/families/canton/config.js +4 -4
- package/lib-es/families/canton/config.js.map +1 -1
- package/lib-es/families/canton/react.d.ts +0 -2
- package/lib-es/families/canton/react.d.ts.map +1 -1
- package/lib-es/families/canton/react.js +1 -38
- package/lib-es/families/canton/react.js.map +1 -1
- package/lib-es/families/celo/setup.d.ts.map +1 -1
- package/lib-es/families/celo/setup.js +0 -11
- package/lib-es/families/celo/setup.js.map +1 -1
- package/lib-es/families/evm/bridge/mock.d.ts +0 -1
- package/lib-es/families/evm/bridge/mock.d.ts.map +1 -1
- package/lib-es/families/evm/bridge/mock.js +0 -12
- package/lib-es/families/evm/bridge/mock.js.map +1 -1
- package/lib-es/families/evm/setup.d.ts +4 -1
- package/lib-es/families/evm/setup.d.ts.map +1 -1
- package/lib-es/families/evm/setup.js +8 -2
- package/lib-es/families/evm/setup.js.map +1 -1
- package/lib-es/families/evm/walletApiAdapter.d.ts +0 -7
- package/lib-es/families/evm/walletApiAdapter.d.ts.map +1 -1
- package/lib-es/families/evm/walletApiAdapter.js +1 -30
- package/lib-es/families/evm/walletApiAdapter.js.map +1 -1
- package/lib-es/families/polkadot/config.js +1 -1
- package/lib-es/families/polkadot/config.js.map +1 -1
- package/lib-es/families/stacks/constants.d.ts +1 -1
- package/lib-es/families/stacks/constants.d.ts.map +1 -1
- package/lib-es/families/stacks/constants.js +1 -1
- package/lib-es/families/stacks/constants.js.map +1 -1
- package/lib-es/featureFlags/defaultFeatures.d.ts.map +1 -1
- package/lib-es/featureFlags/defaultFeatures.js +1 -18
- package/lib-es/featureFlags/defaultFeatures.js.map +1 -1
- package/lib-es/featureFlags/stakePrograms/index.js +4 -4
- package/lib-es/featureFlags/stakePrograms/index.js.map +1 -1
- package/lib-es/featureFlags/useFeature.d.ts +1 -1
- package/lib-es/featureFlags/useFeature.d.ts.map +1 -1
- package/lib-es/generated/bridge/js.d.ts +1 -0
- package/lib-es/generated/bridge/js.d.ts.map +1 -1
- package/lib-es/generated/bridge/js.js +2 -0
- package/lib-es/generated/bridge/js.js.map +1 -1
- package/lib-es/generated/bridge/mock.d.ts +0 -1
- package/lib-es/generated/bridge/mock.d.ts.map +1 -1
- package/lib-es/helpers.d.ts +0 -1
- package/lib-es/helpers.d.ts.map +1 -1
- package/lib-es/helpers.js +0 -1
- package/lib-es/helpers.js.map +1 -1
- package/lib-es/hw/getAppAndVersion.d.ts +1 -3
- package/lib-es/hw/getAppAndVersion.d.ts.map +1 -1
- package/lib-es/hw/getAppAndVersion.js +2 -2
- package/lib-es/hw/getAppAndVersion.js.map +1 -1
- package/lib-es/load/speculos.d.ts.map +1 -1
- package/lib-es/load/speculos.js +0 -1
- package/lib-es/load/speculos.js.map +1 -1
- package/lib-es/operation.d.ts.map +1 -1
- package/lib-es/operation.js +2 -7
- package/lib-es/operation.js.map +1 -1
- package/lib-es/postOnboarding/reducer.d.ts +0 -2
- package/lib-es/postOnboarding/reducer.d.ts.map +1 -1
- package/lib-es/react.d.ts +16 -0
- package/lib-es/react.d.ts.map +1 -0
- package/lib-es/react.js +33 -0
- package/lib-es/react.js.map +1 -0
- package/lib-es/reactNative.d.ts +16 -0
- package/lib-es/reactNative.d.ts.map +1 -0
- package/lib-es/reactNative.js +15 -0
- package/lib-es/reactNative.js.map +1 -0
- package/lib-es/wallet-api/Exchange/server.d.ts.map +1 -1
- package/lib-es/wallet-api/Exchange/server.js +0 -4
- package/lib-es/wallet-api/Exchange/server.js.map +1 -1
- package/lib-es/wallet-api/constants.d.ts +1 -1
- package/lib-es/walletSync/getEnvironmentParams.js +6 -6
- package/lib-es/walletSync/getEnvironmentParams.js.map +1 -1
- package/package.json +86 -78
- package/react.js +1 -0
- package/reactNative.js +1 -0
- package/src/__tests__/test-helpers/bridge.ts +1 -1
- package/src/__tests__/test-helpers/environment.ts +0 -1
- package/src/account/index.ts +0 -6
- package/src/bridge/generic-alpaca/accountBridge.ts +2 -3
- package/src/bridge/generic-alpaca/broadcast.ts +3 -6
- package/src/bridge/generic-alpaca/currencyBridge.ts +3 -3
- package/src/bridge/generic-alpaca/estimateMaxSpendable.ts +1 -2
- package/src/bridge/generic-alpaca/getAccountShape.ts +12 -24
- package/src/bridge/generic-alpaca/getTransactionStatus.ts +1 -16
- package/src/bridge/generic-alpaca/prepareTransaction.ts +10 -44
- package/src/bridge/generic-alpaca/signOperation.ts +2 -18
- package/src/bridge/generic-alpaca/signer/Eth.ts +1 -5
- package/src/bridge/generic-alpaca/signer/index.ts +0 -7
- package/src/bridge/generic-alpaca/tests/getAccountShape.test.ts +2 -2
- package/src/bridge/generic-alpaca/tests/prepareTransaction.test.ts +0 -32
- package/src/bridge/generic-alpaca/types.ts +0 -4
- package/src/bridge/generic-alpaca/utils.test.ts +0 -4
- package/src/bridge/generic-alpaca/utils.ts +3 -15
- package/src/bridge/impl.ts +3 -16
- package/src/currencies/cryptoIcons.test.ts +54 -0
- package/src/currencies/cryptoIcons.ts +21 -0
- package/src/currencies/helpers.test.ts +1 -10
- package/src/currencies/helpers.ts +0 -6
- package/src/e2e/data/deviceLabelsData.ts +0 -1
- package/src/e2e/enum/Device.ts +0 -1
- package/src/e2e/families/cardano.ts +14 -32
- package/src/e2e/index.ts +0 -20
- package/src/e2e/speculos.ts +4 -35
- package/src/e2e/speculosAppVersion.ts +2 -8
- package/src/e2e/swap.ts +7 -8
- package/src/exchange/swap/postSwapState.ts +5 -10
- package/src/exchange/swap/types.ts +1 -3
- package/src/families/bitcoin/walletApiAdapter.test.ts +0 -36
- package/src/families/bitcoin/walletApiAdapter.ts +0 -4
- package/src/families/canton/config.ts +4 -5
- package/src/families/canton/react.ts +1 -45
- package/src/families/celo/setup.ts +0 -12
- package/src/families/cosmos/datasets/__snapshots__/cosmos.integration.test.ts.snap +4 -73
- package/src/families/cosmos/datasets/__snapshots__/cryptoOrg.integration.test.ts.snap +2 -2
- package/src/families/cosmos/datasets/__snapshots__/injective.integration.test.ts.snap +2 -2
- package/src/families/cosmos/datasets/__snapshots__/mantra.integration.test.ts.snap +2 -2
- package/src/families/cosmos/datasets/__snapshots__/osmosis.integration.test.ts.snap +2 -2
- package/src/families/cosmos/datasets/__snapshots__/persistence.integration.test.ts.snap +4 -4
- package/src/families/cosmos/datasets/__snapshots__/stargaze.integration.test.ts.snap +2 -2
- package/src/families/evm/bridge/mock.ts +0 -14
- package/src/families/evm/setup.ts +22 -3
- package/src/families/evm/walletApiAdapter.ts +1 -33
- package/src/families/hedera/__snapshots__/bridge.integration.test.ts.snap +17 -278
- package/src/families/polkadot/__snapshots__/bridge.integration.test.ts.snap +3653 -6
- package/src/families/polkadot/config.ts +1 -1
- package/src/families/stacks/__snapshots__/bridge.integration.test.ts.snap +17 -1536
- package/src/families/stacks/__tests__/sync.integration.test.ts +2 -2
- package/src/families/stacks/constants.ts +1 -1
- package/src/families/stellar/__snapshots__/bridge.integration.test.ts.snap +9 -9
- package/src/featureFlags/defaultFeatures.ts +1 -18
- package/src/featureFlags/stakePrograms/index.ts +4 -4
- package/src/generated/bridge/js.ts +2 -0
- package/src/helpers.ts +0 -2
- package/src/hw/getAppAndVersion.ts +1 -2
- package/src/load/speculos.ts +0 -1
- package/src/operation.ts +2 -10
- package/src/react.tsx +43 -0
- package/src/reactNative.ts +23 -0
- package/src/reactNativeSvg.d.ts +19 -0
- package/src/wallet-api/Exchange/server.ts +0 -5
- package/src/walletSync/getEnvironmentParams.ts +6 -6
- package/lib/account/recentAddresses.d.ts +0 -10
- package/lib/account/recentAddresses.d.ts.map +0 -1
- package/lib/account/recentAddresses.js +0 -60
- package/lib/account/recentAddresses.js.map +0 -1
- package/lib/bridge/generic-alpaca/postSync.d.ts +0 -16
- package/lib/bridge/generic-alpaca/postSync.d.ts.map +0 -1
- package/lib/bridge/generic-alpaca/postSync.js +0 -44
- package/lib/bridge/generic-alpaca/postSync.js.map +0 -1
- package/lib/e2e/data/regexes.d.ts +0 -2
- package/lib/e2e/data/regexes.d.ts.map +0 -1
- package/lib/e2e/data/regexes.js +0 -5
- package/lib/e2e/data/regexes.js.map +0 -1
- package/lib/families/hedera/react.d.ts +0 -6
- package/lib/families/hedera/react.d.ts.map +0 -1
- package/lib/families/hedera/react.js +0 -50
- package/lib/families/hedera/react.js.map +0 -1
- package/lib/helpers/cryptoIconSize.d.ts +0 -3
- package/lib/helpers/cryptoIconSize.d.ts.map +0 -1
- package/lib/helpers/cryptoIconSize.js +0 -40
- package/lib/helpers/cryptoIconSize.js.map +0 -1
- package/lib/hooks/useHtmlLinkSegments.d.ts +0 -19
- package/lib/hooks/useHtmlLinkSegments.d.ts.map +0 -1
- package/lib/hooks/useHtmlLinkSegments.js +0 -128
- package/lib/hooks/useHtmlLinkSegments.js.map +0 -1
- package/lib-es/account/recentAddresses.d.ts +0 -10
- package/lib-es/account/recentAddresses.d.ts.map +0 -1
- package/lib-es/account/recentAddresses.js +0 -55
- package/lib-es/account/recentAddresses.js.map +0 -1
- package/lib-es/bridge/generic-alpaca/postSync.d.ts +0 -16
- package/lib-es/bridge/generic-alpaca/postSync.d.ts.map +0 -1
- package/lib-es/bridge/generic-alpaca/postSync.js +0 -37
- package/lib-es/bridge/generic-alpaca/postSync.js.map +0 -1
- package/lib-es/e2e/data/regexes.d.ts +0 -2
- package/lib-es/e2e/data/regexes.d.ts.map +0 -1
- package/lib-es/e2e/data/regexes.js +0 -2
- package/lib-es/e2e/data/regexes.js.map +0 -1
- package/lib-es/families/hedera/react.d.ts +0 -6
- package/lib-es/families/hedera/react.d.ts.map +0 -1
- package/lib-es/families/hedera/react.js +0 -41
- package/lib-es/families/hedera/react.js.map +0 -1
- package/lib-es/helpers/cryptoIconSize.d.ts +0 -3
- package/lib-es/helpers/cryptoIconSize.d.ts.map +0 -1
- package/lib-es/helpers/cryptoIconSize.js +0 -35
- package/lib-es/helpers/cryptoIconSize.js.map +0 -1
- package/lib-es/hooks/useHtmlLinkSegments.d.ts +0 -19
- package/lib-es/hooks/useHtmlLinkSegments.d.ts.map +0 -1
- package/lib-es/hooks/useHtmlLinkSegments.js +0 -121
- package/lib-es/hooks/useHtmlLinkSegments.js.map +0 -1
- package/src/account/recentAddresses.test.ts +0 -104
- package/src/account/recentAddresses.ts +0 -84
- package/src/bridge/generic-alpaca/postSync.test.ts +0 -97
- package/src/bridge/generic-alpaca/postSync.ts +0 -42
- package/src/e2e/data/regexes.ts +0 -1
- package/src/families/canton/react.test.ts +0 -147
- package/src/families/hedera/react.test.ts +0 -272
- package/src/families/hedera/react.ts +0 -63
- package/src/helpers/cryptoIconSize.ts +0 -25
- package/src/hooks/__tests__/useHtmlLinkSegments.test.ts +0 -105
- package/src/hooks/useHtmlLinkSegments.ts +0 -158
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import "../__tests__/test-helpers/setup";
|
|
2
|
-
import { isCryptoCurrency
|
|
2
|
+
import { isCryptoCurrency } from "./helpers";
|
|
3
3
|
import { listCryptoCurrencies } from ".";
|
|
4
4
|
|
|
5
5
|
describe("Currencies helpers", () => {
|
|
@@ -10,13 +10,4 @@ describe("Currencies helpers", () => {
|
|
|
10
10
|
expect(isCryptoCurrency(currency)).toBeTruthy();
|
|
11
11
|
});
|
|
12
12
|
});
|
|
13
|
-
|
|
14
|
-
test("getFamilyByCurrencyId returns correct family for a known currency id", () => {
|
|
15
|
-
expect(getFamilyByCurrencyId("bitcoin")).toBe("bitcoin");
|
|
16
|
-
expect(getFamilyByCurrencyId("ethereum")).toBe("evm");
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
test("getFamilyByCurrencyId returns undefined for an unknown currency id", () => {
|
|
20
|
-
expect(getFamilyByCurrencyId("unknown_currency_id")).toBeUndefined();
|
|
21
|
-
});
|
|
22
13
|
});
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { Currency, CryptoCurrency, TokenCurrency } from "@ledgerhq/types-cryptoassets";
|
|
2
|
-
import { findCryptoCurrencyById } from "@ledgerhq/cryptoassets";
|
|
3
2
|
|
|
4
3
|
export function isCryptoCurrency(currency: Currency): currency is CryptoCurrency {
|
|
5
4
|
return currency.type === "CryptoCurrency";
|
|
@@ -16,8 +15,3 @@ export function isUTXOCompliant(currencyFamily: string): boolean {
|
|
|
16
15
|
export type CurrencyFilters = {
|
|
17
16
|
currencies?: string[];
|
|
18
17
|
};
|
|
19
|
-
|
|
20
|
-
export function getFamilyByCurrencyId(currencyId: string): CryptoCurrency["family"] | undefined {
|
|
21
|
-
const currency = findCryptoCurrencyById(currencyId);
|
|
22
|
-
return currency?.family;
|
|
23
|
-
}
|
|
@@ -112,7 +112,6 @@ export const DEVICE_LABELS_CONFIG: DeviceLabelsConfig = {
|
|
|
112
112
|
},
|
|
113
113
|
[DeviceModelId.stax]: TOUCHSCREEN_DEVICE_CONFIG,
|
|
114
114
|
[DeviceModelId.europa]: TOUCHSCREEN_DEVICE_CONFIG,
|
|
115
|
-
[DeviceModelId.apex]: TOUCHSCREEN_DEVICE_CONFIG,
|
|
116
115
|
default: {
|
|
117
116
|
receiveVerify: {
|
|
118
117
|
[AppInfos.BNB_CHAIN.name]: DeviceLabels.VERIFY_BSC,
|
package/src/e2e/enum/Device.ts
CHANGED
|
@@ -22,7 +22,7 @@ function validateTransactionData(tx: Transaction, events: string[]) {
|
|
|
22
22
|
|
|
23
23
|
async function sendCardanoTouchDevices(tx: Transaction) {
|
|
24
24
|
await waitFor(DeviceLabels.REVIEW_TRANSACTION);
|
|
25
|
-
const events = await pressUntilTextFound(DeviceLabels.
|
|
25
|
+
const events = await pressUntilTextFound(DeviceLabels.TO);
|
|
26
26
|
validateTransactionData(tx, events);
|
|
27
27
|
await pressAndRelease(DeviceLabels.TAP_TO_CONTINUE);
|
|
28
28
|
await waitFor(DeviceLabels.FEES);
|
|
@@ -77,22 +77,18 @@ export async function sendCardano(tx: Transaction) {
|
|
|
77
77
|
return sendCardanoButtonDevice(tx);
|
|
78
78
|
}
|
|
79
79
|
|
|
80
|
-
const TOUCH_DELEGATE_STEPS = [
|
|
81
|
-
[DeviceLabels.REVIEW_TRANSACTION, "swipe"],
|
|
82
|
-
[DeviceLabels.TAP_TO_CONTINUE, "tap"],
|
|
83
|
-
[DeviceLabels.REGISTER, "swipe"],
|
|
84
|
-
[DeviceLabels.TAP_TO_CONTINUE, "tap"],
|
|
85
|
-
[DeviceLabels.CONFIRM, "confirm"],
|
|
86
|
-
[DeviceLabels.DELEGATE_STAKE, "swipe"],
|
|
87
|
-
[DeviceLabels.TAP_TO_CONTINUE, "tap"],
|
|
88
|
-
[DeviceLabels.CONFIRM, "confirm"],
|
|
89
|
-
[DeviceLabels.HOLD_TO_SIGN, "hold"],
|
|
90
|
-
] as const;
|
|
91
|
-
|
|
92
80
|
const DELEGATE_STEPS_CONFIG = {
|
|
93
|
-
[DeviceModelId.stax]:
|
|
94
|
-
|
|
95
|
-
|
|
81
|
+
[DeviceModelId.stax || DeviceModelId.europa]: [
|
|
82
|
+
[DeviceLabels.REVIEW_TRANSACTION, "swipe"],
|
|
83
|
+
[DeviceLabels.TAP_TO_CONTINUE, "tap"],
|
|
84
|
+
[DeviceLabels.REGISTER, "swipe"],
|
|
85
|
+
[DeviceLabels.TAP_TO_CONTINUE, "tap"],
|
|
86
|
+
[DeviceLabels.CONFIRM, "confirm"],
|
|
87
|
+
[DeviceLabels.DELEGATE_STAKE, "swipe"],
|
|
88
|
+
[DeviceLabels.TAP_TO_CONTINUE, "tap"],
|
|
89
|
+
[DeviceLabels.CONFIRM, "confirm"],
|
|
90
|
+
[DeviceLabels.HOLD_TO_SIGN, "hold"],
|
|
91
|
+
] as const,
|
|
96
92
|
[DeviceModelId.nanoS]: [
|
|
97
93
|
[DeviceLabels.NEW_ORDINARY, "right"],
|
|
98
94
|
[DeviceLabels.TRANSACTION_FEE, "both"],
|
|
@@ -119,22 +115,8 @@ const DELEGATE_STEPS_CONFIG = {
|
|
|
119
115
|
] as const,
|
|
120
116
|
};
|
|
121
117
|
|
|
122
|
-
function getConfirmButtonCoords(): { x: number; y: number } {
|
|
123
|
-
const speculosModel = getSpeculosModel();
|
|
124
|
-
|
|
125
|
-
switch (speculosModel) {
|
|
126
|
-
case DeviceModelId.stax:
|
|
127
|
-
return { x: 152, y: 532 };
|
|
128
|
-
case DeviceModelId.apex:
|
|
129
|
-
return { x: 114, y: 305 };
|
|
130
|
-
case DeviceModelId.europa:
|
|
131
|
-
default:
|
|
132
|
-
return { x: 186, y: 446 };
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
|
|
136
118
|
async function delegateTouchDevicesAction(label: DeviceLabels) {
|
|
137
|
-
const CONFIRM_BUTTON_COORDS =
|
|
119
|
+
const CONFIRM_BUTTON_COORDS = { x: 139, y: 532 };
|
|
138
120
|
await waitFor(label);
|
|
139
121
|
switch (label) {
|
|
140
122
|
case DeviceLabels.TAP_TO_CONTINUE:
|
|
@@ -182,7 +164,7 @@ async function executeDelegateStep(label: DeviceLabels, action: ActionType) {
|
|
|
182
164
|
export async function delegateCardano() {
|
|
183
165
|
const speculosModel = getSpeculosModel();
|
|
184
166
|
const steps =
|
|
185
|
-
|
|
167
|
+
speculosModel === DeviceModelId.stax || speculosModel === DeviceModelId.europa
|
|
186
168
|
? DELEGATE_STEPS_CONFIG[speculosModel]
|
|
187
169
|
: speculosModel === DeviceModelId.nanoS
|
|
188
170
|
? DELEGATE_STEPS_CONFIG[DeviceModelId.nanoS]
|
package/src/e2e/index.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { EnvName } from "@ledgerhq/live-env";
|
|
2
2
|
import { Feature, FeatureId } from "@ledgerhq/types-live";
|
|
3
3
|
import { getFeature, DEFAULT_FEATURES } from "../featureFlags";
|
|
4
|
-
import axios, { AxiosError } from "axios";
|
|
5
4
|
|
|
6
5
|
export const getAllFeatureFlags = (
|
|
7
6
|
appLanguage?: string,
|
|
@@ -54,22 +53,3 @@ export const formatEnvData = (data: { [key in EnvName]: unknown }) => {
|
|
|
54
53
|
}
|
|
55
54
|
return allureData;
|
|
56
55
|
};
|
|
57
|
-
|
|
58
|
-
export const sanitizeError = (error: unknown): Error => {
|
|
59
|
-
if (!axios.isAxiosError(error)) {
|
|
60
|
-
return error instanceof Error ? error : new Error(String(error ?? "Unknown error"));
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
const err = error as AxiosError;
|
|
64
|
-
const sanitized = new Error(err.message || "Axios request failed");
|
|
65
|
-
|
|
66
|
-
Object.assign(sanitized, {
|
|
67
|
-
name: err.name,
|
|
68
|
-
code: err.code,
|
|
69
|
-
url: err.config?.url,
|
|
70
|
-
method: err.config?.method,
|
|
71
|
-
status: err.response?.status,
|
|
72
|
-
});
|
|
73
|
-
|
|
74
|
-
return sanitized;
|
|
75
|
-
};
|
package/src/e2e/speculos.ts
CHANGED
|
@@ -49,7 +49,6 @@ import {
|
|
|
49
49
|
swipeRight,
|
|
50
50
|
} from "./deviceInteraction/TouchDeviceSimulator";
|
|
51
51
|
import { withDeviceController } from "./deviceInteraction/DeviceController";
|
|
52
|
-
import { sanitizeError } from ".";
|
|
53
52
|
|
|
54
53
|
const isSpeculosRemote = process.env.REMOTE_SPECULOS === "true";
|
|
55
54
|
|
|
@@ -429,7 +428,7 @@ export async function startSpeculos(
|
|
|
429
428
|
};
|
|
430
429
|
});
|
|
431
430
|
} catch (e: unknown) {
|
|
432
|
-
console.error(
|
|
431
|
+
console.error(e);
|
|
433
432
|
log("engine", `test ${testName} failed with ${String(e)}`);
|
|
434
433
|
}
|
|
435
434
|
}
|
|
@@ -611,7 +610,7 @@ export async function takeScreenshot(port?: number): Promise<Buffer | undefined>
|
|
|
611
610
|
);
|
|
612
611
|
return response.data;
|
|
613
612
|
} catch (error) {
|
|
614
|
-
console.error("Error downloading speculos screenshot:",
|
|
613
|
+
console.error("Error downloading speculos screenshot:", error);
|
|
615
614
|
}
|
|
616
615
|
}
|
|
617
616
|
|
|
@@ -669,42 +668,12 @@ export const activateLedgerSync = withDeviceController(({ getButtonsController }
|
|
|
669
668
|
}
|
|
670
669
|
});
|
|
671
670
|
|
|
672
|
-
const getSettingsToggle1Coordinates = () => {
|
|
673
|
-
const deviceModel = getSpeculosModel();
|
|
674
|
-
|
|
675
|
-
switch (deviceModel) {
|
|
676
|
-
case DeviceModelId.stax:
|
|
677
|
-
return { x: 345, y: 136 };
|
|
678
|
-
case DeviceModelId.europa:
|
|
679
|
-
return { x: 420, y: 140 };
|
|
680
|
-
case DeviceModelId.apex:
|
|
681
|
-
return { x: 263, y: 100 };
|
|
682
|
-
default:
|
|
683
|
-
return { x: 420, y: 140 };
|
|
684
|
-
}
|
|
685
|
-
};
|
|
686
|
-
|
|
687
|
-
const getSettingsCogwheelCoordinates = () => {
|
|
688
|
-
const deviceModel = getSpeculosModel();
|
|
689
|
-
|
|
690
|
-
switch (deviceModel) {
|
|
691
|
-
case DeviceModelId.stax:
|
|
692
|
-
return { x: 362, y: 43 };
|
|
693
|
-
case DeviceModelId.europa:
|
|
694
|
-
return { x: 400, y: 80 };
|
|
695
|
-
case DeviceModelId.apex:
|
|
696
|
-
return { x: 253, y: 58 };
|
|
697
|
-
default:
|
|
698
|
-
return { x: 400, y: 80 };
|
|
699
|
-
}
|
|
700
|
-
};
|
|
701
|
-
|
|
702
671
|
export const activateExpertMode = withDeviceController(({ getButtonsController }) => async () => {
|
|
703
672
|
const buttons = getButtonsController();
|
|
704
673
|
|
|
705
674
|
if (isTouchDevice()) {
|
|
706
675
|
await goToSettings();
|
|
707
|
-
const SettingsToggle1Coordinates =
|
|
676
|
+
const SettingsToggle1Coordinates = { x: 344, y: 136 };
|
|
708
677
|
await pressAndRelease(
|
|
709
678
|
DeviceLabels.SETTINGS_TOGGLE_1,
|
|
710
679
|
SettingsToggle1Coordinates.x,
|
|
@@ -729,7 +698,7 @@ export const goToSettings = withDeviceController(({ getButtonsController }) => a
|
|
|
729
698
|
const buttons = getButtonsController();
|
|
730
699
|
|
|
731
700
|
if (isTouchDevice()) {
|
|
732
|
-
const SettingsCogwheelCoordinates =
|
|
701
|
+
const SettingsCogwheelCoordinates = { x: 400, y: 75 };
|
|
733
702
|
await pressAndRelease(
|
|
734
703
|
DeviceLabels.SETTINGS,
|
|
735
704
|
SettingsCogwheelCoordinates.x,
|
|
@@ -3,7 +3,6 @@ import { version } from "../../package.json";
|
|
|
3
3
|
import { getEnv } from "@ledgerhq/live-env";
|
|
4
4
|
import { DeviceModelId } from "@ledgerhq/devices";
|
|
5
5
|
import { Device as CryptoWallet } from "./enum/Device";
|
|
6
|
-
import { sanitizeError } from "./index";
|
|
7
6
|
import * as fs from "fs";
|
|
8
7
|
import * as path from "path";
|
|
9
8
|
|
|
@@ -19,8 +18,6 @@ export function getSpeculosModel(): DeviceModelId {
|
|
|
19
18
|
case CryptoWallet.FLEX.name:
|
|
20
19
|
case DeviceModelId.europa:
|
|
21
20
|
return DeviceModelId.europa;
|
|
22
|
-
case CryptoWallet.NANO_GEN_5.name:
|
|
23
|
-
return DeviceModelId.apex;
|
|
24
21
|
case CryptoWallet.LNSP.name:
|
|
25
22
|
default:
|
|
26
23
|
return DeviceModelId.nanoSP;
|
|
@@ -29,9 +26,7 @@ export function getSpeculosModel(): DeviceModelId {
|
|
|
29
26
|
|
|
30
27
|
export function isTouchDevice(): boolean {
|
|
31
28
|
const model = getSpeculosModel();
|
|
32
|
-
return
|
|
33
|
-
model === DeviceModelId.stax || model === DeviceModelId.europa || model === DeviceModelId.apex
|
|
34
|
-
);
|
|
29
|
+
return model === DeviceModelId.stax || model === DeviceModelId.europa;
|
|
35
30
|
}
|
|
36
31
|
|
|
37
32
|
function getDeviceTargetId(device: DeviceModelId): number {
|
|
@@ -41,7 +36,6 @@ function getDeviceTargetId(device: DeviceModelId): number {
|
|
|
41
36
|
[DeviceModelId.nanoSP]: CryptoWallet.LNSP.targetId,
|
|
42
37
|
[DeviceModelId.stax]: CryptoWallet.STAX.targetId,
|
|
43
38
|
[DeviceModelId.europa]: CryptoWallet.FLEX.targetId,
|
|
44
|
-
[DeviceModelId.apex]: CryptoWallet.NANO_GEN_5.targetId,
|
|
45
39
|
};
|
|
46
40
|
return modelToTargetIdMap[device];
|
|
47
41
|
}
|
|
@@ -79,7 +73,7 @@ export async function createNanoAppJsonFile(nanoAppFilePath: string): Promise<vo
|
|
|
79
73
|
}
|
|
80
74
|
fs.writeFileSync(jsonFilePath, JSON.stringify(appCatalog, null, 2), "utf8");
|
|
81
75
|
} catch (error) {
|
|
82
|
-
console.error("Unable to create app version file:",
|
|
76
|
+
console.error("Unable to create app version file:", error);
|
|
83
77
|
}
|
|
84
78
|
}
|
|
85
79
|
|
package/src/e2e/swap.ts
CHANGED
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { Account } from "./enum/Account";
|
|
2
|
-
import { sanitizeError } from "./index";
|
|
3
2
|
import axios from "axios";
|
|
4
3
|
|
|
5
4
|
export async function getMinimumSwapAmount(AccountFrom: Account, AccountTo: Account) {
|
|
6
5
|
try {
|
|
7
6
|
const requestConfig = {
|
|
8
7
|
method: "GET",
|
|
9
|
-
url:
|
|
8
|
+
url: `https://swap-stg.ledger-test.com/v5/quote`,
|
|
10
9
|
params: {
|
|
11
10
|
from: AccountFrom.currency.id,
|
|
12
11
|
to: AccountTo.currency.id,
|
|
@@ -22,7 +21,9 @@ export async function getMinimumSwapAmount(AccountFrom: Account, AccountTo: Acco
|
|
|
22
21
|
tradeType: "INPUT",
|
|
23
22
|
uniswapOrderType: "uniswapxv1",
|
|
24
23
|
},
|
|
25
|
-
headers: {
|
|
24
|
+
headers: {
|
|
25
|
+
accept: "application/json",
|
|
26
|
+
},
|
|
26
27
|
};
|
|
27
28
|
|
|
28
29
|
const { data } = await axios(requestConfig);
|
|
@@ -37,10 +38,8 @@ export async function getMinimumSwapAmount(AccountFrom: Account, AccountTo: Acco
|
|
|
37
38
|
}
|
|
38
39
|
|
|
39
40
|
return Math.max(...minimumAmounts);
|
|
40
|
-
} catch (error
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
// throw the sanitized error, not the original circular Axios error
|
|
44
|
-
throw sanitizedError;
|
|
41
|
+
} catch (error) {
|
|
42
|
+
console.error("Error fetching swap minimum amount:", error);
|
|
43
|
+
throw error;
|
|
45
44
|
}
|
|
46
45
|
}
|
|
@@ -106,7 +106,6 @@ export const postSwapCancelled: PostSwapCancelled = async ({
|
|
|
106
106
|
seedIdTo,
|
|
107
107
|
refundAddress,
|
|
108
108
|
payoutAddress,
|
|
109
|
-
data,
|
|
110
109
|
...rest
|
|
111
110
|
}) => {
|
|
112
111
|
if (isIntegrationTestEnv()) return mockPostSwapCancelled({ provider, swapId, ...rest });
|
|
@@ -139,8 +138,7 @@ export const postSwapCancelled: PostSwapCancelled = async ({
|
|
|
139
138
|
|
|
140
139
|
const shouldIncludeAddresses =
|
|
141
140
|
rest.statusCode === "WrongDeviceForAccountPayout" ||
|
|
142
|
-
rest.statusCode === "WrongDeviceForAccountRefund"
|
|
143
|
-
rest.statusCode === "FeeNotLoaded";
|
|
141
|
+
rest.statusCode === "WrongDeviceForAccountRefund";
|
|
144
142
|
|
|
145
143
|
const requestData = {
|
|
146
144
|
provider,
|
|
@@ -149,14 +147,11 @@ export const postSwapCancelled: PostSwapCancelled = async ({
|
|
|
149
147
|
swapIntentWithoutProvider,
|
|
150
148
|
payloadAddressMatchAccountAddress,
|
|
151
149
|
fromAmount,
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
payloadPayoutAddress: payoutAddress,
|
|
157
|
-
}),
|
|
150
|
+
fromAccountAddress: shouldIncludeAddresses ? fromAccountAddress : undefined,
|
|
151
|
+
toAccountAddress: shouldIncludeAddresses ? toAccountAddress : undefined,
|
|
152
|
+
payloadRefundAddress: shouldIncludeAddresses ? refundAddress : undefined,
|
|
153
|
+
payloadPayoutAddress: shouldIncludeAddresses ? payoutAddress : undefined,
|
|
158
154
|
maybeSeedMatch: seedIdFrom === seedIdTo, // Only true if both accounts are from the same seed and from the same chain type
|
|
159
|
-
data,
|
|
160
155
|
...rest,
|
|
161
156
|
};
|
|
162
157
|
|
|
@@ -214,9 +214,7 @@ export type SwapStateAcceptedRequest = SwapStateRequest & {
|
|
|
214
214
|
transactionId: string;
|
|
215
215
|
};
|
|
216
216
|
|
|
217
|
-
export type SwapStateCancelledRequest = SwapStateRequest
|
|
218
|
-
data?: string;
|
|
219
|
-
};
|
|
217
|
+
export type SwapStateCancelledRequest = SwapStateRequest;
|
|
220
218
|
|
|
221
219
|
export type PostSwapAccepted = (arg0: SwapStateAcceptedRequest) => Promise<null>;
|
|
222
220
|
|
|
@@ -122,42 +122,6 @@ describe("getPlatformTransactionSignFlowInfos", () => {
|
|
|
122
122
|
"strategy": 0,
|
|
123
123
|
},
|
|
124
124
|
}
|
|
125
|
-
`);
|
|
126
|
-
});
|
|
127
|
-
|
|
128
|
-
test("with changeAddress provided", () => {
|
|
129
|
-
const btcPlatformTx: WalletAPITransaction = {
|
|
130
|
-
family: "bitcoin",
|
|
131
|
-
amount: new BigNumber(100000),
|
|
132
|
-
recipient: "0xABCDEF",
|
|
133
|
-
changeAddress: "1ChangeAddressExample",
|
|
134
|
-
};
|
|
135
|
-
|
|
136
|
-
const { canEditFees, hasFeesProvided, liveTx } = btc.getWalletAPITransactionSignFlowInfos({
|
|
137
|
-
walletApiTransaction: btcPlatformTx,
|
|
138
|
-
account: {} as Account,
|
|
139
|
-
});
|
|
140
|
-
|
|
141
|
-
expect(canEditFees).toBe(true);
|
|
142
|
-
|
|
143
|
-
expect(hasFeesProvided).toBe(false);
|
|
144
|
-
|
|
145
|
-
expect(liveTx).toMatchInlineSnapshot(`
|
|
146
|
-
{
|
|
147
|
-
"amount": "100000",
|
|
148
|
-
"changeAddress": "1ChangeAddressExample",
|
|
149
|
-
"family": "bitcoin",
|
|
150
|
-
"feePerByte": null,
|
|
151
|
-
"feesStrategy": "medium",
|
|
152
|
-
"networkInfo": null,
|
|
153
|
-
"rbf": false,
|
|
154
|
-
"recipient": "0xABCDEF",
|
|
155
|
-
"useAllAmount": false,
|
|
156
|
-
"utxoStrategy": {
|
|
157
|
-
"excludeUTXOs": [],
|
|
158
|
-
"strategy": 0,
|
|
159
|
-
},
|
|
160
|
-
}
|
|
161
125
|
`);
|
|
162
126
|
});
|
|
163
127
|
});
|
|
@@ -35,10 +35,6 @@ const convertToLiveTransaction: ConvertToLiveTransaction<
|
|
|
35
35
|
liveTx.opReturnData = walletApiTransaction.opReturnData;
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
if (walletApiTransaction.changeAddress) {
|
|
39
|
-
liveTx.changeAddress = walletApiTransaction.changeAddress;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
38
|
if (hasFeesProvided) {
|
|
43
39
|
liveTx.feesStrategy = null;
|
|
44
40
|
}
|
|
@@ -23,9 +23,9 @@ export const cantonConfig: Record<string, ConfigInfo> = {
|
|
|
23
23
|
status: {
|
|
24
24
|
type: "active",
|
|
25
25
|
},
|
|
26
|
-
nodeUrl: "https://canton-gateway
|
|
26
|
+
nodeUrl: "https://canton-gateway.api.live.ledger.com/v1/node/ledger-live-devnet",
|
|
27
27
|
nodeId: "ledger-live-devnet",
|
|
28
|
-
gatewayUrl: "https://canton-gateway
|
|
28
|
+
gatewayUrl: "https://canton-gateway.api.live.ledger-test.com",
|
|
29
29
|
minReserve: 0,
|
|
30
30
|
useGateway: true,
|
|
31
31
|
networkType: "devnet",
|
|
@@ -39,10 +39,9 @@ export const cantonConfig: Record<string, ConfigInfo> = {
|
|
|
39
39
|
status: {
|
|
40
40
|
type: "active",
|
|
41
41
|
},
|
|
42
|
-
nodeUrl:
|
|
43
|
-
"https://canton-gateway-testnet.api.live.ledger-test.com/v1/node/ledger-live-testnet",
|
|
42
|
+
nodeUrl: "https://canton-gateway.api.live.ledger.com/v1/node/ledger-live-testnet",
|
|
44
43
|
nodeId: "ledger-live-testnet",
|
|
45
|
-
gatewayUrl: "https://canton-gateway
|
|
44
|
+
gatewayUrl: "https://canton-gateway.api.live.ledger-test.com",
|
|
46
45
|
minReserve: 0,
|
|
47
46
|
nativeInstrumentId: "Amulet",
|
|
48
47
|
useGateway: true,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { useCallback
|
|
1
|
+
import { useCallback } from "react";
|
|
2
2
|
import { getCurrencyBridge } from "../../bridge";
|
|
3
3
|
import { CantonCurrencyBridge } from "@ledgerhq/coin-canton/types";
|
|
4
4
|
import { CryptoCurrency } from "@ledgerhq/types-cryptoassets";
|
|
@@ -48,47 +48,3 @@ export function useCantonAcceptOrRejectOffer({
|
|
|
48
48
|
|
|
49
49
|
return transferInstruction;
|
|
50
50
|
}
|
|
51
|
-
|
|
52
|
-
export const getRemainingTime = (diff: number): string => {
|
|
53
|
-
if (diff <= 0) {
|
|
54
|
-
return "";
|
|
55
|
-
}
|
|
56
|
-
const days = Math.floor(diff / (1000 * 60 * 60 * 24));
|
|
57
|
-
const hours = Math.floor((diff % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
|
|
58
|
-
const minutes = Math.floor((diff % (1000 * 60 * 60)) / (1000 * 60));
|
|
59
|
-
const seconds = Math.floor((diff % (1000 * 60)) / 1000);
|
|
60
|
-
|
|
61
|
-
let format = "";
|
|
62
|
-
if (days > 0) format += `${days}d `;
|
|
63
|
-
if (hours > 0) format += `${hours}h `;
|
|
64
|
-
if (minutes > 0) format += `${minutes}m `;
|
|
65
|
-
format += `${seconds}s`;
|
|
66
|
-
|
|
67
|
-
return format.trim();
|
|
68
|
-
};
|
|
69
|
-
|
|
70
|
-
export const useTimeRemaining = (expiresAtMicros = 0, isExpired = false): string => {
|
|
71
|
-
const [timeRemaining, setTimeRemaining] = useState<string>("");
|
|
72
|
-
|
|
73
|
-
useEffect(() => {
|
|
74
|
-
if (expiresAtMicros <= 0 || isExpired) {
|
|
75
|
-
setTimeRemaining("");
|
|
76
|
-
return;
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
const updateTimeRemaining = () => {
|
|
80
|
-
const now = Date.now();
|
|
81
|
-
const expiresAt = expiresAtMicros / 1000;
|
|
82
|
-
const diff = expiresAt - now;
|
|
83
|
-
|
|
84
|
-
setTimeRemaining(getRemainingTime(diff));
|
|
85
|
-
};
|
|
86
|
-
|
|
87
|
-
updateTimeRemaining();
|
|
88
|
-
const interval = setInterval(updateTimeRemaining, 1000);
|
|
89
|
-
|
|
90
|
-
return () => clearInterval(interval);
|
|
91
|
-
}, [expiresAtMicros, isExpired]);
|
|
92
|
-
|
|
93
|
-
return timeRemaining;
|
|
94
|
-
};
|
|
@@ -10,21 +10,9 @@ import { CreateSigner, createResolver, executeWithSigner } from "../../bridge/se
|
|
|
10
10
|
import type { Resolver } from "../../hw/getAddress/types";
|
|
11
11
|
import { Transaction, CeloAccount } from "./types";
|
|
12
12
|
import { CeloSigner } from "@ledgerhq/coin-celo/signer";
|
|
13
|
-
import { getCryptoCurrencyById } from "@ledgerhq/cryptoassets";
|
|
14
|
-
import { createApi as createEvmApi } from "@ledgerhq/coin-evm/api/index";
|
|
15
|
-
import { getCurrencyConfiguration } from "../../config";
|
|
16
|
-
import type { EvmConfigInfo } from "@ledgerhq/coin-evm/config";
|
|
17
13
|
|
|
18
14
|
const createSigner: CreateSigner<CeloSigner> = (transport: Transport) => new Celo(transport);
|
|
19
15
|
|
|
20
|
-
// NOTE Create an unused instance of EVM API with Celo configuration.
|
|
21
|
-
// It has the side effect of initializing the EVM coin config as well as injecting
|
|
22
|
-
// the input Celo config.
|
|
23
|
-
// TODO Remove this hack while deleting the Celo bridge
|
|
24
|
-
const getCurrencyConfig = () => {
|
|
25
|
-
return { info: getCurrencyConfiguration<EvmConfigInfo>(getCryptoCurrencyById("celo")) };
|
|
26
|
-
};
|
|
27
|
-
createEvmApi(getCurrencyConfig, "celo");
|
|
28
16
|
const bridge: Bridge<Transaction, CeloAccount> = createBridges(executeWithSigner(createSigner));
|
|
29
17
|
|
|
30
18
|
const resolver: Resolver = createResolver(createSigner, CeloResolver);
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
exports[`cosmos currency bridge scanAccounts cosmos seed 1 1`] = `
|
|
4
4
|
[
|
|
5
5
|
{
|
|
6
|
-
"balance": "
|
|
6
|
+
"balance": "7291071",
|
|
7
7
|
"currencyId": "cosmos",
|
|
8
8
|
"derivationMode": "",
|
|
9
9
|
"freshAddress": "cosmos1g84934jpu3v5de5yqukkkhxmcvsw3u2ajxvpdl",
|
|
@@ -12,14 +12,14 @@ exports[`cosmos currency bridge scanAccounts cosmos seed 1 1`] = `
|
|
|
12
12
|
"index": 0,
|
|
13
13
|
"pendingOperations": [],
|
|
14
14
|
"seedIdentifier": "0388459b2653519948b12492f1a0b464720110c147a8155d23d423a5cc3c21d89a",
|
|
15
|
-
"spendableBalance": "
|
|
15
|
+
"spendableBalance": "4656860",
|
|
16
16
|
"swapHistory": [],
|
|
17
17
|
"syncHash": undefined,
|
|
18
18
|
"used": true,
|
|
19
19
|
"xpub": "cosmos1g84934jpu3v5de5yqukkkhxmcvsw3u2ajxvpdl",
|
|
20
20
|
},
|
|
21
21
|
{
|
|
22
|
-
"balance": "
|
|
22
|
+
"balance": "1095084",
|
|
23
23
|
"currencyId": "cosmos",
|
|
24
24
|
"derivationMode": "",
|
|
25
25
|
"freshAddress": "cosmos108uy5q9jt59gwugq5yrdhkzcd9jryslmpcstk5",
|
|
@@ -28,7 +28,7 @@ exports[`cosmos currency bridge scanAccounts cosmos seed 1 1`] = `
|
|
|
28
28
|
"index": 1,
|
|
29
29
|
"pendingOperations": [],
|
|
30
30
|
"seedIdentifier": "0388459b2653519948b12492f1a0b464720110c147a8155d23d423a5cc3c21d89a",
|
|
31
|
-
"spendableBalance": "
|
|
31
|
+
"spendableBalance": "887584",
|
|
32
32
|
"swapHistory": [],
|
|
33
33
|
"syncHash": undefined,
|
|
34
34
|
"used": true,
|
|
@@ -783,29 +783,6 @@ exports[`cosmos currency bridge scanAccounts cosmos seed 1 2`] = `
|
|
|
783
783
|
"type": "DELEGATE",
|
|
784
784
|
"value": "9267",
|
|
785
785
|
},
|
|
786
|
-
{
|
|
787
|
-
"accountId": "js:2:cosmos:cosmos1g84934jpu3v5de5yqukkkhxmcvsw3u2ajxvpdl:",
|
|
788
|
-
"blockHash": null,
|
|
789
|
-
"blockHeight": 28615251,
|
|
790
|
-
"extra": {
|
|
791
|
-
"memo": "Ledger Live",
|
|
792
|
-
"validators": [
|
|
793
|
-
{
|
|
794
|
-
"address": "cosmosvaloper10wljxpl03053h9690apmyeakly3ylhejrucvtm",
|
|
795
|
-
"amount": "1000000",
|
|
796
|
-
},
|
|
797
|
-
],
|
|
798
|
-
},
|
|
799
|
-
"fee": "15217",
|
|
800
|
-
"hasFailed": false,
|
|
801
|
-
"hash": "37D1A48254F3C1DED61C1C6E093595A750CBF5C79BBACD10A34DE6B70C3E1D0F",
|
|
802
|
-
"id": "js:2:cosmos:cosmos1g84934jpu3v5de5yqukkkhxmcvsw3u2ajxvpdl:-37D1A48254F3C1DED61C1C6E093595A750CBF5C79BBACD10A34DE6B70C3E1D0F-DELEGATE",
|
|
803
|
-
"recipients": [],
|
|
804
|
-
"senders": [],
|
|
805
|
-
"transactionSequenceNumber": "185",
|
|
806
|
-
"type": "DELEGATE",
|
|
807
|
-
"value": "15217",
|
|
808
|
-
},
|
|
809
786
|
{
|
|
810
787
|
"accountId": "js:2:cosmos:cosmos1g84934jpu3v5de5yqukkkhxmcvsw3u2ajxvpdl:",
|
|
811
788
|
"blockHash": null,
|
|
@@ -1255,29 +1232,6 @@ exports[`cosmos currency bridge scanAccounts cosmos seed 1 2`] = `
|
|
|
1255
1232
|
"type": "OUT",
|
|
1256
1233
|
"value": "3729",
|
|
1257
1234
|
},
|
|
1258
|
-
{
|
|
1259
|
-
"accountId": "js:2:cosmos:cosmos1g84934jpu3v5de5yqukkkhxmcvsw3u2ajxvpdl:",
|
|
1260
|
-
"blockHash": null,
|
|
1261
|
-
"blockHeight": 28615228,
|
|
1262
|
-
"extra": {
|
|
1263
|
-
"memo": "Ledger Live",
|
|
1264
|
-
"validators": [
|
|
1265
|
-
{
|
|
1266
|
-
"address": "cosmosvaloper10wljxpl03053h9690apmyeakly3ylhejrucvtm",
|
|
1267
|
-
"amount": "1000000",
|
|
1268
|
-
},
|
|
1269
|
-
],
|
|
1270
|
-
},
|
|
1271
|
-
"fee": "19524",
|
|
1272
|
-
"hasFailed": false,
|
|
1273
|
-
"hash": "6FE3C64E57224720FAE82136656CE087CD84EA18E55F54F6BB180881EAA56004",
|
|
1274
|
-
"id": "js:2:cosmos:cosmos1g84934jpu3v5de5yqukkkhxmcvsw3u2ajxvpdl:-6FE3C64E57224720FAE82136656CE087CD84EA18E55F54F6BB180881EAA56004-DELEGATE",
|
|
1275
|
-
"recipients": [],
|
|
1276
|
-
"senders": [],
|
|
1277
|
-
"transactionSequenceNumber": "184",
|
|
1278
|
-
"type": "DELEGATE",
|
|
1279
|
-
"value": "19524",
|
|
1280
|
-
},
|
|
1281
1235
|
{
|
|
1282
1236
|
"accountId": "js:2:cosmos:cosmos1g84934jpu3v5de5yqukkkhxmcvsw3u2ajxvpdl:",
|
|
1283
1237
|
"blockHash": null,
|
|
@@ -1840,29 +1794,6 @@ exports[`cosmos currency bridge scanAccounts cosmos seed 1 2`] = `
|
|
|
1840
1794
|
"type": "REDELEGATE",
|
|
1841
1795
|
"value": "24612",
|
|
1842
1796
|
},
|
|
1843
|
-
{
|
|
1844
|
-
"accountId": "js:2:cosmos:cosmos1g84934jpu3v5de5yqukkkhxmcvsw3u2ajxvpdl:",
|
|
1845
|
-
"blockHash": null,
|
|
1846
|
-
"blockHeight": 28513219,
|
|
1847
|
-
"extra": {
|
|
1848
|
-
"memo": "Ledger Live",
|
|
1849
|
-
"validators": [
|
|
1850
|
-
{
|
|
1851
|
-
"address": "cosmosvaloper1clpqr4nrk4khgkxj78fcwwh6dl3uw4epsluffn",
|
|
1852
|
-
"amount": "17874",
|
|
1853
|
-
},
|
|
1854
|
-
],
|
|
1855
|
-
},
|
|
1856
|
-
"fee": "17705",
|
|
1857
|
-
"hasFailed": false,
|
|
1858
|
-
"hash": "9A71C2ADCECCC8837EA95C20CF19758CB3ABBB72FA96230ED0517D0C2C3CC372",
|
|
1859
|
-
"id": "js:2:cosmos:cosmos1g84934jpu3v5de5yqukkkhxmcvsw3u2ajxvpdl:-9A71C2ADCECCC8837EA95C20CF19758CB3ABBB72FA96230ED0517D0C2C3CC372-REWARD",
|
|
1860
|
-
"recipients": [],
|
|
1861
|
-
"senders": [],
|
|
1862
|
-
"transactionSequenceNumber": "183",
|
|
1863
|
-
"type": "REWARD",
|
|
1864
|
-
"value": "17874",
|
|
1865
|
-
},
|
|
1866
1797
|
{
|
|
1867
1798
|
"accountId": "js:2:cosmos:cosmos1g84934jpu3v5de5yqukkkhxmcvsw3u2ajxvpdl:",
|
|
1868
1799
|
"blockHash": null,
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
exports[`crypto_org currency bridge scanAccounts crypto_org seed 1 1`] = `
|
|
4
4
|
[
|
|
5
5
|
{
|
|
6
|
-
"balance": "
|
|
6
|
+
"balance": "10000006",
|
|
7
7
|
"cosmosResources": {
|
|
8
8
|
"delegatedBalance": "0",
|
|
9
9
|
"delegations": [],
|
|
@@ -23,7 +23,7 @@ exports[`crypto_org currency bridge scanAccounts crypto_org seed 1 1`] = `
|
|
|
23
23
|
"operationsCount": 0,
|
|
24
24
|
"pendingOperations": [],
|
|
25
25
|
"seedIdentifier": "0346289788c2f518a158232e7028e8e86b30cff0670326d3a2507183cb0d81cecb",
|
|
26
|
-
"spendableBalance": "
|
|
26
|
+
"spendableBalance": "10000006",
|
|
27
27
|
"swapHistory": [],
|
|
28
28
|
"syncHash": undefined,
|
|
29
29
|
"used": true,
|