@velora-dex/widget 0.3.13-dev.1 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.d.ts.map +1 -1
- package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js +75 -63
- package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js.map +1 -1
- package/dist/components/web3/ConnectExternalProvider/constants.d.ts +14 -0
- package/dist/components/web3/ConnectExternalProvider/constants.d.ts.map +1 -0
- package/dist/components/web3/ConnectExternalProvider/constants.js +6 -0
- package/dist/components/web3/ConnectExternalProvider/constants.js.map +1 -0
- package/dist/components/web3/ConnectExternalProvider/metamaskProviderWrapper.d.ts +15 -0
- package/dist/components/web3/ConnectExternalProvider/metamaskProviderWrapper.d.ts.map +1 -0
- package/dist/components/web3/ConnectExternalProvider/metamaskProviderWrapper.js +56 -0
- package/dist/components/web3/ConnectExternalProvider/metamaskProviderWrapper.js.map +1 -0
- package/dist/components/web3/ConnectExternalProvider/safeProviderWrapper.d.ts +6 -0
- package/dist/components/web3/ConnectExternalProvider/safeProviderWrapper.d.ts.map +1 -0
- package/dist/components/web3/ConnectExternalProvider/safeProviderWrapper.js +76 -0
- package/dist/components/web3/ConnectExternalProvider/safeProviderWrapper.js.map +1 -0
- package/dist/components/web3/ConnectExternalProvider/utils.d.ts +23 -0
- package/dist/components/web3/ConnectExternalProvider/utils.d.ts.map +1 -0
- package/dist/components/web3/ConnectExternalProvider/utils.js +42 -0
- package/dist/components/web3/ConnectExternalProvider/utils.js.map +1 -0
- package/dist/components/web3/ConnectWallets/index.js.map +1 -1
- package/dist/components/web3/ConnectWallets/walletIcons.d.ts +8 -1
- package/dist/components/web3/ConnectWallets/walletIcons.d.ts.map +1 -1
- package/dist/components/web3/ConnectWallets/walletIcons.js +23 -9
- package/dist/components/web3/ConnectWallets/walletIcons.js.map +1 -1
- package/dist/components/widget/ReceiverAddress/state/subscriptions.d.ts.map +1 -1
- package/dist/components/widget/ReceiverAddress/state/subscriptions.js +11 -5
- package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js +95 -79
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.d.ts +1 -1
- package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js +60 -89
- package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js +1 -0
- package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/utils/preWrap.d.ts +4 -1
- package/dist/components/widget/TradeOverview/utils/preWrap.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/utils/preWrap.js +2 -1
- package/dist/components/widget/TradeOverview/utils/preWrap.js.map +1 -1
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.d.ts +2 -2
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.d.ts.map +1 -1
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js +22 -23
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js.map +1 -1
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js +1 -1
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js.map +1 -1
- package/dist/components/widget/WrapEth/hooks/useWrapEthProps.d.ts +2 -0
- package/dist/components/widget/WrapEth/hooks/useWrapEthProps.d.ts.map +1 -1
- package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js +236 -3
- package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js.map +1 -1
- package/dist/configurator/Configurator.d.ts.map +1 -1
- package/dist/configurator/Safe/SafeConnector.d.ts +23 -0
- package/dist/configurator/Safe/SafeConnector.d.ts.map +1 -0
- package/dist/configurator/Safe/useSafeConnector.d.ts +8 -0
- package/dist/configurator/Safe/useSafeConnector.d.ts.map +1 -0
- package/dist/core/LimitOrderButton.d.ts.map +1 -1
- package/dist/core/LimitOrderButton.js +40 -18
- package/dist/core/LimitOrderButton.js.map +1 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +46 -24
- package/dist/core/index.js.map +1 -1
- package/dist/core/state/configAtom.d.ts.map +1 -1
- package/dist/core/state/configAtom.js +5 -1
- package/dist/core/state/configAtom.js.map +1 -1
- package/dist/core/state/externalProviderAtom.d.ts +6 -0
- package/dist/core/state/externalProviderAtom.d.ts.map +1 -1
- package/dist/core/state/externalProviderAtom.js +4 -1
- package/dist/core/state/externalProviderAtom.js.map +1 -1
- package/dist/events/getters/swap.d.ts.map +1 -1
- package/dist/events/getters/swap.js +2 -1
- package/dist/events/getters/swap.js.map +1 -1
- package/dist/events/getters/widgetState.d.ts.map +1 -1
- package/dist/events/getters/widgetState.js +22 -1
- package/dist/events/getters/widgetState.js.map +1 -1
- package/dist/events/hooks/useOnWalletConnect.d.ts.map +1 -1
- package/dist/events/hooks/useOnWalletConnect.js +17 -1
- package/dist/events/hooks/useOnWalletConnect.js.map +1 -1
- package/dist/events/types/common.d.ts +7 -0
- package/dist/events/types/common.d.ts.map +1 -1
- package/dist/events/types/connectWallet.d.ts +4 -3
- package/dist/events/types/connectWallet.d.ts.map +1 -1
- package/dist/events/types/index.d.ts.map +1 -1
- package/dist/hooks/batch/useAwaitCalls.d.ts.map +1 -1
- package/dist/hooks/batch/useAwaitCalls.js.map +1 -1
- package/dist/hooks/connectors/useIsConnectedSafe.d.ts +1 -0
- package/dist/hooks/connectors/useIsConnectedSafe.d.ts.map +1 -1
- package/dist/hooks/connectors/useIsConnectedSafe.js +10 -3
- package/dist/hooks/connectors/useIsConnectedSafe.js.map +1 -1
- package/dist/hooks/connectors/useIsGnosisSafeConnector.d.ts +5 -1
- package/dist/hooks/connectors/useIsGnosisSafeConnector.d.ts.map +1 -1
- package/dist/hooks/connectors/useIsGnosisSafeConnector.js +3 -4
- package/dist/hooks/connectors/useIsGnosisSafeConnector.js.map +1 -1
- package/dist/hooks/connectors/useIsSafeThroughWalletConnect.d.ts +3 -1
- package/dist/hooks/connectors/useIsSafeThroughWalletConnect.d.ts.map +1 -1
- package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js +55 -11
- package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js.map +1 -1
- package/dist/hooks/otc/mutations/useFillOrder.js +2 -1
- package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -1
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js +1 -0
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js.map +1 -1
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.d.ts.map +1 -1
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.js +7 -4
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.d.ts +1 -13
- package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.js +1 -80
- package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/utils.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/utils.js +1 -1
- package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.js +2 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.js.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.js +113 -98
- package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts +3 -1
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js +22 -2
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +2 -3
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +14 -37
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +2 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +14 -36
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js +7 -4
- package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
- package/dist/hooks/txs/queries/useAwaitTx.d.ts.map +1 -1
- package/dist/hooks/txs/queries/useAwaitTx.js +114 -20
- package/dist/hooks/txs/queries/useAwaitTx.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/lib/constants/storage.d.ts +1 -1
- package/dist/lib/constants/storage.d.ts.map +1 -1
- package/dist/lib/constants/storage.js +3 -1
- package/dist/lib/constants/storage.js.map +1 -1
- package/dist/lib/constants/urls.js +2 -6
- package/dist/lib/constants/urls.js.map +1 -1
- package/dist/lib/utils/index.d.ts.map +1 -1
- package/dist/lib/utils/index.js.map +1 -1
- package/dist/lib/utils/toasts.d.ts +1 -1
- package/dist/lib/utils/toasts.d.ts.map +1 -1
- package/dist/lib/utils/toasts.js +5 -1
- package/dist/lib/utils/toasts.js.map +1 -1
- package/dist/lib/web3/wagmi/config.d.ts.map +1 -1
- package/dist/lib/web3/wagmi/config.js +1 -1
- package/dist/lib/web3/wagmi/config.js.map +1 -1
- package/dist/lib/web3/wagmi/external.d.ts +11 -3
- package/dist/lib/web3/wagmi/external.d.ts.map +1 -1
- package/dist/lib/web3/wagmi/external.js +28 -2
- package/dist/lib/web3/wagmi/external.js.map +1 -1
- package/dist/lib/web3/wagmi/isInIframe.d.ts +2 -0
- package/dist/lib/web3/wagmi/isInIframe.d.ts.map +1 -0
- package/dist/lib/web3/wagmi/isInIframe.js +4 -0
- package/dist/lib/web3/wagmi/isInIframe.js.map +1 -0
- package/dist/lib/web3/wagmi/isInsideSafeIframe.d.ts +0 -1
- package/dist/lib/web3/wagmi/isInsideSafeIframe.d.ts.map +1 -1
- package/dist/lib/web3/wagmi/isInsideSafeIframe.js +2 -2
- package/dist/lib/web3/wagmi/isInsideSafeIframe.js.map +1 -1
- package/dist/lib/web3/wagmi/switchChain.d.ts.map +1 -1
- package/dist/lib/web3/wagmi/switchChain.js +3 -3
- package/dist/lib/web3/wagmi/switchChain.js.map +1 -1
- package/dist/transactions/hash.d.ts +7 -0
- package/dist/transactions/hash.d.ts.map +1 -0
- package/dist/transactions/hash.js +34 -0
- package/dist/transactions/hash.js.map +1 -0
- package/dist/transactions/queries/ensureCallsStatus.d.ts.map +1 -1
- package/dist/transactions/queries/ensureCallsStatus.js +14 -3
- package/dist/transactions/queries/ensureCallsStatus.js.map +1 -1
- package/dist/transactions/queries/ensureTxReceipt.d.ts.map +1 -1
- package/dist/transactions/queries/ensureTxReceipt.js +48 -12
- package/dist/transactions/queries/ensureTxReceipt.js.map +1 -1
- package/dist/transactions/state/effects/finalize.d.ts +7 -1
- package/dist/transactions/state/effects/finalize.d.ts.map +1 -1
- package/dist/transactions/state/effects/finalize.js +53 -7
- package/dist/transactions/state/effects/finalize.js.map +1 -1
- package/dist/transactions/state/hooks/useActivateEffects.d.ts.map +1 -1
- package/dist/transactions/state/hooks/useActivateEffects.js +4 -2
- package/dist/transactions/state/hooks/useActivateEffects.js.map +1 -1
- package/dist/transactions/state/transactionsActionAtom.d.ts.map +1 -1
- package/dist/transactions/state/transactionsActionAtom.js +74 -18
- package/dist/transactions/state/transactionsActionAtom.js.map +1 -1
- package/dist/transactions/state/transactionsAtom.js +2 -2
- package/dist/transactions/state/transactionsAtom.js.map +1 -1
- package/dist/transactions/types.d.ts +33 -10
- package/dist/transactions/types.d.ts.map +1 -1
- package/dist/transactions/utils.d.ts +2 -1
- package/dist/transactions/utils.d.ts.map +1 -1
- package/dist/transactions/utils.js +7 -1
- package/dist/transactions/utils.js.map +1 -1
- package/package.json +4 -2
- package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.d.ts +0 -69
- package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.d.ts.map +0 -1
- package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js +0 -192
- package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js.map +0 -1
|
@@ -1,13 +1,20 @@
|
|
|
1
|
+
import { EXTERNAL_CONNECTOR_SAFE_ID, EXTERNAL_CONNECTOR_SAFE_WALLETCONNECT_ID } from '../components/web3/ConnectExternalProvider/constants';
|
|
1
2
|
import { CallsReceipt } from '../hooks/batch/useAwaitCalls';
|
|
2
3
|
import { SupportedChainId } from '../lib/web3/wagmi/types';
|
|
3
4
|
import { OrderData } from '@velora-dex/sdk';
|
|
4
5
|
import { DeltaOrderToPost } from '@velora-dex/sdk/dist/methods/delta/postDeltaOrder';
|
|
5
6
|
import { Address, Hash, Prettify, TransactionReceipt } from 'viem';
|
|
7
|
+
import { Connector } from 'wagmi';
|
|
8
|
+
import { safe, injected, walletConnect } from 'wagmi/connectors';
|
|
9
|
+
type ConnectorData = Prettify<Pick<Connector, "type" | "id"> & {
|
|
10
|
+
isSafe: boolean;
|
|
11
|
+
}>;
|
|
6
12
|
export type TransactionCommonData = {
|
|
7
13
|
chainId: SupportedChainId;
|
|
8
14
|
timestamp: number;
|
|
9
15
|
account: Address;
|
|
10
16
|
dropped: boolean;
|
|
17
|
+
connectorData?: ConnectorData;
|
|
11
18
|
};
|
|
12
19
|
export interface StandaloneTransactionItemData extends TransactionCommonData {
|
|
13
20
|
transactionHash: Hash;
|
|
@@ -62,14 +69,6 @@ export type TransactionItemPreSignDeltaOrder = TransactionItemBase & {
|
|
|
62
69
|
order: DeltaOrderToPost;
|
|
63
70
|
};
|
|
64
71
|
};
|
|
65
|
-
export type TransactionItemDepositNativeAndPreSignDeltaOrder = TransactionItemBase & {
|
|
66
|
-
action: "depositNativeAndPreSign";
|
|
67
|
-
transactionSpecificData: {
|
|
68
|
-
action: "depositNativeAndPreSign";
|
|
69
|
-
depositAmount: bigint;
|
|
70
|
-
order: DeltaOrderToPost;
|
|
71
|
-
};
|
|
72
|
-
};
|
|
73
72
|
export type TransactionItemWrapEth = TransactionItemBase & {
|
|
74
73
|
action: "wrapETH";
|
|
75
74
|
transactionSpecificData: {
|
|
@@ -91,9 +90,33 @@ export type TransactionItemCancelOtcOrder = TransactionItemBase & {
|
|
|
91
90
|
cancelledOrder: OrderData;
|
|
92
91
|
};
|
|
93
92
|
};
|
|
94
|
-
export type TransactionItem = TransactionItemSwap | TransactionItemApprove | TransactionItemWrapAndApprove | TransactionItemWrapEth | TransactionItemFillOtcOrder | TransactionItemCancelOtcOrder | TransactionItemPreSignDeltaOrder
|
|
93
|
+
export type TransactionItem = TransactionItemSwap | TransactionItemApprove | TransactionItemWrapAndApprove | TransactionItemWrapEth | TransactionItemFillOtcOrder | TransactionItemCancelOtcOrder | TransactionItemPreSignDeltaOrder;
|
|
95
94
|
export type MinTransactionItem = TransactionWithoutMeta<TransactionItem>;
|
|
96
95
|
export type StandaloneTransactionItem = Prettify<Extract<TransactionItem, StandaloneTransactionItemData>>;
|
|
97
96
|
export type BatchTransactionItem = Prettify<Extract<TransactionItem, BatchTransactionItemData>>;
|
|
98
|
-
export type TransactionWithoutMeta<T> = T extends Pick<TransactionItem, "dropped" | "timestamp" | "account"> ? Prettify<Omit<T, "dropped" | "timestamp" | "account">> : T;
|
|
97
|
+
export type TransactionWithoutMeta<T> = T extends Pick<TransactionItem, "dropped" | "timestamp" | "account" | "connectorData"> ? Prettify<Omit<T, "dropped" | "timestamp" | "account" | "connectorData">> : T;
|
|
98
|
+
type SafeConnectorData = {
|
|
99
|
+
type: typeof safe.type;
|
|
100
|
+
id: string;
|
|
101
|
+
isSafe: true;
|
|
102
|
+
};
|
|
103
|
+
type SafeIframeThroughExternalConnectorData = {
|
|
104
|
+
type: typeof injected.type;
|
|
105
|
+
id: typeof EXTERNAL_CONNECTOR_SAFE_ID;
|
|
106
|
+
isSafe: true;
|
|
107
|
+
};
|
|
108
|
+
type SafeWalletConnectThroughExternalConnectorData = {
|
|
109
|
+
type: typeof injected.type;
|
|
110
|
+
id: typeof EXTERNAL_CONNECTOR_SAFE_WALLETCONNECT_ID;
|
|
111
|
+
isSafe: true;
|
|
112
|
+
};
|
|
113
|
+
type SafeThroughWalletConnectConnectorData = {
|
|
114
|
+
type: typeof walletConnect.type;
|
|
115
|
+
id: string;
|
|
116
|
+
isSafe: true;
|
|
117
|
+
};
|
|
118
|
+
export type GnosisSafeTransactionItem = Prettify<TransactionItem & {
|
|
119
|
+
connectorData: SafeConnectorData | SafeIframeThroughExternalConnectorData | SafeWalletConnectThroughExternalConnectorData | SafeThroughWalletConnectConnectorData;
|
|
120
|
+
}>;
|
|
121
|
+
export {};
|
|
99
122
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/transactions/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mDAAmD,CAAC;AAC1F,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/transactions/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { BatchTransactionItem, GnosisSafeTransactionItem, StandaloneTransactionItem, TransactionItem, TransactionItemSwap } from './types';
|
|
1
2
|
import { Hash } from 'viem';
|
|
2
|
-
import { BatchTransactionItem, StandaloneTransactionItem, TransactionItem, TransactionItemSwap } from './types';
|
|
3
3
|
export declare function isStandaloneTransactionItem(item: TransactionItem): item is StandaloneTransactionItem;
|
|
4
4
|
export declare function isBatchTransactionItem(item: TransactionItem): item is BatchTransactionItem;
|
|
5
5
|
export declare function extractPendingTransactions<T extends StandaloneTransactionItem | BatchTransactionItem>(transactions: T[]): T[];
|
|
@@ -8,4 +8,5 @@ export type TransactionItemSwapWithId = TransactionItemSwap & {
|
|
|
8
8
|
id: Hash;
|
|
9
9
|
};
|
|
10
10
|
export declare function combineSwapTransactionItems<T extends TransactionItemSwap>(...txArrays: T[][]): TransactionItemSwapWithId[];
|
|
11
|
+
export declare function isGnosisSafeTx(tx: TransactionItem): tx is GnosisSafeTransactionItem;
|
|
11
12
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/transactions/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/transactions/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,oBAAoB,EACpB,yBAAyB,EACzB,yBAAyB,EACzB,eAAe,EACf,mBAAmB,EACpB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAEjC,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,eAAe,GACpB,IAAI,IAAI,yBAAyB,CAEnC;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,eAAe,GACpB,IAAI,IAAI,oBAAoB,CAE9B;AAED,wBAAgB,0BAA0B,CACxC,CAAC,SAAS,yBAAyB,GAAG,oBAAoB,EAC1D,YAAY,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAQxB;AAED,wBAAgB,uBAAuB,CACrC,YAAY,EAAE,CAAC,yBAAyB,GAAG,oBAAoB,CAAC,EAAE,GACjE,mBAAmB,EAAE,CAEvB;AAID,MAAM,MAAM,yBAAyB,GAAG,mBAAmB,GAAG;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,CAAC;AAE3E,wBAAgB,2BAA2B,CAAC,CAAC,SAAS,mBAAmB,EACvE,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE,GACjB,yBAAyB,EAAE,CAiB7B;AAED,wBAAgB,cAAc,CAC5B,EAAE,EAAE,eAAe,GAClB,EAAE,IAAI,yBAAyB,CAOjC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { isConnectorWithSafeProvider } from '../components/web3/ConnectExternalProvider/utils.js';
|
|
2
|
+
|
|
1
3
|
function isStandaloneTransactionItem(item) {
|
|
2
4
|
return "transactionHash" in item;
|
|
3
5
|
}
|
|
@@ -21,6 +23,10 @@ function combineSwapTransactionItems(...txArrays) {
|
|
|
21
23
|
});
|
|
22
24
|
return Object.values(map);
|
|
23
25
|
}
|
|
26
|
+
function isGnosisSafeTx(tx) {
|
|
27
|
+
return !!tx.connectorData && (tx.connectorData.isSafe === true || // extra check for backwards compatibility with txs from localStorage without connectorData.isSafe
|
|
28
|
+
isConnectorWithSafeProvider(tx.connectorData));
|
|
29
|
+
}
|
|
24
30
|
|
|
25
|
-
export { combineSwapTransactionItems, extractPendingTransactions, extractSwapTransactions, isBatchTransactionItem, isStandaloneTransactionItem };
|
|
31
|
+
export { combineSwapTransactionItems, extractPendingTransactions, extractSwapTransactions, isBatchTransactionItem, isGnosisSafeTx, isStandaloneTransactionItem };
|
|
26
32
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sources":["../../src/transactions/utils.ts"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../src/transactions/utils.ts"],"sourcesContent":["import { isConnectorWithSafeProvider } from \"@/components/web3/ConnectExternalProvider/utils\";\nimport type {\n BatchTransactionItem,\n GnosisSafeTransactionItem,\n StandaloneTransactionItem,\n TransactionItem,\n TransactionItemSwap,\n} from \"./types\";\nimport type { Hash } from \"viem\";\n\nexport function isStandaloneTransactionItem(\n item: TransactionItem\n): item is StandaloneTransactionItem {\n return \"transactionHash\" in item;\n}\n\nexport function isBatchTransactionItem(\n item: TransactionItem\n): item is BatchTransactionItem {\n return \"callsId\" in item;\n}\n\nexport function extractPendingTransactions<\n T extends StandaloneTransactionItem | BatchTransactionItem,\n>(transactions: T[]): T[] {\n return transactions.filter(\n (tx) =>\n !tx.dropped &&\n (isStandaloneTransactionItem(tx)\n ? !tx.receipt\n : !tx.callsStatus || tx.callsStatus === \"pending\")\n );\n}\n\nexport function extractSwapTransactions(\n transactions: (StandaloneTransactionItem | BatchTransactionItem)[]\n): TransactionItemSwap[] {\n return transactions.filter((tx) => tx.action === \"swap\");\n}\n\n// not all TransactionItemSwap have transactionHash\n// id will be either transactionHash (for standalone tx) or receipt.transactionHash (for batch tx)\nexport type TransactionItemSwapWithId = TransactionItemSwap & { id: Hash };\n\nexport function combineSwapTransactionItems<T extends TransactionItemSwap>(\n ...txArrays: T[][]\n): TransactionItemSwapWithId[] {\n const map: Record<Hash, TransactionItemSwapWithId> = {};\n\n txArrays.flat().forEach((item) => {\n const transactionHash = isStandaloneTransactionItem(item)\n ? item.transactionHash\n : item.receipt?.transactionHash;\n\n // we can't rely on callsId for batch swap tx as identifier if we have another source of truth\n // better to not show pending calls until we have transactionHash\n // otherwise it may lead to duplicate entries in the Activities list\n // when transaction appeared in the metabase but we still have pending call in the local storage\n if (transactionHash)\n map[transactionHash] = { ...item, id: transactionHash };\n });\n\n return Object.values(map);\n}\n\nexport function isGnosisSafeTx(\n tx: TransactionItem\n): tx is GnosisSafeTransactionItem {\n return (\n !!tx.connectorData &&\n (tx.connectorData.isSafe === true ||\n // extra check for backwards compatibility with txs from localStorage without connectorData.isSafe\n isConnectorWithSafeProvider(tx.connectorData))\n );\n}\n"],"names":["isStandaloneTransactionItem","item","isBatchTransactionItem","extractPendingTransactions","transactions","filter","tx","dropped","receipt","callsStatus","extractSwapTransactions","action","combineSwapTransactionItems","txArrays","map","flat","forEach","transactionHash","id","Object","values","isGnosisSafeTx","connectorData","isSafe","isConnectorWithSafeProvider"],"mappings":";;AAUO,SAASA,4BACdC,IAAAA,EACmC;AACnC,EAAA,OAAO,iBAAA,IAAqBA,IAAAA;AAC9B;AAEO,SAASC,uBACdD,IAAAA,EAC8B;AAC9B,EAAA,OAAO,SAAA,IAAaA,IAAAA;AACtB;AAEO,SAASE,2BAEdC,YAAAA,EAAwB;AACxB,EAAA,OAAOA,aAAaC,MAAAA,CACjBC,CAAAA,EAAAA,KACC,CAACA,EAAAA,CAAGC,YACHP,2BAAAA,CAA4BM,EAAE,CAAA,GAC3B,CAACA,GAAGE,OAAAA,GACJ,CAACF,GAAGG,WAAAA,IAAeH,EAAAA,CAAGG,gBAAgB,SAAA,CAC9C,CAAA;AACF;AAEO,SAASC,wBACdN,YAAAA,EACuB;AACvB,EAAA,OAAOA,YAAAA,CAAaC,MAAAA,CAAQC,CAAAA,EAAAA,KAAOA,EAAAA,CAAGK,WAAW,MAAM,CAAA;AACzD;AAMO,SAASC,+BACXC,QAAAA,EAC0B;AAC7B,EAAA,MAAMC,MAA+C,EAAC;AAEtDD,EAAAA,QAAAA,CAASE,IAAAA,EAAK,CAAEC,OAAAA,CAASf,CAAAA,IAAAA,KAAS;AAChC,IAAA,MAAMgB,kBAAkBjB,2BAAAA,CAA4BC,IAAI,IACpDA,IAAAA,CAAKgB,eAAAA,GACLhB,KAAKO,OAAAA,EAASS,eAAAA;AAMlB,IAAA,IAAIA,eAAAA,EACFH,GAAAA,CAAIG,eAAe,CAAA,GAAI;AAAA,MAAE,GAAGhB,IAAAA;AAAAA,MAAMiB,EAAAA,EAAID;AAAAA,KAAgB;AAAA,EAC1D,CAAC,CAAA;AAED,EAAA,OAAOE,MAAAA,CAAOC,OAAON,GAAG,CAAA;AAC1B;AAEO,SAASO,eACdf,EAAAA,EACiC;AACjC,EAAA,OACE,CAAC,CAACA,EAAAA,CAAGgB,aAAAA,KACJhB,EAAAA,CAAGgB,cAAcC,MAAAA,KAAW,IAAA;AAAA,EAE3BC,2BAAAA,CAA4BlB,GAAGgB,aAAa,CAAA,CAAA;AAElD;;;;"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@velora-dex/widget",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.1",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|
|
@@ -31,6 +31,8 @@
|
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
|
33
33
|
"@eslint/js": "^9.32.0",
|
|
34
|
+
"@safe-global/safe-apps-provider": "^0.18.6",
|
|
35
|
+
"@safe-global/safe-apps-sdk": "^9.1.0",
|
|
34
36
|
"@tailwindcss/vite": "^4.1.11",
|
|
35
37
|
"@tanstack/eslint-plugin-query": "^5.83.1",
|
|
36
38
|
"@tanstack/react-query": "^5.90.12",
|
|
@@ -74,7 +76,7 @@
|
|
|
74
76
|
"@tanstack/react-pacer": "^0.14.0",
|
|
75
77
|
"@tanstack/react-virtual": "^3.13.12",
|
|
76
78
|
"@uniswap/token-lists": "1.0.0-beta.34",
|
|
77
|
-
"@velora-dex/sdk": "9.3.3
|
|
79
|
+
"@velora-dex/sdk": "9.3.3",
|
|
78
80
|
"@wagmi/core": "^2.18.1",
|
|
79
81
|
"axios": "^1.11.0",
|
|
80
82
|
"big.js": "^7.0.1",
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
import { DeltaOrderToPost } from '../../prices/delta/mutations/useCreatePreSignableDeltaOrder';
|
|
2
|
-
import { Address, TransactionReceipt } from 'viem';
|
|
3
|
-
import { SubmittedDeltaOrderFromAPI } from '../../prices/delta/queries/useDeltaOrders';
|
|
4
|
-
import { SupportedChainId } from '../../../../lib/web3/wagmi/types';
|
|
5
|
-
import { LoggerInstance } from '../../../../lib/utils/logger';
|
|
6
|
-
import { DeltaOrderApiResponse, MinViemClient } from '@velora-dex/sdk';
|
|
7
|
-
import { CreateDeltaOrderInput } from '../../prices/delta/mutations/useCreateDeltaOrder';
|
|
8
|
-
import { TxSentObject } from '../../../../lib/utils/transactionHandlers';
|
|
9
|
-
export type DeltaOrderDepositResult = {
|
|
10
|
-
depositPrep: {
|
|
11
|
-
order?: DeltaOrderToPost;
|
|
12
|
-
isCreatingOrder: boolean;
|
|
13
|
-
isOrderHashReady: boolean;
|
|
14
|
-
isPending: boolean;
|
|
15
|
-
isError: boolean;
|
|
16
|
-
isSuccess: boolean;
|
|
17
|
-
error: Error | null;
|
|
18
|
-
};
|
|
19
|
-
depositTx: {
|
|
20
|
-
txHash?: Address;
|
|
21
|
-
receipt?: TransactionReceipt;
|
|
22
|
-
isConfirmingTX: boolean;
|
|
23
|
-
isConfirmingTxError: boolean;
|
|
24
|
-
isTxSent: boolean;
|
|
25
|
-
isTxPending: boolean;
|
|
26
|
-
isTxMined: boolean;
|
|
27
|
-
isTxAwaitingError: boolean;
|
|
28
|
-
isPending: boolean;
|
|
29
|
-
isSuccess: boolean;
|
|
30
|
-
isError: boolean;
|
|
31
|
-
error: Error | null;
|
|
32
|
-
};
|
|
33
|
-
postingOrder: {
|
|
34
|
-
order?: SubmittedDeltaOrderFromAPI;
|
|
35
|
-
isPostingOrder: boolean;
|
|
36
|
-
isOrderSent: boolean;
|
|
37
|
-
isPending: boolean;
|
|
38
|
-
isError: boolean;
|
|
39
|
-
isSuccess: boolean;
|
|
40
|
-
error: Error | null;
|
|
41
|
-
};
|
|
42
|
-
order?: SubmittedDeltaOrderFromAPI;
|
|
43
|
-
isCreatingOrder: boolean;
|
|
44
|
-
isOrderSent: boolean;
|
|
45
|
-
isPending: boolean;
|
|
46
|
-
isError: boolean;
|
|
47
|
-
isSuccess: boolean;
|
|
48
|
-
error: Error | null;
|
|
49
|
-
};
|
|
50
|
-
type UseDepositAndSubmitDeltaOrderInput = {
|
|
51
|
-
chainId: SupportedChainId;
|
|
52
|
-
account?: Address;
|
|
53
|
-
logger: LoggerInstance;
|
|
54
|
-
viemClient?: MinViemClient;
|
|
55
|
-
};
|
|
56
|
-
type UseDepositAndSubmitDeltaOrderResult = {
|
|
57
|
-
deltaOrderDeposit: DeltaOrderDepositResult;
|
|
58
|
-
depositAndSubmitDeltaOrder: DepositAndSubmitDeltaOrderFunc;
|
|
59
|
-
reset: () => void;
|
|
60
|
-
};
|
|
61
|
-
export declare function useDepositAndSubmitDeltaOrder({ chainId, account, logger, viemClient, }: UseDepositAndSubmitDeltaOrderInput): UseDepositAndSubmitDeltaOrderResult;
|
|
62
|
-
type DepositAndSubmitDeltaOrderInput = {
|
|
63
|
-
createDeltaOrderInput: CreateDeltaOrderInput;
|
|
64
|
-
depositAmount: string;
|
|
65
|
-
onTxSent?: (txSent: TxSentObject) => void;
|
|
66
|
-
};
|
|
67
|
-
type DepositAndSubmitDeltaOrderFunc = (input: DepositAndSubmitDeltaOrderInput) => Promise<DeltaOrderApiResponse>;
|
|
68
|
-
export {};
|
|
69
|
-
//# sourceMappingURL=useDepositAndSubmitDeltaOrder.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useDepositAndSubmitDeltaOrder.d.ts","sourceRoot":"","sources":["../../../../../src/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,192 +0,0 @@
|
|
|
1
|
-
import { useFetchOnlySDK } from '../../../useSDK.js';
|
|
2
|
-
import { useDepositPreSignDeltaOrder } from '../../prices/delta/mutations/useCreatePreSignableDeltaOrder.js';
|
|
3
|
-
import { isAddress } from 'viem';
|
|
4
|
-
import { deltaOrdersQueryKey } from '../../prices/delta/queries/useDeltaOrders.js';
|
|
5
|
-
import { usePostDeltaOrder } from '../../prices/delta/mutations/usePostDeltaOrder.js';
|
|
6
|
-
import { useQueryClient } from '@tanstack/react-query';
|
|
7
|
-
import { assert } from 'ts-essentials';
|
|
8
|
-
import { useEnsureContractsQuery } from '../../prices/market/queries/useSpenderAndContracts.js';
|
|
9
|
-
import { useSendArbitraryTx } from '../../../txs/mutations/useSendTx.js';
|
|
10
|
-
import { useAwaitTx, useEnsureTxReceipt } from '../../../txs/queries/useAwaitTx.js';
|
|
11
|
-
import { isETHaddress } from '../../../../tokens/utils/eth.js';
|
|
12
|
-
|
|
13
|
-
function useDepositAndSubmitDeltaOrder({
|
|
14
|
-
chainId,
|
|
15
|
-
account,
|
|
16
|
-
logger,
|
|
17
|
-
viemClient
|
|
18
|
-
}) {
|
|
19
|
-
const queryClient = useQueryClient();
|
|
20
|
-
const depositOrderMut = useDepositPreSignDeltaOrder({
|
|
21
|
-
chainId,
|
|
22
|
-
client: viemClient
|
|
23
|
-
});
|
|
24
|
-
const {
|
|
25
|
-
sdk: fetchOnlySDK
|
|
26
|
-
} = useFetchOnlySDK({
|
|
27
|
-
chainId
|
|
28
|
-
});
|
|
29
|
-
const depositPrep = {
|
|
30
|
-
isCreatingOrder: depositOrderMut.isPending,
|
|
31
|
-
isOrderHashReady: depositOrderMut.isSuccess,
|
|
32
|
-
order: depositOrderMut.data?.orderToPost,
|
|
33
|
-
isPending: depositOrderMut.isPending,
|
|
34
|
-
isError: depositOrderMut.isError,
|
|
35
|
-
isSuccess: depositOrderMut.isSuccess,
|
|
36
|
-
error: depositOrderMut.error
|
|
37
|
-
};
|
|
38
|
-
const sendDepositTxMut = useSendArbitraryTx();
|
|
39
|
-
const awaitDepositTx = useAwaitTx({
|
|
40
|
-
hash: sendDepositTxMut.txHash,
|
|
41
|
-
chainId
|
|
42
|
-
});
|
|
43
|
-
const depositTx = {
|
|
44
|
-
txHash: sendDepositTxMut.txHash,
|
|
45
|
-
receipt: awaitDepositTx.data,
|
|
46
|
-
/* tx sending */
|
|
47
|
-
isConfirmingTX: sendDepositTxMut.isPending,
|
|
48
|
-
isConfirmingTxError: sendDepositTxMut.isError,
|
|
49
|
-
isTxSent: sendDepositTxMut.isSuccess,
|
|
50
|
-
/* tx awaiting */
|
|
51
|
-
isTxPending: awaitDepositTx.isLoading,
|
|
52
|
-
isTxMined: awaitDepositTx.isSuccess,
|
|
53
|
-
isTxAwaitingError: awaitDepositTx.isError,
|
|
54
|
-
/* combined */
|
|
55
|
-
isPending: sendDepositTxMut.isPending || awaitDepositTx.isLoading,
|
|
56
|
-
isSuccess: awaitDepositTx.isSuccess,
|
|
57
|
-
// final success
|
|
58
|
-
isError: sendDepositTxMut.isError || awaitDepositTx.isError,
|
|
59
|
-
error: sendDepositTxMut.error || awaitDepositTx.error
|
|
60
|
-
};
|
|
61
|
-
const postOrderMut = usePostDeltaOrder({
|
|
62
|
-
chainId,
|
|
63
|
-
account,
|
|
64
|
-
client: viemClient,
|
|
65
|
-
mutationOptions: {
|
|
66
|
-
onSuccess: (order) => {
|
|
67
|
-
logger.log("[DepositAndSubmit] Create Delta Order success", order);
|
|
68
|
-
queryClient.invalidateQueries({
|
|
69
|
-
queryKey: deltaOrdersQueryKey({
|
|
70
|
-
userAddress: order.user
|
|
71
|
-
}),
|
|
72
|
-
exact: false
|
|
73
|
-
});
|
|
74
|
-
},
|
|
75
|
-
onError: (error) => {
|
|
76
|
-
logger.error("[DepositAndSubmit] Create Delta Order error", error);
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
});
|
|
80
|
-
const deltaOrderPosting = {
|
|
81
|
-
order: postOrderMut.data,
|
|
82
|
-
isPostingOrder: postOrderMut.isPending,
|
|
83
|
-
isOrderSent: postOrderMut.isSuccess,
|
|
84
|
-
isPending: postOrderMut.isPending,
|
|
85
|
-
isError: postOrderMut.isError,
|
|
86
|
-
isSuccess: postOrderMut.isSuccess,
|
|
87
|
-
error: postOrderMut.error
|
|
88
|
-
};
|
|
89
|
-
const deltaOrderDeposit = {
|
|
90
|
-
order: postOrderMut.data,
|
|
91
|
-
depositPrep,
|
|
92
|
-
depositTx,
|
|
93
|
-
postingOrder: deltaOrderPosting,
|
|
94
|
-
isCreatingOrder: depositPrep.isCreatingOrder || depositTx.isPending || deltaOrderPosting.isPostingOrder,
|
|
95
|
-
isOrderSent: deltaOrderPosting.isOrderSent,
|
|
96
|
-
isPending: depositPrep.isPending || depositTx.isPending || deltaOrderPosting.isPending,
|
|
97
|
-
isError: depositPrep.isError || depositTx.isError || deltaOrderPosting.isError,
|
|
98
|
-
isSuccess: deltaOrderPosting.isSuccess,
|
|
99
|
-
error: depositPrep.error || depositTx.error || deltaOrderPosting.error
|
|
100
|
-
};
|
|
101
|
-
const ensureTxReceipt = useEnsureTxReceipt();
|
|
102
|
-
const {
|
|
103
|
-
ensureContractsLoaded
|
|
104
|
-
} = useEnsureContractsQuery({
|
|
105
|
-
chainId
|
|
106
|
-
});
|
|
107
|
-
const depositAndSubmitDeltaOrder = async ({
|
|
108
|
-
depositAmount: _depositAmount,
|
|
109
|
-
createDeltaOrderInput,
|
|
110
|
-
onTxSent
|
|
111
|
-
}) => {
|
|
112
|
-
const depositAmount = BigInt(_depositAmount);
|
|
113
|
-
assert(isETHaddress(createDeltaOrderInput.orderInput.srcToken), "srcToken must be ETH");
|
|
114
|
-
assert(depositAmount > 0n, "depositAmount must be greater than 0");
|
|
115
|
-
const {
|
|
116
|
-
signal
|
|
117
|
-
} = createDeltaOrderInput;
|
|
118
|
-
const {
|
|
119
|
-
ParaswapDelta: DeltaContract
|
|
120
|
-
} = await ensureContractsLoaded({
|
|
121
|
-
signal
|
|
122
|
-
});
|
|
123
|
-
assert(DeltaContract && isAddress(DeltaContract), `DeltaContract is not available on chain ${chainId}`);
|
|
124
|
-
signal?.throwIfAborted();
|
|
125
|
-
const {
|
|
126
|
-
orderToPost,
|
|
127
|
-
depositAndPreSignCalldata
|
|
128
|
-
} = await depositOrderMut.mutateAsync(createDeltaOrderInput);
|
|
129
|
-
signal?.throwIfAborted();
|
|
130
|
-
let orderIsPosted = false;
|
|
131
|
-
const sendUnsentOrderOnPageHide = () => {
|
|
132
|
-
if (orderIsPosted) return;
|
|
133
|
-
orderIsPosted = true;
|
|
134
|
-
fetchOnlySDK?.postDeltaOrder(orderToPost);
|
|
135
|
-
};
|
|
136
|
-
window.addEventListener("pagehide", sendUnsentOrderOnPageHide, {
|
|
137
|
-
once: true
|
|
138
|
-
});
|
|
139
|
-
try {
|
|
140
|
-
const depositTxHash = await sendDepositTxMut.sendTransactionAsync({
|
|
141
|
-
to: DeltaContract,
|
|
142
|
-
from: account,
|
|
143
|
-
data: depositAndPreSignCalldata,
|
|
144
|
-
value: depositAmount
|
|
145
|
-
});
|
|
146
|
-
logger.log("[DepositAndSubmit] awaiting depositNativeAndPreSign txHash:", depositTxHash);
|
|
147
|
-
const depositTxReceiptPromise = ensureTxReceipt({
|
|
148
|
-
hash: depositTxHash,
|
|
149
|
-
chainId,
|
|
150
|
-
onReplaced: (data) => {
|
|
151
|
-
logger.log("[DepositAndSubmit] onReplaced:txHash", depositTxHash, data);
|
|
152
|
-
}
|
|
153
|
-
});
|
|
154
|
-
if (onTxSent) {
|
|
155
|
-
onTxSent({
|
|
156
|
-
chainId,
|
|
157
|
-
action: "depositNativeAndPreSign",
|
|
158
|
-
receiptPromise: depositTxReceiptPromise,
|
|
159
|
-
transactionHash: depositTxHash,
|
|
160
|
-
transactionSpecificData: {
|
|
161
|
-
action: "depositNativeAndPreSign",
|
|
162
|
-
order: orderToPost,
|
|
163
|
-
depositAmount
|
|
164
|
-
}
|
|
165
|
-
});
|
|
166
|
-
}
|
|
167
|
-
const depositTxReceipt = await depositTxReceiptPromise;
|
|
168
|
-
logger.log("[DepositAndSubmit] depositNativeAndPreSign tx mined, receipt:", depositTxReceipt);
|
|
169
|
-
const orderFromAPI = await postOrderMut.mutateAsync(orderToPost);
|
|
170
|
-
orderIsPosted = true;
|
|
171
|
-
return orderFromAPI;
|
|
172
|
-
} catch (error_0) {
|
|
173
|
-
logger.error("[DepositAndSubmit] error", error_0);
|
|
174
|
-
throw error_0;
|
|
175
|
-
} finally {
|
|
176
|
-
window.removeEventListener("pagehide", sendUnsentOrderOnPageHide);
|
|
177
|
-
}
|
|
178
|
-
};
|
|
179
|
-
const reset = () => {
|
|
180
|
-
depositOrderMut.reset();
|
|
181
|
-
sendDepositTxMut.reset();
|
|
182
|
-
postOrderMut.reset();
|
|
183
|
-
};
|
|
184
|
-
return {
|
|
185
|
-
deltaOrderDeposit,
|
|
186
|
-
depositAndSubmitDeltaOrder,
|
|
187
|
-
reset
|
|
188
|
-
};
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
export { useDepositAndSubmitDeltaOrder };
|
|
192
|
-
//# sourceMappingURL=useDepositAndSubmitDeltaOrder.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useDepositAndSubmitDeltaOrder.js","sources":["../../../../../src/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.ts"],"sourcesContent":["import { useFetchOnlySDK } from \"@/hooks/useSDK\";\nimport {\n useDepositPreSignDeltaOrder,\n type DeltaOrderToPost,\n} from \"../../prices/delta/mutations/useCreatePreSignableDeltaOrder\";\n\nimport { isAddress, type Address, type TransactionReceipt } from \"viem\";\nimport {\n deltaOrdersQueryKey,\n type SubmittedDeltaOrderFromAPI,\n} from \"../../prices/delta/queries/useDeltaOrders\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport type { LoggerInstance } from \"@/lib/utils/logger\";\nimport type { DeltaOrderApiResponse, MinViemClient } from \"@velora-dex/sdk\";\nimport { usePostDeltaOrder } from \"../../prices/delta/mutations/usePostDeltaOrder\";\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport type { CreateDeltaOrderInput } from \"../../prices/delta/mutations/useCreateDeltaOrder\";\nimport type { TxSentObject } from \"@/lib/utils/transactionHandlers\";\nimport { assert } from \"ts-essentials\";\nimport { useEnsureContractsQuery } from \"../../prices/market/queries/useSpenderAndContracts\";\nimport { useSendArbitraryTx } from \"@/hooks/txs/mutations/useSendTx\";\nimport { useAwaitTx, useEnsureTxReceipt } from \"@/hooks/txs/queries/useAwaitTx\";\nimport { isETHaddress } from \"@/tokens/utils/eth\";\n\nexport type DeltaOrderDepositResult = {\n depositPrep: {\n order?: DeltaOrderToPost;\n isCreatingOrder: boolean;\n isOrderHashReady: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n depositTx: {\n txHash?: Address;\n receipt?: TransactionReceipt;\n isConfirmingTX: boolean;\n isConfirmingTxError: boolean;\n isTxSent: boolean;\n isTxPending: boolean;\n isTxMined: boolean;\n isTxAwaitingError: boolean;\n isPending: boolean;\n isSuccess: boolean;\n isError: boolean;\n error: Error | null;\n };\n postingOrder: {\n order?: SubmittedDeltaOrderFromAPI;\n isPostingOrder: boolean;\n isOrderSent: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n order?: SubmittedDeltaOrderFromAPI;\n isCreatingOrder: boolean;\n isOrderSent: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n};\n\ntype UseDepositAndSubmitDeltaOrderInput = {\n chainId: SupportedChainId;\n account?: Address;\n logger: LoggerInstance;\n viemClient?: MinViemClient;\n};\n\ntype UseDepositAndSubmitDeltaOrderResult = {\n deltaOrderDeposit: DeltaOrderDepositResult;\n depositAndSubmitDeltaOrder: DepositAndSubmitDeltaOrderFunc;\n reset: () => void;\n};\n\nexport function useDepositAndSubmitDeltaOrder({\n chainId,\n account,\n logger,\n viemClient,\n}: UseDepositAndSubmitDeltaOrderInput): UseDepositAndSubmitDeltaOrderResult {\n const queryClient = useQueryClient();\n\n const depositOrderMut = useDepositPreSignDeltaOrder({\n chainId,\n client: viemClient,\n });\n\n const { sdk: fetchOnlySDK } = useFetchOnlySDK({\n chainId,\n });\n\n const depositPrep: DeltaOrderDepositResult[\"depositPrep\"] = {\n isCreatingOrder: depositOrderMut.isPending,\n isOrderHashReady: depositOrderMut.isSuccess,\n order: depositOrderMut.data?.orderToPost,\n isPending: depositOrderMut.isPending,\n isError: depositOrderMut.isError,\n isSuccess: depositOrderMut.isSuccess,\n error: depositOrderMut.error,\n };\n\n /* 1. submit depositNativeAndPreSign tx */\n const sendDepositTxMut = useSendArbitraryTx();\n\n /* 2. await depositNativeAndPreSign tx */\n const awaitDepositTx = useAwaitTx({\n hash: sendDepositTxMut.txHash,\n chainId,\n });\n\n const depositTx = {\n txHash: sendDepositTxMut.txHash,\n receipt: awaitDepositTx.data,\n /* tx sending */\n isConfirmingTX: sendDepositTxMut.isPending,\n isConfirmingTxError: sendDepositTxMut.isError,\n isTxSent: sendDepositTxMut.isSuccess,\n /* tx awaiting */\n isTxPending: awaitDepositTx.isLoading,\n isTxMined: awaitDepositTx.isSuccess,\n isTxAwaitingError: awaitDepositTx.isError,\n /* combined */\n isPending: sendDepositTxMut.isPending || awaitDepositTx.isLoading,\n isSuccess: awaitDepositTx.isSuccess, // final success\n isError: sendDepositTxMut.isError || awaitDepositTx.isError,\n error: sendDepositTxMut.error || awaitDepositTx.error,\n };\n\n /* 3. post Pre-signed Order */\n\n const postOrderMut = usePostDeltaOrder({\n chainId,\n account,\n client: viemClient,\n mutationOptions: {\n onSuccess: (order) => {\n logger.log(\"[DepositAndSubmit] Create Delta Order success\", order);\n queryClient.invalidateQueries({\n queryKey: deltaOrdersQueryKey({\n userAddress: order.user,\n }),\n exact: false,\n });\n },\n onError: (error) => {\n logger.error(\"[DepositAndSubmit] Create Delta Order error\", error);\n },\n },\n });\n\n const deltaOrderPosting: DeltaOrderDepositResult[\"postingOrder\"] = {\n order: postOrderMut.data,\n isPostingOrder: postOrderMut.isPending,\n isOrderSent: postOrderMut.isSuccess,\n isPending: postOrderMut.isPending,\n isError: postOrderMut.isError,\n isSuccess: postOrderMut.isSuccess,\n error: postOrderMut.error,\n };\n\n const deltaOrderDeposit: DeltaOrderDepositResult = {\n order: postOrderMut.data,\n depositPrep: depositPrep,\n depositTx,\n postingOrder: deltaOrderPosting,\n isCreatingOrder:\n depositPrep.isCreatingOrder ||\n depositTx.isPending ||\n deltaOrderPosting.isPostingOrder,\n isOrderSent: deltaOrderPosting.isOrderSent,\n isPending:\n depositPrep.isPending ||\n depositTx.isPending ||\n deltaOrderPosting.isPending,\n isError:\n depositPrep.isError || depositTx.isError || deltaOrderPosting.isError,\n isSuccess: deltaOrderPosting.isSuccess,\n error: depositPrep.error || depositTx.error || deltaOrderPosting.error,\n };\n\n const ensureTxReceipt = useEnsureTxReceipt();\n const { ensureContractsLoaded } = useEnsureContractsQuery({ chainId });\n\n const depositAndSubmitDeltaOrder: DepositAndSubmitDeltaOrderFunc = async ({\n depositAmount: _depositAmount,\n createDeltaOrderInput,\n onTxSent,\n }) => {\n const depositAmount = BigInt(_depositAmount);\n\n assert(\n isETHaddress(createDeltaOrderInput.orderInput.srcToken),\n \"srcToken must be ETH\"\n );\n assert(depositAmount > 0n, \"depositAmount must be greater than 0\");\n\n // prepare Order for depositing + pre-signing and POSTing:\n // 1. builds the order\n // 2. hashes the built order\n // 3. construct DeltaContract.depositNativeAndPreSign(orderHash) tx calldata\n\n const { signal } = createDeltaOrderInput;\n\n const { ParaswapDelta: DeltaContract } = await ensureContractsLoaded({\n signal,\n });\n\n assert(\n DeltaContract && isAddress(DeltaContract),\n `DeltaContract is not available on chain ${chainId}`\n );\n\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n const { orderToPost, depositAndPreSignCalldata } =\n await depositOrderMut.mutateAsync(createDeltaOrderInput);\n\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n let orderIsPosted = false;\n\n const sendUnsentOrderOnPageHide = () => {\n if (orderIsPosted) return;\n orderIsPosted = true;\n fetchOnlySDK?.postDeltaOrder(orderToPost);\n };\n\n // subscribe to `pagehide` event\n // in that case POST the Order just in case the page is never reloaded or localStorage survives until then.\n window.addEventListener(\"pagehide\", sendUnsentOrderOnPageHide, {\n once: true,\n });\n\n try {\n // 4. send the depositNativeAndPreSign tx\n const depositTxHash = await sendDepositTxMut.sendTransactionAsync({\n to: DeltaContract,\n from: account,\n data: depositAndPreSignCalldata,\n value: depositAmount,\n });\n\n logger.log(\n \"[DepositAndSubmit] awaiting depositNativeAndPreSign txHash:\",\n depositTxHash\n );\n\n const depositTxReceiptPromise = ensureTxReceipt({\n hash: depositTxHash,\n chainId,\n onReplaced: (data) => {\n logger.log(\n \"[DepositAndSubmit] onReplaced:txHash\",\n depositTxHash,\n data\n );\n },\n });\n\n if (onTxSent) {\n onTxSent({\n chainId,\n action: \"depositNativeAndPreSign\",\n receiptPromise: depositTxReceiptPromise,\n transactionHash: depositTxHash,\n transactionSpecificData: {\n action: \"depositNativeAndPreSign\",\n order: orderToPost,\n depositAmount,\n },\n });\n }\n\n // 5. wait for the depositNativeAndPreSign tx to be mined\n const depositTxReceipt = await depositTxReceiptPromise;\n\n logger.log(\n \"[DepositAndSubmit] depositNativeAndPreSign tx mined, receipt:\",\n depositTxReceipt\n );\n\n // 6. POST the Order to API with signature=0x\n const orderFromAPI = await postOrderMut.mutateAsync(orderToPost);\n orderIsPosted = true;\n\n return orderFromAPI;\n } catch (error) {\n logger.error(\"[DepositAndSubmit] error\", error);\n throw error;\n } finally {\n window.removeEventListener(\"pagehide\", sendUnsentOrderOnPageHide);\n }\n };\n\n const reset = () => {\n depositOrderMut.reset();\n sendDepositTxMut.reset();\n postOrderMut.reset();\n };\n\n return {\n deltaOrderDeposit,\n depositAndSubmitDeltaOrder,\n reset,\n };\n}\n\ntype DepositAndSubmitDeltaOrderInput = {\n createDeltaOrderInput: CreateDeltaOrderInput;\n depositAmount: string;\n onTxSent?: (txSent: TxSentObject) => void;\n};\n\ntype DepositAndSubmitDeltaOrderFunc = (\n input: DepositAndSubmitDeltaOrderInput\n) => Promise<DeltaOrderApiResponse>;\n"],"names":["useDepositAndSubmitDeltaOrder","chainId","account","logger","viemClient","queryClient","useQueryClient","depositOrderMut","useDepositPreSignDeltaOrder","client","sdk","fetchOnlySDK","useFetchOnlySDK","depositPrep","isCreatingOrder","isPending","isOrderHashReady","isSuccess","order","data","orderToPost","isError","error","sendDepositTxMut","useSendArbitraryTx","awaitDepositTx","useAwaitTx","hash","txHash","depositTx","receipt","isConfirmingTX","isConfirmingTxError","isTxSent","isTxPending","isLoading","isTxMined","isTxAwaitingError","postOrderMut","usePostDeltaOrder","mutationOptions","onSuccess","log","invalidateQueries","queryKey","deltaOrdersQueryKey","userAddress","user","exact","onError","deltaOrderPosting","isPostingOrder","isOrderSent","deltaOrderDeposit","postingOrder","ensureTxReceipt","useEnsureTxReceipt","ensureContractsLoaded","useEnsureContractsQuery","depositAndSubmitDeltaOrder","depositAmount","_depositAmount","createDeltaOrderInput","onTxSent","BigInt","assert","isETHaddress","orderInput","srcToken","signal","ParaswapDelta","DeltaContract","isAddress","throwIfAborted","depositAndPreSignCalldata","mutateAsync","orderIsPosted","sendUnsentOrderOnPageHide","postDeltaOrder","window","addEventListener","once","depositTxHash","sendTransactionAsync","to","from","value","depositTxReceiptPromise","onReplaced","action","receiptPromise","transactionHash","transactionSpecificData","depositTxReceipt","orderFromAPI","removeEventListener","reset"],"mappings":"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"}
|