@velora-dex/widget 0.1.2 → 0.1.3
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/dist/components/web3/providers.d.ts +3 -0
- package/dist/components/web3/providers.d.ts.map +1 -1
- package/dist/components/web3/providers.js +18 -3
- package/dist/components/web3/providers.js.map +1 -1
- package/dist/components/widget/AppHeader/Activities/Drawers.d.ts.map +1 -1
- package/dist/components/widget/AppHeader/Activities/Drawers.js +33 -29
- package/dist/components/widget/AppHeader/Activities/Drawers.js.map +1 -1
- package/dist/components/widget/AppHeader/Activities/hooks.d.ts.map +1 -1
- package/dist/components/widget/AppHeader/Activities/hooks.js +193 -106
- package/dist/components/widget/AppHeader/Activities/hooks.js.map +1 -1
- package/dist/components/widget/AppHeader/TradeModeSwitcher.d.ts.map +1 -1
- package/dist/components/widget/AppHeader/TradeModeSwitcher.js +67 -42
- package/dist/components/widget/AppHeader/TradeModeSwitcher.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js +207 -191
- package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
- package/dist/components/widget/ReceiverAddress/state/subscriptions.d.ts.map +1 -1
- package/dist/components/widget/ReceiverAddress/state/subscriptions.js +10 -3
- package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
- package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.d.ts.map +1 -1
- package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.js +37 -39
- package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.js.map +1 -1
- package/dist/components/widget/TokenInput/EmptyInput.d.ts +1 -1
- package/dist/components/widget/TokenInput/EmptyInput.d.ts.map +1 -1
- package/dist/components/widget/TokenInput/EmptyInput.js +16 -14
- package/dist/components/widget/TokenInput/EmptyInput.js.map +1 -1
- package/dist/components/widget/TokenInput/index.d.ts.map +1 -1
- package/dist/components/widget/TokenInput/index.js +92 -91
- package/dist/components/widget/TokenInput/index.js.map +1 -1
- package/dist/components/widget/TokenSwitcher/TokenSwitcher.d.ts.map +1 -1
- package/dist/components/widget/TokenSwitcher/TokenSwitcher.js +34 -31
- package/dist/components/widget/TokenSwitcher/TokenSwitcher.js.map +1 -1
- package/dist/configurator/Configurator.d.ts.map +1 -1
- package/dist/core/Updaters.d.ts.map +1 -1
- package/dist/core/Updaters.js +9 -5
- package/dist/core/Updaters.js.map +1 -1
- package/dist/core/across/utils.d.ts.map +1 -1
- package/dist/core/across/utils.js +4 -4
- package/dist/core/across/utils.js.map +1 -1
- package/dist/core/constants.d.ts +5 -0
- package/dist/core/constants.d.ts.map +1 -1
- package/dist/core/constants.js +11 -1
- package/dist/core/constants.js.map +1 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +191 -120
- package/dist/core/index.js.map +1 -1
- package/dist/core/inputs/hooks/types.d.ts +1 -1
- package/dist/core/inputs/hooks/types.d.ts.map +1 -1
- package/dist/core/inputs/hooks/useTokenFromInputProps.d.ts.map +1 -1
- package/dist/core/inputs/hooks/useTokenFromInputProps.js +36 -43
- package/dist/core/inputs/hooks/useTokenFromInputProps.js.map +1 -1
- package/dist/core/inputs/hooks/useTokenSwitcherProps.d.ts.map +1 -1
- package/dist/core/inputs/hooks/useTokenSwitcherProps.js +17 -7
- package/dist/core/inputs/hooks/useTokenSwitcherProps.js.map +1 -1
- package/dist/core/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
- package/dist/core/inputs/hooks/useTokenToInputProps.js +64 -77
- package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
- package/dist/core/inputs/state/selectedTokenActionsAtom.d.ts +1 -1
- package/dist/core/inputs/state/selectedTokenActionsAtom.d.ts.map +1 -1
- package/dist/core/inputs/state/selectedTokenActionsAtom.js +58 -28
- package/dist/core/inputs/state/selectedTokenActionsAtom.js.map +1 -1
- package/dist/core/inputs/state/setTokenByAddressAtom.d.ts.map +1 -1
- package/dist/core/inputs/state/setTokenByAddressAtom.js +10 -9
- package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
- package/dist/core/inputs/state/subscriptions.d.ts.map +1 -1
- package/dist/core/inputs/state/subscriptions.js +2 -1
- package/dist/core/inputs/state/subscriptions.js.map +1 -1
- package/dist/core/limit/state/selectedTokenActionsAtom.d.ts.map +1 -1
- package/dist/core/limit/state/selectedTokenActionsAtom.js +3 -3
- package/dist/core/limit/state/selectedTokenActionsAtom.js.map +1 -1
- package/dist/core/limit/useLimitTokenFromInputProps.d.ts.map +1 -1
- package/dist/core/limit/useLimitTokenFromInputProps.js +35 -42
- package/dist/core/limit/useLimitTokenFromInputProps.js.map +1 -1
- package/dist/core/limit/useLimitTokenToInputProps.d.ts.map +1 -1
- package/dist/core/limit/useLimitTokenToInputProps.js +9 -20
- package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
- package/dist/core/otc/state/selectedTokenActionsAtom.d.ts.map +1 -1
- package/dist/core/otc/state/selectedTokenActionsAtom.js +3 -3
- package/dist/core/otc/state/selectedTokenActionsAtom.js.map +1 -1
- package/dist/core/otc/useOtcTokenFromInputProps.d.ts.map +1 -1
- package/dist/core/otc/useOtcTokenFromInputProps.js +35 -42
- package/dist/core/otc/useOtcTokenFromInputProps.js.map +1 -1
- package/dist/core/otc/useOtcTokenToInputProps.d.ts.map +1 -1
- package/dist/core/otc/useOtcTokenToInputProps.js +9 -20
- package/dist/core/otc/useOtcTokenToInputProps.js.map +1 -1
- package/dist/core/state/configActionsAtom.d.ts +5 -2
- package/dist/core/state/configActionsAtom.d.ts.map +1 -1
- package/dist/core/state/configActionsAtom.js +24 -12
- package/dist/core/state/configActionsAtom.js.map +1 -1
- package/dist/core/state/configAtom.d.ts +33 -11
- package/dist/core/state/configAtom.d.ts.map +1 -1
- package/dist/core/state/configAtom.js +15 -1
- package/dist/core/state/configAtom.js.map +1 -1
- package/dist/core/state/configEffectAtom.d.ts +5 -0
- package/dist/core/state/configEffectAtom.d.ts.map +1 -0
- package/dist/core/state/configEffectAtom.js +56 -0
- package/dist/core/state/configEffectAtom.js.map +1 -0
- package/dist/core/state/enabledChainsAtom.d.ts +10 -0
- package/dist/core/state/enabledChainsAtom.d.ts.map +1 -0
- package/dist/core/state/enabledChainsAtom.js +101 -0
- package/dist/core/state/enabledChainsAtom.js.map +1 -0
- package/dist/core/state/enabledTradeModesAtom.d.ts +3 -0
- package/dist/core/state/enabledTradeModesAtom.d.ts.map +1 -0
- package/dist/core/state/enabledTradeModesAtom.js +31 -0
- package/dist/core/state/enabledTradeModesAtom.js.map +1 -0
- package/dist/core/state/tradeModeAtom.d.ts +2 -1
- package/dist/core/state/tradeModeAtom.d.ts.map +1 -1
- package/dist/core/state/tradeModeAtom.js +9 -2
- package/dist/core/state/tradeModeAtom.js.map +1 -1
- package/dist/core/subscriptions.d.ts.map +1 -1
- package/dist/core/subscriptions.js +0 -2
- package/dist/core/subscriptions.js.map +1 -1
- package/dist/core/types.d.ts +12 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/hooks/otc/mutations/useFillOrder.js +4 -1
- package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.d.ts +5 -2
- package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.js +19 -2
- package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.js.map +1 -1
- package/dist/hooks/tokens/data/useCombineTokensWithFetched.d.ts.map +1 -1
- package/dist/hooks/tokens/data/useCombineTokensWithFetched.js +41 -39
- package/dist/hooks/tokens/data/useCombineTokensWithFetched.js.map +1 -1
- package/dist/hooks/txs/queries/useAwaitTx.d.ts.map +1 -1
- package/dist/hooks/txs/queries/useAwaitTx.js +11 -7
- package/dist/hooks/txs/queries/useAwaitTx.js.map +1 -1
- package/dist/hooks/useAvailableCrosses.d.ts +3 -2
- package/dist/hooks/useAvailableCrosses.d.ts.map +1 -1
- package/dist/hooks/useAvailableCrosses.js +23 -20
- package/dist/hooks/useAvailableCrosses.js.map +1 -1
- package/dist/hooks/useGlobalDeltaEnabled.d.ts +1 -0
- package/dist/hooks/useGlobalDeltaEnabled.d.ts.map +1 -1
- package/dist/hooks/useGlobalDeltaEnabled.js +22 -17
- package/dist/hooks/useGlobalDeltaEnabled.js.map +1 -1
- package/dist/hooks/useSelectableDestChains.d.ts +14 -0
- package/dist/hooks/useSelectableDestChains.d.ts.map +1 -0
- package/dist/hooks/useSelectableDestChains.js +91 -0
- package/dist/hooks/useSelectableDestChains.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/constants/delta.js +1 -1
- package/dist/lib/constants/delta.js.map +1 -1
- package/dist/lib/constants/index.js +1 -1
- package/dist/lib/constants/index.js.map +1 -1
- package/dist/lib/tradeMode.d.ts +4 -0
- package/dist/lib/tradeMode.d.ts.map +1 -0
- package/dist/lib/tradeMode.js +8 -0
- package/dist/lib/tradeMode.js.map +1 -0
- package/dist/lib/utils/atomWithCompare.d.ts +2 -0
- package/dist/lib/utils/atomWithCompare.d.ts.map +1 -0
- package/dist/lib/utils/atomWithCompare.js +13 -0
- package/dist/lib/utils/atomWithCompare.js.map +1 -0
- package/dist/lib/utils/index.d.ts +2 -0
- package/dist/lib/utils/index.d.ts.map +1 -1
- package/dist/lib/utils/index.js +17 -1
- package/dist/lib/utils/index.js.map +1 -1
- package/dist/lib/web3/wagmi/config.d.ts.map +1 -1
- package/dist/lib/web3/wagmi/config.js +2 -1
- package/dist/lib/web3/wagmi/config.js.map +1 -1
- package/dist/lib/web3/wagmi/constants.d.ts +2 -1
- package/dist/lib/web3/wagmi/constants.d.ts.map +1 -1
- package/dist/lib/web3/wagmi/constants.js.map +1 -1
- package/dist/lib/web3/wagmi/switchChain.d.ts +1169 -0
- package/dist/lib/web3/wagmi/switchChain.d.ts.map +1 -0
- package/dist/lib/web3/wagmi/switchChain.js +23 -0
- package/dist/lib/web3/wagmi/switchChain.js.map +1 -0
- package/dist/lib/web3/wagmi/types.d.ts +2 -2
- package/dist/lib/web3/wagmi/types.d.ts.map +1 -1
- package/dist/styles.css +3 -0
- package/dist/tokens/lists/constants.d.ts +1 -0
- package/dist/tokens/lists/constants.d.ts.map +1 -1
- package/dist/tokens/lists/constants.js +6 -2
- package/dist/tokens/lists/constants.js.map +1 -1
- package/dist/tokens/lists/lists.json.d.ts +23 -44
- package/dist/tokens/lists/lists.json.js +354 -1
- package/dist/tokens/lists/lists.json.js.map +1 -1
- package/dist/tokens/lists/state/effects.d.ts +2 -0
- package/dist/tokens/lists/state/effects.d.ts.map +1 -0
- package/dist/tokens/lists/state/effects.js +25 -0
- package/dist/tokens/lists/state/effects.js.map +1 -0
- package/dist/tokens/lists/state/tokenListsActionsAtom.js +3 -3
- package/dist/tokens/lists/state/tokenListsActionsAtom.js.map +1 -1
- package/dist/tokens/lists/state/tokenListsStateAtom.d.ts +16 -7
- package/dist/tokens/lists/state/tokenListsStateAtom.d.ts.map +1 -1
- package/dist/tokens/lists/state/tokenListsStateAtom.js +50 -5
- package/dist/tokens/lists/state/tokenListsStateAtom.js.map +1 -1
- package/dist/tokens/lists/types.d.ts.map +1 -1
- package/dist/tokens/lists/utils.js +1 -1
- package/dist/tokens/queries.d.ts +4 -2
- package/dist/tokens/queries.d.ts.map +1 -1
- package/dist/tokens/queries.js +25 -15
- package/dist/tokens/queries.js.map +1 -1
- package/dist/tokens/state/fromListsAtom.js +4 -4
- package/dist/tokens/state/fromListsAtom.js.map +1 -1
- package/dist/transactions/queries/ensureTxReceipt.d.ts +3 -2
- package/dist/transactions/queries/ensureTxReceipt.d.ts.map +1 -1
- package/dist/transactions/queries/ensureTxReceipt.js +26 -6
- package/dist/transactions/queries/ensureTxReceipt.js.map +1 -1
- package/dist/transactions/state/hooks/useTransactions.d.ts +2 -0
- package/dist/transactions/state/hooks/useTransactions.d.ts.map +1 -1
- package/dist/transactions/state/hooks/useTransactions.js +59 -1
- package/dist/transactions/state/hooks/useTransactions.js.map +1 -1
- package/package.json +5 -4
- package/dist/tokens/lists/hooks.d.ts +0 -2
- package/dist/tokens/lists/hooks.d.ts.map +0 -1
- package/dist/tokens/lists/hooks.js +0 -26
- package/dist/tokens/lists/hooks.js.map +0 -1
- package/dist/tokens/lists/state/observer.d.ts +0 -2
- package/dist/tokens/lists/state/observer.d.ts.map +0 -1
- package/dist/tokens/lists/state/observer.js +0 -18
- package/dist/tokens/lists/state/observer.js.map +0 -1
package/dist/core/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../src/core/index.tsx"],"sourcesContent":["import \"@/styles/global.css\";\n\nimport { DevTools } from \"./DevTools\"; // Jotai DevTools instantiation needs to be before jotai.createStore (even implicit with default provider)\nimport { TokenInput } from \"@/components/widget/TokenInput\";\nimport { useTokenFromInputProps } from \"./inputs/hooks/useTokenFromInputProps\";\nimport { DialogRoot } from \"@/components/widget/Dialog/DialogRoot\";\nimport { Button } from \"@/components/ui/button\";\nimport { JotaiProvider, Web3Providers } from \"@/components/web3/providers\";\nimport { useAccount } from \"wagmi\";\nimport { WIDGET_ELEMENT_ID, WIDGET_HEIGHT_CLASSNAME } from \"./constants\";\n\nimport { Updaters } from \"./Updaters\";\nimport { useTokenToInputProps } from \"./inputs/hooks/useTokenToInputProps\";\nimport { TokenSwitcher as TokenSwitcherComp } from \"@/components/widget/TokenSwitcher/TokenSwitcher\";\nimport type { WidgetProps } from \"./types\";\nimport { cn } from \"@/lib/utils\";\nimport { useSwapTokenSwitcherProps } from \"./inputs/hooks/useTokenSwitcherProps\";\n\nimport { runSubscriptions } from \"./subscriptions\";\n\nimport { PrivyIframeDependency } from \"@/components/web3/ConnectWallets/privy/iframe\";\nimport { SwapModeSwitcherExpandable } from \"@/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable\";\n\nimport { useTokenInputsFromPrice } from \"@/hooks/swap/prices/useTokenInputsFromPrice\";\nimport type { MinTradeOverviewProps } from \"@/components/widget/TradeOverview/TradeOverview\";\n\nimport type { BridgePrice, DeltaPrice, OptimalRate } from \"@velora-dex/sdk\";\nimport type { SwapMode } from \"@/components/widget/SwapModeSwitcher/state/types\";\nimport { SwapDetailsExpandable } from \"@/components/widget/Details/SwapDetailsExpandable\";\nimport { ReceiverAddress } from \"@/components/widget/ReceiverAddress/ReceiverAddress\";\nimport { useSetAtom } from \"jotai\";\nimport { useHydrateAtoms } from \"jotai/utils\";\nimport { containerAtom } from \"./state/containerAtom\";\nimport { AppHeader } from \"@/components/widget/AppHeader/AppHeader\";\nimport { useLayoutEffect } from \"react\";\nimport { defaultWidgetConfig, useWidgetConfig } from \"./state/configAtom\";\nimport { setWidgetConfigAtom } from \"./state/configActionsAtom\";\nimport { WrapEthDrawerButton } from \"@/components/widget/WrapEth/WrapEthDrawerButton\";\nimport type { WrapEthProps } from \"@/components/widget/WrapEth/hooks/types\";\nimport { useWrapEthProps } from \"@/components/widget/WrapEth/hooks/useWrapEthProps\";\nimport { PoweredBy } from \"@/components/widget/PoweredBy/PoweredBy\";\nimport { useWidgetButtonExtraProps } from \"./button/hooks/useWidgetButtonExtraProps\";\nimport { useSwapPrices } from \"@/hooks/swap/prices/useSwapPrices\";\nimport { Toaster } from \"./Toaster\";\nimport { externalProviderAtom } from \"./state/externalProviderAtom\";\nimport { AutoconnectExternalProvider } from \"@/components/web3/ConnectExternalProvider/AutoconnectExternal\";\nimport { SwapTradeFlowButton } from \"./TradeFlowButton\";\nimport { ConnectWalletDrawerButton } from \"./ConnectWalletDrawerButton\";\nimport { PriceInput } from \"@/components/widget/LimitPriceInput\";\nimport { OrderExpiryInput } from \"@/components/widget/OrderExpiryInput\";\nimport { useLimitTokenToInputProps } from \"./limit/useLimitTokenToInputProps\";\nimport { useLimitTokenFromInputProps } from \"./limit/useLimitTokenFromInputProps\";\nimport { useTradeMode } from \"./state/tradeModeAtom\";\nimport { useDrawerContainerHeightTransition } from \"@/components/widget/Drawer/state/useDrawerControls\";\nimport { InWidgetDrawerOverlay } from \"@/components/widget/Drawer/Overlay\";\nimport { LimitOrderButton } from \"./LimitOrderButton\";\nimport { LimitOrderDetails } from \"./LimitOrderDetails\";\nimport { useOtcTokenFromInputProps } from \"./otc/useOtcTokenFromInputProps\";\nimport { useOtcTokenToInputProps } from \"./otc/useOtcTokenToInputProps\";\nimport { useLimitPriceInputProps } from \"./limit/useLimitPriceInputProps\";\nimport { useOtcPriceInputProps } from \"./otc/useOtcPriceInputProps\";\nimport { OtcOrderButton } from \"./OtcOrderButton\";\nimport { OtcOrderDetails } from \"./OtcOrderDetails\";\nimport { WidgetWarning } from \"./Warnings\";\nimport { useUnsupportedLimitChain } from \"./limit/useLimitNotSupported\";\nimport { useUnsupportedOtcChain } from \"./otc/useOtcNotSupported\";\nimport { useLimitTokenSwitcherProps } from \"./limit/useLimitTokenSwitcherProps\";\nimport { useOtcTokenSwitcherProps } from \"./otc/useOtcTokenSwitcherProps\";\nimport { useSwapReceiverAddress } from \"@/components/widget/ReceiverAddress/state/receiverAddressAtom\";\nimport { useOtcReceiverAddress } from \"./otc/state/receiverAddressAtom\";\nimport {\n useWidgetEventsSetter,\n widgetEventsAtom,\n} from \"./state/widgetEventsAtom\";\nimport {\n formInputPropsAtom,\n useSetFormInputFromProps,\n} from \"./inputs/state/setTokenByAddressAtom\";\n\nrunSubscriptions();\n\nconst SwapScreen = () => {\n return (\n <>\n <SwapTokenFromInput />\n <SwapTokenSwitcher />\n <SwapTokenToInput />\n <SwapReceiverAddress />\n <WidgetWarning />\n <SwapButton />\n <SwapDetails />\n <SwapModeSwitcher />\n </>\n );\n};\n\nconst LimitOrderExtraInputs = () => {\n const priceInputProps = useLimitPriceInputProps();\n const unsupportedChain = useUnsupportedLimitChain();\n\n return (\n <div\n className={cn(\"flex gap-4 items-stretch py-2\", {\n \"pointer-events-none\": unsupportedChain,\n })}\n >\n <div className=\"flex-1\">\n <PriceInput {...priceInputProps} />\n </div>\n <div className=\"flex-1\">\n <OrderExpiryInput type=\"limit\" />\n </div>\n </div>\n );\n};\n\nconst OtcOrderExtraInputs = () => {\n const priceInputProps = useOtcPriceInputProps();\n const unsupportedChain = useUnsupportedOtcChain();\n\n return (\n <div\n className={cn(\"flex gap-4 items-stretch py-2\", {\n \"pointer-events-none\": unsupportedChain,\n })}\n >\n <div className=\"flex-1\">\n <PriceInput {...priceInputProps} />\n </div>\n <div className=\"flex-1\">\n <OrderExpiryInput type=\"otc\" />\n </div>\n </div>\n );\n};\n\nconst LimitOrderScreen = () => {\n return (\n <>\n <LimitTokenFromInput />\n <LimitTokenSwitcher />\n <LimitTokenToInput />\n <LimitOrderExtraInputs />\n <WidgetWarning />\n <LimitOrderButton />\n <LimitOrderDetails />\n </>\n );\n};\n\nconst OtcOrderScreen = () => {\n return (\n <>\n <OtcTokenFromInput />\n <OtcTokenSwitcher />\n <OtcTokenToInput />\n <OtcOrderExtraInputs />\n <OtcReceiverAddress />\n <WidgetWarning />\n <OtcOrderButton />\n <OtcOrderDetails />\n </>\n );\n};\n\nconst MainScreen = () => {\n const tradeMode = useTradeMode();\n return tradeMode === \"swap\" ? (\n <SwapScreen />\n ) : tradeMode === \"limit\" ? (\n <LimitOrderScreen />\n ) : (\n <OtcOrderScreen />\n );\n};\n\nconst App = () => {\n return (\n <Containers>\n <DialogRoot />\n <WidgetHeader />\n <MainScreen />\n <PoweredBy />\n <Toaster />\n </Containers>\n );\n};\n\nconst WidgetBase = ({\n config,\n provider,\n events,\n input: formInputProps,\n}: WidgetProps) => {\n const setWidgetConfig = useSetAtom(setWidgetConfigAtom);\n\n // hydrating with only partial config overrides values with undefined,\n // so we have default values too\n useHydrateAtoms([\n [setWidgetConfigAtom, { ...defaultWidgetConfig, ...config }],\n [externalProviderAtom, provider || null],\n [widgetEventsAtom, events || {}],\n [formInputPropsAtom, formInputProps || {}],\n ]);\n\n useWidgetEventsSetter(events);\n useSetFormInputFromProps(formInputProps);\n\n useLayoutEffect(() => {\n setWidgetConfig({\n theme: config?.theme,\n enableDelta: config?.enableDelta,\n partner: config?.partner,\n privyAppId: config?.privyAppId,\n privyClientId: config?.privyClientId,\n debug: config?.debug,\n widgetMode: config?.widgetMode,\n ignoreBadUsdPrice: config?.ignoreBadUsdPrice,\n });\n }, [\n config?.theme,\n config?.enableDelta,\n config?.partner,\n config?.privyAppId,\n config?.privyClientId,\n config?.debug,\n config?.widgetMode,\n config?.ignoreBadUsdPrice,\n setWidgetConfig,\n ]);\n\n const setExternalProvider = useSetAtom(externalProviderAtom);\n\n useLayoutEffect(() => {\n // update external provider on change\n setExternalProvider(provider || null);\n }, [provider, setExternalProvider]);\n\n return (\n <Web3Providers>\n <AutoconnectExternalProvider />\n <PrivyIframeDependency />\n <Updaters />\n <App />\n {import.meta.env.DEV && <DevTools />}\n </Web3Providers>\n );\n};\n\nexport const Widget = ({ config, provider, events, input }: WidgetProps) => {\n return (\n <JotaiProvider>\n <WidgetBase\n config={config}\n provider={provider}\n events={events}\n input={input}\n />\n </JotaiProvider>\n );\n};\n\nfunction Containers({ children }: { children: React.ReactNode }) {\n const setContainerElement = useSetAtom(containerAtom);\n const widgetConfig = useWidgetConfig();\n\n const { containerRef, isDrawerFullCover, isDrawerOpen } =\n useDrawerContainerHeightTransition();\n\n const partialDrawerOpen = isDrawerOpen && !isDrawerFullCover;\n\n return (\n <div\n ref={containerRef}\n // don't use tailwind classes on the root element, because of .velora-widget { @import tailwind/*}\n className={cn(\"velora-widget\", {\n dark: widgetConfig.theme === \"dark\",\n })}\n id={WIDGET_ELEMENT_ID}\n >\n <InWidgetDrawerOverlay open={partialDrawerOpen} />\n\n <div\n // absolutely positioned container on top of parent container with fixed height,\n // but because it's not statically positioned, it doesn't add to the whole widget height\n className={cn(\n \"overflow-hidden bottom-0 left-0 right-0 absolute\",\n WIDGET_HEIGHT_CLASSNAME\n )}\n ref={setContainerElement}\n />\n <div className=\"relative flex flex-col max-w-[460px] min-w-[375px] w-full pt-[24px] px-[24px] pb-[18px] bg-contrast-9 dark:bg-contrast-3 border border-contrast-7 dark:border-contrast-4 rounded-xxl\">\n {children}\n </div>\n </div>\n );\n}\n\nfunction WidgetHeader() {\n return <AppHeader classes={{ root: \"mb-4\" }} />;\n}\n\nfunction SwapTokenFromInput() {\n // override Token amounts based on current swap price\n const overrides = useTokenInputsFromPrice();\n\n const tokenFromInputProps = useTokenFromInputProps({\n override: overrides.tokenFromAmount,\n activeSwapMode: overrides.priceMode,\n isPriceLoading: overrides.isLoading,\n price: overrides.price,\n });\n\n return <TokenInput {...tokenFromInputProps} />;\n}\n\nfunction LimitTokenFromInput() {\n const tokenFromInputProps = useLimitTokenFromInputProps();\n return <TokenInput {...tokenFromInputProps} />;\n}\n\nfunction OtcTokenFromInput() {\n const tokenFromInputProps = useOtcTokenFromInputProps();\n return <TokenInput {...tokenFromInputProps} />;\n}\n\nfunction SwapTokenToInput() {\n // override Token amounts based on current swap price\n const overrides = useTokenInputsFromPrice();\n\n const tokenToInputProps = useTokenToInputProps({\n override: overrides.tokenToAmount,\n isPriceLoading: overrides.isLoading,\n priceMode: overrides.priceMode,\n price: overrides.price,\n priceError: overrides.error,\n });\n\n return <TokenInput {...tokenToInputProps} />;\n}\n\nfunction LimitTokenToInput() {\n const tokenToInputProps = useLimitTokenToInputProps();\n return <TokenInput {...tokenToInputProps} />;\n}\n\nfunction OtcTokenToInput() {\n const tokenToInputProps = useOtcTokenToInputProps();\n return <TokenInput {...tokenToInputProps} />;\n}\n\nfunction SwapTokenSwitcher() {\n const tokenSwitcherProps = useSwapTokenSwitcherProps();\n return <TokenSwitcherComp {...tokenSwitcherProps} />;\n}\n\nfunction LimitTokenSwitcher() {\n const tokenSwitcherProps = useLimitTokenSwitcherProps();\n return <TokenSwitcherComp {...tokenSwitcherProps} />;\n}\n\nfunction OtcTokenSwitcher() {\n const tokenSwitcherProps = useOtcTokenSwitcherProps();\n return <TokenSwitcherComp {...tokenSwitcherProps} />;\n}\n\nfunction SwapButton() {\n // override Token amounts based on current swap price\n const overrides = useTokenInputsFromPrice();\n\n const tokenFromInputProps = useTokenFromInputProps({\n override: overrides.tokenFromAmount,\n activeSwapMode: overrides.priceMode,\n isPriceLoading: overrides.isLoading,\n price: overrides.price,\n });\n const tokenToInputProps = useTokenToInputProps({\n override: overrides.tokenToAmount,\n isPriceLoading: overrides.isLoading,\n priceMode: overrides.priceMode,\n price: overrides.price,\n priceError: overrides.error,\n });\n\n const orderProps =\n tokenFromInputProps.token && tokenToInputProps.token\n ? {\n fromToken: tokenFromInputProps.token,\n toToken: tokenToInputProps.token,\n fromAmount: tokenFromInputProps.amount?.toString() ?? \"0\",\n toAmount: tokenToInputProps.amount?.toString() ?? \"0\",\n }\n : undefined;\n\n const wrapEthProps = useWrapEthProps();\n\n const extraProps = useWidgetButtonExtraProps({\n tokenFrom: tokenFromInputProps.token,\n tokenTo: tokenToInputProps.token,\n });\n\n return (\n <SwapButtonWithDrawer\n orderProps={orderProps}\n marketPrice={\n overrides.priceMode === \"market\" ? overrides.price : undefined\n }\n deltaPrice={overrides.priceMode === \"delta\" ? overrides.price : undefined}\n priceMode={overrides.priceMode}\n wrapEthProps={wrapEthProps}\n {...extraProps}\n />\n );\n}\n\nfunction SwapDetails() {\n const overrides = useTokenInputsFromPrice();\n\n const tokenFromInputProps = useTokenFromInputProps({\n override: overrides.tokenFromAmount,\n activeSwapMode: overrides.priceMode,\n isPriceLoading: overrides.isLoading,\n price: overrides.price,\n });\n const tokenToInputProps = useTokenToInputProps({\n override: overrides.tokenToAmount,\n isPriceLoading: overrides.isLoading,\n priceMode: overrides.priceMode,\n price: overrides.price,\n priceError: overrides.error,\n });\n\n const fromAmountGtZero = Number(tokenFromInputProps.amount) > 0;\n const shouldShowDetails = fromAmountGtZero && tokenToInputProps.token;\n\n return shouldShowDetails ? <SwapDetailsExpandable /> : null;\n}\n\nfunction SwapReceiverAddress() {\n const { isConnected } = useAccount();\n const shouldShowReceiverAddress = isConnected;\n const swapReceiverAddressProps = useSwapReceiverAddress();\n\n return shouldShowReceiverAddress ? (\n <ReceiverAddress\n classes={{ root: \"mt-2\" }}\n type=\"swap\"\n {...swapReceiverAddressProps}\n />\n ) : null;\n}\n\nfunction OtcReceiverAddress() {\n const unsupportedChain = useUnsupportedOtcChain();\n const otcReceiverAddressProps = useOtcReceiverAddress();\n\n return (\n <ReceiverAddress\n classes={{\n root: cn(\"mt-2\", {\n \"pointer-events-none\": unsupportedChain,\n }),\n }}\n type=\"otc\"\n {...otcReceiverAddressProps}\n />\n );\n}\n\nfunction SwapModeSwitcher() {\n const { delta, market, priceMode } = useSwapPrices({ enabled: false });\n // @TODO as on the main UI:\n // 1. Show Market MarketOffers if marketPrice can be switched to and price will fetch\n // 2. Show nothing if only one of the prices can be used\n if (delta.canBeUsed && market.canBeUsed) {\n return (\n <SwapModeSwitcherExpandable\n classes={{ root: \"mt-4\" }}\n currentEffectiveMode={priceMode}\n />\n );\n }\n}\n\ntype ButtonWithDrawerProps = React.ComponentProps<typeof Button> & {\n orderProps?: MinTradeOverviewProps;\n drawerContainer?: HTMLDivElement | null;\n marketPrice?: OptimalRate;\n deltaPrice?: DeltaPrice | BridgePrice;\n wrapEthProps: WrapEthProps;\n priceMode: SwapMode;\n labelOverride?: string;\n};\n\nfunction SwapButtonWithDrawer({\n orderProps,\n drawerContainer,\n marketPrice,\n deltaPrice,\n priceMode,\n wrapEthProps,\n labelOverride,\n ...buttonProps\n}: ButtonWithDrawerProps) {\n const { isConnected } = useAccount();\n\n if (!isConnected)\n return (\n <ConnectWalletDrawerButton\n drawerContainer={drawerContainer}\n {...buttonProps}\n />\n );\n\n if (wrapEthProps.shouldWrap)\n return (\n <WrapEthDrawerButton\n drawerContainer={drawerContainer}\n wrapEthProps={wrapEthProps}\n labelOverride={labelOverride}\n {...buttonProps}\n />\n );\n\n return (\n <SwapTradeFlowButton\n orderProps={orderProps}\n drawerContainer={drawerContainer}\n marketPrice={marketPrice}\n deltaPrice={deltaPrice}\n priceMode={priceMode}\n labelOverride={labelOverride}\n {...buttonProps}\n />\n );\n}\n"],"names":["runSubscriptions","SwapScreen","$","_c","t0","Symbol","for","LimitOrderExtraInputs","priceInputProps","useLimitPriceInputProps","unsupportedChain","useUnsupportedLimitChain","cn","t1","t2","t3","OtcOrderExtraInputs","useOtcPriceInputProps","useUnsupportedOtcChain","LimitOrderScreen","OtcOrderScreen","MainScreen","tradeMode","useTradeMode","App","WidgetBase","config","provider","events","input","formInputProps","setWidgetConfig","useSetAtom","setWidgetConfigAtom","defaultWidgetConfig","externalProviderAtom","t4","t5","widgetEventsAtom","t6","t7","formInputPropsAtom","t8","useHydrateAtoms","useWidgetEventsSetter","useSetFormInputFromProps","t9","debug","enableDelta","ignoreBadUsdPrice","partner","privyAppId","privyClientId","theme","widgetMode","t10","t11","t12","t13","t14","t15","t16","t17","t18","useLayoutEffect","setExternalProvider","t19","t20","t21","import","Widget","Containers","children","setContainerElement","containerAtom","widgetConfig","useWidgetConfig","containerRef","isDrawerFullCover","isDrawerOpen","useDrawerContainerHeightTransition","partialDrawerOpen","dark","WIDGET_HEIGHT_CLASSNAME","WIDGET_ELEMENT_ID","WidgetHeader","root","SwapTokenFromInput","overrides","useTokenInputsFromPrice","isLoading","price","priceMode","tokenFromAmount","override","activeSwapMode","isPriceLoading","tokenFromInputProps","useTokenFromInputProps","LimitTokenFromInput","useLimitTokenFromInputProps","OtcTokenFromInput","useOtcTokenFromInputProps","SwapTokenToInput","error","tokenToAmount","priceError","tokenToInputProps","useTokenToInputProps","LimitTokenToInput","useLimitTokenToInputProps","OtcTokenToInput","useOtcTokenToInputProps","SwapTokenSwitcher","tokenSwitcherProps","useSwapTokenSwitcherProps","TokenSwitcherComp","LimitTokenSwitcher","useLimitTokenSwitcherProps","OtcTokenSwitcher","useOtcTokenSwitcherProps","SwapButton","amount","token","fromToken","toToken","fromAmount","toString","toAmount","undefined","orderProps","wrapEthProps","useWrapEthProps","tokenFrom","tokenTo","extraProps","useWidgetButtonExtraProps","SwapDetails","fromAmountGtZero","Number","shouldShowDetails","SwapReceiverAddress","isConnected","useAccount","shouldShowReceiverAddress","swapReceiverAddressProps","useSwapReceiverAddress","OtcReceiverAddress","otcReceiverAddressProps","useOtcReceiverAddress","SwapModeSwitcher","enabled","delta","market","useSwapPrices","canBeUsed","SwapButtonWithDrawer","buttonProps","deltaPrice","drawerContainer","labelOverride","marketPrice","shouldWrap"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/core/index.tsx"],"sourcesContent":["import \"@/styles/global.css\";\n\nimport { DevTools } from \"./DevTools\"; // Jotai DevTools instantiation needs to be before jotai.createStore (even implicit with default provider)\nimport { TokenInput } from \"@/components/widget/TokenInput\";\nimport { useTokenFromInputProps } from \"./inputs/hooks/useTokenFromInputProps\";\nimport { DialogRoot } from \"@/components/widget/Dialog/DialogRoot\";\nimport { Button } from \"@/components/ui/button\";\nimport {\n JotaiProvider,\n QueryClientProvider,\n Web3Providers,\n} from \"@/components/web3/providers\";\nimport { useAccount } from \"wagmi\";\nimport { WIDGET_ELEMENT_ID, WIDGET_HEIGHT_CLASSNAME } from \"./constants\";\n\nimport { Updaters } from \"./Updaters\";\nimport { useTokenToInputProps } from \"./inputs/hooks/useTokenToInputProps\";\nimport { TokenSwitcher as TokenSwitcherComp } from \"@/components/widget/TokenSwitcher/TokenSwitcher\";\nimport type { WidgetProps } from \"./types\";\nimport { cn } from \"@/lib/utils\";\nimport { useSwapTokenSwitcherProps } from \"./inputs/hooks/useTokenSwitcherProps\";\n\nimport { runSubscriptions } from \"./subscriptions\";\n\nimport { PrivyIframeDependency } from \"@/components/web3/ConnectWallets/privy/iframe\";\nimport { SwapModeSwitcherExpandable } from \"@/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable\";\n\nimport { useTokenInputsFromPrice } from \"@/hooks/swap/prices/useTokenInputsFromPrice\";\nimport type { MinTradeOverviewProps } from \"@/components/widget/TradeOverview/TradeOverview\";\n\nimport type { BridgePrice, DeltaPrice, OptimalRate } from \"@velora-dex/sdk\";\nimport type { SwapMode } from \"@/components/widget/SwapModeSwitcher/state/types\";\nimport { SwapDetailsExpandable } from \"@/components/widget/Details/SwapDetailsExpandable\";\nimport { ReceiverAddress } from \"@/components/widget/ReceiverAddress/ReceiverAddress\";\nimport { useSetAtom } from \"jotai\";\nimport { useHydrateAtoms } from \"jotai/utils\";\nimport { containerAtom } from \"./state/containerAtom\";\nimport { AppHeader } from \"@/components/widget/AppHeader/AppHeader\";\nimport { useLayoutEffect } from \"react\";\nimport {\n defaultSubConfig,\n defaultWidgetConfig,\n useWidgetConfig,\n} from \"./state/configAtom\";\nimport {\n setSubConfigAtom,\n setWidgetConfigAtom,\n} from \"./state/configActionsAtom\";\nimport { WrapEthDrawerButton } from \"@/components/widget/WrapEth/WrapEthDrawerButton\";\nimport type { WrapEthProps } from \"@/components/widget/WrapEth/hooks/types\";\nimport { useWrapEthProps } from \"@/components/widget/WrapEth/hooks/useWrapEthProps\";\nimport { PoweredBy } from \"@/components/widget/PoweredBy/PoweredBy\";\nimport { useWidgetButtonExtraProps } from \"./button/hooks/useWidgetButtonExtraProps\";\nimport { useSwapPrices } from \"@/hooks/swap/prices/useSwapPrices\";\nimport { Toaster } from \"./Toaster\";\nimport { externalProviderAtom } from \"./state/externalProviderAtom\";\nimport { AutoconnectExternalProvider } from \"@/components/web3/ConnectExternalProvider/AutoconnectExternal\";\nimport { SwapTradeFlowButton } from \"./TradeFlowButton\";\nimport { ConnectWalletDrawerButton } from \"./ConnectWalletDrawerButton\";\nimport { PriceInput } from \"@/components/widget/LimitPriceInput\";\nimport { OrderExpiryInput } from \"@/components/widget/OrderExpiryInput\";\nimport { useLimitTokenToInputProps } from \"./limit/useLimitTokenToInputProps\";\nimport { useLimitTokenFromInputProps } from \"./limit/useLimitTokenFromInputProps\";\nimport { useTradeMode } from \"./state/tradeModeAtom\";\nimport { useDrawerContainerHeightTransition } from \"@/components/widget/Drawer/state/useDrawerControls\";\nimport { InWidgetDrawerOverlay } from \"@/components/widget/Drawer/Overlay\";\nimport { LimitOrderButton } from \"./LimitOrderButton\";\nimport { LimitOrderDetails } from \"./LimitOrderDetails\";\nimport { useOtcTokenFromInputProps } from \"./otc/useOtcTokenFromInputProps\";\nimport { useOtcTokenToInputProps } from \"./otc/useOtcTokenToInputProps\";\nimport { useLimitPriceInputProps } from \"./limit/useLimitPriceInputProps\";\nimport { useOtcPriceInputProps } from \"./otc/useOtcPriceInputProps\";\nimport { OtcOrderButton } from \"./OtcOrderButton\";\nimport { OtcOrderDetails } from \"./OtcOrderDetails\";\nimport { WidgetWarning } from \"./Warnings\";\nimport { useUnsupportedLimitChain } from \"./limit/useLimitNotSupported\";\nimport { useUnsupportedOtcChain } from \"./otc/useOtcNotSupported\";\nimport { useLimitTokenSwitcherProps } from \"./limit/useLimitTokenSwitcherProps\";\nimport { useOtcTokenSwitcherProps } from \"./otc/useOtcTokenSwitcherProps\";\nimport { useSwapReceiverAddress } from \"@/components/widget/ReceiverAddress/state/receiverAddressAtom\";\nimport { useOtcReceiverAddress } from \"./otc/state/receiverAddressAtom\";\nimport {\n useWidgetEventsSetter,\n widgetEventsAtom,\n} from \"./state/widgetEventsAtom\";\nimport {\n formInputPropsAtom,\n useSetFormInputFromProps,\n} from \"./inputs/state/setTokenByAddressAtom\";\nimport { queryClientAtom } from \"jotai-tanstack-query\";\nimport { useQueryClient } from \"@tanstack/react-query\";\n\nrunSubscriptions();\n\nconst SwapScreen = () => {\n return (\n <>\n <SwapTokenFromInput />\n <SwapTokenSwitcher />\n <SwapTokenToInput />\n <SwapReceiverAddress />\n <WidgetWarning />\n <SwapButton />\n <SwapDetails />\n <SwapModeSwitcher />\n </>\n );\n};\n\nconst LimitOrderExtraInputs = () => {\n const priceInputProps = useLimitPriceInputProps();\n const unsupportedChain = useUnsupportedLimitChain();\n\n return (\n <div\n className={cn(\"flex gap-4 items-stretch py-2\", {\n \"pointer-events-none\": unsupportedChain,\n })}\n >\n <div className=\"flex-1\">\n <PriceInput {...priceInputProps} />\n </div>\n <div className=\"flex-1\">\n <OrderExpiryInput type=\"limit\" />\n </div>\n </div>\n );\n};\n\nconst OtcOrderExtraInputs = () => {\n const priceInputProps = useOtcPriceInputProps();\n const unsupportedChain = useUnsupportedOtcChain();\n\n return (\n <div\n className={cn(\"flex gap-4 items-stretch py-2\", {\n \"pointer-events-none\": unsupportedChain,\n })}\n >\n <div className=\"flex-1\">\n <PriceInput {...priceInputProps} />\n </div>\n <div className=\"flex-1\">\n <OrderExpiryInput type=\"otc\" />\n </div>\n </div>\n );\n};\n\nconst LimitOrderScreen = () => {\n return (\n <>\n <LimitTokenFromInput />\n <LimitTokenSwitcher />\n <LimitTokenToInput />\n <LimitOrderExtraInputs />\n <WidgetWarning />\n <LimitOrderButton />\n <LimitOrderDetails />\n </>\n );\n};\n\nconst OtcOrderScreen = () => {\n return (\n <>\n <OtcTokenFromInput />\n <OtcTokenSwitcher />\n <OtcTokenToInput />\n <OtcOrderExtraInputs />\n <OtcReceiverAddress />\n <WidgetWarning />\n <OtcOrderButton />\n <OtcOrderDetails />\n </>\n );\n};\n\nconst MainScreen = () => {\n const tradeMode = useTradeMode();\n return tradeMode === \"swap\" ? (\n <SwapScreen />\n ) : tradeMode === \"limit\" ? (\n <LimitOrderScreen />\n ) : (\n <OtcOrderScreen />\n );\n};\n\nconst App = () => {\n return (\n <Containers>\n <DialogRoot />\n <WidgetHeader />\n <MainScreen />\n <PoweredBy />\n <Toaster />\n </Containers>\n );\n};\n\nconst WidgetBase = ({\n config: _config,\n provider,\n events,\n input: formInputProps,\n}: WidgetProps) => {\n const queryClient = useQueryClient();\n const setWidgetConfig = useSetAtom(setWidgetConfigAtom);\n const setSubConfig = useSetAtom(setSubConfigAtom);\n const { srcChains, destChains, tokenLists, tradeModes, ...config } =\n _config || {};\n\n // hydrating with only partial config overrides values with undefined,\n // so we have default values too\n useHydrateAtoms([\n [setWidgetConfigAtom, { ...defaultWidgetConfig, ...config }],\n [\n setSubConfigAtom,\n { ...defaultSubConfig, srcChains, destChains, tokenLists, tradeModes },\n ],\n [externalProviderAtom, provider || null],\n [widgetEventsAtom, events || {}],\n [formInputPropsAtom, formInputProps || {}],\n // this provider initialisation step is needed so that jotai reference the same\n // queryClient in both atomWithQuery and other parts of the app. Without this,\n // jotai will reference a different instance of queryClient\n [queryClientAtom, queryClient],\n ]);\n\n useWidgetEventsSetter(events);\n useSetFormInputFromProps(formInputProps);\n\n useLayoutEffect(() => {\n setWidgetConfig({\n theme: config.theme,\n enableDelta: config.enableDelta,\n enableCrossChain: config.enableCrossChain,\n partner: config.partner,\n privyAppId: config.privyAppId,\n privyClientId: config.privyClientId,\n debug: config.debug,\n widgetMode: config.widgetMode,\n ignoreBadUsdPrice: config.ignoreBadUsdPrice,\n });\n }, [\n config.theme,\n config.enableDelta,\n config.enableCrossChain,\n config.partner,\n config.privyAppId,\n config.privyClientId,\n config.debug,\n config.widgetMode,\n config.ignoreBadUsdPrice,\n setWidgetConfig,\n ]);\n\n useLayoutEffect(() => {\n setSubConfig({\n srcChains,\n destChains,\n tokenLists,\n tradeModes,\n });\n }, [srcChains, destChains, tokenLists, setSubConfig, tradeModes]);\n\n const setExternalProvider = useSetAtom(externalProviderAtom);\n\n useLayoutEffect(() => {\n // update external provider on change\n setExternalProvider(provider || null);\n }, [provider, setExternalProvider]);\n\n return (\n <Web3Providers>\n <AutoconnectExternalProvider />\n <PrivyIframeDependency />\n <Updaters />\n <App />\n {import.meta.env.DEV && <DevTools />}\n </Web3Providers>\n );\n};\n\nexport const Widget = ({ config, provider, events, input }: WidgetProps) => {\n return (\n <QueryClientProvider>\n <JotaiProvider>\n <WidgetBase\n config={config}\n provider={provider}\n events={events}\n input={input}\n />\n </JotaiProvider>\n </QueryClientProvider>\n );\n};\n\nfunction Containers({ children }: { children: React.ReactNode }) {\n const setContainerElement = useSetAtom(containerAtom);\n const widgetConfig = useWidgetConfig();\n\n const { containerRef, isDrawerFullCover, isDrawerOpen } =\n useDrawerContainerHeightTransition();\n\n const partialDrawerOpen = isDrawerOpen && !isDrawerFullCover;\n\n return (\n <div\n ref={containerRef}\n // don't use tailwind classes on the root element, because of .velora-widget { @import tailwind/*}\n className={cn(\"velora-widget\", {\n dark: widgetConfig.theme === \"dark\",\n })}\n id={WIDGET_ELEMENT_ID}\n >\n <InWidgetDrawerOverlay open={partialDrawerOpen} />\n\n <div\n // absolutely positioned container on top of parent container with fixed height,\n // but because it's not statically positioned, it doesn't add to the whole widget height\n className={cn(\n \"overflow-hidden bottom-0 left-0 right-0 absolute\",\n WIDGET_HEIGHT_CLASSNAME\n )}\n ref={setContainerElement}\n />\n <div className=\"relative flex flex-col max-w-[460px] min-w-[375px] w-full pt-[24px] px-[24px] pb-[18px] bg-contrast-9 dark:bg-contrast-3 border border-contrast-7 dark:border-contrast-4 rounded-xxl\">\n {children}\n </div>\n </div>\n );\n}\n\nfunction WidgetHeader() {\n return <AppHeader classes={{ root: \"mb-4\" }} />;\n}\n\nfunction SwapTokenFromInput() {\n // override Token amounts based on current swap price\n const overrides = useTokenInputsFromPrice();\n\n const tokenFromInputProps = useTokenFromInputProps({\n override: overrides.tokenFromAmount,\n activeSwapMode: overrides.priceMode,\n isPriceLoading: overrides.isLoading,\n price: overrides.price,\n });\n\n return <TokenInput {...tokenFromInputProps} />;\n}\n\nfunction LimitTokenFromInput() {\n const tokenFromInputProps = useLimitTokenFromInputProps();\n return <TokenInput {...tokenFromInputProps} />;\n}\n\nfunction OtcTokenFromInput() {\n const tokenFromInputProps = useOtcTokenFromInputProps();\n return <TokenInput {...tokenFromInputProps} />;\n}\n\nfunction SwapTokenToInput() {\n // override Token amounts based on current swap price\n const overrides = useTokenInputsFromPrice();\n\n const tokenToInputProps = useTokenToInputProps({\n override: overrides.tokenToAmount,\n isPriceLoading: overrides.isLoading,\n priceMode: overrides.priceMode,\n price: overrides.price,\n priceError: overrides.error,\n });\n\n return <TokenInput {...tokenToInputProps} />;\n}\n\nfunction LimitTokenToInput() {\n const tokenToInputProps = useLimitTokenToInputProps();\n return <TokenInput {...tokenToInputProps} />;\n}\n\nfunction OtcTokenToInput() {\n const tokenToInputProps = useOtcTokenToInputProps();\n return <TokenInput {...tokenToInputProps} />;\n}\n\nfunction SwapTokenSwitcher() {\n const tokenSwitcherProps = useSwapTokenSwitcherProps();\n return <TokenSwitcherComp {...tokenSwitcherProps} />;\n}\n\nfunction LimitTokenSwitcher() {\n const tokenSwitcherProps = useLimitTokenSwitcherProps();\n return <TokenSwitcherComp {...tokenSwitcherProps} />;\n}\n\nfunction OtcTokenSwitcher() {\n const tokenSwitcherProps = useOtcTokenSwitcherProps();\n return <TokenSwitcherComp {...tokenSwitcherProps} />;\n}\n\nfunction SwapButton() {\n // override Token amounts based on current swap price\n const overrides = useTokenInputsFromPrice();\n\n const tokenFromInputProps = useTokenFromInputProps({\n override: overrides.tokenFromAmount,\n activeSwapMode: overrides.priceMode,\n isPriceLoading: overrides.isLoading,\n price: overrides.price,\n });\n const tokenToInputProps = useTokenToInputProps({\n override: overrides.tokenToAmount,\n isPriceLoading: overrides.isLoading,\n priceMode: overrides.priceMode,\n price: overrides.price,\n priceError: overrides.error,\n });\n\n const orderProps =\n tokenFromInputProps.token && tokenToInputProps.token\n ? {\n fromToken: tokenFromInputProps.token,\n toToken: tokenToInputProps.token,\n fromAmount: tokenFromInputProps.amount,\n toAmount: tokenToInputProps.amount,\n }\n : undefined;\n\n const wrapEthProps = useWrapEthProps();\n\n const extraProps = useWidgetButtonExtraProps({\n tokenFrom: tokenFromInputProps.token,\n tokenTo: tokenToInputProps.token,\n });\n\n return (\n <SwapButtonWithDrawer\n orderProps={orderProps}\n marketPrice={\n overrides.priceMode === \"market\" ? overrides.price : undefined\n }\n deltaPrice={overrides.priceMode === \"delta\" ? overrides.price : undefined}\n priceMode={overrides.priceMode}\n wrapEthProps={wrapEthProps}\n {...extraProps}\n />\n );\n}\n\nfunction SwapDetails() {\n const overrides = useTokenInputsFromPrice();\n\n const tokenFromInputProps = useTokenFromInputProps({\n override: overrides.tokenFromAmount,\n activeSwapMode: overrides.priceMode,\n isPriceLoading: overrides.isLoading,\n price: overrides.price,\n });\n const tokenToInputProps = useTokenToInputProps({\n override: overrides.tokenToAmount,\n isPriceLoading: overrides.isLoading,\n priceMode: overrides.priceMode,\n price: overrides.price,\n priceError: overrides.error,\n });\n\n const fromAmountGtZero = Number(tokenFromInputProps.amount) > 0;\n const shouldShowDetails = fromAmountGtZero && tokenToInputProps.token;\n\n return shouldShowDetails ? <SwapDetailsExpandable /> : null;\n}\n\nfunction SwapReceiverAddress() {\n const { isConnected } = useAccount();\n const shouldShowReceiverAddress = isConnected;\n const swapReceiverAddressProps = useSwapReceiverAddress();\n\n return shouldShowReceiverAddress ? (\n <ReceiverAddress\n classes={{ root: \"mt-2\" }}\n type=\"swap\"\n {...swapReceiverAddressProps}\n />\n ) : null;\n}\n\nfunction OtcReceiverAddress() {\n const unsupportedChain = useUnsupportedOtcChain();\n const otcReceiverAddressProps = useOtcReceiverAddress();\n\n return (\n <ReceiverAddress\n classes={{\n root: cn(\"mt-2\", {\n \"pointer-events-none\": unsupportedChain,\n }),\n }}\n type=\"otc\"\n {...otcReceiverAddressProps}\n />\n );\n}\n\nfunction SwapModeSwitcher() {\n const { delta, market, priceMode } = useSwapPrices({ enabled: false });\n // @TODO as on the main UI:\n // 1. Show Market MarketOffers if marketPrice can be switched to and price will fetch\n // 2. Show nothing if only one of the prices can be used\n if (delta.canBeUsed && market.canBeUsed) {\n return (\n <SwapModeSwitcherExpandable\n classes={{ root: \"mt-4\" }}\n currentEffectiveMode={priceMode}\n />\n );\n }\n}\n\ntype ButtonWithDrawerProps = React.ComponentProps<typeof Button> & {\n orderProps?: MinTradeOverviewProps;\n drawerContainer?: HTMLDivElement | null;\n marketPrice?: OptimalRate;\n deltaPrice?: DeltaPrice | BridgePrice;\n wrapEthProps: WrapEthProps;\n priceMode: SwapMode;\n labelOverride?: string;\n};\n\nfunction SwapButtonWithDrawer({\n orderProps,\n drawerContainer,\n marketPrice,\n deltaPrice,\n priceMode,\n wrapEthProps,\n labelOverride,\n ...buttonProps\n}: ButtonWithDrawerProps) {\n const { isConnected } = useAccount();\n\n if (!isConnected)\n return (\n <ConnectWalletDrawerButton\n drawerContainer={drawerContainer}\n {...buttonProps}\n />\n );\n\n if (wrapEthProps.shouldWrap)\n return (\n <WrapEthDrawerButton\n drawerContainer={drawerContainer}\n wrapEthProps={wrapEthProps}\n labelOverride={labelOverride}\n {...buttonProps}\n />\n );\n\n return (\n <SwapTradeFlowButton\n orderProps={orderProps}\n drawerContainer={drawerContainer}\n marketPrice={marketPrice}\n deltaPrice={deltaPrice}\n priceMode={priceMode}\n labelOverride={labelOverride}\n {...buttonProps}\n />\n );\n}\n"],"names":["runSubscriptions","SwapScreen","$","_c","t0","Symbol","for","LimitOrderExtraInputs","priceInputProps","useLimitPriceInputProps","unsupportedChain","useUnsupportedLimitChain","cn","t1","t2","t3","OtcOrderExtraInputs","useOtcPriceInputProps","useUnsupportedOtcChain","LimitOrderScreen","OtcOrderScreen","MainScreen","tradeMode","useTradeMode","App","WidgetBase","config","_config","provider","events","input","formInputProps","queryClient","useQueryClient","setWidgetConfig","useSetAtom","setWidgetConfigAtom","setSubConfig","setSubConfigAtom","destChains","srcChains","tokenLists","tradeModes","defaultWidgetConfig","defaultSubConfig","t4","t5","externalProviderAtom","t6","t7","widgetEventsAtom","t8","t9","formInputPropsAtom","t10","queryClientAtom","t11","useHydrateAtoms","useWidgetEventsSetter","useSetFormInputFromProps","t12","t13","debug","enableCrossChain","enableDelta","ignoreBadUsdPrice","partner","privyAppId","privyClientId","theme","widgetMode","useLayoutEffect","t14","t15","setExternalProvider","t16","t17","t18","import","Widget","Containers","children","setContainerElement","containerAtom","widgetConfig","useWidgetConfig","containerRef","isDrawerFullCover","isDrawerOpen","useDrawerContainerHeightTransition","partialDrawerOpen","dark","WIDGET_HEIGHT_CLASSNAME","WIDGET_ELEMENT_ID","WidgetHeader","root","SwapTokenFromInput","overrides","useTokenInputsFromPrice","isLoading","price","priceMode","tokenFromAmount","override","activeSwapMode","isPriceLoading","tokenFromInputProps","useTokenFromInputProps","LimitTokenFromInput","useLimitTokenFromInputProps","OtcTokenFromInput","useOtcTokenFromInputProps","SwapTokenToInput","error","tokenToAmount","priceError","tokenToInputProps","useTokenToInputProps","LimitTokenToInput","useLimitTokenToInputProps","OtcTokenToInput","useOtcTokenToInputProps","SwapTokenSwitcher","tokenSwitcherProps","useSwapTokenSwitcherProps","TokenSwitcherComp","LimitTokenSwitcher","useLimitTokenSwitcherProps","OtcTokenSwitcher","useOtcTokenSwitcherProps","SwapButton","amount","token","fromToken","toToken","fromAmount","toAmount","undefined","orderProps","wrapEthProps","useWrapEthProps","tokenFrom","tokenTo","extraProps","useWidgetButtonExtraProps","SwapDetails","fromAmountGtZero","Number","shouldShowDetails","SwapReceiverAddress","isConnected","useAccount","shouldShowReceiverAddress","swapReceiverAddressProps","useSwapReceiverAddress","OtcReceiverAddress","otcReceiverAddressProps","useOtcReceiverAddress","SwapModeSwitcher","enabled","delta","market","useSwapPrices","canBeUsed","SwapButtonWithDrawer","buttonProps","deltaPrice","drawerContainer","labelOverride","marketPrice","shouldWrap"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { TokenInputProps } from '../../../components/widget/TokenInput/types';
|
|
2
2
|
export type TokenInputAmountProps = Pick<TokenInputProps, "amount" | "onAmountChange" | "token" | "readOnly" | "usdEstimation" | "tokenBalanceUnit">;
|
|
3
|
-
export type TokenInputExtraProps = Pick<TokenInputProps, "networkSwitcherProps" | "tokenType" | "onFocus" | "label" | "isLoading" | "warningMessage">;
|
|
3
|
+
export type TokenInputExtraProps = Pick<TokenInputProps, "networkSwitcherProps" | "tokenType" | "onFocus" | "label" | "isLoading" | "warningMessage" | "disabled">;
|
|
4
4
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/hooks/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAE5E,MAAM,MAAM,qBAAqB,GAAG,IAAI,CACtC,eAAe,EACb,QAAQ,GACR,gBAAgB,GAChB,OAAO,GACP,UAAU,GACV,eAAe,GACf,kBAAkB,CACrB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,IAAI,CACrC,eAAe,EACb,sBAAsB,GACtB,WAAW,GACX,SAAS,GACT,OAAO,GACP,WAAW,GACX,gBAAgB,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/hooks/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAE5E,MAAM,MAAM,qBAAqB,GAAG,IAAI,CACtC,eAAe,EACb,QAAQ,GACR,gBAAgB,GAChB,OAAO,GACP,UAAU,GACV,eAAe,GACf,kBAAkB,CACrB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,IAAI,CACrC,eAAe,EACb,sBAAsB,GACtB,WAAW,GACX,SAAS,GACT,OAAO,GACP,WAAW,GACX,gBAAgB,GAChB,UAAU,CACb,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTokenFromInputProps.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/hooks/useTokenFromInputProps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"useTokenFromInputProps.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/hooks/useTokenFromInputProps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAO5E,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,kDAAkD,CAAC;AAUjF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAWpE,KAAK,sBAAsB,GAAG;IAC5B,QAAQ,CAAC,EAAE;QACT,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,cAAc,EAAE,QAAQ,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,KAAK,CAAC,EAAE,kBAAkB,CAAC;CAC5B,CAAC;AA4JF,eAAO,MAAM,sBAAsB,GAAI,sDAKpC,sBAAsB,KAAG,eAmC3B,CAAC"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
2
2
|
import { d as distExports } from '../../../_virtual/index.js';
|
|
3
3
|
import { useSwapTokenFrom } from '../state/selectedTokenAtom.js';
|
|
4
|
-
import {
|
|
5
|
-
import { useChainId, useSwitchChain } from 'wagmi';
|
|
4
|
+
import { useChainId } from 'wagmi';
|
|
6
5
|
import { useSetAtom, useAtom } from 'jotai';
|
|
7
6
|
import { payInputAmountAtom } from '../state/inputAmountAtom.js';
|
|
8
7
|
import { useGenericTokenAllowance } from '../../../hooks/tokens/allowance/useGenericTokenAllowance.js';
|
|
@@ -18,8 +17,9 @@ import Big from 'big.js';
|
|
|
18
17
|
import { toDecimalTrimmed } from '../../../lib/utils/toDecimal.js';
|
|
19
18
|
import { useLogger } from '../../logger.js';
|
|
20
19
|
import { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from '../../../lib/constants/time.js';
|
|
21
|
-
import { useConnectedSafe } from '../../../hooks/connectors/useIsConnectedSafe.js';
|
|
22
20
|
import { selectSwapTokenFromAtom } from '../state/selectedTokenActionsAtom.js';
|
|
21
|
+
import { useEnabledSrcChains } from '../../state/enabledChainsAtom.js';
|
|
22
|
+
import { switchChain } from '../../../lib/web3/wagmi/switchChain.js';
|
|
23
23
|
|
|
24
24
|
const useTokenFromAmountProps = (t0) => {
|
|
25
25
|
const $ = distExports.c(11);
|
|
@@ -248,7 +248,7 @@ const useMaxButtonProps = (t0) => {
|
|
|
248
248
|
return t4;
|
|
249
249
|
};
|
|
250
250
|
const useExtraProps = (t0) => {
|
|
251
|
-
const $ = distExports.c(
|
|
251
|
+
const $ = distExports.c(14);
|
|
252
252
|
let t1;
|
|
253
253
|
if ($[0] !== t0) {
|
|
254
254
|
t1 = t0 === void 0 ? {} : t0;
|
|
@@ -261,67 +261,55 @@ const useExtraProps = (t0) => {
|
|
|
261
261
|
isPriceLoading
|
|
262
262
|
} = t1;
|
|
263
263
|
const appChainId = useChainId();
|
|
264
|
-
const {
|
|
265
|
-
switchChain
|
|
266
|
-
} = useSwitchChain();
|
|
267
264
|
const setCurrentInput = useSetAtom(currentSwapInputAtom);
|
|
268
265
|
const side = useSwapSide();
|
|
269
266
|
const isLoading = isPriceLoading && side === "BUY";
|
|
270
|
-
const
|
|
271
|
-
|
|
272
|
-
if ($[2] !== switchChain) {
|
|
273
|
-
t2 = (chainId) => chainId !== "all" && switchChain({
|
|
274
|
-
chainId
|
|
275
|
-
});
|
|
276
|
-
$[2] = switchChain;
|
|
277
|
-
$[3] = t2;
|
|
278
|
-
} else {
|
|
279
|
-
t2 = $[3];
|
|
280
|
-
}
|
|
267
|
+
const enabledSrcChains = useEnabledSrcChains();
|
|
268
|
+
const t2 = enabledSrcChains.length <= 1;
|
|
281
269
|
let t3;
|
|
282
|
-
if ($[
|
|
270
|
+
if ($[2] !== appChainId || $[3] !== enabledSrcChains || $[4] !== t2) {
|
|
283
271
|
t3 = {
|
|
284
|
-
networks:
|
|
272
|
+
networks: enabledSrcChains,
|
|
285
273
|
selectedNetwork: appChainId,
|
|
286
274
|
allOption: false,
|
|
287
|
-
onSelect:
|
|
288
|
-
disabled:
|
|
275
|
+
onSelect: _temp,
|
|
276
|
+
disabled: t2
|
|
289
277
|
};
|
|
290
|
-
$[
|
|
291
|
-
$[
|
|
292
|
-
$[
|
|
293
|
-
$[
|
|
278
|
+
$[2] = appChainId;
|
|
279
|
+
$[3] = enabledSrcChains;
|
|
280
|
+
$[4] = t2;
|
|
281
|
+
$[5] = t3;
|
|
294
282
|
} else {
|
|
295
|
-
t3 = $[
|
|
283
|
+
t3 = $[5];
|
|
296
284
|
}
|
|
297
285
|
let t4;
|
|
298
|
-
if ($[
|
|
286
|
+
if ($[6] !== setCurrentInput) {
|
|
299
287
|
t4 = () => setCurrentInput("from");
|
|
300
|
-
$[
|
|
301
|
-
$[
|
|
288
|
+
$[6] = setCurrentInput;
|
|
289
|
+
$[7] = t4;
|
|
302
290
|
} else {
|
|
303
|
-
t4 = $[
|
|
291
|
+
t4 = $[7];
|
|
304
292
|
}
|
|
305
293
|
let t5;
|
|
306
|
-
if ($[
|
|
294
|
+
if ($[8] === Symbol.for("react.memo_cache_sentinel")) {
|
|
307
295
|
t5 = /* @__PURE__ */ jsx("span", { children: "Pay" });
|
|
308
|
-
$[
|
|
296
|
+
$[8] = t5;
|
|
309
297
|
} else {
|
|
310
|
-
t5 = $[
|
|
298
|
+
t5 = $[8];
|
|
311
299
|
}
|
|
312
300
|
let t6;
|
|
313
|
-
if ($[
|
|
301
|
+
if ($[9] === Symbol.for("react.memo_cache_sentinel")) {
|
|
314
302
|
t6 = /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
315
303
|
t5,
|
|
316
304
|
" ",
|
|
317
305
|
/* @__PURE__ */ jsx("span", { className: "text-contrast-5", children: "on" })
|
|
318
306
|
] });
|
|
319
|
-
$[
|
|
307
|
+
$[9] = t6;
|
|
320
308
|
} else {
|
|
321
|
-
t6 = $[
|
|
309
|
+
t6 = $[9];
|
|
322
310
|
}
|
|
323
311
|
let t7;
|
|
324
|
-
if ($[
|
|
312
|
+
if ($[10] !== isLoading || $[11] !== t3 || $[12] !== t4) {
|
|
325
313
|
t7 = {
|
|
326
314
|
networkSwitcherProps: t3,
|
|
327
315
|
tokenType: "from",
|
|
@@ -329,12 +317,12 @@ const useExtraProps = (t0) => {
|
|
|
329
317
|
label: t6,
|
|
330
318
|
isLoading
|
|
331
319
|
};
|
|
332
|
-
$[
|
|
333
|
-
$[
|
|
334
|
-
$[
|
|
335
|
-
$[
|
|
320
|
+
$[10] = isLoading;
|
|
321
|
+
$[11] = t3;
|
|
322
|
+
$[12] = t4;
|
|
323
|
+
$[13] = t7;
|
|
336
324
|
} else {
|
|
337
|
-
t7 = $[
|
|
325
|
+
t7 = $[13];
|
|
338
326
|
}
|
|
339
327
|
return t7;
|
|
340
328
|
};
|
|
@@ -453,6 +441,11 @@ const useTokenFromInputProps = (t0) => {
|
|
|
453
441
|
}
|
|
454
442
|
return t8;
|
|
455
443
|
};
|
|
444
|
+
function _temp(chainId) {
|
|
445
|
+
return chainId !== "all" && switchChain({
|
|
446
|
+
chainId
|
|
447
|
+
});
|
|
448
|
+
}
|
|
456
449
|
|
|
457
450
|
export { useTokenFromInputProps };
|
|
458
451
|
//# sourceMappingURL=useTokenFromInputProps.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTokenFromInputProps.js","sources":["../../../../src/core/inputs/hooks/useTokenFromInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\n\nimport { useSwapTokenFrom } from \"../state/selectedTokenAtom\";\nimport { supportedChainIds } from \"@/lib/web3/wagmi/constants\";\nimport { useChainId, useSwitchChain } from \"wagmi\";\nimport { useAtom, useSetAtom } from \"jotai\";\nimport { payInputAmountAtom } from \"../state/inputAmountAtom\";\nimport { useGenericTokenAllowance } from \"@/hooks/tokens/allowance/useGenericTokenAllowance\";\nimport { type SwapMode } from \"@/components/widget/SwapModeSwitcher/state/types\";\nimport { swapModeToSpender } from \"@/core/constants\";\nimport { useIsTokenFromInsufficientBalance } from \"@/hooks/tokens/balances/useIsInsufficientTokenBalance\";\nimport { parseUnits, formatUnits } from \"viem\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { useSwapSide } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { currentSwapInputAtom } from \"@/core/state/currentSwapInputAtom\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { isETH } from \"@/tokens/utils/eth\";\nimport { useGasPrices } from \"@/hooks/gas/useGasPrices\";\nimport type { DeltaOrMarketPrice } from \"@/hooks/swap/prices/types\";\nimport Big from \"big.js\";\nimport type { MarkRequired } from \"ts-essentials\";\nimport type { TokenInputExtraProps, TokenInputAmountProps } from \"./types\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useLogger } from \"@/core/logger\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { useConnectedSafe } from \"@/hooks/connectors/useIsConnectedSafe\";\nimport { selectSwapTokenFromAtom } from \"../state/selectedTokenActionsAtom\";\n\ntype UseTokenFromInputInput = {\n override?: {\n amountWei?: string;\n };\n activeSwapMode: SwapMode;\n isPriceLoading?: boolean;\n price?: DeltaOrMarketPrice;\n};\n\nconst useTokenFromAmountProps = ({\n price,\n}: { price?: DeltaOrMarketPrice } = {}): MarkRequired<\n TokenInputAmountProps,\n \"token\"\n> => {\n const logger = useLogger(\"Swap::TokenFrom::AmountProps\");\n const tokenFrom = useSwapTokenFrom();\n\n const [amountValue, setAmountValue] = useAtom(payInputAmountAtom);\n\n const tokenBalanceUnit = useTokenFromBalanceUnit();\n\n return {\n amount: amountValue,\n tokenBalanceUnit,\n token: tokenFrom,\n usdEstimation: price?.srcUSD,\n onAmountChange: (values) => {\n logger.log(\"onAmountChange::values\", values);\n setAmountValue(values.value);\n },\n };\n};\n\nconst useTokenFromBalanceUnit = () => {\n const tokenFrom = useSwapTokenFrom();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenFrom,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\ntype UseTokenConditionalPropsInput = {\n amountWei: string;\n swapMode: SwapMode;\n tokenFrom: Token;\n};\n\nconst useTokenConditionalProps = ({\n amountWei,\n swapMode,\n tokenFrom,\n}: UseTokenConditionalPropsInput): Required<\n Pick<\n TokenInputProps,\n \"insufficientBalanceMessageProps\" | \"tokenBadgePropsOverride\"\n >\n> => {\n const tokenAllowance = useGenericTokenAllowance({\n token: tokenFrom,\n spenderContractType: swapModeToSpender[swapMode],\n amountToApproveInWei: amountWei,\n });\n\n const isInsufficientBalance = useIsTokenFromInsufficientBalance(\"swap\");\n\n return {\n tokenBadgePropsOverride: {\n lockIcon: !isInsufficientBalance && tokenAllowance.needsApproval,\n },\n insufficientBalanceMessageProps: {\n token: tokenFrom,\n shouldDisplay: isInsufficientBalance,\n },\n };\n};\n\nconst useMaxButtonProps = ({\n price,\n tokenFrom,\n}: {\n price?: DeltaOrMarketPrice;\n tokenFrom: Token;\n}) => {\n const setCurrentSwapInput = useSetAtom(currentSwapInputAtom);\n const setPayInputAmount = useSetAtom(payInputAmountAtom);\n\n const { balanceUnit } = useTokenBalance({\n token: tokenFrom,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n const { data: gasPrices } = useGasPrices();\n\n const hasBalance = !!balanceUnit && balanceUnit !== \"0\";\n const showMaxButton = hasBalance && (!isETH(tokenFrom) || !!price);\n\n return {\n showMaxButton,\n onMaxClick: () => {\n setCurrentSwapInput(\"from\");\n\n if (hasBalance) {\n if (!isETH(tokenFrom)) {\n setPayInputAmount(balanceUnit);\n return;\n }\n\n const gasCost = price?.gasCost; // gasLimit\n const gasPriceMultiplier = gasPrices?.legacyPrices.instant;\n\n if (gasCost && gasPriceMultiplier) {\n const gasFeeETH = Big(gasCost)\n // have to add extra 200k because instant multiplier is not accurate enough\n .plus(200000)\n .mul(gasPriceMultiplier)\n .div(1e9);\n const balanceWithDeductedGas = Big(balanceUnit).minus(gasFeeETH);\n\n setPayInputAmount(balanceWithDeductedGas.toString());\n }\n }\n },\n };\n};\n\nconst useExtraProps = ({\n isPriceLoading,\n}: {\n isPriceLoading?: boolean;\n} = {}): TokenInputExtraProps => {\n const appChainId = useChainId();\n\n const { switchChain } = useSwitchChain();\n\n const setCurrentInput = useSetAtom(currentSwapInputAtom);\n\n const side = useSwapSide();\n\n // BUYing and price is loading = tokenFrom input will receive srcAmount\n const isLoading = isPriceLoading && side === \"BUY\";\n\n const isSafe = useConnectedSafe();\n\n return {\n networkSwitcherProps: {\n networks: supportedChainIds,\n selectedNetwork: appChainId,\n allOption: false,\n onSelect: (chainId) => chainId !== \"all\" && switchChain({ chainId }),\n disabled: isSafe,\n },\n tokenType: \"from\" as const,\n onFocus: () => setCurrentInput(\"from\"),\n label: (\n <>\n <span>Pay</span> <span className=\"text-contrast-5\">on</span>\n </>\n ),\n isLoading,\n };\n};\n\nexport const useTokenFromInputProps = ({\n activeSwapMode,\n override,\n isPriceLoading,\n price,\n}: UseTokenFromInputInput): TokenInputProps => {\n const tokenFromAmounts = useTokenFromAmountProps({\n price,\n });\n const tokenFrom = tokenFromAmounts.token;\n\n const amountWei =\n override?.amountWei ??\n parseUnits(tokenFromAmounts.amount, tokenFrom.decimals).toString();\n\n const amount = override?.amountWei\n ? formatUnits(BigInt(override.amountWei), tokenFrom.decimals)\n : tokenFromAmounts.amount;\n\n const tokenConditionalProps = useTokenConditionalProps({\n amountWei,\n swapMode: activeSwapMode,\n tokenFrom: tokenFrom,\n });\n const extraProps = useExtraProps({ isPriceLoading });\n const maxButtonProps = useMaxButtonProps({ price, tokenFrom });\n\n const setTokenFrom = useSetAtom(selectSwapTokenFromAtom);\n const onTokenSelect = (newTokenFrom: Token) => {\n setTokenFrom(newTokenFrom);\n };\n\n return {\n ...tokenFromAmounts,\n amount,\n ...tokenConditionalProps,\n ...extraProps,\n ...maxButtonProps,\n onTokenSelect,\n };\n};\n"],"names":["useTokenFromAmountProps","t0","$","_c","t1","undefined","price","logger","useLogger","tokenFrom","useSwapTokenFrom","amountValue","setAmountValue","useAtom","payInputAmountAtom","tokenBalanceUnit","useTokenFromBalanceUnit","t2","srcUSD","t3","values","log","value","t4","amount","token","usdEstimation","onAmountChange","Symbol","for","refetchInterval","MEDIUM_STALE_TIME_FOR_REACTIVENESS","queryOptions","balanceUnit","useTokenBalance","toDecimalTrimmed","useTokenConditionalProps","amountWei","swapMode","swapModeToSpender","spenderContractType","amountToApproveInWei","tokenAllowance","useGenericTokenAllowance","isInsufficientBalance","useIsTokenFromInsufficientBalance","needsApproval","lockIcon","t5","shouldDisplay","t6","tokenBadgePropsOverride","insufficientBalanceMessageProps","useMaxButtonProps","setCurrentSwapInput","useSetAtom","currentSwapInputAtom","setPayInputAmount","data","gasPrices","useGasPrices","hasBalance","showMaxButton","isETH","legacyPrices","gasCost","gasPriceMultiplier","instant","gasFeeETH","Big","plus","mul","div","balanceWithDeductedGas","minus","toString","onMaxClick","useExtraProps","isPriceLoading","appChainId","useChainId","switchChain","useSwitchChain","setCurrentInput","side","useSwapSide","isLoading","isSafe","useConnectedSafe","chainId","networks","supportedChainIds","selectedNetwork","allOption","onSelect","disabled","t7","networkSwitcherProps","tokenType","onFocus","label","useTokenFromInputProps","activeSwapMode","override","tokenFromAmounts","parseUnits","decimals","formatUnits","BigInt","tokenConditionalProps","extraProps","maxButtonProps","setTokenFrom","selectSwapTokenFromAtom","newTokenFrom","onTokenSelect","t8"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useTokenFromInputProps.js","sources":["../../../../src/core/inputs/hooks/useTokenFromInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\n\nimport { useSwapTokenFrom } from \"../state/selectedTokenAtom\";\nimport { useChainId } from \"wagmi\";\nimport { useAtom, useSetAtom } from \"jotai\";\nimport { payInputAmountAtom } from \"../state/inputAmountAtom\";\nimport { useGenericTokenAllowance } from \"@/hooks/tokens/allowance/useGenericTokenAllowance\";\nimport { type SwapMode } from \"@/components/widget/SwapModeSwitcher/state/types\";\nimport { swapModeToSpender } from \"@/core/constants\";\nimport { useIsTokenFromInsufficientBalance } from \"@/hooks/tokens/balances/useIsInsufficientTokenBalance\";\nimport { parseUnits, formatUnits } from \"viem\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { useSwapSide } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { currentSwapInputAtom } from \"@/core/state/currentSwapInputAtom\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { isETH } from \"@/tokens/utils/eth\";\nimport { useGasPrices } from \"@/hooks/gas/useGasPrices\";\nimport type { DeltaOrMarketPrice } from \"@/hooks/swap/prices/types\";\nimport Big from \"big.js\";\nimport type { MarkRequired } from \"ts-essentials\";\nimport type { TokenInputExtraProps, TokenInputAmountProps } from \"./types\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useLogger } from \"@/core/logger\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { selectSwapTokenFromAtom } from \"../state/selectedTokenActionsAtom\";\nimport { useEnabledSrcChains } from \"@/core/state/enabledChainsAtom\";\nimport { switchChain } from \"@/lib/web3/wagmi/switchChain\";\n\ntype UseTokenFromInputInput = {\n override?: {\n amountWei?: string;\n };\n activeSwapMode: SwapMode;\n isPriceLoading?: boolean;\n price?: DeltaOrMarketPrice;\n};\n\nconst useTokenFromAmountProps = ({\n price,\n}: { price?: DeltaOrMarketPrice } = {}): MarkRequired<\n TokenInputAmountProps,\n \"token\"\n> => {\n const logger = useLogger(\"Swap::TokenFrom::AmountProps\");\n const tokenFrom = useSwapTokenFrom();\n\n const [amountValue, setAmountValue] = useAtom(payInputAmountAtom);\n\n const tokenBalanceUnit = useTokenFromBalanceUnit();\n\n return {\n amount: amountValue,\n tokenBalanceUnit,\n token: tokenFrom,\n usdEstimation: price?.srcUSD,\n onAmountChange: (values) => {\n logger.log(\"onAmountChange::values\", values);\n setAmountValue(values.value);\n },\n };\n};\n\nconst useTokenFromBalanceUnit = () => {\n const tokenFrom = useSwapTokenFrom();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenFrom,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\ntype UseTokenConditionalPropsInput = {\n amountWei: string;\n swapMode: SwapMode;\n tokenFrom: Token;\n};\n\nconst useTokenConditionalProps = ({\n amountWei,\n swapMode,\n tokenFrom,\n}: UseTokenConditionalPropsInput): Required<\n Pick<\n TokenInputProps,\n \"insufficientBalanceMessageProps\" | \"tokenBadgePropsOverride\"\n >\n> => {\n const tokenAllowance = useGenericTokenAllowance({\n token: tokenFrom,\n spenderContractType: swapModeToSpender[swapMode],\n amountToApproveInWei: amountWei,\n });\n\n const isInsufficientBalance = useIsTokenFromInsufficientBalance(\"swap\");\n\n return {\n tokenBadgePropsOverride: {\n lockIcon: !isInsufficientBalance && tokenAllowance.needsApproval,\n },\n insufficientBalanceMessageProps: {\n token: tokenFrom,\n shouldDisplay: isInsufficientBalance,\n },\n };\n};\n\nconst useMaxButtonProps = ({\n price,\n tokenFrom,\n}: {\n price?: DeltaOrMarketPrice;\n tokenFrom: Token;\n}) => {\n const setCurrentSwapInput = useSetAtom(currentSwapInputAtom);\n const setPayInputAmount = useSetAtom(payInputAmountAtom);\n\n const { balanceUnit } = useTokenBalance({\n token: tokenFrom,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n const { data: gasPrices } = useGasPrices();\n\n const hasBalance = !!balanceUnit && balanceUnit !== \"0\";\n const showMaxButton = hasBalance && (!isETH(tokenFrom) || !!price);\n\n return {\n showMaxButton,\n onMaxClick: () => {\n setCurrentSwapInput(\"from\");\n\n if (hasBalance) {\n if (!isETH(tokenFrom)) {\n setPayInputAmount(balanceUnit);\n return;\n }\n\n const gasCost = price?.gasCost; // gasLimit\n const gasPriceMultiplier = gasPrices?.legacyPrices.instant;\n\n if (gasCost && gasPriceMultiplier) {\n const gasFeeETH = Big(gasCost)\n // have to add extra 200k because instant multiplier is not accurate enough\n .plus(200000)\n .mul(gasPriceMultiplier)\n .div(1e9);\n const balanceWithDeductedGas = Big(balanceUnit).minus(gasFeeETH);\n\n setPayInputAmount(balanceWithDeductedGas.toString());\n }\n }\n },\n };\n};\n\nconst useExtraProps = ({\n isPriceLoading,\n}: {\n isPriceLoading?: boolean;\n} = {}): TokenInputExtraProps => {\n const appChainId = useChainId();\n\n const setCurrentInput = useSetAtom(currentSwapInputAtom);\n\n const side = useSwapSide();\n\n // BUYing and price is loading = tokenFrom input will receive srcAmount\n const isLoading = isPriceLoading && side === \"BUY\";\n const enabledSrcChains = useEnabledSrcChains();\n\n return {\n networkSwitcherProps: {\n networks: enabledSrcChains,\n selectedNetwork: appChainId,\n allOption: false,\n onSelect: (chainId) => chainId !== \"all\" && switchChain({ chainId }),\n disabled: enabledSrcChains.length <= 1,\n },\n tokenType: \"from\" as const,\n onFocus: () => setCurrentInput(\"from\"),\n label: (\n <>\n <span>Pay</span> <span className=\"text-contrast-5\">on</span>\n </>\n ),\n isLoading,\n };\n};\n\nexport const useTokenFromInputProps = ({\n activeSwapMode,\n override,\n isPriceLoading,\n price,\n}: UseTokenFromInputInput): TokenInputProps => {\n const tokenFromAmounts = useTokenFromAmountProps({\n price,\n });\n const tokenFrom = tokenFromAmounts.token;\n\n const amountWei =\n override?.amountWei ??\n parseUnits(tokenFromAmounts.amount, tokenFrom.decimals).toString();\n\n const amount = override?.amountWei\n ? formatUnits(BigInt(override.amountWei), tokenFrom.decimals)\n : tokenFromAmounts.amount;\n\n const tokenConditionalProps = useTokenConditionalProps({\n amountWei,\n swapMode: activeSwapMode,\n tokenFrom: tokenFrom,\n });\n const extraProps = useExtraProps({ isPriceLoading });\n const maxButtonProps = useMaxButtonProps({ price, tokenFrom });\n\n const setTokenFrom = useSetAtom(selectSwapTokenFromAtom);\n const onTokenSelect = (newTokenFrom: Token) => {\n setTokenFrom(newTokenFrom);\n };\n\n return {\n ...tokenFromAmounts,\n amount,\n ...tokenConditionalProps,\n ...extraProps,\n ...maxButtonProps,\n onTokenSelect,\n };\n};\n"],"names":["useTokenFromAmountProps","t0","$","_c","t1","undefined","price","logger","useLogger","tokenFrom","useSwapTokenFrom","amountValue","setAmountValue","useAtom","payInputAmountAtom","tokenBalanceUnit","useTokenFromBalanceUnit","t2","srcUSD","t3","values","log","value","t4","amount","token","usdEstimation","onAmountChange","Symbol","for","refetchInterval","MEDIUM_STALE_TIME_FOR_REACTIVENESS","queryOptions","balanceUnit","useTokenBalance","toDecimalTrimmed","useTokenConditionalProps","amountWei","swapMode","swapModeToSpender","spenderContractType","amountToApproveInWei","tokenAllowance","useGenericTokenAllowance","isInsufficientBalance","useIsTokenFromInsufficientBalance","needsApproval","lockIcon","t5","shouldDisplay","t6","tokenBadgePropsOverride","insufficientBalanceMessageProps","useMaxButtonProps","setCurrentSwapInput","useSetAtom","currentSwapInputAtom","setPayInputAmount","data","gasPrices","useGasPrices","hasBalance","showMaxButton","isETH","legacyPrices","gasCost","gasPriceMultiplier","instant","gasFeeETH","Big","plus","mul","div","balanceWithDeductedGas","minus","toString","onMaxClick","useExtraProps","isPriceLoading","appChainId","useChainId","setCurrentInput","side","useSwapSide","isLoading","enabledSrcChains","useEnabledSrcChains","length","networks","selectedNetwork","allOption","onSelect","_temp","disabled","t7","networkSwitcherProps","tokenType","onFocus","label","useTokenFromInputProps","activeSwapMode","override","tokenFromAmounts","parseUnits","decimals","formatUnits","BigInt","tokenConditionalProps","extraProps","maxButtonProps","setTokenFrom","selectSwapTokenFromAtom","newTokenFrom","onTokenSelect","t8","chainId","switchChain"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTokenSwitcherProps.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/hooks/useTokenSwitcherProps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"useTokenSwitcherProps.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/hooks/useTokenSwitcherProps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAMlF,eAAO,MAAM,yBAAyB,QAAO,kBAS5C,CAAC"}
|
|
@@ -2,23 +2,33 @@ import { d as distExports } from '../../../_virtual/index.js';
|
|
|
2
2
|
import { useSwapTokenTo } from '../state/selectedTokenAtom.js';
|
|
3
3
|
import { useSetAtom } from 'jotai';
|
|
4
4
|
import { switchSwapTokensAtom } from '../state/selectedTokenActionsAtom.js';
|
|
5
|
+
import { useEnabledSrcChains } from '../../state/enabledChainsAtom.js';
|
|
5
6
|
|
|
6
7
|
const useSwapTokenSwitcherProps = () => {
|
|
7
|
-
const $ = distExports.c(
|
|
8
|
+
const $ = distExports.c(6);
|
|
8
9
|
const tokenTo = useSwapTokenTo();
|
|
10
|
+
const enabledSrcChains = useEnabledSrcChains();
|
|
9
11
|
const switchTokens = useSetAtom(switchSwapTokensAtom);
|
|
10
|
-
|
|
12
|
+
let t0;
|
|
13
|
+
if ($[0] !== enabledSrcChains || $[1] !== tokenTo) {
|
|
14
|
+
t0 = !!tokenTo && enabledSrcChains.includes(tokenTo.network);
|
|
15
|
+
$[0] = enabledSrcChains;
|
|
16
|
+
$[1] = tokenTo;
|
|
17
|
+
$[2] = t0;
|
|
18
|
+
} else {
|
|
19
|
+
t0 = $[2];
|
|
20
|
+
}
|
|
11
21
|
let t1;
|
|
12
|
-
if ($[
|
|
22
|
+
if ($[3] !== switchTokens || $[4] !== t0) {
|
|
13
23
|
t1 = {
|
|
14
24
|
enableSwitchTokens: t0,
|
|
15
25
|
onSwitchTokens: switchTokens
|
|
16
26
|
};
|
|
17
|
-
$[
|
|
18
|
-
$[
|
|
19
|
-
$[
|
|
27
|
+
$[3] = switchTokens;
|
|
28
|
+
$[4] = t0;
|
|
29
|
+
$[5] = t1;
|
|
20
30
|
} else {
|
|
21
|
-
t1 = $[
|
|
31
|
+
t1 = $[5];
|
|
22
32
|
}
|
|
23
33
|
return t1;
|
|
24
34
|
};
|