@cfwest/api-client
Version:
Unofficial CrossFire West ApiClient implementation.
42 lines (41 loc) • 1.42 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.RibbonsApiModule = void 0;
const base_module_1 = require("./base-module");
class RibbonsApiModule extends base_module_1.BaseApiModule {
fetchUserRibbonInfo(playerUSN) {
return this.httpClient.get('userribbons.json', {
params: {
usn: playerUSN,
},
});
}
async getRibbonList() {
return this.httpClient.get('ribbonslist.json');
}
async getUserRibbons(playerUSN) {
const response = await this.fetchUserRibbonInfo(playerUSN);
if (response && response.userRibbonList) {
return response.userRibbonList;
}
return undefined;
}
async getUserRibbonsCount(playerUSN) {
const response = await this.fetchUserRibbonInfo(playerUSN);
if (response && response.ribbonCount) {
return response.ribbonCount;
}
return undefined;
}
async getUserHasHonorableSoldier(playerUSN) {
const response = await this.fetchUserRibbonInfo(playerUSN);
if (response && response.hasHGW) {
const hgwInfo = response.hasHGW[0];
if (hgwInfo.hasRibbon) {
return hgwInfo.hasRibbon === 1;
}
}
return undefined;
}
}
exports.RibbonsApiModule = RibbonsApiModule;