@typus/typus-sdk 1.8.41 → 1.8.43-upgrade
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/src/auto-bid/view-function.d.ts +0 -2
- package/dist/src/auto-bid/view-function.js +7 -76
- package/dist/src/constants/constant.d.ts +0 -3
- package/dist/src/constants/constant.js +1 -8
- package/dist/src/constants/token.d.ts +1 -1
- package/dist/src/constants/token.js +12 -0
- package/dist/src/dice/fetch.d.ts +0 -4
- package/dist/src/dice/fetch.js +59 -116
- package/dist/src/typus/airdrop/view-function.js +5 -8
- package/dist/src/typus/leaderboard/view-function.js +5 -8
- package/dist/src/typus/tails-staking/view-function.js +10 -14
- package/dist/src/typus/user/view-function.js +5 -6
- package/dist/src/typus-dov-single-v2/function/bidding.d.ts +4 -3
- package/dist/src/typus-dov-single-v2/function/bidding.js +10 -11
- package/dist/src/typus-dov-single-v2/function/token.js +1 -1
- package/dist/src/typus-dov-single-v2/history/index.d.ts +0 -1
- package/dist/src/typus-dov-single-v2/history/index.js +0 -1
- package/dist/src/typus-dov-single-v2/history/user-history.d.ts +2 -3
- package/dist/src/typus-dov-single-v2/history/user-history.js +122 -184
- package/dist/src/typus-dov-single-v2/otc-entry.js +5 -6
- package/dist/src/typus-dov-single-v2/user-entry.d.ts +1 -1
- package/dist/src/typus-dov-single-v2/view-function.js +29 -27
- package/dist/src/typus-hedge/view-function.js +10 -10
- package/dist/src/typus-launch/airdrop/view-function.js +3 -5
- package/dist/src/typus-launch/auction/view-function.js +17 -16
- package/dist/src/typus-launch/funding-vault/view-function.js +20 -18
- package/dist/src/typus-launch/improvement-proposal/view-function.js +17 -18
- package/dist/src/typus-launch/ve-typus/view-function.js +15 -15
- package/dist/src/typus-safu/view-function.js +13 -13
- package/dist/src/utils/api/price.js +1 -1
- package/dist/src/utils/graphQl.d.ts +24 -0
- package/dist/src/utils/graphQl.js +129 -0
- package/dist/src/utils/index.d.ts +1 -0
- package/dist/src/utils/index.js +1 -0
- package/dist/src/utils/oracle.js +13 -14
- package/dist/src/utils/pyth/constant.js +4 -0
- package/dist/src/utils/sponsoredTx.d.ts +2 -2
- package/dist/src/utils/typusConfig.d.ts +4 -0
- package/dist/src/utils/typusConfig.js +33 -31
- package/package.json +9 -10
- package/dist/src/dice/view-function.d.ts +0 -1
- package/dist/src/dice/view-function.js +0 -20
- package/dist/src/typus-dov-single-v2/history/vault-history.d.ts +0 -123
- package/dist/src/typus-dov-single-v2/history/vault-history.js +0 -307
- package/dist/src/typus-nft/fetch.d.ts +0 -70
- package/dist/src/typus-nft/fetch.js +0 -631
- package/dist/src/typus-nft/index.d.ts +0 -2
- package/dist/src/typus-nft/index.js +0 -18
- package/dist/src/typus-nft/user-entry.d.ts +0 -57
- package/dist/src/typus-nft/user-entry.js +0 -161
|
@@ -40,9 +40,7 @@ exports.getVeTypus = getVeTypus;
|
|
|
40
40
|
exports.getReports = getReports;
|
|
41
41
|
exports.fetchVeTypusInfo = fetchVeTypusInfo;
|
|
42
42
|
var transactions_1 = require("@mysten/sui/transactions");
|
|
43
|
-
var client_1 = require("@mysten/sui/client");
|
|
44
43
|
var bcs_1 = require("@mysten/bcs");
|
|
45
|
-
var constants_1 = require("../../../src/constants");
|
|
46
44
|
var utils_1 = require("../../../src/utils");
|
|
47
45
|
function getVeTypus(config, input) {
|
|
48
46
|
return __awaiter(this, void 0, void 0, function () {
|
|
@@ -50,16 +48,16 @@ function getVeTypus(config, input) {
|
|
|
50
48
|
return __generator(this, function (_a) {
|
|
51
49
|
switch (_a.label) {
|
|
52
50
|
case 0:
|
|
53
|
-
provider =
|
|
51
|
+
provider = config.gRpcClient();
|
|
54
52
|
transaction = new transactions_1.Transaction();
|
|
55
53
|
transaction.moveCall({
|
|
56
54
|
target: "".concat(config.package.launch.veTypus, "::ve_typus::get_ve_typus_bcs"),
|
|
57
55
|
arguments: [transaction.object(config.registry.launch.veTypus), transaction.pure.address(input.user)],
|
|
58
56
|
});
|
|
59
|
-
return [4 /*yield*/, provider.
|
|
57
|
+
return [4 /*yield*/, provider.simulateTransaction({ transaction: transaction })];
|
|
60
58
|
case 1:
|
|
61
59
|
devInspectTransactionBlockResult = _a.sent();
|
|
62
|
-
bytes = devInspectTransactionBlockResult.
|
|
60
|
+
bytes = devInspectTransactionBlockResult.commandResults[0].returnValues[0].bcs;
|
|
63
61
|
reader = new bcs_1.BcsReader(new Uint8Array(bytes));
|
|
64
62
|
reader.readULEB();
|
|
65
63
|
return [2 /*return*/, reader.readVec(function (reader) {
|
|
@@ -82,7 +80,7 @@ function getReports(config, input) {
|
|
|
82
80
|
return __generator(this, function (_a) {
|
|
83
81
|
switch (_a.label) {
|
|
84
82
|
case 0:
|
|
85
|
-
provider =
|
|
83
|
+
provider = config.gRpcClient();
|
|
86
84
|
transaction = new transactions_1.Transaction();
|
|
87
85
|
input.tsMss.forEach(function (tsMs) {
|
|
88
86
|
transaction.moveCall({
|
|
@@ -90,13 +88,14 @@ function getReports(config, input) {
|
|
|
90
88
|
arguments: [transaction.object(config.registry.launch.veTypus), transaction.pure.u64(tsMs)],
|
|
91
89
|
});
|
|
92
90
|
});
|
|
93
|
-
return [4 /*yield*/, provider.
|
|
91
|
+
return [4 /*yield*/, provider.simulateTransaction({ transaction: transaction, checksEnabled: false, include: { commandResults: true } })];
|
|
94
92
|
case 1:
|
|
95
|
-
results = (_a.sent())
|
|
93
|
+
results = (_a.sent())
|
|
94
|
+
.commandResults;
|
|
96
95
|
// @ts-ignore
|
|
97
96
|
return [2 /*return*/, results === null || results === void 0 ? void 0 : results.map(function (result) {
|
|
98
97
|
// @ts-ignore
|
|
99
|
-
var reader = new bcs_1.BcsReader(new Uint8Array(result.returnValues[0]
|
|
98
|
+
var reader = new bcs_1.BcsReader(new Uint8Array(result.returnValues[0].bcs));
|
|
100
99
|
reader.readULEB();
|
|
101
100
|
return {
|
|
102
101
|
totalVeTypusAmount: reader.read64(),
|
|
@@ -113,7 +112,7 @@ function fetchVeTypusInfo(config, input) {
|
|
|
113
112
|
return __generator(this, function (_a) {
|
|
114
113
|
switch (_a.label) {
|
|
115
114
|
case 0:
|
|
116
|
-
provider =
|
|
115
|
+
provider = config.gRpcClient();
|
|
117
116
|
transaction = new transactions_1.Transaction();
|
|
118
117
|
transaction.moveCall({
|
|
119
118
|
target: "".concat(config.package.launch.veTypus, "::ve_typus::get_report"),
|
|
@@ -133,17 +132,18 @@ function fetchVeTypusInfo(config, input) {
|
|
|
133
132
|
],
|
|
134
133
|
});
|
|
135
134
|
}
|
|
136
|
-
return [4 /*yield*/, provider.
|
|
135
|
+
return [4 /*yield*/, provider.simulateTransaction({ transaction: transaction, checksEnabled: false, include: { commandResults: true } })];
|
|
137
136
|
case 1:
|
|
138
|
-
results = (_a.sent())
|
|
139
|
-
|
|
137
|
+
results = (_a.sent())
|
|
138
|
+
.commandResults;
|
|
139
|
+
reader = new bcs_1.BcsReader(new Uint8Array(results[0].returnValues[0].bcs));
|
|
140
140
|
reader.readULEB();
|
|
141
141
|
totalVeTypusAmount = reader.read64();
|
|
142
142
|
totalStakedTypusAmount = reader.read64();
|
|
143
143
|
averageLockUpTime = ((BigInt(totalVeTypusAmount) * BigInt(4 * 365 * 24 * 60 * 60 * 1000)) /
|
|
144
144
|
BigInt(totalStakedTypusAmount)).toString();
|
|
145
145
|
if (input.user) {
|
|
146
|
-
reader_1 = new bcs_1.BcsReader(new Uint8Array(results[1].returnValues[0]
|
|
146
|
+
reader_1 = new bcs_1.BcsReader(new Uint8Array(results[1].returnValues[0].bcs));
|
|
147
147
|
reader_1.readULEB();
|
|
148
148
|
veTypus = reader_1.readVec(function (reader) {
|
|
149
149
|
reader.readULEB();
|
|
@@ -156,7 +156,7 @@ function fetchVeTypusInfo(config, input) {
|
|
|
156
156
|
};
|
|
157
157
|
});
|
|
158
158
|
// @ts-ignore
|
|
159
|
-
reader_1 = new bcs_1.BcsReader(new Uint8Array(results[2].returnValues[0]
|
|
159
|
+
reader_1 = new bcs_1.BcsReader(new Uint8Array(results[2].returnValues[0].bcs));
|
|
160
160
|
veTypusAmount = reader_1.read64();
|
|
161
161
|
return [2 /*return*/, {
|
|
162
162
|
totalVeTypusAmount: totalVeTypusAmount,
|
|
@@ -40,10 +40,8 @@ exports.getBigVectorData = getBigVectorData;
|
|
|
40
40
|
exports.getVaultData = getVaultData;
|
|
41
41
|
exports.getShareData = getShareData;
|
|
42
42
|
var transactions_1 = require("@mysten/sui/transactions");
|
|
43
|
-
var client_1 = require("@mysten/sui/client");
|
|
44
43
|
var bcs_1 = require("@mysten/bcs");
|
|
45
44
|
var utils_1 = require("../../src/utils");
|
|
46
|
-
var constants_1 = require("../../src/constants");
|
|
47
45
|
function getBigVectorData(config, bigVector) {
|
|
48
46
|
return __awaiter(this, void 0, void 0, function () {
|
|
49
47
|
var provider, results, i, df, result;
|
|
@@ -51,17 +49,17 @@ function getBigVectorData(config, bigVector) {
|
|
|
51
49
|
return __generator(this, function (_b) {
|
|
52
50
|
switch (_b.label) {
|
|
53
51
|
case 0:
|
|
54
|
-
provider =
|
|
52
|
+
provider = config.gRpcClient();
|
|
55
53
|
results = [];
|
|
56
54
|
i = 0;
|
|
57
55
|
_b.label = 1;
|
|
58
56
|
case 1:
|
|
59
57
|
if (!(i <= Number(bigVector.slice_idx))) return [3 /*break*/, 4];
|
|
60
|
-
return [4 /*yield*/, provider.
|
|
58
|
+
return [4 /*yield*/, provider.getDynamicField({
|
|
61
59
|
parentId: bigVector.id,
|
|
62
60
|
name: {
|
|
63
61
|
type: "u64",
|
|
64
|
-
|
|
62
|
+
bcs: bcs_1.bcs.u64().serialize(i).toBytes(),
|
|
65
63
|
},
|
|
66
64
|
})];
|
|
67
65
|
case 2:
|
|
@@ -83,17 +81,18 @@ function getVaultData(config, input) {
|
|
|
83
81
|
return __generator(this, function (_a) {
|
|
84
82
|
switch (_a.label) {
|
|
85
83
|
case 0:
|
|
86
|
-
provider =
|
|
84
|
+
provider = config.gRpcClient();
|
|
87
85
|
transaction = new transactions_1.Transaction();
|
|
88
86
|
transaction.moveCall({
|
|
89
87
|
target: "".concat(config.package.safu, "::view_function::get_vault_data_bcs"),
|
|
90
88
|
typeArguments: ["".concat(config.package.framework, "::vault::TypusBidReceipt")],
|
|
91
89
|
arguments: [transaction.object(config.registry.safu.safu), transaction.pure.vector("u64", input.indexes)],
|
|
92
90
|
});
|
|
93
|
-
return [4 /*yield*/, provider.
|
|
91
|
+
return [4 /*yield*/, provider.simulateTransaction({ transaction: transaction, checksEnabled: false, include: { commandResults: true } })];
|
|
94
92
|
case 1:
|
|
95
|
-
results = (_a.sent())
|
|
96
|
-
|
|
93
|
+
results = (_a.sent())
|
|
94
|
+
.commandResults;
|
|
95
|
+
bytes = results[results.length - 1].returnValues[0].bcs;
|
|
97
96
|
reader = new bcs_1.BcsReader(new Uint8Array(bytes));
|
|
98
97
|
result = {};
|
|
99
98
|
reader.readVec(function (reader) {
|
|
@@ -216,7 +215,7 @@ function getShareData(config, input) {
|
|
|
216
215
|
return __generator(this, function (_a) {
|
|
217
216
|
switch (_a.label) {
|
|
218
217
|
case 0:
|
|
219
|
-
provider =
|
|
218
|
+
provider = config.gRpcClient();
|
|
220
219
|
transaction = new transactions_1.Transaction();
|
|
221
220
|
transaction.moveCall({
|
|
222
221
|
target: "".concat(config.package.safu, "::view_function::get_share_data_bcs"),
|
|
@@ -227,10 +226,11 @@ function getShareData(config, input) {
|
|
|
227
226
|
transaction.pure.vector("u64", input.indexes),
|
|
228
227
|
],
|
|
229
228
|
});
|
|
230
|
-
return [4 /*yield*/, provider.
|
|
229
|
+
return [4 /*yield*/, provider.simulateTransaction({ transaction: transaction, checksEnabled: false, include: { commandResults: true } })];
|
|
231
230
|
case 1:
|
|
232
|
-
results = (_a.sent())
|
|
233
|
-
|
|
231
|
+
results = (_a.sent())
|
|
232
|
+
.commandResults;
|
|
233
|
+
bytes = results[results.length - 1].returnValues[0].bcs;
|
|
234
234
|
reader = new bcs_1.BcsReader(new Uint8Array(bytes));
|
|
235
235
|
result = {};
|
|
236
236
|
reader.readVec(function (reader, i) {
|
|
@@ -290,7 +290,7 @@ var pythId = {
|
|
|
290
290
|
// "5fc11ffe4975b624be495be038da30e30bee2004d8ae6282b5364577ef4ca92c": "BLUB",
|
|
291
291
|
"765d2ba906dbc32ca17cc11f5310a89e9ee1f6420508c63861f2f8ba4ee34bb2": "XAU",
|
|
292
292
|
"925ca92ff005ae943c158e3563f59698ce7e75c5a8c8dd43303a0a154887b3e6": "USOIL",
|
|
293
|
-
|
|
293
|
+
f2fb02c32b055c805e7238d628e5e9dadef274376114eb1f012337cabe93871e: "XAG",
|
|
294
294
|
eba0732395fae9dec4bae12e52760b35fc1c5671e2da8b449c9af4efe5d54341: "WAL",
|
|
295
295
|
"4279e31cc369bbcc2faf022b382b080e32a8e689ff20fbc530d2a603eb6cd98b": "HYPE",
|
|
296
296
|
ec5d399846a9209f3fe5881d70aae9268c94339ff9817e8d18ff19fa05eea1c8: "XRP",
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { SuiGraphQLClient } from "@mysten/sui/graphql";
|
|
2
|
+
export declare function getDynamicObjectFields(graphQlClient: SuiGraphQLClient, parent: string, typeFilter?: string): Promise<any[] | undefined>;
|
|
3
|
+
export interface Event {
|
|
4
|
+
transaction: {
|
|
5
|
+
digest: string;
|
|
6
|
+
} | null;
|
|
7
|
+
transactionModule: {
|
|
8
|
+
name: string;
|
|
9
|
+
package: {
|
|
10
|
+
digest: string | null;
|
|
11
|
+
} | null;
|
|
12
|
+
} | null;
|
|
13
|
+
sender: {
|
|
14
|
+
address: string;
|
|
15
|
+
} | null;
|
|
16
|
+
timestamp: string | null;
|
|
17
|
+
contents: {
|
|
18
|
+
type: {
|
|
19
|
+
repr: string;
|
|
20
|
+
} | null;
|
|
21
|
+
json: unknown;
|
|
22
|
+
} | null;
|
|
23
|
+
}
|
|
24
|
+
export declare function getEvents(graphQlClient: SuiGraphQLClient, module: string | null, sender: string | null, beforeCursor?: string | null): Promise<Event[]>;
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
|
|
13
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
39
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
40
|
+
if (!m) return o;
|
|
41
|
+
var i = m.call(o), r, ar = [], e;
|
|
42
|
+
try {
|
|
43
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
44
|
+
}
|
|
45
|
+
catch (error) { e = { error: error }; }
|
|
46
|
+
finally {
|
|
47
|
+
try {
|
|
48
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
49
|
+
}
|
|
50
|
+
finally { if (e) throw e.error; }
|
|
51
|
+
}
|
|
52
|
+
return ar;
|
|
53
|
+
};
|
|
54
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
55
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
56
|
+
if (ar || !(i in from)) {
|
|
57
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
58
|
+
ar[i] = from[i];
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
62
|
+
};
|
|
63
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
64
|
+
exports.getDynamicObjectFields = getDynamicObjectFields;
|
|
65
|
+
exports.getEvents = getEvents;
|
|
66
|
+
var schema_1 = require("@mysten/sui/graphql/schema");
|
|
67
|
+
function getDynamicObjectFields(graphQlClient_1, parent_1) {
|
|
68
|
+
return __awaiter(this, arguments, void 0, function (graphQlClient, parent, typeFilter) {
|
|
69
|
+
var x;
|
|
70
|
+
var _a, _b, _c;
|
|
71
|
+
if (typeFilter === void 0) { typeFilter = ""; }
|
|
72
|
+
return __generator(this, function (_d) {
|
|
73
|
+
switch (_d.label) {
|
|
74
|
+
case 0: return [4 /*yield*/, graphQlClient.query({
|
|
75
|
+
query: dynamicFieldsQuery,
|
|
76
|
+
variables: {
|
|
77
|
+
id: parent,
|
|
78
|
+
},
|
|
79
|
+
})];
|
|
80
|
+
case 1:
|
|
81
|
+
x = _d.sent();
|
|
82
|
+
// @ts-ignore
|
|
83
|
+
return [2 /*return*/, (_c = (_b = (_a = x.data) === null || _a === void 0 ? void 0 : _a.address) === null || _b === void 0 ? void 0 : _b.dynamicFields) === null || _c === void 0 ? void 0 : _c.nodes.filter(function (a) { var _a, _b; return ((_a = a.value) === null || _a === void 0 ? void 0 : _a.contents) && ((_b = a.value) === null || _b === void 0 ? void 0 : _b.contents.type.repr.endsWith(typeFilter)); }).sort(function (a, b) { var _a, _b; return Number((_a = a.name) === null || _a === void 0 ? void 0 : _a.json) - Number((_b = b.name) === null || _b === void 0 ? void 0 : _b.json); }).map(function (x_1) {
|
|
84
|
+
var _a;
|
|
85
|
+
// @ts-ignore
|
|
86
|
+
var json = (_a = x_1.value) === null || _a === void 0 ? void 0 : _a.contents.json;
|
|
87
|
+
// console.dir(json, { depth: null });
|
|
88
|
+
return json;
|
|
89
|
+
})];
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
var dynamicFieldsQuery = (0, schema_1.graphql)("\n query ($id: SuiAddress!) {\n address(address: $id) {\n dynamicFields {\n nodes {\n name {\n ...Value\n }\n value {\n ... on MoveValue {\n ...Value\n }\n ... on MoveObject {\n contents {\n ...Value\n }\n }\n }\n }\n }\n }\n }\n\n fragment Value on MoveValue {\n type {\n repr\n }\n json\n }\n");
|
|
95
|
+
var eventsQuery = (0, schema_1.graphql)("\n query QueryEvents($type: String, $before: String, $sender: SuiAddress) {\n events(\n last: 50,\n before: $before\n filter: { type: $type, sender: $sender }\n ) {\n pageInfo {\n hasPreviousPage\n hasNextPage\n startCursor\n endCursor\n }\n edges { cursor }\n nodes {\n transaction { digest }\n transactionModule {\n name\n package { digest }\n }\n sender { address }\n timestamp\n contents {\n type { repr }\n json\n }\n }\n }\n }\n");
|
|
96
|
+
;
|
|
97
|
+
function getEvents(graphQlClient_1, module_1, sender_1) {
|
|
98
|
+
return __awaiter(this, arguments, void 0, function (graphQlClient, module, sender, beforeCursor) {
|
|
99
|
+
var hasPreviousPage, events, x;
|
|
100
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
101
|
+
if (beforeCursor === void 0) { beforeCursor = null; }
|
|
102
|
+
return __generator(this, function (_k) {
|
|
103
|
+
switch (_k.label) {
|
|
104
|
+
case 0:
|
|
105
|
+
hasPreviousPage = true;
|
|
106
|
+
events = [];
|
|
107
|
+
_k.label = 1;
|
|
108
|
+
case 1:
|
|
109
|
+
if (!hasPreviousPage) return [3 /*break*/, 3];
|
|
110
|
+
return [4 /*yield*/, graphQlClient.query({
|
|
111
|
+
query: eventsQuery,
|
|
112
|
+
variables: {
|
|
113
|
+
type: module,
|
|
114
|
+
before: beforeCursor,
|
|
115
|
+
sender: sender,
|
|
116
|
+
},
|
|
117
|
+
})];
|
|
118
|
+
case 2:
|
|
119
|
+
x = _k.sent();
|
|
120
|
+
// console.dir(x.data?.events?.nodes, { depth: null })
|
|
121
|
+
events.push.apply(events, __spreadArray([], __read(((_c = (_b = (_a = x.data) === null || _a === void 0 ? void 0 : _a.events) === null || _b === void 0 ? void 0 : _b.nodes.reverse()) !== null && _c !== void 0 ? _c : [])), false));
|
|
122
|
+
hasPreviousPage = (_f = (_e = (_d = x.data) === null || _d === void 0 ? void 0 : _d.events) === null || _e === void 0 ? void 0 : _e.pageInfo.hasPreviousPage) !== null && _f !== void 0 ? _f : false;
|
|
123
|
+
beforeCursor = (_j = (_h = (_g = x.data) === null || _g === void 0 ? void 0 : _g.events) === null || _h === void 0 ? void 0 : _h.pageInfo.startCursor) !== null && _j !== void 0 ? _j : null;
|
|
124
|
+
return [3 /*break*/, 1];
|
|
125
|
+
case 3: return [2 /*return*/, events];
|
|
126
|
+
}
|
|
127
|
+
});
|
|
128
|
+
});
|
|
129
|
+
}
|
package/dist/src/utils/index.js
CHANGED
package/dist/src/utils/oracle.js
CHANGED
|
@@ -35,14 +35,10 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
35
35
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
36
|
}
|
|
37
37
|
};
|
|
38
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
39
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
40
|
-
};
|
|
41
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
39
|
exports.parseFullTypusOracleData = void 0;
|
|
43
40
|
exports.updateOracleWithSignatureTx = updateOracleWithSignatureTx;
|
|
44
41
|
var utils_1 = require("@mysten/sui/utils");
|
|
45
|
-
var axios_1 = __importDefault(require("axios"));
|
|
46
42
|
var constants_1 = require("../../src/constants");
|
|
47
43
|
var token_1 = require("../../src/constants/token");
|
|
48
44
|
var bcs_1 = require("@mysten/bcs");
|
|
@@ -58,7 +54,7 @@ var parseFullTypusOracleData = function (data) {
|
|
|
58
54
|
exports.parseFullTypusOracleData = parseFullTypusOracleData;
|
|
59
55
|
function updateOracleWithSignatureTx(network, tx, oracleContract, tokenType) {
|
|
60
56
|
return __awaiter(this, void 0, void 0, function () {
|
|
61
|
-
var baseTokenType, oracleData, result, error_1, oracleAddress, oracleIdBytes, pairBytes, priceBytes, twapBytes, timestampBytes, totalLength, messageBytes, offset, signatureHex, signatureBytes;
|
|
57
|
+
var baseTokenType, oracleData, result, data, error_1, oracleAddress, oracleIdBytes, pairBytes, priceBytes, twapBytes, timestampBytes, totalLength, messageBytes, offset, signatureHex, signatureBytes;
|
|
62
58
|
return __generator(this, function (_a) {
|
|
63
59
|
switch (_a.label) {
|
|
64
60
|
case 0:
|
|
@@ -66,22 +62,25 @@ function updateOracleWithSignatureTx(network, tx, oracleContract, tokenType) {
|
|
|
66
62
|
oracleData = null;
|
|
67
63
|
_a.label = 1;
|
|
68
64
|
case 1:
|
|
69
|
-
_a.trys.push([1,
|
|
70
|
-
return [4 /*yield*/,
|
|
65
|
+
_a.trys.push([1, 4, , 5]);
|
|
66
|
+
return [4 /*yield*/, fetch("https://asia-east1-aqueous-freedom-378103.cloudfunctions.net/get-price?pair=".concat(tokenType))];
|
|
71
67
|
case 2:
|
|
72
68
|
result = _a.sent();
|
|
73
|
-
|
|
74
|
-
oracleData = (0, exports.parseFullTypusOracleData)(result.data);
|
|
75
|
-
}
|
|
76
|
-
return [3 /*break*/, 4];
|
|
69
|
+
return [4 /*yield*/, result.json()];
|
|
77
70
|
case 3:
|
|
71
|
+
data = _a.sent();
|
|
72
|
+
if (data) {
|
|
73
|
+
oracleData = (0, exports.parseFullTypusOracleData)(data);
|
|
74
|
+
}
|
|
75
|
+
return [3 /*break*/, 5];
|
|
76
|
+
case 4:
|
|
78
77
|
error_1 = _a.sent();
|
|
79
78
|
console.error(error_1);
|
|
80
79
|
return [2 /*return*/, tx];
|
|
81
|
-
case
|
|
80
|
+
case 5:
|
|
82
81
|
oracleAddress = constants_1.oracle[network][(0, token_1.typeArgToAsset)((0, utils_1.normalizeStructTag)(tokenType))];
|
|
83
82
|
if (oracleData && oracleAddress) {
|
|
84
|
-
oracleIdBytes = (0, bcs_1.fromHex)(oracleAddress.startsWith(
|
|
83
|
+
oracleIdBytes = (0, bcs_1.fromHex)(oracleAddress.startsWith("0x") ? oracleAddress.slice(2) : oracleAddress);
|
|
85
84
|
pairBytes = new Uint8Array(Buffer.from(baseTokenType, "utf8"));
|
|
86
85
|
priceBytes = bcs_1.bcs.u64().serialize(oracleData.signed.price).toBytes();
|
|
87
86
|
twapBytes = bcs_1.bcs.u64().serialize(oracleData.signed.twap).toBytes();
|
|
@@ -112,7 +111,7 @@ function updateOracleWithSignatureTx(network, tx, oracleContract, tokenType) {
|
|
|
112
111
|
tx.pure.u64(oracleData.signed.price),
|
|
113
112
|
tx.pure.u64(oracleData.signed.twap),
|
|
114
113
|
tx.pure.u64(oracleData.signed.timestamp.toString()),
|
|
115
|
-
tx.object("0x6")
|
|
114
|
+
tx.object("0x6"),
|
|
116
115
|
],
|
|
117
116
|
});
|
|
118
117
|
return [2 /*return*/, tx];
|
|
@@ -57,6 +57,8 @@ exports.priceIDs = {
|
|
|
57
57
|
METAX: "0xbf3e5871be3f80ab7a4d1f1fd039145179fb58569e159aee1ccd472868ea5900",
|
|
58
58
|
COINX: "0x641435d5dffb5311140b480517c79986d8488d5cf08a11eec53b83ad02cab33f",
|
|
59
59
|
CRCLX: "0xc13184461c0c80d98ffcd89be627c2220b94a96c7c67f0c4b16bc12fd3b17758",
|
|
60
|
+
HOODX: "0xdd49a9ac6df5cbfa9d8fc6371f7ae927a74d5c6763c1c01b4220d70314c647f9",
|
|
61
|
+
MSTRX: "0x53f95ba4e23ed15ea56083e2ee9a5eec48055d6f59033d4bb95f1ca2a2349c28",
|
|
60
62
|
},
|
|
61
63
|
TESTNET: {
|
|
62
64
|
// Pyth EVM Beta
|
|
@@ -144,6 +146,8 @@ exports.priceInfoObjectIds = {
|
|
|
144
146
|
METAX: "0x0cd398ea0262b504a946b3d4acde457a21bee9d41a27083ebf6ec19f99272155",
|
|
145
147
|
COINX: "0xf19da6da74181c159f3619cc50fdd4dcc62d15538c707175464968a14cbb0464",
|
|
146
148
|
CRCLX: "0x299b647faef2456b93155b5609ac5edc9ba18bb4f5f6a27383920a528b2ff052",
|
|
149
|
+
HOODX: "0x1f0a01610d47dfe0506bb4cfd903335bf2d148adc86459c06385b97309e51d2a",
|
|
150
|
+
MSTRX: "0xab35f27f1118959cbf82e5ab907808df40b25c16c5745c21a1af721a2e0a926e",
|
|
147
151
|
},
|
|
148
152
|
TESTNET: {
|
|
149
153
|
SUI: "0x1ebb295c789cc42b3b2a1606482cd1c7124076a0f5676718501fda8c7fd075a0",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Transaction } from "@mysten/sui/transactions";
|
|
2
|
-
import {
|
|
3
|
-
export declare function getSponsoredTx(provider:
|
|
2
|
+
import { SuiGrpcClient } from "@mysten/sui/grpc";
|
|
3
|
+
export declare function getSponsoredTx(provider: SuiGrpcClient, sender: string, tx: Transaction): Promise<sponsoredResponse>;
|
|
4
4
|
interface sponsoredResponse {
|
|
5
5
|
txBytes: string;
|
|
6
6
|
sponsorSig: string;
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { SuiGrpcClient } from "@mysten/sui/grpc";
|
|
2
|
+
import { SuiGraphQLClient } from "@mysten/sui/graphql";
|
|
1
3
|
export declare class TypusConfig {
|
|
2
4
|
network: "MAINNET" | "TESTNET";
|
|
3
5
|
rpcEndpoint: string;
|
|
@@ -10,6 +12,8 @@ export declare class TypusConfig {
|
|
|
10
12
|
static parse(json: any): TypusConfig;
|
|
11
13
|
static local(path: any): TypusConfig;
|
|
12
14
|
static default(network: "MAINNET" | "TESTNET", customRpcEndpoint: string | null, branch?: string): Promise<TypusConfig>;
|
|
15
|
+
gRpcClient(): SuiGrpcClient;
|
|
16
|
+
graphQlClient(): SuiGraphQLClient<{}>;
|
|
13
17
|
}
|
|
14
18
|
export interface Package {
|
|
15
19
|
dice: string;
|
|
@@ -75,58 +75,60 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
75
75
|
exports.TypusConfig = void 0;
|
|
76
76
|
var camelcase_keys_deep_1 = __importDefault(require("camelcase-keys-deep"));
|
|
77
77
|
var fs = __importStar(require("fs"));
|
|
78
|
+
var grpcweb_transport_1 = require("@protobuf-ts/grpcweb-transport");
|
|
79
|
+
var grpc_1 = require("@mysten/sui/grpc");
|
|
80
|
+
var graphql_1 = require("@mysten/sui/graphql");
|
|
78
81
|
var TypusConfig = /** @class */ (function () {
|
|
79
82
|
function TypusConfig() {
|
|
80
83
|
this.sponsored = false;
|
|
81
84
|
}
|
|
82
85
|
TypusConfig.parse = function (json) {
|
|
83
|
-
return JSON.parse(JSON.stringify((0, camelcase_keys_deep_1.default)(json)));
|
|
86
|
+
return Object.assign(new TypusConfig(), JSON.parse(JSON.stringify((0, camelcase_keys_deep_1.default)(json))));
|
|
84
87
|
};
|
|
85
88
|
TypusConfig.local = function (path) {
|
|
86
89
|
return TypusConfig.parse(JSON.parse(fs.readFileSync(path, "utf-8")));
|
|
87
90
|
};
|
|
88
91
|
TypusConfig.default = function (network_1, customRpcEndpoint_1) {
|
|
89
92
|
return __awaiter(this, arguments, void 0, function (network, customRpcEndpoint, branch) {
|
|
90
|
-
var
|
|
93
|
+
var url, data, _a, typusConfig;
|
|
91
94
|
if (branch === void 0) { branch = "main"; }
|
|
92
|
-
return __generator(this, function (
|
|
93
|
-
switch (
|
|
95
|
+
return __generator(this, function (_b) {
|
|
96
|
+
switch (_b.label) {
|
|
94
97
|
case 0:
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
case
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
_f = camelcase_keys_deep_1.default;
|
|
105
|
-
return [4 /*yield*/, fetch("https://raw.githubusercontent.com/Typus-Lab/typus-config/".concat(branch, "/config-mainnet.json"))];
|
|
106
|
-
case 2: return [4 /*yield*/, (_m.sent()).json()];
|
|
107
|
-
case 3:
|
|
108
|
-
typusConfig = _c.apply(_b, [_e.apply(_d, [_f.apply(void 0, [_m.sent()])])]);
|
|
109
|
-
if (customRpcEndpoint) {
|
|
110
|
-
typusConfig.rpcEndpoint = customRpcEndpoint;
|
|
111
|
-
}
|
|
112
|
-
return [2 /*return*/, typusConfig];
|
|
113
|
-
case 4:
|
|
114
|
-
_h = (_g = JSON).parse;
|
|
115
|
-
_k = (_j = JSON).stringify;
|
|
116
|
-
_l = camelcase_keys_deep_1.default;
|
|
117
|
-
return [4 /*yield*/, fetch("https://raw.githubusercontent.com/Typus-Lab/typus-config/".concat(branch, "/config-testnet.json"))];
|
|
118
|
-
case 5: return [4 /*yield*/, (_m.sent()).json()];
|
|
119
|
-
case 6:
|
|
120
|
-
typusConfig = _h.apply(_g, [_k.apply(_j, [_l.apply(void 0, [_m.sent()])])]);
|
|
98
|
+
url = network === "MAINNET"
|
|
99
|
+
? "https://raw.githubusercontent.com/Typus-Lab/typus-config/".concat(branch, "/config-mainnet.json")
|
|
100
|
+
: "https://raw.githubusercontent.com/Typus-Lab/typus-config/".concat(branch, "/config-testnet.json");
|
|
101
|
+
_a = camelcase_keys_deep_1.default;
|
|
102
|
+
return [4 /*yield*/, fetch(url)];
|
|
103
|
+
case 1: return [4 /*yield*/, (_b.sent()).json()];
|
|
104
|
+
case 2:
|
|
105
|
+
data = _a.apply(void 0, [_b.sent()]);
|
|
106
|
+
typusConfig = Object.assign(new TypusConfig(), JSON.parse(JSON.stringify(data)));
|
|
121
107
|
if (customRpcEndpoint) {
|
|
122
108
|
typusConfig.rpcEndpoint = customRpcEndpoint;
|
|
123
109
|
}
|
|
124
110
|
return [2 /*return*/, typusConfig];
|
|
125
|
-
case 7: return [2 /*return*/];
|
|
126
111
|
}
|
|
127
112
|
});
|
|
128
113
|
});
|
|
129
114
|
};
|
|
115
|
+
TypusConfig.prototype.gRpcClient = function () {
|
|
116
|
+
var transport = new grpcweb_transport_1.GrpcWebFetchTransport({
|
|
117
|
+
baseUrl: this.rpcEndpoint,
|
|
118
|
+
});
|
|
119
|
+
var provider = new grpc_1.SuiGrpcClient({
|
|
120
|
+
network: this.network.toLocaleLowerCase(),
|
|
121
|
+
transport: transport,
|
|
122
|
+
});
|
|
123
|
+
return provider;
|
|
124
|
+
};
|
|
125
|
+
TypusConfig.prototype.graphQlClient = function () {
|
|
126
|
+
var provider = new graphql_1.SuiGraphQLClient({
|
|
127
|
+
network: this.network.toLocaleLowerCase(),
|
|
128
|
+
url: "https://graphql.".concat(this.network.toLocaleLowerCase(), ".sui.io/graphql"),
|
|
129
|
+
});
|
|
130
|
+
return provider;
|
|
131
|
+
};
|
|
130
132
|
return TypusConfig;
|
|
131
133
|
}());
|
|
132
134
|
exports.TypusConfig = TypusConfig;
|
package/package.json
CHANGED
|
@@ -2,15 +2,13 @@
|
|
|
2
2
|
"name": "@typus/typus-sdk",
|
|
3
3
|
"author": "Typus",
|
|
4
4
|
"description": "typus sdk",
|
|
5
|
-
"version": "1.8.
|
|
5
|
+
"version": "1.8.43-upgrade",
|
|
6
6
|
"dependencies": {
|
|
7
|
-
"@mysten/bcs": "
|
|
8
|
-
"@mysten/kiosk": "
|
|
9
|
-
"@mysten/sui": "
|
|
7
|
+
"@mysten/bcs": "2.0.3",
|
|
8
|
+
"@mysten/kiosk": "1.2.0",
|
|
9
|
+
"@mysten/sui": "2.13.2",
|
|
10
10
|
"@pythnetwork/pyth-sui-js": "2.3.0",
|
|
11
|
-
"@shinami/clients": "
|
|
12
|
-
"@types/node": "^20.5.7",
|
|
13
|
-
"axios": "1.13.2",
|
|
11
|
+
"@shinami/clients": "0.10.0",
|
|
14
12
|
"bignumber.js": "^9.1.2",
|
|
15
13
|
"camelcase-keys-deep": "^0.1.0",
|
|
16
14
|
"crypto-js": "^4.2.0",
|
|
@@ -20,12 +18,14 @@
|
|
|
20
18
|
"node-rsa": "^1.1.1"
|
|
21
19
|
},
|
|
22
20
|
"resolutions": {
|
|
23
|
-
"@mysten/
|
|
21
|
+
"@mysten/bcs": "2.0.3",
|
|
22
|
+
"@mysten/sui": "2.13.2"
|
|
24
23
|
},
|
|
25
24
|
"devDependencies": {
|
|
26
25
|
"@types/camelcase-keys-deep": "^0.1.2",
|
|
27
26
|
"@types/crypto-js": "^4.2.2",
|
|
28
27
|
"@types/node-rsa": "^1.1.4",
|
|
28
|
+
"axios": "1.13.2",
|
|
29
29
|
"prettier": "^3.0.0",
|
|
30
30
|
"slack": "^11.0.2",
|
|
31
31
|
"tsc-alias": "^1.8.10",
|
|
@@ -50,6 +50,5 @@
|
|
|
50
50
|
"bugs": {
|
|
51
51
|
"url": "https://github.com/Typus-Lab/typus-sdk/issues"
|
|
52
52
|
},
|
|
53
|
-
"homepage": "https://github.com/Typus-Lab/typus-sdk#readme"
|
|
54
|
-
"packageManager": "yarn@4.10.3+sha512.c38cafb5c7bb273f3926d04e55e1d8c9dfa7d9c3ea1f36a4868fa028b9e5f72298f0b7f401ad5eb921749eb012eb1c3bb74bf7503df3ee43fd600d14a018266f"
|
|
53
|
+
"homepage": "https://github.com/Typus-Lab/typus-sdk#readme"
|
|
55
54
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
function uint8ArrayToBCSStringArray(uint8Array) {
|
|
4
|
-
var result = [];
|
|
5
|
-
for (var i = 0; i < uint8Array.length; i++) {
|
|
6
|
-
// Assume each byte is a UTF-8 character
|
|
7
|
-
var character = String.fromCharCode(uint8Array[i]);
|
|
8
|
-
// Convert character to its BCS representation (you need to implement this part)
|
|
9
|
-
var bcsRepresentation = encodeToBCS(character);
|
|
10
|
-
// Add BCS representation to the result array
|
|
11
|
-
result.push(bcsRepresentation);
|
|
12
|
-
}
|
|
13
|
-
return result;
|
|
14
|
-
}
|
|
15
|
-
// Function to encode a character to its BCS representation
|
|
16
|
-
function encodeToBCS(character) {
|
|
17
|
-
// You need to implement this part based on BCS encoding rules
|
|
18
|
-
// This is a placeholder; the actual implementation depends on BCS specifications
|
|
19
|
-
return character.charCodeAt(0).toString();
|
|
20
|
-
}
|