@cetusprotocol/aggregator-sdk 1.4.8 → 1.5.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/bun.lock +3 -3
- package/dist/index.cjs +72 -7
- package/dist/index.d.cts +5 -3
- package/dist/index.d.ts +5 -3
- package/dist/index.js +72 -8
- package/package.json +3 -2
package/bun.lock
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
"": {
|
|
6
6
|
"name": "@cetusprotocol/aggregator-sdk",
|
|
7
7
|
"dependencies": {
|
|
8
|
-
"@mysten/sui": "^2.
|
|
8
|
+
"@mysten/sui": "^2.6.0",
|
|
9
9
|
"@pythnetwork/hermes-client": "^3.1.0",
|
|
10
10
|
"bip39": "^3.1.0",
|
|
11
11
|
"dotenv": "^16.4.5",
|
|
@@ -110,9 +110,9 @@
|
|
|
110
110
|
|
|
111
111
|
"@jridgewell/trace-mapping": ["@jridgewell/trace-mapping@0.3.30", "", { "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" } }, "sha512-GQ7Nw5G2lTu/BtHTKfXhKHok2WGetd4XYcVKGx00SjAk8GMwgJM3zr6zORiPGuOE+/vkc90KtTosSSvaCjKb2Q=="],
|
|
112
112
|
|
|
113
|
-
"@mysten/bcs": ["@mysten/bcs@2.0.
|
|
113
|
+
"@mysten/bcs": ["@mysten/bcs@2.0.2", "", { "dependencies": { "@mysten/utils": "^0.3.1", "@scure/base": "^2.0.0" } }, "sha512-c/nVRPJEV1fRZdKXhysVsy/yCPdiFt7jn6A4/7W2LH1ZPSVPzRkxtLY362D0zaLuBnyT5Y9d9nFLm3ixI8Goug=="],
|
|
114
114
|
|
|
115
|
-
"@mysten/sui": ["@mysten/sui@2.
|
|
115
|
+
"@mysten/sui": ["@mysten/sui@2.6.0", "", { "dependencies": { "@graphql-typed-document-node/core": "^3.2.0", "@mysten/bcs": "^2.0.2", "@mysten/utils": "^0.3.1", "@noble/curves": "^2.0.1", "@noble/hashes": "^2.0.1", "@protobuf-ts/grpcweb-transport": "^2.11.1", "@protobuf-ts/runtime": "^2.11.1", "@protobuf-ts/runtime-rpc": "^2.11.1", "@scure/base": "^2.0.0", "@scure/bip32": "^2.0.1", "@scure/bip39": "^2.0.1", "gql.tada": "^1.9.0", "graphql": "^16.12.0", "poseidon-lite": "0.2.1", "valibot": "^1.2.0" } }, "sha512-Dp3z7mDuUCXGgldQ3/AtC1iDiK48XTuAi//fPrHdxEaMl+f5VLjbYtB+mlKNC1SVYLKOUjTeF/RA9qfEBY++pA=="],
|
|
116
116
|
|
|
117
117
|
"@mysten/utils": ["@mysten/utils@0.3.1", "", { "dependencies": { "@scure/base": "^2.0.0" } }, "sha512-36KhxG284uhDdSnlkyNaS6fzKTX9FpP2WQWOwUKIRsqQFFIm2ooCf2TP1IuqrtMpkairwpiWkAS0eg7cpemVzg=="],
|
|
118
118
|
|
package/dist/index.cjs
CHANGED
|
@@ -3416,7 +3416,7 @@ var AGGREGATOR_V3_CONFIG = {
|
|
|
3416
3416
|
};
|
|
3417
3417
|
|
|
3418
3418
|
// src/api.ts
|
|
3419
|
-
var SDK_VERSION =
|
|
3419
|
+
var SDK_VERSION = 1010500;
|
|
3420
3420
|
function parseRouterResponse(data, byAmountIn) {
|
|
3421
3421
|
let packages = /* @__PURE__ */ new Map();
|
|
3422
3422
|
if (data.packages) {
|
|
@@ -8647,6 +8647,68 @@ var FerraClmmRouter = class {
|
|
|
8647
8647
|
});
|
|
8648
8648
|
}
|
|
8649
8649
|
};
|
|
8650
|
+
var BoltRouter = class {
|
|
8651
|
+
constructor(_env) {
|
|
8652
|
+
}
|
|
8653
|
+
swap(txb, flattenedPath, swapContext, _extends) {
|
|
8654
|
+
const path = flattenedPath.path;
|
|
8655
|
+
if (!path.extendedDetails) {
|
|
8656
|
+
throw new Error("Extended details not found for BOLT");
|
|
8657
|
+
}
|
|
8658
|
+
this.validateExtendedDetails(path.extendedDetails);
|
|
8659
|
+
const swapData = this.prepareSwapData(flattenedPath);
|
|
8660
|
+
this.executeSwapContract(txb, swapData, swapContext);
|
|
8661
|
+
}
|
|
8662
|
+
validateExtendedDetails(extendedDetails) {
|
|
8663
|
+
if (!extendedDetails.bolt_pool_id) {
|
|
8664
|
+
throw new Error("BOLT pool id not found in extended details");
|
|
8665
|
+
}
|
|
8666
|
+
if (!extendedDetails.bolt_oracle_id) {
|
|
8667
|
+
throw new Error("BOLT oracle id not found in extended details");
|
|
8668
|
+
}
|
|
8669
|
+
if (!extendedDetails.bolt_quote_coin_type) {
|
|
8670
|
+
throw new Error("BOLT quote coin type not found in extended details");
|
|
8671
|
+
}
|
|
8672
|
+
}
|
|
8673
|
+
prepareSwapData(flattenedPath) {
|
|
8674
|
+
const path = flattenedPath.path;
|
|
8675
|
+
if (path.publishedAt == null) {
|
|
8676
|
+
throw new Error("BOLT not set publishedAt");
|
|
8677
|
+
}
|
|
8678
|
+
const extendedDetails = path.extendedDetails;
|
|
8679
|
+
const [baseType, quoteType] = path.direction ? [path.from, path.target] : [path.target, path.from];
|
|
8680
|
+
const amountIn = flattenedPath.isLastUseOfIntermediateToken ? AGGREGATOR_V3_CONFIG.MAX_AMOUNT_IN : path.amountIn;
|
|
8681
|
+
return {
|
|
8682
|
+
baseType,
|
|
8683
|
+
quoteType,
|
|
8684
|
+
a2b: path.direction,
|
|
8685
|
+
amountIn,
|
|
8686
|
+
publishedAt: path.publishedAt,
|
|
8687
|
+
poolId: extendedDetails.bolt_pool_id,
|
|
8688
|
+
oracleId: extendedDetails.bolt_oracle_id
|
|
8689
|
+
};
|
|
8690
|
+
}
|
|
8691
|
+
executeSwapContract(txb, swapData, swapContext) {
|
|
8692
|
+
txb.moveCall({
|
|
8693
|
+
target: `${swapData.publishedAt}::bolt::swap`,
|
|
8694
|
+
typeArguments: [swapData.baseType, swapData.quoteType],
|
|
8695
|
+
arguments: [
|
|
8696
|
+
swapContext,
|
|
8697
|
+
// swap_ctx
|
|
8698
|
+
txb.object(swapData.poolId),
|
|
8699
|
+
// pool: &mut LiquidityPool<T0>
|
|
8700
|
+
txb.object(swapData.oracleId),
|
|
8701
|
+
// oracle: &Oracle
|
|
8702
|
+
txb.object(utils.SUI_CLOCK_OBJECT_ID),
|
|
8703
|
+
// clock: &Clock
|
|
8704
|
+
txb.pure.bool(swapData.a2b),
|
|
8705
|
+
// a2b: bool
|
|
8706
|
+
txb.pure.u64(swapData.amountIn)
|
|
8707
|
+
// amount_in: u64
|
|
8708
|
+
]
|
|
8709
|
+
});
|
|
8710
|
+
}
|
|
8711
|
+
};
|
|
8650
8712
|
|
|
8651
8713
|
// src/client.ts
|
|
8652
8714
|
var CETUS = "CETUS";
|
|
@@ -8682,6 +8744,7 @@ var FULLSAIL = "FULLSAIL";
|
|
|
8682
8744
|
var CETUSDLMM = "CETUSDLMM";
|
|
8683
8745
|
var FERRADLMM = "FERRADLMM";
|
|
8684
8746
|
var FERRACLMM = "FERRACLMM";
|
|
8747
|
+
var BOLT = "BOLT";
|
|
8685
8748
|
var DEFAULT_ENDPOINT = "https://api-sui.cetus.zone/router_v3";
|
|
8686
8749
|
var ALL_DEXES = [
|
|
8687
8750
|
CETUS,
|
|
@@ -8715,7 +8778,8 @@ var ALL_DEXES = [
|
|
|
8715
8778
|
FULLSAIL,
|
|
8716
8779
|
CETUSDLMM,
|
|
8717
8780
|
FERRADLMM,
|
|
8718
|
-
FERRACLMM
|
|
8781
|
+
FERRACLMM,
|
|
8782
|
+
BOLT
|
|
8719
8783
|
];
|
|
8720
8784
|
function getAllProviders() {
|
|
8721
8785
|
return ALL_DEXES;
|
|
@@ -8923,6 +8987,8 @@ var _AggregatorClient = class _AggregatorClient {
|
|
|
8923
8987
|
return new FerraDlmmRouter(this.env);
|
|
8924
8988
|
case FERRACLMM:
|
|
8925
8989
|
return new FerraClmmRouter(this.env);
|
|
8990
|
+
case BOLT:
|
|
8991
|
+
return new BoltRouter(this.env);
|
|
8926
8992
|
default:
|
|
8927
8993
|
throw new Error(
|
|
8928
8994
|
`${CLIENT_CONFIG.ERRORS.UNSUPPORTED_DEX} ${provider}`
|
|
@@ -9242,7 +9308,7 @@ var _AggregatorClient = class _AggregatorClient {
|
|
|
9242
9308
|
return outputCoin;
|
|
9243
9309
|
}
|
|
9244
9310
|
async routerSwap(params) {
|
|
9245
|
-
const { router, inputCoin, slippage, txb, partner
|
|
9311
|
+
const { router, inputCoin, slippage, txb, partner } = params;
|
|
9246
9312
|
if (slippage > 1 || slippage < 0) {
|
|
9247
9313
|
throw new Error(CLIENT_CONFIG.ERRORS.INVALID_SLIPPAGE);
|
|
9248
9314
|
}
|
|
@@ -9276,8 +9342,7 @@ var _AggregatorClient = class _AggregatorClient {
|
|
|
9276
9342
|
amountOut.toString(),
|
|
9277
9343
|
amountLimit.toString(),
|
|
9278
9344
|
priceInfoObjectIds,
|
|
9279
|
-
partner ?? this.partner
|
|
9280
|
-
cetusDlmmPartner ?? this.cetusDlmmPartner
|
|
9345
|
+
partner ?? this.partner
|
|
9281
9346
|
);
|
|
9282
9347
|
} else {
|
|
9283
9348
|
return this.expectOutputSwapV3(
|
|
@@ -9352,7 +9417,7 @@ var _AggregatorClient = class _AggregatorClient {
|
|
|
9352
9417
|
// auto build input coin
|
|
9353
9418
|
// auto merge, transfer or destory target coin.
|
|
9354
9419
|
async fastRouterSwap(params) {
|
|
9355
|
-
const { router, slippage, txb, partner,
|
|
9420
|
+
const { router, slippage, txb, partner, payDeepFeeAmount } = params;
|
|
9356
9421
|
const fromCoinType = router.paths[0].from;
|
|
9357
9422
|
const targetCoinType = router.paths[router.paths.length - 1].target;
|
|
9358
9423
|
const byAmountIn = router.byAmountIn;
|
|
@@ -9393,7 +9458,6 @@ var _AggregatorClient = class _AggregatorClient {
|
|
|
9393
9458
|
slippage,
|
|
9394
9459
|
txb,
|
|
9395
9460
|
partner: partner ?? this.partner,
|
|
9396
|
-
cetusDlmmPartner: cetusDlmmPartner ?? this.cetusDlmmPartner,
|
|
9397
9461
|
deepbookv3DeepFee: deepCoin
|
|
9398
9462
|
};
|
|
9399
9463
|
const targetCoin = await this.routerSwap(routerSwapParams);
|
|
@@ -9780,6 +9844,7 @@ exports.AggregatorError = AggregatorError;
|
|
|
9780
9844
|
exports.AggregatorServerErrorCode = AggregatorServerErrorCode;
|
|
9781
9845
|
exports.BLUEFIN = BLUEFIN;
|
|
9782
9846
|
exports.BLUEMOVE = BLUEMOVE;
|
|
9847
|
+
exports.BOLT = BOLT;
|
|
9783
9848
|
exports.CETUS = CETUS;
|
|
9784
9849
|
exports.CETUSDLMM = CETUSDLMM;
|
|
9785
9850
|
exports.CETUS_DEX = CETUS_DEX;
|
package/dist/index.d.cts
CHANGED
|
@@ -128,6 +128,9 @@ type ExtendedDetails = {
|
|
|
128
128
|
sevenk_oracle_config_b?: string;
|
|
129
129
|
/** @deprecated SevenK DEX is no longer active. */
|
|
130
130
|
sevenk_lp_cap_type?: string;
|
|
131
|
+
bolt_pool_id?: string;
|
|
132
|
+
bolt_oracle_id?: string;
|
|
133
|
+
bolt_quote_coin_type?: string;
|
|
131
134
|
};
|
|
132
135
|
type Path = {
|
|
133
136
|
id: string;
|
|
@@ -353,6 +356,7 @@ declare const FULLSAIL = "FULLSAIL";
|
|
|
353
356
|
declare const CETUSDLMM = "CETUSDLMM";
|
|
354
357
|
declare const FERRADLMM = "FERRADLMM";
|
|
355
358
|
declare const FERRACLMM = "FERRACLMM";
|
|
359
|
+
declare const BOLT = "BOLT";
|
|
356
360
|
declare const DEFAULT_ENDPOINT = "https://api-sui.cetus.zone/router_v3";
|
|
357
361
|
declare const ALL_DEXES: string[];
|
|
358
362
|
type BuildRouterSwapParamsV3 = {
|
|
@@ -361,7 +365,6 @@ type BuildRouterSwapParamsV3 = {
|
|
|
361
365
|
slippage: number;
|
|
362
366
|
txb: Transaction;
|
|
363
367
|
partner?: string;
|
|
364
|
-
cetusDlmmPartner?: string;
|
|
365
368
|
deepbookv3DeepFee?: TransactionObjectArgument;
|
|
366
369
|
fixable?: boolean;
|
|
367
370
|
};
|
|
@@ -370,7 +373,6 @@ type BuildFastRouterSwapParamsV3 = {
|
|
|
370
373
|
slippage: number;
|
|
371
374
|
txb: Transaction;
|
|
372
375
|
partner?: string;
|
|
373
|
-
cetusDlmmPartner?: string;
|
|
374
376
|
refreshAllCoins?: boolean;
|
|
375
377
|
payDeepFeeAmount?: number;
|
|
376
378
|
};
|
|
@@ -1121,4 +1123,4 @@ declare class CoinUtils {
|
|
|
1121
1123
|
static calculateTotalBalance(coins: CoinAsset[]): bigint;
|
|
1122
1124
|
}
|
|
1123
1125
|
|
|
1124
|
-
export { AFSUI, AFTERMATH, AFTERMATH_AMM, AFTERMATH_MODULE, AGGREGATOR, AGGREGATOR_V3_CONFIG, ALL_DEXES, ALPHAFI, AggregatorClient, type AggregatorClientParams, AggregatorConfig, AggregatorError, type AggregatorErrorCode, type AggregatorResponse, AggregatorServerErrorCode, BLUEFIN, BLUEMOVE, type BigNumber, type BuildCoinResult, type BuildFastMergeSwapParams, type BuildFastRouterSwapParams, type BuildFastRouterSwapParamsV2, type BuildFastRouterSwapParamsV3, type BuildMergeSwapParams, type BuildRouterSwapParams, type BuildRouterSwapParamsV2, type BuildRouterSwapParamsV3, CETUS, CETUSDLMM, CETUS_DEX, CETUS_MODULE, CETUS_PUBLISHED_AT, CHECK_COINS_THRESHOLD_FUNC, CLIENT_CONFIG, CLOCK_ADDRESS, type CoinAsset, CoinInfoAddress, CoinStoreAddress, CoinUtils, type ComparisonResult, ConfigErrorCode, DEEPBOOKV2, DEEPBOOKV3, DEEPBOOK_CLOB_V2_MODULE, DEEPBOOK_CUSTODIAN_V2_MODULE, DEEPBOOK_DEX, DEEPBOOK_MODULE, DEEPBOOK_PACKAGE_ID, DEEPBOOK_PUBLISHED_AT, DEEPBOOK_V3_DEEP_FEE_TYPES, DEFAULT_AGG_V2_ENDPOINT, DEFAULT_AGG_V3_ENDPOINT, DEFAULT_ENDPOINT, DEFAULT_GAS_BUDGET_FOR_MERGE, DEFAULT_GAS_BUDGET_FOR_SPLIT, DEFAULT_GAS_BUDGET_FOR_STAKE, DEFAULT_GAS_BUDGET_FOR_TRANSFER, DEFAULT_GAS_BUDGET_FOR_TRANSFER_SUI, DEFAULT_NFT_TRANSFER_GAS_FEE, type DeepbookV3Config, type DeepbookV3ConfigResponse, type Dex, Env, type ExtendedDetails, FERRACLMM, FERRADLMM, FLOWXV2, FLOWXV3, FLOWX_AMM, FLOWX_AMM_MODULE, FULLSAIL, type FindRouterParams, FlashSwapA2BFunc, FlashSwapB2AFunc, FlashSwapFunc, FlashSwapWithPartnerA2BFunc, FlashSwapWithPartnerB2AFunc, FlashSwapWithPartnerFunc, type FlattenedPath, GAS_SYMBOL, GAS_TYPE_ARG, GAS_TYPE_ARG_LONG, type GasMetrics, type GetOrCreateAccountCapResult, HAEDAL, HAEDALHMMV2, HAEDALPMM, HAWAL, INTEGRATE, JOIN_FUNC, KRIYA, KRIYAV3, KRIYA_DEX, KRIYA_MODULE, MAGMA, MAINNET_AFTERMATH_INSURANCE_FUND_ID, MAINNET_AFTERMATH_PROTOCOL_FEE_VAULT_ID, MAINNET_AFTERMATH_REFERRAL_VAULT_ID, MAINNET_AFTERMATH_REGISTRY_ID, MAINNET_AFTERMATH_TREASURY_ID, MAINNET_CETUS_V3_PUBLISHED_AT, MAINNET_FLOWX_AMM_CONTAINER_ID, METASTABLE, MOMENTUM, type MergeRoute, type MergeSwapFromCoin, type MergeSwapInputCoin, type MergeSwapParams, type MergeSwapRouterData, type NFT, OBRIC, ONE, PACKAGE_NAMES, PAY_MODULE, POOL_MODULT, PUBLISHED_ADDRESSES, PYTH_CONFIG, type Package, type Path, type PathV2, type PreSwapLpChangeParams, type ProcessedRouterData, type PythConfig, REPAY_FLASH_SWAP_A2B_FUNC, REPAY_FLASH_SWAP_B2A_FUNC, REPAY_FLASH_SWAP_WITH_PARTNER_A2B_FUNC, REPAY_FLASH_SWAP_WITH_PARTNER_B2A_FUNC, RepayFalshSwapFunc, RepayFlashSwapWithPartnerFunc, type Router, type RouterData, type RouterDataV2, type RouterDataV3, type RouterError, type RouterV2, SCALLOP, SEVENK, SPRINGSUI, STEAMM, STEAMM_OMM, STEAMM_OMM_V2, SUILEND, SUI_SYSTEM_STATE_OBJECT_ID, SWAP_A2B_FUNC, SWAP_B2A_FUNC, type SimulateTransactionResult, type SuiAddress, type SuiBasicTypes, type SuiInputTypes, type SuiMoveObject, type SuiObjectIdType, type SuiResource, type SuiStructTag, type SuiTxArg, SuiZeroCoinFn, type SwapGasAnalysis, type SwapInPoolsParams, type SwapInPoolsResultV3, TEN_POW_NINE, TESTNET_AFTERMATH_INSURANCE_FUND_ID, TESTNET_AFTERMATH_PROTOCOL_FEE_VAULT_ID, TESTNET_AFTERMATH_REFERRAL_VAULT_ID, TESTNET_AFTERMATH_REGISTRY_ID, TESTNET_AFTERMATH_TREASURY_ID, TESTNET_CETUS_V3_PUBLISHED_AT, TESTNET_FLOWX_AMM_CONTAINER_ID, TRANSFER_ACCOUNT_CAP, TRANSFER_OR_DESTORY_COIN_FUNC, TURBOS, TURBOS_DEX, TURBOS_MODULE, TURBOS_VERSIONED, TWO, TransactionErrorCode, TypesErrorCode, U128, U64_MAX, U64_MAX_BN, UTILS_MODULE, VOLO, ZERO, buildInputCoin, calculateGasEfficiency, calculatePriceImpact, checkInvalidSuiAddress, compareCoins, compareGasMetrics, completionCoin, composeType, createTarget, dealWithFastRouterSwapParamsForMsafe, exportToCSV, exportToJSON, extractAddressFromType, extractGasMetrics, extractStructTagFromType, extractTimestampFromDowngradeUuid6, fixSuiObjectId, formatGasMetrics, generateDowngradeUuid6, generateSimpleDowngradeUuid6, getAggregatorServerErrorMessage, getAggregatorV2Extend2PublishedAt, getAggregatorV2ExtendPublishedAt, getAggregatorV2PublishedAt, getAllProviders, getDeepbookV3Config, getDefaultSuiInputType, getMergeSwapResult, getOrCreateAccountCap, getProvidersExcluding, getProvidersIncluding, getRouterResult, isSortedSymbols, isValidDowngradeUuid6, mintZeroCoin, normalizeCoinType, parseAftermathFeeType, parseTurbosPoolFeeType, patchFixSuiObjectId, printTransaction, processEndpoint, processFlattenRoutes, restituteMsafeFastRouterSwapParams };
|
|
1126
|
+
export { AFSUI, AFTERMATH, AFTERMATH_AMM, AFTERMATH_MODULE, AGGREGATOR, AGGREGATOR_V3_CONFIG, ALL_DEXES, ALPHAFI, AggregatorClient, type AggregatorClientParams, AggregatorConfig, AggregatorError, type AggregatorErrorCode, type AggregatorResponse, AggregatorServerErrorCode, BLUEFIN, BLUEMOVE, BOLT, type BigNumber, type BuildCoinResult, type BuildFastMergeSwapParams, type BuildFastRouterSwapParams, type BuildFastRouterSwapParamsV2, type BuildFastRouterSwapParamsV3, type BuildMergeSwapParams, type BuildRouterSwapParams, type BuildRouterSwapParamsV2, type BuildRouterSwapParamsV3, CETUS, CETUSDLMM, CETUS_DEX, CETUS_MODULE, CETUS_PUBLISHED_AT, CHECK_COINS_THRESHOLD_FUNC, CLIENT_CONFIG, CLOCK_ADDRESS, type CoinAsset, CoinInfoAddress, CoinStoreAddress, CoinUtils, type ComparisonResult, ConfigErrorCode, DEEPBOOKV2, DEEPBOOKV3, DEEPBOOK_CLOB_V2_MODULE, DEEPBOOK_CUSTODIAN_V2_MODULE, DEEPBOOK_DEX, DEEPBOOK_MODULE, DEEPBOOK_PACKAGE_ID, DEEPBOOK_PUBLISHED_AT, DEEPBOOK_V3_DEEP_FEE_TYPES, DEFAULT_AGG_V2_ENDPOINT, DEFAULT_AGG_V3_ENDPOINT, DEFAULT_ENDPOINT, DEFAULT_GAS_BUDGET_FOR_MERGE, DEFAULT_GAS_BUDGET_FOR_SPLIT, DEFAULT_GAS_BUDGET_FOR_STAKE, DEFAULT_GAS_BUDGET_FOR_TRANSFER, DEFAULT_GAS_BUDGET_FOR_TRANSFER_SUI, DEFAULT_NFT_TRANSFER_GAS_FEE, type DeepbookV3Config, type DeepbookV3ConfigResponse, type Dex, Env, type ExtendedDetails, FERRACLMM, FERRADLMM, FLOWXV2, FLOWXV3, FLOWX_AMM, FLOWX_AMM_MODULE, FULLSAIL, type FindRouterParams, FlashSwapA2BFunc, FlashSwapB2AFunc, FlashSwapFunc, FlashSwapWithPartnerA2BFunc, FlashSwapWithPartnerB2AFunc, FlashSwapWithPartnerFunc, type FlattenedPath, GAS_SYMBOL, GAS_TYPE_ARG, GAS_TYPE_ARG_LONG, type GasMetrics, type GetOrCreateAccountCapResult, HAEDAL, HAEDALHMMV2, HAEDALPMM, HAWAL, INTEGRATE, JOIN_FUNC, KRIYA, KRIYAV3, KRIYA_DEX, KRIYA_MODULE, MAGMA, MAINNET_AFTERMATH_INSURANCE_FUND_ID, MAINNET_AFTERMATH_PROTOCOL_FEE_VAULT_ID, MAINNET_AFTERMATH_REFERRAL_VAULT_ID, MAINNET_AFTERMATH_REGISTRY_ID, MAINNET_AFTERMATH_TREASURY_ID, MAINNET_CETUS_V3_PUBLISHED_AT, MAINNET_FLOWX_AMM_CONTAINER_ID, METASTABLE, MOMENTUM, type MergeRoute, type MergeSwapFromCoin, type MergeSwapInputCoin, type MergeSwapParams, type MergeSwapRouterData, type NFT, OBRIC, ONE, PACKAGE_NAMES, PAY_MODULE, POOL_MODULT, PUBLISHED_ADDRESSES, PYTH_CONFIG, type Package, type Path, type PathV2, type PreSwapLpChangeParams, type ProcessedRouterData, type PythConfig, REPAY_FLASH_SWAP_A2B_FUNC, REPAY_FLASH_SWAP_B2A_FUNC, REPAY_FLASH_SWAP_WITH_PARTNER_A2B_FUNC, REPAY_FLASH_SWAP_WITH_PARTNER_B2A_FUNC, RepayFalshSwapFunc, RepayFlashSwapWithPartnerFunc, type Router, type RouterData, type RouterDataV2, type RouterDataV3, type RouterError, type RouterV2, SCALLOP, SEVENK, SPRINGSUI, STEAMM, STEAMM_OMM, STEAMM_OMM_V2, SUILEND, SUI_SYSTEM_STATE_OBJECT_ID, SWAP_A2B_FUNC, SWAP_B2A_FUNC, type SimulateTransactionResult, type SuiAddress, type SuiBasicTypes, type SuiInputTypes, type SuiMoveObject, type SuiObjectIdType, type SuiResource, type SuiStructTag, type SuiTxArg, SuiZeroCoinFn, type SwapGasAnalysis, type SwapInPoolsParams, type SwapInPoolsResultV3, TEN_POW_NINE, TESTNET_AFTERMATH_INSURANCE_FUND_ID, TESTNET_AFTERMATH_PROTOCOL_FEE_VAULT_ID, TESTNET_AFTERMATH_REFERRAL_VAULT_ID, TESTNET_AFTERMATH_REGISTRY_ID, TESTNET_AFTERMATH_TREASURY_ID, TESTNET_CETUS_V3_PUBLISHED_AT, TESTNET_FLOWX_AMM_CONTAINER_ID, TRANSFER_ACCOUNT_CAP, TRANSFER_OR_DESTORY_COIN_FUNC, TURBOS, TURBOS_DEX, TURBOS_MODULE, TURBOS_VERSIONED, TWO, TransactionErrorCode, TypesErrorCode, U128, U64_MAX, U64_MAX_BN, UTILS_MODULE, VOLO, ZERO, buildInputCoin, calculateGasEfficiency, calculatePriceImpact, checkInvalidSuiAddress, compareCoins, compareGasMetrics, completionCoin, composeType, createTarget, dealWithFastRouterSwapParamsForMsafe, exportToCSV, exportToJSON, extractAddressFromType, extractGasMetrics, extractStructTagFromType, extractTimestampFromDowngradeUuid6, fixSuiObjectId, formatGasMetrics, generateDowngradeUuid6, generateSimpleDowngradeUuid6, getAggregatorServerErrorMessage, getAggregatorV2Extend2PublishedAt, getAggregatorV2ExtendPublishedAt, getAggregatorV2PublishedAt, getAllProviders, getDeepbookV3Config, getDefaultSuiInputType, getMergeSwapResult, getOrCreateAccountCap, getProvidersExcluding, getProvidersIncluding, getRouterResult, isSortedSymbols, isValidDowngradeUuid6, mintZeroCoin, normalizeCoinType, parseAftermathFeeType, parseTurbosPoolFeeType, patchFixSuiObjectId, printTransaction, processEndpoint, processFlattenRoutes, restituteMsafeFastRouterSwapParams };
|
package/dist/index.d.ts
CHANGED
|
@@ -128,6 +128,9 @@ type ExtendedDetails = {
|
|
|
128
128
|
sevenk_oracle_config_b?: string;
|
|
129
129
|
/** @deprecated SevenK DEX is no longer active. */
|
|
130
130
|
sevenk_lp_cap_type?: string;
|
|
131
|
+
bolt_pool_id?: string;
|
|
132
|
+
bolt_oracle_id?: string;
|
|
133
|
+
bolt_quote_coin_type?: string;
|
|
131
134
|
};
|
|
132
135
|
type Path = {
|
|
133
136
|
id: string;
|
|
@@ -353,6 +356,7 @@ declare const FULLSAIL = "FULLSAIL";
|
|
|
353
356
|
declare const CETUSDLMM = "CETUSDLMM";
|
|
354
357
|
declare const FERRADLMM = "FERRADLMM";
|
|
355
358
|
declare const FERRACLMM = "FERRACLMM";
|
|
359
|
+
declare const BOLT = "BOLT";
|
|
356
360
|
declare const DEFAULT_ENDPOINT = "https://api-sui.cetus.zone/router_v3";
|
|
357
361
|
declare const ALL_DEXES: string[];
|
|
358
362
|
type BuildRouterSwapParamsV3 = {
|
|
@@ -361,7 +365,6 @@ type BuildRouterSwapParamsV3 = {
|
|
|
361
365
|
slippage: number;
|
|
362
366
|
txb: Transaction;
|
|
363
367
|
partner?: string;
|
|
364
|
-
cetusDlmmPartner?: string;
|
|
365
368
|
deepbookv3DeepFee?: TransactionObjectArgument;
|
|
366
369
|
fixable?: boolean;
|
|
367
370
|
};
|
|
@@ -370,7 +373,6 @@ type BuildFastRouterSwapParamsV3 = {
|
|
|
370
373
|
slippage: number;
|
|
371
374
|
txb: Transaction;
|
|
372
375
|
partner?: string;
|
|
373
|
-
cetusDlmmPartner?: string;
|
|
374
376
|
refreshAllCoins?: boolean;
|
|
375
377
|
payDeepFeeAmount?: number;
|
|
376
378
|
};
|
|
@@ -1121,4 +1123,4 @@ declare class CoinUtils {
|
|
|
1121
1123
|
static calculateTotalBalance(coins: CoinAsset[]): bigint;
|
|
1122
1124
|
}
|
|
1123
1125
|
|
|
1124
|
-
export { AFSUI, AFTERMATH, AFTERMATH_AMM, AFTERMATH_MODULE, AGGREGATOR, AGGREGATOR_V3_CONFIG, ALL_DEXES, ALPHAFI, AggregatorClient, type AggregatorClientParams, AggregatorConfig, AggregatorError, type AggregatorErrorCode, type AggregatorResponse, AggregatorServerErrorCode, BLUEFIN, BLUEMOVE, type BigNumber, type BuildCoinResult, type BuildFastMergeSwapParams, type BuildFastRouterSwapParams, type BuildFastRouterSwapParamsV2, type BuildFastRouterSwapParamsV3, type BuildMergeSwapParams, type BuildRouterSwapParams, type BuildRouterSwapParamsV2, type BuildRouterSwapParamsV3, CETUS, CETUSDLMM, CETUS_DEX, CETUS_MODULE, CETUS_PUBLISHED_AT, CHECK_COINS_THRESHOLD_FUNC, CLIENT_CONFIG, CLOCK_ADDRESS, type CoinAsset, CoinInfoAddress, CoinStoreAddress, CoinUtils, type ComparisonResult, ConfigErrorCode, DEEPBOOKV2, DEEPBOOKV3, DEEPBOOK_CLOB_V2_MODULE, DEEPBOOK_CUSTODIAN_V2_MODULE, DEEPBOOK_DEX, DEEPBOOK_MODULE, DEEPBOOK_PACKAGE_ID, DEEPBOOK_PUBLISHED_AT, DEEPBOOK_V3_DEEP_FEE_TYPES, DEFAULT_AGG_V2_ENDPOINT, DEFAULT_AGG_V3_ENDPOINT, DEFAULT_ENDPOINT, DEFAULT_GAS_BUDGET_FOR_MERGE, DEFAULT_GAS_BUDGET_FOR_SPLIT, DEFAULT_GAS_BUDGET_FOR_STAKE, DEFAULT_GAS_BUDGET_FOR_TRANSFER, DEFAULT_GAS_BUDGET_FOR_TRANSFER_SUI, DEFAULT_NFT_TRANSFER_GAS_FEE, type DeepbookV3Config, type DeepbookV3ConfigResponse, type Dex, Env, type ExtendedDetails, FERRACLMM, FERRADLMM, FLOWXV2, FLOWXV3, FLOWX_AMM, FLOWX_AMM_MODULE, FULLSAIL, type FindRouterParams, FlashSwapA2BFunc, FlashSwapB2AFunc, FlashSwapFunc, FlashSwapWithPartnerA2BFunc, FlashSwapWithPartnerB2AFunc, FlashSwapWithPartnerFunc, type FlattenedPath, GAS_SYMBOL, GAS_TYPE_ARG, GAS_TYPE_ARG_LONG, type GasMetrics, type GetOrCreateAccountCapResult, HAEDAL, HAEDALHMMV2, HAEDALPMM, HAWAL, INTEGRATE, JOIN_FUNC, KRIYA, KRIYAV3, KRIYA_DEX, KRIYA_MODULE, MAGMA, MAINNET_AFTERMATH_INSURANCE_FUND_ID, MAINNET_AFTERMATH_PROTOCOL_FEE_VAULT_ID, MAINNET_AFTERMATH_REFERRAL_VAULT_ID, MAINNET_AFTERMATH_REGISTRY_ID, MAINNET_AFTERMATH_TREASURY_ID, MAINNET_CETUS_V3_PUBLISHED_AT, MAINNET_FLOWX_AMM_CONTAINER_ID, METASTABLE, MOMENTUM, type MergeRoute, type MergeSwapFromCoin, type MergeSwapInputCoin, type MergeSwapParams, type MergeSwapRouterData, type NFT, OBRIC, ONE, PACKAGE_NAMES, PAY_MODULE, POOL_MODULT, PUBLISHED_ADDRESSES, PYTH_CONFIG, type Package, type Path, type PathV2, type PreSwapLpChangeParams, type ProcessedRouterData, type PythConfig, REPAY_FLASH_SWAP_A2B_FUNC, REPAY_FLASH_SWAP_B2A_FUNC, REPAY_FLASH_SWAP_WITH_PARTNER_A2B_FUNC, REPAY_FLASH_SWAP_WITH_PARTNER_B2A_FUNC, RepayFalshSwapFunc, RepayFlashSwapWithPartnerFunc, type Router, type RouterData, type RouterDataV2, type RouterDataV3, type RouterError, type RouterV2, SCALLOP, SEVENK, SPRINGSUI, STEAMM, STEAMM_OMM, STEAMM_OMM_V2, SUILEND, SUI_SYSTEM_STATE_OBJECT_ID, SWAP_A2B_FUNC, SWAP_B2A_FUNC, type SimulateTransactionResult, type SuiAddress, type SuiBasicTypes, type SuiInputTypes, type SuiMoveObject, type SuiObjectIdType, type SuiResource, type SuiStructTag, type SuiTxArg, SuiZeroCoinFn, type SwapGasAnalysis, type SwapInPoolsParams, type SwapInPoolsResultV3, TEN_POW_NINE, TESTNET_AFTERMATH_INSURANCE_FUND_ID, TESTNET_AFTERMATH_PROTOCOL_FEE_VAULT_ID, TESTNET_AFTERMATH_REFERRAL_VAULT_ID, TESTNET_AFTERMATH_REGISTRY_ID, TESTNET_AFTERMATH_TREASURY_ID, TESTNET_CETUS_V3_PUBLISHED_AT, TESTNET_FLOWX_AMM_CONTAINER_ID, TRANSFER_ACCOUNT_CAP, TRANSFER_OR_DESTORY_COIN_FUNC, TURBOS, TURBOS_DEX, TURBOS_MODULE, TURBOS_VERSIONED, TWO, TransactionErrorCode, TypesErrorCode, U128, U64_MAX, U64_MAX_BN, UTILS_MODULE, VOLO, ZERO, buildInputCoin, calculateGasEfficiency, calculatePriceImpact, checkInvalidSuiAddress, compareCoins, compareGasMetrics, completionCoin, composeType, createTarget, dealWithFastRouterSwapParamsForMsafe, exportToCSV, exportToJSON, extractAddressFromType, extractGasMetrics, extractStructTagFromType, extractTimestampFromDowngradeUuid6, fixSuiObjectId, formatGasMetrics, generateDowngradeUuid6, generateSimpleDowngradeUuid6, getAggregatorServerErrorMessage, getAggregatorV2Extend2PublishedAt, getAggregatorV2ExtendPublishedAt, getAggregatorV2PublishedAt, getAllProviders, getDeepbookV3Config, getDefaultSuiInputType, getMergeSwapResult, getOrCreateAccountCap, getProvidersExcluding, getProvidersIncluding, getRouterResult, isSortedSymbols, isValidDowngradeUuid6, mintZeroCoin, normalizeCoinType, parseAftermathFeeType, parseTurbosPoolFeeType, patchFixSuiObjectId, printTransaction, processEndpoint, processFlattenRoutes, restituteMsafeFastRouterSwapParams };
|
|
1126
|
+
export { AFSUI, AFTERMATH, AFTERMATH_AMM, AFTERMATH_MODULE, AGGREGATOR, AGGREGATOR_V3_CONFIG, ALL_DEXES, ALPHAFI, AggregatorClient, type AggregatorClientParams, AggregatorConfig, AggregatorError, type AggregatorErrorCode, type AggregatorResponse, AggregatorServerErrorCode, BLUEFIN, BLUEMOVE, BOLT, type BigNumber, type BuildCoinResult, type BuildFastMergeSwapParams, type BuildFastRouterSwapParams, type BuildFastRouterSwapParamsV2, type BuildFastRouterSwapParamsV3, type BuildMergeSwapParams, type BuildRouterSwapParams, type BuildRouterSwapParamsV2, type BuildRouterSwapParamsV3, CETUS, CETUSDLMM, CETUS_DEX, CETUS_MODULE, CETUS_PUBLISHED_AT, CHECK_COINS_THRESHOLD_FUNC, CLIENT_CONFIG, CLOCK_ADDRESS, type CoinAsset, CoinInfoAddress, CoinStoreAddress, CoinUtils, type ComparisonResult, ConfigErrorCode, DEEPBOOKV2, DEEPBOOKV3, DEEPBOOK_CLOB_V2_MODULE, DEEPBOOK_CUSTODIAN_V2_MODULE, DEEPBOOK_DEX, DEEPBOOK_MODULE, DEEPBOOK_PACKAGE_ID, DEEPBOOK_PUBLISHED_AT, DEEPBOOK_V3_DEEP_FEE_TYPES, DEFAULT_AGG_V2_ENDPOINT, DEFAULT_AGG_V3_ENDPOINT, DEFAULT_ENDPOINT, DEFAULT_GAS_BUDGET_FOR_MERGE, DEFAULT_GAS_BUDGET_FOR_SPLIT, DEFAULT_GAS_BUDGET_FOR_STAKE, DEFAULT_GAS_BUDGET_FOR_TRANSFER, DEFAULT_GAS_BUDGET_FOR_TRANSFER_SUI, DEFAULT_NFT_TRANSFER_GAS_FEE, type DeepbookV3Config, type DeepbookV3ConfigResponse, type Dex, Env, type ExtendedDetails, FERRACLMM, FERRADLMM, FLOWXV2, FLOWXV3, FLOWX_AMM, FLOWX_AMM_MODULE, FULLSAIL, type FindRouterParams, FlashSwapA2BFunc, FlashSwapB2AFunc, FlashSwapFunc, FlashSwapWithPartnerA2BFunc, FlashSwapWithPartnerB2AFunc, FlashSwapWithPartnerFunc, type FlattenedPath, GAS_SYMBOL, GAS_TYPE_ARG, GAS_TYPE_ARG_LONG, type GasMetrics, type GetOrCreateAccountCapResult, HAEDAL, HAEDALHMMV2, HAEDALPMM, HAWAL, INTEGRATE, JOIN_FUNC, KRIYA, KRIYAV3, KRIYA_DEX, KRIYA_MODULE, MAGMA, MAINNET_AFTERMATH_INSURANCE_FUND_ID, MAINNET_AFTERMATH_PROTOCOL_FEE_VAULT_ID, MAINNET_AFTERMATH_REFERRAL_VAULT_ID, MAINNET_AFTERMATH_REGISTRY_ID, MAINNET_AFTERMATH_TREASURY_ID, MAINNET_CETUS_V3_PUBLISHED_AT, MAINNET_FLOWX_AMM_CONTAINER_ID, METASTABLE, MOMENTUM, type MergeRoute, type MergeSwapFromCoin, type MergeSwapInputCoin, type MergeSwapParams, type MergeSwapRouterData, type NFT, OBRIC, ONE, PACKAGE_NAMES, PAY_MODULE, POOL_MODULT, PUBLISHED_ADDRESSES, PYTH_CONFIG, type Package, type Path, type PathV2, type PreSwapLpChangeParams, type ProcessedRouterData, type PythConfig, REPAY_FLASH_SWAP_A2B_FUNC, REPAY_FLASH_SWAP_B2A_FUNC, REPAY_FLASH_SWAP_WITH_PARTNER_A2B_FUNC, REPAY_FLASH_SWAP_WITH_PARTNER_B2A_FUNC, RepayFalshSwapFunc, RepayFlashSwapWithPartnerFunc, type Router, type RouterData, type RouterDataV2, type RouterDataV3, type RouterError, type RouterV2, SCALLOP, SEVENK, SPRINGSUI, STEAMM, STEAMM_OMM, STEAMM_OMM_V2, SUILEND, SUI_SYSTEM_STATE_OBJECT_ID, SWAP_A2B_FUNC, SWAP_B2A_FUNC, type SimulateTransactionResult, type SuiAddress, type SuiBasicTypes, type SuiInputTypes, type SuiMoveObject, type SuiObjectIdType, type SuiResource, type SuiStructTag, type SuiTxArg, SuiZeroCoinFn, type SwapGasAnalysis, type SwapInPoolsParams, type SwapInPoolsResultV3, TEN_POW_NINE, TESTNET_AFTERMATH_INSURANCE_FUND_ID, TESTNET_AFTERMATH_PROTOCOL_FEE_VAULT_ID, TESTNET_AFTERMATH_REFERRAL_VAULT_ID, TESTNET_AFTERMATH_REGISTRY_ID, TESTNET_AFTERMATH_TREASURY_ID, TESTNET_CETUS_V3_PUBLISHED_AT, TESTNET_FLOWX_AMM_CONTAINER_ID, TRANSFER_ACCOUNT_CAP, TRANSFER_OR_DESTORY_COIN_FUNC, TURBOS, TURBOS_DEX, TURBOS_MODULE, TURBOS_VERSIONED, TWO, TransactionErrorCode, TypesErrorCode, U128, U64_MAX, U64_MAX_BN, UTILS_MODULE, VOLO, ZERO, buildInputCoin, calculateGasEfficiency, calculatePriceImpact, checkInvalidSuiAddress, compareCoins, compareGasMetrics, completionCoin, composeType, createTarget, dealWithFastRouterSwapParamsForMsafe, exportToCSV, exportToJSON, extractAddressFromType, extractGasMetrics, extractStructTagFromType, extractTimestampFromDowngradeUuid6, fixSuiObjectId, formatGasMetrics, generateDowngradeUuid6, generateSimpleDowngradeUuid6, getAggregatorServerErrorMessage, getAggregatorV2Extend2PublishedAt, getAggregatorV2ExtendPublishedAt, getAggregatorV2PublishedAt, getAllProviders, getDeepbookV3Config, getDefaultSuiInputType, getMergeSwapResult, getOrCreateAccountCap, getProvidersExcluding, getProvidersIncluding, getRouterResult, isSortedSymbols, isValidDowngradeUuid6, mintZeroCoin, normalizeCoinType, parseAftermathFeeType, parseTurbosPoolFeeType, patchFixSuiObjectId, printTransaction, processEndpoint, processFlattenRoutes, restituteMsafeFastRouterSwapParams };
|
package/dist/index.js
CHANGED
|
@@ -3410,7 +3410,7 @@ var AGGREGATOR_V3_CONFIG = {
|
|
|
3410
3410
|
};
|
|
3411
3411
|
|
|
3412
3412
|
// src/api.ts
|
|
3413
|
-
var SDK_VERSION =
|
|
3413
|
+
var SDK_VERSION = 1010500;
|
|
3414
3414
|
function parseRouterResponse(data, byAmountIn) {
|
|
3415
3415
|
let packages = /* @__PURE__ */ new Map();
|
|
3416
3416
|
if (data.packages) {
|
|
@@ -8641,6 +8641,68 @@ var FerraClmmRouter = class {
|
|
|
8641
8641
|
});
|
|
8642
8642
|
}
|
|
8643
8643
|
};
|
|
8644
|
+
var BoltRouter = class {
|
|
8645
|
+
constructor(_env) {
|
|
8646
|
+
}
|
|
8647
|
+
swap(txb, flattenedPath, swapContext, _extends) {
|
|
8648
|
+
const path = flattenedPath.path;
|
|
8649
|
+
if (!path.extendedDetails) {
|
|
8650
|
+
throw new Error("Extended details not found for BOLT");
|
|
8651
|
+
}
|
|
8652
|
+
this.validateExtendedDetails(path.extendedDetails);
|
|
8653
|
+
const swapData = this.prepareSwapData(flattenedPath);
|
|
8654
|
+
this.executeSwapContract(txb, swapData, swapContext);
|
|
8655
|
+
}
|
|
8656
|
+
validateExtendedDetails(extendedDetails) {
|
|
8657
|
+
if (!extendedDetails.bolt_pool_id) {
|
|
8658
|
+
throw new Error("BOLT pool id not found in extended details");
|
|
8659
|
+
}
|
|
8660
|
+
if (!extendedDetails.bolt_oracle_id) {
|
|
8661
|
+
throw new Error("BOLT oracle id not found in extended details");
|
|
8662
|
+
}
|
|
8663
|
+
if (!extendedDetails.bolt_quote_coin_type) {
|
|
8664
|
+
throw new Error("BOLT quote coin type not found in extended details");
|
|
8665
|
+
}
|
|
8666
|
+
}
|
|
8667
|
+
prepareSwapData(flattenedPath) {
|
|
8668
|
+
const path = flattenedPath.path;
|
|
8669
|
+
if (path.publishedAt == null) {
|
|
8670
|
+
throw new Error("BOLT not set publishedAt");
|
|
8671
|
+
}
|
|
8672
|
+
const extendedDetails = path.extendedDetails;
|
|
8673
|
+
const [baseType, quoteType] = path.direction ? [path.from, path.target] : [path.target, path.from];
|
|
8674
|
+
const amountIn = flattenedPath.isLastUseOfIntermediateToken ? AGGREGATOR_V3_CONFIG.MAX_AMOUNT_IN : path.amountIn;
|
|
8675
|
+
return {
|
|
8676
|
+
baseType,
|
|
8677
|
+
quoteType,
|
|
8678
|
+
a2b: path.direction,
|
|
8679
|
+
amountIn,
|
|
8680
|
+
publishedAt: path.publishedAt,
|
|
8681
|
+
poolId: extendedDetails.bolt_pool_id,
|
|
8682
|
+
oracleId: extendedDetails.bolt_oracle_id
|
|
8683
|
+
};
|
|
8684
|
+
}
|
|
8685
|
+
executeSwapContract(txb, swapData, swapContext) {
|
|
8686
|
+
txb.moveCall({
|
|
8687
|
+
target: `${swapData.publishedAt}::bolt::swap`,
|
|
8688
|
+
typeArguments: [swapData.baseType, swapData.quoteType],
|
|
8689
|
+
arguments: [
|
|
8690
|
+
swapContext,
|
|
8691
|
+
// swap_ctx
|
|
8692
|
+
txb.object(swapData.poolId),
|
|
8693
|
+
// pool: &mut LiquidityPool<T0>
|
|
8694
|
+
txb.object(swapData.oracleId),
|
|
8695
|
+
// oracle: &Oracle
|
|
8696
|
+
txb.object(SUI_CLOCK_OBJECT_ID),
|
|
8697
|
+
// clock: &Clock
|
|
8698
|
+
txb.pure.bool(swapData.a2b),
|
|
8699
|
+
// a2b: bool
|
|
8700
|
+
txb.pure.u64(swapData.amountIn)
|
|
8701
|
+
// amount_in: u64
|
|
8702
|
+
]
|
|
8703
|
+
});
|
|
8704
|
+
}
|
|
8705
|
+
};
|
|
8644
8706
|
|
|
8645
8707
|
// src/client.ts
|
|
8646
8708
|
var CETUS = "CETUS";
|
|
@@ -8676,6 +8738,7 @@ var FULLSAIL = "FULLSAIL";
|
|
|
8676
8738
|
var CETUSDLMM = "CETUSDLMM";
|
|
8677
8739
|
var FERRADLMM = "FERRADLMM";
|
|
8678
8740
|
var FERRACLMM = "FERRACLMM";
|
|
8741
|
+
var BOLT = "BOLT";
|
|
8679
8742
|
var DEFAULT_ENDPOINT = "https://api-sui.cetus.zone/router_v3";
|
|
8680
8743
|
var ALL_DEXES = [
|
|
8681
8744
|
CETUS,
|
|
@@ -8709,7 +8772,8 @@ var ALL_DEXES = [
|
|
|
8709
8772
|
FULLSAIL,
|
|
8710
8773
|
CETUSDLMM,
|
|
8711
8774
|
FERRADLMM,
|
|
8712
|
-
FERRACLMM
|
|
8775
|
+
FERRACLMM,
|
|
8776
|
+
BOLT
|
|
8713
8777
|
];
|
|
8714
8778
|
function getAllProviders() {
|
|
8715
8779
|
return ALL_DEXES;
|
|
@@ -8917,6 +8981,8 @@ var _AggregatorClient = class _AggregatorClient {
|
|
|
8917
8981
|
return new FerraDlmmRouter(this.env);
|
|
8918
8982
|
case FERRACLMM:
|
|
8919
8983
|
return new FerraClmmRouter(this.env);
|
|
8984
|
+
case BOLT:
|
|
8985
|
+
return new BoltRouter(this.env);
|
|
8920
8986
|
default:
|
|
8921
8987
|
throw new Error(
|
|
8922
8988
|
`${CLIENT_CONFIG.ERRORS.UNSUPPORTED_DEX} ${provider}`
|
|
@@ -9236,7 +9302,7 @@ var _AggregatorClient = class _AggregatorClient {
|
|
|
9236
9302
|
return outputCoin;
|
|
9237
9303
|
}
|
|
9238
9304
|
async routerSwap(params) {
|
|
9239
|
-
const { router, inputCoin, slippage, txb, partner
|
|
9305
|
+
const { router, inputCoin, slippage, txb, partner } = params;
|
|
9240
9306
|
if (slippage > 1 || slippage < 0) {
|
|
9241
9307
|
throw new Error(CLIENT_CONFIG.ERRORS.INVALID_SLIPPAGE);
|
|
9242
9308
|
}
|
|
@@ -9270,8 +9336,7 @@ var _AggregatorClient = class _AggregatorClient {
|
|
|
9270
9336
|
amountOut.toString(),
|
|
9271
9337
|
amountLimit.toString(),
|
|
9272
9338
|
priceInfoObjectIds,
|
|
9273
|
-
partner ?? this.partner
|
|
9274
|
-
cetusDlmmPartner ?? this.cetusDlmmPartner
|
|
9339
|
+
partner ?? this.partner
|
|
9275
9340
|
);
|
|
9276
9341
|
} else {
|
|
9277
9342
|
return this.expectOutputSwapV3(
|
|
@@ -9346,7 +9411,7 @@ var _AggregatorClient = class _AggregatorClient {
|
|
|
9346
9411
|
// auto build input coin
|
|
9347
9412
|
// auto merge, transfer or destory target coin.
|
|
9348
9413
|
async fastRouterSwap(params) {
|
|
9349
|
-
const { router, slippage, txb, partner,
|
|
9414
|
+
const { router, slippage, txb, partner, payDeepFeeAmount } = params;
|
|
9350
9415
|
const fromCoinType = router.paths[0].from;
|
|
9351
9416
|
const targetCoinType = router.paths[router.paths.length - 1].target;
|
|
9352
9417
|
const byAmountIn = router.byAmountIn;
|
|
@@ -9387,7 +9452,6 @@ var _AggregatorClient = class _AggregatorClient {
|
|
|
9387
9452
|
slippage,
|
|
9388
9453
|
txb,
|
|
9389
9454
|
partner: partner ?? this.partner,
|
|
9390
|
-
cetusDlmmPartner: cetusDlmmPartner ?? this.cetusDlmmPartner,
|
|
9391
9455
|
deepbookv3DeepFee: deepCoin
|
|
9392
9456
|
};
|
|
9393
9457
|
const targetCoin = await this.routerSwap(routerSwapParams);
|
|
@@ -9760,4 +9824,4 @@ decimal.js/decimal.mjs:
|
|
|
9760
9824
|
*)
|
|
9761
9825
|
*/
|
|
9762
9826
|
|
|
9763
|
-
export { AFSUI, AFTERMATH, AFTERMATH_AMM, AFTERMATH_MODULE, AGGREGATOR, AGGREGATOR_V3_CONFIG, ALL_DEXES, ALPHAFI, AggregatorClient, AggregatorConfig, AggregatorError, AggregatorServerErrorCode, BLUEFIN, BLUEMOVE, CETUS, CETUSDLMM, CETUS_DEX, CETUS_MODULE, CETUS_PUBLISHED_AT, CHECK_COINS_THRESHOLD_FUNC, CLIENT_CONFIG, CLOCK_ADDRESS, CoinInfoAddress, CoinStoreAddress, CoinUtils, ConfigErrorCode, DEEPBOOKV2, DEEPBOOKV3, DEEPBOOK_CLOB_V2_MODULE, DEEPBOOK_CUSTODIAN_V2_MODULE, DEEPBOOK_DEX, DEEPBOOK_MODULE, DEEPBOOK_PACKAGE_ID, DEEPBOOK_PUBLISHED_AT, DEEPBOOK_V3_DEEP_FEE_TYPES, DEFAULT_AGG_V2_ENDPOINT, DEFAULT_AGG_V3_ENDPOINT, DEFAULT_ENDPOINT, DEFAULT_GAS_BUDGET_FOR_MERGE, DEFAULT_GAS_BUDGET_FOR_SPLIT, DEFAULT_GAS_BUDGET_FOR_STAKE, DEFAULT_GAS_BUDGET_FOR_TRANSFER, DEFAULT_GAS_BUDGET_FOR_TRANSFER_SUI, DEFAULT_NFT_TRANSFER_GAS_FEE, Env, FERRACLMM, FERRADLMM, FLOWXV2, FLOWXV3, FLOWX_AMM, FLOWX_AMM_MODULE, FULLSAIL, FlashSwapA2BFunc, FlashSwapB2AFunc, FlashSwapFunc, FlashSwapWithPartnerA2BFunc, FlashSwapWithPartnerB2AFunc, FlashSwapWithPartnerFunc, GAS_SYMBOL, GAS_TYPE_ARG, GAS_TYPE_ARG_LONG, HAEDAL, HAEDALHMMV2, HAEDALPMM, HAWAL, INTEGRATE, JOIN_FUNC, KRIYA, KRIYAV3, KRIYA_DEX, KRIYA_MODULE, MAGMA, MAINNET_AFTERMATH_INSURANCE_FUND_ID, MAINNET_AFTERMATH_PROTOCOL_FEE_VAULT_ID, MAINNET_AFTERMATH_REFERRAL_VAULT_ID, MAINNET_AFTERMATH_REGISTRY_ID, MAINNET_AFTERMATH_TREASURY_ID, MAINNET_CETUS_V3_PUBLISHED_AT, MAINNET_FLOWX_AMM_CONTAINER_ID, METASTABLE, MOMENTUM, OBRIC, ONE, PACKAGE_NAMES, PAY_MODULE, POOL_MODULT, PUBLISHED_ADDRESSES, PYTH_CONFIG, REPAY_FLASH_SWAP_A2B_FUNC, REPAY_FLASH_SWAP_B2A_FUNC, REPAY_FLASH_SWAP_WITH_PARTNER_A2B_FUNC, REPAY_FLASH_SWAP_WITH_PARTNER_B2A_FUNC, RepayFalshSwapFunc, RepayFlashSwapWithPartnerFunc, SCALLOP, SEVENK, SPRINGSUI, STEAMM, STEAMM_OMM, STEAMM_OMM_V2, SUILEND, SUI_SYSTEM_STATE_OBJECT_ID, SWAP_A2B_FUNC, SWAP_B2A_FUNC, SuiZeroCoinFn, TEN_POW_NINE, TESTNET_AFTERMATH_INSURANCE_FUND_ID, TESTNET_AFTERMATH_PROTOCOL_FEE_VAULT_ID, TESTNET_AFTERMATH_REFERRAL_VAULT_ID, TESTNET_AFTERMATH_REGISTRY_ID, TESTNET_AFTERMATH_TREASURY_ID, TESTNET_CETUS_V3_PUBLISHED_AT, TESTNET_FLOWX_AMM_CONTAINER_ID, TRANSFER_ACCOUNT_CAP, TRANSFER_OR_DESTORY_COIN_FUNC, TURBOS, TURBOS_DEX, TURBOS_MODULE, TURBOS_VERSIONED, TWO, TransactionErrorCode, TypesErrorCode, U128, U64_MAX, U64_MAX_BN, UTILS_MODULE, VOLO, ZERO, buildInputCoin, calculateGasEfficiency, calculatePriceImpact, checkInvalidSuiAddress, compareCoins, compareGasMetrics, completionCoin, composeType, createTarget, dealWithFastRouterSwapParamsForMsafe, exportToCSV, exportToJSON, extractAddressFromType, extractGasMetrics, extractStructTagFromType, extractTimestampFromDowngradeUuid6, fixSuiObjectId, formatGasMetrics, generateDowngradeUuid6, generateSimpleDowngradeUuid6, getAggregatorServerErrorMessage, getAggregatorV2Extend2PublishedAt, getAggregatorV2ExtendPublishedAt, getAggregatorV2PublishedAt, getAllProviders, getDeepbookV3Config, getDefaultSuiInputType, getMergeSwapResult, getOrCreateAccountCap, getProvidersExcluding, getProvidersIncluding, getRouterResult, isSortedSymbols, isValidDowngradeUuid6, mintZeroCoin, normalizeCoinType, parseAftermathFeeType, parseTurbosPoolFeeType, patchFixSuiObjectId, printTransaction, processEndpoint, processFlattenRoutes, restituteMsafeFastRouterSwapParams };
|
|
9827
|
+
export { AFSUI, AFTERMATH, AFTERMATH_AMM, AFTERMATH_MODULE, AGGREGATOR, AGGREGATOR_V3_CONFIG, ALL_DEXES, ALPHAFI, AggregatorClient, AggregatorConfig, AggregatorError, AggregatorServerErrorCode, BLUEFIN, BLUEMOVE, BOLT, CETUS, CETUSDLMM, CETUS_DEX, CETUS_MODULE, CETUS_PUBLISHED_AT, CHECK_COINS_THRESHOLD_FUNC, CLIENT_CONFIG, CLOCK_ADDRESS, CoinInfoAddress, CoinStoreAddress, CoinUtils, ConfigErrorCode, DEEPBOOKV2, DEEPBOOKV3, DEEPBOOK_CLOB_V2_MODULE, DEEPBOOK_CUSTODIAN_V2_MODULE, DEEPBOOK_DEX, DEEPBOOK_MODULE, DEEPBOOK_PACKAGE_ID, DEEPBOOK_PUBLISHED_AT, DEEPBOOK_V3_DEEP_FEE_TYPES, DEFAULT_AGG_V2_ENDPOINT, DEFAULT_AGG_V3_ENDPOINT, DEFAULT_ENDPOINT, DEFAULT_GAS_BUDGET_FOR_MERGE, DEFAULT_GAS_BUDGET_FOR_SPLIT, DEFAULT_GAS_BUDGET_FOR_STAKE, DEFAULT_GAS_BUDGET_FOR_TRANSFER, DEFAULT_GAS_BUDGET_FOR_TRANSFER_SUI, DEFAULT_NFT_TRANSFER_GAS_FEE, Env, FERRACLMM, FERRADLMM, FLOWXV2, FLOWXV3, FLOWX_AMM, FLOWX_AMM_MODULE, FULLSAIL, FlashSwapA2BFunc, FlashSwapB2AFunc, FlashSwapFunc, FlashSwapWithPartnerA2BFunc, FlashSwapWithPartnerB2AFunc, FlashSwapWithPartnerFunc, GAS_SYMBOL, GAS_TYPE_ARG, GAS_TYPE_ARG_LONG, HAEDAL, HAEDALHMMV2, HAEDALPMM, HAWAL, INTEGRATE, JOIN_FUNC, KRIYA, KRIYAV3, KRIYA_DEX, KRIYA_MODULE, MAGMA, MAINNET_AFTERMATH_INSURANCE_FUND_ID, MAINNET_AFTERMATH_PROTOCOL_FEE_VAULT_ID, MAINNET_AFTERMATH_REFERRAL_VAULT_ID, MAINNET_AFTERMATH_REGISTRY_ID, MAINNET_AFTERMATH_TREASURY_ID, MAINNET_CETUS_V3_PUBLISHED_AT, MAINNET_FLOWX_AMM_CONTAINER_ID, METASTABLE, MOMENTUM, OBRIC, ONE, PACKAGE_NAMES, PAY_MODULE, POOL_MODULT, PUBLISHED_ADDRESSES, PYTH_CONFIG, REPAY_FLASH_SWAP_A2B_FUNC, REPAY_FLASH_SWAP_B2A_FUNC, REPAY_FLASH_SWAP_WITH_PARTNER_A2B_FUNC, REPAY_FLASH_SWAP_WITH_PARTNER_B2A_FUNC, RepayFalshSwapFunc, RepayFlashSwapWithPartnerFunc, SCALLOP, SEVENK, SPRINGSUI, STEAMM, STEAMM_OMM, STEAMM_OMM_V2, SUILEND, SUI_SYSTEM_STATE_OBJECT_ID, SWAP_A2B_FUNC, SWAP_B2A_FUNC, SuiZeroCoinFn, TEN_POW_NINE, TESTNET_AFTERMATH_INSURANCE_FUND_ID, TESTNET_AFTERMATH_PROTOCOL_FEE_VAULT_ID, TESTNET_AFTERMATH_REFERRAL_VAULT_ID, TESTNET_AFTERMATH_REGISTRY_ID, TESTNET_AFTERMATH_TREASURY_ID, TESTNET_CETUS_V3_PUBLISHED_AT, TESTNET_FLOWX_AMM_CONTAINER_ID, TRANSFER_ACCOUNT_CAP, TRANSFER_OR_DESTORY_COIN_FUNC, TURBOS, TURBOS_DEX, TURBOS_MODULE, TURBOS_VERSIONED, TWO, TransactionErrorCode, TypesErrorCode, U128, U64_MAX, U64_MAX_BN, UTILS_MODULE, VOLO, ZERO, buildInputCoin, calculateGasEfficiency, calculatePriceImpact, checkInvalidSuiAddress, compareCoins, compareGasMetrics, completionCoin, composeType, createTarget, dealWithFastRouterSwapParamsForMsafe, exportToCSV, exportToJSON, extractAddressFromType, extractGasMetrics, extractStructTagFromType, extractTimestampFromDowngradeUuid6, fixSuiObjectId, formatGasMetrics, generateDowngradeUuid6, generateSimpleDowngradeUuid6, getAggregatorServerErrorMessage, getAggregatorV2Extend2PublishedAt, getAggregatorV2ExtendPublishedAt, getAggregatorV2PublishedAt, getAllProviders, getDeepbookV3Config, getDefaultSuiInputType, getMergeSwapResult, getOrCreateAccountCap, getProvidersExcluding, getProvidersIncluding, getRouterResult, isSortedSymbols, isValidDowngradeUuid6, mintZeroCoin, normalizeCoinType, parseAftermathFeeType, parseTurbosPoolFeeType, patchFixSuiObjectId, printTransaction, processEndpoint, processFlattenRoutes, restituteMsafeFastRouterSwapParams };
|
package/package.json
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cetusprotocol/aggregator-sdk",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.5.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
8
8
|
"module": "dist/index.js",
|
|
9
|
+
"author": "Cetus",
|
|
9
10
|
"scripts": {
|
|
10
11
|
"build": "tsup --format cjs,esm --dts",
|
|
11
12
|
"dev": "tsup --watch",
|
|
@@ -22,7 +23,7 @@
|
|
|
22
23
|
"typescript": "^5.0.0"
|
|
23
24
|
},
|
|
24
25
|
"dependencies": {
|
|
25
|
-
"@mysten/sui": "^2.
|
|
26
|
+
"@mysten/sui": "^2.6.0",
|
|
26
27
|
"@pythnetwork/hermes-client": "^3.1.0",
|
|
27
28
|
"bip39": "^3.1.0",
|
|
28
29
|
"dotenv": "^16.4.5",
|