genshin-manager
Version:
<div align="center"> <p> <a href="https://www.npmjs.com/package/genshin-manager"><img src="https://img.shields.io/npm/v/genshin-manager.svg?maxAge=3600" alt="npm version" /></a> <a href="https://www.npmjs.com/package/genshin-manager"><img src="https:
34 lines (33 loc) • 1.14 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.CharacterPreview = void 0;
const CharacterCostume_1 = require("../../models/character/CharacterCostume");
const CharacterInfo_1 = require("../../models/character/CharacterInfo");
const elementIdMap = {
1: 'Pyro',
2: 'Hydro',
3: 'Dendro',
4: 'Electro',
5: 'Cryo',
7: 'Anemo',
8: 'Geo',
};
/**
* Class of the character preview obtained from EnkaNetwork
*/
class CharacterPreview extends CharacterCostume_1.CharacterCostume {
/**
* Create a character preview
* @param data Data from EnkaNetwork
*/
constructor(data) {
var _a, _b;
const characterData = new CharacterInfo_1.CharacterInfo(data.avatarId);
super((_a = data.costumeId) !== null && _a !== void 0 ? _a : characterData.defaultCostumeId);
this.level = data.level;
this.element = data.energyType ? elementIdMap[data.energyType] : undefined;
this.collectionLevel = (_b = data.talentLevel) !== null && _b !== void 0 ? _b : 0;
this.data = data;
}
}
exports.CharacterPreview = CharacterPreview;