@dhedge/trading-widget 1.2.9 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +110 -110
- package/core-kit/abi/easy-swapper-v2.d.ts +413 -0
- package/core-kit/abi/flatcoin-points-module.d.ts +1 -1
- package/core-kit/abi/index.d.ts +2 -1
- package/core-kit/const/config.d.ts +1 -1
- package/core-kit/const/contracts/arbitrum.d.ts +1 -0
- package/core-kit/const/contracts/base.d.ts +1 -0
- package/core-kit/const/contracts/optimism.d.ts +1 -0
- package/core-kit/const/contracts/polygon.d.ts +1 -0
- package/core-kit/const/default-data.d.ts +3 -7
- package/core-kit/const/index.d.ts +1 -0
- package/core-kit/const/logger.d.ts +0 -1
- package/core-kit/const/synthetix.d.ts +1 -0
- package/core-kit/const/tokens/index.d.ts +2 -1
- package/core-kit/const/trading.d.ts +10 -0
- package/core-kit/hooks/pool/multicall/use-pool.static.d.ts +530 -401
- package/core-kit/hooks/pool/use-pool-fees.d.ts +0 -1
- package/core-kit/hooks/state/action.d.ts +4 -1
- package/core-kit/hooks/state/index.d.ts +3 -3
- package/core-kit/hooks/state/meta.d.ts +0 -2
- package/core-kit/hooks/state/pool.d.ts +0 -2
- package/core-kit/hooks/trading/deposit-v2/index.d.ts +16 -0
- package/core-kit/hooks/trading/deposit-v2/use-applied-deposit-slippage.d.ts +1 -0
- package/core-kit/hooks/trading/deposit-v2/use-deposit-lock-time.d.ts +1 -0
- package/core-kit/hooks/trading/deposit-v2/use-deposit-price-diff.d.ts +5 -0
- package/core-kit/hooks/trading/deposit-v2/use-deposit-quote-contract-read.d.ts +414 -0
- package/core-kit/hooks/trading/deposit-v2/use-deposit-quote.d.ts +1 -0
- package/core-kit/hooks/trading/deposit-v2/use-deposit-slippage.d.ts +1 -0
- package/core-kit/hooks/trading/deposit-v2/use-is-custom-cooldown-deposit.d.ts +1 -0
- package/core-kit/hooks/trading/deposit-v2/use-is-deposit-with-swap-transaction.d.ts +1 -0
- package/core-kit/hooks/trading/deposit-v2/use-is-vault-deposit-locked.d.ts +4 -0
- package/core-kit/hooks/trading/deposit-v2/use-min-vault-tokens-received-amount.d.ts +1 -0
- package/core-kit/hooks/trading/deposit-v2/use-swap-data-based-on-send-token.d.ts +1 -0
- package/core-kit/hooks/trading/deposit-v2/use-vault-deposit-params.d.ts +2 -0
- package/core-kit/hooks/trading/deposit-v2/use-vault-deposit-token-amount.d.ts +1 -0
- package/core-kit/hooks/trading/{deposit/use-pool-deposit-tokens.d.ts → deposit-v2/use-vault-deposit-tokens.d.ts} +1 -1
- package/core-kit/hooks/trading/deposit-v2/use-vault-deposit-transaction-arguments.d.ts +2 -0
- package/core-kit/hooks/trading/index.d.ts +1 -3
- package/core-kit/hooks/trading/use-swap-data-query.d.ts +6 -0
- package/core-kit/models/index.d.ts +0 -3
- package/core-kit/types/config.types.d.ts +1 -4
- package/core-kit/types/state.types.d.ts +8 -13
- package/core-kit/types/trading-panel.types.d.ts +0 -1
- package/core-kit/types/trading.types.d.ts +21 -3
- package/core-kit/utils/transaction.d.ts +12 -0
- package/{index-76dd5f17.js → index-8649280a.js} +12840 -12519
- package/index-e1549967.cjs +207 -0
- package/index.cjs +1 -1
- package/index.d.ts +6 -9
- package/index.js +226 -260
- package/package.json +1 -1
- package/{pyth-adapter-5642b8a7.js → pyth-adapter-ac818fc3.js} +1 -1
- package/{pyth-adapter-4f3cae01.cjs → pyth-adapter-e6d49270.cjs} +1 -1
- package/trading-widget/components/deposit/meta/transaction-disclosure/transaction-disclosure.hooks.d.ts +1 -0
- package/trading-widget/components/widget/widget-input/asset-composition-table/asset-composition-table.hooks.d.ts +1 -0
- package/trading-widget/components/widget/widget-input/asset-composition-table/withdraw-explanation-tip.d.ts +4 -0
- package/trading-widget/components/widget/widget-overlay/pool-select-overlay/pool-select-overlay.hooks.d.ts +0 -3
- package/trading-widget/providers/config-provider/config-provider.types.d.ts +2 -1
- package/trading-widget/providers/translation-provider/translation-provider.types.d.ts +0 -2
- package/core-kit/hooks/trading/deposit/index.d.ts +0 -10
- package/core-kit/hooks/trading/deposit/use-deposit-method-handler.d.ts +0 -2
- package/core-kit/hooks/trading/deposit/use-deposit-quote.d.ts +0 -2
- package/core-kit/hooks/trading/deposit/use-deposit-slippage.d.ts +0 -1
- package/core-kit/hooks/trading/deposit/use-deposit-trading-params.d.ts +0 -2
- package/core-kit/hooks/trading/deposit/use-pool-deposit-asset-address.d.ts +0 -9
- package/core-kit/hooks/trading/deposit/use-should-be-whitelisted.d.ts +0 -4
- package/core-kit/hooks/trading/use-handle-pool-swap-info.d.ts +0 -1
- package/core-kit/hooks/trading/use-is-easy-swapper-trading.d.ts +0 -1
- package/core-kit/hooks/trading/use-trading-price-diff.d.ts +0 -8
- package/core-kit/models/buying-with-easyswapper-args.d.ts +0 -18
- package/core-kit/models/buying-with-native-asset-args.d.ts +0 -16
- package/core-kit/models/buying-with-pool-logic-args.d.ts +0 -14
- package/index-83c3afd8.cjs +0 -207
- package/trading-widget/components/deposit/settings/deposit-fee-switch/deposit-fee-switch.d.ts +0 -1
- package/trading-widget/components/deposit/settings/deposit-fee-switch/deposit-fee-switch.hooks.d.ts +0 -5
- package/trading-widget/components/deposit/settings/deposit-settings/deposit-settings.hooks.d.ts +0 -6
- /package/core-kit/hooks/trading/{deposit → deposit-v2}/use-deposit-allowance.d.ts +0 -0
- /package/core-kit/hooks/trading/{deposit → deposit-v2}/use-deposit.d.ts +0 -0
- /package/core-kit/hooks/trading/{deposit → deposit-v2}/use-handle-pool-deposit-data.d.ts +0 -0
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { EstimationError } from 'core-kit/models';
|
|
2
2
|
import type { PoolConfig, PoolFallbackData } from 'core-kit/types/config.types';
|
|
3
|
-
import type {
|
|
3
|
+
import type { DynamicTradingToken, PendingTransaction, TokenSelectorPayload, TradingModalStatus, TradingPanelType, TradingToken, TransactionAction, UpdateTransactionsArguments } from 'core-kit/types/trading-panel.types';
|
|
4
|
+
import type { SwapDataRequest, SwapDataResponse } from 'core-kit/types/trading.types';
|
|
4
5
|
import type { Address, ChainId, SimulateTransactionParams, SimulateTransactionResponse, WaitForTransactionReceiptReturnType } from 'core-kit/types/web3.types';
|
|
5
6
|
export interface TradingPanelStateModal {
|
|
6
7
|
isOpen: boolean;
|
|
@@ -23,7 +24,6 @@ export interface TradingPanelState {
|
|
|
23
24
|
sendToken: DynamicTradingToken;
|
|
24
25
|
receiveToken: DynamicTradingToken;
|
|
25
26
|
};
|
|
26
|
-
entryFee: Record<DepositMethodName, number>;
|
|
27
27
|
meta: {
|
|
28
28
|
approvingStatus?: 'pending' | 'success';
|
|
29
29
|
};
|
|
@@ -36,26 +36,22 @@ export interface TradingPanelState {
|
|
|
36
36
|
}
|
|
37
37
|
export interface TradingPanelSetters {
|
|
38
38
|
setPoolAddress: (payload: TradingPanelState['poolAddress']) => void;
|
|
39
|
-
updatePoolConfigDepositMethod: (payload: Pick<PoolConfig, 'address'> & Pick<PoolConfig['depositParams'], 'method'>) => void;
|
|
40
39
|
updateSendTokenInput: (payload: Partial<DynamicTradingToken>) => void;
|
|
41
40
|
updateReceiveTokenInput: (payload: Partial<DynamicTradingToken>) => void;
|
|
42
41
|
updateTradingSettings: (payload: Partial<TradingPanelState['settings']>) => void;
|
|
43
42
|
setTradingType: (payload: TradingPanelState['type']) => void;
|
|
44
43
|
updateTradingMeta: (payload: Partial<TradingPanelState['meta']>) => void;
|
|
45
|
-
updateEntryFee: (payload: Partial<TradingPanelState['entryFee']>) => void;
|
|
46
44
|
updateTradingModal: (payload: Partial<TradingPanelState['modal']>) => void;
|
|
47
45
|
updateTransactions: (payload: UpdateTransactionsArguments) => void;
|
|
48
46
|
updatePoolFallbackData: (payload: PoolFallbackData) => void;
|
|
49
47
|
}
|
|
50
48
|
export interface CallbackConfig {
|
|
51
49
|
onSetPoolAddress: TradingPanelSetters['setPoolAddress'];
|
|
52
|
-
onUpdatePoolConfigDepositMethod: TradingPanelSetters['updatePoolConfigDepositMethod'];
|
|
53
50
|
onUpdateSendTokenInput: TradingPanelSetters['updateSendTokenInput'];
|
|
54
51
|
onUpdateReceiveTokenInput: TradingPanelSetters['updateReceiveTokenInput'];
|
|
55
52
|
onUpdateTradingSettings: TradingPanelSetters['updateTradingSettings'];
|
|
56
53
|
onSetTradingType: TradingPanelSetters['setTradingType'];
|
|
57
54
|
onUpdateTradingMeta: TradingPanelSetters['updateTradingMeta'];
|
|
58
|
-
onUpdateEntryFee: TradingPanelSetters['updateEntryFee'];
|
|
59
55
|
onUpdateTradingModal: TradingPanelSetters['updateTradingModal'];
|
|
60
56
|
onUpdateTransactions: TradingPanelSetters['updateTransactions'];
|
|
61
57
|
onTradingSettleError: (error: Error) => void;
|
|
@@ -65,6 +61,10 @@ export interface CallbackConfig {
|
|
|
65
61
|
onTokenSelector: (payload: TokenSelectorPayload) => void;
|
|
66
62
|
onLog: (eventName: string, payload?: Record<string, unknown>) => void;
|
|
67
63
|
onSimulateTransaction: (params: SimulateTransactionParams) => Promise<SimulateTransactionResponse | null>;
|
|
64
|
+
getSwapData: (args: {
|
|
65
|
+
signal: AbortSignal;
|
|
66
|
+
variables: SwapDataRequest;
|
|
67
|
+
}) => Promise<SwapDataResponse | null>;
|
|
68
68
|
}
|
|
69
69
|
export type TradingPanelAction = {
|
|
70
70
|
type: 'SET_POOL_ADDRESS';
|
|
@@ -72,9 +72,6 @@ export type TradingPanelAction = {
|
|
|
72
72
|
} | {
|
|
73
73
|
type: 'SET_TRADING_TYPE';
|
|
74
74
|
payload: TradingPanelState['type'];
|
|
75
|
-
} | {
|
|
76
|
-
type: 'UPDATE_POOL_CONFIG_DEPOSIT_METHOD';
|
|
77
|
-
payload: Pick<PoolConfig, 'address'> & Pick<PoolConfig['depositParams'], 'method'>;
|
|
78
75
|
} | {
|
|
79
76
|
type: 'UPDATE_SEND_TOKEN_INPUT';
|
|
80
77
|
payload: Partial<DynamicTradingToken>;
|
|
@@ -87,9 +84,6 @@ export type TradingPanelAction = {
|
|
|
87
84
|
} | {
|
|
88
85
|
type: 'UPDATE_TRADING_META';
|
|
89
86
|
payload: Partial<TradingPanelState['meta']>;
|
|
90
|
-
} | {
|
|
91
|
-
type: 'UPDATE_ENTRY_FEE';
|
|
92
|
-
payload: Partial<TradingPanelState['entryFee']>;
|
|
93
87
|
} | {
|
|
94
88
|
type: 'UPDATE_TRADING_MODAL';
|
|
95
89
|
payload: Partial<TradingPanelState['modal']>;
|
|
@@ -101,7 +95,7 @@ export type TradingPanelAction = {
|
|
|
101
95
|
payload: PoolFallbackData;
|
|
102
96
|
};
|
|
103
97
|
export interface TradingPanelContextConfig {
|
|
104
|
-
actions: Partial<CallbackConfig>;
|
|
98
|
+
actions: Partial<CallbackConfig> & Pick<CallbackConfig, 'getSwapData'>;
|
|
105
99
|
initialState?: Partial<TradingPanelState>;
|
|
106
100
|
}
|
|
107
101
|
export type TradingPanelActionsState = TradingPanelSetters & {
|
|
@@ -112,4 +106,5 @@ export type TradingPanelActionsState = TradingPanelSetters & {
|
|
|
112
106
|
onTokenSelector: CallbackConfig['onTokenSelector'] | undefined;
|
|
113
107
|
onLog: CallbackConfig['onLog'] | undefined;
|
|
114
108
|
onSimulateTransaction: CallbackConfig['onSimulateTransaction'] | undefined;
|
|
109
|
+
getSwapData: CallbackConfig['getSwapData'];
|
|
115
110
|
};
|
|
@@ -32,7 +32,6 @@ type RemoveTransaction = {
|
|
|
32
32
|
export type UpdateTransactionsArguments = AddTransaction | UpdateTransaction | RemoveTransaction;
|
|
33
33
|
export type TradingPanelType = 'deposit' | 'withdraw';
|
|
34
34
|
export type TransactionAction = 'deposit' | 'withdraw' | 'approve' | 'oraclesUpdate';
|
|
35
|
-
export type DepositMethodName = 'deposit' | 'depositWithCustomCooldown';
|
|
36
35
|
export type WithdrawMethodName = 'withdraw' | 'withdrawSUSD' | 'withdrawSafe';
|
|
37
36
|
export type SwapEntity = 'token' | 'pool';
|
|
38
37
|
export interface TokenSelectorPayload {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { BigNumber } from 'bignumber.js';
|
|
2
|
-
import type {
|
|
2
|
+
import type { DefaultSellingParams } from 'core-kit/models';
|
|
3
3
|
import type { Address, ChainId } from 'core-kit/types/web3.types';
|
|
4
4
|
export interface TradingParams {
|
|
5
5
|
sendAssetAddress: Address;
|
|
@@ -17,5 +17,23 @@ export type ChainNativeTokenMap = {
|
|
|
17
17
|
decimals: number;
|
|
18
18
|
};
|
|
19
19
|
};
|
|
20
|
-
export type
|
|
21
|
-
export
|
|
20
|
+
export type TxArgs = DefaultSellingParams;
|
|
21
|
+
export interface SwapDataResponse {
|
|
22
|
+
destinationAmount: string;
|
|
23
|
+
txData: string;
|
|
24
|
+
routerKey: 'ONE_INCH' | 'ZERO_X' | 'PARASWAP' | 'ONE_INCH_V5';
|
|
25
|
+
}
|
|
26
|
+
export interface SwapDataRequest {
|
|
27
|
+
chainId: number;
|
|
28
|
+
sourceAddress: Address;
|
|
29
|
+
destinationAddress: Address;
|
|
30
|
+
walletAddress: Address;
|
|
31
|
+
fromAddress: Address;
|
|
32
|
+
amount: string;
|
|
33
|
+
slippage: string;
|
|
34
|
+
}
|
|
35
|
+
export interface VaultDepositParams {
|
|
36
|
+
depositMethod: DepositMethodName;
|
|
37
|
+
vaultDepositTokenAddress: Address;
|
|
38
|
+
}
|
|
39
|
+
export type DepositMethodName = 'deposit' | 'depositWithCustomCooldown' | 'nativeDeposit' | 'nativeDepositWithCustomCooldown' | 'zapNativeDeposit' | 'zapNativeDepositWithCustomCooldown' | 'zapDeposit' | 'zapDepositWithCustomCooldown';
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { Address } from 'viem';
|
|
1
2
|
import type { TxArgs } from 'core-kit/types/trading.types';
|
|
2
3
|
export declare const calcMinReturnAmount: (txWithSlippageArgs: TxArgs, slippage: number) => string;
|
|
3
4
|
export declare const getOrderedTxArgs: (txArgs: TxArgs, slippage: number) => string[];
|
|
@@ -10,3 +11,14 @@ export declare const logTransactionArguments: (txArgs: TxArgs) => void;
|
|
|
10
11
|
* @returns {string} - The slippage tolerance.
|
|
11
12
|
*/
|
|
12
13
|
export declare const getSlippageToleranceForWithdrawSafe: (slippage: number) => string;
|
|
14
|
+
export declare const buildZapDepositTransactionArguments: ({ vaultAddress, swapData, sendTokenAddress, sendTokenAmount, vaultDepositTokenAddress, minVaultTokensReceivedAmount, routerKey, swapDestinationAmount, swapSlippage, }: {
|
|
15
|
+
vaultAddress: Address;
|
|
16
|
+
swapData: string;
|
|
17
|
+
sendTokenAddress: Address;
|
|
18
|
+
sendTokenAmount: string;
|
|
19
|
+
vaultDepositTokenAddress: Address;
|
|
20
|
+
minVaultTokensReceivedAmount: string;
|
|
21
|
+
routerKey: string | undefined;
|
|
22
|
+
swapDestinationAmount: string;
|
|
23
|
+
swapSlippage: number;
|
|
24
|
+
}) => (string | (string | string[])[][])[];
|