@velora-dex/widget 0.1.3 → 0.2.0
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/_virtual/index.js +1 -1
- package/dist/components/ui/accordion.d.ts +3 -1
- package/dist/components/ui/accordion.d.ts.map +1 -1
- package/dist/components/ui/accordion.js +42 -27
- package/dist/components/ui/accordion.js.map +1 -1
- package/dist/components/ui/button.js.map +1 -1
- package/dist/components/ui/dialog.js.map +1 -1
- package/dist/components/ui/dropdown-menu.js.map +1 -1
- package/dist/components/ui/progress.js.map +1 -1
- package/dist/components/ui/sonner.js.map +1 -1
- package/dist/components/ui/tooltip.js.map +1 -1
- package/dist/components/web3/AccountButton.js.map +1 -1
- package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js.map +1 -1
- package/dist/components/web3/ConnectWallets/WalletConnectButtons.js.map +1 -1
- package/dist/components/web3/ConnectWallets/index.js +43 -35
- package/dist/components/web3/ConnectWallets/index.js.map +1 -1
- package/dist/components/web3/ConnectWallets/privy/button.js.map +1 -1
- package/dist/components/web3/ConnectWallets/privy/iframe.js.map +1 -1
- package/dist/components/web3/ConnectWallets/walletIcons.js.map +1 -1
- package/dist/components/web3/ConnectedWallet/ConnectedWallet.js.map +1 -1
- package/dist/components/widget/AppHeader/Activities/Activities.js +4 -12
- package/dist/components/widget/AppHeader/Activities/Activities.js.map +1 -1
- package/dist/components/widget/AppHeader/Activities/ActivityItems.js.map +1 -1
- package/dist/components/widget/AppHeader/Activities/Drawers.js.map +1 -1
- package/dist/components/widget/AppHeader/Activities/hooks.js.map +1 -1
- package/dist/components/widget/AppHeader/ActivityButton.js.map +1 -1
- package/dist/components/widget/AppHeader/AppHeader.js.map +1 -1
- package/dist/components/widget/AppHeader/TradeModeSwitcher.js.map +1 -1
- package/dist/components/widget/Details/DetailWithValueList.js.map +1 -1
- package/dist/components/widget/Details/DetailWithValueListExpandable.js.map +1 -1
- package/dist/components/widget/DexesList/DexItem.js.map +1 -1
- package/dist/components/widget/DexesList/DexesList.js +3 -14
- package/dist/components/widget/DexesList/DexesList.js.map +1 -1
- package/dist/components/widget/Dialog/DialogRoot.js.map +1 -1
- package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.js +131 -115
- package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.js.map +1 -1
- package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressInput.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js +4 -12
- package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/RegularTokenList.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenSearch.js.map +1 -1
- package/dist/components/widget/Dialog/state/dialogAtom.js +24 -26
- package/dist/components/widget/Dialog/state/dialogAtom.js.map +1 -1
- package/dist/components/widget/Drawer/Overlay.js.map +1 -1
- package/dist/components/widget/Drawer/index.js.map +1 -1
- package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
- package/dist/components/widget/ImportToken/ImportToken.js.map +1 -1
- package/dist/components/widget/ImportToken/useImportTokenDrawer.js.map +1 -1
- package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/Controls.js.map +1 -1
- package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/LimitOrderDetails.js.map +1 -1
- package/dist/components/widget/LimitOrdersDrawer/LimitOrderListItem.js +84 -66
- package/dist/components/widget/LimitOrdersDrawer/LimitOrderListItem.js.map +1 -1
- package/dist/components/widget/LimitPriceInput/index.js.map +1 -1
- package/dist/components/widget/Line/Line.js.map +1 -1
- package/dist/components/widget/NetworkIcon/NetworkIconSquare.js.map +1 -1
- package/dist/components/widget/NetworkSwitcher/CompactNetworkSwitcher.js.map +1 -1
- package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.js +28 -30
- package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.js.map +1 -1
- package/dist/components/widget/NetworkWithIcon/NetworkIconWithChevron.js.map +1 -1
- package/dist/components/widget/NetworkWithIcon/NetworkWithIcon.js.map +1 -1
- package/dist/components/widget/OrderExpiryInput/index.js.map +1 -1
- package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/Controls.js.map +1 -1
- package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/OtcOrderDetails.js.map +1 -1
- package/dist/components/widget/OtcOrdersDrawer/OtcOrderListItem.js.map +1 -1
- package/dist/components/widget/PayReceiveInfo/PayReceiveInfo.js.map +1 -1
- package/dist/components/widget/ReceiverAddress/ReceiverAddress.js.map +1 -1
- package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.js.map +1 -1
- package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcControls.js.map +1 -1
- package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.js.map +1 -1
- package/dist/components/widget/SelectToken/SelectTokenButton.js.map +1 -1
- package/dist/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.js.map +1 -1
- package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js.map +1 -1
- package/dist/components/widget/SwapRate/SwapRate.js +75 -43
- package/dist/components/widget/SwapRate/SwapRate.js.map +1 -1
- package/dist/components/widget/Tabs/Tabs.js.map +1 -1
- package/dist/components/widget/Toasts/CustomToast.js.map +1 -1
- package/dist/components/widget/TokenBadge/TokenBadge.js.map +1 -1
- package/dist/components/widget/TokenInput/index.js.map +1 -1
- package/dist/components/widget/TokenSwitcher/TokenSwitcher.js.map +1 -1
- package/dist/components/widget/TradeOverview/Step/Step.js.map +1 -1
- package/dist/components/widget/TradeOverview/Stepper.js +23 -38
- package/dist/components/widget/TradeOverview/Stepper.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js +36 -27
- package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js +79 -36
- package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeDetailsDisplay.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeOverview.d.ts +3 -0
- package/dist/components/widget/TradeOverview/TradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/TradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeOverviewFooter.js.map +1 -1
- package/dist/components/widget/TradeOverview/tradeFlowContext.js.map +1 -1
- package/dist/components/widget/TradeParameters/SlippageParameter/SlippageParameter.js.map +1 -1
- package/dist/components/widget/TradeParameters/SlippageParameter/hooks/useCustomSlippageProps.js.map +1 -1
- package/dist/components/widget/TradeParameters/TradeParameters.js.map +1 -1
- package/dist/components/widget/TradeParameters/TransactionSpeedParameter.js.map +1 -1
- package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js.map +1 -1
- package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.js.map +1 -1
- package/dist/components/widget/TradeParameters/useTempTradeParameters.js.map +1 -1
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js.map +1 -1
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js.map +1 -1
- package/dist/components/widget/TransactionDetails/TransactionListItem.js +57 -38
- package/dist/components/widget/TransactionDetails/TransactionListItem.js.map +1 -1
- package/dist/components/widget/Warning/InsufficientBalanceMessage.js.map +1 -1
- package/dist/components/widget/Warning/Warning.js.map +1 -1
- package/dist/components/widget/Warning/WarningMessage.js.map +1 -1
- package/dist/components/widget/WrapEth/WrapEthContent.js.map +1 -1
- package/dist/components/widget/WrapEth/WrapEthDrawerButton.d.ts.map +1 -1
- package/dist/components/widget/WrapEth/WrapEthDrawerButton.js +72 -90
- package/dist/components/widget/WrapEth/WrapEthDrawerButton.js.map +1 -1
- package/dist/components/widget/WrapEth/hooks/useWrapEthProps.d.ts.map +1 -1
- package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js +141 -84
- package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js.map +1 -1
- package/dist/components/widget/YouGet/YouGet.js.map +1 -1
- package/dist/configurator/Configurator.d.ts.map +1 -1
- package/dist/configurator/components/AllowNoUsdPricesSwitcher.d.ts +5 -0
- package/dist/configurator/components/AllowNoUsdPricesSwitcher.d.ts.map +1 -0
- package/dist/configurator/components/CrossChainSwitcher.d.ts +5 -0
- package/dist/configurator/components/CrossChainSwitcher.d.ts.map +1 -0
- package/dist/configurator/components/DeltaSwitcher.d.ts +5 -0
- package/dist/configurator/components/DeltaSwitcher.d.ts.map +1 -0
- package/dist/configurator/components/DevTools.d.ts +7 -0
- package/dist/configurator/components/DevTools.d.ts.map +1 -0
- package/dist/configurator/components/EnabledChainsSelector.d.ts +8 -0
- package/dist/configurator/components/EnabledChainsSelector.d.ts.map +1 -0
- package/dist/configurator/components/FormPropsInputs.d.ts +6 -0
- package/dist/configurator/components/FormPropsInputs.d.ts.map +1 -0
- package/dist/configurator/components/PanelHeader.d.ts +6 -0
- package/dist/configurator/components/PanelHeader.d.ts.map +1 -0
- package/dist/configurator/components/PartnerInput.d.ts +5 -0
- package/dist/configurator/components/PartnerInput.d.ts.map +1 -0
- package/dist/configurator/components/PrivyInputs.d.ts +7 -0
- package/dist/configurator/components/PrivyInputs.d.ts.map +1 -0
- package/dist/configurator/components/ThemeSwitcher.d.ts +6 -0
- package/dist/configurator/components/ThemeSwitcher.d.ts.map +1 -0
- package/dist/configurator/components/TokenListsInput.d.ts +5 -0
- package/dist/configurator/components/TokenListsInput.d.ts.map +1 -0
- package/dist/configurator/components/TradeModesSelector.d.ts +7 -0
- package/dist/configurator/components/TradeModesSelector.d.ts.map +1 -0
- package/dist/configurator/components/WidgetModeSwitcher.d.ts +5 -0
- package/dist/configurator/components/WidgetModeSwitcher.d.ts.map +1 -0
- package/dist/configurator/components/common/DetailWithTooltip.d.ts +3 -0
- package/dist/configurator/components/common/DetailWithTooltip.d.ts.map +1 -0
- package/dist/configurator/components/common/Input.d.ts +8 -0
- package/dist/configurator/components/common/Input.d.ts.map +1 -0
- package/dist/configurator/components/common/Switch.d.ts +12 -0
- package/dist/configurator/components/common/Switch.d.ts.map +1 -0
- package/dist/configurator/state/themeAtom.d.ts +3 -0
- package/dist/configurator/state/themeAtom.d.ts.map +1 -0
- package/dist/core/ConnectWalletDrawerButton.js +53 -66
- package/dist/core/ConnectWalletDrawerButton.js.map +1 -1
- package/dist/core/LimitOrderButton.js.map +1 -1
- package/dist/core/LimitOrderDetails.js.map +1 -1
- package/dist/core/OtcOrderButton.d.ts.map +1 -1
- package/dist/core/OtcOrderButton.js +4 -1
- package/dist/core/OtcOrderButton.js.map +1 -1
- package/dist/core/OtcOrderDetails.js.map +1 -1
- package/dist/core/Toaster.js.map +1 -1
- package/dist/core/TradeFlowButton.d.ts.map +1 -1
- package/dist/core/TradeFlowButton.js +414 -621
- package/dist/core/TradeFlowButton.js.map +1 -1
- package/dist/core/Updaters.js.map +1 -1
- package/dist/core/Warnings.js.map +1 -1
- package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/inputs/hooks/useTokenFromInputProps.d.ts.map +1 -1
- package/dist/core/inputs/hooks/useTokenFromInputProps.js +83 -54
- package/dist/core/inputs/hooks/useTokenFromInputProps.js.map +1 -1
- package/dist/core/inputs/hooks/useTokenSwitcherProps.js.map +1 -1
- package/dist/core/inputs/hooks/useTokenToInputProps.js +20 -28
- package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
- package/dist/core/inputs/state/common.js.map +1 -1
- package/dist/core/inputs/state/selectedTokenAtom.js.map +1 -1
- package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
- package/dist/core/limit/state/deadlineAtom.js.map +1 -1
- package/dist/core/limit/state/selectedTokenAtom.js.map +1 -1
- package/dist/core/limit/useLimitDetailsListProps.js.map +1 -1
- package/dist/core/limit/useLimitNotSupported.js +12 -1
- package/dist/core/limit/useLimitNotSupported.js.map +1 -1
- package/dist/core/limit/useLimitPriceDifference.js.map +1 -1
- package/dist/core/limit/useLimitPriceInputProps.js.map +1 -1
- package/dist/core/limit/useLimitRate.js.map +1 -1
- package/dist/core/limit/useLimitTokenFromInputProps.d.ts.map +1 -1
- package/dist/core/limit/useLimitTokenFromInputProps.js +69 -52
- package/dist/core/limit/useLimitTokenFromInputProps.js.map +1 -1
- package/dist/core/limit/useLimitTokenSwitcherProps.js.map +1 -1
- package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
- package/dist/core/logger.js +12 -14
- package/dist/core/logger.js.map +1 -1
- package/dist/core/otc/state/deadlineAtom.js.map +1 -1
- package/dist/core/otc/state/receiverAddressAtom.js.map +1 -1
- package/dist/core/otc/state/selectedTokenAtom.js.map +1 -1
- package/dist/core/otc/useOtcDetailsListProps.js.map +1 -1
- package/dist/core/otc/useOtcNotSupported.js +12 -1
- package/dist/core/otc/useOtcNotSupported.js.map +1 -1
- package/dist/core/otc/useOtcPriceDifference.js.map +1 -1
- package/dist/core/otc/useOtcPriceInputProps.js.map +1 -1
- package/dist/core/otc/useOtcTokenFromInputProps.d.ts.map +1 -1
- package/dist/core/otc/useOtcTokenFromInputProps.js +69 -52
- package/dist/core/otc/useOtcTokenFromInputProps.js.map +1 -1
- package/dist/core/otc/useOtcTokenSwitcherProps.js.map +1 -1
- package/dist/core/otc/useOtcTokenToInputProps.js.map +1 -1
- package/dist/core/state/chainToAtom.js.map +1 -1
- package/dist/core/state/configAtom.d.ts +2 -2
- package/dist/core/state/configAtom.d.ts.map +1 -1
- package/dist/core/state/configAtom.js +1 -7
- package/dist/core/state/configAtom.js.map +1 -1
- package/dist/core/state/configEffectAtom.js.map +1 -1
- package/dist/core/state/containerAtom.js.map +1 -1
- package/dist/core/state/enabledChainsAtom.js.map +1 -1
- package/dist/core/state/externalProviderAtom.js.map +1 -1
- package/dist/core/state/isCrosschainAtom.js.map +1 -1
- package/dist/core/state/tradeModeAtom.js.map +1 -1
- package/dist/core/state/widgetEventsAtom.js.map +1 -1
- package/dist/core/swapDetails/useSwapDetailsListProps.js +34 -36
- package/dist/core/swapDetails/useSwapDetailsListProps.js.map +1 -1
- package/dist/events/hooks/useActivateEffects.js.map +1 -1
- package/dist/events/hooks/useOnWalletConnect.js.map +1 -1
- package/dist/events/types/approve.d.ts +22 -6
- package/dist/events/types/approve.d.ts.map +1 -1
- package/dist/external/.pnpm/react-compiler-runtime@1.0.0_react@19.1.1/external/react-compiler-runtime/dist/index.js.map +1 -0
- package/dist/hooks/batch/useAwaitCalls.d.ts.map +1 -1
- package/dist/hooks/batch/useAwaitCalls.js +20 -16
- package/dist/hooks/batch/useAwaitCalls.js.map +1 -1
- package/dist/hooks/batch/useCanBatchTxs.js.map +1 -1
- package/dist/hooks/batch/useSendBatchTx.js.map +1 -1
- package/dist/hooks/connectors/useIsConnectedSafe.js +10 -18
- package/dist/hooks/connectors/useIsConnectedSafe.js.map +1 -1
- package/dist/hooks/connectors/useIsGnosisSafeConnector.js.map +1 -1
- package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js +4 -15
- package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js.map +1 -1
- package/dist/hooks/gas/useGasPrices.js.map +1 -1
- package/dist/hooks/getCode/useIsAccountContract.js.map +1 -1
- package/dist/hooks/getCode/useIsContractAtAddress.js +30 -46
- package/dist/hooks/getCode/useIsContractAtAddress.js.map +1 -1
- package/dist/hooks/otc/mutations/useCancelLimitOrder.d.ts.map +1 -1
- package/dist/hooks/otc/mutations/useCancelLimitOrder.js +21 -12
- package/dist/hooks/otc/mutations/useCancelLimitOrder.js.map +1 -1
- package/dist/hooks/otc/mutations/useCreateLimitOrder.d.ts.map +1 -1
- package/dist/hooks/otc/mutations/useCreateLimitOrder.js +22 -12
- package/dist/hooks/otc/mutations/useCreateLimitOrder.js.map +1 -1
- package/dist/hooks/otc/mutations/useFillOrder.d.ts.map +1 -1
- package/dist/hooks/otc/mutations/useFillOrder.js +10 -32
- package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -1
- package/dist/hooks/otc/queries/useLimitOrderRequiredBalance.d.ts +22 -3
- package/dist/hooks/otc/queries/useLimitOrderRequiredBalance.d.ts.map +1 -1
- package/dist/hooks/otc/queries/useLimitOrderRequiredBalance.js +39 -2
- package/dist/hooks/otc/queries/useLimitOrderRequiredBalance.js.map +1 -1
- package/dist/hooks/otc/queries/useLimitOrders.js.map +1 -1
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.d.ts.map +1 -1
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js +2 -3
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js.map +1 -1
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.js.map +1 -1
- package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.d.ts +7 -4
- package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.d.ts.map +1 -1
- package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js +46 -4
- package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js.map +1 -1
- package/dist/hooks/otc/tradeFlow/useOtcOrderStep.d.ts.map +1 -1
- package/dist/hooks/otc/tradeFlow/useOtcOrderStep.js +38 -36
- package/dist/hooks/otc/tradeFlow/useOtcOrderStep.js.map +1 -1
- package/dist/hooks/permit/hooks/common/useSignArbitraryTypedData.js.map +1 -1
- package/dist/hooks/permit/hooks/common/useSignPermit.js.map +1 -1
- package/dist/hooks/permit/hooks/common/useWalletSupportsPermit.js.map +1 -1
- package/dist/hooks/permit/hooks/permit1/useGetPermitInfo.js.map +1 -1
- package/dist/hooks/permit/hooks/permit1/useGetSafePermitInfo.js.map +1 -1
- package/dist/hooks/permit/hooks/permit1/useSignTokenPermit1.js.map +1 -1
- package/dist/hooks/permit/hooks/permit1/useTokenFromPermit1Nonce.js.map +1 -1
- package/dist/hooks/permit/hooks/permit1/useTokenFromPermitInfo.js.map +1 -1
- package/dist/hooks/permit/hooks/permit1/useTryToSignPermit1.js.map +1 -1
- package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.js +39 -31
- package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.js.map +1 -1
- package/dist/hooks/permit/hooks/permit2/useSignTokenPermit2TransferFrom.js +7 -15
- package/dist/hooks/permit/hooks/permit2/useSignTokenPermit2TransferFrom.js.map +1 -1
- package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2TransferFromNonce.js.map +1 -1
- package/dist/hooks/sdk/useGetContracts.js.map +1 -1
- package/dist/hooks/sdk/useSpender.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCancelLimitDeltaOrders.d.ts +2 -1
- package/dist/hooks/swap/prices/delta/mutations/useCancelLimitDeltaOrders.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCancelLimitDeltaOrders.js +23 -13
- package/dist/hooks/swap/prices/delta/mutations/useCancelLimitDeltaOrders.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts +3 -2
- package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js +41 -10
- package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.d.ts +25 -0
- package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.js +88 -0
- package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.js.map +1 -0
- package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts +16 -0
- package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js +83 -0
- package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js.map +1 -0
- package/dist/hooks/swap/prices/delta/orders/utils.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/utils.js +3 -2
- package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.d.ts +22 -3
- package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.js +39 -2
- package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/market/mutations/useBuildTx.js.map +1 -1
- package/dist/hooks/swap/prices/market/mutations/useSendMarketSwapTx.js.map +1 -1
- package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js.map +1 -1
- package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.d.ts +9 -0
- package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.d.ts.map +1 -1
- package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.js +49 -2
- package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.js.map +1 -1
- package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
- package/dist/hooks/swap/prices/useTokenInputsFromPrice.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/types.d.ts +17 -0
- package/dist/hooks/swap/tradeFlow/common/types.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts +3 -1
- package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js +164 -140
- package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useApproveOrPermitEvents.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useBatchWrapAndApprove.d.ts +46 -0
- package/dist/hooks/swap/tradeFlow/common/useBatchWrapAndApprove.d.ts.map +1 -0
- package/dist/hooks/swap/tradeFlow/common/useBatchWrapAndApprove.js +328 -0
- package/dist/hooks/swap/tradeFlow/common/useBatchWrapAndApprove.js.map +1 -0
- package/dist/hooks/swap/tradeFlow/common/useConstructGasParams.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useConstructGasParams.js +16 -14
- package/dist/hooks/swap/tradeFlow/common/useConstructGasParams.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts +74 -0
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts.map +1 -0
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js +274 -0
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js.map +1 -0
- package/dist/hooks/swap/tradeFlow/common/useRequiredAllowanceForOrders.d.ts +15 -0
- package/dist/hooks/swap/tradeFlow/common/useRequiredAllowanceForOrders.d.ts.map +1 -0
- package/dist/hooks/swap/tradeFlow/common/useRequiredAllowanceForOrders.js +88 -0
- package/dist/hooks/swap/tradeFlow/common/useRequiredAllowanceForOrders.js.map +1 -0
- package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/utils.d.ts +1 -0
- package/dist/hooks/swap/tradeFlow/common/utils.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/utils.js +16 -1
- package/dist/hooks/swap/tradeFlow/common/utils.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +28 -23
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +59 -17
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +4 -3
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +61 -15
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderStep.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts +2 -18
- package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
- package/dist/hooks/tokens/allowance/useTokenAllowance.js +25 -15
- package/dist/hooks/tokens/allowance/useTokenAllowance.js.map +1 -1
- package/dist/hooks/tokens/balances/useAttachTokenBalanceMultichain.js +8 -10
- package/dist/hooks/tokens/balances/useAttachTokenBalanceMultichain.js.map +1 -1
- package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js.map +1 -1
- package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js.map +1 -1
- package/dist/hooks/tokens/balances/useMultichainTokenBalances.js +20 -37
- package/dist/hooks/tokens/balances/useMultichainTokenBalances.js.map +1 -1
- package/dist/hooks/tokens/balances/useTokenBalance.js.map +1 -1
- package/dist/hooks/tokens/data/useCombineTokensWithFetched.js +11 -19
- package/dist/hooks/tokens/data/useCombineTokensWithFetched.js.map +1 -1
- package/dist/hooks/tokens/data/useFetchTokens.js.map +1 -1
- package/dist/hooks/tokens/data/useMultichainTokensData.js.map +1 -1
- package/dist/hooks/tokens/prices/useMultichainTokenPrices.js +21 -25
- package/dist/hooks/tokens/prices/useMultichainTokenPrices.js.map +1 -1
- package/dist/hooks/tokens/prices/useTokenPrices.js.map +1 -1
- package/dist/hooks/tokens/useAllTokensWithFilter.js +121 -49
- package/dist/hooks/tokens/useAllTokensWithFilter.js.map +1 -1
- package/dist/hooks/tokens/useNativeToken.js +1 -1
- package/dist/hooks/tokens/useNativeToken.js.map +1 -1
- package/dist/hooks/tokens/useTokenTaxFee.js.map +1 -1
- package/dist/hooks/tokens/useTokensByAddress.js.map +1 -1
- package/dist/hooks/tokens/useTokensFromAcross.js.map +1 -1
- package/dist/hooks/txs/mutations/useApprove.js.map +1 -1
- package/dist/hooks/txs/mutations/useDepositWeth.js.map +1 -1
- package/dist/hooks/txs/mutations/useSendTx.js.map +1 -1
- package/dist/hooks/txs/queries/useAwaitTx.js.map +1 -1
- package/dist/hooks/txs/queries/useTxHistory.js.map +1 -1
- package/dist/hooks/useAvailableCrosses.js.map +1 -1
- package/dist/hooks/useBridgeInfo.js.map +1 -1
- package/dist/hooks/useCurrentChain.js.map +1 -1
- package/dist/hooks/useDebouncedInputState.js.map +1 -1
- package/dist/hooks/useEIP1559Enabled.js.map +1 -1
- package/dist/hooks/useGlobalDeltaEnabled.js.map +1 -1
- package/dist/hooks/useIsCrosschainPossible.js.map +1 -1
- package/dist/hooks/useMinViemClient.js.map +1 -1
- package/dist/hooks/useSDK.d.ts +3 -2
- package/dist/hooks/useSDK.d.ts.map +1 -1
- package/dist/hooks/useSDK.js +37 -8
- package/dist/hooks/useSDK.js.map +1 -1
- package/dist/hooks/useSelectableDestChains.js.map +1 -1
- package/dist/hooks/useSlippage.js.map +1 -1
- package/dist/lib/utils/approval.js.map +1 -1
- package/dist/lib/utils/theme.d.ts +2 -0
- package/dist/lib/utils/theme.d.ts.map +1 -0
- package/dist/lib/utils/theme.js +10 -0
- package/dist/lib/utils/theme.js.map +1 -0
- package/dist/lib/web3/privy/config.js +1 -1
- package/dist/lib/web3/wagmi/config.js +1 -1
- package/dist/lib/web3/wagmi/isInsideSafeIframe.js.map +1 -1
- package/dist/styles.css +80 -39
- package/dist/tokens/hooks.js.map +1 -1
- package/dist/tokens/lists/state/effects.js.map +1 -1
- package/dist/tokens/queries.js +6 -10
- package/dist/tokens/queries.js.map +1 -1
- package/dist/tokens/stabeCoins/hooks.js +3 -5
- package/dist/tokens/stabeCoins/hooks.js.map +1 -1
- package/dist/tokens/utils/transferAmountsFromReceipt.js.map +1 -1
- package/dist/transactions/queries/ensureCallsStatus.d.ts +1 -0
- package/dist/transactions/queries/ensureCallsStatus.d.ts.map +1 -1
- package/dist/transactions/queries/ensureCallsStatus.js +7 -5
- package/dist/transactions/queries/ensureCallsStatus.js.map +1 -1
- package/dist/transactions/state/hooks/useActivateEffects.js.map +1 -1
- package/dist/transactions/state/hooks/useTransactions.js.map +1 -1
- package/dist/transactions/types.d.ts +21 -1
- package/dist/transactions/types.d.ts.map +1 -1
- package/package.json +2 -2
- package/dist/external/.pnpm/react-compiler-runtime@19.1.0-rc.2_react@19.1.1/external/react-compiler-runtime/dist/index.js.map +0 -1
- /package/dist/external/.pnpm/{react-compiler-runtime@19.1.0-rc.2_react@19.1.1 → react-compiler-runtime@1.0.0_react@19.1.1}/external/react-compiler-runtime/dist/index.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDrawerControls.js","sources":["../../../../../src/components/widget/Drawer/state/useDrawerControls.ts"],"sourcesContent":["import { DRAWER_HEIGHT } from \"@/core/constants\";\nimport { useLogger } from \"@/core/logger\";\nimport type { LoggerInstance } from \"@/lib/utils/logger\";\nimport { atom, useAtom, useAtomValue } from \"jotai\";\nimport { useLayoutEffect, useRef } from \"react\";\n\nexport type DrawerControls = {\n open: boolean;\n onOpen: () => void;\n onClose: () => void;\n onOpenChange: (open: boolean) => void;\n logger: LoggerInstance;\n};\n\nexport type DrawerId =\n | \"account-button-drawer\"\n | \"trade-parameters-drawer\"\n | \"receiver-address-drawer\"\n | `empty-select-token-drawer-${\"from\" | \"to\" | undefined}`\n | `select-token-drawer-${\"from\" | \"to\" | undefined}`\n | \"wrap-eth-drawer\"\n | \"connect-wallet-drawer\"\n | \"trade-flow-drawer\"\n | \"limit-order-flow-drawer\"\n | \"otc-order-flow-drawer\"\n | \"fill-otc-order-flow-drawer\"\n | \"limit-orders-drawer\" // @TODO Activities cleanup\n | \"limit-order-details\" // @TODO Activities cleanup\n | \"otc-orders-drawer\" // @TODO Activities cleanup\n | \"otc-order-details\" // @TODO Activities cleanup\n | \"order-details\"\n | \"fill-order-review-and-confirm-drawer\"\n | `import-token-drawer-${\"from\" | \"to\" | undefined}`\n | \"activities-drawer\";\n\nexport const openDrawerAtom = atom<DrawerId | null>(null);\n\nexport const useOpenDrawerId = (): DrawerId | null => {\n return useAtomValue(openDrawerAtom);\n};\n\nexport const useDrawerControls = ({\n onOpen: _onOpen,\n onClose: _onClose,\n drawerId,\n}: {\n onOpen?: () => void;\n onClose?: () => void;\n drawerId: DrawerId;\n}): DrawerControls => {\n const [openDrawer, setOpenDrawer] = useAtom(openDrawerAtom);\n\n const open = openDrawer === drawerId;\n\n const logger = useLogger(drawerId);\n\n const onOpen = () => {\n logger.info(\"onOpen\");\n setOpenDrawer(drawerId);\n _onOpen?.();\n };\n const onClose = () => {\n logger.info(\"onClose\");\n setOpenDrawer((currentOpenDrawer) => {\n // only reset openDrawer if closing the drawer that is currently open,\n // so that we don't interfere with other drawers that are opening at the same time\n if (currentOpenDrawer === drawerId) {\n return null;\n }\n return currentOpenDrawer;\n });\n _onClose?.();\n };\n\n const onOpenChange = (open: boolean) => {\n if (open) {\n onOpen();\n } else {\n onClose();\n }\n };\n\n return {\n open,\n // expect onOpenChange not to be triggered for a controlled <Drawer open={open}/>.\n onOpenChange,\n onOpen,\n onClose,\n logger,\n };\n};\n\n/**\n * Drawer IDs that should be considered full-cover drawers.\n *\n * When a full-cover drawer opens, the widget container height is transitioned to a fixed WIDGET_HEIGHT_CLASSNAME height.\n * When the drawer closes, the widget container height is transitioned back to the natural height.\n */\nconst fullCoverDrawers = new Set<DrawerId>([\n \"trade-flow-drawer\",\n \"limit-order-flow-drawer\",\n \"otc-order-flow-drawer\",\n \"fill-otc-order-flow-drawer\",\n \"select-token-drawer-from\",\n \"select-token-drawer-to\",\n \"empty-select-token-drawer-from\",\n \"empty-select-token-drawer-to\",\n]);\n\nconst transition = \"height 0.3s ease-in-out\";\n\n/**\n * Hook that manages smooth height transitions for the main widget container when full-cover drawers open/close.\n *\n * When a full-cover drawer opens, this hook smoothly animates the widget height from its natural height\n * to a fixed WIDGET_HEIGHT_CLASSNAME height. When the drawer closes, it animates back to the original height and then\n * resets to auto for natural sizing.\n *\n * This prevents jarring height jumps and provides a polished user experience during drawer interactions.\n *\n * @returns {Object} containerRef - React ref that should be attached to the widget container element\n *\n * @example\n * const { containerRef } = useDrawerContainerHeightTransition();\n * return <div ref={containerRef} className=\"widget-container\">...</div>\n */\nexport const useDrawerContainerHeightTransition = (): {\n containerRef: React.RefObject<HTMLDivElement | null>;\n drawerId: DrawerId | null;\n isDrawerFullCover: boolean;\n isDrawerOpen: boolean;\n} => {\n const containerRef = useRef<HTMLDivElement>(null);\n const previousHeightRef = useRef<number | null>(null);\n\n const currentDrawerId = useOpenDrawerId();\n const isDrawerFullCover =\n !!currentDrawerId && fullCoverDrawers.has(currentDrawerId);\n\n useLayoutEffect(() => {\n if (containerRef.current) {\n const container = containerRef.current;\n\n if (isDrawerFullCover) {\n // Get current height\n const currentHeight = container.scrollHeight;\n // widget will be fully covered by the drawer, won't see the transition\n const shouldSkipTransition = currentHeight <= DRAWER_HEIGHT;\n if (shouldSkipTransition) {\n return;\n }\n previousHeightRef.current = currentHeight;\n container.style.overflow = \"hidden\";\n\n // Set current height first (no transition)\n container.style.transition = \"none\";\n container.style.height = `${currentHeight}px`;\n\n // Use requestAnimationFrame to ensure the first height is painted\n requestAnimationFrame(() => {\n // Enable transition and set target height\n container.style.transition = transition;\n container.style.height = `${DRAWER_HEIGHT}px`;\n });\n } else if (previousHeightRef.current !== null) {\n // Only transition back if we have a previous height\n container.style.transition = transition;\n container.style.height = `${previousHeightRef.current}px`;\n previousHeightRef.current = null;\n\n // After transition completes, reset to auto\n const onTransitionEnd = (event: TransitionEvent) => {\n if (\n event.target === container &&\n event.propertyName === \"height\" &&\n event.type === \"transitionend\"\n ) {\n container.style.height = \"auto\";\n container.style.transition = \"\";\n container.style.overflow = \"\";\n\n container.removeEventListener(\"transitionend\", onTransitionEnd);\n }\n };\n container.addEventListener(\"transitionend\", onTransitionEnd);\n\n return () => {\n // cleanup just in case\n container.removeEventListener(\"transitionend\", onTransitionEnd);\n };\n }\n }\n }, [isDrawerFullCover]);\n\n return {\n containerRef,\n drawerId: currentDrawerId,\n isDrawerFullCover,\n isDrawerOpen: !!currentDrawerId,\n };\n};\n"],"names":["openDrawerAtom","atom","useOpenDrawerId","useAtomValue","useDrawerControls","t0","$","_c","onOpen","_onOpen","onClose","_onClose","drawerId","openDrawer","setOpenDrawer","useAtom","open","logger","useLogger","t1","info","t2","currentOpenDrawer","t3","open_0","onOpenChange","t4","fullCoverDrawers","Set","transition","useDrawerContainerHeightTransition","containerRef","useRef","previousHeightRef","currentDrawerId","has","isDrawerFullCover","current","container","currentHeight","scrollHeight","shouldSkipTransition","DRAWER_HEIGHT","style","overflow","height","requestAnimationFrame","onTransitionEnd","event","target","propertyName","type","removeEventListener","addEventListener","useLayoutEffect","isDrawerOpen"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useDrawerControls.js","sources":["../../../../../src/components/widget/Drawer/state/useDrawerControls.ts"],"sourcesContent":["import { DRAWER_HEIGHT } from \"@/core/constants\";\nimport { useLogger } from \"@/core/logger\";\nimport type { LoggerInstance } from \"@/lib/utils/logger\";\nimport { atom, useAtom, useAtomValue } from \"jotai\";\nimport { useLayoutEffect, useRef } from \"react\";\n\nexport type DrawerControls = {\n open: boolean;\n onOpen: () => void;\n onClose: () => void;\n onOpenChange: (open: boolean) => void;\n logger: LoggerInstance;\n};\n\nexport type DrawerId =\n | \"account-button-drawer\"\n | \"trade-parameters-drawer\"\n | \"receiver-address-drawer\"\n | `empty-select-token-drawer-${\"from\" | \"to\" | undefined}`\n | `select-token-drawer-${\"from\" | \"to\" | undefined}`\n | \"wrap-eth-drawer\"\n | \"connect-wallet-drawer\"\n | \"trade-flow-drawer\"\n | \"limit-order-flow-drawer\"\n | \"otc-order-flow-drawer\"\n | \"fill-otc-order-flow-drawer\"\n | \"limit-orders-drawer\" // @TODO Activities cleanup\n | \"limit-order-details\" // @TODO Activities cleanup\n | \"otc-orders-drawer\" // @TODO Activities cleanup\n | \"otc-order-details\" // @TODO Activities cleanup\n | \"order-details\"\n | \"fill-order-review-and-confirm-drawer\"\n | `import-token-drawer-${\"from\" | \"to\" | undefined}`\n | \"activities-drawer\";\n\nexport const openDrawerAtom = atom<DrawerId | null>(null);\n\nexport const useOpenDrawerId = (): DrawerId | null => {\n return useAtomValue(openDrawerAtom);\n};\n\nexport const useDrawerControls = ({\n onOpen: _onOpen,\n onClose: _onClose,\n drawerId,\n}: {\n onOpen?: () => void;\n onClose?: () => void;\n drawerId: DrawerId;\n}): DrawerControls => {\n const [openDrawer, setOpenDrawer] = useAtom(openDrawerAtom);\n\n const open = openDrawer === drawerId;\n\n const logger = useLogger(drawerId);\n\n const onOpen = () => {\n logger.info(\"onOpen\");\n setOpenDrawer(drawerId);\n _onOpen?.();\n };\n const onClose = () => {\n logger.info(\"onClose\");\n setOpenDrawer((currentOpenDrawer) => {\n // only reset openDrawer if closing the drawer that is currently open,\n // so that we don't interfere with other drawers that are opening at the same time\n if (currentOpenDrawer === drawerId) {\n return null;\n }\n return currentOpenDrawer;\n });\n _onClose?.();\n };\n\n const onOpenChange = (open: boolean) => {\n if (open) {\n onOpen();\n } else {\n onClose();\n }\n };\n\n return {\n open,\n // expect onOpenChange not to be triggered for a controlled <Drawer open={open}/>.\n onOpenChange,\n onOpen,\n onClose,\n logger,\n };\n};\n\n/**\n * Drawer IDs that should be considered full-cover drawers.\n *\n * When a full-cover drawer opens, the widget container height is transitioned to a fixed WIDGET_HEIGHT_CLASSNAME height.\n * When the drawer closes, the widget container height is transitioned back to the natural height.\n */\nconst fullCoverDrawers = new Set<DrawerId>([\n \"trade-flow-drawer\",\n \"limit-order-flow-drawer\",\n \"otc-order-flow-drawer\",\n \"fill-otc-order-flow-drawer\",\n \"select-token-drawer-from\",\n \"select-token-drawer-to\",\n \"empty-select-token-drawer-from\",\n \"empty-select-token-drawer-to\",\n]);\n\nconst transition = \"height 0.3s ease-in-out\";\n\n/**\n * Hook that manages smooth height transitions for the main widget container when full-cover drawers open/close.\n *\n * When a full-cover drawer opens, this hook smoothly animates the widget height from its natural height\n * to a fixed WIDGET_HEIGHT_CLASSNAME height. When the drawer closes, it animates back to the original height and then\n * resets to auto for natural sizing.\n *\n * This prevents jarring height jumps and provides a polished user experience during drawer interactions.\n *\n * @returns {Object} containerRef - React ref that should be attached to the widget container element\n *\n * @example\n * const { containerRef } = useDrawerContainerHeightTransition();\n * return <div ref={containerRef} className=\"widget-container\">...</div>\n */\nexport const useDrawerContainerHeightTransition = (): {\n containerRef: React.RefObject<HTMLDivElement | null>;\n drawerId: DrawerId | null;\n isDrawerFullCover: boolean;\n isDrawerOpen: boolean;\n} => {\n const containerRef = useRef<HTMLDivElement>(null);\n const previousHeightRef = useRef<number | null>(null);\n\n const currentDrawerId = useOpenDrawerId();\n const isDrawerFullCover =\n !!currentDrawerId && fullCoverDrawers.has(currentDrawerId);\n\n useLayoutEffect(() => {\n if (containerRef.current) {\n const container = containerRef.current;\n\n if (isDrawerFullCover) {\n // Get current height\n const currentHeight = container.scrollHeight;\n // widget will be fully covered by the drawer, won't see the transition\n const shouldSkipTransition = currentHeight <= DRAWER_HEIGHT;\n if (shouldSkipTransition) {\n return;\n }\n previousHeightRef.current = currentHeight;\n container.style.overflow = \"hidden\";\n\n // Set current height first (no transition)\n container.style.transition = \"none\";\n container.style.height = `${currentHeight}px`;\n\n // Use requestAnimationFrame to ensure the first height is painted\n requestAnimationFrame(() => {\n // Enable transition and set target height\n container.style.transition = transition;\n container.style.height = `${DRAWER_HEIGHT}px`;\n });\n } else if (previousHeightRef.current !== null) {\n // Only transition back if we have a previous height\n container.style.transition = transition;\n container.style.height = `${previousHeightRef.current}px`;\n previousHeightRef.current = null;\n\n // After transition completes, reset to auto\n const onTransitionEnd = (event: TransitionEvent) => {\n if (\n event.target === container &&\n event.propertyName === \"height\" &&\n event.type === \"transitionend\"\n ) {\n container.style.height = \"auto\";\n container.style.transition = \"\";\n container.style.overflow = \"\";\n\n container.removeEventListener(\"transitionend\", onTransitionEnd);\n }\n };\n container.addEventListener(\"transitionend\", onTransitionEnd);\n\n return () => {\n // cleanup just in case\n container.removeEventListener(\"transitionend\", onTransitionEnd);\n };\n }\n }\n }, [isDrawerFullCover]);\n\n return {\n containerRef,\n drawerId: currentDrawerId,\n isDrawerFullCover,\n isDrawerOpen: !!currentDrawerId,\n };\n};\n"],"names":["openDrawerAtom","atom","useOpenDrawerId","useAtomValue","useDrawerControls","t0","$","_c","onOpen","_onOpen","onClose","_onClose","drawerId","openDrawer","setOpenDrawer","useAtom","open","logger","useLogger","t1","info","t2","currentOpenDrawer","t3","open_0","onOpenChange","t4","fullCoverDrawers","Set","transition","useDrawerContainerHeightTransition","containerRef","useRef","previousHeightRef","currentDrawerId","has","isDrawerFullCover","current","container","currentHeight","scrollHeight","shouldSkipTransition","DRAWER_HEIGHT","style","overflow","height","requestAnimationFrame","onTransitionEnd","event","target","propertyName","type","removeEventListener","addEventListener","useLayoutEffect","isDrawerOpen"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ImportToken.js","sources":["../../../../src/components/widget/ImportToken/ImportToken.tsx"],"sourcesContent":["import { useSetAtom } from \"jotai\";\nimport { addImportedTokenAtom } from \"@/tokens/state/addImportedTokenAtom\";\nimport { WarningWithTitle } from \"../Warning/Warning\";\nimport { Button } from \"@/components/ui/button\";\nimport { TokenBadge } from \"../TokenBadge/TokenBadge\";\nimport type { ImportTokenDrawerProps } from \"./types\";\nimport { constructTokenLinkForChain } from \"@/lib/utils/explorer\";\n\nconst URL_CUSTOM_TOKEN_RISKS =\n \"https://help.velora.xyz/en/articles/6660821-the-risks-of-using-custom-tokens\";\n\ntype ImportTokenProps = ImportTokenDrawerProps & {\n onClose: () => void;\n};\n\nexport const ImportToken = (props: ImportTokenProps) => {\n const addImportedToken = useSetAtom(addImportedTokenAtom);\n\n const handleImport = () => {\n addImportedToken({\n newToken: props.token,\n afterAction: props.onConfirmAction,\n });\n\n props.onClose();\n };\n\n return (\n <div className=\"p-[24px] pt-0\">\n <div className=\"mb-5\">\n <a\n href={constructTokenLinkForChain({\n chainId: props.token.network,\n address: props.token.address,\n })}\n target=\"_blank\"\n >\n <TokenBadge\n img={props.token.img}\n classes={{ logo: \"size-[24px]\", root: \"underline\" }}\n address={props.token.address}\n symbol={props.token.symbol}\n chainId={props.token.network}\n showNetworkIcon\n />\n </a>\n </div>\n <WarningWithTitle\n title=\"Custom Tokens Alert\"\n message={\n <div className=\"flex flex-col gap-2\">\n <div>\n Always verify the tokens you are importing are legitimate, as\n trading unsafe tokens can lead to financial losses.\n </div>\n <div>\n Velora cannot verify the security of the token, and some tokens\n with transfer fees might fail when using our UI.\n </div>\n </div>\n }\n />\n\n <div className=\"text-sm text-contrast-4 dark:text-contrast-6 mt-7\">\n By proceeding to import custom tokens, you confirm that you acknowledge{\" \"}\n <a\n className=\"underline hover:text-contrast-5 dark:hover:text-contrast-7\"\n href={URL_CUSTOM_TOKEN_RISKS}\n target=\"_blank\"\n >\n the risks of using custom tokens\n </a>\n </div>\n <div className=\"pt-8 pb-5\">\n <Button radius=\"xs\" className=\"w-full h-[40px]\" onClick={handleImport}>\n Import\n </Button>\n </div>\n </div>\n );\n};\n"],"names":["URL_CUSTOM_TOKEN_RISKS","ImportToken","props","$","_c","addImportedToken","useSetAtom","addImportedTokenAtom","t0","newToken","token","afterAction","onConfirmAction","onClose","handleImport","t1","address","network","constructTokenLinkForChain","chainId","t2","Symbol","for","logo","root","t3","img","symbol","t4","t5","t6","t7","t8"],"mappings":";;;;;;;;;AAQA,MAAMA,sBAAAA,GACJ,8EAAA;AAMK,MAAMC,cAAcC,CAAAA,KAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AACzB,EAAA,MAAAC,gBAAAA,GAAyBC,
|
|
1
|
+
{"version":3,"file":"ImportToken.js","sources":["../../../../src/components/widget/ImportToken/ImportToken.tsx"],"sourcesContent":["import { useSetAtom } from \"jotai\";\nimport { addImportedTokenAtom } from \"@/tokens/state/addImportedTokenAtom\";\nimport { WarningWithTitle } from \"../Warning/Warning\";\nimport { Button } from \"@/components/ui/button\";\nimport { TokenBadge } from \"../TokenBadge/TokenBadge\";\nimport type { ImportTokenDrawerProps } from \"./types\";\nimport { constructTokenLinkForChain } from \"@/lib/utils/explorer\";\n\nconst URL_CUSTOM_TOKEN_RISKS =\n \"https://help.velora.xyz/en/articles/6660821-the-risks-of-using-custom-tokens\";\n\ntype ImportTokenProps = ImportTokenDrawerProps & {\n onClose: () => void;\n};\n\nexport const ImportToken = (props: ImportTokenProps) => {\n const addImportedToken = useSetAtom(addImportedTokenAtom);\n\n const handleImport = () => {\n addImportedToken({\n newToken: props.token,\n afterAction: props.onConfirmAction,\n });\n\n props.onClose();\n };\n\n return (\n <div className=\"p-[24px] pt-0\">\n <div className=\"mb-5\">\n <a\n href={constructTokenLinkForChain({\n chainId: props.token.network,\n address: props.token.address,\n })}\n target=\"_blank\"\n >\n <TokenBadge\n img={props.token.img}\n classes={{ logo: \"size-[24px]\", root: \"underline\" }}\n address={props.token.address}\n symbol={props.token.symbol}\n chainId={props.token.network}\n showNetworkIcon\n />\n </a>\n </div>\n <WarningWithTitle\n title=\"Custom Tokens Alert\"\n message={\n <div className=\"flex flex-col gap-2\">\n <div>\n Always verify the tokens you are importing are legitimate, as\n trading unsafe tokens can lead to financial losses.\n </div>\n <div>\n Velora cannot verify the security of the token, and some tokens\n with transfer fees might fail when using our UI.\n </div>\n </div>\n }\n />\n\n <div className=\"text-sm text-contrast-4 dark:text-contrast-6 mt-7\">\n By proceeding to import custom tokens, you confirm that you acknowledge{\" \"}\n <a\n className=\"underline hover:text-contrast-5 dark:hover:text-contrast-7\"\n href={URL_CUSTOM_TOKEN_RISKS}\n target=\"_blank\"\n >\n the risks of using custom tokens\n </a>\n </div>\n <div className=\"pt-8 pb-5\">\n <Button radius=\"xs\" className=\"w-full h-[40px]\" onClick={handleImport}>\n Import\n </Button>\n </div>\n </div>\n );\n};\n"],"names":["URL_CUSTOM_TOKEN_RISKS","ImportToken","props","$","_c","addImportedToken","useSetAtom","addImportedTokenAtom","t0","newToken","token","afterAction","onConfirmAction","onClose","handleImport","t1","address","network","constructTokenLinkForChain","chainId","t2","Symbol","for","logo","root","t3","img","symbol","t4","t5","t6","t7","t8"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useImportTokenDrawer.js","sources":["../../../../src/components/widget/ImportToken/useImportTokenDrawer.tsx"],"sourcesContent":["import { useState } from \"react\";\nimport { ControlledDrawer } from \"../Drawer\";\nimport { useDrawerControls } from \"../Drawer/state/useDrawerControls\";\nimport { ImportToken } from \"./ImportToken\";\nimport type {\n ImportTokenDrawerProps,\n UseImportTokenDrawerReturn,\n} from \"./types\";\n\ntype ImportDrawerProps = {\n drawerContainer?: HTMLElement | null;\n tokenType: \"from\" | \"to\" | undefined;\n};\n\nexport const useImportTokenDrawer = ({\n drawerContainer,\n tokenType,\n}: ImportDrawerProps): UseImportTokenDrawerReturn => {\n const { onOpen, ...drawerProps } = useDrawerControls({\n drawerId: `import-token-drawer-${tokenType}`,\n });\n\n const [importTokenProps, setImportTokenProps] =\n useState<ImportTokenDrawerProps | null>(null);\n\n const importTokenDrawer = (\n <ControlledDrawer\n {...drawerProps}\n title=\"Add Custom Token\"\n showCloseButton\n container={drawerContainer}\n >\n {importTokenProps ? (\n <ImportToken {...importTokenProps} onClose={drawerProps.onClose} />\n ) : null}\n </ControlledDrawer>\n );\n\n const onOpenImportTokenDrawer: UseImportTokenDrawerReturn[\"onOpenImportTokenDrawer\"] =\n (importTokenDrawerProps) => {\n setImportTokenProps(importTokenDrawerProps);\n onOpen();\n };\n\n return {\n onOpenImportTokenDrawer,\n importTokenDrawer,\n };\n};\n"],"names":["useImportTokenDrawer","t0","$","_c","drawerContainer","tokenType","t1","t2","drawerId","t3","useDrawerControls","drawerProps","onOpen","importTokenProps","setImportTokenProps","useState","t4","onClose","t5","importTokenDrawer","t6","importTokenDrawerProps","onOpenImportTokenDrawer","t7"],"mappings":";;;;;;;AAcO,MAAMA,uBAAuBC,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAC,EAAA,MAAA;AAAA,IAAAC,eAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAAAJ,EAAAA;AAKvB,EAAA,MAAAK,EAAAA,GAAA,uBAAuBD,SAAS,CAAA,CAAA;AAAE,EAAA,IAAAE,EAAAA;AAAA,EAAA,IAAAL,CAAAA,QAAAI,EAAAA,EAAA;AADOC,IAAAA,EAAAA,GAAA;AAAA,MAAAC,QAAAA,EACzCF;AAAAA,
|
|
1
|
+
{"version":3,"file":"useImportTokenDrawer.js","sources":["../../../../src/components/widget/ImportToken/useImportTokenDrawer.tsx"],"sourcesContent":["import { useState } from \"react\";\nimport { ControlledDrawer } from \"../Drawer\";\nimport { useDrawerControls } from \"../Drawer/state/useDrawerControls\";\nimport { ImportToken } from \"./ImportToken\";\nimport type {\n ImportTokenDrawerProps,\n UseImportTokenDrawerReturn,\n} from \"./types\";\n\ntype ImportDrawerProps = {\n drawerContainer?: HTMLElement | null;\n tokenType: \"from\" | \"to\" | undefined;\n};\n\nexport const useImportTokenDrawer = ({\n drawerContainer,\n tokenType,\n}: ImportDrawerProps): UseImportTokenDrawerReturn => {\n const { onOpen, ...drawerProps } = useDrawerControls({\n drawerId: `import-token-drawer-${tokenType}`,\n });\n\n const [importTokenProps, setImportTokenProps] =\n useState<ImportTokenDrawerProps | null>(null);\n\n const importTokenDrawer = (\n <ControlledDrawer\n {...drawerProps}\n title=\"Add Custom Token\"\n showCloseButton\n container={drawerContainer}\n >\n {importTokenProps ? (\n <ImportToken {...importTokenProps} onClose={drawerProps.onClose} />\n ) : null}\n </ControlledDrawer>\n );\n\n const onOpenImportTokenDrawer: UseImportTokenDrawerReturn[\"onOpenImportTokenDrawer\"] =\n (importTokenDrawerProps) => {\n setImportTokenProps(importTokenDrawerProps);\n onOpen();\n };\n\n return {\n onOpenImportTokenDrawer,\n importTokenDrawer,\n };\n};\n"],"names":["useImportTokenDrawer","t0","$","_c","drawerContainer","tokenType","t1","t2","drawerId","t3","useDrawerControls","drawerProps","onOpen","importTokenProps","setImportTokenProps","useState","t4","onClose","t5","importTokenDrawer","t6","importTokenDrawerProps","onOpenImportTokenDrawer","t7"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Controls.js","sources":["../../../../../src/components/widget/LimitOrdersDrawer/LimitOrderDetails/Controls.tsx"],"sourcesContent":["import { Button } from \"@/components/ui/button\";\nimport {\n type CancelLimitDeltaOrdersMutationOptions,\n useCancelDeltaOrderEventCallbacks,\n useCancelLimitDeltaOrders,\n} from \"@/hooks/swap/prices/delta/mutations/useCancelLimitDeltaOrders\";\nimport { DeltaOrderStatusChecker } from \"@/hooks/swap/prices/delta/orders/utils\";\nimport { useMinViemClient } from \"@/hooks/useMinViemClient\";\nimport { constructExplorerOrderDetailsLink } from \"@/lib/utils/explorer\";\nimport { useChainId, useAccount } from \"wagmi\";\nimport type { LimitOrderItem } from \"../types\";\nimport { ReactComponent as Spinner } from \"@/assets/spinner.svg\";\n\nexport type LimitOrderControlsProps = {\n order: LimitOrderItem;\n onDismiss: () => void;\n onCancelSuccess: CancelLimitDeltaOrdersMutationOptions[\"onSuccess\"];\n onCancelError: CancelLimitDeltaOrdersMutationOptions[\"onError\"];\n};\n\nexport const Controls = ({\n order,\n onDismiss,\n onCancelError,\n onCancelSuccess,\n}: LimitOrderControlsProps) => {\n const cancellable = DeltaOrderStatusChecker.cancellable.has(order.status);\n\n const explorerLink = constructExplorerOrderDetailsLink(order.id);\n\n const chainId = useChainId();\n const { address: account } = useAccount();\n const { minClient } = useMinViemClient({ chainId, account });\n\n const cancelOrderEvents = useCancelDeltaOrderEventCallbacks(order);\n\n const { mutate, isPending, isSuccess } = useCancelLimitDeltaOrders({\n chainId,\n account,\n client: minClient,\n mutationOptions: {\n onMutate: cancelOrderEvents.onMutate,\n onSuccess: (data, vars, context) => {\n onCancelSuccess?.(data, vars, context);\n cancelOrderEvents.onSuccess?.(data, vars);\n },\n onError: (error, vars, context) => {\n onCancelError?.(error, vars, context);\n cancelOrderEvents.onError?.(error, vars);\n },\n },\n });\n\n const button1 = cancellable ? (\n <Button\n variant=\"secondary\"\n size=\"xl\"\n radius=\"sm\"\n className=\"w-full text-sm text-secondary-radical-red-1 dark:text-secondary-radical-red-1\"\n disabled={isPending || isSuccess}\n onClick={() =>\n mutate({\n orderIds: [order.id],\n })\n }\n >\n Cancel This Order\n {isPending && (\n <Spinner\n width={16}\n height={16}\n className=\"animate-spin direction-reverse\"\n />\n )}\n </Button>\n ) : (\n <Button\n variant=\"default\"\n size=\"xl\"\n radius=\"sm\"\n className=\"w-full text-sm\"\n onClick={onDismiss}\n >\n Make Another Trade\n </Button>\n );\n\n const explorerBtn = (\n <Button\n variant=\"secondary\"\n size=\"xl\"\n radius=\"sm\"\n className=\"w-full text-sm\"\n asChild\n >\n <a href={explorerLink} rel=\"noopener noreferrer\" target=\"_blank\">\n View On Explorer\n </a>\n </Button>\n );\n\n return (\n <div className=\"flex flex-col gap-4 mt-auto\">\n {button1}\n {explorerBtn}\n </div>\n );\n};\n"],"names":["Controls","t0","$","_c","order","onDismiss","onCancelError","onCancelSuccess","t1","status","DeltaOrderStatusChecker","cancellable","has","t2","id","constructExplorerOrderDetailsLink","explorerLink","chainId","useChainId","address","account","useAccount","t3","minClient","useMinViemClient","cancelOrderEvents","useCancelDeltaOrderEventCallbacks","t4","data","vars","context","onSuccess","t5","error","vars_0","context_0","onError","t6","onMutate","t7","client","mutationOptions","mutate","isPending","isSuccess","useCancelLimitDeltaOrders","t8","orderIds","Spinner","button1","t9","explorerBtn","t10"],"mappings":";;;;;;;;;;AAoBO,MAAMA,WAAWC,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAC,EAAA,MAAA;AAAA,IAAAC,KAAAA;AAAAA,IAAAC,SAAAA;AAAAA,IAAAC,aAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAAAN,EAAAA;AAKC,EAAA,IAAAO,EAAAA;AAAA,EAAA,IAAAN,CAAAA,CAAA,CAAA,CAAA,KAAAE,KAAAA,CAAAK,MAAAA,EAAA;AACJD,IAAAA,EAAAA,GAAAE,uBAAAA,
|
|
1
|
+
{"version":3,"file":"Controls.js","sources":["../../../../../src/components/widget/LimitOrdersDrawer/LimitOrderDetails/Controls.tsx"],"sourcesContent":["import { Button } from \"@/components/ui/button\";\nimport {\n type CancelLimitDeltaOrdersMutationOptions,\n useCancelDeltaOrderEventCallbacks,\n useCancelLimitDeltaOrders,\n} from \"@/hooks/swap/prices/delta/mutations/useCancelLimitDeltaOrders\";\nimport { DeltaOrderStatusChecker } from \"@/hooks/swap/prices/delta/orders/utils\";\nimport { useMinViemClient } from \"@/hooks/useMinViemClient\";\nimport { constructExplorerOrderDetailsLink } from \"@/lib/utils/explorer\";\nimport { useChainId, useAccount } from \"wagmi\";\nimport type { LimitOrderItem } from \"../types\";\nimport { ReactComponent as Spinner } from \"@/assets/spinner.svg\";\n\nexport type LimitOrderControlsProps = {\n order: LimitOrderItem;\n onDismiss: () => void;\n onCancelSuccess: CancelLimitDeltaOrdersMutationOptions[\"onSuccess\"];\n onCancelError: CancelLimitDeltaOrdersMutationOptions[\"onError\"];\n};\n\nexport const Controls = ({\n order,\n onDismiss,\n onCancelError,\n onCancelSuccess,\n}: LimitOrderControlsProps) => {\n const cancellable = DeltaOrderStatusChecker.cancellable.has(order.status);\n\n const explorerLink = constructExplorerOrderDetailsLink(order.id);\n\n const chainId = useChainId();\n const { address: account } = useAccount();\n const { minClient } = useMinViemClient({ chainId, account });\n\n const cancelOrderEvents = useCancelDeltaOrderEventCallbacks(order);\n\n const { mutate, isPending, isSuccess } = useCancelLimitDeltaOrders({\n chainId,\n account,\n client: minClient,\n mutationOptions: {\n onMutate: cancelOrderEvents.onMutate,\n onSuccess: (data, vars, context) => {\n onCancelSuccess?.(data, vars, context);\n cancelOrderEvents.onSuccess?.(data, vars);\n },\n onError: (error, vars, context) => {\n onCancelError?.(error, vars, context);\n cancelOrderEvents.onError?.(error, vars);\n },\n },\n });\n\n const button1 = cancellable ? (\n <Button\n variant=\"secondary\"\n size=\"xl\"\n radius=\"sm\"\n className=\"w-full text-sm text-secondary-radical-red-1 dark:text-secondary-radical-red-1\"\n disabled={isPending || isSuccess}\n onClick={() =>\n mutate({\n orderIds: [order.id],\n })\n }\n >\n Cancel This Order\n {isPending && (\n <Spinner\n width={16}\n height={16}\n className=\"animate-spin direction-reverse\"\n />\n )}\n </Button>\n ) : (\n <Button\n variant=\"default\"\n size=\"xl\"\n radius=\"sm\"\n className=\"w-full text-sm\"\n onClick={onDismiss}\n >\n Make Another Trade\n </Button>\n );\n\n const explorerBtn = (\n <Button\n variant=\"secondary\"\n size=\"xl\"\n radius=\"sm\"\n className=\"w-full text-sm\"\n asChild\n >\n <a href={explorerLink} rel=\"noopener noreferrer\" target=\"_blank\">\n View On Explorer\n </a>\n </Button>\n );\n\n return (\n <div className=\"flex flex-col gap-4 mt-auto\">\n {button1}\n {explorerBtn}\n </div>\n );\n};\n"],"names":["Controls","t0","$","_c","order","onDismiss","onCancelError","onCancelSuccess","t1","status","DeltaOrderStatusChecker","cancellable","has","t2","id","constructExplorerOrderDetailsLink","explorerLink","chainId","useChainId","address","account","useAccount","t3","minClient","useMinViemClient","cancelOrderEvents","useCancelDeltaOrderEventCallbacks","t4","data","vars","context","onSuccess","t5","error","vars_0","context_0","onError","t6","onMutate","t7","client","mutationOptions","mutate","isPending","isSuccess","useCancelLimitDeltaOrders","t8","orderIds","Spinner","button1","t9","explorerBtn","t10"],"mappings":";;;;;;;;;;AAoBO,MAAMA,WAAWC,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAC,EAAA,MAAA;AAAA,IAAAC,KAAAA;AAAAA,IAAAC,SAAAA;AAAAA,IAAAC,aAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAAAN,EAAAA;AAKC,EAAA,IAAAO,EAAAA;AAAA,EAAA,IAAAN,CAAAA,CAAA,CAAA,CAAA,KAAAE,KAAAA,CAAAK,MAAAA,EAAA;AACJD,IAAAA,EAAAA,GAAAE,uBAAAA,CAAuBC,WAAAA,CAAYC,GAAAA,CAAKR,KAAAA,CAAKK,MAAO,CAAA;AAACP,IAAAA,CAAAA,CAAA,CAAA,IAAAE,KAAAA,CAAAK,MAAAA;AAAAP,IAAAA,CAAAA,MAAAM,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAN,EAAA,CAAA,CAAA;AAAA,EAAA;AAAzE,EAAA,MAAAS,WAAAA,GAAoBH,EAAAA;AAAsD,EAAA,IAAAK,EAAAA;AAAA,EAAA,IAAAX,CAAAA,CAAA,CAAA,CAAA,KAAAE,KAAAA,CAAAU,EAAAA,EAAA;AAErDD,IAAAA,EAAAA,GAAAE,iCAAAA,CAAkCX,MAAKU,EAAG,CAAA;AAACZ,IAAAA,CAAAA,CAAA,CAAA,IAAAE,KAAAA,CAAAU,EAAAA;AAAAZ,IAAAA,CAAAA,MAAAW,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAX,EAAA,CAAA,CAAA;AAAA,EAAA;AAAhE,EAAA,MAAAc,YAAAA,GAAqBH,EAAAA;AAErB,EAAA,MAAAI,UAAgBC,UAAAA,EAAW;AAC3B,EAAA,MAAA;AAAA,IAAAC,OAAAA,EAAAC;AAAAA,MAA6BC,UAAAA,EAAW;AAAE,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAApB,EAAA,CAAA,CAAA,KAAAkB,WAAAlB,CAAAA,QAAAe,OAAAA,EAAA;AACHK,IAAAA,EAAAA,GAAA;AAAA,MAAAL,OAAAA;AAAAA,MAAAG;AAAAA,KAAmB;AAAClB,IAAAA,CAAAA,MAAAkB,OAAAA;AAAAlB,IAAAA,CAAAA,MAAAe,OAAAA;AAAAf,IAAAA,CAAAA,MAAAoB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAApB,EAAA,CAAA,CAAA;AAAA,EAAA;AAA3D,EAAA,MAAA;AAAA,IAAAqB;AAAAA,GAAA,GAAsBC,iBAAiBF,EAAoB,CAAA;AAE3D,EAAA,MAAAG,iBAAAA,GAA0BC,kCAAkCtB,KAAK,CAAA;AAAE,EAAA,IAAAuB,EAAAA;AAAA,EAAA,IAAAzB,EAAA,CAAA,CAAA,KAAAuB,qBAAAvB,CAAAA,QAAAK,eAAAA,EAAA;AAQpDoB,IAAAA,EAAAA,GAAAA,CAAAC,IAAAA,EAAAC,IAAAA,EAAAC,OAAAA,KAAA;AACTvB,MAAAA,eAAAA,GAAkBqB,IAAAA,EAAMC,MAAMC,OAAO,CAAA;AACrCL,MAAAA,iBAAAA,CAAiBM,SAAAA,GAAaH,MAAMC,IAAI,CAAA;AAAA,IAAC,CAAA;AAC1C3B,IAAAA,CAAAA,MAAAuB,iBAAAA;AAAAvB,IAAAA,CAAAA,MAAAK,eAAAA;AAAAL,IAAAA,CAAAA,MAAAyB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAzB,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAA8B,EAAAA;AAAA,EAAA,IAAA9B,EAAA,EAAA,CAAA,KAAAuB,qBAAAvB,CAAAA,SAAAI,aAAAA,EAAA;AACQ0B,IAAAA,EAAAA,GAAAA,CAAAC,KAAAA,EAAAC,MAAAA,EAAAC,SAAAA,KAAA;AACP7B,MAAAA,aAAAA,GAAgB2B,KAAAA,EAAOJ,QAAMC,SAAO,CAAA;AACpCL,MAAAA,iBAAAA,CAAiBW,OAAAA,GAAWH,OAAOJ,MAAI,CAAA;AAAA,IAAC,CAAA;AACzC3B,IAAAA,CAAAA,OAAAuB,iBAAAA;AAAAvB,IAAAA,CAAAA,OAAAI,aAAAA;AAAAJ,IAAAA,CAAAA,OAAA8B,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAA9B,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAmC,EAAAA;AAAA,EAAA,IAAAnC,CAAAA,CAAA,EAAA,CAAA,KAAAuB,iBAAAA,CAAAa,QAAAA,IAAApC,CAAAA,CAAA,EAAA,CAAA,KAAAyB,EAAAA,IAAAzB,CAAAA,CAAA,EAAA,CAAA,KAAA8B,EAAAA,EAAA;AATcK,IAAAA,EAAAA,GAAA;AAAA,MAAAC,UACLb,iBAAAA,CAAiBa,QAAAA;AAAAA,MAASP,SAAAA,EACzBJ,EAAAA;AAAAA,MAGVS,OAAAA,EACQJ;AAAAA,KAIX;AAAC9B,IAAAA,CAAAA,CAAA,EAAA,IAAAuB,iBAAAA,CAAAa,QAAAA;AAAApC,IAAAA,CAAAA,OAAAyB,EAAAA;AAAAzB,IAAAA,CAAAA,OAAA8B,EAAAA;AAAA9B,IAAAA,CAAAA,OAAAmC,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAnC,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAqC,EAAAA;AAAA,EAAA,IAAArC,CAAAA,CAAA,EAAA,CAAA,KAAAkB,OAAAA,IAAAlB,EAAA,EAAA,CAAA,KAAAe,OAAAA,IAAAf,CAAAA,CAAA,EAAA,CAAA,KAAAqB,SAAAA,IAAArB,CAAAA,SAAAmC,EAAAA,EAAA;AAdgEE,IAAAA,EAAAA,GAAA;AAAA,MAAAtB,OAAAA;AAAAA,MAAAG,OAAAA;AAAAA,MAAAoB,MAAAA,EAGzDjB,SAAAA;AAAAA,MAASkB,eAAAA,EACAJ;AAAAA,KAWnB;AAACnC,IAAAA,CAAAA,OAAAkB,OAAAA;AAAAlB,IAAAA,CAAAA,OAAAe,OAAAA;AAAAf,IAAAA,CAAAA,OAAAqB,SAAAA;AAAArB,IAAAA,CAAAA,OAAAmC,EAAAA;AAAAnC,IAAAA,CAAAA,OAAAqC,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAArC,EAAA,EAAA,CAAA;AAAA,EAAA;AAfD,EAAA,MAAA;AAAA,IAAAwC,MAAAA;AAAAA,IAAAC,SAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAAyCC,0BAA0BN,EAelE,CAAA;AAAE,EAAA,IAAAO,EAAAA;AAAA,EAAA,IAAA5C,CAAAA,CAAA,EAAA,CAAA,KAAAS,WAAAA,IAAAT,CAAAA,SAAAyC,SAAAA,IAAAzC,CAAAA,CAAA,EAAA,CAAA,KAAA0C,SAAAA,IAAA1C,EAAA,EAAA,CAAA,KAAAwC,MAAAA,IAAAxC,CAAAA,CAAA,EAAA,CAAA,KAAAG,aAAAH,CAAAA,CAAA,EAAA,CAAA,KAAAE,KAAAA,CAAAU,EAAAA,EAAA;AAEagC,IAAAA,EAAAA,GAAAnC,8BACd,IAAA,CAAC,MAAA,EAAA,EACS,OAAA,EAAA,WAAA,EACH,MAAA,IAAA,EACE,MAAA,EAAA,IAAA,EACG,SAAA,EAAA,iFACA,QAAA,EAAAgC,SAAAA,IAAAC,SAAAA,EACD,OAAA,EAAA,MACPF,MAAAA,CAAO;AAAA,MAAAK,QAAAA,EACK,CAAC3C,KAAAA,CAAKU,EAAG;AAAA,KACpB,CAAA,EAEJ,QAAA,EAAA;AAAA,MAAA,mBAAA;AAAA,MAEE6B,SAAAA,wBACEK,UAAA,EAAA,EACQ,KAAA,EAAA,IACC,MAAA,EAAA,EAAA,EACE,WAAA,gCAAA,EAAgC;AAAA,KAAA,EAGhD,CAAA,mBAEA,GAAA,CAAC,MAAA,EAAA,EACS,OAAA,EAAA,SAAA,EACH,IAAA,EAAA,IAAA,EACE,MAAA,EAAA,IAAA,EACG,SAAA,EAAA,gBAAA,EACD3C,OAAAA,EAAAA,WACV,QAAA,EAAA,oBAAA,EAED,CAAA;AACDH,IAAAA,CAAAA,OAAAS,WAAAA;AAAAT,IAAAA,CAAAA,OAAAyC,SAAAA;AAAAzC,IAAAA,CAAAA,OAAA0C,SAAAA;AAAA1C,IAAAA,CAAAA,OAAAwC,MAAAA;AAAAxC,IAAAA,CAAAA,OAAAG,SAAAA;AAAAH,IAAAA,CAAAA,CAAA,EAAA,IAAAE,KAAAA,CAAAU,EAAAA;AAAAZ,IAAAA,CAAAA,OAAA4C,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAA5C,EAAA,EAAA,CAAA;AAAA,EAAA;AAhCD,EAAA,MAAA+C,OAAAA,GAAgBH,EAAAA;AAgCd,EAAA,IAAAI,EAAAA;AAAA,EAAA,IAAAhD,CAAAA,SAAAc,YAAAA,EAAA;AAGAkC,IAAAA,EAAAA,mBAAA,GAAA,CAAC,UACS,OAAA,EAAA,WAAA,EACH,MAAA,IAAA,EACE,MAAA,EAAA,MACG,SAAA,EAAA,gBAAA,EACV,SAAA,IAAA,EAEA,QAAA,kBAAA,GAAA,CAAA,OAASlC,IAAAA,gBAAkB,KAAA,qBAAA,EAA6B,MAAA,EAAA,QAAA,EAAS,QAAA,EAAA,kBAAA,EAEjE,CAAA,EACF,CAAA;AAASd,IAAAA,CAAAA,OAAAc,YAAAA;AAAAd,IAAAA,CAAAA,OAAAgD,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAhD,EAAA,EAAA,CAAA;AAAA,EAAA;AAXX,EAAA,MAAAiD,WAAAA,GACED,EAAAA;AAWA,EAAA,IAAAE,GAAAA;AAAA,EAAA,IAAAlD,EAAA,EAAA,CAAA,KAAA+C,WAAA/C,CAAAA,SAAAiD,WAAAA,EAAA;AAGAC,IAAAA,GAAAA,mBAAA,IAAA,CAAA,KAAA,EAAA,EAAe,SAAA,EAAA,6BAAA,EACZH,QAAAA,EAAAA;AAAAA,MAAAA,OAAAA;AAAAA,MACAE;AAAAA,KAAAA,EACH,CAAA;AAAMjD,IAAAA,CAAAA,OAAA+C,OAAAA;AAAA/C,IAAAA,CAAAA,OAAAiD,WAAAA;AAAAjD,IAAAA,CAAAA,OAAAkD,GAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,GAAAA,GAAAlD,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAHNkD,GAAAA;AAGM;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LimitOrderDetails.js","sources":["../../../../../src/components/widget/LimitOrdersDrawer/LimitOrderDetails/LimitOrderDetails.tsx"],"sourcesContent":["import type { LimitOrderItem } from \"../types\";\nimport { DetailWithValueList } from \"../../Details/DetailWithValueList\";\nimport { isTruthy } from \"@/lib/utils\";\nimport type { DetailWithValue } from \"../../Details/types\";\nimport { DeltaOrderStatusChecker } from \"@/hooks/swap/prices/delta/orders/utils\";\nimport { PayReceiveInfo } from \"../../PayReceiveInfo/PayReceiveInfo\";\nimport {\n constructExpiresInDetail,\n constructOrderRateDetail,\n constructOrderStatusDetail,\n constructOrderTypeDetail,\n constructPayReceiveInfoProps,\n constructSubmitDateDetail,\n} from \"./utils\";\n\nimport { Controls, type LimitOrderControlsProps } from \"./Controls\";\nimport { isLimitOrderWithExtra } from \"../utils\";\n\nconst detailsClasses = {\n root: \"pt-4 gap-4\",\n title: \"text-contrast-5 dark:text-contrast-6\",\n value: \"text-contrast-4 dark:text-contrast-6\",\n};\n\nexport const LimitOrderDetails = ({\n order,\n ...callbacks\n}: {\n order: LimitOrderItem;\n onDismiss: () => void;\n} & Pick<LimitOrderControlsProps, \"onCancelSuccess\" | \"onCancelError\">) => {\n const payReceiveInfoProps =\n isLimitOrderWithExtra(order) && constructPayReceiveInfoProps(order);\n\n const overallPending =\n DeltaOrderStatusChecker.pending.has(order.status) ||\n DeltaOrderStatusChecker.executing.has(order.status);\n\n const details: DetailWithValue[] = [\n constructSubmitDateDetail(order),\n overallPending && constructExpiresInDetail({ expiresIn: +order.expiresAt }),\n constructOrderRateDetail(order),\n constructOrderStatusDetail(order),\n constructOrderTypeDetail(order),\n ].filter(isTruthy);\n\n return (\n <div className=\"px-6 pb-8 h-[470px] flex flex-col\">\n {payReceiveInfoProps && <PayReceiveInfo {...payReceiveInfoProps} />}\n <DetailWithValueList details={details} classes={detailsClasses} />\n <Controls order={order} {...callbacks} />\n </div>\n );\n};\n"],"names":["detailsClasses","root","title","value","LimitOrderDetails","t0","$","_c","callbacks","order","t1","isLimitOrderWithExtra","constructPayReceiveInfoProps","payReceiveInfoProps","t2","overallPending","DeltaOrderStatusChecker","pending","has","status","executing","constructSubmitDateDetail","constructExpiresInDetail","expiresIn","expiresAt","constructOrderRateDetail","constructOrderStatusDetail","constructOrderTypeDetail","filter","isTruthy","details","t3","t4","t5","t6"],"mappings":";;;;;;;;;;AAkBA,MAAMA,cAAAA,GAAiB;AAAA,EACrBC,IAAAA,EAAM,YAAA;AAAA,EACNC,KAAAA,EAAO,sCAAA;AAAA,EACPC,KAAAA,EAAO;AACT,CAAA;AAEO,MAAMC,oBAAoBC,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAA,EAAA,IAAAC,SAAAA;AAAA,EAAA,IAAAC,KAAAA;AAAA,EAAA,IAAAH,CAAAA,QAAAD,EAAAA,EAAA;AAAC,IAAA,CAAA;AAAA,MAAAI,KAAAA;AAAAA,MAAA,GAAAD;AAAAA,KAAA,GAAAH,EAAAA;AAMoCC,IAAAA,CAAAA,MAAAD,EAAAA;AAAAC,IAAAA,CAAAA,MAAAE,SAAAA;AAAAF,IAAAA,CAAAA,MAAAG,KAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAD,IAAAA,SAAAA,GAAAF,EAAA,CAAA,CAAA;AAAAG,IAAAA,KAAAA,GAAAH,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAI,EAAAA;AAAA,EAAA,IAAAJ,CAAAA,QAAAG,KAAAA,EAAA;AAElEC,IAAAA,EAAAA,GAAAC,qBAAAA,CAAsBF,
|
|
1
|
+
{"version":3,"file":"LimitOrderDetails.js","sources":["../../../../../src/components/widget/LimitOrdersDrawer/LimitOrderDetails/LimitOrderDetails.tsx"],"sourcesContent":["import type { LimitOrderItem } from \"../types\";\nimport { DetailWithValueList } from \"../../Details/DetailWithValueList\";\nimport { isTruthy } from \"@/lib/utils\";\nimport type { DetailWithValue } from \"../../Details/types\";\nimport { DeltaOrderStatusChecker } from \"@/hooks/swap/prices/delta/orders/utils\";\nimport { PayReceiveInfo } from \"../../PayReceiveInfo/PayReceiveInfo\";\nimport {\n constructExpiresInDetail,\n constructOrderRateDetail,\n constructOrderStatusDetail,\n constructOrderTypeDetail,\n constructPayReceiveInfoProps,\n constructSubmitDateDetail,\n} from \"./utils\";\n\nimport { Controls, type LimitOrderControlsProps } from \"./Controls\";\nimport { isLimitOrderWithExtra } from \"../utils\";\n\nconst detailsClasses = {\n root: \"pt-4 gap-4\",\n title: \"text-contrast-5 dark:text-contrast-6\",\n value: \"text-contrast-4 dark:text-contrast-6\",\n};\n\nexport const LimitOrderDetails = ({\n order,\n ...callbacks\n}: {\n order: LimitOrderItem;\n onDismiss: () => void;\n} & Pick<LimitOrderControlsProps, \"onCancelSuccess\" | \"onCancelError\">) => {\n const payReceiveInfoProps =\n isLimitOrderWithExtra(order) && constructPayReceiveInfoProps(order);\n\n const overallPending =\n DeltaOrderStatusChecker.pending.has(order.status) ||\n DeltaOrderStatusChecker.executing.has(order.status);\n\n const details: DetailWithValue[] = [\n constructSubmitDateDetail(order),\n overallPending && constructExpiresInDetail({ expiresIn: +order.expiresAt }),\n constructOrderRateDetail(order),\n constructOrderStatusDetail(order),\n constructOrderTypeDetail(order),\n ].filter(isTruthy);\n\n return (\n <div className=\"px-6 pb-8 h-[470px] flex flex-col\">\n {payReceiveInfoProps && <PayReceiveInfo {...payReceiveInfoProps} />}\n <DetailWithValueList details={details} classes={detailsClasses} />\n <Controls order={order} {...callbacks} />\n </div>\n );\n};\n"],"names":["detailsClasses","root","title","value","LimitOrderDetails","t0","$","_c","callbacks","order","t1","isLimitOrderWithExtra","constructPayReceiveInfoProps","payReceiveInfoProps","t2","overallPending","DeltaOrderStatusChecker","pending","has","status","executing","constructSubmitDateDetail","constructExpiresInDetail","expiresIn","expiresAt","constructOrderRateDetail","constructOrderStatusDetail","constructOrderTypeDetail","filter","isTruthy","details","t3","t4","t5","t6"],"mappings":"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"}
|
|
@@ -233,7 +233,7 @@ const Trade = (t0) => {
|
|
|
233
233
|
return t11;
|
|
234
234
|
};
|
|
235
235
|
const Rate = (t0) => {
|
|
236
|
-
const $ = distExports.c(
|
|
236
|
+
const $ = distExports.c(16);
|
|
237
237
|
const {
|
|
238
238
|
extra,
|
|
239
239
|
classes
|
|
@@ -247,56 +247,75 @@ const Rate = (t0) => {
|
|
|
247
247
|
if (!srcToken || !destToken || !srcAmountUnit || !destAmountUnit) {
|
|
248
248
|
return missingContent;
|
|
249
249
|
}
|
|
250
|
-
|
|
251
|
-
if (!rateFormatted) {
|
|
252
|
-
return missingContent;
|
|
253
|
-
}
|
|
254
|
-
const left = `${formatTokenAmount(rateFormatted)} ${destToken.symbol}`;
|
|
255
|
-
const right = `per ${srcToken.symbol}`;
|
|
256
|
-
const t1 = classes?.root;
|
|
250
|
+
let t1;
|
|
257
251
|
let t2;
|
|
258
|
-
if ($[0] !==
|
|
259
|
-
t2 =
|
|
260
|
-
|
|
261
|
-
|
|
252
|
+
if ($[0] !== destAmountUnit || $[1] !== srcAmountUnit) {
|
|
253
|
+
t2 = Symbol.for("react.early_return_sentinel");
|
|
254
|
+
bb0: {
|
|
255
|
+
const rateFormatted = calcRate(srcAmountUnit, destAmountUnit)?.rateFormatted;
|
|
256
|
+
if (!rateFormatted) {
|
|
257
|
+
t2 = missingContent;
|
|
258
|
+
break bb0;
|
|
259
|
+
}
|
|
260
|
+
t1 = formatTokenAmount(rateFormatted);
|
|
261
|
+
}
|
|
262
|
+
$[0] = destAmountUnit;
|
|
263
|
+
$[1] = srcAmountUnit;
|
|
264
|
+
$[2] = t1;
|
|
265
|
+
$[3] = t2;
|
|
262
266
|
} else {
|
|
263
|
-
|
|
267
|
+
t1 = $[2];
|
|
268
|
+
t2 = $[3];
|
|
264
269
|
}
|
|
265
|
-
|
|
270
|
+
if (t2 !== Symbol.for("react.early_return_sentinel")) {
|
|
271
|
+
return t2;
|
|
272
|
+
}
|
|
273
|
+
const left = `${t1} ${destToken.symbol}`;
|
|
274
|
+
const right = `per ${srcToken.symbol}`;
|
|
275
|
+
const t3 = classes?.root;
|
|
266
276
|
let t4;
|
|
267
|
-
if ($[
|
|
268
|
-
t4 =
|
|
269
|
-
$[
|
|
270
|
-
$[
|
|
271
|
-
$[4] = t4;
|
|
277
|
+
if ($[4] !== t3) {
|
|
278
|
+
t4 = cn("text-xs", t3);
|
|
279
|
+
$[4] = t3;
|
|
280
|
+
$[5] = t4;
|
|
272
281
|
} else {
|
|
273
|
-
t4 = $[
|
|
282
|
+
t4 = $[5];
|
|
274
283
|
}
|
|
275
|
-
const t5 = classes?.
|
|
284
|
+
const t5 = classes?.left;
|
|
276
285
|
let t6;
|
|
277
|
-
if ($[
|
|
278
|
-
t6 = /* @__PURE__ */ jsx("span", { className: t5, children:
|
|
279
|
-
$[
|
|
280
|
-
$[
|
|
281
|
-
$[
|
|
286
|
+
if ($[6] !== left || $[7] !== t5) {
|
|
287
|
+
t6 = /* @__PURE__ */ jsx("span", { className: t5, children: left });
|
|
288
|
+
$[6] = left;
|
|
289
|
+
$[7] = t5;
|
|
290
|
+
$[8] = t6;
|
|
282
291
|
} else {
|
|
283
|
-
t6 = $[
|
|
292
|
+
t6 = $[8];
|
|
284
293
|
}
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
294
|
+
const t7 = classes?.right;
|
|
295
|
+
let t8;
|
|
296
|
+
if ($[9] !== right || $[10] !== t7) {
|
|
297
|
+
t8 = /* @__PURE__ */ jsx("span", { className: t7, children: right });
|
|
298
|
+
$[9] = right;
|
|
299
|
+
$[10] = t7;
|
|
300
|
+
$[11] = t8;
|
|
301
|
+
} else {
|
|
302
|
+
t8 = $[11];
|
|
303
|
+
}
|
|
304
|
+
let t9;
|
|
305
|
+
if ($[12] !== t4 || $[13] !== t6 || $[14] !== t8) {
|
|
306
|
+
t9 = /* @__PURE__ */ jsxs("div", { className: t4, children: [
|
|
307
|
+
t6,
|
|
289
308
|
" ",
|
|
290
|
-
|
|
309
|
+
t8
|
|
291
310
|
] });
|
|
292
|
-
$[
|
|
293
|
-
$[
|
|
294
|
-
$[
|
|
295
|
-
$[
|
|
311
|
+
$[12] = t4;
|
|
312
|
+
$[13] = t6;
|
|
313
|
+
$[14] = t8;
|
|
314
|
+
$[15] = t9;
|
|
296
315
|
} else {
|
|
297
|
-
|
|
316
|
+
t9 = $[15];
|
|
298
317
|
}
|
|
299
|
-
return
|
|
318
|
+
return t9;
|
|
300
319
|
};
|
|
301
320
|
const StatusBadge = (t0) => {
|
|
302
321
|
const $ = distExports.c(7);
|
|
@@ -409,11 +428,10 @@ const TimeTillExpiry = (t0) => {
|
|
|
409
428
|
deadline,
|
|
410
429
|
classes
|
|
411
430
|
} = t0;
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
t2 = [{
|
|
431
|
+
let t1;
|
|
432
|
+
if ($[0] !== deadline) {
|
|
433
|
+
const duration = getDuration((deadline - Date.now() / 1e3) * 1e3);
|
|
434
|
+
t1 = [{
|
|
417
435
|
value: duration.asYears() > 1 ? duration.years() : null,
|
|
418
436
|
unit: "y"
|
|
419
437
|
}, {
|
|
@@ -429,42 +447,42 @@ const TimeTillExpiry = (t0) => {
|
|
|
429
447
|
value: duration.asMinutes() > 1 ? duration.minutes() : null,
|
|
430
448
|
unit: "m"
|
|
431
449
|
}].filter(_temp);
|
|
432
|
-
$[0] =
|
|
433
|
-
$[1] =
|
|
450
|
+
$[0] = deadline;
|
|
451
|
+
$[1] = t1;
|
|
434
452
|
} else {
|
|
435
|
-
|
|
453
|
+
t1 = $[1];
|
|
436
454
|
}
|
|
437
|
-
const parts =
|
|
455
|
+
const parts = t1;
|
|
438
456
|
if (!parts.length) {
|
|
439
457
|
return null;
|
|
440
458
|
}
|
|
441
|
-
const
|
|
442
|
-
let
|
|
443
|
-
if ($[2] !==
|
|
444
|
-
|
|
445
|
-
$[2] =
|
|
446
|
-
$[3] =
|
|
459
|
+
const t2 = classes?.root;
|
|
460
|
+
let t3;
|
|
461
|
+
if ($[2] !== t2) {
|
|
462
|
+
t3 = cn("text-xs flex gap-1 items-center dark:text-contrast-7", t2);
|
|
463
|
+
$[2] = t2;
|
|
464
|
+
$[3] = t3;
|
|
447
465
|
} else {
|
|
448
|
-
|
|
466
|
+
t3 = $[3];
|
|
449
467
|
}
|
|
450
|
-
let
|
|
468
|
+
let t4;
|
|
451
469
|
if ($[4] !== parts) {
|
|
452
|
-
|
|
470
|
+
t4 = parts.map(_temp2);
|
|
453
471
|
$[4] = parts;
|
|
454
|
-
$[5] =
|
|
472
|
+
$[5] = t4;
|
|
455
473
|
} else {
|
|
456
|
-
|
|
474
|
+
t4 = $[5];
|
|
457
475
|
}
|
|
458
|
-
let
|
|
459
|
-
if ($[6] !==
|
|
460
|
-
|
|
461
|
-
$[6] =
|
|
462
|
-
$[7] =
|
|
463
|
-
$[8] =
|
|
476
|
+
let t5;
|
|
477
|
+
if ($[6] !== t3 || $[7] !== t4) {
|
|
478
|
+
t5 = /* @__PURE__ */ jsx("div", { className: t3, children: t4 });
|
|
479
|
+
$[6] = t3;
|
|
480
|
+
$[7] = t4;
|
|
481
|
+
$[8] = t5;
|
|
464
482
|
} else {
|
|
465
|
-
|
|
483
|
+
t5 = $[8];
|
|
466
484
|
}
|
|
467
|
-
return
|
|
485
|
+
return t5;
|
|
468
486
|
};
|
|
469
487
|
function _temp(part) {
|
|
470
488
|
return isTruthy(part.value);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LimitOrderListItem.js","sources":["../../../../src/components/widget/LimitOrdersDrawer/LimitOrderListItem.tsx"],"sourcesContent":["import { TokenBadge } from \"../TokenBadge/TokenBadge\";\nimport type { LimitOrderItem, LimitOrderItemExtra } from \"./types\";\nimport { NetworkWithIcon } from \"../NetworkWithIcon/NetworkWithIcon\";\nimport { formatTokenAmount } from \"@/lib/utils/formatTokenBalance\";\nimport { calcRate } from \"@/lib/utils/rate\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { cn, isTruthy, replaceUnderscoresWithSpaces } from \"@/lib/utils\";\nimport { DeltaOrderStatusChecker } from \"@/hooks/swap/prices/delta/orders/utils\";\nimport { getDuration } from \"@/lib/utils/time\";\nimport type { WithClasses } from \"@/types/withClasses\";\nimport type { DeltaAuctionStatus } from \"@velora-dex/sdk\";\n\nconst missingContent = \"-\";\n\nexport const LimitOrdersListItem = ({\n auction,\n onClick,\n}: {\n auction: LimitOrderItem;\n onClick: (auction: LimitOrderItem) => void;\n}) => {\n return (\n <div\n className={\"bg-white dark:bg-contrast-3 p-4 rounded-sm cursor-pointer\"}\n onClick={() => onClick(auction)}\n >\n <TradeAndNetwork {...auction} />\n <RateAndStatus {...auction} />\n </div>\n );\n};\n\nconst srcTokenBadgeClasses = { logo: \"size-[16px]\", root: \"z-1\" };\nconst destTokenBadgeClasses = { logo: \"size-[16px]\", root: \"-ml-1\" };\nconst networkIconClasses = { root: \"gap-2\", name: \"dark:text-contrast-7\" };\n\ntype ItemType = \"MARKET\" | \"LIMIT\" | \"P2P\";\n\nexport const TradeAndNetwork = ({\n extra,\n type,\n chainId,\n}: Pick<LimitOrderItem, \"extra\" | \"chainId\"> & {\n type: ItemType;\n}) => {\n return (\n <div className=\"flex items-center justify-between pb-4\">\n <Trade {...extra} type={type} />\n <NetworkWithIcon\n networkId={chainId as SupportedChainId}\n classes={networkIconClasses}\n />\n </div>\n );\n};\n\nconst itemTypeToLabel: Record<ItemType, string> = {\n MARKET: \"Swap\",\n LIMIT: \"Limit\",\n P2P: \"OTC\",\n};\n\nconst Trade = ({\n srcToken,\n destToken,\n srcAmountUnit,\n destAmountUnit,\n type,\n}: LimitOrderItemExtra & {\n type: ItemType;\n}) => {\n // @TODO we'll miss a big piece of info if we don't have the tokens\n // consider to fetch them onchain if missing in useQuery(select)\n // or just add more token lists\n if (!srcToken || !destToken || !srcAmountUnit || !destAmountUnit)\n return missingContent;\n\n const formattedSrcAmount = formatTokenAmount(srcAmountUnit);\n const formattedDestAmount = formatTokenAmount(destAmountUnit);\n\n const icons = (\n <div className=\"flex items-center\">\n <TokenBadge\n address={srcToken.address}\n chainId={srcToken.network}\n img={srcToken.img}\n classes={srcTokenBadgeClasses}\n />\n <TokenBadge\n address={destToken.address}\n img={destToken.img}\n chainId={destToken.network}\n classes={destTokenBadgeClasses}\n />\n </div>\n );\n\n const typeAndAmounts = (\n <div className=\"ml-2 flex flex-col\">\n <div className=\"text-xs font-medium text-contrast-5\">\n {itemTypeToLabel[type]}\n </div>\n <div className=\"text-sm font-medium dark:text-contrast-9\">\n {srcToken.symbol} {formattedSrcAmount}\n <span className=\"mx-1\">→</span>\n {destToken.symbol} {formattedDestAmount}\n </div>\n </div>\n );\n\n return (\n <div className=\"flex items-center\">\n {icons}\n {typeAndAmounts}\n </div>\n );\n};\n\nexport const Rate = ({\n extra,\n classes,\n}: Pick<LimitOrderItem, \"extra\"> & WithClasses<\"root\" | \"left\" | \"right\">) => {\n const { srcToken, destToken, srcAmountUnit, destAmountUnit } = extra;\n if (!srcToken || !destToken || !srcAmountUnit || !destAmountUnit)\n return missingContent;\n\n const rateFormatted = calcRate(srcAmountUnit, destAmountUnit)?.rateFormatted;\n if (!rateFormatted) return missingContent;\n\n const left = `${formatTokenAmount(rateFormatted)} ${destToken.symbol}`;\n const right = `per ${srcToken.symbol}`;\n\n return (\n <div className={cn(\"text-xs\", classes?.root)}>\n <span className={classes?.left}>{left}</span>{\" \"}\n <span className={classes?.right}>{right}</span>\n </div>\n );\n};\n\nexport const StatusBadge = ({ status }: { status: DeltaAuctionStatus }) => {\n const success = DeltaOrderStatusChecker.success.has(status);\n const failed = DeltaOrderStatusChecker.failed.has(status);\n const overallPending =\n DeltaOrderStatusChecker.pending.has(status) ||\n DeltaOrderStatusChecker.executing.has(status);\n\n return (\n <div\n className={cn(\"text-[10px] p-0.5 px-2 rounded-lg w-max\", {\n \"text-secondary-shamrock-green-2 bg-[#00976733]\": success,\n \"text-secondary-radical-red-1 bg-[#FF3B301A]\": failed,\n \"text-secondary-orange-peel-1 bg-[#FF950033]\": overallPending,\n })}\n >\n {replaceUnderscoresWithSpaces(status)}\n </div>\n );\n};\n\nconst rateClasses = {\n left: \"dark:text-contrast-7\",\n right: \"text-contrast-5\",\n};\n\nconst RateAndStatus = (props: LimitOrderItem) => {\n const overallPending =\n DeltaOrderStatusChecker.pending.has(props.status) ||\n DeltaOrderStatusChecker.executing.has(props.status);\n\n return (\n <div className=\"flex items-center justify-between\">\n <Rate extra={props.extra} classes={rateClasses} />\n <div className=\"flex items-center gap-1\">\n {overallPending && <TimeTillExpiry deadline={props.order.deadline} />}\n <StatusBadge status={props.status} />\n </div>\n </div>\n );\n};\n\nexport const TimeTillExpiry = ({\n deadline,\n classes,\n}: { deadline: number } & WithClasses<\"root\">) => {\n const duration = getDuration((deadline - Date.now() / 1000) * 1000);\n\n const parts = [\n { value: duration.asYears() > 1 ? duration.years() : null, unit: \"y\" },\n { value: duration.asMonths() > 1 ? duration.months() : null, unit: \"mo\" },\n { value: duration.asDays() > 1 ? duration.days() : null, unit: \"d\" },\n { value: duration.asHours() > 1 ? duration.hours() : null, unit: \"h\" },\n { value: duration.asMinutes() > 1 ? duration.minutes() : null, unit: \"m\" },\n ].filter((part) => isTruthy(part.value));\n\n if (!parts.length) return null;\n\n return (\n <div\n className={cn(\n \"text-xs flex gap-1 items-center dark:text-contrast-7\",\n classes?.root\n )}\n >\n {parts.map((part, i) => (\n <span key={i}>\n <span>{part.value}</span>\n <span>{part.unit}</span>\n </span>\n ))}\n </div>\n );\n};\n"],"names":["missingContent","LimitOrdersListItem","t0","$","_c","auction","onClick","t1","t2","t3","t4","srcTokenBadgeClasses","logo","root","destTokenBadgeClasses","networkIconClasses","name","TradeAndNetwork","extra","type","chainId","itemTypeToLabel","MARKET","LIMIT","P2P","Trade","srcToken","destToken","srcAmountUnit","destAmountUnit","formatTokenAmount","formattedSrcAmount","formattedDestAmount","address","img","network","t5","icons","t6","t7","t8","Symbol","for","t9","symbol","t10","typeAndAmounts","t11","Rate","classes","rateFormatted","calcRate","left","right","cn","StatusBadge","status","success","DeltaOrderStatusChecker","has","failed","overallPending","pending","executing","replaceUnderscoresWithSpaces","rateClasses","RateAndStatus","props","order","deadline","TimeTillExpiry","Date","now","duration","getDuration","value","asYears","years","unit","asMonths","months","asDays","days","asHours","hours","asMinutes","minutes","filter","_temp","parts","length","map","_temp2","part","isTruthy","part_0","i"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"LimitOrderListItem.js","sources":["../../../../src/components/widget/LimitOrdersDrawer/LimitOrderListItem.tsx"],"sourcesContent":["import { TokenBadge } from \"../TokenBadge/TokenBadge\";\nimport type { LimitOrderItem, LimitOrderItemExtra } from \"./types\";\nimport { NetworkWithIcon } from \"../NetworkWithIcon/NetworkWithIcon\";\nimport { formatTokenAmount } from \"@/lib/utils/formatTokenBalance\";\nimport { calcRate } from \"@/lib/utils/rate\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { cn, isTruthy, replaceUnderscoresWithSpaces } from \"@/lib/utils\";\nimport { DeltaOrderStatusChecker } from \"@/hooks/swap/prices/delta/orders/utils\";\nimport { getDuration } from \"@/lib/utils/time\";\nimport type { WithClasses } from \"@/types/withClasses\";\nimport type { DeltaAuctionStatus } from \"@velora-dex/sdk\";\n\nconst missingContent = \"-\";\n\nexport const LimitOrdersListItem = ({\n auction,\n onClick,\n}: {\n auction: LimitOrderItem;\n onClick: (auction: LimitOrderItem) => void;\n}) => {\n return (\n <div\n className={\"bg-white dark:bg-contrast-3 p-4 rounded-sm cursor-pointer\"}\n onClick={() => onClick(auction)}\n >\n <TradeAndNetwork {...auction} />\n <RateAndStatus {...auction} />\n </div>\n );\n};\n\nconst srcTokenBadgeClasses = { logo: \"size-[16px]\", root: \"z-1\" };\nconst destTokenBadgeClasses = { logo: \"size-[16px]\", root: \"-ml-1\" };\nconst networkIconClasses = { root: \"gap-2\", name: \"dark:text-contrast-7\" };\n\ntype ItemType = \"MARKET\" | \"LIMIT\" | \"P2P\";\n\nexport const TradeAndNetwork = ({\n extra,\n type,\n chainId,\n}: Pick<LimitOrderItem, \"extra\" | \"chainId\"> & {\n type: ItemType;\n}) => {\n return (\n <div className=\"flex items-center justify-between pb-4\">\n <Trade {...extra} type={type} />\n <NetworkWithIcon\n networkId={chainId as SupportedChainId}\n classes={networkIconClasses}\n />\n </div>\n );\n};\n\nconst itemTypeToLabel: Record<ItemType, string> = {\n MARKET: \"Swap\",\n LIMIT: \"Limit\",\n P2P: \"OTC\",\n};\n\nconst Trade = ({\n srcToken,\n destToken,\n srcAmountUnit,\n destAmountUnit,\n type,\n}: LimitOrderItemExtra & {\n type: ItemType;\n}) => {\n // @TODO we'll miss a big piece of info if we don't have the tokens\n // consider to fetch them onchain if missing in useQuery(select)\n // or just add more token lists\n if (!srcToken || !destToken || !srcAmountUnit || !destAmountUnit)\n return missingContent;\n\n const formattedSrcAmount = formatTokenAmount(srcAmountUnit);\n const formattedDestAmount = formatTokenAmount(destAmountUnit);\n\n const icons = (\n <div className=\"flex items-center\">\n <TokenBadge\n address={srcToken.address}\n chainId={srcToken.network}\n img={srcToken.img}\n classes={srcTokenBadgeClasses}\n />\n <TokenBadge\n address={destToken.address}\n img={destToken.img}\n chainId={destToken.network}\n classes={destTokenBadgeClasses}\n />\n </div>\n );\n\n const typeAndAmounts = (\n <div className=\"ml-2 flex flex-col\">\n <div className=\"text-xs font-medium text-contrast-5\">\n {itemTypeToLabel[type]}\n </div>\n <div className=\"text-sm font-medium dark:text-contrast-9\">\n {srcToken.symbol} {formattedSrcAmount}\n <span className=\"mx-1\">→</span>\n {destToken.symbol} {formattedDestAmount}\n </div>\n </div>\n );\n\n return (\n <div className=\"flex items-center\">\n {icons}\n {typeAndAmounts}\n </div>\n );\n};\n\nexport const Rate = ({\n extra,\n classes,\n}: Pick<LimitOrderItem, \"extra\"> & WithClasses<\"root\" | \"left\" | \"right\">) => {\n const { srcToken, destToken, srcAmountUnit, destAmountUnit } = extra;\n if (!srcToken || !destToken || !srcAmountUnit || !destAmountUnit)\n return missingContent;\n\n const rateFormatted = calcRate(srcAmountUnit, destAmountUnit)?.rateFormatted;\n if (!rateFormatted) return missingContent;\n\n const left = `${formatTokenAmount(rateFormatted)} ${destToken.symbol}`;\n const right = `per ${srcToken.symbol}`;\n\n return (\n <div className={cn(\"text-xs\", classes?.root)}>\n <span className={classes?.left}>{left}</span>{\" \"}\n <span className={classes?.right}>{right}</span>\n </div>\n );\n};\n\nexport const StatusBadge = ({ status }: { status: DeltaAuctionStatus }) => {\n const success = DeltaOrderStatusChecker.success.has(status);\n const failed = DeltaOrderStatusChecker.failed.has(status);\n const overallPending =\n DeltaOrderStatusChecker.pending.has(status) ||\n DeltaOrderStatusChecker.executing.has(status);\n\n return (\n <div\n className={cn(\"text-[10px] p-0.5 px-2 rounded-lg w-max\", {\n \"text-secondary-shamrock-green-2 bg-[#00976733]\": success,\n \"text-secondary-radical-red-1 bg-[#FF3B301A]\": failed,\n \"text-secondary-orange-peel-1 bg-[#FF950033]\": overallPending,\n })}\n >\n {replaceUnderscoresWithSpaces(status)}\n </div>\n );\n};\n\nconst rateClasses = {\n left: \"dark:text-contrast-7\",\n right: \"text-contrast-5\",\n};\n\nconst RateAndStatus = (props: LimitOrderItem) => {\n const overallPending =\n DeltaOrderStatusChecker.pending.has(props.status) ||\n DeltaOrderStatusChecker.executing.has(props.status);\n\n return (\n <div className=\"flex items-center justify-between\">\n <Rate extra={props.extra} classes={rateClasses} />\n <div className=\"flex items-center gap-1\">\n {overallPending && <TimeTillExpiry deadline={props.order.deadline} />}\n <StatusBadge status={props.status} />\n </div>\n </div>\n );\n};\n\nexport const TimeTillExpiry = ({\n deadline,\n classes,\n}: { deadline: number } & WithClasses<\"root\">) => {\n const duration = getDuration((deadline - Date.now() / 1000) * 1000);\n\n const parts = [\n { value: duration.asYears() > 1 ? duration.years() : null, unit: \"y\" },\n { value: duration.asMonths() > 1 ? duration.months() : null, unit: \"mo\" },\n { value: duration.asDays() > 1 ? duration.days() : null, unit: \"d\" },\n { value: duration.asHours() > 1 ? duration.hours() : null, unit: \"h\" },\n { value: duration.asMinutes() > 1 ? duration.minutes() : null, unit: \"m\" },\n ].filter((part) => isTruthy(part.value));\n\n if (!parts.length) return null;\n\n return (\n <div\n className={cn(\n \"text-xs flex gap-1 items-center dark:text-contrast-7\",\n classes?.root\n )}\n >\n {parts.map((part, i) => (\n <span key={i}>\n <span>{part.value}</span>\n <span>{part.unit}</span>\n </span>\n ))}\n </div>\n );\n};\n"],"names":["missingContent","LimitOrdersListItem","t0","$","_c","auction","onClick","t1","t2","t3","t4","srcTokenBadgeClasses","logo","root","destTokenBadgeClasses","networkIconClasses","name","TradeAndNetwork","extra","type","chainId","itemTypeToLabel","MARKET","LIMIT","P2P","Trade","srcToken","destToken","srcAmountUnit","destAmountUnit","formatTokenAmount","formattedSrcAmount","formattedDestAmount","address","img","network","t5","icons","t6","t7","t8","Symbol","for","t9","symbol","t10","typeAndAmounts","t11","Rate","classes","bb0","rateFormatted","calcRate","left","right","cn","StatusBadge","status","success","DeltaOrderStatusChecker","has","failed","overallPending","pending","executing","replaceUnderscoresWithSpaces","rateClasses","RateAndStatus","props","order","deadline","TimeTillExpiry","duration","getDuration","Date","now","value","asYears","years","unit","asMonths","months","asDays","days","asHours","hours","asMinutes","minutes","filter","_temp","parts","length","map","_temp2","part","isTruthy","part_0","i"],"mappings":"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"}
|