@ledgerhq/live-common 34.47.0 → 34.48.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/bridge/crypto-assets/cal-integration.d.ts +4 -0
- package/lib/bridge/crypto-assets/cal-integration.d.ts.map +1 -0
- package/lib/bridge/crypto-assets/cal-integration.js +26 -0
- package/lib/bridge/crypto-assets/cal-integration.js.map +1 -0
- package/lib/bridge/crypto-assets/cal-integration.test.d.ts +2 -0
- package/lib/bridge/crypto-assets/cal-integration.test.d.ts.map +1 -0
- package/lib/bridge/crypto-assets/cal-integration.test.js +45 -0
- package/lib/bridge/crypto-assets/cal-integration.test.js.map +1 -0
- package/lib/bridge/crypto-assets/cal-store.d.ts +14 -0
- package/lib/bridge/crypto-assets/cal-store.d.ts.map +1 -0
- package/lib/bridge/crypto-assets/cal-store.js +58 -0
- package/lib/bridge/crypto-assets/cal-store.js.map +1 -0
- package/lib/bridge/crypto-assets/cal-store.test.d.ts +2 -0
- package/lib/bridge/crypto-assets/cal-store.test.d.ts.map +1 -0
- package/lib/bridge/crypto-assets/cal-store.test.js +70 -0
- package/lib/bridge/crypto-assets/cal-store.test.js.map +1 -0
- package/lib/bridge/crypto-assets/index.d.ts.map +1 -1
- package/lib/bridge/crypto-assets/index.js +4 -0
- package/lib/bridge/crypto-assets/index.js.map +1 -1
- package/lib/bridge/crypto-assets/index.test.js +36 -0
- package/lib/bridge/crypto-assets/index.test.js.map +1 -1
- package/lib/bridge/generic-alpaca/alpaca/index.d.ts.map +1 -1
- package/lib/bridge/generic-alpaca/alpaca/index.js +6 -1
- package/lib/bridge/generic-alpaca/alpaca/index.js.map +1 -1
- package/lib/bridge/generic-alpaca/alpaca/index.unit.test.d.ts +2 -0
- package/lib/bridge/generic-alpaca/alpaca/index.unit.test.d.ts.map +1 -0
- package/lib/bridge/generic-alpaca/alpaca/index.unit.test.js +89 -0
- package/lib/bridge/generic-alpaca/alpaca/index.unit.test.js.map +1 -0
- package/lib/bridge/generic-alpaca/alpaca/network/network-alpaca.js +1 -1
- package/lib/bridge/generic-alpaca/alpaca/network/network-alpaca.js.map +1 -1
- package/lib/bridge/generic-alpaca/buildSubAccounts.d.ts +2 -3
- package/lib/bridge/generic-alpaca/buildSubAccounts.d.ts.map +1 -1
- package/lib/bridge/generic-alpaca/buildSubAccounts.js +4 -14
- package/lib/bridge/generic-alpaca/buildSubAccounts.js.map +1 -1
- package/lib/bridge/generic-alpaca/getAccountShape.d.ts.map +1 -1
- package/lib/bridge/generic-alpaca/getAccountShape.js +4 -4
- 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 +0 -1
- package/lib/bridge/generic-alpaca/getTransactionStatus.js.map +1 -1
- package/lib/bridge/generic-alpaca/prepareTransaction.d.ts +14 -3
- package/lib/bridge/generic-alpaca/prepareTransaction.d.ts.map +1 -1
- package/lib/bridge/generic-alpaca/prepareTransaction.js +21 -5
- package/lib/bridge/generic-alpaca/prepareTransaction.js.map +1 -1
- package/lib/bridge/generic-alpaca/utils.d.ts.map +1 -1
- package/lib/bridge/generic-alpaca/utils.js +6 -5
- package/lib/bridge/generic-alpaca/utils.js.map +1 -1
- package/lib/bridge/generic-alpaca/utils.test.d.ts.map +1 -0
- package/lib/bridge/generic-alpaca/utils.test.js +123 -0
- package/lib/bridge/generic-alpaca/utils.test.js.map +1 -0
- package/lib/e2e/enum/DeviceLabels.d.ts +9 -6
- package/lib/e2e/enum/DeviceLabels.d.ts.map +1 -1
- package/lib/e2e/enum/DeviceLabels.js +8 -5
- package/lib/e2e/enum/DeviceLabels.js.map +1 -1
- package/lib/e2e/families/tezos.d.ts.map +1 -1
- package/lib/e2e/families/tezos.js +2 -0
- package/lib/e2e/families/tezos.js.map +1 -1
- package/lib/e2e/index.d.ts +6 -6
- package/lib/e2e/index.d.ts.map +1 -1
- package/lib/e2e/speculos.d.ts +2 -1
- package/lib/e2e/speculos.d.ts.map +1 -1
- package/lib/e2e/speculos.js +25 -17
- package/lib/e2e/speculos.js.map +1 -1
- package/lib/env.react.d.ts +1 -1
- package/lib/env.react.d.ts.map +1 -1
- package/lib/exchange/platform/transfer/completeExchange.d.ts.map +1 -1
- package/lib/exchange/platform/transfer/completeExchange.js +3 -5
- package/lib/exchange/platform/transfer/completeExchange.js.map +1 -1
- package/lib/exchange/swap/completeExchange.d.ts.map +1 -1
- package/lib/exchange/swap/completeExchange.js +5 -2
- package/lib/exchange/swap/completeExchange.js.map +1 -1
- package/lib/exchange/swap/initSwap.d.ts.map +1 -1
- package/lib/exchange/swap/initSwap.js +5 -2
- package/lib/exchange/swap/initSwap.js.map +1 -1
- package/lib/families/canton/config.d.ts.map +1 -1
- package/lib/families/canton/config.js +4 -0
- package/lib/families/canton/config.js.map +1 -1
- package/lib/families/solana/setup.d.ts.map +1 -1
- package/lib/families/solana/setup.js +9 -0
- package/lib/families/solana/setup.js.map +1 -1
- package/lib/featureFlags/defaultFeatures.d.ts.map +1 -1
- package/lib/featureFlags/defaultFeatures.js +1 -2
- 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/modularDrawer/__mocks__/dada.mock.d.ts +3336 -0
- package/lib/modularDrawer/__mocks__/dada.mock.d.ts.map +1 -0
- package/lib/modularDrawer/__mocks__/dada.mock.js +3879 -0
- package/lib/modularDrawer/__mocks__/dada.mock.js.map +1 -0
- package/lib/modularDrawer/data/entities/interestRateSelectors.d.ts +16 -0
- package/lib/modularDrawer/data/entities/interestRateSelectors.d.ts.map +1 -0
- package/lib/modularDrawer/data/entities/interestRateSelectors.js +21 -0
- package/lib/modularDrawer/data/entities/interestRateSelectors.js.map +1 -0
- package/lib/modularDrawer/data/state-manager/api.d.ts +727 -37
- package/lib/modularDrawer/data/state-manager/api.d.ts.map +1 -1
- package/lib/modularDrawer/data/state-manager/api.js +38 -17
- package/lib/modularDrawer/data/state-manager/api.js.map +1 -1
- package/lib/modularDrawer/data/state-manager/types.d.ts +24 -0
- package/lib/modularDrawer/data/state-manager/types.d.ts.map +1 -0
- package/lib/modularDrawer/data/state-manager/types.js +13 -0
- package/lib/modularDrawer/data/state-manager/types.js.map +1 -0
- package/lib/modularDrawer/hooks/__test__/useAssetsData.test.js +134 -78
- package/lib/modularDrawer/hooks/__test__/useAssetsData.test.js.map +1 -1
- package/lib/modularDrawer/hooks/modules/useLeftApyModule.d.ts +3 -3
- package/lib/modularDrawer/hooks/modules/useLeftApyModule.d.ts.map +1 -1
- package/lib/modularDrawer/hooks/modules/useLeftApyModule.js +43 -10
- package/lib/modularDrawer/hooks/modules/useLeftApyModule.js.map +1 -1
- package/lib/modularDrawer/hooks/{modules/useAssetAccountCounts.d.ts → useAssetAccountCounts.d.ts} +1 -1
- package/lib/modularDrawer/hooks/useAssetAccountCounts.d.ts.map +1 -0
- package/lib/modularDrawer/hooks/{modules/useAssetAccountCounts.js → useAssetAccountCounts.js} +1 -1
- package/lib/modularDrawer/hooks/useAssetAccountCounts.js.map +1 -0
- package/lib/modularDrawer/hooks/useAssetsData.d.ts +10 -6
- package/lib/modularDrawer/hooks/useAssetsData.d.ts.map +1 -1
- package/lib/modularDrawer/hooks/useAssetsData.js +40 -17
- package/lib/modularDrawer/hooks/useAssetsData.js.map +1 -1
- package/lib/modularDrawer/hooks/useInterestRatesByCurrencies.d.ts +3 -0
- package/lib/modularDrawer/hooks/useInterestRatesByCurrencies.d.ts.map +1 -0
- package/lib/modularDrawer/hooks/useInterestRatesByCurrencies.js +23 -0
- package/lib/modularDrawer/hooks/useInterestRatesByCurrencies.js.map +1 -0
- package/lib/modularDrawer/hooks/useLeftAccounts.d.ts +13 -0
- package/lib/modularDrawer/hooks/useLeftAccounts.d.ts.map +1 -0
- package/lib/modularDrawer/hooks/useLeftAccounts.js +15 -0
- package/lib/modularDrawer/hooks/useLeftAccounts.js.map +1 -0
- package/lib/modularDrawer/hooks/useLeftAccountsApy.d.ts +4 -0
- package/lib/modularDrawer/hooks/useLeftAccountsApy.d.ts.map +1 -0
- package/lib/modularDrawer/hooks/useLeftAccountsApy.js +30 -0
- package/lib/modularDrawer/hooks/useLeftAccountsApy.js.map +1 -0
- package/lib/modularDrawer/hooks/useRightBalanceAsset.d.ts +57 -0
- package/lib/modularDrawer/hooks/useRightBalanceAsset.d.ts.map +1 -0
- package/lib/modularDrawer/hooks/useRightBalanceAsset.js +87 -0
- package/lib/modularDrawer/hooks/useRightBalanceAsset.js.map +1 -0
- package/lib/modularDrawer/hooks/useRightBalanceNetwork.d.ts +63 -0
- package/lib/modularDrawer/hooks/useRightBalanceNetwork.d.ts.map +1 -0
- package/lib/modularDrawer/hooks/useRightBalanceNetwork.js +66 -0
- package/lib/modularDrawer/hooks/useRightBalanceNetwork.js.map +1 -0
- package/lib/modularDrawer/modules/createAssetConfiguration.d.ts +4 -0
- package/lib/modularDrawer/modules/createAssetConfiguration.d.ts.map +1 -0
- package/lib/modularDrawer/modules/createAssetConfiguration.js +41 -0
- package/lib/modularDrawer/modules/createAssetConfiguration.js.map +1 -0
- package/lib/modularDrawer/modules/createNetworkConfiguration.d.ts +6 -0
- package/lib/modularDrawer/modules/createNetworkConfiguration.d.ts.map +1 -0
- package/lib/modularDrawer/modules/createNetworkConfiguration.js +54 -0
- package/lib/modularDrawer/modules/createNetworkConfiguration.js.map +1 -0
- package/lib/modularDrawer/utils/__tests__/getInterestRateForAsset.test.d.ts +2 -0
- package/lib/modularDrawer/utils/__tests__/getInterestRateForAsset.test.d.ts.map +1 -0
- package/lib/modularDrawer/utils/__tests__/getInterestRateForAsset.test.js +36 -0
- package/lib/modularDrawer/utils/__tests__/getInterestRateForAsset.test.js.map +1 -0
- package/lib/modularDrawer/utils/buildProviderCurrenciesMap.d.ts +9 -0
- package/lib/modularDrawer/utils/buildProviderCurrenciesMap.d.ts.map +1 -0
- package/lib/modularDrawer/utils/buildProviderCurrenciesMap.js +17 -0
- package/lib/modularDrawer/utils/buildProviderCurrenciesMap.js.map +1 -0
- package/lib/modularDrawer/utils/getInterestRateForAsset.d.ts +13 -0
- package/lib/modularDrawer/utils/getInterestRateForAsset.d.ts.map +1 -0
- package/lib/modularDrawer/utils/getInterestRateForAsset.js +20 -0
- package/lib/modularDrawer/utils/getInterestRateForAsset.js.map +1 -0
- package/lib/modularDrawer/utils/getLoadingStatus.d.ts +9 -0
- package/lib/modularDrawer/utils/getLoadingStatus.d.ts.map +1 -0
- package/lib/modularDrawer/utils/getLoadingStatus.js +18 -0
- package/lib/modularDrawer/utils/getLoadingStatus.js.map +1 -0
- package/lib/modularDrawer/utils/sortByBalance.d.ts +6 -0
- package/lib/modularDrawer/utils/sortByBalance.d.ts.map +1 -0
- package/lib/modularDrawer/utils/sortByBalance.js +32 -0
- package/lib/modularDrawer/utils/sortByBalance.js.map +1 -0
- package/lib/modularDrawer/utils/type.d.ts +90 -1
- package/lib/modularDrawer/utils/type.d.ts.map +1 -1
- package/lib/wallet-api/Exchange/server.js +2 -2
- package/lib/wallet-api/Exchange/server.js.map +1 -1
- package/lib/wallet-api/ModularDrawer/types.d.ts +6 -6
- package/lib/wallet-api/ModularDrawer/types.d.ts.map +1 -1
- package/lib/wallet-api/ModularDrawer/types.js +1 -1
- package/lib/wallet-api/ModularDrawer/types.js.map +1 -1
- package/lib/wallet-api/react.d.ts +2 -0
- package/lib/wallet-api/react.d.ts.map +1 -1
- package/lib/wallet-api/react.js +3 -1
- package/lib/wallet-api/react.js.map +1 -1
- package/lib-es/bridge/crypto-assets/cal-integration.d.ts +4 -0
- package/lib-es/bridge/crypto-assets/cal-integration.d.ts.map +1 -0
- package/lib-es/bridge/crypto-assets/cal-integration.js +21 -0
- package/lib-es/bridge/crypto-assets/cal-integration.js.map +1 -0
- package/lib-es/bridge/crypto-assets/cal-integration.test.d.ts +2 -0
- package/lib-es/bridge/crypto-assets/cal-integration.test.d.ts.map +1 -0
- package/lib-es/bridge/crypto-assets/cal-integration.test.js +43 -0
- package/lib-es/bridge/crypto-assets/cal-integration.test.js.map +1 -0
- package/lib-es/bridge/crypto-assets/cal-store.d.ts +14 -0
- package/lib-es/bridge/crypto-assets/cal-store.d.ts.map +1 -0
- package/lib-es/bridge/crypto-assets/cal-store.js +54 -0
- package/lib-es/bridge/crypto-assets/cal-store.js.map +1 -0
- package/lib-es/bridge/crypto-assets/cal-store.test.d.ts +2 -0
- package/lib-es/bridge/crypto-assets/cal-store.test.d.ts.map +1 -0
- package/lib-es/bridge/crypto-assets/cal-store.test.js +68 -0
- package/lib-es/bridge/crypto-assets/cal-store.test.js.map +1 -0
- package/lib-es/bridge/crypto-assets/index.d.ts.map +1 -1
- package/lib-es/bridge/crypto-assets/index.js +4 -0
- package/lib-es/bridge/crypto-assets/index.js.map +1 -1
- package/lib-es/bridge/crypto-assets/index.test.js +36 -0
- package/lib-es/bridge/crypto-assets/index.test.js.map +1 -1
- package/lib-es/bridge/generic-alpaca/alpaca/index.d.ts.map +1 -1
- package/lib-es/bridge/generic-alpaca/alpaca/index.js +6 -1
- package/lib-es/bridge/generic-alpaca/alpaca/index.js.map +1 -1
- package/lib-es/bridge/generic-alpaca/alpaca/index.unit.test.d.ts +2 -0
- package/lib-es/bridge/generic-alpaca/alpaca/index.unit.test.d.ts.map +1 -0
- package/lib-es/bridge/generic-alpaca/alpaca/index.unit.test.js +64 -0
- package/lib-es/bridge/generic-alpaca/alpaca/index.unit.test.js.map +1 -0
- package/lib-es/bridge/generic-alpaca/alpaca/network/network-alpaca.js +1 -1
- package/lib-es/bridge/generic-alpaca/alpaca/network/network-alpaca.js.map +1 -1
- package/lib-es/bridge/generic-alpaca/buildSubAccounts.d.ts +2 -3
- package/lib-es/bridge/generic-alpaca/buildSubAccounts.d.ts.map +1 -1
- package/lib-es/bridge/generic-alpaca/buildSubAccounts.js +4 -12
- package/lib-es/bridge/generic-alpaca/buildSubAccounts.js.map +1 -1
- package/lib-es/bridge/generic-alpaca/getAccountShape.d.ts.map +1 -1
- package/lib-es/bridge/generic-alpaca/getAccountShape.js +3 -3
- 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 +0 -1
- package/lib-es/bridge/generic-alpaca/getTransactionStatus.js.map +1 -1
- package/lib-es/bridge/generic-alpaca/prepareTransaction.d.ts +14 -3
- package/lib-es/bridge/generic-alpaca/prepareTransaction.d.ts.map +1 -1
- package/lib-es/bridge/generic-alpaca/prepareTransaction.js +21 -5
- package/lib-es/bridge/generic-alpaca/prepareTransaction.js.map +1 -1
- package/lib-es/bridge/generic-alpaca/utils.d.ts.map +1 -1
- package/lib-es/bridge/generic-alpaca/utils.js +6 -5
- package/lib-es/bridge/generic-alpaca/utils.js.map +1 -1
- package/lib-es/bridge/generic-alpaca/utils.test.d.ts.map +1 -0
- package/lib-es/bridge/generic-alpaca/utils.test.js +118 -0
- package/lib-es/bridge/generic-alpaca/utils.test.js.map +1 -0
- package/lib-es/e2e/enum/DeviceLabels.d.ts +9 -6
- package/lib-es/e2e/enum/DeviceLabels.d.ts.map +1 -1
- package/lib-es/e2e/enum/DeviceLabels.js +8 -5
- package/lib-es/e2e/enum/DeviceLabels.js.map +1 -1
- package/lib-es/e2e/families/tezos.d.ts.map +1 -1
- package/lib-es/e2e/families/tezos.js +2 -0
- package/lib-es/e2e/families/tezos.js.map +1 -1
- package/lib-es/e2e/index.d.ts +6 -6
- package/lib-es/e2e/index.d.ts.map +1 -1
- package/lib-es/e2e/speculos.d.ts +2 -1
- package/lib-es/e2e/speculos.d.ts.map +1 -1
- package/lib-es/e2e/speculos.js +23 -16
- package/lib-es/e2e/speculos.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/platform/transfer/completeExchange.d.ts.map +1 -1
- package/lib-es/exchange/platform/transfer/completeExchange.js +3 -2
- package/lib-es/exchange/platform/transfer/completeExchange.js.map +1 -1
- package/lib-es/exchange/swap/completeExchange.d.ts.map +1 -1
- package/lib-es/exchange/swap/completeExchange.js +5 -2
- package/lib-es/exchange/swap/completeExchange.js.map +1 -1
- package/lib-es/exchange/swap/initSwap.d.ts.map +1 -1
- package/lib-es/exchange/swap/initSwap.js +5 -2
- package/lib-es/exchange/swap/initSwap.js.map +1 -1
- package/lib-es/families/canton/config.d.ts.map +1 -1
- package/lib-es/families/canton/config.js +4 -0
- package/lib-es/families/canton/config.js.map +1 -1
- package/lib-es/families/solana/setup.d.ts.map +1 -1
- package/lib-es/families/solana/setup.js +9 -0
- package/lib-es/families/solana/setup.js.map +1 -1
- package/lib-es/featureFlags/defaultFeatures.d.ts.map +1 -1
- package/lib-es/featureFlags/defaultFeatures.js +1 -2
- 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/modularDrawer/__mocks__/dada.mock.d.ts +3336 -0
- package/lib-es/modularDrawer/__mocks__/dada.mock.d.ts.map +1 -0
- package/lib-es/modularDrawer/__mocks__/dada.mock.js +3876 -0
- package/lib-es/modularDrawer/__mocks__/dada.mock.js.map +1 -0
- package/lib-es/modularDrawer/data/entities/interestRateSelectors.d.ts +16 -0
- package/lib-es/modularDrawer/data/entities/interestRateSelectors.d.ts.map +1 -0
- package/lib-es/modularDrawer/data/entities/interestRateSelectors.js +18 -0
- package/lib-es/modularDrawer/data/entities/interestRateSelectors.js.map +1 -0
- package/lib-es/modularDrawer/data/state-manager/api.d.ts +727 -37
- package/lib-es/modularDrawer/data/state-manager/api.d.ts.map +1 -1
- package/lib-es/modularDrawer/data/state-manager/api.js +35 -14
- package/lib-es/modularDrawer/data/state-manager/api.js.map +1 -1
- package/lib-es/modularDrawer/data/state-manager/types.d.ts +24 -0
- package/lib-es/modularDrawer/data/state-manager/types.d.ts.map +1 -0
- package/lib-es/modularDrawer/data/state-manager/types.js +10 -0
- package/lib-es/modularDrawer/data/state-manager/types.js.map +1 -0
- package/lib-es/modularDrawer/hooks/__test__/useAssetsData.test.js +135 -79
- package/lib-es/modularDrawer/hooks/__test__/useAssetsData.test.js.map +1 -1
- package/lib-es/modularDrawer/hooks/modules/useLeftApyModule.d.ts +3 -3
- package/lib-es/modularDrawer/hooks/modules/useLeftApyModule.d.ts.map +1 -1
- package/lib-es/modularDrawer/hooks/modules/useLeftApyModule.js +21 -8
- package/lib-es/modularDrawer/hooks/modules/useLeftApyModule.js.map +1 -1
- package/lib-es/modularDrawer/hooks/{modules/useAssetAccountCounts.d.ts → useAssetAccountCounts.d.ts} +1 -1
- package/lib-es/modularDrawer/hooks/useAssetAccountCounts.d.ts.map +1 -0
- package/lib-es/modularDrawer/hooks/{modules/useAssetAccountCounts.js → useAssetAccountCounts.js} +1 -1
- package/lib-es/modularDrawer/hooks/useAssetAccountCounts.js.map +1 -0
- package/lib-es/modularDrawer/hooks/useAssetsData.d.ts +10 -6
- package/lib-es/modularDrawer/hooks/useAssetsData.d.ts.map +1 -1
- package/lib-es/modularDrawer/hooks/useAssetsData.js +42 -19
- package/lib-es/modularDrawer/hooks/useAssetsData.js.map +1 -1
- package/lib-es/modularDrawer/hooks/useInterestRatesByCurrencies.d.ts +3 -0
- package/lib-es/modularDrawer/hooks/useInterestRatesByCurrencies.d.ts.map +1 -0
- package/lib-es/modularDrawer/hooks/useInterestRatesByCurrencies.js +19 -0
- package/lib-es/modularDrawer/hooks/useInterestRatesByCurrencies.js.map +1 -0
- package/lib-es/modularDrawer/hooks/useLeftAccounts.d.ts +13 -0
- package/lib-es/modularDrawer/hooks/useLeftAccounts.d.ts.map +1 -0
- package/lib-es/modularDrawer/hooks/useLeftAccounts.js +11 -0
- package/lib-es/modularDrawer/hooks/useLeftAccounts.js.map +1 -0
- package/lib-es/modularDrawer/hooks/useLeftAccountsApy.d.ts +4 -0
- package/lib-es/modularDrawer/hooks/useLeftAccountsApy.d.ts.map +1 -0
- package/lib-es/modularDrawer/hooks/useLeftAccountsApy.js +26 -0
- package/lib-es/modularDrawer/hooks/useLeftAccountsApy.js.map +1 -0
- package/lib-es/modularDrawer/hooks/useRightBalanceAsset.d.ts +57 -0
- package/lib-es/modularDrawer/hooks/useRightBalanceAsset.d.ts.map +1 -0
- package/lib-es/modularDrawer/hooks/useRightBalanceAsset.js +83 -0
- package/lib-es/modularDrawer/hooks/useRightBalanceAsset.js.map +1 -0
- package/lib-es/modularDrawer/hooks/useRightBalanceNetwork.d.ts +63 -0
- package/lib-es/modularDrawer/hooks/useRightBalanceNetwork.d.ts.map +1 -0
- package/lib-es/modularDrawer/hooks/useRightBalanceNetwork.js +62 -0
- package/lib-es/modularDrawer/hooks/useRightBalanceNetwork.js.map +1 -0
- package/lib-es/modularDrawer/modules/createAssetConfiguration.d.ts +4 -0
- package/lib-es/modularDrawer/modules/createAssetConfiguration.d.ts.map +1 -0
- package/lib-es/modularDrawer/modules/createAssetConfiguration.js +39 -0
- package/lib-es/modularDrawer/modules/createAssetConfiguration.js.map +1 -0
- package/lib-es/modularDrawer/modules/createNetworkConfiguration.d.ts +6 -0
- package/lib-es/modularDrawer/modules/createNetworkConfiguration.d.ts.map +1 -0
- package/lib-es/modularDrawer/modules/createNetworkConfiguration.js +48 -0
- package/lib-es/modularDrawer/modules/createNetworkConfiguration.js.map +1 -0
- package/lib-es/modularDrawer/utils/__tests__/getInterestRateForAsset.test.d.ts +2 -0
- package/lib-es/modularDrawer/utils/__tests__/getInterestRateForAsset.test.d.ts.map +1 -0
- package/lib-es/modularDrawer/utils/__tests__/getInterestRateForAsset.test.js +34 -0
- package/lib-es/modularDrawer/utils/__tests__/getInterestRateForAsset.test.js.map +1 -0
- package/lib-es/modularDrawer/utils/buildProviderCurrenciesMap.d.ts +9 -0
- package/lib-es/modularDrawer/utils/buildProviderCurrenciesMap.d.ts.map +1 -0
- package/lib-es/modularDrawer/utils/buildProviderCurrenciesMap.js +13 -0
- package/lib-es/modularDrawer/utils/buildProviderCurrenciesMap.js.map +1 -0
- package/lib-es/modularDrawer/utils/getInterestRateForAsset.d.ts +13 -0
- package/lib-es/modularDrawer/utils/getInterestRateForAsset.d.ts.map +1 -0
- package/lib-es/modularDrawer/utils/getInterestRateForAsset.js +16 -0
- package/lib-es/modularDrawer/utils/getInterestRateForAsset.js.map +1 -0
- package/lib-es/modularDrawer/utils/getLoadingStatus.d.ts +9 -0
- package/lib-es/modularDrawer/utils/getLoadingStatus.d.ts.map +1 -0
- package/lib-es/modularDrawer/utils/getLoadingStatus.js +14 -0
- package/lib-es/modularDrawer/utils/getLoadingStatus.js.map +1 -0
- package/lib-es/modularDrawer/utils/sortByBalance.d.ts +6 -0
- package/lib-es/modularDrawer/utils/sortByBalance.d.ts.map +1 -0
- package/lib-es/modularDrawer/utils/sortByBalance.js +25 -0
- package/lib-es/modularDrawer/utils/sortByBalance.js.map +1 -0
- package/lib-es/modularDrawer/utils/type.d.ts +90 -1
- package/lib-es/modularDrawer/utils/type.d.ts.map +1 -1
- package/lib-es/wallet-api/Exchange/server.js +2 -2
- package/lib-es/wallet-api/Exchange/server.js.map +1 -1
- package/lib-es/wallet-api/ModularDrawer/types.d.ts +6 -6
- package/lib-es/wallet-api/ModularDrawer/types.d.ts.map +1 -1
- package/lib-es/wallet-api/ModularDrawer/types.js +1 -1
- package/lib-es/wallet-api/ModularDrawer/types.js.map +1 -1
- package/lib-es/wallet-api/react.d.ts +2 -0
- package/lib-es/wallet-api/react.d.ts.map +1 -1
- package/lib-es/wallet-api/react.js +3 -1
- package/lib-es/wallet-api/react.js.map +1 -1
- package/package.json +41 -41
- package/src/bridge/crypto-assets/cal-integration.test.ts +53 -0
- package/src/bridge/crypto-assets/cal-integration.ts +23 -0
- package/src/bridge/crypto-assets/cal-store.test.ts +93 -0
- package/src/bridge/crypto-assets/cal-store.ts +63 -0
- package/src/bridge/crypto-assets/index.test.ts +47 -0
- package/src/bridge/crypto-assets/index.ts +5 -0
- package/src/bridge/generic-alpaca/alpaca/index.ts +14 -1
- package/src/bridge/generic-alpaca/alpaca/index.unit.test.ts +78 -0
- package/src/bridge/generic-alpaca/alpaca/network/network-alpaca.ts +1 -1
- package/src/bridge/generic-alpaca/buildSubAccounts.ts +5 -14
- package/src/bridge/generic-alpaca/getAccountShape.ts +3 -4
- package/src/bridge/generic-alpaca/getTransactionStatus.ts +0 -1
- package/src/bridge/generic-alpaca/prepareTransaction.ts +44 -17
- package/src/bridge/generic-alpaca/utils.test.ts +133 -0
- package/src/bridge/generic-alpaca/utils.ts +7 -5
- package/src/e2e/enum/DeviceLabels.ts +8 -5
- package/src/e2e/families/tezos.ts +2 -0
- package/src/e2e/speculos.ts +24 -17
- package/src/exchange/platform/transfer/completeExchange.ts +3 -2
- package/src/exchange/swap/completeExchange.ts +5 -2
- package/src/exchange/swap/initSwap.ts +5 -4
- package/src/families/canton/config.ts +5 -0
- package/src/families/hedera/__snapshots__/bridge.integration.test.ts.snap +27 -7
- package/src/families/solana/setup.ts +9 -0
- package/src/featureFlags/defaultFeatures.ts +1 -2
- package/src/modularDrawer/__mocks__/dada.mock.ts +3890 -0
- package/src/modularDrawer/data/entities/interestRateSelectors.ts +39 -0
- package/src/modularDrawer/data/state-manager/api.ts +42 -27
- package/src/modularDrawer/data/state-manager/types.ts +28 -0
- package/src/modularDrawer/hooks/__test__/useAssetsData.test.ts +141 -80
- package/src/modularDrawer/hooks/modules/useLeftApyModule.tsx +27 -9
- package/src/modularDrawer/hooks/{modules/useAssetAccountCounts.tsx → useAssetAccountCounts.tsx} +2 -2
- package/src/modularDrawer/hooks/useAssetsData.ts +59 -22
- package/src/modularDrawer/hooks/useInterestRatesByCurrencies.ts +23 -0
- package/src/modularDrawer/hooks/useLeftAccounts.tsx +23 -0
- package/src/modularDrawer/hooks/useLeftAccountsApy.tsx +44 -0
- package/src/modularDrawer/hooks/useRightBalanceAsset.tsx +140 -0
- package/src/modularDrawer/hooks/useRightBalanceNetwork.tsx +116 -0
- package/src/modularDrawer/modules/createAssetConfiguration.ts +62 -0
- package/src/modularDrawer/modules/createNetworkConfiguration.ts +87 -0
- package/src/modularDrawer/utils/__tests__/getInterestRateForAsset.test.ts +58 -0
- package/src/modularDrawer/utils/buildProviderCurrenciesMap.tsx +25 -0
- package/src/modularDrawer/utils/getInterestRateForAsset.ts +32 -0
- package/src/modularDrawer/utils/getLoadingStatus.ts +24 -0
- package/src/modularDrawer/utils/sortByBalance.tsx +32 -0
- package/src/modularDrawer/utils/type.ts +98 -0
- package/src/wallet-api/Exchange/server.ts +2 -2
- package/src/wallet-api/ModularDrawer/types.ts +1 -1
- package/src/wallet-api/react.ts +5 -1
- package/lib/bridge/generic-alpaca/tests/utils.test.d.ts.map +0 -1
- package/lib/bridge/generic-alpaca/tests/utils.test.js +0 -20
- package/lib/bridge/generic-alpaca/tests/utils.test.js.map +0 -1
- package/lib/modularDrawer/hooks/modules/useAssetAccountCounts.d.ts.map +0 -1
- package/lib/modularDrawer/hooks/modules/useAssetAccountCounts.js.map +0 -1
- package/lib/modularDrawer/types.d.ts +0 -2
- package/lib/modularDrawer/types.d.ts.map +0 -1
- package/lib/modularDrawer/types.js +0 -3
- package/lib/modularDrawer/types.js.map +0 -1
- package/lib-es/bridge/generic-alpaca/tests/utils.test.d.ts.map +0 -1
- package/lib-es/bridge/generic-alpaca/tests/utils.test.js +0 -18
- package/lib-es/bridge/generic-alpaca/tests/utils.test.js.map +0 -1
- package/lib-es/modularDrawer/hooks/modules/useAssetAccountCounts.d.ts.map +0 -1
- package/lib-es/modularDrawer/hooks/modules/useAssetAccountCounts.js.map +0 -1
- package/lib-es/modularDrawer/types.d.ts +0 -2
- package/lib-es/modularDrawer/types.d.ts.map +0 -1
- package/lib-es/modularDrawer/types.js +0 -2
- package/lib-es/modularDrawer/types.js.map +0 -1
- package/src/bridge/generic-alpaca/tests/utils.test.ts +0 -19
- package/src/modularDrawer/types.ts +0 -1
- /package/lib/bridge/generic-alpaca/{tests/utils.test.d.ts → utils.test.d.ts} +0 -0
- /package/lib-es/bridge/generic-alpaca/{tests/utils.test.d.ts → utils.test.d.ts} +0 -0
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"cal-integration.d.ts","sourceRoot":"","sources":["../../../src/bridge/crypto-assets/cal-integration.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAM9D,wBAAgB,uBAAuB,IAAI,OAAO,CAOjD;AAED,wBAAgB,WAAW,IAAI,iBAAiB,CAK/C"}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.getCALStore = exports.isCALIntegrationEnabled = void 0;
|
4
|
+
const live_env_1 = require("@ledgerhq/live-env");
|
5
|
+
const logs_1 = require("@ledgerhq/logs");
|
6
|
+
const cal_store_1 = require("./cal-store");
|
7
|
+
const firebaseFeatureFlags_1 = require("../../featureFlags/firebaseFeatureFlags");
|
8
|
+
let calStoreInstance;
|
9
|
+
function isCALIntegrationEnabled() {
|
10
|
+
try {
|
11
|
+
return !(0, live_env_1.getEnv)("MOCK") && (0, firebaseFeatureFlags_1.isFeature)("calLedgerService");
|
12
|
+
}
|
13
|
+
catch (error) {
|
14
|
+
(0, logs_1.log)("cal", "Error checking CAL integration:", error);
|
15
|
+
return false;
|
16
|
+
}
|
17
|
+
}
|
18
|
+
exports.isCALIntegrationEnabled = isCALIntegrationEnabled;
|
19
|
+
function getCALStore() {
|
20
|
+
if (!calStoreInstance) {
|
21
|
+
calStoreInstance = new cal_store_1.CALStore();
|
22
|
+
}
|
23
|
+
return calStoreInstance;
|
24
|
+
}
|
25
|
+
exports.getCALStore = getCALStore;
|
26
|
+
//# sourceMappingURL=cal-integration.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"cal-integration.js","sourceRoot":"","sources":["../../../src/bridge/crypto-assets/cal-integration.ts"],"names":[],"mappings":";;;AAAA,iDAA4C;AAC5C,yCAAqC;AAErC,2CAAuC;AACvC,kFAAoE;AAEpE,IAAI,gBAAsC,CAAC;AAE3C,SAAgB,uBAAuB;IACrC,IAAI;QACF,OAAO,CAAC,IAAA,iBAAM,EAAC,MAAM,CAAC,IAAI,IAAA,gCAAS,EAAC,kBAAkB,CAAC,CAAC;KACzD;IAAC,OAAO,KAAK,EAAE;QACd,IAAA,UAAG,EAAC,KAAK,EAAE,iCAAiC,EAAE,KAAK,CAAC,CAAC;QACrD,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AAPD,0DAOC;AAED,SAAgB,WAAW;IACzB,IAAI,CAAC,gBAAgB,EAAE;QACrB,gBAAgB,GAAG,IAAI,oBAAQ,EAAE,CAAC;KACnC;IACD,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AALD,kCAKC"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"cal-integration.test.d.ts","sourceRoot":"","sources":["../../../src/bridge/crypto-assets/cal-integration.test.ts"],"names":[],"mappings":""}
|
@@ -0,0 +1,45 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const cal_integration_1 = require("./cal-integration");
|
4
|
+
const cal_store_1 = require("./cal-store");
|
5
|
+
const firebaseFeatureFlags_1 = require("../../featureFlags/firebaseFeatureFlags");
|
6
|
+
jest.mock("../../featureFlags/firebaseFeatureFlags", () => ({
|
7
|
+
isFeature: jest.fn(),
|
8
|
+
}));
|
9
|
+
const mockIsFeature = jest.mocked(firebaseFeatureFlags_1.isFeature);
|
10
|
+
describe("CAL Integration", () => {
|
11
|
+
beforeEach(() => {
|
12
|
+
mockIsFeature.mockClear();
|
13
|
+
});
|
14
|
+
describe("isCALIntegrationEnabled", () => {
|
15
|
+
it("should return false when feature flag is disabled", () => {
|
16
|
+
mockIsFeature.mockReturnValue(false);
|
17
|
+
expect((0, cal_integration_1.isCALIntegrationEnabled)()).toBe(false);
|
18
|
+
expect(mockIsFeature).toHaveBeenCalledWith("calLedgerService");
|
19
|
+
});
|
20
|
+
it("should return true when feature flag is enabled (assuming MOCK is false)", () => {
|
21
|
+
mockIsFeature.mockReturnValue(true);
|
22
|
+
const result = (0, cal_integration_1.isCALIntegrationEnabled)();
|
23
|
+
expect(mockIsFeature).toHaveBeenCalledWith("calLedgerService");
|
24
|
+
expect(result).toEqual(true);
|
25
|
+
});
|
26
|
+
it("should return false when feature check throws", () => {
|
27
|
+
mockIsFeature.mockImplementation(() => {
|
28
|
+
throw new Error("Feature check error");
|
29
|
+
});
|
30
|
+
expect((0, cal_integration_1.isCALIntegrationEnabled)()).toBe(false);
|
31
|
+
});
|
32
|
+
});
|
33
|
+
describe("getCALStore", () => {
|
34
|
+
it("should return a CALStore instance", () => {
|
35
|
+
const store = (0, cal_integration_1.getCALStore)();
|
36
|
+
expect(store).toBeInstanceOf(cal_store_1.CALStore);
|
37
|
+
});
|
38
|
+
it("should return the same instance on multiple calls", () => {
|
39
|
+
const store1 = (0, cal_integration_1.getCALStore)();
|
40
|
+
const store2 = (0, cal_integration_1.getCALStore)();
|
41
|
+
expect(store1).toBe(store2);
|
42
|
+
});
|
43
|
+
});
|
44
|
+
});
|
45
|
+
//# sourceMappingURL=cal-integration.test.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"cal-integration.test.js","sourceRoot":"","sources":["../../../src/bridge/crypto-assets/cal-integration.test.ts"],"names":[],"mappings":";;AAAA,uDAAyE;AACzE,2CAAuC;AACvC,kFAAoE;AAEpE,IAAI,CAAC,IAAI,CAAC,yCAAyC,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1D,SAAS,EAAE,IAAI,CAAC,EAAE,EAAE;CACrB,CAAC,CAAC,CAAC;AAEJ,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,gCAAS,CAAC,CAAC;AAE7C,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,UAAU,CAAC,GAAG,EAAE;QACd,aAAa,CAAC,SAAS,EAAE,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACvC,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;YAC3D,aAAa,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;YAErC,MAAM,CAAC,IAAA,yCAAuB,GAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC9C,MAAM,CAAC,aAAa,CAAC,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0EAA0E,EAAE,GAAG,EAAE;YAClF,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAEpC,MAAM,MAAM,GAAG,IAAA,yCAAuB,GAAE,CAAC;YACzC,MAAM,CAAC,aAAa,CAAC,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;YAC/D,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;YACvD,aAAa,CAAC,kBAAkB,CAAC,GAAG,EAAE;gBACpC,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;YACzC,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,IAAA,yCAAuB,GAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;QAC3B,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;YAC3C,MAAM,KAAK,GAAG,IAAA,6BAAW,GAAE,CAAC;YAC5B,MAAM,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,oBAAQ,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;YAC3D,MAAM,MAAM,GAAG,IAAA,6BAAW,GAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,IAAA,6BAAW,GAAE,CAAC;YAC7B,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
import type { CryptoAssetsStore } from "@ledgerhq/types-live";
|
2
|
+
import { TokenCurrency } from "@ledgerhq/types-cryptoassets";
|
3
|
+
export declare class CALStore implements CryptoAssetsStore {
|
4
|
+
private tokenCache;
|
5
|
+
private addressCache;
|
6
|
+
private tickerCache;
|
7
|
+
addTokens(tokens: TokenCurrency[]): void;
|
8
|
+
findTokenByAddress(address: string): TokenCurrency | undefined;
|
9
|
+
getTokenById(id: string): TokenCurrency;
|
10
|
+
findTokenById(id: string): TokenCurrency | undefined;
|
11
|
+
findTokenByAddressInCurrency(address: string, currencyId: string): TokenCurrency | undefined;
|
12
|
+
findTokenByTicker(ticker: string): TokenCurrency | undefined;
|
13
|
+
}
|
14
|
+
//# sourceMappingURL=cal-store.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"cal-store.d.ts","sourceRoot":"","sources":["../../../src/bridge/crypto-assets/cal-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAK7D,qBAAa,QAAS,YAAW,iBAAiB;IAChD,OAAO,CAAC,UAAU,CAAoC;IACtD,OAAO,CAAC,YAAY,CAAoC;IACxD,OAAO,CAAC,WAAW,CAAoC;IAEvD,SAAS,CAAC,MAAM,EAAE,aAAa,EAAE;IAcjC,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAQ9D,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa;IAQvC,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAIpD,4BAA4B,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAc5F,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;CAG7D"}
|
@@ -0,0 +1,58 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.CALStore = void 0;
|
4
|
+
// Coins with case-sensitive addresses (b58, ...)
|
5
|
+
const CASE_SENSITIVE_COINS = ["solana"];
|
6
|
+
class CALStore {
|
7
|
+
tokenCache = new Map();
|
8
|
+
addressCache = new Map();
|
9
|
+
tickerCache = new Map();
|
10
|
+
addTokens(tokens) {
|
11
|
+
tokens.forEach(token => {
|
12
|
+
this.tokenCache.set(token.id, token);
|
13
|
+
if (token.contractAddress) {
|
14
|
+
const isCaseSensitive = CASE_SENSITIVE_COINS.includes(token.parentCurrency.id);
|
15
|
+
const normalizedAddress = isCaseSensitive
|
16
|
+
? token.contractAddress
|
17
|
+
: token.contractAddress.toLowerCase();
|
18
|
+
this.addressCache.set(normalizedAddress, token);
|
19
|
+
}
|
20
|
+
this.tickerCache.set(token.ticker, token);
|
21
|
+
});
|
22
|
+
}
|
23
|
+
findTokenByAddress(address) {
|
24
|
+
const exactMatch = this.addressCache.get(address);
|
25
|
+
if (exactMatch)
|
26
|
+
return exactMatch;
|
27
|
+
const lowercaseMatch = this.addressCache.get(address.toLowerCase());
|
28
|
+
return lowercaseMatch;
|
29
|
+
}
|
30
|
+
getTokenById(id) {
|
31
|
+
const token = this.tokenCache.get(id);
|
32
|
+
if (!token) {
|
33
|
+
throw new Error(`Token not found: ${id}`);
|
34
|
+
}
|
35
|
+
return token;
|
36
|
+
}
|
37
|
+
findTokenById(id) {
|
38
|
+
return this.tokenCache.get(id);
|
39
|
+
}
|
40
|
+
findTokenByAddressInCurrency(address, currencyId) {
|
41
|
+
const isCaseSensitive = CASE_SENSITIVE_COINS.includes(currencyId);
|
42
|
+
if (isCaseSensitive) {
|
43
|
+
const token = this.addressCache.get(address);
|
44
|
+
if (token && token.parentCurrency.id === currencyId)
|
45
|
+
return token;
|
46
|
+
return undefined;
|
47
|
+
}
|
48
|
+
const token = this.addressCache.get(address.toLowerCase());
|
49
|
+
if (token && token.parentCurrency.id === currencyId)
|
50
|
+
return token;
|
51
|
+
return undefined;
|
52
|
+
}
|
53
|
+
findTokenByTicker(ticker) {
|
54
|
+
return this.tickerCache.get(ticker);
|
55
|
+
}
|
56
|
+
}
|
57
|
+
exports.CALStore = CALStore;
|
58
|
+
//# sourceMappingURL=cal-store.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"cal-store.js","sourceRoot":"","sources":["../../../src/bridge/crypto-assets/cal-store.ts"],"names":[],"mappings":";;;AAGA,iDAAiD;AACjD,MAAM,oBAAoB,GAAG,CAAC,QAAQ,CAAC,CAAC;AAExC,MAAa,QAAQ;IACX,UAAU,GAAG,IAAI,GAAG,EAAyB,CAAC;IAC9C,YAAY,GAAG,IAAI,GAAG,EAAyB,CAAC;IAChD,WAAW,GAAG,IAAI,GAAG,EAAyB,CAAC;IAEvD,SAAS,CAAC,MAAuB;QAC/B,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACrB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YACrC,IAAI,KAAK,CAAC,eAAe,EAAE;gBACzB,MAAM,eAAe,GAAG,oBAAoB,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;gBAC/E,MAAM,iBAAiB,GAAG,eAAe;oBACvC,CAAC,CAAC,KAAK,CAAC,eAAe;oBACvB,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;gBACxC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;aACjD;YACD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;IACL,CAAC;IAED,kBAAkB,CAAC,OAAe;QAChC,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,UAAU;YAAE,OAAO,UAAU,CAAC;QAElC,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;QACpE,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,YAAY,CAAC,EAAU;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,KAAK,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC;SAC3C;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,aAAa,CAAC,EAAU;QACtB,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACjC,CAAC;IAED,4BAA4B,CAAC,OAAe,EAAE,UAAkB;QAC9D,MAAM,eAAe,GAAG,oBAAoB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAElE,IAAI,eAAe,EAAE;YACnB,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC7C,IAAI,KAAK,IAAI,KAAK,CAAC,cAAc,CAAC,EAAE,KAAK,UAAU;gBAAE,OAAO,KAAK,CAAC;YAClE,OAAO,SAAS,CAAC;SAClB;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;QAC3D,IAAI,KAAK,IAAI,KAAK,CAAC,cAAc,CAAC,EAAE,KAAK,UAAU;YAAE,OAAO,KAAK,CAAC;QAClE,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,iBAAiB,CAAC,MAAc;QAC9B,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACtC,CAAC;CACF;AAxDD,4BAwDC"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"cal-store.test.d.ts","sourceRoot":"","sources":["../../../src/bridge/crypto-assets/cal-store.test.ts"],"names":[],"mappings":""}
|
@@ -0,0 +1,70 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const cal_store_1 = require("./cal-store");
|
4
|
+
describe("CALStore", () => {
|
5
|
+
let store;
|
6
|
+
beforeEach(() => {
|
7
|
+
store = new cal_store_1.CALStore();
|
8
|
+
});
|
9
|
+
describe("Token cache operations", () => {
|
10
|
+
const token = {
|
11
|
+
id: "ethereum/erc20/usdt",
|
12
|
+
name: "Tether USD",
|
13
|
+
ticker: "USDT",
|
14
|
+
contractAddress: "0xdAC17F958D2ee523a2206206994597C13D831ec7",
|
15
|
+
parentCurrency: { id: "ethereum" },
|
16
|
+
type: "TokenCurrency",
|
17
|
+
units: [
|
18
|
+
{
|
19
|
+
name: "USDT",
|
20
|
+
code: "USDT",
|
21
|
+
magnitude: 6,
|
22
|
+
},
|
23
|
+
],
|
24
|
+
};
|
25
|
+
it("should store and retrieve tokens by ID", () => {
|
26
|
+
store.addTokens([token]);
|
27
|
+
const foundToken = store.findTokenById("ethereum/erc20/usdt");
|
28
|
+
expect(foundToken).toEqual(token);
|
29
|
+
});
|
30
|
+
it("should store and retrieve tokens by address", () => {
|
31
|
+
store.addTokens([token]);
|
32
|
+
const foundToken = store.findTokenByAddress("0xdAC17F958D2ee523a2206206994597C13D831ec7");
|
33
|
+
expect(foundToken).toEqual(token);
|
34
|
+
});
|
35
|
+
it("should store and retrieve tokens by ticker", () => {
|
36
|
+
store.addTokens([token]);
|
37
|
+
const foundToken = store.findTokenByTicker("USDT");
|
38
|
+
expect(foundToken).toEqual(token);
|
39
|
+
});
|
40
|
+
it("should find token by address in specific currency", () => {
|
41
|
+
store.addTokens([token]);
|
42
|
+
const foundToken = store.findTokenByAddressInCurrency("0xdAC17F958D2ee523a2206206994597C13D831ec7", "ethereum");
|
43
|
+
expect(foundToken).toEqual(token);
|
44
|
+
});
|
45
|
+
it("should not find token by address in different currency", () => {
|
46
|
+
store.addTokens([token]);
|
47
|
+
const foundToken = store.findTokenByAddressInCurrency("0xdAC17F958D2ee523a2206206994597C13D831ec7", "polygon");
|
48
|
+
expect(foundToken).toBeUndefined();
|
49
|
+
});
|
50
|
+
it("should return undefined for non-existent address in findTokenByAddressInCurrency", () => {
|
51
|
+
store.addTokens([token]);
|
52
|
+
const foundToken = store.findTokenByAddressInCurrency("0xNONEXISTENT", "ethereum");
|
53
|
+
expect(foundToken).toBeUndefined();
|
54
|
+
});
|
55
|
+
it("should return undefined for non-existent tokens", () => {
|
56
|
+
expect(store.findTokenById("non-existent")).toBeUndefined();
|
57
|
+
expect(store.findTokenByAddress("0x0000")).toBeUndefined();
|
58
|
+
expect(store.findTokenByTicker("FAKE")).toBeUndefined();
|
59
|
+
});
|
60
|
+
it("should throw error when getting non-existent token by ID", () => {
|
61
|
+
expect(() => store.getTokenById("non-existent")).toThrow("Token not found: non-existent");
|
62
|
+
});
|
63
|
+
it("should get existing token by ID", () => {
|
64
|
+
store.addTokens([token]);
|
65
|
+
const foundToken = store.getTokenById("ethereum/erc20/usdt");
|
66
|
+
expect(foundToken).toEqual(token);
|
67
|
+
});
|
68
|
+
});
|
69
|
+
});
|
70
|
+
//# sourceMappingURL=cal-store.test.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"cal-store.test.js","sourceRoot":"","sources":["../../../src/bridge/crypto-assets/cal-store.test.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/bridge/crypto-assets/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/bridge/crypto-assets/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAa9D,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,iBAAiB,QAE5D;AAED,wBAAgB,oBAAoB,IAAI,iBAAiB,CAgBxD"}
|
@@ -26,6 +26,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
26
|
exports.getCryptoAssetsStore = exports.setCryptoAssetsStore = void 0;
|
27
27
|
const LiveConfig_1 = require("@ledgerhq/live-config/LiveConfig");
|
28
28
|
const legacy = __importStar(require("@ledgerhq/cryptoassets/tokens"));
|
29
|
+
const cal_integration_1 = require("./cal-integration");
|
29
30
|
const legacyStore = {
|
30
31
|
findTokenByAddress: legacy.findTokenByAddress,
|
31
32
|
getTokenById: legacy.getTokenById,
|
@@ -39,6 +40,9 @@ function setCryptoAssetsStore(store) {
|
|
39
40
|
}
|
40
41
|
exports.setCryptoAssetsStore = setCryptoAssetsStore;
|
41
42
|
function getCryptoAssetsStore() {
|
43
|
+
if ((0, cal_integration_1.isCALIntegrationEnabled)()) {
|
44
|
+
return (0, cal_integration_1.getCALStore)();
|
45
|
+
}
|
42
46
|
const featureEnabled = LiveConfig_1.LiveConfig.isConfigSet() && LiveConfig_1.LiveConfig.getValueByKey("feature_cal_lazy_loading");
|
43
47
|
if (!featureEnabled) {
|
44
48
|
return legacyStore;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/bridge/crypto-assets/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iEAA8D;AAC9D,sEAAwD;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/bridge/crypto-assets/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iEAA8D;AAC9D,sEAAwD;AAExD,uDAAyE;AAEzE,MAAM,WAAW,GAAsB;IACrC,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;IAC7C,YAAY,EAAE,MAAM,CAAC,YAAY;IACjC,aAAa,EAAE,MAAM,CAAC,aAAa;IACnC,4BAA4B,EAAE,MAAM,CAAC,4BAA4B;IACjE,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;CAC5C,CAAC;AAEF,IAAI,iBAAiB,GAAkC,SAAS,CAAC;AAEjE,SAAgB,oBAAoB,CAAC,KAAwB;IAC3D,iBAAiB,GAAG,KAAK,CAAC;AAC5B,CAAC;AAFD,oDAEC;AAED,SAAgB,oBAAoB;IAClC,IAAI,IAAA,yCAAuB,GAAE,EAAE;QAC7B,OAAO,IAAA,6BAAW,GAAE,CAAC;KACtB;IAED,MAAM,cAAc,GAClB,uBAAU,CAAC,WAAW,EAAE,IAAI,uBAAU,CAAC,aAAa,CAAC,0BAA0B,CAAC,CAAC;IACnF,IAAI,CAAC,cAAc,EAAE;QACnB,OAAO,WAAW,CAAC;KACpB;IAED,IAAI,CAAC,iBAAiB,EAAE;QACtB,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;KAC1F;IAED,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAhBD,oDAgBC"}
|
@@ -26,7 +26,19 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
26
|
const LiveConfig_1 = require("@ledgerhq/live-config/LiveConfig");
|
27
27
|
const _1 = require(".");
|
28
28
|
const legacy = __importStar(require("@ledgerhq/cryptoassets/tokens"));
|
29
|
+
const calIntegration = __importStar(require("./cal-integration"));
|
29
30
|
describe("Testing CryptoAssetStore", () => {
|
31
|
+
let isCALIntegrationEnabledSpy;
|
32
|
+
let getCALStoreSpy;
|
33
|
+
beforeEach(() => {
|
34
|
+
isCALIntegrationEnabledSpy = jest
|
35
|
+
.spyOn(calIntegration, "isCALIntegrationEnabled")
|
36
|
+
.mockReturnValue(false);
|
37
|
+
getCALStoreSpy = jest.spyOn(calIntegration, "getCALStore");
|
38
|
+
});
|
39
|
+
afterEach(() => {
|
40
|
+
jest.restoreAllMocks();
|
41
|
+
});
|
30
42
|
it("should return the default methods from cryptoassets libs when feature flag does not exists", () => {
|
31
43
|
LiveConfig_1.LiveConfig.setConfig({
|
32
44
|
some_other_feature: {
|
@@ -81,5 +93,29 @@ describe("Testing CryptoAssetStore", () => {
|
|
81
93
|
const store = (0, _1.getCryptoAssetsStore)();
|
82
94
|
expect(store).toBe(newStore);
|
83
95
|
});
|
96
|
+
it("should return CAL store when CAL integration is enabled", () => {
|
97
|
+
isCALIntegrationEnabledSpy.mockReturnValue(true);
|
98
|
+
const mockCALStore = {};
|
99
|
+
getCALStoreSpy.mockReturnValue(mockCALStore);
|
100
|
+
const store = (0, _1.getCryptoAssetsStore)();
|
101
|
+
expect(isCALIntegrationEnabledSpy).toHaveBeenCalled();
|
102
|
+
expect(getCALStoreSpy).toHaveBeenCalled();
|
103
|
+
expect(store).toBe(mockCALStore);
|
104
|
+
});
|
105
|
+
it("should prioritize CAL integration over feature flags", () => {
|
106
|
+
isCALIntegrationEnabledSpy.mockReturnValue(true);
|
107
|
+
LiveConfig_1.LiveConfig.setConfig({
|
108
|
+
feature_cal_lazy_loading: {
|
109
|
+
type: "boolean",
|
110
|
+
default: true,
|
111
|
+
},
|
112
|
+
});
|
113
|
+
const mockCALStore = {};
|
114
|
+
getCALStoreSpy.mockReturnValue(mockCALStore);
|
115
|
+
const store = (0, _1.getCryptoAssetsStore)();
|
116
|
+
expect(store).toBe(mockCALStore);
|
117
|
+
expect(isCALIntegrationEnabledSpy).toHaveBeenCalled();
|
118
|
+
expect(getCALStoreSpy).toHaveBeenCalled();
|
119
|
+
});
|
84
120
|
});
|
85
121
|
//# sourceMappingURL=index.test.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../../src/bridge/crypto-assets/index.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iEAA8D;AAC9D,wBAA+D;AAC/D,sEAAwD;
|
1
|
+
{"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../../src/bridge/crypto-assets/index.test.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/bridge/generic-alpaca/alpaca/index.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/bridge/generic-alpaca/alpaca/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,GAAG,EAAE,MAAM,oCAAoC,CAAC;AAMzD,wBAAgB,YAAY,CAAC,OAAO,KAAA,EAAE,IAAI,KAAA,GAAG,GAAG,CAAC,GAAG,CAAC,CAwBpD"}
|
@@ -3,17 +3,22 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getAlpacaApi = void 0;
|
4
4
|
const index_1 = require("@ledgerhq/coin-xrp/api/index");
|
5
5
|
const index_2 = require("@ledgerhq/coin-stellar/api/index");
|
6
|
+
const index_3 = require("@ledgerhq/coin-canton/api/index");
|
7
|
+
const index_4 = require("@ledgerhq/coin-tron/api/index");
|
6
8
|
const config_1 = require("../../../config");
|
7
9
|
const currencies_1 = require("@ledgerhq/cryptoassets/currencies");
|
8
10
|
const network_alpaca_1 = require("./network/network-alpaca");
|
9
11
|
function getAlpacaApi(network, kind) {
|
10
12
|
if (kind === "local") {
|
11
13
|
switch (network) {
|
12
|
-
case "ripple":
|
13
14
|
case "xrp":
|
14
15
|
return (0, index_1.createApi)((0, config_1.getCurrencyConfiguration)((0, currencies_1.getCryptoCurrencyById)("ripple"))); // FIXME: createXrpApi returns a strongly typed Api<XrpSender>, fix Api<any> to allow it
|
15
16
|
case "stellar":
|
16
17
|
return (0, index_2.createApi)((0, config_1.getCurrencyConfiguration)((0, currencies_1.getCryptoCurrencyById)("stellar")));
|
18
|
+
case "canton":
|
19
|
+
return (0, index_3.createApi)((0, config_1.getCurrencyConfiguration)((0, currencies_1.getCryptoCurrencyById)("canton_network_devnet")));
|
20
|
+
case "tron":
|
21
|
+
return (0, index_4.createApi)((0, config_1.getCurrencyConfiguration)((0, currencies_1.getCryptoCurrencyById)("tron")));
|
17
22
|
}
|
18
23
|
}
|
19
24
|
return (0, network_alpaca_1.getNetworkAlpacaApi)(network);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/bridge/generic-alpaca/alpaca/index.ts"],"names":[],"mappings":";;;AAAA,wDAAyE;AACzE,4DAAiF;AACjF,4CAA2D;AAC3D,kEAA0E;AAC1E,6DAA+D;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/bridge/generic-alpaca/alpaca/index.ts"],"names":[],"mappings":";;;AAAA,wDAAyE;AACzE,4DAAiF;AACjF,2DAA+E;AAC/E,yDAA2E;AAC3E,4CAA2D;AAC3D,kEAA0E;AAC1E,6DAA+D;AAO/D,SAAgB,YAAY,CAAC,OAAO,EAAE,IAAI;IACxC,IAAI,IAAI,KAAK,OAAO,EAAE;QACpB,QAAQ,OAAO,EAAE;YACf,KAAK,KAAK;gBACR,OAAO,IAAA,iBAAY,EACjB,IAAA,iCAAwB,EAAgB,IAAA,kCAAqB,EAAC,QAAQ,CAAC,CAAC,CAC7D,CAAC,CAAC,wFAAwF;YACzG,KAAK,SAAS;gBACZ,OAAO,IAAA,iBAAgB,EACrB,IAAA,iCAAwB,EAAoB,IAAA,kCAAqB,EAAC,SAAS,CAAC,CAAC,CAClE,CAAC;YAChB,KAAK,QAAQ;gBACX,OAAO,IAAA,iBAAe,EACpB,IAAA,iCAAwB,EACtB,IAAA,kCAAqB,EAAC,uBAAuB,CAAC,CAC/C,CACU,CAAC;YAChB,KAAK,MAAM;gBACT,OAAO,IAAA,iBAAa,EAClB,IAAA,iCAAwB,EAAiB,IAAA,kCAAqB,EAAC,MAAM,CAAC,CAAC,CAC5D,CAAC;SACjB;KACF;IACD,OAAO,IAAA,oCAAmB,EAAC,OAAO,CAAyC,CAAC;AAC9E,CAAC;AAxBD,oCAwBC"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.unit.test.d.ts","sourceRoot":"","sources":["../../../../src/bridge/generic-alpaca/alpaca/index.unit.test.ts"],"names":[],"mappings":""}
|
@@ -0,0 +1,89 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
3
|
+
if (k2 === undefined) k2 = k;
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
7
|
+
}
|
8
|
+
Object.defineProperty(o, k2, desc);
|
9
|
+
}) : (function(o, m, k, k2) {
|
10
|
+
if (k2 === undefined) k2 = k;
|
11
|
+
o[k2] = m[k];
|
12
|
+
}));
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
15
|
+
}) : function(o, v) {
|
16
|
+
o["default"] = v;
|
17
|
+
});
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
19
|
+
if (mod && mod.__esModule) return mod;
|
20
|
+
var result = {};
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
22
|
+
__setModuleDefault(result, mod);
|
23
|
+
return result;
|
24
|
+
};
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
26
|
+
const index_1 = require("./index");
|
27
|
+
const xrpModule = __importStar(require("@ledgerhq/coin-xrp/api/index"));
|
28
|
+
const stellarModule = __importStar(require("@ledgerhq/coin-stellar/api/index"));
|
29
|
+
const cantonModule = __importStar(require("@ledgerhq/coin-canton/api/index"));
|
30
|
+
const tronModule = __importStar(require("@ledgerhq/coin-tron/api/index"));
|
31
|
+
const config = __importStar(require("../../../config"));
|
32
|
+
const networkApi = __importStar(require("./network/network-alpaca"));
|
33
|
+
const cryptoAssets = __importStar(require("@ledgerhq/cryptoassets/currencies"));
|
34
|
+
const mockApiInstance = { mock: "api" };
|
35
|
+
jest.mock("@ledgerhq/cryptoassets/currencies", () => ({
|
36
|
+
getCryptoCurrencyById: jest.fn(),
|
37
|
+
}));
|
38
|
+
jest.mock("../../../config", () => ({
|
39
|
+
getCurrencyConfiguration: jest.fn(),
|
40
|
+
}));
|
41
|
+
jest.mock("@ledgerhq/coin-xrp/api/index", () => ({
|
42
|
+
createApi: jest.fn(),
|
43
|
+
}));
|
44
|
+
jest.mock("@ledgerhq/coin-stellar/api/index", () => ({
|
45
|
+
createApi: jest.fn(),
|
46
|
+
}));
|
47
|
+
jest.mock("@ledgerhq/coin-canton/api/index", () => ({
|
48
|
+
createApi: jest.fn(),
|
49
|
+
}));
|
50
|
+
jest.mock("@ledgerhq/coin-tron/api/index", () => ({
|
51
|
+
createApi: jest.fn(),
|
52
|
+
}));
|
53
|
+
jest.mock("./network/network-alpaca", () => ({
|
54
|
+
getNetworkAlpacaApi: jest.fn(),
|
55
|
+
}));
|
56
|
+
describe("getAlpacaApi", () => {
|
57
|
+
const mockCurrency = { id: "mock-currency" };
|
58
|
+
beforeEach(() => {
|
59
|
+
jest.clearAllMocks();
|
60
|
+
// Common mocks
|
61
|
+
cryptoAssets.getCryptoCurrencyById.mockReturnValue(mockCurrency);
|
62
|
+
config.getCurrencyConfiguration.mockReturnValue({ config: true });
|
63
|
+
// API mocks
|
64
|
+
jest.spyOn(xrpModule, "createApi").mockReturnValue(mockApiInstance);
|
65
|
+
jest.spyOn(stellarModule, "createApi").mockReturnValue(mockApiInstance);
|
66
|
+
jest.spyOn(cantonModule, "createApi").mockReturnValue(mockApiInstance);
|
67
|
+
jest.spyOn(tronModule, "createApi").mockReturnValue(mockApiInstance);
|
68
|
+
jest.spyOn(networkApi, "getNetworkAlpacaApi").mockReturnValue(mockApiInstance);
|
69
|
+
});
|
70
|
+
const testCases = [
|
71
|
+
{ network: "xrp", module: xrpModule, label: "XRP" },
|
72
|
+
{ network: "stellar", module: stellarModule, label: "Stellar" },
|
73
|
+
{ network: "tron", module: tronModule, label: "Tron" },
|
74
|
+
{ network: "canton", module: cantonModule, label: "Canton" },
|
75
|
+
];
|
76
|
+
testCases.forEach(({ network, module, label }) => {
|
77
|
+
it(`should return ${label} API for network "${network}" and kind "local"`, () => {
|
78
|
+
const result = (0, index_1.getAlpacaApi)(network, "local");
|
79
|
+
expect(result).toEqual(mockApiInstance);
|
80
|
+
expect(module.createApi).toHaveBeenCalledWith({ config: true });
|
81
|
+
});
|
82
|
+
});
|
83
|
+
it("should return network API for kind !== 'local'", () => {
|
84
|
+
const result = (0, index_1.getAlpacaApi)("xrp", "remote");
|
85
|
+
expect(networkApi.getNetworkAlpacaApi).toHaveBeenCalledWith("xrp");
|
86
|
+
expect(result).toEqual(mockApiInstance);
|
87
|
+
});
|
88
|
+
});
|
89
|
+
//# sourceMappingURL=index.unit.test.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.unit.test.js","sourceRoot":"","sources":["../../../../src/bridge/generic-alpaca/alpaca/index.unit.test.ts"],"names":[],"mappings":"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"}
|
@@ -82,7 +82,7 @@ const buildGetSequence = (networkFamily) => async function getSequence(address)
|
|
82
82
|
});
|
83
83
|
return data;
|
84
84
|
};
|
85
|
-
const buildListOperations = networkFamily => async function listOperations(address, pagination = { minHeight: 0 }) {
|
85
|
+
const buildListOperations = networkFamily => async function listOperations(address, pagination = { minHeight: 0, order: "asc" }) {
|
86
86
|
const { data } = await (0, live_network_1.default)({
|
87
87
|
method: "GET",
|
88
88
|
url: `${ALPACA_URL}/${networkFamily}/account/${address}/operations`,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"network-alpaca.js","sourceRoot":"","sources":["../../../../../src/bridge/generic-alpaca/alpaca/network/network-alpaca.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"network-alpaca.js","sourceRoot":"","sources":["../../../../../src/bridge/generic-alpaca/alpaca/network/network-alpaca.ts"],"names":[],"mappings":"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"}
|
@@ -5,13 +5,12 @@ export interface OperationCommon extends Operation {
|
|
5
5
|
extra: Record<string, any>;
|
6
6
|
}
|
7
7
|
export declare const getAssetIdFromTokenId: (tokenId: string) => string;
|
8
|
-
export declare
|
9
|
-
export declare function buildSubAccounts({ currency, accountId, assetsBalance, syncConfig, operations, }: {
|
8
|
+
export declare function buildSubAccounts({ currency, accountId, assetsBalance, syncConfig, operations, getTokenFromAsset, }: {
|
10
9
|
currency: CryptoCurrency;
|
11
10
|
accountId: string;
|
12
11
|
assetsBalance: Balance[];
|
13
12
|
syncConfig: SyncConfig;
|
14
13
|
operations: OperationCommon[];
|
14
|
+
getTokenFromAsset?: (asset: AssetInfo) => TokenCurrency | undefined;
|
15
15
|
}): TokenAccount[] | undefined;
|
16
|
-
export declare function findToken(currency: CryptoCurrency, balance: Balance): TokenCurrency | undefined;
|
17
16
|
//# sourceMappingURL=buildSubAccounts.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"buildSubAccounts.d.ts","sourceRoot":"","sources":["../../../src/bridge/generic-alpaca/buildSubAccounts.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAClF,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGhF,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,oCAAoC,CAAC;
|
1
|
+
{"version":3,"file":"buildSubAccounts.d.ts","sourceRoot":"","sources":["../../../src/bridge/generic-alpaca/buildSubAccounts.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAClF,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGhF,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,oCAAoC,CAAC;AAExE,MAAM,WAAW,eAAgB,SAAQ,SAAS;IAChD,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC5B;AAED,eAAO,MAAM,qBAAqB,YAAa,MAAM,KAAG,MAA+B,CAAC;AA6CxF,wBAAgB,gBAAgB,CAAC,EAC/B,QAAQ,EACR,SAAS,EACT,aAAa,EACb,UAAU,EACV,UAAU,EACV,iBAAiB,GAClB,EAAE;IACD,QAAQ,EAAE,cAAc,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,OAAO,EAAE,CAAC;IACzB,UAAU,EAAE,UAAU,CAAC;IACvB,UAAU,EAAE,eAAe,EAAE,CAAC;IAC9B,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,aAAa,GAAG,SAAS,CAAC;CACrE,GAAG,YAAY,EAAE,GAAG,SAAS,CA6B7B"}
|
@@ -3,21 +3,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
4
|
};
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
-
exports.
|
6
|
+
exports.buildSubAccounts = exports.getAssetIdFromTokenId = void 0;
|
7
7
|
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
8
8
|
const index_1 = require("@ledgerhq/coin-framework/account/index");
|
9
9
|
const operation_1 = require("@ledgerhq/coin-framework/operation");
|
10
10
|
const cryptoassets_1 = require("@ledgerhq/cryptoassets");
|
11
|
-
const tokens_1 = require("@ledgerhq/cryptoassets/tokens");
|
12
11
|
const getAssetIdFromTokenId = (tokenId) => tokenId.split("/")[2];
|
13
12
|
exports.getAssetIdFromTokenId = getAssetIdFromTokenId;
|
14
|
-
const getAssetIdFromAsset = (asset) => asset.type !== "native" && "assetReference" in asset && "assetOwner" in asset
|
15
|
-
? `${asset.assetReference}:${asset.assetOwner}`
|
16
|
-
: "";
|
17
|
-
exports.getAssetIdFromAsset = getAssetIdFromAsset;
|
18
13
|
function buildTokenAccount({ parentAccountId, assetBalance, token, operations, }) {
|
19
|
-
const
|
20
|
-
const id = `${parentAccountId}+${assetId}`;
|
14
|
+
const id = (0, index_1.encodeTokenAccountId)(parentAccountId, token);
|
21
15
|
const balance = new bignumber_js_1.default(assetBalance.value.toString() || "0");
|
22
16
|
// TODO: recheck this logic
|
23
17
|
const spendableBalance = new bignumber_js_1.default(assetBalance.value.toString()).minus(new bignumber_js_1.default(assetBalance.locked?.toString() || "0"));
|
@@ -43,7 +37,7 @@ function buildTokenAccount({ parentAccountId, assetBalance, token, operations, }
|
|
43
37
|
balanceHistoryCache: index_1.emptyHistoryCache, // calculated in the jsHelpers
|
44
38
|
};
|
45
39
|
}
|
46
|
-
function buildSubAccounts({ currency, accountId, assetsBalance, syncConfig, operations, }) {
|
40
|
+
function buildSubAccounts({ currency, accountId, assetsBalance, syncConfig, operations, getTokenFromAsset, }) {
|
47
41
|
const { blacklistedTokenIds = [] } = syncConfig;
|
48
42
|
const allTokens = (0, cryptoassets_1.listTokensForCryptoCurrency)(currency);
|
49
43
|
if (allTokens.length === 0 || assetsBalance.length === 0) {
|
@@ -53,7 +47,7 @@ function buildSubAccounts({ currency, accountId, assetsBalance, syncConfig, oper
|
|
53
47
|
assetsBalance
|
54
48
|
.filter(b => b.asset.type !== "native") // NOTE: this could be removed, keeping here while fixing things up
|
55
49
|
.map(balance => {
|
56
|
-
const token =
|
50
|
+
const token = getTokenFromAsset && getTokenFromAsset(balance.asset);
|
57
51
|
// NOTE: for future tokens, will need to check over currencyName/standard(erc20,trc10,trc20, etc)/id
|
58
52
|
if (token && !blacklistedTokenIds.includes(token.id)) {
|
59
53
|
tokenAccounts.push(buildTokenAccount({
|
@@ -68,8 +62,4 @@ function buildSubAccounts({ currency, accountId, assetsBalance, syncConfig, oper
|
|
68
62
|
return tokenAccounts;
|
69
63
|
}
|
70
64
|
exports.buildSubAccounts = buildSubAccounts;
|
71
|
-
function findToken(currency, balance) {
|
72
|
-
return (0, tokens_1.findTokenById)(`${currency.family}/asset/${(0, exports.getAssetIdFromAsset)(balance.asset)}`);
|
73
|
-
}
|
74
|
-
exports.findToken = findToken;
|
75
65
|
//# sourceMappingURL=buildSubAccounts.js.map
|