diff --git a/hooks/useMarginConfig.ts b/hooks/useMarginConfig.ts index 68f97bf5..fc585a1a 100644 --- a/hooks/useMarginConfig.ts +++ b/hooks/useMarginConfig.ts @@ -59,16 +59,18 @@ export function useMarginConfigToken() { processTokens(filteredMarginConfigTokens2, categoryAssets2); processTokens(filteredMarginConfigTokens2MEME, categoryAssets2MEME); - - const getPositionType = (token_id) => { - const isMainStream = filteredTokenTypeMap.mainStream.includes(token_id); - const type = isMainStream - ? marginConfigTokens.registered_tokens[token_id] - : marginConfigTokensMEME.registered_tokens[token_id]; - return { - label: type === 1 ? "Short" : "Long", - class: type === 1 ? "text-red-50" : "text-primary", - }; + const getPositionType = (token_c_id: string, token_d_id: string) => { + if (token_c_id == token_d_id) { + return { + label: "Long", + class: "text-primary", + }; + } else { + return { + label: "Short", + class: "text-red-50", + }; + } }; return { diff --git a/screens/MarginTrading/components/MyTrading/MyTradingPage.tsx b/screens/MarginTrading/components/MyTrading/MyTradingPage.tsx index c4f4d532..a8330f23 100644 --- a/screens/MarginTrading/components/MyTrading/MyTradingPage.tsx +++ b/screens/MarginTrading/components/MyTrading/MyTradingPage.tsx @@ -40,7 +40,10 @@ const MyMarginTradingPage = () => { const pnlArray: number[] = []; await Promise.all( Object.entries(totalMarginAccountList).map(async ([itemKey, item]) => { - const positionType = getPositionType(item.token_d_info.token_id).label; + const positionType = getPositionType( + item.token_c_info.token_id, + item.token_d_info.token_id, + ).label; const assetD = getAssetById(item.token_d_info.token_id, item); const assetC = getAssetById(item.token_c_info.token_id, item); const assetP = getAssetById(item.token_p_id, item); diff --git a/screens/Trading/comInterface/index.ts b/screens/Trading/comInterface/index.ts index abee2991..f283c083 100644 --- a/screens/Trading/comInterface/index.ts +++ b/screens/Trading/comInterface/index.ts @@ -39,7 +39,7 @@ export interface IExtraProps { index: number; item: any; getAssetById: (id: string, tokenInfo?: TokenInfo) => IAssetDetailedWithMetadata; - getPositionType: (id: string) => { label: string }; + getPositionType: (c_id: string, d_id: string) => { label: string }; getAssetDetails: (asset: any) => { price: number; symbol: string; decimals: number }; parseTokenValue: (value: string, decimals: number) => number; calculateLeverage: ( diff --git a/screens/Trading/components/ChangeCollateralMobile.tsx b/screens/Trading/components/ChangeCollateralMobile.tsx index 3c1614ec..1de36ecb 100644 --- a/screens/Trading/components/ChangeCollateralMobile.tsx +++ b/screens/Trading/components/ChangeCollateralMobile.tsx @@ -162,7 +162,10 @@ const ChangeCollateralMobile: FC = ({ open, onClose const leverageD = parseTokenValue(rowData.data.token_d_info.balance, decimalsD); const leverageC = parseTokenValue(rowData.data.token_c_info.balance, decimalsC); const leverage = calculateLeverage(leverageD, priceD, leverageC, priceC); - const positionType = getPositionType(rowData.data.token_d_info.token_id); + const positionType = getPositionType( + rowData.data.token_c_info.token_id, + rowData.data.token_d_info.token_id, + ); const sizeValueLong = parseTokenValue(rowData.data.token_p_amount, decimalsP); const sizeValueShort = parseTokenValue(rowData.data.token_d_info.balance, decimalsD); const size = positionType.label === "Long" ? sizeValueLong : sizeValueShort; diff --git a/screens/Trading/components/ClosePositionMobile.tsx b/screens/Trading/components/ClosePositionMobile.tsx index 68b133dd..e9f7c4b9 100644 --- a/screens/Trading/components/ClosePositionMobile.tsx +++ b/screens/Trading/components/ClosePositionMobile.tsx @@ -53,7 +53,7 @@ const ClosePositionMobile: React.FC = ({ const [isEstimating, setIsEstimating] = useState(false); const [forceUpdate, setForceUpdate] = useState(0); const [swapUnSecurity, setSwapUnSecurity] = useState(false); - const positionType = getPositionType(item.token_d_info.token_id); + const positionType = getPositionType(item.token_c_info.token_id, item.token_d_info.token_id); const isMainStream = filteredTokenTypeMap.mainStream.includes( positionType.label === "Long" ? item.token_p_id : item.token_d_info.token_id, ); diff --git a/screens/Trading/components/Table.tsx b/screens/Trading/components/Table.tsx index 4a4a07f9..89c27b03 100644 --- a/screens/Trading/components/Table.tsx +++ b/screens/Trading/components/Table.tsx @@ -240,7 +240,10 @@ const TradingTable = ({ const { symbol: symbolC } = getAssetDetails(assetC); const { symbol: symbolP } = getAssetDetails(assetP); const { symbol: symbolD } = getAssetDetails(assetD); - const positionType = getPositionType(item.token_d_info.token_id); + const positionType = getPositionType( + item.token_c_info.token_id, + item.token_d_info.token_id, + ); const marketTitle = positionType.label === "Long" ? `${symbolP}/${symbolC}` : `${symbolD}/${symbolC}`; return marketTitle === filterTitle; diff --git a/screens/Trading/components/Table/PositionRow.tsx b/screens/Trading/components/Table/PositionRow.tsx index d36dca9b..772f3b63 100644 --- a/screens/Trading/components/Table/PositionRow.tsx +++ b/screens/Trading/components/Table/PositionRow.tsx @@ -49,7 +49,7 @@ const PositionRow = ({ }, 3000); return () => clearTimeout(timeoutId); }, [itemKey, item, index]); - const positionType = getPositionType(item.token_d_info.token_id); + const positionType = getPositionType(item.token_c_info.token_id, item.token_d_info.token_id); const isMainStream = filteredTokenTypeMap.mainStream.includes( positionType.label === "Long" ? item.token_p_id : item.token_d_info.token_id, ); @@ -133,8 +133,12 @@ const PositionRow = ({
{marketTitle}
- - {getPositionType(item.token_d_info.token_id).label} + + {getPositionType(item.token_c_info.token_id, item.token_d_info.token_id).label} {toInternationalCurrencySystem_number(leverage)}x @@ -242,8 +246,12 @@ const PositionRow = ({

{marketTitle}

-

- {getPositionType(item.token_d_info.token_id).label} +

+ {getPositionType(item.token_c_info.token_id, item.token_d_info.token_id).label} {toInternationalCurrencySystem_number(leverage)}x