enkanetwork
Version:
API wrapper for enka.network written on TypeScript which provides localization, caching and convenience
51 lines (50 loc) • 2.37 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.LocalizationManager = void 0;
const promises_1 = __importDefault(require("node:fs/promises"));
const node_path_1 = __importDefault(require("node:path"));
// @ts-ignore: Json Import
const characters_json_1 = __importDefault(require("../../../assets/localization/characters.json"));
// @ts-ignore: Json Import
const constellations_json_1 = __importDefault(require("../../../assets/localization/constellations.json"));
// @ts-ignore: Json Import
const costumes_json_1 = __importDefault(require("../../../assets/localization/costumes.json"));
// @ts-ignore: Json Import
const namecards_json_1 = __importDefault(require("../../../assets/localization/namecards.json"));
// @ts-ignore: Json Import
const reliquary_json_1 = __importDefault(require("../../../assets/localization/reliquary.json"));
// @ts-ignore: Json Import
const reliquarySets_json_1 = __importDefault(require("../../../assets/localization/reliquarySets.json"));
// @ts-ignore: Json Import
const skills_json_1 = __importDefault(require("../../../assets/localization/skills.json"));
// @ts-ignore: Json Import
const weapons_json_1 = __importDefault(require("../../../assets/localization/weapons.json"));
const constants_1 = require("./constants");
class LocalizationManager {
characters;
costumes;
constellations;
namecards;
reliquary;
reliquarySets;
skills;
weapons;
constructor() {
this.characters = characters_json_1.default;
this.costumes = costumes_json_1.default;
this.constellations = constellations_json_1.default;
this.namecards = namecards_json_1.default;
this.reliquary = reliquary_json_1.default;
this.reliquarySets = reliquarySets_json_1.default;
this.skills = skills_json_1.default;
this.weapons = weapons_json_1.default;
}
async write(assetType, localization) {
this[assetType] = Object.assign(this[assetType], localization);
await promises_1.default.writeFile(node_path_1.default.resolve(constants_1.ASSETS_PATH, "localization", `${assetType}.json`), JSON.stringify(localization, null, 4));
}
}
exports.LocalizationManager = LocalizationManager;