UNPKG

enkanetwork

Version:

API wrapper for enka.network written on TypeScript which provides localization, caching and convenience

30 lines (29 loc) 1.19 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.NamecardFinder = void 0; const errors_1 = require("../../errors"); class NamecardFinder { data; localization; constructor(data, localization) { this.data = data; this.localization = localization; } // Searching for a **namecard** by his ID getById(id) { const namecard = this.data.find((namecard) => namecard.id === id); if (!namecard) throw new errors_1.NoDataAssetsFound(`There is no namecard with id = ${id}! (check the actuality of assets)`); return namecard; } getName(namecard, language) { const nameLocalizations = this.localization[namecard.nameTextMapHash]; if (!nameLocalizations) throw new errors_1.NoLocalizationAssetsFound(`There is no localization for namecard with id = ${namecard.id}! (check the actuality of assets)`); const name = nameLocalizations[language]; if (!name) throw new errors_1.NoLanguageFound("This language is not downloaded! Check the AssetsUpdater settings"); return name; } } exports.NamecardFinder = NamecardFinder;