i18ntk
Version:
i18n Tool Kit - Zero-dependency internationalization toolkit for setup, scanning, analysis, validation, auto translation, fixing, reporting, and runtime translation loading.
17 lines (13 loc) • 553 B
JavaScript
;
const { createRuntime, initRuntime } = require('./core');
function createStaticLoader(resources = {}) {
return {
async listLocales() { return Object.keys(resources); },
async load(locale, namespaces) {
const localeResources = resources[locale] || {};
if (!namespaces) return localeResources;
return Object.fromEntries(namespaces.filter(name => localeResources[name] !== undefined).map(name => [name, localeResources[name]]));
}
};
}
module.exports = { createRuntime, initRuntime, createStaticLoader };