@suilend/sdk 1.1.96 → 1.1.98
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/lib/initialize.js +4 -0
- package/package.json +1 -1
- package/swap/quote.d.ts +5 -5
- package/swap/quote.js +10 -10
- package/swap/transaction.d.ts +1 -1
- package/swap/transaction.js +4 -4
package/lib/initialize.js
CHANGED
|
@@ -111,6 +111,10 @@ exports.RESERVES_CUSTOM_ORDER = {
|
|
|
111
111
|
// NORMALIZED_SEND_COINTYPE,
|
|
112
112
|
// NORMALIZED_USDC_COINTYPE,
|
|
113
113
|
// ],
|
|
114
|
+
"0xd12df5fede59f1ac5e1f8413bc86bd6bc77fff2001366878df58ef6a26d58c67": [
|
|
115
|
+
sui_fe_1.NORMALIZED_USDB_COINTYPE,
|
|
116
|
+
sui_fe_1.NORMALIZED_USDC_COINTYPE,
|
|
117
|
+
],
|
|
114
118
|
"0x0d3a7f758d19d11e8526f66cca43403a99da16862c570c43efe0f8c4a500f7f2": [
|
|
115
119
|
sui_fe_1.NORMALIZED_sdeUSD_COINTYPE,
|
|
116
120
|
sui_fe_1.NORMALIZED_USDC_COINTYPE,
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@suilend/sdk","version":"1.1.
|
|
1
|
+
{"name":"@suilend/sdk","version":"1.1.98","private":false,"description":"A TypeScript SDK for interacting with the Suilend program","author":"Suilend","license":"MIT","main":"./index.js","exports":{".":"./index.js","./client":"./client.js","./mmt":"./mmt.js","./strategies":"./strategies.js","./api/events":"./api/events.js","./api":"./api/index.js","./lib/constants":"./lib/constants.js","./lib":"./lib/index.js","./lib/initialize":"./lib/initialize.js","./lib/liquidityMining":"./lib/liquidityMining.js","./lib/pyth":"./lib/pyth.js","./lib/strategyOwnerCap":"./lib/strategyOwnerCap.js","./lib/transactions":"./lib/transactions.js","./lib/types":"./lib/types.js","./parsers/apiReserveAssetDataEvent":"./parsers/apiReserveAssetDataEvent.js","./parsers":"./parsers/index.js","./parsers/lendingMarket":"./parsers/lendingMarket.js","./parsers/obligation":"./parsers/obligation.js","./parsers/rateLimiter":"./parsers/rateLimiter.js","./parsers/reserve":"./parsers/reserve.js","./swap":"./swap/index.js","./swap/quote":"./swap/quote.js","./swap/transaction":"./swap/transaction.js","./utils/events":"./utils/events.js","./utils":"./utils/index.js","./utils/obligation":"./utils/obligation.js","./utils/simulate":"./utils/simulate.js","./_generated/_framework/reified":"./_generated/_framework/reified.js","./_generated/_framework/util":"./_generated/_framework/util.js","./_generated/_framework/vector":"./_generated/_framework/vector.js","./_generated/suilend":"./_generated/suilend/index.js","./_generated/suilend/cell/structs":"./_generated/suilend/cell/structs.js","./_generated/suilend/decimal/structs":"./_generated/suilend/decimal/structs.js","./_generated/suilend/lending-market/functions":"./_generated/suilend/lending-market/functions.js","./_generated/suilend/lending-market/structs":"./_generated/suilend/lending-market/structs.js","./_generated/suilend/lending-market-registry/functions":"./_generated/suilend/lending-market-registry/functions.js","./_generated/suilend/liquidity-mining/structs":"./_generated/suilend/liquidity-mining/structs.js","./_generated/suilend/obligation/structs":"./_generated/suilend/obligation/structs.js","./_generated/suilend/rate-limiter/functions":"./_generated/suilend/rate-limiter/functions.js","./_generated/suilend/rate-limiter/structs":"./_generated/suilend/rate-limiter/structs.js","./_generated/suilend/reserve/structs":"./_generated/suilend/reserve/structs.js","./_generated/suilend/reserve-config/functions":"./_generated/suilend/reserve-config/functions.js","./_generated/suilend/reserve-config/structs":"./_generated/suilend/reserve-config/structs.js","./_generated/_dependencies/source/0x1":"./_generated/_dependencies/source/0x1/index.js","./_generated/_dependencies/source/0x2":"./_generated/_dependencies/source/0x2/index.js","./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e":"./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/index.js","./_generated/_dependencies/source/0x1/ascii/structs":"./_generated/_dependencies/source/0x1/ascii/structs.js","./_generated/_dependencies/source/0x1/option/structs":"./_generated/_dependencies/source/0x1/option/structs.js","./_generated/_dependencies/source/0x1/type-name/structs":"./_generated/_dependencies/source/0x1/type-name/structs.js","./_generated/_dependencies/source/0x2/bag/structs":"./_generated/_dependencies/source/0x2/bag/structs.js","./_generated/_dependencies/source/0x2/balance/structs":"./_generated/_dependencies/source/0x2/balance/structs.js","./_generated/_dependencies/source/0x2/object/structs":"./_generated/_dependencies/source/0x2/object/structs.js","./_generated/_dependencies/source/0x2/object-table/structs":"./_generated/_dependencies/source/0x2/object-table/structs.js","./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/i64/structs":"./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/i64/structs.js","./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price/structs":"./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price/structs.js","./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-feed/structs":"./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-feed/structs.js","./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-identifier/structs":"./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-identifier/structs.js","./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-info/structs":"./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-info/structs.js"},"types":"./index.js","scripts":{"build":"rm -rf ./dist && bun tsc","eslint":"eslint --fix \"./src/**/*.ts\"","prettier":"prettier --write \"./src/**/*\"","lint":"bun eslint && bun prettier && bun tsc --noEmit","release":"bun run build && bun ts-node ./release.ts && cd ./dist && npm publish --access public"},"repository":{"type":"git","url":"git+https://github.com/suilend/suilend-fe-public.git"},"bugs":{"url":"https://github.com/suilend/suilend-fe-public/issues"},"dependencies":{"@bluefin-exchange/bluefin7k-aggregator-sdk":"^5.1.5","@cetusprotocol/aggregator-sdk":"^1.4.2","@flowx-finance/sdk":"^1.14.0","@suilend/springsui-sdk":"^1.0.27","aftermath-ts-sdk":"^1.3.24","bignumber.js":"^9.1.2","bn.js":"^5.2.2","crypto-js":"^4.2.0","lodash":"^4.17.21","p-limit":"3.1.0","uuid":"^11.0.3"},"devDependencies":{"@types/bn.js":"^5.2.0","@types/lodash":"^4.17.20","ts-node":"^10.9.2"},"peerDependencies":{"@mysten/bcs":"1.8.1","@mysten/sui":"1.42.0","@suilend/sui-fe":"^0.3.47","@pythnetwork/pyth-sui-js":"2.2.0"},"overrides":{"chalk":"5.3.0","strip-ansi":"7.1.0","color-convert":"2.0.1","color-name":"1.1.4","is-core-module":"2.13.1","error-ex":"1.3.2","has-ansi":"5.0.1"}}
|
package/swap/quote.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { QuoteResponse as
|
|
1
|
+
import { QuoteResponse as Bluefin7kQuote } from "@bluefin-exchange/bluefin7k-aggregator-sdk/cjs";
|
|
2
2
|
import { RouterDataV3 as CetusQuote, AggregatorClient as CetusSdk } from "@cetusprotocol/aggregator-sdk";
|
|
3
3
|
import { AggregatorQuoter as FlowXAggregatorQuoter, GetRoutesResult as FlowXGetRoutesResult } from "@flowx-finance/sdk";
|
|
4
4
|
import { RouterCompleteTradeRoute as AftermathQuote, Aftermath as AftermathSdk } from "aftermath-ts-sdk";
|
|
@@ -7,13 +7,13 @@ import { Token } from "@suilend/sui-fe";
|
|
|
7
7
|
export declare enum QuoteProvider {
|
|
8
8
|
AFTERMATH = "aftermath",
|
|
9
9
|
CETUS = "cetus",
|
|
10
|
-
|
|
10
|
+
BLUEFIN7K = "bluefin7k",
|
|
11
11
|
FLOWX = "flowx"
|
|
12
12
|
}
|
|
13
13
|
export declare const QUOTE_PROVIDER_NAME_MAP: {
|
|
14
14
|
aftermath: string;
|
|
15
15
|
cetus: string;
|
|
16
|
-
|
|
16
|
+
bluefin7k: string;
|
|
17
17
|
flowx: string;
|
|
18
18
|
};
|
|
19
19
|
export type StandardizedRoutePath = {
|
|
@@ -59,8 +59,8 @@ export type StandardizedQuote = {
|
|
|
59
59
|
provider: QuoteProvider.CETUS;
|
|
60
60
|
quote: CetusQuote;
|
|
61
61
|
} | {
|
|
62
|
-
provider: QuoteProvider.
|
|
63
|
-
quote:
|
|
62
|
+
provider: QuoteProvider.BLUEFIN7K;
|
|
63
|
+
quote: Bluefin7kQuote;
|
|
64
64
|
} | {
|
|
65
65
|
provider: QuoteProvider.FLOWX;
|
|
66
66
|
quote: FlowXGetRoutesResult<any, any>;
|
package/swap/quote.js
CHANGED
|
@@ -13,7 +13,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.getAggSortedQuotesAll = exports.getAggQuotes = exports.QUOTE_PROVIDER_NAME_MAP = exports.QuoteProvider = void 0;
|
|
16
|
-
const cjs_1 = require("@
|
|
16
|
+
const cjs_1 = require("@bluefin-exchange/bluefin7k-aggregator-sdk/cjs");
|
|
17
17
|
const utils_1 = require("@mysten/sui/utils");
|
|
18
18
|
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
19
19
|
const bn_js_1 = __importDefault(require("bn.js"));
|
|
@@ -23,13 +23,13 @@ var QuoteProvider;
|
|
|
23
23
|
(function (QuoteProvider) {
|
|
24
24
|
QuoteProvider["AFTERMATH"] = "aftermath";
|
|
25
25
|
QuoteProvider["CETUS"] = "cetus";
|
|
26
|
-
QuoteProvider["
|
|
26
|
+
QuoteProvider["BLUEFIN7K"] = "bluefin7k";
|
|
27
27
|
QuoteProvider["FLOWX"] = "flowx";
|
|
28
28
|
})(QuoteProvider || (exports.QuoteProvider = QuoteProvider = {}));
|
|
29
29
|
exports.QUOTE_PROVIDER_NAME_MAP = {
|
|
30
30
|
[QuoteProvider.AFTERMATH]: "Aftermath",
|
|
31
31
|
[QuoteProvider.CETUS]: "Cetus",
|
|
32
|
-
[QuoteProvider.
|
|
32
|
+
[QuoteProvider.BLUEFIN7K]: "Bluefin7k",
|
|
33
33
|
[QuoteProvider.FLOWX]: "FlowX",
|
|
34
34
|
};
|
|
35
35
|
const getPoolProviders = (standardizedQuote) => {
|
|
@@ -165,7 +165,7 @@ const getCetusQuote = (sdk, tokenIn, tokenOut, amountIn) => __awaiter(void 0, vo
|
|
|
165
165
|
};
|
|
166
166
|
return standardizedQuote;
|
|
167
167
|
});
|
|
168
|
-
const
|
|
168
|
+
const getBluefin7kQuote = (tokenIn, tokenOut, amountIn) => __awaiter(void 0, void 0, void 0, function* () {
|
|
169
169
|
var _a;
|
|
170
170
|
const quote = yield (0, cjs_1.getQuote)({
|
|
171
171
|
tokenIn: tokenIn.coinType,
|
|
@@ -174,7 +174,7 @@ const get7kQuote = (tokenIn, tokenOut, amountIn) => __awaiter(void 0, void 0, vo
|
|
|
174
174
|
});
|
|
175
175
|
const standardizedQuote = {
|
|
176
176
|
id: (0, uuid_1.v4)(),
|
|
177
|
-
provider: QuoteProvider.
|
|
177
|
+
provider: QuoteProvider.BLUEFIN7K,
|
|
178
178
|
in: {
|
|
179
179
|
coinType: tokenIn.coinType,
|
|
180
180
|
amount: new bignumber_js_1.default(quote.swapAmountWithDecimal).div(10 ** tokenIn.decimals),
|
|
@@ -268,10 +268,10 @@ const getAggQuotes = (sdkMap, activeProviders, onGetAggQuote, tokenIn, tokenOut,
|
|
|
268
268
|
onGetAggQuote(standardizedQuote);
|
|
269
269
|
}))();
|
|
270
270
|
}
|
|
271
|
-
//
|
|
272
|
-
if (activeProviders.includes(QuoteProvider.
|
|
271
|
+
// Bluefin7k
|
|
272
|
+
if (activeProviders.includes(QuoteProvider.BLUEFIN7K)) {
|
|
273
273
|
(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
274
|
-
const standardizedQuote = yield getAggQuoteWrapper(QuoteProvider.
|
|
274
|
+
const standardizedQuote = yield getAggQuoteWrapper(QuoteProvider.BLUEFIN7K, () => getBluefin7kQuote(tokenIn, tokenOut, amountIn), timeoutMs);
|
|
275
275
|
onGetAggQuote(standardizedQuote);
|
|
276
276
|
}))();
|
|
277
277
|
}
|
|
@@ -294,8 +294,8 @@ const getAggSortedQuotesAll = (sdkMap, activeProviders, tokenIn, tokenOut, amoun
|
|
|
294
294
|
activeProviders.includes(QuoteProvider.CETUS)
|
|
295
295
|
? getAggQuoteWrapper(QuoteProvider.CETUS, () => getCetusQuote(sdkMap[QuoteProvider.CETUS], tokenIn, tokenOut, amountIn), timeoutMs)
|
|
296
296
|
: null,
|
|
297
|
-
activeProviders.includes(QuoteProvider.
|
|
298
|
-
? getAggQuoteWrapper(QuoteProvider.
|
|
297
|
+
activeProviders.includes(QuoteProvider.BLUEFIN7K)
|
|
298
|
+
? getAggQuoteWrapper(QuoteProvider.BLUEFIN7K, () => getBluefin7kQuote(tokenIn, tokenOut, amountIn), timeoutMs)
|
|
299
299
|
: null,
|
|
300
300
|
activeProviders.includes(QuoteProvider.FLOWX)
|
|
301
301
|
? getAggQuoteWrapper(QuoteProvider.FLOWX, () => getFlowXQuote(sdkMap[QuoteProvider.FLOWX], tokenIn, tokenOut, amountIn), timeoutMs)
|
package/swap/transaction.d.ts
CHANGED
|
@@ -10,7 +10,7 @@ export declare const getSwapTransaction: (suiClient: SuiClient, address: string,
|
|
|
10
10
|
[QuoteProvider.FLOWX]: FlowXAggregatorQuoter;
|
|
11
11
|
}, partnerIdMap: {
|
|
12
12
|
[QuoteProvider.CETUS]: string;
|
|
13
|
-
[QuoteProvider.
|
|
13
|
+
[QuoteProvider.BLUEFIN7K]: string;
|
|
14
14
|
[QuoteProvider.FLOWX]: string;
|
|
15
15
|
}, transaction: Transaction, coinIn: TransactionObjectArgument | undefined) => Promise<{
|
|
16
16
|
transaction: Transaction;
|
package/swap/transaction.js
CHANGED
|
@@ -10,7 +10,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.getSwapTransaction = void 0;
|
|
13
|
-
const cjs_1 = require("@
|
|
13
|
+
const cjs_1 = require("@bluefin-exchange/bluefin7k-aggregator-sdk/cjs");
|
|
14
14
|
const sdk_1 = require("@flowx-finance/sdk");
|
|
15
15
|
const sui_fe_1 = require("@suilend/sui-fe");
|
|
16
16
|
const quote_1 = require("./quote");
|
|
@@ -60,14 +60,14 @@ const getSwapTransaction = (suiClient, address, quote, slippagePercent, sdkMap,
|
|
|
60
60
|
return { transaction, coinOut };
|
|
61
61
|
}));
|
|
62
62
|
}
|
|
63
|
-
else if (quote.provider === quote_1.QuoteProvider.
|
|
64
|
-
return getSwapTransactionWrapper(quote_1.QuoteProvider.
|
|
63
|
+
else if (quote.provider === quote_1.QuoteProvider.BLUEFIN7K) {
|
|
64
|
+
return getSwapTransactionWrapper(quote_1.QuoteProvider.BLUEFIN7K, () => __awaiter(void 0, void 0, void 0, function* () {
|
|
65
65
|
const { tx: transaction2, coinOut } = yield (0, cjs_1.buildTx)({
|
|
66
66
|
quoteResponse: quote.quote,
|
|
67
67
|
accountAddress: address,
|
|
68
68
|
slippage: slippagePercent / 100,
|
|
69
69
|
commission: {
|
|
70
|
-
partner: partnerIdMap[quote_1.QuoteProvider.
|
|
70
|
+
partner: partnerIdMap[quote_1.QuoteProvider.BLUEFIN7K],
|
|
71
71
|
commissionBps: 0,
|
|
72
72
|
},
|
|
73
73
|
extendTx: {
|