aftermath-ts-sdk 1.3.27 → 1.3.28
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/dist/general/apiHelpers/objectsApiHelpers.d.ts.map +1 -1
- package/dist/general/apiHelpers/objectsApiHelpers.js +5 -4
- package/dist/general/apiHelpers/transactionsApiHelpers.d.ts +3 -0
- package/dist/general/apiHelpers/transactionsApiHelpers.d.ts.map +1 -1
- package/dist/general/apiHelpers/transactionsApiHelpers.js +14 -2
- package/dist/general/providers/aftermath.d.ts +19 -19
- package/dist/general/providers/aftermath.d.ts.map +1 -1
- package/dist/general/providers/aftermath.js +20 -20
- package/dist/general/providers/aftermathApi.d.ts +0 -5
- package/dist/general/providers/aftermathApi.d.ts.map +1 -1
- package/dist/general/providers/aftermathApi.js +0 -5
- package/dist/general/types/castingTypes.d.ts +2 -2
- package/dist/general/types/castingTypes.d.ts.map +1 -1
- package/dist/general/types/configTypes.d.ts +6 -10
- package/dist/general/types/configTypes.d.ts.map +1 -1
- package/dist/general/types/generalTypes.d.ts +8 -0
- package/dist/general/types/generalTypes.d.ts.map +1 -1
- package/dist/general/types/moveErrorsInterface.d.ts +1 -1
- package/dist/general/types/moveErrorsInterface.d.ts.map +1 -1
- package/dist/general/utils/caller.d.ts +34 -2
- package/dist/general/utils/caller.d.ts.map +1 -1
- package/dist/general/utils/caller.js +111 -12
- package/dist/general/utils/casting.d.ts +4 -5
- package/dist/general/utils/casting.d.ts.map +1 -1
- package/dist/general/utils/casting.js +4 -5
- package/dist/general/utils/helpers.d.ts +1 -0
- package/dist/general/utils/helpers.d.ts.map +1 -1
- package/dist/general/utils/helpers.js +40 -9
- package/dist/general/wallet/wallet.d.ts +1 -1
- package/dist/general/wallet/wallet.d.ts.map +1 -1
- package/dist/packages/coin/coin.d.ts +5 -1
- package/dist/packages/coin/coin.d.ts.map +1 -1
- package/dist/packages/coin/coin.js +7 -1
- package/dist/packages/farms/api/farmsApiCasting.js +27 -27
- package/dist/packages/farms/farms.d.ts +1 -1
- package/dist/packages/farms/farms.d.ts.map +1 -1
- package/dist/packages/farms/farmsStakedPosition.d.ts +1 -1
- package/dist/packages/farms/farmsStakedPosition.d.ts.map +1 -1
- package/dist/packages/farms/farmsStakingPool.d.ts +1 -1
- package/dist/packages/farms/farmsStakingPool.d.ts.map +1 -1
- package/dist/packages/faucet/api/faucetApi.d.ts +9 -17
- package/dist/packages/faucet/api/faucetApi.d.ts.map +1 -1
- package/dist/packages/faucet/api/faucetApi.js +44 -49
- package/dist/packages/faucet/api/faucetApiCasting.d.ts.map +1 -1
- package/dist/packages/faucet/api/faucetApiCasting.js +10 -7
- package/dist/packages/faucet/api/faucetApiCastingTypes.d.ts +1 -4
- package/dist/packages/faucet/api/faucetApiCastingTypes.d.ts.map +1 -1
- package/dist/packages/faucet/faucet.d.ts +1 -1
- package/dist/packages/faucet/faucet.d.ts.map +1 -1
- package/dist/packages/faucet/faucet.js +1 -1
- package/dist/packages/faucet/faucetTypes.d.ts +2 -3
- package/dist/packages/faucet/faucetTypes.d.ts.map +1 -1
- package/dist/packages/leveragedStaking/api/leveragedStakingApiCasting.js +3 -3
- package/dist/packages/multisig/multisig.d.ts +1 -1
- package/dist/packages/multisig/multisig.d.ts.map +1 -1
- package/dist/packages/nftAmm/nftAmm.d.ts +1 -1
- package/dist/packages/nftAmm/nftAmm.d.ts.map +1 -1
- package/dist/packages/perpetuals/api/perpetualsApi.d.ts +12 -203
- package/dist/packages/perpetuals/api/perpetualsApi.d.ts.map +1 -1
- package/dist/packages/perpetuals/api/perpetualsApi.js +926 -615
- package/dist/packages/perpetuals/api/perpetualsApiCasting.d.ts +10 -21
- package/dist/packages/perpetuals/api/perpetualsApiCasting.d.ts.map +1 -1
- package/dist/packages/perpetuals/api/perpetualsApiCasting.js +260 -238
- package/dist/packages/perpetuals/index.d.ts +1 -0
- package/dist/packages/perpetuals/index.d.ts.map +1 -1
- package/dist/packages/perpetuals/index.js +1 -0
- package/dist/packages/perpetuals/perpetuals.d.ts +830 -28
- package/dist/packages/perpetuals/perpetuals.d.ts.map +1 -1
- package/dist/packages/perpetuals/perpetuals.js +1013 -70
- package/dist/packages/perpetuals/perpetualsAccount.d.ts +754 -170
- package/dist/packages/perpetuals/perpetualsAccount.d.ts.map +1 -1
- package/dist/packages/perpetuals/perpetualsAccount.js +1270 -312
- package/dist/packages/perpetuals/perpetualsCastingTypes.d.ts +82 -149
- package/dist/packages/perpetuals/perpetualsCastingTypes.d.ts.map +1 -1
- package/dist/packages/perpetuals/perpetualsMarket.d.ts +327 -27
- package/dist/packages/perpetuals/perpetualsMarket.d.ts.map +1 -1
- package/dist/packages/perpetuals/perpetualsMarket.js +392 -79
- package/dist/packages/perpetuals/perpetualsTypes.d.ts +2662 -318
- package/dist/packages/perpetuals/perpetualsTypes.d.ts.map +1 -1
- package/dist/packages/perpetuals/perpetualsTypes.js +92 -82
- package/dist/packages/perpetuals/perpetualsVault.d.ts +438 -0
- package/dist/packages/perpetuals/perpetualsVault.d.ts.map +1 -0
- package/dist/packages/perpetuals/perpetualsVault.js +601 -0
- package/dist/packages/pools/api/poolsApiCasting.js +3 -3
- package/dist/packages/pools/pool.d.ts +1 -1
- package/dist/packages/pools/pool.d.ts.map +1 -1
- package/dist/packages/pools/pools.d.ts +1 -1
- package/dist/packages/pools/pools.d.ts.map +1 -1
- package/dist/packages/rewards/index.d.ts +2 -0
- package/dist/packages/rewards/index.d.ts.map +1 -0
- package/dist/packages/rewards/index.js +17 -0
- package/dist/packages/rewards/rewards.d.ts +21 -0
- package/dist/packages/rewards/rewards.d.ts.map +1 -0
- package/dist/packages/rewards/rewards.js +65 -0
- package/dist/packages/rewards/rewardsTypes.d.ts +169 -0
- package/dist/packages/rewards/rewardsTypes.d.ts.map +1 -0
- package/dist/packages/router/api/routerApiCasting.js +1 -1
- package/dist/packages/staking/api/stakingApiCasting.js +3 -3
- package/dist/packages/staking/staking.d.ts +1 -1
- package/dist/packages/staking/staking.d.ts.map +1 -1
- package/dist/packages/sui/sui.d.ts +1 -1
- package/dist/packages/sui/sui.d.ts.map +1 -1
- package/dist/packages/suiFrens/api/suiFrensApiCasting.js +4 -4
- package/dist/packages/suiFrens/stakedSuiFren.d.ts +1 -1
- package/dist/packages/suiFrens/stakedSuiFren.d.ts.map +1 -1
- package/dist/packages/suiFrens/suiFren.d.ts +1 -1
- package/dist/packages/suiFrens/suiFren.d.ts.map +1 -1
- package/dist/packages/suiFrens/suiFrens.d.ts +1 -1
- package/dist/packages/suiFrens/suiFrens.d.ts.map +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -1
- package/package.json +1 -1
- package/dist/packages/oracle/api/oracleApi.d.ts +0 -21
- package/dist/packages/oracle/api/oracleApi.d.ts.map +0 -1
- package/dist/packages/oracle/api/oracleApi.js +0 -76
- package/dist/packages/oracle/api/oracleApiCasting.d.ts +0 -6
- package/dist/packages/oracle/api/oracleApiCasting.d.ts.map +0 -1
- package/dist/packages/oracle/api/oracleApiCasting.js +0 -25
- package/dist/packages/oracle/oracle.d.ts +0 -15
- package/dist/packages/oracle/oracle.d.ts.map +0 -1
- package/dist/packages/oracle/oracle.js +0 -46
- package/dist/packages/oracle/oracleCastingTypes.d.ts +0 -11
- package/dist/packages/oracle/oracleCastingTypes.d.ts.map +0 -1
- package/dist/packages/oracle/oracleTypes.d.ts +0 -10
- package/dist/packages/oracle/oracleTypes.d.ts.map +0 -1
- package/dist/packages/oracle/oracleTypes.js +0 -2
- /package/dist/packages/{oracle/oracleCastingTypes.js → rewards/rewardsTypes.js} +0 -0
|
@@ -8,6 +8,17 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
12
|
+
var t = {};
|
|
13
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
14
|
+
t[p] = s[p];
|
|
15
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
16
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
17
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
18
|
+
t[p[i]] = s[p[i]];
|
|
19
|
+
}
|
|
20
|
+
return t;
|
|
21
|
+
};
|
|
11
22
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
23
|
exports.Caller = void 0;
|
|
13
24
|
const transactions_1 = require("@mysten/sui/transactions");
|
|
@@ -41,15 +52,22 @@ class Caller {
|
|
|
41
52
|
// =========================================================================
|
|
42
53
|
// Private Methods
|
|
43
54
|
// =========================================================================
|
|
55
|
+
static nullToUndefined(value) {
|
|
56
|
+
// Reviver already converts null -> undefined for object properties,
|
|
57
|
+
// but this ensures top-level `null` also becomes `undefined`.
|
|
58
|
+
return value === null ? undefined : value;
|
|
59
|
+
}
|
|
44
60
|
static fetchResponseToType(response, disableBigIntJsonParsing) {
|
|
45
61
|
return __awaiter(this, void 0, void 0, function* () {
|
|
46
62
|
if (!response.ok)
|
|
47
63
|
throw new Error(yield response.text());
|
|
64
|
+
// Keep your existing stringify->parse approach so BigInt parsing stays consistent.
|
|
48
65
|
const json = JSON.stringify(yield response.json());
|
|
49
66
|
const output = disableBigIntJsonParsing
|
|
50
|
-
? JSON.parse(json)
|
|
51
|
-
: helpers_1.Helpers.parseJsonWithBigint(json);
|
|
52
|
-
|
|
67
|
+
? JSON.parse(json, (_key, value) => value === null ? undefined : value)
|
|
68
|
+
: helpers_1.Helpers.parseJsonWithBigint(json /* unsafeStringNumberConversion */);
|
|
69
|
+
// Ensure top-level `null` becomes `undefined` too.
|
|
70
|
+
return Caller.nullToUndefined(output);
|
|
53
71
|
});
|
|
54
72
|
}
|
|
55
73
|
// =========================================================================
|
|
@@ -85,29 +103,43 @@ class Caller {
|
|
|
85
103
|
})();
|
|
86
104
|
}
|
|
87
105
|
const apiCallUrl = this.urlForApiCall(url);
|
|
88
|
-
const headers = Object.assign({
|
|
89
|
-
// "Content-Type": "text/plain",
|
|
90
|
-
"Content-Type": "application/json" }, (this.config.accessToken
|
|
106
|
+
const headers = Object.assign({ "Content-Type": "application/json" }, (this.config.accessToken
|
|
91
107
|
? { Authorization: `Bearer ${this.config.accessToken}` }
|
|
92
108
|
: {}));
|
|
93
109
|
const uncastResponse = yield (body === undefined
|
|
94
|
-
? fetch(apiCallUrl, {
|
|
95
|
-
headers,
|
|
96
|
-
signal,
|
|
97
|
-
})
|
|
110
|
+
? fetch(apiCallUrl, { headers, signal })
|
|
98
111
|
: fetch(apiCallUrl, {
|
|
99
112
|
method: "POST",
|
|
100
113
|
body: JSON.stringify(body),
|
|
101
114
|
headers,
|
|
102
115
|
signal,
|
|
103
116
|
}));
|
|
104
|
-
const response = yield Caller.fetchResponseToType(uncastResponse, options === null || options === void 0 ? void 0 : options.disableBigIntJsonParsing);
|
|
117
|
+
const response = yield Caller.fetchResponseToType(uncastResponse, !!(options === null || options === void 0 ? void 0 : options.disableBigIntJsonParsing));
|
|
105
118
|
return response;
|
|
106
119
|
});
|
|
107
120
|
}
|
|
108
121
|
fetchApiTransaction(url, body, signal, options) {
|
|
109
122
|
return __awaiter(this, void 0, void 0, function* () {
|
|
110
|
-
|
|
123
|
+
const txKind = yield this.fetchApi(url, body, signal, options);
|
|
124
|
+
const tx = (options === null || options === void 0 ? void 0 : options.txKind)
|
|
125
|
+
? transactions_1.Transaction.fromKind(txKind)
|
|
126
|
+
: transactions_1.Transaction.from(txKind);
|
|
127
|
+
// NOTE: is this needed ?
|
|
128
|
+
if (body === null || body === void 0 ? void 0 : body.walletAddress) {
|
|
129
|
+
tx.setSender(body.walletAddress);
|
|
130
|
+
}
|
|
131
|
+
return tx;
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
fetchApiTxObject(url, body, signal, options) {
|
|
135
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
136
|
+
const response = yield this.fetchApi(url, body, signal, options);
|
|
137
|
+
const tx = transactions_1.Transaction.fromKind(response.txKind);
|
|
138
|
+
if (body === null || body === void 0 ? void 0 : body.walletAddress) {
|
|
139
|
+
tx.setSender(body.walletAddress);
|
|
140
|
+
}
|
|
141
|
+
const { txKind } = response, rest = __rest(response, ["txKind"]);
|
|
142
|
+
return Object.assign(Object.assign({}, rest), { tx });
|
|
111
143
|
});
|
|
112
144
|
}
|
|
113
145
|
fetchApiEvents(url, body, signal, options) {
|
|
@@ -128,5 +160,72 @@ class Caller {
|
|
|
128
160
|
};
|
|
129
161
|
});
|
|
130
162
|
}
|
|
163
|
+
/**
|
|
164
|
+
* Open a generic websocket stream.
|
|
165
|
+
* - Automatically parses inbound JSON via `Helpers.parseJsonWithBigint`.
|
|
166
|
+
* - Automatically enables BigInt -> "123n" serialization (same one-liner as `fetchApi`).
|
|
167
|
+
*/
|
|
168
|
+
openWsStream(args) {
|
|
169
|
+
const { path, onMessage, onOpen, onError, onClose } = args;
|
|
170
|
+
/**
|
|
171
|
+
* Build a WS URL using the same base the HTTP calls use, plus this.apiEndpoint and apiUrlPrefix.
|
|
172
|
+
* Mirrors `urlForApiCall`, but swaps http(s) -> ws(s).
|
|
173
|
+
*/
|
|
174
|
+
const buildWsUrl = (path) => {
|
|
175
|
+
if (this.apiBaseUrl === undefined) {
|
|
176
|
+
throw new Error("no apiBaseUrl: unable to open websocket");
|
|
177
|
+
}
|
|
178
|
+
// Normalize base & path
|
|
179
|
+
const baseHttp = this.apiBaseUrl.replace(/\/+$/, "");
|
|
180
|
+
const baseWs = baseHttp.replace(/^http(s?):\/\//, "ws$1://");
|
|
181
|
+
// Prefix with endpoint + service prefix (same pattern as fetch)
|
|
182
|
+
const prefix = `${this.apiEndpoint}/${this.apiUrlPrefix}`;
|
|
183
|
+
const normalizedPrefix = prefix.replace(/\/+$/, "");
|
|
184
|
+
const normalizedPath = path.startsWith("/") ? path.slice(1) : path;
|
|
185
|
+
return `${baseWs}/${normalizedPrefix}${normalizedPath ? "/" + normalizedPath : ""}`;
|
|
186
|
+
};
|
|
187
|
+
const url = buildWsUrl(path);
|
|
188
|
+
const ws = new WebSocket(url);
|
|
189
|
+
ws.addEventListener("open", (ev) => onOpen === null || onOpen === void 0 ? void 0 : onOpen(ev));
|
|
190
|
+
ws.addEventListener("error", (ev) => onError === null || onError === void 0 ? void 0 : onError(ev));
|
|
191
|
+
ws.addEventListener("close", (ev) => onClose === null || onClose === void 0 ? void 0 : onClose(ev));
|
|
192
|
+
ws.addEventListener("message", (ev) => {
|
|
193
|
+
// Auto BigInt parsing for any "123n" encountered
|
|
194
|
+
try {
|
|
195
|
+
const data = helpers_1.Helpers.parseJsonWithBigint(ev.data);
|
|
196
|
+
onMessage === null || onMessage === void 0 ? void 0 : onMessage(data);
|
|
197
|
+
}
|
|
198
|
+
catch (_a) {
|
|
199
|
+
// Optionally surface raw text here
|
|
200
|
+
}
|
|
201
|
+
});
|
|
202
|
+
// Match fetchApi’s BigInt JSON behavior (install on-demand before send)
|
|
203
|
+
const enableBigIntJson = () => {
|
|
204
|
+
(() => {
|
|
205
|
+
BigInt.prototype.toJSON = function () {
|
|
206
|
+
return this.toString() + "n";
|
|
207
|
+
};
|
|
208
|
+
})();
|
|
209
|
+
};
|
|
210
|
+
const send = (value) => {
|
|
211
|
+
if (ws.readyState !== WebSocket.OPEN)
|
|
212
|
+
throw new Error("WebSocket is not open");
|
|
213
|
+
enableBigIntJson();
|
|
214
|
+
ws.send(JSON.stringify(value));
|
|
215
|
+
};
|
|
216
|
+
// const sendRaw = (raw: string) => {
|
|
217
|
+
// if (ws.readyState !== WebSocket.OPEN)
|
|
218
|
+
// throw new Error("WebSocket is not open");
|
|
219
|
+
// // If caller already stringified with BigInt, assume they handled JSON shape
|
|
220
|
+
// ws.send(raw);
|
|
221
|
+
// };
|
|
222
|
+
const close = () => ws.close();
|
|
223
|
+
return {
|
|
224
|
+
ws,
|
|
225
|
+
send,
|
|
226
|
+
// sendRaw,
|
|
227
|
+
close,
|
|
228
|
+
};
|
|
229
|
+
}
|
|
131
230
|
}
|
|
132
231
|
exports.Caller = Caller;
|
|
@@ -13,7 +13,6 @@ import { FarmsApiCasting } from "../../packages/farms/api/farmsApiCasting";
|
|
|
13
13
|
import { LeveragedStakingApiCasting } from "../../packages/leveragedStaking/api/leveragedStakingApiCasting";
|
|
14
14
|
import { SuiObjectResponse } from "@mysten/sui/client";
|
|
15
15
|
import { NftsApiCasting } from "../nfts/nftsApiCasting";
|
|
16
|
-
import { OracleApiCasting } from "../../packages/oracle/api/oracleApiCasting";
|
|
17
16
|
/**
|
|
18
17
|
* A central utility class for casting and conversion routines across
|
|
19
18
|
* different Aftermath modules. Provides both direct numeric transformations
|
|
@@ -52,10 +51,6 @@ export declare class Casting {
|
|
|
52
51
|
* Casting utilities for perpetuals/futures data.
|
|
53
52
|
*/
|
|
54
53
|
static perpetuals: typeof PerpetualsApiCasting;
|
|
55
|
-
/**
|
|
56
|
-
* Casting utilities for oracle-based data or price feed objects.
|
|
57
|
-
*/
|
|
58
|
-
static oracle: typeof OracleApiCasting;
|
|
59
54
|
/**
|
|
60
55
|
* Casting utilities for farming data (yield farms, locked positions, etc.).
|
|
61
56
|
*/
|
|
@@ -76,6 +71,10 @@ export declare class Casting {
|
|
|
76
71
|
* The maximum unsigned 64-bit integer value as a bigint (0xFFFFFFFFFFFFFFFF).
|
|
77
72
|
*/
|
|
78
73
|
static u64MaxBigInt: bigint;
|
|
74
|
+
/**
|
|
75
|
+
* The maximum signed 64-bit integer value as a bigint.
|
|
76
|
+
*/
|
|
77
|
+
static i64MaxBigInt: bigint;
|
|
79
78
|
/**
|
|
80
79
|
* Converts a floating-point number to a fixed bigint with 18 decimals.
|
|
81
80
|
* For example, `1.23` => `1230000000000000000n` if we consider 18 decimals.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"casting.d.ts","sourceRoot":"","sources":["../../../src/general/utils/casting.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAO,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAC;AACjF,OAAO,EAAE,IAAI,EAAU,UAAU,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,oDAAoD,CAAC;AAC1F,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAE,0BAA0B,EAAE,MAAM,gEAAgE,CAAC;AAG5G,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"casting.d.ts","sourceRoot":"","sources":["../../../src/general/utils/casting.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,7 +16,6 @@ const farmsApiCasting_1 = require("../../packages/farms/api/farmsApiCasting");
|
|
|
16
16
|
const leveragedStakingApiCasting_1 = require("../../packages/leveragedStaking/api/leveragedStakingApiCasting");
|
|
17
17
|
const __1 = require("../..");
|
|
18
18
|
const nftsApiCasting_1 = require("../nfts/nftsApiCasting");
|
|
19
|
-
const oracleApiCasting_1 = require("../../packages/oracle/api/oracleApiCasting");
|
|
20
19
|
/**
|
|
21
20
|
* A central utility class for casting and conversion routines across
|
|
22
21
|
* different Aftermath modules. Provides both direct numeric transformations
|
|
@@ -105,10 +104,6 @@ Casting.router = routerApiCasting_1.RouterApiCasting;
|
|
|
105
104
|
* Casting utilities for perpetuals/futures data.
|
|
106
105
|
*/
|
|
107
106
|
Casting.perpetuals = perpetualsApiCasting_1.PerpetualsApiCasting;
|
|
108
|
-
/**
|
|
109
|
-
* Casting utilities for oracle-based data or price feed objects.
|
|
110
|
-
*/
|
|
111
|
-
Casting.oracle = oracleApiCasting_1.OracleApiCasting;
|
|
112
107
|
/**
|
|
113
108
|
* Casting utilities for farming data (yield farms, locked positions, etc.).
|
|
114
109
|
*/
|
|
@@ -132,6 +127,10 @@ Casting.IFixed = iFixedUtils_1.IFixedUtils;
|
|
|
132
127
|
* The maximum unsigned 64-bit integer value as a bigint (0xFFFFFFFFFFFFFFFF).
|
|
133
128
|
*/
|
|
134
129
|
Casting.u64MaxBigInt = BigInt("0xFFFFFFFFFFFFFFFF");
|
|
130
|
+
/**
|
|
131
|
+
* The maximum signed 64-bit integer value as a bigint.
|
|
132
|
+
*/
|
|
133
|
+
Casting.i64MaxBigInt = BigInt("9223372036854775807");
|
|
135
134
|
// =========================================================================
|
|
136
135
|
// Functions
|
|
137
136
|
// =========================================================================
|
|
@@ -203,6 +203,7 @@ export declare class Helpers {
|
|
|
203
203
|
* @returns The index of the maximum value, or -1 if the array is empty.
|
|
204
204
|
*/
|
|
205
205
|
static indexOfMax: (arr: any[]) => number;
|
|
206
|
+
private static uniqueObjectArray;
|
|
206
207
|
/**
|
|
207
208
|
* Returns a new array with unique elements from the input array,
|
|
208
209
|
* preserving the order of first occurrences.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/general/utils/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,qBAAqB,EAErB,iBAAiB,EACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACN,aAAa,EACb,OAAO,EAIP,QAAQ,EACR,QAAQ,EACR,UAAU,EAEV,aAAa,EACb,UAAU,EACV,QAAQ,EACR,cAAc,EACd,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/general/utils/helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,7 +16,6 @@ const eventsApiHelpers_1 = require("../apiHelpers/eventsApiHelpers");
|
|
|
16
16
|
const inspectionsApiHelpers_1 = require("../apiHelpers/inspectionsApiHelpers");
|
|
17
17
|
const objectsApiHelpers_1 = require("../apiHelpers/objectsApiHelpers");
|
|
18
18
|
const transactionsApiHelpers_1 = require("../apiHelpers/transactionsApiHelpers");
|
|
19
|
-
const casting_1 = require("./casting");
|
|
20
19
|
const utils_1 = require("@mysten/sui/utils");
|
|
21
20
|
const cryptography_1 = require("@mysten/sui/cryptography");
|
|
22
21
|
const ed25519_1 = require("@mysten/sui/keypairs/ed25519");
|
|
@@ -28,6 +27,17 @@ const secp256r1_1 = require("@mysten/sui/keypairs/secp256r1");
|
|
|
28
27
|
* extraction, array transformations, slippage adjustments, and Move error parsing.
|
|
29
28
|
*/
|
|
30
29
|
class Helpers {
|
|
30
|
+
static uniqueObjectArray(arr) {
|
|
31
|
+
const seen = new Set();
|
|
32
|
+
return arr.filter((obj) => {
|
|
33
|
+
const str = JSON.stringify(obj);
|
|
34
|
+
if (seen.has(str)) {
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
seen.add(str);
|
|
38
|
+
return true;
|
|
39
|
+
});
|
|
40
|
+
}
|
|
31
41
|
/**
|
|
32
42
|
* Combines two arrays into a single array of pairs. The result length is the
|
|
33
43
|
* minimum of the two input arrays' lengths.
|
|
@@ -161,6 +171,11 @@ class Helpers {
|
|
|
161
171
|
const { errorMessage } = inputs;
|
|
162
172
|
if (!errorMessage.toLowerCase().includes("moveabort"))
|
|
163
173
|
return undefined;
|
|
174
|
+
/*
|
|
175
|
+
MoveAbort(MoveLocation { module: ModuleId { address: 8d8946c2a433e2bf795414498d9f7b32e04aca8dbf35a20257542dc51406242b, name: Identifier("orderbook") }, function: 11, instruction: 117, function_name: Some("fill_market_order") }, 3005) in command 2
|
|
176
|
+
|
|
177
|
+
MoveAbort(MoveLocation { module: ModuleId { address: 7c995f9c0c0553c0f3bfac7cf3c8b85716f0ca522305586bd0168ca20aeed277, name: Identifier("clearing_house") }, function: 37, instruction: 17, function_name: Some("place_limit_order") }, 1) in command 1
|
|
178
|
+
*/
|
|
164
179
|
const moveErrorCode = (inputs) => {
|
|
165
180
|
const { errorMessage } = inputs;
|
|
166
181
|
const startIndex = errorMessage.lastIndexOf(",");
|
|
@@ -230,12 +245,21 @@ class Helpers {
|
|
|
230
245
|
static translateMoveErrorMessage(inputs) {
|
|
231
246
|
const { errorMessage, moveErrors } = inputs;
|
|
232
247
|
const parsed = this.parseMoveErrorMessage({ errorMessage });
|
|
233
|
-
if (!parsed ||
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
248
|
+
if (!parsed || !(parsed.packageId in moveErrors))
|
|
249
|
+
return undefined;
|
|
250
|
+
let error;
|
|
251
|
+
if (parsed.module in moveErrors[parsed.packageId] &&
|
|
252
|
+
parsed.errorCode in moveErrors[parsed.packageId][parsed.module]) {
|
|
253
|
+
error =
|
|
254
|
+
moveErrors[parsed.packageId][parsed.module][parsed.errorCode];
|
|
255
|
+
}
|
|
256
|
+
else if ("ANY" in moveErrors[parsed.packageId] &&
|
|
257
|
+
parsed.errorCode in moveErrors[parsed.packageId]["ANY"]) {
|
|
258
|
+
error = moveErrors[parsed.packageId]["ANY"][parsed.errorCode];
|
|
259
|
+
}
|
|
260
|
+
else
|
|
237
261
|
return undefined;
|
|
238
|
-
return Object.assign(Object.assign({}, parsed), { error
|
|
262
|
+
return Object.assign(Object.assign({}, parsed), { error });
|
|
239
263
|
}
|
|
240
264
|
}
|
|
241
265
|
exports.Helpers = Helpers;
|
|
@@ -450,6 +474,9 @@ Helpers.capitalizeOnlyFirstLetter = (str) => str.charAt(0).toUpperCase() + str.s
|
|
|
450
474
|
* @returns The parsed JSON object with BigInt conversions where applicable.
|
|
451
475
|
*/
|
|
452
476
|
Helpers.parseJsonWithBigint = (json, unsafeStringNumberConversion = false) => JSON.parse(json, (key, value) => {
|
|
477
|
+
// convert null -> undefined everywhere
|
|
478
|
+
if (value === null)
|
|
479
|
+
return undefined;
|
|
453
480
|
// handles bigint casting
|
|
454
481
|
if (typeof value === "string" && /^-?\d+n$/.test(value)) {
|
|
455
482
|
return BigInt(value.slice(0, -1));
|
|
@@ -520,7 +547,11 @@ Helpers.indexOfMax = (arr) => {
|
|
|
520
547
|
* @param arr - The original array.
|
|
521
548
|
* @returns An array of unique items.
|
|
522
549
|
*/
|
|
523
|
-
Helpers.uniqueArray = (arr) =>
|
|
550
|
+
Helpers.uniqueArray = (arr) => arr.length <= 0
|
|
551
|
+
? []
|
|
552
|
+
: typeof arr[0] === "object"
|
|
553
|
+
? _a.uniqueObjectArray(arr)
|
|
554
|
+
: [...new Set(arr)];
|
|
524
555
|
/**
|
|
525
556
|
* Returns a Promise that resolves after a specified number of milliseconds.
|
|
526
557
|
*
|
|
@@ -591,7 +622,7 @@ Helpers.filterObject = (obj, predicate) => Object.keys(obj).reduce((acc, key) =>
|
|
|
591
622
|
*/
|
|
592
623
|
Helpers.applySlippageBigInt = (amount, slippage) => {
|
|
593
624
|
return (amount -
|
|
594
|
-
BigInt(Math.floor(
|
|
625
|
+
BigInt(Math.floor((slippage / 100) *
|
|
595
626
|
Number(amount))));
|
|
596
627
|
};
|
|
597
628
|
/**
|
|
@@ -603,7 +634,7 @@ Helpers.applySlippageBigInt = (amount, slippage) => {
|
|
|
603
634
|
* @returns The float after applying slippage.
|
|
604
635
|
*/
|
|
605
636
|
Helpers.applySlippage = (amount, slippage) => {
|
|
606
|
-
return amount -
|
|
637
|
+
return amount - (slippage / 100) * amount;
|
|
607
638
|
};
|
|
608
639
|
/**
|
|
609
640
|
* Roughly checks if a string is a valid Sui type (e.g., "0x2::sui::SUI").
|
|
@@ -9,7 +9,7 @@ import { AftermathApi } from "../providers";
|
|
|
9
9
|
*/
|
|
10
10
|
export declare class Wallet extends Caller {
|
|
11
11
|
readonly address: SuiAddress;
|
|
12
|
-
|
|
12
|
+
readonly Provider?: AftermathApi | undefined;
|
|
13
13
|
/**
|
|
14
14
|
* Creates a new `Wallet` instance for a specific address.
|
|
15
15
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../../src/general/wallet/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,mBAAmB,EACnB,OAAO,EACP,YAAY,EACZ,UAAU,EACV,sBAAsB,EACtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,MAAO,SAAQ,MAAM;aAShB,OAAO,EAAE,UAAU;
|
|
1
|
+
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../../src/general/wallet/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,mBAAmB,EACnB,OAAO,EACP,YAAY,EACZ,UAAU,EACV,sBAAsB,EACtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,MAAO,SAAQ,MAAM;aAShB,OAAO,EAAE,UAAU;aAEnB,QAAQ,CAAC,EAAE,YAAY;IAVxC;;;;;;OAMG;gBAEc,OAAO,EAAE,UAAU,EACnC,MAAM,CAAC,EAAE,YAAY,EACL,QAAQ,CAAC,EAAE,YAAY,YAAA;IASxC;;;;;;;;;;;;;;;;;OAiBG;IACU,UAAU,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,QAAQ,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAIrE;;;;;;;;;;;;;;OAcG;IACU,WAAW,CAAC,MAAM,EAAE;QAChC,KAAK,EAAE,QAAQ,EAAE,CAAC;KAClB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAOtB;;;;;;;;;;;;OAYG;IACU,cAAc,IAAI,OAAO,CAAC,cAAc,CAAC;IAUtD;;;;;;;;;;;;OAYG;IACU,mBAAmB,CAC/B,MAAM,EAAE,mBAAmB,GACzB,OAAO,CAAC,sBAAsB,CAAC;CAMlC"}
|
|
@@ -20,7 +20,7 @@ import { CoinMetadata } from "@mysten/sui/client";
|
|
|
20
20
|
*/
|
|
21
21
|
export declare class Coin extends Caller {
|
|
22
22
|
readonly coinType: CoinType | undefined;
|
|
23
|
-
|
|
23
|
+
readonly Provider?: AftermathApi | undefined;
|
|
24
24
|
/**
|
|
25
25
|
* Static configuration and defaults for Sui coin types, including the standard
|
|
26
26
|
* SUI coin type, default decimals, and coin object type path.
|
|
@@ -38,6 +38,10 @@ export declare class Coin extends Caller {
|
|
|
38
38
|
* The canonical coin object type path for Sui's Move module, used in verifying coin objects.
|
|
39
39
|
*/
|
|
40
40
|
coinObjectType: string;
|
|
41
|
+
/**
|
|
42
|
+
* The maximum number of decimals
|
|
43
|
+
*/
|
|
44
|
+
maxCoinDecimals: number;
|
|
41
45
|
/**
|
|
42
46
|
* Default decimals for various blockchains or ecosystems. For instance,
|
|
43
47
|
* "sui" => 9, "evm" => 18, etc.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coin.d.ts","sourceRoot":"","sources":["../../../src/packages/coin/coin.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,aAAa,EACb,OAAO,EACP,YAAY,EACZ,WAAW,EACX,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,eAAe,EACf,UAAU,EACV,qBAAqB,EACrB,QAAQ,EACR,OAAO,EAGP,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAGpD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,IAAK,SAAQ,MAAM;
|
|
1
|
+
{"version":3,"file":"coin.d.ts","sourceRoot":"","sources":["../../../src/packages/coin/coin.ts"],"names":[],"mappings":"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"}
|
|
@@ -145,7 +145,9 @@ class Coin extends caller_1.Caller {
|
|
|
145
145
|
*/
|
|
146
146
|
getCoinMetadatas(inputs) {
|
|
147
147
|
return __awaiter(this, void 0, void 0, function* () {
|
|
148
|
-
return this.fetchApi("metadata",
|
|
148
|
+
return this.fetchApi("metadata", {
|
|
149
|
+
coins: inputs.coins.map((coin) => helpers_1.Helpers.addLeadingZeroesToType(coin)),
|
|
150
|
+
});
|
|
149
151
|
});
|
|
150
152
|
}
|
|
151
153
|
/**
|
|
@@ -234,6 +236,10 @@ Coin.constants = {
|
|
|
234
236
|
* The canonical coin object type path for Sui's Move module, used in verifying coin objects.
|
|
235
237
|
*/
|
|
236
238
|
coinObjectType: "0x0000000000000000000000000000000000000000000000000000000000000002::coin::Coin",
|
|
239
|
+
/**
|
|
240
|
+
* The maximum number of decimals
|
|
241
|
+
*/
|
|
242
|
+
maxCoinDecimals: 18,
|
|
237
243
|
/**
|
|
238
244
|
* Default decimals for various blockchains or ecosystems. For instance,
|
|
239
245
|
* "sui" => 9, "evm" => 18, etc.
|