enkanetwork
Version:
API wrapper for enka.network written on TypeScript which provides localization, caching and convenience
55 lines (54 loc) • 2.71 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.DataManager = 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/data/characters.json"));
// @ts-ignore: Json Import
const constellations_json_1 = __importDefault(require("../../../assets/data/constellations.json"));
// @ts-ignore: Json Import
const costumes_json_1 = __importDefault(require("../../../assets/data/costumes.json"));
// @ts-ignore: Json Import
const namecards_json_1 = __importDefault(require("../../../assets/data/namecards.json"));
// @ts-ignore: Json Import
const skills_json_1 = __importDefault(require("../../../assets/data/skills.json"));
const constants_1 = require("./constants");
class DataManager {
characters;
constellations;
costumes;
namecards;
skills;
constructor() {
this.characters = characters_json_1.default;
this.constellations = constellations_json_1.default;
this.costumes = costumes_json_1.default;
this.namecards = namecards_json_1.default;
this.skills = skills_json_1.default;
}
async writeCharacters(data) {
this.characters = Object.assign(this.characters, data);
await promises_1.default.writeFile(node_path_1.default.resolve(constants_1.ASSETS_PATH, "data", "characters.json"), JSON.stringify(data, null, 4));
}
async writeConstellations(data) {
this.constellations = Object.assign(this.constellations, data);
await promises_1.default.writeFile(node_path_1.default.resolve(constants_1.ASSETS_PATH, "data", "constellations.json"), JSON.stringify(data, null, 4));
}
async writeCostumes(data) {
this.costumes = Object.assign(this.costumes, data);
await promises_1.default.writeFile(node_path_1.default.resolve(constants_1.ASSETS_PATH, "data", "costumes.json"), JSON.stringify(data, null, 4));
}
async writeNamecards(data) {
this.namecards = Object.assign(this.namecards, data);
await promises_1.default.writeFile(node_path_1.default.resolve(constants_1.ASSETS_PATH, "data", "namecards.json"), JSON.stringify(data, null, 4));
}
async writeSkills(data) {
this.skills = Object.assign(this.skills, data);
await promises_1.default.writeFile(node_path_1.default.resolve(constants_1.ASSETS_PATH, "data", "skills.json"), JSON.stringify(data, null, 4));
}
}
exports.DataManager = DataManager;