UNPKG

intlayer-editor

Version:

Integrate the Intlayer visual editor into your Intlayer projects, enabling CMS-like content management with multilingual support.

112 lines (110 loc) 3.83 kB
const require_rolldown_runtime = require('../_virtual/rolldown_runtime.cjs'); const require_utils_responseData = require('../utils/responseData.cjs'); let _intlayer_config = require("@intlayer/config"); let _intlayer_chokidar = require("@intlayer/chokidar"); let _intlayer_unmerged_dictionaries_entry = require("@intlayer/unmerged-dictionaries-entry"); let express_intlayer = require("express-intlayer"); //#region src/controllers/dictionary.controller.ts /** * Get the Intlayer configuration */ const getDictionaries = async (_req, res, _next) => { try { const formattedResponse = require_utils_responseData.formatResponse({ data: (0, _intlayer_unmerged_dictionaries_entry.getUnmergedDictionaries)() }); res.json(formattedResponse); return; } catch (err) { const errorMessage = err ?? { message: "Internal Server Error", status: 500 }; const formattedErrorResponse = require_utils_responseData.formatResponse({ error: { message: errorMessage.message ?? "Internal Server Error", code: "INTERNAL_SERVER_ERROR", title: "Internal Server Error" }, status: errorMessage.status ?? 500 }); res.json(formattedErrorResponse); return; } }; /** * Adds a new dictionary to the database. */ const writeContentDeclaration = async (req, res, _next) => { try { const dictionaryData = req.body.dictionary; const result = await (0, _intlayer_chokidar.writeContentDeclaration)(dictionaryData, (0, _intlayer_config.getConfiguration)()); let description = ""; switch (result.status) { case "created": description = (0, express_intlayer.t)({ en: "Content declaration created successfully", fr: "Déclaration de contenu créée avec succès", es: "Declaración de contenido creada con éxito" }); break; case "updated": description = (0, express_intlayer.t)({ en: "Content declaration updated successfully", fr: "Déclaration de contenu mise à jour avec succès", es: "Declaración de contenido actualizada con éxito" }); break; case "reimported in JSON": description = (0, express_intlayer.t)({ en: "Content declaration reimported in JSON successfully", fr: "Déclaration de contenu réimportée en JSON avec succès", es: "Declaración de contenido reimportada en JSON con éxito" }); break; case "new content file": description = (0, express_intlayer.t)({ en: "Content declaration new content file successfully", fr: "Déclaration de contenu réimportée dans un nouveau emplacement avec succès", es: "Declaración de contenido reimportada en un nuevo lugar con éxito" }); break; default: description = (0, express_intlayer.t)({ en: "Content declaration written successfully", fr: "Déclaration de contenu écrite avec succès", es: "Declaración de contenido escrita con éxito" }); break; } const formattedResponse = require_utils_responseData.formatResponse({ data: result, message: (0, express_intlayer.t)({ en: "Content declaration written", fr: "Déclaration de contenu écrite", es: "Declaración de contenido escrita" }), description }); res.json(formattedResponse); return; } catch (err) { const errorMessage = err ?? { message: "Internal Server Error", status: 500 }; console.error(errorMessage); const formattedErrorResponse = require_utils_responseData.formatResponse({ error: { message: errorMessage.message ?? "Internal Server Error", code: "INTERNAL_SERVER_ERROR", title: "Internal Server Error" }, status: errorMessage.status ?? 500 }); res.json(formattedErrorResponse); return; } }; //#endregion exports.getDictionaries = getDictionaries; exports.writeContentDeclaration = writeContentDeclaration; //# sourceMappingURL=dictionary.controller.cjs.map