@velora-dex/widget 0.4.4-dev.1 → 0.4.4

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 (169) hide show
  1. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js +2 -2
  2. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
  3. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js +2 -2
  4. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js.map +1 -1
  5. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/utils.d.ts.map +1 -1
  6. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/utils.js.map +1 -1
  7. package/dist/components/widget/PayReceiveInfo/PayReceiveInfo.d.ts +1 -1
  8. package/dist/components/widget/PayReceiveInfo/PayReceiveInfo.d.ts.map +1 -1
  9. package/dist/components/widget/PayReceiveInfo/PayReceiveInfo.js +137 -87
  10. package/dist/components/widget/PayReceiveInfo/PayReceiveInfo.js.map +1 -1
  11. package/dist/components/widget/PayReceiveInfo/types.d.ts +5 -3
  12. package/dist/components/widget/PayReceiveInfo/types.d.ts.map +1 -1
  13. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.d.ts.map +1 -1
  14. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.js +2 -2
  15. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.js.map +1 -1
  16. package/dist/components/widget/SwapRate/SwapRate.d.ts +2 -2
  17. package/dist/components/widget/SwapRate/SwapRate.d.ts.map +1 -1
  18. package/dist/components/widget/SwapRate/SwapRate.js.map +1 -1
  19. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts +2 -2
  20. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
  21. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js +78 -69
  22. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
  23. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.d.ts +2 -2
  24. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.d.ts.map +1 -1
  25. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.js +14 -12
  26. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.js.map +1 -1
  27. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.d.ts +2 -2
  28. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.d.ts.map +1 -1
  29. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js +15 -13
  30. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js.map +1 -1
  31. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.d.ts +2 -2
  32. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.d.ts.map +1 -1
  33. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js +72 -63
  34. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js.map +1 -1
  35. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.d.ts +2 -2
  36. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.d.ts.map +1 -1
  37. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js +17 -15
  38. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js.map +1 -1
  39. package/dist/components/widget/TradeOverview/Step/utils.d.ts +2 -1
  40. package/dist/components/widget/TradeOverview/Step/utils.d.ts.map +1 -1
  41. package/dist/components/widget/TradeOverview/Step/utils.js +4 -2
  42. package/dist/components/widget/TradeOverview/Step/utils.js.map +1 -1
  43. package/dist/components/widget/TradeOverview/Stepper.d.ts +1 -1
  44. package/dist/components/widget/TradeOverview/Stepper.d.ts.map +1 -1
  45. package/dist/components/widget/TradeOverview/Stepper.js +59 -62
  46. package/dist/components/widget/TradeOverview/Stepper.js.map +1 -1
  47. package/dist/components/widget/TradeOverview/TradeDetails.d.ts.map +1 -1
  48. package/dist/components/widget/TradeOverview/TradeDetails.js +181 -13
  49. package/dist/components/widget/TradeOverview/TradeDetails.js.map +1 -1
  50. package/dist/components/widget/TradeOverview/TradeDetailsDisplay.js.map +1 -1
  51. package/dist/components/widget/TradeOverview/TradeError/TradeErrorFooter.d.ts +2 -2
  52. package/dist/components/widget/TradeOverview/TradeError/TradeErrorFooter.d.ts.map +1 -1
  53. package/dist/components/widget/TradeOverview/TradeError/TradeErrorFooter.js +4 -4
  54. package/dist/components/widget/TradeOverview/TradeError/TradeErrorFooter.js.map +1 -1
  55. package/dist/components/widget/TradeOverview/TradeOverview.d.ts +18 -2
  56. package/dist/components/widget/TradeOverview/TradeOverview.d.ts.map +1 -1
  57. package/dist/components/widget/TradeOverview/TradeOverview.js +145 -111
  58. package/dist/components/widget/TradeOverview/TradeOverview.js.map +1 -1
  59. package/dist/components/widget/TradeOverview/TradeOverviewFooter.d.ts +4 -1
  60. package/dist/components/widget/TradeOverview/TradeOverviewFooter.d.ts.map +1 -1
  61. package/dist/components/widget/TradeOverview/TradeOverviewFooter.js +74 -60
  62. package/dist/components/widget/TradeOverview/TradeOverviewFooter.js.map +1 -1
  63. package/dist/components/widget/TradeOverview/steps.d.ts +32 -0
  64. package/dist/components/widget/TradeOverview/steps.d.ts.map +1 -1
  65. package/dist/components/widget/TradeOverview/steps.js +12 -2
  66. package/dist/components/widget/TradeOverview/steps.js.map +1 -1
  67. package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts.map +1 -1
  68. package/dist/components/widget/TradeOverview/tradeFlowContext.js +13 -1
  69. package/dist/components/widget/TradeOverview/tradeFlowContext.js.map +1 -1
  70. package/dist/components/widget/TradeOverview/utils/isNonFlowStep.d.ts +4 -0
  71. package/dist/components/widget/TradeOverview/utils/isNonFlowStep.d.ts.map +1 -0
  72. package/dist/components/widget/TradeOverview/utils/isNonFlowStep.js +6 -0
  73. package/dist/components/widget/TradeOverview/utils/isNonFlowStep.js.map +1 -0
  74. package/dist/components/widget/TradeOverview/utils/preWrap.d.ts +1 -1
  75. package/dist/components/widget/TradeOverview/utils/preWrap.d.ts.map +1 -1
  76. package/dist/components/widget/TradeOverview/utils/preWrap.js +2 -2
  77. package/dist/components/widget/TradeOverview/utils/preWrap.js.map +1 -1
  78. package/dist/components/widget/TransactionDetails/LimitOrderDetails/utils.d.ts.map +1 -1
  79. package/dist/components/widget/TransactionDetails/LimitOrderDetails/utils.js.map +1 -1
  80. package/dist/configurator/Configurator.d.ts.map +1 -1
  81. package/dist/core/inputs/hooks/useMaxButtonProps.js +2 -2
  82. package/dist/core/inputs/hooks/useMaxButtonProps.js.map +1 -1
  83. package/dist/core/inputs/hooks/useTokenFromInputProps.js +2 -2
  84. package/dist/core/inputs/hooks/useTokenFromInputProps.js.map +1 -1
  85. package/dist/core/limit/useLimitRate.d.ts.map +1 -1
  86. package/dist/core/limit/useLimitRate.js +36 -53
  87. package/dist/core/limit/useLimitRate.js.map +1 -1
  88. package/dist/core/limit/useLimitTokenFromInputProps.js +2 -2
  89. package/dist/core/limit/useLimitTokenFromInputProps.js.map +1 -1
  90. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.d.ts.map +1 -1
  91. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js +9 -8
  92. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js.map +1 -1
  93. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts +23 -10
  94. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts.map +1 -1
  95. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js +82 -36
  96. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js.map +1 -1
  97. package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.d.ts +2 -2
  98. package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.d.ts.map +1 -1
  99. package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.js.map +1 -1
  100. package/dist/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.d.ts +6 -2
  101. package/dist/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.d.ts.map +1 -1
  102. package/dist/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.js.map +1 -1
  103. package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.js.map +1 -1
  104. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +1 -27
  105. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
  106. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js +1 -27
  107. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js.map +1 -1
  108. package/dist/hooks/swap/prices/usePricesParams.d.ts +5 -0
  109. package/dist/hooks/swap/prices/usePricesParams.d.ts.map +1 -1
  110. package/dist/hooks/swap/prices/usePricesParams.js +21 -1
  111. package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
  112. package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
  113. package/dist/hooks/swap/prices/useSwapPrices.js +67 -72
  114. package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
  115. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts.map +1 -1
  116. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js +35 -35
  117. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js.map +1 -1
  118. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.d.ts +2 -2
  119. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.d.ts.map +1 -1
  120. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js +2 -22
  121. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js.map +1 -1
  122. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts +2 -2
  123. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts.map +1 -1
  124. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js.map +1 -1
  125. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +3 -1
  126. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
  127. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +72 -27
  128. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  129. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts +3 -1
  130. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts.map +1 -1
  131. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js +178 -85
  132. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
  133. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +1 -0
  134. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
  135. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +17 -15
  136. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
  137. package/dist/hooks/swap/tradeFlow/useLimitOrderStep.d.ts.map +1 -1
  138. package/dist/hooks/swap/tradeFlow/useLimitOrderStep.js +2 -1
  139. package/dist/hooks/swap/tradeFlow/useLimitOrderStep.js.map +1 -1
  140. package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts +2 -1
  141. package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts.map +1 -1
  142. package/dist/hooks/swap/tradeFlow/useMarketFlow.js +37 -11
  143. package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
  144. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts +2 -0
  145. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts.map +1 -1
  146. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js +161 -79
  147. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
  148. package/dist/hooks/tokens/allowance/utils.d.ts +10 -2
  149. package/dist/hooks/tokens/allowance/utils.d.ts.map +1 -1
  150. package/dist/hooks/tokens/allowance/utils.js +19 -8
  151. package/dist/hooks/tokens/allowance/utils.js.map +1 -1
  152. package/dist/hooks/useSDK.d.ts +1 -1
  153. package/dist/hooks/useSDK.d.ts.map +1 -1
  154. package/dist/hooks/useSDK.js +1 -1
  155. package/dist/hooks/useSDK.js.map +1 -1
  156. package/dist/lib/constants/index.d.ts +1 -1
  157. package/dist/lib/constants/index.js +2 -2
  158. package/dist/lib/constants/index.js.map +1 -1
  159. package/dist/lib/constants/urls.d.ts.map +1 -1
  160. package/dist/lib/constants/urls.js.map +1 -1
  161. package/dist/lib/utils/fee.js +1 -1
  162. package/dist/lib/utils/fee.js.map +1 -1
  163. package/dist/lib/utils/slippage.d.ts.map +1 -1
  164. package/dist/lib/utils/slippage.js +1 -1
  165. package/dist/lib/utils/slippage.js.map +1 -1
  166. package/dist/lib/utils/toDecimal.d.ts.map +1 -1
  167. package/dist/lib/utils/toDecimal.js +5 -3
  168. package/dist/lib/utils/toDecimal.js.map +1 -1
  169. package/package.json +1 -1
@@ -81,11 +81,11 @@ function useOtcOrderFlow({
81
81
  error: createOrderMut.error
82
82
  };
83
83
  const limitOrderQuery = useLimitOrderByHashQuery({
84
- orderParams: createOrderMut.data?.orderHash
84
+ orderParams: otcOrderSubmission.order?.orderHash
85
85
  });
86
- const cancelOrderEvents = useCancelOtcOrderEventCallbacks(createOrderMut.data);
86
+ const cancelOrderEvents = useCancelOtcOrderEventCallbacks(otcOrderSubmission.order);
87
87
  const queryClient = useQueryClient();
88
- const orderChainId = createOrderMut.data?.chainId;
88
+ const orderChainId = otcOrderSubmission.order?.chainId;
89
89
  const {
90
90
  forcedChainMatchesWalletChain
91
91
  } = useChainMatches(orderChainId);
@@ -108,9 +108,9 @@ function useOtcOrderFlow({
108
108
  },
109
109
  onSuccess: (txReceipt, vars) => {
110
110
  logger.log("Cancel Order success", txReceipt);
111
- if (createOrderMut.data?.orderHash) {
111
+ if (otcOrderSubmission.order?.orderHash) {
112
112
  queryClient.refetchQueries({
113
- queryKey: limitOrderByHashQueryKey(createOrderMut.data.orderHash)
113
+ queryKey: limitOrderByHashQueryKey(otcOrderSubmission.order.orderHash)
114
114
  });
115
115
  }
116
116
  cancelOrderEvents.onSuccess?.(txReceipt, vars);
@@ -320,9 +320,10 @@ function useOtcOrderFlow({
320
320
  });
321
321
  const runOtcOrderFlow = otcOrderMut.mutateAsync;
322
322
  const cancelOtcOrder = async () => {
323
- assert(createOrderMut.data, "No order to cancel");
323
+ const orderToCancel = otcOrderSubmission.order;
324
+ assert(orderToCancel, "No order to cancel");
324
325
  return cancelOrderMut.mutateAsync({
325
- orderHash: createOrderMut.data.orderHash,
326
+ orderHash: orderToCancel.orderHash,
326
327
  onTxSent: ({
327
328
  chainId: chainId_0,
328
329
  transactionHash,
@@ -333,7 +334,7 @@ function useOtcOrderFlow({
333
334
  action: "cancelOtcOrder",
334
335
  transactionSpecificData: {
335
336
  action: "cancelOtcOrder",
336
- cancelledOrder: createOrderMut.data
337
+ cancelledOrder: orderToCancel
337
338
  },
338
339
  receiptPromise
339
340
  })
@@ -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\";\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 chainId,\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
+ {"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 chainId,\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: otcOrderSubmission.order?.orderHash,\n });\n\n const cancelOrderEvents = useCancelOtcOrderEventCallbacks(\n otcOrderSubmission.order\n );\n const queryClient = useQueryClient();\n\n const orderChainId = otcOrderSubmission.order?.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 (otcOrderSubmission.order?.orderHash) {\n queryClient.refetchQueries({\n queryKey: limitOrderByHashQueryKey(\n otcOrderSubmission.order.orderHash\n ),\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 const orderToCancel = otcOrderSubmission.order;\n assert(orderToCancel, \"No order to cancel\");\n return cancelOrderMut.mutateAsync({\n orderHash: orderToCancel.orderHash,\n onTxSent: ({ chainId, transactionHash, receiptPromise }) =>\n handleTxSent({\n chainId,\n transactionHash,\n action: \"cancelOtcOrder\",\n transactionSpecificData: {\n action: \"cancelOtcOrder\",\n cancelledOrder: orderToCancel,\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","orderToCancel","handleTxSent","cancelledOrder","retryFlow","options","result"],"mappings":"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"}
@@ -1,24 +1,37 @@
1
- import { UseMutationOptions, UseMutationResult } from '@tanstack/react-query';
1
+ import { UseMutationOptions } from '@tanstack/react-query';
2
2
  import { BuildDeltaOrderDataParams, MinViemClient } from '@velora-dex/sdk';
3
3
  import { Address } from 'viem';
4
4
  import { SubmittedDeltaOrderFromAPI } from '../queries/useDeltaOrders';
5
5
  import { SupportedChainId } from '../../../../../lib/web3/wagmi/types';
6
- type CreateDeltaOrderParams = BuildDeltaOrderDataParams;
7
- type CreateDeltaOrderReturn = SubmittedDeltaOrderFromAPI;
8
- export type CreateDeltaOrderInput = {
9
- orderInput: CreateDeltaOrderParams;
6
+ type CreateAndSubmitDeltaOrderParams = BuildDeltaOrderDataParams;
7
+ type CreateAndSubmitDeltaOrderReturn = SubmittedDeltaOrderFromAPI;
8
+ export type CreateAndSubmitDeltaOrderInput = {
9
+ orderInput: CreateAndSubmitDeltaOrderParams;
10
10
  referrerAddress?: string;
11
11
  signal?: AbortSignal;
12
12
  type?: "MARKET" | "LIMIT";
13
13
  };
14
- type CreateDeltaOrderMutationOptions = Omit<UseMutationOptions<CreateDeltaOrderReturn, Error, CreateDeltaOrderInput, void>, "mutationFn">;
15
- type CreateDeltaOrderMutInput = {
16
- mutationOptions?: CreateDeltaOrderMutationOptions;
14
+ type CreateAndSubmitDeltaOrderMutationOptions = Omit<UseMutationOptions<CreateAndSubmitDeltaOrderReturn, Error, CreateAndSubmitDeltaOrderInput, void>, "mutationFn">;
15
+ type CreateAndSubmitDeltaOrderMutInput = {
16
+ mutationOptions?: CreateAndSubmitDeltaOrderMutationOptions;
17
17
  chainId: SupportedChainId;
18
18
  account?: Address;
19
19
  client?: MinViemClient;
20
20
  };
21
- export declare const DELTA_ORDER_MUTATION_KEY = "createDeltaOrder";
22
- export declare function useCreateDeltaOrder({ mutationOptions, chainId, account, client, }: CreateDeltaOrderMutInput): UseMutationResult<CreateDeltaOrderReturn, Error, CreateDeltaOrderInput, void>;
21
+ type CreateAndSubmitDeltaOrderResult = {
22
+ mutate: (variables: CreateAndSubmitDeltaOrderInput) => void;
23
+ mutateAsync: (variables: CreateAndSubmitDeltaOrderInput) => Promise<SubmittedDeltaOrderFromAPI>;
24
+ reset: () => void;
25
+ order?: SubmittedDeltaOrderFromAPI;
26
+ isPostingOrder: boolean;
27
+ isCreatingOrder: boolean;
28
+ isOrderSent: boolean;
29
+ isPending: boolean;
30
+ isError: boolean;
31
+ isSuccess: boolean;
32
+ error: Error | null;
33
+ };
34
+ export declare const DELTA_ORDER_MUTATION_KEY = "createAndSubmitDeltaOrder";
35
+ export declare function useCreateAndSubmitDeltaOrder({ mutationOptions, chainId, account, client, }: CreateAndSubmitDeltaOrderMutInput): CreateAndSubmitDeltaOrderResult;
23
36
  export {};
24
37
  //# sourceMappingURL=useCreateDeltaOrder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useCreateDeltaOrder.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACvB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,yBAAyB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,2BAA2B,CAAC;AAEnC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,KAAK,sBAAsB,GAAG,yBAAyB,CAAC;AACxD,KAAK,sBAAsB,GAAG,0BAA0B,CAAC;AAEzD,MAAM,MAAM,qBAAqB,GAAG;IAClC,UAAU,EAAE,sBAAsB,CAAC;IACnC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;CAC3B,CAAC;AAEF,KAAK,+BAA+B,GAAG,IAAI,CACzC,kBAAkB,CAChB,sBAAsB,EACtB,KAAK,EACL,qBAAqB,EACrB,IAAI,CACL,EACD,YAAY,CACb,CAAC;AAEF,KAAK,wBAAwB,GAAG;IAC9B,eAAe,CAAC,EAAE,+BAA+B,CAAC;IAClD,OAAO,EAAE,gBAAgB,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,wBAAwB,qBAAqB,CAAC;AAE3D,wBAAgB,mBAAmB,CAAC,EAClC,eAAe,EACf,OAAO,EACP,OAAO,EACP,MAAM,GACP,EAAE,wBAAwB,GAAG,iBAAiB,CAC7C,sBAAsB,EACtB,KAAK,EACL,qBAAqB,EACrB,IAAI,CACL,CAgEA"}
1
+ {"version":3,"file":"useCreateDeltaOrder.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,kBAAkB,EACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,yBAAyB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,2BAA2B,CAAC;AAEnC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG/D,KAAK,+BAA+B,GAAG,yBAAyB,CAAC;AACjE,KAAK,+BAA+B,GAAG,0BAA0B,CAAC;AAElE,MAAM,MAAM,8BAA8B,GAAG;IAC3C,UAAU,EAAE,+BAA+B,CAAC;IAC5C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;CAC3B,CAAC;AAEF,KAAK,wCAAwC,GAAG,IAAI,CAClD,kBAAkB,CAChB,+BAA+B,EAC/B,KAAK,EACL,8BAA8B,EAC9B,IAAI,CACL,EACD,YAAY,CACb,CAAC;AAEF,KAAK,iCAAiC,GAAG;IACvC,eAAe,CAAC,EAAE,wCAAwC,CAAC;IAC3D,OAAO,EAAE,gBAAgB,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB,CAAC;AAEF,KAAK,+BAA+B,GAAG;IACrC,MAAM,EAAE,CAAC,SAAS,EAAE,8BAA8B,KAAK,IAAI,CAAC;IAC5D,WAAW,EAAE,CACX,SAAS,EAAE,8BAA8B,KACtC,OAAO,CAAC,0BAA0B,CAAC,CAAC;IACzC,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,KAAK,CAAC,EAAE,0BAA0B,CAAC;IACnC,cAAc,EAAE,OAAO,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;IACzB,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,wBAAwB,8BAA8B,CAAC;AAEpE,wBAAgB,4BAA4B,CAAC,EAC3C,eAAe,EACf,OAAO,EACP,OAAO,EACP,MAAM,GACP,EAAE,iCAAiC,GAAG,+BAA+B,CAkFrE"}
@@ -4,10 +4,11 @@ import { useQueryClient, useMutation } from '@tanstack/react-query';
4
4
  import { assert } from 'ts-essentials';
5
5
  import { deltaOrdersQueryKey } from '../queries/useDeltaOrders.js';
6
6
  import { deltaLimitOrderRequiredBalanceQueryKey } from '../queries/useDeltaLimitOrderRequiredBalance.js';
7
+ import { usePostDeltaOrder } from './usePostDeltaOrder.js';
7
8
 
8
- const DELTA_ORDER_MUTATION_KEY = "createDeltaOrder";
9
- function useCreateDeltaOrder(t0) {
10
- const $ = distExports.c(16);
9
+ const DELTA_ORDER_MUTATION_KEY = "createAndSubmitDeltaOrder";
10
+ function useCreateAndSubmitDeltaOrder(t0) {
11
+ const $ = distExports.c(31);
11
12
  const {
12
13
  mutationOptions,
13
14
  chainId,
@@ -33,28 +34,43 @@ function useCreateDeltaOrder(t0) {
33
34
  } = useDeltaSDK(t1);
34
35
  const queryClient = useQueryClient();
35
36
  let t2;
36
- if ($[4] === Symbol.for("react.memo_cache_sentinel")) {
37
- t2 = [DELTA_ORDER_MUTATION_KEY];
38
- $[4] = t2;
37
+ if ($[4] !== account || $[5] !== chainId || $[6] !== client) {
38
+ t2 = {
39
+ chainId,
40
+ account,
41
+ client
42
+ };
43
+ $[4] = account;
44
+ $[5] = chainId;
45
+ $[6] = client;
46
+ $[7] = t2;
39
47
  } else {
40
- t2 = $[4];
48
+ t2 = $[7];
41
49
  }
50
+ const postOrderMut = usePostDeltaOrder(t2);
42
51
  let t3;
43
- if ($[5] !== sdk) {
44
- t3 = async (t42) => {
52
+ if ($[8] === Symbol.for("react.memo_cache_sentinel")) {
53
+ t3 = [DELTA_ORDER_MUTATION_KEY];
54
+ $[8] = t3;
55
+ } else {
56
+ t3 = $[8];
57
+ }
58
+ let t4;
59
+ if ($[9] !== postOrderMut || $[10] !== sdk) {
60
+ t4 = async (t52) => {
45
61
  const {
46
62
  orderInput,
47
63
  referrerAddress,
48
64
  signal,
49
65
  type
50
- } = t42;
66
+ } = t52;
51
67
  signal?.throwIfAborted();
52
68
  assert("signDeltaOrder" in sdk, "signDeltaOrder is not available on this SDK");
53
69
  const signableTypedData = await sdk.buildDeltaOrder(orderInput);
54
70
  signal?.throwIfAborted();
55
71
  const signature = await sdk.signDeltaOrder(signableTypedData);
56
72
  signal?.throwIfAborted();
57
- const orderFromAPI = await sdk.postDeltaOrder({
73
+ const orderFromAPI = await postOrderMut.mutateAsync({
58
74
  signature,
59
75
  order: signableTypedData.data,
60
76
  partner: orderInput.partner,
@@ -63,14 +79,15 @@ function useCreateDeltaOrder(t0) {
63
79
  });
64
80
  return orderFromAPI;
65
81
  };
66
- $[5] = sdk;
67
- $[6] = t3;
82
+ $[9] = postOrderMut;
83
+ $[10] = sdk;
84
+ $[11] = t4;
68
85
  } else {
69
- t3 = $[6];
86
+ t4 = $[11];
70
87
  }
71
- let t4;
72
- if ($[7] !== account || $[8] !== chainId || $[9] !== mutationOptions || $[10] !== queryClient) {
73
- t4 = (order, variables, onMutationResult, context) => {
88
+ let t5;
89
+ if ($[12] !== account || $[13] !== chainId || $[14] !== mutationOptions || $[15] !== queryClient) {
90
+ t5 = (order, variables, onMutationResult, context) => {
74
91
  queryClient.invalidateQueries({
75
92
  queryKey: deltaOrdersQueryKey({
76
93
  userAddress: order.user
@@ -86,31 +103,60 @@ function useCreateDeltaOrder(t0) {
86
103
  });
87
104
  mutationOptions?.onSuccess?.(order, variables, onMutationResult, context);
88
105
  };
89
- $[7] = account;
90
- $[8] = chainId;
91
- $[9] = mutationOptions;
92
- $[10] = queryClient;
93
- $[11] = t4;
106
+ $[12] = account;
107
+ $[13] = chainId;
108
+ $[14] = mutationOptions;
109
+ $[15] = queryClient;
110
+ $[16] = t5;
94
111
  } else {
95
- t4 = $[11];
112
+ t5 = $[16];
96
113
  }
97
- let t5;
98
- if ($[12] !== mutationOptions || $[13] !== t3 || $[14] !== t4) {
99
- t5 = {
100
- mutationKey: t2,
101
- mutationFn: t3,
114
+ let t6;
115
+ if ($[17] !== mutationOptions || $[18] !== t4 || $[19] !== t5) {
116
+ t6 = {
117
+ mutationKey: t3,
118
+ mutationFn: t4,
102
119
  ...mutationOptions,
103
- onSuccess: t4
120
+ onSuccess: t5
121
+ };
122
+ $[17] = mutationOptions;
123
+ $[18] = t4;
124
+ $[19] = t5;
125
+ $[20] = t6;
126
+ } else {
127
+ t6 = $[20];
128
+ }
129
+ const createOrderMut = useMutation(t6);
130
+ let t7;
131
+ if ($[21] !== createOrderMut.data || $[22] !== createOrderMut.error || $[23] !== createOrderMut.isError || $[24] !== createOrderMut.isPending || $[25] !== createOrderMut.isSuccess || $[26] !== createOrderMut.mutate || $[27] !== createOrderMut.mutateAsync || $[28] !== createOrderMut.reset || $[29] !== postOrderMut.isPending) {
132
+ t7 = {
133
+ mutate: createOrderMut.mutate,
134
+ mutateAsync: createOrderMut.mutateAsync,
135
+ reset: createOrderMut.reset,
136
+ order: createOrderMut.data,
137
+ isPostingOrder: postOrderMut.isPending,
138
+ isCreatingOrder: createOrderMut.isPending,
139
+ isOrderSent: createOrderMut.isSuccess,
140
+ isPending: createOrderMut.isPending,
141
+ isError: createOrderMut.isError,
142
+ isSuccess: createOrderMut.isSuccess,
143
+ error: createOrderMut.error
104
144
  };
105
- $[12] = mutationOptions;
106
- $[13] = t3;
107
- $[14] = t4;
108
- $[15] = t5;
145
+ $[21] = createOrderMut.data;
146
+ $[22] = createOrderMut.error;
147
+ $[23] = createOrderMut.isError;
148
+ $[24] = createOrderMut.isPending;
149
+ $[25] = createOrderMut.isSuccess;
150
+ $[26] = createOrderMut.mutate;
151
+ $[27] = createOrderMut.mutateAsync;
152
+ $[28] = createOrderMut.reset;
153
+ $[29] = postOrderMut.isPending;
154
+ $[30] = t7;
109
155
  } else {
110
- t5 = $[15];
156
+ t7 = $[30];
111
157
  }
112
- return useMutation(t5);
158
+ return t7;
113
159
  }
114
160
 
115
- export { DELTA_ORDER_MUTATION_KEY, useCreateDeltaOrder };
161
+ export { DELTA_ORDER_MUTATION_KEY, useCreateAndSubmitDeltaOrder };
116
162
  //# sourceMappingURL=useCreateDeltaOrder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useCreateDeltaOrder.js","sources":["../../../../../../src/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.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 { BuildDeltaOrderDataParams, MinViemClient } from \"@velora-dex/sdk\";\nimport { assert } from \"ts-essentials\";\nimport type { Address } from \"viem\";\nimport {\n deltaOrdersQueryKey,\n type SubmittedDeltaOrderFromAPI,\n} from \"../queries/useDeltaOrders\";\nimport { deltaLimitOrderRequiredBalanceQueryKey } from \"../queries/useDeltaLimitOrderRequiredBalance\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\n\ntype CreateDeltaOrderParams = BuildDeltaOrderDataParams;\ntype CreateDeltaOrderReturn = SubmittedDeltaOrderFromAPI;\n\nexport type CreateDeltaOrderInput = {\n orderInput: CreateDeltaOrderParams;\n referrerAddress?: string;\n signal?: AbortSignal; // since we have separate actions, we can abort in-between\n type?: \"MARKET\" | \"LIMIT\"; // defaults to MARKET in SDK\n};\n\ntype CreateDeltaOrderMutationOptions = Omit<\n UseMutationOptions<\n CreateDeltaOrderReturn,\n Error,\n CreateDeltaOrderInput,\n void\n >,\n \"mutationFn\"\n>;\n\ntype CreateDeltaOrderMutInput = {\n mutationOptions?: CreateDeltaOrderMutationOptions;\n chainId: SupportedChainId;\n account?: Address;\n client?: MinViemClient;\n};\n\nexport const DELTA_ORDER_MUTATION_KEY = \"createDeltaOrder\";\n\nexport function useCreateDeltaOrder({\n mutationOptions,\n chainId,\n account,\n client,\n}: CreateDeltaOrderMutInput): UseMutationResult<\n CreateDeltaOrderReturn,\n Error,\n CreateDeltaOrderInput,\n void\n> {\n const { sdk } = useDeltaSDK({ chainId, account, client });\n const queryClient = useQueryClient();\n\n return useMutation<\n CreateDeltaOrderReturn,\n Error,\n CreateDeltaOrderInput,\n void\n >({\n mutationKey: [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(\n \"signDeltaOrder\" in sdk,\n \"signDeltaOrder is not available on this SDK\"\n );\n // Note: This mutation requires the SDK to be initialized with account and client\n // to access signDeltaOrder functionality\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: Sign the Delta order (only available on full DeltaSDK, not ReadOnlyDeltaSDK)\n const signature = await sdk.signDeltaOrder(signableTypedData);\n\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n // Step 3: Submit the Delta order to the API\n const orderFromAPI = await sdk.postDeltaOrder({\n signature,\n order: signableTypedData.data,\n partner: orderInput.partner,\n referrerAddress,\n type,\n });\n\n return orderFromAPI;\n },\n ...mutationOptions,\n onSuccess: (order, variables, onMutationResult, context) => {\n queryClient.invalidateQueries({\n queryKey: deltaOrdersQueryKey({\n userAddress: order.user,\n }),\n exact: false,\n });\n queryClient.invalidateQueries({\n queryKey: deltaLimitOrderRequiredBalanceQueryKey({\n chainId,\n account,\n tokenAddress: order.order.srcToken,\n }),\n });\n\n mutationOptions?.onSuccess?.(order, variables, onMutationResult, context);\n },\n });\n}\n"],"names":["DELTA_ORDER_MUTATION_KEY","useCreateDeltaOrder","t0","$","_c","mutationOptions","chainId","account","client","t1","sdk","useDeltaSDK","queryClient","useQueryClient","t2","Symbol","for","t3","t4","orderInput","referrerAddress","signal","type","throwIfAborted","assert","signableTypedData","buildDeltaOrder","signature","signDeltaOrder","orderFromAPI","postDeltaOrder","order","data","partner","variables","onMutationResult","context","invalidateQueries","queryKey","deltaOrdersQueryKey","userAddress","user","exact","deltaLimitOrderRequiredBalanceQueryKey","tokenAddress","srcToken","onSuccess","t5","mutationKey","mutationFn","useMutation"],"mappings":"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"}
1
+ {"version":3,"file":"useCreateDeltaOrder.js","sources":["../../../../../../src/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.ts"],"sourcesContent":["import { useDeltaSDK } from \"@/hooks/useSDK\";\nimport {\n useMutation,\n useQueryClient,\n type UseMutationOptions,\n} from \"@tanstack/react-query\";\nimport type { BuildDeltaOrderDataParams, MinViemClient } from \"@velora-dex/sdk\";\nimport { assert } from \"ts-essentials\";\nimport type { Address } from \"viem\";\nimport {\n deltaOrdersQueryKey,\n type SubmittedDeltaOrderFromAPI,\n} from \"../queries/useDeltaOrders\";\nimport { deltaLimitOrderRequiredBalanceQueryKey } from \"../queries/useDeltaLimitOrderRequiredBalance\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { usePostDeltaOrder } from \"./usePostDeltaOrder\";\n\ntype CreateAndSubmitDeltaOrderParams = BuildDeltaOrderDataParams;\ntype CreateAndSubmitDeltaOrderReturn = SubmittedDeltaOrderFromAPI;\n\nexport type CreateAndSubmitDeltaOrderInput = {\n orderInput: CreateAndSubmitDeltaOrderParams;\n referrerAddress?: string;\n signal?: AbortSignal; // since we have separate actions, we can abort in-between\n type?: \"MARKET\" | \"LIMIT\"; // defaults to MARKET in SDK\n};\n\ntype CreateAndSubmitDeltaOrderMutationOptions = Omit<\n UseMutationOptions<\n CreateAndSubmitDeltaOrderReturn,\n Error,\n CreateAndSubmitDeltaOrderInput,\n void\n >,\n \"mutationFn\"\n>;\n\ntype CreateAndSubmitDeltaOrderMutInput = {\n mutationOptions?: CreateAndSubmitDeltaOrderMutationOptions;\n chainId: SupportedChainId;\n account?: Address;\n client?: MinViemClient;\n};\n\ntype CreateAndSubmitDeltaOrderResult = {\n mutate: (variables: CreateAndSubmitDeltaOrderInput) => void;\n mutateAsync: (\n variables: CreateAndSubmitDeltaOrderInput\n ) => Promise<SubmittedDeltaOrderFromAPI>;\n reset: () => void;\n order?: SubmittedDeltaOrderFromAPI;\n isPostingOrder: boolean;\n isCreatingOrder: boolean;\n isOrderSent: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n};\n\nexport const DELTA_ORDER_MUTATION_KEY = \"createAndSubmitDeltaOrder\";\n\nexport function useCreateAndSubmitDeltaOrder({\n mutationOptions,\n chainId,\n account,\n client,\n}: CreateAndSubmitDeltaOrderMutInput): CreateAndSubmitDeltaOrderResult {\n const { sdk } = useDeltaSDK({ chainId, account, client });\n const queryClient = useQueryClient();\n\n const postOrderMut = usePostDeltaOrder({ chainId, account, client });\n\n const createOrderMut = useMutation<\n CreateAndSubmitDeltaOrderReturn,\n Error,\n CreateAndSubmitDeltaOrderInput,\n void\n >({\n mutationKey: [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(\n \"signDeltaOrder\" in sdk,\n \"signDeltaOrder is not available on this SDK\"\n );\n // Note: This mutation requires the SDK to be initialized with account and client\n // to access signDeltaOrder functionality\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: Sign the Delta order (only available on full DeltaSDK, not ReadOnlyDeltaSDK)\n const signature = await sdk.signDeltaOrder(signableTypedData);\n\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n // Step 3: Submit the Delta order to the API\n const orderFromAPI = await postOrderMut.mutateAsync({\n signature,\n order: signableTypedData.data,\n partner: orderInput.partner,\n referrerAddress,\n type,\n });\n\n return orderFromAPI;\n },\n ...mutationOptions,\n onSuccess: (order, variables, onMutationResult, context) => {\n queryClient.invalidateQueries({\n queryKey: deltaOrdersQueryKey({\n userAddress: order.user,\n }),\n exact: false,\n });\n queryClient.invalidateQueries({\n queryKey: deltaLimitOrderRequiredBalanceQueryKey({\n chainId,\n account,\n tokenAddress: order.order.srcToken,\n }),\n });\n\n mutationOptions?.onSuccess?.(order, variables, onMutationResult, context);\n },\n });\n\n return {\n mutate: createOrderMut.mutate,\n mutateAsync: createOrderMut.mutateAsync,\n reset: createOrderMut.reset,\n\n order: createOrderMut.data,\n isPostingOrder: postOrderMut.isPending,\n isCreatingOrder: createOrderMut.isPending,\n isOrderSent: createOrderMut.isSuccess,\n\n isPending: createOrderMut.isPending,\n isError: createOrderMut.isError,\n isSuccess: createOrderMut.isSuccess,\n error: createOrderMut.error,\n };\n}\n"],"names":["DELTA_ORDER_MUTATION_KEY","useCreateAndSubmitDeltaOrder","t0","$","_c","mutationOptions","chainId","account","client","t1","sdk","useDeltaSDK","queryClient","useQueryClient","t2","postOrderMut","usePostDeltaOrder","t3","Symbol","for","t4","t5","orderInput","referrerAddress","signal","type","throwIfAborted","assert","signableTypedData","buildDeltaOrder","signature","signDeltaOrder","orderFromAPI","mutateAsync","order","data","partner","variables","onMutationResult","context","invalidateQueries","queryKey","deltaOrdersQueryKey","userAddress","user","exact","deltaLimitOrderRequiredBalanceQueryKey","tokenAddress","srcToken","onSuccess","t6","mutationKey","mutationFn","createOrderMut","useMutation","t7","error","isError","isPending","isSuccess","mutate","reset","isPostingOrder","isCreatingOrder","isOrderSent"],"mappings":"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"}
@@ -2,12 +2,12 @@ import { UseMutationOptions, UseMutationResult } from '@tanstack/react-query';
2
2
  import { MinViemClient } from '@velora-dex/sdk';
3
3
  import { Hex } from 'viem';
4
4
  import { PreSignDeltaOrderToPost } from './types';
5
- import { CreateDeltaOrderInput } from './useCreateDeltaOrder';
5
+ import { CreateAndSubmitDeltaOrderInput } from './useCreateDeltaOrder';
6
6
  type CreatePreSignableDeltaOrderReturn = {
7
7
  orderToPost: PreSignDeltaOrderToPost;
8
8
  preSignCalldata: Hex;
9
9
  };
10
- type CreatePreSignableDeltaOrderInput = CreateDeltaOrderInput;
10
+ type CreatePreSignableDeltaOrderInput = CreateAndSubmitDeltaOrderInput;
11
11
  type CreatePreSignableDeltaOrderMutationOptions = Omit<UseMutationOptions<CreatePreSignableDeltaOrderReturn, Error, CreatePreSignableDeltaOrderInput, void>, "mutationFn">;
12
12
  type CreateDeltaOrderMutInput = {
13
13
  mutationOptions?: CreatePreSignableDeltaOrderMutationOptions;
@@ -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,uBAAuB,EAAE,MAAM,SAAS,CAAC;AACvD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAGnE,KAAK,iCAAiC,GAAG;IACvC,WAAW,EAAE,uBAAuB,CAAC;IACrC,eAAe,EAAE,GAAG,CAAC;CACtB,CAAC;AAEF,KAAK,gCAAgC,GAAG,qBAAqB,CAAC;AAE9D,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,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,CAsCA"}
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,uBAAuB,EAAE,MAAM,SAAS,CAAC;AACvD,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AAG5E,KAAK,iCAAiC,GAAG;IACvC,WAAW,EAAE,uBAAuB,CAAC;IACrC,eAAe,EAAE,GAAG,CAAC;CACtB,CAAC;AAEF,KAAK,gCAAgC,GAAG,8BAA8B,CAAC;AAEvE,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,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,CAsCA"}
@@ -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 { PreSignDeltaOrderToPost } from \"./types\";\nimport type { CreateDeltaOrderInput } from \"./useCreateDeltaOrder\";\nimport { buildPreSignOrderPayload } from \"./utils\";\n\ntype CreatePreSignableDeltaOrderReturn = {\n orderToPost: PreSignDeltaOrderToPost;\n preSignCalldata: Hex;\n};\n\ntype 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 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 const orderToPost = await buildPreSignOrderPayload({\n sdk,\n orderInput,\n chainId,\n referrerAddress,\n type,\n });\n\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n // Step 4: Gather calldata to make a setPreSignature request\n const preSignCalldata = await sdk.setDeltaOrderPreSignature(\n orderToPost.orderHash\n );\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","orderToPost","buildPreSignOrderPayload","preSignCalldata","setDeltaOrderPreSignature","orderHash","mutationKey","mutationFn","useMutation"],"mappings":"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"}
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 { PreSignDeltaOrderToPost } from \"./types\";\nimport type { CreateAndSubmitDeltaOrderInput } from \"./useCreateDeltaOrder\";\nimport { buildPreSignOrderPayload } from \"./utils\";\n\ntype CreatePreSignableDeltaOrderReturn = {\n orderToPost: PreSignDeltaOrderToPost;\n preSignCalldata: Hex;\n};\n\ntype CreatePreSignableDeltaOrderInput = CreateAndSubmitDeltaOrderInput;\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 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 const orderToPost = await buildPreSignOrderPayload({\n sdk,\n orderInput,\n chainId,\n referrerAddress,\n type,\n });\n\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n // Step 4: Gather calldata to make a setPreSignature request\n const preSignCalldata = await sdk.setDeltaOrderPreSignature(\n orderToPost.orderHash\n );\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","orderToPost","buildPreSignOrderPayload","preSignCalldata","setDeltaOrderPreSignature","orderHash","mutationKey","mutationFn","useMutation"],"mappings":"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"}
@@ -1,14 +1,18 @@
1
1
  import { UseMutationOptions, UseMutationResult } from '@tanstack/react-query';
2
- import { CreateDeltaOrderInput } from './useCreateDeltaOrder';
2
+ import { CreateAndSubmitDeltaOrderInput } from './useCreateDeltaOrder';
3
3
  import { MinViemClient } from '@velora-dex/sdk';
4
4
  import { PreSignDeltaOrderToPost } from './types';
5
5
  type DeltaOrderToPostResult = PreSignDeltaOrderToPost;
6
- type DeltaOrderToPostInput = CreateDeltaOrderInput;
6
+ type DeltaOrderToPostInput = CreateAndSubmitDeltaOrderInput;
7
7
  type UseDeltaOrderToPostInput = {
8
8
  mutationOptions?: Omit<UseMutationOptions<DeltaOrderToPostResult, Error, DeltaOrderToPostInput, void>, "mutationFn">;
9
9
  chainId: number;
10
10
  client?: MinViemClient;
11
11
  };
12
+ /**
13
+ Creates the payload to post a Delta Order with 0x signature.
14
+ Primary for depositAndPreSign mutation.
15
+ */
12
16
  export declare function useDeltaOrderToPost({ mutationOptions, chainId, client, }: UseDeltaOrderToPostInput): UseMutationResult<DeltaOrderToPostResult, Error, DeltaOrderToPostInput, void>;
13
17
  export {};
14
18
  //# sourceMappingURL=useDeltaOrderToPost.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useDeltaOrderToPost.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EAEvB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAGvD,KAAK,sBAAsB,GAAG,uBAAuB,CAAC;AACtD,KAAK,qBAAqB,GAAG,qBAAqB,CAAC;AAEnD,KAAK,wBAAwB,GAAG;IAC9B,eAAe,CAAC,EAAE,IAAI,CACpB,kBAAkB,CAChB,sBAAsB,EACtB,KAAK,EACL,qBAAqB,EACrB,IAAI,CACL,EACD,YAAY,CACb,CAAC;IACF,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,EAClC,eAAe,EACf,OAAO,EACP,MAAM,GACP,EAAE,wBAAwB,GAAG,iBAAiB,CAC7C,sBAAsB,EACtB,KAAK,EACL,qBAAqB,EACrB,IAAI,CACL,CAgCA"}
1
+ {"version":3,"file":"useDeltaOrderToPost.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EAEvB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAGvD,KAAK,sBAAsB,GAAG,uBAAuB,CAAC;AACtD,KAAK,qBAAqB,GAAG,8BAA8B,CAAC;AAE5D,KAAK,wBAAwB,GAAG;IAC9B,eAAe,CAAC,EAAE,IAAI,CACpB,kBAAkB,CAChB,sBAAsB,EACtB,KAAK,EACL,qBAAqB,EACrB,IAAI,CACL,EACD,YAAY,CACb,CAAC;IACF,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB,CAAC;AAEF;;;EAGE;AACF,wBAAgB,mBAAmB,CAAC,EAClC,eAAe,EACf,OAAO,EACP,MAAM,GACP,EAAE,wBAAwB,GAAG,iBAAiB,CAC7C,sBAAsB,EACtB,KAAK,EACL,qBAAqB,EACrB,IAAI,CACL,CAgCA"}
@@ -1 +1 @@
1
- {"version":3,"file":"useDeltaOrderToPost.js","sources":["../../../../../../src/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.ts"],"sourcesContent":["import { useDeltaSDK } from \"@/hooks/useSDK\";\nimport {\n type UseMutationOptions,\n type UseMutationResult,\n useMutation,\n} from \"@tanstack/react-query\";\nimport { useAccount } from \"wagmi\";\nimport { assert } from \"ts-essentials\";\nimport type { CreateDeltaOrderInput } from \"./useCreateDeltaOrder\";\nimport type { MinViemClient } from \"@velora-dex/sdk\";\nimport type { PreSignDeltaOrderToPost } from \"./types\";\nimport { buildPreSignOrderPayload } from \"./utils\";\n\ntype DeltaOrderToPostResult = PreSignDeltaOrderToPost;\ntype DeltaOrderToPostInput = CreateDeltaOrderInput;\n\ntype UseDeltaOrderToPostInput = {\n mutationOptions?: Omit<\n UseMutationOptions<\n DeltaOrderToPostResult,\n Error,\n DeltaOrderToPostInput,\n void\n >,\n \"mutationFn\"\n >;\n chainId: number;\n client?: MinViemClient;\n};\n\nexport function useDeltaOrderToPost({\n mutationOptions,\n chainId,\n client,\n}: UseDeltaOrderToPostInput): UseMutationResult<\n DeltaOrderToPostResult,\n Error,\n DeltaOrderToPostInput,\n void\n> {\n const { address } = useAccount();\n const { sdk } = useDeltaSDK({ chainId, client, account: address });\n\n return useMutation<\n DeltaOrderToPostResult,\n Error,\n DeltaOrderToPostInput,\n void\n >({\n mutationKey: [\"deltaOrderToPost\"],\n mutationFn: async ({ orderInput, referrerAddress, signal, type }) => {\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n assert(\n \"hashDeltaOrderTypedData\" in sdk,\n \"sdk.hashDeltaOrderTypedData is not available\"\n );\n\n const orderToPost = await buildPreSignOrderPayload({\n sdk,\n orderInput,\n chainId,\n referrerAddress,\n type,\n });\n\n return orderToPost;\n },\n ...mutationOptions,\n });\n}\n"],"names":["useDeltaOrderToPost","t0","$","_c","mutationOptions","chainId","client","address","useAccount","t1","account","sdk","useDeltaSDK","t2","Symbol","for","t3","t4","orderInput","referrerAddress","signal","type","throwIfAborted","assert","orderToPost","buildPreSignOrderPayload","mutationKey","mutationFn","useMutation"],"mappings":"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"}
1
+ {"version":3,"file":"useDeltaOrderToPost.js","sources":["../../../../../../src/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.ts"],"sourcesContent":["import { useDeltaSDK } from \"@/hooks/useSDK\";\nimport {\n type UseMutationOptions,\n type UseMutationResult,\n useMutation,\n} from \"@tanstack/react-query\";\nimport { useAccount } from \"wagmi\";\nimport { assert } from \"ts-essentials\";\nimport type { CreateAndSubmitDeltaOrderInput } from \"./useCreateDeltaOrder\";\nimport type { MinViemClient } from \"@velora-dex/sdk\";\nimport type { PreSignDeltaOrderToPost } from \"./types\";\nimport { buildPreSignOrderPayload } from \"./utils\";\n\ntype DeltaOrderToPostResult = PreSignDeltaOrderToPost;\ntype DeltaOrderToPostInput = CreateAndSubmitDeltaOrderInput;\n\ntype UseDeltaOrderToPostInput = {\n mutationOptions?: Omit<\n UseMutationOptions<\n DeltaOrderToPostResult,\n Error,\n DeltaOrderToPostInput,\n void\n >,\n \"mutationFn\"\n >;\n chainId: number;\n client?: MinViemClient;\n};\n\n/** \n Creates the payload to post a Delta Order with 0x signature.\n Primary for depositAndPreSign mutation.\n*/\nexport function useDeltaOrderToPost({\n mutationOptions,\n chainId,\n client,\n}: UseDeltaOrderToPostInput): UseMutationResult<\n DeltaOrderToPostResult,\n Error,\n DeltaOrderToPostInput,\n void\n> {\n const { address } = useAccount();\n const { sdk } = useDeltaSDK({ chainId, client, account: address });\n\n return useMutation<\n DeltaOrderToPostResult,\n Error,\n DeltaOrderToPostInput,\n void\n >({\n mutationKey: [\"deltaOrderToPost\"],\n mutationFn: async ({ orderInput, referrerAddress, signal, type }) => {\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n assert(\n \"hashDeltaOrderTypedData\" in sdk,\n \"sdk.hashDeltaOrderTypedData is not available\"\n );\n\n const orderToPost = await buildPreSignOrderPayload({\n sdk,\n orderInput,\n chainId,\n referrerAddress,\n type,\n });\n\n return orderToPost;\n },\n ...mutationOptions,\n });\n}\n"],"names":["useDeltaOrderToPost","t0","$","_c","mutationOptions","chainId","client","address","useAccount","t1","account","sdk","useDeltaSDK","t2","Symbol","for","t3","t4","orderInput","referrerAddress","signal","type","throwIfAborted","assert","orderToPost","buildPreSignOrderPayload","mutationKey","mutationFn","useMutation"],"mappings":"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"}