@typus/typus-sdk 1.2.66 → 1.2.68-tgld
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/config.json +155 -0
- package/lib/mainnet.json +2 -2
- package/lib/utils/airdrop/authority-entry.d.ts +22 -0
- package/lib/utils/airdrop/authority-entry.js +138 -0
- package/lib/utils/airdrop/user-entry.d.ts +10 -0
- package/lib/utils/airdrop/user-entry.js +21 -0
- package/lib/utils/airdrop/view-functions.d.ts +10 -0
- package/lib/utils/airdrop/view-functions.js +72 -0
- package/lib/utils/api/defillama/tvl.d.ts +1 -0
- package/lib/utils/api/defillama/tvl.js +59 -0
- package/lib/utils/{leader-board.d.ts → api/sentio/leader-board.d.ts} +0 -7
- package/lib/utils/api/sentio/leader-board.js +104 -0
- package/lib/utils/api/sentio/reward-generated.d.ts +10 -0
- package/lib/utils/api/sentio/reward-generated.js +256 -0
- package/lib/utils/leaderboard/authority-entry.d.ts +22 -0
- package/lib/utils/leaderboard/authority-entry.js +91 -0
- package/lib/utils/leaderboard/view-function.d.ts +21 -0
- package/lib/utils/leaderboard/view-function.js +92 -0
- package/lib/utils/locked-period-vault/user-entry.d.ts +81 -0
- package/lib/utils/locked-period-vault/user-entry.js +101 -0
- package/lib/utils/typus-dov-single-v2/mfud-user-entry.d.ts +4 -0
- package/lib/utils/typus-dov-single-v2/mfud-user-entry.js +5 -1
- package/lib/utils/typus-dov-single-v2/user-entry.d.ts +4 -0
- package/lib/utils/typus-dov-single-v2/user-entry.js +10 -2
- package/lib/utils/typus-dov-single-v2/user-history.js +22 -3
- package/lib/utils/user/view-functions.d.ts +9 -0
- package/lib/utils/user/view-functions.js +71 -0
- package/package.json +1 -1
- package/lib/utils/leader-board.js +0 -333
- package/lib/utils/typus-dov-double/authorized-entry.d.ts +0 -102
- package/lib/utils/typus-dov-double/authorized-entry.js +0 -295
- package/lib/utils/typus-dov-double/manager-entry.d.ts +0 -219
- package/lib/utils/typus-dov-double/manager-entry.js +0 -584
- package/lib/utils/typus-dov-double/portfolio-vault.d.ts +0 -68
- package/lib/utils/typus-dov-double/portfolio-vault.js +0 -303
- package/lib/utils/typus-dov-double/user-entry.d.ts +0 -93
- package/lib/utils/typus-dov-double/user-entry.js +0 -280
- package/lib/utils/typus-dov-double/view-function.d.ts +0 -11
- package/lib/utils/typus-dov-double/view-function.js +0 -213
- package/lib/utils/typus-dov-single/db-data.d.ts +0 -19
- package/lib/utils/typus-dov-single/db-data.js +0 -226
- package/lib/utils/typus-dov-single/portfolio-vault.d.ts +0 -63
- package/lib/utils/typus-dov-single/portfolio-vault.js +0 -284
- package/lib/utils/typus-dov-single/registry.d.ts +0 -14
- package/lib/utils/typus-dov-single/registry.js +0 -126
- package/lib/utils/typus-dov-single/user-entry.d.ts +0 -103
- package/lib/utils/typus-dov-single/user-entry.js +0 -388
- package/lib/utils/typus-dov-single/user-history.d.ts +0 -17
- package/lib/utils/typus-dov-single/user-history.js +0 -146
- package/lib/utils/typus-dov-single/view-function.d.ts +0 -50
- package/lib/utils/typus-dov-single/view-function.js +0 -444
|
@@ -0,0 +1,256 @@
|
|
|
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;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "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 __values = (this && this.__values) || function(o) {
|
|
39
|
+
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
40
|
+
if (m) return m.call(o);
|
|
41
|
+
if (o && typeof o.length === "number") return {
|
|
42
|
+
next: function () {
|
|
43
|
+
if (o && i >= o.length) o = void 0;
|
|
44
|
+
return { value: o && o[i++], done: !o };
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
48
|
+
};
|
|
49
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
50
|
+
exports.getTotalProfitSharing = exports.getTotalProfitSharingClaimed = exports.getTotalPremium = exports.getTotalDepositorIncentive = void 0;
|
|
51
|
+
var headers = {
|
|
52
|
+
"api-key": "tz3JJ6stG7Fux6ueRSRA5mdpC9U0lozI3",
|
|
53
|
+
"Content-Type": "application/json",
|
|
54
|
+
};
|
|
55
|
+
function getTotalDepositorIncentive() {
|
|
56
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
57
|
+
var apiUrl, requestData, jsonData, response, data;
|
|
58
|
+
return __generator(this, function (_a) {
|
|
59
|
+
switch (_a.label) {
|
|
60
|
+
case 0:
|
|
61
|
+
apiUrl = "https://app.sentio.xyz/api/v1/analytics/typus/typus_v2/sql/execute";
|
|
62
|
+
requestData = {
|
|
63
|
+
sqlQuery: {
|
|
64
|
+
sql: "\n SELECT SUM(E.depositor_incentive_value) as incentive\n FROM Delivery E\n ",
|
|
65
|
+
size: 2000000,
|
|
66
|
+
},
|
|
67
|
+
};
|
|
68
|
+
jsonData = JSON.stringify(requestData);
|
|
69
|
+
return [4 /*yield*/, fetch(apiUrl, {
|
|
70
|
+
method: "POST",
|
|
71
|
+
headers: headers,
|
|
72
|
+
body: jsonData,
|
|
73
|
+
})];
|
|
74
|
+
case 1:
|
|
75
|
+
response = _a.sent();
|
|
76
|
+
return [4 /*yield*/, response.json()];
|
|
77
|
+
case 2:
|
|
78
|
+
data = _a.sent();
|
|
79
|
+
return [2 /*return*/, { token: "SUI", total_amount: data.result.rows[0].incentive }];
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
exports.getTotalDepositorIncentive = getTotalDepositorIncentive;
|
|
85
|
+
function getTotalPremium() {
|
|
86
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
87
|
+
var apiUrl, requestData, jsonData, response, data;
|
|
88
|
+
return __generator(this, function (_a) {
|
|
89
|
+
switch (_a.label) {
|
|
90
|
+
case 0:
|
|
91
|
+
apiUrl = "https://app.sentio.xyz/api/v1/insights/typus/typus_v2/query";
|
|
92
|
+
requestData = {
|
|
93
|
+
timeRange: {
|
|
94
|
+
start: "now",
|
|
95
|
+
end: "now",
|
|
96
|
+
step: 3600,
|
|
97
|
+
timezone: "Europe/Paris",
|
|
98
|
+
},
|
|
99
|
+
limit: 1,
|
|
100
|
+
queries: [
|
|
101
|
+
{
|
|
102
|
+
metricsQuery: {
|
|
103
|
+
query: "PremiumUSD",
|
|
104
|
+
alias: "",
|
|
105
|
+
id: "a",
|
|
106
|
+
labelSelector: {},
|
|
107
|
+
aggregate: {
|
|
108
|
+
op: "SUM",
|
|
109
|
+
grouping: ["chain"],
|
|
110
|
+
},
|
|
111
|
+
functions: [
|
|
112
|
+
{
|
|
113
|
+
name: "sum_over_time",
|
|
114
|
+
arguments: [
|
|
115
|
+
{
|
|
116
|
+
durationValue: {
|
|
117
|
+
value: 520,
|
|
118
|
+
unit: "w",
|
|
119
|
+
},
|
|
120
|
+
},
|
|
121
|
+
],
|
|
122
|
+
},
|
|
123
|
+
],
|
|
124
|
+
disabled: false,
|
|
125
|
+
},
|
|
126
|
+
dataSource: "METRICS",
|
|
127
|
+
sourceName: "",
|
|
128
|
+
},
|
|
129
|
+
],
|
|
130
|
+
formulas: [],
|
|
131
|
+
};
|
|
132
|
+
jsonData = JSON.stringify(requestData);
|
|
133
|
+
return [4 /*yield*/, fetch(apiUrl, {
|
|
134
|
+
method: "POST",
|
|
135
|
+
headers: headers,
|
|
136
|
+
body: jsonData,
|
|
137
|
+
})];
|
|
138
|
+
case 1:
|
|
139
|
+
response = _a.sent();
|
|
140
|
+
return [4 /*yield*/, response.json()];
|
|
141
|
+
case 2:
|
|
142
|
+
data = _a.sent();
|
|
143
|
+
return [2 /*return*/, data.results[0].matrix.samples[0].values[0].value];
|
|
144
|
+
}
|
|
145
|
+
});
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
exports.getTotalPremium = getTotalPremium;
|
|
149
|
+
function getTotalProfitSharingClaimed() {
|
|
150
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
151
|
+
var apiUrl, requestData, jsonData, response, data;
|
|
152
|
+
return __generator(this, function (_a) {
|
|
153
|
+
switch (_a.label) {
|
|
154
|
+
case 0:
|
|
155
|
+
apiUrl = "https://app.sentio.xyz/api/v1/analytics/typus/typus_v2/sql/execute";
|
|
156
|
+
requestData = {
|
|
157
|
+
sqlQuery: {
|
|
158
|
+
sql: "\n SELECT token, SUM(amount) AS total_amount\n FROM ClaimProfitSharing\n GROUP BY token;\n ",
|
|
159
|
+
size: 2000000,
|
|
160
|
+
},
|
|
161
|
+
};
|
|
162
|
+
jsonData = JSON.stringify(requestData);
|
|
163
|
+
return [4 /*yield*/, fetch(apiUrl, {
|
|
164
|
+
method: "POST",
|
|
165
|
+
headers: headers,
|
|
166
|
+
body: jsonData,
|
|
167
|
+
})];
|
|
168
|
+
case 1:
|
|
169
|
+
response = _a.sent();
|
|
170
|
+
return [4 /*yield*/, response.json()];
|
|
171
|
+
case 2:
|
|
172
|
+
data = _a.sent();
|
|
173
|
+
return [2 /*return*/, data.result.rows];
|
|
174
|
+
}
|
|
175
|
+
});
|
|
176
|
+
});
|
|
177
|
+
}
|
|
178
|
+
exports.getTotalProfitSharingClaimed = getTotalProfitSharingClaimed;
|
|
179
|
+
function getTotalProfitSharing(provider) {
|
|
180
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
181
|
+
var hasNextPage, cursor, datas, result, tokenAmountMap, datas_1, datas_1_1, data, token, value, amount, sum, tokenAmount, _a, _b, x;
|
|
182
|
+
var e_1, _c, e_2, _d;
|
|
183
|
+
return __generator(this, function (_e) {
|
|
184
|
+
switch (_e.label) {
|
|
185
|
+
case 0:
|
|
186
|
+
hasNextPage = true;
|
|
187
|
+
cursor = undefined;
|
|
188
|
+
datas = [];
|
|
189
|
+
_e.label = 1;
|
|
190
|
+
case 1:
|
|
191
|
+
if (!hasNextPage) return [3 /*break*/, 3];
|
|
192
|
+
return [4 /*yield*/, provider.queryEvents({
|
|
193
|
+
query: {
|
|
194
|
+
MoveEventType: "0x80ff0830313b36bb65ab927af811037f8b175d6e83c43f906b8f55d9263eea99::tails_staking::ProfitSharingEvent",
|
|
195
|
+
},
|
|
196
|
+
order: "descending",
|
|
197
|
+
cursor: cursor,
|
|
198
|
+
})];
|
|
199
|
+
case 2:
|
|
200
|
+
result = _e.sent();
|
|
201
|
+
hasNextPage = result.hasNextPage;
|
|
202
|
+
cursor = result.nextCursor;
|
|
203
|
+
// @ts-ignore
|
|
204
|
+
datas = datas.concat(result.data);
|
|
205
|
+
return [3 /*break*/, 1];
|
|
206
|
+
case 3:
|
|
207
|
+
tokenAmountMap = new Map();
|
|
208
|
+
try {
|
|
209
|
+
for (datas_1 = __values(datas), datas_1_1 = datas_1.next(); !datas_1_1.done; datas_1_1 = datas_1.next()) {
|
|
210
|
+
data = datas_1_1.value;
|
|
211
|
+
token = (0, token_1.typeArgToAsset)(data.parsedJson.token.name);
|
|
212
|
+
value = data.parsedJson.value;
|
|
213
|
+
amount = value / Math.pow(10, (0, token_1.assetToDecimal)(token));
|
|
214
|
+
// const week = Math.round(Number(data.timestampMs) / 24 / 3600 / 1000);
|
|
215
|
+
if (tokenAmountMap.has(token)) {
|
|
216
|
+
sum = tokenAmountMap.get(token);
|
|
217
|
+
tokenAmountMap.set(token, sum + Number(amount));
|
|
218
|
+
}
|
|
219
|
+
else {
|
|
220
|
+
tokenAmountMap.set(token, Number(amount));
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
225
|
+
finally {
|
|
226
|
+
try {
|
|
227
|
+
if (datas_1_1 && !datas_1_1.done && (_c = datas_1.return)) _c.call(datas_1);
|
|
228
|
+
}
|
|
229
|
+
finally { if (e_1) throw e_1.error; }
|
|
230
|
+
}
|
|
231
|
+
tokenAmount = [];
|
|
232
|
+
try {
|
|
233
|
+
for (_a = __values(tokenAmountMap.entries()), _b = _a.next(); !_b.done; _b = _a.next()) {
|
|
234
|
+
x = _b.value;
|
|
235
|
+
tokenAmount.push({ token: x[0], total_amount: x[1].toString() });
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
239
|
+
finally {
|
|
240
|
+
try {
|
|
241
|
+
if (_b && !_b.done && (_d = _a.return)) _d.call(_a);
|
|
242
|
+
}
|
|
243
|
+
finally { if (e_2) throw e_2.error; }
|
|
244
|
+
}
|
|
245
|
+
return [2 /*return*/, tokenAmount];
|
|
246
|
+
}
|
|
247
|
+
});
|
|
248
|
+
});
|
|
249
|
+
}
|
|
250
|
+
exports.getTotalProfitSharing = getTotalProfitSharing;
|
|
251
|
+
var token_1 = require("../../token");
|
|
252
|
+
(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
253
|
+
return __generator(this, function (_a) {
|
|
254
|
+
return [2 /*return*/];
|
|
255
|
+
});
|
|
256
|
+
}); })();
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { TransactionBlock } from "@mysten/sui.js/transactions";
|
|
2
|
+
/**
|
|
3
|
+
public fun activate_leaderboard(
|
|
4
|
+
version: &Version,
|
|
5
|
+
registry: &mut TypusLeaderboardRegistry,
|
|
6
|
+
key: String,
|
|
7
|
+
start_ts_ms: u64,
|
|
8
|
+
end_ts_ms: u64,
|
|
9
|
+
ctx: &mut TxContext,
|
|
10
|
+
)
|
|
11
|
+
*/
|
|
12
|
+
export declare function getActivateLeaderboardTx(gasBudget: number, packageId: string, version: string, typusLeaderboardRegistry: string, key: string, start_ts_ms: string, end_ts_ms: string): Promise<TransactionBlock>;
|
|
13
|
+
/**
|
|
14
|
+
public fun deactivate_leaderboard(
|
|
15
|
+
version: &Version,
|
|
16
|
+
registry: &mut TypusLeaderboardRegistry,
|
|
17
|
+
key: String,
|
|
18
|
+
id: address,
|
|
19
|
+
ctx: &mut TxContext,
|
|
20
|
+
)
|
|
21
|
+
*/
|
|
22
|
+
export declare function getDeactivateLeaderboardTx(gasBudget: number, packageId: string, version: string, typusLeaderboardRegistry: string, key: string, id: string): Promise<TransactionBlock>;
|
|
@@ -0,0 +1,91 @@
|
|
|
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;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.getDeactivateLeaderboardTx = exports.getActivateLeaderboardTx = void 0;
|
|
40
|
+
var transactions_1 = require("@mysten/sui.js/transactions");
|
|
41
|
+
/**
|
|
42
|
+
public fun activate_leaderboard(
|
|
43
|
+
version: &Version,
|
|
44
|
+
registry: &mut TypusLeaderboardRegistry,
|
|
45
|
+
key: String,
|
|
46
|
+
start_ts_ms: u64,
|
|
47
|
+
end_ts_ms: u64,
|
|
48
|
+
ctx: &mut TxContext,
|
|
49
|
+
)
|
|
50
|
+
*/
|
|
51
|
+
function getActivateLeaderboardTx(gasBudget, packageId, version, typusLeaderboardRegistry, key, start_ts_ms, end_ts_ms) {
|
|
52
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
53
|
+
var tx;
|
|
54
|
+
return __generator(this, function (_a) {
|
|
55
|
+
tx = new transactions_1.TransactionBlock();
|
|
56
|
+
tx.moveCall({
|
|
57
|
+
target: "".concat(packageId, "::leaderboard::activate_leaderboard"),
|
|
58
|
+
typeArguments: [],
|
|
59
|
+
arguments: [tx.object(version), tx.object(typusLeaderboardRegistry), tx.object(key), tx.pure(start_ts_ms), tx.pure(end_ts_ms)],
|
|
60
|
+
});
|
|
61
|
+
tx.setGasBudget(gasBudget);
|
|
62
|
+
return [2 /*return*/, tx];
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
exports.getActivateLeaderboardTx = getActivateLeaderboardTx;
|
|
67
|
+
/**
|
|
68
|
+
public fun deactivate_leaderboard(
|
|
69
|
+
version: &Version,
|
|
70
|
+
registry: &mut TypusLeaderboardRegistry,
|
|
71
|
+
key: String,
|
|
72
|
+
id: address,
|
|
73
|
+
ctx: &mut TxContext,
|
|
74
|
+
)
|
|
75
|
+
*/
|
|
76
|
+
function getDeactivateLeaderboardTx(gasBudget, packageId, version, typusLeaderboardRegistry, key, id) {
|
|
77
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
78
|
+
var tx;
|
|
79
|
+
return __generator(this, function (_a) {
|
|
80
|
+
tx = new transactions_1.TransactionBlock();
|
|
81
|
+
tx.moveCall({
|
|
82
|
+
target: "".concat(packageId, "::leaderboard::deactivate_leaderboard"),
|
|
83
|
+
typeArguments: [],
|
|
84
|
+
arguments: [tx.object(version), tx.object(typusLeaderboardRegistry), tx.object(key), tx.pure(id)],
|
|
85
|
+
});
|
|
86
|
+
tx.setGasBudget(gasBudget);
|
|
87
|
+
return [2 /*return*/, tx];
|
|
88
|
+
});
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
exports.getDeactivateLeaderboardTx = getDeactivateLeaderboardTx;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { SuiClient } from "@mysten/sui.js/client";
|
|
2
|
+
export declare const SENDER = "0xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA";
|
|
3
|
+
export interface Rankings {
|
|
4
|
+
user_score: string;
|
|
5
|
+
leaderboard: Ranks[];
|
|
6
|
+
}
|
|
7
|
+
export interface Ranks {
|
|
8
|
+
score: string;
|
|
9
|
+
users: string[];
|
|
10
|
+
}
|
|
11
|
+
export declare function getRankings(input: {
|
|
12
|
+
provider: SuiClient;
|
|
13
|
+
typusPackageId: string;
|
|
14
|
+
typusEcosystemVersion: string;
|
|
15
|
+
typusLeaderboardRegistry: string;
|
|
16
|
+
key: string;
|
|
17
|
+
id: string;
|
|
18
|
+
ranks: number;
|
|
19
|
+
user: string;
|
|
20
|
+
active: boolean;
|
|
21
|
+
}): Promise<Rankings>;
|
|
@@ -0,0 +1,92 @@
|
|
|
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;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.getRankings = exports.SENDER = void 0;
|
|
40
|
+
var transactions_1 = require("@mysten/sui.js/transactions");
|
|
41
|
+
var bcs_1 = require("@mysten/bcs");
|
|
42
|
+
var tools_1 = require("../tools");
|
|
43
|
+
exports.SENDER = "0xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA";
|
|
44
|
+
function getRankings(input) {
|
|
45
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
46
|
+
var transactionBlock, results, bytes, reader, result;
|
|
47
|
+
return __generator(this, function (_a) {
|
|
48
|
+
switch (_a.label) {
|
|
49
|
+
case 0:
|
|
50
|
+
transactionBlock = new transactions_1.TransactionBlock();
|
|
51
|
+
transactionBlock.moveCall({
|
|
52
|
+
target: "".concat(input.typusPackageId, "::leaderboard::get_rankings"),
|
|
53
|
+
typeArguments: [],
|
|
54
|
+
arguments: [
|
|
55
|
+
transactionBlock.pure(input.typusEcosystemVersion),
|
|
56
|
+
transactionBlock.pure(input.typusLeaderboardRegistry),
|
|
57
|
+
transactionBlock.pure(input.key),
|
|
58
|
+
transactionBlock.pure(input.id),
|
|
59
|
+
transactionBlock.pure(input.ranks),
|
|
60
|
+
transactionBlock.pure(input.user),
|
|
61
|
+
transactionBlock.pure(input.active),
|
|
62
|
+
],
|
|
63
|
+
});
|
|
64
|
+
return [4 /*yield*/, input.provider.devInspectTransactionBlock({ sender: exports.SENDER, transactionBlock: transactionBlock })];
|
|
65
|
+
case 1:
|
|
66
|
+
results = (_a.sent()).results;
|
|
67
|
+
bytes = results[results.length - 1].returnValues[0][0];
|
|
68
|
+
reader = new bcs_1.BcsReader(new Uint8Array(bytes));
|
|
69
|
+
result = reader.readVec(function (reader, i) {
|
|
70
|
+
if (i == 0) {
|
|
71
|
+
reader.readULEB();
|
|
72
|
+
return reader.read64();
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
reader.readULEB();
|
|
76
|
+
return {
|
|
77
|
+
score: reader.read64(),
|
|
78
|
+
users: reader.readVec(function (reader) {
|
|
79
|
+
return (0, tools_1.AddressFromBytes)(reader.readBytes(32));
|
|
80
|
+
}),
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
return [2 /*return*/, {
|
|
85
|
+
user_score: result[0],
|
|
86
|
+
leaderboard: result.slice(1),
|
|
87
|
+
}];
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
exports.getRankings = getRankings;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { TransactionBlock, TransactionObjectArgument } from "@mysten/sui.js/transactions";
|
|
2
|
+
/**
|
|
3
|
+
public fun lock_receipt(
|
|
4
|
+
registry: &mut Registry,
|
|
5
|
+
locked_vault_registry: &mut LockedVaultRegistry,
|
|
6
|
+
index: u64,
|
|
7
|
+
receipt: TypusDepositReceipt, // from tails_staking::deposit result or owned
|
|
8
|
+
split_active_share: u64,
|
|
9
|
+
split_warmup_share: u64,
|
|
10
|
+
clock: &Clock,
|
|
11
|
+
ctx: &mut TxContext
|
|
12
|
+
): TypusDepositReceipt
|
|
13
|
+
*/
|
|
14
|
+
export declare function getLockReceiptTx(input: {
|
|
15
|
+
tx: TransactionBlock;
|
|
16
|
+
lockedVaultPackageId: string;
|
|
17
|
+
typusDovSingleRegistry: string;
|
|
18
|
+
lockedVaultRegistry: string;
|
|
19
|
+
index: string;
|
|
20
|
+
receipt: TransactionObjectArgument;
|
|
21
|
+
split_active_share: string;
|
|
22
|
+
split_warmup_share: string;
|
|
23
|
+
}): TransactionBlock;
|
|
24
|
+
/**
|
|
25
|
+
public fun leave(
|
|
26
|
+
locked_vault_registry: &mut LockedVaultRegistry,
|
|
27
|
+
index: u64,
|
|
28
|
+
clock: &Clock,
|
|
29
|
+
ctx: &mut TxContext
|
|
30
|
+
)
|
|
31
|
+
*/
|
|
32
|
+
export declare function getLeaveTx(input: {
|
|
33
|
+
tx: TransactionBlock;
|
|
34
|
+
lockedVaultPackageId: string;
|
|
35
|
+
lockedVaultRegistry: string;
|
|
36
|
+
index: string;
|
|
37
|
+
}): TransactionBlock;
|
|
38
|
+
/**
|
|
39
|
+
public fun unlock_receipt(
|
|
40
|
+
locked_vault_registry: &mut LockedVaultRegistry,
|
|
41
|
+
index: u64,
|
|
42
|
+
ctx: &mut TxContext
|
|
43
|
+
)
|
|
44
|
+
*/
|
|
45
|
+
export declare function getUnlockReceiptTx(input: {
|
|
46
|
+
tx: TransactionBlock;
|
|
47
|
+
lockedVaultPackageId: string;
|
|
48
|
+
lockedVaultRegistry: string;
|
|
49
|
+
index: string;
|
|
50
|
+
}): TransactionBlock;
|
|
51
|
+
/**
|
|
52
|
+
public fun withdraw_incentive<T>(
|
|
53
|
+
locked_vault_registry: &mut LockedVaultRegistry,
|
|
54
|
+
index: u64,
|
|
55
|
+
ctx: &mut TxContext
|
|
56
|
+
): Coin<T>
|
|
57
|
+
*/
|
|
58
|
+
export declare function getWithdrawIncentiveTx(input: {
|
|
59
|
+
tx: TransactionBlock;
|
|
60
|
+
lockedVaultPackageId: string;
|
|
61
|
+
lockedVaultRegistry: string;
|
|
62
|
+
index: string;
|
|
63
|
+
sender: string;
|
|
64
|
+
}): TransactionBlock;
|
|
65
|
+
/**
|
|
66
|
+
public fun withdraw_premium<D_TOKEN, B_TOKEN>(
|
|
67
|
+
registry: &mut Registry,
|
|
68
|
+
locked_vault_registry: &mut LockedVaultRegistry,
|
|
69
|
+
index: u64,
|
|
70
|
+
ctx: &mut TxContext
|
|
71
|
+
): Coin<B_TOKEN>
|
|
72
|
+
*/
|
|
73
|
+
export declare function getWithdrawPremiumTx(input: {
|
|
74
|
+
tx: TransactionBlock;
|
|
75
|
+
lockedVaultPackageId: string;
|
|
76
|
+
typusDovSingleRegistry: string;
|
|
77
|
+
lockedVaultRegistry: string;
|
|
78
|
+
index: string;
|
|
79
|
+
sender: string;
|
|
80
|
+
typeArguments: string[];
|
|
81
|
+
}): TransactionBlock;
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getWithdrawPremiumTx = exports.getWithdrawIncentiveTx = exports.getUnlockReceiptTx = exports.getLeaveTx = exports.getLockReceiptTx = void 0;
|
|
4
|
+
var constants_1 = require("../../constants");
|
|
5
|
+
/**
|
|
6
|
+
public fun lock_receipt(
|
|
7
|
+
registry: &mut Registry,
|
|
8
|
+
locked_vault_registry: &mut LockedVaultRegistry,
|
|
9
|
+
index: u64,
|
|
10
|
+
receipt: TypusDepositReceipt, // from tails_staking::deposit result or owned
|
|
11
|
+
split_active_share: u64,
|
|
12
|
+
split_warmup_share: u64,
|
|
13
|
+
clock: &Clock,
|
|
14
|
+
ctx: &mut TxContext
|
|
15
|
+
): TypusDepositReceipt
|
|
16
|
+
*/
|
|
17
|
+
function getLockReceiptTx(input) {
|
|
18
|
+
input.tx.moveCall({
|
|
19
|
+
target: "".concat(input.lockedVaultPackageId, "::locked_period_vault::lock_receipt"),
|
|
20
|
+
typeArguments: [],
|
|
21
|
+
arguments: [
|
|
22
|
+
input.tx.object(input.typusDovSingleRegistry),
|
|
23
|
+
input.tx.object(input.lockedVaultRegistry),
|
|
24
|
+
input.tx.pure(input.index),
|
|
25
|
+
input.receipt,
|
|
26
|
+
input.tx.pure(input.split_active_share),
|
|
27
|
+
input.tx.pure(input.split_warmup_share),
|
|
28
|
+
input.tx.pure(constants_1.CLOCK),
|
|
29
|
+
],
|
|
30
|
+
});
|
|
31
|
+
return input.tx;
|
|
32
|
+
}
|
|
33
|
+
exports.getLockReceiptTx = getLockReceiptTx;
|
|
34
|
+
/**
|
|
35
|
+
public fun leave(
|
|
36
|
+
locked_vault_registry: &mut LockedVaultRegistry,
|
|
37
|
+
index: u64,
|
|
38
|
+
clock: &Clock,
|
|
39
|
+
ctx: &mut TxContext
|
|
40
|
+
)
|
|
41
|
+
*/
|
|
42
|
+
function getLeaveTx(input) {
|
|
43
|
+
input.tx.moveCall({
|
|
44
|
+
target: "".concat(input.lockedVaultPackageId, "::locked_period_vault::leave"),
|
|
45
|
+
typeArguments: [],
|
|
46
|
+
arguments: [input.tx.object(input.lockedVaultRegistry), input.tx.pure(input.index), input.tx.pure(constants_1.CLOCK)],
|
|
47
|
+
});
|
|
48
|
+
return input.tx;
|
|
49
|
+
}
|
|
50
|
+
exports.getLeaveTx = getLeaveTx;
|
|
51
|
+
/**
|
|
52
|
+
public fun unlock_receipt(
|
|
53
|
+
locked_vault_registry: &mut LockedVaultRegistry,
|
|
54
|
+
index: u64,
|
|
55
|
+
ctx: &mut TxContext
|
|
56
|
+
)
|
|
57
|
+
*/
|
|
58
|
+
function getUnlockReceiptTx(input) {
|
|
59
|
+
input.tx.moveCall({
|
|
60
|
+
target: "".concat(input.lockedVaultPackageId, "::locked_period_vault::unlock_receipt"),
|
|
61
|
+
typeArguments: [],
|
|
62
|
+
arguments: [input.tx.object(input.lockedVaultRegistry), input.tx.pure(input.index)],
|
|
63
|
+
});
|
|
64
|
+
return input.tx;
|
|
65
|
+
}
|
|
66
|
+
exports.getUnlockReceiptTx = getUnlockReceiptTx;
|
|
67
|
+
/**
|
|
68
|
+
public fun withdraw_incentive<T>(
|
|
69
|
+
locked_vault_registry: &mut LockedVaultRegistry,
|
|
70
|
+
index: u64,
|
|
71
|
+
ctx: &mut TxContext
|
|
72
|
+
): Coin<T>
|
|
73
|
+
*/
|
|
74
|
+
function getWithdrawIncentiveTx(input) {
|
|
75
|
+
var coin = input.tx.moveCall({
|
|
76
|
+
target: "".concat(input.lockedVaultPackageId, "::locked_period_vault::withdraw_incentive"),
|
|
77
|
+
typeArguments: ["0x2::sui::SUI"],
|
|
78
|
+
arguments: [input.tx.object(input.lockedVaultRegistry), input.tx.pure(input.index)],
|
|
79
|
+
});
|
|
80
|
+
input.tx.transferObjects([coin], input.sender);
|
|
81
|
+
return input.tx;
|
|
82
|
+
}
|
|
83
|
+
exports.getWithdrawIncentiveTx = getWithdrawIncentiveTx;
|
|
84
|
+
/**
|
|
85
|
+
public fun withdraw_premium<D_TOKEN, B_TOKEN>(
|
|
86
|
+
registry: &mut Registry,
|
|
87
|
+
locked_vault_registry: &mut LockedVaultRegistry,
|
|
88
|
+
index: u64,
|
|
89
|
+
ctx: &mut TxContext
|
|
90
|
+
): Coin<B_TOKEN>
|
|
91
|
+
*/
|
|
92
|
+
function getWithdrawPremiumTx(input) {
|
|
93
|
+
var coin = input.tx.moveCall({
|
|
94
|
+
target: "".concat(input.lockedVaultPackageId, "::locked_period_vault::withdraw_premium"),
|
|
95
|
+
typeArguments: input.typeArguments,
|
|
96
|
+
arguments: [input.tx.object(input.typusDovSingleRegistry), input.tx.object(input.lockedVaultRegistry), input.tx.pure(input.index)],
|
|
97
|
+
});
|
|
98
|
+
input.tx.transferObjects([coin], input.sender);
|
|
99
|
+
return input.tx;
|
|
100
|
+
}
|
|
101
|
+
exports.getWithdrawPremiumTx = getWithdrawPremiumTx;
|
|
@@ -94,6 +94,10 @@ export declare function getRedeemTx(input: {
|
|
|
94
94
|
}): TransactionBlock;
|
|
95
95
|
export declare function getNewBidTx(input: {
|
|
96
96
|
tx: TransactionBlock;
|
|
97
|
+
typusEcosystemVersion: string;
|
|
98
|
+
typusUserRegistry: string;
|
|
99
|
+
tgldRegistry: string;
|
|
100
|
+
typusLeaderboardRegistry: string;
|
|
97
101
|
typusFrameworkPackageId: string;
|
|
98
102
|
typusDovSinglePackageId: string;
|
|
99
103
|
typusDovSingleRegistry: string;
|