@reyaxyz/community-sdk 0.16.18 → 0.17.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.
- package/dist/client/index.js +1 -1
- package/dist/client/index.js.map +1 -1
- package/dist/index.js +1 -2
- package/dist/index.js.map +1 -1
- package/dist/modules/lge/index.js +25 -1
- package/dist/modules/lge/index.js.map +1 -1
- package/dist/modules/trading-league/index.js +45 -9
- package/dist/modules/trading-league/index.js.map +1 -1
- package/dist/modules/trading-league/types.js.map +1 -0
- package/dist/types/client/index.d.ts.map +1 -1
- package/dist/types/index.d.ts +1 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/modules/lge/index.d.ts +3 -1
- package/dist/types/modules/lge/index.d.ts.map +1 -1
- package/dist/types/modules/trading-league/index.d.ts +7 -7
- package/dist/types/modules/trading-league/index.d.ts.map +1 -1
- package/dist/types/modules/trading-league/types.d.ts +2 -0
- package/dist/types/modules/trading-league/types.d.ts.map +1 -0
- package/package.json +4 -4
- package/src/client/index.ts +1 -0
- package/src/index.ts +1 -2
- package/src/modules/lge/index.ts +22 -2
- package/src/modules/trading-league/index.ts +34 -11
- package/src/modules/trading-league/types.ts +10 -0
- package/dist/modules/trading-league/services/claim-rank/index.js +0 -63
- package/dist/modules/trading-league/services/claim-rank/index.js.map +0 -1
- package/dist/modules/trading-league/services/claim-rank/types.js.map +0 -1
- package/dist/modules/trading-league/services/get-leaderboard/index.js +0 -64
- package/dist/modules/trading-league/services/get-leaderboard/index.js.map +0 -1
- package/dist/modules/trading-league/services/get-leaderboard/mock.js +0 -27
- package/dist/modules/trading-league/services/get-leaderboard/mock.js.map +0 -1
- package/dist/modules/trading-league/services/get-leaderboard/types.js +0 -3
- package/dist/modules/trading-league/services/get-leaderboard/types.js.map +0 -1
- package/dist/modules/trading-league/services/get-user-leaderboard-data/index.js +0 -55
- package/dist/modules/trading-league/services/get-user-leaderboard-data/index.js.map +0 -1
- package/dist/modules/trading-league/services/get-user-leaderboard-data/mock.js +0 -20
- package/dist/modules/trading-league/services/get-user-leaderboard-data/mock.js.map +0 -1
- package/dist/modules/trading-league/services/get-user-leaderboard-data/types.js +0 -3
- package/dist/modules/trading-league/services/get-user-leaderboard-data/types.js.map +0 -1
- package/dist/modules/trading-league/services/index.js +0 -23
- package/dist/modules/trading-league/services/index.js.map +0 -1
- package/dist/types/modules/trading-league/services/claim-rank/index.d.ts +0 -3
- package/dist/types/modules/trading-league/services/claim-rank/index.d.ts.map +0 -1
- package/dist/types/modules/trading-league/services/claim-rank/types.d.ts +0 -8
- package/dist/types/modules/trading-league/services/claim-rank/types.d.ts.map +0 -1
- package/dist/types/modules/trading-league/services/get-leaderboard/index.d.ts +0 -3
- package/dist/types/modules/trading-league/services/get-leaderboard/index.d.ts.map +0 -1
- package/dist/types/modules/trading-league/services/get-leaderboard/mock.d.ts +0 -3
- package/dist/types/modules/trading-league/services/get-leaderboard/mock.d.ts.map +0 -1
- package/dist/types/modules/trading-league/services/get-leaderboard/types.d.ts +0 -14
- package/dist/types/modules/trading-league/services/get-leaderboard/types.d.ts.map +0 -1
- package/dist/types/modules/trading-league/services/get-user-leaderboard-data/index.d.ts +0 -3
- package/dist/types/modules/trading-league/services/get-user-leaderboard-data/index.d.ts.map +0 -1
- package/dist/types/modules/trading-league/services/get-user-leaderboard-data/mock.d.ts +0 -3
- package/dist/types/modules/trading-league/services/get-user-leaderboard-data/mock.d.ts.map +0 -1
- package/dist/types/modules/trading-league/services/get-user-leaderboard-data/types.d.ts +0 -15
- package/dist/types/modules/trading-league/services/get-user-leaderboard-data/types.d.ts.map +0 -1
- package/dist/types/modules/trading-league/services/index.d.ts +0 -7
- package/dist/types/modules/trading-league/services/index.d.ts.map +0 -1
- package/src/modules/trading-league/services/claim-rank/index.ts +0 -21
- package/src/modules/trading-league/services/claim-rank/types.ts +0 -9
- package/src/modules/trading-league/services/get-leaderboard/index.ts +0 -31
- package/src/modules/trading-league/services/get-leaderboard/mock.ts +0 -29
- package/src/modules/trading-league/services/get-leaderboard/types.ts +0 -16
- package/src/modules/trading-league/services/get-user-leaderboard-data/index.ts +0 -19
- package/src/modules/trading-league/services/get-user-leaderboard-data/mock.ts +0 -22
- package/src/modules/trading-league/services/get-user-leaderboard-data/types.ts +0 -16
- package/src/modules/trading-league/services/index.ts +0 -6
- /package/dist/modules/trading-league/{services/claim-rank/types.js → types.js} +0 -0
package/dist/client/index.js
CHANGED
|
@@ -17,7 +17,7 @@ var CommunityClient = /** @class */ (function () {
|
|
|
17
17
|
this._vote = new vote_1.default(CommunityClient.config.apiEndpoint, CommunityClient.config.logging);
|
|
18
18
|
this._LGE = new lge_1.default(CommunityClient.config.apiEndpoint, CommunityClient.config.logging);
|
|
19
19
|
this._twitter = new twitter_1.default(CommunityClient.config.twitter.redirectURI, CommunityClient.config.twitter.clientId, CommunityClient.config.logging);
|
|
20
|
-
this._tradingLeague = new trading_league_1.default(CommunityClient.config.logging);
|
|
20
|
+
this._tradingLeague = new trading_league_1.default(CommunityClient.config.apiEndpoint, CommunityClient.config.logging);
|
|
21
21
|
}
|
|
22
22
|
CommunityClient.configure = function (environment) {
|
|
23
23
|
CommunityClient.config =
|
package/dist/client/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"/","sources":["client/index.ts"],"names":[],"mappings":";;;;;;AAAA,0CAAoE;AACpE,yDAAyC;AACzC,uDAAuC;AACvC,+DAA+C;AAC/C,6EAA4D;AAE5D;;GAEG;AACH;IASE;QACE,IAAI,CAAC,KAAK,GAAG,IAAI,cAAU,CACzB,eAAe,CAAC,MAAM,CAAC,WAAW,EAClC,eAAe,CAAC,MAAM,CAAC,OAAO,CAC/B,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,IAAI,aAAS,CACvB,eAAe,CAAC,MAAM,CAAC,WAAW,EAClC,eAAe,CAAC,MAAM,CAAC,OAAO,CAC/B,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,IAAI,iBAAa,CAC/B,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,EAC1C,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EACvC,eAAe,CAAC,MAAM,CAAC,OAAO,CAC/B,CAAC;QACF,IAAI,CAAC,cAAc,GAAG,IAAI,wBAAmB,CAC3C,eAAe,CAAC,MAAM,CAAC,OAAO,CAC/B,CAAC;IACJ,CAAC;IAEa,yBAAS,GAAvB,UAAwB,WAAyC;QAC/D,eAAe,CAAC,MAAM;YACpB,2BAAkB,CAAC,WAAW,CAAC,IAAI,2BAAkB,CAAC,MAAM,CAAC,CAAC;QAChE,eAAe,CAAC,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;IACnD,CAAC;IAEc,2BAAW,GAA1B;QACE,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CACb,6DAA6D,CAC9D,CAAC;QACJ,CAAC;QACD,OAAO,eAAe,CAAC,QAAQ,CAAC;IAClC,CAAC;IASD,sBAAkB,uBAAI;QAPtB;;;;;;WAMG;aACH;YACE,OAAO,eAAe,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC;QAC7C,CAAC;;;OAAA;IASD,sBAAkB,sBAAG;QAPrB;;;;;;WAMG;aACH;YACE,OAAO,eAAe,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC;QAC5C,CAAC;;;OAAA;IASD,sBAAkB,0BAAO;QAPzB;;;;;;WAMG;aACH;YACE,OAAO,eAAe,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC;QAChD,CAAC;;;OAAA;IASD,sBAAkB,gCAAa;QAP/B;;;;;;WAMG;aACH;YACE,OAAO,eAAe,CAAC,WAAW,EAAE,CAAC,cAAc,CAAC;QACtD,CAAC;;;OAAA;IAED,sBAAkB,iCAAc;aAAhC;YACE,OAAO,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC;QACtC,CAAC;;;OAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"/","sources":["client/index.ts"],"names":[],"mappings":";;;;;;AAAA,0CAAoE;AACpE,yDAAyC;AACzC,uDAAuC;AACvC,+DAA+C;AAC/C,6EAA4D;AAE5D;;GAEG;AACH;IASE;QACE,IAAI,CAAC,KAAK,GAAG,IAAI,cAAU,CACzB,eAAe,CAAC,MAAM,CAAC,WAAW,EAClC,eAAe,CAAC,MAAM,CAAC,OAAO,CAC/B,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,IAAI,aAAS,CACvB,eAAe,CAAC,MAAM,CAAC,WAAW,EAClC,eAAe,CAAC,MAAM,CAAC,OAAO,CAC/B,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,IAAI,iBAAa,CAC/B,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,EAC1C,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EACvC,eAAe,CAAC,MAAM,CAAC,OAAO,CAC/B,CAAC;QACF,IAAI,CAAC,cAAc,GAAG,IAAI,wBAAmB,CAC3C,eAAe,CAAC,MAAM,CAAC,WAAW,EAClC,eAAe,CAAC,MAAM,CAAC,OAAO,CAC/B,CAAC;IACJ,CAAC;IAEa,yBAAS,GAAvB,UAAwB,WAAyC;QAC/D,eAAe,CAAC,MAAM;YACpB,2BAAkB,CAAC,WAAW,CAAC,IAAI,2BAAkB,CAAC,MAAM,CAAC,CAAC;QAChE,eAAe,CAAC,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;IACnD,CAAC;IAEc,2BAAW,GAA1B;QACE,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CACb,6DAA6D,CAC9D,CAAC;QACJ,CAAC;QACD,OAAO,eAAe,CAAC,QAAQ,CAAC;IAClC,CAAC;IASD,sBAAkB,uBAAI;QAPtB;;;;;;WAMG;aACH;YACE,OAAO,eAAe,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC;QAC7C,CAAC;;;OAAA;IASD,sBAAkB,sBAAG;QAPrB;;;;;;WAMG;aACH;YACE,OAAO,eAAe,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC;QAC5C,CAAC;;;OAAA;IASD,sBAAkB,0BAAO;QAPzB;;;;;;WAMG;aACH;YACE,OAAO,eAAe,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC;QAChD,CAAC;;;OAAA;IASD,sBAAkB,gCAAa;QAP/B;;;;;;WAMG;aACH;YACE,OAAO,eAAe,CAAC,WAAW,EAAE,CAAC,cAAc,CAAC;QACtD,CAAC;;;OAAA;IAED,sBAAkB,iCAAc;aAAhC;YACE,OAAO,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC;QACtC,CAAC;;;OAAA;IAxFc,sBAAM,GAAkB,2BAAkB,CAAC,MAAM,CAAC,CAAC;IAyFpE,sBAAC;CAAA,AA3FD,IA2FC;AA3FY,0CAAe","sourcesContent":["import { API_CLIENT_CONFIGS, ServiceConfig } from '@reyaxyz/common';\nimport VoteModule from '../modules/vote';\nimport LGEModule from '../modules/lge';\nimport TwitterModule from '../modules/twitter';\nimport TradingLeagueModule from '../modules/trading-league';\n\n/**\n * @description Client for Community SDK\n */\nexport class CommunityClient {\n private static instance: CommunityClient;\n private static config: ServiceConfig = API_CLIENT_CONFIGS['test'];\n\n private readonly _vote: VoteModule;\n private readonly _LGE: LGEModule;\n private readonly _twitter: TwitterModule;\n private readonly _tradingLeague: TradingLeagueModule;\n\n private constructor() {\n this._vote = new VoteModule(\n CommunityClient.config.apiEndpoint,\n CommunityClient.config.logging,\n );\n this._LGE = new LGEModule(\n CommunityClient.config.apiEndpoint,\n CommunityClient.config.logging,\n );\n this._twitter = new TwitterModule(\n CommunityClient.config.twitter.redirectURI,\n CommunityClient.config.twitter.clientId,\n CommunityClient.config.logging,\n );\n this._tradingLeague = new TradingLeagueModule(\n CommunityClient.config.apiEndpoint,\n CommunityClient.config.logging,\n );\n }\n\n public static configure(environment: ServiceConfig['environment']): void {\n CommunityClient.config =\n API_CLIENT_CONFIGS[environment] || API_CLIENT_CONFIGS['test'];\n CommunityClient.instance = new CommunityClient();\n }\n\n private static getInstance(): CommunityClient {\n if (!CommunityClient.instance) {\n throw new Error(\n 'Client is not configured. Please configure it before using.',\n );\n }\n return CommunityClient.instance;\n }\n\n /**\n * Provides access to the VoteModule instance.\n * This getter allows for interacting with vote-related functionalities.\n *\n * @returns {VoteModule} An instance of VoteModule for vote operations.\n * @memberof CommunityClient\n */\n public static get vote(): VoteModule {\n return CommunityClient.getInstance()._vote;\n }\n\n /**\n * Provides access to the LGEModule instance.\n * This getter allows for interacting with LGE-related functionalities.\n *\n * @returns {LGEModule} An instance of LGEModule for LGE operations.\n * @memberof CommunityClient\n */\n public static get LGE(): LGEModule {\n return CommunityClient.getInstance()._LGE;\n }\n\n /**\n * Provides access to the TwitterModule instance.\n * This getter allows for interacting with twitter-related functionalities.\n *\n * @returns {TwitterModule} An instance of Twitter for twitter operations.\n * @memberof CommunityClient\n */\n public static get twitter(): TwitterModule {\n return CommunityClient.getInstance()._twitter;\n }\n\n /**\n * Provides access to the TradingLeagueModule instance.\n * This getter allows for interacting with trading-league-related functionalities.\n *\n * @returns {TradingLeagueModule} An instance of Trading League for twitter operations.\n * @memberof CommunityClient\n */\n public static get tradingLeague(): TradingLeagueModule {\n return CommunityClient.getInstance()._tradingLeague;\n }\n\n public static get supportedChain(): number {\n return CommunityClient.config.chain;\n }\n}\n"]}
|
package/dist/index.js
CHANGED
|
@@ -18,6 +18,5 @@ __exportStar(require("./client"), exports);
|
|
|
18
18
|
__exportStar(require("./modules/twitter/services/get-auth-url/types"), exports);
|
|
19
19
|
__exportStar(require("./modules/vote/types"), exports);
|
|
20
20
|
__exportStar(require("./modules/lge/types"), exports);
|
|
21
|
-
__exportStar(require("./modules/trading-league/
|
|
22
|
-
__exportStar(require("./modules/trading-league/services/get-user-leaderboard-data/types"), exports);
|
|
21
|
+
__exportStar(require("./modules/trading-league/types"), exports);
|
|
23
22
|
//# 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,gFAA8D;AAC9D,uDAAqC;AACrC,sDAAoC;AACpC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"/","sources":["index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,gFAA8D;AAC9D,uDAAqC;AACrC,sDAAoC;AACpC,iEAA+C","sourcesContent":["export * from './client';\nexport * from './modules/twitter/services/get-auth-url/types';\nexport * from './modules/vote/types';\nexport * from './modules/lge/types';\nexport * from './modules/trading-league/types';\n"]}
|
|
@@ -85,13 +85,37 @@ var LGEModule = /** @class */ (function (_super) {
|
|
|
85
85
|
});
|
|
86
86
|
});
|
|
87
87
|
};
|
|
88
|
+
LGEModule.prototype.getLeaderboard = function (params) {
|
|
89
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
90
|
+
var uri;
|
|
91
|
+
return __generator(this, function (_a) {
|
|
92
|
+
uri = "/api/xp/leaderboard/".concat(params.perPage, "/").concat(params.page);
|
|
93
|
+
return [2 /*return*/, this.get(uri)];
|
|
94
|
+
});
|
|
95
|
+
});
|
|
96
|
+
};
|
|
97
|
+
LGEModule.prototype.getUserLeaderboardData = function (params) {
|
|
98
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
99
|
+
var uri;
|
|
100
|
+
return __generator(this, function (_a) {
|
|
101
|
+
uri = "/api/xp/leaderboard-user-data/".concat(params.address);
|
|
102
|
+
return [2 /*return*/, this.get(uri)];
|
|
103
|
+
});
|
|
104
|
+
});
|
|
105
|
+
};
|
|
88
106
|
__decorate([
|
|
89
107
|
(0, common_2.Logger)('LGEModule.getLGEBoostRate')
|
|
90
108
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
91
109
|
], LGEModule.prototype, "getLGEBoostRate", null);
|
|
92
110
|
__decorate([
|
|
93
|
-
(0, common_2.Logger)('LGEModule.
|
|
111
|
+
(0, common_2.Logger)('LGEModule.getAccountLGEStatus')
|
|
94
112
|
], LGEModule.prototype, "getAccountLGEStatus", null);
|
|
113
|
+
__decorate([
|
|
114
|
+
(0, common_2.Logger)('LGEModule.getLeaderboard')
|
|
115
|
+
], LGEModule.prototype, "getLeaderboard", null);
|
|
116
|
+
__decorate([
|
|
117
|
+
(0, common_2.Logger)('LGEModule.getUserLeaderboardData')
|
|
118
|
+
], LGEModule.prototype, "getUserLeaderboardData", null);
|
|
95
119
|
return LGEModule;
|
|
96
120
|
}(common_1.RestClient));
|
|
97
121
|
exports.default = LGEModule;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"/","sources":["modules/lge/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"/","sources":["modules/lge/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAMyB;AASzB,0CAAmD;AAEnD;IAAuC,6BAAU;IAG/C,mBAAY,MAAc,EAAE,cAAuB;QACjD,YAAA,MAAK,YAAC,MAAM,CAAC,SAAC;QAHhB,oBAAc,GAAY,KAAK,CAAC;QAI9B,KAAI,CAAC,cAAc,GAAG,cAAc,CAAC;;IACvC,CAAC;IAIK,mCAAe,GAAf,UAAgB,CAAwB;;;;gBACtC,GAAG,GAAG,kBAAkB,CAAC;gBAC/B,sBAAO,IAAI,CAAC,GAAG,CAAwB,GAAG,CAAC,EAAC;;;KAC7C;IAGK,uCAAmB,GAAnB,UAAoB,MAAiC;;;;gBACnD,GAAG,GAAG,6BAAsB,MAAM,CAAC,OAAO,CAAE,CAAC;gBACnD,sBAAO,IAAI,CAAC,GAAG,CAA4B,GAAG,CAAC,EAAC;;;KACjD;IAGK,kCAAc,GAAd,UAAe,MAA4B;;;;gBACzC,GAAG,GAAG,8BAAuB,MAAM,CAAC,OAAO,cAAI,MAAM,CAAC,IAAI,CAAE,CAAC;gBACnE,sBAAO,IAAI,CAAC,GAAG,CAAuB,GAAG,CAAC,EAAC;;;KAC5C;IAGK,0CAAsB,GAAtB,UAAuB,MAAoC;;;;gBACzD,GAAG,GAAG,wCAAiC,MAAM,CAAC,OAAO,CAAE,CAAC;gBAC9D,sBAAO,IAAI,CAAC,GAAG,CAA+B,GAAG,CAAC,EAAC;;;KACpD;IArBK;QAFL,IAAA,eAAM,EAAC,2BAA2B,CAAC;QACpC,6DAA6D;oDAI5D;IAGK;QADL,IAAA,eAAM,EAAC,+BAA+B,CAAC;wDAIvC;IAGK;QADL,IAAA,eAAM,EAAC,0BAA0B,CAAC;mDAIlC;IAGK;QADL,IAAA,eAAM,EAAC,kCAAkC,CAAC;2DAI1C;IACH,gBAAC;CAAA,AAhCD,CAAuC,mBAAU,GAgChD;kBAhCoB,SAAS","sourcesContent":["import {\n GetLeaderboardParams,\n GetLeaderboardResult,\n GetUserLeaderboardDataParams,\n GetUserLeaderboardDataResult,\n RestClient,\n} from '@reyaxyz/common';\n\nimport {\n GetAccountLGEStatusParams,\n GetAccountLGEStatusResult,\n GetLGEBoostRateParams,\n GetLGEBoostRateResult,\n} from './types';\n\nimport { Loggable, Logger } from '@reyaxyz/common';\n\nexport default class LGEModule extends RestClient implements Loggable {\n loggingEnabled: boolean = false;\n\n constructor(apiUrl: string, loggingEnabled: boolean) {\n super(apiUrl);\n this.loggingEnabled = loggingEnabled;\n }\n\n @Logger('LGEModule.getLGEBoostRate')\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n async getLGEBoostRate(_: GetLGEBoostRateParams) {\n const uri = `/api/xp/lp-boost`;\n return this.get<GetLGEBoostRateResult>(uri);\n }\n\n @Logger('LGEModule.getAccountLGEStatus')\n async getAccountLGEStatus(params: GetAccountLGEStatusParams) {\n const uri = `/api/xp/lp-profile/${params.address}`;\n return this.get<GetAccountLGEStatusResult>(uri);\n }\n\n @Logger('LGEModule.getLeaderboard')\n async getLeaderboard(params: GetLeaderboardParams) {\n const uri = `/api/xp/leaderboard/${params.perPage}/${params.page}`;\n return this.get<GetLeaderboardResult>(uri);\n }\n\n @Logger('LGEModule.getUserLeaderboardData')\n async getUserLeaderboardData(params: GetUserLeaderboardDataParams) {\n const uri = `/api/xp/leaderboard-user-data/${params.address}`;\n return this.get<GetUserLeaderboardDataResult>(uri);\n }\n}\n"]}
|
|
@@ -1,4 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
2
17
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
18
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
19
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -42,31 +57,52 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
42
57
|
}
|
|
43
58
|
};
|
|
44
59
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
45
|
-
var services_1 = require("./services");
|
|
46
60
|
var common_1 = require("@reyaxyz/common");
|
|
47
|
-
var TradingLeagueModule = /** @class */ (function () {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
61
|
+
var TradingLeagueModule = /** @class */ (function (_super) {
|
|
62
|
+
__extends(TradingLeagueModule, _super);
|
|
63
|
+
function TradingLeagueModule(apiUrl, loggingEnabled) {
|
|
64
|
+
var _this = _super.call(this, apiUrl) || this;
|
|
65
|
+
_this.loggingEnabled = false;
|
|
66
|
+
_this.loggingEnabled = loggingEnabled;
|
|
67
|
+
return _this;
|
|
51
68
|
}
|
|
52
69
|
TradingLeagueModule.prototype.claimRank = function (params) {
|
|
53
70
|
return __awaiter(this, void 0, void 0, function () {
|
|
54
71
|
return __generator(this, function (_a) {
|
|
55
|
-
|
|
72
|
+
switch (_a.label) {
|
|
73
|
+
case 0: return [4 /*yield*/, new Promise(function (resolve, reject) {
|
|
74
|
+
setTimeout(function () {
|
|
75
|
+
var error = Math.random() * 100 > 50;
|
|
76
|
+
if (error) {
|
|
77
|
+
reject(new Error("Claim Rank for ".concat(params.address, " error")));
|
|
78
|
+
}
|
|
79
|
+
resolve({
|
|
80
|
+
success: true,
|
|
81
|
+
});
|
|
82
|
+
}, Math.random() * 100 + 1000);
|
|
83
|
+
})];
|
|
84
|
+
case 1:
|
|
85
|
+
// TODO: Write proper implementation
|
|
86
|
+
return [2 /*return*/, _a.sent()];
|
|
87
|
+
}
|
|
56
88
|
});
|
|
57
89
|
});
|
|
58
90
|
};
|
|
59
91
|
TradingLeagueModule.prototype.getLeaderboard = function (params) {
|
|
60
92
|
return __awaiter(this, void 0, void 0, function () {
|
|
93
|
+
var uri;
|
|
61
94
|
return __generator(this, function (_a) {
|
|
62
|
-
|
|
95
|
+
uri = "/api/xp/leaderboard/".concat(params.perPage, "/").concat(params.page);
|
|
96
|
+
return [2 /*return*/, this.get(uri)];
|
|
63
97
|
});
|
|
64
98
|
});
|
|
65
99
|
};
|
|
66
100
|
TradingLeagueModule.prototype.getUserLeaderboardData = function (params) {
|
|
67
101
|
return __awaiter(this, void 0, void 0, function () {
|
|
102
|
+
var uri;
|
|
68
103
|
return __generator(this, function (_a) {
|
|
69
|
-
|
|
104
|
+
uri = "/api/xp/leaderboard-user-data/".concat(params.address);
|
|
105
|
+
return [2 /*return*/, this.get(uri)];
|
|
70
106
|
});
|
|
71
107
|
});
|
|
72
108
|
};
|
|
@@ -80,6 +116,6 @@ var TradingLeagueModule = /** @class */ (function () {
|
|
|
80
116
|
(0, common_1.Logger)('TradingLeagueModule.getUserLeaderboardData')
|
|
81
117
|
], TradingLeagueModule.prototype, "getUserLeaderboardData", null);
|
|
82
118
|
return TradingLeagueModule;
|
|
83
|
-
}());
|
|
119
|
+
}(common_1.RestClient));
|
|
84
120
|
exports.default = TradingLeagueModule;
|
|
85
121
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"/","sources":["modules/trading-league/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"/","sources":["modules/trading-league/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAA+D;AAW/D;IACU,uCAAU;IAKlB,6BAAY,MAAc,EAAE,cAAuB;QACjD,YAAA,MAAK,YAAC,MAAM,CAAC,SAAC;QAHhB,oBAAc,GAAY,KAAK,CAAC;QAI9B,KAAI,CAAC,cAAc,GAAG,cAAc,CAAC;;IACvC,CAAC;IAGK,uCAAS,GAAT,UAAU,MAAuB;;;;4BAE9B,qBAAM,IAAI,OAAO,CACtB,UAAC,OAAqC,EAAE,MAAM;4BAC5C,UAAU,CACR;gCACE,IAAM,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,EAAE,CAAC;gCACvC,IAAI,KAAK,EAAE,CAAC;oCACV,MAAM,CAAC,IAAI,KAAK,CAAC,yBAAkB,MAAM,CAAC,OAAO,WAAQ,CAAC,CAAC,CAAC;gCAC9D,CAAC;gCACD,OAAO,CAAC;oCACN,OAAO,EAAE,IAAI;iCACd,CAAC,CAAC;4BACL,CAAC,EACD,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,IAAI,CAC3B,CAAC;wBACJ,CAAC,CACF,EAAA;;oBAhBD,oCAAoC;oBACpC,sBAAO,SAeN,EAAC;;;;KACH;IAGK,4CAAc,GAAd,UAAe,MAA4B;;;;gBACzC,GAAG,GAAG,8BAAuB,MAAM,CAAC,OAAO,cAAI,MAAM,CAAC,IAAI,CAAE,CAAC;gBACnE,sBAAO,IAAI,CAAC,GAAG,CAAuB,GAAG,CAAC,EAAC;;;KAC5C;IAGK,oDAAsB,GAAtB,UAAuB,MAAoC;;;;gBACzD,GAAG,GAAG,wCAAiC,MAAM,CAAC,OAAO,CAAE,CAAC;gBAC9D,sBAAO,IAAI,CAAC,GAAG,CAA+B,GAAG,CAAC,EAAC;;;KACpD;IA9BK;QADL,IAAA,eAAM,EAAC,+BAA+B,CAAC;wDAmBvC;IAGK;QADL,IAAA,eAAM,EAAC,oCAAoC,CAAC;6DAI5C;IAGK;QADL,IAAA,eAAM,EAAC,4CAA4C,CAAC;qEAIpD;IACH,0BAAC;CAAA,AA3CD,CACU,mBAAU,GA0CnB;kBA3CoB,mBAAmB","sourcesContent":["import { Loggable, Logger, RestClient } from '@reyaxyz/common';\n\nimport {\n ClaimRankParams,\n ClaimRankResult,\n GetLeaderboardParams,\n GetLeaderboardResult,\n GetUserLeaderboardDataParams,\n GetUserLeaderboardDataResult,\n} from './types';\n\nexport default class TradingLeagueModule\n extends RestClient\n implements Loggable\n{\n loggingEnabled: boolean = false;\n\n constructor(apiUrl: string, loggingEnabled: boolean) {\n super(apiUrl);\n this.loggingEnabled = loggingEnabled;\n }\n\n @Logger('TradingLeagueModule.claimRank')\n async claimRank(params: ClaimRankParams) {\n // TODO: Write proper implementation\n return await new Promise(\n (resolve: (_: ClaimRankResult) => void, reject) => {\n setTimeout(\n () => {\n const error = Math.random() * 100 > 50;\n if (error) {\n reject(new Error(`Claim Rank for ${params.address} error`));\n }\n resolve({\n success: true,\n });\n },\n Math.random() * 100 + 1000,\n );\n },\n );\n }\n\n @Logger('TradingLeagueModule.getLeaderboard')\n async getLeaderboard(params: GetLeaderboardParams) {\n const uri = `/api/xp/leaderboard/${params.perPage}/${params.page}`;\n return this.get<GetLeaderboardResult>(uri);\n }\n\n @Logger('TradingLeagueModule.getUserLeaderboardData')\n async getUserLeaderboardData(params: GetUserLeaderboardDataParams) {\n const uri = `/api/xp/leaderboard-user-data/${params.address}`;\n return this.get<GetUserLeaderboardDataResult>(uri);\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"/","sources":["modules/trading-league/types.ts"],"names":[],"mappings":"","sourcesContent":["export {\n ClaimRankParams,\n ClaimRankResult,\n LeaderboardEntity,\n GetLeaderboardParams,\n GetLeaderboardResult,\n UserLeaderboardDataEntity,\n GetUserLeaderboardDataParams,\n GetUserLeaderboardDataResult,\n} from '@reyaxyz/common';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACpE,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,SAAS,MAAM,gBAAgB,CAAC;AACvC,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,OAAO,mBAAmB,MAAM,2BAA2B,CAAC;AAE5D;;GAEG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAkB;IACzC,OAAO,CAAC,MAAM,CAAC,MAAM,CAA6C;IAElE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IACnC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAY;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgB;IACzC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAsB;IAErD,OAAO;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACpE,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,SAAS,MAAM,gBAAgB,CAAC;AACvC,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,OAAO,mBAAmB,MAAM,2BAA2B,CAAC;AAE5D;;GAEG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAkB;IACzC,OAAO,CAAC,MAAM,CAAC,MAAM,CAA6C;IAElE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IACnC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAY;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgB;IACzC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAsB;IAErD,OAAO;WAoBO,SAAS,CAAC,WAAW,EAAE,aAAa,CAAC,aAAa,CAAC,GAAG,IAAI;IAMxE,OAAO,CAAC,MAAM,CAAC,WAAW;IAS1B;;;;;;OAMG;IACH,WAAkB,IAAI,IAAI,UAAU,CAEnC;IAED;;;;;;OAMG;IACH,WAAkB,GAAG,IAAI,SAAS,CAEjC;IAED;;;;;;OAMG;IACH,WAAkB,OAAO,IAAI,aAAa,CAEzC;IAED;;;;;;OAMG;IACH,WAAkB,aAAa,IAAI,mBAAmB,CAErD;IAED,WAAkB,cAAc,IAAI,MAAM,CAEzC;CACF"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -2,6 +2,5 @@ export * from './client';
|
|
|
2
2
|
export * from './modules/twitter/services/get-auth-url/types';
|
|
3
3
|
export * from './modules/vote/types';
|
|
4
4
|
export * from './modules/lge/types';
|
|
5
|
-
export * from './modules/trading-league/
|
|
6
|
-
export * from './modules/trading-league/services/get-user-leaderboard-data/types';
|
|
5
|
+
export * from './modules/trading-league/types';
|
|
7
6
|
//# 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,+CAA+C,CAAC;AAC9D,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,+CAA+C,CAAC;AAC9D,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gCAAgC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { RestClient } from '@reyaxyz/common';
|
|
1
|
+
import { GetLeaderboardParams, GetLeaderboardResult, GetUserLeaderboardDataParams, RestClient } from '@reyaxyz/common';
|
|
2
2
|
import { GetAccountLGEStatusParams, GetAccountLGEStatusResult, GetLGEBoostRateParams } from './types';
|
|
3
3
|
import { Loggable } from '@reyaxyz/common';
|
|
4
4
|
export default class LGEModule extends RestClient implements Loggable {
|
|
@@ -6,5 +6,7 @@ export default class LGEModule extends RestClient implements Loggable {
|
|
|
6
6
|
constructor(apiUrl: string, loggingEnabled: boolean);
|
|
7
7
|
getLGEBoostRate(_: GetLGEBoostRateParams): Promise<number>;
|
|
8
8
|
getAccountLGEStatus(params: GetAccountLGEStatusParams): Promise<GetAccountLGEStatusResult>;
|
|
9
|
+
getLeaderboard(params: GetLeaderboardParams): Promise<GetLeaderboardResult>;
|
|
10
|
+
getUserLeaderboardData(params: GetUserLeaderboardDataParams): Promise<import("@reyaxyz/common").UserLeaderboardDataEntity>;
|
|
9
11
|
}
|
|
10
12
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["modules/lge/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["modules/lge/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,4BAA4B,EAE5B,UAAU,EACX,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,yBAAyB,EACzB,yBAAyB,EACzB,qBAAqB,EAEtB,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,QAAQ,EAAU,MAAM,iBAAiB,CAAC;AAEnD,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,UAAW,YAAW,QAAQ;IACnE,cAAc,EAAE,OAAO,CAAS;gBAEpB,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO;IAO7C,eAAe,CAAC,CAAC,EAAE,qBAAqB;IAMxC,mBAAmB,CAAC,MAAM,EAAE,yBAAyB;IAMrD,cAAc,CAAC,MAAM,EAAE,oBAAoB;IAM3C,sBAAsB,CAAC,MAAM,EAAE,4BAA4B;CAIlE"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
export default class TradingLeagueModule implements Loggable {
|
|
1
|
+
import { Loggable, RestClient } from '@reyaxyz/common';
|
|
2
|
+
import { ClaimRankParams, ClaimRankResult, GetLeaderboardParams, GetLeaderboardResult, GetUserLeaderboardDataParams } from './types';
|
|
3
|
+
export default class TradingLeagueModule extends RestClient implements Loggable {
|
|
4
4
|
loggingEnabled: boolean;
|
|
5
|
-
constructor(loggingEnabled: boolean);
|
|
6
|
-
claimRank(params: ClaimRankParams): Promise<
|
|
7
|
-
getLeaderboard(params: GetLeaderboardParams): Promise<
|
|
8
|
-
getUserLeaderboardData(params: GetUserLeaderboardDataParams): Promise<import("
|
|
5
|
+
constructor(apiUrl: string, loggingEnabled: boolean);
|
|
6
|
+
claimRank(params: ClaimRankParams): Promise<ClaimRankResult>;
|
|
7
|
+
getLeaderboard(params: GetLeaderboardParams): Promise<GetLeaderboardResult>;
|
|
8
|
+
getUserLeaderboardData(params: GetUserLeaderboardDataParams): Promise<import("@reyaxyz/common").UserLeaderboardDataEntity>;
|
|
9
9
|
}
|
|
10
10
|
//# 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,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["modules/trading-league/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAU,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE/D,OAAO,EACL,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,oBAAoB,EACpB,4BAA4B,EAE7B,MAAM,SAAS,CAAC;AAEjB,MAAM,CAAC,OAAO,OAAO,mBACnB,SAAQ,UACR,YAAW,QAAQ;IAEnB,cAAc,EAAE,OAAO,CAAS;gBAEpB,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO;IAM7C,SAAS,CAAC,MAAM,EAAE,eAAe;IAqBjC,cAAc,CAAC,MAAM,EAAE,oBAAoB;IAM3C,sBAAsB,CAAC,MAAM,EAAE,4BAA4B;CAIlE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"/","sources":["modules/trading-league/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,yBAAyB,EACzB,4BAA4B,EAC5B,4BAA4B,GAC7B,MAAM,iBAAiB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@reyaxyz/community-sdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.17.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.
|
|
14
|
-
"@reyaxyz/sdk": "0.
|
|
13
|
+
"@reyaxyz/common": "0.51.0",
|
|
14
|
+
"@reyaxyz/sdk": "0.44.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": "
|
|
41
|
+
"gitHead": "f24123eb4d3297b27388606da51290d1754a8b70"
|
|
42
42
|
}
|
package/src/client/index.ts
CHANGED
package/src/index.ts
CHANGED
|
@@ -2,5 +2,4 @@ export * from './client';
|
|
|
2
2
|
export * from './modules/twitter/services/get-auth-url/types';
|
|
3
3
|
export * from './modules/vote/types';
|
|
4
4
|
export * from './modules/lge/types';
|
|
5
|
-
export * from './modules/trading-league/
|
|
6
|
-
export * from './modules/trading-league/services/get-user-leaderboard-data/types';
|
|
5
|
+
export * from './modules/trading-league/types';
|
package/src/modules/lge/index.ts
CHANGED
|
@@ -1,10 +1,18 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
GetLeaderboardParams,
|
|
3
|
+
GetLeaderboardResult,
|
|
4
|
+
GetUserLeaderboardDataParams,
|
|
5
|
+
GetUserLeaderboardDataResult,
|
|
6
|
+
RestClient,
|
|
7
|
+
} from '@reyaxyz/common';
|
|
8
|
+
|
|
2
9
|
import {
|
|
3
10
|
GetAccountLGEStatusParams,
|
|
4
11
|
GetAccountLGEStatusResult,
|
|
5
12
|
GetLGEBoostRateParams,
|
|
6
13
|
GetLGEBoostRateResult,
|
|
7
14
|
} from './types';
|
|
15
|
+
|
|
8
16
|
import { Loggable, Logger } from '@reyaxyz/common';
|
|
9
17
|
|
|
10
18
|
export default class LGEModule extends RestClient implements Loggable {
|
|
@@ -22,9 +30,21 @@ export default class LGEModule extends RestClient implements Loggable {
|
|
|
22
30
|
return this.get<GetLGEBoostRateResult>(uri);
|
|
23
31
|
}
|
|
24
32
|
|
|
25
|
-
@Logger('LGEModule.
|
|
33
|
+
@Logger('LGEModule.getAccountLGEStatus')
|
|
26
34
|
async getAccountLGEStatus(params: GetAccountLGEStatusParams) {
|
|
27
35
|
const uri = `/api/xp/lp-profile/${params.address}`;
|
|
28
36
|
return this.get<GetAccountLGEStatusResult>(uri);
|
|
29
37
|
}
|
|
38
|
+
|
|
39
|
+
@Logger('LGEModule.getLeaderboard')
|
|
40
|
+
async getLeaderboard(params: GetLeaderboardParams) {
|
|
41
|
+
const uri = `/api/xp/leaderboard/${params.perPage}/${params.page}`;
|
|
42
|
+
return this.get<GetLeaderboardResult>(uri);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
@Logger('LGEModule.getUserLeaderboardData')
|
|
46
|
+
async getUserLeaderboardData(params: GetUserLeaderboardDataParams) {
|
|
47
|
+
const uri = `/api/xp/leaderboard-user-data/${params.address}`;
|
|
48
|
+
return this.get<GetUserLeaderboardDataResult>(uri);
|
|
49
|
+
}
|
|
30
50
|
}
|
|
@@ -1,32 +1,55 @@
|
|
|
1
|
+
import { Loggable, Logger, RestClient } from '@reyaxyz/common';
|
|
2
|
+
|
|
1
3
|
import {
|
|
2
|
-
|
|
4
|
+
ClaimRankParams,
|
|
5
|
+
ClaimRankResult,
|
|
3
6
|
GetLeaderboardParams,
|
|
4
|
-
|
|
7
|
+
GetLeaderboardResult,
|
|
5
8
|
GetUserLeaderboardDataParams,
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
} from './services';
|
|
9
|
-
import { Loggable, Logger } from '@reyaxyz/common';
|
|
9
|
+
GetUserLeaderboardDataResult,
|
|
10
|
+
} from './types';
|
|
10
11
|
|
|
11
|
-
export default class TradingLeagueModule
|
|
12
|
+
export default class TradingLeagueModule
|
|
13
|
+
extends RestClient
|
|
14
|
+
implements Loggable
|
|
15
|
+
{
|
|
12
16
|
loggingEnabled: boolean = false;
|
|
13
17
|
|
|
14
|
-
constructor(loggingEnabled: boolean) {
|
|
18
|
+
constructor(apiUrl: string, loggingEnabled: boolean) {
|
|
19
|
+
super(apiUrl);
|
|
15
20
|
this.loggingEnabled = loggingEnabled;
|
|
16
21
|
}
|
|
17
22
|
|
|
18
23
|
@Logger('TradingLeagueModule.claimRank')
|
|
19
24
|
async claimRank(params: ClaimRankParams) {
|
|
20
|
-
|
|
25
|
+
// TODO: Write proper implementation
|
|
26
|
+
return await new Promise(
|
|
27
|
+
(resolve: (_: ClaimRankResult) => void, reject) => {
|
|
28
|
+
setTimeout(
|
|
29
|
+
() => {
|
|
30
|
+
const error = Math.random() * 100 > 50;
|
|
31
|
+
if (error) {
|
|
32
|
+
reject(new Error(`Claim Rank for ${params.address} error`));
|
|
33
|
+
}
|
|
34
|
+
resolve({
|
|
35
|
+
success: true,
|
|
36
|
+
});
|
|
37
|
+
},
|
|
38
|
+
Math.random() * 100 + 1000,
|
|
39
|
+
);
|
|
40
|
+
},
|
|
41
|
+
);
|
|
21
42
|
}
|
|
22
43
|
|
|
23
44
|
@Logger('TradingLeagueModule.getLeaderboard')
|
|
24
45
|
async getLeaderboard(params: GetLeaderboardParams) {
|
|
25
|
-
|
|
46
|
+
const uri = `/api/xp/leaderboard/${params.perPage}/${params.page}`;
|
|
47
|
+
return this.get<GetLeaderboardResult>(uri);
|
|
26
48
|
}
|
|
27
49
|
|
|
28
50
|
@Logger('TradingLeagueModule.getUserLeaderboardData')
|
|
29
51
|
async getUserLeaderboardData(params: GetUserLeaderboardDataParams) {
|
|
30
|
-
|
|
52
|
+
const uri = `/api/xp/leaderboard-user-data/${params.address}`;
|
|
53
|
+
return this.get<GetUserLeaderboardDataResult>(uri);
|
|
31
54
|
}
|
|
32
55
|
}
|
|
@@ -1,63 +0,0 @@
|
|
|
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
|
|
@@ -1 +0,0 @@
|
|
|
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"]}
|
|
@@ -1 +0,0 @@
|
|
|
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"]}
|
|
@@ -1,64 +0,0 @@
|
|
|
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.getLeaderboard = void 0;
|
|
40
|
-
var mock_1 = require("./mock");
|
|
41
|
-
var mockedData = [];
|
|
42
|
-
// TODO: Write proper implementation
|
|
43
|
-
var getLeaderboard = function (_) { return __awaiter(void 0, void 0, void 0, function () {
|
|
44
|
-
var page, perPage, toReturn;
|
|
45
|
-
return __generator(this, function (_a) {
|
|
46
|
-
switch (_a.label) {
|
|
47
|
-
case 0:
|
|
48
|
-
if (mockedData.length === 0) {
|
|
49
|
-
mockedData = (0, mock_1.generateMockData)(Math.floor(Math.random() * (123 - 5 + 1)) + 5);
|
|
50
|
-
}
|
|
51
|
-
page = _.page;
|
|
52
|
-
perPage = _.perPage;
|
|
53
|
-
toReturn = mockedData.slice(page * perPage, page * perPage + perPage);
|
|
54
|
-
return [4 /*yield*/, new Promise(function (resolve) {
|
|
55
|
-
setTimeout(function () {
|
|
56
|
-
resolve(toReturn);
|
|
57
|
-
}, Math.random() * 100 + 1000);
|
|
58
|
-
})];
|
|
59
|
-
case 1: return [2 /*return*/, _a.sent()];
|
|
60
|
-
}
|
|
61
|
-
});
|
|
62
|
-
}); };
|
|
63
|
-
exports.getLeaderboard = getLeaderboard;
|
|
64
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"/","sources":["modules/trading-league/services/get-leaderboard/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,+BAA0C;AAE1C,IAAI,UAAU,GAAwB,EAAE,CAAC;AAEzC,oCAAoC;AAC7B,IAAM,cAAc,GAAG,UAC5B,CAAuB;;;;;gBAEvB,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC5B,UAAU,GAAG,IAAA,uBAAgB,EAC3B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAC9C,CAAC;gBACJ,CAAC;gBACK,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC;gBACd,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;gBACpB,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,GAAG,OAAO,EAAE,IAAI,GAAG,OAAO,GAAG,OAAO,CAAC,CAAC;gBAErE,qBAAM,IAAI,OAAO,CAAC,UAAC,OAAO;wBAC/B,UAAU,CACR;4BACE,OAAO,CAAC,QAAQ,CAAC,CAAC;wBACpB,CAAC,EACD,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,IAAI,CAC3B,CAAC;oBACJ,CAAC,CAAC,EAAA;oBAPF,sBAAO,SAOL,EAAC;;;KACJ,CAAC;AApBW,QAAA,cAAc,kBAoBzB","sourcesContent":["import {\n GetLeaderboardParams,\n GetLeaderboardResult,\n LeaderboardEntity,\n} from './types';\nimport { generateMockData } from './mock';\n\nlet mockedData: LeaderboardEntity[] = [];\n\n// TODO: Write proper implementation\nexport const getLeaderboard = async (\n _: GetLeaderboardParams,\n): Promise<GetLeaderboardResult> => {\n if (mockedData.length === 0) {\n mockedData = generateMockData(\n Math.floor(Math.random() * (123 - 5 + 1)) + 5,\n );\n }\n const page = _.page;\n const perPage = _.perPage;\n const toReturn = mockedData.slice(page * perPage, page * perPage + perPage);\n\n return await new Promise((resolve) => {\n setTimeout(\n () => {\n resolve(toReturn);\n },\n Math.random() * 100 + 1000,\n );\n });\n};\n"]}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.generateMockData = void 0;
|
|
4
|
-
function generateMockData(recordsCount) {
|
|
5
|
-
var characters = '0123456789ABCDEF';
|
|
6
|
-
var mockData = [];
|
|
7
|
-
var generateAddress = function () {
|
|
8
|
-
var address = '0x';
|
|
9
|
-
for (var i = 0; i < 40; i++) {
|
|
10
|
-
address += characters.charAt(Math.floor(Math.random() * characters.length));
|
|
11
|
-
}
|
|
12
|
-
return address;
|
|
13
|
-
};
|
|
14
|
-
for (var i = 0; i < recordsCount; i++) {
|
|
15
|
-
mockData.push({
|
|
16
|
-
address: generateAddress(),
|
|
17
|
-
currentBoost: parseFloat((Math.random() * 5 + 0.1).toFixed(1)),
|
|
18
|
-
liquidityXp: Math.random() * 100000,
|
|
19
|
-
rank: Math.floor(Math.random() * recordsCount) + 1,
|
|
20
|
-
ranking: i + 1,
|
|
21
|
-
tradingXp: Math.random() * 10000,
|
|
22
|
-
});
|
|
23
|
-
}
|
|
24
|
-
return mockData;
|
|
25
|
-
}
|
|
26
|
-
exports.generateMockData = generateMockData;
|
|
27
|
-
//# sourceMappingURL=mock.js.map
|
|
@@ -1 +0,0 @@
|
|
|
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 +0,0 @@
|
|
|
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 // current rank for user (fish, whale, shrimp)\n rank: number;\n // leaderboard ranking 1,2,3...1230,...\n ranking: number;\n tradingXp: number;\n};\n\nexport type GetLeaderboardParams = {\n page: number;\n perPage: number;\n};\nexport type GetLeaderboardResult = LeaderboardEntity[];\n"]}
|
|
@@ -1,55 +0,0 @@
|
|
|
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
|
|
@@ -1 +0,0 @@
|
|
|
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"]}
|
|
@@ -1,20 +0,0 @@
|
|
|
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
|
|
@@ -1 +0,0 @@
|
|
|
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"]}
|
|
@@ -1 +0,0 @@
|
|
|
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"]}
|
|
@@ -1,23 +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("./get-leaderboard"), exports);
|
|
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);
|
|
23
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
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"]}
|
|
@@ -1 +0,0 @@
|
|
|
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"}
|
|
@@ -1 +0,0 @@
|
|
|
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 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["modules/trading-league/services/get-leaderboard/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EAErB,MAAM,SAAS,CAAC;AAMjB,eAAO,MAAM,cAAc,MACtB,oBAAoB,KACtB,QAAQ,oBAAoB,CAkB9B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
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"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
export type LeaderboardEntity = {
|
|
2
|
-
address: string;
|
|
3
|
-
currentBoost: number;
|
|
4
|
-
liquidityXp: number;
|
|
5
|
-
rank: number;
|
|
6
|
-
ranking: number;
|
|
7
|
-
tradingXp: number;
|
|
8
|
-
};
|
|
9
|
-
export type GetLeaderboardParams = {
|
|
10
|
-
page: number;
|
|
11
|
-
perPage: number;
|
|
12
|
-
};
|
|
13
|
-
export type GetLeaderboardResult = LeaderboardEntity[];
|
|
14
|
-
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
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;IAEpB,IAAI,EAAE,MAAM,CAAC;IAEb,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 +0,0 @@
|
|
|
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"}
|
|
@@ -1 +0,0 @@
|
|
|
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"}
|
|
@@ -1,15 +0,0 @@
|
|
|
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
|
|
@@ -1 +0,0 @@
|
|
|
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,7 +0,0 @@
|
|
|
1
|
-
export * from './get-leaderboard';
|
|
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';
|
|
7
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
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"}
|
|
@@ -1,21 +0,0 @@
|
|
|
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
|
-
};
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
GetLeaderboardParams,
|
|
3
|
-
GetLeaderboardResult,
|
|
4
|
-
LeaderboardEntity,
|
|
5
|
-
} from './types';
|
|
6
|
-
import { generateMockData } from './mock';
|
|
7
|
-
|
|
8
|
-
let mockedData: LeaderboardEntity[] = [];
|
|
9
|
-
|
|
10
|
-
// TODO: Write proper implementation
|
|
11
|
-
export const getLeaderboard = async (
|
|
12
|
-
_: GetLeaderboardParams,
|
|
13
|
-
): Promise<GetLeaderboardResult> => {
|
|
14
|
-
if (mockedData.length === 0) {
|
|
15
|
-
mockedData = generateMockData(
|
|
16
|
-
Math.floor(Math.random() * (123 - 5 + 1)) + 5,
|
|
17
|
-
);
|
|
18
|
-
}
|
|
19
|
-
const page = _.page;
|
|
20
|
-
const perPage = _.perPage;
|
|
21
|
-
const toReturn = mockedData.slice(page * perPage, page * perPage + perPage);
|
|
22
|
-
|
|
23
|
-
return await new Promise((resolve) => {
|
|
24
|
-
setTimeout(
|
|
25
|
-
() => {
|
|
26
|
-
resolve(toReturn);
|
|
27
|
-
},
|
|
28
|
-
Math.random() * 100 + 1000,
|
|
29
|
-
);
|
|
30
|
-
});
|
|
31
|
-
};
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { LeaderboardEntity } from './types';
|
|
2
|
-
|
|
3
|
-
export function generateMockData(recordsCount: number): LeaderboardEntity[] {
|
|
4
|
-
const characters = '0123456789ABCDEF';
|
|
5
|
-
const mockData: LeaderboardEntity[] = [];
|
|
6
|
-
|
|
7
|
-
const generateAddress = () => {
|
|
8
|
-
let address = '0x';
|
|
9
|
-
for (let i = 0; i < 40; i++) {
|
|
10
|
-
address += characters.charAt(
|
|
11
|
-
Math.floor(Math.random() * characters.length),
|
|
12
|
-
);
|
|
13
|
-
}
|
|
14
|
-
return address;
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
for (let i = 0; i < recordsCount; i++) {
|
|
18
|
-
mockData.push({
|
|
19
|
-
address: generateAddress(),
|
|
20
|
-
currentBoost: parseFloat((Math.random() * 5 + 0.1).toFixed(1)),
|
|
21
|
-
liquidityXp: Math.random() * 100000,
|
|
22
|
-
rank: Math.floor(Math.random() * recordsCount) + 1,
|
|
23
|
-
ranking: i + 1,
|
|
24
|
-
tradingXp: Math.random() * 10000,
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
return mockData;
|
|
29
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
export type LeaderboardEntity = {
|
|
2
|
-
address: string;
|
|
3
|
-
currentBoost: number;
|
|
4
|
-
liquidityXp: number;
|
|
5
|
-
// current rank for user (fish, whale, shrimp)
|
|
6
|
-
rank: number;
|
|
7
|
-
// leaderboard ranking 1,2,3...1230,...
|
|
8
|
-
ranking: number;
|
|
9
|
-
tradingXp: number;
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
export type GetLeaderboardParams = {
|
|
13
|
-
page: number;
|
|
14
|
-
perPage: number;
|
|
15
|
-
};
|
|
16
|
-
export type GetLeaderboardResult = LeaderboardEntity[];
|
|
@@ -1,19 +0,0 @@
|
|
|
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
|
-
};
|
|
@@ -1,22 +0,0 @@
|
|
|
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
|
-
};
|
|
@@ -1,16 +0,0 @@
|
|
|
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;
|
|
File without changes
|