@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,238 @@
|
|
|
1
|
+
import type {
|
|
2
|
+
ExecutionAction,
|
|
3
|
+
ExecutionActionStatus,
|
|
4
|
+
ExtendedTransactionInfo,
|
|
5
|
+
FeeCost,
|
|
6
|
+
FullStatusData,
|
|
7
|
+
Substatus,
|
|
8
|
+
TokenAmount,
|
|
9
|
+
ToolsResponse,
|
|
10
|
+
} from '@lifi/sdk'
|
|
11
|
+
import type { RouteExecution } from '../stores/routes/types.js'
|
|
12
|
+
import { formatTokenPrice } from './format.js'
|
|
13
|
+
|
|
14
|
+
const buildActionsFromTxHistory = (tx: FullStatusData): ExecutionAction[] => {
|
|
15
|
+
const sending = tx.sending as ExtendedTransactionInfo
|
|
16
|
+
const receiving = tx.receiving as ExtendedTransactionInfo
|
|
17
|
+
|
|
18
|
+
if (!sending.token?.chainId || !receiving.token?.chainId) {
|
|
19
|
+
return []
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
const actionStatus: ExecutionActionStatus =
|
|
23
|
+
tx.status === 'DONE' ? 'DONE' : 'FAILED'
|
|
24
|
+
const substatus: Substatus =
|
|
25
|
+
actionStatus === 'FAILED' ? 'UNKNOWN_ERROR' : 'COMPLETED'
|
|
26
|
+
|
|
27
|
+
if (sending.chainId === receiving.chainId) {
|
|
28
|
+
return [
|
|
29
|
+
{
|
|
30
|
+
type: 'SWAP', // operations on same chain will be swaps
|
|
31
|
+
message: '',
|
|
32
|
+
status: actionStatus,
|
|
33
|
+
chainId: sending.chainId,
|
|
34
|
+
txHash: sending.txHash,
|
|
35
|
+
txLink: sending.txLink,
|
|
36
|
+
substatus,
|
|
37
|
+
substatusMessage: '',
|
|
38
|
+
},
|
|
39
|
+
]
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
const actions: ExecutionAction[] = [
|
|
43
|
+
{
|
|
44
|
+
type: 'CROSS_CHAIN', // first step of bridging, ignoring the approvals
|
|
45
|
+
message: '',
|
|
46
|
+
status: actionStatus, // can be FAILED
|
|
47
|
+
chainId: sending.chainId,
|
|
48
|
+
txHash: sending.txHash,
|
|
49
|
+
txLink: sending.txLink,
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
type: 'RECEIVING_CHAIN', // final step of bridging, post swaps
|
|
53
|
+
message: '',
|
|
54
|
+
status: actionStatus,
|
|
55
|
+
substatus,
|
|
56
|
+
substatusMessage: '',
|
|
57
|
+
chainId: receiving.chainId,
|
|
58
|
+
txHash: receiving.txHash,
|
|
59
|
+
txLink: receiving.txLink,
|
|
60
|
+
},
|
|
61
|
+
]
|
|
62
|
+
|
|
63
|
+
return actions
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
export const buildRouteFromTxHistory = (
|
|
67
|
+
tx: FullStatusData,
|
|
68
|
+
tools?: ToolsResponse
|
|
69
|
+
): RouteExecution | undefined => {
|
|
70
|
+
const sending = tx.sending as ExtendedTransactionInfo
|
|
71
|
+
const receiving = tx.receiving as ExtendedTransactionInfo
|
|
72
|
+
|
|
73
|
+
if (!sending.token?.chainId || !receiving.token?.chainId) {
|
|
74
|
+
return
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
let usedTool = tx.sending.includedSteps?.find(
|
|
78
|
+
(step) => step.toolDetails.key === tx.tool
|
|
79
|
+
)?.toolDetails
|
|
80
|
+
|
|
81
|
+
if (!usedTool) {
|
|
82
|
+
const selectedBridge = tools?.bridges.find(
|
|
83
|
+
(bridge) => bridge.key === tx.tool
|
|
84
|
+
)
|
|
85
|
+
|
|
86
|
+
const selectedExchange = tools?.exchanges.find(
|
|
87
|
+
(exchange) => exchange.key === tx.tool
|
|
88
|
+
)
|
|
89
|
+
usedTool = {
|
|
90
|
+
key: tx.tool,
|
|
91
|
+
name: selectedBridge?.name ?? selectedExchange?.name ?? tx.tool,
|
|
92
|
+
logoURI: selectedBridge?.logoURI ?? selectedExchange?.logoURI ?? '',
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
const fromToken: TokenAmount = {
|
|
97
|
+
...sending.token,
|
|
98
|
+
amount: BigInt(sending.amount ?? 0),
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
const toToken: TokenAmount = {
|
|
102
|
+
...receiving.token,
|
|
103
|
+
amount: BigInt(receiving.amount ?? 0),
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
const sendingValue = sending.value ? BigInt(sending.value) : 0n
|
|
107
|
+
const sendingFeeAmount =
|
|
108
|
+
sending.gasToken.address === sending.token.address && sending.amount
|
|
109
|
+
? sendingValue - BigInt(sending.amount)
|
|
110
|
+
: sendingValue
|
|
111
|
+
const sendingFeeAmountUsd =
|
|
112
|
+
sending.gasToken.priceUSD && sendingFeeAmount
|
|
113
|
+
? formatTokenPrice(
|
|
114
|
+
sendingFeeAmount,
|
|
115
|
+
sending.gasToken.priceUSD,
|
|
116
|
+
sending.gasToken.decimals
|
|
117
|
+
)
|
|
118
|
+
: 0
|
|
119
|
+
|
|
120
|
+
const feeCosts: FeeCost[] | undefined = sendingFeeAmount
|
|
121
|
+
? [
|
|
122
|
+
{
|
|
123
|
+
amount: sendingFeeAmount.toString(),
|
|
124
|
+
amountUSD: sendingFeeAmountUsd.toFixed(2),
|
|
125
|
+
token: sending.gasToken,
|
|
126
|
+
included: false,
|
|
127
|
+
// Not used
|
|
128
|
+
description: '',
|
|
129
|
+
name: '',
|
|
130
|
+
percentage: '',
|
|
131
|
+
},
|
|
132
|
+
]
|
|
133
|
+
: undefined
|
|
134
|
+
|
|
135
|
+
const routeExecution: RouteExecution = {
|
|
136
|
+
status: 1,
|
|
137
|
+
route: {
|
|
138
|
+
id: (tx as FullStatusData).transactionId,
|
|
139
|
+
fromAddress: (tx as FullStatusData).fromAddress,
|
|
140
|
+
toAddress: (tx as FullStatusData).toAddress,
|
|
141
|
+
fromChainId: sending.chainId,
|
|
142
|
+
fromAmount: sending.amount ?? '',
|
|
143
|
+
fromAmountUSD: sending.amountUSD ?? '',
|
|
144
|
+
toAmount: receiving.amount ?? '',
|
|
145
|
+
toAmountMin: receiving.amount ?? '',
|
|
146
|
+
toAmountUSD: receiving.amountUSD ?? '',
|
|
147
|
+
toChainId: receiving.chainId,
|
|
148
|
+
fromToken,
|
|
149
|
+
toToken,
|
|
150
|
+
gasCostUSD: sending.gasAmountUSD,
|
|
151
|
+
steps: [
|
|
152
|
+
{
|
|
153
|
+
id: (tx as FullStatusData).transactionId,
|
|
154
|
+
type: 'lifi',
|
|
155
|
+
tool: tx.tool,
|
|
156
|
+
toolDetails: usedTool,
|
|
157
|
+
action: {
|
|
158
|
+
fromToken: sending.token,
|
|
159
|
+
fromAmount: sending.amount ?? '',
|
|
160
|
+
fromChainId: sending.chainId,
|
|
161
|
+
fromAddress: (tx as FullStatusData).fromAddress,
|
|
162
|
+
toToken: receiving.token,
|
|
163
|
+
toChainId: receiving.chainId,
|
|
164
|
+
toAddress: (tx as FullStatusData).toAddress,
|
|
165
|
+
slippage: 0,
|
|
166
|
+
},
|
|
167
|
+
estimate: {
|
|
168
|
+
tool: tx.tool,
|
|
169
|
+
approvalAddress: '',
|
|
170
|
+
fromAmount: sending.amount ?? '',
|
|
171
|
+
fromAmountUSD: sending.amountUSD ?? '',
|
|
172
|
+
toAmountMin: receiving.amount ?? '',
|
|
173
|
+
toAmount: receiving.amount ?? '',
|
|
174
|
+
toAmountUSD: receiving.amountUSD ?? '',
|
|
175
|
+
executionDuration: 0,
|
|
176
|
+
},
|
|
177
|
+
includedSteps: [
|
|
178
|
+
{
|
|
179
|
+
id: (tx as FullStatusData).transactionId,
|
|
180
|
+
type: sending.chainId === receiving.chainId ? 'swap' : 'cross',
|
|
181
|
+
action: {
|
|
182
|
+
fromChainId: sending.chainId,
|
|
183
|
+
fromAmount: sending.amount ?? '',
|
|
184
|
+
fromToken: sending.token,
|
|
185
|
+
toChainId: receiving.chainId,
|
|
186
|
+
toToken: receiving.token,
|
|
187
|
+
slippage: 0,
|
|
188
|
+
fromAddress: (tx as FullStatusData).fromAddress,
|
|
189
|
+
toAddress: (tx as FullStatusData).toAddress,
|
|
190
|
+
},
|
|
191
|
+
estimate: {
|
|
192
|
+
tool: tx.tool,
|
|
193
|
+
fromAmount: sending.amount ?? '',
|
|
194
|
+
toAmount: receiving.amount ?? '',
|
|
195
|
+
toAmountMin: receiving.amount ?? '',
|
|
196
|
+
approvalAddress: '',
|
|
197
|
+
executionDuration: 0,
|
|
198
|
+
},
|
|
199
|
+
tool: tx.tool,
|
|
200
|
+
toolDetails: usedTool,
|
|
201
|
+
},
|
|
202
|
+
],
|
|
203
|
+
integrator: tx.metadata?.integrator ?? '',
|
|
204
|
+
execution: {
|
|
205
|
+
status: 'DONE', // can be FAILED
|
|
206
|
+
startedAt: sending.timestamp
|
|
207
|
+
? sending.timestamp * 1000
|
|
208
|
+
: Date.now(),
|
|
209
|
+
actions: buildActionsFromTxHistory(tx),
|
|
210
|
+
fromAmount: sending.amount,
|
|
211
|
+
toAmount: receiving.amount,
|
|
212
|
+
toToken: receiving.token,
|
|
213
|
+
internalTxLink: tx.lifiExplorerLink,
|
|
214
|
+
externalTxLink: tx.bridgeExplorerLink,
|
|
215
|
+
gasCosts: [
|
|
216
|
+
{
|
|
217
|
+
amount: sending.gasAmount,
|
|
218
|
+
amountUSD: sending.gasAmountUSD,
|
|
219
|
+
token: sending.gasToken,
|
|
220
|
+
estimate: '0',
|
|
221
|
+
limit: '0',
|
|
222
|
+
price: '0',
|
|
223
|
+
type: 'SEND',
|
|
224
|
+
},
|
|
225
|
+
],
|
|
226
|
+
feeCosts,
|
|
227
|
+
},
|
|
228
|
+
},
|
|
229
|
+
],
|
|
230
|
+
insurance: {
|
|
231
|
+
state: 'NOT_INSURABLE',
|
|
232
|
+
feeAmountUsd: '0',
|
|
233
|
+
},
|
|
234
|
+
},
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
return routeExecution
|
|
238
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export const currencyExtendedFormatter = (
|
|
2
|
+
lng: string | undefined,
|
|
3
|
+
options: any
|
|
4
|
+
): ((value: any) => string) => {
|
|
5
|
+
const formatter = new Intl.NumberFormat(lng, {
|
|
6
|
+
...options,
|
|
7
|
+
style: 'currency',
|
|
8
|
+
})
|
|
9
|
+
return (value: any) => {
|
|
10
|
+
if (value > 0 && value < 0.01) {
|
|
11
|
+
return `<${formatter.format(0.01)}`
|
|
12
|
+
}
|
|
13
|
+
return formatter.format(value)
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/** Forked from https://github.com/epoberezkin/fast-deep-equal */
|
|
2
|
+
|
|
3
|
+
export function deepEqual(a: any, b: any): boolean {
|
|
4
|
+
if (a === b) {
|
|
5
|
+
return true
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
if (a && b && typeof a === 'object' && typeof b === 'object') {
|
|
9
|
+
if (a.constructor !== b.constructor) {
|
|
10
|
+
return false
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
let length: number
|
|
14
|
+
let i: number
|
|
15
|
+
|
|
16
|
+
if (Array.isArray(a) && Array.isArray(b)) {
|
|
17
|
+
length = a.length
|
|
18
|
+
if (length !== b.length) {
|
|
19
|
+
return false
|
|
20
|
+
}
|
|
21
|
+
for (i = length; i-- !== 0; ) {
|
|
22
|
+
if (!deepEqual(a[i], b[i])) {
|
|
23
|
+
return false
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
return true
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
if (a.valueOf !== Object.prototype.valueOf) {
|
|
30
|
+
return a.valueOf() === b.valueOf()
|
|
31
|
+
}
|
|
32
|
+
if (a.toString !== Object.prototype.toString) {
|
|
33
|
+
return a.toString() === b.toString()
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
const keys = Object.keys(a)
|
|
37
|
+
length = keys.length
|
|
38
|
+
if (length !== Object.keys(b).length) {
|
|
39
|
+
return false
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
for (i = length; i-- !== 0; ) {
|
|
43
|
+
if (!Object.hasOwn(b, keys[i]!)) {
|
|
44
|
+
return false
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
for (i = length; i-- !== 0; ) {
|
|
49
|
+
const key = keys[i]
|
|
50
|
+
|
|
51
|
+
if (key && !deepEqual(a[key], b[key])) {
|
|
52
|
+
return false
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
return true
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
// true if both NaN, false otherwise
|
|
60
|
+
// biome-ignore lint/suspicious/noSelfCompare: allowed in typescript
|
|
61
|
+
return a !== a && b !== b
|
|
62
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
const isObject = (obj: any): boolean => obj && typeof obj === 'object'
|
|
2
|
+
|
|
3
|
+
export const deepMerge = (...objects: any[]): any => {
|
|
4
|
+
return objects.reduce((prev, obj) => {
|
|
5
|
+
for (const key in obj) {
|
|
6
|
+
if (isObject(prev[key]) && isObject(obj[key])) {
|
|
7
|
+
prev[key] = deepMerge(prev[key], obj[key])
|
|
8
|
+
} else {
|
|
9
|
+
prev[key] = obj[key]
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
return prev
|
|
13
|
+
}, {})
|
|
14
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export enum ElementId {
|
|
2
|
+
AppExpandedContainer = 'widget-app-expanded-container',
|
|
3
|
+
Header = 'widget-header',
|
|
4
|
+
RelativeContainer = 'widget-relative-container',
|
|
5
|
+
ScrollableContainer = 'widget-scrollable-container',
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export const createElementId = (
|
|
9
|
+
ElementId: ElementId,
|
|
10
|
+
elementId: string
|
|
11
|
+
): string => (elementId ? `${ElementId}-${elementId}` : ElementId)
|
|
12
|
+
|
|
13
|
+
// NOTE: The getter functions here are often used with code that can be effected by css changes in the
|
|
14
|
+
// AppExpandedContainer, RelativeContainer and CssBaselineContainer components as defined in AppContainer.ts
|
|
15
|
+
|
|
16
|
+
export const getAppContainer = (elementId: string): HTMLElement | null =>
|
|
17
|
+
document.getElementById(
|
|
18
|
+
createElementId(ElementId.AppExpandedContainer, elementId)
|
|
19
|
+
)
|
|
20
|
+
|
|
21
|
+
export const getRelativeContainer = (elementId: string): HTMLElement | null =>
|
|
22
|
+
document.getElementById(
|
|
23
|
+
createElementId(ElementId.RelativeContainer, elementId)
|
|
24
|
+
)
|
|
25
|
+
|
|
26
|
+
export const getScrollableContainer = (elementId: string): HTMLElement | null =>
|
|
27
|
+
document.getElementById(
|
|
28
|
+
createElementId(ElementId.ScrollableContainer, elementId)
|
|
29
|
+
)
|
|
30
|
+
|
|
31
|
+
export const getHeaderElement = (elementId: string): HTMLElement | null =>
|
|
32
|
+
document.getElementById(createElementId(ElementId.Header, elementId))
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import type { FeeCost, GasCost, RouteExtended, Token } from '@lifi/sdk'
|
|
2
|
+
import { formatTokenPrice } from './format.js'
|
|
3
|
+
|
|
4
|
+
export interface FeesBreakdown {
|
|
5
|
+
amount: bigint
|
|
6
|
+
amountUSD: number
|
|
7
|
+
token: Token
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export const getAccumulatedFeeCostsBreakdown = (
|
|
11
|
+
route: RouteExtended,
|
|
12
|
+
included: boolean = false
|
|
13
|
+
): {
|
|
14
|
+
gasCosts: FeesBreakdown[]
|
|
15
|
+
feeCosts: FeesBreakdown[]
|
|
16
|
+
gasCostUSD: number
|
|
17
|
+
feeCostUSD: number
|
|
18
|
+
combinedFeesUSD: number
|
|
19
|
+
} => {
|
|
20
|
+
const gasCosts = getGasCostsBreakdown(route)
|
|
21
|
+
const feeCosts = getFeeCostsBreakdown(route, included)
|
|
22
|
+
const gasCostUSD = gasCosts.reduce(
|
|
23
|
+
(sum, gasCost) => sum + gasCost.amountUSD,
|
|
24
|
+
0
|
|
25
|
+
)
|
|
26
|
+
const feeCostUSD = feeCosts.reduce(
|
|
27
|
+
(sum, feeCost) => sum + feeCost.amountUSD,
|
|
28
|
+
0
|
|
29
|
+
)
|
|
30
|
+
const combinedFeesUSD = gasCostUSD + feeCostUSD
|
|
31
|
+
return {
|
|
32
|
+
gasCosts,
|
|
33
|
+
feeCosts,
|
|
34
|
+
gasCostUSD,
|
|
35
|
+
feeCostUSD,
|
|
36
|
+
combinedFeesUSD,
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
const getGasCostsBreakdown = (route: RouteExtended): FeesBreakdown[] => {
|
|
41
|
+
return Array.from(
|
|
42
|
+
route.steps
|
|
43
|
+
.reduce((groupedGasCosts, step) => {
|
|
44
|
+
const gasCosts = step.execution?.gasCosts ?? step.estimate.gasCosts
|
|
45
|
+
if (gasCosts?.length) {
|
|
46
|
+
const {
|
|
47
|
+
token,
|
|
48
|
+
amount: gasCostAmount,
|
|
49
|
+
amountUSD: gasCostAmountUSD,
|
|
50
|
+
} = getStepFeeCostsBreakdown(gasCosts)
|
|
51
|
+
const groupedGasCost = groupedGasCosts.get(token.chainId)
|
|
52
|
+
const amount = groupedGasCost
|
|
53
|
+
? groupedGasCost.amount + gasCostAmount
|
|
54
|
+
: gasCostAmount
|
|
55
|
+
const amountUSD = groupedGasCost
|
|
56
|
+
? groupedGasCost.amountUSD + gasCostAmountUSD
|
|
57
|
+
: gasCostAmountUSD
|
|
58
|
+
groupedGasCosts.set(token.chainId, {
|
|
59
|
+
amount,
|
|
60
|
+
amountUSD,
|
|
61
|
+
token,
|
|
62
|
+
})
|
|
63
|
+
return groupedGasCosts
|
|
64
|
+
}
|
|
65
|
+
return groupedGasCosts
|
|
66
|
+
}, new Map<number, FeesBreakdown>())
|
|
67
|
+
.values()
|
|
68
|
+
)
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
const getFeeCostsBreakdown = (
|
|
72
|
+
route: RouteExtended,
|
|
73
|
+
included?: boolean
|
|
74
|
+
): FeesBreakdown[] => {
|
|
75
|
+
return Array.from(
|
|
76
|
+
route.steps
|
|
77
|
+
.reduce((groupedFeeCosts, step) => {
|
|
78
|
+
let feeCosts = step.execution?.feeCosts ?? step.estimate.feeCosts
|
|
79
|
+
if (typeof included === 'boolean') {
|
|
80
|
+
feeCosts = feeCosts?.filter(
|
|
81
|
+
(feeCost) => feeCost.included === included
|
|
82
|
+
)
|
|
83
|
+
}
|
|
84
|
+
if (feeCosts?.length) {
|
|
85
|
+
const {
|
|
86
|
+
token,
|
|
87
|
+
amount: feeCostAmount,
|
|
88
|
+
amountUSD: feeCostAmountUSD,
|
|
89
|
+
} = getStepFeeCostsBreakdown(feeCosts)
|
|
90
|
+
const groupedFeeCost = groupedFeeCosts.get(token.chainId)
|
|
91
|
+
const amount = groupedFeeCost
|
|
92
|
+
? groupedFeeCost.amount + feeCostAmount
|
|
93
|
+
: feeCostAmount
|
|
94
|
+
const amountUSD = groupedFeeCost
|
|
95
|
+
? groupedFeeCost.amountUSD + feeCostAmountUSD
|
|
96
|
+
: feeCostAmountUSD
|
|
97
|
+
groupedFeeCosts.set(token.chainId, {
|
|
98
|
+
amount,
|
|
99
|
+
amountUSD,
|
|
100
|
+
token,
|
|
101
|
+
})
|
|
102
|
+
return groupedFeeCosts
|
|
103
|
+
}
|
|
104
|
+
return groupedFeeCosts
|
|
105
|
+
}, new Map<number, FeesBreakdown>())
|
|
106
|
+
.values()
|
|
107
|
+
)
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
const getStepFeeCostsBreakdown = (
|
|
111
|
+
feeCosts: FeeCost[] | GasCost[]
|
|
112
|
+
): FeesBreakdown => {
|
|
113
|
+
const { token } = feeCosts[0]
|
|
114
|
+
|
|
115
|
+
const { amount, amountUSD } = feeCosts.reduce(
|
|
116
|
+
(acc, feeCost) => {
|
|
117
|
+
const feeAmount = BigInt(Number(feeCost.amount).toFixed(0) || 0)
|
|
118
|
+
const amountUSD = formatTokenPrice(
|
|
119
|
+
feeAmount,
|
|
120
|
+
feeCost.token.priceUSD,
|
|
121
|
+
feeCost.token.decimals
|
|
122
|
+
)
|
|
123
|
+
|
|
124
|
+
acc.amount += feeAmount
|
|
125
|
+
acc.amountUSD += amountUSD
|
|
126
|
+
return acc
|
|
127
|
+
},
|
|
128
|
+
{ amount: 0n, amountUSD: 0 }
|
|
129
|
+
)
|
|
130
|
+
|
|
131
|
+
return {
|
|
132
|
+
amount,
|
|
133
|
+
amountUSD,
|
|
134
|
+
token,
|
|
135
|
+
}
|
|
136
|
+
}
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
import { formatUnits } from '@lifi/sdk'
|
|
2
|
+
|
|
3
|
+
export const usdDecimals = 2
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Format token amount to at least 6 decimals.
|
|
7
|
+
* @param amount amount to format.
|
|
8
|
+
* @returns formatted amount.
|
|
9
|
+
*/
|
|
10
|
+
export function formatTokenAmount(
|
|
11
|
+
amount: bigint | undefined,
|
|
12
|
+
decimals: number
|
|
13
|
+
): string {
|
|
14
|
+
const formattedAmount = amount ? formatUnits(amount, decimals) : '0'
|
|
15
|
+
const parsedAmount = Number.parseFloat(formattedAmount)
|
|
16
|
+
if (!parsedAmount || Number.isNaN(Number(formattedAmount))) {
|
|
17
|
+
return '0'
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
return formattedAmount
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export function formatSlippage(
|
|
24
|
+
slippage = '',
|
|
25
|
+
defaultValue = '',
|
|
26
|
+
returnInitial = false
|
|
27
|
+
): string {
|
|
28
|
+
if (!slippage) {
|
|
29
|
+
return slippage
|
|
30
|
+
}
|
|
31
|
+
const parsedSlippage = Number.parseFloat(slippage)
|
|
32
|
+
if (Number.isNaN(Number(slippage)) && !Number.isNaN(parsedSlippage)) {
|
|
33
|
+
return parsedSlippage.toString()
|
|
34
|
+
}
|
|
35
|
+
if (Number.isNaN(parsedSlippage)) {
|
|
36
|
+
return defaultValue
|
|
37
|
+
}
|
|
38
|
+
if (parsedSlippage >= 100) {
|
|
39
|
+
return '100'
|
|
40
|
+
}
|
|
41
|
+
if (parsedSlippage < 0) {
|
|
42
|
+
return Math.abs(parsedSlippage).toString()
|
|
43
|
+
}
|
|
44
|
+
if (returnInitial) {
|
|
45
|
+
return slippage
|
|
46
|
+
}
|
|
47
|
+
return parsedSlippage.toString()
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Formats a user input amount string, normalizing it and optionally limiting decimal places.
|
|
52
|
+
* @param amount - The amount string to format (e.g., '123.45', '1,23', '0..')
|
|
53
|
+
* @param decimals - Maximum number of decimal places to allow. If null, no limit is applied.
|
|
54
|
+
* @param returnInitial - If true, preserves the input format during typing (e.g., keeps trailing dots,
|
|
55
|
+
* preserves leading zeros, keeps negative signs). If false (default), cleans up the
|
|
56
|
+
* format on blur (removes leading/trailing zeros, removes negative signs).
|
|
57
|
+
* @returns The formatted amount string, or empty string for invalid input.
|
|
58
|
+
*/
|
|
59
|
+
export function formatInputAmount(
|
|
60
|
+
amount: string,
|
|
61
|
+
decimals: number | null = null,
|
|
62
|
+
returnInitial: boolean = false
|
|
63
|
+
): string {
|
|
64
|
+
if (!amount) {
|
|
65
|
+
return amount
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
// Replace commas with dots
|
|
69
|
+
let formattedAmount = amount.trim().replaceAll(',', '.')
|
|
70
|
+
|
|
71
|
+
// Keep only the first dot, remove all subsequent dots
|
|
72
|
+
const dotIndex = formattedAmount.indexOf('.')
|
|
73
|
+
if (dotIndex !== -1) {
|
|
74
|
+
formattedAmount = `${formattedAmount.slice(0, dotIndex + 1)}${formattedAmount.slice(dotIndex + 1).replaceAll('.', '')}`
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
// If the amount starts with a dot, prepend 0
|
|
78
|
+
if (
|
|
79
|
+
(!returnInitial && formattedAmount.startsWith('.')) ||
|
|
80
|
+
formattedAmount === '.'
|
|
81
|
+
) {
|
|
82
|
+
formattedAmount = `0${formattedAmount}`
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
// Parse the valid part of the amount
|
|
86
|
+
const parsedAmount = Number.parseFloat(formattedAmount)
|
|
87
|
+
if (Number.isNaN(Number(formattedAmount)) && !Number.isNaN(parsedAmount)) {
|
|
88
|
+
formattedAmount = parsedAmount.toString()
|
|
89
|
+
}
|
|
90
|
+
if (Number.isNaN(Math.abs(Number(formattedAmount)))) {
|
|
91
|
+
return ''
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
// Split and limit decimals
|
|
95
|
+
let [integer, fraction = ''] = formattedAmount.split('.')
|
|
96
|
+
if (decimals !== null && fraction.length > decimals) {
|
|
97
|
+
fraction = fraction.slice(0, decimals)
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
if (returnInitial) {
|
|
101
|
+
if (!fraction) {
|
|
102
|
+
return formattedAmount
|
|
103
|
+
}
|
|
104
|
+
return `${integer}${fraction ? `.${fraction}` : ''}`
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
// Remove leading zeros and minus sign
|
|
108
|
+
integer = integer.replace(/^0+|-/, '')
|
|
109
|
+
// Remove trailing zeros
|
|
110
|
+
fraction = fraction.replace(/(0+)$/, '')
|
|
111
|
+
|
|
112
|
+
return `${integer || (fraction ? '0' : '')}${fraction ? `.${fraction}` : ''}`
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
export function formatTokenPrice(
|
|
116
|
+
amount?: string | bigint,
|
|
117
|
+
price?: string,
|
|
118
|
+
decimals?: number
|
|
119
|
+
): number {
|
|
120
|
+
if (!amount || !price) {
|
|
121
|
+
return 0
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
const formattedAmount =
|
|
125
|
+
typeof amount === 'bigint' && decimals !== undefined
|
|
126
|
+
? formatUnits(amount, decimals)
|
|
127
|
+
: amount.toString()
|
|
128
|
+
|
|
129
|
+
if (Number.isNaN(Number(formattedAmount)) || Number.isNaN(Number(price))) {
|
|
130
|
+
return 0
|
|
131
|
+
}
|
|
132
|
+
return Number.parseFloat(formattedAmount) * Number.parseFloat(price)
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
/**
|
|
136
|
+
* Formatter for price value to token amount
|
|
137
|
+
*/
|
|
138
|
+
const formatter = new Intl.NumberFormat('en', {
|
|
139
|
+
notation: 'standard',
|
|
140
|
+
roundingPriority: 'morePrecision',
|
|
141
|
+
maximumSignificantDigits: 20,
|
|
142
|
+
maximumFractionDigits: 20,
|
|
143
|
+
useGrouping: false,
|
|
144
|
+
})
|
|
145
|
+
|
|
146
|
+
/**
|
|
147
|
+
* Convert price value to token amount
|
|
148
|
+
*/
|
|
149
|
+
export function priceToTokenAmount(
|
|
150
|
+
priceValue: string,
|
|
151
|
+
priceUSD?: string
|
|
152
|
+
): string {
|
|
153
|
+
if (!priceValue || !priceUSD) {
|
|
154
|
+
return '0'
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
const numericPriceValue = Number.parseFloat(priceValue)
|
|
158
|
+
const numericPrice = Number.parseFloat(priceUSD)
|
|
159
|
+
|
|
160
|
+
if (
|
|
161
|
+
Number.isNaN(numericPriceValue) ||
|
|
162
|
+
Number.isNaN(numericPrice) ||
|
|
163
|
+
!numericPrice
|
|
164
|
+
) {
|
|
165
|
+
return '0'
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
return formatter.format(numericPriceValue / numericPrice)
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
const units = [
|
|
172
|
+
['day', 86400],
|
|
173
|
+
['hour', 3600],
|
|
174
|
+
['minute', 60],
|
|
175
|
+
['second', 1],
|
|
176
|
+
] as const
|
|
177
|
+
|
|
178
|
+
export function formatDuration(seconds: number, locale: string): string {
|
|
179
|
+
const match = units.find(([, v]) => seconds >= v)
|
|
180
|
+
const amount = match ? Math.floor(seconds / match[1]) : 0
|
|
181
|
+
const unit = match?.[0] ?? 'second'
|
|
182
|
+
|
|
183
|
+
return amount.toLocaleString(locale, {
|
|
184
|
+
style: 'unit',
|
|
185
|
+
unit,
|
|
186
|
+
unitDisplay: 'narrow',
|
|
187
|
+
})
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
export function wrapLongWords(text: string): string {
|
|
191
|
+
return text.replace(
|
|
192
|
+
/\S{32,}/g,
|
|
193
|
+
(word) => `${word.slice(0, 8)}...${word.slice(-4)}`
|
|
194
|
+
)
|
|
195
|
+
}
|