@7kprotocol/sdk-ts 3.4.2-beta.0 → 3.4.2-beta.2
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/cjs/features/swap/buildTxV2.js +1 -3
- package/lib/cjs/features/swap/config.js +18 -7
- package/lib/cjs/features/swap/getQuote.js +4 -2
- package/lib/cjs/libs/protocols/cetus_dlmm.js +48 -0
- package/lib/cjs/libs/protocols/ferra_dlmm.js +30 -0
- package/lib/cjs/libs/protocols/index.js +4 -0
- package/lib/cjs/types/features/swap/buildTx.d.ts.map +1 -1
- package/lib/cjs/types/features/swap/buildTxV2.d.ts.map +1 -1
- package/lib/cjs/types/features/swap/config.d.ts.map +1 -1
- package/lib/cjs/types/features/swap/getQuote.d.ts +3 -1
- package/lib/cjs/types/features/swap/getQuote.d.ts.map +1 -1
- package/lib/cjs/types/libs/protocols/cetus_dlmm.d.ts +9 -0
- package/lib/cjs/types/libs/protocols/cetus_dlmm.d.ts.map +1 -0
- package/lib/cjs/types/libs/protocols/ferra_dlmm.d.ts +9 -0
- package/lib/cjs/types/libs/protocols/ferra_dlmm.d.ts.map +1 -0
- package/lib/cjs/types/libs/protocols/index.d.ts +4 -0
- package/lib/cjs/types/libs/protocols/index.d.ts.map +1 -1
- package/lib/cjs/types/types/aggregator.d.ts +8 -1
- package/lib/cjs/types/types/aggregator.d.ts.map +1 -1
- package/lib/cjs/types/utils/sui.d.ts +1 -0
- package/lib/cjs/types/utils/sui.d.ts.map +1 -1
- package/lib/cjs/utils/sui.js +7 -0
- package/lib/esm/features/swap/buildTxV2.js +1 -3
- package/lib/esm/features/swap/config.js +18 -7
- package/lib/esm/features/swap/getQuote.js +4 -2
- package/lib/esm/libs/protocols/cetus_dlmm.js +44 -0
- package/lib/esm/libs/protocols/ferra_dlmm.js +26 -0
- package/lib/esm/libs/protocols/index.js +4 -0
- package/lib/esm/types/features/swap/buildTx.d.ts.map +1 -1
- package/lib/esm/types/features/swap/buildTxV2.d.ts.map +1 -1
- package/lib/esm/types/features/swap/config.d.ts.map +1 -1
- package/lib/esm/types/features/swap/getQuote.d.ts +3 -1
- package/lib/esm/types/features/swap/getQuote.d.ts.map +1 -1
- package/lib/esm/types/libs/protocols/cetus_dlmm.d.ts +9 -0
- package/lib/esm/types/libs/protocols/cetus_dlmm.d.ts.map +1 -0
- package/lib/esm/types/libs/protocols/ferra_dlmm.d.ts +9 -0
- package/lib/esm/types/libs/protocols/ferra_dlmm.d.ts.map +1 -0
- package/lib/esm/types/libs/protocols/index.d.ts +4 -0
- package/lib/esm/types/libs/protocols/index.d.ts.map +1 -1
- package/lib/esm/types/types/aggregator.d.ts +8 -1
- package/lib/esm/types/types/aggregator.d.ts.map +1 -1
- package/lib/esm/types/utils/sui.d.ts +1 -0
- package/lib/esm/types/utils/sui.d.ts.map +1 -1
- package/lib/esm/utils/sui.js +7 -0
- package/package.json +1 -1
|
@@ -52,7 +52,7 @@ const buildTxV2 = async ({ quoteResponse, accountAddress, slippage, commission:
|
|
|
52
52
|
const finalCoins = await (0, exports.optimize)(pythMap, config, routes, coinData, tx, accountAddress);
|
|
53
53
|
// Merge all final coins
|
|
54
54
|
if (finalCoins.length > 0) {
|
|
55
|
-
|
|
55
|
+
const mergeCoin = tx.add((0, buildTx_1.settle)(finalCoins, quoteResponse, Math.floor(+slippage * 10000), _commission));
|
|
56
56
|
if (!extendTx) {
|
|
57
57
|
tx.transferObjects([mergeCoin], tx.pure.address(accountAddress));
|
|
58
58
|
}
|
|
@@ -82,7 +82,6 @@ const optimize = async (pythMap, config, routes, coinData, tx, accountAddress) =
|
|
|
82
82
|
const finalCoins = [];
|
|
83
83
|
const coinTypeOut = routes[0][routes[0].length - 1].assetOut;
|
|
84
84
|
// Execute swaps in waves
|
|
85
|
-
let waveNumber = 0;
|
|
86
85
|
while (true) {
|
|
87
86
|
const readyHops = [];
|
|
88
87
|
routeStates.forEach((state) => {
|
|
@@ -179,7 +178,6 @@ const optimize = async (pythMap, config, routes, coinData, tx, accountAddress) =
|
|
|
179
178
|
}
|
|
180
179
|
// Wait for all swaps in this wave to complete
|
|
181
180
|
await Promise.all(wavePromises);
|
|
182
|
-
waveNumber++;
|
|
183
181
|
}
|
|
184
182
|
return finalCoins;
|
|
185
183
|
};
|
|
@@ -26,7 +26,7 @@ exports.DEFAULT_CONFIG = {
|
|
|
26
26
|
},
|
|
27
27
|
cetus: {
|
|
28
28
|
name: "Cetus",
|
|
29
|
-
package: "
|
|
29
|
+
package: "0xfbb32ac0fa89a3cb0c56c745b688c6d2a53ac8e43447119ad822763997ffb9c3",
|
|
30
30
|
globalConfig: "0xdaa46292632c3c4d8f31f23ea0f9b36a28ff3677e9684980e4438403a67a3d8f",
|
|
31
31
|
},
|
|
32
32
|
deepbook_v3: {
|
|
@@ -79,8 +79,8 @@ exports.DEFAULT_CONFIG = {
|
|
|
79
79
|
},
|
|
80
80
|
steamm: {
|
|
81
81
|
name: "Steamm",
|
|
82
|
-
package: "
|
|
83
|
-
script: "
|
|
82
|
+
package: "0x5ef2a1bca239764c8381ba26b758833060eadb8903682e4fb15e58c6406e2488",
|
|
83
|
+
script: "0x0755429cba577decc090009348987a89f4fb8397da27a3eaafc366794078af7d",
|
|
84
84
|
oracle: "0xe84b649199654d18c38e727212f5d8dacfc3cf78d60d0a7fc85fd589f280eb2b",
|
|
85
85
|
},
|
|
86
86
|
magma: {
|
|
@@ -90,16 +90,16 @@ exports.DEFAULT_CONFIG = {
|
|
|
90
90
|
},
|
|
91
91
|
haedal_pmm: {
|
|
92
92
|
name: "Haedal PMM",
|
|
93
|
-
package: "
|
|
93
|
+
package: "0x486622af8a7250a192e6ee97eed4f54e30343b764d9148bf1535b55f85155204",
|
|
94
94
|
},
|
|
95
95
|
momentum: {
|
|
96
96
|
name: "Momentum",
|
|
97
|
-
package: "
|
|
97
|
+
package: "0xcf60a40f45d46fc1e828871a647c1e25a0915dec860d2662eb10fdb382c3c1d1",
|
|
98
98
|
version: "0x2375a0b1ec12010aaea3b2545acfa2ad34cfbba03ce4b59f4c39e1e25eed1b2a",
|
|
99
99
|
},
|
|
100
100
|
bluefinx: {
|
|
101
101
|
name: "BluefinX",
|
|
102
|
-
package: "
|
|
102
|
+
package: "0x9633d611ea4b3a30751135cede2c7871980955473c1c7c883d43567e7e9b164e",
|
|
103
103
|
globalConfig: "0xc6b29a60c3924776bedc78df72c127ea52b86aeb655432979a38f13d742dedaa",
|
|
104
104
|
},
|
|
105
105
|
sevenk_v1: {
|
|
@@ -109,12 +109,23 @@ exports.DEFAULT_CONFIG = {
|
|
|
109
109
|
},
|
|
110
110
|
fullsail: {
|
|
111
111
|
name: "Fullsail",
|
|
112
|
-
package: "
|
|
112
|
+
package: "0xb3b98d4fda36acc2c2e66dba61f9149b341c38e97a532af802ebbb0c037b9d1f",
|
|
113
113
|
globalConfig: "0xe93baa80cb570b3a494cbf0621b2ba96bc993926d34dc92508c9446f9a05d615",
|
|
114
114
|
rewarderGlobalVault: "0xfb971d3a2fb98bde74e1c30ba15a3d8bef60a02789e59ae0b91660aeed3e64e1",
|
|
115
115
|
priceProvider: "0x854b2d2c0381bb656ec962f8b443eb082654384cf97885359d1956c7d76e33c9",
|
|
116
116
|
stats: "0x6822a33d1d971e040c32f7cc74507010d1fe786f7d06ab89135083ddb07d2dc2",
|
|
117
117
|
},
|
|
118
|
+
cetus_dlmm: {
|
|
119
|
+
name: "Cetus DLMM",
|
|
120
|
+
package: "0xa4c6f46bd6b456e6477bcddf0652e0d2d8fb4767e306533e6e885302ee28cfab",
|
|
121
|
+
globalConfig: "0xf31b605d117f959b9730e8c07b08b856cb05143c5e81d5751c90d2979e82f599",
|
|
122
|
+
version: "0x05370b2d656612dd5759cbe80463de301e3b94a921dfc72dd9daa2ecdeb2d0a8",
|
|
123
|
+
},
|
|
124
|
+
ferra_dlmm: {
|
|
125
|
+
name: "Ferra DLMM",
|
|
126
|
+
package: "0x5a5c1d10e4782dbbdec3eb8327ede04bd078b294b97cfdba447b11b846b383ac",
|
|
127
|
+
globalConfig: "0x5c9dacf5a678ea15b8569d65960330307e23d429289ca380e665b1aa175ebeca",
|
|
128
|
+
},
|
|
118
129
|
};
|
|
119
130
|
let config = exports.DEFAULT_CONFIG;
|
|
120
131
|
let configTs = 0;
|
|
@@ -29,6 +29,8 @@ exports.DEFAULT_SOURCES = [
|
|
|
29
29
|
"momentum",
|
|
30
30
|
"sevenk_v1",
|
|
31
31
|
"fullsail",
|
|
32
|
+
"cetus_dlmm",
|
|
33
|
+
"ferra_dlmm"
|
|
32
34
|
];
|
|
33
35
|
exports.ORACLE_BASED_SOURCES = new Set([
|
|
34
36
|
"obric",
|
|
@@ -37,7 +39,7 @@ exports.ORACLE_BASED_SOURCES = new Set([
|
|
|
37
39
|
"steamm_oracle_quoter",
|
|
38
40
|
"steamm_oracle_quoter_v2",
|
|
39
41
|
]);
|
|
40
|
-
async function getQuote({ tokenIn, tokenOut, amountIn, sources: _sources = exports.DEFAULT_SOURCES, commissionBps, targetPools, excludedPools, taker, isSponsored, }) {
|
|
42
|
+
async function getQuote({ tokenIn, tokenOut, amountIn, sources: _sources = exports.DEFAULT_SOURCES, commissionBps, targetPools, excludedPools, taker, isSponsored, api, }) {
|
|
41
43
|
let sources = _sources;
|
|
42
44
|
if (isSponsored) {
|
|
43
45
|
sources = _sources.filter((s) => !exports.ORACLE_BASED_SOURCES.has(s));
|
|
@@ -57,7 +59,7 @@ async function getQuote({ tokenIn, tokenOut, amountIn, sources: _sources = expor
|
|
|
57
59
|
if (taker) {
|
|
58
60
|
params.append("taker", taker);
|
|
59
61
|
}
|
|
60
|
-
const response = await (0, fetchClient_1.fetchClient)(`${apiEndpoints_1.API_ENDPOINTS.MAIN}/quote?${params}`);
|
|
62
|
+
const response = await (0, fetchClient_1.fetchClient)(`${api || apiEndpoints_1.API_ENDPOINTS.MAIN}/quote?${params}`);
|
|
61
63
|
if (!response.ok) {
|
|
62
64
|
let responseText;
|
|
63
65
|
try {
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CetusDLMMContract = void 0;
|
|
4
|
+
const utils_1 = require("@mysten/sui/utils");
|
|
5
|
+
const sui_1 = require("../../utils/sui");
|
|
6
|
+
const base_1 = require("./base");
|
|
7
|
+
class CetusDLMMContract extends base_1.BaseContract {
|
|
8
|
+
async swap(tx) {
|
|
9
|
+
const config = this.config.cetus_dlmm;
|
|
10
|
+
const [x, y, receipt] = tx.moveCall({
|
|
11
|
+
target: `${config.package}::pool::flash_swap`,
|
|
12
|
+
typeArguments: [this.swapInfo.coinX.type, this.swapInfo.coinY.type],
|
|
13
|
+
arguments: [
|
|
14
|
+
tx.object(this.swapInfo.poolId),
|
|
15
|
+
tx.pure.bool(this.swapInfo.swapXtoY),
|
|
16
|
+
tx.pure.bool(true), // exact in
|
|
17
|
+
this.getInputCoinValue(tx),
|
|
18
|
+
tx.object(config.globalConfig),
|
|
19
|
+
tx.object(config.version),
|
|
20
|
+
tx.object(utils_1.SUI_CLOCK_OBJECT_ID),
|
|
21
|
+
],
|
|
22
|
+
});
|
|
23
|
+
const debtX = this.swapInfo.swapXtoY
|
|
24
|
+
? sui_1.SuiUtils.coinIntoBalance(tx, this.swapInfo.coinX.type, this.inputCoinObject)
|
|
25
|
+
: sui_1.SuiUtils.zeroBalance(tx, this.swapInfo.coinX.type);
|
|
26
|
+
const debtY = this.swapInfo.swapXtoY
|
|
27
|
+
? sui_1.SuiUtils.zeroBalance(tx, this.swapInfo.coinY.type)
|
|
28
|
+
: sui_1.SuiUtils.coinIntoBalance(tx, this.swapInfo.coinY.type, this.inputCoinObject);
|
|
29
|
+
tx.moveCall({
|
|
30
|
+
target: `${config.package}::pool::repay_flash_swap`,
|
|
31
|
+
typeArguments: [this.swapInfo.coinX.type, this.swapInfo.coinY.type],
|
|
32
|
+
arguments: [
|
|
33
|
+
tx.object(this.swapInfo.poolId),
|
|
34
|
+
debtX,
|
|
35
|
+
debtY,
|
|
36
|
+
receipt,
|
|
37
|
+
tx.object(config.version),
|
|
38
|
+
],
|
|
39
|
+
});
|
|
40
|
+
const [destroyType, destroyCoin, outType, outBalance] = this.swapInfo
|
|
41
|
+
.swapXtoY
|
|
42
|
+
? [this.swapInfo.coinX.type, x, this.swapInfo.coinY.type, y]
|
|
43
|
+
: [this.swapInfo.coinY.type, y, this.swapInfo.coinX.type, x];
|
|
44
|
+
sui_1.SuiUtils.balanceDestroyZero(tx, destroyType, destroyCoin);
|
|
45
|
+
return sui_1.SuiUtils.coinFromBalance(tx, outType, outBalance);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
exports.CetusDLMMContract = CetusDLMMContract;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FerraDLMMContract = void 0;
|
|
4
|
+
const utils_1 = require("@mysten/sui/utils");
|
|
5
|
+
const sui_1 = require("../../utils/sui");
|
|
6
|
+
const base_1 = require("./base");
|
|
7
|
+
class FerraDLMMContract extends base_1.BaseContract {
|
|
8
|
+
async swap(tx) {
|
|
9
|
+
const config = this.config.ferra_dlmm;
|
|
10
|
+
const [xIn, yIn] = this.swapInfo.swapXtoY
|
|
11
|
+
? [this.inputCoinObject, sui_1.SuiUtils.zeroCoin(tx, this.swapInfo.coinY.type)]
|
|
12
|
+
: [sui_1.SuiUtils.zeroCoin(tx, this.swapInfo.coinX.type), this.inputCoinObject];
|
|
13
|
+
const [x, y] = tx.moveCall({
|
|
14
|
+
target: `${config.package}::lb_pair::swap`,
|
|
15
|
+
typeArguments: [this.swapInfo.coinX.type, this.swapInfo.coinY.type],
|
|
16
|
+
arguments: [
|
|
17
|
+
tx.object(config.globalConfig),
|
|
18
|
+
tx.object(this.swapInfo.poolId),
|
|
19
|
+
tx.pure.bool(this.swapInfo.swapXtoY),
|
|
20
|
+
tx.pure.u64(0), // min output amount
|
|
21
|
+
xIn,
|
|
22
|
+
yIn,
|
|
23
|
+
tx.object(utils_1.SUI_CLOCK_OBJECT_ID),
|
|
24
|
+
],
|
|
25
|
+
});
|
|
26
|
+
sui_1.SuiUtils.transferOrDestroyZeroCoin(tx, this.swapInfo.assetIn, this.swapInfo.swapXtoY ? x : y, this.currentAccount);
|
|
27
|
+
return this.swapInfo.swapXtoY ? y : x;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
exports.FerraDLMMContract = FerraDLMMContract;
|
|
@@ -6,7 +6,9 @@ const bluefin_1 = require("./bluefin");
|
|
|
6
6
|
const bluefinx_1 = require("./bluefinx");
|
|
7
7
|
const bluemove_1 = require("./bluemove");
|
|
8
8
|
const cetus_1 = require("./cetus");
|
|
9
|
+
const cetus_dlmm_1 = require("./cetus_dlmm");
|
|
9
10
|
const sponsored_1 = require("./deepbookV3/sponsored");
|
|
11
|
+
const ferra_dlmm_1 = require("./ferra_dlmm");
|
|
10
12
|
const flowx_1 = require("./flowx");
|
|
11
13
|
const flowxV3_1 = require("./flowxV3");
|
|
12
14
|
const fullsail_1 = require("./fullsail");
|
|
@@ -46,4 +48,6 @@ exports.ProtocolContract = {
|
|
|
46
48
|
bluefinx: bluefinx_1.BluefinXContract,
|
|
47
49
|
sevenk_v1: sevenk_1.SevenKV1,
|
|
48
50
|
fullsail: fullsail_1.FullsailContract,
|
|
51
|
+
cetus_dlmm: cetus_dlmm_1.CetusDLMMContract,
|
|
52
|
+
ferra_dlmm: ferra_dlmm_1.FerraDLMMContract,
|
|
49
53
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildTx.d.ts","sourceRoot":"","sources":["../../../../../src/features/swap/buildTx.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,EACX,yBAAyB,EAC1B,MAAM,0BAA0B,CAAC;AAOlC,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AAEjE,OAAO,EACL,aAAa,EACb,UAAU,EAEV,aAAa,EACb,SAAS,EACV,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAK/C,eAAO,MAAM,OAAO,GAAU,2GAQ3B,aAAa,KAAG,OAAO,CAAC,aAAa,
|
|
1
|
+
{"version":3,"file":"buildTx.d.ts","sourceRoot":"","sources":["../../../../../src/features/swap/buildTx.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,EACX,yBAAyB,EAC1B,MAAM,0BAA0B,CAAC;AAOlC,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AAEjE,OAAO,EACL,aAAa,EACb,UAAU,EAEV,aAAa,EACb,SAAS,EACV,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAK/C,eAAO,MAAM,OAAO,GAAU,2GAQ3B,aAAa,KAAG,OAAO,CAAC,aAAa,CA+FvC,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,WAAW,aAAa,EAAE,aAa3D,CAAC;AAEF,eAAO,MAAM,yBAAyB,GACpC,IAAI,WAAW,EACf,eAAe,aAAa,EAAE,oCAkB/B,CAAC;AAEF,eAAO,MAAM,cAAc,GACzB,QAAQ,SAAS,EAAE,EAAE,EACrB,cAAc,OAAO,SAWtB,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAC5B,cAAc,MAAM,EACpB,aAAa,MAAM,EACnB,eAAe,MAAM,EACrB,SAAQ,MAAU;;;;;CA8BnB,CAAC;AAEF,eAAO,MAAM,MAAM,GACjB,aAAa,yBAAyB,EAAE,EACxC,eAAe,aAAa,EAC5B,aAAa,MAAM,EACnB,aAAa,UAAU,MAEf,IAAI,WAAW,8BAiCxB,CAAC;AAEF,eAAO,MAAM,eAAe,GAC1B,IAAI,WAAW,EACf,gBAAgB,MAAM,EACtB,eAAe,aAAa,wBAsB7B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildTxV2.d.ts","sourceRoot":"","sources":["../../../../../src/features/swap/buildTxV2.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,EACX,yBAAyB,EAC1B,MAAM,0BAA0B,CAAC;AAIlC,OAAO,EACL,aAAa,EACb,MAAM,EAEN,SAAS,EACV,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAUhE;;;;;GAKG;AACH,eAAO,MAAM,SAAS,GAAU,2GAQ7B,aAAa,KAAG,OAAO,CAAC,aAAa,CAuFvC,CAAC;AAEF,eAAO,MAAM,QAAQ,GACnB,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,QAAQ,MAAM,EACd,QAAQ,SAAS,EAAE,EAAE,EACrB,UAAU,yBAAyB,EAAE,EACrC,IAAI,WAAW,EACf,gBAAgB,MAAM,
|
|
1
|
+
{"version":3,"file":"buildTxV2.d.ts","sourceRoot":"","sources":["../../../../../src/features/swap/buildTxV2.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,EACX,yBAAyB,EAC1B,MAAM,0BAA0B,CAAC;AAIlC,OAAO,EACL,aAAa,EACb,MAAM,EAEN,SAAS,EACV,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAUhE;;;;;GAKG;AACH,eAAO,MAAM,SAAS,GAAU,2GAQ7B,aAAa,KAAG,OAAO,CAAC,aAAa,CAuFvC,CAAC;AAEF,eAAO,MAAM,QAAQ,GACnB,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,QAAQ,MAAM,EACd,QAAQ,SAAS,EAAE,EAAE,EACrB,UAAU,yBAAyB,EAAE,EACrC,IAAI,WAAW,EACf,gBAAgB,MAAM,yCAuJvB,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,GAAU,iDAM7B,eAAe,uDAiDjB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../src/features/swap/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAEhD,eAAO,MAAM,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../src/features/swap/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAEhD,eAAO,MAAM,cAAc,EAAE,MA4K5B,CAAC;AAIF,wBAAsB,SAAS,oBAe9B"}
|
|
@@ -17,9 +17,11 @@ interface Params {
|
|
|
17
17
|
taker?: string;
|
|
18
18
|
/** If true, excludes all liquidity sources that depend on pyth price feeds - pyth client use tx.gas to pay the fee*/
|
|
19
19
|
isSponsored?: boolean;
|
|
20
|
+
/** Custom API endpoint */
|
|
21
|
+
api?: string;
|
|
20
22
|
}
|
|
21
23
|
export declare const DEFAULT_SOURCES: SourceDex[];
|
|
22
24
|
export declare const ORACLE_BASED_SOURCES: Set<SourceDex>;
|
|
23
|
-
export declare function getQuote({ tokenIn, tokenOut, amountIn, sources: _sources, commissionBps, targetPools, excludedPools, taker, isSponsored, }: Params): Promise<QuoteResponse>;
|
|
25
|
+
export declare function getQuote({ tokenIn, tokenOut, amountIn, sources: _sources, commissionBps, targetPools, excludedPools, taker, isSponsored, api, }: Params): Promise<QuoteResponse>;
|
|
24
26
|
export {};
|
|
25
27
|
//# sourceMappingURL=getQuote.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getQuote.d.ts","sourceRoot":"","sources":["../../../../../src/features/swap/getQuote.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,aAAa,EACb,SAAS,EACV,MAAM,wBAAwB,CAAC;AAEhC,UAAU,MAAM;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB;;;kEAG8D;IAC9D,OAAO,CAAC,EAAE,SAAS,EAAE,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iDAAiD;IACjD,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,qDAAqD;IACrD,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qHAAqH;IACrH,WAAW,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"getQuote.d.ts","sourceRoot":"","sources":["../../../../../src/features/swap/getQuote.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,aAAa,EACb,SAAS,EACV,MAAM,wBAAwB,CAAC;AAEhC,UAAU,MAAM;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB;;;kEAG8D;IAC9D,OAAO,CAAC,EAAE,SAAS,EAAE,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iDAAiD;IACjD,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,qDAAqD;IACrD,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qHAAqH;IACrH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,0BAA0B;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,eAAe,EAAE,SAAS,EAyBtC,CAAC;AAEF,eAAO,MAAM,oBAAoB,gBAM/B,CAAC;AAEH,wBAAsB,QAAQ,CAAC,EAC7B,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,OAAO,EAAE,QAA0B,EACnC,aAAa,EACb,WAAW,EACX,aAAa,EACb,KAAK,EACL,WAAW,EACX,GAAG,GACJ,EAAE,MAAM,0BA2CR"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Transaction } from "@mysten/sui/transactions";
|
|
2
|
+
import { BaseContract } from "./base";
|
|
3
|
+
export declare class CetusDLMMContract extends BaseContract {
|
|
4
|
+
swap(tx: Transaction): Promise<{
|
|
5
|
+
$kind: "NestedResult";
|
|
6
|
+
NestedResult: [number, number];
|
|
7
|
+
}>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=cetus_dlmm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cetus_dlmm.d.ts","sourceRoot":"","sources":["../../../../../src/libs/protocols/cetus_dlmm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAGvD,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,qBAAa,iBAAkB,SAAQ,YAAY;IAC3C,IAAI,CAAC,EAAE,EAAE,WAAW;;;;CAiD3B"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Transaction } from "@mysten/sui/transactions";
|
|
2
|
+
import { BaseContract } from "./base";
|
|
3
|
+
export declare class FerraDLMMContract extends BaseContract {
|
|
4
|
+
swap(tx: Transaction): Promise<{
|
|
5
|
+
$kind: "NestedResult";
|
|
6
|
+
NestedResult: [number, number];
|
|
7
|
+
}>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=ferra_dlmm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ferra_dlmm.d.ts","sourceRoot":"","sources":["../../../../../src/libs/protocols/ferra_dlmm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAGvD,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,qBAAa,iBAAkB,SAAQ,YAAY;IAC3C,IAAI,CAAC,EAAE,EAAE,WAAW;;;;CA2B3B"}
|
|
@@ -3,7 +3,9 @@ import { BluefinContract } from "./bluefin";
|
|
|
3
3
|
import { BluefinXContract } from "./bluefinx";
|
|
4
4
|
import { BluemoveContract } from "./bluemove";
|
|
5
5
|
import { CetusContract } from "./cetus";
|
|
6
|
+
import { CetusDLMMContract } from "./cetus_dlmm";
|
|
6
7
|
import { SponsoredDeepBookV3Contract } from "./deepbookV3/sponsored";
|
|
8
|
+
import { FerraDLMMContract } from "./ferra_dlmm";
|
|
7
9
|
import { FlowXContract } from "./flowx";
|
|
8
10
|
import { FlowxV3Contract } from "./flowxV3";
|
|
9
11
|
import { FullsailContract } from "./fullsail";
|
|
@@ -43,5 +45,7 @@ export declare const ProtocolContract: {
|
|
|
43
45
|
bluefinx: typeof BluefinXContract;
|
|
44
46
|
sevenk_v1: typeof SevenKV1;
|
|
45
47
|
fullsail: typeof FullsailContract;
|
|
48
|
+
cetus_dlmm: typeof CetusDLMMContract;
|
|
49
|
+
ferra_dlmm: typeof FerraDLMMContract;
|
|
46
50
|
};
|
|
47
51
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/libs/protocols/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE1C,eAAO,MAAM,gBAAgB
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/libs/protocols/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE1C,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;CA0B5B,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Transaction, TransactionObjectArgument } from "@mysten/sui/transactions";
|
|
2
2
|
import { BluefinXTx } from "../libs/protocols/bluefinx/types";
|
|
3
3
|
export { BluefinXTx };
|
|
4
|
-
export type SourceDex = "suiswap" | "turbos" | "cetus" | "bluemove" | "kriya" | "kriya_v3" | "aftermath" | "deepbook_v3" | "flowx" | "flowx_v3" | "bluefin" | "bluefinx" | "springsui" | "obric" | "stsui" | "steamm" | "steamm_oracle_quoter" | "steamm_oracle_quoter_v2" | "magma" | "haedal_pmm" | "momentum" | "sevenk_v1" | "fullsail";
|
|
4
|
+
export type SourceDex = "suiswap" | "turbos" | "cetus" | "bluemove" | "kriya" | "kriya_v3" | "aftermath" | "deepbook_v3" | "flowx" | "flowx_v3" | "bluefin" | "bluefinx" | "springsui" | "obric" | "stsui" | "steamm" | "steamm_oracle_quoter" | "steamm_oracle_quoter_v2" | "magma" | "haedal_pmm" | "momentum" | "sevenk_v1" | "fullsail" | "cetus_dlmm" | "ferra_dlmm";
|
|
5
5
|
export type SorSwap = {
|
|
6
6
|
poolId: string;
|
|
7
7
|
assetInIndex: number;
|
|
@@ -141,6 +141,13 @@ export interface Config {
|
|
|
141
141
|
priceProvider: string;
|
|
142
142
|
stats: string;
|
|
143
143
|
};
|
|
144
|
+
cetus_dlmm: DexConfig & {
|
|
145
|
+
globalConfig: string;
|
|
146
|
+
version: string;
|
|
147
|
+
};
|
|
148
|
+
ferra_dlmm: DexConfig & {
|
|
149
|
+
globalConfig: string;
|
|
150
|
+
};
|
|
144
151
|
}
|
|
145
152
|
export type ExtraOracle = {
|
|
146
153
|
Pyth?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aggregator.d.ts","sourceRoot":"","sources":["../../../../src/types/aggregator.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,yBAAyB,EAC1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,CAAC;AAEtB,MAAM,MAAM,SAAS,GACjB,SAAS,GACT,QAAQ,GACR,OAAO,GACP,UAAU,GACV,OAAO,GACP,UAAU,GACV,WAAW,GACX,aAAa,GACb,OAAO,GACP,UAAU,GACV,SAAS,GACT,UAAU,GACV,WAAW,GACX,OAAO,GACP,OAAO,GACP,QAAQ,GACR,sBAAsB,GACtB,yBAAyB,GACzB,OAAO,GACP,YAAY,GACZ,UAAU,GACV,WAAW,GACX,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"aggregator.d.ts","sourceRoot":"","sources":["../../../../src/types/aggregator.ts"],"names":[],"mappings":"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"}
|
|
@@ -49,6 +49,7 @@ export declare const SuiUtils: {
|
|
|
49
49
|
$kind: "NestedResult";
|
|
50
50
|
NestedResult: [number, number];
|
|
51
51
|
};
|
|
52
|
+
balanceDestroyZero(tx: Transaction, coinType: string, balance: TransactionArgument): void;
|
|
52
53
|
collectDust(tx: Transaction, coinType: string, coin: TransactionArgument): void;
|
|
53
54
|
transferOrDestroyZeroCoin(tx: Transaction, coinType: string, coin: TransactionArgument, address: string): void;
|
|
54
55
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sui.d.ts","sourceRoot":"","sources":["../../../../src/utils/sui.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAEV,sBAAsB,EACvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAM5E,KAAK,QAAQ,CAAC,CAAC,IAAI;IACjB,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,KAAK,SAAS,GAAG;IACf,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,CAAC;AAEF,KAAK,cAAc,GAAG,KAAK,GAAG,SAAS,CAAC;AAExC,eAAO,MAAM,QAAQ;uBAET,MAAM,GAAG,mBAAmB,OAC/B,WAAW,GACf,mBAAmB;4BAMP,KAAK,CAAC,MAAM,GAAG,mBAAmB,CAAC,OAC3C,WAAW,GACf,mBAAmB,GAAG,SAAS;2BAsBtB,MAAM,cACJ,MAAM,GAAG,mBAAmB,OACnC,WAAW,GACf,mBAAmB;mCAYV,MAAM,SACT;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,UACtC,MAAM,OACT,WAAW;;;;gCAoBgB,MAAM,iBAAiB,MAAM;qCAoCtD,UAAU,EAAE,YACT,MAAM,OACX,WAAW;uCAsBuB;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;sCA8BhE,MAAM,SACP;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE;iCA6BvC,MAAM,SACN,sBAAsB,mBACb,cAAc,GAC7B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;4BAyBD,MAAM;oBAQd,WAAW,YAAY,MAAM;;;;iBAQhC,WAAW,YAAY,MAAM;;;;wBASpC,WAAW,YACL,MAAM,cACJ,mBAAmB;;;;wBAU3B,WAAW,YACL,MAAM,WACP,mBAAmB;;;;
|
|
1
|
+
{"version":3,"file":"sui.d.ts","sourceRoot":"","sources":["../../../../src/utils/sui.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAEV,sBAAsB,EACvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAM5E,KAAK,QAAQ,CAAC,CAAC,IAAI;IACjB,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,KAAK,SAAS,GAAG;IACf,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,CAAC;AAEF,KAAK,cAAc,GAAG,KAAK,GAAG,SAAS,CAAC;AAExC,eAAO,MAAM,QAAQ;uBAET,MAAM,GAAG,mBAAmB,OAC/B,WAAW,GACf,mBAAmB;4BAMP,KAAK,CAAC,MAAM,GAAG,mBAAmB,CAAC,OAC3C,WAAW,GACf,mBAAmB,GAAG,SAAS;2BAsBtB,MAAM,cACJ,MAAM,GAAG,mBAAmB,OACnC,WAAW,GACf,mBAAmB;mCAYV,MAAM,SACT;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,UACtC,MAAM,OACT,WAAW;;;;gCAoBgB,MAAM,iBAAiB,MAAM;qCAoCtD,UAAU,EAAE,YACT,MAAM,OACX,WAAW;uCAsBuB;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;sCA8BhE,MAAM,SACP;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE;iCA6BvC,MAAM,SACN,sBAAsB,mBACb,cAAc,GAC7B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;4BAyBD,MAAM;oBAQd,WAAW,YAAY,MAAM;;;;iBAQhC,WAAW,YAAY,MAAM;;;;wBASpC,WAAW,YACL,MAAM,cACJ,mBAAmB;;;;wBAU3B,WAAW,YACL,MAAM,WACP,mBAAmB;;;;2BASP,WAAW,YAAY,MAAM,WAAW,mBAAmB;oBAQlE,WAAW,YAAY,MAAM,QAAQ,mBAAmB;kCASlE,WAAW,YACL,MAAM,QACV,mBAAmB,WAChB,MAAM;CAQlB,CAAC"}
|
package/lib/cjs/utils/sui.js
CHANGED
|
@@ -195,6 +195,13 @@ exports.SuiUtils = {
|
|
|
195
195
|
arguments: [balance],
|
|
196
196
|
})[0];
|
|
197
197
|
},
|
|
198
|
+
balanceDestroyZero(tx, coinType, balance) {
|
|
199
|
+
tx.moveCall({
|
|
200
|
+
target: `0x2::balance::destroy_zero`,
|
|
201
|
+
typeArguments: [coinType],
|
|
202
|
+
arguments: [balance],
|
|
203
|
+
});
|
|
204
|
+
},
|
|
198
205
|
collectDust(tx, coinType, coin) {
|
|
199
206
|
tx.moveCall({
|
|
200
207
|
target: `${_7k_1._7K_PACKAGE_ID}::vault::collect_dust`,
|
|
@@ -49,7 +49,7 @@ export const buildTxV2 = async ({ quoteResponse, accountAddress, slippage, commi
|
|
|
49
49
|
const finalCoins = await optimize(pythMap, config, routes, coinData, tx, accountAddress);
|
|
50
50
|
// Merge all final coins
|
|
51
51
|
if (finalCoins.length > 0) {
|
|
52
|
-
|
|
52
|
+
const mergeCoin = tx.add(settle(finalCoins, quoteResponse, Math.floor(+slippage * 10000), _commission));
|
|
53
53
|
if (!extendTx) {
|
|
54
54
|
tx.transferObjects([mergeCoin], tx.pure.address(accountAddress));
|
|
55
55
|
}
|
|
@@ -78,7 +78,6 @@ export const optimize = async (pythMap, config, routes, coinData, tx, accountAdd
|
|
|
78
78
|
const finalCoins = [];
|
|
79
79
|
const coinTypeOut = routes[0][routes[0].length - 1].assetOut;
|
|
80
80
|
// Execute swaps in waves
|
|
81
|
-
let waveNumber = 0;
|
|
82
81
|
while (true) {
|
|
83
82
|
const readyHops = [];
|
|
84
83
|
routeStates.forEach((state) => {
|
|
@@ -175,7 +174,6 @@ export const optimize = async (pythMap, config, routes, coinData, tx, accountAdd
|
|
|
175
174
|
}
|
|
176
175
|
// Wait for all swaps in this wave to complete
|
|
177
176
|
await Promise.all(wavePromises);
|
|
178
|
-
waveNumber++;
|
|
179
177
|
}
|
|
180
178
|
return finalCoins;
|
|
181
179
|
};
|
|
@@ -22,7 +22,7 @@ export const DEFAULT_CONFIG = {
|
|
|
22
22
|
},
|
|
23
23
|
cetus: {
|
|
24
24
|
name: "Cetus",
|
|
25
|
-
package: "
|
|
25
|
+
package: "0xfbb32ac0fa89a3cb0c56c745b688c6d2a53ac8e43447119ad822763997ffb9c3",
|
|
26
26
|
globalConfig: "0xdaa46292632c3c4d8f31f23ea0f9b36a28ff3677e9684980e4438403a67a3d8f",
|
|
27
27
|
},
|
|
28
28
|
deepbook_v3: {
|
|
@@ -75,8 +75,8 @@ export const DEFAULT_CONFIG = {
|
|
|
75
75
|
},
|
|
76
76
|
steamm: {
|
|
77
77
|
name: "Steamm",
|
|
78
|
-
package: "
|
|
79
|
-
script: "
|
|
78
|
+
package: "0x5ef2a1bca239764c8381ba26b758833060eadb8903682e4fb15e58c6406e2488",
|
|
79
|
+
script: "0x0755429cba577decc090009348987a89f4fb8397da27a3eaafc366794078af7d",
|
|
80
80
|
oracle: "0xe84b649199654d18c38e727212f5d8dacfc3cf78d60d0a7fc85fd589f280eb2b",
|
|
81
81
|
},
|
|
82
82
|
magma: {
|
|
@@ -86,16 +86,16 @@ export const DEFAULT_CONFIG = {
|
|
|
86
86
|
},
|
|
87
87
|
haedal_pmm: {
|
|
88
88
|
name: "Haedal PMM",
|
|
89
|
-
package: "
|
|
89
|
+
package: "0x486622af8a7250a192e6ee97eed4f54e30343b764d9148bf1535b55f85155204",
|
|
90
90
|
},
|
|
91
91
|
momentum: {
|
|
92
92
|
name: "Momentum",
|
|
93
|
-
package: "
|
|
93
|
+
package: "0xcf60a40f45d46fc1e828871a647c1e25a0915dec860d2662eb10fdb382c3c1d1",
|
|
94
94
|
version: "0x2375a0b1ec12010aaea3b2545acfa2ad34cfbba03ce4b59f4c39e1e25eed1b2a",
|
|
95
95
|
},
|
|
96
96
|
bluefinx: {
|
|
97
97
|
name: "BluefinX",
|
|
98
|
-
package: "
|
|
98
|
+
package: "0x9633d611ea4b3a30751135cede2c7871980955473c1c7c883d43567e7e9b164e",
|
|
99
99
|
globalConfig: "0xc6b29a60c3924776bedc78df72c127ea52b86aeb655432979a38f13d742dedaa",
|
|
100
100
|
},
|
|
101
101
|
sevenk_v1: {
|
|
@@ -105,12 +105,23 @@ export const DEFAULT_CONFIG = {
|
|
|
105
105
|
},
|
|
106
106
|
fullsail: {
|
|
107
107
|
name: "Fullsail",
|
|
108
|
-
package: "
|
|
108
|
+
package: "0xb3b98d4fda36acc2c2e66dba61f9149b341c38e97a532af802ebbb0c037b9d1f",
|
|
109
109
|
globalConfig: "0xe93baa80cb570b3a494cbf0621b2ba96bc993926d34dc92508c9446f9a05d615",
|
|
110
110
|
rewarderGlobalVault: "0xfb971d3a2fb98bde74e1c30ba15a3d8bef60a02789e59ae0b91660aeed3e64e1",
|
|
111
111
|
priceProvider: "0x854b2d2c0381bb656ec962f8b443eb082654384cf97885359d1956c7d76e33c9",
|
|
112
112
|
stats: "0x6822a33d1d971e040c32f7cc74507010d1fe786f7d06ab89135083ddb07d2dc2",
|
|
113
113
|
},
|
|
114
|
+
cetus_dlmm: {
|
|
115
|
+
name: "Cetus DLMM",
|
|
116
|
+
package: "0xa4c6f46bd6b456e6477bcddf0652e0d2d8fb4767e306533e6e885302ee28cfab",
|
|
117
|
+
globalConfig: "0xf31b605d117f959b9730e8c07b08b856cb05143c5e81d5751c90d2979e82f599",
|
|
118
|
+
version: "0x05370b2d656612dd5759cbe80463de301e3b94a921dfc72dd9daa2ecdeb2d0a8",
|
|
119
|
+
},
|
|
120
|
+
ferra_dlmm: {
|
|
121
|
+
name: "Ferra DLMM",
|
|
122
|
+
package: "0x5a5c1d10e4782dbbdec3eb8327ede04bd078b294b97cfdba447b11b846b383ac",
|
|
123
|
+
globalConfig: "0x5c9dacf5a678ea15b8569d65960330307e23d429289ca380e665b1aa175ebeca",
|
|
124
|
+
},
|
|
114
125
|
};
|
|
115
126
|
let config = DEFAULT_CONFIG;
|
|
116
127
|
let configTs = 0;
|
|
@@ -25,6 +25,8 @@ export const DEFAULT_SOURCES = [
|
|
|
25
25
|
"momentum",
|
|
26
26
|
"sevenk_v1",
|
|
27
27
|
"fullsail",
|
|
28
|
+
"cetus_dlmm",
|
|
29
|
+
"ferra_dlmm"
|
|
28
30
|
];
|
|
29
31
|
export const ORACLE_BASED_SOURCES = new Set([
|
|
30
32
|
"obric",
|
|
@@ -33,7 +35,7 @@ export const ORACLE_BASED_SOURCES = new Set([
|
|
|
33
35
|
"steamm_oracle_quoter",
|
|
34
36
|
"steamm_oracle_quoter_v2",
|
|
35
37
|
]);
|
|
36
|
-
export async function getQuote({ tokenIn, tokenOut, amountIn, sources: _sources = DEFAULT_SOURCES, commissionBps, targetPools, excludedPools, taker, isSponsored, }) {
|
|
38
|
+
export async function getQuote({ tokenIn, tokenOut, amountIn, sources: _sources = DEFAULT_SOURCES, commissionBps, targetPools, excludedPools, taker, isSponsored, api, }) {
|
|
37
39
|
let sources = _sources;
|
|
38
40
|
if (isSponsored) {
|
|
39
41
|
sources = _sources.filter((s) => !ORACLE_BASED_SOURCES.has(s));
|
|
@@ -53,7 +55,7 @@ export async function getQuote({ tokenIn, tokenOut, amountIn, sources: _sources
|
|
|
53
55
|
if (taker) {
|
|
54
56
|
params.append("taker", taker);
|
|
55
57
|
}
|
|
56
|
-
const response = await fetchClient(`${API_ENDPOINTS.MAIN}/quote?${params}`);
|
|
58
|
+
const response = await fetchClient(`${api || API_ENDPOINTS.MAIN}/quote?${params}`);
|
|
57
59
|
if (!response.ok) {
|
|
58
60
|
let responseText;
|
|
59
61
|
try {
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { SUI_CLOCK_OBJECT_ID } from "@mysten/sui/utils";
|
|
2
|
+
import { SuiUtils } from "../../utils/sui";
|
|
3
|
+
import { BaseContract } from "./base";
|
|
4
|
+
export class CetusDLMMContract extends BaseContract {
|
|
5
|
+
async swap(tx) {
|
|
6
|
+
const config = this.config.cetus_dlmm;
|
|
7
|
+
const [x, y, receipt] = tx.moveCall({
|
|
8
|
+
target: `${config.package}::pool::flash_swap`,
|
|
9
|
+
typeArguments: [this.swapInfo.coinX.type, this.swapInfo.coinY.type],
|
|
10
|
+
arguments: [
|
|
11
|
+
tx.object(this.swapInfo.poolId),
|
|
12
|
+
tx.pure.bool(this.swapInfo.swapXtoY),
|
|
13
|
+
tx.pure.bool(true), // exact in
|
|
14
|
+
this.getInputCoinValue(tx),
|
|
15
|
+
tx.object(config.globalConfig),
|
|
16
|
+
tx.object(config.version),
|
|
17
|
+
tx.object(SUI_CLOCK_OBJECT_ID),
|
|
18
|
+
],
|
|
19
|
+
});
|
|
20
|
+
const debtX = this.swapInfo.swapXtoY
|
|
21
|
+
? SuiUtils.coinIntoBalance(tx, this.swapInfo.coinX.type, this.inputCoinObject)
|
|
22
|
+
: SuiUtils.zeroBalance(tx, this.swapInfo.coinX.type);
|
|
23
|
+
const debtY = this.swapInfo.swapXtoY
|
|
24
|
+
? SuiUtils.zeroBalance(tx, this.swapInfo.coinY.type)
|
|
25
|
+
: SuiUtils.coinIntoBalance(tx, this.swapInfo.coinY.type, this.inputCoinObject);
|
|
26
|
+
tx.moveCall({
|
|
27
|
+
target: `${config.package}::pool::repay_flash_swap`,
|
|
28
|
+
typeArguments: [this.swapInfo.coinX.type, this.swapInfo.coinY.type],
|
|
29
|
+
arguments: [
|
|
30
|
+
tx.object(this.swapInfo.poolId),
|
|
31
|
+
debtX,
|
|
32
|
+
debtY,
|
|
33
|
+
receipt,
|
|
34
|
+
tx.object(config.version),
|
|
35
|
+
],
|
|
36
|
+
});
|
|
37
|
+
const [destroyType, destroyCoin, outType, outBalance] = this.swapInfo
|
|
38
|
+
.swapXtoY
|
|
39
|
+
? [this.swapInfo.coinX.type, x, this.swapInfo.coinY.type, y]
|
|
40
|
+
: [this.swapInfo.coinY.type, y, this.swapInfo.coinX.type, x];
|
|
41
|
+
SuiUtils.balanceDestroyZero(tx, destroyType, destroyCoin);
|
|
42
|
+
return SuiUtils.coinFromBalance(tx, outType, outBalance);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { SUI_CLOCK_OBJECT_ID } from "@mysten/sui/utils";
|
|
2
|
+
import { SuiUtils } from "../../utils/sui";
|
|
3
|
+
import { BaseContract } from "./base";
|
|
4
|
+
export class FerraDLMMContract extends BaseContract {
|
|
5
|
+
async swap(tx) {
|
|
6
|
+
const config = this.config.ferra_dlmm;
|
|
7
|
+
const [xIn, yIn] = this.swapInfo.swapXtoY
|
|
8
|
+
? [this.inputCoinObject, SuiUtils.zeroCoin(tx, this.swapInfo.coinY.type)]
|
|
9
|
+
: [SuiUtils.zeroCoin(tx, this.swapInfo.coinX.type), this.inputCoinObject];
|
|
10
|
+
const [x, y] = tx.moveCall({
|
|
11
|
+
target: `${config.package}::lb_pair::swap`,
|
|
12
|
+
typeArguments: [this.swapInfo.coinX.type, this.swapInfo.coinY.type],
|
|
13
|
+
arguments: [
|
|
14
|
+
tx.object(config.globalConfig),
|
|
15
|
+
tx.object(this.swapInfo.poolId),
|
|
16
|
+
tx.pure.bool(this.swapInfo.swapXtoY),
|
|
17
|
+
tx.pure.u64(0), // min output amount
|
|
18
|
+
xIn,
|
|
19
|
+
yIn,
|
|
20
|
+
tx.object(SUI_CLOCK_OBJECT_ID),
|
|
21
|
+
],
|
|
22
|
+
});
|
|
23
|
+
SuiUtils.transferOrDestroyZeroCoin(tx, this.swapInfo.assetIn, this.swapInfo.swapXtoY ? x : y, this.currentAccount);
|
|
24
|
+
return this.swapInfo.swapXtoY ? y : x;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
@@ -3,7 +3,9 @@ import { BluefinContract } from "./bluefin";
|
|
|
3
3
|
import { BluefinXContract } from "./bluefinx";
|
|
4
4
|
import { BluemoveContract } from "./bluemove";
|
|
5
5
|
import { CetusContract } from "./cetus";
|
|
6
|
+
import { CetusDLMMContract } from "./cetus_dlmm";
|
|
6
7
|
import { SponsoredDeepBookV3Contract } from "./deepbookV3/sponsored";
|
|
8
|
+
import { FerraDLMMContract } from "./ferra_dlmm";
|
|
7
9
|
import { FlowXContract } from "./flowx";
|
|
8
10
|
import { FlowxV3Contract } from "./flowxV3";
|
|
9
11
|
import { FullsailContract } from "./fullsail";
|
|
@@ -43,4 +45,6 @@ export const ProtocolContract = {
|
|
|
43
45
|
bluefinx: BluefinXContract,
|
|
44
46
|
sevenk_v1: SevenKV1,
|
|
45
47
|
fullsail: FullsailContract,
|
|
48
|
+
cetus_dlmm: CetusDLMMContract,
|
|
49
|
+
ferra_dlmm: FerraDLMMContract,
|
|
46
50
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildTx.d.ts","sourceRoot":"","sources":["../../../../../src/features/swap/buildTx.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,EACX,yBAAyB,EAC1B,MAAM,0BAA0B,CAAC;AAOlC,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AAEjE,OAAO,EACL,aAAa,EACb,UAAU,EAEV,aAAa,EACb,SAAS,EACV,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAK/C,eAAO,MAAM,OAAO,GAAU,2GAQ3B,aAAa,KAAG,OAAO,CAAC,aAAa,
|
|
1
|
+
{"version":3,"file":"buildTx.d.ts","sourceRoot":"","sources":["../../../../../src/features/swap/buildTx.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,EACX,yBAAyB,EAC1B,MAAM,0BAA0B,CAAC;AAOlC,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AAEjE,OAAO,EACL,aAAa,EACb,UAAU,EAEV,aAAa,EACb,SAAS,EACV,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAK/C,eAAO,MAAM,OAAO,GAAU,2GAQ3B,aAAa,KAAG,OAAO,CAAC,aAAa,CA+FvC,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,WAAW,aAAa,EAAE,aAa3D,CAAC;AAEF,eAAO,MAAM,yBAAyB,GACpC,IAAI,WAAW,EACf,eAAe,aAAa,EAAE,oCAkB/B,CAAC;AAEF,eAAO,MAAM,cAAc,GACzB,QAAQ,SAAS,EAAE,EAAE,EACrB,cAAc,OAAO,SAWtB,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAC5B,cAAc,MAAM,EACpB,aAAa,MAAM,EACnB,eAAe,MAAM,EACrB,SAAQ,MAAU;;;;;CA8BnB,CAAC;AAEF,eAAO,MAAM,MAAM,GACjB,aAAa,yBAAyB,EAAE,EACxC,eAAe,aAAa,EAC5B,aAAa,MAAM,EACnB,aAAa,UAAU,MAEf,IAAI,WAAW,8BAiCxB,CAAC;AAEF,eAAO,MAAM,eAAe,GAC1B,IAAI,WAAW,EACf,gBAAgB,MAAM,EACtB,eAAe,aAAa,wBAsB7B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildTxV2.d.ts","sourceRoot":"","sources":["../../../../../src/features/swap/buildTxV2.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,EACX,yBAAyB,EAC1B,MAAM,0BAA0B,CAAC;AAIlC,OAAO,EACL,aAAa,EACb,MAAM,EAEN,SAAS,EACV,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAUhE;;;;;GAKG;AACH,eAAO,MAAM,SAAS,GAAU,2GAQ7B,aAAa,KAAG,OAAO,CAAC,aAAa,CAuFvC,CAAC;AAEF,eAAO,MAAM,QAAQ,GACnB,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,QAAQ,MAAM,EACd,QAAQ,SAAS,EAAE,EAAE,EACrB,UAAU,yBAAyB,EAAE,EACrC,IAAI,WAAW,EACf,gBAAgB,MAAM,
|
|
1
|
+
{"version":3,"file":"buildTxV2.d.ts","sourceRoot":"","sources":["../../../../../src/features/swap/buildTxV2.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,EACX,yBAAyB,EAC1B,MAAM,0BAA0B,CAAC;AAIlC,OAAO,EACL,aAAa,EACb,MAAM,EAEN,SAAS,EACV,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAUhE;;;;;GAKG;AACH,eAAO,MAAM,SAAS,GAAU,2GAQ7B,aAAa,KAAG,OAAO,CAAC,aAAa,CAuFvC,CAAC;AAEF,eAAO,MAAM,QAAQ,GACnB,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,QAAQ,MAAM,EACd,QAAQ,SAAS,EAAE,EAAE,EACrB,UAAU,yBAAyB,EAAE,EACrC,IAAI,WAAW,EACf,gBAAgB,MAAM,yCAuJvB,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,GAAU,iDAM7B,eAAe,uDAiDjB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../src/features/swap/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAEhD,eAAO,MAAM,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../src/features/swap/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAEhD,eAAO,MAAM,cAAc,EAAE,MA4K5B,CAAC;AAIF,wBAAsB,SAAS,oBAe9B"}
|
|
@@ -17,9 +17,11 @@ interface Params {
|
|
|
17
17
|
taker?: string;
|
|
18
18
|
/** If true, excludes all liquidity sources that depend on pyth price feeds - pyth client use tx.gas to pay the fee*/
|
|
19
19
|
isSponsored?: boolean;
|
|
20
|
+
/** Custom API endpoint */
|
|
21
|
+
api?: string;
|
|
20
22
|
}
|
|
21
23
|
export declare const DEFAULT_SOURCES: SourceDex[];
|
|
22
24
|
export declare const ORACLE_BASED_SOURCES: Set<SourceDex>;
|
|
23
|
-
export declare function getQuote({ tokenIn, tokenOut, amountIn, sources: _sources, commissionBps, targetPools, excludedPools, taker, isSponsored, }: Params): Promise<QuoteResponse>;
|
|
25
|
+
export declare function getQuote({ tokenIn, tokenOut, amountIn, sources: _sources, commissionBps, targetPools, excludedPools, taker, isSponsored, api, }: Params): Promise<QuoteResponse>;
|
|
24
26
|
export {};
|
|
25
27
|
//# sourceMappingURL=getQuote.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getQuote.d.ts","sourceRoot":"","sources":["../../../../../src/features/swap/getQuote.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,aAAa,EACb,SAAS,EACV,MAAM,wBAAwB,CAAC;AAEhC,UAAU,MAAM;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB;;;kEAG8D;IAC9D,OAAO,CAAC,EAAE,SAAS,EAAE,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iDAAiD;IACjD,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,qDAAqD;IACrD,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qHAAqH;IACrH,WAAW,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"getQuote.d.ts","sourceRoot":"","sources":["../../../../../src/features/swap/getQuote.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,aAAa,EACb,SAAS,EACV,MAAM,wBAAwB,CAAC;AAEhC,UAAU,MAAM;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB;;;kEAG8D;IAC9D,OAAO,CAAC,EAAE,SAAS,EAAE,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iDAAiD;IACjD,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,qDAAqD;IACrD,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qHAAqH;IACrH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,0BAA0B;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,eAAe,EAAE,SAAS,EAyBtC,CAAC;AAEF,eAAO,MAAM,oBAAoB,gBAM/B,CAAC;AAEH,wBAAsB,QAAQ,CAAC,EAC7B,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,OAAO,EAAE,QAA0B,EACnC,aAAa,EACb,WAAW,EACX,aAAa,EACb,KAAK,EACL,WAAW,EACX,GAAG,GACJ,EAAE,MAAM,0BA2CR"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Transaction } from "@mysten/sui/transactions";
|
|
2
|
+
import { BaseContract } from "./base";
|
|
3
|
+
export declare class CetusDLMMContract extends BaseContract {
|
|
4
|
+
swap(tx: Transaction): Promise<{
|
|
5
|
+
$kind: "NestedResult";
|
|
6
|
+
NestedResult: [number, number];
|
|
7
|
+
}>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=cetus_dlmm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cetus_dlmm.d.ts","sourceRoot":"","sources":["../../../../../src/libs/protocols/cetus_dlmm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAGvD,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,qBAAa,iBAAkB,SAAQ,YAAY;IAC3C,IAAI,CAAC,EAAE,EAAE,WAAW;;;;CAiD3B"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Transaction } from "@mysten/sui/transactions";
|
|
2
|
+
import { BaseContract } from "./base";
|
|
3
|
+
export declare class FerraDLMMContract extends BaseContract {
|
|
4
|
+
swap(tx: Transaction): Promise<{
|
|
5
|
+
$kind: "NestedResult";
|
|
6
|
+
NestedResult: [number, number];
|
|
7
|
+
}>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=ferra_dlmm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ferra_dlmm.d.ts","sourceRoot":"","sources":["../../../../../src/libs/protocols/ferra_dlmm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAGvD,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,qBAAa,iBAAkB,SAAQ,YAAY;IAC3C,IAAI,CAAC,EAAE,EAAE,WAAW;;;;CA2B3B"}
|
|
@@ -3,7 +3,9 @@ import { BluefinContract } from "./bluefin";
|
|
|
3
3
|
import { BluefinXContract } from "./bluefinx";
|
|
4
4
|
import { BluemoveContract } from "./bluemove";
|
|
5
5
|
import { CetusContract } from "./cetus";
|
|
6
|
+
import { CetusDLMMContract } from "./cetus_dlmm";
|
|
6
7
|
import { SponsoredDeepBookV3Contract } from "./deepbookV3/sponsored";
|
|
8
|
+
import { FerraDLMMContract } from "./ferra_dlmm";
|
|
7
9
|
import { FlowXContract } from "./flowx";
|
|
8
10
|
import { FlowxV3Contract } from "./flowxV3";
|
|
9
11
|
import { FullsailContract } from "./fullsail";
|
|
@@ -43,5 +45,7 @@ export declare const ProtocolContract: {
|
|
|
43
45
|
bluefinx: typeof BluefinXContract;
|
|
44
46
|
sevenk_v1: typeof SevenKV1;
|
|
45
47
|
fullsail: typeof FullsailContract;
|
|
48
|
+
cetus_dlmm: typeof CetusDLMMContract;
|
|
49
|
+
ferra_dlmm: typeof FerraDLMMContract;
|
|
46
50
|
};
|
|
47
51
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/libs/protocols/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE1C,eAAO,MAAM,gBAAgB
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/libs/protocols/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE1C,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;CA0B5B,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Transaction, TransactionObjectArgument } from "@mysten/sui/transactions";
|
|
2
2
|
import { BluefinXTx } from "../libs/protocols/bluefinx/types";
|
|
3
3
|
export { BluefinXTx };
|
|
4
|
-
export type SourceDex = "suiswap" | "turbos" | "cetus" | "bluemove" | "kriya" | "kriya_v3" | "aftermath" | "deepbook_v3" | "flowx" | "flowx_v3" | "bluefin" | "bluefinx" | "springsui" | "obric" | "stsui" | "steamm" | "steamm_oracle_quoter" | "steamm_oracle_quoter_v2" | "magma" | "haedal_pmm" | "momentum" | "sevenk_v1" | "fullsail";
|
|
4
|
+
export type SourceDex = "suiswap" | "turbos" | "cetus" | "bluemove" | "kriya" | "kriya_v3" | "aftermath" | "deepbook_v3" | "flowx" | "flowx_v3" | "bluefin" | "bluefinx" | "springsui" | "obric" | "stsui" | "steamm" | "steamm_oracle_quoter" | "steamm_oracle_quoter_v2" | "magma" | "haedal_pmm" | "momentum" | "sevenk_v1" | "fullsail" | "cetus_dlmm" | "ferra_dlmm";
|
|
5
5
|
export type SorSwap = {
|
|
6
6
|
poolId: string;
|
|
7
7
|
assetInIndex: number;
|
|
@@ -141,6 +141,13 @@ export interface Config {
|
|
|
141
141
|
priceProvider: string;
|
|
142
142
|
stats: string;
|
|
143
143
|
};
|
|
144
|
+
cetus_dlmm: DexConfig & {
|
|
145
|
+
globalConfig: string;
|
|
146
|
+
version: string;
|
|
147
|
+
};
|
|
148
|
+
ferra_dlmm: DexConfig & {
|
|
149
|
+
globalConfig: string;
|
|
150
|
+
};
|
|
144
151
|
}
|
|
145
152
|
export type ExtraOracle = {
|
|
146
153
|
Pyth?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aggregator.d.ts","sourceRoot":"","sources":["../../../../src/types/aggregator.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,yBAAyB,EAC1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,CAAC;AAEtB,MAAM,MAAM,SAAS,GACjB,SAAS,GACT,QAAQ,GACR,OAAO,GACP,UAAU,GACV,OAAO,GACP,UAAU,GACV,WAAW,GACX,aAAa,GACb,OAAO,GACP,UAAU,GACV,SAAS,GACT,UAAU,GACV,WAAW,GACX,OAAO,GACP,OAAO,GACP,QAAQ,GACR,sBAAsB,GACtB,yBAAyB,GACzB,OAAO,GACP,YAAY,GACZ,UAAU,GACV,WAAW,GACX,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"aggregator.d.ts","sourceRoot":"","sources":["../../../../src/types/aggregator.ts"],"names":[],"mappings":"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"}
|
|
@@ -49,6 +49,7 @@ export declare const SuiUtils: {
|
|
|
49
49
|
$kind: "NestedResult";
|
|
50
50
|
NestedResult: [number, number];
|
|
51
51
|
};
|
|
52
|
+
balanceDestroyZero(tx: Transaction, coinType: string, balance: TransactionArgument): void;
|
|
52
53
|
collectDust(tx: Transaction, coinType: string, coin: TransactionArgument): void;
|
|
53
54
|
transferOrDestroyZeroCoin(tx: Transaction, coinType: string, coin: TransactionArgument, address: string): void;
|
|
54
55
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sui.d.ts","sourceRoot":"","sources":["../../../../src/utils/sui.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAEV,sBAAsB,EACvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAM5E,KAAK,QAAQ,CAAC,CAAC,IAAI;IACjB,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,KAAK,SAAS,GAAG;IACf,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,CAAC;AAEF,KAAK,cAAc,GAAG,KAAK,GAAG,SAAS,CAAC;AAExC,eAAO,MAAM,QAAQ;uBAET,MAAM,GAAG,mBAAmB,OAC/B,WAAW,GACf,mBAAmB;4BAMP,KAAK,CAAC,MAAM,GAAG,mBAAmB,CAAC,OAC3C,WAAW,GACf,mBAAmB,GAAG,SAAS;2BAsBtB,MAAM,cACJ,MAAM,GAAG,mBAAmB,OACnC,WAAW,GACf,mBAAmB;mCAYV,MAAM,SACT;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,UACtC,MAAM,OACT,WAAW;;;;gCAoBgB,MAAM,iBAAiB,MAAM;qCAoCtD,UAAU,EAAE,YACT,MAAM,OACX,WAAW;uCAsBuB;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;sCA8BhE,MAAM,SACP;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE;iCA6BvC,MAAM,SACN,sBAAsB,mBACb,cAAc,GAC7B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;4BAyBD,MAAM;oBAQd,WAAW,YAAY,MAAM;;;;iBAQhC,WAAW,YAAY,MAAM;;;;wBASpC,WAAW,YACL,MAAM,cACJ,mBAAmB;;;;wBAU3B,WAAW,YACL,MAAM,WACP,mBAAmB;;;;
|
|
1
|
+
{"version":3,"file":"sui.d.ts","sourceRoot":"","sources":["../../../../src/utils/sui.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAEV,sBAAsB,EACvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAM5E,KAAK,QAAQ,CAAC,CAAC,IAAI;IACjB,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,KAAK,SAAS,GAAG;IACf,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,CAAC;AAEF,KAAK,cAAc,GAAG,KAAK,GAAG,SAAS,CAAC;AAExC,eAAO,MAAM,QAAQ;uBAET,MAAM,GAAG,mBAAmB,OAC/B,WAAW,GACf,mBAAmB;4BAMP,KAAK,CAAC,MAAM,GAAG,mBAAmB,CAAC,OAC3C,WAAW,GACf,mBAAmB,GAAG,SAAS;2BAsBtB,MAAM,cACJ,MAAM,GAAG,mBAAmB,OACnC,WAAW,GACf,mBAAmB;mCAYV,MAAM,SACT;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,UACtC,MAAM,OACT,WAAW;;;;gCAoBgB,MAAM,iBAAiB,MAAM;qCAoCtD,UAAU,EAAE,YACT,MAAM,OACX,WAAW;uCAsBuB;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;sCA8BhE,MAAM,SACP;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE;iCA6BvC,MAAM,SACN,sBAAsB,mBACb,cAAc,GAC7B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;4BAyBD,MAAM;oBAQd,WAAW,YAAY,MAAM;;;;iBAQhC,WAAW,YAAY,MAAM;;;;wBASpC,WAAW,YACL,MAAM,cACJ,mBAAmB;;;;wBAU3B,WAAW,YACL,MAAM,WACP,mBAAmB;;;;2BASP,WAAW,YAAY,MAAM,WAAW,mBAAmB;oBAQlE,WAAW,YAAY,MAAM,QAAQ,mBAAmB;kCASlE,WAAW,YACL,MAAM,QACV,mBAAmB,WAChB,MAAM;CAQlB,CAAC"}
|
package/lib/esm/utils/sui.js
CHANGED
|
@@ -192,6 +192,13 @@ export const SuiUtils = {
|
|
|
192
192
|
arguments: [balance],
|
|
193
193
|
})[0];
|
|
194
194
|
},
|
|
195
|
+
balanceDestroyZero(tx, coinType, balance) {
|
|
196
|
+
tx.moveCall({
|
|
197
|
+
target: `0x2::balance::destroy_zero`,
|
|
198
|
+
typeArguments: [coinType],
|
|
199
|
+
arguments: [balance],
|
|
200
|
+
});
|
|
201
|
+
},
|
|
195
202
|
collectDust(tx, coinType, coin) {
|
|
196
203
|
tx.moveCall({
|
|
197
204
|
target: `${_7K_PACKAGE_ID}::vault::collect_dust`,
|