@7kprotocol/sdk-ts 3.3.0 → 3.4.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/README.md +13 -0
- package/lib/cjs/config/fetchClient.js +4 -0
- package/lib/cjs/config/index.js +9 -0
- package/lib/cjs/features/swap/config.js +8 -0
- package/lib/cjs/features/swap/getQuote.js +1 -0
- package/lib/cjs/libs/protocols/bluefinx/client.js +9 -3
- package/lib/cjs/libs/protocols/fullsail/index.js +39 -0
- package/lib/cjs/libs/protocols/index.js +2 -0
- package/lib/cjs/types/config/fetchClient.d.ts.map +1 -1
- package/lib/cjs/types/config/index.d.ts +4 -0
- package/lib/cjs/types/config/index.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.map +1 -1
- package/lib/cjs/types/index.d.ts +2 -0
- package/lib/cjs/types/index.d.ts.map +1 -1
- package/lib/cjs/types/libs/protocols/bluefinx/client.d.ts.map +1 -1
- package/lib/cjs/types/libs/protocols/fullsail/index.d.ts +9 -0
- package/lib/cjs/types/libs/protocols/fullsail/index.d.ts.map +1 -0
- package/lib/cjs/types/libs/protocols/index.d.ts +2 -0
- package/lib/cjs/types/libs/protocols/index.d.ts.map +1 -1
- package/lib/cjs/types/types/aggregator.d.ts +7 -1
- package/lib/cjs/types/types/aggregator.d.ts.map +1 -1
- package/lib/esm/config/fetchClient.js +4 -0
- package/lib/esm/config/index.js +9 -0
- package/lib/esm/features/swap/config.js +8 -0
- package/lib/esm/features/swap/getQuote.js +1 -0
- package/lib/esm/libs/protocols/bluefinx/client.js +9 -3
- package/lib/esm/libs/protocols/fullsail/index.js +35 -0
- package/lib/esm/libs/protocols/index.js +2 -0
- package/lib/esm/types/config/fetchClient.d.ts.map +1 -1
- package/lib/esm/types/config/index.d.ts +4 -0
- package/lib/esm/types/config/index.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.map +1 -1
- package/lib/esm/types/index.d.ts +2 -0
- package/lib/esm/types/index.d.ts.map +1 -1
- package/lib/esm/types/libs/protocols/bluefinx/client.d.ts.map +1 -1
- package/lib/esm/types/libs/protocols/fullsail/index.d.ts +9 -0
- package/lib/esm/types/libs/protocols/fullsail/index.d.ts.map +1 -0
- package/lib/esm/types/libs/protocols/index.d.ts +2 -0
- package/lib/esm/types/libs/protocols/index.d.ts.map +1 -1
- package/lib/esm/types/types/aggregator.d.ts +7 -1
- package/lib/esm/types/types/aggregator.d.ts.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -60,6 +60,19 @@ Config.setApiKey("YOUR_API_KEY");
|
|
|
60
60
|
console.log("API key", Config.getApiKey());
|
|
61
61
|
```
|
|
62
62
|
|
|
63
|
+
### Set BluefinX API key
|
|
64
|
+
|
|
65
|
+
Setting a BluefinX API key is optional. However, if you'd like to use one — for
|
|
66
|
+
example, to avoid rate limits when routing through BluefinX — you'll need to
|
|
67
|
+
request an API key directly from Bluefin.
|
|
68
|
+
|
|
69
|
+
```typescript
|
|
70
|
+
import { Config } from "@7kprotocol/sdk-ts";
|
|
71
|
+
|
|
72
|
+
Config.setBluefinXApiKey("YOUR_BLUEFINX_API_KEY");
|
|
73
|
+
console.log("BluefinX API key", Config.getBluefinXApiKey());
|
|
74
|
+
```
|
|
75
|
+
|
|
63
76
|
### Set Sui Client
|
|
64
77
|
|
|
65
78
|
```typescript
|
|
@@ -5,9 +5,13 @@ const index_1 = require("./index");
|
|
|
5
5
|
async function fetchClient(input, init) {
|
|
6
6
|
const headers = new Headers(init?.headers);
|
|
7
7
|
const apiKey = (index_1.Config.getApiKey() || "").trim();
|
|
8
|
+
const bluefinXApiKey = (index_1.Config.getBluefinXApiKey() || "").trim();
|
|
8
9
|
if (apiKey) {
|
|
9
10
|
headers.set("apiKey", apiKey);
|
|
10
11
|
}
|
|
12
|
+
if (bluefinXApiKey) {
|
|
13
|
+
headers.set("Bluefin-X-API-Key", bluefinXApiKey);
|
|
14
|
+
}
|
|
11
15
|
const modifiedInit = {
|
|
12
16
|
...init,
|
|
13
17
|
headers,
|
package/lib/cjs/config/index.js
CHANGED
|
@@ -7,6 +7,7 @@ const HERMES_API = "https://hermes.pyth.network";
|
|
|
7
7
|
const WORMHOLE_STATE_ID = "0xaeab97f96cf9877fee2883315d459552b2b921edc16d7ceac6eab944dd88919c";
|
|
8
8
|
const PYTH_STATE_ID = "0x1f9310238ee9298fb703c3419030b35b22bb1cc37113e3bb5007c99aec79e5b8";
|
|
9
9
|
let apiKey = "";
|
|
10
|
+
let bluefinXApiKey = "";
|
|
10
11
|
let suiClient = new client_1.SuiClient({
|
|
11
12
|
url: (0, client_1.getFullnodeUrl)("mainnet"),
|
|
12
13
|
});
|
|
@@ -18,6 +19,12 @@ function setApiKey(key) {
|
|
|
18
19
|
function getApiKey() {
|
|
19
20
|
return apiKey;
|
|
20
21
|
}
|
|
22
|
+
function setBluefinXApiKey(key) {
|
|
23
|
+
bluefinXApiKey = key;
|
|
24
|
+
}
|
|
25
|
+
function getBluefinXApiKey() {
|
|
26
|
+
return bluefinXApiKey;
|
|
27
|
+
}
|
|
21
28
|
function getSuiClient() {
|
|
22
29
|
return suiClient;
|
|
23
30
|
}
|
|
@@ -39,6 +46,8 @@ function getPythConnection() {
|
|
|
39
46
|
const Config = {
|
|
40
47
|
setApiKey,
|
|
41
48
|
getApiKey,
|
|
49
|
+
setBluefinXApiKey,
|
|
50
|
+
getBluefinXApiKey,
|
|
42
51
|
setSuiClient,
|
|
43
52
|
getSuiClient,
|
|
44
53
|
setPythClient,
|
|
@@ -107,6 +107,14 @@ exports.DEFAULT_CONFIG = {
|
|
|
107
107
|
package: "0x4142285db093ba0cf0623b3cbc07372fb4f5ed00af1fb62be6d55f49a42c0b0e",
|
|
108
108
|
oracle: "0x8c36ea167c5e6da8c3d60b4fc897416105dcb986471bd81cfbfd38720a4487c0",
|
|
109
109
|
},
|
|
110
|
+
fullsail: {
|
|
111
|
+
name: "Fullsail",
|
|
112
|
+
package: "0xe1b7d5fd116fea5a8f8e85c13754248d56626a8d0a614b7d916c2348d8323149",
|
|
113
|
+
globalConfig: "0xe93baa80cb570b3a494cbf0621b2ba96bc993926d34dc92508c9446f9a05d615",
|
|
114
|
+
rewarderGlobalVault: "0xfb971d3a2fb98bde74e1c30ba15a3d8bef60a02789e59ae0b91660aeed3e64e1",
|
|
115
|
+
priceProvider: "0x854b2d2c0381bb656ec962f8b443eb082654384cf97885359d1956c7d76e33c9",
|
|
116
|
+
stats: "0x6822a33d1d971e040c32f7cc74507010d1fe786f7d06ab89135083ddb07d2dc2",
|
|
117
|
+
},
|
|
110
118
|
};
|
|
111
119
|
let config = exports.DEFAULT_CONFIG;
|
|
112
120
|
let configTs = 0;
|
|
@@ -28,6 +28,7 @@ exports.DEFAULT_SOURCES = [
|
|
|
28
28
|
"haedal_pmm",
|
|
29
29
|
"momentum",
|
|
30
30
|
"sevenk_v1",
|
|
31
|
+
"fullsail",
|
|
31
32
|
];
|
|
32
33
|
async function getQuote({ tokenIn, tokenOut, amountIn, sources = exports.DEFAULT_SOURCES, commissionBps, targetPools, excludedPools, taker, }) {
|
|
33
34
|
const params = new URLSearchParams({
|
|
@@ -1,14 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.executeBluefinTx = exports.sponsorBluefinX = void 0;
|
|
4
|
+
const config_1 = require("../../../config");
|
|
4
5
|
const apiEndpoints_1 = require("../../../constants/apiEndpoints");
|
|
5
6
|
const request = async (path, body) => {
|
|
7
|
+
const headers = new Headers({
|
|
8
|
+
"Content-Type": "application/json",
|
|
9
|
+
});
|
|
10
|
+
const bluefinXApiKey = (config_1.Config.getBluefinXApiKey() || "").trim();
|
|
11
|
+
if (bluefinXApiKey) {
|
|
12
|
+
headers.set("Bluefin-X-API-Key", bluefinXApiKey);
|
|
13
|
+
}
|
|
6
14
|
const res = await fetch(`${apiEndpoints_1.API_ENDPOINTS.MAIN}/${path}`, {
|
|
7
15
|
method: "POST",
|
|
8
16
|
body: JSON.stringify(body),
|
|
9
|
-
headers
|
|
10
|
-
"Content-Type": "application/json",
|
|
11
|
-
},
|
|
17
|
+
headers,
|
|
12
18
|
});
|
|
13
19
|
return res.json();
|
|
14
20
|
};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FullsailContract = void 0;
|
|
4
|
+
const base_1 = require("../base");
|
|
5
|
+
const utils_1 = require("@mysten/sui/utils");
|
|
6
|
+
const sui_1 = require("../../../utils/sui");
|
|
7
|
+
const utils_2 = require("../utils");
|
|
8
|
+
class FullsailContract extends base_1.BaseContract {
|
|
9
|
+
async swap(tx) {
|
|
10
|
+
const [coinX, coinY] = this.swapInfo.pool.allTokens;
|
|
11
|
+
const swapXtoY = this.swapInfo.swapXtoY;
|
|
12
|
+
const sqrtPriceLimit = (0, utils_2.getDefaultSqrtPriceLimit)(swapXtoY);
|
|
13
|
+
const typeArguments = [coinX.address, coinY.address];
|
|
14
|
+
const zeroOut = sui_1.SuiUtils.zeroCoin(tx, swapXtoY ? coinY.address : coinX.address);
|
|
15
|
+
const config = this.config.fullsail;
|
|
16
|
+
const [receiveA, receiveB] = tx.moveCall({
|
|
17
|
+
target: `${config.package}::router::swap`,
|
|
18
|
+
typeArguments,
|
|
19
|
+
arguments: [
|
|
20
|
+
tx.object(config.globalConfig),
|
|
21
|
+
tx.object(config.rewarderGlobalVault),
|
|
22
|
+
tx.object(this.swapInfo.poolId),
|
|
23
|
+
swapXtoY ? this.inputCoinObject : zeroOut, // coin A
|
|
24
|
+
swapXtoY ? zeroOut : this.inputCoinObject, // coin B
|
|
25
|
+
tx.pure.bool(swapXtoY), // a to b or b to a
|
|
26
|
+
tx.pure.bool(true), // exact in or out
|
|
27
|
+
this.getInputCoinValue(tx), // swap amount
|
|
28
|
+
tx.pure.u128(sqrtPriceLimit.toString()), // sqrt price limit
|
|
29
|
+
tx.pure.bool(false),
|
|
30
|
+
tx.object(config.stats),
|
|
31
|
+
tx.object(config.priceProvider),
|
|
32
|
+
tx.object(utils_1.SUI_CLOCK_OBJECT_ID),
|
|
33
|
+
],
|
|
34
|
+
});
|
|
35
|
+
sui_1.SuiUtils.collectDust(tx, this.swapInfo.assetIn, swapXtoY ? receiveA : receiveB);
|
|
36
|
+
return swapXtoY ? receiveB : receiveA;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
exports.FullsailContract = FullsailContract;
|
|
@@ -9,6 +9,7 @@ const cetus_1 = require("./cetus");
|
|
|
9
9
|
const sponsored_1 = require("./deepbookV3/sponsored");
|
|
10
10
|
const flowx_1 = require("./flowx");
|
|
11
11
|
const flowxV3_1 = require("./flowxV3");
|
|
12
|
+
const fullsail_1 = require("./fullsail");
|
|
12
13
|
const haedal_pmm_1 = require("./haedal_pmm");
|
|
13
14
|
const kriya_1 = require("./kriya");
|
|
14
15
|
const kriyaV3_1 = require("./kriyaV3");
|
|
@@ -44,4 +45,5 @@ exports.ProtocolContract = {
|
|
|
44
45
|
momentum: momentum_1.MomentumContract,
|
|
45
46
|
bluefinx: bluefinx_1.BluefinXContract,
|
|
46
47
|
sevenk_v1: sevenk_1.SevenKV1,
|
|
48
|
+
fullsail: fullsail_1.FullsailContract,
|
|
47
49
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchClient.d.ts","sourceRoot":"","sources":["../../../../src/config/fetchClient.ts"],"names":[],"mappings":"AAEA,wBAAsB,WAAW,CAC/B,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"fetchClient.d.ts","sourceRoot":"","sources":["../../../../src/config/fetchClient.ts"],"names":[],"mappings":"AAEA,wBAAsB,WAAW,CAC/B,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,QAAQ,CAAC,CAkBnB"}
|
|
@@ -2,6 +2,8 @@ import { SuiClient } from "@mysten/sui/client";
|
|
|
2
2
|
import { SuiPriceServiceConnection, SuiPythClient } from "@pythnetwork/pyth-sui-js";
|
|
3
3
|
declare function setApiKey(key: string): void;
|
|
4
4
|
declare function getApiKey(): string;
|
|
5
|
+
declare function setBluefinXApiKey(key: string): void;
|
|
6
|
+
declare function getBluefinXApiKey(): string;
|
|
5
7
|
declare function getSuiClient(): SuiClient;
|
|
6
8
|
declare function setSuiClient(client: SuiClient): void;
|
|
7
9
|
declare function setPythClient(client: SuiPythClient): void;
|
|
@@ -11,6 +13,8 @@ declare function getPythConnection(): SuiPriceServiceConnection;
|
|
|
11
13
|
declare const Config: {
|
|
12
14
|
setApiKey: typeof setApiKey;
|
|
13
15
|
getApiKey: typeof getApiKey;
|
|
16
|
+
setBluefinXApiKey: typeof setBluefinXApiKey;
|
|
17
|
+
getBluefinXApiKey: typeof getBluefinXApiKey;
|
|
14
18
|
setSuiClient: typeof setSuiClient;
|
|
15
19
|
getSuiClient: typeof getSuiClient;
|
|
16
20
|
setPythClient: typeof setPythClient;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAkB,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EACL,yBAAyB,EACzB,aAAa,EACd,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAkB,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EACL,yBAAyB,EACzB,aAAa,EACd,MAAM,0BAA0B,CAAC;AAsBlC,iBAAS,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAEpC;AAED,iBAAS,SAAS,IAAI,MAAM,CAE3B;AAED,iBAAS,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAE5C;AAED,iBAAS,iBAAiB,IAAI,MAAM,CAEnC;AAED,iBAAS,YAAY,IAAI,SAAS,CAEjC;AAED,iBAAS,YAAY,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAE7C;AAED,iBAAS,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAElD;AAED,iBAAS,aAAa,IAAI,aAAa,CAEtC;AAED,iBAAS,iBAAiB,CAAC,UAAU,EAAE,yBAAyB,GAAG,IAAI,CAEtE;AAED,iBAAS,iBAAiB,IAAI,yBAAyB,CAEtD;AAED,QAAA,MAAM,MAAM;;;;;;;;;;;CAWX,CAAC;AAEF,OAAO,EAAE,MAAM,EAAE,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,MA4J5B,CAAC;AAIF,wBAAsB,SAAS,oBAe9B"}
|
|
@@ -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;CAChB;AAED,eAAO,MAAM,eAAe,EAAE,SAAS,
|
|
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;CAChB;AAED,eAAO,MAAM,eAAe,EAAE,SAAS,EAuBtC,CAAC;AAEF,wBAAsB,QAAQ,CAAC,EAC7B,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,OAAyB,EACzB,aAAa,EACb,WAAW,EACX,aAAa,EACb,KAAK,GACN,EAAE,MAAM,0BAqCR"}
|
package/lib/cjs/types/index.d.ts
CHANGED
|
@@ -11,6 +11,8 @@ declare const _default: {
|
|
|
11
11
|
Config: {
|
|
12
12
|
setApiKey: (key: string) => void;
|
|
13
13
|
getApiKey: () => string;
|
|
14
|
+
setBluefinXApiKey: (key: string) => void;
|
|
15
|
+
getBluefinXApiKey: () => string;
|
|
14
16
|
setSuiClient: (client: import("@mysten/sui/dist/cjs/client").SuiClient) => void;
|
|
15
17
|
getSuiClient: () => import("@mysten/sui/dist/cjs/client").SuiClient;
|
|
16
18
|
setPythClient: (client: import("@pythnetwork/pyth-sui-js").SuiPythClient) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AAEnC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEpE,OAAO,EACL,OAAO,EACP,cAAc,EACd,SAAS,EACT,QAAQ,EACR,cAAc,EACd,eAAe,EAChB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACb,eAAe,EAChB,MAAM,qBAAqB,CAAC;AAG7B,QAAA,MAAM,YAAY,uDAAsB,CAAC;AACzC,QAAA,MAAM,YAAY,mEAAsB,CAAC;AAEzC,OAAO,EAEL,MAAM,EAGN,YAAY,EACZ,YAAY,EAGZ,aAAa,EACb,cAAc,EACd,WAAW,EAGX,QAAQ,EACR,cAAc,EACd,OAAO,EACP,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,eAAe,EAGf,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,EAGpB,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,qBAAqB,GACtB,CAAC
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AAEnC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEpE,OAAO,EACL,OAAO,EACP,cAAc,EACd,SAAS,EACT,QAAQ,EACR,cAAc,EACd,eAAe,EAChB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACb,eAAe,EAChB,MAAM,qBAAqB,CAAC;AAG7B,QAAA,MAAM,YAAY,uDAAsB,CAAC;AACzC,QAAA,MAAM,YAAY,mEAAsB,CAAC;AAEzC,OAAO,EAEL,MAAM,EAGN,YAAY,EACZ,YAAY,EAGZ,aAAa,EACb,cAAc,EACd,WAAW,EAGX,QAAQ,EACR,cAAc,EACd,OAAO,EACP,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,eAAe,EAGf,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,EAGpB,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,qBAAqB,GACtB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEF,wBAmCE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../../../src/libs/protocols/bluefinx/client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../../../src/libs/protocols/bluefinx/client.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,UAAU,EACV,cAAc,EACd,eAAe,EACf,YAAY,EACb,MAAM,SAAS,CAAC;AAiBjB,eAAO,MAAM,eAAe,GAAU,MAAM,cAAc,6BAEzD,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,GAAU,IAAI,UAAU,EAAE,WAAW,MAAM,0BAMvE,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Transaction } from "@mysten/sui/transactions";
|
|
2
|
+
import { BaseContract } from "../base";
|
|
3
|
+
export declare class FullsailContract extends BaseContract {
|
|
4
|
+
swap(tx: Transaction): Promise<{
|
|
5
|
+
$kind: "NestedResult";
|
|
6
|
+
NestedResult: [number, number];
|
|
7
|
+
}>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/libs/protocols/fullsail/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAMvC,qBAAa,gBAAiB,SAAQ,YAAY;IAC1C,IAAI,CAAC,EAAE,EAAE,WAAW;;;;CAqC3B"}
|
|
@@ -6,6 +6,7 @@ import { CetusContract } from "./cetus";
|
|
|
6
6
|
import { SponsoredDeepBookV3Contract } from "./deepbookV3/sponsored";
|
|
7
7
|
import { FlowXContract } from "./flowx";
|
|
8
8
|
import { FlowxV3Contract } from "./flowxV3";
|
|
9
|
+
import { FullsailContract } from "./fullsail";
|
|
9
10
|
import { HaedalPMMContract } from "./haedal_pmm";
|
|
10
11
|
import { KriyaContract } from "./kriya";
|
|
11
12
|
import { KriyaV3Contract } from "./kriyaV3";
|
|
@@ -41,5 +42,6 @@ export declare const ProtocolContract: {
|
|
|
41
42
|
momentum: typeof MomentumContract;
|
|
42
43
|
bluefinx: typeof BluefinXContract;
|
|
43
44
|
sevenk_v1: typeof SevenKV1;
|
|
45
|
+
fullsail: typeof FullsailContract;
|
|
44
46
|
};
|
|
45
47
|
//# 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,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,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;;;;;;;;;;;;;;;;;;;;;;;;CAwB5B,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";
|
|
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";
|
|
5
5
|
export type SorSwap = {
|
|
6
6
|
poolId: string;
|
|
7
7
|
assetInIndex: number;
|
|
@@ -135,6 +135,12 @@ export interface Config {
|
|
|
135
135
|
sevenk_v1: DexConfig & {
|
|
136
136
|
oracle: string;
|
|
137
137
|
};
|
|
138
|
+
fullsail: DexConfig & {
|
|
139
|
+
globalConfig: string;
|
|
140
|
+
rewarderGlobalVault: string;
|
|
141
|
+
priceProvider: string;
|
|
142
|
+
stats: string;
|
|
143
|
+
};
|
|
138
144
|
}
|
|
139
145
|
export type ExtraOracle = {
|
|
140
146
|
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,CAAC;
|
|
1
|
+
{"version":3,"file":"aggregator.d.ts","sourceRoot":"","sources":["../../../../src/types/aggregator.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,9 +2,13 @@ import { Config } from "./index";
|
|
|
2
2
|
export async function fetchClient(input, init) {
|
|
3
3
|
const headers = new Headers(init?.headers);
|
|
4
4
|
const apiKey = (Config.getApiKey() || "").trim();
|
|
5
|
+
const bluefinXApiKey = (Config.getBluefinXApiKey() || "").trim();
|
|
5
6
|
if (apiKey) {
|
|
6
7
|
headers.set("apiKey", apiKey);
|
|
7
8
|
}
|
|
9
|
+
if (bluefinXApiKey) {
|
|
10
|
+
headers.set("Bluefin-X-API-Key", bluefinXApiKey);
|
|
11
|
+
}
|
|
8
12
|
const modifiedInit = {
|
|
9
13
|
...init,
|
|
10
14
|
headers,
|
package/lib/esm/config/index.js
CHANGED
|
@@ -4,6 +4,7 @@ const HERMES_API = "https://hermes.pyth.network";
|
|
|
4
4
|
const WORMHOLE_STATE_ID = "0xaeab97f96cf9877fee2883315d459552b2b921edc16d7ceac6eab944dd88919c";
|
|
5
5
|
const PYTH_STATE_ID = "0x1f9310238ee9298fb703c3419030b35b22bb1cc37113e3bb5007c99aec79e5b8";
|
|
6
6
|
let apiKey = "";
|
|
7
|
+
let bluefinXApiKey = "";
|
|
7
8
|
let suiClient = new SuiClient({
|
|
8
9
|
url: getFullnodeUrl("mainnet"),
|
|
9
10
|
});
|
|
@@ -15,6 +16,12 @@ function setApiKey(key) {
|
|
|
15
16
|
function getApiKey() {
|
|
16
17
|
return apiKey;
|
|
17
18
|
}
|
|
19
|
+
function setBluefinXApiKey(key) {
|
|
20
|
+
bluefinXApiKey = key;
|
|
21
|
+
}
|
|
22
|
+
function getBluefinXApiKey() {
|
|
23
|
+
return bluefinXApiKey;
|
|
24
|
+
}
|
|
18
25
|
function getSuiClient() {
|
|
19
26
|
return suiClient;
|
|
20
27
|
}
|
|
@@ -36,6 +43,8 @@ function getPythConnection() {
|
|
|
36
43
|
const Config = {
|
|
37
44
|
setApiKey,
|
|
38
45
|
getApiKey,
|
|
46
|
+
setBluefinXApiKey,
|
|
47
|
+
getBluefinXApiKey,
|
|
39
48
|
setSuiClient,
|
|
40
49
|
getSuiClient,
|
|
41
50
|
setPythClient,
|
|
@@ -103,6 +103,14 @@ export const DEFAULT_CONFIG = {
|
|
|
103
103
|
package: "0x4142285db093ba0cf0623b3cbc07372fb4f5ed00af1fb62be6d55f49a42c0b0e",
|
|
104
104
|
oracle: "0x8c36ea167c5e6da8c3d60b4fc897416105dcb986471bd81cfbfd38720a4487c0",
|
|
105
105
|
},
|
|
106
|
+
fullsail: {
|
|
107
|
+
name: "Fullsail",
|
|
108
|
+
package: "0xe1b7d5fd116fea5a8f8e85c13754248d56626a8d0a614b7d916c2348d8323149",
|
|
109
|
+
globalConfig: "0xe93baa80cb570b3a494cbf0621b2ba96bc993926d34dc92508c9446f9a05d615",
|
|
110
|
+
rewarderGlobalVault: "0xfb971d3a2fb98bde74e1c30ba15a3d8bef60a02789e59ae0b91660aeed3e64e1",
|
|
111
|
+
priceProvider: "0x854b2d2c0381bb656ec962f8b443eb082654384cf97885359d1956c7d76e33c9",
|
|
112
|
+
stats: "0x6822a33d1d971e040c32f7cc74507010d1fe786f7d06ab89135083ddb07d2dc2",
|
|
113
|
+
},
|
|
106
114
|
};
|
|
107
115
|
let config = DEFAULT_CONFIG;
|
|
108
116
|
let configTs = 0;
|
|
@@ -24,6 +24,7 @@ export const DEFAULT_SOURCES = [
|
|
|
24
24
|
"haedal_pmm",
|
|
25
25
|
"momentum",
|
|
26
26
|
"sevenk_v1",
|
|
27
|
+
"fullsail",
|
|
27
28
|
];
|
|
28
29
|
export async function getQuote({ tokenIn, tokenOut, amountIn, sources = DEFAULT_SOURCES, commissionBps, targetPools, excludedPools, taker, }) {
|
|
29
30
|
const params = new URLSearchParams({
|
|
@@ -1,11 +1,17 @@
|
|
|
1
|
+
import { Config } from "../../../config";
|
|
1
2
|
import { API_ENDPOINTS } from "../../../constants/apiEndpoints";
|
|
2
3
|
const request = async (path, body) => {
|
|
4
|
+
const headers = new Headers({
|
|
5
|
+
"Content-Type": "application/json",
|
|
6
|
+
});
|
|
7
|
+
const bluefinXApiKey = (Config.getBluefinXApiKey() || "").trim();
|
|
8
|
+
if (bluefinXApiKey) {
|
|
9
|
+
headers.set("Bluefin-X-API-Key", bluefinXApiKey);
|
|
10
|
+
}
|
|
3
11
|
const res = await fetch(`${API_ENDPOINTS.MAIN}/${path}`, {
|
|
4
12
|
method: "POST",
|
|
5
13
|
body: JSON.stringify(body),
|
|
6
|
-
headers
|
|
7
|
-
"Content-Type": "application/json",
|
|
8
|
-
},
|
|
14
|
+
headers,
|
|
9
15
|
});
|
|
10
16
|
return res.json();
|
|
11
17
|
};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { BaseContract } from "../base";
|
|
2
|
+
import { SUI_CLOCK_OBJECT_ID } from "@mysten/sui/utils";
|
|
3
|
+
import { SuiUtils } from "../../../utils/sui";
|
|
4
|
+
import { getDefaultSqrtPriceLimit } from "../utils";
|
|
5
|
+
export class FullsailContract extends BaseContract {
|
|
6
|
+
async swap(tx) {
|
|
7
|
+
const [coinX, coinY] = this.swapInfo.pool.allTokens;
|
|
8
|
+
const swapXtoY = this.swapInfo.swapXtoY;
|
|
9
|
+
const sqrtPriceLimit = getDefaultSqrtPriceLimit(swapXtoY);
|
|
10
|
+
const typeArguments = [coinX.address, coinY.address];
|
|
11
|
+
const zeroOut = SuiUtils.zeroCoin(tx, swapXtoY ? coinY.address : coinX.address);
|
|
12
|
+
const config = this.config.fullsail;
|
|
13
|
+
const [receiveA, receiveB] = tx.moveCall({
|
|
14
|
+
target: `${config.package}::router::swap`,
|
|
15
|
+
typeArguments,
|
|
16
|
+
arguments: [
|
|
17
|
+
tx.object(config.globalConfig),
|
|
18
|
+
tx.object(config.rewarderGlobalVault),
|
|
19
|
+
tx.object(this.swapInfo.poolId),
|
|
20
|
+
swapXtoY ? this.inputCoinObject : zeroOut, // coin A
|
|
21
|
+
swapXtoY ? zeroOut : this.inputCoinObject, // coin B
|
|
22
|
+
tx.pure.bool(swapXtoY), // a to b or b to a
|
|
23
|
+
tx.pure.bool(true), // exact in or out
|
|
24
|
+
this.getInputCoinValue(tx), // swap amount
|
|
25
|
+
tx.pure.u128(sqrtPriceLimit.toString()), // sqrt price limit
|
|
26
|
+
tx.pure.bool(false),
|
|
27
|
+
tx.object(config.stats),
|
|
28
|
+
tx.object(config.priceProvider),
|
|
29
|
+
tx.object(SUI_CLOCK_OBJECT_ID),
|
|
30
|
+
],
|
|
31
|
+
});
|
|
32
|
+
SuiUtils.collectDust(tx, this.swapInfo.assetIn, swapXtoY ? receiveA : receiveB);
|
|
33
|
+
return swapXtoY ? receiveB : receiveA;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -6,6 +6,7 @@ import { CetusContract } from "./cetus";
|
|
|
6
6
|
import { SponsoredDeepBookV3Contract } from "./deepbookV3/sponsored";
|
|
7
7
|
import { FlowXContract } from "./flowx";
|
|
8
8
|
import { FlowxV3Contract } from "./flowxV3";
|
|
9
|
+
import { FullsailContract } from "./fullsail";
|
|
9
10
|
import { HaedalPMMContract } from "./haedal_pmm";
|
|
10
11
|
import { KriyaContract } from "./kriya";
|
|
11
12
|
import { KriyaV3Contract } from "./kriyaV3";
|
|
@@ -41,4 +42,5 @@ export const ProtocolContract = {
|
|
|
41
42
|
momentum: MomentumContract,
|
|
42
43
|
bluefinx: BluefinXContract,
|
|
43
44
|
sevenk_v1: SevenKV1,
|
|
45
|
+
fullsail: FullsailContract,
|
|
44
46
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchClient.d.ts","sourceRoot":"","sources":["../../../../src/config/fetchClient.ts"],"names":[],"mappings":"AAEA,wBAAsB,WAAW,CAC/B,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"fetchClient.d.ts","sourceRoot":"","sources":["../../../../src/config/fetchClient.ts"],"names":[],"mappings":"AAEA,wBAAsB,WAAW,CAC/B,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,QAAQ,CAAC,CAkBnB"}
|
|
@@ -2,6 +2,8 @@ import { SuiClient } from "@mysten/sui/client";
|
|
|
2
2
|
import { SuiPriceServiceConnection, SuiPythClient } from "@pythnetwork/pyth-sui-js";
|
|
3
3
|
declare function setApiKey(key: string): void;
|
|
4
4
|
declare function getApiKey(): string;
|
|
5
|
+
declare function setBluefinXApiKey(key: string): void;
|
|
6
|
+
declare function getBluefinXApiKey(): string;
|
|
5
7
|
declare function getSuiClient(): SuiClient;
|
|
6
8
|
declare function setSuiClient(client: SuiClient): void;
|
|
7
9
|
declare function setPythClient(client: SuiPythClient): void;
|
|
@@ -11,6 +13,8 @@ declare function getPythConnection(): SuiPriceServiceConnection;
|
|
|
11
13
|
declare const Config: {
|
|
12
14
|
setApiKey: typeof setApiKey;
|
|
13
15
|
getApiKey: typeof getApiKey;
|
|
16
|
+
setBluefinXApiKey: typeof setBluefinXApiKey;
|
|
17
|
+
getBluefinXApiKey: typeof getBluefinXApiKey;
|
|
14
18
|
setSuiClient: typeof setSuiClient;
|
|
15
19
|
getSuiClient: typeof getSuiClient;
|
|
16
20
|
setPythClient: typeof setPythClient;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAkB,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EACL,yBAAyB,EACzB,aAAa,EACd,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAkB,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EACL,yBAAyB,EACzB,aAAa,EACd,MAAM,0BAA0B,CAAC;AAsBlC,iBAAS,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAEpC;AAED,iBAAS,SAAS,IAAI,MAAM,CAE3B;AAED,iBAAS,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAE5C;AAED,iBAAS,iBAAiB,IAAI,MAAM,CAEnC;AAED,iBAAS,YAAY,IAAI,SAAS,CAEjC;AAED,iBAAS,YAAY,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAE7C;AAED,iBAAS,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAElD;AAED,iBAAS,aAAa,IAAI,aAAa,CAEtC;AAED,iBAAS,iBAAiB,CAAC,UAAU,EAAE,yBAAyB,GAAG,IAAI,CAEtE;AAED,iBAAS,iBAAiB,IAAI,yBAAyB,CAEtD;AAED,QAAA,MAAM,MAAM;;;;;;;;;;;CAWX,CAAC;AAEF,OAAO,EAAE,MAAM,EAAE,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,MA4J5B,CAAC;AAIF,wBAAsB,SAAS,oBAe9B"}
|
|
@@ -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;CAChB;AAED,eAAO,MAAM,eAAe,EAAE,SAAS,
|
|
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;CAChB;AAED,eAAO,MAAM,eAAe,EAAE,SAAS,EAuBtC,CAAC;AAEF,wBAAsB,QAAQ,CAAC,EAC7B,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,OAAyB,EACzB,aAAa,EACb,WAAW,EACX,aAAa,EACb,KAAK,GACN,EAAE,MAAM,0BAqCR"}
|
package/lib/esm/types/index.d.ts
CHANGED
|
@@ -11,6 +11,8 @@ declare const _default: {
|
|
|
11
11
|
Config: {
|
|
12
12
|
setApiKey: (key: string) => void;
|
|
13
13
|
getApiKey: () => string;
|
|
14
|
+
setBluefinXApiKey: (key: string) => void;
|
|
15
|
+
getBluefinXApiKey: () => string;
|
|
14
16
|
setSuiClient: (client: import("@mysten/sui/dist/cjs/client").SuiClient) => void;
|
|
15
17
|
getSuiClient: () => import("@mysten/sui/dist/cjs/client").SuiClient;
|
|
16
18
|
setPythClient: (client: import("@pythnetwork/pyth-sui-js").SuiPythClient) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AAEnC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEpE,OAAO,EACL,OAAO,EACP,cAAc,EACd,SAAS,EACT,QAAQ,EACR,cAAc,EACd,eAAe,EAChB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACb,eAAe,EAChB,MAAM,qBAAqB,CAAC;AAG7B,QAAA,MAAM,YAAY,uDAAsB,CAAC;AACzC,QAAA,MAAM,YAAY,mEAAsB,CAAC;AAEzC,OAAO,EAEL,MAAM,EAGN,YAAY,EACZ,YAAY,EAGZ,aAAa,EACb,cAAc,EACd,WAAW,EAGX,QAAQ,EACR,cAAc,EACd,OAAO,EACP,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,eAAe,EAGf,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,EAGpB,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,qBAAqB,GACtB,CAAC
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AAEnC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEpE,OAAO,EACL,OAAO,EACP,cAAc,EACd,SAAS,EACT,QAAQ,EACR,cAAc,EACd,eAAe,EAChB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACb,eAAe,EAChB,MAAM,qBAAqB,CAAC;AAG7B,QAAA,MAAM,YAAY,uDAAsB,CAAC;AACzC,QAAA,MAAM,YAAY,mEAAsB,CAAC;AAEzC,OAAO,EAEL,MAAM,EAGN,YAAY,EACZ,YAAY,EAGZ,aAAa,EACb,cAAc,EACd,WAAW,EAGX,QAAQ,EACR,cAAc,EACd,OAAO,EACP,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,eAAe,EAGf,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,EAGpB,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,qBAAqB,GACtB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEF,wBAmCE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../../../src/libs/protocols/bluefinx/client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../../../src/libs/protocols/bluefinx/client.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,UAAU,EACV,cAAc,EACd,eAAe,EACf,YAAY,EACb,MAAM,SAAS,CAAC;AAiBjB,eAAO,MAAM,eAAe,GAAU,MAAM,cAAc,6BAEzD,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,GAAU,IAAI,UAAU,EAAE,WAAW,MAAM,0BAMvE,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Transaction } from "@mysten/sui/transactions";
|
|
2
|
+
import { BaseContract } from "../base";
|
|
3
|
+
export declare class FullsailContract extends BaseContract {
|
|
4
|
+
swap(tx: Transaction): Promise<{
|
|
5
|
+
$kind: "NestedResult";
|
|
6
|
+
NestedResult: [number, number];
|
|
7
|
+
}>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/libs/protocols/fullsail/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAMvC,qBAAa,gBAAiB,SAAQ,YAAY;IAC1C,IAAI,CAAC,EAAE,EAAE,WAAW;;;;CAqC3B"}
|
|
@@ -6,6 +6,7 @@ import { CetusContract } from "./cetus";
|
|
|
6
6
|
import { SponsoredDeepBookV3Contract } from "./deepbookV3/sponsored";
|
|
7
7
|
import { FlowXContract } from "./flowx";
|
|
8
8
|
import { FlowxV3Contract } from "./flowxV3";
|
|
9
|
+
import { FullsailContract } from "./fullsail";
|
|
9
10
|
import { HaedalPMMContract } from "./haedal_pmm";
|
|
10
11
|
import { KriyaContract } from "./kriya";
|
|
11
12
|
import { KriyaV3Contract } from "./kriyaV3";
|
|
@@ -41,5 +42,6 @@ export declare const ProtocolContract: {
|
|
|
41
42
|
momentum: typeof MomentumContract;
|
|
42
43
|
bluefinx: typeof BluefinXContract;
|
|
43
44
|
sevenk_v1: typeof SevenKV1;
|
|
45
|
+
fullsail: typeof FullsailContract;
|
|
44
46
|
};
|
|
45
47
|
//# 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,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,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;;;;;;;;;;;;;;;;;;;;;;;;CAwB5B,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";
|
|
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";
|
|
5
5
|
export type SorSwap = {
|
|
6
6
|
poolId: string;
|
|
7
7
|
assetInIndex: number;
|
|
@@ -135,6 +135,12 @@ export interface Config {
|
|
|
135
135
|
sevenk_v1: DexConfig & {
|
|
136
136
|
oracle: string;
|
|
137
137
|
};
|
|
138
|
+
fullsail: DexConfig & {
|
|
139
|
+
globalConfig: string;
|
|
140
|
+
rewarderGlobalVault: string;
|
|
141
|
+
priceProvider: string;
|
|
142
|
+
stats: string;
|
|
143
|
+
};
|
|
138
144
|
}
|
|
139
145
|
export type ExtraOracle = {
|
|
140
146
|
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,CAAC;
|
|
1
|
+
{"version":3,"file":"aggregator.d.ts","sourceRoot":"","sources":["../../../../src/types/aggregator.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@7kprotocol/sdk-ts",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.4.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": {
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"build:esm": "tsc -p ./configs/tsconfig.esm.json && mv lib/esm/index.js lib/esm/index.mjs",
|
|
41
41
|
"build:cjs": "tsc -p ./configs/tsconfig.cjs.json",
|
|
42
42
|
"prepack": "npm run build",
|
|
43
|
-
"test": "mocha --timeout
|
|
43
|
+
"test": "mocha --timeout 60000",
|
|
44
44
|
"publish:patch": "npm version patch --no-git-tag-version && npm publish --access public",
|
|
45
45
|
"publish:minor": "npm version minor --no-git-tag-version && npm publish --access public",
|
|
46
46
|
"publish:major": "npm version major --no-git-tag-version && npm publish --access public",
|