@lifi/widget 0.0.0-preview-6cc63bac
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/LICENSE +201 -0
- package/README.md +312 -0
- package/dist/esm/App.d.ts +9 -0
- package/dist/esm/App.d.ts.map +1 -0
- package/dist/esm/App.js +44 -0
- package/dist/esm/App.js.map +1 -0
- package/dist/esm/AppDefault.js +214 -0
- package/dist/esm/AppDefault.js.map +1 -0
- package/dist/esm/AppDrawer.d.ts +12 -0
- package/dist/esm/AppDrawer.d.ts.map +1 -0
- package/dist/esm/AppDrawer.js +63 -0
- package/dist/esm/AppDrawer.js.map +1 -0
- package/dist/esm/AppDrawerContext.js +8 -0
- package/dist/esm/AppDrawerContext.js.map +1 -0
- package/dist/esm/AppLayout.js +33 -0
- package/dist/esm/AppLayout.js.map +1 -0
- package/dist/esm/AppProvider.js +30 -0
- package/dist/esm/AppProvider.js.map +1 -0
- package/dist/esm/components/ActionRow/ActionRow.js +17 -0
- package/dist/esm/components/ActionRow/ActionRow.js.map +1 -0
- package/dist/esm/components/ActionRow/ActionRow.style.js +21 -0
- package/dist/esm/components/ActionRow/ActionRow.style.js.map +1 -0
- package/dist/esm/components/AmountInput/AmountInput.js +117 -0
- package/dist/esm/components/AmountInput/AmountInput.js.map +1 -0
- package/dist/esm/components/AmountInput/AmountInput.style.js +38 -0
- package/dist/esm/components/AmountInput/AmountInput.style.js.map +1 -0
- package/dist/esm/components/AmountInput/AmountInputEndAdornment.js +64 -0
- package/dist/esm/components/AmountInput/AmountInputEndAdornment.js.map +1 -0
- package/dist/esm/components/AmountInput/AmountInputEndAdornment.style.js +21 -0
- package/dist/esm/components/AmountInput/AmountInputEndAdornment.style.js.map +1 -0
- package/dist/esm/components/AmountInput/AmountInputStartAdornment.js +21 -0
- package/dist/esm/components/AmountInput/AmountInputStartAdornment.js.map +1 -0
- package/dist/esm/components/AmountInput/PriceFormHelperText.js +98 -0
- package/dist/esm/components/AmountInput/PriceFormHelperText.js.map +1 -0
- package/dist/esm/components/AmountInput/PriceFormHelperText.style.js +28 -0
- package/dist/esm/components/AmountInput/PriceFormHelperText.style.js.map +1 -0
- package/dist/esm/components/AppContainer.js +93 -0
- package/dist/esm/components/AppContainer.js.map +1 -0
- package/dist/esm/components/Avatar/AccountAvatar.js +29 -0
- package/dist/esm/components/Avatar/AccountAvatar.js.map +1 -0
- package/dist/esm/components/Avatar/Avatar.js +47 -0
- package/dist/esm/components/Avatar/Avatar.js.map +1 -0
- package/dist/esm/components/Avatar/Avatar.style.js +57 -0
- package/dist/esm/components/Avatar/Avatar.style.js.map +1 -0
- package/dist/esm/components/Avatar/ChainBadgeContent.js +17 -0
- package/dist/esm/components/Avatar/ChainBadgeContent.js.map +1 -0
- package/dist/esm/components/Avatar/SmallAvatar.js +20 -0
- package/dist/esm/components/Avatar/SmallAvatar.js.map +1 -0
- package/dist/esm/components/Avatar/TokenAvatar.js +65 -0
- package/dist/esm/components/Avatar/TokenAvatar.js.map +1 -0
- package/dist/esm/components/Avatar/utils.js +9 -0
- package/dist/esm/components/Avatar/utils.js.map +1 -0
- package/dist/esm/components/BaseTransactionButton/BaseTransactionButton.js +51 -0
- package/dist/esm/components/BaseTransactionButton/BaseTransactionButton.js.map +1 -0
- package/dist/esm/components/BottomSheet/BottomSheet.js +46 -0
- package/dist/esm/components/BottomSheet/BottomSheet.js.map +1 -0
- package/dist/esm/components/ButtonTertiary.js +21 -0
- package/dist/esm/components/ButtonTertiary.js.map +1 -0
- package/dist/esm/components/Card/Card.js +65 -0
- package/dist/esm/components/Card/Card.js.map +1 -0
- package/dist/esm/components/Card/CardButton.js +13 -0
- package/dist/esm/components/Card/CardButton.js.map +1 -0
- package/dist/esm/components/Card/CardButton.style.js +29 -0
- package/dist/esm/components/Card/CardButton.style.js.map +1 -0
- package/dist/esm/components/Card/CardHeader.js +26 -0
- package/dist/esm/components/Card/CardHeader.js.map +1 -0
- package/dist/esm/components/Card/CardIconButton.js +14 -0
- package/dist/esm/components/Card/CardIconButton.js.map +1 -0
- package/dist/esm/components/Card/CardLabel.js +62 -0
- package/dist/esm/components/Card/CardLabel.js.map +1 -0
- package/dist/esm/components/Card/CardTitle.js +22 -0
- package/dist/esm/components/Card/CardTitle.js.map +1 -0
- package/dist/esm/components/Card/InputCard.js +11 -0
- package/dist/esm/components/Card/InputCard.js.map +1 -0
- package/dist/esm/components/ChainSelect/ChainSelect.js +124 -0
- package/dist/esm/components/ChainSelect/ChainSelect.js.map +1 -0
- package/dist/esm/components/ChainSelect/ChainSelect.style.js +62 -0
- package/dist/esm/components/ChainSelect/ChainSelect.style.js.map +1 -0
- package/dist/esm/components/ChainSelect/useChainSelect.js +59 -0
- package/dist/esm/components/ChainSelect/useChainSelect.js.map +1 -0
- package/dist/esm/components/Chains/AllChainsAvatar.js +106 -0
- package/dist/esm/components/Chains/AllChainsAvatar.js.map +1 -0
- package/dist/esm/components/Chains/ChainList.js +50 -0
- package/dist/esm/components/Chains/ChainList.js.map +1 -0
- package/dist/esm/components/Chains/ChainList.style.js +43 -0
- package/dist/esm/components/Chains/ChainList.style.js.map +1 -0
- package/dist/esm/components/Chains/ChainListItem.js +55 -0
- package/dist/esm/components/Chains/ChainListItem.js.map +1 -0
- package/dist/esm/components/Chains/ChainsExpanded.js +23 -0
- package/dist/esm/components/Chains/ChainsExpanded.js.map +1 -0
- package/dist/esm/components/Chains/ChainsExpanded.style.js +19 -0
- package/dist/esm/components/Chains/ChainsExpanded.style.js.map +1 -0
- package/dist/esm/components/Chains/PinChainButton.js +43 -0
- package/dist/esm/components/Chains/PinChainButton.js.map +1 -0
- package/dist/esm/components/Chains/SelectChainExpansionContent.js +65 -0
- package/dist/esm/components/Chains/SelectChainExpansionContent.js.map +1 -0
- package/dist/esm/components/Chains/SelectChainPageContent.js +60 -0
- package/dist/esm/components/Chains/SelectChainPageContent.js.map +1 -0
- package/dist/esm/components/Chains/VirtualizedChainList.js +143 -0
- package/dist/esm/components/Chains/VirtualizedChainList.js.map +1 -0
- package/dist/esm/components/ContextMenu.js +59 -0
- package/dist/esm/components/ContextMenu.js.map +1 -0
- package/dist/esm/components/ContextMenu.style.js +12 -0
- package/dist/esm/components/ContextMenu.style.js.map +1 -0
- package/dist/esm/components/ContractComponent/ContractComponent.js +14 -0
- package/dist/esm/components/ContractComponent/ContractComponent.js.map +1 -0
- package/dist/esm/components/ContractComponent/ItemPrice.d.ts +12 -0
- package/dist/esm/components/ContractComponent/ItemPrice.d.ts.map +1 -0
- package/dist/esm/components/ContractComponent/ItemPrice.js +29 -0
- package/dist/esm/components/ContractComponent/ItemPrice.js.map +1 -0
- package/dist/esm/components/ContractComponent/NFT/NFT.d.ts +7 -0
- package/dist/esm/components/ContractComponent/NFT/NFT.d.ts.map +1 -0
- package/dist/esm/components/ContractComponent/NFT/NFT.js +33 -0
- package/dist/esm/components/ContractComponent/NFT/NFT.js.map +1 -0
- package/dist/esm/components/ContractComponent/NFT/NFT.style.js +12 -0
- package/dist/esm/components/ContractComponent/NFT/NFT.style.js.map +1 -0
- package/dist/esm/components/ContractComponent/NFT/NFTBase.d.ts +7 -0
- package/dist/esm/components/ContractComponent/NFT/NFTBase.d.ts.map +1 -0
- package/dist/esm/components/ContractComponent/NFT/NFTBase.js +76 -0
- package/dist/esm/components/ContractComponent/NFT/NFTBase.js.map +1 -0
- package/dist/esm/components/ContractComponent/NFT/types.d.ts +21 -0
- package/dist/esm/components/ContractComponent/NFT/types.d.ts.map +1 -0
- package/dist/esm/components/Dialog/Dialog.js +36 -0
- package/dist/esm/components/Dialog/Dialog.js.map +1 -0
- package/dist/esm/components/Dialog/Dialog.style.js +42 -0
- package/dist/esm/components/Dialog/Dialog.style.js.map +1 -0
- package/dist/esm/components/EmptyListIndicator/EmptyListIndicator.js +12 -0
- package/dist/esm/components/EmptyListIndicator/EmptyListIndicator.js.map +1 -0
- package/dist/esm/components/EmptyListIndicator/EmptyListIndicator.style.js +30 -0
- package/dist/esm/components/EmptyListIndicator/EmptyListIndicator.style.js.map +1 -0
- package/dist/esm/components/ExecutionStatusCard/ExecutionChecklist.js +65 -0
- package/dist/esm/components/ExecutionStatusCard/ExecutionChecklist.js.map +1 -0
- package/dist/esm/components/ExecutionStatusCard/ExecutionStatusCard.js +273 -0
- package/dist/esm/components/ExecutionStatusCard/ExecutionStatusCard.js.map +1 -0
- package/dist/esm/components/ExecutionStatusCard/StaggeredRevealTypography.js +47 -0
- package/dist/esm/components/ExecutionStatusCard/StaggeredRevealTypography.js.map +1 -0
- package/dist/esm/components/ExecutionStatusCard/StatusIcon.js +122 -0
- package/dist/esm/components/ExecutionStatusCard/StatusIcon.js.map +1 -0
- package/dist/esm/components/ExecutionStatusCard/StatusIcon.style.js +14 -0
- package/dist/esm/components/ExecutionStatusCard/StatusIcon.style.js.map +1 -0
- package/dist/esm/components/ExecutionStatusCard/iconKey.js +13 -0
- package/dist/esm/components/ExecutionStatusCard/iconKey.js.map +1 -0
- package/dist/esm/components/Expansion/Expansion.js +32 -0
- package/dist/esm/components/Expansion/Expansion.js.map +1 -0
- package/dist/esm/components/Expansion/Expansion.style.js +40 -0
- package/dist/esm/components/Expansion/Expansion.style.js.map +1 -0
- package/dist/esm/components/Expansion/ExpansionTransition.js +32 -0
- package/dist/esm/components/Expansion/ExpansionTransition.js.map +1 -0
- package/dist/esm/components/FeeBreakdownTooltip.js +39 -0
- package/dist/esm/components/FeeBreakdownTooltip.js.map +1 -0
- package/dist/esm/components/Header/ActivitiesButton.js +61 -0
- package/dist/esm/components/Header/ActivitiesButton.js.map +1 -0
- package/dist/esm/components/Header/ActivitiesButton.style.js +39 -0
- package/dist/esm/components/Header/ActivitiesButton.style.js.map +1 -0
- package/dist/esm/components/Header/BackButton.js +24 -0
- package/dist/esm/components/Header/BackButton.js.map +1 -0
- package/dist/esm/components/Header/CloseDrawerButton.js +25 -0
- package/dist/esm/components/Header/CloseDrawerButton.js.map +1 -0
- package/dist/esm/components/Header/DisconnectIconButton.js +20 -0
- package/dist/esm/components/Header/DisconnectIconButton.js.map +1 -0
- package/dist/esm/components/Header/Header.js +44 -0
- package/dist/esm/components/Header/Header.js.map +1 -0
- package/dist/esm/components/Header/Header.style.js +71 -0
- package/dist/esm/components/Header/Header.style.js.map +1 -0
- package/dist/esm/components/Header/NavigationHeader.js +62 -0
- package/dist/esm/components/Header/NavigationHeader.js.map +1 -0
- package/dist/esm/components/Header/SettingsButton.js +32 -0
- package/dist/esm/components/Header/SettingsButton.js.map +1 -0
- package/dist/esm/components/Header/SettingsButton.style.js +38 -0
- package/dist/esm/components/Header/SettingsButton.style.js.map +1 -0
- package/dist/esm/components/Header/SplitNavigationTabs.js +33 -0
- package/dist/esm/components/Header/SplitNavigationTabs.js.map +1 -0
- package/dist/esm/components/Header/WalletHeader.js +118 -0
- package/dist/esm/components/Header/WalletHeader.js.map +1 -0
- package/dist/esm/components/Header/WalletMenu.js +100 -0
- package/dist/esm/components/Header/WalletMenu.js.map +1 -0
- package/dist/esm/components/Header/WalletMenu.style.js +25 -0
- package/dist/esm/components/Header/WalletMenu.style.js.map +1 -0
- package/dist/esm/components/IconCircle/IconCircle.js +19 -0
- package/dist/esm/components/IconCircle/IconCircle.js.map +1 -0
- package/dist/esm/components/IconCircle/IconCircle.style.js +57 -0
- package/dist/esm/components/IconCircle/IconCircle.style.js.map +1 -0
- package/dist/esm/components/IconCircle/statusIcons.js +15 -0
- package/dist/esm/components/IconCircle/statusIcons.js.map +1 -0
- package/dist/esm/components/IconTypography.js +11 -0
- package/dist/esm/components/IconTypography.js.map +1 -0
- package/dist/esm/components/Initializer.js +10 -0
- package/dist/esm/components/Initializer.js.map +1 -0
- package/dist/esm/components/Input.js +15 -0
- package/dist/esm/components/Input.js.map +1 -0
- package/dist/esm/components/ListItem/ListItem.js +23 -0
- package/dist/esm/components/ListItem/ListItem.js.map +1 -0
- package/dist/esm/components/ListItem/ListItemButton.js +13 -0
- package/dist/esm/components/ListItem/ListItemButton.js.map +1 -0
- package/dist/esm/components/ListItemButton.js +30 -0
- package/dist/esm/components/ListItemButton.js.map +1 -0
- package/dist/esm/components/ListItemText.js +7 -0
- package/dist/esm/components/ListItemText.js.map +1 -0
- package/dist/esm/components/Menu.js +21 -0
- package/dist/esm/components/Menu.js.map +1 -0
- package/dist/esm/components/Messages/AccountDeployedMessage.js +27 -0
- package/dist/esm/components/Messages/AccountDeployedMessage.js.map +1 -0
- package/dist/esm/components/Messages/AccountNotDeployedMessage.js +24 -0
- package/dist/esm/components/Messages/AccountNotDeployedMessage.js.map +1 -0
- package/dist/esm/components/Messages/AlertMessage.js +16 -0
- package/dist/esm/components/Messages/AlertMessage.js.map +1 -0
- package/dist/esm/components/Messages/AlertMessage.style.js +38 -0
- package/dist/esm/components/Messages/AlertMessage.style.js.map +1 -0
- package/dist/esm/components/Messages/FundsSufficiencyMessage.js +24 -0
- package/dist/esm/components/Messages/FundsSufficiencyMessage.js.map +1 -0
- package/dist/esm/components/Messages/GasRefuelMessage.js +63 -0
- package/dist/esm/components/Messages/GasRefuelMessage.js.map +1 -0
- package/dist/esm/components/Messages/GasRefuelMessage.style.js +17 -0
- package/dist/esm/components/Messages/GasRefuelMessage.style.js.map +1 -0
- package/dist/esm/components/Messages/GasSufficiencyMessage.js +43 -0
- package/dist/esm/components/Messages/GasSufficiencyMessage.js.map +1 -0
- package/dist/esm/components/Messages/MinFromAmountUSDMessage.js +27 -0
- package/dist/esm/components/Messages/MinFromAmountUSDMessage.js.map +1 -0
- package/dist/esm/components/Messages/MissingRouteRequiredAccountMessage.js +31 -0
- package/dist/esm/components/Messages/MissingRouteRequiredAccountMessage.js.map +1 -0
- package/dist/esm/components/Messages/WarningMessages.js +45 -0
- package/dist/esm/components/Messages/WarningMessages.js.map +1 -0
- package/dist/esm/components/Messages/useMessageQueue.js +68 -0
- package/dist/esm/components/Messages/useMessageQueue.js.map +1 -0
- package/dist/esm/components/NotFound.js +44 -0
- package/dist/esm/components/NotFound.js.map +1 -0
- package/dist/esm/components/PageContainer.js +20 -0
- package/dist/esm/components/PageContainer.js.map +1 -0
- package/dist/esm/components/PageEntered.js +17 -0
- package/dist/esm/components/PageEntered.js.map +1 -0
- package/dist/esm/components/PoweredBy/PoweredBy.js +59 -0
- package/dist/esm/components/PoweredBy/PoweredBy.js.map +1 -0
- package/dist/esm/components/PoweredBy/PoweredBy.style.js +12 -0
- package/dist/esm/components/PoweredBy/PoweredBy.style.js.map +1 -0
- package/dist/esm/components/ProgressToNextUpdate.js +66 -0
- package/dist/esm/components/ProgressToNextUpdate.js.map +1 -0
- package/dist/esm/components/ReverseTokensButton/ReverseTokensButton.js +40 -0
- package/dist/esm/components/ReverseTokensButton/ReverseTokensButton.js.map +1 -0
- package/dist/esm/components/ReverseTokensButton/ReverseTokensButton.style.js +33 -0
- package/dist/esm/components/ReverseTokensButton/ReverseTokensButton.style.js.map +1 -0
- package/dist/esm/components/RouteCard/RouteCard.js +86 -0
- package/dist/esm/components/RouteCard/RouteCard.js.map +1 -0
- package/dist/esm/components/RouteCard/RouteCardEssentials.js +92 -0
- package/dist/esm/components/RouteCard/RouteCardEssentials.js.map +1 -0
- package/dist/esm/components/RouteCard/RouteCardSkeleton.js +53 -0
- package/dist/esm/components/RouteCard/RouteCardSkeleton.js.map +1 -0
- package/dist/esm/components/RouteCard/RouteDetails.js +100 -0
- package/dist/esm/components/RouteCard/RouteDetails.js.map +1 -0
- package/dist/esm/components/RouteCard/RouteDetails.style.js +35 -0
- package/dist/esm/components/RouteCard/RouteDetails.style.js.map +1 -0
- package/dist/esm/components/RouteCard/RouteNotFoundCard.js +45 -0
- package/dist/esm/components/RouteCard/RouteNotFoundCard.js.map +1 -0
- package/dist/esm/components/RouteCard/RouteToken.js +49 -0
- package/dist/esm/components/RouteCard/RouteToken.js.map +1 -0
- package/dist/esm/components/RouteCard/RouteToken.style.js +11 -0
- package/dist/esm/components/RouteCard/RouteToken.style.js.map +1 -0
- package/dist/esm/components/RouteCard/RouteTokens.js +50 -0
- package/dist/esm/components/RouteCard/RouteTokens.js.map +1 -0
- package/dist/esm/components/RouteCard/getMatchingLabels.js +24 -0
- package/dist/esm/components/RouteCard/getMatchingLabels.js.map +1 -0
- package/dist/esm/components/Routes/Routes.js +70 -0
- package/dist/esm/components/Routes/Routes.js.map +1 -0
- package/dist/esm/components/Routes/RoutesContent.js +74 -0
- package/dist/esm/components/Routes/RoutesContent.js.map +1 -0
- package/dist/esm/components/Routes/RoutesExpanded.js +69 -0
- package/dist/esm/components/Routes/RoutesExpanded.js.map +1 -0
- package/dist/esm/components/Routes/RoutesExpanded.style.js +34 -0
- package/dist/esm/components/Routes/RoutesExpanded.style.js.map +1 -0
- package/dist/esm/components/Search/SearchInput.js +46 -0
- package/dist/esm/components/Search/SearchInput.js.map +1 -0
- package/dist/esm/components/Search/SearchInput.style.js +27 -0
- package/dist/esm/components/Search/SearchInput.style.js.map +1 -0
- package/dist/esm/components/Search/SearchNotFound.js +9 -0
- package/dist/esm/components/Search/SearchNotFound.js.map +1 -0
- package/dist/esm/components/Search/SearchNotFound.style.js +28 -0
- package/dist/esm/components/Search/SearchNotFound.style.js.map +1 -0
- package/dist/esm/components/SelectChainAndToken.js +36 -0
- package/dist/esm/components/SelectChainAndToken.js.map +1 -0
- package/dist/esm/components/SelectTokenButton/SelectTokenButton.js +70 -0
- package/dist/esm/components/SelectTokenButton/SelectTokenButton.js.map +1 -0
- package/dist/esm/components/SelectTokenButton/SelectTokenButton.style.js +67 -0
- package/dist/esm/components/SelectTokenButton/SelectTokenButton.style.js.map +1 -0
- package/dist/esm/components/SendToWallet/SendToWalletButton.js +115 -0
- package/dist/esm/components/SendToWallet/SendToWalletButton.js.map +1 -0
- package/dist/esm/components/SendToWallet/SendToWalletButton.style.js +53 -0
- package/dist/esm/components/SendToWallet/SendToWalletButton.style.js.map +1 -0
- package/dist/esm/components/SendToWallet/SendToWalletExpandButton.js +49 -0
- package/dist/esm/components/SendToWallet/SendToWalletExpandButton.js.map +1 -0
- package/dist/esm/components/SettingsListItemButton.js +8 -0
- package/dist/esm/components/SettingsListItemButton.js.map +1 -0
- package/dist/esm/components/Skeleton/WidgetSkeleton.d.ts +10 -0
- package/dist/esm/components/Skeleton/WidgetSkeleton.d.ts.map +1 -0
- package/dist/esm/components/Skeleton/WidgetSkeleton.js +124 -0
- package/dist/esm/components/Skeleton/WidgetSkeleton.js.map +1 -0
- package/dist/esm/components/Skeleton/WidgetSkeleton.style.js +73 -0
- package/dist/esm/components/Skeleton/WidgetSkeleton.style.js.map +1 -0
- package/dist/esm/components/Step/StepActions.js +198 -0
- package/dist/esm/components/Step/StepActions.js.map +1 -0
- package/dist/esm/components/Step/StepActions.style.js +27 -0
- package/dist/esm/components/Step/StepActions.style.js.map +1 -0
- package/dist/esm/components/StepActions/SentToWalletRow.js +49 -0
- package/dist/esm/components/StepActions/SentToWalletRow.js.map +1 -0
- package/dist/esm/components/StepActions/SentToWalletRow.style.js +26 -0
- package/dist/esm/components/StepActions/SentToWalletRow.style.js.map +1 -0
- package/dist/esm/components/StepActions/StepActionRow.js +27 -0
- package/dist/esm/components/StepActions/StepActionRow.js.map +1 -0
- package/dist/esm/components/StepActions/StepActionRow.style.js +17 -0
- package/dist/esm/components/StepActions/StepActionRow.style.js.map +1 -0
- package/dist/esm/components/StepActions/StepActionsList.js +23 -0
- package/dist/esm/components/StepActions/StepActionsList.js.map +1 -0
- package/dist/esm/components/StepActions/executionRows.js +67 -0
- package/dist/esm/components/StepActions/executionRows.js.map +1 -0
- package/dist/esm/components/Switch.js +47 -0
- package/dist/esm/components/Switch.js.map +1 -0
- package/dist/esm/components/Tabs/NavigationTabs.js +39 -0
- package/dist/esm/components/Tabs/NavigationTabs.js.map +1 -0
- package/dist/esm/components/Tabs/Tabs.style.js +31 -0
- package/dist/esm/components/Tabs/Tabs.style.js.map +1 -0
- package/dist/esm/components/TextFitter/TextFitter.js +62 -0
- package/dist/esm/components/TextFitter/TextFitter.js.map +1 -0
- package/dist/esm/components/Timer/ExecutionTimerText.js +10 -0
- package/dist/esm/components/Timer/ExecutionTimerText.js.map +1 -0
- package/dist/esm/components/Timer/StepStatusTimer.js +56 -0
- package/dist/esm/components/Timer/StepStatusTimer.js.map +1 -0
- package/dist/esm/components/Timer/StepStatusTimer.style.js +67 -0
- package/dist/esm/components/Timer/StepStatusTimer.style.js.map +1 -0
- package/dist/esm/components/Token/Token.js +208 -0
- package/dist/esm/components/Token/Token.js.map +1 -0
- package/dist/esm/components/Token/Token.style.js +31 -0
- package/dist/esm/components/Token/Token.style.js.map +1 -0
- package/dist/esm/components/TokenList/PinTokenButton.js +36 -0
- package/dist/esm/components/TokenList/PinTokenButton.js.map +1 -0
- package/dist/esm/components/TokenList/TokenDetailsSheet.js +37 -0
- package/dist/esm/components/TokenList/TokenDetailsSheet.js.map +1 -0
- package/dist/esm/components/TokenList/TokenDetailsSheetContent.js +177 -0
- package/dist/esm/components/TokenList/TokenDetailsSheetContent.js.map +1 -0
- package/dist/esm/components/TokenList/TokenDetailsSheetContent.style.js +32 -0
- package/dist/esm/components/TokenList/TokenDetailsSheetContent.style.js.map +1 -0
- package/dist/esm/components/TokenList/TokenList.js +65 -0
- package/dist/esm/components/TokenList/TokenList.js.map +1 -0
- package/dist/esm/components/TokenList/TokenList.style.js +30 -0
- package/dist/esm/components/TokenList/TokenList.style.js.map +1 -0
- package/dist/esm/components/TokenList/TokenListItem.js +274 -0
- package/dist/esm/components/TokenList/TokenListItem.js.map +1 -0
- package/dist/esm/components/TokenList/TokenNotFound.js +12 -0
- package/dist/esm/components/TokenList/TokenNotFound.js.map +1 -0
- package/dist/esm/components/TokenList/VirtualizedTokenList.js +123 -0
- package/dist/esm/components/TokenList/VirtualizedTokenList.js.map +1 -0
- package/dist/esm/components/TokenList/useTokenSelect.js +78 -0
- package/dist/esm/components/TokenList/useTokenSelect.js.map +1 -0
- package/dist/esm/components/TokenRate/TokenRate.js +38 -0
- package/dist/esm/components/TokenRate/TokenRate.js.map +1 -0
- package/dist/esm/components/TokenRate/TokenRate.style.js +19 -0
- package/dist/esm/components/TokenRate/TokenRate.style.js.map +1 -0
- package/dist/esm/components/Tools/ToolItem.js +37 -0
- package/dist/esm/components/Tools/ToolItem.js.map +1 -0
- package/dist/esm/components/Tools/Tools.js +50 -0
- package/dist/esm/components/Tools/Tools.js.map +1 -0
- package/dist/esm/components/TransactionCard/ActiveTransactionCard.js +68 -0
- package/dist/esm/components/TransactionCard/ActiveTransactionCard.js.map +1 -0
- package/dist/esm/components/TransactionCard/ActiveTransactionCard.style.js +21 -0
- package/dist/esm/components/TransactionCard/ActiveTransactionCard.style.js.map +1 -0
- package/dist/esm/components/TransactionCard/TransactionCard.js +32 -0
- package/dist/esm/components/TransactionCard/TransactionCard.js.map +1 -0
- package/dist/esm/components/TransactionCard/TransactionCard.style.js +14 -0
- package/dist/esm/components/TransactionCard/TransactionCard.style.js.map +1 -0
- package/dist/esm/components/TransactionCard/TransactionCardSkeleton.js +63 -0
- package/dist/esm/components/TransactionCard/TransactionCardSkeleton.js.map +1 -0
- package/dist/esm/config/constants.d.ts +5 -0
- package/dist/esm/config/constants.d.ts.map +1 -0
- package/dist/esm/config/constants.js +7 -0
- package/dist/esm/config/constants.js.map +1 -0
- package/dist/esm/config/queryClient.js +18 -0
- package/dist/esm/config/queryClient.js.map +1 -0
- package/dist/esm/config/version.d.ts +6 -0
- package/dist/esm/config/version.d.ts.map +1 -0
- package/dist/esm/config/version.js +7 -0
- package/dist/esm/config/version.js.map +1 -0
- package/dist/esm/hooks/timer/time.js +26 -0
- package/dist/esm/hooks/timer/time.js.map +1 -0
- package/dist/esm/hooks/timer/useExecutionTimer.js +29 -0
- package/dist/esm/hooks/timer/useExecutionTimer.js.map +1 -0
- package/dist/esm/hooks/timer/useInterval.js +19 -0
- package/dist/esm/hooks/timer/useInterval.js.map +1 -0
- package/dist/esm/hooks/timer/useTimer.js +67 -0
- package/dist/esm/hooks/timer/useTimer.js.map +1 -0
- package/dist/esm/hooks/timer/validate.js +15 -0
- package/dist/esm/hooks/timer/validate.js.map +1 -0
- package/dist/esm/hooks/useAccountsBalancesData.js +70 -0
- package/dist/esm/hooks/useAccountsBalancesData.js.map +1 -0
- package/dist/esm/hooks/useActionMessage.js +18 -0
- package/dist/esm/hooks/useActionMessage.js.map +1 -0
- package/dist/esm/hooks/useAddressActivity.js +36 -0
- package/dist/esm/hooks/useAddressActivity.js.map +1 -0
- package/dist/esm/hooks/useAddressValidation.js +50 -0
- package/dist/esm/hooks/useAddressValidation.js.map +1 -0
- package/dist/esm/hooks/useAvailableChains.js +69 -0
- package/dist/esm/hooks/useAvailableChains.js.map +1 -0
- package/dist/esm/hooks/useChain.js +15 -0
- package/dist/esm/hooks/useChain.js.map +1 -0
- package/dist/esm/hooks/useChainSearch.js +39 -0
- package/dist/esm/hooks/useChainSearch.js.map +1 -0
- package/dist/esm/hooks/useChains.js +26 -0
- package/dist/esm/hooks/useChains.js.map +1 -0
- package/dist/esm/hooks/useContactSupport.js +15 -0
- package/dist/esm/hooks/useContactSupport.js.map +1 -0
- package/dist/esm/hooks/useDebouncedWatch.js +28 -0
- package/dist/esm/hooks/useDebouncedWatch.js.map +1 -0
- package/dist/esm/hooks/useDefaultElementId.js +10 -0
- package/dist/esm/hooks/useDefaultElementId.js.map +1 -0
- package/dist/esm/hooks/useExplorer.js +59 -0
- package/dist/esm/hooks/useExplorer.js.map +1 -0
- package/dist/esm/hooks/useFilteredByTokenBalances.js +71 -0
- package/dist/esm/hooks/useFilteredByTokenBalances.js.map +1 -0
- package/dist/esm/hooks/useFromAmountThreshold.js +29 -0
- package/dist/esm/hooks/useFromAmountThreshold.js.map +1 -0
- package/dist/esm/hooks/useFromTokenSufficiency.js +56 -0
- package/dist/esm/hooks/useFromTokenSufficiency.js.map +1 -0
- package/dist/esm/hooks/useGasRecommendation.js +38 -0
- package/dist/esm/hooks/useGasRecommendation.js.map +1 -0
- package/dist/esm/hooks/useGasRefuel.js +45 -0
- package/dist/esm/hooks/useGasRefuel.js.map +1 -0
- package/dist/esm/hooks/useGasSufficiency.js +104 -0
- package/dist/esm/hooks/useGasSufficiency.js.map +1 -0
- package/dist/esm/hooks/useHasChainExpansion.js +17 -0
- package/dist/esm/hooks/useHasChainExpansion.js.map +1 -0
- package/dist/esm/hooks/useHeader.js +23 -0
- package/dist/esm/hooks/useHeader.js.map +1 -0
- package/dist/esm/hooks/useInitializeSDKProviders.js +15 -0
- package/dist/esm/hooks/useInitializeSDKProviders.js.map +1 -0
- package/dist/esm/hooks/useInitializer.js +19 -0
- package/dist/esm/hooks/useInitializer.js.map +1 -0
- package/dist/esm/hooks/useIsBatchingSupported.js +37 -0
- package/dist/esm/hooks/useIsBatchingSupported.js.map +1 -0
- package/dist/esm/hooks/useIsContractAddress.js +30 -0
- package/dist/esm/hooks/useIsContractAddress.js.map +1 -0
- package/dist/esm/hooks/useLanguages.js +53 -0
- package/dist/esm/hooks/useLanguages.js.map +1 -0
- package/dist/esm/hooks/useListHeight.js +52 -0
- package/dist/esm/hooks/useListHeight.js.map +1 -0
- package/dist/esm/hooks/useLongPress.js +40 -0
- package/dist/esm/hooks/useLongPress.js.map +1 -0
- package/dist/esm/hooks/useNavigateBack.js +18 -0
- package/dist/esm/hooks/useNavigateBack.js.map +1 -0
- package/dist/esm/hooks/usePacedRouteExecution.js +30 -0
- package/dist/esm/hooks/usePacedRouteExecution.js.map +1 -0
- package/dist/esm/hooks/usePacedValue.js +42 -0
- package/dist/esm/hooks/usePacedValue.js.map +1 -0
- package/dist/esm/hooks/useRouteExecution.js +156 -0
- package/dist/esm/hooks/useRouteExecution.js.map +1 -0
- package/dist/esm/hooks/useRouteExecutionMessage.js +61 -0
- package/dist/esm/hooks/useRouteExecutionMessage.js.map +1 -0
- package/dist/esm/hooks/useRouteRequiredAccountConnection.js +37 -0
- package/dist/esm/hooks/useRouteRequiredAccountConnection.js.map +1 -0
- package/dist/esm/hooks/useRoutes.js +303 -0
- package/dist/esm/hooks/useRoutes.js.map +1 -0
- package/dist/esm/hooks/useScrollableContainer.js +12 -0
- package/dist/esm/hooks/useScrollableContainer.js.map +1 -0
- package/dist/esm/hooks/useSetContentHeight.js +23 -0
- package/dist/esm/hooks/useSetContentHeight.js.map +1 -0
- package/dist/esm/hooks/useSettingMonitor.js +51 -0
- package/dist/esm/hooks/useSettingMonitor.js.map +1 -0
- package/dist/esm/hooks/useSwapOnly.js +9 -0
- package/dist/esm/hooks/useSwapOnly.js.map +1 -0
- package/dist/esm/hooks/useToAddressAutoPopulate.js +51 -0
- package/dist/esm/hooks/useToAddressAutoPopulate.js.map +1 -0
- package/dist/esm/hooks/useToAddressRequirements.js +41 -0
- package/dist/esm/hooks/useToAddressRequirements.js.map +1 -0
- package/dist/esm/hooks/useToAddressReset.js +29 -0
- package/dist/esm/hooks/useToAddressReset.js.map +1 -0
- package/dist/esm/hooks/useToken.js +23 -0
- package/dist/esm/hooks/useToken.js.map +1 -0
- package/dist/esm/hooks/useTokenAddressBalance.js +21 -0
- package/dist/esm/hooks/useTokenAddressBalance.js.map +1 -0
- package/dist/esm/hooks/useTokenBalance.js +93 -0
- package/dist/esm/hooks/useTokenBalance.js.map +1 -0
- package/dist/esm/hooks/useTokenBalances.js +111 -0
- package/dist/esm/hooks/useTokenBalances.js.map +1 -0
- package/dist/esm/hooks/useTokenBalancesQueries.js +63 -0
- package/dist/esm/hooks/useTokenBalancesQueries.js.map +1 -0
- package/dist/esm/hooks/useTokenRateText.js +36 -0
- package/dist/esm/hooks/useTokenRateText.js.map +1 -0
- package/dist/esm/hooks/useTokenSearch.js +48 -0
- package/dist/esm/hooks/useTokenSearch.js.map +1 -0
- package/dist/esm/hooks/useTokens.js +100 -0
- package/dist/esm/hooks/useTokens.js.map +1 -0
- package/dist/esm/hooks/useTools.js +42 -0
- package/dist/esm/hooks/useTools.js.map +1 -0
- package/dist/esm/hooks/useTransactionDetails.js +49 -0
- package/dist/esm/hooks/useTransactionDetails.js.map +1 -0
- package/dist/esm/hooks/useTransactionHistory.js +68 -0
- package/dist/esm/hooks/useTransactionHistory.js.map +1 -0
- package/dist/esm/hooks/useTransactionList.js +57 -0
- package/dist/esm/hooks/useTransactionList.js.map +1 -0
- package/dist/esm/hooks/useWideVariant.js +13 -0
- package/dist/esm/hooks/useWideVariant.js.map +1 -0
- package/dist/esm/hooks/useWidgetChains.d.ts +12 -0
- package/dist/esm/hooks/useWidgetChains.d.ts.map +1 -0
- package/dist/esm/hooks/useWidgetChains.js +9 -0
- package/dist/esm/hooks/useWidgetChains.js.map +1 -0
- package/dist/esm/hooks/useWidgetEvents.d.ts +10 -0
- package/dist/esm/hooks/useWidgetEvents.d.ts.map +1 -0
- package/dist/esm/hooks/useWidgetEvents.js +8 -0
- package/dist/esm/hooks/useWidgetEvents.js.map +1 -0
- package/dist/esm/i18n/bn.json +362 -0
- package/dist/esm/i18n/de.json +362 -0
- package/dist/esm/i18n/en.json +360 -0
- package/dist/esm/i18n/es.json +362 -0
- package/dist/esm/i18n/fr.json +362 -0
- package/dist/esm/i18n/hi.json +362 -0
- package/dist/esm/i18n/id.json +362 -0
- package/dist/esm/i18n/it.json +362 -0
- package/dist/esm/i18n/ja.json +362 -0
- package/dist/esm/i18n/ko.json +362 -0
- package/dist/esm/i18n/pl.json +362 -0
- package/dist/esm/i18n/pt.json +362 -0
- package/dist/esm/i18n/th.json +362 -0
- package/dist/esm/i18n/tr.json +362 -0
- package/dist/esm/i18n/uk.json +362 -0
- package/dist/esm/i18n/vi.json +362 -0
- package/dist/esm/i18n/zh.json +362 -0
- package/dist/esm/index.d.ts +33 -0
- package/dist/esm/index.js +28 -0
- package/dist/esm/pages/ActivitiesPage/ActiveTransactionItem.js +36 -0
- package/dist/esm/pages/ActivitiesPage/ActiveTransactionItem.js.map +1 -0
- package/dist/esm/pages/ActivitiesPage/ActivitiesPage.js +101 -0
- package/dist/esm/pages/ActivitiesPage/ActivitiesPage.js.map +1 -0
- package/dist/esm/pages/ActivitiesPage/ActivitiesPageMenuButton.js +55 -0
- package/dist/esm/pages/ActivitiesPage/ActivitiesPageMenuButton.js.map +1 -0
- package/dist/esm/pages/ActivitiesPage/TransactionHistoryEmpty.js +17 -0
- package/dist/esm/pages/ActivitiesPage/TransactionHistoryEmpty.js.map +1 -0
- package/dist/esm/pages/ActivitiesPage/TransactionHistoryItem.js +24 -0
- package/dist/esm/pages/ActivitiesPage/TransactionHistoryItem.js.map +1 -0
- package/dist/esm/pages/LanguagesPage.js +31 -0
- package/dist/esm/pages/LanguagesPage.js.map +1 -0
- package/dist/esm/pages/MainPage/MainPage.js +59 -0
- package/dist/esm/pages/MainPage/MainPage.js.map +1 -0
- package/dist/esm/pages/MainPage/MainWarningMessages.js +16 -0
- package/dist/esm/pages/MainPage/MainWarningMessages.js.map +1 -0
- package/dist/esm/pages/MainPage/ReviewButton.js +60 -0
- package/dist/esm/pages/MainPage/ReviewButton.js.map +1 -0
- package/dist/esm/pages/RoutesPage/RoutesPage.js +74 -0
- package/dist/esm/pages/RoutesPage/RoutesPage.js.map +1 -0
- package/dist/esm/pages/RoutesPage/RoutesPage.style.js +10 -0
- package/dist/esm/pages/RoutesPage/RoutesPage.style.js.map +1 -0
- package/dist/esm/pages/SelectChainPage/SelectChainPage.js +35 -0
- package/dist/esm/pages/SelectChainPage/SelectChainPage.js.map +1 -0
- package/dist/esm/pages/SelectEnabledToolsPage.js +105 -0
- package/dist/esm/pages/SelectEnabledToolsPage.js.map +1 -0
- package/dist/esm/pages/SelectTokenPage/SearchTokenInput.js +40 -0
- package/dist/esm/pages/SelectTokenPage/SearchTokenInput.js.map +1 -0
- package/dist/esm/pages/SelectTokenPage/SelectTokenPage.js +46 -0
- package/dist/esm/pages/SelectTokenPage/SelectTokenPage.js.map +1 -0
- package/dist/esm/pages/SendToWallet/BookmarkAddressSheet.js +176 -0
- package/dist/esm/pages/SendToWallet/BookmarkAddressSheet.js.map +1 -0
- package/dist/esm/pages/SendToWallet/BookmarksPage.js +124 -0
- package/dist/esm/pages/SendToWallet/BookmarksPage.js.map +1 -0
- package/dist/esm/pages/SendToWallet/ConfirmAddressSheet.js +82 -0
- package/dist/esm/pages/SendToWallet/ConfirmAddressSheet.js.map +1 -0
- package/dist/esm/pages/SendToWallet/ConnectedWalletsPage.js +106 -0
- package/dist/esm/pages/SendToWallet/ConnectedWalletsPage.js.map +1 -0
- package/dist/esm/pages/SendToWallet/RecentWalletsPage.js +124 -0
- package/dist/esm/pages/SendToWallet/RecentWalletsPage.js.map +1 -0
- package/dist/esm/pages/SendToWallet/SendToConfiguredWalletPage.js +84 -0
- package/dist/esm/pages/SendToWallet/SendToConfiguredWalletPage.js.map +1 -0
- package/dist/esm/pages/SendToWallet/SendToWalletPage.js +237 -0
- package/dist/esm/pages/SendToWallet/SendToWalletPage.js.map +1 -0
- package/dist/esm/pages/SendToWallet/SendToWalletPage.style.js +90 -0
- package/dist/esm/pages/SendToWallet/SendToWalletPage.style.js.map +1 -0
- package/dist/esm/pages/SettingsPage/BridgeAndExchangeSettings.js +49 -0
- package/dist/esm/pages/SettingsPage/BridgeAndExchangeSettings.js.map +1 -0
- package/dist/esm/pages/SettingsPage/GasPriceSettings.js +56 -0
- package/dist/esm/pages/SettingsPage/GasPriceSettings.js.map +1 -0
- package/dist/esm/pages/SettingsPage/LanguageSetting.js +31 -0
- package/dist/esm/pages/SettingsPage/LanguageSetting.js.map +1 -0
- package/dist/esm/pages/SettingsPage/ResetSettingsButton.js +64 -0
- package/dist/esm/pages/SettingsPage/ResetSettingsButton.js.map +1 -0
- package/dist/esm/pages/SettingsPage/ResetSettingsButton.style.js +12 -0
- package/dist/esm/pages/SettingsPage/ResetSettingsButton.style.js.map +1 -0
- package/dist/esm/pages/SettingsPage/RoutePrioritySettings.js +48 -0
- package/dist/esm/pages/SettingsPage/RoutePrioritySettings.js.map +1 -0
- package/dist/esm/pages/SettingsPage/SettingsCard/BadgedValue.js +13 -0
- package/dist/esm/pages/SettingsPage/SettingsCard/BadgedValue.js.map +1 -0
- package/dist/esm/pages/SettingsPage/SettingsCard/SettingCard.style.js +23 -0
- package/dist/esm/pages/SettingsPage/SettingsCard/SettingCard.style.js.map +1 -0
- package/dist/esm/pages/SettingsPage/SettingsCard/SettingCardExpandable.js +47 -0
- package/dist/esm/pages/SettingsPage/SettingsCard/SettingCardExpandable.js.map +1 -0
- package/dist/esm/pages/SettingsPage/SettingsCard/SettingsAccordian.js +38 -0
- package/dist/esm/pages/SettingsPage/SettingsCard/SettingsAccordian.js.map +1 -0
- package/dist/esm/pages/SettingsPage/SettingsPage.js +39 -0
- package/dist/esm/pages/SettingsPage/SettingsPage.js.map +1 -0
- package/dist/esm/pages/SettingsPage/SlippageSettings/SlippageSettings.js +92 -0
- package/dist/esm/pages/SettingsPage/SlippageSettings/SlippageSettings.js.map +1 -0
- package/dist/esm/pages/SettingsPage/SlippageSettings/SlippageSettings.style.js +62 -0
- package/dist/esm/pages/SettingsPage/SlippageSettings/SlippageSettings.style.js.map +1 -0
- package/dist/esm/pages/SettingsPage/SmallBalanceFilterSettings.js +75 -0
- package/dist/esm/pages/SettingsPage/SmallBalanceFilterSettings.js.map +1 -0
- package/dist/esm/pages/SettingsPage/ThemeSettings.js +60 -0
- package/dist/esm/pages/SettingsPage/ThemeSettings.js.map +1 -0
- package/dist/esm/pages/TransactionDetailsPage/ContactSupportButton.js +16 -0
- package/dist/esm/pages/TransactionDetailsPage/ContactSupportButton.js.map +1 -0
- package/dist/esm/pages/TransactionDetailsPage/ContactSupportButton.style.js +14 -0
- package/dist/esm/pages/TransactionDetailsPage/ContactSupportButton.style.js.map +1 -0
- package/dist/esm/pages/TransactionDetailsPage/ReceiptsCard.js +28 -0
- package/dist/esm/pages/TransactionDetailsPage/ReceiptsCard.js.map +1 -0
- package/dist/esm/pages/TransactionDetailsPage/TransactionDetailsPage.js +84 -0
- package/dist/esm/pages/TransactionDetailsPage/TransactionDetailsPage.js.map +1 -0
- package/dist/esm/pages/TransactionDetailsPage/TransactionDetailsSkeleton.js +80 -0
- package/dist/esm/pages/TransactionDetailsPage/TransactionDetailsSkeleton.js.map +1 -0
- package/dist/esm/pages/TransactionDetailsPage/TransferIdCard.js +65 -0
- package/dist/esm/pages/TransactionDetailsPage/TransferIdCard.js.map +1 -0
- package/dist/esm/pages/TransactionPage/ConfirmToAddressSheet.js +81 -0
- package/dist/esm/pages/TransactionPage/ConfirmToAddressSheet.js.map +1 -0
- package/dist/esm/pages/TransactionPage/ExchangeRateBottomSheet.js +146 -0
- package/dist/esm/pages/TransactionPage/ExchangeRateBottomSheet.js.map +1 -0
- package/dist/esm/pages/TransactionPage/ExchangeRateBottomSheet.style.js +11 -0
- package/dist/esm/pages/TransactionPage/ExchangeRateBottomSheet.style.js.map +1 -0
- package/dist/esm/pages/TransactionPage/ExecutionDoneCard.js +38 -0
- package/dist/esm/pages/TransactionPage/ExecutionDoneCard.js.map +1 -0
- package/dist/esm/pages/TransactionPage/RouteTracker.js +47 -0
- package/dist/esm/pages/TransactionPage/RouteTracker.js.map +1 -0
- package/dist/esm/pages/TransactionPage/StartTransactionButton.js +21 -0
- package/dist/esm/pages/TransactionPage/StartTransactionButton.js.map +1 -0
- package/dist/esm/pages/TransactionPage/TokenValueBottomSheet.js +82 -0
- package/dist/esm/pages/TransactionPage/TokenValueBottomSheet.js.map +1 -0
- package/dist/esm/pages/TransactionPage/TokenValueBottomSheet.style.js +44 -0
- package/dist/esm/pages/TransactionPage/TokenValueBottomSheet.style.js.map +1 -0
- package/dist/esm/pages/TransactionPage/TransactionContent.js +21 -0
- package/dist/esm/pages/TransactionPage/TransactionContent.js.map +1 -0
- package/dist/esm/pages/TransactionPage/TransactionDoneButtons.js +46 -0
- package/dist/esm/pages/TransactionPage/TransactionDoneButtons.js.map +1 -0
- package/dist/esm/pages/TransactionPage/TransactionExecutionContent.js +78 -0
- package/dist/esm/pages/TransactionPage/TransactionExecutionContent.js.map +1 -0
- package/dist/esm/pages/TransactionPage/TransactionFailedButtons.js +80 -0
- package/dist/esm/pages/TransactionPage/TransactionFailedButtons.js.map +1 -0
- package/dist/esm/pages/TransactionPage/TransactionPage.js +79 -0
- package/dist/esm/pages/TransactionPage/TransactionPage.js.map +1 -0
- package/dist/esm/pages/TransactionPage/TransactionReview.js +115 -0
- package/dist/esm/pages/TransactionPage/TransactionReview.js.map +1 -0
- package/dist/esm/pages/TransactionPage/utils.js +12 -0
- package/dist/esm/pages/TransactionPage/utils.js.map +1 -0
- package/dist/esm/providers/I18nProvider/I18nProvider.js +83 -0
- package/dist/esm/providers/I18nProvider/I18nProvider.js.map +1 -0
- package/dist/esm/providers/I18nProvider/constants.js +43 -0
- package/dist/esm/providers/I18nProvider/constants.js.map +1 -0
- package/dist/esm/providers/I18nProvider/enResource.d.ts +2 -0
- package/dist/esm/providers/I18nProvider/enResource.js +2 -0
- package/dist/esm/providers/I18nProvider/i18n.js +18 -0
- package/dist/esm/providers/I18nProvider/i18n.js.map +1 -0
- package/dist/esm/providers/I18nProvider/types.d.ts +12 -0
- package/dist/esm/providers/I18nProvider/types.d.ts.map +1 -0
- package/dist/esm/providers/QueryClientProvider.js +15 -0
- package/dist/esm/providers/QueryClientProvider.js.map +1 -0
- package/dist/esm/providers/SDKClientProvider.js +43 -0
- package/dist/esm/providers/SDKClientProvider.js.map +1 -0
- package/dist/esm/providers/ThemeProvider/ThemeProvider.js +25 -0
- package/dist/esm/providers/ThemeProvider/ThemeProvider.js.map +1 -0
- package/dist/esm/providers/WalletProvider/WalletProvider.js +40 -0
- package/dist/esm/providers/WalletProvider/WalletProvider.js.map +1 -0
- package/dist/esm/providers/WalletProvider/useExternalWalletProvider.js +45 -0
- package/dist/esm/providers/WalletProvider/useExternalWalletProvider.js.map +1 -0
- package/dist/esm/providers/WidgetProvider/WidgetProvider.js +43 -0
- package/dist/esm/providers/WidgetProvider/WidgetProvider.js.map +1 -0
- package/dist/esm/stores/StoreProvider.js +38 -0
- package/dist/esm/stores/StoreProvider.js.map +1 -0
- package/dist/esm/stores/bookmarks/BookmarkStore.js +28 -0
- package/dist/esm/stores/bookmarks/BookmarkStore.js.map +1 -0
- package/dist/esm/stores/bookmarks/createBookmarkStore.js +45 -0
- package/dist/esm/stores/bookmarks/createBookmarkStore.js.map +1 -0
- package/dist/esm/stores/bookmarks/types.d.ts +26 -0
- package/dist/esm/stores/bookmarks/types.d.ts.map +1 -0
- package/dist/esm/stores/bookmarks/useBookmarkActions.js +17 -0
- package/dist/esm/stores/bookmarks/useBookmarkActions.js.map +1 -0
- package/dist/esm/stores/bookmarks/useBookmarks.js +18 -0
- package/dist/esm/stores/bookmarks/useBookmarks.js.map +1 -0
- package/dist/esm/stores/chains/ChainOrderStore.js +82 -0
- package/dist/esm/stores/chains/ChainOrderStore.js.map +1 -0
- package/dist/esm/stores/chains/createChainOrderStore.js +87 -0
- package/dist/esm/stores/chains/createChainOrderStore.js.map +1 -0
- package/dist/esm/stores/chains/useChainOrder.js +11 -0
- package/dist/esm/stores/chains/useChainOrder.js.map +1 -0
- package/dist/esm/stores/form/FormStore.js +72 -0
- package/dist/esm/stores/form/FormStore.js.map +1 -0
- package/dist/esm/stores/form/FormStoreContext.js +7 -0
- package/dist/esm/stores/form/FormStoreContext.js.map +1 -0
- package/dist/esm/stores/form/FormUpdater.js +37 -0
- package/dist/esm/stores/form/FormUpdater.js.map +1 -0
- package/dist/esm/stores/form/URLSearchParamsBuilder.js +79 -0
- package/dist/esm/stores/form/URLSearchParamsBuilder.js.map +1 -0
- package/dist/esm/stores/form/createFormStore.js +176 -0
- package/dist/esm/stores/form/createFormStore.js.map +1 -0
- package/dist/esm/stores/form/getDefaultValuesFromQueryString.js +22 -0
- package/dist/esm/stores/form/getDefaultValuesFromQueryString.js.map +1 -0
- package/dist/esm/stores/form/types.d.ts +76 -0
- package/dist/esm/stores/form/types.d.ts.map +1 -0
- package/dist/esm/stores/form/types.js +10 -0
- package/dist/esm/stores/form/types.js.map +1 -0
- package/dist/esm/stores/form/useClearAmountFields.js +14 -0
- package/dist/esm/stores/form/useClearAmountFields.js.map +1 -0
- package/dist/esm/stores/form/useFieldActions.d.ts +7 -0
- package/dist/esm/stores/form/useFieldActions.d.ts.map +1 -0
- package/dist/esm/stores/form/useFieldActions.js +61 -0
- package/dist/esm/stores/form/useFieldActions.js.map +1 -0
- package/dist/esm/stores/form/useFieldValues.d.ts +7 -0
- package/dist/esm/stores/form/useFieldValues.d.ts.map +1 -0
- package/dist/esm/stores/form/useFieldValues.js +9 -0
- package/dist/esm/stores/form/useFieldValues.js.map +1 -0
- package/dist/esm/stores/form/useFormRef.js +36 -0
- package/dist/esm/stores/form/useFormRef.js.map +1 -0
- package/dist/esm/stores/form/useFormStore.js +13 -0
- package/dist/esm/stores/form/useFormStore.js.map +1 -0
- package/dist/esm/stores/form/useTouchedFields.js +9 -0
- package/dist/esm/stores/form/useTouchedFields.js.map +1 -0
- package/dist/esm/stores/header/useHeaderStore.js +62 -0
- package/dist/esm/stores/header/useHeaderStore.js.map +1 -0
- package/dist/esm/stores/inputMode/useInputModeStore.js +20 -0
- package/dist/esm/stores/inputMode/useInputModeStore.js.map +1 -0
- package/dist/esm/stores/pinnedTokens/PinnedTokensStore.js +23 -0
- package/dist/esm/stores/pinnedTokens/PinnedTokensStore.js.map +1 -0
- package/dist/esm/stores/pinnedTokens/createPinnedTokensStore.js +57 -0
- package/dist/esm/stores/pinnedTokens/createPinnedTokensStore.js.map +1 -0
- package/dist/esm/stores/routes/RouteExecutionStore.js +26 -0
- package/dist/esm/stores/routes/RouteExecutionStore.js.map +1 -0
- package/dist/esm/stores/routes/createRouteExecutionStore.js +85 -0
- package/dist/esm/stores/routes/createRouteExecutionStore.js.map +1 -0
- package/dist/esm/stores/routes/useIntermediateRoutesStore.js +19 -0
- package/dist/esm/stores/routes/useIntermediateRoutesStore.js.map +1 -0
- package/dist/esm/stores/routes/useRouteExecutionIndicator.js +23 -0
- package/dist/esm/stores/routes/useRouteExecutionIndicator.js.map +1 -0
- package/dist/esm/stores/routes/useSetExecutableRoute.js +9 -0
- package/dist/esm/stores/routes/useSetExecutableRoute.js.map +1 -0
- package/dist/esm/stores/routes/utils.js +35 -0
- package/dist/esm/stores/routes/utils.js.map +1 -0
- package/dist/esm/stores/settings/SettingsStore.js +26 -0
- package/dist/esm/stores/settings/SettingsStore.js.map +1 -0
- package/dist/esm/stores/settings/createSettingsStore.js +126 -0
- package/dist/esm/stores/settings/createSettingsStore.js.map +1 -0
- package/dist/esm/stores/settings/types.d.ts +25 -0
- package/dist/esm/stores/settings/types.d.ts.map +1 -0
- package/dist/esm/stores/settings/types.js +6 -0
- package/dist/esm/stores/settings/types.js.map +1 -0
- package/dist/esm/stores/settings/useSettings.js +12 -0
- package/dist/esm/stores/settings/useSettings.js.map +1 -0
- package/dist/esm/stores/settings/useSettingsActions.js +70 -0
- package/dist/esm/stores/settings/useSettingsActions.js.map +1 -0
- package/dist/esm/stores/settings/useSplitModeStore.js +36 -0
- package/dist/esm/stores/settings/useSplitModeStore.js.map +1 -0
- package/dist/esm/stores/settings/utils/getStateValues.js +20 -0
- package/dist/esm/stores/settings/utils/getStateValues.js.map +1 -0
- package/dist/esm/themes/azureLight.d.ts +7 -0
- package/dist/esm/themes/azureLight.d.ts.map +1 -0
- package/dist/esm/themes/azureLight.js +41 -0
- package/dist/esm/themes/azureLight.js.map +1 -0
- package/dist/esm/themes/createTheme.d.ts +8 -0
- package/dist/esm/themes/createTheme.d.ts.map +1 -0
- package/dist/esm/themes/createTheme.js +322 -0
- package/dist/esm/themes/createTheme.js.map +1 -0
- package/dist/esm/themes/jumper.d.ts +7 -0
- package/dist/esm/themes/jumper.d.ts.map +1 -0
- package/dist/esm/themes/jumper.js +58 -0
- package/dist/esm/themes/jumper.js.map +1 -0
- package/dist/esm/themes/palettes.d.ts +54 -0
- package/dist/esm/themes/palettes.d.ts.map +1 -0
- package/dist/esm/themes/palettes.js +43 -0
- package/dist/esm/themes/palettes.js.map +1 -0
- package/dist/esm/themes/types.d.ts +67 -0
- package/dist/esm/themes/types.d.ts.map +1 -0
- package/dist/esm/themes/utils.js +13 -0
- package/dist/esm/themes/utils.js.map +1 -0
- package/dist/esm/themes/watermelonLight.d.ts +7 -0
- package/dist/esm/themes/watermelonLight.d.ts.map +1 -0
- package/dist/esm/themes/watermelonLight.js +45 -0
- package/dist/esm/themes/watermelonLight.js.map +1 -0
- package/dist/esm/themes/windows95.d.ts +7 -0
- package/dist/esm/themes/windows95.d.ts.map +1 -0
- package/dist/esm/themes/windows95.js +76 -0
- package/dist/esm/themes/windows95.js.map +1 -0
- package/dist/esm/types/events.d.ts +96 -0
- package/dist/esm/types/events.d.ts.map +1 -0
- package/dist/esm/types/events.js +26 -0
- package/dist/esm/types/events.js.map +1 -0
- package/dist/esm/types/token.d.ts +13 -0
- package/dist/esm/types/token.d.ts.map +1 -0
- package/dist/esm/types/widget.d.ts +332 -0
- package/dist/esm/types/widget.d.ts.map +1 -0
- package/dist/esm/types/widget.js +11 -0
- package/dist/esm/types/widget.js.map +1 -0
- package/dist/esm/utils/chainType.js +14 -0
- package/dist/esm/utils/chainType.js.map +1 -0
- package/dist/esm/utils/compactNumberFormatter.d.ts +14 -0
- package/dist/esm/utils/compactNumberFormatter.d.ts.map +1 -0
- package/dist/esm/utils/compactNumberFormatter.js +67 -0
- package/dist/esm/utils/compactNumberFormatter.js.map +1 -0
- package/dist/esm/utils/converters.js +168 -0
- package/dist/esm/utils/converters.js.map +1 -0
- package/dist/esm/utils/currencyExtendedFormatter.d.ts +5 -0
- package/dist/esm/utils/currencyExtendedFormatter.d.ts.map +1 -0
- package/dist/esm/utils/currencyExtendedFormatter.js +15 -0
- package/dist/esm/utils/currencyExtendedFormatter.js.map +1 -0
- package/dist/esm/utils/deepEqual.js +32 -0
- package/dist/esm/utils/deepEqual.js.map +1 -0
- package/dist/esm/utils/deepMerge.js +13 -0
- package/dist/esm/utils/deepMerge.js.map +1 -0
- package/dist/esm/utils/elements.js +10 -0
- package/dist/esm/utils/elements.js.map +1 -0
- package/dist/esm/utils/enum.js +6 -0
- package/dist/esm/utils/enum.js.map +1 -0
- package/dist/esm/utils/fees.js +74 -0
- package/dist/esm/utils/fees.js.map +1 -0
- package/dist/esm/utils/format.d.ts +29 -0
- package/dist/esm/utils/format.d.ts.map +1 -0
- package/dist/esm/utils/format.js +100 -0
- package/dist/esm/utils/format.js.map +1 -0
- package/dist/esm/utils/getActionMessage.js +68 -0
- package/dist/esm/utils/getActionMessage.js.map +1 -0
- package/dist/esm/utils/getErrorMessage.js +117 -0
- package/dist/esm/utils/getErrorMessage.js.map +1 -0
- package/dist/esm/utils/getPriceImpact.d.ts +18 -0
- package/dist/esm/utils/getPriceImpact.d.ts.map +1 -0
- package/dist/esm/utils/getPriceImpact.js +12 -0
- package/dist/esm/utils/getPriceImpact.js.map +1 -0
- package/dist/esm/utils/input.js +23 -0
- package/dist/esm/utils/input.js.map +1 -0
- package/dist/esm/utils/item.js +27 -0
- package/dist/esm/utils/item.js.map +1 -0
- package/dist/esm/utils/navigationRoutes.d.ts +27 -0
- package/dist/esm/utils/navigationRoutes.d.ts.map +1 -0
- package/dist/esm/utils/navigationRoutes.js +65 -0
- package/dist/esm/utils/navigationRoutes.js.map +1 -0
- package/dist/esm/utils/percentFormatter.d.ts +11 -0
- package/dist/esm/utils/percentFormatter.d.ts.map +1 -0
- package/dist/esm/utils/percentFormatter.js +23 -0
- package/dist/esm/utils/percentFormatter.js.map +1 -0
- package/dist/esm/utils/prepareActions.js +21 -0
- package/dist/esm/utils/prepareActions.js.map +1 -0
- package/dist/esm/utils/queries.js +6 -0
- package/dist/esm/utils/queries.js.map +1 -0
- package/dist/esm/utils/timer.js +23 -0
- package/dist/esm/utils/timer.js.map +1 -0
- package/dist/esm/utils/token.js +59 -0
- package/dist/esm/utils/token.js.map +1 -0
- package/dist/esm/utils/tokenList.js +147 -0
- package/dist/esm/utils/tokenList.js.map +1 -0
- package/dist/esm/utils/variant.js +10 -0
- package/dist/esm/utils/variant.js.map +1 -0
- package/dist/esm/utils/wallet.js +6 -0
- package/dist/esm/utils/wallet.js.map +1 -0
- package/dist/esm/utils/widgetSize.js +11 -0
- package/dist/esm/utils/widgetSize.js.map +1 -0
- package/package.json +95 -0
- package/src/App.tsx +48 -0
- package/src/AppDefault.tsx +266 -0
- package/src/AppDrawer.tsx +104 -0
- package/src/AppDrawerContext.ts +10 -0
- package/src/AppLayout.tsx +36 -0
- package/src/AppProvider.tsx +36 -0
- package/src/components/ActionRow/ActionRow.style.tsx +21 -0
- package/src/components/ActionRow/ActionRow.tsx +25 -0
- package/src/components/AmountInput/AmountInput.style.tsx +68 -0
- package/src/components/AmountInput/AmountInput.tsx +203 -0
- package/src/components/AmountInput/AmountInputEndAdornment.style.ts +22 -0
- package/src/components/AmountInput/AmountInputEndAdornment.tsx +96 -0
- package/src/components/AmountInput/AmountInputStartAdornment.tsx +26 -0
- package/src/components/AmountInput/PriceFormHelperText.style.tsx +34 -0
- package/src/components/AmountInput/PriceFormHelperText.tsx +135 -0
- package/src/components/AppContainer.tsx +154 -0
- package/src/components/Avatar/AccountAvatar.tsx +50 -0
- package/src/components/Avatar/Avatar.style.tsx +100 -0
- package/src/components/Avatar/Avatar.tsx +50 -0
- package/src/components/Avatar/ChainBadgeContent.tsx +22 -0
- package/src/components/Avatar/SmallAvatar.tsx +27 -0
- package/src/components/Avatar/TokenAvatar.tsx +99 -0
- package/src/components/Avatar/utils.ts +6 -0
- package/src/components/BaseTransactionButton/BaseTransactionButton.tsx +72 -0
- package/src/components/BaseTransactionButton/types.ts +11 -0
- package/src/components/BottomSheet/BottomSheet.tsx +67 -0
- package/src/components/BottomSheet/types.ts +14 -0
- package/src/components/ButtonTertiary.tsx +29 -0
- package/src/components/Card/Card.tsx +81 -0
- package/src/components/Card/CardButton.style.tsx +31 -0
- package/src/components/Card/CardButton.tsx +26 -0
- package/src/components/Card/CardHeader.tsx +28 -0
- package/src/components/Card/CardIconButton.tsx +20 -0
- package/src/components/Card/CardLabel.tsx +80 -0
- package/src/components/Card/CardTitle.tsx +29 -0
- package/src/components/Card/InputCard.tsx +11 -0
- package/src/components/ChainSelect/ChainSelect.style.tsx +84 -0
- package/src/components/ChainSelect/ChainSelect.tsx +183 -0
- package/src/components/ChainSelect/useChainSelect.ts +98 -0
- package/src/components/Chains/AllChainsAvatar.tsx +167 -0
- package/src/components/Chains/ChainList.style.tsx +91 -0
- package/src/components/Chains/ChainList.tsx +89 -0
- package/src/components/Chains/ChainListItem.tsx +83 -0
- package/src/components/Chains/ChainsExpanded.style.tsx +25 -0
- package/src/components/Chains/ChainsExpanded.tsx +31 -0
- package/src/components/Chains/PinChainButton.tsx +55 -0
- package/src/components/Chains/SelectChainExpansionContent.tsx +84 -0
- package/src/components/Chains/SelectChainPageContent.tsx +66 -0
- package/src/components/Chains/VirtualizedChainList.tsx +222 -0
- package/src/components/ContextMenu.style.tsx +13 -0
- package/src/components/ContextMenu.tsx +75 -0
- package/src/components/ContractComponent/ContractComponent.tsx +14 -0
- package/src/components/ContractComponent/ItemPrice.tsx +37 -0
- package/src/components/ContractComponent/NFT/NFT.style.ts +10 -0
- package/src/components/ContractComponent/NFT/NFT.tsx +46 -0
- package/src/components/ContractComponent/NFT/NFTBase.tsx +91 -0
- package/src/components/ContractComponent/NFT/types.ts +19 -0
- package/src/components/Dialog/Dialog.style.tsx +59 -0
- package/src/components/Dialog/Dialog.tsx +49 -0
- package/src/components/EmptyListIndicator/EmptyListIndicator.style.tsx +38 -0
- package/src/components/EmptyListIndicator/EmptyListIndicator.tsx +25 -0
- package/src/components/ExecutionStatusCard/ExecutionChecklist.tsx +61 -0
- package/src/components/ExecutionStatusCard/ExecutionStatusCard.tsx +242 -0
- package/src/components/ExecutionStatusCard/StaggeredRevealTypography.tsx +59 -0
- package/src/components/ExecutionStatusCard/StatusIcon.style.tsx +13 -0
- package/src/components/ExecutionStatusCard/StatusIcon.tsx +99 -0
- package/src/components/ExecutionStatusCard/iconKey.ts +37 -0
- package/src/components/Expansion/Expansion.style.tsx +46 -0
- package/src/components/Expansion/Expansion.tsx +47 -0
- package/src/components/Expansion/ExpansionTransition.tsx +48 -0
- package/src/components/FeeBreakdownTooltip.tsx +68 -0
- package/src/components/Header/ActivitiesButton.style.tsx +67 -0
- package/src/components/Header/ActivitiesButton.tsx +59 -0
- package/src/components/Header/BackButton.tsx +29 -0
- package/src/components/Header/CloseDrawerButton.tsx +35 -0
- package/src/components/Header/DisconnectIconButton.tsx +24 -0
- package/src/components/Header/Header.style.ts +126 -0
- package/src/components/Header/Header.tsx +59 -0
- package/src/components/Header/NavigationHeader.tsx +77 -0
- package/src/components/Header/SettingsButton.style.tsx +62 -0
- package/src/components/Header/SettingsButton.tsx +47 -0
- package/src/components/Header/SplitNavigationTabs.tsx +32 -0
- package/src/components/Header/WalletHeader.tsx +184 -0
- package/src/components/Header/WalletMenu.style.tsx +34 -0
- package/src/components/Header/WalletMenu.tsx +129 -0
- package/src/components/IconCircle/IconCircle.style.tsx +85 -0
- package/src/components/IconCircle/IconCircle.tsx +29 -0
- package/src/components/IconCircle/statusIcons.ts +14 -0
- package/src/components/IconTypography.ts +11 -0
- package/src/components/Initializer.tsx +6 -0
- package/src/components/Input.tsx +14 -0
- package/src/components/ListItem/ListItem.tsx +29 -0
- package/src/components/ListItem/ListItemButton.tsx +12 -0
- package/src/components/ListItemButton.tsx +43 -0
- package/src/components/ListItemText.tsx +14 -0
- package/src/components/Menu.tsx +30 -0
- package/src/components/Messages/AccountDeployedMessage.tsx +28 -0
- package/src/components/Messages/AccountNotDeployedMessage.tsx +22 -0
- package/src/components/Messages/AlertMessage.style.tsx +65 -0
- package/src/components/Messages/AlertMessage.tsx +34 -0
- package/src/components/Messages/FundsSufficiencyMessage.tsx +26 -0
- package/src/components/Messages/GasRefuelMessage.style.ts +23 -0
- package/src/components/Messages/GasRefuelMessage.tsx +81 -0
- package/src/components/Messages/GasSufficiencyMessage.tsx +63 -0
- package/src/components/Messages/MinFromAmountUSDMessage.tsx +35 -0
- package/src/components/Messages/MissingRouteRequiredAccountMessage.tsx +44 -0
- package/src/components/Messages/WarningMessages.tsx +64 -0
- package/src/components/Messages/types.ts +1 -0
- package/src/components/Messages/useMessageQueue.ts +111 -0
- package/src/components/NotFound.tsx +45 -0
- package/src/components/PageContainer.ts +34 -0
- package/src/components/PageEntered.ts +14 -0
- package/src/components/PoweredBy/PoweredBy.style.ts +13 -0
- package/src/components/PoweredBy/PoweredBy.tsx +61 -0
- package/src/components/ProgressToNextUpdate.tsx +92 -0
- package/src/components/ReverseTokensButton/ReverseTokensButton.style.tsx +37 -0
- package/src/components/ReverseTokensButton/ReverseTokensButton.tsx +61 -0
- package/src/components/RouteCard/RouteCard.tsx +128 -0
- package/src/components/RouteCard/RouteCardEssentials.tsx +101 -0
- package/src/components/RouteCard/RouteCardSkeleton.tsx +58 -0
- package/src/components/RouteCard/RouteDetails.style.tsx +43 -0
- package/src/components/RouteCard/RouteDetails.tsx +214 -0
- package/src/components/RouteCard/RouteNotFoundCard.tsx +46 -0
- package/src/components/RouteCard/RouteToken.style.tsx +9 -0
- package/src/components/RouteCard/RouteToken.tsx +68 -0
- package/src/components/RouteCard/RouteTokens.tsx +56 -0
- package/src/components/RouteCard/getMatchingLabels.ts +66 -0
- package/src/components/RouteCard/types.ts +16 -0
- package/src/components/Routes/Routes.tsx +93 -0
- package/src/components/Routes/RoutesContent.tsx +117 -0
- package/src/components/Routes/RoutesExpanded.style.ts +46 -0
- package/src/components/Routes/RoutesExpanded.tsx +102 -0
- package/src/components/Search/SearchInput.style.tsx +43 -0
- package/src/components/Search/SearchInput.tsx +80 -0
- package/src/components/Search/SearchNotFound.style.tsx +34 -0
- package/src/components/Search/SearchNotFound.tsx +22 -0
- package/src/components/SelectChainAndToken.tsx +41 -0
- package/src/components/SelectTokenButton/SelectTokenButton.style.tsx +108 -0
- package/src/components/SelectTokenButton/SelectTokenButton.tsx +100 -0
- package/src/components/SendToWallet/SendToWalletButton.style.tsx +81 -0
- package/src/components/SendToWallet/SendToWalletButton.tsx +179 -0
- package/src/components/SendToWallet/SendToWalletExpandButton.tsx +59 -0
- package/src/components/SettingsListItemButton.tsx +9 -0
- package/src/components/Skeleton/WidgetSkeleton.style.tsx +102 -0
- package/src/components/Skeleton/WidgetSkeleton.tsx +140 -0
- package/src/components/Step/StepActions.style.tsx +33 -0
- package/src/components/Step/StepActions.tsx +329 -0
- package/src/components/StepActions/SentToWalletRow.style.tsx +29 -0
- package/src/components/StepActions/SentToWalletRow.tsx +56 -0
- package/src/components/StepActions/StepActionRow.style.tsx +18 -0
- package/src/components/StepActions/StepActionRow.tsx +30 -0
- package/src/components/StepActions/StepActionsList.tsx +40 -0
- package/src/components/StepActions/executionRows.tsx +86 -0
- package/src/components/Switch.tsx +54 -0
- package/src/components/Tabs/NavigationTabs.tsx +45 -0
- package/src/components/Tabs/Tabs.style.tsx +51 -0
- package/src/components/TextFitter/TextFitter.tsx +87 -0
- package/src/components/TextFitter/types.ts +13 -0
- package/src/components/Timer/ExecutionTimerText.tsx +10 -0
- package/src/components/Timer/StepStatusTimer.style.tsx +98 -0
- package/src/components/Timer/StepStatusTimer.tsx +85 -0
- package/src/components/Token/Token.style.tsx +44 -0
- package/src/components/Token/Token.tsx +317 -0
- package/src/components/TokenList/PinTokenButton.tsx +51 -0
- package/src/components/TokenList/TokenDetailsSheet.tsx +45 -0
- package/src/components/TokenList/TokenDetailsSheetContent.style.tsx +40 -0
- package/src/components/TokenList/TokenDetailsSheetContent.tsx +247 -0
- package/src/components/TokenList/TokenList.style.tsx +44 -0
- package/src/components/TokenList/TokenList.tsx +88 -0
- package/src/components/TokenList/TokenListItem.tsx +418 -0
- package/src/components/TokenList/TokenNotFound.tsx +11 -0
- package/src/components/TokenList/VirtualizedTokenList.tsx +253 -0
- package/src/components/TokenList/types.ts +65 -0
- package/src/components/TokenList/useTokenSelect.ts +135 -0
- package/src/components/TokenRate/TokenRate.style.ts +20 -0
- package/src/components/TokenRate/TokenRate.tsx +62 -0
- package/src/components/Tools/ToolItem.tsx +41 -0
- package/src/components/Tools/Tools.tsx +61 -0
- package/src/components/TransactionCard/ActiveTransactionCard.style.tsx +24 -0
- package/src/components/TransactionCard/ActiveTransactionCard.tsx +81 -0
- package/src/components/TransactionCard/TransactionCard.style.tsx +14 -0
- package/src/components/TransactionCard/TransactionCard.tsx +37 -0
- package/src/components/TransactionCard/TransactionCardSkeleton.tsx +68 -0
- package/src/config/constants.ts +3 -0
- package/src/config/queryClient.ts +21 -0
- package/src/config/version.ts +2 -0
- package/src/hooks/timer/time.ts +39 -0
- package/src/hooks/timer/useExecutionTimer.ts +21 -0
- package/src/hooks/timer/useInterval.ts +21 -0
- package/src/hooks/timer/useTimer.ts +107 -0
- package/src/hooks/timer/validate.ts +15 -0
- package/src/hooks/useAccountsBalancesData.ts +104 -0
- package/src/hooks/useActionMessage.ts +34 -0
- package/src/hooks/useAddressActivity.ts +47 -0
- package/src/hooks/useAddressValidation.ts +101 -0
- package/src/hooks/useAvailableChains.ts +108 -0
- package/src/hooks/useChain.ts +24 -0
- package/src/hooks/useChainSearch.ts +70 -0
- package/src/hooks/useChains.ts +50 -0
- package/src/hooks/useContactSupport.ts +16 -0
- package/src/hooks/useDebouncedWatch.ts +32 -0
- package/src/hooks/useDefaultElementId.ts +6 -0
- package/src/hooks/useExplorer.ts +104 -0
- package/src/hooks/useFilteredByTokenBalances.ts +140 -0
- package/src/hooks/useFromAmountThreshold.ts +38 -0
- package/src/hooks/useFromTokenSufficiency.ts +98 -0
- package/src/hooks/useGasRecommendation.ts +60 -0
- package/src/hooks/useGasRefuel.ts +98 -0
- package/src/hooks/useGasSufficiency.ts +233 -0
- package/src/hooks/useHasChainExpansion.ts +32 -0
- package/src/hooks/useHeader.ts +21 -0
- package/src/hooks/useInitializeSDKProviders.ts +12 -0
- package/src/hooks/useInitializer.ts +16 -0
- package/src/hooks/useIsBatchingSupported.ts +46 -0
- package/src/hooks/useIsContractAddress.ts +39 -0
- package/src/hooks/useLanguages.ts +93 -0
- package/src/hooks/useListHeight.ts +107 -0
- package/src/hooks/useLongPress.ts +60 -0
- package/src/hooks/useNavigateBack.ts +17 -0
- package/src/hooks/usePacedRouteExecution.ts +45 -0
- package/src/hooks/usePacedValue.ts +45 -0
- package/src/hooks/useRouteExecution.ts +246 -0
- package/src/hooks/useRouteExecutionMessage.ts +100 -0
- package/src/hooks/useRouteRequiredAccountConnection.ts +62 -0
- package/src/hooks/useRoutes.ts +578 -0
- package/src/hooks/useScrollableContainer.ts +29 -0
- package/src/hooks/useSetContentHeight.ts +30 -0
- package/src/hooks/useSettingMonitor.ts +93 -0
- package/src/hooks/useSwapOnly.ts +6 -0
- package/src/hooks/useToAddressAutoPopulate.ts +95 -0
- package/src/hooks/useToAddressRequirements.ts +103 -0
- package/src/hooks/useToAddressReset.ts +39 -0
- package/src/hooks/useToken.ts +45 -0
- package/src/hooks/useTokenAddressBalance.ts +32 -0
- package/src/hooks/useTokenBalance.ts +148 -0
- package/src/hooks/useTokenBalances.ts +191 -0
- package/src/hooks/useTokenBalancesQueries.ts +100 -0
- package/src/hooks/useTokenRateText.ts +55 -0
- package/src/hooks/useTokenSearch.ts +98 -0
- package/src/hooks/useTokens.ts +159 -0
- package/src/hooks/useTools.ts +56 -0
- package/src/hooks/useTransactionDetails.ts +93 -0
- package/src/hooks/useTransactionHistory.ts +120 -0
- package/src/hooks/useTransactionList.ts +83 -0
- package/src/hooks/useWideVariant.ts +13 -0
- package/src/hooks/useWidgetChains.ts +16 -0
- package/src/hooks/useWidgetEvents.ts +8 -0
- package/src/i18n/i18next.d.ts +10 -0
- package/src/index.ts +37 -0
- package/src/pages/ActivitiesPage/ActiveTransactionItem.tsx +43 -0
- package/src/pages/ActivitiesPage/ActivitiesPage.tsx +148 -0
- package/src/pages/ActivitiesPage/ActivitiesPageMenuButton.tsx +71 -0
- package/src/pages/ActivitiesPage/TransactionHistoryEmpty.tsx +14 -0
- package/src/pages/ActivitiesPage/TransactionHistoryItem.tsx +30 -0
- package/src/pages/ActivitiesPage/types.ts +16 -0
- package/src/pages/LanguagesPage.tsx +49 -0
- package/src/pages/MainPage/MainPage.tsx +70 -0
- package/src/pages/MainPage/MainWarningMessages.tsx +17 -0
- package/src/pages/MainPage/ReviewButton.tsx +81 -0
- package/src/pages/RoutesPage/RoutesPage.style.ts +9 -0
- package/src/pages/RoutesPage/RoutesPage.tsx +99 -0
- package/src/pages/SelectChainPage/SelectChainPage.tsx +36 -0
- package/src/pages/SelectChainPage/types.ts +5 -0
- package/src/pages/SelectEnabledToolsPage.tsx +131 -0
- package/src/pages/SelectTokenPage/SearchTokenInput.tsx +58 -0
- package/src/pages/SelectTokenPage/SelectTokenPage.tsx +80 -0
- package/src/pages/SendToWallet/BookmarkAddressSheet.tsx +247 -0
- package/src/pages/SendToWallet/BookmarksPage.tsx +145 -0
- package/src/pages/SendToWallet/ConfirmAddressSheet.tsx +107 -0
- package/src/pages/SendToWallet/ConnectedWalletsPage.tsx +134 -0
- package/src/pages/SendToWallet/RecentWalletsPage.tsx +161 -0
- package/src/pages/SendToWallet/SendToConfiguredWalletPage.tsx +110 -0
- package/src/pages/SendToWallet/SendToWalletPage.style.tsx +137 -0
- package/src/pages/SendToWallet/SendToWalletPage.tsx +308 -0
- package/src/pages/SendToWallet/types.ts +4 -0
- package/src/pages/SettingsPage/BridgeAndExchangeSettings.tsx +59 -0
- package/src/pages/SettingsPage/GasPriceSettings.tsx +47 -0
- package/src/pages/SettingsPage/LanguageSetting.tsx +40 -0
- package/src/pages/SettingsPage/ResetSettingsButton.style.tsx +12 -0
- package/src/pages/SettingsPage/ResetSettingsButton.tsx +83 -0
- package/src/pages/SettingsPage/RoutePrioritySettings.tsx +57 -0
- package/src/pages/SettingsPage/SettingsCard/BadgedValue.tsx +22 -0
- package/src/pages/SettingsPage/SettingsCard/SettingCard.style.tsx +26 -0
- package/src/pages/SettingsPage/SettingsCard/SettingCardExpandable.tsx +90 -0
- package/src/pages/SettingsPage/SettingsCard/SettingsAccordian.tsx +48 -0
- package/src/pages/SettingsPage/SettingsCard/types.ts +6 -0
- package/src/pages/SettingsPage/SettingsPage.tsx +39 -0
- package/src/pages/SettingsPage/SlippageSettings/SlippageSettings.style.tsx +102 -0
- package/src/pages/SettingsPage/SlippageSettings/SlippageSettings.tsx +151 -0
- package/src/pages/SettingsPage/SmallBalanceFilterSettings.tsx +116 -0
- package/src/pages/SettingsPage/ThemeSettings.tsx +85 -0
- package/src/pages/TransactionDetailsPage/ContactSupportButton.style.tsx +12 -0
- package/src/pages/TransactionDetailsPage/ContactSupportButton.tsx +21 -0
- package/src/pages/TransactionDetailsPage/ReceiptsCard.tsx +22 -0
- package/src/pages/TransactionDetailsPage/TransactionDetailsPage.tsx +111 -0
- package/src/pages/TransactionDetailsPage/TransactionDetailsSkeleton.tsx +91 -0
- package/src/pages/TransactionDetailsPage/TransferIdCard.tsx +72 -0
- package/src/pages/TransactionPage/ConfirmToAddressSheet.tsx +96 -0
- package/src/pages/TransactionPage/ExchangeRateBottomSheet.style.tsx +9 -0
- package/src/pages/TransactionPage/ExchangeRateBottomSheet.tsx +214 -0
- package/src/pages/TransactionPage/ExecutionDoneCard.tsx +43 -0
- package/src/pages/TransactionPage/RouteTracker.tsx +68 -0
- package/src/pages/TransactionPage/StartTransactionButton.tsx +27 -0
- package/src/pages/TransactionPage/TokenValueBottomSheet.style.tsx +60 -0
- package/src/pages/TransactionPage/TokenValueBottomSheet.tsx +141 -0
- package/src/pages/TransactionPage/TransactionContent.tsx +42 -0
- package/src/pages/TransactionPage/TransactionDoneButtons.tsx +70 -0
- package/src/pages/TransactionPage/TransactionExecutionContent.tsx +93 -0
- package/src/pages/TransactionPage/TransactionFailedButtons.tsx +105 -0
- package/src/pages/TransactionPage/TransactionPage.tsx +111 -0
- package/src/pages/TransactionPage/TransactionReview.tsx +163 -0
- package/src/pages/TransactionPage/types.ts +7 -0
- package/src/pages/TransactionPage/utils.ts +25 -0
- package/src/providers/I18nProvider/I18nProvider.tsx +133 -0
- package/src/providers/I18nProvider/constants.ts +41 -0
- package/src/providers/I18nProvider/enResource.ts +4 -0
- package/src/providers/I18nProvider/i18n.ts +26 -0
- package/src/providers/I18nProvider/types.ts +36 -0
- package/src/providers/QueryClientProvider.tsx +20 -0
- package/src/providers/SDKClientProvider.tsx +59 -0
- package/src/providers/ThemeProvider/ThemeProvider.tsx +35 -0
- package/src/providers/WalletProvider/WalletProvider.tsx +70 -0
- package/src/providers/WalletProvider/useExternalWalletProvider.ts +79 -0
- package/src/providers/WidgetProvider/WidgetProvider.tsx +49 -0
- package/src/providers/WidgetProvider/types.ts +9 -0
- package/src/stores/StoreProvider.tsx +40 -0
- package/src/stores/bookmarks/BookmarkStore.tsx +38 -0
- package/src/stores/bookmarks/createBookmarkStore.ts +80 -0
- package/src/stores/bookmarks/types.ts +26 -0
- package/src/stores/bookmarks/useBookmarkActions.ts +16 -0
- package/src/stores/bookmarks/useBookmarks.ts +14 -0
- package/src/stores/chains/ChainOrderStore.tsx +165 -0
- package/src/stores/chains/createChainOrderStore.ts +128 -0
- package/src/stores/chains/types.ts +25 -0
- package/src/stores/chains/useChainOrder.ts +20 -0
- package/src/stores/form/FormStore.tsx +133 -0
- package/src/stores/form/FormStoreContext.ts +5 -0
- package/src/stores/form/FormUpdater.tsx +52 -0
- package/src/stores/form/URLSearchParamsBuilder.tsx +93 -0
- package/src/stores/form/createFormStore.ts +237 -0
- package/src/stores/form/getDefaultValuesFromQueryString.ts +48 -0
- package/src/stores/form/types.ts +107 -0
- package/src/stores/form/useClearAmountFields.ts +10 -0
- package/src/stores/form/useFieldActions.ts +93 -0
- package/src/stores/form/useFieldValues.ts +14 -0
- package/src/stores/form/useFormRef.ts +76 -0
- package/src/stores/form/useFormStore.ts +14 -0
- package/src/stores/form/useTouchedFields.ts +8 -0
- package/src/stores/header/types.ts +20 -0
- package/src/stores/header/useHeaderStore.tsx +103 -0
- package/src/stores/inputMode/useInputModeStore.ts +31 -0
- package/src/stores/pinnedTokens/PinnedTokensStore.tsx +38 -0
- package/src/stores/pinnedTokens/createPinnedTokensStore.ts +74 -0
- package/src/stores/pinnedTokens/types.ts +20 -0
- package/src/stores/routes/RouteExecutionStore.tsx +44 -0
- package/src/stores/routes/createRouteExecutionStore.ts +167 -0
- package/src/stores/routes/types.ts +26 -0
- package/src/stores/routes/useIntermediateRoutesStore.ts +29 -0
- package/src/stores/routes/useRouteExecutionIndicator.ts +43 -0
- package/src/stores/routes/useSetExecutableRoute.ts +7 -0
- package/src/stores/routes/utils.ts +63 -0
- package/src/stores/settings/SettingsStore.tsx +45 -0
- package/src/stores/settings/createSettingsStore.ts +219 -0
- package/src/stores/settings/types.ts +66 -0
- package/src/stores/settings/useSettings.ts +16 -0
- package/src/stores/settings/useSettingsActions.ts +165 -0
- package/src/stores/settings/useSplitModeStore.tsx +58 -0
- package/src/stores/settings/utils/getStateValues.ts +17 -0
- package/src/stores/types.ts +7 -0
- package/src/themes/azureLight.ts +61 -0
- package/src/themes/createTheme.ts +489 -0
- package/src/themes/jumper.ts +77 -0
- package/src/themes/palettes.ts +52 -0
- package/src/themes/types.ts +82 -0
- package/src/themes/utils.ts +18 -0
- package/src/themes/watermelonLight.ts +80 -0
- package/src/themes/windows95.ts +133 -0
- package/src/types/events.ts +114 -0
- package/src/types/token.ts +21 -0
- package/src/types/widget.ts +441 -0
- package/src/utils/chainType.ts +10 -0
- package/src/utils/compactNumberFormatter.ts +91 -0
- package/src/utils/converters.ts +238 -0
- package/src/utils/currencyExtendedFormatter.ts +15 -0
- package/src/utils/deepEqual.ts +62 -0
- package/src/utils/deepMerge.ts +14 -0
- package/src/utils/elements.ts +32 -0
- package/src/utils/enum.ts +4 -0
- package/src/utils/fees.ts +136 -0
- package/src/utils/format.ts +195 -0
- package/src/utils/getActionMessage.ts +163 -0
- package/src/utils/getErrorMessage.ts +144 -0
- package/src/utils/getPriceImpact.ts +35 -0
- package/src/utils/input.ts +29 -0
- package/src/utils/item.ts +65 -0
- package/src/utils/navigationRoutes.ts +68 -0
- package/src/utils/percentFormatter.ts +28 -0
- package/src/utils/prepareActions.ts +27 -0
- package/src/utils/queries.ts +2 -0
- package/src/utils/timer.ts +45 -0
- package/src/utils/token.ts +143 -0
- package/src/utils/tokenList.ts +284 -0
- package/src/utils/variant.ts +13 -0
- package/src/utils/wallet.ts +4 -0
- package/src/utils/widgetSize.ts +17 -0
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { createContext, type JSX, useContext, useRef } from 'react'
|
|
2
|
+
import type { StoreApi, UseBoundStore } from 'zustand'
|
|
3
|
+
import { useShallow } from 'zustand/shallow'
|
|
4
|
+
import type { PersistStoreProviderProps } from '../types.js'
|
|
5
|
+
import { createRouteExecutionStore } from './createRouteExecutionStore.js'
|
|
6
|
+
import type { RouteExecutionState } from './types.js'
|
|
7
|
+
|
|
8
|
+
type RouteExecutionStore = UseBoundStore<StoreApi<RouteExecutionState>>
|
|
9
|
+
|
|
10
|
+
const RouteExecutionStoreContext = createContext<RouteExecutionStore | null>(
|
|
11
|
+
null
|
|
12
|
+
)
|
|
13
|
+
|
|
14
|
+
export function RouteExecutionStoreProvider({
|
|
15
|
+
children,
|
|
16
|
+
...props
|
|
17
|
+
}: PersistStoreProviderProps): JSX.Element {
|
|
18
|
+
const storeRef = useRef<RouteExecutionStore>(null)
|
|
19
|
+
if (!storeRef.current) {
|
|
20
|
+
storeRef.current = createRouteExecutionStore(props)
|
|
21
|
+
}
|
|
22
|
+
return (
|
|
23
|
+
<RouteExecutionStoreContext.Provider value={storeRef.current}>
|
|
24
|
+
{children}
|
|
25
|
+
</RouteExecutionStoreContext.Provider>
|
|
26
|
+
)
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export function useRouteExecutionStoreContext(): any {
|
|
30
|
+
const useStore = useContext(RouteExecutionStoreContext)
|
|
31
|
+
if (!useStore) {
|
|
32
|
+
throw new Error(
|
|
33
|
+
`You forgot to wrap your component in <${RouteExecutionStoreProvider.name}>.`
|
|
34
|
+
)
|
|
35
|
+
}
|
|
36
|
+
return useStore
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export function useRouteExecutionStore<T>(
|
|
40
|
+
selector: (state: RouteExecutionState) => T
|
|
41
|
+
): T {
|
|
42
|
+
const useStore = useRouteExecutionStoreContext()
|
|
43
|
+
return useStore(useShallow(selector))
|
|
44
|
+
}
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
import type { Route, RouteExtended } from '@lifi/sdk'
|
|
2
|
+
import type { StoreApi, UseBoundStore } from 'zustand'
|
|
3
|
+
import { create } from 'zustand'
|
|
4
|
+
import { persist } from 'zustand/middleware'
|
|
5
|
+
import { hasEnumFlag } from '../../utils/enum.js'
|
|
6
|
+
import type { PersistStoreProps } from '../types.js'
|
|
7
|
+
import type { RouteExecution, RouteExecutionState } from './types.js'
|
|
8
|
+
import { RouteExecutionStatus } from './types.js'
|
|
9
|
+
import {
|
|
10
|
+
isRouteDone,
|
|
11
|
+
isRouteFailed,
|
|
12
|
+
isRoutePartiallyDone,
|
|
13
|
+
isRouteRefunded,
|
|
14
|
+
} from './utils.js'
|
|
15
|
+
|
|
16
|
+
export const createRouteExecutionStore = ({
|
|
17
|
+
namePrefix,
|
|
18
|
+
}: PersistStoreProps): UseBoundStore<StoreApi<RouteExecutionState>> =>
|
|
19
|
+
create<RouteExecutionState>()(
|
|
20
|
+
persist(
|
|
21
|
+
(set, get) => ({
|
|
22
|
+
routes: {},
|
|
23
|
+
setExecutableRoute: (route: Route, observableRouteIds?: string[]) => {
|
|
24
|
+
if (!get().routes[route.id]) {
|
|
25
|
+
set((state: RouteExecutionState) => {
|
|
26
|
+
const routes = { ...state.routes }
|
|
27
|
+
// clean previous idle routes
|
|
28
|
+
Object.keys(routes)
|
|
29
|
+
.filter(
|
|
30
|
+
(routeId) =>
|
|
31
|
+
!observableRouteIds?.includes(routeId) &&
|
|
32
|
+
hasEnumFlag(
|
|
33
|
+
routes[routeId]!.status,
|
|
34
|
+
RouteExecutionStatus.Idle
|
|
35
|
+
)
|
|
36
|
+
)
|
|
37
|
+
.forEach((routeId) => {
|
|
38
|
+
delete routes[routeId]
|
|
39
|
+
})
|
|
40
|
+
routes[route.id] = {
|
|
41
|
+
route,
|
|
42
|
+
status: RouteExecutionStatus.Idle,
|
|
43
|
+
}
|
|
44
|
+
return {
|
|
45
|
+
routes,
|
|
46
|
+
}
|
|
47
|
+
})
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
updateRoute: (route: RouteExtended) => {
|
|
51
|
+
if (get().routes[route.id]) {
|
|
52
|
+
set((state: RouteExecutionState) => {
|
|
53
|
+
const updatedState = {
|
|
54
|
+
routes: {
|
|
55
|
+
...state.routes,
|
|
56
|
+
[route.id]: { ...state.routes[route.id]!, route },
|
|
57
|
+
},
|
|
58
|
+
}
|
|
59
|
+
const isFailed = isRouteFailed(route)
|
|
60
|
+
if (isFailed) {
|
|
61
|
+
updatedState.routes[route.id]!.status =
|
|
62
|
+
RouteExecutionStatus.Failed
|
|
63
|
+
return updatedState
|
|
64
|
+
}
|
|
65
|
+
const isDone = isRouteDone(route)
|
|
66
|
+
if (isDone) {
|
|
67
|
+
updatedState.routes[route.id]!.status =
|
|
68
|
+
RouteExecutionStatus.Done
|
|
69
|
+
if (isRoutePartiallyDone(route)) {
|
|
70
|
+
updatedState.routes[route.id]!.status |=
|
|
71
|
+
RouteExecutionStatus.Partial
|
|
72
|
+
} else if (isRouteRefunded(route)) {
|
|
73
|
+
updatedState.routes[route.id]!.status |=
|
|
74
|
+
RouteExecutionStatus.Refunded
|
|
75
|
+
}
|
|
76
|
+
return updatedState
|
|
77
|
+
}
|
|
78
|
+
const isLoading = route.steps.some((step) => step.execution)
|
|
79
|
+
if (isLoading) {
|
|
80
|
+
updatedState.routes[route.id]!.status =
|
|
81
|
+
RouteExecutionStatus.Pending
|
|
82
|
+
}
|
|
83
|
+
return updatedState
|
|
84
|
+
})
|
|
85
|
+
}
|
|
86
|
+
},
|
|
87
|
+
deleteRoutes: (type, accountAddresses) =>
|
|
88
|
+
set((state: RouteExecutionState) => {
|
|
89
|
+
const routes = { ...state.routes }
|
|
90
|
+
Object.keys(routes)
|
|
91
|
+
.filter((routeId) => {
|
|
92
|
+
const route = routes[routeId]
|
|
93
|
+
if (
|
|
94
|
+
accountAddresses &&
|
|
95
|
+
!accountAddresses.includes(route?.route.fromAddress ?? '')
|
|
96
|
+
) {
|
|
97
|
+
return false
|
|
98
|
+
}
|
|
99
|
+
return type === 'completed'
|
|
100
|
+
? hasEnumFlag(route?.status ?? 0, RouteExecutionStatus.Done)
|
|
101
|
+
: type === 'failed'
|
|
102
|
+
? hasEnumFlag(
|
|
103
|
+
route?.status ?? 0,
|
|
104
|
+
RouteExecutionStatus.Failed
|
|
105
|
+
)
|
|
106
|
+
: !hasEnumFlag(
|
|
107
|
+
route?.status ?? 0,
|
|
108
|
+
RouteExecutionStatus.Done
|
|
109
|
+
)
|
|
110
|
+
})
|
|
111
|
+
.forEach((routeId) => {
|
|
112
|
+
delete routes[routeId]
|
|
113
|
+
})
|
|
114
|
+
return {
|
|
115
|
+
routes,
|
|
116
|
+
}
|
|
117
|
+
}),
|
|
118
|
+
deleteRoute: (routeId: string) => {
|
|
119
|
+
if (get().routes[routeId]) {
|
|
120
|
+
set((state: RouteExecutionState) => {
|
|
121
|
+
const routes = { ...state.routes }
|
|
122
|
+
delete routes[routeId]
|
|
123
|
+
return {
|
|
124
|
+
routes,
|
|
125
|
+
}
|
|
126
|
+
})
|
|
127
|
+
}
|
|
128
|
+
},
|
|
129
|
+
}),
|
|
130
|
+
{
|
|
131
|
+
name: `${namePrefix || 'li.fi'}-widget-routes`,
|
|
132
|
+
// Bump version on breaking changes to the stored structure.
|
|
133
|
+
version: 4,
|
|
134
|
+
// Clear stored routes on any version mismatch to avoid errors from incompatible data shapes.
|
|
135
|
+
migrate: () => ({ routes: {} }),
|
|
136
|
+
partialize: (state) => ({ routes: state.routes }),
|
|
137
|
+
merge: (persistedState: any, currentState: RouteExecutionState) => {
|
|
138
|
+
const state = {
|
|
139
|
+
...currentState,
|
|
140
|
+
...persistedState,
|
|
141
|
+
} as RouteExecutionState
|
|
142
|
+
try {
|
|
143
|
+
// Keep only the most recent 100 routes, evicting the oldest when the
|
|
144
|
+
// limit is exceeded.
|
|
145
|
+
const maxStoredRoutes = 100
|
|
146
|
+
const allRoutes = Object.values(state.routes) as RouteExecution[]
|
|
147
|
+
const storedRoutes = allRoutes
|
|
148
|
+
.sort(
|
|
149
|
+
(a, b) =>
|
|
150
|
+
(b.route.steps[0]?.execution?.startedAt ?? 0) -
|
|
151
|
+
(a.route.steps[0]?.execution?.startedAt ?? 0)
|
|
152
|
+
)
|
|
153
|
+
.slice(0, maxStoredRoutes)
|
|
154
|
+
const keepIds = new Set(storedRoutes.map((r) => r.route.id))
|
|
155
|
+
for (const id of Object.keys(state.routes)) {
|
|
156
|
+
if (!keepIds.has(id)) {
|
|
157
|
+
delete state.routes[id]
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
} catch (error) {
|
|
161
|
+
console.error(error)
|
|
162
|
+
}
|
|
163
|
+
return state
|
|
164
|
+
},
|
|
165
|
+
}
|
|
166
|
+
)
|
|
167
|
+
)
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { Route, RouteExtended } from '@lifi/sdk'
|
|
2
|
+
|
|
3
|
+
export interface RouteExecution {
|
|
4
|
+
route: RouteExtended
|
|
5
|
+
status: RouteExecutionStatus
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export interface RouteExecutionState {
|
|
9
|
+
routes: Partial<Record<string, RouteExecution>>
|
|
10
|
+
setExecutableRoute: (route: Route, observableRouteIds?: string[]) => void
|
|
11
|
+
updateRoute: (route: Route) => void
|
|
12
|
+
deleteRoute: (routeId: string) => void
|
|
13
|
+
deleteRoutes: (
|
|
14
|
+
type: 'completed' | 'active' | 'failed',
|
|
15
|
+
accountAddresses?: string[]
|
|
16
|
+
) => void
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export enum RouteExecutionStatus {
|
|
20
|
+
Idle = 1 << 0,
|
|
21
|
+
Pending = 1 << 1,
|
|
22
|
+
Done = 1 << 2,
|
|
23
|
+
Failed = 1 << 3,
|
|
24
|
+
Partial = 1 << 4,
|
|
25
|
+
Refunded = 1 << 5,
|
|
26
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { Route } from '@lifi/sdk'
|
|
2
|
+
import type { StoreApi, UseBoundStore } from 'zustand'
|
|
3
|
+
import { create } from 'zustand'
|
|
4
|
+
|
|
5
|
+
interface IntermediateRoutesState {
|
|
6
|
+
intermediateRoutes: Record<string, Route[] | undefined>
|
|
7
|
+
setIntermediateRoutes: (
|
|
8
|
+
key: readonly unknown[],
|
|
9
|
+
routes: Route[] | undefined
|
|
10
|
+
) => void
|
|
11
|
+
getIntermediateRoutes: (key: readonly unknown[]) => Route[] | undefined
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export const useIntermediateRoutesStore: UseBoundStore<
|
|
15
|
+
StoreApi<IntermediateRoutesState>
|
|
16
|
+
> = create<IntermediateRoutesState>((set, get) => ({
|
|
17
|
+
intermediateRoutes: {},
|
|
18
|
+
setIntermediateRoutes: (key, routes) => {
|
|
19
|
+
const stringKey = JSON.stringify(key)
|
|
20
|
+
// Create a new state with only the current key
|
|
21
|
+
const newRoutesByKey: Record<string, Route[] | undefined> = {}
|
|
22
|
+
newRoutesByKey[stringKey] = routes
|
|
23
|
+
set({ intermediateRoutes: newRoutesByKey })
|
|
24
|
+
},
|
|
25
|
+
getIntermediateRoutes: (key) => {
|
|
26
|
+
const stringKey = JSON.stringify(key)
|
|
27
|
+
return get().intermediateRoutes[stringKey]
|
|
28
|
+
},
|
|
29
|
+
}))
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { useAccount } from '@lifi/wallet-management'
|
|
2
|
+
import { useCallback, useMemo } from 'react'
|
|
3
|
+
import { useRouteExecutionStore } from './RouteExecutionStore.js'
|
|
4
|
+
import type { RouteExecution, RouteExecutionState } from './types.js'
|
|
5
|
+
import { RouteExecutionStatus } from './types.js'
|
|
6
|
+
|
|
7
|
+
export type RouteExecutionIndicator = {
|
|
8
|
+
failed: boolean
|
|
9
|
+
active: boolean
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
const isRecentTransaction = (route: RouteExecution): boolean => {
|
|
13
|
+
const startedAt = route.route.steps[0]?.execution?.startedAt ?? 0
|
|
14
|
+
return startedAt > 0 && Date.now() - startedAt < 1000 * 60 * 60 * 24 // 1 day
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export const useRouteExecutionIndicator = (): RouteExecutionIndicator => {
|
|
18
|
+
const { accounts } = useAccount()
|
|
19
|
+
const accountAddresses = useMemo(
|
|
20
|
+
() => accounts.map((account) => account.address),
|
|
21
|
+
[accounts]
|
|
22
|
+
)
|
|
23
|
+
const selector = useCallback(
|
|
24
|
+
(state: RouteExecutionState): RouteExecutionIndicator => {
|
|
25
|
+
const routes = Object.values(state.routes) as RouteExecution[]
|
|
26
|
+
const recentOwnedRoutes = routes.filter(
|
|
27
|
+
(route) =>
|
|
28
|
+
accountAddresses.includes(route.route.fromAddress) &&
|
|
29
|
+
isRecentTransaction(route)
|
|
30
|
+
)
|
|
31
|
+
return {
|
|
32
|
+
failed: recentOwnedRoutes.some(
|
|
33
|
+
(r) => r.status === RouteExecutionStatus.Failed
|
|
34
|
+
),
|
|
35
|
+
active: recentOwnedRoutes.some(
|
|
36
|
+
(r) => r.status === RouteExecutionStatus.Pending
|
|
37
|
+
),
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
[accountAddresses]
|
|
41
|
+
)
|
|
42
|
+
return useRouteExecutionStore(selector)
|
|
43
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { useRouteExecutionStore } from './RouteExecutionStore.js'
|
|
2
|
+
import type { RouteExecutionState } from './types.js'
|
|
3
|
+
|
|
4
|
+
export const useSetExecutableRoute =
|
|
5
|
+
(): RouteExecutionState['setExecutableRoute'] => {
|
|
6
|
+
return useRouteExecutionStore((state) => state.setExecutableRoute)
|
|
7
|
+
}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import type { ExecutionAction, RouteExtended } from '@lifi/sdk'
|
|
2
|
+
import microdiff from 'microdiff'
|
|
3
|
+
|
|
4
|
+
export const isRouteDone = (route: RouteExtended): boolean => {
|
|
5
|
+
return route.steps.every((step) => step.execution?.status === 'DONE')
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export const isRoutePartiallyDone = (route: RouteExtended): boolean => {
|
|
9
|
+
return route.steps.some((step) =>
|
|
10
|
+
step.execution?.actions?.some((action) => action.substatus === 'PARTIAL')
|
|
11
|
+
)
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export const isRouteRefunded = (route: RouteExtended): boolean => {
|
|
15
|
+
return route.steps.some((step) =>
|
|
16
|
+
step.execution?.actions?.some((action) => action.substatus === 'REFUNDED')
|
|
17
|
+
)
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export const isRouteFailed = (route: RouteExtended): boolean => {
|
|
21
|
+
return route.steps.some((step) => step.execution?.status === 'FAILED')
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export const isRouteActive = (route?: RouteExtended): boolean => {
|
|
25
|
+
if (!route) {
|
|
26
|
+
return false
|
|
27
|
+
}
|
|
28
|
+
const isDone = isRouteDone(route)
|
|
29
|
+
const isFailed = isRouteFailed(route)
|
|
30
|
+
const alreadyStarted = route.steps.some((step) => step.execution)
|
|
31
|
+
return !isDone && !isFailed && alreadyStarted
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export const getUpdatedAction = (
|
|
35
|
+
currentRoute: RouteExtended,
|
|
36
|
+
updatedRoute: RouteExtended
|
|
37
|
+
): ExecutionAction | undefined => {
|
|
38
|
+
const actionDiff = microdiff(currentRoute, updatedRoute).find((diff) =>
|
|
39
|
+
diff.path.includes('actions')
|
|
40
|
+
)
|
|
41
|
+
if (!actionDiff) {
|
|
42
|
+
return undefined
|
|
43
|
+
}
|
|
44
|
+
// Find action index in the diff array so we can slice the complete action object
|
|
45
|
+
// e.g. ['steps', 0, 'execution', 'actions', 0, 'message']
|
|
46
|
+
const actionDiffIndex = actionDiff.path.indexOf('actions') + 2
|
|
47
|
+
const actionPathSlice = actionDiff.path.slice(0, actionDiffIndex)
|
|
48
|
+
// Reduce updated route using the diff path to get updated process
|
|
49
|
+
const action = actionPathSlice.reduce(
|
|
50
|
+
(obj, path) => obj[path],
|
|
51
|
+
updatedRoute as any
|
|
52
|
+
) as ExecutionAction
|
|
53
|
+
return action
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export const getSourceTxHash = (route?: RouteExtended): string | undefined => {
|
|
57
|
+
const sourceAction = route?.steps[0].execution?.actions
|
|
58
|
+
?.filter(
|
|
59
|
+
(action) => !['RESET_ALLOWANCE', 'SET_ALLOWANCE'].includes(action.type)
|
|
60
|
+
)
|
|
61
|
+
.find((action) => action.txHash || action.taskId)
|
|
62
|
+
return sourceAction?.txHash || sourceAction?.taskId
|
|
63
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import {
|
|
2
|
+
createContext,
|
|
3
|
+
type JSX,
|
|
4
|
+
type PropsWithChildren,
|
|
5
|
+
useContext,
|
|
6
|
+
useRef,
|
|
7
|
+
} from 'react'
|
|
8
|
+
import type { StoreApi, UseBoundStore } from 'zustand'
|
|
9
|
+
import { useShallow } from 'zustand/shallow'
|
|
10
|
+
import { createSettingsStore } from './createSettingsStore.js'
|
|
11
|
+
import type { SettingsState, SettingsStoreProviderProps } from './types.js'
|
|
12
|
+
|
|
13
|
+
type SettingsStore = UseBoundStore<StoreApi<SettingsState>>
|
|
14
|
+
|
|
15
|
+
const SettingsStoreContext = createContext<SettingsStore | null>(null)
|
|
16
|
+
|
|
17
|
+
export const SettingsStoreProvider = ({
|
|
18
|
+
children,
|
|
19
|
+
config,
|
|
20
|
+
}: PropsWithChildren<SettingsStoreProviderProps>): JSX.Element => {
|
|
21
|
+
const storeRef = useRef<SettingsStore>(null)
|
|
22
|
+
if (!storeRef.current) {
|
|
23
|
+
storeRef.current = createSettingsStore(config)
|
|
24
|
+
}
|
|
25
|
+
return (
|
|
26
|
+
<SettingsStoreContext.Provider value={storeRef.current}>
|
|
27
|
+
{children}
|
|
28
|
+
</SettingsStoreContext.Provider>
|
|
29
|
+
)
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export function useSettingsStoreContext(): any {
|
|
33
|
+
const useStore = useContext(SettingsStoreContext)
|
|
34
|
+
if (!useStore) {
|
|
35
|
+
throw new Error(
|
|
36
|
+
'You forgot to wrap your component in SettingsStoreContext.'
|
|
37
|
+
)
|
|
38
|
+
}
|
|
39
|
+
return useStore
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export function useSettingsStore<T>(selector: (state: SettingsState) => T): T {
|
|
43
|
+
const useStore = useSettingsStoreContext()
|
|
44
|
+
return useStore(useShallow(selector))
|
|
45
|
+
}
|
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
/** biome-ignore-all lint/correctness/noUnusedVariables: allowed in this store */
|
|
2
|
+
import type { StoreApi, UseBoundStore } from 'zustand'
|
|
3
|
+
import { create } from 'zustand'
|
|
4
|
+
import { persist } from 'zustand/middleware'
|
|
5
|
+
import { allLanguages } from '../../providers/I18nProvider/constants.js'
|
|
6
|
+
import { loadLocale } from '../../providers/I18nProvider/i18n.js'
|
|
7
|
+
import type { LanguageKey } from '../../providers/I18nProvider/types.js'
|
|
8
|
+
import type { WidgetConfig } from '../../types/widget.js'
|
|
9
|
+
import type { SettingsProps, SettingsState } from './types.js'
|
|
10
|
+
import { SettingsToolTypes } from './types.js'
|
|
11
|
+
import { getStateValues } from './utils/getStateValues.js'
|
|
12
|
+
|
|
13
|
+
export const defaultSlippage = undefined
|
|
14
|
+
|
|
15
|
+
export const defaultConfigurableSettings: Pick<
|
|
16
|
+
SettingsState,
|
|
17
|
+
'routePriority' | 'slippage' | 'gasPrice'
|
|
18
|
+
> = {
|
|
19
|
+
routePriority: 'CHEAPEST',
|
|
20
|
+
slippage: defaultSlippage,
|
|
21
|
+
gasPrice: 'normal',
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
const defaultSettings: SettingsProps = {
|
|
25
|
+
gasPrice: 'normal',
|
|
26
|
+
enabledAutoRefuel: true,
|
|
27
|
+
disabledBridges: [],
|
|
28
|
+
disabledExchanges: [],
|
|
29
|
+
enabledBridges: [],
|
|
30
|
+
enabledExchanges: [],
|
|
31
|
+
_enabledBridges: {},
|
|
32
|
+
_enabledExchanges: {},
|
|
33
|
+
smallBalanceThreshold: undefined,
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export const createSettingsStore = (
|
|
37
|
+
config: WidgetConfig
|
|
38
|
+
): UseBoundStore<StoreApi<SettingsState>> =>
|
|
39
|
+
create<SettingsState>()(
|
|
40
|
+
persist(
|
|
41
|
+
(set, get) => ({
|
|
42
|
+
...defaultSettings,
|
|
43
|
+
setValue: (key, value) =>
|
|
44
|
+
set(() => ({
|
|
45
|
+
[key]: value,
|
|
46
|
+
})),
|
|
47
|
+
setValues: (values: Partial<SettingsProps>) =>
|
|
48
|
+
set(() => ({
|
|
49
|
+
...values,
|
|
50
|
+
})),
|
|
51
|
+
getSettings: () => getStateValues(get()),
|
|
52
|
+
getValue: (key) => get()[key],
|
|
53
|
+
initializeTools: (toolType, tools, reset) => {
|
|
54
|
+
if (!tools.length) {
|
|
55
|
+
return
|
|
56
|
+
}
|
|
57
|
+
set((state) => {
|
|
58
|
+
const updatedState = { ...state }
|
|
59
|
+
if (!reset) {
|
|
60
|
+
// Add new tools
|
|
61
|
+
tools.forEach((tool) => {
|
|
62
|
+
if (!Object.hasOwn(updatedState[`_enabled${toolType}`], tool)) {
|
|
63
|
+
updatedState[`_enabled${toolType}`][tool] = true
|
|
64
|
+
}
|
|
65
|
+
})
|
|
66
|
+
// Filter tools we no longer have
|
|
67
|
+
updatedState[`_enabled${toolType}`] = Object.fromEntries(
|
|
68
|
+
Object.entries(updatedState[`_enabled${toolType}`]).filter(
|
|
69
|
+
([key]) => tools.includes(key)
|
|
70
|
+
)
|
|
71
|
+
)
|
|
72
|
+
} else {
|
|
73
|
+
tools.forEach((tool) => {
|
|
74
|
+
updatedState[`_enabled${toolType}`][tool] = true
|
|
75
|
+
})
|
|
76
|
+
}
|
|
77
|
+
const enabledToolKeys = Object.keys(
|
|
78
|
+
updatedState[`_enabled${toolType}`]
|
|
79
|
+
)
|
|
80
|
+
updatedState[`enabled${toolType}`] = enabledToolKeys.filter(
|
|
81
|
+
(key) => updatedState[`_enabled${toolType}`][key]
|
|
82
|
+
)
|
|
83
|
+
updatedState[`disabled${toolType}`] = enabledToolKeys.filter(
|
|
84
|
+
(key) => !updatedState[`_enabled${toolType}`][key]
|
|
85
|
+
)
|
|
86
|
+
return updatedState
|
|
87
|
+
})
|
|
88
|
+
},
|
|
89
|
+
setToolValue: (toolType, tool, value) =>
|
|
90
|
+
set((state) => {
|
|
91
|
+
const enabledTools = {
|
|
92
|
+
...state[`_enabled${toolType}`],
|
|
93
|
+
[tool]: value,
|
|
94
|
+
}
|
|
95
|
+
const enabledToolKeys = Object.keys(enabledTools)
|
|
96
|
+
return {
|
|
97
|
+
[`_enabled${toolType}`]: enabledTools,
|
|
98
|
+
[`enabled${toolType}`]: enabledToolKeys.filter(
|
|
99
|
+
(key) => enabledTools[key]
|
|
100
|
+
),
|
|
101
|
+
[`disabled${toolType}`]: enabledToolKeys.filter(
|
|
102
|
+
(key) => !enabledTools[key]
|
|
103
|
+
),
|
|
104
|
+
}
|
|
105
|
+
}),
|
|
106
|
+
toggleToolKeys: (toolType, toolKeys) =>
|
|
107
|
+
set((state) => {
|
|
108
|
+
const allKeysInCollectionEnabled = toolKeys.every(
|
|
109
|
+
(toolKey) => state[`_enabled${toolType}`][toolKey]
|
|
110
|
+
)
|
|
111
|
+
|
|
112
|
+
// then toggle those keys to false
|
|
113
|
+
const updatedTools = toolKeys.reduce(
|
|
114
|
+
(accum, toolKey) => {
|
|
115
|
+
accum[toolKey] = !allKeysInCollectionEnabled
|
|
116
|
+
return accum
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
...state[`_enabled${toolType}`],
|
|
120
|
+
}
|
|
121
|
+
)
|
|
122
|
+
|
|
123
|
+
const enableKeys: string[] = []
|
|
124
|
+
const disabledKeys: string[] = []
|
|
125
|
+
|
|
126
|
+
Object.entries(updatedTools).forEach(([key, value]) => {
|
|
127
|
+
if (value) {
|
|
128
|
+
enableKeys.push(key)
|
|
129
|
+
} else {
|
|
130
|
+
disabledKeys.push(key)
|
|
131
|
+
}
|
|
132
|
+
})
|
|
133
|
+
|
|
134
|
+
return {
|
|
135
|
+
[`_enabled${toolType}`]: updatedTools,
|
|
136
|
+
[`enabled${toolType}`]: enableKeys,
|
|
137
|
+
[`disabled${toolType}`]: disabledKeys,
|
|
138
|
+
}
|
|
139
|
+
}),
|
|
140
|
+
reset: (bridges, exchanges) => {
|
|
141
|
+
set(() => ({
|
|
142
|
+
...defaultSettings,
|
|
143
|
+
...defaultConfigurableSettings,
|
|
144
|
+
}))
|
|
145
|
+
get().initializeTools('Bridges', bridges, true)
|
|
146
|
+
get().initializeTools('Exchanges', exchanges, true)
|
|
147
|
+
return { ...get() }
|
|
148
|
+
},
|
|
149
|
+
}),
|
|
150
|
+
{
|
|
151
|
+
name: 'li.fi-widget-settings',
|
|
152
|
+
version: 6,
|
|
153
|
+
partialize: (state) => {
|
|
154
|
+
const {
|
|
155
|
+
disabledBridges,
|
|
156
|
+
disabledExchanges,
|
|
157
|
+
enabledBridges,
|
|
158
|
+
enabledExchanges,
|
|
159
|
+
...partializedState
|
|
160
|
+
} = state
|
|
161
|
+
return partializedState
|
|
162
|
+
},
|
|
163
|
+
merge: (persistedState: any, currentState: SettingsState) => {
|
|
164
|
+
const state = { ...currentState, ...persistedState }
|
|
165
|
+
SettingsToolTypes.forEach((toolType) => {
|
|
166
|
+
if (persistedState?.[`_enabled${toolType}`]) {
|
|
167
|
+
const enabledToolKeys = Object.keys(
|
|
168
|
+
persistedState[`_enabled${toolType}`]
|
|
169
|
+
)
|
|
170
|
+
state[`enabled${toolType}`] = enabledToolKeys.filter(
|
|
171
|
+
(key) => persistedState[`_enabled${toolType}`][key]
|
|
172
|
+
)
|
|
173
|
+
state[`disabled${toolType}`] = enabledToolKeys.filter(
|
|
174
|
+
(key) => !persistedState[`_enabled${toolType}`][key]
|
|
175
|
+
)
|
|
176
|
+
}
|
|
177
|
+
})
|
|
178
|
+
return state
|
|
179
|
+
},
|
|
180
|
+
migrate: () => ({}),
|
|
181
|
+
onRehydrateStorage: () => {
|
|
182
|
+
const initializeLanguageSettings = async (
|
|
183
|
+
state: SettingsState,
|
|
184
|
+
initialLanguage?: string
|
|
185
|
+
) => {
|
|
186
|
+
const customLanguages = Object.keys(
|
|
187
|
+
config?.languageResources || {}
|
|
188
|
+
).filter((key) => !allLanguages.includes(key as LanguageKey))
|
|
189
|
+
if (
|
|
190
|
+
initialLanguage &&
|
|
191
|
+
// Custom language resources and English are added statically.
|
|
192
|
+
initialLanguage !== 'en' &&
|
|
193
|
+
!customLanguages.includes(initialLanguage)
|
|
194
|
+
) {
|
|
195
|
+
await loadLocale(
|
|
196
|
+
initialLanguage as LanguageKey,
|
|
197
|
+
config?.languageResources?.[initialLanguage as LanguageKey]
|
|
198
|
+
).then((languageResource) => {
|
|
199
|
+
state.setValues({
|
|
200
|
+
language: initialLanguage,
|
|
201
|
+
languageCache: languageResource,
|
|
202
|
+
})
|
|
203
|
+
})
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
return (state?: SettingsState) => {
|
|
207
|
+
// Preload translations (from existing translation files)
|
|
208
|
+
if (state) {
|
|
209
|
+
// NB: State always exists unless there is any error
|
|
210
|
+
initializeLanguageSettings(
|
|
211
|
+
state,
|
|
212
|
+
state.getValue('language') || config?.languages?.default
|
|
213
|
+
)
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
},
|
|
217
|
+
}
|
|
218
|
+
)
|
|
219
|
+
)
|