fix uiFee

This commit is contained in:
2025-06-09 15:56:32 +07:00
parent 894f518d2c
commit fa5ad081d7
3 changed files with 56 additions and 46 deletions

View File

@@ -1,25 +1,30 @@
import { Address } from "viem";
import {Address} from "viem";
import { getWrappedToken } from "../../configs/tokens.js";
import { MarketFilterLongShortItemData } from "../../modules/trades/trades.js";
import {getWrappedToken} from "../../configs/tokens.js";
import {MarketFilterLongShortItemData} from "../../modules/trades/trades.js";
import { MarketInfo, MarketsInfoData } from "../../types/markets.js";
import { Order, OrdersData, OrdersInfoData, OrderType, PositionOrderInfo } from "../../types/orders.js";
import { SidecarLimitOrderEntryValid, SidecarSlTpOrderEntryValid } from "../../types/sidecarOrders.js";
import { TokenData, TokensData } from "../../types/tokens.js";
import { DecreasePositionAmounts, IncreasePositionAmounts, SwapAmounts } from "../../types/trade.js";
import {MarketInfo, MarketsInfoData} from "../../types/markets.js";
import {Order, OrdersData, OrdersInfoData, OrderType, PositionOrderInfo} from "../../types/orders.js";
import {SidecarLimitOrderEntryValid, SidecarSlTpOrderEntryValid} from "../../types/sidecarOrders.js";
import {TokenData, TokensData} from "../../types/tokens.js";
import {DecreasePositionAmounts, IncreasePositionAmounts, SwapAmounts} from "../../types/trade.js";
import { getByKey } from "../../utils/objects.js";
import { getOrderInfo, isOrderForPositionByData, isVisibleOrder } from "../../utils/orders.js";
import {getByKey} from "../../utils/objects.js";
import {getOrderInfo, isOrderForPositionByData, isVisibleOrder} from "../../utils/orders.js";
import { createDecreaseOrderTxn } from "./transactions/createDecreaseOrderTxn.js";
import { createIncreaseOrderTxn } from "./transactions/createIncreaseOrderTxn.js";
import { buildGetOrdersMulticall, getExecutionFeeAmountForEntry, matchByMarket, parseGetOrdersResponse } from "./utils.js";
import { Module } from "../base.js";
import { createSwapOrderTxn } from "./transactions/createSwapOrderTxn.js";
import { createWrapOrUnwrapTxn, WrapOrUnwrapParams } from "./transactions/createWrapOrUnwrapTxn.js";
import { cancelOrdersTxn } from "./transactions/cancelOrdersTxn.js";
import { PositionIncreaseParams, SwapParams, increaseOrderHelper, swap } from "./helpers.js";
import {createDecreaseOrderTxn} from "./transactions/createDecreaseOrderTxn.js";
import {createIncreaseOrderTxn} from "./transactions/createIncreaseOrderTxn.js";
import {
buildGetOrdersMulticall,
getExecutionFeeAmountForEntry,
matchByMarket,
parseGetOrdersResponse
} from "./utils.js";
import {Module} from "../base.js";
import {createSwapOrderTxn} from "./transactions/createSwapOrderTxn.js";
import {createWrapOrUnwrapTxn, WrapOrUnwrapParams} from "./transactions/createWrapOrUnwrapTxn.js";
import {cancelOrdersTxn} from "./transactions/cancelOrdersTxn.js";
import {increaseOrderHelper, PositionIncreaseParams, swap, SwapParams} from "./helpers.js";
export class Orders extends Module {
async getOrders({
@@ -237,6 +242,7 @@ export class Orders extends Module {
indexToken: marketInfo.indexToken,
tokensData,
skipSimulation: skipSimulation || isLimit,
uiFeeReceiver: this.sdk.config.settings?.uiFeeReceiverAccount,
},
createDecreaseOrderParams: createSltpEntries?.map((entry, i) => {
return {
@@ -255,6 +261,7 @@ export class Orders extends Module {
txnType: entry.txnType!,
skipSimulation: isLimit,
autoCancel: i < autoCancelOrdersLimit,
uiFeeReceiver: this.sdk.config.settings?.uiFeeReceiverAccount,
};
}),
cancelOrderParams: cancelSltpEntries?.map((entry) => ({
@@ -265,6 +272,7 @@ export class Orders extends Module {
sizeDeltaUsd: entry.order!.sizeDeltaUsd,
txnType: entry.txnType!,
initialCollateralDeltaAmount: entry.order?.initialCollateralDeltaAmount ?? 0n,
uiFeeReceiver: this.sdk.config.settings?.uiFeeReceiverAccount,
})),
updateOrderParams: updateSltpEntries?.map((entry) => ({
...commonSecondaryOrderParams,
@@ -278,6 +286,7 @@ export class Orders extends Module {
txnType: entry.txnType!,
initialCollateralDeltaAmount: entry.order?.initialCollateralDeltaAmount ?? 0n,
autoCancel: entry.order!.autoCancel,
uiFeeReceiver: this.sdk.config.settings?.uiFeeReceiverAccount,
})),
});
}

View File

@@ -1,17 +1,17 @@
import { getContract } from "../../../configs/contracts.js";
import {getContract} from "../../../configs/contracts.js";
import type { DecreasePositionSwapType, OrderType } from "../../../types/orders.js";
import type { Token, TokensData } from "../../../types/tokens.js";
import type { GmxSdk } from "../../../index.js";
import type { PriceOverrides } from "./createIncreaseOrderTxn.js";
import type {DecreasePositionSwapType, OrderType} from "../../../types/orders.js";
import type {Token, TokensData} from "../../../types/tokens.js";
import type {GmxSdk} from "../../../index.js";
import type {PriceOverrides} from "./createIncreaseOrderTxn.js";
import { abis } from "../../../abis/index.js";
import { convertTokenAddress, NATIVE_TOKEN_ADDRESS } from "../../../configs/tokens.js";
import { isMarketOrderType } from "../../../utils/orders.js";
import { simulateExecuteOrder } from "../../../utils/simulateExecuteOrder.js";
import { convertToContractPrice } from "../../../utils/tokens.js";
import { applySlippageToMinOut, applySlippageToPrice } from "../../../utils/trade/index.js";
import { Abi, encodeFunctionData, zeroAddress, zeroHash } from "viem";
import {abis} from "../../../abis/index.js";
import {convertTokenAddress, NATIVE_TOKEN_ADDRESS} from "../../../configs/tokens.js";
import {isMarketOrderType} from "../../../utils/orders.js";
import {simulateExecuteOrder} from "../../../utils/simulateExecuteOrder.js";
import {convertToContractPrice} from "../../../utils/tokens.js";
import {applySlippageToMinOut, applySlippageToPrice} from "../../../utils/trade/index.js";
import {Abi, encodeFunctionData, zeroAddress, zeroHash} from "viem";
export type DecreaseOrderParams = {
account: string;
@@ -114,7 +114,7 @@ export function createDecreaseEncodedPayload({
callbackContract: zeroAddress,
market: p.marketAddress,
swapPath: p.swapPath,
uiFeeReceiver: zeroAddress,
uiFeeReceiver: sdk.config.settings?.uiFeeReceiverAccount,
},
numbers: {
sizeDeltaUsd: p.sizeDeltaUsd,

View File

@@ -1,19 +1,19 @@
import { abis } from "../../../abis/index.js";
import { getContract } from "../../../configs/contracts.js";
import { convertTokenAddress, NATIVE_TOKEN_ADDRESS } from "../../../configs/tokens.js";
import {abis} from "../../../abis/index.js";
import {getContract} from "../../../configs/contracts.js";
import {convertTokenAddress, NATIVE_TOKEN_ADDRESS} from "../../../configs/tokens.js";
import type { GmxSdk } from "../../../index.js";
import type {GmxSdk} from "../../../index.js";
import concat from "lodash/concat.js";
import { DecreasePositionSwapType, OrderTxnType, OrderType } from "../../../types/orders.js";
import { TokenData, TokenPrices, TokensData } from "../../../types/tokens.js";
import { isMarketOrderType } from "../../../utils/orders.js";
import { convertToContractPrice } from "../../../utils/tokens.js";
import { Abi, encodeFunctionData, zeroAddress, zeroHash } from "viem";
import { createCancelEncodedPayload } from "./cancelOrdersTxn.js";
import { createDecreaseEncodedPayload, DecreaseOrderParams } from "./createDecreaseOrderTxn.js";
import { createUpdateEncodedPayload } from "./updateOrderTxn.js";
import { simulateExecuteOrder } from "../../../utils/simulateExecuteOrder.js";
import { applySlippageToMinOut, applySlippageToPrice } from "../../../utils/trade/index.js";
import {DecreasePositionSwapType, OrderTxnType, OrderType} from "../../../types/orders.js";
import {TokenData, TokenPrices, TokensData} from "../../../types/tokens.js";
import {isMarketOrderType} from "../../../utils/orders.js";
import {convertToContractPrice} from "../../../utils/tokens.js";
import {Abi, encodeFunctionData, zeroAddress, zeroHash} from "viem";
import {createCancelEncodedPayload} from "./cancelOrdersTxn.js";
import {createDecreaseEncodedPayload, DecreaseOrderParams} from "./createDecreaseOrderTxn.js";
import {createUpdateEncodedPayload} from "./updateOrderTxn.js";
import {simulateExecuteOrder} from "../../../utils/simulateExecuteOrder.js";
import {applySlippageToMinOut, applySlippageToPrice} from "../../../utils/trade/index.js";
export type PriceOverrides = {
[address: string]: TokenPrices | undefined;
@@ -39,6 +39,7 @@ type IncreaseOrderParams = {
referralCode: string | undefined;
indexToken: TokenData;
tokensData: TokensData;
uiFeeReceiver: string;
};
type SecondaryOrderCommonParams = {
@@ -244,7 +245,7 @@ function createOrderParams({
callbackContract: zeroAddress,
market: p.marketAddress,
swapPath: p.swapPath,
uiFeeReceiver: zeroAddress,
uiFeeReceiver: p.uiFeeReceiver,
},
numbers: {
sizeDeltaUsd: p.sizeDeltaUsd,