@velora-dex/widget 0.7.1 → 0.7.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/ui/drawer.js +1 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +133 -130
- package/dist/core/index.js.map +1 -1
- package/dist/core/state/configActionsAtom.d.ts.map +1 -1
- package/dist/core/state/configActionsAtom.js +8 -8
- package/dist/core/state/configActionsAtom.js.map +1 -1
- package/dist/core/state/configAtom.d.ts +4 -2
- package/dist/core/state/configAtom.d.ts.map +1 -1
- package/dist/core/state/configAtom.js +7 -4
- package/dist/core/state/configAtom.js.map +1 -1
- package/dist/core/state/validatedReferrerConfigAtom.d.ts +3 -0
- package/dist/core/state/validatedReferrerConfigAtom.d.ts.map +1 -0
- package/dist/core/state/validatedReferrerConfigAtom.js +12 -0
- package/dist/core/state/validatedReferrerConfigAtom.js.map +1 -0
- package/dist/core/types.d.ts +6 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/external/.pnpm/{vaul@1.1.2_patch_hash_07b36ba5def3805dde9d543a880ba9e4caf55e5eb58e544faaa2c186846bf3c1__6feb48fe37bd41e9af5c8e81d5a6f4e1 → vaul@1.1.2_patch_hash_07b36ba5def3805dde9d543a880ba9e4caf55e5eb58e544faaa2c186846bf3c1__7f2d7d5ed11750fbec42b3f5689c802d}/external/vaul/dist/index.js +1 -1
- package/dist/external/.pnpm/{vaul@1.1.2_patch_hash_07b36ba5def3805dde9d543a880ba9e4caf55e5eb58e544faaa2c186846bf3c1__6feb48fe37bd41e9af5c8e81d5a6f4e1 → vaul@1.1.2_patch_hash_07b36ba5def3805dde9d543a880ba9e4caf55e5eb58e544faaa2c186846bf3c1__7f2d7d5ed11750fbec42b3f5689c802d}/external/vaul/dist/index.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +203 -201
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +85 -82
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketFlow.js +156 -154
- package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useTwapFlow.js +230 -228
- package/dist/hooks/swap/tradeFlow/useTwapFlow.js.map +1 -1
- package/dist/hooks/useReferrer.d.ts +2 -0
- package/dist/hooks/useReferrer.d.ts.map +1 -0
- package/dist/hooks/useReferrer.js +8 -0
- package/dist/hooks/useReferrer.js.map +1 -0
- package/dist/lib/web3/privy/config.js +1 -1
- package/dist/lib/web3/privy/config.js.map +1 -1
- package/dist/lib/web3/wagmi/config.js +1 -1
- package/dist/lib/web3/wagmi/config.js.map +1 -1
- package/package.json +1 -1
|
@@ -4,254 +4,256 @@ import { isETHaddress as r } from "../../../tokens/utils/eth.js";
|
|
|
4
4
|
import { useTwapSide as i } from "../../../core/twap/state/twapSideAtom.js";
|
|
5
5
|
import { useTwapReceiverAddressValue as a } from "../../../core/twap/state/twapReceiverAddressAtom.js";
|
|
6
6
|
import { HALF_MINUTE_MS as o } from "../../../lib/constants/time.js";
|
|
7
|
-
import { getTwapAmountsFromPrice as s, produceTwapDeadlines as
|
|
8
|
-
import { useTwapDuration as
|
|
9
|
-
import { useWidgetEvents as
|
|
10
|
-
import { getOverallOrderStatus as
|
|
11
|
-
import { useWatchDeltaAuction as
|
|
12
|
-
import { amountAfterSlippage as
|
|
13
|
-
import { useMinViemClient as
|
|
14
|
-
import { usePartner as
|
|
15
|
-
import { useTwapPrices as
|
|
16
|
-
import { useEnsureTxReceipt as
|
|
17
|
-
import { useCancelOrWithdrawAndCancelDeltaOrder as
|
|
18
|
-
import { UserCancelledError as
|
|
19
|
-
import { useMarkPermit1Or2NonceAsUsed as
|
|
20
|
-
import { useApproveOrPermit as
|
|
21
|
-
import { shouldApproveOrBatch as
|
|
22
|
-
import {
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
25
|
-
import {
|
|
26
|
-
import {
|
|
27
|
-
import {
|
|
28
|
-
import {
|
|
7
|
+
import { getTwapAmountsFromPrice as s, produceTwapDeadlines as ee } from "../../../lib/utils/twap.js";
|
|
8
|
+
import { useTwapDuration as c, useTwapSlippage as l } from "../../../core/twap/state/twapParamsAtom.js";
|
|
9
|
+
import { useWidgetEvents as u } from "../../../core/state/widgetEventsAtom.js";
|
|
10
|
+
import { getOverallOrderStatus as d, getSwapSideFromDeltaPrice as te } from "../prices/delta/orders/utils.js";
|
|
11
|
+
import { useWatchDeltaAuction as f } from "../prices/delta/queries/useWatchDeltaOrder.js";
|
|
12
|
+
import { amountAfterSlippage as p } from "../../../lib/utils/slippage.js";
|
|
13
|
+
import { useMinViemClient as m } from "../../useMinViemClient.js";
|
|
14
|
+
import { usePartner as h } from "../../usePartner.js";
|
|
15
|
+
import { useTwapPrices as g } from "../prices/useTwapPrices.js";
|
|
16
|
+
import { useEnsureTxReceipt as _ } from "../../txs/queries/useAwaitTx.js";
|
|
17
|
+
import { useCancelOrWithdrawAndCancelDeltaOrder as v } from "../prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.js";
|
|
18
|
+
import { UserCancelledError as y } from "./common/errors.js";
|
|
19
|
+
import { useMarkPermit1Or2NonceAsUsed as b } from "./common/useSignPermit1Or2.js";
|
|
20
|
+
import { useApproveOrPermit as x } from "./common/useApproveOrPermit.js";
|
|
21
|
+
import { shouldApproveOrBatch as S } from "./common/usePreSignAndSubmitDeltaOrder.js";
|
|
22
|
+
import { useReferrer as C } from "../../useReferrer.js";
|
|
23
|
+
import { useCreateAndSubmitTwapOrder as w } from "../prices/delta/mutations/twap/useCreateTwapOrder.js";
|
|
24
|
+
import { usePreSignAndSubmitTwapOrder as T } from "../prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.js";
|
|
25
|
+
import { useDepositAndSubmitTwapOrder as ne } from "../prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.js";
|
|
26
|
+
import { DEFAULT_DELTA_BRIDGE as re } from "../prices/delta/bridge/const.js";
|
|
27
|
+
import { useRef as ie } from "react";
|
|
28
|
+
import { useMutation as ae } from "@tanstack/react-query";
|
|
29
|
+
import { assert as E } from "ts-essentials";
|
|
29
30
|
import "@velora-dex/sdk";
|
|
30
31
|
import "viem";
|
|
31
|
-
import { useAccount as
|
|
32
|
+
import { useAccount as oe } from "wagmi";
|
|
32
33
|
//#region src/hooks/swap/tradeFlow/useTwapFlow.ts
|
|
33
|
-
var
|
|
34
|
-
function
|
|
35
|
-
let
|
|
36
|
-
srcToken:
|
|
37
|
-
srcAmount:
|
|
34
|
+
var se = "twapOrder", ce = "runTwapOrderFlow";
|
|
35
|
+
function D({ twapPrice: p }) {
|
|
36
|
+
let D = e("TwapFlow"), { queryKey: ue, price: de, chainId: O, refetch: fe, totalSrcAmount: pe, side: me, numSlices: k, priceParams: he } = g({ enabled: !1 }), A = de || p, ge = i(), _e = me || ge, { approval: j, signPermit: M, approveTxMut: N, signPermitMut: P, events: F } = x({
|
|
37
|
+
srcToken: A?.srcToken,
|
|
38
|
+
srcAmount: pe,
|
|
38
39
|
spenderContractType: "ParaswapDelta",
|
|
39
|
-
swapSide:
|
|
40
|
+
swapSide: _e,
|
|
40
41
|
tradeMode: "twap",
|
|
41
|
-
chainId:
|
|
42
|
+
chainId: O,
|
|
42
43
|
tryPermit2: !1
|
|
43
|
-
}), { address:
|
|
44
|
-
chainId:
|
|
45
|
-
account:
|
|
46
|
-
}),
|
|
47
|
-
chainId:
|
|
48
|
-
account:
|
|
49
|
-
client:
|
|
44
|
+
}), { address: I } = oe(), { minClient: L } = m({
|
|
45
|
+
chainId: O,
|
|
46
|
+
account: I
|
|
47
|
+
}), R = w({
|
|
48
|
+
chainId: O,
|
|
49
|
+
account: I,
|
|
50
|
+
client: L,
|
|
50
51
|
mutationOptions: {
|
|
51
52
|
onSuccess: (e) => {
|
|
52
|
-
|
|
53
|
+
D.log("Create Twap Order success", e);
|
|
53
54
|
},
|
|
54
55
|
onError: (e) => {
|
|
55
|
-
|
|
56
|
+
D.error("Create Twap Order error", e);
|
|
56
57
|
}
|
|
57
58
|
}
|
|
58
|
-
}),
|
|
59
|
-
order:
|
|
60
|
-
isCreatingOrder:
|
|
61
|
-
isPostingOrder:
|
|
62
|
-
isOrderSent:
|
|
63
|
-
isPending:
|
|
64
|
-
isError:
|
|
65
|
-
isSuccess:
|
|
66
|
-
error:
|
|
67
|
-
}, { twapOrderPreSign:
|
|
68
|
-
chainId:
|
|
69
|
-
account:
|
|
70
|
-
logger:
|
|
71
|
-
viemClient:
|
|
72
|
-
}), { twapOrderDeposit:
|
|
73
|
-
chainId:
|
|
74
|
-
account:
|
|
75
|
-
logger:
|
|
76
|
-
viemClient:
|
|
77
|
-
}),
|
|
78
|
-
order:
|
|
79
|
-
isPostingOrder:
|
|
80
|
-
isCreatingOrder:
|
|
81
|
-
isOrderSent:
|
|
82
|
-
isPending:
|
|
83
|
-
isError:
|
|
84
|
-
isSuccess:
|
|
85
|
-
error:
|
|
86
|
-
},
|
|
87
|
-
orderId:
|
|
59
|
+
}), z = {
|
|
60
|
+
order: R.order,
|
|
61
|
+
isCreatingOrder: R.isCreatingOrder,
|
|
62
|
+
isPostingOrder: R.isPostingOrder,
|
|
63
|
+
isOrderSent: R.isOrderSent,
|
|
64
|
+
isPending: R.isPending,
|
|
65
|
+
isError: R.isError,
|
|
66
|
+
isSuccess: R.isSuccess,
|
|
67
|
+
error: R.error
|
|
68
|
+
}, { twapOrderPreSign: B, canBatchTxs: ve, isConnectedToSafe: ye, preSignAndSubmitTwapOrder: be, reset: V } = T({
|
|
69
|
+
chainId: O,
|
|
70
|
+
account: I,
|
|
71
|
+
logger: D,
|
|
72
|
+
viemClient: L
|
|
73
|
+
}), { twapOrderDeposit: H, reset: xe, depositAndSubmitTwapOrder: Se } = ne({
|
|
74
|
+
chainId: O,
|
|
75
|
+
account: I,
|
|
76
|
+
logger: D,
|
|
77
|
+
viemClient: L
|
|
78
|
+
}), U = {
|
|
79
|
+
order: z.order || B.order || H.order,
|
|
80
|
+
isPostingOrder: z.isPostingOrder || B.postingOrder.isPostingOrder || H.postingOrder.isPostingOrder,
|
|
81
|
+
isCreatingOrder: z.isCreatingOrder || B.isCreatingOrder || H.isCreatingOrder,
|
|
82
|
+
isOrderSent: z.isOrderSent || B.isOrderSent || H.isOrderSent,
|
|
83
|
+
isPending: z.isPending || B.isPending || H.isPending,
|
|
84
|
+
isError: z.isError || B.isError || H.isError,
|
|
85
|
+
isSuccess: z.isSuccess || B.isSuccess || H.isSuccess,
|
|
86
|
+
error: z.error || B.error || H.error
|
|
87
|
+
}, W = f({
|
|
88
|
+
orderId: U.order?.id,
|
|
88
89
|
refetchInterval: o,
|
|
89
90
|
onAuctionSuccess: (e) => {
|
|
90
|
-
|
|
91
|
+
D.log("Twap Order success", e);
|
|
91
92
|
},
|
|
92
93
|
onAuctionFailure: (e) => {
|
|
93
|
-
|
|
94
|
+
D.log("Twap Order failure", e);
|
|
94
95
|
},
|
|
95
96
|
onUpdatedAuction: (e) => {
|
|
96
|
-
|
|
97
|
+
D.log("Twap Order updated", e);
|
|
97
98
|
}
|
|
98
|
-
}),
|
|
99
|
-
sentOrder:
|
|
100
|
-
lastOrderState:
|
|
101
|
-
isOrderPending:
|
|
102
|
-
isOrderExecuting:
|
|
103
|
-
isOrderExecuted:
|
|
104
|
-
isPending:
|
|
105
|
-
isError:
|
|
106
|
-
isSuccess:
|
|
107
|
-
error:
|
|
108
|
-
},
|
|
109
|
-
order:
|
|
110
|
-
chainId:
|
|
111
|
-
account:
|
|
112
|
-
client:
|
|
113
|
-
logger:
|
|
114
|
-
mutationOptions: { onMutate: () => (
|
|
99
|
+
}), G = W.data ? d(W.data) : null, K = {
|
|
100
|
+
sentOrder: U.order,
|
|
101
|
+
lastOrderState: W.data,
|
|
102
|
+
isOrderPending: G === "pending",
|
|
103
|
+
isOrderExecuting: G === "executing",
|
|
104
|
+
isOrderExecuted: G === "confirmed",
|
|
105
|
+
isPending: W.isLoading || W.isRefetching || G === "pending" || G === "executing",
|
|
106
|
+
isError: W.isError || G === "failed",
|
|
107
|
+
isSuccess: G === "confirmed",
|
|
108
|
+
error: W.error
|
|
109
|
+
}, q = K.lastOrderState || K.sentOrder, J = v({
|
|
110
|
+
order: q,
|
|
111
|
+
chainId: O,
|
|
112
|
+
account: I,
|
|
113
|
+
client: L,
|
|
114
|
+
logger: D,
|
|
115
|
+
mutationOptions: { onMutate: () => (E(q, "No order to cancel"), q) }
|
|
115
116
|
}), Ce = {
|
|
116
|
-
receipt:
|
|
117
|
-
txHash:
|
|
118
|
-
response:
|
|
119
|
-
isCancelingOrder:
|
|
120
|
-
isOrderCancellable:
|
|
121
|
-
isOrderCanceled:
|
|
122
|
-
isPending:
|
|
123
|
-
isError:
|
|
124
|
-
isSuccess:
|
|
125
|
-
error:
|
|
126
|
-
result:
|
|
127
|
-
step:
|
|
128
|
-
}, we =
|
|
129
|
-
|
|
130
|
-
}, Ee = a(), { markNonceAsUsed: De, clearNonce: Oe } =
|
|
131
|
-
|
|
117
|
+
receipt: J.receipt,
|
|
118
|
+
txHash: J.txHash,
|
|
119
|
+
response: J.cancelOrderResponse,
|
|
120
|
+
isCancelingOrder: J.isPending,
|
|
121
|
+
isOrderCancellable: J.isOrderCancellable,
|
|
122
|
+
isOrderCanceled: J.isSuccess,
|
|
123
|
+
isPending: J.isPending,
|
|
124
|
+
isError: J.isError,
|
|
125
|
+
isSuccess: J.isSuccess,
|
|
126
|
+
error: J.error,
|
|
127
|
+
result: J.result,
|
|
128
|
+
step: J.step
|
|
129
|
+
}, we = _(), Y = ie(null), X = ie(null), Te = () => {
|
|
130
|
+
Y.current?.abort(new y()), Y.current = null, X.current = null;
|
|
131
|
+
}, Ee = a(), { markNonceAsUsed: De, clearNonce: Oe } = b({ chainId: O }), { partner: ke, partnerAddress: Ae, partnerFeeBps: je, partnerTakesSurplus: Me } = h(), { referrerAddress: Ne } = C(), Pe = n(), { onTwapOrder: Z } = u(), Fe = l(), Ie = c(), Le = async ({ onTxSent: e, lastPrice: n } = {}) => {
|
|
132
|
+
N.reset(), P.reset(), R.reset(), J.reset(), V(), xe(), E(A, "Twap price is not available");
|
|
132
133
|
let i = new AbortController();
|
|
133
|
-
|
|
134
|
-
let a = i.signal, { orderDeadline: o, orderInterval:
|
|
135
|
-
durationMin:
|
|
136
|
-
numSlices:
|
|
137
|
-
}),
|
|
138
|
-
if (
|
|
139
|
-
let e = await
|
|
140
|
-
a.throwIfAborted(), e.data && (
|
|
134
|
+
Y.current = i;
|
|
135
|
+
let a = i.signal, { orderDeadline: o, orderInterval: c } = ee({
|
|
136
|
+
durationMin: Ie,
|
|
137
|
+
numSlices: k
|
|
138
|
+
}), l = Math.floor(Fe * 100), u, d, f, p = j.allowanceToSet, m = M.amountToPermit, h = A;
|
|
139
|
+
if (h.hmac === n?.hmac) {
|
|
140
|
+
let e = await fe({ cancelRefetch: !1 });
|
|
141
|
+
a.throwIfAborted(), e.data && (h = e.data);
|
|
141
142
|
}
|
|
142
|
-
let
|
|
143
|
-
|
|
144
|
-
let
|
|
145
|
-
approval:
|
|
146
|
-
signPermit:
|
|
147
|
-
canBatchTxs:
|
|
148
|
-
isConnectedToSafe:
|
|
143
|
+
let g;
|
|
144
|
+
X.current = h;
|
|
145
|
+
let _ = r(h.srcToken), { shouldDoApprovalTxOrPermit: v, tryPermit: y, shouldPreSignBatch: b } = S({
|
|
146
|
+
approval: j,
|
|
147
|
+
signPermit: M,
|
|
148
|
+
canBatchTxs: ve,
|
|
149
|
+
isConnectedToSafe: ye
|
|
149
150
|
});
|
|
150
151
|
try {
|
|
151
|
-
if (
|
|
152
|
-
let t =
|
|
152
|
+
if (v && p) {
|
|
153
|
+
let t = ue;
|
|
153
154
|
if (t) {
|
|
154
|
-
let e =
|
|
155
|
-
|
|
155
|
+
let e = p;
|
|
156
|
+
g = Pe({
|
|
156
157
|
queryKey: t,
|
|
157
158
|
onData: (t) => {
|
|
158
159
|
let n = t;
|
|
159
160
|
if (a.aborted) {
|
|
160
|
-
|
|
161
|
+
g?.(), g = void 0;
|
|
161
162
|
return;
|
|
162
163
|
}
|
|
163
164
|
let { srcAmount: r } = s({
|
|
164
165
|
price: n,
|
|
165
|
-
numSlices:
|
|
166
|
+
numSlices: k
|
|
166
167
|
});
|
|
167
|
-
e >= BigInt(r) && (
|
|
168
|
+
e >= BigInt(r) && (D.log("~ fresh price ~", n), h = n, X.current = h);
|
|
168
169
|
}
|
|
169
170
|
});
|
|
170
171
|
}
|
|
171
172
|
try {
|
|
172
|
-
if (
|
|
173
|
+
if (y) F.onSignPermit.request({ allowanceToSet: m }), u = await P.signPermitAsync({
|
|
173
174
|
deadline: BigInt(o),
|
|
174
|
-
value:
|
|
175
|
-
}),
|
|
176
|
-
allowanceToSet:
|
|
177
|
-
permit:
|
|
175
|
+
value: m
|
|
176
|
+
}), F.onSignPermit.confirmed({
|
|
177
|
+
allowanceToSet: m,
|
|
178
|
+
permit: u?.permitEncodedArgs
|
|
178
179
|
});
|
|
179
180
|
else {
|
|
180
|
-
|
|
181
|
-
allowanceToSet:
|
|
182
|
-
txHash:
|
|
181
|
+
F.onApproveTx.request({ allowanceToSet: p }), d = await N.approveAsync({ allowanceData: { allowanceToSet: p } }), F.onApproveTx.sent({
|
|
182
|
+
allowanceToSet: p,
|
|
183
|
+
txHash: d
|
|
183
184
|
}), a.throwIfAborted();
|
|
184
185
|
let t = we({
|
|
185
|
-
hash:
|
|
186
|
-
chainId:
|
|
186
|
+
hash: d,
|
|
187
|
+
chainId: O,
|
|
187
188
|
onReplaced: (e) => {
|
|
188
|
-
|
|
189
|
+
D.log("onReplaced:approveTx", d, e);
|
|
189
190
|
}
|
|
190
191
|
});
|
|
191
192
|
e && e({
|
|
192
|
-
chainId:
|
|
193
|
+
chainId: O,
|
|
193
194
|
action: "approve",
|
|
194
|
-
transactionHash:
|
|
195
|
+
transactionHash: d,
|
|
195
196
|
receiptPromise: t,
|
|
196
197
|
transactionSpecificData: {
|
|
197
198
|
action: "approve",
|
|
198
|
-
approvedAmount:
|
|
199
|
-
tokenAddress:
|
|
200
|
-
spenderAddress:
|
|
199
|
+
approvedAmount: p,
|
|
200
|
+
tokenAddress: j.token,
|
|
201
|
+
spenderAddress: j.spender
|
|
201
202
|
}
|
|
202
|
-
}),
|
|
203
|
-
allowanceToSet:
|
|
204
|
-
txHash:
|
|
205
|
-
txReceipt:
|
|
206
|
-
}),
|
|
203
|
+
}), f = await t, F.onApproveTx.confirmed({
|
|
204
|
+
allowanceToSet: p,
|
|
205
|
+
txHash: d,
|
|
206
|
+
txReceipt: f
|
|
207
|
+
}), D.log("~ approveTx ~ receipt:", f);
|
|
207
208
|
}
|
|
208
209
|
} catch (e) {
|
|
209
|
-
throw
|
|
210
|
-
allowanceToSet: h,
|
|
211
|
-
error: e
|
|
212
|
-
}) : N.onApproveTx.failed({
|
|
210
|
+
throw y ? F.onSignPermit.failed({
|
|
213
211
|
allowanceToSet: m,
|
|
212
|
+
error: e
|
|
213
|
+
}) : F.onApproveTx.failed({
|
|
214
|
+
allowanceToSet: p,
|
|
214
215
|
error: e,
|
|
215
|
-
txHash:
|
|
216
|
+
txHash: d
|
|
216
217
|
}), e;
|
|
217
218
|
}
|
|
218
219
|
}
|
|
219
|
-
a.throwIfAborted(),
|
|
220
|
-
let n =
|
|
221
|
-
|
|
222
|
-
let r =
|
|
220
|
+
a.throwIfAborted(), E(I, "Account is not connected");
|
|
221
|
+
let n = h;
|
|
222
|
+
X.current = n, g?.(), g = void 0, E(n, "Twap price is not available");
|
|
223
|
+
let r = te(n), { srcAmount: i, destAmount: ee } = s({
|
|
223
224
|
price: n,
|
|
224
|
-
numSlices:
|
|
225
|
-
}),
|
|
226
|
-
|
|
225
|
+
numSlices: k
|
|
226
|
+
}), x = u?.permitEncodedArgs, S = t(n) ? n.bridge.destinationChainId : O;
|
|
227
|
+
Z?.({ event: {
|
|
227
228
|
name: "TwapOrder:request",
|
|
228
229
|
params: { price: n }
|
|
229
230
|
} });
|
|
230
|
-
let
|
|
231
|
-
|
|
231
|
+
let C, w;
|
|
232
|
+
w = r === "SELL" ? {
|
|
232
233
|
onChainOrderType: "TWAPOrder",
|
|
233
234
|
totalSrcAmount: i
|
|
234
235
|
} : {
|
|
235
236
|
onChainOrderType: "TWAPBuyOrder",
|
|
236
|
-
totalDestAmount:
|
|
237
|
+
totalDestAmount: ee,
|
|
237
238
|
maxSrcAmount: i
|
|
238
239
|
};
|
|
239
|
-
let
|
|
240
|
+
let T = {
|
|
240
241
|
signal: a,
|
|
241
242
|
type: "MARKET",
|
|
242
|
-
degenMode:
|
|
243
|
+
degenMode: he.degenMode,
|
|
244
|
+
referrerAddress: Ne,
|
|
243
245
|
orderInput: {
|
|
244
|
-
owner:
|
|
246
|
+
owner: I,
|
|
245
247
|
beneficiary: Ee,
|
|
246
248
|
srcToken: n.srcToken,
|
|
247
249
|
destToken: n.destToken,
|
|
248
|
-
permit:
|
|
249
|
-
destChainId:
|
|
250
|
+
permit: x,
|
|
251
|
+
destChainId: S,
|
|
250
252
|
deltaPrice: {
|
|
251
253
|
...n,
|
|
252
254
|
bridge: {
|
|
253
255
|
...n.bridge,
|
|
254
|
-
protocolSelector:
|
|
256
|
+
protocolSelector: re.protocolSelector
|
|
255
257
|
},
|
|
256
258
|
partner: ke
|
|
257
259
|
},
|
|
@@ -260,109 +262,109 @@ function T({ twapPrice: m }) {
|
|
|
260
262
|
partnerFeeBps: je,
|
|
261
263
|
partnerTakesSurplus: Me,
|
|
262
264
|
deadline: o,
|
|
263
|
-
...
|
|
264
|
-
numSlices:
|
|
265
|
-
slippage:
|
|
266
|
-
interval:
|
|
265
|
+
...w,
|
|
266
|
+
numSlices: k,
|
|
267
|
+
slippage: l,
|
|
268
|
+
interval: c
|
|
267
269
|
}
|
|
268
270
|
};
|
|
269
|
-
return
|
|
270
|
-
createOrderInput:
|
|
271
|
-
depositAmount:
|
|
271
|
+
return C = _ ? await Se({
|
|
272
|
+
createOrderInput: T,
|
|
273
|
+
depositAmount: le(w, Fe),
|
|
272
274
|
onTxSent: e
|
|
273
|
-
}) :
|
|
274
|
-
createOrderInput:
|
|
275
|
-
approval:
|
|
275
|
+
}) : b ? await be({
|
|
276
|
+
createOrderInput: T,
|
|
277
|
+
approval: j,
|
|
276
278
|
onTxSent: e
|
|
277
|
-
}) : await
|
|
279
|
+
}) : await R.mutateAsync(T), u && De(u.signedPermitData), Z?.({ event: {
|
|
278
280
|
name: "TwapOrder:sent",
|
|
279
281
|
params: {
|
|
280
282
|
price: n,
|
|
281
|
-
order:
|
|
283
|
+
order: C
|
|
282
284
|
}
|
|
283
285
|
} }), {
|
|
284
|
-
tradeFlowType:
|
|
286
|
+
tradeFlowType: se,
|
|
285
287
|
approve: {
|
|
286
|
-
txHash:
|
|
287
|
-
receipt:
|
|
288
|
+
txHash: d,
|
|
289
|
+
receipt: f
|
|
288
290
|
},
|
|
289
|
-
twapOrder: { sentOrder:
|
|
291
|
+
twapOrder: { sentOrder: C },
|
|
290
292
|
twapPrice: n,
|
|
291
|
-
account:
|
|
293
|
+
account: I,
|
|
292
294
|
receiverAddress: Ee
|
|
293
295
|
};
|
|
294
296
|
} catch (e) {
|
|
295
|
-
throw
|
|
297
|
+
throw u && Oe(u.signedPermitData), Z?.({ event: {
|
|
296
298
|
name: "TwapOrder:failed",
|
|
297
299
|
params: { error: e }
|
|
298
300
|
} }), e;
|
|
299
301
|
} finally {
|
|
300
|
-
|
|
302
|
+
g?.();
|
|
301
303
|
}
|
|
302
|
-
},
|
|
304
|
+
}, Re = async () => {
|
|
303
305
|
try {
|
|
304
|
-
return await
|
|
306
|
+
return await J.cancelDeltaOrder();
|
|
305
307
|
} catch (e) {
|
|
306
|
-
|
|
308
|
+
D.error("Cancel Delta order error", e), J.reset();
|
|
307
309
|
}
|
|
308
|
-
},
|
|
309
|
-
mutationFn:
|
|
310
|
-
mutationKey: [
|
|
310
|
+
}, Q = ae({
|
|
311
|
+
mutationFn: Le,
|
|
312
|
+
mutationKey: [ce],
|
|
311
313
|
onSuccess: (e) => {
|
|
312
|
-
|
|
314
|
+
D.log("Twap Order success", e);
|
|
313
315
|
},
|
|
314
316
|
onError: (e) => {
|
|
315
|
-
|
|
317
|
+
D.error("Twap Order error", e);
|
|
316
318
|
},
|
|
317
319
|
onSettled: () => {
|
|
318
|
-
|
|
320
|
+
D.log("Twap Order settled");
|
|
319
321
|
}
|
|
320
|
-
}),
|
|
321
|
-
|
|
322
|
-
},
|
|
323
|
-
let t =
|
|
324
|
-
return
|
|
322
|
+
}), ze = Q.mutateAsync, Be = () => {
|
|
323
|
+
X.current = null, N.reset(), P.reset(), R.reset(), Q.reset(), J.reset(), V(), xe();
|
|
324
|
+
}, Ve = (e) => {
|
|
325
|
+
let t = X.current;
|
|
326
|
+
return Be(), ze({
|
|
325
327
|
...e,
|
|
326
328
|
lastPrice: t
|
|
327
329
|
});
|
|
328
|
-
},
|
|
329
|
-
$ &&
|
|
330
|
+
}, He = X.current || A, $ = Q.data;
|
|
331
|
+
$ && K.lastOrderState && ($ = {
|
|
330
332
|
...$,
|
|
331
333
|
twapOrder: {
|
|
332
334
|
sentOrder: $.twapOrder.sentOrder,
|
|
333
|
-
lastOrderState:
|
|
335
|
+
lastOrderState: K.lastOrderState
|
|
334
336
|
}
|
|
335
337
|
});
|
|
336
|
-
let
|
|
338
|
+
let Ue = $?.twapOrder.sentOrder || K.lastOrderState || K.sentOrder;
|
|
337
339
|
return {
|
|
338
|
-
tradeFlowType:
|
|
339
|
-
chainId:
|
|
340
|
-
runTwapOrderFlow:
|
|
341
|
-
reset:
|
|
340
|
+
tradeFlowType: se,
|
|
341
|
+
chainId: O,
|
|
342
|
+
runTwapOrderFlow: ze,
|
|
343
|
+
reset: Be,
|
|
342
344
|
cancelFlow: Te,
|
|
343
|
-
retryFlow:
|
|
344
|
-
cancelTwapOrder:
|
|
345
|
-
approval:
|
|
346
|
-
signPermit:
|
|
347
|
-
twapOrderPreSign:
|
|
348
|
-
twapOrderDeposit:
|
|
349
|
-
twapOrderSubmission:
|
|
350
|
-
twapOrderExecution:
|
|
345
|
+
retryFlow: Ve,
|
|
346
|
+
cancelTwapOrder: Re,
|
|
347
|
+
approval: j,
|
|
348
|
+
signPermit: M,
|
|
349
|
+
twapOrderPreSign: B,
|
|
350
|
+
twapOrderDeposit: H,
|
|
351
|
+
twapOrderSubmission: U,
|
|
352
|
+
twapOrderExecution: K,
|
|
351
353
|
twapOrderCancelation: Ce,
|
|
352
|
-
isPending:
|
|
353
|
-
isSuccess:
|
|
354
|
-
isError:
|
|
355
|
-
error:
|
|
354
|
+
isPending: Q.isPending,
|
|
355
|
+
isSuccess: U.isSuccess && K.isSuccess,
|
|
356
|
+
isError: Q.isError,
|
|
357
|
+
error: Q.error,
|
|
356
358
|
result: $,
|
|
357
|
-
usedPrice:
|
|
358
|
-
freshPrice:
|
|
359
|
-
submittedTwapOrder:
|
|
359
|
+
usedPrice: He,
|
|
360
|
+
freshPrice: A,
|
|
361
|
+
submittedTwapOrder: Ue
|
|
360
362
|
};
|
|
361
363
|
}
|
|
362
|
-
function
|
|
363
|
-
return "totalSrcAmount" in e ? e.totalSrcAmount :
|
|
364
|
+
function le(e, t) {
|
|
365
|
+
return "totalSrcAmount" in e ? e.totalSrcAmount : p(e.maxSrcAmount, t, "BUY").toFixed(0);
|
|
364
366
|
}
|
|
365
367
|
//#endregion
|
|
366
|
-
export {
|
|
368
|
+
export { D as useTwapFlow };
|
|
367
369
|
|
|
368
370
|
//# sourceMappingURL=useTwapFlow.js.map
|