@velora-dex/widget 0.3.13-dev.1 → 0.4.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/components/web3/ConnectExternalProvider/AutoconnectExternal.d.ts.map +1 -1
- package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js +75 -63
- package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js.map +1 -1
- package/dist/components/web3/ConnectExternalProvider/constants.d.ts +14 -0
- package/dist/components/web3/ConnectExternalProvider/constants.d.ts.map +1 -0
- package/dist/components/web3/ConnectExternalProvider/constants.js +6 -0
- package/dist/components/web3/ConnectExternalProvider/constants.js.map +1 -0
- package/dist/components/web3/ConnectExternalProvider/metamaskProviderWrapper.d.ts +15 -0
- package/dist/components/web3/ConnectExternalProvider/metamaskProviderWrapper.d.ts.map +1 -0
- package/dist/components/web3/ConnectExternalProvider/metamaskProviderWrapper.js +56 -0
- package/dist/components/web3/ConnectExternalProvider/metamaskProviderWrapper.js.map +1 -0
- package/dist/components/web3/ConnectExternalProvider/safeProviderWrapper.d.ts +6 -0
- package/dist/components/web3/ConnectExternalProvider/safeProviderWrapper.d.ts.map +1 -0
- package/dist/components/web3/ConnectExternalProvider/safeProviderWrapper.js +76 -0
- package/dist/components/web3/ConnectExternalProvider/safeProviderWrapper.js.map +1 -0
- package/dist/components/web3/ConnectExternalProvider/utils.d.ts +23 -0
- package/dist/components/web3/ConnectExternalProvider/utils.d.ts.map +1 -0
- package/dist/components/web3/ConnectExternalProvider/utils.js +42 -0
- package/dist/components/web3/ConnectExternalProvider/utils.js.map +1 -0
- package/dist/components/web3/ConnectWallets/index.js.map +1 -1
- package/dist/components/web3/ConnectWallets/walletIcons.d.ts +8 -1
- package/dist/components/web3/ConnectWallets/walletIcons.d.ts.map +1 -1
- package/dist/components/web3/ConnectWallets/walletIcons.js +23 -9
- package/dist/components/web3/ConnectWallets/walletIcons.js.map +1 -1
- package/dist/components/widget/ReceiverAddress/state/subscriptions.d.ts.map +1 -1
- package/dist/components/widget/ReceiverAddress/state/subscriptions.js +11 -5
- package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js +95 -79
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.d.ts +1 -1
- package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js +60 -89
- package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js +1 -0
- package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/utils/preWrap.d.ts +4 -1
- package/dist/components/widget/TradeOverview/utils/preWrap.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/utils/preWrap.js +2 -1
- package/dist/components/widget/TradeOverview/utils/preWrap.js.map +1 -1
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.d.ts +2 -2
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.d.ts.map +1 -1
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js +22 -23
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js.map +1 -1
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js +1 -1
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js.map +1 -1
- package/dist/components/widget/WrapEth/hooks/useWrapEthProps.d.ts +2 -0
- package/dist/components/widget/WrapEth/hooks/useWrapEthProps.d.ts.map +1 -1
- package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js +236 -3
- package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js.map +1 -1
- package/dist/configurator/Configurator.d.ts.map +1 -1
- package/dist/configurator/Safe/SafeConnector.d.ts +23 -0
- package/dist/configurator/Safe/SafeConnector.d.ts.map +1 -0
- package/dist/configurator/Safe/useSafeConnector.d.ts +8 -0
- package/dist/configurator/Safe/useSafeConnector.d.ts.map +1 -0
- package/dist/core/LimitOrderButton.d.ts.map +1 -1
- package/dist/core/LimitOrderButton.js +40 -18
- package/dist/core/LimitOrderButton.js.map +1 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +46 -24
- package/dist/core/index.js.map +1 -1
- package/dist/core/state/configAtom.d.ts.map +1 -1
- package/dist/core/state/configAtom.js +5 -1
- package/dist/core/state/configAtom.js.map +1 -1
- package/dist/core/state/externalProviderAtom.d.ts +6 -0
- package/dist/core/state/externalProviderAtom.d.ts.map +1 -1
- package/dist/core/state/externalProviderAtom.js +4 -1
- package/dist/core/state/externalProviderAtom.js.map +1 -1
- package/dist/events/getters/swap.d.ts.map +1 -1
- package/dist/events/getters/swap.js +2 -1
- package/dist/events/getters/swap.js.map +1 -1
- package/dist/events/getters/widgetState.d.ts.map +1 -1
- package/dist/events/getters/widgetState.js +22 -1
- package/dist/events/getters/widgetState.js.map +1 -1
- package/dist/events/hooks/useOnWalletConnect.d.ts.map +1 -1
- package/dist/events/hooks/useOnWalletConnect.js +17 -1
- package/dist/events/hooks/useOnWalletConnect.js.map +1 -1
- package/dist/events/types/common.d.ts +7 -0
- package/dist/events/types/common.d.ts.map +1 -1
- package/dist/events/types/connectWallet.d.ts +4 -3
- package/dist/events/types/connectWallet.d.ts.map +1 -1
- package/dist/events/types/index.d.ts.map +1 -1
- package/dist/hooks/batch/useAwaitCalls.d.ts.map +1 -1
- package/dist/hooks/batch/useAwaitCalls.js.map +1 -1
- package/dist/hooks/connectors/useIsConnectedSafe.d.ts +1 -0
- package/dist/hooks/connectors/useIsConnectedSafe.d.ts.map +1 -1
- package/dist/hooks/connectors/useIsConnectedSafe.js +10 -3
- package/dist/hooks/connectors/useIsConnectedSafe.js.map +1 -1
- package/dist/hooks/connectors/useIsGnosisSafeConnector.d.ts +5 -1
- package/dist/hooks/connectors/useIsGnosisSafeConnector.d.ts.map +1 -1
- package/dist/hooks/connectors/useIsGnosisSafeConnector.js +3 -4
- package/dist/hooks/connectors/useIsGnosisSafeConnector.js.map +1 -1
- package/dist/hooks/connectors/useIsSafeThroughWalletConnect.d.ts +3 -1
- package/dist/hooks/connectors/useIsSafeThroughWalletConnect.d.ts.map +1 -1
- package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js +55 -11
- package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js.map +1 -1
- package/dist/hooks/otc/mutations/useFillOrder.js +2 -1
- package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -1
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js +1 -0
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js.map +1 -1
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.d.ts.map +1 -1
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.js +7 -4
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.d.ts +1 -13
- package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.js +1 -80
- package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.js +2 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.js.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.js +113 -98
- package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts +3 -1
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js +22 -2
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +2 -3
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +14 -37
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +2 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +14 -36
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js +7 -4
- package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
- package/dist/hooks/txs/queries/useAwaitTx.d.ts.map +1 -1
- package/dist/hooks/txs/queries/useAwaitTx.js +114 -20
- package/dist/hooks/txs/queries/useAwaitTx.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/lib/constants/storage.d.ts +1 -1
- package/dist/lib/constants/storage.d.ts.map +1 -1
- package/dist/lib/constants/storage.js +3 -1
- package/dist/lib/constants/storage.js.map +1 -1
- package/dist/lib/utils/index.d.ts.map +1 -1
- package/dist/lib/utils/index.js.map +1 -1
- package/dist/lib/utils/toasts.d.ts +1 -1
- package/dist/lib/utils/toasts.d.ts.map +1 -1
- package/dist/lib/utils/toasts.js +5 -1
- package/dist/lib/utils/toasts.js.map +1 -1
- package/dist/lib/web3/privy/config.js +1 -1
- package/dist/lib/web3/wagmi/config.d.ts.map +1 -1
- package/dist/lib/web3/wagmi/config.js +2 -2
- package/dist/lib/web3/wagmi/config.js.map +1 -1
- package/dist/lib/web3/wagmi/external.d.ts +11 -3
- package/dist/lib/web3/wagmi/external.d.ts.map +1 -1
- package/dist/lib/web3/wagmi/external.js +28 -2
- package/dist/lib/web3/wagmi/external.js.map +1 -1
- package/dist/lib/web3/wagmi/isInIframe.d.ts +2 -0
- package/dist/lib/web3/wagmi/isInIframe.d.ts.map +1 -0
- package/dist/lib/web3/wagmi/isInIframe.js +4 -0
- package/dist/lib/web3/wagmi/isInIframe.js.map +1 -0
- package/dist/lib/web3/wagmi/isInsideSafeIframe.d.ts +0 -1
- package/dist/lib/web3/wagmi/isInsideSafeIframe.d.ts.map +1 -1
- package/dist/lib/web3/wagmi/isInsideSafeIframe.js +2 -2
- package/dist/lib/web3/wagmi/isInsideSafeIframe.js.map +1 -1
- package/dist/lib/web3/wagmi/switchChain.d.ts.map +1 -1
- package/dist/lib/web3/wagmi/switchChain.js +3 -3
- package/dist/lib/web3/wagmi/switchChain.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/transactions/hash.d.ts +7 -0
- package/dist/transactions/hash.d.ts.map +1 -0
- package/dist/transactions/hash.js +34 -0
- package/dist/transactions/hash.js.map +1 -0
- package/dist/transactions/queries/ensureCallsStatus.d.ts.map +1 -1
- package/dist/transactions/queries/ensureCallsStatus.js +14 -3
- package/dist/transactions/queries/ensureCallsStatus.js.map +1 -1
- package/dist/transactions/queries/ensureTxReceipt.d.ts.map +1 -1
- package/dist/transactions/queries/ensureTxReceipt.js +48 -12
- package/dist/transactions/queries/ensureTxReceipt.js.map +1 -1
- package/dist/transactions/state/effects/finalize.d.ts +7 -1
- package/dist/transactions/state/effects/finalize.d.ts.map +1 -1
- package/dist/transactions/state/effects/finalize.js +53 -7
- package/dist/transactions/state/effects/finalize.js.map +1 -1
- package/dist/transactions/state/hooks/useActivateEffects.d.ts.map +1 -1
- package/dist/transactions/state/hooks/useActivateEffects.js +4 -2
- package/dist/transactions/state/hooks/useActivateEffects.js.map +1 -1
- package/dist/transactions/state/transactionsActionAtom.d.ts.map +1 -1
- package/dist/transactions/state/transactionsActionAtom.js +74 -18
- package/dist/transactions/state/transactionsActionAtom.js.map +1 -1
- package/dist/transactions/state/transactionsAtom.js +2 -2
- package/dist/transactions/state/transactionsAtom.js.map +1 -1
- package/dist/transactions/types.d.ts +33 -10
- package/dist/transactions/types.d.ts.map +1 -1
- package/dist/transactions/utils.d.ts +2 -1
- package/dist/transactions/utils.d.ts.map +1 -1
- package/dist/transactions/utils.js +7 -1
- package/dist/transactions/utils.js.map +1 -1
- package/package.json +4 -2
- package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.d.ts +0 -69
- package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.d.ts.map +0 -1
- package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js +0 -192
- package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFillOtcOrderFlow.js","sources":["../../../../src/hooks/otc/tradeFlow/useFillOtcOrderFlow.ts"],"sourcesContent":["import { useAccount, useChainId } from \"wagmi\";\nimport { assert } from \"ts-essentials\";\nimport { useAwaitTx, useEnsureTxReceipt } from \"@/hooks/txs/queries/useAwaitTx\";\nimport {\n zeroAddress,\n type Address,\n type Hash,\n type TransactionReceipt,\n} from \"viem\";\nimport type {\n ApprovalFlowResult,\n SignPermitFlowResult,\n SubmitTxResult,\n} from \"../../swap/tradeFlow/common/types\";\n\nimport { useMinViemClient } from \"@/hooks/useMinViemClient\";\nimport { useMutation } from \"@tanstack/react-query\";\nimport { useRef } from \"react\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { UserCancelledError } from \"../../swap/tradeFlow/common/errors\";\nimport {\n type CallsSentObject,\n type TxSentObject,\n} from \"@/lib/utils/transactionHandlers\";\nimport { useApproveOrPermit } from \"../../swap/tradeFlow/common/useApproveOrPermit\";\nimport { useLogger } from \"@/core/logger\";\n\nimport type { LimitOrderFromApi } from \"@velora-dex/sdk\";\nimport { useFillOrder, type OrderFillData } from \"../mutations/useFillOrder\";\nimport {\n useMarkPermit1Or2NonceAsUsed,\n type SignedPermitResult,\n} from \"@/hooks/swap/tradeFlow/common/useSignPermit1Or2\";\nimport type { FillableOtcOrderItem } from \"@/components/widget/OtcOrderItem/types\";\nimport { useWidgetEvents } from \"@/core/state/widgetEventsAtom\";\nimport { useCanBatchTxs } from \"@/hooks/batch/useCanBatchTxs\";\nimport { useBatchWithApproveTxs } from \"@/hooks/batch/useBatchWithApproveTxs\";\nimport { useSendBatchTx } from \"@/hooks/batch/useSendBatchTx\";\nimport {\n useAwaitCalls,\n useEnsureCallsStatus,\n type CallsReceipt,\n} from \"@/hooks/batch/useAwaitCalls\";\nimport { useCalldataSDK } from \"@/hooks/useSDK\";\n\nconst fillOtcOrderFlowType = \"fillOtcOrder\";\n\nexport type UseFillOtcOrderFlowInput = {\n order?: FillableOtcOrderItem;\n};\n\nexport type SubmitFillOtcOrderResult = {\n tradeFlowType: typeof fillOtcOrderFlowType;\n approve: SubmitTxResult;\n fill: {\n order: LimitOrderFromApi;\n txHash?: Hash;\n txReceipt?: TransactionReceipt;\n };\n account: Address;\n receiverAddress?: Address;\n};\n\ntype OnTxSent = (txSent: TxSentObject | CallsSentObject) => void;\n\ntype RunFillOtcOrderOptions = {\n onTxSent?: OnTxSent;\n};\n\nexport type UseFillOtcOrderFlowResult = {\n tradeFlowType: typeof fillOtcOrderFlowType;\n chainId: SupportedChainId;\n runFillOtcOrderFlow: (\n options?: RunFillOtcOrderOptions\n ) => Promise<SubmitFillOtcOrderResult>;\n reset: () => void; // reset on Error to retry\n cancelFlow: () => void; // cancel flow\n retryFlow: (\n options?: RunFillOtcOrderOptions\n ) => Promise<SubmitFillOtcOrderResult>; // reset and retry flow\n approval: ApprovalFlowResult;\n signPermit: SignPermitFlowResult;\n fillOrder: {\n txHash?: Hash;\n receipt?: TransactionReceipt;\n isConfirmingTX: boolean;\n isConfirmingTxError: boolean;\n isTxSent: boolean;\n isTxPending: boolean;\n isTxMined: boolean;\n isTxAwaitingError: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n fillOrderBatch: {\n canBatchTxs?: boolean;\n callsId?: string;\n txHash?: Hash;\n receipt?: CallsReceipt;\n isConfirmingCalls: boolean;\n isConfirmingCallsError: boolean;\n isCallsSent: boolean;\n isCallsPending: boolean;\n isCallsMined: boolean;\n isCallsAwaitingError: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n isPending: boolean;\n isSuccess: boolean;\n isError: boolean;\n error: Error | null;\n result?: SubmitFillOtcOrderResult;\n};\n\nconst OTC_ORDER_MUTATION_KEY = \"runFillOtcOrderFlow\";\n\nexport function useFillOtcOrderFlow({\n order,\n}: UseFillOtcOrderFlowInput): UseFillOtcOrderFlowResult {\n const logger = useLogger(\"FillOtcOrderFlow\");\n const chainId = useChainId();\n\n /* Inside useApproveOrPermit:\n 1. Get allowance for tokenFrom \n 2.1. submit Approve tx if necessary \n\n 2.2. sign Permit1 \n\n 3. await Approve tx (if not using Permit) \n */\n const {\n approval,\n signPermit,\n approveTxMut,\n signPermitMut,\n events: approveOrPermitEvents,\n } = useApproveOrPermit({\n srcToken: order?.takerAsset,\n srcAmount: order?.takerAmount,\n spenderContractType: \"AugustusRFQ\",\n swapSide: \"SELL\",\n tradeMode: \"otc\",\n chainId,\n });\n\n const { address: account } = useAccount();\n\n const { minClient } = useMinViemClient({\n chainId,\n account,\n });\n\n const { sdk: callDataSDK } = useCalldataSDK({\n chainId,\n client: minClient,\n });\n\n /* 4. Submit fill OTC Order tx */\n\n // 4.1. submit standalone tx\n const fillOrderMut = useFillOrder({\n chainId,\n account,\n client: minClient,\n mutationOptions: {\n onSuccess: (order) => {\n logger.log(\"Fill OTC Order success\", order);\n },\n onError: (error) => {\n logger.error(\"Fill OTC Order error\", error);\n },\n },\n });\n\n /* 4.2. submit Batch tx */\n const { forCurrentChain: canBatchTxs } = useCanBatchTxs();\n const { addTxWithApprovals } = useBatchWithApproveTxs();\n\n const batchTxMut = useSendBatchTx({\n onSuccess: () => {\n logger.log(\"Batch tx success\");\n },\n onError: (error) => {\n logger.error(\"Batch tx error\", error);\n },\n });\n\n /* Await tx */\n\n /* 5.1. await standalone Fill tx */\n const fillTxMined = useAwaitTx({\n chainId,\n hash: fillOrderMut.data,\n });\n\n /* 5.2. await Batch tx */\n const batchTxMined = useAwaitCalls({\n id: batchTxMut.data?.id,\n });\n\n const fillOrder: UseFillOtcOrderFlowResult[\"fillOrder\"] = {\n txHash: fillOrderMut.data,\n receipt: fillTxMined.data,\n /* tx sending */\n isConfirmingTX: fillOrderMut.isPending,\n isConfirmingTxError: fillOrderMut.isError,\n isTxSent: fillOrderMut.isSuccess,\n /* tx awaiting */\n isTxPending: fillTxMined.isPending,\n isTxMined: fillTxMined.isSuccess,\n isTxAwaitingError: fillTxMined.isError,\n /* combined */\n isPending: fillOrderMut.isPending || fillTxMined.isLoading,\n isSuccess: fillTxMined.isSuccess, // success only when tx is mined\n isError: fillOrderMut.isError || fillTxMined.isError,\n error: fillOrderMut.error || fillTxMined.error,\n };\n\n // for a successful SendCalls execution there will either be one receipt only,\n // or several receipts with the last one for the last tx from the batch\n const lastCallsReceipt =\n batchTxMined.data?.receipts?.[batchTxMined.data.receipts.length - 1];\n\n const fillOrderBatch: UseFillOtcOrderFlowResult[\"fillOrderBatch\"] = {\n canBatchTxs,\n callsId: batchTxMut.data?.id,\n txHash: lastCallsReceipt?.transactionHash,\n receipt: lastCallsReceipt,\n /* calls sending */\n isConfirmingCalls: batchTxMut.isPending,\n isConfirmingCallsError: batchTxMut.isError,\n isCallsSent: batchTxMut.isSuccess,\n /* calls awaiting */\n isCallsPending: batchTxMined.isLoading,\n isCallsMined: batchTxMined.isSuccess,\n isCallsAwaitingError: batchTxMined.isError,\n /* combined */\n isPending: batchTxMut.isPending || batchTxMined.isLoading,\n isSuccess: batchTxMined.isSuccess,\n isError: batchTxMut.isError || batchTxMined.isError,\n error: batchTxMut.error || batchTxMined.error,\n };\n\n const ensureTxReceipt = useEnsureTxReceipt();\n const ensureCallsStatus = useEnsureCallsStatus();\n\n const currentAbortControllerRef = useRef<AbortController | null>(null);\n\n const cancelFlow = () => {\n currentAbortControllerRef.current?.abort(new UserCancelledError());\n currentAbortControllerRef.current = null;\n };\n\n const { markNonceAsUsed, clearNonce } = useMarkPermit1Or2NonceAsUsed({\n chainId,\n });\n\n const events = useWidgetEvents();\n\n const submitFillTx = async ({\n onTxSent,\n }: RunFillOtcOrderOptions = {}): Promise<SubmitFillOtcOrderResult> => {\n // reset all mutations except the current one,\n // otherwise we'll have previous data (txs) as mutation results\n approveTxMut.reset();\n signPermitMut.reset();\n fillOrderMut.reset();\n batchTxMut.reset();\n\n // no sense in starting flow without an order\n assert(order, \"no order to fill\");\n assert(order.taker !== zeroAddress, \"taker must not be zero address\");\n\n const abortController = new AbortController();\n currentAbortControllerRef.current = abortController;\n\n const signal = abortController.signal;\n\n let signedPermitResult: SignedPermitResult | undefined;\n\n let approveTxHash: Hash | undefined;\n let approveTxReceipt: TransactionReceipt | undefined;\n\n const allowanceToSet = approval.allowanceToSet;\n const allowanceToPermit = signPermit.amountToPermit;\n\n const baseEventParams = {\n orderHash: order.orderHash,\n orderType: \"OTC\" as const,\n orderSubType: order.type,\n };\n\n events.onFillOTCOrder?.({\n event: {\n name: \"FillOTCOrder:request\",\n params: baseEventParams,\n },\n });\n\n const shouldBatchTxs =\n canBatchTxs && approval.needsApproval && !!allowanceToSet;\n\n try {\n // need allowance\n if (!shouldBatchTxs && approval.needsApproval && allowanceToSet) {\n const tryPermit =\n signPermit.isPermitSupported && signPermit.isPermitReadyToSign;\n try {\n if (!tryPermit) {\n // Token doesn't support Permit\n // make an Approval tx\n approveOrPermitEvents.onApproveTx.request({ allowanceToSet });\n\n approveTxHash = await approveTxMut.approveAsync({\n allowanceData: {\n allowanceToSet,\n },\n });\n\n approveOrPermitEvents.onApproveTx.sent({\n allowanceToSet,\n txHash: approveTxHash,\n });\n\n // if aborted by this point, throw an error\n signal.throwIfAborted();\n\n const approveTxReceiptPromise = ensureTxReceipt({\n hash: approveTxHash,\n chainId,\n onReplaced: (data) => {\n logger.log(\"onReplaced:approveTx\", approveTxHash, data);\n },\n });\n\n if (onTxSent) {\n onTxSent({\n chainId,\n action: \"approve\",\n transactionHash: approveTxHash,\n receiptPromise: approveTxReceiptPromise,\n transactionSpecificData: {\n action: \"approve\",\n approvedAmount: allowanceToSet,\n tokenAddress: approval.token as Address,\n spenderAddress: approval.spender as Address,\n },\n });\n }\n\n approveTxReceipt = await approveTxReceiptPromise;\n\n approveOrPermitEvents.onApproveTx.confirmed({\n allowanceToSet,\n txHash: approveTxHash,\n txReceipt: approveTxReceipt,\n });\n\n logger.log(\"~ approveTx ~ receipt:\", approveTxReceipt);\n // @TODO check if we need to see if receipt.status === \"reverted\" and throw,\n // or if waitForTransactionReceipt already throws on such receipts\n } else {\n approveOrPermitEvents.onSignPermit.request({\n allowanceToSet: allowanceToPermit,\n });\n\n // sign Permit\n signedPermitResult = await signPermitMut.signPermitAsync({\n value: allowanceToPermit,\n });\n\n approveOrPermitEvents.onSignPermit.confirmed({\n allowanceToSet: allowanceToPermit,\n permit: signedPermitResult?.permitEncodedArgs,\n });\n }\n } catch (error) {\n if (!tryPermit) {\n approveOrPermitEvents.onApproveTx.failed({\n allowanceToSet,\n error: error as Error,\n txHash: approveTxHash, // won't necessarily be available\n });\n } else {\n approveOrPermitEvents.onSignPermit.failed({\n allowanceToSet: allowanceToPermit,\n error: error as Error,\n });\n }\n throw error;\n }\n }\n\n // if aborted by this point, throw an error\n signal.throwIfAborted();\n\n assert(account, \"Account is not connected\");\n\n const orderFillData: OrderFillData = {\n order,\n signature: order.signature,\n };\n\n if (signedPermitResult) {\n orderFillData.takerPermit = {\n encodedPermitParams: signedPermitResult.permitEncodedArgs,\n };\n }\n\n let fillTxHash: Hash | undefined;\n let fillCallsId: string | undefined;\n\n if (shouldBatchTxs) {\n assert(callDataSDK, \"callDataSDK is not initialized\");\n\n const calldata = await callDataSDK.fillOrderDirectly({\n order,\n signature: order.signature,\n });\n\n const { calls } = await addTxWithApprovals({\n txsParams: [\n {\n to: approval.spender,\n account,\n data: calldata,\n value: 0n,\n chainId,\n },\n ],\n approveProps: [\n {\n spender: approval.spender,\n allowanceToSet: approval.allowanceToSet,\n token: approval.token,\n chainId: approval.chainId,\n },\n ],\n });\n const sendCallsResult = await batchTxMut.sendCalls({\n txsParams: calls,\n });\n fillCallsId = sendCallsResult.id;\n\n events.onFillOTCOrder?.({\n event: {\n name: \"FillOTCOrder:sent\",\n params: {\n callsId: fillCallsId,\n ...baseEventParams,\n },\n },\n });\n } else {\n fillTxHash = await fillOrderMut.mutateAsync({\n orderFillData,\n signal,\n });\n\n events.onFillOTCOrder?.({\n event: {\n name: \"FillOTCOrder:sent\",\n params: {\n txHash: fillTxHash,\n ...baseEventParams,\n },\n },\n });\n }\n\n // no use aborting past this point, tx is already sent,\n // but we may want to connect this late abortion to tx cancellation, in the future\n\n // tx is sent, consider Token nonce as used\n if (signedPermitResult) {\n markNonceAsUsed(signedPermitResult.signedPermitData);\n }\n\n let fillCallsReceipt: CallsReceipt | undefined;\n let fillTxReceipt: TransactionReceipt | undefined;\n\n if (fillCallsId) {\n const sendCallsReceiptPromise = ensureCallsStatus({\n id: fillCallsId,\n }).then((status) => status.receipts?.[status.receipts.length - 1]);\n\n logger.log(\"~ fillTx ~ awaiting calls id :\", fillCallsId);\n\n if (onTxSent) {\n onTxSent({\n chainId,\n callsId: fillCallsId,\n action: \"fillOtcOrder\",\n receiptPromise: sendCallsReceiptPromise,\n transactionSpecificData: {\n action: \"fillOtcOrder\",\n filledOrder: order,\n },\n });\n }\n\n fillCallsReceipt = await sendCallsReceiptPromise;\n\n if (fillCallsReceipt) {\n events.onFillOTCOrder?.({\n event: {\n name: \"FillOTCOrder:confirmed\",\n params: {\n callsId: fillCallsId,\n callsReceipt: fillCallsReceipt,\n ...baseEventParams,\n },\n },\n });\n }\n } else if (fillTxHash) {\n const fillTxReceiptPromise = ensureTxReceipt({\n hash: fillTxHash,\n chainId,\n onReplaced: (data) => {\n logger.log(\"onReplaced:fillTx\", fillTxHash, data);\n },\n });\n\n logger.log(\"~ fillTx ~ awaiting tx hash :\", fillTxHash);\n\n if (onTxSent) {\n onTxSent({\n chainId,\n transactionHash: fillTxHash,\n action: \"fillOtcOrder\",\n receiptPromise: fillTxReceiptPromise,\n transactionSpecificData: {\n action: \"fillOtcOrder\",\n filledOrder: order,\n },\n });\n }\n\n fillTxReceipt = await fillTxReceiptPromise;\n\n events.onFillOTCOrder?.({\n event: {\n name: \"FillOTCOrder:confirmed\",\n params: {\n txHash: fillTxHash,\n txReceipt: fillTxReceipt,\n ...baseEventParams,\n },\n },\n });\n }\n\n logger.log(\"~ fillTx ~ receipt:\", fillCallsReceipt || fillTxReceipt);\n // @TODO check if we need to see if receipt.status === \"reverted\" and throw,\n // or if waitForTransactionReceipt already throws on such receipts\n\n return {\n tradeFlowType: fillOtcOrderFlowType,\n approve: {\n txHash: approveTxHash,\n receipt: approveTxReceipt,\n },\n fill: {\n txHash: fillTxHash,\n txReceipt: fillTxReceipt,\n order,\n },\n account,\n receiverAddress: order.taker as Address,\n };\n } catch (error) {\n events.onFillOTCOrder?.({\n event: {\n name: \"FillOTCOrder:failed\",\n params: {\n ...baseEventParams,\n error: error as Error,\n },\n },\n });\n // Fill order failed, we can't be sure if nonce can be reused or it was incremented in a different tx\n if (signedPermitResult) {\n clearNonce(signedPermitResult.signedPermitData);\n }\n throw error;\n }\n };\n\n const runFillOrderMut = useMutation({\n mutationFn: submitFillTx,\n mutationKey: [OTC_ORDER_MUTATION_KEY],\n onSuccess: (data) => {\n logger.log(\"Fill order flow success\", data);\n },\n onError: (error) => {\n logger.error(\"Fill order flow error\", error);\n },\n onSettled: () => {\n logger.log(\"Fill order flow settled\");\n },\n });\n\n const runFillOtcOrderFlow = runFillOrderMut.mutateAsync;\n\n const reset = () => {\n approveTxMut.reset();\n signPermitMut.reset();\n fillOrderMut.reset();\n batchTxMut.reset();\n runFillOrderMut.reset();\n };\n\n const retryFlow = (\n options?: RunFillOtcOrderOptions\n ): Promise<SubmitFillOtcOrderResult> => {\n reset();\n return runFillOtcOrderFlow(options);\n };\n\n /* 5. return result */\n return {\n tradeFlowType: fillOtcOrderFlowType,\n chainId,\n runFillOtcOrderFlow,\n reset,\n cancelFlow,\n retryFlow,\n approval,\n signPermit,\n fillOrder,\n fillOrderBatch,\n isPending: runFillOrderMut.isPending,\n isSuccess: runFillOrderMut.isSuccess,\n isError: runFillOrderMut.isError,\n error: runFillOrderMut.error,\n result: runFillOrderMut.data,\n };\n}\n"],"names":["fillOtcOrderFlowType","OTC_ORDER_MUTATION_KEY","useFillOtcOrderFlow","order","logger","useLogger","chainId","useChainId","approval","signPermit","approveTxMut","signPermitMut","events","approveOrPermitEvents","useApproveOrPermit","srcToken","takerAsset","srcAmount","takerAmount","spenderContractType","swapSide","tradeMode","address","account","useAccount","minClient","useMinViemClient","sdk","callDataSDK","useCalldataSDK","client","fillOrderMut","useFillOrder","mutationOptions","onSuccess","log","onError","error","forCurrentChain","canBatchTxs","useCanBatchTxs","addTxWithApprovals","useBatchWithApproveTxs","batchTxMut","useSendBatchTx","fillTxMined","useAwaitTx","hash","data","batchTxMined","useAwaitCalls","id","fillOrder","txHash","receipt","isConfirmingTX","isPending","isConfirmingTxError","isError","isTxSent","isSuccess","isTxPending","isTxMined","isTxAwaitingError","isLoading","lastCallsReceipt","receipts","length","fillOrderBatch","callsId","transactionHash","isConfirmingCalls","isConfirmingCallsError","isCallsSent","isCallsPending","isCallsMined","isCallsAwaitingError","ensureTxReceipt","useEnsureTxReceipt","ensureCallsStatus","useEnsureCallsStatus","currentAbortControllerRef","useRef","cancelFlow","current","abort","UserCancelledError","markNonceAsUsed","clearNonce","useMarkPermit1Or2NonceAsUsed","useWidgetEvents","submitFillTx","onTxSent","reset","assert","taker","zeroAddress","abortController","AbortController","signal","signedPermitResult","approveTxHash","approveTxReceipt","allowanceToSet","allowanceToPermit","amountToPermit","baseEventParams","orderHash","orderType","orderSubType","type","onFillOTCOrder","event","name","params","shouldBatchTxs","needsApproval","tryPermit","isPermitSupported","isPermitReadyToSign","onApproveTx","request","approveAsync","allowanceData","sent","throwIfAborted","approveTxReceiptPromise","onReplaced","action","receiptPromise","transactionSpecificData","approvedAmount","tokenAddress","token","spenderAddress","spender","confirmed","txReceipt","onSignPermit","signPermitAsync","value","permit","permitEncodedArgs","failed","orderFillData","signature","takerPermit","encodedPermitParams","fillTxHash","fillCallsId","calldata","fillOrderDirectly","calls","txsParams","to","approveProps","sendCallsResult","sendCalls","mutateAsync","signedPermitData","fillCallsReceipt","fillTxReceipt","sendCallsReceiptPromise","then","status","filledOrder","callsReceipt","fillTxReceiptPromise","tradeFlowType","approve","fill","receiverAddress","runFillOrderMut","useMutation","mutationFn","mutationKey","onSettled","runFillOtcOrderFlow","retryFlow","options","result"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useFillOtcOrderFlow.js","sources":["../../../../src/hooks/otc/tradeFlow/useFillOtcOrderFlow.ts"],"sourcesContent":["import { useAccount, useChainId } from \"wagmi\";\nimport { assert } from \"ts-essentials\";\nimport { useAwaitTx, useEnsureTxReceipt } from \"@/hooks/txs/queries/useAwaitTx\";\nimport {\n zeroAddress,\n type Address,\n type Hash,\n type TransactionReceipt,\n} from \"viem\";\nimport type {\n ApprovalFlowResult,\n SignPermitFlowResult,\n SubmitTxResult,\n} from \"../../swap/tradeFlow/common/types\";\n\nimport { useMinViemClient } from \"@/hooks/useMinViemClient\";\nimport { useMutation } from \"@tanstack/react-query\";\nimport { useRef } from \"react\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { UserCancelledError } from \"../../swap/tradeFlow/common/errors\";\nimport {\n type CallsSentObject,\n type TxSentObject,\n} from \"@/lib/utils/transactionHandlers\";\nimport { useApproveOrPermit } from \"../../swap/tradeFlow/common/useApproveOrPermit\";\nimport { useLogger } from \"@/core/logger\";\n\nimport type { LimitOrderFromApi } from \"@velora-dex/sdk\";\nimport { useFillOrder, type OrderFillData } from \"../mutations/useFillOrder\";\nimport {\n useMarkPermit1Or2NonceAsUsed,\n type SignedPermitResult,\n} from \"@/hooks/swap/tradeFlow/common/useSignPermit1Or2\";\nimport type { FillableOtcOrderItem } from \"@/components/widget/OtcOrderItem/types\";\nimport { useWidgetEvents } from \"@/core/state/widgetEventsAtom\";\nimport { useCanBatchTxs } from \"@/hooks/batch/useCanBatchTxs\";\nimport { useBatchWithApproveTxs } from \"@/hooks/batch/useBatchWithApproveTxs\";\nimport { useSendBatchTx } from \"@/hooks/batch/useSendBatchTx\";\nimport {\n useAwaitCalls,\n useEnsureCallsStatus,\n type CallsReceipt,\n} from \"@/hooks/batch/useAwaitCalls\";\nimport { useCalldataSDK } from \"@/hooks/useSDK\";\n\nconst fillOtcOrderFlowType = \"fillOtcOrder\";\n\nexport type UseFillOtcOrderFlowInput = {\n order?: FillableOtcOrderItem;\n};\n\nexport type SubmitFillOtcOrderResult = {\n tradeFlowType: typeof fillOtcOrderFlowType;\n approve: SubmitTxResult;\n fill: {\n order: LimitOrderFromApi;\n txHash?: Hash;\n txReceipt?: TransactionReceipt;\n };\n account: Address;\n receiverAddress?: Address;\n};\n\ntype OnTxSent = (txSent: TxSentObject | CallsSentObject) => void;\n\ntype RunFillOtcOrderOptions = {\n onTxSent?: OnTxSent;\n};\n\nexport type UseFillOtcOrderFlowResult = {\n tradeFlowType: typeof fillOtcOrderFlowType;\n chainId: SupportedChainId;\n runFillOtcOrderFlow: (\n options?: RunFillOtcOrderOptions\n ) => Promise<SubmitFillOtcOrderResult>;\n reset: () => void; // reset on Error to retry\n cancelFlow: () => void; // cancel flow\n retryFlow: (\n options?: RunFillOtcOrderOptions\n ) => Promise<SubmitFillOtcOrderResult>; // reset and retry flow\n approval: ApprovalFlowResult;\n signPermit: SignPermitFlowResult;\n fillOrder: {\n txHash?: Hash;\n receipt?: TransactionReceipt;\n isConfirmingTX: boolean;\n isConfirmingTxError: boolean;\n isTxSent: boolean;\n isTxPending: boolean;\n isTxMined: boolean;\n isTxAwaitingError: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n fillOrderBatch: {\n canBatchTxs?: boolean;\n callsId?: string;\n txHash?: Hash;\n receipt?: CallsReceipt;\n isConfirmingCalls: boolean;\n isConfirmingCallsError: boolean;\n isCallsSent: boolean;\n isCallsPending: boolean;\n isCallsMined: boolean;\n isCallsAwaitingError: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n isPending: boolean;\n isSuccess: boolean;\n isError: boolean;\n error: Error | null;\n result?: SubmitFillOtcOrderResult;\n};\n\nconst OTC_ORDER_MUTATION_KEY = \"runFillOtcOrderFlow\";\n\nexport function useFillOtcOrderFlow({\n order,\n}: UseFillOtcOrderFlowInput): UseFillOtcOrderFlowResult {\n const logger = useLogger(\"FillOtcOrderFlow\");\n const chainId = useChainId();\n\n /* Inside useApproveOrPermit:\n 1. Get allowance for tokenFrom \n 2.1. submit Approve tx if necessary \n\n 2.2. sign Permit1 \n\n 3. await Approve tx (if not using Permit) \n */\n const {\n approval,\n signPermit,\n approveTxMut,\n signPermitMut,\n events: approveOrPermitEvents,\n } = useApproveOrPermit({\n srcToken: order?.takerAsset,\n srcAmount: order?.takerAmount,\n spenderContractType: \"AugustusRFQ\",\n swapSide: \"SELL\",\n tradeMode: \"otc\",\n chainId,\n });\n\n const { address: account } = useAccount();\n\n const { minClient } = useMinViemClient({\n chainId,\n account,\n });\n\n const { sdk: callDataSDK } = useCalldataSDK({\n chainId,\n client: minClient,\n });\n\n /* 4. Submit fill OTC Order tx */\n\n // 4.1. submit standalone tx\n const fillOrderMut = useFillOrder({\n chainId,\n account,\n client: minClient,\n mutationOptions: {\n onSuccess: (order) => {\n logger.log(\"Fill OTC Order success\", order);\n },\n onError: (error) => {\n logger.error(\"Fill OTC Order error\", error);\n },\n },\n });\n\n /* 4.2. submit Batch tx */\n const { forCurrentChain: canBatchTxs } = useCanBatchTxs();\n const { addTxWithApprovals } = useBatchWithApproveTxs();\n\n const batchTxMut = useSendBatchTx({\n onSuccess: () => {\n logger.log(\"Batch tx success\");\n },\n onError: (error) => {\n logger.error(\"Batch tx error\", error);\n },\n });\n\n /* Await tx */\n\n /* 5.1. await standalone Fill tx */\n const fillTxMined = useAwaitTx({\n chainId,\n hash: fillOrderMut.data,\n });\n\n /* 5.2. await Batch tx */\n const batchTxMined = useAwaitCalls({\n id: batchTxMut.data?.id,\n });\n\n const fillOrder: UseFillOtcOrderFlowResult[\"fillOrder\"] = {\n txHash: fillOrderMut.data,\n receipt: fillTxMined.data,\n /* tx sending */\n isConfirmingTX: fillOrderMut.isPending,\n isConfirmingTxError: fillOrderMut.isError,\n isTxSent: fillOrderMut.isSuccess,\n /* tx awaiting */\n isTxPending: fillTxMined.isPending,\n isTxMined: fillTxMined.isSuccess,\n isTxAwaitingError: fillTxMined.isError,\n /* combined */\n isPending: fillOrderMut.isPending || fillTxMined.isLoading,\n isSuccess: fillTxMined.isSuccess, // success only when tx is mined\n isError: fillOrderMut.isError || fillTxMined.isError,\n error: fillOrderMut.error || fillTxMined.error,\n };\n\n // for a successful SendCalls execution there will either be one receipt only,\n // or several receipts with the last one for the last tx from the batch\n const lastCallsReceipt =\n batchTxMined.data?.receipts?.[batchTxMined.data.receipts.length - 1];\n\n const fillOrderBatch: UseFillOtcOrderFlowResult[\"fillOrderBatch\"] = {\n canBatchTxs,\n callsId: batchTxMut.data?.id,\n txHash: lastCallsReceipt?.transactionHash,\n receipt: lastCallsReceipt,\n /* calls sending */\n isConfirmingCalls: batchTxMut.isPending,\n isConfirmingCallsError: batchTxMut.isError,\n isCallsSent: batchTxMut.isSuccess,\n /* calls awaiting */\n isCallsPending: batchTxMined.isLoading,\n isCallsMined: batchTxMined.isSuccess,\n isCallsAwaitingError: batchTxMined.isError,\n /* combined */\n isPending: batchTxMut.isPending || batchTxMined.isLoading,\n isSuccess: batchTxMined.isSuccess,\n isError: batchTxMut.isError || batchTxMined.isError,\n error: batchTxMut.error || batchTxMined.error,\n };\n\n const ensureTxReceipt = useEnsureTxReceipt();\n const ensureCallsStatus = useEnsureCallsStatus();\n\n const currentAbortControllerRef = useRef<AbortController | null>(null);\n\n const cancelFlow = () => {\n currentAbortControllerRef.current?.abort(new UserCancelledError());\n currentAbortControllerRef.current = null;\n };\n\n const { markNonceAsUsed, clearNonce } = useMarkPermit1Or2NonceAsUsed({\n chainId,\n });\n\n const events = useWidgetEvents();\n\n const submitFillTx = async ({\n onTxSent,\n }: RunFillOtcOrderOptions = {}): Promise<SubmitFillOtcOrderResult> => {\n // reset all mutations except the current one,\n // otherwise we'll have previous data (txs) as mutation results\n approveTxMut.reset();\n signPermitMut.reset();\n fillOrderMut.reset();\n batchTxMut.reset();\n\n // no sense in starting flow without an order\n assert(order, \"no order to fill\");\n assert(order.taker !== zeroAddress, \"taker must not be zero address\");\n\n const abortController = new AbortController();\n currentAbortControllerRef.current = abortController;\n\n const signal = abortController.signal;\n\n let signedPermitResult: SignedPermitResult | undefined;\n\n let approveTxHash: Hash | undefined;\n let approveTxReceipt: TransactionReceipt | undefined;\n\n const allowanceToSet = approval.allowanceToSet;\n const allowanceToPermit = signPermit.amountToPermit;\n\n const baseEventParams = {\n orderHash: order.orderHash,\n orderType: \"OTC\" as const,\n orderSubType: order.type,\n };\n\n events.onFillOTCOrder?.({\n event: {\n name: \"FillOTCOrder:request\",\n params: baseEventParams,\n },\n });\n\n const shouldBatchTxs =\n canBatchTxs && approval.needsApproval && !!allowanceToSet;\n\n try {\n // need allowance\n if (!shouldBatchTxs && approval.needsApproval && allowanceToSet) {\n const tryPermit =\n signPermit.isPermitSupported && signPermit.isPermitReadyToSign;\n try {\n if (!tryPermit) {\n // Token doesn't support Permit\n // make an Approval tx\n approveOrPermitEvents.onApproveTx.request({ allowanceToSet });\n\n approveTxHash = await approveTxMut.approveAsync({\n allowanceData: {\n allowanceToSet,\n },\n });\n\n approveOrPermitEvents.onApproveTx.sent({\n allowanceToSet,\n txHash: approveTxHash,\n });\n\n // if aborted by this point, throw an error\n signal.throwIfAborted();\n\n const approveTxReceiptPromise = ensureTxReceipt({\n hash: approveTxHash,\n chainId,\n onReplaced: (data) => {\n logger.log(\"onReplaced:approveTx\", approveTxHash, data);\n },\n });\n\n if (onTxSent) {\n onTxSent({\n chainId,\n action: \"approve\",\n transactionHash: approveTxHash,\n receiptPromise: approveTxReceiptPromise,\n transactionSpecificData: {\n action: \"approve\",\n approvedAmount: allowanceToSet,\n tokenAddress: approval.token as Address,\n spenderAddress: approval.spender as Address,\n },\n });\n }\n\n approveTxReceipt = await approveTxReceiptPromise;\n\n approveOrPermitEvents.onApproveTx.confirmed({\n allowanceToSet,\n txHash: approveTxHash,\n txReceipt: approveTxReceipt,\n });\n\n logger.log(\"~ approveTx ~ receipt:\", approveTxReceipt);\n // @TODO check if we need to see if receipt.status === \"reverted\" and throw,\n // or if waitForTransactionReceipt already throws on such receipts\n } else {\n approveOrPermitEvents.onSignPermit.request({\n allowanceToSet: allowanceToPermit,\n });\n\n // sign Permit\n signedPermitResult = await signPermitMut.signPermitAsync({\n value: allowanceToPermit,\n });\n\n approveOrPermitEvents.onSignPermit.confirmed({\n allowanceToSet: allowanceToPermit,\n permit: signedPermitResult?.permitEncodedArgs,\n });\n }\n } catch (error) {\n if (!tryPermit) {\n approveOrPermitEvents.onApproveTx.failed({\n allowanceToSet,\n error: error as Error,\n txHash: approveTxHash, // won't necessarily be available\n });\n } else {\n approveOrPermitEvents.onSignPermit.failed({\n allowanceToSet: allowanceToPermit,\n error: error as Error,\n });\n }\n throw error;\n }\n }\n\n // if aborted by this point, throw an error\n signal.throwIfAborted();\n\n assert(account, \"Account is not connected\");\n\n const orderFillData: OrderFillData = {\n order,\n signature: order.signature,\n };\n\n if (signedPermitResult) {\n orderFillData.takerPermit = {\n encodedPermitParams: signedPermitResult.permitEncodedArgs,\n };\n }\n\n let fillTxHash: Hash | undefined;\n let fillCallsId: string | undefined;\n\n if (shouldBatchTxs) {\n assert(callDataSDK, \"callDataSDK is not initialized\");\n\n const calldata = await callDataSDK.fillOrderDirectly({\n order,\n signature: order.signature,\n });\n\n const { calls } = await addTxWithApprovals({\n txsParams: [\n {\n to: approval.spender,\n account,\n data: calldata,\n value: 0n,\n chainId,\n },\n ],\n approveProps: [\n {\n spender: approval.spender,\n allowanceToSet: approval.allowanceToSet,\n token: approval.token,\n chainId: approval.chainId,\n },\n ],\n });\n const sendCallsResult = await batchTxMut.sendCalls({\n txsParams: calls,\n });\n fillCallsId = sendCallsResult.id;\n\n events.onFillOTCOrder?.({\n event: {\n name: \"FillOTCOrder:sent\",\n params: {\n callsId: fillCallsId,\n ...baseEventParams,\n },\n },\n });\n } else {\n fillTxHash = await fillOrderMut.mutateAsync({\n orderFillData,\n signal,\n });\n\n events.onFillOTCOrder?.({\n event: {\n name: \"FillOTCOrder:sent\",\n params: {\n txHash: fillTxHash,\n ...baseEventParams,\n },\n },\n });\n }\n\n // no use aborting past this point, tx is already sent,\n // but we may want to connect this late abortion to tx cancellation, in the future\n\n // tx is sent, consider Token nonce as used\n if (signedPermitResult) {\n markNonceAsUsed(signedPermitResult.signedPermitData);\n }\n\n let fillCallsReceipt: CallsReceipt | undefined;\n let fillTxReceipt: TransactionReceipt | undefined;\n\n if (fillCallsId) {\n const sendCallsReceiptPromise = ensureCallsStatus({\n id: fillCallsId,\n }).then((status) => status.receipts?.[status.receipts.length - 1]);\n\n logger.log(\"~ fillTx ~ awaiting calls id :\", fillCallsId);\n\n if (onTxSent) {\n onTxSent({\n chainId,\n callsId: fillCallsId,\n action: \"fillOtcOrder\",\n receiptPromise: sendCallsReceiptPromise,\n transactionSpecificData: {\n action: \"fillOtcOrder\",\n filledOrder: order,\n },\n });\n }\n\n fillCallsReceipt = await sendCallsReceiptPromise;\n\n if (fillCallsReceipt) {\n events.onFillOTCOrder?.({\n event: {\n name: \"FillOTCOrder:confirmed\",\n params: {\n callsId: fillCallsId,\n callsReceipt: fillCallsReceipt,\n ...baseEventParams,\n },\n },\n });\n }\n } else if (fillTxHash) {\n const fillTxReceiptPromise = ensureTxReceipt({\n hash: fillTxHash,\n chainId,\n onReplaced: (data) => {\n logger.log(\"onReplaced:fillTx\", fillTxHash, data);\n },\n });\n\n logger.log(\"~ fillTx ~ awaiting tx hash :\", fillTxHash);\n\n if (onTxSent) {\n onTxSent({\n chainId,\n transactionHash: fillTxHash,\n action: \"fillOtcOrder\",\n receiptPromise: fillTxReceiptPromise,\n transactionSpecificData: {\n action: \"fillOtcOrder\",\n filledOrder: order,\n },\n });\n }\n\n fillTxReceipt = await fillTxReceiptPromise;\n\n events.onFillOTCOrder?.({\n event: {\n name: \"FillOTCOrder:confirmed\",\n params: {\n txHash: fillTxHash,\n txReceipt: fillTxReceipt,\n ...baseEventParams,\n },\n },\n });\n }\n\n logger.log(\"~ fillTx ~ receipt:\", fillCallsReceipt || fillTxReceipt);\n // @TODO check if we need to see if receipt.status === \"reverted\" and throw,\n // or if waitForTransactionReceipt already throws on such receipts\n\n return {\n tradeFlowType: fillOtcOrderFlowType,\n approve: {\n txHash: approveTxHash,\n receipt: approveTxReceipt,\n },\n fill: {\n txHash: fillTxHash,\n txReceipt: fillTxReceipt,\n order,\n },\n account,\n receiverAddress: order.taker as Address,\n };\n } catch (error) {\n events.onFillOTCOrder?.({\n event: {\n name: \"FillOTCOrder:failed\",\n params: {\n ...baseEventParams,\n error: error as Error,\n },\n },\n });\n // Fill order failed, we can't be sure if nonce can be reused or it was incremented in a different tx\n if (signedPermitResult) {\n clearNonce(signedPermitResult.signedPermitData);\n }\n throw error;\n }\n };\n\n const runFillOrderMut = useMutation({\n mutationFn: submitFillTx,\n mutationKey: [OTC_ORDER_MUTATION_KEY],\n onSuccess: (data) => {\n logger.log(\"Fill order flow success\", data);\n },\n onError: (error) => {\n logger.error(\"Fill order flow error\", error);\n },\n onSettled: () => {\n logger.log(\"Fill order flow settled\");\n },\n });\n\n const runFillOtcOrderFlow = runFillOrderMut.mutateAsync;\n\n const reset = () => {\n approveTxMut.reset();\n signPermitMut.reset();\n fillOrderMut.reset();\n batchTxMut.reset();\n runFillOrderMut.reset();\n };\n\n const retryFlow = (\n options?: RunFillOtcOrderOptions\n ): Promise<SubmitFillOtcOrderResult> => {\n reset();\n return runFillOtcOrderFlow(options);\n };\n\n /* 5. return result */\n return {\n tradeFlowType: fillOtcOrderFlowType,\n chainId,\n runFillOtcOrderFlow,\n reset,\n cancelFlow,\n retryFlow,\n approval,\n signPermit,\n fillOrder,\n fillOrderBatch,\n isPending: runFillOrderMut.isPending,\n isSuccess: runFillOrderMut.isSuccess,\n isError: runFillOrderMut.isError,\n error: runFillOrderMut.error,\n result: runFillOrderMut.data,\n };\n}\n"],"names":["fillOtcOrderFlowType","OTC_ORDER_MUTATION_KEY","useFillOtcOrderFlow","order","logger","useLogger","chainId","useChainId","approval","signPermit","approveTxMut","signPermitMut","events","approveOrPermitEvents","useApproveOrPermit","srcToken","takerAsset","srcAmount","takerAmount","spenderContractType","swapSide","tradeMode","address","account","useAccount","minClient","useMinViemClient","sdk","callDataSDK","useCalldataSDK","client","fillOrderMut","useFillOrder","mutationOptions","onSuccess","log","onError","error","forCurrentChain","canBatchTxs","useCanBatchTxs","addTxWithApprovals","useBatchWithApproveTxs","batchTxMut","useSendBatchTx","fillTxMined","useAwaitTx","hash","data","batchTxMined","useAwaitCalls","id","fillOrder","txHash","receipt","isConfirmingTX","isPending","isConfirmingTxError","isError","isTxSent","isSuccess","isTxPending","isTxMined","isTxAwaitingError","isLoading","lastCallsReceipt","receipts","length","fillOrderBatch","callsId","transactionHash","isConfirmingCalls","isConfirmingCallsError","isCallsSent","isCallsPending","isCallsMined","isCallsAwaitingError","ensureTxReceipt","useEnsureTxReceipt","ensureCallsStatus","useEnsureCallsStatus","currentAbortControllerRef","useRef","cancelFlow","current","abort","UserCancelledError","markNonceAsUsed","clearNonce","useMarkPermit1Or2NonceAsUsed","useWidgetEvents","submitFillTx","onTxSent","reset","assert","taker","zeroAddress","abortController","AbortController","signal","signedPermitResult","approveTxHash","approveTxReceipt","allowanceToSet","allowanceToPermit","amountToPermit","baseEventParams","orderHash","orderType","orderSubType","type","onFillOTCOrder","event","name","params","shouldBatchTxs","needsApproval","tryPermit","isPermitSupported","isPermitReadyToSign","onApproveTx","request","approveAsync","allowanceData","sent","throwIfAborted","approveTxReceiptPromise","onReplaced","action","receiptPromise","transactionSpecificData","approvedAmount","tokenAddress","token","spenderAddress","spender","confirmed","txReceipt","onSignPermit","signPermitAsync","value","permit","permitEncodedArgs","failed","orderFillData","signature","takerPermit","encodedPermitParams","fillTxHash","fillCallsId","calldata","fillOrderDirectly","calls","txsParams","to","approveProps","sendCallsResult","sendCalls","mutateAsync","signedPermitData","fillCallsReceipt","fillTxReceipt","sendCallsReceiptPromise","then","status","filledOrder","callsReceipt","fillTxReceiptPromise","tradeFlowType","approve","fill","receiverAddress","runFillOrderMut","useMutation","mutationFn","mutationKey","onSettled","runFillOtcOrderFlow","retryFlow","options","result"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6CA,MAAMA,oBAAAA,GAAuB,cAAA;AA0E7B,MAAMC,sBAAAA,GAAyB,qBAAA;AAExB,SAASC,mBAAAA,CAAoB;AAAA,EAClCC;AACwB,CAAA,EAA8B;AACtD,EAAA,MAAMC,MAAAA,GAASC,UAAU,kBAAkB,CAAA;AAC3C,EAAA,MAAMC,UAAUC,UAAAA,EAAW;AAU3B,EAAA,MAAM;AAAA,IACJC,QAAAA;AAAAA,IACAC,UAAAA;AAAAA,IACAC,YAAAA;AAAAA,IACAC,aAAAA;AAAAA,IACAC,MAAAA,EAAQC;AAAAA,MACNC,kBAAAA,CAAmB;AAAA,IACrBC,UAAUZ,KAAAA,EAAOa,UAAAA;AAAAA,IACjBC,WAAWd,KAAAA,EAAOe,WAAAA;AAAAA,IAClBC,mBAAAA,EAAqB,aAAA;AAAA,IACrBC,QAAAA,EAAU,MAAA;AAAA,IACVC,SAAAA,EAAW,KAAA;AAAA,IACXf;AAAAA,GACD,CAAA;AAED,EAAA,MAAM;AAAA,IAAEgB,OAAAA,EAASC;AAAAA,MAAYC,UAAAA,EAAW;AAExC,EAAA,MAAM;AAAA,IAAEC;AAAAA,MAAcC,gBAAAA,CAAiB;AAAA,IACrCpB,OAAAA;AAAAA,IACAiB;AAAAA,GACD,CAAA;AAED,EAAA,MAAM;AAAA,IAAEI,GAAAA,EAAKC;AAAAA,MAAgBC,cAAAA,CAAe;AAAA,IAC1CvB,OAAAA;AAAAA,IACAwB,MAAAA,EAAQL;AAAAA,GACT,CAAA;AAKD,EAAA,MAAMM,eAAeC,YAAAA,CAAa;AAAA,IAChC1B,OAAAA;AAAAA,IACAiB,OAAAA;AAAAA,IACAO,MAAAA,EAAQL,SAAAA;AAAAA,IACRQ,eAAAA,EAAiB;AAAA,MACfC,WAAY/B,CAAAA,OAAAA,KAAU;AACpBC,QAAAA,MAAAA,CAAO+B,GAAAA,CAAI,0BAA0BhC,OAAK,CAAA;AAAA,MAC5C,CAAA;AAAA,MACAiC,SAAUC,CAAAA,KAAAA,KAAU;AAClBjC,QAAAA,MAAAA,CAAOiC,KAAAA,CAAM,wBAAwBA,KAAK,CAAA;AAAA,MAC5C;AAAA;AACF,GACD,CAAA;AAGD,EAAA,MAAM;AAAA,IAAEC,eAAAA,EAAiBC;AAAAA,MAAgBC,cAAAA,EAAe;AACxD,EAAA,MAAM;AAAA,IAAEC;AAAAA,MAAuBC,sBAAAA,EAAuB;AAEtD,EAAA,MAAMC,aAAaC,cAAAA,CAAe;AAAA,IAChCV,WAAWA,MAAM;AACf9B,MAAAA,MAAAA,CAAO+B,IAAI,kBAAkB,CAAA;AAAA,IAC/B,CAAA;AAAA,IACAC,SAAUC,CAAAA,OAAAA,KAAU;AAClBjC,MAAAA,MAAAA,CAAOiC,KAAAA,CAAM,kBAAkBA,OAAK,CAAA;AAAA,IACtC;AAAA,GACD,CAAA;AAKD,EAAA,MAAMQ,cAAcC,UAAAA,CAAW;AAAA,IAC7BxC,OAAAA;AAAAA,IACAyC,MAAMhB,YAAAA,CAAaiB;AAAAA,GACpB,CAAA;AAGD,EAAA,MAAMC,eAAeC,aAAAA,CAAc;AAAA,IACjCC,EAAAA,EAAIR,WAAWK,IAAAA,EAAMG;AAAAA,GACtB,CAAA;AAED,EAAA,MAAMC,SAAAA,GAAoD;AAAA,IACxDC,QAAQtB,YAAAA,CAAaiB,IAAAA;AAAAA,IACrBM,SAAST,WAAAA,CAAYG,IAAAA;AAAAA;AAAAA,IAErBO,gBAAgBxB,YAAAA,CAAayB,SAAAA;AAAAA,IAC7BC,qBAAqB1B,YAAAA,CAAa2B,OAAAA;AAAAA,IAClCC,UAAU5B,YAAAA,CAAa6B,SAAAA;AAAAA;AAAAA,IAEvBC,aAAahB,WAAAA,CAAYW,SAAAA;AAAAA,IACzBM,WAAWjB,WAAAA,CAAYe,SAAAA;AAAAA,IACvBG,mBAAmBlB,WAAAA,CAAYa,OAAAA;AAAAA;AAAAA,IAE/BF,SAAAA,EAAWzB,YAAAA,CAAayB,SAAAA,IAAaX,WAAAA,CAAYmB,SAAAA;AAAAA,IACjDJ,WAAWf,WAAAA,CAAYe,SAAAA;AAAAA;AAAAA,IACvBF,OAAAA,EAAS3B,YAAAA,CAAa2B,OAAAA,IAAWb,WAAAA,CAAYa,OAAAA;AAAAA,IAC7CrB,KAAAA,EAAON,YAAAA,CAAaM,KAAAA,IAASQ,WAAAA,CAAYR;AAAAA,GAC3C;AAIA,EAAA,MAAM4B,gBAAAA,GACJhB,aAAaD,IAAAA,EAAMkB,QAAAA,GAAWjB,aAAaD,IAAAA,CAAKkB,QAAAA,CAASC,SAAS,CAAC,CAAA;AAErE,EAAA,MAAMC,cAAAA,GAA8D;AAAA,IAClE7B,WAAAA;AAAAA,IACA8B,OAAAA,EAAS1B,WAAWK,IAAAA,EAAMG,EAAAA;AAAAA,IAC1BE,QAAQY,gBAAAA,EAAkBK,eAAAA;AAAAA,IAC1BhB,OAAAA,EAASW,gBAAAA;AAAAA;AAAAA,IAETM,mBAAmB5B,UAAAA,CAAWa,SAAAA;AAAAA,IAC9BgB,wBAAwB7B,UAAAA,CAAWe,OAAAA;AAAAA,IACnCe,aAAa9B,UAAAA,CAAWiB,SAAAA;AAAAA;AAAAA,IAExBc,gBAAgBzB,YAAAA,CAAae,SAAAA;AAAAA,IAC7BW,cAAc1B,YAAAA,CAAaW,SAAAA;AAAAA,IAC3BgB,sBAAsB3B,YAAAA,CAAaS,OAAAA;AAAAA;AAAAA,IAEnCF,SAAAA,EAAWb,UAAAA,CAAWa,SAAAA,IAAaP,YAAAA,CAAae,SAAAA;AAAAA,IAChDJ,WAAWX,YAAAA,CAAaW,SAAAA;AAAAA,IACxBF,OAAAA,EAASf,UAAAA,CAAWe,OAAAA,IAAWT,YAAAA,CAAaS,OAAAA;AAAAA,IAC5CrB,KAAAA,EAAOM,UAAAA,CAAWN,KAAAA,IAASY,YAAAA,CAAaZ;AAAAA,GAC1C;AAEA,EAAA,MAAMwC,kBAAkBC,kBAAAA,EAAmB;AAC3C,EAAA,MAAMC,oBAAoBC,oBAAAA,EAAqB;AAE/C,EAAA,MAAMC,yBAAAA,GAA4BC,OAA+B,IAAI,CAAA;AAErE,EAAA,MAAMC,aAAaA,MAAM;AACvBF,IAAAA,yBAAAA,CAA0BG,OAAAA,EAASC,KAAAA,CAAM,IAAIC,kBAAAA,EAAoB,CAAA;AACjEL,IAAAA,yBAAAA,CAA0BG,OAAAA,GAAU,IAAA;AAAA,EACtC,CAAA;AAEA,EAAA,MAAM;AAAA,IAAEG,eAAAA;AAAAA,IAAiBC;AAAAA,MAAeC,4BAAAA,CAA6B;AAAA,IACnEnF;AAAAA,GACD,CAAA;AAED,EAAA,MAAMM,SAAS8E,eAAAA,EAAgB;AAE/B,EAAA,MAAMC,eAAe,OAAO;AAAA,IAC1BC;AAAAA,GACsB,GAAI,EAAC,KAAyC;AAGpElF,IAAAA,YAAAA,CAAamF,KAAAA,EAAM;AACnBlF,IAAAA,aAAAA,CAAckF,KAAAA,EAAM;AACpB9D,IAAAA,YAAAA,CAAa8D,KAAAA,EAAM;AACnBlD,IAAAA,UAAAA,CAAWkD,KAAAA,EAAM;AAGjBC,IAAAA,MAAAA,CAAO3F,OAAO,kBAAkB,CAAA;AAChC2F,IAAAA,MAAAA,CAAO3F,KAAAA,CAAM4F,KAAAA,KAAUC,WAAAA,EAAa,gCAAgC,CAAA;AAEpE,IAAA,MAAMC,eAAAA,GAAkB,IAAIC,eAAAA,EAAgB;AAC5CjB,IAAAA,yBAAAA,CAA0BG,OAAAA,GAAUa,eAAAA;AAEpC,IAAA,MAAME,SAASF,eAAAA,CAAgBE,MAAAA;AAE/B,IAAA,IAAIC,kBAAAA;AAEJ,IAAA,IAAIC,aAAAA;AACJ,IAAA,IAAIC,gBAAAA;AAEJ,IAAA,MAAMC,iBAAiB/F,QAAAA,CAAS+F,cAAAA;AAChC,IAAA,MAAMC,oBAAoB/F,UAAAA,CAAWgG,cAAAA;AAErC,IAAA,MAAMC,eAAAA,GAAkB;AAAA,MACtBC,WAAWxG,KAAAA,CAAMwG,SAAAA;AAAAA,MACjBC,SAAAA,EAAW,KAAA;AAAA,MACXC,cAAc1G,KAAAA,CAAM2G;AAAAA,KACtB;AAEAlG,IAAAA,MAAAA,CAAOmG,cAAAA,GAAiB;AAAA,MACtBC,KAAAA,EAAO;AAAA,QACLC,IAAAA,EAAM,sBAAA;AAAA,QACNC,MAAAA,EAAQR;AAAAA;AACV,KACD,CAAA;AAED,IAAA,MAAMS,cAAAA,GACJ5E,WAAAA,IAAe/B,QAAAA,CAAS4G,aAAAA,IAAiB,CAAC,CAACb,cAAAA;AAE7C,IAAA,IAAI;AAEF,MAAA,IAAI,CAACY,cAAAA,IAAkB3G,QAAAA,CAAS4G,aAAAA,IAAiBb,cAAAA,EAAgB;AAC/D,QAAA,MAAMc,SAAAA,GACJ5G,UAAAA,CAAW6G,iBAAAA,IAAqB7G,UAAAA,CAAW8G,mBAAAA;AAC7C,QAAA,IAAI;AACF,UAAA,IAAI,CAACF,SAAAA,EAAW;AAGdxG,YAAAA,qBAAAA,CAAsB2G,YAAYC,OAAAA,CAAQ;AAAA,cAAElB;AAAAA,aAAgB,CAAA;AAE5DF,YAAAA,aAAAA,GAAgB,MAAM3F,aAAagH,YAAAA,CAAa;AAAA,cAC9CC,aAAAA,EAAe;AAAA,gBACbpB;AAAAA;AACF,aACD,CAAA;AAED1F,YAAAA,qBAAAA,CAAsB2G,YAAYI,IAAAA,CAAK;AAAA,cACrCrB,cAAAA;AAAAA,cACAlD,MAAAA,EAAQgD;AAAAA,aACT,CAAA;AAGDF,YAAAA,MAAAA,CAAO0B,cAAAA,EAAe;AAEtB,YAAA,MAAMC,0BAA0BjD,eAAAA,CAAgB;AAAA,cAC9C9B,IAAAA,EAAMsD,aAAAA;AAAAA,cACN/F,OAAAA;AAAAA,cACAyH,YAAa/E,CAAAA,IAAAA,KAAS;AACpB5C,gBAAAA,MAAAA,CAAO+B,GAAAA,CAAI,sBAAA,EAAwBkE,aAAAA,EAAerD,IAAI,CAAA;AAAA,cACxD;AAAA,aACD,CAAA;AAED,YAAA,IAAI4C,QAAAA,EAAU;AACZA,cAAAA,QAAAA,CAAS;AAAA,gBACPtF,OAAAA;AAAAA,gBACA0H,MAAAA,EAAQ,SAAA;AAAA,gBACR1D,eAAAA,EAAiB+B,aAAAA;AAAAA,gBACjB4B,cAAAA,EAAgBH,uBAAAA;AAAAA,gBAChBI,uBAAAA,EAAyB;AAAA,kBACvBF,MAAAA,EAAQ,SAAA;AAAA,kBACRG,cAAAA,EAAgB5B,cAAAA;AAAAA,kBAChB6B,cAAc5H,QAAAA,CAAS6H,KAAAA;AAAAA,kBACvBC,gBAAgB9H,QAAAA,CAAS+H;AAAAA;AAC3B,eACD,CAAA;AAAA,YACH;AAEAjC,YAAAA,gBAAAA,GAAmB,MAAMwB,uBAAAA;AAEzBjH,YAAAA,qBAAAA,CAAsB2G,YAAYgB,SAAAA,CAAU;AAAA,cAC1CjC,cAAAA;AAAAA,cACAlD,MAAAA,EAAQgD,aAAAA;AAAAA,cACRoC,SAAAA,EAAWnC;AAAAA,aACZ,CAAA;AAEDlG,YAAAA,MAAAA,CAAO+B,GAAAA,CAAI,0BAA0BmE,gBAAgB,CAAA;AAAA,UAGvD,CAAA,MAAO;AACLzF,YAAAA,qBAAAA,CAAsB6H,aAAajB,OAAAA,CAAQ;AAAA,cACzClB,cAAAA,EAAgBC;AAAAA,aACjB,CAAA;AAGDJ,YAAAA,kBAAAA,GAAqB,MAAMzF,cAAcgI,eAAAA,CAAgB;AAAA,cACvDC,KAAAA,EAAOpC;AAAAA,aACR,CAAA;AAED3F,YAAAA,qBAAAA,CAAsB6H,aAAaF,SAAAA,CAAU;AAAA,cAC3CjC,cAAAA,EAAgBC,iBAAAA;AAAAA,cAChBqC,QAAQzC,kBAAAA,EAAoB0C;AAAAA,aAC7B,CAAA;AAAA,UACH;AAAA,QACF,SAASzG,OAAAA,EAAO;AACd,UAAA,IAAI,CAACgF,SAAAA,EAAW;AACdxG,YAAAA,qBAAAA,CAAsB2G,YAAYuB,MAAAA,CAAO;AAAA,cACvCxC,cAAAA;AAAAA,cACAlE,KAAAA,EAAOA,OAAAA;AAAAA,cACPgB,MAAAA,EAAQgD;AAAAA;AAAAA,aACT,CAAA;AAAA,UACH,CAAA,MAAO;AACLxF,YAAAA,qBAAAA,CAAsB6H,aAAaK,MAAAA,CAAO;AAAA,cACxCxC,cAAAA,EAAgBC,iBAAAA;AAAAA,cAChBnE,KAAAA,EAAOA;AAAAA,aACR,CAAA;AAAA,UACH;AACA,UAAA,MAAMA,OAAAA;AAAAA,QACR;AAAA,MACF;AAGA8D,MAAAA,MAAAA,CAAO0B,cAAAA,EAAe;AAEtB/B,MAAAA,MAAAA,CAAOvE,SAAS,0BAA0B,CAAA;AAE1C,MAAA,MAAMyH,aAAAA,GAA+B;AAAA,QACnC7I,KAAAA;AAAAA,QACA8I,WAAW9I,KAAAA,CAAM8I;AAAAA,OACnB;AAEA,MAAA,IAAI7C,kBAAAA,EAAoB;AACtB4C,QAAAA,aAAAA,CAAcE,WAAAA,GAAc;AAAA,UAC1BC,qBAAqB/C,kBAAAA,CAAmB0C;AAAAA,SAC1C;AAAA,MACF;AAEA,MAAA,IAAIM,UAAAA;AACJ,MAAA,IAAIC,WAAAA;AAEJ,MAAA,IAAIlC,cAAAA,EAAgB;AAClBrB,QAAAA,MAAAA,CAAOlE,aAAa,gCAAgC,CAAA;AAEpD,QAAA,MAAM0H,QAAAA,GAAW,MAAM1H,WAAAA,CAAY2H,iBAAAA,CAAkB;AAAA,UACnDpJ,KAAAA;AAAAA,UACA8I,WAAW9I,KAAAA,CAAM8I;AAAAA,SAClB,CAAA;AAED,QAAA,MAAM;AAAA,UAAEO;AAAAA,SAAM,GAAI,MAAM/G,kBAAAA,CAAmB;AAAA,UACzCgH,WAAW,CACT;AAAA,YACEC,IAAIlJ,QAAAA,CAAS+H,OAAAA;AAAAA,YACbhH,OAAAA;AAAAA,YACAyB,IAAAA,EAAMsG,QAAAA;AAAAA,YACNV,KAAAA,EAAO,EAAA;AAAA,YACPtI;AAAAA,WACD,CAAA;AAAA,UAEHqJ,cAAc,CACZ;AAAA,YACEpB,SAAS/H,QAAAA,CAAS+H,OAAAA;AAAAA,YAClBhC,gBAAgB/F,QAAAA,CAAS+F,cAAAA;AAAAA,YACzB8B,OAAO7H,QAAAA,CAAS6H,KAAAA;AAAAA,YAChB/H,SAASE,QAAAA,CAASF;AAAAA,WACnB;AAAA,SAEJ,CAAA;AACD,QAAA,MAAMsJ,eAAAA,GAAkB,MAAMjH,UAAAA,CAAWkH,SAAAA,CAAU;AAAA,UACjDJ,SAAAA,EAAWD;AAAAA,SACZ,CAAA;AACDH,QAAAA,WAAAA,GAAcO,eAAAA,CAAgBzG,EAAAA;AAE9BvC,QAAAA,MAAAA,CAAOmG,cAAAA,GAAiB;AAAA,UACtBC,KAAAA,EAAO;AAAA,YACLC,IAAAA,EAAM,mBAAA;AAAA,YACNC,MAAAA,EAAQ;AAAA,cACN7C,OAAAA,EAASgF,WAAAA;AAAAA,cACT,GAAG3C;AAAAA;AACL;AACF,SACD,CAAA;AAAA,MACH,CAAA,MAAO;AACL0C,QAAAA,UAAAA,GAAa,MAAMrH,aAAa+H,WAAAA,CAAY;AAAA,UAC1Cd,aAAAA;AAAAA,UACA7C;AAAAA,SACD,CAAA;AAEDvF,QAAAA,MAAAA,CAAOmG,cAAAA,GAAiB;AAAA,UACtBC,KAAAA,EAAO;AAAA,YACLC,IAAAA,EAAM,mBAAA;AAAA,YACNC,MAAAA,EAAQ;AAAA,cACN7D,MAAAA,EAAQ+F,UAAAA;AAAAA,cACR,GAAG1C;AAAAA;AACL;AACF,SACD,CAAA;AAAA,MACH;AAMA,MAAA,IAAIN,kBAAAA,EAAoB;AACtBb,QAAAA,eAAAA,CAAgBa,mBAAmB2D,gBAAgB,CAAA;AAAA,MACrD;AAEA,MAAA,IAAIC,gBAAAA;AACJ,MAAA,IAAIC,aAAAA;AAEJ,MAAA,IAAIZ,WAAAA,EAAa;AACf,QAAA,MAAMa,0BAA0BnF,iBAAAA,CAAkB;AAAA,UAChD5B,EAAAA,EAAIkG;AAAAA,SACL,CAAA,CAAEc,IAAAA,CAAMC,CAAAA,MAAAA,KAAWA,MAAAA,CAAOlG,WAAWkG,MAAAA,CAAOlG,QAAAA,CAASC,MAAAA,GAAS,CAAC,CAAC,CAAA;AAEjE/D,QAAAA,MAAAA,CAAO+B,GAAAA,CAAI,kCAAkCkH,WAAW,CAAA;AAExD,QAAA,IAAIzD,QAAAA,EAAU;AACZA,UAAAA,QAAAA,CAAS;AAAA,YACPtF,OAAAA;AAAAA,YACA+D,OAAAA,EAASgF,WAAAA;AAAAA,YACTrB,MAAAA,EAAQ,cAAA;AAAA,YACRC,cAAAA,EAAgBiC,uBAAAA;AAAAA,YAChBhC,uBAAAA,EAAyB;AAAA,cACvBF,MAAAA,EAAQ,cAAA;AAAA,cACRqC,WAAAA,EAAalK;AAAAA;AACf,WACD,CAAA;AAAA,QACH;AAEA6J,QAAAA,gBAAAA,GAAmB,MAAME,uBAAAA;AAEzB,QAAA,IAAIF,gBAAAA,EAAkB;AACpBpJ,UAAAA,MAAAA,CAAOmG,cAAAA,GAAiB;AAAA,YACtBC,KAAAA,EAAO;AAAA,cACLC,IAAAA,EAAM,wBAAA;AAAA,cACNC,MAAAA,EAAQ;AAAA,gBACN7C,OAAAA,EAASgF,WAAAA;AAAAA,gBACTiB,YAAAA,EAAcN,gBAAAA;AAAAA,gBACd,GAAGtD;AAAAA;AACL;AACF,WACD,CAAA;AAAA,QACH;AAAA,MACF,WAAW0C,UAAAA,EAAY;AACrB,QAAA,MAAMmB,uBAAuB1F,eAAAA,CAAgB;AAAA,UAC3C9B,IAAAA,EAAMqG,UAAAA;AAAAA,UACN9I,OAAAA;AAAAA,UACAyH,YAAa/E,CAAAA,MAAAA,KAAS;AACpB5C,YAAAA,MAAAA,CAAO+B,GAAAA,CAAI,mBAAA,EAAqBiH,UAAAA,EAAYpG,MAAI,CAAA;AAAA,UAClD;AAAA,SACD,CAAA;AAED5C,QAAAA,MAAAA,CAAO+B,GAAAA,CAAI,iCAAiCiH,UAAU,CAAA;AAEtD,QAAA,IAAIxD,QAAAA,EAAU;AACZA,UAAAA,QAAAA,CAAS;AAAA,YACPtF,OAAAA;AAAAA,YACAgE,eAAAA,EAAiB8E,UAAAA;AAAAA,YACjBpB,MAAAA,EAAQ,cAAA;AAAA,YACRC,cAAAA,EAAgBsC,oBAAAA;AAAAA,YAChBrC,uBAAAA,EAAyB;AAAA,cACvBF,MAAAA,EAAQ,cAAA;AAAA,cACRqC,WAAAA,EAAalK;AAAAA;AACf,WACD,CAAA;AAAA,QACH;AAEA8J,QAAAA,aAAAA,GAAgB,MAAMM,oBAAAA;AAEtB3J,QAAAA,MAAAA,CAAOmG,cAAAA,GAAiB;AAAA,UACtBC,KAAAA,EAAO;AAAA,YACLC,IAAAA,EAAM,wBAAA;AAAA,YACNC,MAAAA,EAAQ;AAAA,cACN7D,MAAAA,EAAQ+F,UAAAA;AAAAA,cACRX,SAAAA,EAAWwB,aAAAA;AAAAA,cACX,GAAGvD;AAAAA;AACL;AACF,SACD,CAAA;AAAA,MACH;AAEAtG,MAAAA,MAAAA,CAAO+B,GAAAA,CAAI,qBAAA,EAAuB6H,gBAAAA,IAAoBC,aAAa,CAAA;AAInE,MAAA,OAAO;AAAA,QACLO,aAAAA,EAAexK,oBAAAA;AAAAA,QACfyK,OAAAA,EAAS;AAAA,UACPpH,MAAAA,EAAQgD,aAAAA;AAAAA,UACR/C,OAAAA,EAASgD;AAAAA,SACX;AAAA,QACAoE,IAAAA,EAAM;AAAA,UACJrH,MAAAA,EAAQ+F,UAAAA;AAAAA,UACRX,SAAAA,EAAWwB,aAAAA;AAAAA,UACX9J;AAAAA,SACF;AAAA,QACAoB,OAAAA;AAAAA,QACAoJ,iBAAiBxK,KAAAA,CAAM4F;AAAAA,OACzB;AAAA,IACF,SAAS1D,OAAAA,EAAO;AACdzB,MAAAA,MAAAA,CAAOmG,cAAAA,GAAiB;AAAA,QACtBC,KAAAA,EAAO;AAAA,UACLC,IAAAA,EAAM,qBAAA;AAAA,UACNC,MAAAA,EAAQ;AAAA,YACN,GAAGR,eAAAA;AAAAA,YACHrE,KAAAA,EAAOA;AAAAA;AACT;AACF,OACD,CAAA;AAED,MAAA,IAAI+D,kBAAAA,EAAoB;AACtBZ,QAAAA,UAAAA,CAAWY,mBAAmB2D,gBAAgB,CAAA;AAAA,MAChD;AACA,MAAA,MAAM1H,OAAAA;AAAAA,IACR;AAAA,EACF,CAAA;AAEA,EAAA,MAAMuI,kBAAkBC,WAAAA,CAAY;AAAA,IAClCC,UAAAA,EAAYnF,YAAAA;AAAAA,IACZoF,WAAAA,EAAa,CAAC9K,sBAAsB,CAAA;AAAA,IACpCiC,WAAYc,CAAAA,MAAAA,KAAS;AACnB5C,MAAAA,MAAAA,CAAO+B,GAAAA,CAAI,2BAA2Ba,MAAI,CAAA;AAAA,IAC5C,CAAA;AAAA,IACAZ,SAAUC,CAAAA,OAAAA,KAAU;AAClBjC,MAAAA,MAAAA,CAAOiC,KAAAA,CAAM,yBAAyBA,OAAK,CAAA;AAAA,IAC7C,CAAA;AAAA,IACA2I,WAAWA,MAAM;AACf5K,MAAAA,MAAAA,CAAO+B,IAAI,yBAAyB,CAAA;AAAA,IACtC;AAAA,GACD,CAAA;AAED,EAAA,MAAM8I,sBAAsBL,eAAAA,CAAgBd,WAAAA;AAE5C,EAAA,MAAMjE,QAAQA,MAAM;AAClBnF,IAAAA,YAAAA,CAAamF,KAAAA,EAAM;AACnBlF,IAAAA,aAAAA,CAAckF,KAAAA,EAAM;AACpB9D,IAAAA,YAAAA,CAAa8D,KAAAA,EAAM;AACnBlD,IAAAA,UAAAA,CAAWkD,KAAAA,EAAM;AACjB+E,IAAAA,eAAAA,CAAgB/E,KAAAA,EAAM;AAAA,EACxB,CAAA;AAEA,EAAA,MAAMqF,SAAAA,GAAYA,CAChBC,OAAAA,KACsC;AACtCtF,IAAAA,KAAAA,EAAM;AACN,IAAA,OAAOoF,oBAAoBE,OAAO,CAAA;AAAA,EACpC,CAAA;AAGA,EAAA,OAAO;AAAA,IACLX,aAAAA,EAAexK,oBAAAA;AAAAA,IACfM,OAAAA;AAAAA,IACA2K,mBAAAA;AAAAA,IACApF,KAAAA;AAAAA,IACAV,UAAAA;AAAAA,IACA+F,SAAAA;AAAAA,IACA1K,QAAAA;AAAAA,IACAC,UAAAA;AAAAA,IACA2C,SAAAA;AAAAA,IACAgB,cAAAA;AAAAA,IACAZ,WAAWoH,eAAAA,CAAgBpH,SAAAA;AAAAA,IAC3BI,WAAWgH,eAAAA,CAAgBhH,SAAAA;AAAAA,IAC3BF,SAASkH,eAAAA,CAAgBlH,OAAAA;AAAAA,IACzBrB,OAAOuI,eAAAA,CAAgBvI,KAAAA;AAAAA,IACvB+I,QAAQR,eAAAA,CAAgB5H;AAAAA,GAC1B;AACF;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFillOtcOrderStep.d.ts","sourceRoot":"","sources":["../../../../src/hooks/otc/tradeFlow/useFillOtcOrderStep.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAEL,KAAK,wBAAwB,EAC7B,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAC/B,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"useFillOtcOrderStep.d.ts","sourceRoot":"","sources":["../../../../src/hooks/otc/tradeFlow/useFillOtcOrderStep.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAEL,KAAK,wBAAwB,EAC7B,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAC/B,MAAM,uBAAuB,CAAC;AAM/B,MAAM,MAAM,yBAAyB,GAAG;IACtC,iBAAiB,EAAE,yBAAyB,CAAC,qBAAqB,CAAC,CAAC;IAEpE,KAAK,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC;IAC1C,UAAU,EAAE,yBAAyB,CAAC,YAAY,CAAC,CAAC;IACpD,SAAS,EAAE,yBAAyB,CAAC,WAAW,CAAC,CAAC;IAClD,iBAAiB,EAAE,OAAO,CAAC;IAC3B,IAAI,CAAC,EAAE,gBAAgB,CAAC;IACxB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAClC,MAAM,CAAC,EAAE,wBAAwB,CAAC;IAClC,aAAa,EAAE,yBAAyB,CAAC,eAAe,CAAC,CAAC;IAC1D,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,wBAAwB,GAChC,yBAAyB,CA0I3B"}
|
|
@@ -3,6 +3,7 @@ import { useFillOtcOrderFlow } from './useFillOtcOrderFlow.js';
|
|
|
3
3
|
import { useLogger } from '../../../core/logger.js';
|
|
4
4
|
import { isUserCancelledError } from '../../swap/tradeFlow/common/errors.js';
|
|
5
5
|
import { constructTxLinkForChain } from '../../../lib/utils/explorer.js';
|
|
6
|
+
import { getStandaloneTxHash } from '../../../transactions/hash.js';
|
|
6
7
|
|
|
7
8
|
function useFillOtcOrderStep(options) {
|
|
8
9
|
const $ = distExports.c(19);
|
|
@@ -51,15 +52,17 @@ function useFillOtcOrderStep(options) {
|
|
|
51
52
|
const inFillTxConfirmation = step?.key === "signature" && (step.subStep === "order-signature" || step.subStep === "standalone-order-signature");
|
|
52
53
|
const notYetFillTxSent = step?.key === "order-execution" && !fillOtcOrderFlow.fillOrder.isTxSent && !fillOtcOrderFlow.fillOrderBatch.isCallsSent;
|
|
53
54
|
isFlowCancellable = approvalIsStarted || notYetFillTxSent || inFillTxConfirmation;
|
|
54
|
-
const
|
|
55
|
-
|
|
55
|
+
const fillTxHash = fillOtcOrderFlow.fillOrderBatch.txHash || getStandaloneTxHash({
|
|
56
|
+
transactionHash: fillOtcOrderFlow.fillOrder.txHash
|
|
57
|
+
});
|
|
58
|
+
explorerLink = fillTxHash ? constructTxLinkForChain({
|
|
56
59
|
chainId: fillOtcOrderFlow.chainId,
|
|
57
|
-
txHash
|
|
60
|
+
txHash: fillTxHash
|
|
58
61
|
}) : void 0;
|
|
59
62
|
logger.once.log("step", step, fillOtcOrderFlow, {
|
|
60
63
|
isFlowCancellable,
|
|
61
64
|
explorerLink,
|
|
62
|
-
txHash
|
|
65
|
+
txHash: fillTxHash
|
|
63
66
|
});
|
|
64
67
|
$[0] = fillOtcOrderFlow;
|
|
65
68
|
$[1] = logger.once;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFillOtcOrderStep.js","sources":["../../../../src/hooks/otc/tradeFlow/useFillOtcOrderStep.ts"],"sourcesContent":["import type {\n FillOtcOrderStep,\n FillOtcOrderStepKey,\n} from \"@/components/widget/TradeOverview/steps\";\nimport {\n useFillOtcOrderFlow,\n type SubmitFillOtcOrderResult,\n type UseFillOtcOrderFlowInput,\n type UseFillOtcOrderFlowResult,\n} from \"./useFillOtcOrderFlow\";\nimport { useLogger } from \"@/core/logger\";\nimport { isUserCancelledError } from \"../../swap/tradeFlow/common/errors\";\nimport { constructTxLinkForChain } from \"@/lib/utils/explorer\";\n\nexport type UseFillOtcOrderStepResult = {\n startFillOtcOrder: UseFillOtcOrderFlowResult[\"runFillOtcOrderFlow\"];\n // @TODO check if resetting is necessary on error, maybe not if submit on click works as a reset\n reset: UseFillOtcOrderFlowResult[\"reset\"];\n cancelFlow: UseFillOtcOrderFlowResult[\"cancelFlow\"];\n retryFlow: UseFillOtcOrderFlowResult[\"retryFlow\"];\n isFlowCancellable: boolean;\n step?: FillOtcOrderStep;\n error: Error | null;\n erroredStep?: FillOtcOrderStepKey;\n result?: SubmitFillOtcOrderResult;\n tradeFlowType: UseFillOtcOrderFlowResult[\"tradeFlowType\"];\n explorerLink?: string;\n};\n\nexport function useFillOtcOrderStep(\n options: UseFillOtcOrderFlowInput\n): UseFillOtcOrderStepResult {\n const logger = useLogger(\"FillOtcOrderStep\");\n const fillOtcOrderFlow = useFillOtcOrderFlow(options);\n\n const startFillOtcOrder = fillOtcOrderFlow.runFillOtcOrderFlow;\n const reset = fillOtcOrderFlow.reset;\n const cancelFlow = fillOtcOrderFlow.cancelFlow;\n const retryFlow = fillOtcOrderFlow.retryFlow;\n\n let step: FillOtcOrderStep | undefined;\n\n const permitSigningHappeningOrNeverHappened =\n // isPending starts as false,\n // so we can use !isPermitSigned to detect if Permit signing is happening or never happened\n fillOtcOrderFlow.signPermit.isPending ||\n !fillOtcOrderFlow.signPermit.isPermitSigned;\n\n const approvalHappeningOrNeverHappened =\n // isPending starts as false,\n // needsApproval && !isSuccess allows to detect approve step right away even then\n fillOtcOrderFlow.approval.isPending || !fillOtcOrderFlow.approval.isSuccess;\n\n const willUsePermit =\n fillOtcOrderFlow.approval.needsApproval &&\n fillOtcOrderFlow.signPermit.isPermitSupported &&\n fillOtcOrderFlow.signPermit.isPermitReadyToSign &&\n !fillOtcOrderFlow.fillOrderBatch.canBatchTxs;\n\n const permitOrApprovalHappeningOrNeverHappened = willUsePermit\n ? permitSigningHappeningOrNeverHappened\n : approvalHappeningOrNeverHappened;\n\n if (\n fillOtcOrderFlow.approval.needsApproval &&\n permitOrApprovalHappeningOrNeverHappened\n ) {\n step = { key: \"signature\", subStep: \"approval-signature\" };\n } else if (\n fillOtcOrderFlow.fillOrder.isConfirmingTX ||\n fillOtcOrderFlow.fillOrderBatch.isConfirmingCalls\n ) {\n const permitOrApprovalHappened = !!(\n fillOtcOrderFlow.approval.txHash || fillOtcOrderFlow.signPermit.signature\n );\n\n step = {\n key: \"signature\",\n subStep: permitOrApprovalHappened\n ? \"order-signature\"\n : \"standalone-order-signature\",\n };\n } else if (\n fillOtcOrderFlow.fillOrder.isTxPending ||\n fillOtcOrderFlow.fillOrderBatch.isCallsPending\n ) {\n step = { key: \"order-execution\" };\n } else if (fillOtcOrderFlow.isPending) {\n // if something is between steps but not clear step,\n // then assume we're at the standalone signature sub-step\n step = { key: \"signature\", subStep: \"standalone-order-signature\" };\n }\n\n const approvalIsStarted =\n step?.key === \"signature\" &&\n step.subStep === \"approval-signature\" &&\n fillOtcOrderFlow.approval.isTxPending;\n\n const inFillTxConfirmation =\n step?.key === \"signature\" &&\n (step.subStep === \"order-signature\" ||\n step.subStep === \"standalone-order-signature\");\n\n const notYetFillTxSent =\n step?.key === \"order-execution\" &&\n !fillOtcOrderFlow.fillOrder.isTxSent &&\n !fillOtcOrderFlow.fillOrderBatch.isCallsSent;\n\n const isFlowCancellable =\n // final Tx is not yet submitted, there's something to cancel;\n // but some steps are already started so we can't simply dismiss\n approvalIsStarted || notYetFillTxSent || inFillTxConfirmation;\n\n // either of the txHashes will be available\n const txHash =\n fillOtcOrderFlow.fillOrder.txHash || fillOtcOrderFlow.fillOrderBatch.txHash;\n const explorerLink = txHash\n ? constructTxLinkForChain({ chainId: fillOtcOrderFlow.chainId, txHash })\n : undefined;\n\n logger.once.log(\"step\", step, fillOtcOrderFlow, {\n isFlowCancellable,\n explorerLink,\n txHash,\n });\n\n // intentional cancellation is handled separately\n const error = isUserCancelledError(fillOtcOrderFlow.error)\n ? null\n : fillOtcOrderFlow.error;\n\n let erroredStep: FillOtcOrderStepKey | undefined;\n\n if (fillOtcOrderFlow.isError) {\n if (\n fillOtcOrderFlow.approval.isError ||\n fillOtcOrderFlow.signPermit.isError ||\n fillOtcOrderFlow.fillOrder.isConfirmingTxError ||\n fillOtcOrderFlow.fillOrderBatch.isConfirmingCallsError\n ) {\n erroredStep = \"signature\";\n } else if (\n fillOtcOrderFlow.fillOrder.isTxAwaitingError ||\n fillOtcOrderFlow.fillOrderBatch.isCallsAwaitingError\n ) {\n erroredStep = \"order-execution\";\n }\n }\n\n return {\n startFillOtcOrder,\n reset, // @TODO it maybe makes sense to reset mutation data when TradeOverflow drawer is closed\n // if we ever depend on mutation.result when Drawer is not closed,\n // otherwise the result sticks around until remount or next mutation start\n cancelFlow,\n retryFlow,\n isFlowCancellable,\n step,\n error,\n erroredStep,\n result: fillOtcOrderFlow.result,\n tradeFlowType: fillOtcOrderFlow.tradeFlowType,\n explorerLink,\n };\n}\n"],"names":["useFillOtcOrderStep","options","$","_c","logger","useLogger","fillOtcOrderFlow","useFillOtcOrderFlow","startFillOtcOrder","runFillOtcOrderFlow","reset","cancelFlow","retryFlow","explorerLink","isFlowCancellable","step","once","permitSigningHappeningOrNeverHappened","signPermit","isPending","isPermitSigned","approvalHappeningOrNeverHappened","approval","isSuccess","willUsePermit","needsApproval","isPermitSupported","isPermitReadyToSign","fillOrderBatch","canBatchTxs","permitOrApprovalHappeningOrNeverHappened","fillOrder","isConfirmingTX","isConfirmingCalls","permitOrApprovalHappened","txHash","signature","isTxPending","isCallsPending","approvalIsStarted","key","subStep","inFillTxConfirmation","notYetFillTxSent","isTxSent","isCallsSent","constructTxLinkForChain","chainId","undefined","log","t0","error","isUserCancelledError","erroredStep","isError","isConfirmingTxError","isConfirmingCallsError","isTxAwaitingError","isCallsAwaitingError","t1","result","tradeFlowType"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useFillOtcOrderStep.js","sources":["../../../../src/hooks/otc/tradeFlow/useFillOtcOrderStep.ts"],"sourcesContent":["import type {\n FillOtcOrderStep,\n FillOtcOrderStepKey,\n} from \"@/components/widget/TradeOverview/steps\";\nimport {\n useFillOtcOrderFlow,\n type SubmitFillOtcOrderResult,\n type UseFillOtcOrderFlowInput,\n type UseFillOtcOrderFlowResult,\n} from \"./useFillOtcOrderFlow\";\nimport { useLogger } from \"@/core/logger\";\nimport { isUserCancelledError } from \"../../swap/tradeFlow/common/errors\";\nimport { constructTxLinkForChain } from \"@/lib/utils/explorer\";\nimport { getStandaloneTxHash } from \"@/transactions/hash\";\n\nexport type UseFillOtcOrderStepResult = {\n startFillOtcOrder: UseFillOtcOrderFlowResult[\"runFillOtcOrderFlow\"];\n // @TODO check if resetting is necessary on error, maybe not if submit on click works as a reset\n reset: UseFillOtcOrderFlowResult[\"reset\"];\n cancelFlow: UseFillOtcOrderFlowResult[\"cancelFlow\"];\n retryFlow: UseFillOtcOrderFlowResult[\"retryFlow\"];\n isFlowCancellable: boolean;\n step?: FillOtcOrderStep;\n error: Error | null;\n erroredStep?: FillOtcOrderStepKey;\n result?: SubmitFillOtcOrderResult;\n tradeFlowType: UseFillOtcOrderFlowResult[\"tradeFlowType\"];\n explorerLink?: string;\n};\n\nexport function useFillOtcOrderStep(\n options: UseFillOtcOrderFlowInput\n): UseFillOtcOrderStepResult {\n const logger = useLogger(\"FillOtcOrderStep\");\n const fillOtcOrderFlow = useFillOtcOrderFlow(options);\n\n const startFillOtcOrder = fillOtcOrderFlow.runFillOtcOrderFlow;\n const reset = fillOtcOrderFlow.reset;\n const cancelFlow = fillOtcOrderFlow.cancelFlow;\n const retryFlow = fillOtcOrderFlow.retryFlow;\n\n let step: FillOtcOrderStep | undefined;\n\n const permitSigningHappeningOrNeverHappened =\n // isPending starts as false,\n // so we can use !isPermitSigned to detect if Permit signing is happening or never happened\n fillOtcOrderFlow.signPermit.isPending ||\n !fillOtcOrderFlow.signPermit.isPermitSigned;\n\n const approvalHappeningOrNeverHappened =\n // isPending starts as false,\n // needsApproval && !isSuccess allows to detect approve step right away even then\n fillOtcOrderFlow.approval.isPending || !fillOtcOrderFlow.approval.isSuccess;\n\n const willUsePermit =\n fillOtcOrderFlow.approval.needsApproval &&\n fillOtcOrderFlow.signPermit.isPermitSupported &&\n fillOtcOrderFlow.signPermit.isPermitReadyToSign &&\n !fillOtcOrderFlow.fillOrderBatch.canBatchTxs;\n\n const permitOrApprovalHappeningOrNeverHappened = willUsePermit\n ? permitSigningHappeningOrNeverHappened\n : approvalHappeningOrNeverHappened;\n\n if (\n fillOtcOrderFlow.approval.needsApproval &&\n permitOrApprovalHappeningOrNeverHappened\n ) {\n step = { key: \"signature\", subStep: \"approval-signature\" };\n } else if (\n fillOtcOrderFlow.fillOrder.isConfirmingTX ||\n fillOtcOrderFlow.fillOrderBatch.isConfirmingCalls\n ) {\n const permitOrApprovalHappened = !!(\n fillOtcOrderFlow.approval.txHash || fillOtcOrderFlow.signPermit.signature\n );\n\n step = {\n key: \"signature\",\n subStep: permitOrApprovalHappened\n ? \"order-signature\"\n : \"standalone-order-signature\",\n };\n } else if (\n fillOtcOrderFlow.fillOrder.isTxPending ||\n fillOtcOrderFlow.fillOrderBatch.isCallsPending\n ) {\n step = { key: \"order-execution\" };\n } else if (fillOtcOrderFlow.isPending) {\n // if something is between steps but not clear step,\n // then assume we're at the standalone signature sub-step\n step = { key: \"signature\", subStep: \"standalone-order-signature\" };\n }\n\n const approvalIsStarted =\n step?.key === \"signature\" &&\n step.subStep === \"approval-signature\" &&\n fillOtcOrderFlow.approval.isTxPending;\n\n const inFillTxConfirmation =\n step?.key === \"signature\" &&\n (step.subStep === \"order-signature\" ||\n step.subStep === \"standalone-order-signature\");\n\n const notYetFillTxSent =\n step?.key === \"order-execution\" &&\n !fillOtcOrderFlow.fillOrder.isTxSent &&\n !fillOtcOrderFlow.fillOrderBatch.isCallsSent;\n\n const isFlowCancellable =\n // final Tx is not yet submitted, there's something to cancel;\n // but some steps are already started so we can't simply dismiss\n approvalIsStarted || notYetFillTxSent || inFillTxConfirmation;\n\n const fillTxHash =\n // either last txHash from batch receipt\n fillOtcOrderFlow.fillOrderBatch.txHash ||\n // or standalone fill txHash\n getStandaloneTxHash({ transactionHash: fillOtcOrderFlow.fillOrder.txHash });\n const explorerLink = fillTxHash\n ? constructTxLinkForChain({\n chainId: fillOtcOrderFlow.chainId,\n txHash: fillTxHash,\n })\n : undefined;\n\n logger.once.log(\"step\", step, fillOtcOrderFlow, {\n isFlowCancellable,\n explorerLink,\n txHash: fillTxHash,\n });\n\n // intentional cancellation is handled separately\n const error = isUserCancelledError(fillOtcOrderFlow.error)\n ? null\n : fillOtcOrderFlow.error;\n\n let erroredStep: FillOtcOrderStepKey | undefined;\n\n if (fillOtcOrderFlow.isError) {\n if (\n fillOtcOrderFlow.approval.isError ||\n fillOtcOrderFlow.signPermit.isError ||\n fillOtcOrderFlow.fillOrder.isConfirmingTxError ||\n fillOtcOrderFlow.fillOrderBatch.isConfirmingCallsError\n ) {\n erroredStep = \"signature\";\n } else if (\n fillOtcOrderFlow.fillOrder.isTxAwaitingError ||\n fillOtcOrderFlow.fillOrderBatch.isCallsAwaitingError\n ) {\n erroredStep = \"order-execution\";\n }\n }\n\n return {\n startFillOtcOrder,\n reset, // @TODO it maybe makes sense to reset mutation data when TradeOverflow drawer is closed\n // if we ever depend on mutation.result when Drawer is not closed,\n // otherwise the result sticks around until remount or next mutation start\n cancelFlow,\n retryFlow,\n isFlowCancellable,\n step,\n error,\n erroredStep,\n result: fillOtcOrderFlow.result,\n tradeFlowType: fillOtcOrderFlow.tradeFlowType,\n explorerLink,\n };\n}\n"],"names":["useFillOtcOrderStep","options","$","_c","logger","useLogger","fillOtcOrderFlow","useFillOtcOrderFlow","startFillOtcOrder","runFillOtcOrderFlow","reset","cancelFlow","retryFlow","explorerLink","isFlowCancellable","step","once","permitSigningHappeningOrNeverHappened","signPermit","isPending","isPermitSigned","approvalHappeningOrNeverHappened","approval","isSuccess","willUsePermit","needsApproval","isPermitSupported","isPermitReadyToSign","fillOrderBatch","canBatchTxs","permitOrApprovalHappeningOrNeverHappened","fillOrder","isConfirmingTX","isConfirmingCalls","permitOrApprovalHappened","txHash","signature","isTxPending","isCallsPending","approvalIsStarted","key","subStep","inFillTxConfirmation","notYetFillTxSent","isTxSent","isCallsSent","fillTxHash","getStandaloneTxHash","transactionHash","constructTxLinkForChain","chainId","undefined","log","t0","error","isUserCancelledError","erroredStep","isError","isConfirmingTxError","isConfirmingCallsError","isTxAwaitingError","isCallsAwaitingError","t1","result","tradeFlowType"],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ type CreatePreSignableDeltaOrderReturn = {
|
|
|
7
7
|
orderToPost: DeltaOrderToPost;
|
|
8
8
|
preSignCalldata: Hex;
|
|
9
9
|
};
|
|
10
|
-
type CreatePreSignableDeltaOrderInput = CreateDeltaOrderInput;
|
|
10
|
+
export type CreatePreSignableDeltaOrderInput = CreateDeltaOrderInput;
|
|
11
11
|
type CreatePreSignableDeltaOrderMutationOptions = Omit<UseMutationOptions<CreatePreSignableDeltaOrderReturn, Error, CreatePreSignableDeltaOrderInput, void>, "mutationFn">;
|
|
12
12
|
type CreateDeltaOrderMutInput = {
|
|
13
13
|
mutationOptions?: CreatePreSignableDeltaOrderMutationOptions;
|
|
@@ -21,17 +21,5 @@ export type DeltaOrderToPost = PostDeltaOrderInput & {
|
|
|
21
21
|
};
|
|
22
22
|
export declare const CREATE_PRE_SIGNABLE_DELTA_ORDER_MUTATION_KEY = "createPreSignableDeltaOrder";
|
|
23
23
|
export declare function useCreatePreSignableDeltaOrder({ mutationOptions, chainId, client, }: CreateDeltaOrderMutInput): UseMutationResult<CreatePreSignableDeltaOrderReturn, Error, CreatePreSignableDeltaOrderInput, void>;
|
|
24
|
-
type DepositPreSignResult = {
|
|
25
|
-
orderToPost: DeltaOrderToPost;
|
|
26
|
-
depositAndPreSignCalldata: Hex;
|
|
27
|
-
};
|
|
28
|
-
type DepositPreSignInput = CreateDeltaOrderInput;
|
|
29
|
-
type DepositPreSignMutationOptions = Omit<UseMutationOptions<DepositPreSignResult, Error, DepositPreSignInput, void>, "mutationFn">;
|
|
30
|
-
type UseDepositPreSignParams = {
|
|
31
|
-
mutationOptions?: DepositPreSignMutationOptions;
|
|
32
|
-
chainId: number;
|
|
33
|
-
client?: MinViemClient;
|
|
34
|
-
};
|
|
35
|
-
export declare function useDepositPreSignDeltaOrder({ mutationOptions, chainId, client, }: UseDepositPreSignParams): UseMutationResult<DepositPreSignResult, Error, DepositPreSignInput, void>;
|
|
36
24
|
export {};
|
|
37
25
|
//# sourceMappingURL=useCreatePreSignableDeltaOrder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCreatePreSignableDeltaOrder.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACvB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAChC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAEnE,KAAK,iCAAiC,GAAG;IACvC,WAAW,EAAE,gBAAgB,CAAC;IAC9B,eAAe,EAAE,GAAG,CAAC;CACtB,CAAC;AAEF,
|
|
1
|
+
{"version":3,"file":"useCreatePreSignableDeltaOrder.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACvB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAChC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAEnE,KAAK,iCAAiC,GAAG;IACvC,WAAW,EAAE,gBAAgB,CAAC;IAC9B,eAAe,EAAE,GAAG,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,gCAAgC,GAAG,qBAAqB,CAAC;AAErE,KAAK,0CAA0C,GAAG,IAAI,CACpD,kBAAkB,CAChB,iCAAiC,EACjC,KAAK,EACL,gCAAgC,EAChC,IAAI,CACL,EACD,YAAY,CACb,CAAC;AAEF,KAAK,wBAAwB,GAAG;IAC9B,eAAe,CAAC,EAAE,0CAA0C,CAAC;IAC7D,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,mBAAmB,GAAG;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,IAAI,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,4CAA4C,gCAC1B,CAAC;AAEhC,wBAAgB,8BAA8B,CAAC,EAC7C,eAAe,EACf,OAAO,EACP,MAAM,GACP,EAAE,wBAAwB,GAAG,iBAAiB,CAC7C,iCAAiC,EACjC,KAAK,EACL,gCAAgC,EAChC,IAAI,CACL,CA6CA"}
|
|
@@ -83,85 +83,6 @@ function useCreatePreSignableDeltaOrder(t0) {
|
|
|
83
83
|
}
|
|
84
84
|
return useMutation(t4);
|
|
85
85
|
}
|
|
86
|
-
function useDepositPreSignDeltaOrder(t0) {
|
|
87
|
-
const $ = distExports.c(10);
|
|
88
|
-
const {
|
|
89
|
-
mutationOptions,
|
|
90
|
-
chainId,
|
|
91
|
-
client
|
|
92
|
-
} = t0;
|
|
93
|
-
let t1;
|
|
94
|
-
if ($[0] !== chainId || $[1] !== client) {
|
|
95
|
-
t1 = {
|
|
96
|
-
chainId,
|
|
97
|
-
client
|
|
98
|
-
};
|
|
99
|
-
$[0] = chainId;
|
|
100
|
-
$[1] = client;
|
|
101
|
-
$[2] = t1;
|
|
102
|
-
} else {
|
|
103
|
-
t1 = $[2];
|
|
104
|
-
}
|
|
105
|
-
const {
|
|
106
|
-
sdk
|
|
107
|
-
} = useCalldataSDK(t1);
|
|
108
|
-
let t2;
|
|
109
|
-
if ($[3] === Symbol.for("react.memo_cache_sentinel")) {
|
|
110
|
-
t2 = ["depositPreSignDeltaOrder"];
|
|
111
|
-
$[3] = t2;
|
|
112
|
-
} else {
|
|
113
|
-
t2 = $[3];
|
|
114
|
-
}
|
|
115
|
-
let t3;
|
|
116
|
-
if ($[4] !== chainId || $[5] !== sdk) {
|
|
117
|
-
t3 = async (t42) => {
|
|
118
|
-
const {
|
|
119
|
-
orderInput,
|
|
120
|
-
referrerAddress,
|
|
121
|
-
signal,
|
|
122
|
-
type
|
|
123
|
-
} = t42;
|
|
124
|
-
signal?.throwIfAborted();
|
|
125
|
-
assert(sdk, "sdk is not available");
|
|
126
|
-
const signableTypedData = await sdk.buildDeltaOrder(orderInput);
|
|
127
|
-
signal?.throwIfAborted();
|
|
128
|
-
const orderHash = sdk.hashDeltaOrderTypedData(signableTypedData);
|
|
129
|
-
const orderToPost = {
|
|
130
|
-
chainId,
|
|
131
|
-
orderHash,
|
|
132
|
-
order: signableTypedData.data,
|
|
133
|
-
partner: orderInput.partner,
|
|
134
|
-
referrerAddress,
|
|
135
|
-
type,
|
|
136
|
-
signature: "0x"
|
|
137
|
-
};
|
|
138
|
-
const depositAndPreSignCalldata = await sdk.depositNativeAndPreSign(orderHash);
|
|
139
|
-
return {
|
|
140
|
-
orderToPost,
|
|
141
|
-
depositAndPreSignCalldata
|
|
142
|
-
};
|
|
143
|
-
};
|
|
144
|
-
$[4] = chainId;
|
|
145
|
-
$[5] = sdk;
|
|
146
|
-
$[6] = t3;
|
|
147
|
-
} else {
|
|
148
|
-
t3 = $[6];
|
|
149
|
-
}
|
|
150
|
-
let t4;
|
|
151
|
-
if ($[7] !== mutationOptions || $[8] !== t3) {
|
|
152
|
-
t4 = {
|
|
153
|
-
mutationKey: t2,
|
|
154
|
-
mutationFn: t3,
|
|
155
|
-
...mutationOptions
|
|
156
|
-
};
|
|
157
|
-
$[7] = mutationOptions;
|
|
158
|
-
$[8] = t3;
|
|
159
|
-
$[9] = t4;
|
|
160
|
-
} else {
|
|
161
|
-
t4 = $[9];
|
|
162
|
-
}
|
|
163
|
-
return useMutation(t4);
|
|
164
|
-
}
|
|
165
86
|
|
|
166
|
-
export { CREATE_PRE_SIGNABLE_DELTA_ORDER_MUTATION_KEY, useCreatePreSignableDeltaOrder
|
|
87
|
+
export { CREATE_PRE_SIGNABLE_DELTA_ORDER_MUTATION_KEY, useCreatePreSignableDeltaOrder };
|
|
167
88
|
//# sourceMappingURL=useCreatePreSignableDeltaOrder.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCreatePreSignableDeltaOrder.js","sources":["../../../../../../src/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.ts"],"sourcesContent":["import { useCalldataSDK } from \"@/hooks/useSDK\";\nimport {\n useMutation,\n type UseMutationOptions,\n type UseMutationResult,\n} from \"@tanstack/react-query\";\nimport type { MinViemClient } from \"@velora-dex/sdk\";\nimport { assert } from \"ts-essentials\";\nimport type { Hex } from \"viem\";\nimport type { PostDeltaOrderInput } from \"./usePostDeltaOrder\";\nimport type { CreateDeltaOrderInput } from \"./useCreateDeltaOrder\";\n\ntype CreatePreSignableDeltaOrderReturn = {\n orderToPost: DeltaOrderToPost;\n preSignCalldata: Hex;\n};\n\
|
|
1
|
+
{"version":3,"file":"useCreatePreSignableDeltaOrder.js","sources":["../../../../../../src/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.ts"],"sourcesContent":["import { useCalldataSDK } from \"@/hooks/useSDK\";\nimport {\n useMutation,\n type UseMutationOptions,\n type UseMutationResult,\n} from \"@tanstack/react-query\";\nimport type { MinViemClient } from \"@velora-dex/sdk\";\nimport { assert } from \"ts-essentials\";\nimport type { Hex } from \"viem\";\nimport type { PostDeltaOrderInput } from \"./usePostDeltaOrder\";\nimport type { CreateDeltaOrderInput } from \"./useCreateDeltaOrder\";\n\ntype CreatePreSignableDeltaOrderReturn = {\n orderToPost: DeltaOrderToPost;\n preSignCalldata: Hex;\n};\n\nexport type CreatePreSignableDeltaOrderInput = CreateDeltaOrderInput;\n\ntype CreatePreSignableDeltaOrderMutationOptions = Omit<\n UseMutationOptions<\n CreatePreSignableDeltaOrderReturn,\n Error,\n CreatePreSignableDeltaOrderInput,\n void\n >,\n \"mutationFn\"\n>;\n\ntype CreateDeltaOrderMutInput = {\n mutationOptions?: CreatePreSignableDeltaOrderMutationOptions;\n chainId: number;\n client?: MinViemClient;\n};\n\nexport type DeltaOrderToPost = PostDeltaOrderInput & {\n chainId: number;\n orderHash: string;\n signature: \"0x\"; // pre-signed Order signature\n};\n\nexport const CREATE_PRE_SIGNABLE_DELTA_ORDER_MUTATION_KEY =\n \"createPreSignableDeltaOrder\";\n\nexport function useCreatePreSignableDeltaOrder({\n mutationOptions,\n chainId,\n client,\n}: CreateDeltaOrderMutInput): UseMutationResult<\n CreatePreSignableDeltaOrderReturn,\n Error,\n CreatePreSignableDeltaOrderInput,\n void\n> {\n const { sdk } = useCalldataSDK({ chainId, client });\n\n return useMutation<\n CreatePreSignableDeltaOrderReturn,\n Error,\n CreatePreSignableDeltaOrderInput,\n void\n >({\n mutationKey: [CREATE_PRE_SIGNABLE_DELTA_ORDER_MUTATION_KEY],\n mutationFn: async ({ orderInput, referrerAddress, signal, type }) => {\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n assert(sdk, \"sdk is not available\");\n // Note: This mutation requires the SDK to be initialized with viem client\n // to access setDeltaOrderPreSignature functionality and create calldata\n\n // Step 1: Build the Delta order\n const signableTypedData = await sdk.buildDeltaOrder(orderInput);\n\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n // Step 2: produce orderHash by hashing the typed data\n const orderHash = sdk.hashDeltaOrderTypedData(signableTypedData);\n\n // Step 3: Gather Order to Post\n const orderToPost: DeltaOrderToPost = {\n chainId,\n orderHash,\n order: signableTypedData.data,\n partner: orderInput.partner,\n referrerAddress,\n type,\n signature: \"0x\",\n };\n\n // Step 4: Gather calldata to make a setPreSignature request\n const preSignCalldata = await sdk.setDeltaOrderPreSignature(orderHash);\n\n return { orderToPost, preSignCalldata };\n },\n ...mutationOptions,\n });\n}\n"],"names":["CREATE_PRE_SIGNABLE_DELTA_ORDER_MUTATION_KEY","useCreatePreSignableDeltaOrder","t0","$","_c","mutationOptions","chainId","client","t1","sdk","useCalldataSDK","t2","Symbol","for","t3","t4","orderInput","referrerAddress","signal","type","throwIfAborted","assert","signableTypedData","buildDeltaOrder","orderHash","hashDeltaOrderTypedData","orderToPost","order","data","partner","signature","preSignCalldata","setDeltaOrderPreSignature","mutationKey","mutationFn","useMutation"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDeltaLimitOrderRequiredBalance.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.ts"],"names":[],"mappings":"AACA,OAAO,EAAU,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAG1D,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,cAAc,EACpB,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"useDeltaLimitOrderRequiredBalance.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.ts"],"names":[],"mappings":"AACA,OAAO,EAAU,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAG1D,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,cAAc,EACpB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAa,KAAK,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAO/D,KAAK,oCAAoC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAEnE,KAAK,yCAAyC,CAC5C,KAAK,GAAG,oCAAoC,IAC1C,IAAI,CACN,eAAe,CACb,oCAAoC,EACpC,KAAK,EACL,KAAK,EACL,sCAAsC,CACvC,EACD,UAAU,GAAG,SAAS,CACvB,CAAC;AACF,KAAK,yCAAyC,CAC5C,KAAK,GAAG,oCAAoC,IAC1C,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAEjC,KAAK,wCAAwC,CAC3C,KAAK,GAAG,oCAAoC,IAC1C;IACF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,yCAAyC,CAAC,KAAK,CAAC,CAAC;CAC1D,CAAC;AAEF,KAAK,sCAAsC,GAAG;IAC5C,IAAI,EAAE,0BAA0B;IAChC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE;CAC9D,CAAC;AAEF,wBAAgB,iCAAiC,CAC/C,KAAK,GAAG,oCAAoC,EAC5C,EACA,YAAY,EACZ,KAAK,GACN,EAAE,wCAAwC,CAAC,KAAK,CAAC,GAAG,yCAAyC,CAAC,KAAK,CAAC,CAwCpG;AAED,wBAAgB,sCAAsC,CAAC,EACrD,OAAO,EACP,OAAO,EACP,YAAY,GACb,EAAE;IACD,OAAO,EAAE,gBAAgB,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,GAAG,sCAAsC,CASzC;AAED,KAAK,gCAAgC,GAAG;IACtC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,KAAK,iCAAiC,GAAG;IACvC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AACF,wBAAgB,8BAA8B,CAAC,EAC7C,YAAY,EACZ,MAAM,EACN,OAAO,GACR,EAAE,YAAY,CAAC,gCAAgC,EAAE,QAAQ,CAAC,GAAG,YAAY,CACxE,iCAAiC,EACjC,mBAAmB,CACpB,CAAC;AACF,wBAAgB,8BAA8B,CAAC,EAC7C,YAAY,EACZ,MAAM,EACN,OAAO,GACR,EAAE,gCAAgC,GAAG;IACpC,MAAM,EAAE,SAAS,CAAC;CACnB,GAAG,iCAAiC,GAAG;IAAE,iBAAiB,EAAE,SAAS,CAAA;CAAE,CAAC;AACzE,wBAAgB,8BAA8B,CAAC,EAC7C,YAAY,EACZ,MAAM,EACN,OAAO,GACR,EAAE,gCAAgC,GAAG,iCAAiC,CAAC"}
|
|
@@ -4,6 +4,7 @@ import { assert } from 'ts-essentials';
|
|
|
4
4
|
import { useChainId, useAccount } from 'wagmi';
|
|
5
5
|
import { useMinViemClient } from '../../../../useMinViemClient.js';
|
|
6
6
|
import { useQuery } from '@tanstack/react-query';
|
|
7
|
+
import { isETHaddress } from '../../../../../tokens/utils/eth.js';
|
|
7
8
|
import { isAddress } from 'viem';
|
|
8
9
|
import { LONG_STALE_TIME_FOR_REACTIVENESS } from '../../../../../lib/constants/time.js';
|
|
9
10
|
|
|
@@ -87,7 +88,7 @@ function useDeltaLimitOrderRequiredBalance(t0) {
|
|
|
87
88
|
}
|
|
88
89
|
let t5;
|
|
89
90
|
if ($[15] !== account || $[16] !== chainId || $[17] !== query?.enabled || $[18] !== sdk || $[19] !== tokenAddress) {
|
|
90
|
-
t5 = !!(chainId && account && sdk) && (!tokenAddress || isAddress(tokenAddress)) && (query?.enabled ?? true);
|
|
91
|
+
t5 = !!(chainId && account && sdk) && (!tokenAddress || isAddress(tokenAddress) && !isETHaddress(tokenAddress)) && (query?.enabled ?? true);
|
|
91
92
|
$[15] = account;
|
|
92
93
|
$[16] = chainId;
|
|
93
94
|
$[17] = query?.enabled;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDeltaLimitOrderRequiredBalance.js","sources":["../../../../../../src/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.ts"],"sourcesContent":["import { useDeltaSDK } from \"@/hooks/useSDK\";\nimport { assert, type MarkRequired } from \"ts-essentials\";\nimport { useAccount, useChainId } from \"wagmi\";\nimport { useMinViemClient } from \"@/hooks/useMinViemClient\";\nimport {\n useQuery,\n type UseQueryOptions,\n type UseQueryResult,\n} from \"@tanstack/react-query\";\n\nimport { isAddress, type Address } from \"viem\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { LONG_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\n\n// ============================================================================\n// Types for getRequiredBalanceForDeltaLimitOrders\n// ============================================================================\n\ntype DeltaLimitOrderRequiredBalanceReturn = Record<string, string>;\n\ntype DeltaLimitOrderRequiredBalanceQueryParams<\n TData = DeltaLimitOrderRequiredBalanceReturn,\n> = Omit<\n UseQueryOptions<\n DeltaLimitOrderRequiredBalanceReturn,\n Error,\n TData,\n DeltaLimitOrderRequiredBalanceQueryKey\n >,\n \"queryKey\" | \"queryFn\"\n>;\ntype DeltaLimitOrderRequiredBalanceQueryResult<\n TData = DeltaLimitOrderRequiredBalanceReturn,\n> = UseQueryResult<TData, Error>;\n\ntype DeltaLimitOrderRequiredBalanceQueryInput<\n TData = DeltaLimitOrderRequiredBalanceReturn,\n> = {\n tokenAddress?: string;\n query?: DeltaLimitOrderRequiredBalanceQueryParams<TData>;\n};\n\ntype DeltaLimitOrderRequiredBalanceQueryKey = [\n base: \"delta/getRequiredBalance\",\n { chainId: number; account?: Address; tokenAddress?: string },\n];\n\nexport function useDeltaLimitOrderRequiredBalance<\n TData = DeltaLimitOrderRequiredBalanceReturn,\n>({\n tokenAddress,\n query,\n}: DeltaLimitOrderRequiredBalanceQueryInput<TData>): DeltaLimitOrderRequiredBalanceQueryResult<TData> {\n const chainId = useChainId();\n const { address: account } = useAccount();\n const { minClient } = useMinViemClient({ chainId, account });\n\n const { sdk } = useDeltaSDK({\n chainId,\n client: minClient,\n account,\n });\n\n return useQuery<\n DeltaLimitOrderRequiredBalanceReturn,\n Error,\n TData,\n DeltaLimitOrderRequiredBalanceQueryKey\n >({\n queryKey: deltaLimitOrderRequiredBalanceQueryKey({\n chainId,\n account,\n tokenAddress,\n }),\n queryFn: ({ signal }) => {\n assert(sdk, \"SDK not initialized\");\n assert(account, \"account is required\");\n\n return sdk.getRequiredBalanceForDeltaLimitOrders(\n { userAddress: account, tokenAddress },\n { signal }\n );\n },\n ...query,\n enabled:\n !!(chainId && account && sdk) &&\n // either no specific token given\n (!tokenAddress ||\n // or the token with a valid address\n isAddress(tokenAddress)) &&\n (query?.enabled ?? true),\n });\n}\n\nexport function deltaLimitOrderRequiredBalanceQueryKey({\n chainId,\n account,\n tokenAddress,\n}: {\n chainId: SupportedChainId;\n account?: Address;\n tokenAddress?: string;\n}): DeltaLimitOrderRequiredBalanceQueryKey {\n return [\n \"delta/getRequiredBalance\",\n {\n chainId,\n account: account?.toLowerCase() as Address,\n tokenAddress: tokenAddress?.toLowerCase(),\n },\n ] as const;\n}\n\ntype DeltaOrderRequiredAllowanceInput = {\n tokenAddress?: string;\n amount?: string | bigint;\n enabled: boolean;\n};\n\ntype DeltaOrderRequiredAllowanceResult = {\n combinedAllowance?: bigint;\n isLoading: boolean;\n};\nexport function useDeltaOrderRequiredAllowance({\n tokenAddress,\n amount,\n enabled,\n}: MarkRequired<DeltaOrderRequiredAllowanceInput, \"amount\">): MarkRequired<\n DeltaOrderRequiredAllowanceResult,\n \"combinedAllowance\"\n>;\nexport function useDeltaOrderRequiredAllowance({\n tokenAddress,\n amount,\n enabled,\n}: DeltaOrderRequiredAllowanceInput & {\n amount: undefined;\n}): DeltaOrderRequiredAllowanceResult & { combinedAllowance: undefined };\nexport function useDeltaOrderRequiredAllowance({\n tokenAddress,\n amount,\n enabled,\n}: DeltaOrderRequiredAllowanceInput): DeltaOrderRequiredAllowanceResult;\nexport function useDeltaOrderRequiredAllowance({\n tokenAddress,\n amount,\n enabled,\n}: DeltaOrderRequiredAllowanceInput): DeltaOrderRequiredAllowanceResult {\n const { data: balanceRequiredForCurrentOrders, isLoading } =\n useDeltaLimitOrderRequiredBalance({\n tokenAddress,\n query: {\n enabled: !!tokenAddress && enabled,\n staleTime: LONG_STALE_TIME_FOR_REACTIVENESS,\n select: (data) => {\n if (!tokenAddress) return 0n;\n\n const balanceRequired = data[tokenAddress.toLowerCase()];\n if (!balanceRequired) return 0n;\n return BigInt(balanceRequired);\n },\n },\n });\n\n if (!amount || !enabled || !balanceRequiredForCurrentOrders)\n // don't include current orders allowance if not enabled\n return {\n isLoading,\n combinedAllowance: amount !== undefined ? BigInt(amount) : undefined,\n };\n\n // amount required to cover allowance of current Orders + amount for the new Order\n const combinedAllowance = BigInt(amount) + balanceRequiredForCurrentOrders;\n\n return {\n combinedAllowance,\n isLoading,\n };\n}\n"],"names":["useDeltaLimitOrderRequiredBalance","t0","$","_c","tokenAddress","query","chainId","useChainId","address","account","useAccount","t1","minClient","useMinViemClient","t2","client","sdk","useDeltaSDK","t3","deltaLimitOrderRequiredBalanceQueryKey","t4","t5","signal","assert","getRequiredBalanceForDeltaLimitOrders","userAddress","enabled","isAddress","t6","queryKey","queryFn","useQuery","toLowerCase","useDeltaOrderRequiredAllowance","amount","data","balanceRequiredForCurrentOrders","isLoading","staleTime","LONG_STALE_TIME_FOR_REACTIVENESS","select","balanceRequired","BigInt","combinedAllowance","undefined"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useDeltaLimitOrderRequiredBalance.js","sources":["../../../../../../src/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.ts"],"sourcesContent":["import { useDeltaSDK } from \"@/hooks/useSDK\";\nimport { assert, type MarkRequired } from \"ts-essentials\";\nimport { useAccount, useChainId } from \"wagmi\";\nimport { useMinViemClient } from \"@/hooks/useMinViemClient\";\nimport {\n useQuery,\n type UseQueryOptions,\n type UseQueryResult,\n} from \"@tanstack/react-query\";\n\nimport { isETHaddress } from \"@/tokens/utils/eth\";\nimport { isAddress, type Address } from \"viem\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { LONG_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\n\n// ============================================================================\n// Types for getRequiredBalanceForDeltaLimitOrders\n// ============================================================================\n\ntype DeltaLimitOrderRequiredBalanceReturn = Record<string, string>;\n\ntype DeltaLimitOrderRequiredBalanceQueryParams<\n TData = DeltaLimitOrderRequiredBalanceReturn,\n> = Omit<\n UseQueryOptions<\n DeltaLimitOrderRequiredBalanceReturn,\n Error,\n TData,\n DeltaLimitOrderRequiredBalanceQueryKey\n >,\n \"queryKey\" | \"queryFn\"\n>;\ntype DeltaLimitOrderRequiredBalanceQueryResult<\n TData = DeltaLimitOrderRequiredBalanceReturn,\n> = UseQueryResult<TData, Error>;\n\ntype DeltaLimitOrderRequiredBalanceQueryInput<\n TData = DeltaLimitOrderRequiredBalanceReturn,\n> = {\n tokenAddress?: string;\n query?: DeltaLimitOrderRequiredBalanceQueryParams<TData>;\n};\n\ntype DeltaLimitOrderRequiredBalanceQueryKey = [\n base: \"delta/getRequiredBalance\",\n { chainId: number; account?: Address; tokenAddress?: string },\n];\n\nexport function useDeltaLimitOrderRequiredBalance<\n TData = DeltaLimitOrderRequiredBalanceReturn,\n>({\n tokenAddress,\n query,\n}: DeltaLimitOrderRequiredBalanceQueryInput<TData>): DeltaLimitOrderRequiredBalanceQueryResult<TData> {\n const chainId = useChainId();\n const { address: account } = useAccount();\n const { minClient } = useMinViemClient({ chainId, account });\n\n const { sdk } = useDeltaSDK({\n chainId,\n client: minClient,\n account,\n });\n\n return useQuery<\n DeltaLimitOrderRequiredBalanceReturn,\n Error,\n TData,\n DeltaLimitOrderRequiredBalanceQueryKey\n >({\n queryKey: deltaLimitOrderRequiredBalanceQueryKey({\n chainId,\n account,\n tokenAddress,\n }),\n queryFn: ({ signal }) => {\n assert(sdk, \"SDK not initialized\");\n assert(account, \"account is required\");\n\n return sdk.getRequiredBalanceForDeltaLimitOrders(\n { userAddress: account, tokenAddress },\n { signal }\n );\n },\n ...query,\n enabled:\n !!(chainId && account && sdk) &&\n // either no specific token given\n (!tokenAddress ||\n // or a non-ETH token with a valid address\n (isAddress(tokenAddress) && !isETHaddress(tokenAddress))) &&\n (query?.enabled ?? true),\n });\n}\n\nexport function deltaLimitOrderRequiredBalanceQueryKey({\n chainId,\n account,\n tokenAddress,\n}: {\n chainId: SupportedChainId;\n account?: Address;\n tokenAddress?: string;\n}): DeltaLimitOrderRequiredBalanceQueryKey {\n return [\n \"delta/getRequiredBalance\",\n {\n chainId,\n account: account?.toLowerCase() as Address,\n tokenAddress: tokenAddress?.toLowerCase(),\n },\n ] as const;\n}\n\ntype DeltaOrderRequiredAllowanceInput = {\n tokenAddress?: string;\n amount?: string | bigint;\n enabled: boolean;\n};\n\ntype DeltaOrderRequiredAllowanceResult = {\n combinedAllowance?: bigint;\n isLoading: boolean;\n};\nexport function useDeltaOrderRequiredAllowance({\n tokenAddress,\n amount,\n enabled,\n}: MarkRequired<DeltaOrderRequiredAllowanceInput, \"amount\">): MarkRequired<\n DeltaOrderRequiredAllowanceResult,\n \"combinedAllowance\"\n>;\nexport function useDeltaOrderRequiredAllowance({\n tokenAddress,\n amount,\n enabled,\n}: DeltaOrderRequiredAllowanceInput & {\n amount: undefined;\n}): DeltaOrderRequiredAllowanceResult & { combinedAllowance: undefined };\nexport function useDeltaOrderRequiredAllowance({\n tokenAddress,\n amount,\n enabled,\n}: DeltaOrderRequiredAllowanceInput): DeltaOrderRequiredAllowanceResult;\nexport function useDeltaOrderRequiredAllowance({\n tokenAddress,\n amount,\n enabled,\n}: DeltaOrderRequiredAllowanceInput): DeltaOrderRequiredAllowanceResult {\n const { data: balanceRequiredForCurrentOrders, isLoading } =\n useDeltaLimitOrderRequiredBalance({\n tokenAddress,\n query: {\n enabled: !!tokenAddress && enabled,\n staleTime: LONG_STALE_TIME_FOR_REACTIVENESS,\n select: (data) => {\n if (!tokenAddress) return 0n;\n\n const balanceRequired = data[tokenAddress.toLowerCase()];\n if (!balanceRequired) return 0n;\n return BigInt(balanceRequired);\n },\n },\n });\n\n if (!amount || !enabled || !balanceRequiredForCurrentOrders)\n // don't include current orders allowance if not enabled\n return {\n isLoading,\n combinedAllowance: amount !== undefined ? BigInt(amount) : undefined,\n };\n\n // amount required to cover allowance of current Orders + amount for the new Order\n const combinedAllowance = BigInt(amount) + balanceRequiredForCurrentOrders;\n\n return {\n combinedAllowance,\n isLoading,\n };\n}\n"],"names":["useDeltaLimitOrderRequiredBalance","t0","$","_c","tokenAddress","query","chainId","useChainId","address","account","useAccount","t1","minClient","useMinViemClient","t2","client","sdk","useDeltaSDK","t3","deltaLimitOrderRequiredBalanceQueryKey","t4","t5","signal","assert","getRequiredBalanceForDeltaLimitOrders","userAddress","enabled","isAddress","isETHaddress","t6","queryKey","queryFn","useQuery","toLowerCase","useDeltaOrderRequiredAllowance","amount","data","balanceRequiredForCurrentOrders","isLoading","staleTime","LONG_STALE_TIME_FOR_REACTIVENESS","select","balanceRequired","BigInt","combinedAllowance","undefined"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSwapPrices.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/prices/useSwapPrices.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,kDAAkD,CAAC;AAGjF,OAAO,KAAK,EACV,WAAW,EACX,UAAU,EACV,WAAW,EACX,aAAa,EACd,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"useSwapPrices.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/prices/useSwapPrices.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,kDAAkD,CAAC;AAGjF,OAAO,KAAK,EACV,WAAW,EACX,UAAU,EACV,WAAW,EACX,aAAa,EACd,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AASlD,OAAO,KAAK,EACV,mBAAmB,EACnB,cAAc,EACf,MAAM,uBAAuB,CAAC;AAG/B,KAAK,mBAAmB,GAAG;IACzB,SAAS,EAAE,QAAQ,CAAC;IACpB,qBAAqB,EAAE,QAAQ,CAAC;IAChC,MAAM,EAAE;QACN,KAAK,CAAC,EAAE,WAAW,CAAC;QACpB,IAAI,CAAC,EAAE,aAAa,CAAC;QACrB,qFAAqF;QACrF,SAAS,EAAE,OAAO,CAAC;QACnB,SAAS,EAAE,OAAO,CAAC;QACnB,UAAU,EAAE,OAAO,CAAC;QACpB,YAAY,EAAE,OAAO,CAAC;QACtB,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,EAAE,CACP,OAAO,CAAC,EAAE,cAAc,KACrB,OAAO,CAAC,mBAAmB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;QACtD,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;QACpB,QAAQ,EAAE,mBAAmB,CAAC;KAC/B,CAAC;IACF,KAAK,EAAE;QACL,KAAK,CAAC,EAAE,UAAU,GAAG,WAAW,CAAC;QACjC,IAAI,CAAC,EAAE,aAAa,CAAC;QACrB,qGAAqG;QACrG,SAAS,EAAE,OAAO,CAAC;QACnB,SAAS,EAAE,OAAO,CAAC;QACnB,UAAU,EAAE,OAAO,CAAC;QACpB,YAAY,EAAE,OAAO,CAAC;QACtB,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,EAAE,CACP,OAAO,CAAC,EAAE,cAAc,KACrB,OAAO,CAAC,mBAAmB,CAAC,UAAU,GAAG,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;QACnE,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;QACpB,QAAQ,EAAE,kBAAkB,CAAC;KAC9B,CAAC;CACH,CAAC;AAEF,wBAAgB,aAAa,CAC3B,MAAM,GAAE,kBAAuB,GAC9B,mBAAmB,CA+JrB;AAED,KAAK,yBAAyB,GAAG;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,IAAI,CAAC,EAAE,aAAa,CAAC;CACtB,GAAG,CACA;IACE,SAAS,EAAE,QAAQ,CAAC;IACpB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,QAAQ,EAAE,mBAAmB,CAAC;CAC/B,GACD;IACE,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,GAAG,WAAW,CAAC;IACjC,QAAQ,EAAE,kBAAkB,CAAC;CAC9B,CACJ,CAAC;AAEF,wBAAgB,mBAAmB,CACjC,MAAM,GAAE,kBAAsC,GAC7C,yBAAyB,CAyB3B"}
|