@ledgerhq/live-common 34.51.0-nightly.9 → 34.52.0-nightly.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/account/helpers.d.ts +10 -0
- package/lib/account/helpers.d.ts.map +1 -1
- package/lib/account/helpers.js +43 -16
- package/lib/account/helpers.js.map +1 -1
- package/lib/bridge/generic-alpaca/estimateMaxSpendable.js +1 -1
- package/lib/bridge/generic-alpaca/estimateMaxSpendable.js.map +1 -1
- package/lib/bridge/generic-alpaca/prepareTransaction.d.ts.map +1 -1
- package/lib/bridge/generic-alpaca/prepareTransaction.js +45 -37
- 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 +20 -0
- package/lib/bridge/generic-alpaca/signOperation.js.map +1 -1
- package/lib/bridge/generic-alpaca/utils.js +1 -1
- package/lib/bridge/generic-alpaca/utils.js.map +1 -1
- package/lib/config/index.d.ts +2 -2
- package/lib/config/index.d.ts.map +1 -1
- package/lib/config/index.js.map +1 -1
- package/lib/dada-client/hooks/useDrawerConfiguration.d.ts +19 -0
- package/lib/dada-client/hooks/useDrawerConfiguration.d.ts.map +1 -0
- package/lib/dada-client/hooks/useDrawerConfiguration.js +45 -0
- package/lib/dada-client/hooks/useDrawerConfiguration.js.map +1 -0
- package/lib/e2e/data/deviceLabelsData.d.ts +8 -0
- package/lib/e2e/data/deviceLabelsData.d.ts.map +1 -1
- package/lib/e2e/data/deviceLabelsData.js +62 -2
- package/lib/e2e/data/deviceLabelsData.js.map +1 -1
- package/lib/e2e/deviceInteraction/ButtonDeviceSimulator.d.ts +3 -0
- package/lib/e2e/deviceInteraction/ButtonDeviceSimulator.d.ts.map +1 -0
- package/lib/e2e/deviceInteraction/ButtonDeviceSimulator.js +26 -0
- package/lib/e2e/deviceInteraction/ButtonDeviceSimulator.js.map +1 -0
- package/lib/e2e/deviceInteraction/TouchDeviceSimulator.d.ts +4 -0
- package/lib/e2e/deviceInteraction/TouchDeviceSimulator.d.ts.map +1 -0
- package/lib/e2e/deviceInteraction/TouchDeviceSimulator.js +50 -0
- package/lib/e2e/deviceInteraction/TouchDeviceSimulator.js.map +1 -0
- package/lib/e2e/enum/Account.d.ts +2 -4
- package/lib/e2e/enum/Account.d.ts.map +1 -1
- package/lib/e2e/enum/Account.js +5 -8
- package/lib/e2e/enum/Account.js.map +1 -1
- package/lib/e2e/enum/Device.d.ts +1 -0
- package/lib/e2e/enum/Device.d.ts.map +1 -1
- package/lib/e2e/enum/Device.js +1 -0
- package/lib/e2e/enum/Device.js.map +1 -1
- package/lib/e2e/enum/DeviceLabels.d.ts +10 -2
- package/lib/e2e/enum/DeviceLabels.d.ts.map +1 -1
- package/lib/e2e/enum/DeviceLabels.js +9 -1
- package/lib/e2e/enum/DeviceLabels.js.map +1 -1
- package/lib/e2e/families/algorand.d.ts.map +1 -1
- package/lib/e2e/families/algorand.js +10 -2
- package/lib/e2e/families/algorand.js.map +1 -1
- package/lib/e2e/families/aptos.d.ts +2 -1
- package/lib/e2e/families/aptos.d.ts.map +1 -1
- package/lib/e2e/families/aptos.js +12 -4
- package/lib/e2e/families/aptos.js.map +1 -1
- package/lib/e2e/families/bitcoin.d.ts.map +1 -1
- package/lib/e2e/families/bitcoin.js +25 -15
- package/lib/e2e/families/bitcoin.js.map +1 -1
- package/lib/e2e/families/cardano.d.ts.map +1 -1
- package/lib/e2e/families/cardano.js +122 -46
- package/lib/e2e/families/cardano.js.map +1 -1
- package/lib/e2e/families/celo.d.ts.map +1 -1
- package/lib/e2e/families/celo.js +11 -1
- package/lib/e2e/families/celo.js.map +1 -1
- package/lib/e2e/families/cosmos.d.ts.map +1 -1
- package/lib/e2e/families/cosmos.js +16 -3
- package/lib/e2e/families/cosmos.js.map +1 -1
- package/lib/e2e/families/evm.d.ts +1 -2
- package/lib/e2e/families/evm.d.ts.map +1 -1
- package/lib/e2e/families/evm.js +28 -13
- package/lib/e2e/families/evm.js.map +1 -1
- package/lib/e2e/families/hedera.d.ts.map +1 -1
- package/lib/e2e/families/hedera.js +3 -2
- package/lib/e2e/families/hedera.js.map +1 -1
- package/lib/e2e/families/kaspa.d.ts +2 -1
- package/lib/e2e/families/kaspa.d.ts.map +1 -1
- package/lib/e2e/families/kaspa.js +12 -4
- package/lib/e2e/families/kaspa.js.map +1 -1
- package/lib/e2e/families/multiversX.d.ts.map +1 -1
- package/lib/e2e/families/multiversX.js +11 -1
- package/lib/e2e/families/multiversX.js.map +1 -1
- package/lib/e2e/families/near.d.ts.map +1 -1
- package/lib/e2e/families/near.js +15 -4
- package/lib/e2e/families/near.js.map +1 -1
- package/lib/e2e/families/osmosis.d.ts.map +1 -1
- package/lib/e2e/families/osmosis.js +11 -1
- package/lib/e2e/families/osmosis.js.map +1 -1
- package/lib/e2e/families/polkadot.d.ts.map +1 -1
- package/lib/e2e/families/polkadot.js +10 -2
- package/lib/e2e/families/polkadot.js.map +1 -1
- package/lib/e2e/families/solana.d.ts.map +1 -1
- package/lib/e2e/families/solana.js +16 -3
- package/lib/e2e/families/solana.js.map +1 -1
- package/lib/e2e/families/stellar.d.ts.map +1 -1
- package/lib/e2e/families/stellar.js +10 -2
- package/lib/e2e/families/stellar.js.map +1 -1
- package/lib/e2e/families/sui.d.ts +2 -1
- package/lib/e2e/families/sui.d.ts.map +1 -1
- package/lib/e2e/families/sui.js +11 -3
- package/lib/e2e/families/sui.js.map +1 -1
- package/lib/e2e/families/tezos.d.ts.map +1 -1
- package/lib/e2e/families/tezos.js +12 -3
- package/lib/e2e/families/tezos.js.map +1 -1
- package/lib/e2e/families/tron.d.ts.map +1 -1
- package/lib/e2e/families/tron.js +10 -2
- package/lib/e2e/families/tron.js.map +1 -1
- package/lib/e2e/families/xrp.d.ts.map +1 -1
- package/lib/e2e/families/xrp.js +10 -2
- package/lib/e2e/families/xrp.js.map +1 -1
- package/lib/e2e/index.d.ts +4 -2
- package/lib/e2e/index.d.ts.map +1 -1
- package/lib/e2e/models/Transaction.d.ts +0 -5
- package/lib/e2e/models/Transaction.d.ts.map +1 -1
- package/lib/e2e/models/Transaction.js +1 -9
- package/lib/e2e/models/Transaction.js.map +1 -1
- package/lib/e2e/speculos.d.ts +13 -4
- package/lib/e2e/speculos.d.ts.map +1 -1
- package/lib/e2e/speculos.js +141 -75
- package/lib/e2e/speculos.js.map +1 -1
- package/lib/e2e/speculosAppVersion.d.ts +1 -0
- package/lib/e2e/speculosAppVersion.d.ts.map +1 -1
- package/lib/e2e/speculosAppVersion.js +9 -1
- package/lib/e2e/speculosAppVersion.js.map +1 -1
- package/lib/exchange/index.d.ts.map +1 -1
- package/lib/exchange/index.js +4 -15
- package/lib/exchange/index.js.map +1 -1
- package/lib/exchange/swap/getCompleteSwapHistory.d.ts +1 -1
- package/lib/exchange/swap/getCompleteSwapHistory.d.ts.map +1 -1
- package/lib/exchange/swap/getCompleteSwapHistory.js +5 -5
- package/lib/exchange/swap/getCompleteSwapHistory.js.map +1 -1
- package/lib/exchange/swap/hooks/useSelectableCurrencies.d.ts.map +1 -1
- package/lib/exchange/swap/hooks/useSelectableCurrencies.js +16 -4
- package/lib/exchange/swap/hooks/useSelectableCurrencies.js.map +1 -1
- package/lib/featureFlags/defaultFeatures.d.ts +3 -0
- package/lib/featureFlags/defaultFeatures.d.ts.map +1 -1
- package/lib/featureFlags/defaultFeatures.js +2 -1
- package/lib/featureFlags/defaultFeatures.js.map +1 -1
- package/lib/featureFlags/useFeature.d.ts +1 -1
- package/lib/featureFlags/useFeature.d.ts.map +1 -1
- package/lib/generated/specs.d.ts +1 -1
- package/lib/load/speculos.d.ts.map +1 -1
- package/lib/load/speculos.js +1 -0
- package/lib/load/speculos.js.map +1 -1
- package/lib/market/hooks/useLargeMoverChartData.d.ts +1 -2
- package/lib/market/hooks/useLargeMoverChartData.d.ts.map +1 -1
- package/lib/market/hooks/useLargeMoverChartData.js.map +1 -1
- package/lib/market/hooks/useLargeMoverCurrencies.d.ts +1 -2
- package/lib/market/hooks/useLargeMoverCurrencies.d.ts.map +1 -1
- package/lib/market/hooks/useLargeMoverCurrencies.js +1 -3
- package/lib/market/hooks/useLargeMoverCurrencies.js.map +1 -1
- package/lib/market/utils/currencyFormatter.d.ts +1 -1
- package/lib/market/utils/currencyFormatter.d.ts.map +1 -1
- package/lib/market/utils/currencyFormatter.js +1 -1
- package/lib/market/utils/currencyFormatter.js.map +1 -1
- package/lib/modularDrawer/hooks/modules/useLeftApyModule.d.ts +1 -1
- package/lib/modularDrawer/hooks/modules/useLeftMarketTrendModule.d.ts +1 -1
- package/lib/modularDrawer/hooks/modules/useRightMarketTrendModule.d.ts +1 -1
- package/lib/modularDrawer/hooks/useCurrenciesUnderFeatureFlag.d.ts +1 -2
- package/lib/modularDrawer/hooks/useCurrenciesUnderFeatureFlag.d.ts.map +1 -1
- package/lib/modularDrawer/hooks/useCurrenciesUnderFeatureFlag.js +3 -0
- package/lib/modularDrawer/hooks/useCurrenciesUnderFeatureFlag.js.map +1 -1
- package/lib/modularDrawer/hooks/useRightBalanceAsset.d.ts +1 -1
- package/lib/wallet-api/constants.d.ts +2 -2
- package/lib-es/account/helpers.d.ts +10 -0
- package/lib-es/account/helpers.d.ts.map +1 -1
- package/lib-es/account/helpers.js +26 -0
- package/lib-es/account/helpers.js.map +1 -1
- package/lib-es/bridge/generic-alpaca/estimateMaxSpendable.js +1 -1
- package/lib-es/bridge/generic-alpaca/estimateMaxSpendable.js.map +1 -1
- package/lib-es/bridge/generic-alpaca/prepareTransaction.d.ts.map +1 -1
- package/lib-es/bridge/generic-alpaca/prepareTransaction.js +45 -37
- 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 +17 -0
- package/lib-es/bridge/generic-alpaca/signOperation.js.map +1 -1
- package/lib-es/bridge/generic-alpaca/utils.js +1 -1
- package/lib-es/bridge/generic-alpaca/utils.js.map +1 -1
- package/lib-es/config/index.d.ts +2 -2
- package/lib-es/config/index.d.ts.map +1 -1
- package/lib-es/config/index.js.map +1 -1
- package/lib-es/dada-client/hooks/useDrawerConfiguration.d.ts +19 -0
- package/lib-es/dada-client/hooks/useDrawerConfiguration.d.ts.map +1 -0
- package/lib-es/dada-client/hooks/useDrawerConfiguration.js +38 -0
- package/lib-es/dada-client/hooks/useDrawerConfiguration.js.map +1 -0
- package/lib-es/e2e/data/deviceLabelsData.d.ts +8 -0
- package/lib-es/e2e/data/deviceLabelsData.d.ts.map +1 -1
- package/lib-es/e2e/data/deviceLabelsData.js +62 -2
- package/lib-es/e2e/data/deviceLabelsData.js.map +1 -1
- package/lib-es/e2e/deviceInteraction/ButtonDeviceSimulator.d.ts +3 -0
- package/lib-es/e2e/deviceInteraction/ButtonDeviceSimulator.d.ts.map +1 -0
- package/lib-es/e2e/deviceInteraction/ButtonDeviceSimulator.js +18 -0
- package/lib-es/e2e/deviceInteraction/ButtonDeviceSimulator.js.map +1 -0
- package/lib-es/e2e/deviceInteraction/TouchDeviceSimulator.d.ts +4 -0
- package/lib-es/e2e/deviceInteraction/TouchDeviceSimulator.d.ts.map +1 -0
- package/lib-es/e2e/deviceInteraction/TouchDeviceSimulator.js +41 -0
- package/lib-es/e2e/deviceInteraction/TouchDeviceSimulator.js.map +1 -0
- package/lib-es/e2e/enum/Account.d.ts +2 -4
- package/lib-es/e2e/enum/Account.d.ts.map +1 -1
- package/lib-es/e2e/enum/Account.js +5 -8
- package/lib-es/e2e/enum/Account.js.map +1 -1
- package/lib-es/e2e/enum/Device.d.ts +1 -0
- package/lib-es/e2e/enum/Device.d.ts.map +1 -1
- package/lib-es/e2e/enum/Device.js +1 -0
- package/lib-es/e2e/enum/Device.js.map +1 -1
- package/lib-es/e2e/enum/DeviceLabels.d.ts +10 -2
- package/lib-es/e2e/enum/DeviceLabels.d.ts.map +1 -1
- package/lib-es/e2e/enum/DeviceLabels.js +9 -1
- package/lib-es/e2e/enum/DeviceLabels.js.map +1 -1
- package/lib-es/e2e/families/algorand.d.ts.map +1 -1
- package/lib-es/e2e/families/algorand.js +11 -3
- package/lib-es/e2e/families/algorand.js.map +1 -1
- package/lib-es/e2e/families/aptos.d.ts +2 -1
- package/lib-es/e2e/families/aptos.d.ts.map +1 -1
- package/lib-es/e2e/families/aptos.js +12 -4
- package/lib-es/e2e/families/aptos.js.map +1 -1
- package/lib-es/e2e/families/bitcoin.d.ts.map +1 -1
- package/lib-es/e2e/families/bitcoin.js +27 -17
- package/lib-es/e2e/families/bitcoin.js.map +1 -1
- package/lib-es/e2e/families/cardano.d.ts.map +1 -1
- package/lib-es/e2e/families/cardano.js +121 -45
- package/lib-es/e2e/families/cardano.js.map +1 -1
- package/lib-es/e2e/families/celo.d.ts.map +1 -1
- package/lib-es/e2e/families/celo.js +12 -2
- package/lib-es/e2e/families/celo.js.map +1 -1
- package/lib-es/e2e/families/cosmos.d.ts.map +1 -1
- package/lib-es/e2e/families/cosmos.js +17 -4
- package/lib-es/e2e/families/cosmos.js.map +1 -1
- package/lib-es/e2e/families/evm.d.ts +1 -2
- package/lib-es/e2e/families/evm.d.ts.map +1 -1
- package/lib-es/e2e/families/evm.js +25 -9
- package/lib-es/e2e/families/evm.js.map +1 -1
- package/lib-es/e2e/families/hedera.d.ts.map +1 -1
- package/lib-es/e2e/families/hedera.js +2 -1
- package/lib-es/e2e/families/hedera.js.map +1 -1
- package/lib-es/e2e/families/kaspa.d.ts +2 -1
- package/lib-es/e2e/families/kaspa.d.ts.map +1 -1
- package/lib-es/e2e/families/kaspa.js +12 -4
- package/lib-es/e2e/families/kaspa.js.map +1 -1
- package/lib-es/e2e/families/multiversX.d.ts.map +1 -1
- package/lib-es/e2e/families/multiversX.js +12 -2
- package/lib-es/e2e/families/multiversX.js.map +1 -1
- package/lib-es/e2e/families/near.d.ts.map +1 -1
- package/lib-es/e2e/families/near.js +16 -5
- package/lib-es/e2e/families/near.js.map +1 -1
- package/lib-es/e2e/families/osmosis.d.ts.map +1 -1
- package/lib-es/e2e/families/osmosis.js +12 -2
- package/lib-es/e2e/families/osmosis.js.map +1 -1
- package/lib-es/e2e/families/polkadot.d.ts.map +1 -1
- package/lib-es/e2e/families/polkadot.js +11 -3
- package/lib-es/e2e/families/polkadot.js.map +1 -1
- package/lib-es/e2e/families/solana.d.ts.map +1 -1
- package/lib-es/e2e/families/solana.js +17 -4
- package/lib-es/e2e/families/solana.js.map +1 -1
- package/lib-es/e2e/families/stellar.d.ts.map +1 -1
- package/lib-es/e2e/families/stellar.js +11 -3
- package/lib-es/e2e/families/stellar.js.map +1 -1
- package/lib-es/e2e/families/sui.d.ts +2 -1
- package/lib-es/e2e/families/sui.d.ts.map +1 -1
- package/lib-es/e2e/families/sui.js +12 -4
- package/lib-es/e2e/families/sui.js.map +1 -1
- package/lib-es/e2e/families/tezos.d.ts.map +1 -1
- package/lib-es/e2e/families/tezos.js +12 -3
- package/lib-es/e2e/families/tezos.js.map +1 -1
- package/lib-es/e2e/families/tron.d.ts.map +1 -1
- package/lib-es/e2e/families/tron.js +11 -3
- package/lib-es/e2e/families/tron.js.map +1 -1
- package/lib-es/e2e/families/xrp.d.ts.map +1 -1
- package/lib-es/e2e/families/xrp.js +11 -3
- package/lib-es/e2e/families/xrp.js.map +1 -1
- package/lib-es/e2e/index.d.ts +4 -2
- package/lib-es/e2e/index.d.ts.map +1 -1
- package/lib-es/e2e/models/Transaction.d.ts +0 -5
- package/lib-es/e2e/models/Transaction.d.ts.map +1 -1
- package/lib-es/e2e/models/Transaction.js +0 -7
- package/lib-es/e2e/models/Transaction.js.map +1 -1
- package/lib-es/e2e/speculos.d.ts +13 -4
- package/lib-es/e2e/speculos.d.ts.map +1 -1
- package/lib-es/e2e/speculos.js +134 -71
- package/lib-es/e2e/speculos.js.map +1 -1
- package/lib-es/e2e/speculosAppVersion.d.ts +1 -0
- package/lib-es/e2e/speculosAppVersion.d.ts.map +1 -1
- package/lib-es/e2e/speculosAppVersion.js +7 -0
- package/lib-es/e2e/speculosAppVersion.js.map +1 -1
- package/lib-es/exchange/index.d.ts.map +1 -1
- package/lib-es/exchange/index.js +4 -15
- package/lib-es/exchange/index.js.map +1 -1
- package/lib-es/exchange/swap/getCompleteSwapHistory.d.ts +1 -1
- package/lib-es/exchange/swap/getCompleteSwapHistory.d.ts.map +1 -1
- package/lib-es/exchange/swap/getCompleteSwapHistory.js +5 -5
- package/lib-es/exchange/swap/getCompleteSwapHistory.js.map +1 -1
- package/lib-es/exchange/swap/hooks/useSelectableCurrencies.d.ts.map +1 -1
- package/lib-es/exchange/swap/hooks/useSelectableCurrencies.js +18 -6
- package/lib-es/exchange/swap/hooks/useSelectableCurrencies.js.map +1 -1
- package/lib-es/featureFlags/defaultFeatures.d.ts +3 -0
- package/lib-es/featureFlags/defaultFeatures.d.ts.map +1 -1
- package/lib-es/featureFlags/defaultFeatures.js +2 -1
- package/lib-es/featureFlags/defaultFeatures.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/specs.d.ts +1 -1
- package/lib-es/load/speculos.d.ts.map +1 -1
- package/lib-es/load/speculos.js +1 -0
- package/lib-es/load/speculos.js.map +1 -1
- package/lib-es/market/hooks/useLargeMoverChartData.d.ts +1 -2
- package/lib-es/market/hooks/useLargeMoverChartData.d.ts.map +1 -1
- package/lib-es/market/hooks/useLargeMoverChartData.js.map +1 -1
- package/lib-es/market/hooks/useLargeMoverCurrencies.d.ts +1 -2
- package/lib-es/market/hooks/useLargeMoverCurrencies.d.ts.map +1 -1
- package/lib-es/market/hooks/useLargeMoverCurrencies.js +1 -3
- package/lib-es/market/hooks/useLargeMoverCurrencies.js.map +1 -1
- package/lib-es/market/utils/currencyFormatter.d.ts +1 -1
- package/lib-es/market/utils/currencyFormatter.d.ts.map +1 -1
- package/lib-es/market/utils/currencyFormatter.js +1 -1
- package/lib-es/market/utils/currencyFormatter.js.map +1 -1
- package/lib-es/modularDrawer/hooks/modules/useLeftApyModule.d.ts +1 -1
- package/lib-es/modularDrawer/hooks/modules/useLeftMarketTrendModule.d.ts +1 -1
- package/lib-es/modularDrawer/hooks/modules/useRightMarketTrendModule.d.ts +1 -1
- package/lib-es/modularDrawer/hooks/useCurrenciesUnderFeatureFlag.d.ts +1 -2
- package/lib-es/modularDrawer/hooks/useCurrenciesUnderFeatureFlag.d.ts.map +1 -1
- package/lib-es/modularDrawer/hooks/useCurrenciesUnderFeatureFlag.js +3 -0
- package/lib-es/modularDrawer/hooks/useCurrenciesUnderFeatureFlag.js.map +1 -1
- package/lib-es/modularDrawer/hooks/useRightBalanceAsset.d.ts +1 -1
- package/lib-es/wallet-api/constants.d.ts +2 -2
- package/package.json +55 -55
- package/src/account/helpers.test.ts +209 -0
- package/src/account/helpers.ts +34 -0
- package/src/bridge/cache.test.ts +2 -2
- package/src/bridge/generic-alpaca/estimateMaxSpendable.ts +1 -1
- package/src/bridge/generic-alpaca/prepareTransaction.ts +69 -46
- package/src/bridge/generic-alpaca/signOperation.ts +20 -0
- package/src/bridge/generic-alpaca/tests/prepareTransaction.test.ts +109 -191
- package/src/bridge/generic-alpaca/utils.test.ts +15 -12
- package/src/bridge/generic-alpaca/utils.ts +1 -1
- package/src/config/index.ts +2 -4
- package/src/currencies/sortByMarketcap.test.ts +10 -7
- package/src/dada-client/hooks/useDrawerConfiguration.ts +65 -0
- package/src/e2e/data/deviceLabelsData.ts +70 -2
- package/src/e2e/deviceInteraction/ButtonDeviceSimulator.ts +23 -0
- package/src/e2e/deviceInteraction/TouchDeviceSimulator.ts +52 -0
- package/src/e2e/enum/Account.ts +1 -16
- package/src/e2e/enum/Device.ts +1 -0
- package/src/e2e/enum/DeviceLabels.ts +9 -1
- package/src/e2e/families/algorand.ts +10 -4
- package/src/e2e/families/aptos.ts +12 -4
- package/src/e2e/families/bitcoin.ts +25 -18
- package/src/e2e/families/cardano.ts +137 -50
- package/src/e2e/families/celo.ts +11 -2
- package/src/e2e/families/cosmos.ts +15 -9
- package/src/e2e/families/evm.ts +28 -11
- package/src/e2e/families/hedera.ts +2 -1
- package/src/e2e/families/kaspa.ts +12 -4
- package/src/e2e/families/multiversX.ts +11 -2
- package/src/e2e/families/near.ts +15 -6
- package/src/e2e/families/osmosis.ts +11 -2
- package/src/e2e/families/polkadot.ts +10 -3
- package/src/e2e/families/solana.ts +15 -9
- package/src/e2e/families/stellar.ts +10 -3
- package/src/e2e/families/sui.ts +12 -4
- package/src/e2e/families/tezos.ts +11 -3
- package/src/e2e/families/tron.ts +10 -3
- package/src/e2e/families/xrp.ts +10 -3
- package/src/e2e/models/Transaction.ts +0 -13
- package/src/e2e/speculos.ts +160 -89
- package/src/e2e/speculosAppVersion.ts +8 -0
- package/src/exchange/index.ts +4 -15
- package/src/exchange/swap/getCompleteSwapHistory.ts +5 -5
- package/src/exchange/swap/hooks/useFromState.test.ts +11 -4
- package/src/exchange/swap/hooks/useReverseAccounts.test.ts +11 -4
- package/src/exchange/swap/hooks/useSelectableCurrencies.test.ts +14 -8
- package/src/exchange/swap/hooks/useSelectableCurrencies.ts +23 -6
- package/src/exchange/swap/hooks/useToState.test.ts +11 -4
- package/src/exchange/swap/hooks/useUpdateMaxAmount.test.ts +11 -4
- package/src/exchange/swap/utils/index.test.ts +10 -4
- package/src/families/algorand/bridge.integration.test.ts +1 -1
- package/src/families/bitcoin/__snapshots__/bridge.integration.test.ts.snap +3 -3
- package/src/families/cardano/bridge.integration.test.ts +1 -1
- package/src/families/cosmos/datasets/__snapshots__/cosmos.integration.test.ts.snap +25 -2
- package/src/families/evm/bridge.integration.test.ts +1 -1
- package/src/families/hedera/__snapshots__/bridge.integration.test.ts.snap +25 -5
- package/src/families/icon/bridge.integration.test.ts +1 -1
- package/src/families/multiversx/bridge.integration.test.ts +1 -2
- package/src/families/near/bridge.integration.test.ts +1 -1
- package/src/families/solana/bridge.integration.test.ts +1 -1
- package/src/families/sui/bridge.integration.test.ts +1 -1
- package/src/families/ton/bridge.integration.test.ts +1 -1
- package/src/featureFlags/defaultFeatures.ts +2 -1
- package/src/load/speculos.ts +1 -0
- package/src/market/hooks/useLargeMoverChartData.ts +1 -2
- package/src/market/hooks/useLargeMoverCurrencies.ts +3 -6
- package/src/market/utils/currencyFormatter.ts +2 -2
- package/src/modularDrawer/hooks/useCurrenciesUnderFeatureFlag.ts +3 -0
- package/lib/e2e/enum/Nft.d.ts +0 -15
- package/lib/e2e/enum/Nft.d.ts.map +0 -1
- package/lib/e2e/enum/Nft.js +0 -25
- package/lib/e2e/enum/Nft.js.map +0 -1
- package/lib-es/e2e/enum/Nft.d.ts +0 -15
- package/lib-es/e2e/enum/Nft.d.ts.map +0 -1
- package/lib-es/e2e/enum/Nft.js +0 -21
- package/lib-es/e2e/enum/Nft.js.map +0 -1
- package/src/e2e/enum/Nft.ts +0 -57
package/lib-es/e2e/speculos.js
CHANGED
|
@@ -11,7 +11,7 @@ import { Account } from "./enum/Account";
|
|
|
11
11
|
import { Currency } from "./enum/Currency";
|
|
12
12
|
import expect from "expect";
|
|
13
13
|
import { sendBTC, sendBTCBasedCoin } from "./families/bitcoin";
|
|
14
|
-
import { sendEVM
|
|
14
|
+
import { sendEVM } from "./families/evm";
|
|
15
15
|
import { sendPolkadot } from "./families/polkadot";
|
|
16
16
|
import { sendAlgorand } from "./families/algorand";
|
|
17
17
|
import { sendTron } from "./families/tron";
|
|
@@ -30,7 +30,9 @@ import { delegateMultiversX } from "./families/multiversX";
|
|
|
30
30
|
import { delegateOsmosis } from "./families/osmosis";
|
|
31
31
|
import { DEVICE_LABELS_CONFIG } from "./data/deviceLabelsData";
|
|
32
32
|
import { sendSui } from "./families/sui";
|
|
33
|
-
import { getAppVersionFromCatalog, getSpeculosModel } from "./speculosAppVersion";
|
|
33
|
+
import { getAppVersionFromCatalog, getSpeculosModel, isTouchDevice } from "./speculosAppVersion";
|
|
34
|
+
import { pressAndRelease, longPressAndRelease, swipeRight, } from "./deviceInteraction/TouchDeviceSimulator";
|
|
35
|
+
import { pressBoth, pressRightButton } from "./deviceInteraction/ButtonDeviceSimulator";
|
|
34
36
|
const isSpeculosRemote = process.env.REMOTE_SPECULOS === "true";
|
|
35
37
|
export function setExchangeDependencies(dependencies) {
|
|
36
38
|
const map = new Map();
|
|
@@ -368,11 +370,11 @@ export async function stopSpeculos(deviceId) {
|
|
|
368
370
|
: await releaseSpeculosDevice(deviceId);
|
|
369
371
|
}
|
|
370
372
|
}
|
|
371
|
-
function getSpeculosAddress() {
|
|
373
|
+
export function getSpeculosAddress() {
|
|
372
374
|
const speculosAddress = process.env.SPECULOS_ADDRESS;
|
|
373
375
|
return speculosAddress || "http://127.0.0.1";
|
|
374
376
|
}
|
|
375
|
-
async function retryAxiosRequest(requestFn, maxRetries = 5, baseDelay = 1000, retryableStatusCodes = [500, 502, 503, 504]) {
|
|
377
|
+
export async function retryAxiosRequest(requestFn, maxRetries = 5, baseDelay = 1000, retryableStatusCodes = [500, 502, 503, 504]) {
|
|
376
378
|
let lastError;
|
|
377
379
|
for (let attempt = 0; attempt <= maxRetries; attempt++) {
|
|
378
380
|
try {
|
|
@@ -410,43 +412,43 @@ export async function waitFor(text, maxAttempts = 60) {
|
|
|
410
412
|
}
|
|
411
413
|
throw new Error(`Text "${text}" not found on device screen after ${maxAttempts} attempts. Last screen text: "${texts}"`);
|
|
412
414
|
}
|
|
413
|
-
export async function
|
|
414
|
-
const speculosApiPort = getEnv("SPECULOS_API_PORT");
|
|
415
|
+
export async function fetchCurrentScreenTexts(speculosApiPort) {
|
|
415
416
|
const speculosAddress = getSpeculosAddress();
|
|
416
|
-
await retryAxiosRequest(() => axios.
|
|
417
|
-
|
|
418
|
-
|
|
417
|
+
const response = await retryAxiosRequest(() => axios.get(`${speculosAddress}:${speculosApiPort}/events?stream=false¤tscreenonly=true`));
|
|
418
|
+
return response.data.events.map(event => event.text).join(" ");
|
|
419
|
+
}
|
|
420
|
+
export async function getDeviceLabelCoordinates(label, speculosApiPort) {
|
|
421
|
+
const speculosAddress = getSpeculosAddress();
|
|
422
|
+
const response = await retryAxiosRequest(() => axios.get(`${speculosAddress}:${speculosApiPort}/events?stream=false¤tscreenonly=true`));
|
|
423
|
+
const event = response.data.events.find(e => e.text === label);
|
|
424
|
+
if (!event) {
|
|
425
|
+
throw new Error(`Label "${label}" not found in screen events`);
|
|
426
|
+
}
|
|
427
|
+
return { x: event.x, y: event.y };
|
|
428
|
+
}
|
|
429
|
+
export async function fetchAllEvents(speculosApiPort) {
|
|
430
|
+
const speculosAddress = getSpeculosAddress();
|
|
431
|
+
const response = await retryAxiosRequest(() => axios.get(`${speculosAddress}:${speculosApiPort}/events?stream=false¤tscreenonly=false`));
|
|
432
|
+
return response.data.events.map(event => event.text);
|
|
419
433
|
}
|
|
420
434
|
export async function pressUntilTextFound(targetText, strictMatch = false) {
|
|
421
435
|
const maxAttempts = 18;
|
|
422
436
|
const speculosApiPort = getEnv("SPECULOS_API_PORT");
|
|
423
437
|
for (let attempts = 0; attempts < maxAttempts; attempts++) {
|
|
424
438
|
const texts = await fetchCurrentScreenTexts(speculosApiPort);
|
|
425
|
-
if (strictMatch ? texts === targetText : texts.includes(targetText)) {
|
|
439
|
+
if (strictMatch ? texts === targetText : texts.toLowerCase().includes(targetText.toLowerCase())) {
|
|
426
440
|
return await fetchAllEvents(speculosApiPort);
|
|
427
441
|
}
|
|
428
|
-
|
|
442
|
+
if (isTouchDevice()) {
|
|
443
|
+
await swipeRight();
|
|
444
|
+
}
|
|
445
|
+
else {
|
|
446
|
+
await pressRightButton();
|
|
447
|
+
}
|
|
429
448
|
await waitForTimeOut(200);
|
|
430
449
|
}
|
|
431
450
|
throw new Error(`ElementNotFoundException: Element with text "${targetText}" not found on speculos screen`);
|
|
432
451
|
}
|
|
433
|
-
async function fetchCurrentScreenTexts(speculosApiPort) {
|
|
434
|
-
const speculosAddress = getSpeculosAddress();
|
|
435
|
-
const response = await retryAxiosRequest(() => axios.get(`${speculosAddress}:${speculosApiPort}/events?stream=false¤tscreenonly=true`));
|
|
436
|
-
return response.data.events.map(event => event.text).join(" ");
|
|
437
|
-
}
|
|
438
|
-
async function fetchAllEvents(speculosApiPort) {
|
|
439
|
-
const speculosAddress = getSpeculosAddress();
|
|
440
|
-
const response = await retryAxiosRequest(() => axios.get(`${speculosAddress}:${speculosApiPort}/events?stream=false¤tscreenonly=false`));
|
|
441
|
-
return response.data.events.map(event => event.text);
|
|
442
|
-
}
|
|
443
|
-
export async function pressRightButton() {
|
|
444
|
-
const speculosApiPort = getEnv("SPECULOS_API_PORT");
|
|
445
|
-
const speculosAddress = getSpeculosAddress();
|
|
446
|
-
await retryAxiosRequest(() => axios.post(`${speculosAddress}:${speculosApiPort}/button/right`, {
|
|
447
|
-
action: "press-and-release",
|
|
448
|
-
}));
|
|
449
|
-
}
|
|
450
452
|
export function containsSubstringInEvent(targetString, events) {
|
|
451
453
|
const concatenatedEvents = events.join("");
|
|
452
454
|
let result = concatenatedEvents.includes(targetString);
|
|
@@ -474,29 +476,58 @@ export async function waitForTimeOut(ms) {
|
|
|
474
476
|
return new Promise(resolve => setTimeout(resolve, ms));
|
|
475
477
|
}
|
|
476
478
|
export async function removeMemberLedgerSync() {
|
|
477
|
-
await waitFor(DeviceLabels.
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
479
|
+
await waitFor(DeviceLabels.CONNECT_WITH);
|
|
480
|
+
if (isTouchDevice()) {
|
|
481
|
+
await pressAndRelease(DeviceLabels.CONNECT);
|
|
482
|
+
await waitFor(DeviceLabels.REMOVE_FROM_LEDGER_SYNC);
|
|
483
|
+
await pressAndRelease(DeviceLabels.REMOVE);
|
|
484
|
+
await waitFor(DeviceLabels.CONFIRM_CHANGE);
|
|
485
|
+
await pressAndRelease(DeviceLabels.TAP_TO_CONTINUE);
|
|
486
|
+
await waitFor(DeviceLabels.TURN_ON_SYNC);
|
|
487
|
+
await pressUntilTextFound(DeviceLabels.LEDGER_LIVE_WILL_BE);
|
|
488
|
+
await pressUntilTextFound(DeviceLabels.TURN_ON_SYNC);
|
|
489
|
+
await pressAndRelease(DeviceLabels.TURN_ON_SYNC);
|
|
490
|
+
}
|
|
491
|
+
else {
|
|
492
|
+
await pressUntilTextFound(DeviceLabels.CONNECT_WITH_LEDGER_SYNC, true);
|
|
493
|
+
await pressBoth();
|
|
494
|
+
await waitFor(DeviceLabels.REMOVE_PHONE_OR_COMPUTER);
|
|
495
|
+
await pressUntilTextFound(DeviceLabels.REMOVE_PHONE_OR_COMPUTER, true);
|
|
496
|
+
await pressBoth();
|
|
497
|
+
await waitFor(DeviceLabels.TURN_ON_SYNC);
|
|
498
|
+
await pressUntilTextFound(DeviceLabels.LEDGER_LIVE_WILL_BE);
|
|
499
|
+
await pressUntilTextFound(DeviceLabels.TURN_ON_SYNC);
|
|
500
|
+
await pressBoth();
|
|
501
|
+
}
|
|
487
502
|
}
|
|
488
503
|
export async function activateLedgerSync() {
|
|
489
|
-
await waitFor(DeviceLabels.
|
|
490
|
-
|
|
491
|
-
|
|
504
|
+
await waitFor(DeviceLabels.CONNECT_WITH);
|
|
505
|
+
if (isTouchDevice()) {
|
|
506
|
+
await pressAndRelease(DeviceLabels.CONNECT_WITH_LEDGER_SYNC);
|
|
507
|
+
}
|
|
508
|
+
else {
|
|
509
|
+
await pressUntilTextFound(DeviceLabels.CONNECT_WITH_LEDGER_SYNC, true);
|
|
510
|
+
await pressBoth();
|
|
511
|
+
}
|
|
492
512
|
await waitFor(DeviceLabels.TURN_ON_SYNC);
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
513
|
+
if (isTouchDevice()) {
|
|
514
|
+
await pressAndRelease(DeviceLabels.TURN_ON_SYNC);
|
|
515
|
+
}
|
|
516
|
+
else {
|
|
517
|
+
await pressUntilTextFound(DeviceLabels.LEDGER_LIVE_WILL_BE);
|
|
518
|
+
await pressUntilTextFound(DeviceLabels.TURN_ON_SYNC);
|
|
519
|
+
await pressBoth();
|
|
520
|
+
}
|
|
496
521
|
}
|
|
497
522
|
export async function activateExpertMode() {
|
|
498
|
-
|
|
499
|
-
|
|
523
|
+
if (isTouchDevice()) {
|
|
524
|
+
await goToSettings();
|
|
525
|
+
await pressAndRelease(DeviceLabels.SETTINGS_TOGGLE_1);
|
|
526
|
+
}
|
|
527
|
+
else {
|
|
528
|
+
await pressUntilTextFound(DeviceLabels.EXPERT_MODE);
|
|
529
|
+
await pressBoth();
|
|
530
|
+
}
|
|
500
531
|
}
|
|
501
532
|
export async function activateContractData() {
|
|
502
533
|
await pressUntilTextFound(DeviceLabels.SETTINGS);
|
|
@@ -505,8 +536,13 @@ export async function activateContractData() {
|
|
|
505
536
|
await pressBoth();
|
|
506
537
|
}
|
|
507
538
|
export async function goToSettings() {
|
|
508
|
-
|
|
509
|
-
|
|
539
|
+
if (isTouchDevice()) {
|
|
540
|
+
await pressAndRelease(DeviceLabels.SETTINGS);
|
|
541
|
+
}
|
|
542
|
+
else {
|
|
543
|
+
await pressUntilTextFound(DeviceLabels.SETTINGS);
|
|
544
|
+
await pressBoth();
|
|
545
|
+
}
|
|
510
546
|
}
|
|
511
547
|
export async function providePublicKey() {
|
|
512
548
|
await pressRightButton();
|
|
@@ -521,18 +557,39 @@ export function getDeviceLabels(appInfo) {
|
|
|
521
557
|
const receiveConfirmLabel = deviceConfig.receiveConfirm[appInfo.name] ?? deviceConfig.receiveConfirm.default;
|
|
522
558
|
const delegateVerifyLabel = deviceConfig.delegateVerify[appInfo.name] ?? deviceConfig.delegateVerify.default;
|
|
523
559
|
const delegateConfirmLabel = deviceConfig.delegateConfirm[appInfo.name] ?? deviceConfig.delegateConfirm.default;
|
|
524
|
-
|
|
560
|
+
const sendVerifyLabel = deviceConfig.sendVerify[appInfo.name] ?? deviceConfig.sendVerify.default;
|
|
561
|
+
const sendConfirmLabel = deviceConfig.sendConfirm[appInfo.name] ?? deviceConfig.sendConfirm.default;
|
|
562
|
+
return {
|
|
563
|
+
receiveVerifyLabel,
|
|
564
|
+
receiveConfirmLabel,
|
|
565
|
+
delegateVerifyLabel,
|
|
566
|
+
delegateConfirmLabel,
|
|
567
|
+
sendVerifyLabel,
|
|
568
|
+
sendConfirmLabel,
|
|
569
|
+
};
|
|
525
570
|
}
|
|
526
571
|
export async function expectValidAddressDevice(account, addressDisplayed) {
|
|
527
572
|
if (account.currency === Currency.SUI_USDC) {
|
|
528
573
|
providePublicKey();
|
|
529
574
|
}
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
575
|
+
else {
|
|
576
|
+
const { receiveVerifyLabel, receiveConfirmLabel } = getDeviceLabels(account.currency.speculosApp);
|
|
577
|
+
await waitFor(receiveVerifyLabel);
|
|
578
|
+
if (isTouchDevice()) {
|
|
579
|
+
const events = await pressUntilTextFound(receiveConfirmLabel);
|
|
580
|
+
const isAddressCorrect = containsSubstringInEvent(addressDisplayed, events);
|
|
581
|
+
expect(isAddressCorrect).toBeTruthy();
|
|
582
|
+
await pressAndRelease(DeviceLabels.CONFIRM);
|
|
583
|
+
}
|
|
584
|
+
else {
|
|
585
|
+
const { receiveVerifyLabel, receiveConfirmLabel } = getDeviceLabels(account.currency.speculosApp);
|
|
586
|
+
await waitFor(receiveVerifyLabel);
|
|
587
|
+
const events = await pressUntilTextFound(receiveConfirmLabel);
|
|
588
|
+
const isAddressCorrect = containsSubstringInEvent(addressDisplayed, events);
|
|
589
|
+
expect(isAddressCorrect).toBeTruthy();
|
|
590
|
+
await pressBoth();
|
|
591
|
+
}
|
|
592
|
+
}
|
|
536
593
|
}
|
|
537
594
|
export async function signSendTransaction(tx) {
|
|
538
595
|
const currencyName = tx.accountToDebit.currency;
|
|
@@ -578,32 +635,26 @@ export async function signSendTransaction(tx) {
|
|
|
578
635
|
await sendXRP(tx);
|
|
579
636
|
break;
|
|
580
637
|
case Currency.APT:
|
|
581
|
-
await sendAptos();
|
|
638
|
+
await sendAptos(tx);
|
|
582
639
|
break;
|
|
583
640
|
case Currency.KAS:
|
|
584
|
-
await sendKaspa();
|
|
641
|
+
await sendKaspa(tx);
|
|
585
642
|
break;
|
|
586
643
|
case Currency.HBAR:
|
|
587
644
|
await sendHedera();
|
|
588
645
|
break;
|
|
589
646
|
case Currency.SUI:
|
|
590
|
-
await sendSui();
|
|
591
|
-
break;
|
|
592
647
|
case Currency.SUI_USDC:
|
|
593
|
-
await sendSui();
|
|
648
|
+
await sendSui(tx);
|
|
594
649
|
break;
|
|
595
650
|
default:
|
|
596
651
|
throw new Error(`Unsupported currency: ${currencyName.ticker}`);
|
|
597
652
|
}
|
|
598
653
|
}
|
|
599
|
-
export async function
|
|
600
|
-
const
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
}
|
|
604
|
-
else {
|
|
605
|
-
throw new Error(`Unsupported currency: ${currencyName.ticker}`);
|
|
606
|
-
}
|
|
654
|
+
export async function getSendEvents(tx) {
|
|
655
|
+
const { sendVerifyLabel, sendConfirmLabel } = getDeviceLabels(tx.accountToDebit.currency.speculosApp);
|
|
656
|
+
await waitFor(sendVerifyLabel);
|
|
657
|
+
return await pressUntilTextFound(sendConfirmLabel);
|
|
607
658
|
}
|
|
608
659
|
export async function signDelegationTransaction(delegatingAccount) {
|
|
609
660
|
const currencyName = delegatingAccount.account.currency.name;
|
|
@@ -647,9 +698,16 @@ export async function getDelegateEvents(delegatingAccount) {
|
|
|
647
698
|
}
|
|
648
699
|
export async function verifyAmountsAndAcceptSwap(swap, amount) {
|
|
649
700
|
await waitFor(DeviceLabels.REVIEW_TRANSACTION);
|
|
650
|
-
const events =
|
|
701
|
+
const events = getSpeculosModel() === DeviceModelId.nanoS
|
|
702
|
+
? await pressUntilTextFound(DeviceLabels.ACCEPT_AND_SEND)
|
|
703
|
+
: await pressUntilTextFound(DeviceLabels.SIGN_TRANSACTION);
|
|
651
704
|
verifySwapData(swap, events, amount);
|
|
652
|
-
|
|
705
|
+
if (isTouchDevice()) {
|
|
706
|
+
await longPressAndRelease(DeviceLabels.HOLD_TO_SIGN, 3);
|
|
707
|
+
}
|
|
708
|
+
else {
|
|
709
|
+
await pressBoth();
|
|
710
|
+
}
|
|
653
711
|
}
|
|
654
712
|
export async function verifyAmountsAndAcceptSwapForDifferentSeed(swap, amount) {
|
|
655
713
|
await waitFor(DeviceLabels.REVIEW_TRANSACTION);
|
|
@@ -661,7 +719,12 @@ export async function verifyAmountsAndRejectSwap(swap, amount) {
|
|
|
661
719
|
await waitFor(DeviceLabels.REVIEW_TRANSACTION);
|
|
662
720
|
const events = await pressUntilTextFound(DeviceLabels.REJECT);
|
|
663
721
|
verifySwapData(swap, events, amount);
|
|
664
|
-
|
|
722
|
+
if (isTouchDevice()) {
|
|
723
|
+
await longPressAndRelease(DeviceLabels.HOLD_TO_SIGN, 3);
|
|
724
|
+
}
|
|
725
|
+
else {
|
|
726
|
+
await pressBoth();
|
|
727
|
+
}
|
|
665
728
|
}
|
|
666
729
|
function verifySwapData(swap, events, amount) {
|
|
667
730
|
const swapPair = `swap ${swap.getAccountToDebit.currency.ticker} to ${swap.getAccountToCredit.currency.ticker}`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"speculos.js","sourceRoot":"","sources":["../../src/e2e/speculos.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"speculos.js","sourceRoot":"","sources":["../../src/e2e/speculos.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ApplicationV2Entity } from "@ledgerhq/device-core";
|
|
2
2
|
import { DeviceModelId } from "@ledgerhq/devices";
|
|
3
3
|
export declare function getSpeculosModel(): DeviceModelId;
|
|
4
|
+
export declare function isTouchDevice(): boolean;
|
|
4
5
|
export declare function getNanoAppCatalog(device: DeviceModelId, deviceFirmware: string): Promise<ApplicationV2Entity[]>;
|
|
5
6
|
export declare function createNanoAppJsonFile(nanoAppFilePath: string): Promise<void>;
|
|
6
7
|
export declare function getAppVersionFromCatalog(currency: string, nanoAppFilePath: string): Promise<string | undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"speculosAppVersion.d.ts","sourceRoot":"","sources":["../../src/e2e/speculosAppVersion.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAGtF,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAKlD,wBAAgB,gBAAgB,IAAI,aAAa,
|
|
1
|
+
{"version":3,"file":"speculosAppVersion.d.ts","sourceRoot":"","sources":["../../src/e2e/speculosAppVersion.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAGtF,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAKlD,wBAAgB,gBAAgB,IAAI,aAAa,CAahD;AAED,wBAAgB,aAAa,IAAI,OAAO,CAGvC;AAYD,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,aAAa,EACrB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAQhC;AAUD,wBAAsB,qBAAqB,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAclF;AAED,wBAAsB,wBAAwB,CAC5C,QAAQ,EAAE,MAAM,EAChB,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAe7B"}
|
|
@@ -12,16 +12,23 @@ export function getSpeculosModel() {
|
|
|
12
12
|
return DeviceModelId.nanoS;
|
|
13
13
|
case CryptoWallet.LNX.name:
|
|
14
14
|
return DeviceModelId.nanoX;
|
|
15
|
+
case CryptoWallet.STAX.name:
|
|
16
|
+
return DeviceModelId.stax;
|
|
15
17
|
case CryptoWallet.LNSP.name:
|
|
16
18
|
default:
|
|
17
19
|
return DeviceModelId.nanoSP;
|
|
18
20
|
}
|
|
19
21
|
}
|
|
22
|
+
export function isTouchDevice() {
|
|
23
|
+
const model = getSpeculosModel();
|
|
24
|
+
return model === DeviceModelId.stax;
|
|
25
|
+
}
|
|
20
26
|
function getDeviceTargetId(device) {
|
|
21
27
|
const modelToTargetIdMap = {
|
|
22
28
|
[DeviceModelId.nanoS]: CryptoWallet.LNS.targetId,
|
|
23
29
|
[DeviceModelId.nanoX]: CryptoWallet.LNX.targetId,
|
|
24
30
|
[DeviceModelId.nanoSP]: CryptoWallet.LNSP.targetId,
|
|
31
|
+
[DeviceModelId.stax]: CryptoWallet.STAX.targetId,
|
|
25
32
|
};
|
|
26
33
|
return modelToTargetIdMap[device];
|
|
27
34
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"speculosAppVersion.js","sourceRoot":"","sources":["../../src/e2e/speculosAppVersion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAuB,MAAM,uBAAuB,CAAC;AACtF,OAAO,EAAE,OAAO,EAAE,MAAM,oCAAoC,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,MAAM,UAAU,gBAAgB;IAC9B,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;IACnD,QAAQ,cAAc,EAAE;QACtB,KAAK,YAAY,CAAC,GAAG,CAAC,IAAI;YACxB,OAAO,aAAa,CAAC,KAAK,CAAC;QAC7B,KAAK,YAAY,CAAC,GAAG,CAAC,IAAI;YACxB,OAAO,aAAa,CAAC,KAAK,CAAC;QAC7B,KAAK,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;QAC5B;YACE,OAAO,aAAa,CAAC,MAAM,CAAC;KAC/B;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAqB;IAC9C,MAAM,kBAAkB,GAAG;QACzB,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC,GAAG,CAAC,QAAQ;QAChD,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC,GAAG,CAAC,QAAQ;QAChD,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"speculosAppVersion.js","sourceRoot":"","sources":["../../src/e2e/speculosAppVersion.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/exchange/index.ts"],"names":[],"mappings":";;AACA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/exchange/index.ts"],"names":[],"mappings":";;AACA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AA2BlF,KAAK,gCAAgC,GAAG;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,wBAAwB,YAAa,MAAM,cAAc,MAAM,KAAG,OAG9E,CAAC;AAEF,eAAO,MAAM,yBAAyB,aAC1B,cAAc,GAAG,aAAa,KACvC,QAAQ,gCAAgC,CAY1C,CAAC"}
|
package/lib-es/exchange/index.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { valid, gte } from "semver";
|
|
2
2
|
import { getEnv } from "@ledgerhq/live-env";
|
|
3
|
-
import { findExchangeCurrencyConfig as findProdExchangeCurrencyConfig } from "@ledgerhq/cryptoassets";
|
|
4
3
|
import calService from "@ledgerhq/ledger-cal-service";
|
|
5
4
|
// Minimum version of a currency app which has exchange capabilities, meaning it can be used
|
|
6
5
|
// for sell/swap, and do silent signing.
|
|
@@ -30,20 +29,10 @@ export const isExchangeSupportedByApp = (appName, appVersion) => {
|
|
|
30
29
|
return !!(valid(minVersion) && valid(appVersion) && gte(appVersion, minVersion));
|
|
31
30
|
};
|
|
32
31
|
export const getCurrencyExchangeConfig = async (currency) => {
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
if (!res) {
|
|
38
|
-
throw new Error("Missing primary config");
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
catch (error) {
|
|
42
|
-
// Fallback to old production config if the primary fetch fails, should be removed when we have a HA CAL
|
|
43
|
-
res = await findProdExchangeCurrencyConfig(currency.id);
|
|
44
|
-
if (!res) {
|
|
45
|
-
throw new Error(`Exchange, missing configuration for ${currency.id}`);
|
|
46
|
-
}
|
|
32
|
+
const env = getEnv("MOCK_EXCHANGE_TEST_CONFIG") ? "test" : "prod";
|
|
33
|
+
const res = await calService.findCurrencyData(currency.id, { env });
|
|
34
|
+
if (!res) {
|
|
35
|
+
throw new Error(`Exchange, missing configuration for ${currency.id}`);
|
|
47
36
|
}
|
|
48
37
|
return {
|
|
49
38
|
config: Buffer.from(res.config, "hex"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/exchange/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAEpC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/exchange/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAEpC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,UAAU,MAAM,8BAA8B,CAAC;AACtD,4FAA4F;AAC5F,wCAAwC;AACxC,MAAM,0BAA0B,GAAG;IACjC,YAAY,EAAE,OAAO;IACrB,YAAY,EAAE,OAAO;IACrB,OAAO,EAAE,OAAO;IAChB,IAAI,EAAE,OAAO;IACb,QAAQ,EAAE,OAAO;IACjB,QAAQ,EAAE,OAAO;IACjB,QAAQ,EAAE,OAAO;IACjB,QAAQ,EAAE,OAAO;IACjB,QAAQ,EAAE,WAAW;IACrB,IAAI,EAAE,OAAO;IACb,MAAM,EAAE,OAAO;IACf,MAAM,EAAE,OAAO;IACf,OAAO,EAAE,OAAO;IAChB,OAAO,EAAE,OAAO;IAChB,KAAK,EAAE,QAAQ;IACf,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,OAAO;IACd,OAAO,EAAE,OAAO;IAChB,GAAG,EAAE,OAAO;CACb,CAAC;AAOF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,OAAe,EAAE,UAAkB,EAAW,EAAE;IACvF,MAAM,UAAU,GAAG,0BAA0B,CAAC,OAAO,CAAC,CAAC;IACvD,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;AACnF,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,KAAK,EAC5C,QAAwC,EACG,EAAE;IAC7C,MAAM,GAAG,GAAG,MAAM,CAAC,2BAA2B,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;IAClE,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IAEpE,IAAI,CAAC,GAAG,EAAE;QACR,MAAM,IAAI,KAAK,CAAC,uCAAuC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;KACvE;IAED,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC;QACtC,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC;KAC7C,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { AccountLike } from "@ledgerhq/types-live";
|
|
2
2
|
import type { SwapHistorySection } from "./types";
|
|
3
|
-
declare const getCompleteSwapHistory: (accounts: AccountLike[]) => SwapHistorySection[]
|
|
3
|
+
declare const getCompleteSwapHistory: (accounts: AccountLike[]) => Promise<SwapHistorySection[]>;
|
|
4
4
|
export default getCompleteSwapHistory;
|
|
5
5
|
//# sourceMappingURL=getCompleteSwapHistory.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getCompleteSwapHistory.d.ts","sourceRoot":"","sources":["../../../src/exchange/swap/getCompleteSwapHistory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAiB,MAAM,sBAAsB,CAAC;AAEvE,OAAO,KAAK,EAAuB,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAyEvE,QAAA,MAAM,sBAAsB,
|
|
1
|
+
{"version":3,"file":"getCompleteSwapHistory.d.ts","sourceRoot":"","sources":["../../../src/exchange/swap/getCompleteSwapHistory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAiB,MAAM,sBAAsB,CAAC;AAEvE,OAAO,KAAK,EAAuB,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAyEvE,QAAA,MAAM,sBAAsB,aAAoB,WAAW,EAAE,KAAG,QAAQ,kBAAkB,EAAE,CAoD3F,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { getCryptoAssetsStore } from "../../bridge/crypto-assets/index";
|
|
2
2
|
import { accountWithMandatoryTokens, getAccountCurrency } from "../../account";
|
|
3
|
-
const getSwapOperationMap = (account, accounts) => (swapOperation) => {
|
|
3
|
+
const getSwapOperationMap = (account, accounts) => async (swapOperation) => {
|
|
4
4
|
const { provider, swapId, receiverAccountId, operationId, fromAmount, toAmount, status, tokenId, } = swapOperation;
|
|
5
5
|
// Find operation by matching its hash which is embedded in the operationId
|
|
6
6
|
const operation = account.operations.find(o => operationId.includes(o.hash) || o.id === operationId);
|
|
@@ -16,7 +16,7 @@ const getSwapOperationMap = (account, accounts) => (swapOperation) => {
|
|
|
16
16
|
toExists = true;
|
|
17
17
|
}
|
|
18
18
|
if (toAccount && tokenId) {
|
|
19
|
-
const token = findTokenById(tokenId);
|
|
19
|
+
const token = await getCryptoAssetsStore().findTokenById(tokenId);
|
|
20
20
|
if (token && toAccount.type === "Account") {
|
|
21
21
|
toParentAccount = toAccount;
|
|
22
22
|
// Enhance the account with the given token in case we don't have funds yet.
|
|
@@ -48,13 +48,13 @@ const getSwapOperationMap = (account, accounts) => (swapOperation) => {
|
|
|
48
48
|
function startOfDay(t) {
|
|
49
49
|
return new Date(t.getFullYear(), t.getMonth(), t.getDate());
|
|
50
50
|
}
|
|
51
|
-
const getCompleteSwapHistory = (accounts) => {
|
|
51
|
+
const getCompleteSwapHistory = async (accounts) => {
|
|
52
52
|
const swaps = [];
|
|
53
53
|
for (const account of accounts) {
|
|
54
54
|
const { swapHistory } = account;
|
|
55
55
|
const mapFn = getSwapOperationMap(account, accounts);
|
|
56
56
|
if (swapHistory) {
|
|
57
|
-
const mappedSwapHistory = swapHistory.map(mapFn);
|
|
57
|
+
const mappedSwapHistory = await Promise.all(swapHistory.map(mapFn));
|
|
58
58
|
if (mappedSwapHistory) {
|
|
59
59
|
const filteredMappdSwapOperations = (mappedSwapHistory.filter(Boolean));
|
|
60
60
|
swaps.push(...filteredMappdSwapOperations);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getCompleteSwapHistory.js","sourceRoot":"","sources":["../../../src/exchange/swap/getCompleteSwapHistory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"getCompleteSwapHistory.js","sourceRoot":"","sources":["../../../src/exchange/swap/getCompleteSwapHistory.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSelectableCurrencies.d.ts","sourceRoot":"","sources":["../../../../src/exchange/swap/hooks/useSelectableCurrencies.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useSelectableCurrencies.d.ts","sourceRoot":"","sources":["../../../../src/exchange/swap/hooks/useSelectableCurrencies.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAElF,eAAO,MAAM,uBAAuB;mBAGnB,MAAM,EAAE;MACrB,CAAC,aAAa,GAAG,cAAc,CAAC,EAwBnC,CAAC"}
|
|
@@ -1,10 +1,22 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { findCryptoCurrencyById
|
|
1
|
+
import { useEffect, useState } from "react";
|
|
2
|
+
import { findCryptoCurrencyById } from "@ledgerhq/cryptoassets";
|
|
3
|
+
import { getCryptoAssetsStore } from "../../../bridge/crypto-assets/index";
|
|
3
4
|
export const useSelectableCurrencies = ({ allCurrencies, }) => {
|
|
4
|
-
const currencies =
|
|
5
|
-
|
|
6
|
-
const
|
|
7
|
-
|
|
5
|
+
const [currencies, setCurrencies] = useState([]);
|
|
6
|
+
useEffect(() => {
|
|
7
|
+
const loadCurrencies = async () => {
|
|
8
|
+
const results = await Promise.all(allCurrencies.map(async (id) => {
|
|
9
|
+
// Try token first, then crypto currency
|
|
10
|
+
const token = await getCryptoAssetsStore().findTokenById(id);
|
|
11
|
+
if (token)
|
|
12
|
+
return token;
|
|
13
|
+
const crypto = findCryptoCurrencyById(id);
|
|
14
|
+
return crypto;
|
|
15
|
+
}));
|
|
16
|
+
const validCurrencies = results.filter(Boolean);
|
|
17
|
+
setCurrencies(validCurrencies);
|
|
18
|
+
};
|
|
19
|
+
loadCurrencies();
|
|
8
20
|
}, [allCurrencies]);
|
|
9
21
|
return currencies;
|
|
10
22
|
};
|