@typus/typus-sdk 1.2.56 → 1.2.58-v1
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/utils/recap2023.js
CHANGED
|
@@ -68,7 +68,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
68
68
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
69
69
|
exports.recap2023 = void 0;
|
|
70
70
|
var mainnet_json_1 = __importDefault(require("../mainnet.json"));
|
|
71
|
-
|
|
71
|
+
// import { getUserHistory } from "../utils/typus-dov-single-v2/user-history";
|
|
72
72
|
var view_function_1 = require("../utils/typus-dov-single-v2/view-function");
|
|
73
73
|
var client_1 = require("@mysten/sui.js/client");
|
|
74
74
|
var price_1 = require("../utils/price");
|
|
@@ -92,9 +92,7 @@ function recap2023(user) {
|
|
|
92
92
|
return [4 /*yield*/, (0, view_function_1.getVaults)(provider, mainnet_json_1.default.SINGLE_COLLATERAL_PACKAGE, mainnet_json_1.default.SINGLE_COLLATERAL_REGISTRY, [])];
|
|
93
93
|
case 1:
|
|
94
94
|
vaults = _p.sent();
|
|
95
|
-
|
|
96
|
-
case 2:
|
|
97
|
-
userHistory = _p.sent();
|
|
95
|
+
userHistory = [];
|
|
98
96
|
console.log(userHistory);
|
|
99
97
|
earn = new Map();
|
|
100
98
|
try {
|
|
@@ -137,7 +135,7 @@ function recap2023(user) {
|
|
|
137
135
|
// console.log(earn);
|
|
138
136
|
earn.delete("");
|
|
139
137
|
return [4 /*yield*/, (0, price_1.getLatestPriceUSD)()];
|
|
140
|
-
case
|
|
138
|
+
case 2:
|
|
141
139
|
prices = _p.sent();
|
|
142
140
|
sum = 0;
|
|
143
141
|
try {
|
|
@@ -156,7 +154,7 @@ function recap2023(user) {
|
|
|
156
154
|
finally { if (e_2) throw e_2.error; }
|
|
157
155
|
}
|
|
158
156
|
return [4 /*yield*/, (0, fetch_1.getUserStake)(provider, mainnet_json_1.default.NFT_TABLE, user)];
|
|
159
|
-
case
|
|
157
|
+
case 3:
|
|
160
158
|
res_1 = _p.sent();
|
|
161
159
|
// console.log(res_1!.number); // null
|
|
162
160
|
return [2 /*return*/, [sum, res_1]];
|
|
@@ -442,7 +442,7 @@ function getNewBidTx(input) {
|
|
|
442
442
|
input.typeArguments[1] == "0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI")) {
|
|
443
443
|
var _a = __read(input.tx.splitCoins(input.tx.gas, [input.tx.pure(input.premium_required)]), 1), coin = _a[0];
|
|
444
444
|
var result = input.tx.moveCall({
|
|
445
|
-
target: "".concat(input.typusDovSinglePackageId, "::tails_staking::
|
|
445
|
+
target: "".concat(input.typusDovSinglePackageId, "::tails_staking::new_bid"),
|
|
446
446
|
typeArguments: input.typeArguments,
|
|
447
447
|
arguments: [
|
|
448
448
|
input.tx.object(input.typusDovSingleRegistry),
|
|
@@ -453,11 +453,6 @@ function getNewBidTx(input) {
|
|
|
453
453
|
],
|
|
454
454
|
});
|
|
455
455
|
input.tx.transferObjects([input.tx.object(result[0])], input.user);
|
|
456
|
-
input.tx.moveCall({
|
|
457
|
-
target: "".concat(input.typusFrameworkPackageId, "::utils::transfer_coins"),
|
|
458
|
-
typeArguments: [input.typeArguments[1]],
|
|
459
|
-
arguments: [input.tx.object(result[1]), input.tx.pure(input.user)],
|
|
460
|
-
});
|
|
461
456
|
}
|
|
462
457
|
else {
|
|
463
458
|
var balance = input.tx.moveCall({
|
|
@@ -474,7 +469,7 @@ function getNewBidTx(input) {
|
|
|
474
469
|
arguments: [input.tx.object(balance)],
|
|
475
470
|
});
|
|
476
471
|
var result = input.tx.moveCall({
|
|
477
|
-
target: "".concat(input.typusDovSinglePackageId, "::tails_staking::
|
|
472
|
+
target: "".concat(input.typusDovSinglePackageId, "::tails_staking::new_bid"),
|
|
478
473
|
typeArguments: input.typeArguments,
|
|
479
474
|
arguments: [
|
|
480
475
|
input.tx.object(input.typusDovSingleRegistry),
|
|
@@ -485,11 +480,6 @@ function getNewBidTx(input) {
|
|
|
485
480
|
],
|
|
486
481
|
});
|
|
487
482
|
input.tx.transferObjects([input.tx.object(result[0])], input.user);
|
|
488
|
-
input.tx.moveCall({
|
|
489
|
-
target: "".concat(input.typusFrameworkPackageId, "::utils::transfer_coins"),
|
|
490
|
-
typeArguments: [input.typeArguments[1]],
|
|
491
|
-
arguments: [input.tx.object(result[1]), input.tx.pure(input.user)],
|
|
492
|
-
});
|
|
493
483
|
}
|
|
494
484
|
return input.tx;
|
|
495
485
|
}
|
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
import { SuiClient, SuiEvent } from "@mysten/sui.js/client";
|
|
1
|
+
import { EventId, SuiClient, SuiEvent } from "@mysten/sui.js/client";
|
|
2
2
|
import { Vault } from "./view-function";
|
|
3
|
-
export declare function
|
|
4
|
-
[key: string]: Vault;
|
|
5
|
-
}, sender: string, startTimeMs: number): Promise<TxHistory[]>;
|
|
6
|
-
export declare function getUserEvents(provider: SuiClient, sender: string, startTimeMs: number): Promise<SuiEvent[]>;
|
|
3
|
+
export declare function getUserEvents(provider: SuiClient, sender: string, cursor?: EventId | null): Promise<[SuiEvent[], EventId | null | undefined]>;
|
|
7
4
|
export declare function getAutoBidEvents(provider: SuiClient, originPackage: string, startTimeMs: number): Promise<SuiEvent[]>;
|
|
8
5
|
export interface TxHistory {
|
|
9
6
|
Index: string | undefined;
|
|
@@ -17,4 +14,7 @@ export interface TxHistory {
|
|
|
17
14
|
Date: Date;
|
|
18
15
|
txDigest: string;
|
|
19
16
|
}
|
|
20
|
-
export declare function
|
|
17
|
+
export declare function parseTxHistory(datas: Array<any>, originPackage: string, vaults: {
|
|
18
|
+
[key: string]: Vault;
|
|
19
|
+
}): Promise<Array<TxHistory>>;
|
|
20
|
+
export declare function getFromSentio(event: string, userAddress: string, startTimestamp: string): Promise<any[]>;
|
|
@@ -39,45 +39,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
39
39
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
40
40
|
};
|
|
41
41
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
-
exports.
|
|
42
|
+
exports.getFromSentio = exports.parseTxHistory = exports.getAutoBidEvents = exports.getUserEvents = void 0;
|
|
43
43
|
var token_1 = require("../token");
|
|
44
44
|
var bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
45
|
-
function
|
|
45
|
+
function getUserEvents(provider, sender, cursor) {
|
|
46
46
|
return __awaiter(this, void 0, void 0, function () {
|
|
47
|
-
var
|
|
48
|
-
return __generator(this, function (_a) {
|
|
49
|
-
switch (_a.label) {
|
|
50
|
-
case 0: return [4 /*yield*/, getUserEvents(provider, sender, startTimeMs)];
|
|
51
|
-
case 1:
|
|
52
|
-
datas1 = _a.sent();
|
|
53
|
-
return [4 /*yield*/, getAutoBidEvents(provider, originPackage, startTimeMs)];
|
|
54
|
-
case 2:
|
|
55
|
-
datas2 = _a.sent();
|
|
56
|
-
datas = datas1.concat(datas2.filter(function (x) {
|
|
57
|
-
// @ts-ignore
|
|
58
|
-
if (x.parsedJson.signer) {
|
|
59
|
-
// @ts-ignore
|
|
60
|
-
return x.parsedJson.signer == sender;
|
|
61
|
-
}
|
|
62
|
-
else if (x.type.endsWith("ExpUpEvent")) {
|
|
63
|
-
return true;
|
|
64
|
-
}
|
|
65
|
-
else {
|
|
66
|
-
return false;
|
|
67
|
-
}
|
|
68
|
-
}));
|
|
69
|
-
return [4 /*yield*/, parseTxHistory(datas, originPackage, vaults)];
|
|
70
|
-
case 3:
|
|
71
|
-
txHistory = _a.sent();
|
|
72
|
-
return [2 /*return*/, txHistory];
|
|
73
|
-
}
|
|
74
|
-
});
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
exports.getUserHistory = getUserHistory;
|
|
78
|
-
function getUserEvents(provider, sender, startTimeMs) {
|
|
79
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
80
|
-
var senderFilter, hasNextPage, cursor, datas, result;
|
|
47
|
+
var senderFilter, hasNextPage, datas, result;
|
|
81
48
|
return __generator(this, function (_a) {
|
|
82
49
|
switch (_a.label) {
|
|
83
50
|
case 0:
|
|
@@ -85,14 +52,13 @@ function getUserEvents(provider, sender, startTimeMs) {
|
|
|
85
52
|
Sender: sender,
|
|
86
53
|
};
|
|
87
54
|
hasNextPage = true;
|
|
88
|
-
cursor = undefined;
|
|
89
55
|
datas = [];
|
|
90
56
|
_a.label = 1;
|
|
91
57
|
case 1:
|
|
92
58
|
if (!hasNextPage) return [3 /*break*/, 3];
|
|
93
59
|
return [4 /*yield*/, provider.queryEvents({
|
|
94
60
|
query: senderFilter,
|
|
95
|
-
order: "
|
|
61
|
+
order: "ascending",
|
|
96
62
|
cursor: cursor,
|
|
97
63
|
})];
|
|
98
64
|
case 2:
|
|
@@ -102,11 +68,8 @@ function getUserEvents(provider, sender, startTimeMs) {
|
|
|
102
68
|
cursor = result.nextCursor;
|
|
103
69
|
// @ts-ignore
|
|
104
70
|
datas = datas.concat(result.data);
|
|
105
|
-
if (hasNextPage && Number(result.data[result.data.length - 1].timestampMs) < startTimeMs) {
|
|
106
|
-
return [3 /*break*/, 3];
|
|
107
|
-
}
|
|
108
71
|
return [3 /*break*/, 1];
|
|
109
|
-
case 3: return [2 /*return*/, datas];
|
|
72
|
+
case 3: return [2 /*return*/, [datas, cursor]];
|
|
110
73
|
}
|
|
111
74
|
});
|
|
112
75
|
});
|
|
@@ -159,9 +122,18 @@ function parseTxHistory(datas, originPackage, vaults) {
|
|
|
159
122
|
.filter(function (event) {
|
|
160
123
|
var type = event.type;
|
|
161
124
|
return event.packageId == originPackage || type.includes("typus_nft::First") || type.includes("typus_nft::ExpUpEvent");
|
|
125
|
+
})
|
|
126
|
+
.sort(function (a, b) {
|
|
127
|
+
// From Old to New!
|
|
128
|
+
if (a.timestampMs == b.timestampMs) {
|
|
129
|
+
return Number(a.id.eventSeq) - Number(b.id.eventSeq);
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
return Number(a.timestampMs) - Number(b.timestampMs);
|
|
133
|
+
}
|
|
162
134
|
})
|
|
163
135
|
.reduce(function (promise, event) { return __awaiter(_this, void 0, void 0, function () {
|
|
164
|
-
var txHistory, functionType, action, Action, Amount, Index, Period, Vault, RiskLevel, Tails, Exp, d_token, b_token, o_token, v, period, optionType, i, i, token, amount, deposit_amount, deposit_amount, balance, balance, profit, token, amount, amount, token, amount, size, token, amount, token, amount,
|
|
136
|
+
var txHistory, functionType, action, Action, Amount, Index, Period, Vault, RiskLevel, Tails, Exp, d_token, b_token, o_token, v, period, optionType, i, i, token, amount, deposit_amount, deposit_amount, balance, balance, profit, profit, token, amount, amount, token, amount, size, token, amount, token, amount, size, bidder_balance;
|
|
165
137
|
var _a;
|
|
166
138
|
return __generator(this, function (_b) {
|
|
167
139
|
switch (_b.label) {
|
|
@@ -170,6 +142,7 @@ function parseTxHistory(datas, originPackage, vaults) {
|
|
|
170
142
|
txHistory = _b.sent();
|
|
171
143
|
functionType = (_a = new RegExp("^([^::]+)::([^::]+)::([^<]+)").exec(event.type)) === null || _a === void 0 ? void 0 : _a.slice(1, 4);
|
|
172
144
|
action = functionType[2];
|
|
145
|
+
Tails = undefined;
|
|
173
146
|
Index = event.parsedJson.index || event.parsedJson.vault_index;
|
|
174
147
|
if (Index) {
|
|
175
148
|
v = vaults[Index];
|
|
@@ -281,10 +254,7 @@ function parseTxHistory(datas, originPackage, vaults) {
|
|
|
281
254
|
break;
|
|
282
255
|
case "ExpUpEvent":
|
|
283
256
|
i = txHistory.findIndex(function (x) { return x.txDigest == event.id.txDigest && x.Action != "First Deposit" && x.Action != "Stake"; });
|
|
284
|
-
if (i != -1) {
|
|
285
|
-
if (txHistory[i].Tails) {
|
|
286
|
-
return [2 /*return*/, txHistory];
|
|
287
|
-
}
|
|
257
|
+
if (i != -1 && txHistory[i].Tails == undefined) {
|
|
288
258
|
txHistory[i].Tails = "#".concat(event.parsedJson.number);
|
|
289
259
|
txHistory[i].Exp = event.parsedJson.exp_earn;
|
|
290
260
|
return [2 /*return*/, txHistory];
|
|
@@ -295,9 +265,7 @@ function parseTxHistory(datas, originPackage, vaults) {
|
|
|
295
265
|
Exp = event.parsedJson.exp_earn;
|
|
296
266
|
}
|
|
297
267
|
else {
|
|
298
|
-
|
|
299
|
-
Tails = "#".concat(event.parsedJson.number);
|
|
300
|
-
Exp = event.parsedJson.exp_earn;
|
|
268
|
+
return [2 /*return*/, txHistory];
|
|
301
269
|
}
|
|
302
270
|
break;
|
|
303
271
|
case "TransferNftEvent":
|
|
@@ -376,6 +344,11 @@ function parseTxHistory(datas, originPackage, vaults) {
|
|
|
376
344
|
Amount = "".concat((0, bignumber_js_1.default)(balance).toFixed(), " ").concat(b_token, "\n").concat((0, bignumber_js_1.default)(profit).toFixed(), " ").concat(d_token);
|
|
377
345
|
}
|
|
378
346
|
break;
|
|
347
|
+
case "WithdrawProfitEvent":
|
|
348
|
+
Action = "Harvest Gain";
|
|
349
|
+
profit = Number(event.parsedJson.profit) / Math.pow(10, (0, token_1.assetToDecimal)(d_token));
|
|
350
|
+
Amount = "".concat((0, bignumber_js_1.default)(profit).toFixed(), " ").concat(d_token);
|
|
351
|
+
break;
|
|
379
352
|
case "RedeemEvent":
|
|
380
353
|
token = (0, token_1.typeArgToAsset)("0x" + event.parsedJson.token.name);
|
|
381
354
|
amount = Number(event.parsedJson.amount) / Math.pow(10, (0, token_1.assetToDecimal)(token));
|
|
@@ -415,7 +388,6 @@ function parseTxHistory(datas, originPackage, vaults) {
|
|
|
415
388
|
Tails = "#".concat(event.parsedJson.number);
|
|
416
389
|
break;
|
|
417
390
|
case "NewBidEvent":
|
|
418
|
-
i = txHistory.findIndex(function (x) { return x.txDigest == event.id.txDigest; });
|
|
419
391
|
o_token = (0, token_1.typeArgToAsset)("0x" + event.parsedJson.o_token.name);
|
|
420
392
|
b_token = (0, token_1.typeArgToAsset)("0x" + event.parsedJson.b_token.name);
|
|
421
393
|
size = Number(event.parsedJson.size) / Math.pow(10, (0, token_1.assetToDecimal)(o_token));
|
|
@@ -425,15 +397,6 @@ function parseTxHistory(datas, originPackage, vaults) {
|
|
|
425
397
|
if (event.sender != event.parsedJson.signer) {
|
|
426
398
|
Action = "Auto " + Action;
|
|
427
399
|
}
|
|
428
|
-
if (i != -1) {
|
|
429
|
-
txHistory[i].Index = Index;
|
|
430
|
-
txHistory[i].Period = Period;
|
|
431
|
-
txHistory[i].Action = Action;
|
|
432
|
-
txHistory[i].Amount = Amount;
|
|
433
|
-
txHistory[i].Vault = Vault;
|
|
434
|
-
txHistory[i].RiskLevel = RiskLevel;
|
|
435
|
-
return [2 /*return*/, txHistory];
|
|
436
|
-
}
|
|
437
400
|
break;
|
|
438
401
|
default:
|
|
439
402
|
return [2 /*return*/, txHistory];
|
|
@@ -461,7 +424,8 @@ function parseTxHistory(datas, originPackage, vaults) {
|
|
|
461
424
|
});
|
|
462
425
|
});
|
|
463
426
|
}
|
|
464
|
-
|
|
427
|
+
exports.parseTxHistory = parseTxHistory;
|
|
428
|
+
function getFromSentio(event, userAddress, startTimestamp) {
|
|
465
429
|
return __awaiter(this, void 0, void 0, function () {
|
|
466
430
|
var apiUrl, headers, requestData, jsonData, response, data;
|
|
467
431
|
return __generator(this, function (_a) {
|
|
@@ -474,7 +438,7 @@ function getUserBid(startTimestamp, userAddress) {
|
|
|
474
438
|
};
|
|
475
439
|
requestData = {
|
|
476
440
|
sqlQuery: {
|
|
477
|
-
sql: "\n SELECT *\n FROM
|
|
441
|
+
sql: "\n SELECT *\n FROM ".concat(event, "\n WHERE distinct_id = \"").concat(userAddress, "\" && timestamp >= ").concat(startTimestamp, "\n ORDER BY timestamp DESC;\n "),
|
|
478
442
|
size: 1000,
|
|
479
443
|
},
|
|
480
444
|
};
|
|
@@ -494,4 +458,11 @@ function getUserBid(startTimestamp, userAddress) {
|
|
|
494
458
|
});
|
|
495
459
|
});
|
|
496
460
|
}
|
|
497
|
-
exports.
|
|
461
|
+
exports.getFromSentio = getFromSentio;
|
|
462
|
+
function getUserHistoryFromSentio(vaults, sender, startTimeMs) {
|
|
463
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
464
|
+
return __generator(this, function (_a) {
|
|
465
|
+
return [2 /*return*/];
|
|
466
|
+
});
|
|
467
|
+
});
|
|
468
|
+
}
|