@plone/registry
Version:
Add-on and configuration registry for Plone and for JavaScript and TypeScript-based apps.
32 lines (31 loc) • 967 B
JavaScript
// src/addon-registry/create-addons-locales-loader.ts
import fs from "fs";
import path from "path";
function createAddonsLocalesLoader(registry) {
const addonsLocalesInfo = registry.getAddonsLocales();
Object.entries(addonsLocalesInfo).forEach(([language, languageInfo]) => {
Object.entries(languageInfo).forEach(([namespace, translations]) => {
if (namespace !== "common.json") {
console.warn(
'Only the "common" locales namespace is supported for now, skipping ',
namespace
);
return;
}
const localesDir = path.join(
registry.projectRootPath,
"public",
"locales",
language
);
if (!fs.existsSync(localesDir)) {
fs.mkdirSync(localesDir, { recursive: true });
}
const file = path.join(localesDir, namespace);
fs.writeFileSync(file, JSON.stringify(translations, null, 2));
});
});
}
export {
createAddonsLocalesLoader
};