@typus/typus-sdk 1.9.0 → 1.9.2

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.
@@ -51,15 +51,6 @@ var __read = (this && this.__read) || function (o, n) {
51
51
  }
52
52
  return ar;
53
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
54
  Object.defineProperty(exports, "__esModule", { value: true });
64
55
  exports.getVaults = getVaults;
65
56
  exports.getAuctions = getAuctions;
@@ -67,7 +58,6 @@ exports.getAuctionBids = getAuctionBids;
67
58
  exports.getDepositShares = getDepositShares;
68
59
  exports.getMyBids = getMyBids;
69
60
  exports.getRefundShares = getRefundShares;
70
- exports.getUserOwnedObjects = getUserOwnedObjects;
71
61
  var transactions_1 = require("@mysten/sui/transactions");
72
62
  var bcs_1 = require("@mysten/bcs");
73
63
  var utils_1 = require("../../src/utils");
@@ -513,7 +503,7 @@ function getMyBids(config, input) {
513
503
  // early return if no results
514
504
  return [2 /*return*/, {}];
515
505
  }
516
- bytes = results[results.length - 1].returnValues[0].bcs;
506
+ bytes = results[results.length - 1].returnValues[0][0];
517
507
  reader = new bcs_1.BcsReader(new Uint8Array(bytes));
518
508
  result = Array.from(new Map()).reduce(function (map, _a) {
519
509
  var _b = __read(_a, 2), key = _b[0], value = _b[1];
@@ -593,35 +583,3 @@ function getRefundShares(config, input) {
593
583
  });
594
584
  });
595
585
  }
596
- function getUserOwnedObjects(config, user) {
597
- return __awaiter(this, void 0, void 0, function () {
598
- var provider, result, hasNextPage, data, cursor;
599
- return __generator(this, function (_a) {
600
- switch (_a.label) {
601
- case 0:
602
- provider = config.gRpcClient();
603
- return [4 /*yield*/, provider.listOwnedObjects({ owner: user, include: { content: true } })];
604
- case 1:
605
- result = _a.sent();
606
- hasNextPage = result.hasNextPage;
607
- data = result.objects;
608
- cursor = result.cursor;
609
- _a.label = 2;
610
- case 2:
611
- if (!hasNextPage) return [3 /*break*/, 4];
612
- return [4 /*yield*/, provider.listOwnedObjects({
613
- owner: user,
614
- cursor: cursor,
615
- include: { content: true },
616
- })];
617
- case 3:
618
- result = _a.sent();
619
- data = __spreadArray(__spreadArray([], __read(data), false), __read(result.objects), false);
620
- hasNextPage = result.hasNextPage;
621
- cursor = result.cursor;
622
- return [3 /*break*/, 2];
623
- case 4: return [2 /*return*/, data];
624
- }
625
- });
626
- });
627
- }
@@ -118,11 +118,11 @@ function getFund(config, input) {
118
118
  results = (_a.sent())
119
119
  .commandResults;
120
120
  funds = {};
121
- // console.log(results);
122
121
  results === null || results === void 0 ? void 0 : results.forEach(function (result, i) {
123
122
  // @ts-ignore
124
123
  var bytes = result.returnValues[0].bcs;
125
124
  var reader = new bcs_1.BcsReader(new Uint8Array(bytes));
125
+ reader.readULEB();
126
126
  var fund = reader.readVec(function (reader) {
127
127
  return {
128
128
  balance: reader.read64(),
@@ -51,6 +51,17 @@ var __read = (this && this.__read) || function (o, n) {
51
51
  }
52
52
  return ar;
53
53
  };
54
+ var __values = (this && this.__values) || function(o) {
55
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
56
+ if (m) return m.call(o);
57
+ if (o && typeof o.length === "number") return {
58
+ next: function () {
59
+ if (o && i >= o.length) o = void 0;
60
+ return { value: o && o[i++], done: !o };
61
+ }
62
+ };
63
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
64
+ };
54
65
  Object.defineProperty(exports, "__esModule", { value: true });
55
66
  exports.getPairPrices = getPairPrices;
56
67
  exports.getLatestPrice = getLatestPrice;
@@ -197,13 +208,54 @@ function getPythLatestPriceBySymbols(symbols) {
197
208
  }
198
209
  function getLatestPriceUSD() {
199
210
  return __awaiter(this, void 0, void 0, function () {
200
- var prices;
201
- return __generator(this, function (_a) {
202
- switch (_a.label) {
211
+ var prices, _a, _b, pair, currentTimestampInSeconds, minuteAgo, res, price, result, e_2_1;
212
+ var e_2, _c;
213
+ return __generator(this, function (_d) {
214
+ switch (_d.label) {
203
215
  case 0: return [4 /*yield*/, getPythLatestPrice()];
204
216
  case 1:
205
- prices = (_a.sent());
206
- return [2 /*return*/, prices];
217
+ prices = (_d.sent());
218
+ _d.label = 2;
219
+ case 2:
220
+ _d.trys.push([2, 7, 8, 9]);
221
+ _a = __values(["SUIFUD", "SUIBUCK", "SUIAFSUI", "SCASUI", "USDYUSDC"]), _b = _a.next();
222
+ _d.label = 3;
223
+ case 3:
224
+ if (!!_b.done) return [3 /*break*/, 6];
225
+ pair = _b.value;
226
+ currentTimestampInSeconds = Math.floor(new Date().getTime() / 1000);
227
+ minuteAgo = currentTimestampInSeconds - 300;
228
+ return [4 /*yield*/, getPairPrices(pair, minuteAgo.toString(), currentTimestampInSeconds.toString())];
229
+ case 4:
230
+ res = _d.sent();
231
+ price = res.at(-1).price;
232
+ result = void 0;
233
+ if (pair.startsWith("SUI")) {
234
+ result = prices.get("SUI") / Number(price);
235
+ }
236
+ else if (pair.endsWith("SUI")) {
237
+ result = prices.get("SUI") * Number(price);
238
+ }
239
+ else {
240
+ result = Number(price);
241
+ }
242
+ prices.set(pair.replace("SUI", ""), result);
243
+ _d.label = 5;
244
+ case 5:
245
+ _b = _a.next();
246
+ return [3 /*break*/, 3];
247
+ case 6: return [3 /*break*/, 9];
248
+ case 7:
249
+ e_2_1 = _d.sent();
250
+ e_2 = { error: e_2_1 };
251
+ return [3 /*break*/, 9];
252
+ case 8:
253
+ try {
254
+ if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
255
+ }
256
+ finally { if (e_2) throw e_2.error; }
257
+ return [7 /*endfinally*/];
258
+ case 9: return [2 /*return*/, prices];
207
259
  }
208
260
  });
209
261
  });
@@ -59,7 +59,7 @@ exports.getExerciseFromSentio = getExerciseFromSentio;
59
59
  var typus_dov_single_v2_1 = require("../../../../src/typus-dov-single-v2");
60
60
  var constants_1 = require("../../../../src/constants");
61
61
  var headers = {
62
- "api-key": "g8vRPVCM3CScaTVGVT5X9Eh4fyEJDbmAE",
62
+ "api-key": "RIobs1PpAZ4SmHxY2InErtz0pL5LqHTtY",
63
63
  "Content-Type": "application/json",
64
64
  };
65
65
  function getFromSentio(event, userAddress, startTimestamp) {
@@ -71,7 +71,7 @@ function getFromSentio(event, userAddress, startTimestamp) {
71
71
  apiUrl = "https://app.sentio.xyz/api/v1/analytics/typus/typus_v2/sql/execute";
72
72
  requestData = {
73
73
  sqlQuery: {
74
- sql: "\n SELECT *\n FROM ".concat(event, "\n WHERE distinctId = '").concat(userAddress, "' AND timestamp >= ").concat(startTimestamp, "\n ORDER BY timestamp DESC;\n "),
74
+ sql: "\n SELECT *\n FROM ".concat(event, "\n WHERE distinct_id = '").concat(userAddress, "' AND timestamp >= ").concat(startTimestamp, "\n ORDER BY timestamp DESC;\n "),
75
75
  size: 1000,
76
76
  },
77
77
  };
@@ -86,7 +86,7 @@ function getFromSentio(event, userAddress, startTimestamp) {
86
86
  return [4 /*yield*/, response.json()];
87
87
  case 2:
88
88
  data = _a.sent();
89
- console.log(data);
89
+ // console.log(data);
90
90
  return [2 /*return*/, data.result.rows];
91
91
  }
92
92
  });
@@ -101,7 +101,7 @@ function getFromSentioWithExpUp(event, userAddress, startTimestamp) {
101
101
  apiUrl = "https://app.sentio.xyz/api/v1/analytics/typus/typus_v2/sql/execute";
102
102
  requestData = {
103
103
  sqlQuery: {
104
- sql: "\n SELECT *\n FROM ".concat(event, " N\n LEFT JOIN (\n SELECT number, distinctId, exp_earn, transaction_hash, log_index\n FROM ExpUp\n ) S ON N.transaction_hash = S.transaction_hash AND N.log_index + 1 = S.log_index\n WHERE N.distinctId = '").concat(userAddress, "' AND N.timestamp >= ").concat(startTimestamp, "\n ORDER BY N.timestamp DESC;\n "),
104
+ sql: "\n SELECT *\n FROM ".concat(event, " N\n LEFT JOIN (\n SELECT number, distinct_id, exp_earn, transaction_hash, log_index\n FROM ExpUp\n ) S ON N.transaction_hash = S.transaction_hash AND N.log_index + 1 = S.log_index\n WHERE N.distinct_id = '").concat(userAddress, "' AND N.timestamp >= ").concat(startTimestamp, "\n ORDER BY N.timestamp DESC;\n "),
105
105
  size: 1000,
106
106
  },
107
107
  };
@@ -50,7 +50,7 @@ function getExpLeaderBoardWithOwner(expLeaderBoard, ownerMap) {
50
50
  });
51
51
  }
52
52
  var headers = {
53
- "api-key": "g8vRPVCM3CScaTVGVT5X9Eh4fyEJDbmAE",
53
+ "api-key": "RIobs1PpAZ4SmHxY2InErtz0pL5LqHTtY",
54
54
  "Content-Type": "application/json",
55
55
  };
56
56
  function getExpLeaderBoard(startTimestamp, endTimestamp) {
@@ -55,7 +55,7 @@ exports.getAccumulatedUser = getAccumulatedUser;
55
55
  exports.getAccumulatedNotionalVolumeUSD = getAccumulatedNotionalVolumeUSD;
56
56
  exports.getSafuAccumulatedRewardGeneratedUSD = getSafuAccumulatedRewardGeneratedUSD;
57
57
  var headers = {
58
- "api-key": "g8vRPVCM3CScaTVGVT5X9Eh4fyEJDbmAE",
58
+ "api-key": "RIobs1PpAZ4SmHxY2InErtz0pL5LqHTtY",
59
59
  "Content-Type": "application/json",
60
60
  };
61
61
  function getTotalDepositorIncentive() {
@@ -96,7 +96,7 @@ function getTotalPremium() {
96
96
  apiUrl = "https://app.sentio.xyz/api/v1/insights/typus/typus_v2/query";
97
97
  requestData = {
98
98
  timeRange: {
99
- start: "now-1h",
99
+ start: "now",
100
100
  end: "now",
101
101
  step: 3600,
102
102
  timezone: "Europe/Paris",
@@ -148,7 +148,7 @@ function getAccumulatedRewardGeneratedUSD() {
148
148
  apiUrlV1 = "https://app.sentio.xyz/api/v1/insights/typus/typus_v1/query";
149
149
  requestDataV1 = {
150
150
  timeRange: {
151
- start: "now-1h",
151
+ start: "now",
152
152
  end: "now",
153
153
  step: 3600,
154
154
  timezone: "Asia/Taipei",
@@ -188,7 +188,7 @@ function getAccumulatedRewardGeneratedUSD() {
188
188
  apiUrl = "https://app.sentio.xyz/api/v1/insights/typus/typus_v2/query";
189
189
  requestData = {
190
190
  timeRange: {
191
- start: "now-1h",
191
+ start: "now",
192
192
  end: "now",
193
193
  step: 3600,
194
194
  timezone: "Asia/Taipei",
@@ -283,10 +283,12 @@ function getAccumulatedUser() {
283
283
  apiUrl = apiUrls_1_1.value;
284
284
  requestData = {
285
285
  timeRange: {
286
- start: "now-3d",
286
+ start: "now-1h",
287
287
  end: "now",
288
- step: 86400,
288
+ step: 3600,
289
+ timezone: "Asia/Taipei",
289
290
  },
291
+ limit: 1,
290
292
  queries: [
291
293
  {
292
294
  eventsQuery: {
@@ -305,7 +307,7 @@ function getAccumulatedUser() {
305
307
  },
306
308
  },
307
309
  groupBy: [],
308
- limit: 0,
310
+ limit: 1,
309
311
  functions: [],
310
312
  disabled: false,
311
313
  },
@@ -326,8 +328,8 @@ function getAccumulatedUser() {
326
328
  return [4 /*yield*/, response.json()];
327
329
  case 4:
328
330
  data = _b.sent();
329
- // console.dir(data.results[0].matrix, { depth: null });
330
- result.push(data.results[0].matrix.samples[0].values.at(-1).value);
331
+ // console.log(data.results[0].matrix.samples[0].values[0].value);
332
+ result.push(data.results[0].matrix.samples[0].values[0].value);
331
333
  _b.label = 5;
332
334
  case 5:
333
335
  apiUrls_1_1 = apiUrls_1.next();
@@ -373,9 +375,10 @@ function getAccumulatedNotionalVolumeUSD() {
373
375
  apiUrl = apiUrls_2_1.value;
374
376
  requestData = {
375
377
  timeRange: {
376
- start: "now-1h",
378
+ start: "now",
377
379
  end: "now",
378
380
  step: 3600,
381
+ timezone: "Asia/Taipei",
379
382
  },
380
383
  limit: 1,
381
384
  queries: [
@@ -443,7 +446,7 @@ function getSafuAccumulatedRewardGeneratedUSD() {
443
446
  apiUrl = "https://app.sentio.xyz/api/v1/insights/typus/typus_v2/query";
444
447
  requestData = {
445
448
  timeRange: {
446
- start: "now-1h",
449
+ start: "now",
447
450
  end: "now",
448
451
  step: 3600,
449
452
  timezone: "Asia/Taipei",
@@ -486,8 +489,5 @@ function getSafuAccumulatedRewardGeneratedUSD() {
486
489
  });
487
490
  });
488
491
  }
489
- // getTotalDepositorIncentive().then((res) => console.log(res));
490
- // getTotalPremium().then((res) => console.log(res));
491
- // getAccumulatedNotionalVolumeUSD().then((res) => console.log(res));
492
- // getAccumulatedUser().then((res) => console.log(res));
493
- // getAccumulatedRewardGeneratedUSD().then((res) => console.log(res));
492
+ // getAccumulatedNotionalVolumeUSD();
493
+ // getAccumulatedUser();
@@ -40,7 +40,7 @@ exports.getVaultHistorySummary = getVaultHistorySummary;
40
40
  exports.getFilledSummary = getFilledSummary;
41
41
  exports.getVaultHistory = getVaultHistory;
42
42
  var headers = {
43
- "api-key": "g8vRPVCM3CScaTVGVT5X9Eh4fyEJDbmAE",
43
+ "api-key": "RIobs1PpAZ4SmHxY2InErtz0pL5LqHTtY",
44
44
  "Content-Type": "application/json",
45
45
  };
46
46
  function getVaultHistorySummary(startTimestamp) {
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@typus/typus-sdk",
3
3
  "author": "Typus",
4
4
  "description": "typus sdk",
5
- "version": "1.9.0",
5
+ "version": "1.9.2",
6
6
  "dependencies": {
7
7
  "@mysten/bcs": "2.0.3",
8
8
  "@mysten/kiosk": "1.2.0",
@@ -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"
55
- }
53
+ "homepage": "https://github.com/Typus-Lab/typus-sdk#readme"
54
+ }
@@ -1,36 +0,0 @@
1
- import { KioskClient, KioskListing } from "@mysten/kiosk";
2
- import { SuiGraphQLClient } from "@mysten/sui/graphql";
3
- export interface TailsId {
4
- nftId: string;
5
- kiosk: string;
6
- kioskCap: string;
7
- tails: Tails | undefined;
8
- isPersonal: boolean;
9
- listing?: KioskListing;
10
- }
11
- export interface kioskOwnerCap {
12
- kioskId: string;
13
- objectId: string;
14
- isPersonal: boolean;
15
- }
16
- export declare function getTailsIds(kioskClient: KioskClient, NFT_PACKAGE_ORIGIN: string, kioskOwnerCaps: kioskOwnerCap[]): Promise<TailsId[]>;
17
- export interface TailsWithType extends Tails {
18
- type: string | null | undefined;
19
- }
20
- export declare function getTails(provider: SuiGraphQLClient, tailsIds: string[]): Promise<TailsWithType[]>;
21
- export interface Tails {
22
- id: string;
23
- name: string;
24
- number: string;
25
- url: string;
26
- level: string;
27
- exp: string;
28
- first_bid: string;
29
- first_deposit: string;
30
- first_deposit_nft: string;
31
- attributes: Map<string, string>;
32
- u64_padding: Map<string, string>;
33
- }
34
- export declare function getLevelExp(level: number): number | undefined;
35
- export declare const LevelExpVec: number[];
36
- export declare function calculateLevelReward(totalRewards: number, levelShares: number[], numOfHolders: number[]): number[];
@@ -1,269 +0,0 @@
1
- "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
- return new (P || (P = Promise))(function (resolve, reject) {
16
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
- step((generator = generator.apply(thisArg, _arguments || [])).next());
20
- });
21
- };
22
- var __generator = (this && this.__generator) || function (thisArg, body) {
23
- 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);
24
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
- function verb(n) { return function (v) { return step([n, v]); }; }
26
- function step(op) {
27
- if (f) throw new TypeError("Generator is already executing.");
28
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
29
- 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;
30
- if (y = 0, t) op = [op[0] & 2, t.value];
31
- switch (op[0]) {
32
- case 0: case 1: t = op; break;
33
- case 4: _.label++; return { value: op[1], done: false };
34
- case 5: _.label++; y = op[1]; op = [0]; continue;
35
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
- default:
37
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
- if (t[2]) _.ops.pop();
42
- _.trys.pop(); continue;
43
- }
44
- op = body.call(thisArg, _);
45
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
- }
48
- };
49
- var __values = (this && this.__values) || function(o) {
50
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
51
- if (m) return m.call(o);
52
- if (o && typeof o.length === "number") return {
53
- next: function () {
54
- if (o && i >= o.length) o = void 0;
55
- return { value: o && o[i++], done: !o };
56
- }
57
- };
58
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
59
- };
60
- Object.defineProperty(exports, "__esModule", { value: true });
61
- exports.LevelExpVec = void 0;
62
- exports.getTailsIds = getTailsIds;
63
- exports.getTails = getTails;
64
- exports.getLevelExp = getLevelExp;
65
- exports.calculateLevelReward = calculateLevelReward;
66
- function getTailsIds(kioskClient, NFT_PACKAGE_ORIGIN, kioskOwnerCaps) {
67
- return __awaiter(this, void 0, void 0, function () {
68
- var Tails, _loop_1, kioskOwnerCaps_1, kioskOwnerCaps_1_1, kioskOwnerCap, e_1_1;
69
- var e_1, _a;
70
- return __generator(this, function (_b) {
71
- switch (_b.label) {
72
- case 0:
73
- Tails = [];
74
- _loop_1 = function (kioskOwnerCap) {
75
- var res, tails;
76
- return __generator(this, function (_c) {
77
- switch (_c.label) {
78
- case 0: return [4 /*yield*/, kioskClient.getKiosk({ id: kioskOwnerCap.kioskId })];
79
- case 1:
80
- res = _c.sent();
81
- tails = res.items
82
- .filter(function (item) { return item.type == "".concat(NFT_PACKAGE_ORIGIN, "::typus_nft::Tails"); })
83
- .map(function (item) {
84
- // console.log(item);
85
- // @ts-ignore
86
- var tails = item.data;
87
- var t = {
88
- kiosk: kioskOwnerCap.kioskId,
89
- kioskCap: kioskOwnerCap.objectId,
90
- isPersonal: kioskOwnerCap.isPersonal,
91
- nftId: item.objectId,
92
- listing: item.listing,
93
- tails: tails,
94
- };
95
- return t;
96
- });
97
- // console.log(tails);
98
- Tails = Tails.concat(tails);
99
- return [2 /*return*/];
100
- }
101
- });
102
- };
103
- _b.label = 1;
104
- case 1:
105
- _b.trys.push([1, 6, 7, 8]);
106
- kioskOwnerCaps_1 = __values(kioskOwnerCaps), kioskOwnerCaps_1_1 = kioskOwnerCaps_1.next();
107
- _b.label = 2;
108
- case 2:
109
- if (!!kioskOwnerCaps_1_1.done) return [3 /*break*/, 5];
110
- kioskOwnerCap = kioskOwnerCaps_1_1.value;
111
- return [5 /*yield**/, _loop_1(kioskOwnerCap)];
112
- case 3:
113
- _b.sent();
114
- _b.label = 4;
115
- case 4:
116
- kioskOwnerCaps_1_1 = kioskOwnerCaps_1.next();
117
- return [3 /*break*/, 2];
118
- case 5: return [3 /*break*/, 8];
119
- case 6:
120
- e_1_1 = _b.sent();
121
- e_1 = { error: e_1_1 };
122
- return [3 /*break*/, 8];
123
- case 7:
124
- try {
125
- if (kioskOwnerCaps_1_1 && !kioskOwnerCaps_1_1.done && (_a = kioskOwnerCaps_1.return)) _a.call(kioskOwnerCaps_1);
126
- }
127
- finally { if (e_1) throw e_1.error; }
128
- return [7 /*endfinally*/];
129
- case 8: return [2 /*return*/, Tails];
130
- }
131
- });
132
- });
133
- }
134
- function getTails(provider, tailsIds) {
135
- return __awaiter(this, void 0, void 0, function () {
136
- var Tails, len, results, _loop_2, _a, _b, result;
137
- var e_2, _c;
138
- return __generator(this, function (_d) {
139
- switch (_d.label) {
140
- case 0:
141
- Tails = [];
142
- _d.label = 1;
143
- case 1:
144
- if (!(tailsIds.length > 0)) return [3 /*break*/, 3];
145
- len = tailsIds.length > 50 ? 50 : tailsIds.length;
146
- return [4 /*yield*/, provider.getObjects({ objectIds: tailsIds.splice(0, len), include: { json: true } })];
147
- case 2:
148
- results = _d.sent();
149
- _loop_2 = function (result) {
150
- if (result instanceof Error) {
151
- console.error(result.cause);
152
- return "continue";
153
- }
154
- var json = result.json;
155
- // @ts-ignore
156
- var tails = json;
157
- var attributes = new Map();
158
- // @ts-ignore
159
- json.attributes.contents.forEach(function (f) { return attributes.set(f.key, f.value); });
160
- var u64_padding = new Map();
161
- // @ts-ignore
162
- json.u64_padding.contents.forEach(function (f) { return u64_padding.set(f.key, f.value); });
163
- tails.attributes = attributes;
164
- tails.u64_padding = u64_padding;
165
- // @ts-ignore
166
- Tails.push(__assign(__assign({}, tails), { type: result.type }));
167
- };
168
- try {
169
- for (_a = (e_2 = void 0, __values(results.objects)), _b = _a.next(); !_b.done; _b = _a.next()) {
170
- result = _b.value;
171
- _loop_2(result);
172
- }
173
- }
174
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
175
- finally {
176
- try {
177
- if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
178
- }
179
- finally { if (e_2) throw e_2.error; }
180
- }
181
- return [3 /*break*/, 1];
182
- case 3: return [2 /*return*/, Tails];
183
- }
184
- });
185
- });
186
- }
187
- function getLevelExp(level) {
188
- switch (level) {
189
- case 1:
190
- return exports.LevelExpVec[1];
191
- case 2:
192
- return exports.LevelExpVec[2];
193
- case 3:
194
- return exports.LevelExpVec[3];
195
- case 4:
196
- return exports.LevelExpVec[4];
197
- case 5:
198
- return exports.LevelExpVec[5];
199
- case 6:
200
- return exports.LevelExpVec[6];
201
- case 7:
202
- return exports.LevelExpVec[7];
203
- }
204
- }
205
- exports.LevelExpVec = [0, 0, 1000, 50000, 250000, 1000000, 5000000, 20000000];
206
- function calculateLevelReward(totalRewards, levelShares, numOfHolders) {
207
- // Step 1: Calculate original level rewards (per holder)
208
- var totalShares = levelShares.reduce(function (acc, share) { return acc + share; }, 0);
209
- var originalRewardPerHolder = levelShares.map(function (levelShare, index) {
210
- var num = numOfHolders[index];
211
- var levelRewardPerHolder = num > 0 ? (totalRewards * levelShare) / totalShares / num : 0;
212
- return Math.floor(levelRewardPerHolder);
213
- });
214
- var originalLevelRewards = originalRewardPerHolder.map(function (reward, index) { return reward * numOfHolders[index]; });
215
- var distributedRewards = originalLevelRewards.reduce(function (acc, reward) { return acc + reward; }, 0);
216
- var emptyLevelRewards = totalRewards - distributedRewards;
217
- // Step 2: Distribute rewards from empty levels
218
- var reversedOriginalRewardPerHolder = originalRewardPerHolder.slice().reverse();
219
- var reversedNumOfHolders = numOfHolders.slice().reverse();
220
- var reversedScaledRewardPerHolder = [];
221
- if (emptyLevelRewards > 0) {
222
- var undistributedRewards_1 = emptyLevelRewards;
223
- var uncalculatedDistributedRewards_1 = distributedRewards;
224
- reversedScaledRewardPerHolder = reversedOriginalRewardPerHolder.map(function (rewardPerHolder, index) {
225
- var num = reversedNumOfHolders[index];
226
- var scaledRewardPerHolder = num > 0
227
- ? uncalculatedDistributedRewards_1 > 0
228
- ? (rewardPerHolder * (uncalculatedDistributedRewards_1 + undistributedRewards_1)) / uncalculatedDistributedRewards_1
229
- : rewardPerHolder
230
- : 0;
231
- undistributedRewards_1 -= (scaledRewardPerHolder - rewardPerHolder) * num;
232
- uncalculatedDistributedRewards_1 -= rewardPerHolder * num;
233
- return Math.floor(scaledRewardPerHolder);
234
- });
235
- }
236
- else {
237
- reversedScaledRewardPerHolder = reversedOriginalRewardPerHolder.slice();
238
- }
239
- // Step 3: Capped level reward
240
- var reversedCappedRewardPerHolder = [reversedOriginalRewardPerHolder[0]];
241
- var tempHighLevelReward = 0;
242
- reversedScaledRewardPerHolder.forEach(function (highLevelReward, index) {
243
- var lowLevelReward = reversedScaledRewardPerHolder[index + 1] || 0;
244
- tempHighLevelReward =
245
- highLevelReward > 0
246
- ? tempHighLevelReward > 0
247
- ? Math.min(highLevelReward, tempHighLevelReward)
248
- : highLevelReward
249
- : tempHighLevelReward;
250
- reversedCappedRewardPerHolder.push(tempHighLevelReward > 0 ? Math.min(lowLevelReward, tempHighLevelReward) : lowLevelReward);
251
- });
252
- reversedCappedRewardPerHolder.pop();
253
- var cappedRewardPerHolder = reversedCappedRewardPerHolder.slice().reverse();
254
- // Step 4: Distribute capped reward from Step 3 into each level
255
- var distributedRewardsStep4 = reversedCappedRewardPerHolder.reduce(function (acc, reward, index) { return acc + reward * reversedNumOfHolders[index]; }, 0);
256
- var undistributedRewardsStep4 = totalRewards - distributedRewardsStep4;
257
- var uncalculatedDistributedRewardsStep4 = distributedRewardsStep4;
258
- var levelReward = cappedRewardPerHolder.map(function (rewardPerHolder, index) {
259
- var num = reversedNumOfHolders[index];
260
- var scaledRewardPerHolder = uncalculatedDistributedRewardsStep4 > 0
261
- ? (rewardPerHolder * (uncalculatedDistributedRewardsStep4 + undistributedRewardsStep4)) /
262
- uncalculatedDistributedRewardsStep4
263
- : rewardPerHolder;
264
- undistributedRewardsStep4 -= (scaledRewardPerHolder - rewardPerHolder) * num;
265
- uncalculatedDistributedRewardsStep4 -= rewardPerHolder * num;
266
- return Math.floor(scaledRewardPerHolder);
267
- });
268
- return levelReward;
269
- }
@@ -1 +0,0 @@
1
- export * from "./fetch";
@@ -1,17 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./fetch"), exports);