@lifi/widget 3.0.0-alpha.17 → 3.0.0-alpha.19
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/AppRoutes.tsx +22 -0
- package/_cjs/AppRoutes.js +17 -0
- package/_cjs/AppRoutes.js.map +1 -1
- package/_cjs/components/AccountAvatar.d.ts +7 -0
- package/_cjs/components/AccountAvatar.js +20 -0
- package/_cjs/components/AccountAvatar.js.map +1 -0
- package/_cjs/components/ActiveTransactions/ActiveTransactions.style.d.ts +2 -2
- package/_cjs/components/AlertMessage/AlertMessage.d.ts +11 -0
- package/_cjs/components/AlertMessage/AlertMessage.js +8 -0
- package/_cjs/components/AlertMessage/AlertMessage.js.map +1 -0
- package/_cjs/components/AlertMessage/AlertMessage.style.d.ts +12 -0
- package/_cjs/components/AlertMessage/AlertMessage.style.js +35 -0
- package/_cjs/components/AlertMessage/AlertMessage.style.js.map +1 -0
- package/_cjs/components/AlertMessage/index.d.ts +3 -0
- package/_cjs/components/AlertMessage/index.js +20 -0
- package/_cjs/components/AlertMessage/index.js.map +1 -0
- package/_cjs/components/AlertMessage/types.d.ts +1 -0
- package/_cjs/components/AlertMessage/types.js +3 -0
- package/_cjs/components/AlertMessage/types.js.map +1 -0
- package/_cjs/components/BaseTransactionButton/BaseTransactionButton.js +6 -3
- package/_cjs/components/BaseTransactionButton/BaseTransactionButton.js.map +1 -1
- package/_cjs/{pages/SettingsPage/SettingsCard/SettingCardButton.d.ts → components/Card/CardButton.d.ts} +2 -2
- package/_cjs/components/Card/CardButton.js +9 -0
- package/_cjs/components/Card/CardButton.js.map +1 -0
- package/_cjs/components/Card/CardButton.style.d.ts +13 -0
- package/_cjs/components/Card/CardButton.style.js +36 -0
- package/_cjs/components/Card/CardButton.style.js.map +1 -0
- package/_cjs/components/Card/index.d.ts +2 -0
- package/_cjs/components/Card/index.js +2 -0
- package/_cjs/components/Card/index.js.map +1 -1
- package/_cjs/components/ChainSelect/useChainSelect.js +4 -15
- package/_cjs/components/ChainSelect/useChainSelect.js.map +1 -1
- package/_cjs/components/GasMessage/FundsSufficiencyMessage.js +13 -5
- package/_cjs/components/GasMessage/FundsSufficiencyMessage.js.map +1 -1
- package/_cjs/components/GasMessage/GasMessage.style.d.ts +1 -14
- package/_cjs/components/GasMessage/GasMessage.style.js +1 -24
- package/_cjs/components/GasMessage/GasMessage.style.js.map +1 -1
- package/_cjs/components/GasMessage/GasRefuelMessage.js +4 -5
- package/_cjs/components/GasMessage/GasRefuelMessage.js.map +1 -1
- package/_cjs/components/GasMessage/GasSufficiencyMessage.js +2 -6
- package/_cjs/components/GasMessage/GasSufficiencyMessage.js.map +1 -1
- package/_cjs/components/Header/NavigationHeader.js +11 -2
- package/_cjs/components/Header/NavigationHeader.js.map +1 -1
- package/_cjs/components/ListItem/ListItem.d.ts +6 -0
- package/_cjs/components/ListItem/ListItem.js +27 -0
- package/_cjs/components/ListItem/ListItem.js.map +1 -0
- package/_cjs/components/ListItem/ListItemButton.d.ts +4 -0
- package/_cjs/components/ListItem/ListItemButton.js +12 -0
- package/_cjs/components/ListItem/ListItemButton.js.map +1 -0
- package/_cjs/components/ListItem/index.d.ts +2 -0
- package/_cjs/components/ListItem/index.js +19 -0
- package/_cjs/components/ListItem/index.js.map +1 -0
- package/_cjs/components/ListItemButton.d.ts +1 -1
- package/_cjs/components/ListItemButton.js +3 -2
- package/_cjs/components/ListItemButton.js.map +1 -1
- package/_cjs/components/Menu.d.ts +1 -0
- package/_cjs/components/Menu.js +25 -0
- package/_cjs/components/Menu.js.map +1 -0
- package/_cjs/components/PageContainer.d.ts +1 -2
- package/_cjs/components/PoweredBy/PoweredBy.style.d.ts +1 -1
- package/_cjs/components/ReverseTokensButton/ReverseTokensButton.js +11 -3
- package/_cjs/components/ReverseTokensButton/ReverseTokensButton.js.map +1 -1
- package/_cjs/components/Routes/Routes.js +1 -3
- package/_cjs/components/Routes/Routes.js.map +1 -1
- package/_cjs/components/Routes/RoutesExpanded.js +4 -7
- package/_cjs/components/Routes/RoutesExpanded.js.map +1 -1
- package/_cjs/components/SendToWallet/SendToWallet.style.d.ts +4 -3
- package/_cjs/components/SendToWallet/SendToWallet.style.js +26 -15
- package/_cjs/components/SendToWallet/SendToWallet.style.js.map +1 -1
- package/_cjs/components/SendToWallet/SendToWalletButton.d.ts +1 -2
- package/_cjs/components/SendToWallet/SendToWalletButton.js +55 -23
- package/_cjs/components/SendToWallet/SendToWalletButton.js.map +1 -1
- package/_cjs/components/SendToWallet/SendToWalletExpandButton.d.ts +2 -0
- package/_cjs/components/SendToWallet/SendToWalletExpandButton.js +41 -0
- package/_cjs/components/SendToWallet/SendToWalletExpandButton.js.map +1 -0
- package/_cjs/components/SendToWallet/index.d.ts +2 -1
- package/_cjs/components/SendToWallet/index.js +2 -1
- package/_cjs/components/SendToWallet/index.js.map +1 -1
- package/_cjs/components/SettingsListItemButton.d.ts +1 -1
- package/_cjs/components/Step/StepProcess.style.d.ts +1 -1
- package/_cjs/components/TokenList/TokenList.style.d.ts +2 -5
- package/_cjs/components/TokenList/TokenList.style.js +3 -28
- package/_cjs/components/TokenList/TokenList.style.js.map +1 -1
- package/_cjs/components/TokenList/TokenListItem.js +3 -2
- package/_cjs/components/TokenList/TokenListItem.js.map +1 -1
- package/_cjs/components/TokenList/VirtualizedTokenList.js +2 -2
- package/_cjs/components/TokenList/VirtualizedTokenList.js.map +1 -1
- package/_cjs/config/version.d.ts +1 -1
- package/_cjs/config/version.js +1 -1
- package/_cjs/hooks/index.d.ts +3 -1
- package/_cjs/hooks/index.js +3 -1
- package/_cjs/hooks/index.js.map +1 -1
- package/_cjs/hooks/useAccount.d.ts +14 -3
- package/_cjs/hooks/useAccount.js +24 -6
- package/_cjs/hooks/useAccount.js.map +1 -1
- package/_cjs/hooks/useAddressValidation.d.ts +17 -0
- package/_cjs/hooks/useAddressValidation.js +59 -0
- package/_cjs/hooks/useAddressValidation.js.map +1 -0
- package/_cjs/hooks/useFromTokenSufficiency.js +3 -4
- package/_cjs/hooks/useFromTokenSufficiency.js.map +1 -1
- package/_cjs/hooks/useGasSufficiency.js +6 -5
- package/_cjs/hooks/useGasSufficiency.js.map +1 -1
- package/_cjs/hooks/useRouteExecution.js +7 -5
- package/_cjs/hooks/useRouteExecution.js.map +1 -1
- package/_cjs/hooks/useRoutes.d.ts +2 -2
- package/_cjs/hooks/useRoutes.js +17 -29
- package/_cjs/hooks/useRoutes.js.map +1 -1
- package/_cjs/hooks/useToAddressRequirements.d.ts +4 -0
- package/_cjs/hooks/{useRequiredToAddress.js → useToAddressRequirements.js} +11 -8
- package/_cjs/hooks/useToAddressRequirements.js.map +1 -0
- package/_cjs/hooks/useToAddressReset.d.ts +4 -0
- package/_cjs/hooks/useToAddressReset.js +32 -0
- package/_cjs/hooks/useToAddressReset.js.map +1 -0
- package/_cjs/hooks/useTokenAddressBalance.d.ts +1 -1
- package/_cjs/hooks/useTokenBalance.d.ts +1 -1
- package/_cjs/hooks/useTokenBalance.js +4 -7
- package/_cjs/hooks/useTokenBalance.js.map +1 -1
- package/_cjs/hooks/useTokenBalances.d.ts +1 -1
- package/_cjs/hooks/useTokenBalances.js +3 -4
- package/_cjs/hooks/useTokenBalances.js.map +1 -1
- package/_cjs/hooks/useTransactionDetails.js +24 -22
- package/_cjs/hooks/useTransactionDetails.js.map +1 -1
- package/_cjs/i18n/en.json +27 -6
- package/_cjs/pages/MainPage/MainPage.js +1 -1
- package/_cjs/pages/MainPage/MainPage.js.map +1 -1
- package/_cjs/pages/MainPage/ReviewButton.js +3 -2
- package/_cjs/pages/MainPage/ReviewButton.js.map +1 -1
- package/_cjs/pages/SendToWallet/BookmarkAddressSheet.d.ts +9 -0
- package/_cjs/pages/SendToWallet/BookmarkAddressSheet.js +111 -0
- package/_cjs/pages/SendToWallet/BookmarkAddressSheet.js.map +1 -0
- package/_cjs/pages/SendToWallet/BookmarksPage.d.ts +1 -0
- package/_cjs/pages/SendToWallet/BookmarksPage.js +88 -0
- package/_cjs/pages/SendToWallet/BookmarksPage.js.map +1 -0
- package/_cjs/pages/SendToWallet/ConfirmAddressSheet.d.ts +9 -0
- package/_cjs/pages/SendToWallet/ConfirmAddressSheet.js +35 -0
- package/_cjs/pages/SendToWallet/ConfirmAddressSheet.js.map +1 -0
- package/_cjs/pages/SendToWallet/ConnectedWalletsPage.d.ts +1 -0
- package/_cjs/pages/SendToWallet/ConnectedWalletsPage.js +84 -0
- package/_cjs/pages/SendToWallet/ConnectedWalletsPage.js.map +1 -0
- package/_cjs/pages/SendToWallet/EmptyListIndicator.d.ts +6 -0
- package/_cjs/pages/SendToWallet/EmptyListIndicator.js +8 -0
- package/_cjs/pages/SendToWallet/EmptyListIndicator.js.map +1 -0
- package/_cjs/pages/SendToWallet/RecentWalletsPage.d.ts +1 -0
- package/_cjs/pages/SendToWallet/RecentWalletsPage.js +105 -0
- package/_cjs/pages/SendToWallet/RecentWalletsPage.js.map +1 -0
- package/_cjs/pages/SendToWallet/SendToWalletPage.d.ts +1 -0
- package/_cjs/pages/SendToWallet/SendToWalletPage.js +131 -0
- package/_cjs/pages/SendToWallet/SendToWalletPage.js.map +1 -0
- package/_cjs/pages/SendToWallet/SendToWalletPage.style.d.ts +61 -0
- package/_cjs/pages/SendToWallet/SendToWalletPage.style.js +146 -0
- package/_cjs/pages/SendToWallet/SendToWalletPage.style.js.map +1 -0
- package/_cjs/pages/SendToWallet/index.d.ts +4 -0
- package/_cjs/pages/SendToWallet/index.js +21 -0
- package/_cjs/pages/SendToWallet/index.js.map +1 -0
- package/_cjs/pages/SettingsPage/BridgeAndExchangeSettings.js +2 -1
- package/_cjs/pages/SettingsPage/BridgeAndExchangeSettings.js.map +1 -1
- package/_cjs/pages/SettingsPage/LanguageSetting.js +2 -2
- package/_cjs/pages/SettingsPage/LanguageSetting.js.map +1 -1
- package/_cjs/pages/SettingsPage/SendToWalletOptionSetting.js +2 -2
- package/_cjs/pages/SettingsPage/SendToWalletOptionSetting.js.map +1 -1
- package/_cjs/pages/SettingsPage/SettingsCard/BadgedValue.js +2 -1
- package/_cjs/pages/SettingsPage/SettingsCard/BadgedValue.js.map +1 -1
- package/_cjs/pages/SettingsPage/SettingsCard/SettingCard.style.d.ts +0 -9
- package/_cjs/pages/SettingsPage/SettingsCard/SettingCard.style.js +2 -24
- package/_cjs/pages/SettingsPage/SettingsCard/SettingCard.style.js.map +1 -1
- package/_cjs/pages/SettingsPage/SettingsCard/SettingCardExpandable.js +2 -3
- package/_cjs/pages/SettingsPage/SettingsCard/SettingCardExpandable.js.map +1 -1
- package/_cjs/pages/SettingsPage/SettingsCard/index.d.ts +0 -2
- package/_cjs/pages/SettingsPage/SettingsCard/index.js +0 -2
- package/_cjs/pages/SettingsPage/SettingsCard/index.js.map +1 -1
- package/_cjs/pages/SettingsPage/SlippageSettings/SlippageSettings.js.map +1 -1
- package/_cjs/pages/SettingsPage/ThemeSettings.js +2 -1
- package/_cjs/pages/SettingsPage/ThemeSettings.js.map +1 -1
- package/_cjs/providers/I18nProvider/I18nProvider.js +1 -1
- package/_cjs/providers/I18nProvider/I18nProvider.js.map +1 -1
- package/_cjs/providers/WalletProvider/SDKProviders.js.map +1 -1
- package/_cjs/stores/StoreProvider.js +2 -1
- package/_cjs/stores/StoreProvider.js.map +1 -1
- package/_cjs/stores/bookmarks/BookmarkStore.d.ts +7 -0
- package/_cjs/stores/bookmarks/BookmarkStore.js +25 -0
- package/_cjs/stores/bookmarks/BookmarkStore.js.map +1 -0
- package/_cjs/stores/bookmarks/createBookmarkStore.d.ts +3 -0
- package/_cjs/stores/bookmarks/createBookmarkStore.js +49 -0
- package/_cjs/stores/bookmarks/createBookmarkStore.js.map +1 -0
- package/_cjs/stores/bookmarks/index.d.ts +5 -0
- package/_cjs/stores/bookmarks/index.js +22 -0
- package/_cjs/stores/bookmarks/index.js.map +1 -0
- package/_cjs/stores/bookmarks/types.d.ts +24 -0
- package/_cjs/stores/bookmarks/types.js +3 -0
- package/_cjs/stores/bookmarks/types.js.map +1 -0
- package/_cjs/stores/bookmarks/useBookmarkActions.d.ts +2 -0
- package/_cjs/stores/bookmarks/useBookmarkActions.js +18 -0
- package/_cjs/stores/bookmarks/useBookmarkActions.js.map +1 -0
- package/_cjs/stores/bookmarks/useBookmarks.d.ts +2 -0
- package/_cjs/stores/bookmarks/useBookmarks.js +15 -0
- package/_cjs/stores/bookmarks/useBookmarks.js.map +1 -0
- package/_cjs/stores/form/FormStore.js +16 -3
- package/_cjs/stores/form/FormStore.js.map +1 -1
- package/_cjs/stores/form/types.js.map +1 -1
- package/_cjs/stores/form/useTouchedFields.d.ts +4 -4
- package/_cjs/stores/index.d.ts +1 -0
- package/_cjs/stores/index.js +1 -0
- package/_cjs/stores/index.js.map +1 -1
- package/_cjs/utils/chainType.d.ts +6 -0
- package/_cjs/utils/chainType.js +24 -0
- package/_cjs/utils/chainType.js.map +1 -0
- package/_cjs/utils/index.d.ts +1 -0
- package/_cjs/utils/index.js +1 -0
- package/_cjs/utils/index.js.map +1 -1
- package/_cjs/utils/navigationRoutes.d.ts +4 -0
- package/_cjs/utils/navigationRoutes.js +12 -0
- package/_cjs/utils/navigationRoutes.js.map +1 -1
- package/_esm/AppRoutes.js +17 -0
- package/_esm/AppRoutes.js.map +1 -1
- package/_esm/components/AccountAvatar.d.ts +7 -0
- package/_esm/components/AccountAvatar.js +16 -0
- package/_esm/components/AccountAvatar.js.map +1 -0
- package/_esm/components/ActiveTransactions/ActiveTransactions.style.d.ts +2 -2
- package/_esm/components/AlertMessage/AlertMessage.d.ts +11 -0
- package/_esm/components/AlertMessage/AlertMessage.js +4 -0
- package/_esm/components/AlertMessage/AlertMessage.js.map +1 -0
- package/_esm/components/AlertMessage/AlertMessage.style.d.ts +12 -0
- package/_esm/components/AlertMessage/AlertMessage.style.js +32 -0
- package/_esm/components/AlertMessage/AlertMessage.style.js.map +1 -0
- package/_esm/components/AlertMessage/index.d.ts +3 -0
- package/_esm/components/AlertMessage/index.js +4 -0
- package/_esm/components/AlertMessage/index.js.map +1 -0
- package/_esm/components/AlertMessage/types.d.ts +1 -0
- package/_esm/components/AlertMessage/types.js +2 -0
- package/_esm/components/AlertMessage/types.js.map +1 -0
- package/_esm/components/BaseTransactionButton/BaseTransactionButton.js +7 -4
- package/_esm/components/BaseTransactionButton/BaseTransactionButton.js.map +1 -1
- package/_esm/{pages/SettingsPage/SettingsCard/SettingCardButton.d.ts → components/Card/CardButton.d.ts} +2 -2
- package/_esm/components/Card/CardButton.js +5 -0
- package/_esm/components/Card/CardButton.js.map +1 -0
- package/_esm/components/Card/CardButton.style.d.ts +13 -0
- package/_esm/components/Card/CardButton.style.js +33 -0
- package/_esm/components/Card/CardButton.style.js.map +1 -0
- package/_esm/components/Card/index.d.ts +2 -0
- package/_esm/components/Card/index.js +2 -0
- package/_esm/components/Card/index.js.map +1 -1
- package/_esm/components/ChainSelect/useChainSelect.js +5 -16
- package/_esm/components/ChainSelect/useChainSelect.js.map +1 -1
- package/_esm/components/GasMessage/FundsSufficiencyMessage.js +14 -6
- package/_esm/components/GasMessage/FundsSufficiencyMessage.js.map +1 -1
- package/_esm/components/GasMessage/GasMessage.style.d.ts +1 -14
- package/_esm/components/GasMessage/GasMessage.style.js +1 -24
- package/_esm/components/GasMessage/GasMessage.style.js.map +1 -1
- package/_esm/components/GasMessage/GasRefuelMessage.js +5 -6
- package/_esm/components/GasMessage/GasRefuelMessage.js.map +1 -1
- package/_esm/components/GasMessage/GasSufficiencyMessage.js +2 -6
- package/_esm/components/GasMessage/GasSufficiencyMessage.js.map +1 -1
- package/_esm/components/Header/NavigationHeader.js +11 -2
- package/_esm/components/Header/NavigationHeader.js.map +1 -1
- package/_esm/components/ListItem/ListItem.d.ts +6 -0
- package/_esm/components/ListItem/ListItem.js +24 -0
- package/_esm/components/ListItem/ListItem.js.map +1 -0
- package/_esm/components/ListItem/ListItemButton.d.ts +4 -0
- package/_esm/components/ListItem/ListItemButton.js +9 -0
- package/_esm/components/ListItem/ListItemButton.js.map +1 -0
- package/_esm/components/ListItem/index.d.ts +2 -0
- package/_esm/components/ListItem/index.js +3 -0
- package/_esm/components/ListItem/index.js.map +1 -0
- package/_esm/components/ListItemButton.d.ts +1 -1
- package/_esm/components/ListItemButton.js +3 -2
- package/_esm/components/ListItemButton.js.map +1 -1
- package/_esm/components/Menu.d.ts +1 -0
- package/_esm/components/Menu.js +22 -0
- package/_esm/components/Menu.js.map +1 -0
- package/_esm/components/PageContainer.d.ts +1 -2
- package/_esm/components/PoweredBy/PoweredBy.style.d.ts +1 -1
- package/_esm/components/ReverseTokensButton/ReverseTokensButton.js +11 -3
- package/_esm/components/ReverseTokensButton/ReverseTokensButton.js.map +1 -1
- package/_esm/components/Routes/Routes.js +1 -3
- package/_esm/components/Routes/Routes.js.map +1 -1
- package/_esm/components/Routes/RoutesExpanded.js +5 -8
- package/_esm/components/Routes/RoutesExpanded.js.map +1 -1
- package/_esm/components/SendToWallet/SendToWallet.style.d.ts +4 -3
- package/_esm/components/SendToWallet/SendToWallet.style.js +25 -14
- package/_esm/components/SendToWallet/SendToWallet.style.js.map +1 -1
- package/_esm/components/SendToWallet/SendToWalletButton.d.ts +1 -2
- package/_esm/components/SendToWallet/SendToWalletButton.js +59 -27
- package/_esm/components/SendToWallet/SendToWalletButton.js.map +1 -1
- package/_esm/components/SendToWallet/SendToWalletExpandButton.d.ts +2 -0
- package/_esm/components/SendToWallet/SendToWalletExpandButton.js +37 -0
- package/_esm/components/SendToWallet/SendToWalletExpandButton.js.map +1 -0
- package/_esm/components/SendToWallet/index.d.ts +2 -1
- package/_esm/components/SendToWallet/index.js +2 -1
- package/_esm/components/SendToWallet/index.js.map +1 -1
- package/_esm/components/SettingsListItemButton.d.ts +1 -1
- package/_esm/components/Step/StepProcess.style.d.ts +1 -1
- package/_esm/components/TokenList/TokenList.style.d.ts +2 -5
- package/_esm/components/TokenList/TokenList.style.js +3 -28
- package/_esm/components/TokenList/TokenList.style.js.map +1 -1
- package/_esm/components/TokenList/TokenListItem.js +3 -2
- package/_esm/components/TokenList/TokenListItem.js.map +1 -1
- package/_esm/components/TokenList/VirtualizedTokenList.js +2 -2
- package/_esm/components/TokenList/VirtualizedTokenList.js.map +1 -1
- package/_esm/config/version.d.ts +1 -1
- package/_esm/config/version.js +1 -1
- package/_esm/hooks/index.d.ts +3 -1
- package/_esm/hooks/index.js +3 -1
- package/_esm/hooks/index.js.map +1 -1
- package/_esm/hooks/useAccount.d.ts +14 -3
- package/_esm/hooks/useAccount.js +24 -6
- package/_esm/hooks/useAccount.js.map +1 -1
- package/_esm/hooks/useAddressValidation.d.ts +17 -0
- package/_esm/hooks/useAddressValidation.js +55 -0
- package/_esm/hooks/useAddressValidation.js.map +1 -0
- package/_esm/hooks/useFromTokenSufficiency.js +3 -4
- package/_esm/hooks/useFromTokenSufficiency.js.map +1 -1
- package/_esm/hooks/useGasSufficiency.js +6 -5
- package/_esm/hooks/useGasSufficiency.js.map +1 -1
- package/_esm/hooks/useRouteExecution.js +7 -5
- package/_esm/hooks/useRouteExecution.js.map +1 -1
- package/_esm/hooks/useRoutes.d.ts +2 -2
- package/_esm/hooks/useRoutes.js +19 -31
- package/_esm/hooks/useRoutes.js.map +1 -1
- package/_esm/hooks/useToAddressRequirements.d.ts +4 -0
- package/_esm/hooks/{useRequiredToAddress.js → useToAddressRequirements.js} +9 -6
- package/_esm/hooks/useToAddressRequirements.js.map +1 -0
- package/_esm/hooks/useToAddressReset.d.ts +4 -0
- package/_esm/hooks/useToAddressReset.js +28 -0
- package/_esm/hooks/useToAddressReset.js.map +1 -0
- package/_esm/hooks/useTokenAddressBalance.d.ts +1 -1
- package/_esm/hooks/useTokenBalance.d.ts +1 -1
- package/_esm/hooks/useTokenBalance.js +4 -7
- package/_esm/hooks/useTokenBalance.js.map +1 -1
- package/_esm/hooks/useTokenBalances.d.ts +1 -1
- package/_esm/hooks/useTokenBalances.js +3 -4
- package/_esm/hooks/useTokenBalances.js.map +1 -1
- package/_esm/hooks/useTransactionDetails.js +24 -22
- package/_esm/hooks/useTransactionDetails.js.map +1 -1
- package/_esm/i18n/en.json +27 -6
- package/_esm/pages/MainPage/MainPage.js +2 -2
- package/_esm/pages/MainPage/MainPage.js.map +1 -1
- package/_esm/pages/MainPage/ReviewButton.js +5 -4
- package/_esm/pages/MainPage/ReviewButton.js.map +1 -1
- package/_esm/pages/SendToWallet/BookmarkAddressSheet.d.ts +9 -0
- package/_esm/pages/SendToWallet/BookmarkAddressSheet.js +108 -0
- package/_esm/pages/SendToWallet/BookmarkAddressSheet.js.map +1 -0
- package/_esm/pages/SendToWallet/BookmarksPage.d.ts +1 -0
- package/_esm/pages/SendToWallet/BookmarksPage.js +84 -0
- package/_esm/pages/SendToWallet/BookmarksPage.js.map +1 -0
- package/_esm/pages/SendToWallet/ConfirmAddressSheet.d.ts +9 -0
- package/_esm/pages/SendToWallet/ConfirmAddressSheet.js +32 -0
- package/_esm/pages/SendToWallet/ConfirmAddressSheet.js.map +1 -0
- package/_esm/pages/SendToWallet/ConnectedWalletsPage.d.ts +1 -0
- package/_esm/pages/SendToWallet/ConnectedWalletsPage.js +80 -0
- package/_esm/pages/SendToWallet/ConnectedWalletsPage.js.map +1 -0
- package/_esm/pages/SendToWallet/EmptyListIndicator.d.ts +6 -0
- package/_esm/pages/SendToWallet/EmptyListIndicator.js +4 -0
- package/_esm/pages/SendToWallet/EmptyListIndicator.js.map +1 -0
- package/_esm/pages/SendToWallet/RecentWalletsPage.d.ts +1 -0
- package/_esm/pages/SendToWallet/RecentWalletsPage.js +101 -0
- package/_esm/pages/SendToWallet/RecentWalletsPage.js.map +1 -0
- package/_esm/pages/SendToWallet/SendToWalletPage.d.ts +1 -0
- package/_esm/pages/SendToWallet/SendToWalletPage.js +127 -0
- package/_esm/pages/SendToWallet/SendToWalletPage.js.map +1 -0
- package/_esm/pages/SendToWallet/SendToWalletPage.style.d.ts +61 -0
- package/_esm/pages/SendToWallet/SendToWalletPage.style.js +143 -0
- package/_esm/pages/SendToWallet/SendToWalletPage.style.js.map +1 -0
- package/_esm/pages/SendToWallet/index.d.ts +4 -0
- package/_esm/pages/SendToWallet/index.js +5 -0
- package/_esm/pages/SendToWallet/index.js.map +1 -0
- package/_esm/pages/SettingsPage/BridgeAndExchangeSettings.js +3 -2
- package/_esm/pages/SettingsPage/BridgeAndExchangeSettings.js.map +1 -1
- package/_esm/pages/SettingsPage/LanguageSetting.js +2 -2
- package/_esm/pages/SettingsPage/LanguageSetting.js.map +1 -1
- package/_esm/pages/SettingsPage/SendToWalletOptionSetting.js +2 -2
- package/_esm/pages/SettingsPage/SendToWalletOptionSetting.js.map +1 -1
- package/_esm/pages/SettingsPage/SettingsCard/BadgedValue.js +3 -2
- package/_esm/pages/SettingsPage/SettingsCard/BadgedValue.js.map +1 -1
- package/_esm/pages/SettingsPage/SettingsCard/SettingCard.style.d.ts +0 -9
- package/_esm/pages/SettingsPage/SettingsCard/SettingCard.style.js +2 -24
- package/_esm/pages/SettingsPage/SettingsCard/SettingCard.style.js.map +1 -1
- package/_esm/pages/SettingsPage/SettingsCard/SettingCardExpandable.js +2 -3
- package/_esm/pages/SettingsPage/SettingsCard/SettingCardExpandable.js.map +1 -1
- package/_esm/pages/SettingsPage/SettingsCard/index.d.ts +0 -2
- package/_esm/pages/SettingsPage/SettingsCard/index.js +0 -2
- package/_esm/pages/SettingsPage/SettingsCard/index.js.map +1 -1
- package/_esm/pages/SettingsPage/SlippageSettings/SlippageSettings.js.map +1 -1
- package/_esm/pages/SettingsPage/ThemeSettings.js +3 -2
- package/_esm/pages/SettingsPage/ThemeSettings.js.map +1 -1
- package/_esm/providers/I18nProvider/I18nProvider.js +2 -2
- package/_esm/providers/I18nProvider/I18nProvider.js.map +1 -1
- package/_esm/providers/WalletProvider/SDKProviders.js.map +1 -1
- package/_esm/stores/StoreProvider.js +2 -1
- package/_esm/stores/StoreProvider.js.map +1 -1
- package/_esm/stores/bookmarks/BookmarkStore.d.ts +7 -0
- package/_esm/stores/bookmarks/BookmarkStore.js +20 -0
- package/_esm/stores/bookmarks/BookmarkStore.js.map +1 -0
- package/_esm/stores/bookmarks/createBookmarkStore.d.ts +3 -0
- package/_esm/stores/bookmarks/createBookmarkStore.js +45 -0
- package/_esm/stores/bookmarks/createBookmarkStore.js.map +1 -0
- package/_esm/stores/bookmarks/index.d.ts +5 -0
- package/_esm/stores/bookmarks/index.js +6 -0
- package/_esm/stores/bookmarks/index.js.map +1 -0
- package/_esm/stores/bookmarks/types.d.ts +24 -0
- package/_esm/stores/bookmarks/types.js +2 -0
- package/_esm/stores/bookmarks/types.js.map +1 -0
- package/_esm/stores/bookmarks/useBookmarkActions.d.ts +2 -0
- package/_esm/stores/bookmarks/useBookmarkActions.js +14 -0
- package/_esm/stores/bookmarks/useBookmarkActions.js.map +1 -0
- package/_esm/stores/bookmarks/useBookmarks.d.ts +2 -0
- package/_esm/stores/bookmarks/useBookmarks.js +11 -0
- package/_esm/stores/bookmarks/useBookmarks.js.map +1 -0
- package/_esm/stores/form/FormStore.js +16 -3
- package/_esm/stores/form/FormStore.js.map +1 -1
- package/_esm/stores/form/types.js.map +1 -1
- package/_esm/stores/form/useTouchedFields.d.ts +4 -4
- package/_esm/stores/index.d.ts +1 -0
- package/_esm/stores/index.js +1 -0
- package/_esm/stores/index.js.map +1 -1
- package/_esm/utils/chainType.d.ts +6 -0
- package/_esm/utils/chainType.js +20 -0
- package/_esm/utils/chainType.js.map +1 -0
- package/_esm/utils/index.d.ts +1 -0
- package/_esm/utils/index.js +1 -0
- package/_esm/utils/index.js.map +1 -1
- package/_esm/utils/navigationRoutes.d.ts +4 -0
- package/_esm/utils/navigationRoutes.js +12 -0
- package/_esm/utils/navigationRoutes.js.map +1 -1
- package/components/AccountAvatar.tsx +55 -0
- package/components/AlertMessage/AlertMessage.style.tsx +40 -0
- package/components/AlertMessage/AlertMessage.tsx +31 -0
- package/components/AlertMessage/index.ts +3 -0
- package/components/AlertMessage/types.ts +1 -0
- package/components/BaseTransactionButton/BaseTransactionButton.tsx +7 -4
- package/components/Card/CardButton.style.tsx +36 -0
- package/components/Card/CardButton.tsx +26 -0
- package/components/Card/index.ts +2 -0
- package/components/ChainSelect/useChainSelect.ts +5 -23
- package/components/GasMessage/FundsSufficiencyMessage.tsx +18 -17
- package/components/GasMessage/GasMessage.style.ts +1 -31
- package/components/GasMessage/GasRefuelMessage.tsx +21 -22
- package/components/GasMessage/GasSufficiencyMessage.tsx +9 -21
- package/components/Header/NavigationHeader.tsx +11 -2
- package/components/ListItem/ListItem.tsx +24 -0
- package/components/ListItem/ListItemButton.tsx +9 -0
- package/components/ListItem/index.ts +2 -0
- package/components/ListItemButton.tsx +12 -8
- package/components/Menu.tsx +27 -0
- package/components/PageContainer.ts +1 -1
- package/components/ReverseTokensButton/ReverseTokensButton.tsx +12 -3
- package/components/Routes/Routes.tsx +1 -7
- package/components/Routes/RoutesExpanded.tsx +5 -8
- package/components/SendToWallet/SendToWallet.style.tsx +25 -15
- package/components/SendToWallet/SendToWalletButton.tsx +107 -43
- package/components/SendToWallet/SendToWalletExpandButton.tsx +65 -0
- package/components/SendToWallet/index.ts +2 -1
- package/components/TokenList/TokenList.style.tsx +3 -32
- package/components/TokenList/TokenListItem.tsx +4 -3
- package/components/TokenList/VirtualizedTokenList.tsx +2 -2
- package/config/version.ts +1 -1
- package/hooks/index.ts +3 -1
- package/hooks/useAccount.ts +37 -9
- package/hooks/useAddressValidation.ts +79 -0
- package/hooks/useFromTokenSufficiency.ts +3 -8
- package/hooks/useGasSufficiency.ts +6 -10
- package/hooks/useRouteExecution.ts +9 -5
- package/hooks/useRoutes.ts +20 -30
- package/hooks/{useRequiredToAddress.ts → useToAddressRequirements.ts} +8 -5
- package/hooks/useToAddressReset.ts +36 -0
- package/hooks/useTokenBalance.ts +5 -8
- package/hooks/useTokenBalances.ts +3 -6
- package/hooks/useTransactionDetails.ts +30 -30
- package/i18n/en.json +27 -6
- package/package.json +12 -12
- package/pages/MainPage/MainPage.tsx +3 -3
- package/pages/MainPage/ReviewButton.tsx +5 -5
- package/pages/SendToWallet/BookmarkAddressSheet.tsx +219 -0
- package/pages/SendToWallet/BookmarksPage.tsx +182 -0
- package/pages/SendToWallet/ConfirmAddressSheet.tsx +90 -0
- package/pages/SendToWallet/ConnectedWalletsPage.tsx +165 -0
- package/pages/SendToWallet/EmptyListIndicator.tsx +19 -0
- package/pages/SendToWallet/RecentWalletsPage.tsx +215 -0
- package/pages/SendToWallet/SendToWalletPage.style.tsx +182 -0
- package/pages/SendToWallet/SendToWalletPage.tsx +246 -0
- package/pages/SendToWallet/index.ts +4 -0
- package/pages/SettingsPage/BridgeAndExchangeSettings.tsx +4 -3
- package/pages/SettingsPage/LanguageSetting.tsx +4 -4
- package/pages/SettingsPage/SendToWalletOptionSetting.tsx +12 -12
- package/pages/SettingsPage/SettingsCard/BadgedValue.tsx +4 -3
- package/pages/SettingsPage/SettingsCard/SettingCard.style.tsx +2 -27
- package/pages/SettingsPage/SettingsCard/SettingCardExpandable.tsx +13 -12
- package/pages/SettingsPage/SettingsCard/index.ts +0 -2
- package/pages/SettingsPage/SlippageSettings/SlippageSettings.tsx +1 -1
- package/pages/SettingsPage/ThemeSettings.tsx +3 -2
- package/providers/I18nProvider/I18nProvider.tsx +2 -2
- package/providers/WalletProvider/SDKProviders.tsx +2 -1
- package/stores/StoreProvider.tsx +8 -5
- package/stores/bookmarks/BookmarkStore.tsx +39 -0
- package/stores/bookmarks/createBookmarkStore.ts +63 -0
- package/stores/bookmarks/index.ts +5 -0
- package/stores/bookmarks/types.ts +31 -0
- package/stores/bookmarks/useBookmarkActions.ts +19 -0
- package/stores/bookmarks/useBookmarks.ts +16 -0
- package/stores/form/FormStore.tsx +25 -4
- package/stores/form/types.ts +2 -3
- package/stores/index.ts +1 -0
- package/utils/chainType.ts +25 -0
- package/utils/index.ts +1 -0
- package/utils/navigationRoutes.ts +12 -0
- package/_cjs/components/SendToWallet/SendToWallet.d.ts +0 -4
- package/_cjs/components/SendToWallet/SendToWallet.js +0 -94
- package/_cjs/components/SendToWallet/SendToWallet.js.map +0 -1
- package/_cjs/hooks/useRequiredToAddress.d.ts +0 -1
- package/_cjs/hooks/useRequiredToAddress.js.map +0 -1
- package/_cjs/pages/SettingsPage/SettingsCard/SettingCard.d.ts +0 -2
- package/_cjs/pages/SettingsPage/SettingsCard/SettingCard.js +0 -12
- package/_cjs/pages/SettingsPage/SettingsCard/SettingCard.js.map +0 -1
- package/_cjs/pages/SettingsPage/SettingsCard/SettingCardButton.js +0 -9
- package/_cjs/pages/SettingsPage/SettingsCard/SettingCardButton.js.map +0 -1
- package/_esm/components/SendToWallet/SendToWallet.d.ts +0 -4
- package/_esm/components/SendToWallet/SendToWallet.js +0 -90
- package/_esm/components/SendToWallet/SendToWallet.js.map +0 -1
- package/_esm/hooks/useRequiredToAddress.d.ts +0 -1
- package/_esm/hooks/useRequiredToAddress.js.map +0 -1
- package/_esm/pages/SettingsPage/SettingsCard/SettingCard.d.ts +0 -2
- package/_esm/pages/SettingsPage/SettingsCard/SettingCard.js +0 -8
- package/_esm/pages/SettingsPage/SettingsCard/SettingCard.js.map +0 -1
- package/_esm/pages/SettingsPage/SettingsCard/SettingCardButton.js +0 -5
- package/_esm/pages/SettingsPage/SettingsCard/SettingCardButton.js.map +0 -1
- package/components/SendToWallet/SendToWallet.tsx +0 -144
- package/i18n/i18next.d.ts +0 -10
- package/pages/SettingsPage/SettingsCard/SettingCard.tsx +0 -16
- package/pages/SettingsPage/SettingsCard/SettingCardButton.tsx +0 -26
- package/react-app-env.d.ts +0 -1
|
@@ -10,11 +10,11 @@ import {
|
|
|
10
10
|
} from '../../stores';
|
|
11
11
|
import { HiddenUI } from '../../types';
|
|
12
12
|
import {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
} from '
|
|
13
|
+
Card,
|
|
14
|
+
CardRowContainer,
|
|
15
|
+
CardTitleContainer,
|
|
16
|
+
CardValue,
|
|
17
|
+
} from '../../components/Card';
|
|
18
18
|
|
|
19
19
|
export const SendToWalletOptionSetting = () => {
|
|
20
20
|
const { t } = useTranslation();
|
|
@@ -35,14 +35,14 @@ export const SendToWalletOptionSetting = () => {
|
|
|
35
35
|
};
|
|
36
36
|
|
|
37
37
|
return (
|
|
38
|
-
<
|
|
39
|
-
<
|
|
40
|
-
<
|
|
38
|
+
<Card>
|
|
39
|
+
<CardRowContainer>
|
|
40
|
+
<CardTitleContainer>
|
|
41
41
|
<WalletIcon />
|
|
42
|
-
<
|
|
43
|
-
</
|
|
42
|
+
<CardValue>{t(`settings.sendToWalletOption`)}</CardValue>
|
|
43
|
+
</CardTitleContainer>
|
|
44
44
|
<Switch checked={showDestinationWallet} onChange={onChange} />
|
|
45
|
-
</
|
|
46
|
-
</
|
|
45
|
+
</CardRowContainer>
|
|
46
|
+
</Card>
|
|
47
47
|
);
|
|
48
48
|
};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { PropsWithChildren } from 'react';
|
|
2
2
|
import type { BadgeProps } from '@mui/material';
|
|
3
|
-
import {
|
|
3
|
+
import { CardValue } from '../../../components/Card';
|
|
4
|
+
import { Badge } from './SettingCard.style';
|
|
4
5
|
|
|
5
6
|
interface BadgedValueProps {
|
|
6
7
|
showBadge: boolean;
|
|
@@ -14,8 +15,8 @@ export const BadgedValue: React.FC<PropsWithChildren<BadgedValueProps>> = ({
|
|
|
14
15
|
}) =>
|
|
15
16
|
showBadge && badgeColor ? (
|
|
16
17
|
<Badge variant="dot" color={badgeColor}>
|
|
17
|
-
<
|
|
18
|
+
<CardValue>{children}</CardValue>
|
|
18
19
|
</Badge>
|
|
19
20
|
) : (
|
|
20
|
-
<
|
|
21
|
+
<CardValue>{children}</CardValue>
|
|
21
22
|
);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Box,
|
|
1
|
+
import { Box, Badge as MuiBadge } from '@mui/material';
|
|
2
2
|
import { badgeClasses } from '@mui/material/Badge';
|
|
3
3
|
import { styled } from '@mui/material/styles';
|
|
4
4
|
|
|
@@ -9,39 +9,14 @@ export const SettingsList = styled(Box)(({ theme }) => ({
|
|
|
9
9
|
padding: theme.spacing(1, 0, 1),
|
|
10
10
|
}));
|
|
11
11
|
|
|
12
|
-
export const SummaryTitleContainer = styled(Box)(({ theme }) => ({
|
|
13
|
-
display: 'flex',
|
|
14
|
-
alignItems: 'center',
|
|
15
|
-
gap: theme.spacing(1.5),
|
|
16
|
-
}));
|
|
17
|
-
|
|
18
12
|
export const SummaryRowContainer = styled(Box)(({ theme }) => ({
|
|
19
13
|
display: 'flex',
|
|
20
14
|
width: '100%',
|
|
21
15
|
justifyContent: 'space-between',
|
|
22
16
|
alignItems: 'center',
|
|
23
|
-
padding: theme.spacing(
|
|
17
|
+
padding: theme.spacing(2),
|
|
24
18
|
}));
|
|
25
19
|
|
|
26
|
-
export const SummaryRowButton = styled(ButtonBase)(({ theme }) => ({
|
|
27
|
-
background: 'none',
|
|
28
|
-
color: 'inherit',
|
|
29
|
-
border: 'none',
|
|
30
|
-
font: 'inherit',
|
|
31
|
-
cursor: 'pointer',
|
|
32
|
-
outline: 'inherit',
|
|
33
|
-
display: 'flex',
|
|
34
|
-
width: '100%',
|
|
35
|
-
justifyContent: 'space-between',
|
|
36
|
-
alignItems: 'center',
|
|
37
|
-
padding: theme.spacing(1),
|
|
38
|
-
}));
|
|
39
|
-
|
|
40
|
-
export const SummaryValue = styled(Typography)({
|
|
41
|
-
lineHeight: '1.25',
|
|
42
|
-
fontWeight: 500,
|
|
43
|
-
});
|
|
44
|
-
|
|
45
20
|
export const Badge = styled(MuiBadge)(({ theme }) => ({
|
|
46
21
|
display: 'flex',
|
|
47
22
|
alignItems: 'center',
|
|
@@ -2,12 +2,12 @@ import type { PropsWithChildren, ReactNode } from 'react';
|
|
|
2
2
|
import { useId } from 'react';
|
|
3
3
|
import { Collapse } from '@mui/material';
|
|
4
4
|
import type { SettingCardTitle } from './types';
|
|
5
|
-
import { SettingCard } from './SettingCard';
|
|
6
5
|
import {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
6
|
+
Card,
|
|
7
|
+
CardRowButton,
|
|
8
|
+
CardValue,
|
|
9
|
+
CardTitleContainer,
|
|
10
|
+
} from '../../../components/Card';
|
|
11
11
|
import { useSettingsCardExpandable } from './SettingsAccordian';
|
|
12
12
|
|
|
13
13
|
interface SettingCardExpandableProps extends SettingCardTitle {
|
|
@@ -22,20 +22,21 @@ export const SettingCardExpandable: React.FC<
|
|
|
22
22
|
const collapseId = useId();
|
|
23
23
|
|
|
24
24
|
return (
|
|
25
|
-
<
|
|
26
|
-
<
|
|
25
|
+
<Card sx={{ p: 1 }}>
|
|
26
|
+
<CardRowButton
|
|
27
27
|
id={buttonId}
|
|
28
28
|
aria-expanded={expanded}
|
|
29
29
|
aria-controls={collapseId}
|
|
30
30
|
onClick={toggleExpanded}
|
|
31
31
|
disableRipple
|
|
32
|
+
sx={{ p: 1 }}
|
|
32
33
|
>
|
|
33
|
-
<
|
|
34
|
+
<CardTitleContainer>
|
|
34
35
|
{icon}
|
|
35
|
-
<
|
|
36
|
-
</
|
|
36
|
+
<CardValue>{title}</CardValue>
|
|
37
|
+
</CardTitleContainer>
|
|
37
38
|
{!expanded && value}
|
|
38
|
-
</
|
|
39
|
+
</CardRowButton>
|
|
39
40
|
<Collapse
|
|
40
41
|
id={collapseId}
|
|
41
42
|
role="region"
|
|
@@ -44,6 +45,6 @@ export const SettingCardExpandable: React.FC<
|
|
|
44
45
|
>
|
|
45
46
|
{children}
|
|
46
47
|
</Collapse>
|
|
47
|
-
</
|
|
48
|
+
</Card>
|
|
48
49
|
);
|
|
49
50
|
};
|
|
@@ -26,7 +26,7 @@ export const SlippageSettings: React.FC = () => {
|
|
|
26
26
|
const { slippage } = useSettings(['slippage']);
|
|
27
27
|
const setValue = useSettingsStore((state) => state.setValue);
|
|
28
28
|
const defaultValue = useRef(slippage);
|
|
29
|
-
const [focused, setFocused] = useState<'input' | 'button'
|
|
29
|
+
const [focused, setFocused] = useState<'input' | 'button'>();
|
|
30
30
|
|
|
31
31
|
const handleDefaultClick = () => {
|
|
32
32
|
setValue('slippage', formatSlippage(defaultSlippage, defaultValue.current));
|
|
@@ -4,11 +4,12 @@ import NightlightIcon from '@mui/icons-material/Nightlight';
|
|
|
4
4
|
import { Tooltip } from '@mui/material';
|
|
5
5
|
import { useTranslation } from 'react-i18next';
|
|
6
6
|
import { Tab, Tabs } from '../../components/Tabs';
|
|
7
|
+
import { CardValue } from '../../components/Card';
|
|
7
8
|
import { useWidgetConfig } from '../../providers';
|
|
8
9
|
import { useAppearance } from '../../stores';
|
|
9
10
|
import type { Appearance } from '../../types';
|
|
10
11
|
import { HiddenUI } from '../../types';
|
|
11
|
-
import { SettingCardExpandable
|
|
12
|
+
import { SettingCardExpandable } from './SettingsCard';
|
|
12
13
|
|
|
13
14
|
const themeIcons = {
|
|
14
15
|
light: LightModeIcon,
|
|
@@ -55,7 +56,7 @@ export const ThemeSettings: React.FC = () => {
|
|
|
55
56
|
|
|
56
57
|
return (
|
|
57
58
|
<SettingCardExpandable
|
|
58
|
-
value={<
|
|
59
|
+
value={<CardValue>{t(`button.${appearance}`)} </CardValue>}
|
|
59
60
|
icon={<ThemeIcon />}
|
|
60
61
|
title={t('settings.theme')}
|
|
61
62
|
>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { i18n } from 'i18next';
|
|
2
2
|
import { createInstance } from 'i18next';
|
|
3
3
|
import { useMemo } from 'react';
|
|
4
|
-
import { I18nextProvider
|
|
4
|
+
import { I18nextProvider } from 'react-i18next';
|
|
5
5
|
import * as supportedLanguages from '../../i18n';
|
|
6
6
|
import { useSettings } from '../../stores';
|
|
7
7
|
import { deepMerge, isItemAllowed } from '../../utils';
|
|
@@ -58,7 +58,7 @@ export const I18nProvider: React.FC<React.PropsWithChildren> = ({
|
|
|
58
58
|
returnEmptyString: false,
|
|
59
59
|
});
|
|
60
60
|
|
|
61
|
-
i18n.
|
|
61
|
+
i18n.init();
|
|
62
62
|
|
|
63
63
|
return i18n;
|
|
64
64
|
}, [language, languageResources, languages]);
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { SDKProvider } from '@lifi/sdk';
|
|
2
|
+
import { EVM, Solana, config } from '@lifi/sdk';
|
|
2
3
|
import type { WalletAdapter } from '@solana/wallet-adapter-base';
|
|
3
4
|
import { useWallet } from '@solana/wallet-adapter-react';
|
|
4
5
|
import { getWalletClient, switchChain } from '@wagmi/core';
|
package/stores/StoreProvider.tsx
CHANGED
|
@@ -5,6 +5,7 @@ import { FormStoreProvider } from './form';
|
|
|
5
5
|
import { HeaderStoreProvider } from './header';
|
|
6
6
|
import { RouteExecutionStoreProvider } from './routes';
|
|
7
7
|
import { SplitSubvariantStoreProvider } from './settings';
|
|
8
|
+
import { BookmarkStoreProvider } from './bookmarks';
|
|
8
9
|
|
|
9
10
|
export const StoreProvider: React.FC<PropsWithChildren<WidgetConfigProps>> = ({
|
|
10
11
|
children,
|
|
@@ -20,11 +21,13 @@ export const StoreProvider: React.FC<PropsWithChildren<WidgetConfigProps>> = ({
|
|
|
20
21
|
>
|
|
21
22
|
<HeaderStoreProvider namePrefix={config?.keyPrefix}>
|
|
22
23
|
<FormStoreProvider>
|
|
23
|
-
<
|
|
24
|
-
<
|
|
25
|
-
{
|
|
26
|
-
|
|
27
|
-
|
|
24
|
+
<BookmarkStoreProvider namePrefix={config?.keyPrefix}>
|
|
25
|
+
<ChainOrderStoreProvider namePrefix={config?.keyPrefix}>
|
|
26
|
+
<RouteExecutionStoreProvider namePrefix={config?.keyPrefix}>
|
|
27
|
+
{children}
|
|
28
|
+
</RouteExecutionStoreProvider>
|
|
29
|
+
</ChainOrderStoreProvider>
|
|
30
|
+
</BookmarkStoreProvider>
|
|
28
31
|
</FormStoreProvider>
|
|
29
32
|
</HeaderStoreProvider>
|
|
30
33
|
</SplitSubvariantStoreProvider>
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { createContext, useContext, useRef } from 'react';
|
|
2
|
+
import { shallow } from 'zustand/shallow';
|
|
3
|
+
import type { PersistStoreProviderProps } from '../types';
|
|
4
|
+
import { createBookmarksStore } from './createBookmarkStore';
|
|
5
|
+
import type { BookmarkState, BookmarkStore } from './types';
|
|
6
|
+
|
|
7
|
+
export const BookmarkStoreContext = createContext<BookmarkStore | null>(null);
|
|
8
|
+
|
|
9
|
+
export const BookmarkStoreProvider: React.FC<PersistStoreProviderProps> = ({
|
|
10
|
+
children,
|
|
11
|
+
...props
|
|
12
|
+
}) => {
|
|
13
|
+
const storeRef = useRef<BookmarkStore>();
|
|
14
|
+
|
|
15
|
+
if (!storeRef.current) {
|
|
16
|
+
storeRef.current = createBookmarksStore(props);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
return (
|
|
20
|
+
<BookmarkStoreContext.Provider value={storeRef.current}>
|
|
21
|
+
{children}
|
|
22
|
+
</BookmarkStoreContext.Provider>
|
|
23
|
+
);
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
export function useBookmarkStore<T>(
|
|
27
|
+
selector: (store: BookmarkState) => T,
|
|
28
|
+
equalityFunction = shallow,
|
|
29
|
+
) {
|
|
30
|
+
const useStore = useContext(BookmarkStoreContext);
|
|
31
|
+
|
|
32
|
+
if (!useStore) {
|
|
33
|
+
throw new Error(
|
|
34
|
+
`You forgot to wrap your component in <${BookmarkStoreProvider.name}>.`,
|
|
35
|
+
);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
return useStore(selector, equalityFunction);
|
|
39
|
+
}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import type { StateCreator } from 'zustand';
|
|
2
|
+
import { persist } from 'zustand/middleware';
|
|
3
|
+
import { createWithEqualityFn } from 'zustand/traditional';
|
|
4
|
+
import type { PersistStoreProps } from '../types';
|
|
5
|
+
import type { BookmarkState } from './types';
|
|
6
|
+
|
|
7
|
+
const recentWalletsLimit = 5;
|
|
8
|
+
|
|
9
|
+
export const createBookmarksStore = ({ namePrefix }: PersistStoreProps) =>
|
|
10
|
+
createWithEqualityFn<BookmarkState>(
|
|
11
|
+
persist(
|
|
12
|
+
(set, get) => ({
|
|
13
|
+
selectedBookmark: undefined,
|
|
14
|
+
bookmarks: [],
|
|
15
|
+
recentWallets: [],
|
|
16
|
+
getBookmark: (address) =>
|
|
17
|
+
get().bookmarks.find((bookmark) => bookmark.address === address),
|
|
18
|
+
addBookmark: (bookmark) => {
|
|
19
|
+
set((state) => ({
|
|
20
|
+
bookmarks: [bookmark, ...state.bookmarks],
|
|
21
|
+
}));
|
|
22
|
+
},
|
|
23
|
+
removeBookmark: (address) => {
|
|
24
|
+
set((state) => ({
|
|
25
|
+
bookmarks: state.bookmarks.filter(
|
|
26
|
+
(storedBookmark) => storedBookmark.address !== address,
|
|
27
|
+
),
|
|
28
|
+
}));
|
|
29
|
+
},
|
|
30
|
+
setSelectedBookmark: (bookmark) => {
|
|
31
|
+
set((state) => ({
|
|
32
|
+
selectedBookmark: bookmark,
|
|
33
|
+
}));
|
|
34
|
+
},
|
|
35
|
+
addRecentWallet: (bookmark) => {
|
|
36
|
+
set((state) => ({
|
|
37
|
+
recentWallets: [
|
|
38
|
+
bookmark,
|
|
39
|
+
...state.recentWallets.filter(
|
|
40
|
+
(recentWallet) => recentWallet.address !== bookmark.address,
|
|
41
|
+
),
|
|
42
|
+
].slice(0, recentWalletsLimit),
|
|
43
|
+
}));
|
|
44
|
+
},
|
|
45
|
+
removeRecentWallet: (address) => {
|
|
46
|
+
set((state) => ({
|
|
47
|
+
recentWallets: state.recentWallets.filter(
|
|
48
|
+
(storedRecent) => storedRecent.address !== address,
|
|
49
|
+
),
|
|
50
|
+
}));
|
|
51
|
+
},
|
|
52
|
+
}),
|
|
53
|
+
{
|
|
54
|
+
name: `${namePrefix || 'li.fi'}-bookmarks`,
|
|
55
|
+
version: 0,
|
|
56
|
+
partialize: (state) => ({
|
|
57
|
+
bookmarks: state.bookmarks,
|
|
58
|
+
recentWallets: state.recentWallets,
|
|
59
|
+
}),
|
|
60
|
+
},
|
|
61
|
+
) as StateCreator<BookmarkState, [], [], BookmarkState>,
|
|
62
|
+
Object.is,
|
|
63
|
+
);
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { ChainType } from '@lifi/sdk';
|
|
2
|
+
import type { StoreApi } from 'zustand';
|
|
3
|
+
import type { UseBoundStoreWithEqualityFn } from 'zustand/esm/traditional';
|
|
4
|
+
|
|
5
|
+
export interface Bookmark {
|
|
6
|
+
address: string;
|
|
7
|
+
chainType: ChainType;
|
|
8
|
+
name?: string;
|
|
9
|
+
isConnectedAccount?: boolean;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export interface BookmarkProps {
|
|
13
|
+
selectedBookmark?: Bookmark;
|
|
14
|
+
bookmarks: Bookmark[];
|
|
15
|
+
recentWallets: Bookmark[];
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export interface BookmarkActions {
|
|
19
|
+
getBookmark: (address: string) => Bookmark | undefined;
|
|
20
|
+
addBookmark: (bookmark: Bookmark) => void;
|
|
21
|
+
removeBookmark: (address: string) => void;
|
|
22
|
+
setSelectedBookmark: (bookmark?: Bookmark) => void;
|
|
23
|
+
addRecentWallet: (bookmark: Bookmark) => void;
|
|
24
|
+
removeRecentWallet: (address: string) => void;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export type BookmarkState = BookmarkProps & BookmarkActions;
|
|
28
|
+
|
|
29
|
+
export type BookmarkStore = UseBoundStoreWithEqualityFn<
|
|
30
|
+
StoreApi<BookmarkState>
|
|
31
|
+
>;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { shallow } from 'zustand/shallow';
|
|
2
|
+
import { useBookmarkStore } from './BookmarkStore';
|
|
3
|
+
import type { BookmarkActions } from './types';
|
|
4
|
+
|
|
5
|
+
export const useBookmarkActions = () => {
|
|
6
|
+
const actions = useBookmarkStore<BookmarkActions>(
|
|
7
|
+
(store) => ({
|
|
8
|
+
getBookmark: store.getBookmark,
|
|
9
|
+
addBookmark: store.addBookmark,
|
|
10
|
+
removeBookmark: store.removeBookmark,
|
|
11
|
+
setSelectedBookmark: store.setSelectedBookmark,
|
|
12
|
+
addRecentWallet: store.addRecentWallet,
|
|
13
|
+
removeRecentWallet: store.removeRecentWallet,
|
|
14
|
+
}),
|
|
15
|
+
shallow,
|
|
16
|
+
);
|
|
17
|
+
|
|
18
|
+
return actions;
|
|
19
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { shallow } from 'zustand/shallow';
|
|
2
|
+
import { useBookmarkStore } from './BookmarkStore';
|
|
3
|
+
import type { BookmarkProps } from './types';
|
|
4
|
+
|
|
5
|
+
export const useBookmarks = (): BookmarkProps => {
|
|
6
|
+
const [bookmarks, selectedBookmark, recentWallets] = useBookmarkStore(
|
|
7
|
+
(store) => [store.bookmarks, store.selectedBookmark, store.recentWallets],
|
|
8
|
+
shallow,
|
|
9
|
+
);
|
|
10
|
+
|
|
11
|
+
return {
|
|
12
|
+
bookmarks,
|
|
13
|
+
selectedBookmark,
|
|
14
|
+
recentWallets,
|
|
15
|
+
};
|
|
16
|
+
};
|
|
@@ -2,6 +2,7 @@ import type { PropsWithChildren } from 'react';
|
|
|
2
2
|
import { createContext, useContext, useMemo, useRef } from 'react';
|
|
3
3
|
import { shallow } from 'zustand/shallow';
|
|
4
4
|
import { useWidgetConfig } from '../../providers';
|
|
5
|
+
import { HiddenUI } from '../../types';
|
|
5
6
|
import { FormUpdater } from './FormUpdater';
|
|
6
7
|
import { createFormStore, formDefaultValues } from './createFormStore';
|
|
7
8
|
import type { FormStoreStore, FormValuesState } from './types';
|
|
@@ -11,10 +12,19 @@ export const FormStoreContext = createContext<FormStoreStore | null>(null);
|
|
|
11
12
|
export const FormStoreProvider: React.FC<PropsWithChildren> = ({
|
|
12
13
|
children,
|
|
13
14
|
}) => {
|
|
14
|
-
const {
|
|
15
|
-
|
|
15
|
+
const {
|
|
16
|
+
fromChain,
|
|
17
|
+
fromToken,
|
|
18
|
+
fromAmount,
|
|
19
|
+
toChain,
|
|
20
|
+
toToken,
|
|
21
|
+
toAddress,
|
|
22
|
+
hiddenUI,
|
|
23
|
+
} = useWidgetConfig();
|
|
16
24
|
const storeRef = useRef<FormStoreStore>();
|
|
17
25
|
|
|
26
|
+
const hiddenToAddress = hiddenUI?.includes(HiddenUI.ToAddress);
|
|
27
|
+
|
|
18
28
|
const defaultValues = useMemo(
|
|
19
29
|
() => ({
|
|
20
30
|
...formDefaultValues,
|
|
@@ -26,9 +36,20 @@ export const FormStoreProvider: React.FC<PropsWithChildren> = ({
|
|
|
26
36
|
(typeof fromAmount === 'number'
|
|
27
37
|
? fromAmount?.toPrecision()
|
|
28
38
|
: fromAmount) || formDefaultValues.fromAmount,
|
|
29
|
-
|
|
39
|
+
// Prevent setting address when the field is hidden
|
|
40
|
+
toAddress: hiddenToAddress
|
|
41
|
+
? formDefaultValues.toAddress
|
|
42
|
+
: toAddress || formDefaultValues.toAddress,
|
|
30
43
|
}),
|
|
31
|
-
[
|
|
44
|
+
[
|
|
45
|
+
fromAmount,
|
|
46
|
+
fromChain,
|
|
47
|
+
fromToken,
|
|
48
|
+
hiddenToAddress,
|
|
49
|
+
toAddress,
|
|
50
|
+
toChain,
|
|
51
|
+
toToken,
|
|
52
|
+
],
|
|
32
53
|
);
|
|
33
54
|
|
|
34
55
|
if (!storeRef.current) {
|
package/stores/form/types.ts
CHANGED
|
@@ -39,9 +39,8 @@ export interface FormValues {
|
|
|
39
39
|
}
|
|
40
40
|
|
|
41
41
|
export type FormFieldNames = keyof FormValues;
|
|
42
|
-
export type ExtractValueType<T> =
|
|
43
|
-
? U
|
|
44
|
-
: never;
|
|
42
|
+
export type ExtractValueType<T> =
|
|
43
|
+
T extends FormValueControl<infer U> ? U : never;
|
|
45
44
|
export type FormFieldArray<T extends FormFieldNames[]> = {
|
|
46
45
|
[K in keyof T]: ExtractValueType<FormValues[T[K]]>;
|
|
47
46
|
};
|
package/stores/index.ts
CHANGED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { ChainId, ChainType } from '@lifi/sdk';
|
|
2
|
+
import { isAddress as isEVMAddress } from 'viem';
|
|
3
|
+
import { isSVMAddress } from './svm';
|
|
4
|
+
|
|
5
|
+
const chainTypeAddressValidation = {
|
|
6
|
+
[ChainType.EVM]: isEVMAddress,
|
|
7
|
+
[ChainType.SVM]: isSVMAddress,
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
export const getChainTypeFromAddress = (
|
|
11
|
+
address: string,
|
|
12
|
+
): ChainType | undefined => {
|
|
13
|
+
for (const chainType in chainTypeAddressValidation) {
|
|
14
|
+
const isChainType =
|
|
15
|
+
chainTypeAddressValidation[chainType as ChainType](address);
|
|
16
|
+
if (isChainType) {
|
|
17
|
+
return chainType as ChainType;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
export const defaultChainIdsByType = {
|
|
23
|
+
[ChainType.EVM]: ChainId.ETH,
|
|
24
|
+
[ChainType.SVM]: ChainId.SOL,
|
|
25
|
+
};
|
package/utils/index.ts
CHANGED
|
@@ -15,6 +15,10 @@ export const navigationRoutes = {
|
|
|
15
15
|
transactionDetails: 'transaction-details',
|
|
16
16
|
transactionExecution: 'transaction-execution',
|
|
17
17
|
transactionHistory: 'transaction-history',
|
|
18
|
+
sendToWallet: 'send-to-wallet',
|
|
19
|
+
bookmarks: 'bookmarks',
|
|
20
|
+
recentWallets: 'recent-wallets',
|
|
21
|
+
connectedWallets: 'connected-wallets',
|
|
18
22
|
};
|
|
19
23
|
|
|
20
24
|
export const navigationRoutesValues = Object.values(navigationRoutes);
|
|
@@ -33,6 +37,10 @@ export const stickyHeaderRoutes = [
|
|
|
33
37
|
navigationRoutes.transactionDetails,
|
|
34
38
|
navigationRoutes.transactionExecution,
|
|
35
39
|
navigationRoutes.transactionHistory,
|
|
40
|
+
navigationRoutes.sendToWallet,
|
|
41
|
+
navigationRoutes.bookmarks,
|
|
42
|
+
navigationRoutes.recentWallets,
|
|
43
|
+
navigationRoutes.connectedWallets,
|
|
36
44
|
];
|
|
37
45
|
|
|
38
46
|
export const backButtonRoutes = [
|
|
@@ -51,6 +59,10 @@ export const backButtonRoutes = [
|
|
|
51
59
|
navigationRoutes.transactionDetails,
|
|
52
60
|
navigationRoutes.transactionExecution,
|
|
53
61
|
navigationRoutes.transactionHistory,
|
|
62
|
+
navigationRoutes.sendToWallet,
|
|
63
|
+
navigationRoutes.bookmarks,
|
|
64
|
+
navigationRoutes.recentWallets,
|
|
65
|
+
navigationRoutes.connectedWallets,
|
|
54
66
|
];
|
|
55
67
|
|
|
56
68
|
export type NavigationRouteType = keyof typeof navigationRoutes;
|