@reyaxyz/community-sdk 0.8.2 → 0.9.0

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.
Files changed (49) hide show
  1. package/dist/index.js +1 -0
  2. package/dist/index.js.map +1 -1
  3. package/dist/modules/trading-league/index.js +14 -0
  4. package/dist/modules/trading-league/index.js.map +1 -1
  5. package/dist/modules/trading-league/services/claim-rank/index.js +63 -0
  6. package/dist/modules/trading-league/services/claim-rank/index.js.map +1 -0
  7. package/dist/modules/trading-league/services/claim-rank/types.js +3 -0
  8. package/dist/modules/trading-league/services/claim-rank/types.js.map +1 -0
  9. package/dist/modules/trading-league/services/get-leaderboard/mock.js +0 -1
  10. package/dist/modules/trading-league/services/get-leaderboard/mock.js.map +1 -1
  11. package/dist/modules/trading-league/services/get-leaderboard/types.js.map +1 -1
  12. package/dist/modules/trading-league/services/get-user-leaderboard-data/index.js +55 -0
  13. package/dist/modules/trading-league/services/get-user-leaderboard-data/index.js.map +1 -0
  14. package/dist/modules/trading-league/services/get-user-leaderboard-data/mock.js +20 -0
  15. package/dist/modules/trading-league/services/get-user-leaderboard-data/mock.js.map +1 -0
  16. package/dist/modules/trading-league/services/get-user-leaderboard-data/types.js +3 -0
  17. package/dist/modules/trading-league/services/get-user-leaderboard-data/types.js.map +1 -0
  18. package/dist/modules/trading-league/services/index.js +4 -0
  19. package/dist/modules/trading-league/services/index.js.map +1 -1
  20. package/dist/types/index.d.ts +1 -0
  21. package/dist/types/index.d.ts.map +1 -1
  22. package/dist/types/modules/trading-league/index.d.ts +3 -1
  23. package/dist/types/modules/trading-league/index.d.ts.map +1 -1
  24. package/dist/types/modules/trading-league/services/claim-rank/index.d.ts +3 -0
  25. package/dist/types/modules/trading-league/services/claim-rank/index.d.ts.map +1 -0
  26. package/dist/types/modules/trading-league/services/claim-rank/types.d.ts +8 -0
  27. package/dist/types/modules/trading-league/services/claim-rank/types.d.ts.map +1 -0
  28. package/dist/types/modules/trading-league/services/get-leaderboard/mock.d.ts.map +1 -1
  29. package/dist/types/modules/trading-league/services/get-leaderboard/types.d.ts +0 -1
  30. package/dist/types/modules/trading-league/services/get-leaderboard/types.d.ts.map +1 -1
  31. package/dist/types/modules/trading-league/services/get-user-leaderboard-data/index.d.ts +3 -0
  32. package/dist/types/modules/trading-league/services/get-user-leaderboard-data/index.d.ts.map +1 -0
  33. package/dist/types/modules/trading-league/services/get-user-leaderboard-data/mock.d.ts +3 -0
  34. package/dist/types/modules/trading-league/services/get-user-leaderboard-data/mock.d.ts.map +1 -0
  35. package/dist/types/modules/trading-league/services/get-user-leaderboard-data/types.d.ts +15 -0
  36. package/dist/types/modules/trading-league/services/get-user-leaderboard-data/types.d.ts.map +1 -0
  37. package/dist/types/modules/trading-league/services/index.d.ts +4 -0
  38. package/dist/types/modules/trading-league/services/index.d.ts.map +1 -1
  39. package/package.json +4 -4
  40. package/src/index.ts +1 -0
  41. package/src/modules/trading-league/index.ts +16 -1
  42. package/src/modules/trading-league/services/claim-rank/index.ts +21 -0
  43. package/src/modules/trading-league/services/claim-rank/types.ts +9 -0
  44. package/src/modules/trading-league/services/get-leaderboard/mock.ts +0 -1
  45. package/src/modules/trading-league/services/get-leaderboard/types.ts +0 -1
  46. package/src/modules/trading-league/services/get-user-leaderboard-data/index.ts +19 -0
  47. package/src/modules/trading-league/services/get-user-leaderboard-data/mock.ts +22 -0
  48. package/src/modules/trading-league/services/get-user-leaderboard-data/types.ts +16 -0
  49. package/src/modules/trading-league/services/index.ts +4 -0
package/dist/index.js CHANGED
@@ -20,4 +20,5 @@ __exportStar(require("./modules/lge/services/get-lge-boost-rate/types"), exports
20
20
  __exportStar(require("./modules/twitter/services/get-auth-url/types"), exports);
21
21
  __exportStar(require("./modules/vote/types"), exports);
22
22
  __exportStar(require("./modules/trading-league/services/get-leaderboard/types"), exports);
23
+ __exportStar(require("./modules/trading-league/services/get-user-leaderboard-data/types"), exports);
23
24
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"/","sources":["index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,sFAAoE;AACpE,kFAAgE;AAChE,gFAA8D;AAC9D,uDAAqC;AACrC,0FAAwE","sourcesContent":["export * from './client';\nexport * from './modules/lge/services/get-account-lge-status/types';\nexport * from './modules/lge/services/get-lge-boost-rate/types';\nexport * from './modules/twitter/services/get-auth-url/types';\nexport * from './modules/vote/types';\nexport * from './modules/trading-league/services/get-leaderboard/types';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"/","sources":["index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,sFAAoE;AACpE,kFAAgE;AAChE,gFAA8D;AAC9D,uDAAqC;AACrC,0FAAwE;AACxE,oGAAkF","sourcesContent":["export * from './client';\nexport * from './modules/lge/services/get-account-lge-status/types';\nexport * from './modules/lge/services/get-lge-boost-rate/types';\nexport * from './modules/twitter/services/get-auth-url/types';\nexport * from './modules/vote/types';\nexport * from './modules/trading-league/services/get-leaderboard/types';\nexport * from './modules/trading-league/services/get-user-leaderboard-data/types';\n"]}
@@ -40,6 +40,13 @@ var services_1 = require("./services");
40
40
  var TradingLeagueModule = /** @class */ (function () {
41
41
  function TradingLeagueModule() {
42
42
  }
43
+ TradingLeagueModule.prototype.claimRank = function (params) {
44
+ return __awaiter(this, void 0, void 0, function () {
45
+ return __generator(this, function (_a) {
46
+ return [2 /*return*/, (0, services_1.claimRank)(params)];
47
+ });
48
+ });
49
+ };
43
50
  TradingLeagueModule.prototype.getLeaderboard = function (params) {
44
51
  return __awaiter(this, void 0, void 0, function () {
45
52
  return __generator(this, function (_a) {
@@ -47,6 +54,13 @@ var TradingLeagueModule = /** @class */ (function () {
47
54
  });
48
55
  });
49
56
  };
57
+ TradingLeagueModule.prototype.getUserLeaderboardData = function (params) {
58
+ return __awaiter(this, void 0, void 0, function () {
59
+ return __generator(this, function (_a) {
60
+ return [2 /*return*/, (0, services_1.getUserLeaderboardData)(params)];
61
+ });
62
+ });
63
+ };
50
64
  return TradingLeagueModule;
51
65
  }());
52
66
  exports.default = TradingLeagueModule;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"/","sources":["modules/trading-league/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAkE;AAElE;IAAA;IAIA,CAAC;IAHO,4CAAc,GAApB,UAAqB,MAA4B;;;gBAC/C,sBAAO,IAAA,yBAAc,EAAC,MAAM,CAAC,EAAC;;;KAC/B;IACH,0BAAC;AAAD,CAAC,AAJD,IAIC","sourcesContent":["import { getLeaderboard, GetLeaderboardParams } from './services';\n\nexport default class TradingLeagueModule {\n async getLeaderboard(params: GetLeaderboardParams) {\n return getLeaderboard(params);\n }\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"/","sources":["modules/trading-league/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAOoB;AAEpB;IAAA;IAYA,CAAC;IAXO,uCAAS,GAAf,UAAgB,MAAuB;;;gBACrC,sBAAO,IAAA,oBAAS,EAAC,MAAM,CAAC,EAAC;;;KAC1B;IAEK,4CAAc,GAApB,UAAqB,MAA4B;;;gBAC/C,sBAAO,IAAA,yBAAc,EAAC,MAAM,CAAC,EAAC;;;KAC/B;IAEK,oDAAsB,GAA5B,UAA6B,MAAoC;;;gBAC/D,sBAAO,IAAA,iCAAsB,EAAC,MAAM,CAAC,EAAC;;;KACvC;IACH,0BAAC;AAAD,CAAC,AAZD,IAYC","sourcesContent":["import {\n getLeaderboard,\n GetLeaderboardParams,\n getUserLeaderboardData,\n GetUserLeaderboardDataParams,\n claimRank,\n ClaimRankParams,\n} from './services';\n\nexport default class TradingLeagueModule {\n async claimRank(params: ClaimRankParams) {\n return claimRank(params);\n }\n\n async getLeaderboard(params: GetLeaderboardParams) {\n return getLeaderboard(params);\n }\n\n async getUserLeaderboardData(params: GetUserLeaderboardDataParams) {\n return getUserLeaderboardData(params);\n }\n}\n"]}
@@ -0,0 +1,63 @@
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.claimRank = void 0;
40
+ // TODO: Write proper implementation
41
+ var claimRank = function (_a) {
42
+ var address = _a.address;
43
+ return __awaiter(void 0, void 0, void 0, function () {
44
+ return __generator(this, function (_b) {
45
+ switch (_b.label) {
46
+ case 0: return [4 /*yield*/, new Promise(function (resolve, reject) {
47
+ setTimeout(function () {
48
+ var error = Math.random() * 100 > 50;
49
+ if (error) {
50
+ reject(new Error("Claim Rank for ".concat(address, " error")));
51
+ }
52
+ resolve({
53
+ success: true,
54
+ });
55
+ }, Math.random() * 100 + 1000);
56
+ })];
57
+ case 1: return [2 /*return*/, _b.sent()];
58
+ }
59
+ });
60
+ });
61
+ };
62
+ exports.claimRank = claimRank;
63
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"/","sources":["modules/trading-league/services/claim-rank/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,oCAAoC;AAC7B,IAAM,SAAS,GAAG,UAAO,EAEd;QADhB,OAAO,aAAA;;;;wBAEA,qBAAM,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;wBACvC,UAAU,CACR;4BACE,IAAM,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,EAAE,CAAC;4BACvC,IAAI,KAAK,EAAE,CAAC;gCACV,MAAM,CAAC,IAAI,KAAK,CAAC,yBAAkB,OAAO,WAAQ,CAAC,CAAC,CAAC;4BACvD,CAAC;4BACD,OAAO,CAAC;gCACN,OAAO,EAAE,IAAI;6BACd,CAAC,CAAC;wBACL,CAAC,EACD,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,IAAI,CAC3B,CAAC;oBACJ,CAAC,CAAC,EAAA;wBAbF,sBAAO,SAaL,EAAC;;;;CACJ,CAAC;AAjBW,QAAA,SAAS,aAiBpB","sourcesContent":["import { ClaimRankParams, ClaimRankResult } from './types';\n\n// TODO: Write proper implementation\nexport const claimRank = async ({\n address,\n}: ClaimRankParams): Promise<ClaimRankResult> => {\n return await new Promise((resolve, reject) => {\n setTimeout(\n () => {\n const error = Math.random() * 100 > 50;\n if (error) {\n reject(new Error(`Claim Rank for ${address} error`));\n }\n resolve({\n success: true,\n });\n },\n Math.random() * 100 + 1000,\n );\n });\n};\n"]}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"/","sources":["modules/trading-league/services/claim-rank/types.ts"],"names":[],"mappings":"","sourcesContent":["import { LeaderboardEntity } from '../get-leaderboard/types';\n\nexport type ClaimRankParams = {\n address: LeaderboardEntity['address'];\n};\n\nexport type ClaimRankResult = {\n success: boolean;\n};\n"]}
@@ -18,7 +18,6 @@ function generateMockData(recordsCount) {
18
18
  liquidityXp: Math.random() * 100000,
19
19
  rank: Math.floor(Math.random() * recordsCount) + 1,
20
20
  ranking: i + 1,
21
- totalXp: Math.random() * 100000,
22
21
  tradingXp: Math.random() * 10000,
23
22
  });
24
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mock.js","sourceRoot":"/","sources":["modules/trading-league/services/get-leaderboard/mock.ts"],"names":[],"mappings":";;;AAEA,SAAgB,gBAAgB,CAAC,YAAoB;IACnD,IAAM,UAAU,GAAG,kBAAkB,CAAC;IACtC,IAAM,QAAQ,GAAwB,EAAE,CAAC;IAEzC,IAAM,eAAe,GAAG;QACtB,IAAI,OAAO,GAAG,IAAI,CAAC;QACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5B,OAAO,IAAI,UAAU,CAAC,MAAM,CAC1B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAC9C,CAAC;QACJ,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;IAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,QAAQ,CAAC,IAAI,CAAC;YACZ,OAAO,EAAE,eAAe,EAAE;YAC1B,YAAY,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC9D,WAAW,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM;YACnC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,YAAY,CAAC,GAAG,CAAC;YAClD,OAAO,EAAE,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM;YAC/B,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,KAAK;SACjC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AA3BD,4CA2BC","sourcesContent":["import { LeaderboardEntity } from './types';\n\nexport function generateMockData(recordsCount: number): LeaderboardEntity[] {\n const characters = '0123456789ABCDEF';\n const mockData: LeaderboardEntity[] = [];\n\n const generateAddress = () => {\n let address = '0x';\n for (let i = 0; i < 40; i++) {\n address += characters.charAt(\n Math.floor(Math.random() * characters.length),\n );\n }\n return address;\n };\n\n for (let i = 0; i < recordsCount; i++) {\n mockData.push({\n address: generateAddress(),\n currentBoost: parseFloat((Math.random() * 5 + 0.1).toFixed(1)),\n liquidityXp: Math.random() * 100000,\n rank: Math.floor(Math.random() * recordsCount) + 1,\n ranking: i + 1,\n totalXp: Math.random() * 100000,\n tradingXp: Math.random() * 10000,\n });\n }\n\n return mockData;\n}\n"]}
1
+ {"version":3,"file":"mock.js","sourceRoot":"/","sources":["modules/trading-league/services/get-leaderboard/mock.ts"],"names":[],"mappings":";;;AAEA,SAAgB,gBAAgB,CAAC,YAAoB;IACnD,IAAM,UAAU,GAAG,kBAAkB,CAAC;IACtC,IAAM,QAAQ,GAAwB,EAAE,CAAC;IAEzC,IAAM,eAAe,GAAG;QACtB,IAAI,OAAO,GAAG,IAAI,CAAC;QACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5B,OAAO,IAAI,UAAU,CAAC,MAAM,CAC1B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAC9C,CAAC;QACJ,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;IAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,QAAQ,CAAC,IAAI,CAAC;YACZ,OAAO,EAAE,eAAe,EAAE;YAC1B,YAAY,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC9D,WAAW,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM;YACnC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,YAAY,CAAC,GAAG,CAAC;YAClD,OAAO,EAAE,CAAC,GAAG,CAAC;YACd,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,KAAK;SACjC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AA1BD,4CA0BC","sourcesContent":["import { LeaderboardEntity } from './types';\n\nexport function generateMockData(recordsCount: number): LeaderboardEntity[] {\n const characters = '0123456789ABCDEF';\n const mockData: LeaderboardEntity[] = [];\n\n const generateAddress = () => {\n let address = '0x';\n for (let i = 0; i < 40; i++) {\n address += characters.charAt(\n Math.floor(Math.random() * characters.length),\n );\n }\n return address;\n };\n\n for (let i = 0; i < recordsCount; i++) {\n mockData.push({\n address: generateAddress(),\n currentBoost: parseFloat((Math.random() * 5 + 0.1).toFixed(1)),\n liquidityXp: Math.random() * 100000,\n rank: Math.floor(Math.random() * recordsCount) + 1,\n ranking: i + 1,\n tradingXp: Math.random() * 10000,\n });\n }\n\n return mockData;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"/","sources":["modules/trading-league/services/get-leaderboard/types.ts"],"names":[],"mappings":"","sourcesContent":["export type LeaderboardEntity = {\n address: string;\n currentBoost: number;\n liquidityXp: number;\n rank: number;\n totalXp: number;\n ranking: number;\n tradingXp: number;\n};\n\nexport type GetLeaderboardParams = {\n page: number;\n perPage: number;\n};\nexport type GetLeaderboardResult = LeaderboardEntity[];\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"/","sources":["modules/trading-league/services/get-leaderboard/types.ts"],"names":[],"mappings":"","sourcesContent":["export type LeaderboardEntity = {\n address: string;\n currentBoost: number;\n liquidityXp: number;\n rank: number;\n ranking: number;\n tradingXp: number;\n};\n\nexport type GetLeaderboardParams = {\n page: number;\n perPage: number;\n};\nexport type GetLeaderboardResult = LeaderboardEntity[];\n"]}
@@ -0,0 +1,55 @@
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.getUserLeaderboardData = void 0;
40
+ var mock_1 = require("./mock");
41
+ // TODO: Write proper implementation
42
+ var getUserLeaderboardData = function (params) { return __awaiter(void 0, void 0, void 0, function () {
43
+ return __generator(this, function (_a) {
44
+ switch (_a.label) {
45
+ case 0: return [4 /*yield*/, new Promise(function (resolve) {
46
+ setTimeout(function () {
47
+ resolve((0, mock_1.generateMockData)(params));
48
+ }, Math.random() * 100 + 1000);
49
+ })];
50
+ case 1: return [2 /*return*/, _a.sent()];
51
+ }
52
+ });
53
+ }); };
54
+ exports.getUserLeaderboardData = getUserLeaderboardData;
55
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"/","sources":["modules/trading-league/services/get-user-leaderboard-data/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,+BAA0C;AAE1C,oCAAoC;AAC7B,IAAM,sBAAsB,GAAG,UACpC,MAAoC;;;oBAE7B,qBAAM,IAAI,OAAO,CAAC,UAAC,OAAO;oBAC/B,UAAU,CACR;wBACE,OAAO,CAAC,IAAA,uBAAgB,EAAC,MAAM,CAAC,CAAC,CAAC;oBACpC,CAAC,EACD,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,IAAI,CAC3B,CAAC;gBACJ,CAAC,CAAC,EAAA;oBAPF,sBAAO,SAOL,EAAC;;;KACJ,CAAC;AAXW,QAAA,sBAAsB,0BAWjC","sourcesContent":["import {\n GetUserLeaderboardDataParams,\n GetUserLeaderboardDataResult,\n} from './types';\nimport { generateMockData } from './mock';\n\n// TODO: Write proper implementation\nexport const getUserLeaderboardData = async (\n params: GetUserLeaderboardDataParams,\n): Promise<GetUserLeaderboardDataResult> => {\n return await new Promise((resolve) => {\n setTimeout(\n () => {\n resolve(generateMockData(params));\n },\n Math.random() * 100 + 1000,\n );\n });\n};\n"]}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generateMockData = void 0;
4
+ var generateMockData = function (params) {
5
+ var currentRankPoints = Math.random() * 1000;
6
+ var rank = Math.floor(Math.random() * 10);
7
+ var claimedRank = rank + Math.floor(Math.random() * 2);
8
+ return {
9
+ address: params.address,
10
+ rank: rank,
11
+ claimedRank: claimedRank,
12
+ currentRankPoints: currentRankPoints,
13
+ nextRankPoints: currentRankPoints + Math.random() * 500,
14
+ ranking: Math.floor(Math.random() * 100) + 1,
15
+ liquidityXp: Math.random() * 100000,
16
+ tradingXp: Math.random() * 10000,
17
+ };
18
+ };
19
+ exports.generateMockData = generateMockData;
20
+ //# sourceMappingURL=mock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock.js","sourceRoot":"/","sources":["modules/trading-league/services/get-user-leaderboard-data/mock.ts"],"names":[],"mappings":";;;AAKO,IAAM,gBAAgB,GAAG,UAC9B,MAAoC;IAEpC,IAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IAC/C,IAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IAC5C,IAAM,WAAW,GAAG,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;IACzD,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,IAAI,MAAA;QACJ,WAAW,aAAA;QACX,iBAAiB,mBAAA;QACjB,cAAc,EAAE,iBAAiB,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG;QACvD,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC;QAC5C,WAAW,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM;QACnC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,KAAK;KACjC,CAAC;AACJ,CAAC,CAAC;AAhBW,QAAA,gBAAgB,oBAgB3B","sourcesContent":["import {\n GetUserLeaderboardDataParams,\n UserLeaderboardDataEntity,\n} from './types';\n\nexport const generateMockData = (\n params: GetUserLeaderboardDataParams,\n): UserLeaderboardDataEntity => {\n const currentRankPoints = Math.random() * 1000;\n const rank = Math.floor(Math.random() * 10);\n const claimedRank = rank + Math.floor(Math.random() * 2);\n return {\n address: params.address,\n rank,\n claimedRank,\n currentRankPoints,\n nextRankPoints: currentRankPoints + Math.random() * 500,\n ranking: Math.floor(Math.random() * 100) + 1,\n liquidityXp: Math.random() * 100000,\n tradingXp: Math.random() * 10000,\n };\n};\n"]}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"/","sources":["modules/trading-league/services/get-user-leaderboard-data/types.ts"],"names":[],"mappings":"","sourcesContent":["export type UserLeaderboardDataEntity = {\n address: string;\n rank: number;\n claimedRank: number;\n currentRankPoints: number;\n nextRankPoints: number;\n ranking: number;\n liquidityXp: number;\n tradingXp: number;\n};\n\nexport type GetUserLeaderboardDataParams = {\n address: string;\n};\n\nexport type GetUserLeaderboardDataResult = UserLeaderboardDataEntity;\n"]}
@@ -16,4 +16,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./get-leaderboard"), exports);
18
18
  __exportStar(require("./get-leaderboard/types"), exports);
19
+ __exportStar(require("./get-user-leaderboard-data"), exports);
20
+ __exportStar(require("./get-user-leaderboard-data/types"), exports);
21
+ __exportStar(require("./claim-rank"), exports);
22
+ __exportStar(require("./claim-rank/types"), exports);
19
23
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"/","sources":["modules/trading-league/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,0DAAwC","sourcesContent":["export * from './get-leaderboard';\nexport * from './get-leaderboard/types';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"/","sources":["modules/trading-league/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,0DAAwC;AACxC,8DAA4C;AAC5C,oEAAkD;AAClD,+CAA6B;AAC7B,qDAAmC","sourcesContent":["export * from './get-leaderboard';\nexport * from './get-leaderboard/types';\nexport * from './get-user-leaderboard-data';\nexport * from './get-user-leaderboard-data/types';\nexport * from './claim-rank';\nexport * from './claim-rank/types';\n"]}
@@ -4,4 +4,5 @@ export * from './modules/lge/services/get-lge-boost-rate/types';
4
4
  export * from './modules/twitter/services/get-auth-url/types';
5
5
  export * from './modules/vote/types';
6
6
  export * from './modules/trading-league/services/get-leaderboard/types';
7
+ export * from './modules/trading-league/services/get-user-leaderboard-data/types';
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,qDAAqD,CAAC;AACpE,cAAc,iDAAiD,CAAC;AAChE,cAAc,+CAA+C,CAAC;AAC9D,cAAc,sBAAsB,CAAC;AACrC,cAAc,yDAAyD,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,qDAAqD,CAAC;AACpE,cAAc,iDAAiD,CAAC;AAChE,cAAc,+CAA+C,CAAC;AAC9D,cAAc,sBAAsB,CAAC;AACrC,cAAc,yDAAyD,CAAC;AACxE,cAAc,mEAAmE,CAAC"}
@@ -1,5 +1,7 @@
1
- import { GetLeaderboardParams } from './services';
1
+ import { GetLeaderboardParams, GetUserLeaderboardDataParams, ClaimRankParams } from './services';
2
2
  export default class TradingLeagueModule {
3
+ claimRank(params: ClaimRankParams): Promise<import("./services").ClaimRankResult>;
3
4
  getLeaderboard(params: GetLeaderboardParams): Promise<import("./services").GetLeaderboardResult>;
5
+ getUserLeaderboardData(params: GetUserLeaderboardDataParams): Promise<import("./services").UserLeaderboardDataEntity>;
4
6
  }
5
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["modules/trading-league/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAElE,MAAM,CAAC,OAAO,OAAO,mBAAmB;IAChC,cAAc,CAAC,MAAM,EAAE,oBAAoB;CAGlD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["modules/trading-league/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,oBAAoB,EAEpB,4BAA4B,EAE5B,eAAe,EAChB,MAAM,YAAY,CAAC;AAEpB,MAAM,CAAC,OAAO,OAAO,mBAAmB;IAChC,SAAS,CAAC,MAAM,EAAE,eAAe;IAIjC,cAAc,CAAC,MAAM,EAAE,oBAAoB;IAI3C,sBAAsB,CAAC,MAAM,EAAE,4BAA4B;CAGlE"}
@@ -0,0 +1,3 @@
1
+ import { ClaimRankParams, ClaimRankResult } from './types';
2
+ export declare const claimRank: ({ address, }: ClaimRankParams) => Promise<ClaimRankResult>;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["modules/trading-league/services/claim-rank/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG3D,eAAO,MAAM,SAAS,iBAEnB,eAAe,KAAG,QAAQ,eAAe,CAe3C,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { LeaderboardEntity } from '../get-leaderboard/types';
2
+ export type ClaimRankParams = {
3
+ address: LeaderboardEntity['address'];
4
+ };
5
+ export type ClaimRankResult = {
6
+ success: boolean;
7
+ };
8
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"/","sources":["modules/trading-league/services/claim-rank/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"mock.d.ts","sourceRoot":"/","sources":["modules/trading-league/services/get-leaderboard/mock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE5C,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,iBAAiB,EAAE,CA2B1E"}
1
+ {"version":3,"file":"mock.d.ts","sourceRoot":"/","sources":["modules/trading-league/services/get-leaderboard/mock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE5C,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,iBAAiB,EAAE,CA0B1E"}
@@ -3,7 +3,6 @@ export type LeaderboardEntity = {
3
3
  currentBoost: number;
4
4
  liquidityXp: number;
5
5
  rank: number;
6
- totalXp: number;
7
6
  ranking: number;
8
7
  tradingXp: number;
9
8
  };
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"/","sources":["modules/trading-league/services/get-leaderboard/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AACF,MAAM,MAAM,oBAAoB,GAAG,iBAAiB,EAAE,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"/","sources":["modules/trading-league/services/get-leaderboard/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AACF,MAAM,MAAM,oBAAoB,GAAG,iBAAiB,EAAE,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { GetUserLeaderboardDataParams, GetUserLeaderboardDataResult } from './types';
2
+ export declare const getUserLeaderboardData: (params: GetUserLeaderboardDataParams) => Promise<GetUserLeaderboardDataResult>;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["modules/trading-league/services/get-user-leaderboard-data/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,4BAA4B,EAC5B,4BAA4B,EAC7B,MAAM,SAAS,CAAC;AAIjB,eAAO,MAAM,sBAAsB,WACzB,4BAA4B,KACnC,QAAQ,4BAA4B,CAStC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { GetUserLeaderboardDataParams, UserLeaderboardDataEntity } from './types';
2
+ export declare const generateMockData: (params: GetUserLeaderboardDataParams) => UserLeaderboardDataEntity;
3
+ //# sourceMappingURL=mock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock.d.ts","sourceRoot":"/","sources":["modules/trading-league/services/get-user-leaderboard-data/mock.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,4BAA4B,EAC5B,yBAAyB,EAC1B,MAAM,SAAS,CAAC;AAEjB,eAAO,MAAM,gBAAgB,WACnB,4BAA4B,KACnC,yBAcF,CAAC"}
@@ -0,0 +1,15 @@
1
+ export type UserLeaderboardDataEntity = {
2
+ address: string;
3
+ rank: number;
4
+ claimedRank: number;
5
+ currentRankPoints: number;
6
+ nextRankPoints: number;
7
+ ranking: number;
8
+ liquidityXp: number;
9
+ tradingXp: number;
10
+ };
11
+ export type GetUserLeaderboardDataParams = {
12
+ address: string;
13
+ };
14
+ export type GetUserLeaderboardDataResult = UserLeaderboardDataEntity;
15
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"/","sources":["modules/trading-league/services/get-user-leaderboard-data/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,yBAAyB,GAAG;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG,yBAAyB,CAAC"}
@@ -1,3 +1,7 @@
1
1
  export * from './get-leaderboard';
2
2
  export * from './get-leaderboard/types';
3
+ export * from './get-user-leaderboard-data';
4
+ export * from './get-user-leaderboard-data/types';
5
+ export * from './claim-rank';
6
+ export * from './claim-rank/types';
3
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["modules/trading-league/services/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["modules/trading-league/services/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mCAAmC,CAAC;AAClD,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reyaxyz/community-sdk",
3
- "version": "0.8.2",
3
+ "version": "0.9.0",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "registry": "https://registry.npmjs.org"
@@ -10,8 +10,8 @@
10
10
  "url": "https://github.com/Reya-Labs/reya-off-chain-monorepo.git"
11
11
  },
12
12
  "dependencies": {
13
- "@reyaxyz/common": "0.36.0",
14
- "@reyaxyz/sdk": "0.30.0",
13
+ "@reyaxyz/common": "0.36.1",
14
+ "@reyaxyz/sdk": "0.30.1",
15
15
  "ethers": "6.9.0"
16
16
  },
17
17
  "main": "dist/index.js",
@@ -38,5 +38,5 @@
38
38
  "generate:coverage-badges": "npx istanbul-badges-readme --silent"
39
39
  },
40
40
  "packageManager": "pnpm@8.10.4",
41
- "gitHead": "33db9afa0678a78a2b4e31d0a0e0a66bb6ffc38c"
41
+ "gitHead": "d90cde2a6ac42376eadb43bf826a98ec766fd7f5"
42
42
  }
package/src/index.ts CHANGED
@@ -4,3 +4,4 @@ export * from './modules/lge/services/get-lge-boost-rate/types';
4
4
  export * from './modules/twitter/services/get-auth-url/types';
5
5
  export * from './modules/vote/types';
6
6
  export * from './modules/trading-league/services/get-leaderboard/types';
7
+ export * from './modules/trading-league/services/get-user-leaderboard-data/types';
@@ -1,7 +1,22 @@
1
- import { getLeaderboard, GetLeaderboardParams } from './services';
1
+ import {
2
+ getLeaderboard,
3
+ GetLeaderboardParams,
4
+ getUserLeaderboardData,
5
+ GetUserLeaderboardDataParams,
6
+ claimRank,
7
+ ClaimRankParams,
8
+ } from './services';
2
9
 
3
10
  export default class TradingLeagueModule {
11
+ async claimRank(params: ClaimRankParams) {
12
+ return claimRank(params);
13
+ }
14
+
4
15
  async getLeaderboard(params: GetLeaderboardParams) {
5
16
  return getLeaderboard(params);
6
17
  }
18
+
19
+ async getUserLeaderboardData(params: GetUserLeaderboardDataParams) {
20
+ return getUserLeaderboardData(params);
21
+ }
7
22
  }
@@ -0,0 +1,21 @@
1
+ import { ClaimRankParams, ClaimRankResult } from './types';
2
+
3
+ // TODO: Write proper implementation
4
+ export const claimRank = async ({
5
+ address,
6
+ }: ClaimRankParams): Promise<ClaimRankResult> => {
7
+ return await new Promise((resolve, reject) => {
8
+ setTimeout(
9
+ () => {
10
+ const error = Math.random() * 100 > 50;
11
+ if (error) {
12
+ reject(new Error(`Claim Rank for ${address} error`));
13
+ }
14
+ resolve({
15
+ success: true,
16
+ });
17
+ },
18
+ Math.random() * 100 + 1000,
19
+ );
20
+ });
21
+ };
@@ -0,0 +1,9 @@
1
+ import { LeaderboardEntity } from '../get-leaderboard/types';
2
+
3
+ export type ClaimRankParams = {
4
+ address: LeaderboardEntity['address'];
5
+ };
6
+
7
+ export type ClaimRankResult = {
8
+ success: boolean;
9
+ };
@@ -21,7 +21,6 @@ export function generateMockData(recordsCount: number): LeaderboardEntity[] {
21
21
  liquidityXp: Math.random() * 100000,
22
22
  rank: Math.floor(Math.random() * recordsCount) + 1,
23
23
  ranking: i + 1,
24
- totalXp: Math.random() * 100000,
25
24
  tradingXp: Math.random() * 10000,
26
25
  });
27
26
  }
@@ -3,7 +3,6 @@ export type LeaderboardEntity = {
3
3
  currentBoost: number;
4
4
  liquidityXp: number;
5
5
  rank: number;
6
- totalXp: number;
7
6
  ranking: number;
8
7
  tradingXp: number;
9
8
  };
@@ -0,0 +1,19 @@
1
+ import {
2
+ GetUserLeaderboardDataParams,
3
+ GetUserLeaderboardDataResult,
4
+ } from './types';
5
+ import { generateMockData } from './mock';
6
+
7
+ // TODO: Write proper implementation
8
+ export const getUserLeaderboardData = async (
9
+ params: GetUserLeaderboardDataParams,
10
+ ): Promise<GetUserLeaderboardDataResult> => {
11
+ return await new Promise((resolve) => {
12
+ setTimeout(
13
+ () => {
14
+ resolve(generateMockData(params));
15
+ },
16
+ Math.random() * 100 + 1000,
17
+ );
18
+ });
19
+ };
@@ -0,0 +1,22 @@
1
+ import {
2
+ GetUserLeaderboardDataParams,
3
+ UserLeaderboardDataEntity,
4
+ } from './types';
5
+
6
+ export const generateMockData = (
7
+ params: GetUserLeaderboardDataParams,
8
+ ): UserLeaderboardDataEntity => {
9
+ const currentRankPoints = Math.random() * 1000;
10
+ const rank = Math.floor(Math.random() * 10);
11
+ const claimedRank = rank + Math.floor(Math.random() * 2);
12
+ return {
13
+ address: params.address,
14
+ rank,
15
+ claimedRank,
16
+ currentRankPoints,
17
+ nextRankPoints: currentRankPoints + Math.random() * 500,
18
+ ranking: Math.floor(Math.random() * 100) + 1,
19
+ liquidityXp: Math.random() * 100000,
20
+ tradingXp: Math.random() * 10000,
21
+ };
22
+ };
@@ -0,0 +1,16 @@
1
+ export type UserLeaderboardDataEntity = {
2
+ address: string;
3
+ rank: number;
4
+ claimedRank: number;
5
+ currentRankPoints: number;
6
+ nextRankPoints: number;
7
+ ranking: number;
8
+ liquidityXp: number;
9
+ tradingXp: number;
10
+ };
11
+
12
+ export type GetUserLeaderboardDataParams = {
13
+ address: string;
14
+ };
15
+
16
+ export type GetUserLeaderboardDataResult = UserLeaderboardDataEntity;
@@ -1,2 +1,6 @@
1
1
  export * from './get-leaderboard';
2
2
  export * from './get-leaderboard/types';
3
+ export * from './get-user-leaderboard-data';
4
+ export * from './get-user-leaderboard-data/types';
5
+ export * from './claim-rank';
6
+ export * from './claim-rank/types';