@ledgerhq/live-common 34.54.0-nightly.20251209144712 → 34.54.1
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 -3
- 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/account/serialization.js +1 -1
- package/lib/account/serialization.js.map +1 -1
- package/lib/account/support.js +1 -1
- package/lib/account/support.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 -17
- 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 -45
- 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/domain/getTokensWithFunds.d.ts +1 -7
- package/lib/domain/getTokensWithFunds.d.ts.map +1 -1
- package/lib/domain/getTokensWithFunds.js +4 -15
- package/lib/domain/getTokensWithFunds.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 -32
- 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/speculosCI.d.ts.map +1 -1
- package/lib/e2e/speculosCI.js +1 -6
- package/lib/e2e/speculosCI.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/api/v5/fetchCurrencyFrom.js +1 -1
- package/lib/exchange/swap/api/v5/fetchCurrencyFrom.js.map +1 -1
- package/lib/exchange/swap/getIncompatibleCurrencyKeys.d.ts.map +1 -1
- package/lib/exchange/swap/getIncompatibleCurrencyKeys.js +0 -4
- package/lib/exchange/swap/getIncompatibleCurrencyKeys.js.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 +0 -2
- package/lib/featureFlags/defaultFeatures.d.ts.map +1 -1
- package/lib/featureFlags/defaultFeatures.js +1 -21
- package/lib/featureFlags/defaultFeatures.js.map +1 -1
- package/lib/featureFlags/firebaseFeatureFlags.js +1 -1
- package/lib/featureFlags/firebaseFeatureFlags.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/featureFlags/useHasOverriddenFeatureFlags.js +1 -1
- package/lib/featureFlags/useHasOverriddenFeatureFlags.js.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/connectAppEventMapper.d.ts.map +1 -1
- package/lib/hw/connectAppEventMapper.js +21 -2
- package/lib/hw/connectAppEventMapper.js.map +1 -1
- package/lib/hw/getBitcoinLikeInfo.js +1 -1
- package/lib/hw/getBitcoinLikeInfo.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/mock/account.js +1 -1
- package/lib/mock/account.js.map +1 -1
- package/lib/modularDrawer/hooks/useCurrenciesUnderFeatureFlag.d.ts.map +1 -1
- package/lib/modularDrawer/hooks/useCurrenciesUnderFeatureFlag.js +0 -6
- package/lib/modularDrawer/hooks/useCurrenciesUnderFeatureFlag.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/constants.d.ts +1 -1
- package/lib/wallet-api/useDappLogic.d.ts.map +1 -1
- package/lib/wallet-api/useDappLogic.js +20 -31
- package/lib/wallet-api/useDappLogic.js.map +1 -1
- package/lib/wallet-api/utils/extractDappURLFromManifest.js +3 -3
- package/lib/wallet-api/utils/extractDappURLFromManifest.js.map +1 -1
- package/lib/wallet-api/utils/extractURLFromManifest.js +1 -1
- package/lib/wallet-api/utils/extractURLFromManifest.js.map +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 -3
- 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/account/serialization.js +1 -1
- package/lib-es/account/serialization.js.map +1 -1
- package/lib-es/account/support.js +1 -1
- package/lib-es/account/support.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 -17
- 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 -45
- 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/domain/getTokensWithFunds.d.ts +1 -7
- package/lib-es/domain/getTokensWithFunds.d.ts.map +1 -1
- package/lib-es/domain/getTokensWithFunds.js +3 -13
- package/lib-es/domain/getTokensWithFunds.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 -32
- 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/speculosCI.d.ts.map +1 -1
- package/lib-es/e2e/speculosCI.js +1 -6
- package/lib-es/e2e/speculosCI.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/api/v5/fetchCurrencyFrom.js +1 -1
- package/lib-es/exchange/swap/api/v5/fetchCurrencyFrom.js.map +1 -1
- package/lib-es/exchange/swap/getIncompatibleCurrencyKeys.d.ts.map +1 -1
- package/lib-es/exchange/swap/getIncompatibleCurrencyKeys.js +0 -4
- package/lib-es/exchange/swap/getIncompatibleCurrencyKeys.js.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 +0 -2
- package/lib-es/featureFlags/defaultFeatures.d.ts.map +1 -1
- package/lib-es/featureFlags/defaultFeatures.js +1 -21
- package/lib-es/featureFlags/defaultFeatures.js.map +1 -1
- package/lib-es/featureFlags/firebaseFeatureFlags.js +1 -1
- package/lib-es/featureFlags/firebaseFeatureFlags.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/featureFlags/useHasOverriddenFeatureFlags.js +1 -1
- package/lib-es/featureFlags/useHasOverriddenFeatureFlags.js.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/connectAppEventMapper.d.ts.map +1 -1
- package/lib-es/hw/connectAppEventMapper.js +23 -4
- package/lib-es/hw/connectAppEventMapper.js.map +1 -1
- package/lib-es/hw/getBitcoinLikeInfo.js +1 -1
- package/lib-es/hw/getBitcoinLikeInfo.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/mock/account.js +1 -1
- package/lib-es/mock/account.js.map +1 -1
- package/lib-es/modularDrawer/hooks/useCurrenciesUnderFeatureFlag.d.ts.map +1 -1
- package/lib-es/modularDrawer/hooks/useCurrenciesUnderFeatureFlag.js +0 -6
- package/lib-es/modularDrawer/hooks/useCurrenciesUnderFeatureFlag.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/constants.d.ts +1 -1
- package/lib-es/wallet-api/useDappLogic.d.ts.map +1 -1
- package/lib-es/wallet-api/useDappLogic.js +20 -31
- package/lib-es/wallet-api/useDappLogic.js.map +1 -1
- package/lib-es/wallet-api/utils/extractDappURLFromManifest.js +3 -3
- package/lib-es/wallet-api/utils/extractDappURLFromManifest.js.map +1 -1
- package/lib-es/wallet-api/utils/extractURLFromManifest.js +1 -1
- package/lib-es/wallet-api/utils/extractURLFromManifest.js.map +1 -1
- package/lib-es/walletSync/getEnvironmentParams.js +6 -6
- package/lib-es/walletSync/getEnvironmentParams.js.map +1 -1
- package/package.json +90 -82
- 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 -3
- package/src/account/index.ts +0 -6
- package/src/account/serialization.ts +1 -1
- package/src/account/support.ts +1 -1
- 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 -26
- package/src/bridge/generic-alpaca/getTransactionStatus.ts +1 -16
- package/src/bridge/generic-alpaca/prepareTransaction.ts +10 -51
- 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 -74
- 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/domain/getTokensWithFunds.ts +5 -18
- 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/speculosCI.ts +1 -6
- package/src/e2e/swap.ts +7 -8
- package/src/exchange/swap/api/v5/fetchCurrencyFrom.ts +1 -1
- package/src/exchange/swap/getIncompatibleCurrencyKeys.ts +0 -4
- 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 -21
- package/src/featureFlags/firebaseFeatureFlags.ts +1 -1
- package/src/featureFlags/stakePrograms/index.ts +4 -4
- package/src/featureFlags/useHasOverriddenFeatureFlags.ts +1 -1
- package/src/generated/bridge/js.ts +2 -0
- package/src/helpers.ts +0 -2
- package/src/hw/connectAppEventMapper.ts +28 -4
- package/src/hw/getBitcoinLikeInfo.ts +1 -1
- package/src/load/speculos.ts +0 -1
- package/src/mock/account.ts +1 -1
- package/src/modularDrawer/hooks/useCurrenciesUnderFeatureFlag.ts +0 -6
- 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/useDappLogic.ts +20 -32
- package/src/wallet-api/utils/extractDappURLFromManifest.ts +3 -3
- package/src/wallet-api/utils/extractURLFromManifest.ts +1 -1
- 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/domain/getTotalStakeableAssets.d.ts +0 -10
- package/lib/domain/getTotalStakeableAssets.d.ts.map +0 -1
- package/lib/domain/getTotalStakeableAssets.js +0 -35
- package/lib/domain/getTotalStakeableAssets.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/domain/getTotalStakeableAssets.d.ts +0 -10
- package/lib-es/domain/getTotalStakeableAssets.d.ts.map +0 -1
- package/lib-es/domain/getTotalStakeableAssets.js +0 -31
- package/lib-es/domain/getTotalStakeableAssets.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/domain/getTotalStakeableAssets.test.ts +0 -267
- package/src/domain/getTotalStakeableAssets.ts +0 -47
- 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
|
@@ -16,10 +16,10 @@ describe("sync for token transfers", () => {
|
|
|
16
16
|
});
|
|
17
17
|
|
|
18
18
|
test("sync build operations only for transfer type txn", async () => {
|
|
19
|
-
const
|
|
19
|
+
const rawTxs = await fetchFullTxs(address);
|
|
20
20
|
|
|
21
21
|
// Contains operations for txn of type token_transfer
|
|
22
|
-
const operations = flatMap(
|
|
22
|
+
const operations = flatMap(rawTxs, mapTxToOps(accountId, address));
|
|
23
23
|
|
|
24
24
|
expect(operations.length).toBeTruthy();
|
|
25
25
|
});
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// Encapsulate for LLD & LLM
|
|
2
|
-
export * from "@ledgerhq/coin-stacks/
|
|
2
|
+
export * from "@ledgerhq/coin-stacks/contants";
|
|
@@ -16,7 +16,7 @@ exports[`stellar currency bridge scanAccounts stellar seed 1 1`] = `
|
|
|
16
16
|
"spendableBalance": "311064932",
|
|
17
17
|
"subAccounts": [],
|
|
18
18
|
"swapHistory": [],
|
|
19
|
-
"syncHash": "
|
|
19
|
+
"syncHash": "0x1431ef5f",
|
|
20
20
|
"used": true,
|
|
21
21
|
"xpub": "GAT4LBXYJGJJJRSNK74NPFLO55CDDXSYVMQODSEAAH3M6EY4S7LPH5GV",
|
|
22
22
|
},
|
|
@@ -31,10 +31,10 @@ exports[`stellar currency bridge scanAccounts stellar seed 1 1`] = `
|
|
|
31
31
|
"operationsCount": 43,
|
|
32
32
|
"pendingOperations": [],
|
|
33
33
|
"seedIdentifier": "27c586f8499294c64d57f8d7956eef4431de58ab20e1c88001f6cf131c97d6f3",
|
|
34
|
-
"spendableBalance": "
|
|
34
|
+
"spendableBalance": "79999759",
|
|
35
35
|
"subAccounts": [],
|
|
36
36
|
"swapHistory": [],
|
|
37
|
-
"syncHash": "
|
|
37
|
+
"syncHash": "0x1431ef5f",
|
|
38
38
|
"used": true,
|
|
39
39
|
"xpub": "GAIXIJBMYPTSF2CDVQ35WOTULCLZIE4W2SDEK3RQGAA3A22BPWY7R53Z",
|
|
40
40
|
},
|
|
@@ -49,10 +49,10 @@ exports[`stellar currency bridge scanAccounts stellar seed 1 1`] = `
|
|
|
49
49
|
"operationsCount": 38,
|
|
50
50
|
"pendingOperations": [],
|
|
51
51
|
"seedIdentifier": "27c586f8499294c64d57f8d7956eef4431de58ab20e1c88001f6cf131c97d6f3",
|
|
52
|
-
"spendableBalance": "
|
|
52
|
+
"spendableBalance": "44999261",
|
|
53
53
|
"subAccounts": [],
|
|
54
54
|
"swapHistory": [],
|
|
55
|
-
"syncHash": "
|
|
55
|
+
"syncHash": "0x1431ef5f",
|
|
56
56
|
"used": true,
|
|
57
57
|
"xpub": "GCDDN6T2LJN3T7SPWJQV6BCCL5KNY5GBN7X4CMSZLDEXDHXAH32TOAHS",
|
|
58
58
|
},
|
|
@@ -67,10 +67,10 @@ exports[`stellar currency bridge scanAccounts stellar seed 1 1`] = `
|
|
|
67
67
|
"operationsCount": 17,
|
|
68
68
|
"pendingOperations": [],
|
|
69
69
|
"seedIdentifier": "27c586f8499294c64d57f8d7956eef4431de58ab20e1c88001f6cf131c97d6f3",
|
|
70
|
-
"spendableBalance": "
|
|
70
|
+
"spendableBalance": "10145720",
|
|
71
71
|
"subAccounts": [],
|
|
72
72
|
"swapHistory": [],
|
|
73
|
-
"syncHash": "
|
|
73
|
+
"syncHash": "0x1431ef5f",
|
|
74
74
|
"used": true,
|
|
75
75
|
"xpub": "GAHQKL7UW5DSNJXWNA4ASJ6D2I7JYFWVHDFWYJZK3WDR4BUTG27K2PWC",
|
|
76
76
|
},
|
|
@@ -88,7 +88,7 @@ exports[`stellar currency bridge scanAccounts stellar seed 1 1`] = `
|
|
|
88
88
|
"spendableBalance": "0",
|
|
89
89
|
"subAccounts": [],
|
|
90
90
|
"swapHistory": [],
|
|
91
|
-
"syncHash": "
|
|
91
|
+
"syncHash": "0x1431ef5f",
|
|
92
92
|
"used": true,
|
|
93
93
|
"xpub": "GBQMOU2WYJUP6AKY53FFKZJGQMDWCMTWSOUTZ5DVIAQPVW7AJUHSX2M5",
|
|
94
94
|
},
|
|
@@ -106,7 +106,7 @@ exports[`stellar currency bridge scanAccounts stellar seed 1 1`] = `
|
|
|
106
106
|
"spendableBalance": "0",
|
|
107
107
|
"subAccounts": [],
|
|
108
108
|
"swapHistory": [],
|
|
109
|
-
"syncHash": "
|
|
109
|
+
"syncHash": "0x1431ef5f",
|
|
110
110
|
"used": false,
|
|
111
111
|
"xpub": "GAJEKFXY76YWDSKJESDOKS2EGKRMCHSIC5AU32SU7OF54E5VVREUHXLH",
|
|
112
112
|
},
|
|
@@ -8,7 +8,6 @@ import {
|
|
|
8
8
|
import reduce from "lodash/reduce";
|
|
9
9
|
import { BUY_SELL_UI_APP_ID } from "../wallet-api/constants";
|
|
10
10
|
import { formatToFirebaseFeatureId } from "./firebaseFeatureFlags";
|
|
11
|
-
import { DeviceModelId } from "@ledgerhq/types-devices";
|
|
12
11
|
|
|
13
12
|
/**
|
|
14
13
|
* Default disabled feature.
|
|
@@ -110,8 +109,6 @@ export const CURRENCY_DEFAULT_FEATURES = {
|
|
|
110
109
|
currencyMonadTestnet: DEFAULT_FEATURE,
|
|
111
110
|
currencySomnia: DEFAULT_FEATURE,
|
|
112
111
|
currencyZeroGravity: DEFAULT_FEATURE,
|
|
113
|
-
currencyConcordium: DEFAULT_FEATURE,
|
|
114
|
-
currencyConcordiumTestnet: DEFAULT_FEATURE,
|
|
115
112
|
};
|
|
116
113
|
|
|
117
114
|
/**
|
|
@@ -218,18 +215,6 @@ export const DEFAULT_FEATURES: Features = {
|
|
|
218
215
|
protectId: "protect-simu",
|
|
219
216
|
},
|
|
220
217
|
},
|
|
221
|
-
recoverUpsellPostOnboarding: {
|
|
222
|
-
...DEFAULT_FEATURE,
|
|
223
|
-
params: {
|
|
224
|
-
deviceIds: [
|
|
225
|
-
DeviceModelId.nanoSP,
|
|
226
|
-
DeviceModelId.nanoX,
|
|
227
|
-
DeviceModelId.stax,
|
|
228
|
-
DeviceModelId.europa,
|
|
229
|
-
DeviceModelId.apex,
|
|
230
|
-
],
|
|
231
|
-
},
|
|
232
|
-
},
|
|
233
218
|
|
|
234
219
|
storyly: {
|
|
235
220
|
enabled: false,
|
|
@@ -598,8 +583,6 @@ export const DEFAULT_FEATURES: Features = {
|
|
|
598
583
|
postOnboarding: true,
|
|
599
584
|
},
|
|
600
585
|
},
|
|
601
|
-
lwmLedgerSyncOptimisation: DEFAULT_FEATURE,
|
|
602
|
-
lwdLedgerSyncOptimisation: DEFAULT_FEATURE,
|
|
603
586
|
lldNanoSUpsellBanners: {
|
|
604
587
|
...DEFAULT_FEATURE,
|
|
605
588
|
params: {
|
|
@@ -684,8 +667,8 @@ export const DEFAULT_FEATURES: Features = {
|
|
|
684
667
|
chains: ["ethereum", "polygon", "base", "arbitrum"],
|
|
685
668
|
},
|
|
686
669
|
},
|
|
687
|
-
ldmkSolanaSigner: DEFAULT_FEATURE,
|
|
688
670
|
ldmkConnectApp: DEFAULT_FEATURE,
|
|
671
|
+
ldmkSolanaSigner: DEFAULT_FEATURE,
|
|
689
672
|
lldNetworkBasedAddAccount: DEFAULT_FEATURE,
|
|
690
673
|
llmDatadog: {
|
|
691
674
|
...DEFAULT_FEATURE,
|
|
@@ -735,9 +718,6 @@ export const DEFAULT_FEATURES: Features = {
|
|
|
735
718
|
},
|
|
736
719
|
},
|
|
737
720
|
zcashShielded: DEFAULT_FEATURE,
|
|
738
|
-
llmNanoOnboardingFundWallet: DEFAULT_FEATURE,
|
|
739
|
-
lldRebornABtest: DEFAULT_FEATURE,
|
|
740
|
-
llmRebornABtest: DEFAULT_FEATURE,
|
|
741
721
|
};
|
|
742
722
|
|
|
743
723
|
// Firebase SDK treat JSON values as strings
|
|
@@ -44,7 +44,7 @@ export const getBitcoinYieldSetting = (stakePrograms: Feature_StakePrograms | nu
|
|
|
44
44
|
};
|
|
45
45
|
|
|
46
46
|
export const getEthDepositScreenSetting = (stakePrograms: Feature_StakePrograms | null): string => {
|
|
47
|
-
/** Check if Ethereum has "earn" provider configured in redirects with
|
|
47
|
+
/** Check if Ethereum has "earn" provider configured in redirects with cohort. */
|
|
48
48
|
const ethereumRedirect = stakePrograms?.enabled
|
|
49
49
|
? stakePrograms?.params?.redirects?.["ethereum"]
|
|
50
50
|
: undefined;
|
|
@@ -55,8 +55,8 @@ export const getEthDepositScreenSetting = (stakePrograms: Feature_StakePrograms
|
|
|
55
55
|
return "standard";
|
|
56
56
|
}
|
|
57
57
|
|
|
58
|
-
// Extract
|
|
59
|
-
const
|
|
58
|
+
// Extract cohort from queryParams
|
|
59
|
+
const cohort = ethereumRedirect.queryParams?.cohort;
|
|
60
60
|
|
|
61
|
-
return
|
|
61
|
+
return cohort ?? "missing_cohort_value";
|
|
62
62
|
};
|
|
@@ -6,6 +6,7 @@ import { bridge as casper } from "../../families/casper/setup";
|
|
|
6
6
|
import { bridge as canton } from "../../families/canton/setup";
|
|
7
7
|
import { bridge as celo } from "../../families/celo/setup";
|
|
8
8
|
import { bridge as cosmos } from "../../families/cosmos/setup";
|
|
9
|
+
import { bridge as evm } from "../../families/evm/setup";
|
|
9
10
|
import { bridge as hedera } from "../../families/hedera/setup";
|
|
10
11
|
import { bridge as filecoin } from "../../families/filecoin/setup";
|
|
11
12
|
import { bridge as internet_computer } from "../../families/internet_computer/setup";
|
|
@@ -31,6 +32,7 @@ export default {
|
|
|
31
32
|
canton,
|
|
32
33
|
celo,
|
|
33
34
|
cosmos,
|
|
35
|
+
evm,
|
|
34
36
|
hedera,
|
|
35
37
|
filecoin,
|
|
36
38
|
internet_computer,
|
package/src/helpers.ts
CHANGED
|
@@ -11,11 +11,10 @@ import type {
|
|
|
11
11
|
} from "@ledgerhq/device-management-kit";
|
|
12
12
|
import {
|
|
13
13
|
DeviceActionStatus,
|
|
14
|
-
DeviceDisconnectedWhileSendingError,
|
|
15
14
|
DeviceSessionStateType,
|
|
16
15
|
UserInteractionRequired,
|
|
17
16
|
OutOfMemoryDAError,
|
|
18
|
-
|
|
17
|
+
DeviceModelId,
|
|
19
18
|
} from "@ledgerhq/device-management-kit";
|
|
20
19
|
import type {
|
|
21
20
|
ConnectAppDAOutput,
|
|
@@ -27,12 +26,14 @@ import {
|
|
|
27
26
|
UserRefusedAllowManager,
|
|
28
27
|
UserRefusedOnDevice,
|
|
29
28
|
LatestFirmwareVersionRequired,
|
|
29
|
+
UnsupportedFeatureError,
|
|
30
30
|
} from "@ledgerhq/errors";
|
|
31
31
|
|
|
32
32
|
import type { SkippedAppOp } from "../apps/types";
|
|
33
33
|
import { SkipReason } from "../apps/types";
|
|
34
34
|
import { parseDeviceInfo } from "../deviceSDK/tasks/getDeviceInfo";
|
|
35
35
|
import { ConnectAppEvent } from "./connectApp";
|
|
36
|
+
import { NoSuchAppOnProvider } from "../errors";
|
|
36
37
|
|
|
37
38
|
export class ConnectAppEventMapper {
|
|
38
39
|
private openAppRequested: boolean = false;
|
|
@@ -241,7 +242,8 @@ export class ConnectAppEventMapper {
|
|
|
241
242
|
});
|
|
242
243
|
this.eventSubject.complete();
|
|
243
244
|
} else if (
|
|
244
|
-
|
|
245
|
+
"_tag" in error &&
|
|
246
|
+
error._tag === "UnsupportedFirmwareDAError" &&
|
|
245
247
|
deviceState.sessionStateType !== DeviceSessionStateType.Connected
|
|
246
248
|
) {
|
|
247
249
|
this.eventSubject.error(
|
|
@@ -252,12 +254,34 @@ export class ConnectAppEventMapper {
|
|
|
252
254
|
deviceState.firmwareUpdateContext!.currentFirmware.version,
|
|
253
255
|
}),
|
|
254
256
|
);
|
|
257
|
+
} else if (
|
|
258
|
+
"_tag" in error &&
|
|
259
|
+
error._tag === "UnsupportedApplicationDAError" &&
|
|
260
|
+
deviceState.sessionStateType !== DeviceSessionStateType.Connected
|
|
261
|
+
) {
|
|
262
|
+
if (deviceState.deviceModelId === DeviceModelId.NANO_S) {
|
|
263
|
+
// This will show an error modal with upsell link
|
|
264
|
+
this.eventSubject.error(
|
|
265
|
+
new NoSuchAppOnProvider(`Ledger Nano S does not support this feature`, {
|
|
266
|
+
appName: this.appName,
|
|
267
|
+
}),
|
|
268
|
+
);
|
|
269
|
+
return;
|
|
270
|
+
}
|
|
271
|
+
// This will show an error modal with contact support link
|
|
272
|
+
this.eventSubject.error(
|
|
273
|
+
new UnsupportedFeatureError(`App ${this.appName} not supported on this device`, {
|
|
274
|
+
appName: this.appName,
|
|
275
|
+
deviceModelId: deviceState.deviceModelId,
|
|
276
|
+
deviceVersion: deviceState.firmwareVersion?.os,
|
|
277
|
+
}),
|
|
278
|
+
);
|
|
255
279
|
} else if ("_tag" in error && error._tag === "DeviceLockedError") {
|
|
256
280
|
this.eventSubject.next({ type: "lockedDevice" });
|
|
257
281
|
this.eventSubject.complete();
|
|
258
282
|
} else if ("_tag" in error && error._tag === "RefusedByUserDAError") {
|
|
259
283
|
this.eventSubject.error(new UserRefusedAllowManager());
|
|
260
|
-
} else if (error
|
|
284
|
+
} else if ("_tag" in error && error._tag === "DeviceDisconnectedWhileSendingError") {
|
|
261
285
|
this.eventSubject.next({ type: "disconnected", expected: false });
|
|
262
286
|
} else if ("_tag" in error && error._tag === "WebHidSendReportError") {
|
|
263
287
|
this.eventSubject.next({ type: "disconnected", expected: false });
|
package/src/load/speculos.ts
CHANGED
package/src/mock/account.ts
CHANGED
|
@@ -199,7 +199,7 @@ export function genAccount(id: number | string, opts: GenAccountOptions = {}): A
|
|
|
199
199
|
if (initAccount) {
|
|
200
200
|
initAccount(account);
|
|
201
201
|
}
|
|
202
|
-
} catch {
|
|
202
|
+
} catch (e: any) {
|
|
203
203
|
// to fix /src/__tests__/cross.ts, skip bridge error if there is no bridge in such currency
|
|
204
204
|
}
|
|
205
205
|
}
|
|
@@ -83,8 +83,6 @@ export function useCurrenciesUnderFeatureFlag() {
|
|
|
83
83
|
const monadTestnet = useFeature("currencyMonadTestnet");
|
|
84
84
|
const somnia = useFeature("currencySomnia");
|
|
85
85
|
const zeroGravity = useFeature("currencyZeroGravity");
|
|
86
|
-
const concordium = useFeature("currencyConcordium");
|
|
87
|
-
const concordiumTestnet = useFeature("currencyConcordiumTestnet");
|
|
88
86
|
|
|
89
87
|
const featureFlaggedCurrencies = useMemo(
|
|
90
88
|
(): Partial<Record<CryptoCurrencyId, Feature<unknown> | null>> => ({
|
|
@@ -164,8 +162,6 @@ export function useCurrenciesUnderFeatureFlag() {
|
|
|
164
162
|
monad_testnet: monadTestnet,
|
|
165
163
|
somnia,
|
|
166
164
|
zero_gravity: zeroGravity,
|
|
167
|
-
concordium,
|
|
168
|
-
concordium_testnet: concordiumTestnet,
|
|
169
165
|
}),
|
|
170
166
|
[
|
|
171
167
|
aptos,
|
|
@@ -244,8 +240,6 @@ export function useCurrenciesUnderFeatureFlag() {
|
|
|
244
240
|
monadTestnet,
|
|
245
241
|
somnia,
|
|
246
242
|
zeroGravity,
|
|
247
|
-
concordium,
|
|
248
|
-
concordiumTestnet,
|
|
249
243
|
],
|
|
250
244
|
);
|
|
251
245
|
|
package/src/operation.ts
CHANGED
|
@@ -5,16 +5,8 @@ import {
|
|
|
5
5
|
isStuckOperation as isStuckOperationEvm,
|
|
6
6
|
getStuckAccountAndOperation as getStuckAccountAndOperationEvm,
|
|
7
7
|
} from "@ledgerhq/coin-evm/operation";
|
|
8
|
-
import { getCurrencyConfiguration } from "./config";
|
|
9
|
-
import { CryptoCurrency } from "@ledgerhq/types-cryptoassets";
|
|
10
|
-
import { EvmConfigInfo } from "@ledgerhq/coin-evm/config";
|
|
11
8
|
export * from "@ledgerhq/coin-framework/operation";
|
|
12
9
|
|
|
13
|
-
function hasGasTracker(currency: CryptoCurrency): boolean {
|
|
14
|
-
const config = getCurrencyConfiguration<EvmConfigInfo>(currency);
|
|
15
|
-
return !!config.gasTracker;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
10
|
/**
|
|
19
11
|
* Return weather an operation is editable or not.
|
|
20
12
|
*/
|
|
@@ -26,7 +18,7 @@ export const isEditableOperation = ({
|
|
|
26
18
|
operation: Operation;
|
|
27
19
|
}): boolean => {
|
|
28
20
|
if (account.currency.family === "evm") {
|
|
29
|
-
return isEditableOperationEvm(account, operation
|
|
21
|
+
return isEditableOperationEvm(account, operation);
|
|
30
22
|
}
|
|
31
23
|
|
|
32
24
|
return false;
|
|
@@ -66,7 +58,7 @@ export const getStuckAccountAndOperation = (
|
|
|
66
58
|
const mainAccount = getMainAccount(account, parentAccount);
|
|
67
59
|
|
|
68
60
|
if (mainAccount.currency.family === "evm") {
|
|
69
|
-
return getStuckAccountAndOperationEvm(account, parentAccount
|
|
61
|
+
return getStuckAccountAndOperationEvm(account, parentAccount);
|
|
70
62
|
}
|
|
71
63
|
|
|
72
64
|
return undefined;
|
package/src/react.tsx
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { CryptoCurrency, TokenCurrency } from "@ledgerhq/types-cryptoassets";
|
|
3
|
+
import * as icons from "@ledgerhq/crypto-icons-ui/react";
|
|
4
|
+
import { inferCryptoCurrencyIcon } from "./currencies/cryptoIcons";
|
|
5
|
+
|
|
6
|
+
type Icon = React.ComponentType<{
|
|
7
|
+
size: number;
|
|
8
|
+
color?: string;
|
|
9
|
+
}>;
|
|
10
|
+
|
|
11
|
+
const polyfillMappingCache = new WeakMap<Icon, Icon>();
|
|
12
|
+
/**
|
|
13
|
+
* thin wrapper from the crypto-icons lib to the format expected by ledger-live-common
|
|
14
|
+
* @deprecated prefer using @ledgerhq/crypto-icons-ui directly + mapping provided by @ledgerhq/live-common/currencies/cryptoIcons
|
|
15
|
+
*/
|
|
16
|
+
function polyfillIconComponent(IconComponent: Icon | null | undefined): Icon | null | undefined {
|
|
17
|
+
if (!IconComponent) return IconComponent;
|
|
18
|
+
if (polyfillMappingCache.has(IconComponent)) return polyfillMappingCache.get(IconComponent);
|
|
19
|
+
const PolyfillIconComponent = (props: { size: number; color?: string }) =>
|
|
20
|
+
props.color === undefined ? (
|
|
21
|
+
// in the previous behavior, we were fallbacking on "currentColor"
|
|
22
|
+
// if you need this behavior, it will be preferrable to explicit set it. as we will drop this polyfill implementation.
|
|
23
|
+
<IconComponent {...props} color="currentColor" />
|
|
24
|
+
) : (
|
|
25
|
+
<IconComponent {...props} />
|
|
26
|
+
);
|
|
27
|
+
polyfillMappingCache.set(IconComponent, PolyfillIconComponent);
|
|
28
|
+
return PolyfillIconComponent;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* @deprecated prefer using @ledgerhq/crypto-icons-ui directly + mapping provided by @ledgerhq/live-common/currencies/cryptoIcons
|
|
33
|
+
*/
|
|
34
|
+
export function getCryptoCurrencyIcon(currency: CryptoCurrency): Icon | null | undefined {
|
|
35
|
+
return polyfillIconComponent(inferCryptoCurrencyIcon(icons, currency));
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* @deprecated prefer using @ledgerhq/crypto-icons-ui directly + mapping provided by @ledgerhq/live-common/currencies/cryptoIcons
|
|
40
|
+
*/
|
|
41
|
+
export function getTokenCurrencyIcon(token: TokenCurrency): Icon | null | undefined {
|
|
42
|
+
return polyfillIconComponent(inferCryptoCurrencyIcon(icons, token));
|
|
43
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import * as icons from "@ledgerhq/crypto-icons-ui/native";
|
|
3
|
+
import type { CryptoCurrency, TokenCurrency } from "@ledgerhq/types-cryptoassets";
|
|
4
|
+
import { inferCryptoCurrencyIcon } from "./currencies/cryptoIcons";
|
|
5
|
+
|
|
6
|
+
type Icon = React.ComponentType<{
|
|
7
|
+
size: number;
|
|
8
|
+
color: string;
|
|
9
|
+
}>;
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* @deprecated prefer using @ledgerhq/crypto-icons-ui directly + mapping provided by @ledgerhq/live-common/currencies/cryptoIcons
|
|
13
|
+
*/
|
|
14
|
+
export function getCryptoCurrencyIcon(currency: CryptoCurrency): Icon | null | undefined {
|
|
15
|
+
return inferCryptoCurrencyIcon(icons, currency);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* @deprecated prefer using @ledgerhq/crypto-icons-ui directly + mapping provided by @ledgerhq/live-common/currencies/cryptoIcons
|
|
20
|
+
*/
|
|
21
|
+
export function getTokenCurrencyIcon(token: TokenCurrency): Icon | null | undefined {
|
|
22
|
+
return inferCryptoCurrencyIcon(icons, token);
|
|
23
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
declare module "react-native-svg" {
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
|
|
4
|
+
export default class Svg extends React.Component<any, any> {}
|
|
5
|
+
export class Path extends React.Component<any, any> {}
|
|
6
|
+
export class Rect extends React.Component<any, any> {}
|
|
7
|
+
export class Text extends React.Component<any, any> {}
|
|
8
|
+
export class Defs extends React.Component<any, any> {}
|
|
9
|
+
export class ClipPath extends React.Component<any, any> {}
|
|
10
|
+
export class G extends React.Component<any, any> {}
|
|
11
|
+
export class Stop extends React.Component<any, any> {}
|
|
12
|
+
export class Mask extends React.Component<any, any> {}
|
|
13
|
+
export class LinearGradient extends React.Component<any, any> {}
|
|
14
|
+
export class Ellipse extends React.Component<any, any> {}
|
|
15
|
+
export class Circle extends React.Component<any, any> {}
|
|
16
|
+
export class Polygon extends React.Component<any, any> {}
|
|
17
|
+
export class Polyline extends React.Component<any, any> {}
|
|
18
|
+
export class Line extends React.Component<any, any> {}
|
|
19
|
+
}
|
|
@@ -29,27 +29,15 @@ interface JsonRpcRequestMessage<TParams = any> {
|
|
|
29
29
|
params?: TParams;
|
|
30
30
|
}
|
|
31
31
|
|
|
32
|
-
const
|
|
33
|
-
|
|
34
|
-
InvalidRequest: -32600,
|
|
35
|
-
MethodNotFound: -32601,
|
|
36
|
-
InvalidParams: -32602,
|
|
37
|
-
InternalError: -32603,
|
|
38
|
-
UserRejected: 4001,
|
|
39
|
-
Unauthorized: 4100,
|
|
40
|
-
UnsupportedMethod: 4200,
|
|
41
|
-
Disconnected: 4900,
|
|
42
|
-
ChainDisconnected: 4901,
|
|
43
|
-
} as const;
|
|
44
|
-
|
|
45
|
-
const rejectedError = (code: number, message: string, data: object = {}) => ({
|
|
46
|
-
code,
|
|
32
|
+
const rejectedError = (message: string) => ({
|
|
33
|
+
code: 3,
|
|
47
34
|
message,
|
|
48
|
-
data:
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
35
|
+
data: [
|
|
36
|
+
{
|
|
37
|
+
code: 104,
|
|
38
|
+
message: "Rejected",
|
|
39
|
+
},
|
|
40
|
+
],
|
|
53
41
|
});
|
|
54
42
|
|
|
55
43
|
// TODO remove any usage
|
|
@@ -343,7 +331,7 @@ export function useDappLogic({
|
|
|
343
331
|
JSON.stringify({
|
|
344
332
|
id: data.id,
|
|
345
333
|
jsonrpc: "2.0",
|
|
346
|
-
error: rejectedError(
|
|
334
|
+
error: rejectedError("No network selected"),
|
|
347
335
|
}),
|
|
348
336
|
);
|
|
349
337
|
return;
|
|
@@ -355,7 +343,7 @@ export function useDappLogic({
|
|
|
355
343
|
JSON.stringify({
|
|
356
344
|
id: data.id,
|
|
357
345
|
jsonrpc: "2.0",
|
|
358
|
-
error: rejectedError(
|
|
346
|
+
error: rejectedError("No account selected"),
|
|
359
347
|
}),
|
|
360
348
|
);
|
|
361
349
|
return;
|
|
@@ -367,7 +355,7 @@ export function useDappLogic({
|
|
|
367
355
|
JSON.stringify({
|
|
368
356
|
id: data.id,
|
|
369
357
|
jsonrpc: "2.0",
|
|
370
|
-
error: rejectedError(
|
|
358
|
+
error: rejectedError("No parent account found"),
|
|
371
359
|
}),
|
|
372
360
|
);
|
|
373
361
|
return;
|
|
@@ -422,7 +410,7 @@ export function useDappLogic({
|
|
|
422
410
|
JSON.stringify({
|
|
423
411
|
id: data.id,
|
|
424
412
|
jsonrpc: "2.0",
|
|
425
|
-
error: rejectedError(
|
|
413
|
+
error: rejectedError("Invalid chainId"),
|
|
426
414
|
}),
|
|
427
415
|
);
|
|
428
416
|
break;
|
|
@@ -438,7 +426,7 @@ export function useDappLogic({
|
|
|
438
426
|
JSON.stringify({
|
|
439
427
|
id: data.id,
|
|
440
428
|
jsonrpc: "2.0",
|
|
441
|
-
error: rejectedError(
|
|
429
|
+
error: rejectedError(`Chain ID ${chainId} is not supported`),
|
|
442
430
|
}),
|
|
443
431
|
);
|
|
444
432
|
break;
|
|
@@ -471,7 +459,7 @@ export function useDappLogic({
|
|
|
471
459
|
JSON.stringify({
|
|
472
460
|
id: data.id,
|
|
473
461
|
jsonrpc: "2.0",
|
|
474
|
-
error: rejectedError(
|
|
462
|
+
error: rejectedError(`error switching chain: ${error}`),
|
|
475
463
|
}),
|
|
476
464
|
);
|
|
477
465
|
}
|
|
@@ -567,13 +555,13 @@ export function useDappLogic({
|
|
|
567
555
|
result: optimisticOperation.hash,
|
|
568
556
|
}),
|
|
569
557
|
);
|
|
570
|
-
} catch {
|
|
558
|
+
} catch (error) {
|
|
571
559
|
tracking.dappSendTransactionFail(manifest, trackingData);
|
|
572
560
|
postMessage(
|
|
573
561
|
JSON.stringify({
|
|
574
562
|
id: data.id,
|
|
575
563
|
jsonrpc: "2.0",
|
|
576
|
-
error: rejectedError(
|
|
564
|
+
error: rejectedError("Transaction declined"),
|
|
577
565
|
}),
|
|
578
566
|
);
|
|
579
567
|
}
|
|
@@ -621,13 +609,13 @@ export function useDappLogic({
|
|
|
621
609
|
result: signedMessage,
|
|
622
610
|
}),
|
|
623
611
|
);
|
|
624
|
-
} catch {
|
|
612
|
+
} catch (error) {
|
|
625
613
|
tracking.dappPersonalSignFail(manifest);
|
|
626
614
|
postMessage(
|
|
627
615
|
JSON.stringify({
|
|
628
616
|
id: data.id,
|
|
629
617
|
jsonrpc: "2.0",
|
|
630
|
-
error: rejectedError(
|
|
618
|
+
error: rejectedError("Personal message signed declined"),
|
|
631
619
|
}),
|
|
632
620
|
);
|
|
633
621
|
}
|
|
@@ -668,13 +656,13 @@ export function useDappLogic({
|
|
|
668
656
|
result: signedMessage,
|
|
669
657
|
}),
|
|
670
658
|
);
|
|
671
|
-
} catch {
|
|
659
|
+
} catch (error) {
|
|
672
660
|
tracking.dappSignTypedDataFail(manifest);
|
|
673
661
|
postMessage(
|
|
674
662
|
JSON.stringify({
|
|
675
663
|
id: data.id,
|
|
676
664
|
jsonrpc: "2.0",
|
|
677
|
-
error: rejectedError(
|
|
665
|
+
error: rejectedError("Typed Data message signed declined"),
|
|
678
666
|
}),
|
|
679
667
|
);
|
|
680
668
|
}
|
|
@@ -5,7 +5,7 @@ export function extractDappURLFromManifest(manifest: LiveAppManifest): URL | und
|
|
|
5
5
|
try {
|
|
6
6
|
const url = new URL(manifest.params.dappUrl);
|
|
7
7
|
return url;
|
|
8
|
-
} catch {
|
|
8
|
+
} catch (error) {
|
|
9
9
|
// Invalid URL
|
|
10
10
|
return undefined;
|
|
11
11
|
}
|
|
@@ -19,7 +19,7 @@ export function extractDappURLFromManifest(manifest: LiveAppManifest): URL | und
|
|
|
19
19
|
try {
|
|
20
20
|
const url = new URL(manifest.params.dappURL);
|
|
21
21
|
return url;
|
|
22
|
-
} catch {
|
|
22
|
+
} catch (error) {
|
|
23
23
|
// Invalid URL
|
|
24
24
|
return undefined;
|
|
25
25
|
}
|
|
@@ -31,7 +31,7 @@ export function extractDappURLFromManifest(manifest: LiveAppManifest): URL | und
|
|
|
31
31
|
}
|
|
32
32
|
const url = new URL(manifest.url);
|
|
33
33
|
return url;
|
|
34
|
-
} catch {
|
|
34
|
+
} catch (error) {
|
|
35
35
|
// Invalid URL
|
|
36
36
|
return undefined;
|
|
37
37
|
}
|
|
@@ -11,12 +11,12 @@ export default function getEnvironmentParams(
|
|
|
11
11
|
): EnvironmentParams {
|
|
12
12
|
return {
|
|
13
13
|
cloudSyncApiBaseUrl:
|
|
14
|
-
environment && environment === "
|
|
15
|
-
? getEnv("
|
|
16
|
-
: getEnv("
|
|
14
|
+
environment && environment === "PROD"
|
|
15
|
+
? getEnv("CLOUD_SYNC_API_PROD")
|
|
16
|
+
: getEnv("CLOUD_SYNC_API_STAGING"),
|
|
17
17
|
trustchainApiBaseUrl:
|
|
18
|
-
environment && environment === "
|
|
19
|
-
? getEnv("
|
|
20
|
-
: getEnv("
|
|
18
|
+
environment && environment === "PROD"
|
|
19
|
+
? getEnv("TRUSTCHAIN_API_PROD")
|
|
20
|
+
: getEnv("TRUSTCHAIN_API_STAGING"),
|
|
21
21
|
};
|
|
22
22
|
}
|