Skip to content

Commit

Permalink
Merge pull request #575 from soroswap/fix/onlySDEX
Browse files Browse the repository at this point in the history
Fix/only sdex
  • Loading branch information
chopan123 authored Nov 17, 2024
2 parents 64d20a4 + 6ad2831 commit 2d76562
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 20 deletions.
2 changes: 1 addition & 1 deletion next-env.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
/// <reference types="next/image-types/global" />

// NOTE: This file should not be edited
// see https://nextjs.org/docs/basic-features/typescript for more information.
// see https://nextjs.org/docs/pages/building-your-application/configuring/typescript for more information.
2 changes: 1 addition & 1 deletion src/configs/protocols.config.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
},
{
"key": "soroswap",
"value": true
"value": false
},
{
"key": "phoenix",
Expand Down
39 changes: 21 additions & 18 deletions src/functions/generateRoute.ts
Original file line number Diff line number Diff line change
Expand Up @@ -64,28 +64,29 @@ export const useRouterSDK = () => {

const getPairsFns = useMemo(() => {
const routerProtocols = []
if(shouldUseBackend) return undefined
if (shouldUseBackend) return undefined
// here you should add your new supported aggregator protocols
for(let protocol of protocolsStatus){
if(protocol.key === Protocol.SOROSWAP && protocol.value === true){
routerProtocols.push({protocol: Protocol.SOROSWAP, fn: async () => fetchAllSoroswapPairs(network)});
for (let protocol of protocolsStatus) {
if (protocol.key === Protocol.SOROSWAP && protocol.value === true) {
routerProtocols.push({ protocol: Protocol.SOROSWAP, fn: async () => fetchAllSoroswapPairs(network) });
}
if(protocol.key === Protocol.PHOENIX && protocol.value === true){
routerProtocols.push({protocol: Protocol.PHOENIX, fn: async () => fetchAllPhoenixPairs(network)});
if (protocol.key === Protocol.PHOENIX && protocol.value === true) {
routerProtocols.push({ protocol: Protocol.PHOENIX, fn: async () => fetchAllPhoenixPairs(network) });
}
}
console.log('routerProtocols:', routerProtocols);
return routerProtocols;
}, [network, protocolsStatus]);

const getProtocols = useMemo(() => {
const newProtocols = [];
for(let protocol of protocolsStatus){
if(protocol.key != PlatformType.STELLAR_CLASSIC && protocol.value === true){
for (let protocol of protocolsStatus) {
if (protocol.key != PlatformType.STELLAR_CLASSIC && protocol.value === true) {
newProtocols.push(protocol.key);
}
}
return newProtocols as Protocol[];
},[protocolsStatus]);
}, [protocolsStatus]);

const router = useMemo(() => {
return new Router({
Expand Down Expand Up @@ -124,9 +125,9 @@ export const useRouterSDK = () => {
);
const quoteCurrency = fromAddressToToken(quoteAsset.contract);

const isHorizonEnabled = currentProtocolsStatus.find((p) => p.key === PlatformType.STELLAR_CLASSIC)?.value;
const isHorizonEnabled = currentProtocolsStatus.find((p) => p.key === PlatformType.STELLAR_CLASSIC)?.value;

const isSoroswapEnabled = currentProtocolsStatus.find((p) => p.key === Protocol.SOROSWAP)?.value;
const isSoroswapEnabled = currentProtocolsStatus.find((p) => p.key === Protocol.SOROSWAP)?.value;

const horizonProps = {
assetFrom: amountAsset.currency,
Expand All @@ -136,10 +137,10 @@ export const useRouterSDK = () => {
};

let horizonPath: BuildTradeRoute | undefined;
if(isHorizonEnabled){
if (isHorizonEnabled) {
horizonPath = (await getHorizonBestPath(horizonProps, sorobanContext)) as BuildTradeRoute;
}

let sorobanPath: BuildTradeRoute | undefined;
if (isAggregator) {
sorobanPath = (await router
Expand All @@ -149,10 +150,14 @@ export const useRouterSDK = () => {
const result = {
...response,
platform: PlatformType.AGGREGATOR,
};
quoteCurrency: CurrencyAmount.fromRawAmount(quoteCurrency, '0')
} as BuildTradeRoute;
return result;
})) as BuildTradeRoute;
} else if(isSoroswapEnabled){
}).catch((e) => {
console.error('error while generating soroban path:', e);
return undefined;
})) as BuildTradeRoute | undefined;
} else if (isSoroswapEnabled) {
sorobanPath = (await router
.route(currencyAmount, quoteCurrency, tradeType, factory, sorobanContext as any)
.then((response) => {
Expand All @@ -164,9 +169,7 @@ export const useRouterSDK = () => {
return result;
})) as BuildTradeRoute;
}

const bestPath = getBestPath(horizonPath, sorobanPath, tradeType);

return bestPath;
};

Expand Down

0 comments on commit 2d76562

Please sign in to comment.