@rango-dev/widget-embedded 0.31.1-next.3 → 0.32.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/CHANGELOG.md +9 -0
- package/dist/components/AppRoutes.d.ts.map +1 -1
- package/dist/components/BlockchainList/BlockchainList.d.ts.map +1 -1
- package/dist/components/BlockchainList/BlockchainList.styles.d.ts +4 -1
- package/dist/components/BlockchainList/BlockchainList.styles.d.ts.map +1 -1
- package/dist/components/BlockchainList/BlockchainList.types.d.ts +1 -0
- package/dist/components/BlockchainList/BlockchainList.types.d.ts.map +1 -1
- package/dist/components/BlockchainSelectorButton/BlockchainSelectorButton.d.ts +4 -0
- package/dist/components/BlockchainSelectorButton/BlockchainSelectorButton.d.ts.map +1 -0
- package/dist/components/BlockchainSelectorButton/BlockchainSelectorButton.styles.d.ts +483 -0
- package/dist/components/BlockchainSelectorButton/BlockchainSelectorButton.styles.d.ts.map +1 -0
- package/dist/components/BlockchainSelectorButton/BlockchainSelectorButton.types.d.ts +12 -0
- package/dist/components/BlockchainSelectorButton/BlockchainSelectorButton.types.d.ts.map +1 -0
- package/dist/components/BlockchainSelectorButton/index.d.ts +2 -0
- package/dist/components/BlockchainSelectorButton/index.d.ts.map +1 -0
- package/dist/components/BlockchainsSection/BlockchainsSection.styles.d.ts +1 -0
- package/dist/components/BlockchainsSection/BlockchainsSection.styles.d.ts.map +1 -1
- package/dist/components/ConfirmWalletsModal/ConfirmWallets.styles.d.ts +11 -0
- package/dist/components/ConfirmWalletsModal/ConfirmWallets.styles.d.ts.map +1 -1
- package/dist/components/ConfirmWalletsModal/WalletList.d.ts.map +1 -1
- package/dist/components/ConfirmWalletsModal/WalletList.styles.d.ts +3 -0
- package/dist/components/ConfirmWalletsModal/WalletList.styles.d.ts.map +1 -1
- package/dist/components/CustomCollapsible/CustomCollapsible.styles.d.ts +4 -0
- package/dist/components/CustomCollapsible/CustomCollapsible.styles.d.ts.map +1 -1
- package/dist/components/CustomDestination/CustomDestination.d.ts.map +1 -1
- package/dist/components/CustomDestination/CustomDestination.styles.d.ts +5 -2
- package/dist/components/CustomDestination/CustomDestination.styles.d.ts.map +1 -1
- package/dist/components/CustomTokenModal/CustomTokenModal.d.ts +4 -0
- package/dist/components/CustomTokenModal/CustomTokenModal.d.ts.map +1 -0
- package/dist/components/CustomTokenModal/CustomTokenModal.helpers.d.ts +3 -0
- package/dist/components/CustomTokenModal/CustomTokenModal.helpers.d.ts.map +1 -0
- package/dist/components/CustomTokenModal/CustomTokenModal.styles.d.ts +323 -0
- package/dist/components/CustomTokenModal/CustomTokenModal.styles.d.ts.map +1 -0
- package/dist/components/CustomTokenModal/CustomTokenModal.types.d.ts +9 -0
- package/dist/components/CustomTokenModal/CustomTokenModal.types.d.ts.map +1 -0
- package/dist/components/CustomTokenModal/index.d.ts +2 -0
- package/dist/components/CustomTokenModal/index.d.ts.map +1 -0
- package/dist/components/FilterSelector/FilterSelector.style.d.ts +6 -0
- package/dist/components/FilterSelector/FilterSelector.style.d.ts.map +1 -1
- package/dist/components/HeaderButtons/HeaderButtons.styles.d.ts +8 -0
- package/dist/components/HeaderButtons/HeaderButtons.styles.d.ts.map +1 -1
- package/dist/components/HistoryGroupedList/HistoryGroupedList.styles.d.ts +6 -0
- package/dist/components/HistoryGroupedList/HistoryGroupedList.styles.d.ts.map +1 -1
- package/dist/components/Layout/Layout.styles.d.ts +4 -0
- package/dist/components/Layout/Layout.styles.d.ts.map +1 -1
- package/dist/components/Layout/PageContainer.d.ts +1 -0
- package/dist/components/Layout/PageContainer.d.ts.map +1 -1
- package/dist/components/Layout/ScrollableArea.d.ts +1 -0
- package/dist/components/Layout/ScrollableArea.d.ts.map +1 -1
- package/dist/components/LoadingLiquiditySourceList/LoadingLiquiditySourceList.styles.d.ts +1 -0
- package/dist/components/LoadingLiquiditySourceList/LoadingLiquiditySourceList.styles.d.ts.map +1 -1
- package/dist/components/LoadingSwapDetails/LoadingSwapDetails.styles.d.ts +14 -0
- package/dist/components/LoadingSwapDetails/LoadingSwapDetails.styles.d.ts.map +1 -1
- package/dist/components/NoResult/NoResult.styles.d.ts +4 -0
- package/dist/components/NoResult/NoResult.styles.d.ts.map +1 -1
- package/dist/components/Quote/Quote.styles.d.ts +22 -1
- package/dist/components/Quote/Quote.styles.d.ts.map +1 -1
- package/dist/components/Quote/QuoteCostDetails.styles.d.ts +5 -0
- package/dist/components/Quote/QuoteCostDetails.styles.d.ts.map +1 -1
- package/dist/components/Quote/QuoteSummary.styles.d.ts +2 -0
- package/dist/components/Quote/QuoteSummary.styles.d.ts.map +1 -1
- package/dist/components/QuoteSkeleton/QuoteSkeleton.styles.d.ts +4 -0
- package/dist/components/QuoteSkeleton/QuoteSkeleton.styles.d.ts.map +1 -1
- package/dist/components/QuoteSkeleton/QuoteSummarySkeleton.styles.d.ts +10 -0
- package/dist/components/QuoteSkeleton/QuoteSummarySkeleton.styles.d.ts.map +1 -1
- package/dist/components/QuoteSkeleton/StepSkeleton.styles.d.ts +5 -0
- package/dist/components/QuoteSkeleton/StepSkeleton.styles.d.ts.map +1 -1
- package/dist/components/QuoteWarningsAndErrors/QuoteWarningsAndErrors.styles.d.ts +4 -0
- package/dist/components/QuoteWarningsAndErrors/QuoteWarningsAndErrors.styles.d.ts.map +1 -1
- package/dist/components/Quotes/Quotes.styles.d.ts +3 -0
- package/dist/components/Quotes/Quotes.styles.d.ts.map +1 -1
- package/dist/components/RefreshModal/RefreshModal.styles.d.ts +2 -1
- package/dist/components/RefreshModal/RefreshModal.styles.d.ts.map +1 -1
- package/dist/components/SearchInput/SearchInput.styles.d.ts +1 -0
- package/dist/components/SearchInput/SearchInput.styles.d.ts.map +1 -1
- package/dist/components/SettingsContainer/SettingsContainer.style.d.ts +3 -0
- package/dist/components/SettingsContainer/SettingsContainer.style.d.ts.map +1 -1
- package/dist/components/Slippage/Slippage.styles.d.ts +5 -0
- package/dist/components/Slippage/Slippage.styles.d.ts.map +1 -1
- package/dist/components/SwapDetails/SwapDetails.styles.d.ts +15 -0
- package/dist/components/SwapDetails/SwapDetails.styles.d.ts.map +1 -1
- package/dist/components/SwapDetailsAlerts/SwapDetailsAlerts.styles.d.ts +3 -0
- package/dist/components/SwapDetailsAlerts/SwapDetailsAlerts.styles.d.ts.map +1 -1
- package/dist/components/SwapDetailsModal/SwapDetailsModal.WalletState.d.ts.map +1 -1
- package/dist/components/SwapDetailsModal/SwapDetailsModal.styles.d.ts +2 -0
- package/dist/components/SwapDetailsModal/SwapDetailsModal.styles.d.ts.map +1 -1
- package/dist/components/SwitchFromAndTo/SwitchFromAndTo.styles.d.ts +2 -0
- package/dist/components/SwitchFromAndTo/SwitchFromAndTo.styles.d.ts.map +1 -1
- package/dist/components/TokenList/TokenList.d.ts.map +1 -1
- package/dist/components/TokenList/TokenList.styles.d.ts +18 -0
- package/dist/components/TokenList/TokenList.styles.d.ts.map +1 -1
- package/dist/components/TokenList/TokenList.types.d.ts +5 -2
- package/dist/components/TokenList/TokenList.types.d.ts.map +1 -1
- package/dist/components/WalletDerivationPathModal/WalletDerivationPathModal.d.ts +4 -0
- package/dist/components/WalletDerivationPathModal/WalletDerivationPathModal.d.ts.map +1 -0
- package/dist/components/{WalletStatefulConnect/DerivationPath.styles.d.ts → WalletDerivationPathModal/WalletDerivationPathModal.styles.d.ts} +3 -1
- package/dist/components/WalletDerivationPathModal/WalletDerivationPathModal.styles.d.ts.map +1 -0
- package/dist/components/WalletDerivationPathModal/WalletDerivationPathModal.types.d.ts +10 -0
- package/dist/components/WalletDerivationPathModal/WalletDerivationPathModal.types.d.ts.map +1 -0
- package/dist/components/WalletDerivationPathModal/index.d.ts +2 -0
- package/dist/components/WalletDerivationPathModal/index.d.ts.map +1 -0
- package/dist/components/WalletModal/WalletModal.d.ts +4 -0
- package/dist/components/WalletModal/WalletModal.d.ts.map +1 -0
- package/dist/components/WalletModal/WalletModal.types.d.ts +10 -0
- package/dist/components/WalletModal/WalletModal.types.d.ts.map +1 -0
- package/dist/components/WalletModal/WalletModalContent.d.ts +4 -0
- package/dist/components/WalletModal/WalletModalContent.d.ts.map +1 -0
- package/dist/components/{WalletStatefulConnect/ConnectStatus.styles.d.ts → WalletModal/WalletModalContent.styles.d.ts} +5 -1
- package/dist/components/{WalletStatefulConnect/ConnectStatus.styles.d.ts.map → WalletModal/WalletModalContent.styles.d.ts.map} +1 -1
- package/dist/components/WalletModal/index.d.ts +2 -0
- package/dist/components/WalletModal/index.d.ts.map +1 -0
- package/dist/components/WalletNamespacesModal/WalletNamespacesModal.d.ts +4 -0
- package/dist/components/WalletNamespacesModal/WalletNamespacesModal.d.ts.map +1 -0
- package/dist/components/{WalletStatefulConnect/Namespaces.styles.d.ts → WalletNamespacesModal/WalletNamespacesModal.styles.d.ts} +2 -1
- package/dist/components/WalletNamespacesModal/WalletNamespacesModal.styles.d.ts.map +1 -0
- package/dist/components/WalletNamespacesModal/WalletNamespacesModal.types.d.ts +10 -0
- package/dist/components/WalletNamespacesModal/WalletNamespacesModal.types.d.ts.map +1 -0
- package/dist/components/WalletNamespacesModal/index.d.ts +2 -0
- package/dist/components/WalletNamespacesModal/index.d.ts.map +1 -0
- package/dist/constants/customTokens.d.ts +2 -0
- package/dist/constants/customTokens.d.ts.map +1 -0
- package/dist/constants/navigationRoutes.d.ts +2 -0
- package/dist/constants/navigationRoutes.d.ts.map +1 -1
- package/dist/constants/searchParams.d.ts +1 -0
- package/dist/constants/searchParams.d.ts.map +1 -1
- package/dist/containers/App/App.styles.d.ts +1 -0
- package/dist/containers/App/App.styles.d.ts.map +1 -1
- package/dist/containers/ExpandedQuotes/ExpandedQuotes.styles.d.ts +2 -0
- package/dist/containers/ExpandedQuotes/ExpandedQuotes.styles.d.ts.map +1 -1
- package/dist/containers/Inputs/Inputs.styles.d.ts +2 -0
- package/dist/containers/Inputs/Inputs.styles.d.ts.map +1 -1
- package/dist/containers/QuoteInfo/QuoteInfo.styles.d.ts +3 -0
- package/dist/containers/QuoteInfo/QuoteInfo.styles.d.ts.map +1 -1
- package/dist/containers/Settings/Lists.d.ts.map +1 -1
- package/dist/hooks/useFetchCustomToken.d.ts +16 -0
- package/dist/hooks/useFetchCustomToken.d.ts.map +1 -0
- package/dist/hooks/usePrepareBlockchainList/usePrepareBlockchainList.helpers.d.ts +2 -2
- package/dist/hooks/useSwapInput.d.ts.map +1 -1
- package/dist/hooks/useSyncUrlAndStore/useSyncUrlAndStore.d.ts.map +1 -1
- package/dist/hooks/useTheme.d.ts +1 -0
- package/dist/hooks/useTheme.d.ts.map +1 -1
- package/dist/hooks/useWalletList.d.ts +14 -11
- package/dist/hooks/useWalletList.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +4 -4
- package/dist/pages/AddCustomTokenPage.d.ts +3 -0
- package/dist/pages/AddCustomTokenPage.d.ts.map +1 -0
- package/dist/pages/CustomTokensPage.d.ts +3 -0
- package/dist/pages/CustomTokensPage.d.ts.map +1 -0
- package/dist/pages/SelectBlockchainPage.d.ts +2 -1
- package/dist/pages/SelectBlockchainPage.d.ts.map +1 -1
- package/dist/pages/WalletsPage.d.ts +2 -0
- package/dist/pages/WalletsPage.d.ts.map +1 -1
- package/dist/store/AppStore.d.ts +2 -0
- package/dist/store/AppStore.d.ts.map +1 -1
- package/dist/store/app.d.ts +2 -0
- package/dist/store/app.d.ts.map +1 -1
- package/dist/store/quote.d.ts.map +1 -1
- package/dist/store/slices/data.d.ts +4 -3
- package/dist/store/slices/data.d.ts.map +1 -1
- package/dist/store/slices/settings.d.ts +7 -2
- package/dist/store/slices/settings.d.ts.map +1 -1
- package/dist/store/utils/data.d.ts +4 -1
- package/dist/store/utils/data.d.ts.map +1 -1
- package/dist/types/config.d.ts +3 -1
- package/dist/types/config.d.ts.map +1 -1
- package/dist/utils/meta.d.ts +1 -0
- package/dist/utils/meta.d.ts.map +1 -1
- package/dist/utils/quote.d.ts +1 -0
- package/dist/utils/quote.d.ts.map +1 -1
- package/dist/utils/settings.d.ts +3 -2
- package/dist/utils/settings.d.ts.map +1 -1
- package/dist/utils/swap.d.ts.map +1 -1
- package/dist/widget-embedded.build.json +1 -1
- package/package.json +5 -5
- package/src/components/AppRoutes.tsx +30 -0
- package/src/components/BlockchainList/BlockchainList.styles.ts +3 -1
- package/src/components/BlockchainList/BlockchainList.tsx +26 -17
- package/src/components/BlockchainList/BlockchainList.types.ts +1 -0
- package/src/components/BlockchainSelectorButton/BlockchainSelectorButton.styles.ts +49 -0
- package/src/components/BlockchainSelectorButton/BlockchainSelectorButton.tsx +47 -0
- package/src/components/BlockchainSelectorButton/BlockchainSelectorButton.types.ts +11 -0
- package/src/components/BlockchainSelectorButton/index.ts +1 -0
- package/src/components/ConfirmWalletsModal/WalletList.tsx +243 -52
- package/src/components/CustomDestination/CustomDestination.tsx +5 -3
- package/src/components/CustomTokenModal/CustomTokenModal.helpers.ts +19 -0
- package/src/components/CustomTokenModal/CustomTokenModal.styles.ts +57 -0
- package/src/components/CustomTokenModal/CustomTokenModal.tsx +92 -0
- package/src/components/CustomTokenModal/CustomTokenModal.types.ts +9 -0
- package/src/components/CustomTokenModal/index.ts +1 -0
- package/src/components/HeaderButtons/WalletButton.tsx +1 -1
- package/src/components/SwapDetailsModal/SwapDetailsModal.WalletState.tsx +113 -23
- package/src/components/TokenList/TokenList.styles.ts +1 -0
- package/src/components/TokenList/TokenList.tsx +76 -51
- package/src/components/TokenList/TokenList.types.ts +5 -2
- package/src/components/{WalletStatefulConnect/DerivationPath.tsx → WalletDerivationPathModal/WalletDerivationPathModal.tsx} +36 -18
- package/src/components/WalletDerivationPathModal/WalletDerivationPathModal.types.tsx +10 -0
- package/src/components/WalletDerivationPathModal/index.ts +1 -0
- package/src/components/WalletModal/WalletModal.tsx +25 -0
- package/src/components/WalletModal/WalletModal.types.ts +11 -0
- package/src/components/{WalletStatefulConnect/ConnectStatus.tsx → WalletModal/WalletModalContent.tsx} +5 -13
- package/src/components/WalletModal/index.ts +1 -0
- package/src/components/{WalletStatefulConnect/Namespaces.tsx → WalletNamespacesModal/WalletNamespacesModal.tsx} +27 -9
- package/src/components/{WalletStatefulConnect/Namespaces.types.tsx → WalletNamespacesModal/WalletNamespacesModal.types.tsx} +5 -2
- package/src/components/WalletNamespacesModal/index.ts +1 -0
- package/src/constants/customTokens.ts +6 -0
- package/src/constants/navigationRoutes.ts +2 -0
- package/src/constants/searchParams.ts +3 -0
- package/src/containers/Settings/Lists.tsx +25 -1
- package/src/hooks/useFetchCustomToken.ts +114 -0
- package/src/hooks/useSwapInput.ts +8 -3
- package/src/hooks/useSyncUrlAndStore/useSyncUrlAndStore.ts +6 -1
- package/src/hooks/useTheme.ts +5 -1
- package/src/hooks/useWalletList.ts +53 -22
- package/src/pages/AddCustomTokenPage.tsx +210 -0
- package/src/pages/CustomTokensPage.tsx +184 -0
- package/src/pages/HistoryPage.tsx +2 -2
- package/src/pages/LiquiditySourcePage.tsx +2 -2
- package/src/pages/SelectBlockchainPage.tsx +15 -8
- package/src/pages/SelectSwapItemsPage.tsx +1 -1
- package/src/pages/WalletsPage.tsx +162 -10
- package/src/store/app.ts +1 -0
- package/src/store/quote.ts +12 -2
- package/src/store/slices/data.ts +61 -8
- package/src/store/slices/settings.ts +35 -2
- package/src/store/utils/data.ts +26 -1
- package/src/store/wallets.ts +1 -1
- package/src/types/config.ts +4 -1
- package/src/utils/meta.ts +12 -1
- package/src/utils/quote.ts +16 -3
- package/src/utils/settings.ts +13 -1
- package/src/utils/swap.ts +7 -7
- package/dist/components/ConfirmWalletsModal/ConfirmWallets.helpers.d.ts +0 -3
- package/dist/components/ConfirmWalletsModal/ConfirmWallets.helpers.d.ts.map +0 -1
- package/dist/components/StatefulConnectModal/StatefulConnectModal.d.ts +0 -11
- package/dist/components/StatefulConnectModal/StatefulConnectModal.d.ts.map +0 -1
- package/dist/components/StatefulConnectModal/helpers.d.ts +0 -10
- package/dist/components/StatefulConnectModal/helpers.d.ts.map +0 -1
- package/dist/components/StatefulConnectModal/index.d.ts +0 -2
- package/dist/components/StatefulConnectModal/index.d.ts.map +0 -1
- package/dist/components/WalletStatefulConnect/ConnectStatus.d.ts +0 -4
- package/dist/components/WalletStatefulConnect/ConnectStatus.d.ts.map +0 -1
- package/dist/components/WalletStatefulConnect/ConnectStatus.types.d.ts +0 -8
- package/dist/components/WalletStatefulConnect/ConnectStatus.types.d.ts.map +0 -1
- package/dist/components/WalletStatefulConnect/DerivationPath.d.ts +0 -4
- package/dist/components/WalletStatefulConnect/DerivationPath.d.ts.map +0 -1
- package/dist/components/WalletStatefulConnect/DerivationPath.helpers.d.ts +0 -4
- package/dist/components/WalletStatefulConnect/DerivationPath.helpers.d.ts.map +0 -1
- package/dist/components/WalletStatefulConnect/DerivationPath.styles.d.ts.map +0 -1
- package/dist/components/WalletStatefulConnect/DerivationPath.types.d.ts +0 -6
- package/dist/components/WalletStatefulConnect/DerivationPath.types.d.ts.map +0 -1
- package/dist/components/WalletStatefulConnect/ExperimentalChain.d.ts +0 -8
- package/dist/components/WalletStatefulConnect/ExperimentalChain.d.ts.map +0 -1
- package/dist/components/WalletStatefulConnect/ExperimentalChainStatus.d.ts +0 -4
- package/dist/components/WalletStatefulConnect/ExperimentalChainStatus.d.ts.map +0 -1
- package/dist/components/WalletStatefulConnect/ExperimentalChainStatus.helpers.d.ts +0 -8
- package/dist/components/WalletStatefulConnect/ExperimentalChainStatus.helpers.d.ts.map +0 -1
- package/dist/components/WalletStatefulConnect/ExperimentalChainStatus.types.d.ts +0 -6
- package/dist/components/WalletStatefulConnect/ExperimentalChainStatus.types.d.ts.map +0 -1
- package/dist/components/WalletStatefulConnect/Namespaces.d.ts +0 -4
- package/dist/components/WalletStatefulConnect/Namespaces.d.ts.map +0 -1
- package/dist/components/WalletStatefulConnect/Namespaces.helpers.d.ts +0 -3
- package/dist/components/WalletStatefulConnect/Namespaces.helpers.d.ts.map +0 -1
- package/dist/components/WalletStatefulConnect/Namespaces.styles.d.ts.map +0 -1
- package/dist/components/WalletStatefulConnect/Namespaces.types.d.ts +0 -7
- package/dist/components/WalletStatefulConnect/Namespaces.types.d.ts.map +0 -1
- package/dist/components/WalletStatefulConnect/index.d.ts +0 -5
- package/dist/components/WalletStatefulConnect/index.d.ts.map +0 -1
- package/dist/hooks/useStatefulConnect/index.d.ts +0 -5
- package/dist/hooks/useStatefulConnect/index.d.ts.map +0 -1
- package/dist/hooks/useStatefulConnect/useStatefulConnect.d.ts +0 -25
- package/dist/hooks/useStatefulConnect/useStatefulConnect.d.ts.map +0 -1
- package/dist/hooks/useStatefulConnect/useStatefulConnect.helpers.d.ts +0 -8
- package/dist/hooks/useStatefulConnect/useStatefulConnect.helpers.d.ts.map +0 -1
- package/dist/hooks/useStatefulConnect/useStatefulConnect.state.d.ts +0 -9
- package/dist/hooks/useStatefulConnect/useStatefulConnect.state.d.ts.map +0 -1
- package/dist/hooks/useStatefulConnect/useStatefulConnect.types.d.ts +0 -43
- package/dist/hooks/useStatefulConnect/useStatefulConnect.types.d.ts.map +0 -1
- package/src/components/ConfirmWalletsModal/ConfirmWallets.helpers.ts +0 -10
- package/src/components/StatefulConnectModal/StatefulConnectModal.tsx +0 -168
- package/src/components/StatefulConnectModal/helpers.ts +0 -23
- package/src/components/StatefulConnectModal/index.ts +0 -1
- package/src/components/WalletStatefulConnect/ConnectStatus.types.ts +0 -11
- package/src/components/WalletStatefulConnect/DerivationPath.helpers.ts +0 -23
- package/src/components/WalletStatefulConnect/DerivationPath.types.ts +0 -6
- package/src/components/WalletStatefulConnect/ExperimentalChain.tsx +0 -36
- package/src/components/WalletStatefulConnect/ExperimentalChainStatus.helpers.ts +0 -53
- package/src/components/WalletStatefulConnect/ExperimentalChainStatus.tsx +0 -35
- package/src/components/WalletStatefulConnect/ExperimentalChainStatus.types.ts +0 -5
- package/src/components/WalletStatefulConnect/Namespaces.helpers.ts +0 -9
- package/src/components/WalletStatefulConnect/index.ts +0 -4
- package/src/hooks/useStatefulConnect/index.ts +0 -9
- package/src/hooks/useStatefulConnect/useStatefulConnect.helpers.ts +0 -13
- package/src/hooks/useStatefulConnect/useStatefulConnect.state.ts +0 -45
- package/src/hooks/useStatefulConnect/useStatefulConnect.ts +0 -232
- package/src/hooks/useStatefulConnect/useStatefulConnect.types.ts +0 -56
- /package/src/components/{WalletStatefulConnect/DerivationPath.styles.ts → WalletDerivationPathModal/WalletDerivationPathModal.styles.ts} +0 -0
- /package/src/components/{WalletStatefulConnect/ConnectStatus.styles.ts → WalletModal/WalletModalContent.styles.ts} +0 -0
- /package/src/components/{WalletStatefulConnect/Namespaces.styles.ts → WalletNamespacesModal/WalletNamespacesModal.styles.ts} +0 -0
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import type { PropTypes } from './ExperimentalChainStatus.types';
|
|
2
|
-
import type { MessageType } from '@rango-dev/ui';
|
|
3
|
-
|
|
4
|
-
import { i18n } from '@lingui/core';
|
|
5
|
-
|
|
6
|
-
export function generateMessageByStatus(
|
|
7
|
-
status: PropTypes['status'],
|
|
8
|
-
blockchainDisplayName: string | undefined
|
|
9
|
-
): {
|
|
10
|
-
type: MessageType;
|
|
11
|
-
title: string;
|
|
12
|
-
description: string;
|
|
13
|
-
} {
|
|
14
|
-
switch (status) {
|
|
15
|
-
case 'in-progress':
|
|
16
|
-
return {
|
|
17
|
-
type: 'loading',
|
|
18
|
-
title: i18n.t({
|
|
19
|
-
id: 'Add {blockchainDisplayName} Chain',
|
|
20
|
-
values: { blockchainDisplayName },
|
|
21
|
-
}),
|
|
22
|
-
description: i18n.t({
|
|
23
|
-
id: 'You should connect a {blockchainDisplayName} supported wallet or choose a different {blockchainDisplayName} address',
|
|
24
|
-
values: { blockchainDisplayName },
|
|
25
|
-
}),
|
|
26
|
-
};
|
|
27
|
-
case 'completed':
|
|
28
|
-
return {
|
|
29
|
-
type: 'success',
|
|
30
|
-
title: i18n.t({
|
|
31
|
-
id: '{blockchainDisplayName} Chain Added',
|
|
32
|
-
values: { blockchainDisplayName },
|
|
33
|
-
}),
|
|
34
|
-
description: i18n.t({
|
|
35
|
-
id: 'You should connect a {blockchainDisplayName} supported wallet or choose a different {blockchainDisplayName} address',
|
|
36
|
-
values: { blockchainDisplayName },
|
|
37
|
-
}),
|
|
38
|
-
};
|
|
39
|
-
case 'rejected':
|
|
40
|
-
return {
|
|
41
|
-
type: 'error',
|
|
42
|
-
title: i18n.t('Request Rejected'),
|
|
43
|
-
description: i18n.t({
|
|
44
|
-
id: "You've rejected adding {blockchainDisplayName} chain to your wallet.",
|
|
45
|
-
values: { blockchainDisplayName },
|
|
46
|
-
}),
|
|
47
|
-
};
|
|
48
|
-
default:
|
|
49
|
-
throw new Error(
|
|
50
|
-
`Showing information about an experimentation chain status needs to be defined first. status: ${status}`
|
|
51
|
-
);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import type { PropTypes } from './ExperimentalChainStatus.types';
|
|
2
|
-
|
|
3
|
-
import { Image, MessageBox, Spinner } from '@rango-dev/ui';
|
|
4
|
-
import React from 'react';
|
|
5
|
-
|
|
6
|
-
import {
|
|
7
|
-
LogoContainer,
|
|
8
|
-
WalletImageContainer,
|
|
9
|
-
} from '../ConfirmWalletsModal/WalletList.styles';
|
|
10
|
-
|
|
11
|
-
import { generateMessageByStatus } from './ExperimentalChainStatus.helpers';
|
|
12
|
-
|
|
13
|
-
export function ExperimentalChainStatus(props: PropTypes) {
|
|
14
|
-
const { status, displayName, image } = props;
|
|
15
|
-
const data = generateMessageByStatus(status, displayName);
|
|
16
|
-
const hasImage = status == 'in-progress';
|
|
17
|
-
|
|
18
|
-
return (
|
|
19
|
-
<MessageBox
|
|
20
|
-
type={data.type}
|
|
21
|
-
title={data.title}
|
|
22
|
-
description={data.description}
|
|
23
|
-
icon={
|
|
24
|
-
hasImage ? (
|
|
25
|
-
<LogoContainer>
|
|
26
|
-
<WalletImageContainer>
|
|
27
|
-
<Image src={image} size={45} />
|
|
28
|
-
</WalletImageContainer>
|
|
29
|
-
<Spinner />
|
|
30
|
-
</LogoContainer>
|
|
31
|
-
) : undefined
|
|
32
|
-
}
|
|
33
|
-
/>
|
|
34
|
-
);
|
|
35
|
-
}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export { useStatefulConnect } from './useStatefulConnect';
|
|
2
|
-
export { ResultStatus } from './useStatefulConnect.types';
|
|
3
|
-
export type {
|
|
4
|
-
NeedsNamespacesState,
|
|
5
|
-
NeedsDerivationPathState,
|
|
6
|
-
Result,
|
|
7
|
-
} from './useStatefulConnect.types';
|
|
8
|
-
|
|
9
|
-
export type { State } from './useStatefulConnect.state';
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type { State } from './useStatefulConnect.state';
|
|
2
|
-
|
|
3
|
-
export function isStateOnDerivationPathStep(
|
|
4
|
-
state: State
|
|
5
|
-
): state is State & { derivationPath: NonNullable<State['derivationPath']> } {
|
|
6
|
-
return !!state.derivationPath;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
export function isStateOnNamespace(
|
|
10
|
-
state: State
|
|
11
|
-
): state is State & { namespace: NonNullable<State['namespace']> } {
|
|
12
|
-
return !!state.namespace;
|
|
13
|
-
}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
Actions,
|
|
3
|
-
NeedsDerivationPathState,
|
|
4
|
-
NeedsNamespacesState,
|
|
5
|
-
} from './useStatefulConnect.types';
|
|
6
|
-
|
|
7
|
-
export interface State {
|
|
8
|
-
status: 'init' | 'namespace' | 'derivationPath';
|
|
9
|
-
namespace: NeedsNamespacesState | null;
|
|
10
|
-
derivationPath: NeedsDerivationPathState | null;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export const initState: State = {
|
|
14
|
-
status: 'init',
|
|
15
|
-
namespace: null,
|
|
16
|
-
derivationPath: null,
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
export function reducer(state: State, action: Actions): State {
|
|
20
|
-
switch (action.type) {
|
|
21
|
-
case 'needsNamespace':
|
|
22
|
-
return {
|
|
23
|
-
...state,
|
|
24
|
-
status: 'namespace',
|
|
25
|
-
namespace: action.payload,
|
|
26
|
-
derivationPath: null,
|
|
27
|
-
};
|
|
28
|
-
case 'needsDerivationPath':
|
|
29
|
-
return {
|
|
30
|
-
...state,
|
|
31
|
-
status: 'derivationPath',
|
|
32
|
-
derivationPath: action.payload,
|
|
33
|
-
};
|
|
34
|
-
case 'reset':
|
|
35
|
-
return initState;
|
|
36
|
-
case 'resetDerivation':
|
|
37
|
-
return {
|
|
38
|
-
...state,
|
|
39
|
-
derivationPath: null,
|
|
40
|
-
status: 'namespace',
|
|
41
|
-
};
|
|
42
|
-
default:
|
|
43
|
-
throw new Error(`Action hasn't been defined.`);
|
|
44
|
-
}
|
|
45
|
-
}
|
|
@@ -1,232 +0,0 @@
|
|
|
1
|
-
import type { HandleConnectOptions, Result } from './useStatefulConnect.types';
|
|
2
|
-
import type { WalletInfoWithExtra } from '../../types';
|
|
3
|
-
import type {
|
|
4
|
-
Namespace,
|
|
5
|
-
NamespaceData,
|
|
6
|
-
WalletType,
|
|
7
|
-
} from '@rango-dev/wallets-shared';
|
|
8
|
-
|
|
9
|
-
import { WalletState } from '@rango-dev/ui';
|
|
10
|
-
import { useWallets } from '@rango-dev/wallets-react';
|
|
11
|
-
import { useReducer } from 'react';
|
|
12
|
-
|
|
13
|
-
import {
|
|
14
|
-
isStateOnDerivationPathStep,
|
|
15
|
-
isStateOnNamespace,
|
|
16
|
-
} from './useStatefulConnect.helpers';
|
|
17
|
-
import { initState, reducer, type State } from './useStatefulConnect.state';
|
|
18
|
-
import { ResultStatus } from './useStatefulConnect.types';
|
|
19
|
-
|
|
20
|
-
interface UseStatefulConnect {
|
|
21
|
-
handleConnect: (
|
|
22
|
-
wallet: WalletInfoWithExtra,
|
|
23
|
-
options?: HandleConnectOptions
|
|
24
|
-
) => Promise<Result>;
|
|
25
|
-
handleNamespace: (
|
|
26
|
-
wallet: WalletInfoWithExtra,
|
|
27
|
-
selectedNamespaces: Namespace[]
|
|
28
|
-
) => Promise<Result>;
|
|
29
|
-
handleDerivationPath: (path: string) => Promise<Result>;
|
|
30
|
-
handleDisconnect: (type: WalletType) => Promise<Result>;
|
|
31
|
-
getState(): State;
|
|
32
|
-
resetState(section?: 'derivation'): void;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
*
|
|
37
|
-
* This hook maintains state of wallet and checks if additional information
|
|
38
|
-
* is required to call the `connect` method of `core` package properly.
|
|
39
|
-
*
|
|
40
|
-
* The final goal is running `runConnect` which calls `wallets/core`'s `connect` method.
|
|
41
|
-
* But sometimes it needs to get more information like what namespace it should be connected to,
|
|
42
|
-
* or what derivation path should be used for.
|
|
43
|
-
*
|
|
44
|
-
*/
|
|
45
|
-
export function useStatefulConnect(): UseStatefulConnect {
|
|
46
|
-
const { state, disconnect, connect } = useWallets();
|
|
47
|
-
|
|
48
|
-
const [connectState, dispatch] = useReducer(reducer, initState);
|
|
49
|
-
|
|
50
|
-
const runConnect = async (
|
|
51
|
-
type: WalletType,
|
|
52
|
-
namespaces?: NamespaceData[],
|
|
53
|
-
_options?: HandleConnectOptions
|
|
54
|
-
): Promise<{ status: ResultStatus }> => {
|
|
55
|
-
/*
|
|
56
|
-
* When running this function, it means all optional steps (like namespace and derivation path) has passed, or wallet doesn't need them at all.
|
|
57
|
-
* By resetting state, we will make sure when user tries to connect other wallets, it doesn't have unexpected states.
|
|
58
|
-
*/
|
|
59
|
-
dispatch({
|
|
60
|
-
type: 'reset',
|
|
61
|
-
});
|
|
62
|
-
|
|
63
|
-
try {
|
|
64
|
-
await connect(type, undefined, namespaces);
|
|
65
|
-
|
|
66
|
-
return { status: ResultStatus.Connected };
|
|
67
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
68
|
-
} catch (e: any) {
|
|
69
|
-
const message = e?.message
|
|
70
|
-
? `Error: ${e.message}`
|
|
71
|
-
: 'An unknown error happened during connecting wallet.';
|
|
72
|
-
|
|
73
|
-
throw new Error(message, { cause: e });
|
|
74
|
-
}
|
|
75
|
-
};
|
|
76
|
-
|
|
77
|
-
const handleConnect = async (
|
|
78
|
-
wallet: WalletInfoWithExtra,
|
|
79
|
-
options?: HandleConnectOptions
|
|
80
|
-
): Promise<{
|
|
81
|
-
status: ResultStatus;
|
|
82
|
-
}> => {
|
|
83
|
-
const isDisconnected = wallet.state === WalletState.DISCONNECTED;
|
|
84
|
-
|
|
85
|
-
if (isDisconnected) {
|
|
86
|
-
if (!wallet.namespaces) {
|
|
87
|
-
return await runConnect(wallet.type, undefined, options);
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
const needsNamespace = wallet.namespaces.length > 1;
|
|
91
|
-
const needsDerivationPath = wallet.needsDerivationPath;
|
|
92
|
-
|
|
93
|
-
if (needsNamespace) {
|
|
94
|
-
dispatch({
|
|
95
|
-
type: 'needsNamespace',
|
|
96
|
-
payload: {
|
|
97
|
-
providerType: wallet.type,
|
|
98
|
-
providerImage: wallet.image,
|
|
99
|
-
availableNamespaces: wallet.namespaces,
|
|
100
|
-
singleNamespace: wallet.singleNamespace,
|
|
101
|
-
},
|
|
102
|
-
});
|
|
103
|
-
return { status: ResultStatus.Namespace };
|
|
104
|
-
} else if (needsDerivationPath) {
|
|
105
|
-
dispatch({
|
|
106
|
-
type: 'needsDerivationPath',
|
|
107
|
-
payload: {
|
|
108
|
-
providerType: wallet.type,
|
|
109
|
-
providerImage: wallet.image,
|
|
110
|
-
namespace: wallet.namespaces[0],
|
|
111
|
-
},
|
|
112
|
-
});
|
|
113
|
-
return { status: ResultStatus.DerivationPath };
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
return await runConnect(
|
|
117
|
-
wallet.type,
|
|
118
|
-
wallet.namespaces.map((namespace) => ({ namespace })),
|
|
119
|
-
options
|
|
120
|
-
);
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
if (options?.disconnectIfConnected) {
|
|
124
|
-
await handleDisconnect(wallet.type);
|
|
125
|
-
return { status: ResultStatus.Disconnected };
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
return { status: ResultStatus.DisconnectedUnhandled };
|
|
129
|
-
};
|
|
130
|
-
|
|
131
|
-
const handleNamespace = async (
|
|
132
|
-
wallet: WalletInfoWithExtra,
|
|
133
|
-
selectedNamespaces: Namespace[]
|
|
134
|
-
): Promise<Result> => {
|
|
135
|
-
const isSingleNamespace = wallet.singleNamespace;
|
|
136
|
-
const needsDerivationPath = wallet.needsDerivationPath;
|
|
137
|
-
const firstSelectedNamespace = selectedNamespaces[0];
|
|
138
|
-
|
|
139
|
-
if (!firstSelectedNamespace) {
|
|
140
|
-
throw new Error(
|
|
141
|
-
'To confirm a namespace, you should select at least one namespace.'
|
|
142
|
-
);
|
|
143
|
-
}
|
|
144
|
-
|
|
145
|
-
/*
|
|
146
|
-
* Currently we support derivation path only for single namespace wallets.
|
|
147
|
-
*
|
|
148
|
-
* Basically Single namespace is a list with radio buttons to let the user select one value within the list.
|
|
149
|
-
*/
|
|
150
|
-
if (isSingleNamespace && needsDerivationPath) {
|
|
151
|
-
dispatch({
|
|
152
|
-
type: 'needsDerivationPath',
|
|
153
|
-
payload: {
|
|
154
|
-
providerType: wallet.type,
|
|
155
|
-
providerImage: wallet.image,
|
|
156
|
-
namespace: firstSelectedNamespace,
|
|
157
|
-
},
|
|
158
|
-
});
|
|
159
|
-
|
|
160
|
-
return { status: ResultStatus.DerivationPath };
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
/**
|
|
164
|
-
* If execution reaches here, means we don't have any more optional step (like namespace and derivation)
|
|
165
|
-
* So we should start connecting wallet.
|
|
166
|
-
*/
|
|
167
|
-
|
|
168
|
-
if (!isStateOnNamespace(connectState)) {
|
|
169
|
-
// Unreachable code.
|
|
170
|
-
throw new Error(
|
|
171
|
-
'Something went wrong on handling namespace. Please retry.'
|
|
172
|
-
);
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
const type = connectState.namespace.providerType;
|
|
176
|
-
const namespaces = selectedNamespaces.map((namespace) => ({
|
|
177
|
-
namespace,
|
|
178
|
-
}));
|
|
179
|
-
|
|
180
|
-
return await runConnect(type, namespaces);
|
|
181
|
-
};
|
|
182
|
-
|
|
183
|
-
const handleDerivationPath = async (
|
|
184
|
-
derivationPath: string
|
|
185
|
-
): Promise<Result> => {
|
|
186
|
-
if (!derivationPath) {
|
|
187
|
-
throw new Error(
|
|
188
|
-
"Derivation path is empty. Please make sure you've filled the field correctly."
|
|
189
|
-
);
|
|
190
|
-
}
|
|
191
|
-
|
|
192
|
-
if (!isStateOnDerivationPathStep(connectState)) {
|
|
193
|
-
throw new Error(
|
|
194
|
-
'It seems you are filling derivation path without setting namespace before doing that. Please retry to connect.'
|
|
195
|
-
);
|
|
196
|
-
}
|
|
197
|
-
const type = connectState.derivationPath.providerType;
|
|
198
|
-
const selectedNamespace = connectState.derivationPath.namespace;
|
|
199
|
-
const namespaces = [{ namespace: selectedNamespace, derivationPath }];
|
|
200
|
-
|
|
201
|
-
return await runConnect(type, namespaces);
|
|
202
|
-
};
|
|
203
|
-
|
|
204
|
-
const handleDisconnect = async (type: WalletType): Promise<Result> => {
|
|
205
|
-
const wallet = state(type);
|
|
206
|
-
if (wallet.connected) {
|
|
207
|
-
await disconnect(type);
|
|
208
|
-
return { status: ResultStatus.Disconnected };
|
|
209
|
-
}
|
|
210
|
-
|
|
211
|
-
return { status: ResultStatus.Noop };
|
|
212
|
-
};
|
|
213
|
-
|
|
214
|
-
return {
|
|
215
|
-
handleConnect,
|
|
216
|
-
handleDisconnect,
|
|
217
|
-
handleNamespace,
|
|
218
|
-
handleDerivationPath,
|
|
219
|
-
getState: () => connectState,
|
|
220
|
-
resetState: (section?: 'derivation') => {
|
|
221
|
-
if (section === 'derivation') {
|
|
222
|
-
dispatch({
|
|
223
|
-
type: 'resetDerivation',
|
|
224
|
-
});
|
|
225
|
-
} else {
|
|
226
|
-
dispatch({
|
|
227
|
-
type: 'reset',
|
|
228
|
-
});
|
|
229
|
-
}
|
|
230
|
-
},
|
|
231
|
-
};
|
|
232
|
-
}
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import type { Namespace } from '@rango-dev/wallets-shared';
|
|
2
|
-
|
|
3
|
-
export interface HandleConnectOptions {
|
|
4
|
-
// To have a switch between connect and disconnect when user is clicking on a button, this option can be helpful.
|
|
5
|
-
disconnectIfConnected?: boolean;
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
export interface NeedsNamespacesState {
|
|
9
|
-
providerType: string;
|
|
10
|
-
providerImage: string;
|
|
11
|
-
availableNamespaces?: Namespace[];
|
|
12
|
-
singleNamespace?: boolean;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
export interface NeedsDerivationPathState {
|
|
16
|
-
providerType: string;
|
|
17
|
-
providerImage: string;
|
|
18
|
-
namespace: Namespace;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
export enum ResultStatus {
|
|
22
|
-
Connected = 'connected',
|
|
23
|
-
Namespace = 'namespace',
|
|
24
|
-
DerivationPath = 'derivation-path',
|
|
25
|
-
Disconnected = 'disconnected',
|
|
26
|
-
DisconnectedUnhandled = 'disconnected-unhandled',
|
|
27
|
-
Noop = 'noop',
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
export type Result = { status: ResultStatus };
|
|
31
|
-
|
|
32
|
-
// State types
|
|
33
|
-
|
|
34
|
-
interface UpdateNamespaceAction {
|
|
35
|
-
type: 'needsNamespace';
|
|
36
|
-
payload: NeedsNamespacesState;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
interface UpdateDerivationPathAction {
|
|
40
|
-
type: 'needsDerivationPath';
|
|
41
|
-
payload: NeedsDerivationPathState;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
interface ResetAction {
|
|
45
|
-
type: 'reset';
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
interface ResetDerivationAction {
|
|
49
|
-
type: 'resetDerivation';
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
export type Actions =
|
|
53
|
-
| ResetAction
|
|
54
|
-
| ResetDerivationAction
|
|
55
|
-
| UpdateDerivationPathAction
|
|
56
|
-
| UpdateNamespaceAction;
|
|
File without changes
|
|
File without changes
|