UNPKG

@myria/leaderboard-ts-sdk

Version:

Myria Leaderboard typescripts SDK which will manage leaderboard for game developers

82 lines 7.28 kB
import { LeaderboardAPI } from '../core/apis/LeaderboardAPI'; class RewardManager { constructor(env) { this.env = env; this.leaderboardAPI = new LeaderboardAPI(this.env); } async getRewards(rewardParams) { if (!rewardParams.leaderboardId) { throw new Error('Leaderboard ID is required'); } if (!rewardParams.userId) { throw new Error('User ID is required'); } const rewardData = await this.leaderboardAPI.getRewardData(rewardParams); if (rewardData.status !== 'success') { throw new Error('There is an internal server error when fetching the rewards'); } return rewardData.data; } async preClaimRewards(preClaimParams) { if (!preClaimParams.leaderboardId) { throw new Error('Leaderboard ID is required'); } if (!preClaimParams.userId) { throw new Error('User ID is required'); } if (!preClaimParams.rewardIds || (preClaimParams.rewardIds && preClaimParams.rewardIds.length === 0)) { throw new Error('Reward Ids are required'); } if (!preClaimParams.xSignature || (preClaimParams.xSignature && preClaimParams.xSignature.length <= 1)) { throw new Error('X-Signature is required'); } if (!preClaimParams.xStarkKey || (preClaimParams.xStarkKey && preClaimParams.xStarkKey.length <= 1)) { throw new Error('X-StarkKey is required'); } if (!preClaimParams.xTimestamp || (preClaimParams.xTimestamp && preClaimParams.xTimestamp.length <= 1)) { throw new Error('X-TimeStamp is required'); } const rewardData = await this.leaderboardAPI.preClaim(preClaimParams); if (rewardData.status !== 'success') { throw new Error('There is an internal server error when trigger pre claim rewards'); } return rewardData.data; } async postClaimRewards(postClaimParam) { if (!postClaimParam.leaderboardId) { throw new Error('Leaderboard ID is required'); } if (!postClaimParam.userId) { throw new Error('User ID is required'); } if (!postClaimParam.xSignature || (postClaimParam.xSignature && postClaimParam.xSignature.length <= 1)) { throw new Error('X-Signature is required'); } if (!postClaimParam.xStarkKey || (postClaimParam.xStarkKey && postClaimParam.xStarkKey.length <= 1)) { throw new Error('X-StarkKey is required'); } if ((!postClaimParam.transactionHash || (postClaimParam.transactionHash && postClaimParam.transactionHash.length < 1)) && !postClaimParam.errorMessage) { throw new Error('Either transaction hash or error message must be existed'); } if (!postClaimParam.rewardIds || (postClaimParam.rewardIds && postClaimParam.rewardIds.length === 0)) { throw new Error('Reward Ids are required'); } const rewardData = await this.leaderboardAPI.postClaimReward(postClaimParam); if (rewardData.status !== 'success') { throw new Error('There is an internal server error when trigger pre claim rewards'); } return rewardData.data; } } export { RewardManager }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmV3YXJkTWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL1Jld2FyZE1hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBVTdELE1BQU0sYUFBYTtJQUlqQixZQUFZLEdBQVc7UUFDckIsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDZixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFlLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRU0sS0FBSyxDQUFDLFVBQVUsQ0FDckIsWUFBOEI7UUFFOUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLEVBQUU7WUFDL0IsTUFBTSxJQUFJLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1NBQy9DO1FBQ0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUU7WUFDeEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1NBQ3hDO1FBRUQsTUFBTSxVQUFVLEdBQUcsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN6RSxJQUFJLFVBQVUsQ0FBQyxNQUFNLEtBQUssU0FBUyxFQUFFO1lBQ25DLE1BQU0sSUFBSSxLQUFLLENBQ2IsNkRBQTZELENBQzlELENBQUM7U0FDSDtRQUVELE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQztJQUN6QixDQUFDO0lBRU0sS0FBSyxDQUFDLGVBQWUsQ0FDMUIsY0FBOEI7UUFFOUIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLEVBQUU7WUFDakMsTUFBTSxJQUFJLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1NBQy9DO1FBQ0QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUU7WUFDMUIsTUFBTSxJQUFJLEtBQUssQ0FBQyxx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