@velora-dex/widget 0.3.3-dev.1 → 0.3.4-dev.1

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.
Files changed (124) hide show
  1. package/dist/components/web3/providers.d.ts +2 -1
  2. package/dist/components/web3/providers.d.ts.map +1 -1
  3. package/dist/components/web3/providers.js +65 -10
  4. package/dist/components/web3/providers.js.map +1 -1
  5. package/dist/components/widget/AppHeader/Activities/Drawers.js.map +1 -1
  6. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.d.ts +3 -3
  7. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.d.ts.map +1 -1
  8. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.js +96 -68
  9. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.js.map +1 -1
  10. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.d.ts.map +1 -1
  11. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.js +94 -66
  12. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.js.map +1 -1
  13. package/dist/components/widget/ReceiverAddress/state/subscriptions.d.ts.map +1 -1
  14. package/dist/components/widget/ReceiverAddress/state/subscriptions.js +8 -0
  15. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  16. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcControls.d.ts +2 -2
  17. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcControls.d.ts.map +1 -1
  18. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcControls.js +115 -46
  19. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcControls.js.map +1 -1
  20. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.d.ts.map +1 -1
  21. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.js +41 -35
  22. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.js.map +1 -1
  23. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts +2 -2
  24. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
  25. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js +31 -25
  26. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
  27. package/dist/components/widget/TradeOverview/TradeError/utils.d.ts.map +1 -1
  28. package/dist/components/widget/TradeOverview/TradeError/utils.js +5 -0
  29. package/dist/components/widget/TradeOverview/TradeError/utils.js.map +1 -1
  30. package/dist/components/widget/TradeOverview/TradeOverview.d.ts.map +1 -1
  31. package/dist/components/widget/TradeOverview/TradeOverview.js +12 -11
  32. package/dist/components/widget/TradeOverview/TradeOverview.js.map +1 -1
  33. package/dist/components/widget/TradeOverview/TradeOverviewFooter.d.ts +3 -2
  34. package/dist/components/widget/TradeOverview/TradeOverviewFooter.d.ts.map +1 -1
  35. package/dist/components/widget/TradeOverview/TradeOverviewFooter.js +50 -42
  36. package/dist/components/widget/TradeOverview/TradeOverviewFooter.js.map +1 -1
  37. package/dist/configurator/Configurator.d.ts.map +1 -1
  38. package/dist/core/Updaters.d.ts.map +1 -1
  39. package/dist/core/Updaters.js +2 -0
  40. package/dist/core/Updaters.js.map +1 -1
  41. package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts.map +1 -1
  42. package/dist/core/button/hooks/useWidgetButtonExtraProps.js +4 -5
  43. package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
  44. package/dist/core/index.d.ts.map +1 -1
  45. package/dist/core/index.js +38 -11
  46. package/dist/core/index.js.map +1 -1
  47. package/dist/core/screen/hooks/useInitialValue.d.ts +2 -0
  48. package/dist/core/screen/hooks/useInitialValue.d.ts.map +1 -0
  49. package/dist/core/screen/hooks/useInitialValue.js +9 -0
  50. package/dist/core/screen/hooks/useInitialValue.js.map +1 -0
  51. package/dist/core/screen/hooks/useOnClickOutside.d.ts.map +1 -1
  52. package/dist/core/screen/hooks/useOnClickOutside.js +9 -4
  53. package/dist/core/screen/hooks/useOnClickOutside.js.map +1 -1
  54. package/dist/events/hooks/useOnWalletConnect.d.ts.map +1 -1
  55. package/dist/events/hooks/useOnWalletConnect.js +4 -0
  56. package/dist/events/hooks/useOnWalletConnect.js.map +1 -1
  57. package/dist/hooks/otc/mutations/useFillOrder.js +3 -2
  58. package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -1
  59. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.d.ts.map +1 -1
  60. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js +19 -2
  61. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js.map +1 -1
  62. package/dist/hooks/otc/tradeFlow/useOtcOrderStep.js.map +1 -1
  63. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.d.ts +28 -0
  64. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.d.ts.map +1 -0
  65. package/dist/hooks/swap/prices/delta/mutations/{useCancelLimitDeltaOrders.js → useCancelDeltaOrders.js} +5 -5
  66. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.js.map +1 -0
  67. package/dist/hooks/swap/prices/delta/orders/types.d.ts +1 -1
  68. package/dist/hooks/swap/prices/delta/orders/types.d.ts.map +1 -1
  69. package/dist/hooks/swap/prices/delta/orders/utils.d.ts +3 -0
  70. package/dist/hooks/swap/prices/delta/orders/utils.d.ts.map +1 -1
  71. package/dist/hooks/swap/prices/delta/orders/utils.js +6 -3
  72. package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
  73. package/dist/hooks/swap/prices/delta/queries/errors.d.ts +10 -0
  74. package/dist/hooks/swap/prices/delta/queries/errors.d.ts.map +1 -0
  75. package/dist/hooks/swap/prices/delta/queries/errors.js +21 -0
  76. package/dist/hooks/swap/prices/delta/queries/errors.js.map +1 -0
  77. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts.map +1 -1
  78. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js +7 -4
  79. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
  80. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +10 -0
  81. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
  82. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +70 -10
  83. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  84. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts +2 -0
  85. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts.map +1 -1
  86. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js +42 -23
  87. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
  88. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
  89. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +22 -5
  90. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
  91. package/dist/hooks/txs/queries/useAwaitTx.d.ts.map +1 -1
  92. package/dist/hooks/txs/queries/useAwaitTx.js +75 -18
  93. package/dist/hooks/txs/queries/useAwaitTx.js.map +1 -1
  94. package/dist/hooks/useChainMatches.d.ts +7 -0
  95. package/dist/hooks/useChainMatches.d.ts.map +1 -0
  96. package/dist/hooks/useChainMatches.js +31 -0
  97. package/dist/hooks/useChainMatches.js.map +1 -0
  98. package/dist/hooks/useMinViemClient.d.ts +16 -0
  99. package/dist/hooks/useMinViemClient.d.ts.map +1 -1
  100. package/dist/hooks/useMinViemClient.js +62 -7
  101. package/dist/hooks/useMinViemClient.js.map +1 -1
  102. package/dist/hooks/useSwitchChainWithGuard.d.ts +12 -0
  103. package/dist/hooks/useSwitchChainWithGuard.d.ts.map +1 -0
  104. package/dist/hooks/useSwitchChainWithGuard.js +70 -0
  105. package/dist/hooks/useSwitchChainWithGuard.js.map +1 -0
  106. package/dist/lib/web3/privy/config.js +1 -1
  107. package/dist/lib/web3/wagmi/config.js +1 -1
  108. package/dist/lib/web3/wagmi/transports.js +1 -1
  109. package/dist/lib/web3/wagmi/transports.js.map +1 -1
  110. package/dist/styles.css +1 -1
  111. package/dist/transactions/queries/ensureTxReceipt.d.ts +2 -1
  112. package/dist/transactions/queries/ensureTxReceipt.d.ts.map +1 -1
  113. package/dist/transactions/queries/ensureTxReceipt.js +22 -26
  114. package/dist/transactions/queries/ensureTxReceipt.js.map +1 -1
  115. package/dist/transactions/state/effects/finalize.d.ts +1 -1
  116. package/dist/transactions/state/effects/finalize.js +2 -2
  117. package/dist/transactions/state/effects/finalize.js.map +1 -1
  118. package/dist/transactions/state/hooks/useActivateEffects.js +2 -2
  119. package/dist/transactions/state/hooks/useActivateEffects.js.map +1 -1
  120. package/dist/transactions/state/transactionsActionAtom.js.map +1 -1
  121. package/package.json +1 -1
  122. package/dist/hooks/swap/prices/delta/mutations/useCancelLimitDeltaOrders.d.ts +0 -28
  123. package/dist/hooks/swap/prices/delta/mutations/useCancelLimitDeltaOrders.d.ts.map +0 -1
  124. package/dist/hooks/swap/prices/delta/mutations/useCancelLimitDeltaOrders.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"useOtcOrderFlow.js","sources":["../../../../src/hooks/otc/tradeFlow/useOtcOrderFlow.ts"],"sourcesContent":["import { useAccount, useChainId } from \"wagmi\";\nimport { assert } from \"ts-essentials\";\nimport { useEnsureTxReceipt } from \"@/hooks/txs/queries/useAwaitTx\";\nimport type { Address, Hash, TransactionReceipt } from \"viem\";\nimport type {\n ApprovalFlowResult,\n SubmitTxResult,\n} from \"../../swap/tradeFlow/common/types\";\nimport { useCreateLimitOrder } from \"../mutations/useCreateLimitOrder\";\nimport {\n useCancelOtcOrderAndWait,\n useCancelOtcOrderEventCallbacks,\n} from \"../mutations/useCancelLimitOrder\";\n\nimport { useMinViemClient } from \"@/hooks/useMinViemClient\";\nimport { useMutation, useQueryClient } 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 handleTxSent,\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 { useOtcDeadline } from \"@/core/otc/state/deadlineAtom\";\nimport { useOtcReceiverAddressValue } from \"@/core/otc/state/receiverAddressAtom\";\nimport {\n limitOrderByHashQueryKey,\n useLimitOrderByHashQuery,\n} from \"../queries/useLimitOrders\";\nimport { useWidgetEvents } from \"@/core/state/widgetEventsAtom\";\nimport {\n shouldApproveOrBatchWrapAndApprove,\n useBatchWrapAndApprove,\n} from \"@/hooks/swap/tradeFlow/common/useBatchWrapAndApprove\";\nimport type { BatchTxStepResult } from \"@/hooks/swap/tradeFlow/common/types\";\n\nconst otcOrderFlowType = \"otcOrder\";\n\nexport type UserDefinedOtcPrice = {\n srcTokenAddress: string;\n destTokenAddress: string;\n srcAmount: string;\n destAmount: string;\n};\n\nexport type UseOtcOrderFlowInput = {\n otcPrice?: UserDefinedOtcPrice;\n preWrapETH?: boolean;\n};\n\nexport type SubmitOtcOrderResult = {\n tradeFlowType: typeof otcOrderFlowType;\n approve: SubmitTxResult;\n wrapAndApproveBatch: SubmitTxResult;\n otcOrder: {\n sentOrder: LimitOrderFromApi;\n };\n otcPrice: UserDefinedOtcPrice;\n account: Address;\n receiverAddress?: Address;\n};\n\ntype OnTxSent = (txSent: TxSentObject | CallsSentObject) => void;\n\ntype RunOtcOrderOptions = {\n onTxSent?: OnTxSent;\n};\n\nexport type UseOtcOrderFlowResult = {\n tradeFlowType: typeof otcOrderFlowType;\n chainId: SupportedChainId;\n runOtcOrderFlow: (\n options?: RunOtcOrderOptions\n ) => Promise<SubmitOtcOrderResult>;\n reset: () => void; // reset on Error to retry\n cancelFlow: () => void; // cancel flow\n retryFlow: (options?: RunOtcOrderOptions) => Promise<SubmitOtcOrderResult>; // reset and retry flow\n cancelOtcOrder: () => void;\n approval: ApprovalFlowResult;\n wrapAndApprovalBatch: BatchTxStepResult;\n otcOrderSubmission: {\n order?: LimitOrderFromApi;\n isCreatingOrder: boolean;\n isOrderSent: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n otcOrderCancelation: {\n isCancelingOrder: boolean;\n isOrderCanceled: boolean;\n lastOrderState?: LimitOrderFromApi;\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?: SubmitOtcOrderResult;\n otcPrice?: UserDefinedOtcPrice;\n};\n\nconst OTC_ORDER_MUTATION_KEY = \"runOtcOrderFlow\";\n\nexport function useOtcOrderFlow({\n otcPrice,\n preWrapETH,\n}: UseOtcOrderFlowInput): UseOtcOrderFlowResult {\n const logger = useLogger(\"OtcOrderFlow\");\n const chainId = useChainId();\n\n /* Inside useApproveOrPermit:\n 1. Get allowance for tokenFrom \n 2.1. submit Approve tx if necessary \n 3. await Approve tx\n */\n\n const {\n approval,\n approveTxMut,\n events: approveOrPermitEvents,\n } = useApproveOrPermit({\n srcToken: otcPrice?.srcTokenAddress,\n srcAmount: otcPrice?.srcAmount,\n spenderContractType: \"AugustusRFQ\",\n swapSide: \"SELL\",\n tradeMode: \"otc\",\n });\n\n const { address: account } = useAccount();\n\n const { minClient } = useMinViemClient({\n chainId,\n account,\n });\n\n /* 2.2. Or submit Batch tx (Wrap ETH + Approve WETH) */\n const {\n batchWrapAndApprove,\n reset: resetBatchWrapAndApprove,\n canBatchTxs,\n wrapAndApproveBatchResult: wrapAndApprovalBatch,\n } = useBatchWrapAndApprove({\n chainId,\n account,\n logger,\n tradeMode: \"otc\",\n });\n\n /* 4. Build and Submit OTC Order */\n const createOrderMut = useCreateLimitOrder({\n chainId,\n account,\n client: minClient,\n mutationOptions: {\n onSuccess: (order) => {\n logger.log(\"Create OTC Order success\", order);\n },\n onError: (error) => {\n logger.error(\"Create OTC Order error\", error);\n },\n },\n });\n\n const otcOrderSubmission: UseOtcOrderFlowResult[\"otcOrderSubmission\"] = {\n order: createOrderMut.data,\n isCreatingOrder: createOrderMut.isPending,\n isOrderSent: createOrderMut.isSuccess,\n isPending: createOrderMut.isPending,\n isError: createOrderMut.isError,\n isSuccess: createOrderMut.isSuccess,\n error: createOrderMut.error,\n };\n\n /// CANCELATION\n\n const limitOrderQuery = useLimitOrderByHashQuery({\n orderParams: createOrderMut.data?.orderHash,\n });\n\n const cancelOrderEvents = useCancelOtcOrderEventCallbacks(\n createOrderMut.data\n );\n const queryClient = useQueryClient();\n\n const cancelOrderMut = useCancelOtcOrderAndWait({\n chainId,\n account,\n client: minClient,\n mutationOptions: {\n onMutate: cancelOrderEvents.onMutate,\n onSuccess: (txReceipt, vars) => {\n logger.log(\"Cancel Order success\", txReceipt);\n if (createOrderMut.data?.orderHash) {\n queryClient.refetchQueries({\n queryKey: limitOrderByHashQueryKey(createOrderMut.data.orderHash),\n });\n }\n\n cancelOrderEvents.onSuccess?.(txReceipt, vars);\n },\n onError: (error, vars) => {\n logger.error(\"Cancel Order error\", error);\n cancelOrderEvents.onError?.(error, vars);\n },\n },\n });\n\n const isCancelTxSucceeded = cancelOrderMut.data?.status === \"success\";\n const isCancelTxReverted = cancelOrderMut.data?.status === \"reverted\";\n\n const lastOrderState =\n limitOrderQuery.data && isCancelTxSucceeded && cancelOrderMut.data\n ? {\n // optimistically update order state to CANCELLED\n // because API won't return the updated order state immediately\n // as it depends on the subgraph indexing\n ...limitOrderQuery.data,\n state: \"CANCELLED\" as const,\n transactionHash: cancelOrderMut.data.transactionHash,\n }\n : limitOrderQuery.data;\n\n const otcOrderCancelation: UseOtcOrderFlowResult[\"otcOrderCancelation\"] = {\n isCancelingOrder: cancelOrderMut.isPending,\n isOrderCanceled: isCancelTxSucceeded,\n lastOrderState,\n isPending: cancelOrderMut.isPending,\n isError: cancelOrderMut.isError || isCancelTxReverted,\n isSuccess: cancelOrderMut.isSuccess && isCancelTxSucceeded,\n error: cancelOrderMut.error,\n };\n\n const ensureTxReceipt = useEnsureTxReceipt();\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 receiverAddress = useOtcReceiverAddressValue();\n const deadline = useOtcDeadline();\n\n const { onOTCOrder } = useWidgetEvents();\n\n const submitOtcOrder = async ({\n onTxSent,\n }: RunOtcOrderOptions = {}): Promise<SubmitOtcOrderResult> => {\n // reset all mutations except the current one,\n // otherwise we'll have previous data (txs) as mutation results\n approveTxMut.reset();\n createOrderMut.reset();\n cancelOrderMut.reset();\n resetBatchWrapAndApprove();\n\n // no sense in starting flow without a price data,\n // Otherwise this flow will be stopped by disabling ReviewOrder button in the first place\n assert(otcPrice, \"Otc price data is not available\");\n\n const abortController = new AbortController();\n currentAbortControllerRef.current = abortController;\n\n const signal = abortController.signal;\n\n let approveTxHash: Hash | undefined;\n let approveTxReceipt: TransactionReceipt | undefined;\n\n let wrapAndApproveBatch: SubmitTxResult = {};\n\n const allowanceToSet = approval.allowanceToSet;\n\n const { shouldDoApprovalTx, shouldWrapAndApproveBatch } =\n shouldApproveOrBatchWrapAndApprove({\n approval,\n preWrapETH,\n canBatchTxs,\n });\n\n try {\n if (shouldWrapAndApproveBatch) {\n const sendCallsResult = await batchWrapAndApprove({\n approval,\n preWrapETH: {\n wrapAmount: BigInt(otcPrice.srcAmount),\n },\n onTxSent,\n signal,\n });\n\n const lastCallsReceipt =\n sendCallsResult?.receipts?.[sendCallsResult.receipts.length - 1];\n wrapAndApproveBatch = {\n callsId: sendCallsResult?.id,\n callsReceipt: lastCallsReceipt,\n };\n\n logger.log(\"~ wrap and approve batch tx ~ receipt:\", lastCallsReceipt);\n } else if (shouldDoApprovalTx && allowanceToSet) {\n try {\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 } catch (error) {\n logger.error(\"Approve tx error\", error);\n approveOrPermitEvents.onApproveTx.failed({\n allowanceToSet,\n error: error as Error,\n txHash: approveTxHash, // won't necessarily be available\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 assert(otcPrice, \"otcPrice is not available\");\n assert(receiverAddress, \"Receiver address is not set\");\n\n onOTCOrder?.({\n event: {\n name: \"OTCOrder:request\",\n params: {\n price: otcPrice,\n },\n },\n });\n\n const orderFromAPI = await createOrderMut.mutateAsync({\n signal,\n orderInput: {\n expiry: deadline,\n makerAsset: otcPrice.srcTokenAddress,\n takerAsset: otcPrice.destTokenAddress,\n makerAmount: otcPrice.srcAmount,\n takerAmount: otcPrice.destAmount,\n maker: account,\n taker: receiverAddress,\n },\n });\n\n onOTCOrder?.({\n event: {\n name: \"OTCOrder:sent\",\n params: {\n price: otcPrice,\n order: orderFromAPI,\n },\n },\n });\n\n return {\n tradeFlowType: otcOrderFlowType,\n approve: {\n txHash: approveTxHash,\n receipt: approveTxReceipt,\n },\n wrapAndApproveBatch,\n otcOrder: {\n sentOrder: orderFromAPI,\n },\n otcPrice: otcPrice,\n account,\n receiverAddress,\n };\n } catch (error) {\n logger.error(\"Order submission error\", error);\n onOTCOrder?.({\n event: {\n name: \"OTCOrder:failed\",\n params: {\n price: otcPrice,\n error: error as Error,\n },\n },\n });\n throw error;\n }\n };\n\n const otcOrderMut = useMutation({\n mutationFn: submitOtcOrder,\n mutationKey: [OTC_ORDER_MUTATION_KEY],\n onSuccess: (data) => {\n logger.log(\"Order submission success\", data);\n },\n onError: (error) => {\n logger.error(\"Order submission error\", error);\n },\n onSettled: () => {\n logger.log(\"Order submission settled\");\n },\n });\n\n const runOtcOrderFlow = otcOrderMut.mutateAsync;\n const cancelOtcOrder = () => {\n assert(createOrderMut.data, \"No order to cancel\");\n return cancelOrderMut.mutateAsync({\n orderHash: createOrderMut.data.orderHash,\n onTxSent: ({ chainId, transactionHash, receiptPromise }) =>\n handleTxSent({\n chainId,\n transactionHash,\n action: \"cancelOtcOrder\",\n transactionSpecificData: {\n action: \"cancelOtcOrder\",\n cancelledOrder: createOrderMut.data,\n },\n receiptPromise,\n }),\n });\n };\n\n const reset = () => {\n approveTxMut.reset();\n createOrderMut.reset();\n otcOrderMut.reset();\n cancelOrderMut.reset();\n resetBatchWrapAndApprove();\n };\n\n const retryFlow = (\n options?: RunOtcOrderOptions\n ): Promise<SubmitOtcOrderResult> => {\n reset();\n return runOtcOrderFlow(options);\n };\n\n /* 5. return result */\n return {\n tradeFlowType: otcOrderFlowType,\n chainId,\n runOtcOrderFlow,\n reset,\n cancelFlow,\n retryFlow,\n cancelOtcOrder,\n approval,\n wrapAndApprovalBatch,\n otcOrderSubmission,\n otcOrderCancelation,\n // otcOrderMut includes all steps' queries and mutations and returns more precise errors (including cancellation)\n isPending: otcOrderMut.isPending,\n isSuccess: otcOrderSubmission.isSuccess, // approval is an optional step\n isError: otcOrderMut.isError,\n error: otcOrderMut.error,\n result: otcOrderMut.data,\n otcPrice,\n };\n}\n"],"names":["otcOrderFlowType","OTC_ORDER_MUTATION_KEY","useOtcOrderFlow","otcPrice","preWrapETH","logger","useLogger","chainId","useChainId","approval","approveTxMut","events","approveOrPermitEvents","useApproveOrPermit","srcToken","srcTokenAddress","srcAmount","spenderContractType","swapSide","tradeMode","address","account","useAccount","minClient","useMinViemClient","batchWrapAndApprove","reset","resetBatchWrapAndApprove","canBatchTxs","wrapAndApproveBatchResult","wrapAndApprovalBatch","useBatchWrapAndApprove","createOrderMut","useCreateLimitOrder","client","mutationOptions","onSuccess","order","log","onError","error","otcOrderSubmission","data","isCreatingOrder","isPending","isOrderSent","isSuccess","isError","limitOrderQuery","useLimitOrderByHashQuery","orderParams","orderHash","cancelOrderEvents","useCancelOtcOrderEventCallbacks","queryClient","useQueryClient","cancelOrderMut","useCancelOtcOrderAndWait","onMutate","txReceipt","vars","refetchQueries","queryKey","limitOrderByHashQueryKey","isCancelTxSucceeded","status","isCancelTxReverted","lastOrderState","state","transactionHash","otcOrderCancelation","isCancelingOrder","isOrderCanceled","ensureTxReceipt","useEnsureTxReceipt","currentAbortControllerRef","useRef","cancelFlow","current","abort","UserCancelledError","receiverAddress","useOtcReceiverAddressValue","deadline","useOtcDeadline","onOTCOrder","useWidgetEvents","submitOtcOrder","onTxSent","assert","abortController","AbortController","signal","approveTxHash","approveTxReceipt","wrapAndApproveBatch","allowanceToSet","shouldDoApprovalTx","shouldWrapAndApproveBatch","shouldApproveOrBatchWrapAndApprove","sendCallsResult","wrapAmount","BigInt","lastCallsReceipt","receipts","length","callsId","id","callsReceipt","onApproveTx","request","approveAsync","allowanceData","sent","txHash","throwIfAborted","approveTxReceiptPromise","hash","onReplaced","action","receiptPromise","transactionSpecificData","approvedAmount","tokenAddress","token","spenderAddress","spender","confirmed","failed","event","name","params","price","orderFromAPI","mutateAsync","orderInput","expiry","makerAsset","takerAsset","destTokenAddress","makerAmount","takerAmount","destAmount","maker","taker","tradeFlowType","approve","receipt","otcOrder","sentOrder","otcOrderMut","useMutation","mutationFn","mutationKey","onSettled","runOtcOrderFlow","cancelOtcOrder","handleTxSent","cancelledOrder","retryFlow","options","result"],"mappings":"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"}
1
+ {"version":3,"file":"useOtcOrderFlow.js","sources":["../../../../src/hooks/otc/tradeFlow/useOtcOrderFlow.ts"],"sourcesContent":["import { useAccount, useChainId } from \"wagmi\";\nimport { assert } from \"ts-essentials\";\nimport { useEnsureTxReceipt } from \"@/hooks/txs/queries/useAwaitTx\";\nimport type { Address, Hash, TransactionReceipt } from \"viem\";\nimport type {\n ApprovalFlowResult,\n SubmitTxResult,\n} from \"../../swap/tradeFlow/common/types\";\nimport { useCreateLimitOrder } from \"../mutations/useCreateLimitOrder\";\nimport {\n useCancelOtcOrderAndWait,\n useCancelOtcOrderEventCallbacks,\n} from \"../mutations/useCancelLimitOrder\";\n\nimport { useMinViemClient } from \"@/hooks/useMinViemClient\";\nimport { useMutation, useQueryClient } 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 handleTxSent,\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 { useOtcDeadline } from \"@/core/otc/state/deadlineAtom\";\nimport { useOtcReceiverAddressValue } from \"@/core/otc/state/receiverAddressAtom\";\nimport {\n limitOrderByHashQueryKey,\n useLimitOrderByHashQuery,\n} from \"../queries/useLimitOrders\";\nimport { useWidgetEvents } from \"@/core/state/widgetEventsAtom\";\nimport {\n shouldApproveOrBatchWrapAndApprove,\n useBatchWrapAndApprove,\n} from \"@/hooks/swap/tradeFlow/common/useBatchWrapAndApprove\";\nimport type { BatchTxStepResult } from \"@/hooks/swap/tradeFlow/common/types\";\nimport { useChainMatches } from \"@/hooks/useChainMatches\";\nimport { useSwitchChainWithGuard } from \"@/hooks/useSwitchChainWithGuard\";\n\nconst otcOrderFlowType = \"otcOrder\";\n\nexport type UserDefinedOtcPrice = {\n srcTokenAddress: string;\n destTokenAddress: string;\n srcAmount: string;\n destAmount: string;\n};\n\nexport type UseOtcOrderFlowInput = {\n otcPrice?: UserDefinedOtcPrice;\n preWrapETH?: boolean;\n};\n\nexport type SubmitOtcOrderResult = {\n tradeFlowType: typeof otcOrderFlowType;\n approve: SubmitTxResult;\n wrapAndApproveBatch: SubmitTxResult;\n otcOrder: {\n sentOrder: LimitOrderFromApi;\n };\n otcPrice: UserDefinedOtcPrice;\n account: Address;\n receiverAddress?: Address;\n};\n\ntype OnTxSent = (txSent: TxSentObject | CallsSentObject) => void;\n\ntype RunOtcOrderOptions = {\n onTxSent?: OnTxSent;\n};\n\nexport type UseOtcOrderFlowResult = {\n tradeFlowType: typeof otcOrderFlowType;\n chainId: SupportedChainId;\n runOtcOrderFlow: (\n options?: RunOtcOrderOptions\n ) => Promise<SubmitOtcOrderResult>;\n reset: () => void; // reset on Error to retry\n cancelFlow: () => void; // cancel flow\n retryFlow: (options?: RunOtcOrderOptions) => Promise<SubmitOtcOrderResult>; // reset and retry flow\n cancelOtcOrder: () => void;\n approval: ApprovalFlowResult;\n wrapAndApprovalBatch: BatchTxStepResult;\n otcOrderSubmission: {\n order?: LimitOrderFromApi;\n isCreatingOrder: boolean;\n isOrderSent: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n otcOrderCancelation: {\n isCancelingOrder: boolean;\n isOrderCanceled: boolean;\n lastOrderState?: LimitOrderFromApi;\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?: SubmitOtcOrderResult;\n otcPrice?: UserDefinedOtcPrice;\n};\n\nconst OTC_ORDER_MUTATION_KEY = \"runOtcOrderFlow\";\n\nexport function useOtcOrderFlow({\n otcPrice,\n preWrapETH,\n}: UseOtcOrderFlowInput): UseOtcOrderFlowResult {\n const logger = useLogger(\"OtcOrderFlow\");\n const chainId = useChainId();\n\n /* Inside useApproveOrPermit:\n 1. Get allowance for tokenFrom \n 2.1. submit Approve tx if necessary \n 3. await Approve tx\n */\n\n const {\n approval,\n approveTxMut,\n events: approveOrPermitEvents,\n } = useApproveOrPermit({\n srcToken: otcPrice?.srcTokenAddress,\n srcAmount: otcPrice?.srcAmount,\n spenderContractType: \"AugustusRFQ\",\n swapSide: \"SELL\",\n tradeMode: \"otc\",\n });\n\n const { address: account } = useAccount();\n\n const { minClient } = useMinViemClient({\n chainId,\n account,\n });\n\n /* 2.2. Or submit Batch tx (Wrap ETH + Approve WETH) */\n const {\n batchWrapAndApprove,\n reset: resetBatchWrapAndApprove,\n canBatchTxs,\n wrapAndApproveBatchResult: wrapAndApprovalBatch,\n } = useBatchWrapAndApprove({\n chainId,\n account,\n logger,\n tradeMode: \"otc\",\n });\n\n /* 4. Build and Submit OTC Order */\n const createOrderMut = useCreateLimitOrder({\n chainId,\n account,\n client: minClient,\n mutationOptions: {\n onSuccess: (order) => {\n logger.log(\"Create OTC Order success\", order);\n },\n onError: (error) => {\n logger.error(\"Create OTC Order error\", error);\n },\n },\n });\n\n const otcOrderSubmission: UseOtcOrderFlowResult[\"otcOrderSubmission\"] = {\n order: createOrderMut.data,\n isCreatingOrder: createOrderMut.isPending,\n isOrderSent: createOrderMut.isSuccess,\n isPending: createOrderMut.isPending,\n isError: createOrderMut.isError,\n isSuccess: createOrderMut.isSuccess,\n error: createOrderMut.error,\n };\n\n /// CANCELATION\n\n const limitOrderQuery = useLimitOrderByHashQuery({\n orderParams: createOrderMut.data?.orderHash,\n });\n\n const cancelOrderEvents = useCancelOtcOrderEventCallbacks(\n createOrderMut.data\n );\n const queryClient = useQueryClient();\n\n const orderChainId = createOrderMut.data?.chainId as\n | SupportedChainId\n | undefined;\n const { forcedChainMatchesWalletChain } = useChainMatches(orderChainId);\n const { mutateAsync: switchChain } = useSwitchChainWithGuard();\n\n const cancelOrderMut = useCancelOtcOrderAndWait({\n chainId,\n account,\n client: minClient,\n mutationOptions: {\n onMutate: async (variables) => {\n assert(orderChainId, \"orderChainId is undefined\");\n if (!forcedChainMatchesWalletChain) {\n await switchChain({\n chainId: orderChainId,\n });\n }\n cancelOrderEvents.onMutate?.(variables);\n },\n onSuccess: (txReceipt, vars) => {\n logger.log(\"Cancel Order success\", txReceipt);\n if (createOrderMut.data?.orderHash) {\n queryClient.refetchQueries({\n queryKey: limitOrderByHashQueryKey(createOrderMut.data.orderHash),\n });\n }\n\n cancelOrderEvents.onSuccess?.(txReceipt, vars);\n },\n onError: (error, vars) => {\n logger.error(\"Cancel Order error\", error);\n cancelOrderEvents.onError?.(error, vars);\n },\n },\n });\n\n const isCancelTxSucceeded = cancelOrderMut.data?.status === \"success\";\n const isCancelTxReverted = cancelOrderMut.data?.status === \"reverted\";\n\n const lastOrderState =\n limitOrderQuery.data && isCancelTxSucceeded && cancelOrderMut.data\n ? {\n // optimistically update order state to CANCELLED\n // because API won't return the updated order state immediately\n // as it depends on the subgraph indexing\n ...limitOrderQuery.data,\n state: \"CANCELLED\" as const,\n transactionHash: cancelOrderMut.data.transactionHash,\n }\n : limitOrderQuery.data;\n\n const otcOrderCancelation: UseOtcOrderFlowResult[\"otcOrderCancelation\"] = {\n isCancelingOrder: cancelOrderMut.isPending,\n isOrderCanceled: isCancelTxSucceeded,\n lastOrderState,\n isPending: cancelOrderMut.isPending,\n isError: cancelOrderMut.isError || isCancelTxReverted,\n isSuccess: cancelOrderMut.isSuccess && isCancelTxSucceeded,\n error: cancelOrderMut.error,\n };\n\n const ensureTxReceipt = useEnsureTxReceipt();\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 receiverAddress = useOtcReceiverAddressValue();\n const deadline = useOtcDeadline();\n\n const { onOTCOrder } = useWidgetEvents();\n\n const submitOtcOrder = async ({\n onTxSent,\n }: RunOtcOrderOptions = {}): Promise<SubmitOtcOrderResult> => {\n // reset all mutations except the current one,\n // otherwise we'll have previous data (txs) as mutation results\n approveTxMut.reset();\n createOrderMut.reset();\n cancelOrderMut.reset();\n resetBatchWrapAndApprove();\n\n // no sense in starting flow without a price data,\n // Otherwise this flow will be stopped by disabling ReviewOrder button in the first place\n assert(otcPrice, \"Otc price data is not available\");\n\n const abortController = new AbortController();\n currentAbortControllerRef.current = abortController;\n\n const signal = abortController.signal;\n\n let approveTxHash: Hash | undefined;\n let approveTxReceipt: TransactionReceipt | undefined;\n\n let wrapAndApproveBatch: SubmitTxResult = {};\n\n const allowanceToSet = approval.allowanceToSet;\n\n const { shouldDoApprovalTx, shouldWrapAndApproveBatch } =\n shouldApproveOrBatchWrapAndApprove({\n approval,\n preWrapETH,\n canBatchTxs,\n });\n\n try {\n if (shouldWrapAndApproveBatch) {\n const sendCallsResult = await batchWrapAndApprove({\n approval,\n preWrapETH: {\n wrapAmount: BigInt(otcPrice.srcAmount),\n },\n onTxSent,\n signal,\n });\n\n const lastCallsReceipt =\n sendCallsResult?.receipts?.[sendCallsResult.receipts.length - 1];\n wrapAndApproveBatch = {\n callsId: sendCallsResult?.id,\n callsReceipt: lastCallsReceipt,\n };\n\n logger.log(\"~ wrap and approve batch tx ~ receipt:\", lastCallsReceipt);\n } else if (shouldDoApprovalTx && allowanceToSet) {\n try {\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 } catch (error) {\n logger.error(\"Approve tx error\", error);\n approveOrPermitEvents.onApproveTx.failed({\n allowanceToSet,\n error: error as Error,\n txHash: approveTxHash, // won't necessarily be available\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 assert(otcPrice, \"otcPrice is not available\");\n assert(receiverAddress, \"Receiver address is not set\");\n\n onOTCOrder?.({\n event: {\n name: \"OTCOrder:request\",\n params: {\n price: otcPrice,\n },\n },\n });\n\n const orderFromAPI = await createOrderMut.mutateAsync({\n signal,\n orderInput: {\n expiry: deadline,\n makerAsset: otcPrice.srcTokenAddress,\n takerAsset: otcPrice.destTokenAddress,\n makerAmount: otcPrice.srcAmount,\n takerAmount: otcPrice.destAmount,\n maker: account,\n taker: receiverAddress,\n },\n });\n\n onOTCOrder?.({\n event: {\n name: \"OTCOrder:sent\",\n params: {\n price: otcPrice,\n order: orderFromAPI,\n },\n },\n });\n\n return {\n tradeFlowType: otcOrderFlowType,\n approve: {\n txHash: approveTxHash,\n receipt: approveTxReceipt,\n },\n wrapAndApproveBatch,\n otcOrder: {\n sentOrder: orderFromAPI,\n },\n otcPrice: otcPrice,\n account,\n receiverAddress,\n };\n } catch (error) {\n logger.error(\"Order submission error\", error);\n onOTCOrder?.({\n event: {\n name: \"OTCOrder:failed\",\n params: {\n price: otcPrice,\n error: error as Error,\n },\n },\n });\n throw error;\n }\n };\n\n const otcOrderMut = useMutation({\n mutationFn: submitOtcOrder,\n mutationKey: [OTC_ORDER_MUTATION_KEY],\n onSuccess: (data) => {\n logger.log(\"Order submission success\", data);\n },\n onError: (error) => {\n logger.error(\"Order submission error\", error);\n },\n onSettled: () => {\n logger.log(\"Order submission settled\");\n },\n });\n\n const runOtcOrderFlow = otcOrderMut.mutateAsync;\n const cancelOtcOrder = async () => {\n assert(createOrderMut.data, \"No order to cancel\");\n return cancelOrderMut.mutateAsync({\n orderHash: createOrderMut.data.orderHash,\n onTxSent: ({ chainId, transactionHash, receiptPromise }) =>\n handleTxSent({\n chainId,\n transactionHash,\n action: \"cancelOtcOrder\",\n transactionSpecificData: {\n action: \"cancelOtcOrder\",\n cancelledOrder: createOrderMut.data,\n },\n receiptPromise,\n }),\n });\n };\n\n const reset = () => {\n approveTxMut.reset();\n createOrderMut.reset();\n otcOrderMut.reset();\n cancelOrderMut.reset();\n resetBatchWrapAndApprove();\n };\n\n const retryFlow = (\n options?: RunOtcOrderOptions\n ): Promise<SubmitOtcOrderResult> => {\n reset();\n return runOtcOrderFlow(options);\n };\n\n /* 5. return result */\n return {\n tradeFlowType: otcOrderFlowType,\n chainId,\n runOtcOrderFlow,\n reset,\n cancelFlow,\n retryFlow,\n cancelOtcOrder,\n approval,\n wrapAndApprovalBatch,\n otcOrderSubmission,\n otcOrderCancelation,\n // otcOrderMut includes all steps' queries and mutations and returns more precise errors (including cancellation)\n isPending: otcOrderMut.isPending,\n isSuccess: otcOrderSubmission.isSuccess, // approval is an optional step\n isError: otcOrderMut.isError,\n error: otcOrderMut.error,\n result: otcOrderMut.data,\n otcPrice,\n };\n}\n"],"names":["otcOrderFlowType","OTC_ORDER_MUTATION_KEY","useOtcOrderFlow","otcPrice","preWrapETH","logger","useLogger","chainId","useChainId","approval","approveTxMut","events","approveOrPermitEvents","useApproveOrPermit","srcToken","srcTokenAddress","srcAmount","spenderContractType","swapSide","tradeMode","address","account","useAccount","minClient","useMinViemClient","batchWrapAndApprove","reset","resetBatchWrapAndApprove","canBatchTxs","wrapAndApproveBatchResult","wrapAndApprovalBatch","useBatchWrapAndApprove","createOrderMut","useCreateLimitOrder","client","mutationOptions","onSuccess","order","log","onError","error","otcOrderSubmission","data","isCreatingOrder","isPending","isOrderSent","isSuccess","isError","limitOrderQuery","useLimitOrderByHashQuery","orderParams","orderHash","cancelOrderEvents","useCancelOtcOrderEventCallbacks","queryClient","useQueryClient","orderChainId","forcedChainMatchesWalletChain","useChainMatches","mutateAsync","switchChain","useSwitchChainWithGuard","cancelOrderMut","useCancelOtcOrderAndWait","onMutate","variables","assert","txReceipt","vars","refetchQueries","queryKey","limitOrderByHashQueryKey","isCancelTxSucceeded","status","isCancelTxReverted","lastOrderState","state","transactionHash","otcOrderCancelation","isCancelingOrder","isOrderCanceled","ensureTxReceipt","useEnsureTxReceipt","currentAbortControllerRef","useRef","cancelFlow","current","abort","UserCancelledError","receiverAddress","useOtcReceiverAddressValue","deadline","useOtcDeadline","onOTCOrder","useWidgetEvents","submitOtcOrder","onTxSent","abortController","AbortController","signal","approveTxHash","approveTxReceipt","wrapAndApproveBatch","allowanceToSet","shouldDoApprovalTx","shouldWrapAndApproveBatch","shouldApproveOrBatchWrapAndApprove","sendCallsResult","wrapAmount","BigInt","lastCallsReceipt","receipts","length","callsId","id","callsReceipt","onApproveTx","request","approveAsync","allowanceData","sent","txHash","throwIfAborted","approveTxReceiptPromise","hash","onReplaced","action","receiptPromise","transactionSpecificData","approvedAmount","tokenAddress","token","spenderAddress","spender","confirmed","failed","event","name","params","price","orderFromAPI","orderInput","expiry","makerAsset","takerAsset","destTokenAddress","makerAmount","takerAmount","destAmount","maker","taker","tradeFlowType","approve","receipt","otcOrder","sentOrder","otcOrderMut","useMutation","mutationFn","mutationKey","onSettled","runOtcOrderFlow","cancelOtcOrder","handleTxSent","cancelledOrder","retryFlow","options","result"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useOtcOrderStep.js","sources":["../../../../src/hooks/otc/tradeFlow/useOtcOrderStep.ts"],"sourcesContent":["import type {\n GenericStep,\n OtcOrderStep,\n OtcOrderStepKey,\n} from \"@/components/widget/TradeOverview/steps\";\nimport {\n useOtcOrderFlow,\n type SubmitOtcOrderResult,\n type UseOtcOrderFlowInput,\n type UseOtcOrderFlowResult,\n} from \"./useOtcOrderFlow\";\nimport { useLogger } from \"@/core/logger\";\nimport { isUserCancelledError } from \"../../swap/tradeFlow/common/errors\";\nimport { LimitOrderStateChecker } from \"../queries/utils\";\n\ntype UseOtcOrderStepResult = {\n startOtcOrder: UseOtcOrderFlowResult[\"runOtcOrderFlow\"];\n cancelOtcOrder: UseOtcOrderFlowResult[\"cancelOtcOrder\"];\n // @TODO check if resetting is necessary on error, maybe not if submit on click works as a reset\n reset: UseOtcOrderFlowResult[\"reset\"];\n cancelFlow: UseOtcOrderFlowResult[\"cancelFlow\"];\n retryFlow: UseOtcOrderFlowResult[\"retryFlow\"];\n isFlowCancellable: boolean;\n isOrderCancellable: boolean;\n step?: OtcOrderStep;\n orderCancellationStep?: GenericStep;\n error: Error | null;\n erroredStep?: OtcOrderStepKey;\n result?: SubmitOtcOrderResult;\n tradeFlowType: UseOtcOrderFlowResult[\"tradeFlowType\"];\n};\n\nexport function useOtcOrderStep(\n options: UseOtcOrderFlowInput\n): UseOtcOrderStepResult {\n const logger = useLogger(\"OtcOrderStep\");\n const otcOrderFlow = useOtcOrderFlow(options);\n\n const startOtcOrder = otcOrderFlow.runOtcOrderFlow;\n const reset = otcOrderFlow.reset;\n const cancelFlow = otcOrderFlow.cancelFlow;\n const retryFlow = otcOrderFlow.retryFlow;\n\n let step: OtcOrderStep | undefined;\n\n const wrapAndApproveBatchHappeningOrNeverHappened =\n options.preWrapETH &&\n otcOrderFlow.approval.needsApproval &&\n (otcOrderFlow.wrapAndApprovalBatch.isPending ||\n !otcOrderFlow.wrapAndApprovalBatch.isSuccess);\n\n const approvalHappeningOrNeverHappened =\n // isPending starts as false,\n // needsApproval && !isSuccess allows to detect approve step right away even then\n otcOrderFlow.approval.isPending || !otcOrderFlow.approval.isSuccess;\n\n if (\n otcOrderFlow.approval.needsApproval &&\n (approvalHappeningOrNeverHappened ||\n wrapAndApproveBatchHappeningOrNeverHappened)\n ) {\n step = { key: \"signature\", subStep: \"approval-signature\" };\n } else if (otcOrderFlow.otcOrderSubmission.isPending) {\n const permitOrApprovalHappened = !!otcOrderFlow.approval.txHash;\n\n step = {\n key: \"signature\",\n subStep: permitOrApprovalHappened\n ? \"order-signature\"\n : \"standalone-order-signature\",\n };\n } else if (otcOrderFlow.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 let orderCancellationStep: GenericStep | undefined;\n if (otcOrderFlow.otcOrderCancelation.isCancelingOrder) {\n orderCancellationStep = \"pending\";\n } else if (otcOrderFlow.otcOrderCancelation.isOrderCanceled) {\n orderCancellationStep = \"success\";\n } else if (otcOrderFlow.otcOrderCancelation.isError) {\n orderCancellationStep = \"error\";\n }\n\n const approvalIsStarted =\n step?.key === \"signature\" &&\n step.subStep === \"approval-signature\" &&\n otcOrderFlow.approval.isTxPending;\n\n const isOrderBeingSigned =\n step?.key === \"signature\" &&\n (step.subStep === \"order-signature\" ||\n step.subStep === \"standalone-order-signature\");\n\n const isFlowCancellable =\n // final Order is not yet submitted, there's something to cancel;\n // but some steps are already started so we can't simply dismiss\n approvalIsStarted || isOrderBeingSigned;\n\n const lastOrderState =\n otcOrderFlow.otcOrderCancelation.lastOrderState ||\n otcOrderFlow.otcOrderSubmission.order;\n // @TODO fix edge case: this state won't be enough if order was expired while sitting in the drawer\n const isOrderCancellable =\n !!lastOrderState &&\n LimitOrderStateChecker.cancellable.has(lastOrderState.state);\n\n const orderHash = otcOrderFlow.otcOrderSubmission.order?.orderHash;\n\n logger.once.log(\"step\", step, otcOrderFlow, {\n isFlowCancellable,\n orderHash,\n });\n\n // intentional cancellation is handled separately\n const error = isUserCancelledError(otcOrderFlow.error)\n ? null\n : otcOrderFlow.error;\n\n let erroredStep: OtcOrderStepKey | undefined;\n\n if (otcOrderFlow.isError) {\n if (otcOrderFlow.approval.isError) {\n erroredStep = \"signature\";\n } else if (otcOrderFlow.otcOrderSubmission.isError) {\n erroredStep = \"order-submission\";\n }\n }\n\n return {\n startOtcOrder,\n cancelOtcOrder: otcOrderFlow.cancelOtcOrder,\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 isOrderCancellable,\n step,\n orderCancellationStep,\n error,\n erroredStep,\n result: otcOrderFlow.result,\n tradeFlowType: otcOrderFlow.tradeFlowType,\n };\n}\n"],"names":["useOtcOrderStep","options","$","_c","logger","useLogger","otcOrderFlow","useOtcOrderFlow","startOtcOrder","runOtcOrderFlow","reset","cancelFlow","retryFlow","isFlowCancellable","isOrderCancellable","orderCancellationStep","step","once","preWrapETH","wrapAndApproveBatchHappeningOrNeverHappened","approval","needsApproval","wrapAndApprovalBatch","isPending","isSuccess","approvalHappeningOrNeverHappened","otcOrderSubmission","permitOrApprovalHappened","txHash","otcOrderCancelation","isCancelingOrder","isOrderCanceled","isError","approvalIsStarted","key","subStep","isTxPending","isOrderBeingSigned","lastOrderState","order","t0","LimitOrderStateChecker","cancellable","has","state","orderHash","log","error","isUserCancelledError","erroredStep","t1","cancelOtcOrder","result","tradeFlowType"],"mappings":"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"}
1
+ {"version":3,"file":"useOtcOrderStep.js","sources":["../../../../src/hooks/otc/tradeFlow/useOtcOrderStep.ts"],"sourcesContent":["import type {\n GenericStep,\n OtcOrderStep,\n OtcOrderStepKey,\n} from \"@/components/widget/TradeOverview/steps\";\nimport {\n useOtcOrderFlow,\n type SubmitOtcOrderResult,\n type UseOtcOrderFlowInput,\n type UseOtcOrderFlowResult,\n} from \"./useOtcOrderFlow\";\nimport { useLogger } from \"@/core/logger\";\nimport { isUserCancelledError } from \"../../swap/tradeFlow/common/errors\";\nimport { LimitOrderStateChecker } from \"../queries/utils\";\n\ntype UseOtcOrderStepResult = {\n startOtcOrder: UseOtcOrderFlowResult[\"runOtcOrderFlow\"];\n cancelOtcOrder: UseOtcOrderFlowResult[\"cancelOtcOrder\"];\n // @TODO check if resetting is necessary on error, maybe not if submit on click works as a reset\n reset: UseOtcOrderFlowResult[\"reset\"];\n cancelFlow: UseOtcOrderFlowResult[\"cancelFlow\"];\n retryFlow: UseOtcOrderFlowResult[\"retryFlow\"];\n isFlowCancellable: boolean;\n isOrderCancellable: boolean;\n step?: OtcOrderStep;\n orderCancellationStep?: GenericStep;\n error: Error | null;\n erroredStep?: OtcOrderStepKey;\n result?: SubmitOtcOrderResult;\n tradeFlowType: UseOtcOrderFlowResult[\"tradeFlowType\"];\n};\n\nexport function useOtcOrderStep(\n options: UseOtcOrderFlowInput\n): UseOtcOrderStepResult {\n const logger = useLogger(\"OtcOrderStep\");\n const otcOrderFlow = useOtcOrderFlow(options);\n\n const startOtcOrder = otcOrderFlow.runOtcOrderFlow;\n const reset = otcOrderFlow.reset;\n const cancelFlow = otcOrderFlow.cancelFlow;\n const retryFlow = otcOrderFlow.retryFlow;\n\n let step: OtcOrderStep | undefined;\n\n const wrapAndApproveBatchHappeningOrNeverHappened =\n options.preWrapETH &&\n otcOrderFlow.approval.needsApproval &&\n (otcOrderFlow.wrapAndApprovalBatch.isPending ||\n !otcOrderFlow.wrapAndApprovalBatch.isSuccess);\n\n const approvalHappeningOrNeverHappened =\n // isPending starts as false,\n // needsApproval && !isSuccess allows to detect approve step right away even then\n otcOrderFlow.approval.isPending || !otcOrderFlow.approval.isSuccess;\n\n if (\n otcOrderFlow.approval.needsApproval &&\n (approvalHappeningOrNeverHappened ||\n wrapAndApproveBatchHappeningOrNeverHappened)\n ) {\n step = { key: \"signature\", subStep: \"approval-signature\" };\n } else if (otcOrderFlow.otcOrderSubmission.isPending) {\n const permitOrApprovalHappened = !!otcOrderFlow.approval.txHash;\n\n step = {\n key: \"signature\",\n subStep: permitOrApprovalHappened\n ? \"order-signature\"\n : \"standalone-order-signature\",\n };\n } else if (otcOrderFlow.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 let orderCancellationStep: GenericStep | undefined;\n if (otcOrderFlow.otcOrderCancelation.isCancelingOrder) {\n orderCancellationStep = \"pending\";\n } else if (otcOrderFlow.otcOrderCancelation.isOrderCanceled) {\n orderCancellationStep = \"success\";\n } else if (otcOrderFlow.otcOrderCancelation.isError) {\n orderCancellationStep = \"error\";\n }\n\n const approvalIsStarted =\n step?.key === \"signature\" &&\n step.subStep === \"approval-signature\" &&\n otcOrderFlow.approval.isTxPending;\n\n const isOrderBeingSigned =\n step?.key === \"signature\" &&\n (step.subStep === \"order-signature\" ||\n step.subStep === \"standalone-order-signature\");\n\n const isFlowCancellable =\n // final Order is not yet submitted, there's something to cancel;\n // but some steps are already started so we can't simply dismiss\n approvalIsStarted || isOrderBeingSigned;\n\n const lastOrderState =\n otcOrderFlow.otcOrderCancelation.lastOrderState ||\n otcOrderFlow.otcOrderSubmission.order;\n\n const isOrderCancellable =\n !!lastOrderState && // @TODO fix edge case: this state won't be enough if order was expired while sitting in the drawer\n LimitOrderStateChecker.cancellable.has(lastOrderState.state);\n\n const orderHash = otcOrderFlow.otcOrderSubmission.order?.orderHash;\n\n logger.once.log(\"step\", step, otcOrderFlow, {\n isFlowCancellable,\n orderHash,\n });\n\n // intentional cancellation is handled separately\n const error = isUserCancelledError(otcOrderFlow.error)\n ? null\n : otcOrderFlow.error;\n\n let erroredStep: OtcOrderStepKey | undefined;\n\n if (otcOrderFlow.isError) {\n if (otcOrderFlow.approval.isError) {\n erroredStep = \"signature\";\n } else if (otcOrderFlow.otcOrderSubmission.isError) {\n erroredStep = \"order-submission\";\n }\n }\n\n return {\n startOtcOrder,\n cancelOtcOrder: otcOrderFlow.cancelOtcOrder,\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 isOrderCancellable,\n step,\n orderCancellationStep,\n error,\n erroredStep,\n result: otcOrderFlow.result,\n tradeFlowType: otcOrderFlow.tradeFlowType,\n };\n}\n"],"names":["useOtcOrderStep","options","$","_c","logger","useLogger","otcOrderFlow","useOtcOrderFlow","startOtcOrder","runOtcOrderFlow","reset","cancelFlow","retryFlow","isFlowCancellable","isOrderCancellable","orderCancellationStep","step","once","preWrapETH","wrapAndApproveBatchHappeningOrNeverHappened","approval","needsApproval","wrapAndApprovalBatch","isPending","isSuccess","approvalHappeningOrNeverHappened","otcOrderSubmission","permitOrApprovalHappened","txHash","otcOrderCancelation","isCancelingOrder","isOrderCanceled","isError","approvalIsStarted","key","subStep","isTxPending","isOrderBeingSigned","lastOrderState","order","t0","LimitOrderStateChecker","cancellable","has","state","orderHash","log","error","isUserCancelledError","erroredStep","t1","cancelOtcOrder","result","tradeFlowType"],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import { UseMutationOptions, UseMutationResult } from '@tanstack/react-query';
2
+ import { DeltaAuction, MinViemClient } from '@velora-dex/sdk';
3
+ import { Address } from 'viem';
4
+ import { SupportedChainId } from '../../../../../lib/web3/wagmi/types';
5
+ type CancelDeltaOrdersParams = {
6
+ orderIds: string[];
7
+ };
8
+ export type CancelDeltaOrdersReturn = {
9
+ success: boolean;
10
+ };
11
+ type CancelDeltaOrdersInput = CancelDeltaOrdersParams;
12
+ export type CancelDeltaOrdersMutationOptions = Omit<UseMutationOptions<CancelDeltaOrdersReturn, Error, CancelDeltaOrdersInput, void>, "mutationFn">;
13
+ type CancelDeltaOrdersMutInput = {
14
+ mutationOptions?: CancelDeltaOrdersMutationOptions;
15
+ chainId: SupportedChainId;
16
+ account?: Address;
17
+ client?: MinViemClient;
18
+ };
19
+ export declare const CANCEL_DELTA_ORDERS_MUTATION_KEY = "cancelDeltaOrders";
20
+ export declare function useCancelDeltaOrders({ mutationOptions, chainId, account, client, }: CancelDeltaOrdersMutInput): UseMutationResult<CancelDeltaOrdersReturn, Error, CancelDeltaOrdersInput, void>;
21
+ type CancelOrderEventCallbacks = {
22
+ onMutate?: (variables: CancelDeltaOrdersInput) => void;
23
+ onSuccess?: (_data: unknown, variables: CancelDeltaOrdersInput) => void;
24
+ onError?: (error: Error, variables: CancelDeltaOrdersInput) => void;
25
+ };
26
+ export declare function useCancelDeltaOrderEventCallbacks(order?: Pick<DeltaAuction, "id" | "type">): CancelOrderEventCallbacks;
27
+ export {};
28
+ //# sourceMappingURL=useCancelDeltaOrders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCancelDeltaOrders.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACvB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEnE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAIpC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,KAAK,uBAAuB,GAAG;IAC7B,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AACF,MAAM,MAAM,uBAAuB,GAAG;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC;AAE3D,KAAK,sBAAsB,GAAG,uBAAuB,CAAC;AAEtD,MAAM,MAAM,gCAAgC,GAAG,IAAI,CACjD,kBAAkB,CAChB,uBAAuB,EACvB,KAAK,EACL,sBAAsB,EACtB,IAAI,CACL,EACD,YAAY,CACb,CAAC;AAEF,KAAK,yBAAyB,GAAG;IAC/B,eAAe,CAAC,EAAE,gCAAgC,CAAC;IACnD,OAAO,EAAE,gBAAgB,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,gCAAgC,sBAAsB,CAAC;AAEpE,wBAAgB,oBAAoB,CAAC,EACnC,eAAe,EACf,OAAO,EACP,OAAO,EACP,MAAM,GACP,EAAE,yBAAyB,GAAG,iBAAiB,CAC9C,uBAAuB,EACvB,KAAK,EACL,sBAAsB,EACtB,IAAI,CACL,CAsCA;AAED,KAAK,yBAAyB,GAAG;IAC/B,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,sBAAsB,KAAK,IAAI,CAAC;IACvD,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,sBAAsB,KAAK,IAAI,CAAC;IACxE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,sBAAsB,KAAK,IAAI,CAAC;CACrE,CAAC;AASF,wBAAgB,iCAAiC,CAC/C,KAAK,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,GAAG,MAAM,CAAC,GACxC,yBAAyB,CA+C3B"}
@@ -6,8 +6,8 @@ import { deltaOrdersQueryKey } from '../queries/useDeltaOrders.js';
6
6
  import { useWidgetEvents } from '../../../../../core/state/widgetEventsAtom.js';
7
7
  import { deltaLimitOrderRequiredBalanceQueryKey } from '../queries/useDeltaLimitOrderRequiredBalance.js';
8
8
 
9
- const CANCEL_LIMIT_DELTA_ORDERS_MUTATION_KEY = "cancelLimitDeltaOrders";
10
- function useCancelLimitDeltaOrders(t0) {
9
+ const CANCEL_DELTA_ORDERS_MUTATION_KEY = "cancelDeltaOrders";
10
+ function useCancelDeltaOrders(t0) {
11
11
  const $ = distExports.c(16);
12
12
  const {
13
13
  mutationOptions,
@@ -35,7 +35,7 @@ function useCancelLimitDeltaOrders(t0) {
35
35
  const queryClient = useQueryClient();
36
36
  let t2;
37
37
  if ($[4] === Symbol.for("react.memo_cache_sentinel")) {
38
- t2 = [CANCEL_LIMIT_DELTA_ORDERS_MUTATION_KEY];
38
+ t2 = [CANCEL_DELTA_ORDERS_MUTATION_KEY];
39
39
  $[4] = t2;
40
40
  } else {
41
41
  t2 = $[4];
@@ -184,5 +184,5 @@ function useCancelDeltaOrderEventCallbacks(order) {
184
184
  return t2;
185
185
  }
186
186
 
187
- export { CANCEL_LIMIT_DELTA_ORDERS_MUTATION_KEY, useCancelDeltaOrderEventCallbacks, useCancelLimitDeltaOrders };
188
- //# sourceMappingURL=useCancelLimitDeltaOrders.js.map
187
+ export { CANCEL_DELTA_ORDERS_MUTATION_KEY, useCancelDeltaOrderEventCallbacks, useCancelDeltaOrders };
188
+ //# sourceMappingURL=useCancelDeltaOrders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCancelDeltaOrders.js","sources":["../../../../../../src/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.ts"],"sourcesContent":["import { useDeltaSDK } from \"@/hooks/useSDK\";\nimport {\n useMutation,\n useQueryClient,\n type UseMutationOptions,\n type UseMutationResult,\n} from \"@tanstack/react-query\";\nimport type { DeltaAuction, MinViemClient } from \"@velora-dex/sdk\";\nimport { assert } from \"ts-essentials\";\nimport type { Address } from \"viem\";\nimport { deltaOrdersQueryKey } from \"../queries/useDeltaOrders\";\nimport { useWidgetEvents } from \"@/core/state/widgetEventsAtom\";\nimport { deltaLimitOrderRequiredBalanceQueryKey } from \"../queries/useDeltaLimitOrderRequiredBalance\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\n\ntype CancelDeltaOrdersParams = {\n orderIds: string[];\n}; // @TODO import from SDK\nexport type CancelDeltaOrdersReturn = { success: boolean };\n\ntype CancelDeltaOrdersInput = CancelDeltaOrdersParams;\n\nexport type CancelDeltaOrdersMutationOptions = Omit<\n UseMutationOptions<\n CancelDeltaOrdersReturn,\n Error,\n CancelDeltaOrdersInput,\n void\n >,\n \"mutationFn\"\n>;\n\ntype CancelDeltaOrdersMutInput = {\n mutationOptions?: CancelDeltaOrdersMutationOptions;\n chainId: SupportedChainId;\n account?: Address;\n client?: MinViemClient;\n};\n\nexport const CANCEL_DELTA_ORDERS_MUTATION_KEY = \"cancelDeltaOrders\";\n\nexport function useCancelDeltaOrders({\n mutationOptions,\n chainId,\n account,\n client,\n}: CancelDeltaOrdersMutInput): UseMutationResult<\n CancelDeltaOrdersReturn,\n Error,\n CancelDeltaOrdersInput,\n void\n> {\n const { sdk } = useDeltaSDK({ chainId, account, client });\n const queryClient = useQueryClient();\n\n return useMutation<\n CancelDeltaOrdersReturn,\n Error,\n CancelDeltaOrdersInput,\n void\n >({\n mutationKey: [CANCEL_DELTA_ORDERS_MUTATION_KEY],\n mutationFn: async ({ orderIds }) => {\n assert(\n \"cancelLimitDeltaOrders\" in sdk,\n \"cancelLimitDeltaOrders is not available on this SDK\"\n );\n // Note: This mutation requires the SDK to be initialized with account and client\n // to access cancelLimitDeltaOrders functionality\n return sdk.cancelLimitDeltaOrders({ orderIds });\n },\n ...mutationOptions,\n onSuccess: (...args) => {\n queryClient.invalidateQueries({\n queryKey: deltaOrdersQueryKey({\n userAddress: account,\n }),\n exact: false,\n });\n queryClient.invalidateQueries({\n queryKey: deltaLimitOrderRequiredBalanceQueryKey({\n chainId,\n account,\n }),\n exact: false,\n });\n mutationOptions?.onSuccess?.(...args);\n },\n });\n}\n\ntype CancelOrderEventCallbacks = {\n onMutate?: (variables: CancelDeltaOrdersInput) => void;\n onSuccess?: (_data: unknown, variables: CancelDeltaOrdersInput) => void;\n onError?: (error: Error, variables: CancelDeltaOrdersInput) => void;\n};\n/*\nCallbacks in useMutation options (onSuccess, onError, onSettled):\n - will run even if the component unmounts (tied to the mutation instance).\nCallbacks passed to mutate() or mutateAsync():\n - will not run if the component unmounts before the mutation finishes (tied to the component).\n\nSo always use useMutation callbacks if changing something outside of the immediate component\n*/\nexport function useCancelDeltaOrderEventCallbacks(\n order?: Pick<DeltaAuction, \"id\" | \"type\">\n): CancelOrderEventCallbacks {\n const { onCancelOrder } = useWidgetEvents();\n\n if (!order) return {};\n\n const params = {\n orderIds: [order.id],\n orderType: \"DELTA\",\n orderSubType: order.type,\n } as const;\n\n return {\n onMutate: (variables) => {\n onCancelOrder?.({\n event: {\n name: \"CancelOrder:request\",\n params: {\n ...params,\n orderIds: variables.orderIds,\n },\n },\n });\n },\n onSuccess: (_data, variables) => {\n onCancelOrder?.({\n event: {\n name: \"CancelOrder:confirmed\",\n params: {\n ...params,\n orderIds: variables.orderIds,\n },\n },\n });\n },\n onError: (error: Error, variables) => {\n onCancelOrder?.({\n event: {\n name: \"CancelOrder:failed\",\n params: {\n ...params,\n orderIds: variables.orderIds,\n error,\n },\n },\n });\n },\n };\n}\n"],"names":["CANCEL_DELTA_ORDERS_MUTATION_KEY","useCancelDeltaOrders","t0","$","_c","mutationOptions","chainId","account","client","t1","sdk","useDeltaSDK","queryClient","useQueryClient","t2","Symbol","for","t3","t4","orderIds","assert","cancelLimitDeltaOrders","t5","args","invalidateQueries","queryKey","deltaOrdersQueryKey","userAddress","exact","deltaLimitOrderRequiredBalanceQueryKey","onSuccess","mutationKey","mutationFn","useMutation","useCancelDeltaOrderEventCallbacks","order","onCancelOrder","useWidgetEvents","id","type","orderType","orderSubType","params","onMutate","variables","event","name","_data","variables_0","onError","error","variables_1"],"mappings":"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"}
@@ -47,7 +47,7 @@ export type ExecutedDeltaAuction = Omit<DeltaAuction, "status" | "transaction">
47
47
  transaction: DeltaAuctionTx;
48
48
  };
49
49
  export type FailedDeltaAuction = DeltaAuction & ({
50
- status: Extract<DeltaAuctionStatus, "FAILED" | "EXPIRED">;
50
+ status: Extract<DeltaAuctionStatus, "FAILED" | "EXPIRED" | "CANCELLED">;
51
51
  } | {
52
52
  status: "EXECUTED";
53
53
  bridgeStatus: "expired" | "refunded";
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/prices/delta/orders/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAExE,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,UAAU,cAAc;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,YAAY,EAAE,kBAAkB,EAAE,CAAC;AAEnC,MAAM,MAAM,oBAAoB,GAAG,IAAI,CACrC,YAAY,EACZ,QAAQ,GAAG,aAAa,CACzB,GAAG;IACF,MAAM,EAAE,OAAO,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC;IAChD,WAAW,EAAE,cAAc,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,YAAY,GAC3C,CACI;IACE,MAAM,EAAE,OAAO,CAAC,kBAAkB,EAAE,QAAQ,GAAG,SAAS,CAAC,CAAC;CAC3D,GACD;IACE,MAAM,EAAE,UAAU,CAAC;IACnB,YAAY,EAAE,SAAS,GAAG,UAAU,CAAC;CACtC,CACJ,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/prices/delta/orders/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAExE,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,UAAU,cAAc;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,YAAY,EAAE,kBAAkB,EAAE,CAAC;AAEnC,MAAM,MAAM,oBAAoB,GAAG,IAAI,CACrC,YAAY,EACZ,QAAQ,GAAG,aAAa,CACzB,GAAG;IACF,MAAM,EAAE,OAAO,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC;IAChD,WAAW,EAAE,cAAc,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,YAAY,GAC3C,CACI;IACE,MAAM,EAAE,OAAO,CAAC,kBAAkB,EAAE,QAAQ,GAAG,SAAS,GAAG,WAAW,CAAC,CAAC;CACzE,GACD;IACE,MAAM,EAAE,UAAU,CAAC;IACnB,YAAY,EAAE,SAAS,GAAG,UAAU,CAAC;CACtC,CACJ,CAAC"}
@@ -12,6 +12,9 @@ export declare function isBridgedOrderFailed(order: Pick<DeltaAuction, "bridgeSt
12
12
  };
13
13
  export declare function isExecutedDeltaAuction(auction: MarkOptional<DeltaAuction, "signature">, waitForCrosschain?: boolean): auction is ExecutedDeltaAuction;
14
14
  export declare function isFailedDeltaAuction(auction: MarkOptional<DeltaAuction, "signature">, waitForCrosschain?: boolean): auction is FailedDeltaAuction;
15
+ export declare function isCanceledDeltaAuction(auction: MarkOptional<DeltaAuction, "signature">): auction is MarkRequired<DeltaAuction, "signature"> & {
16
+ status: "CANCELLED";
17
+ };
15
18
  export declare function isDeltaAuctionExpired(auction: MarkOptional<DeltaAuction, "signature">): auction is MarkRequired<DeltaAuction, "signature"> & {
16
19
  status: "EXPIRED";
17
20
  };
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/prices/delta/orders/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,iBAAiB,EAClB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,KAAK,EACV,kBAAkB,EAClB,oBAAoB,EACpB,kBAAkB,EACnB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,GACvC,OAAO,CAET;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,iBAAiB,CAU5E;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,cAAc,GAAG,gBAAgB,CAAC,GAC3D,KAAK,IAAI,YAAY,CAAC,YAAY,EAAE,gBAAgB,CAAC,GAAG;IACzD,YAAY,EAAE,QAAQ,CAAC;CACxB,CAEA;AAED,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,cAAc,GAAG,gBAAgB,CAAC,GAC3D,KAAK,IAAI,YAAY,CAAC,YAAY,EAAE,gBAAgB,CAAC,GAAG;IACzD,YAAY,EAAE,UAAU,CAAC;CAC1B,CAEA;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,YAAY,CAAC,YAAY,EAAE,WAAW,CAAC,EAChD,iBAAiB,UAAO,GACvB,OAAO,IAAI,oBAAoB,CASjC;AAED,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,YAAY,CAAC,YAAY,EAAE,WAAW,CAAC,EAChD,iBAAiB,UAAO,GACvB,OAAO,IAAI,kBAAkB,CAgB/B;AAED,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,YAAY,CAAC,YAAY,EAAE,WAAW,CAAC,GAC/C,OAAO,IAAI,YAAY,CAAC,YAAY,EAAE,WAAW,CAAC,GAAG;IACtD,MAAM,EAAE,SAAS,CAAC;CACnB,CAEA;AAKD,eAAO,MAAM,uBAAuB;;;;;;;;CA8BnC,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;CAI/B,CAAC;AAGF,MAAM,MAAM,iBAAiB,GACzB,SAAS,GACT,WAAW,GACX,QAAQ,GACR,WAAW,CAAC;AAEhB,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,kBAAkB,GAC9B,iBAAiB,CAQnB;AAED,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,kBAAkB,EAC1B,YAAY,EAAE,YAAY,GAAG,IAAI,GAChC,iBAAiB,CAcnB;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,QAAQ,GAAG,cAAc,GAAG,OAAO,CAAC,GAC7D,iBAAiB,CAInB"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/prices/delta/orders/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,iBAAiB,EAClB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,KAAK,EACV,kBAAkB,EAClB,oBAAoB,EACpB,kBAAkB,EACnB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,GACvC,OAAO,CAET;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,iBAAiB,CAU5E;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,cAAc,GAAG,gBAAgB,CAAC,GAC3D,KAAK,IAAI,YAAY,CAAC,YAAY,EAAE,gBAAgB,CAAC,GAAG;IACzD,YAAY,EAAE,QAAQ,CAAC;CACxB,CAEA;AAED,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,cAAc,GAAG,gBAAgB,CAAC,GAC3D,KAAK,IAAI,YAAY,CAAC,YAAY,EAAE,gBAAgB,CAAC,GAAG;IACzD,YAAY,EAAE,UAAU,CAAC;CAC1B,CAEA;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,YAAY,CAAC,YAAY,EAAE,WAAW,CAAC,EAChD,iBAAiB,UAAO,GACvB,OAAO,IAAI,oBAAoB,CASjC;AAED,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,YAAY,CAAC,YAAY,EAAE,WAAW,CAAC,EAChD,iBAAiB,UAAO,GACvB,OAAO,IAAI,kBAAkB,CAgB/B;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,YAAY,CAAC,YAAY,EAAE,WAAW,CAAC,GAC/C,OAAO,IAAI,YAAY,CAAC,YAAY,EAAE,WAAW,CAAC,GAAG;IACtD,MAAM,EAAE,WAAW,CAAC;CACrB,CAEA;AAED,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,YAAY,CAAC,YAAY,EAAE,WAAW,CAAC,GAC/C,OAAO,IAAI,YAAY,CAAC,YAAY,EAAE,WAAW,CAAC,GAAG;IACtD,MAAM,EAAE,SAAS,CAAC;CACnB,CAEA;AAKD,eAAO,MAAM,uBAAuB;;;;;;;;CAgCnC,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;CAI/B,CAAC;AAGF,MAAM,MAAM,iBAAiB,GACzB,SAAS,GACT,WAAW,GACX,QAAQ,GACR,WAAW,CAAC;AAEhB,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,kBAAkB,GAC9B,iBAAiB,CAQnB;AAED,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,kBAAkB,EAC1B,YAAY,EAAE,YAAY,GAAG,IAAI,GAChC,iBAAiB,CAcnB;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,QAAQ,GAAG,cAAc,GAAG,OAAO,CAAC,GAC7D,iBAAiB,CAInB"}
@@ -19,7 +19,10 @@ function isFailedDeltaAuction(auction, waitForCrosschain = true) {
19
19
  if (waitForCrosschain && auction.status === "EXECUTED" && auction.order.bridge.destinationChainId !== 0) {
20
20
  return auction.bridgeStatus === "expired" || auction.bridgeStatus === "refunded";
21
21
  }
22
- return true;
22
+ return false;
23
+ }
24
+ function isCanceledDeltaAuction(auction) {
25
+ return auction.status === "CANCELLED";
23
26
  }
24
27
  function isDeltaAuctionExpired(auction) {
25
28
  return auction.status === "EXPIRED";
@@ -32,7 +35,7 @@ const DeltaOrderStatusChecker = {
32
35
  success: /* @__PURE__ */ new Set(["EXECUTED"]),
33
36
  completed: /* @__PURE__ */ new Set(["EXECUTED", "FAILED", "EXPIRED", "CANCELLED"]),
34
37
  failed: /* @__PURE__ */ new Set(["FAILED", "EXPIRED", "CANCELLED"]),
35
- cancellable: /* @__PURE__ */ new Set(["NOT_STARTED", "RUNNING", "AWAITING_PRE_SIGNATURE"])
38
+ cancellable: /* @__PURE__ */ new Set(["NOT_STARTED", "RUNNING", "AWAITING_PRE_SIGNATURE", "EXECUTING", "SUSPENDED"])
36
39
  };
37
40
  const BridgeStatusChecker = {
38
41
  failed: /* @__PURE__ */ new Set(["expired", "refunded"])
@@ -53,5 +56,5 @@ function getOverallOrderStatus(order) {
53
56
  return isOrderCrosschain(order.order) ? getCrossChainOrderStatus(order.status, order.bridgeStatus) : getSingleChainOrderStatus(order.status);
54
57
  }
55
58
 
56
- export { BridgeStatusChecker, DeltaOrderStatusChecker, getCrossChainOrderStatus, getOverallOrderStatus, getSingleChainOrderStatus, isBridgedOrderExecuted, isDeltaAuctionExpired, isDeltaOrderFromApi, isExecutedDeltaAuction, isFailedDeltaAuction, isOrderCrosschain };
59
+ export { BridgeStatusChecker, DeltaOrderStatusChecker, getCrossChainOrderStatus, getOverallOrderStatus, getSingleChainOrderStatus, isBridgedOrderExecuted, isCanceledDeltaAuction, isDeltaAuctionExpired, isDeltaOrderFromApi, isExecutedDeltaAuction, isFailedDeltaAuction, isOrderCrosschain };
57
60
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../../../../src/hooks/swap/prices/delta/orders/utils.ts"],"sourcesContent":["import type {\n BridgeStatus,\n DeltaAuction,\n DeltaAuctionOrder,\n} from \"@velora-dex/sdk\";\nimport type { MarkOptional, MarkRequired } from \"ts-essentials\";\nimport type {\n DeltaAuctionStatus,\n ExecutedDeltaAuction,\n FailedDeltaAuction,\n} from \"./types\";\nimport type { DeltaOrderFromAPI } from \"../queries/useDeltaOrders\";\n\nexport function isOrderCrosschain(\n order: Pick<DeltaAuctionOrder, \"bridge\">\n): boolean {\n return order.bridge && order.bridge.destinationChainId !== 0;\n}\n\nexport function isDeltaOrderFromApi(data: unknown): data is DeltaOrderFromAPI {\n return (\n typeof data === \"object\" &&\n data !== null &&\n \"id\" in data &&\n \"chainId\" in data &&\n \"status\" in data &&\n \"order\" in data &&\n \"orderHash\" in data\n );\n}\n\nexport function isBridgedOrderExecuted(\n order: Pick<DeltaAuction, \"bridgeStatus\" | \"bridgeMetadata\">\n): order is MarkRequired<DeltaAuction, \"bridgeMetadata\"> & {\n bridgeStatus: \"filled\";\n} {\n return order.bridgeStatus === \"filled\";\n}\n\nexport function isBridgedOrderFailed(\n order: Pick<DeltaAuction, \"bridgeStatus\" | \"bridgeMetadata\">\n): order is MarkRequired<DeltaAuction, \"bridgeMetadata\"> & {\n bridgeStatus: \"refunded\";\n} {\n return order.bridgeStatus === \"refunded\";\n}\n\nexport function isExecutedDeltaAuction(\n auction: MarkOptional<DeltaAuction, \"signature\">,\n waitForCrosschain = true // only consider executed when destChain work is done\n): auction is ExecutedDeltaAuction {\n if (auction.status !== \"EXECUTED\") return false;\n\n // crosschain Order is executed on destChain if bridgeStatus is filled\n if (waitForCrosschain && isOrderCrosschain(auction.order)) {\n return isBridgedOrderExecuted(auction);\n }\n\n return true;\n}\n\nexport function isFailedDeltaAuction(\n auction: MarkOptional<DeltaAuction, \"signature\">,\n waitForCrosschain = true // only consider executed when destChain work is done\n): auction is FailedDeltaAuction {\n // already failed on srcChain, whether Order is crosschain or not\n if (auction.status === \"FAILED\") return true;\n\n // crosschain Order is executed on srcChain, but failed on destChain\n if (\n waitForCrosschain &&\n auction.status === \"EXECUTED\" &&\n auction.order.bridge.destinationChainId !== 0\n ) {\n return (\n auction.bridgeStatus === \"expired\" || auction.bridgeStatus === \"refunded\"\n );\n }\n\n return true;\n}\n\nexport function isDeltaAuctionExpired(\n auction: MarkOptional<DeltaAuction, \"signature\">\n): auction is MarkRequired<DeltaAuction, \"signature\"> & {\n status: \"EXPIRED\";\n} {\n return auction.status === \"EXPIRED\";\n}\n\n/// ------------------- Order status checks -------------------\n\n// specific to submit DeltaOrder substep\nexport const DeltaOrderStatusChecker = {\n pending: new Set<DeltaAuctionStatus>([\n \"NOT_STARTED\",\n \"RUNNING\",\n \"AWAITING_PRE_SIGNATURE\",\n ]), // adjust for when we want to show Pending state\n executing: new Set<DeltaAuctionStatus>([\"EXECUTING\"]),\n active: new Set<DeltaAuctionStatus>([\n \"EXECUTING\",\n \"NOT_STARTED\",\n \"AWAITING_PRE_SIGNATURE\",\n \"RUNNING\",\n \"EXECUTED\",\n \"FAILED\",\n \"EXPIRED\",\n \"CANCELLED\",\n ]), // order always active, unless actual submission breaks\n success: new Set<DeltaAuctionStatus>([\"EXECUTED\"]),\n completed: new Set<DeltaAuctionStatus>([\n \"EXECUTED\",\n \"FAILED\",\n \"EXPIRED\",\n \"CANCELLED\",\n ]),\n failed: new Set<DeltaAuctionStatus>([\"FAILED\", \"EXPIRED\", \"CANCELLED\"]),\n cancellable: new Set<DeltaAuctionStatus>([\n \"NOT_STARTED\",\n \"RUNNING\",\n \"AWAITING_PRE_SIGNATURE\",\n ]),\n};\n\nexport const BridgeStatusChecker = {\n pending: new Set<BridgeStatus>([\"pending\"]),\n completed: new Set<BridgeStatus>([\"filled\", \"expired\", \"refunded\"]),\n failed: new Set<BridgeStatus>([\"expired\", \"refunded\"]),\n};\n\n// visually we show only \"In progress\", \"Executing\" and separate components for success and failure\nexport type VisualOrderStatus =\n | \"pending\"\n | \"executing\"\n | \"failed\"\n | \"confirmed\";\n\nexport function getSingleChainOrderStatus(\n orderStatus: DeltaAuctionStatus\n): VisualOrderStatus {\n if (DeltaOrderStatusChecker.pending.has(orderStatus)) return \"pending\";\n\n if (DeltaOrderStatusChecker.executing.has(orderStatus)) return \"executing\";\n\n if (DeltaOrderStatusChecker.failed.has(orderStatus)) return \"failed\";\n\n return \"confirmed\";\n}\n\nexport function getCrossChainOrderStatus(\n status: DeltaAuctionStatus,\n bridgeStatus: BridgeStatus | null\n): VisualOrderStatus {\n if (\n DeltaOrderStatusChecker.failed.has(status) ||\n (bridgeStatus && BridgeStatusChecker.failed.has(bridgeStatus))\n )\n return \"failed\";\n\n if (bridgeStatus === \"filled\") return \"confirmed\";\n\n // Order awaiting signature can't be already executing no matter the bridge status\n if (status === \"AWAITING_PRE_SIGNATURE\") return \"pending\";\n\n return \"executing\"; // executed already on source chain, but not yet on destination chain,\n // visually we show \"executing\"\n}\n\nexport function getOverallOrderStatus(\n order: Pick<DeltaAuction, \"status\" | \"bridgeStatus\" | \"order\">\n): VisualOrderStatus {\n return isOrderCrosschain(order.order)\n ? getCrossChainOrderStatus(order.status, order.bridgeStatus)\n : getSingleChainOrderStatus(order.status);\n}\n"],"names":["isOrderCrosschain","order","bridge","destinationChainId","isDeltaOrderFromApi","data","isBridgedOrderExecuted","bridgeStatus","isExecutedDeltaAuction","auction","waitForCrosschain","status","isFailedDeltaAuction","isDeltaAuctionExpired","DeltaOrderStatusChecker","pending","Set","executing","success","completed","failed","cancellable","BridgeStatusChecker","getSingleChainOrderStatus","orderStatus","has","getCrossChainOrderStatus","getOverallOrderStatus"],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sources":["../../../../../../src/hooks/swap/prices/delta/orders/utils.ts"],"sourcesContent":["import type {\n BridgeStatus,\n DeltaAuction,\n DeltaAuctionOrder,\n} from \"@velora-dex/sdk\";\nimport type { MarkOptional, MarkRequired } from \"ts-essentials\";\nimport type {\n DeltaAuctionStatus,\n ExecutedDeltaAuction,\n FailedDeltaAuction,\n} from \"./types\";\nimport type { DeltaOrderFromAPI } from \"../queries/useDeltaOrders\";\n\nexport function isOrderCrosschain(\n order: Pick<DeltaAuctionOrder, \"bridge\">\n): boolean {\n return order.bridge && order.bridge.destinationChainId !== 0;\n}\n\nexport function isDeltaOrderFromApi(data: unknown): data is DeltaOrderFromAPI {\n return (\n typeof data === \"object\" &&\n data !== null &&\n \"id\" in data &&\n \"chainId\" in data &&\n \"status\" in data &&\n \"order\" in data &&\n \"orderHash\" in data\n );\n}\n\nexport function isBridgedOrderExecuted(\n order: Pick<DeltaAuction, \"bridgeStatus\" | \"bridgeMetadata\">\n): order is MarkRequired<DeltaAuction, \"bridgeMetadata\"> & {\n bridgeStatus: \"filled\";\n} {\n return order.bridgeStatus === \"filled\";\n}\n\nexport function isBridgedOrderFailed(\n order: Pick<DeltaAuction, \"bridgeStatus\" | \"bridgeMetadata\">\n): order is MarkRequired<DeltaAuction, \"bridgeMetadata\"> & {\n bridgeStatus: \"refunded\";\n} {\n return order.bridgeStatus === \"refunded\";\n}\n\nexport function isExecutedDeltaAuction(\n auction: MarkOptional<DeltaAuction, \"signature\">,\n waitForCrosschain = true // only consider executed when destChain work is done\n): auction is ExecutedDeltaAuction {\n if (auction.status !== \"EXECUTED\") return false;\n\n // crosschain Order is executed on destChain if bridgeStatus is filled\n if (waitForCrosschain && isOrderCrosschain(auction.order)) {\n return isBridgedOrderExecuted(auction);\n }\n\n return true;\n}\n\nexport function isFailedDeltaAuction(\n auction: MarkOptional<DeltaAuction, \"signature\">,\n waitForCrosschain = true // only consider executed when destChain work is done\n): auction is FailedDeltaAuction {\n // already failed on srcChain, whether Order is crosschain or not\n if (auction.status === \"FAILED\") return true;\n\n // crosschain Order is executed on srcChain, but failed on destChain\n if (\n waitForCrosschain &&\n auction.status === \"EXECUTED\" &&\n auction.order.bridge.destinationChainId !== 0\n ) {\n return (\n auction.bridgeStatus === \"expired\" || auction.bridgeStatus === \"refunded\"\n );\n }\n\n return false;\n}\n\nexport function isCanceledDeltaAuction(\n auction: MarkOptional<DeltaAuction, \"signature\">\n): auction is MarkRequired<DeltaAuction, \"signature\"> & {\n status: \"CANCELLED\";\n} {\n return auction.status === \"CANCELLED\";\n}\n\nexport function isDeltaAuctionExpired(\n auction: MarkOptional<DeltaAuction, \"signature\">\n): auction is MarkRequired<DeltaAuction, \"signature\"> & {\n status: \"EXPIRED\";\n} {\n return auction.status === \"EXPIRED\";\n}\n\n/// ------------------- Order status checks -------------------\n\n// specific to submit DeltaOrder substep\nexport const DeltaOrderStatusChecker = {\n pending: new Set<DeltaAuctionStatus>([\n \"NOT_STARTED\",\n \"RUNNING\",\n \"AWAITING_PRE_SIGNATURE\",\n ]), // adjust for when we want to show Pending state\n executing: new Set<DeltaAuctionStatus>([\"EXECUTING\"]),\n active: new Set<DeltaAuctionStatus>([\n \"EXECUTING\",\n \"NOT_STARTED\",\n \"AWAITING_PRE_SIGNATURE\",\n \"RUNNING\",\n \"EXECUTED\",\n \"FAILED\",\n \"EXPIRED\",\n \"CANCELLED\",\n ]), // order always active, unless actual submission breaks\n success: new Set<DeltaAuctionStatus>([\"EXECUTED\"]),\n completed: new Set<DeltaAuctionStatus>([\n \"EXECUTED\",\n \"FAILED\",\n \"EXPIRED\",\n \"CANCELLED\",\n ]),\n failed: new Set<DeltaAuctionStatus>([\"FAILED\", \"EXPIRED\", \"CANCELLED\"]),\n cancellable: new Set<DeltaAuctionStatus>([\n \"NOT_STARTED\",\n \"RUNNING\",\n \"AWAITING_PRE_SIGNATURE\",\n \"EXECUTING\",\n \"SUSPENDED\",\n ]),\n};\n\nexport const BridgeStatusChecker = {\n pending: new Set<BridgeStatus>([\"pending\"]),\n completed: new Set<BridgeStatus>([\"filled\", \"expired\", \"refunded\"]),\n failed: new Set<BridgeStatus>([\"expired\", \"refunded\"]),\n};\n\n// visually we show only \"In progress\", \"Executing\" and separate components for success and failure\nexport type VisualOrderStatus =\n | \"pending\"\n | \"executing\"\n | \"failed\"\n | \"confirmed\";\n\nexport function getSingleChainOrderStatus(\n orderStatus: DeltaAuctionStatus\n): VisualOrderStatus {\n if (DeltaOrderStatusChecker.pending.has(orderStatus)) return \"pending\";\n\n if (DeltaOrderStatusChecker.executing.has(orderStatus)) return \"executing\";\n\n if (DeltaOrderStatusChecker.failed.has(orderStatus)) return \"failed\";\n\n return \"confirmed\";\n}\n\nexport function getCrossChainOrderStatus(\n status: DeltaAuctionStatus,\n bridgeStatus: BridgeStatus | null\n): VisualOrderStatus {\n if (\n DeltaOrderStatusChecker.failed.has(status) ||\n (bridgeStatus && BridgeStatusChecker.failed.has(bridgeStatus))\n )\n return \"failed\";\n\n if (bridgeStatus === \"filled\") return \"confirmed\";\n\n // Order awaiting signature can't be already executing no matter the bridge status\n if (status === \"AWAITING_PRE_SIGNATURE\") return \"pending\";\n\n return \"executing\"; // executed already on source chain, but not yet on destination chain,\n // visually we show \"executing\"\n}\n\nexport function getOverallOrderStatus(\n order: Pick<DeltaAuction, \"status\" | \"bridgeStatus\" | \"order\">\n): VisualOrderStatus {\n return isOrderCrosschain(order.order)\n ? getCrossChainOrderStatus(order.status, order.bridgeStatus)\n : getSingleChainOrderStatus(order.status);\n}\n"],"names":["isOrderCrosschain","order","bridge","destinationChainId","isDeltaOrderFromApi","data","isBridgedOrderExecuted","bridgeStatus","isExecutedDeltaAuction","auction","waitForCrosschain","status","isFailedDeltaAuction","isCanceledDeltaAuction","isDeltaAuctionExpired","DeltaOrderStatusChecker","pending","Set","executing","success","completed","failed","cancellable","BridgeStatusChecker","getSingleChainOrderStatus","orderStatus","has","getCrossChainOrderStatus","getOverallOrderStatus"],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { FailedDeltaAuction } from '../orders/types';
2
+ export declare class DeltaOrderFailedError extends Error {
3
+ readonly order: FailedDeltaAuction;
4
+ constructor({ message, order, }: {
5
+ message?: string;
6
+ order: FailedDeltaAuction;
7
+ });
8
+ }
9
+ export declare function isDeltaOrderFailedError(error: unknown): error is DeltaOrderFailedError;
10
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/prices/delta/queries/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAE1D,qBAAa,qBAAsB,SAAQ,KAAK;IAC9C,SAAgB,KAAK,EAAE,kBAAkB,CAAC;gBAEvB,EACjB,OAAO,EACP,KAAK,GACN,EAAE;QACD,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,kBAAkB,CAAC;KAC3B;CAWF;AAED,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,qBAAqB,CAEhC"}
@@ -0,0 +1,21 @@
1
+ class DeltaOrderFailedError extends Error {
2
+ order;
3
+ constructor({
4
+ message,
5
+ order
6
+ }) {
7
+ super(message);
8
+ this.name = this.constructor.name;
9
+ this.message = message || "DeltaOrderFailed";
10
+ this.order = order;
11
+ if (Error.captureStackTrace) {
12
+ Error.captureStackTrace(this, DeltaOrderFailedError);
13
+ }
14
+ }
15
+ }
16
+ function isDeltaOrderFailedError(error) {
17
+ return error instanceof DeltaOrderFailedError;
18
+ }
19
+
20
+ export { DeltaOrderFailedError, isDeltaOrderFailedError };
21
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sources":["../../../../../../src/hooks/swap/prices/delta/queries/errors.ts"],"sourcesContent":["import type { FailedDeltaAuction } from \"../orders/types\";\n\nexport class DeltaOrderFailedError extends Error {\n public readonly order: FailedDeltaAuction;\n\n public constructor({\n message,\n order,\n }: {\n message?: string;\n order: FailedDeltaAuction;\n }) {\n super(message);\n this.name = this.constructor.name;\n this.message = message || \"DeltaOrderFailed\";\n this.order = order;\n\n // Capture stack trace, excluding the constructor call\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, DeltaOrderFailedError);\n }\n }\n}\n\nexport function isDeltaOrderFailedError(\n error: unknown\n): error is DeltaOrderFailedError {\n return error instanceof DeltaOrderFailedError;\n}\n"],"names":["DeltaOrderFailedError","Error","order","constructor","message","name","captureStackTrace","isDeltaOrderFailedError","error"],"mappings":"AAEO,MAAMA,8BAA8BC,KAAAA,CAAM;AAAA,EAC/BC,KAAAA;AAAAA,EAETC,WAAAA,CAAY;AAAA,IACjBC,OAAAA;AAAAA,IACAF;AAAAA,GAIF,EAAG;AACD,IAAA,KAAA,CAAME,OAAO,CAAA;AACb,IAAA,IAAA,CAAKC,IAAAA,GAAO,KAAKF,WAAAA,CAAYE,IAAAA;AAC7B,IAAA,IAAA,CAAKD,UAAUA,OAAAA,IAAW,kBAAA;AAC1B,IAAA,IAAA,CAAKF,KAAAA,GAAQA,KAAAA;AAGb,IAAA,IAAID,MAAMK,iBAAAA,EAAmB;AAC3BL,MAAAA,KAAAA,CAAMK,iBAAAA,CAAkB,MAAMN,qBAAqB,CAAA;AAAA,IACrD;AAAA,EACF;AACF;AAEO,SAASO,wBACdC,KAAAA,EACgC;AAChC,EAAA,OAAOA,KAAAA,YAAiBR,qBAAAA;AAC1B;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useWatchDeltaOrder.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/prices/delta/queries/useWatchDeltaOrder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useWatchDeltaOrder.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/prices/delta/queries/useWatchDeltaOrder.ts"],"names":[],"mappings":"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"}
@@ -4,8 +4,9 @@ import { useRef, useLayoutEffect, useMemo } from 'react';
4
4
  import { assert } from 'ts-essentials';
5
5
  import { useDeltaSDK } from '../../../../useSDK.js';
6
6
  import { isMetaWithTimeStart } from '../bridge/utils.js';
7
- import { DeltaOrderStatusChecker, isExecutedDeltaAuction, isFailedDeltaAuction, isDeltaAuctionExpired } from '../orders/utils.js';
7
+ import { DeltaOrderStatusChecker, isExecutedDeltaAuction, isFailedDeltaAuction, isDeltaAuctionExpired, isCanceledDeltaAuction } from '../orders/utils.js';
8
8
  import { getLogger, useLogger } from '../../../../../core/logger.js';
9
+ import { DeltaOrderFailedError } from './errors.js';
9
10
 
10
11
  const SINGLE_DELTA_AUCTION_QUERY_KEY_PREFIX = "single_delta_auction";
11
12
  function deltaAuctionPollingQueryKey({
@@ -62,7 +63,7 @@ function constructDeltaAuctionPollingQueryOptions({
62
63
  }
63
64
  return false;
64
65
  }
65
- if (isFailedDeltaAuction(maybeOrder) || isDeltaAuctionExpired(maybeOrder)) {
66
+ if (isFailedDeltaAuction(maybeOrder) || isDeltaAuctionExpired(maybeOrder) || isCanceledDeltaAuction(maybeOrder)) {
66
67
  onAuctionFailure?.(maybeOrder);
67
68
  if (isWithDoneState) {
68
69
  queryMeta.doneState = true;
@@ -204,10 +205,12 @@ function useEnsureDeltaOrderExecuted(t0) {
204
205
  resolve(maybeOrder);
205
206
  return;
206
207
  }
207
- if (isFailedDeltaAuction(maybeOrder) || isDeltaAuctionExpired(maybeOrder)) {
208
+ if (isFailedDeltaAuction(maybeOrder) || isDeltaAuctionExpired(maybeOrder) || isCanceledDeltaAuction(maybeOrder)) {
208
209
  onAuctionFailure?.(maybeOrder);
209
210
  cleanup();
210
- reject(maybeOrder);
211
+ reject(new DeltaOrderFailedError({
212
+ order: maybeOrder
213
+ }));
211
214
  return;
212
215
  }
213
216
  }