feat (i18n) : go back i18n loading json files
This commit is contained in:
parent
0ead17ab70
commit
c39cb42601
@ -1,34 +1,26 @@
|
|||||||
import i18n from 'sveltekit-i18n';
|
import i18n from 'sveltekit-i18n';
|
||||||
import lang from './lang.json';
|
import lang from './lang.json';
|
||||||
import * as fs from 'fs';
|
|
||||||
|
|
||||||
// Get all translations files
|
|
||||||
const loaders = [];
|
|
||||||
const translations = {};
|
|
||||||
fs.readdir('src/lib/locales/', (err, files) => {
|
|
||||||
files.forEach((file) => {
|
|
||||||
if (file.endsWith('.json')) {
|
|
||||||
const lang_iso = file.replace('.json', '');
|
|
||||||
|
|
||||||
loaders.push({
|
|
||||||
locale: file.replace('.json', ''),
|
|
||||||
key: '',
|
|
||||||
/* @vite-ignore */
|
|
||||||
loader: async () => (await import(`./locales/${lang_iso}.json`)).default
|
|
||||||
});
|
|
||||||
|
|
||||||
translations[lang_iso] = { lang };
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
/** @type {import('sveltekit-i18n').Config} */
|
/** @type {import('sveltekit-i18n').Config} */
|
||||||
const config = {
|
export const config = {
|
||||||
fallbackLocale: 'en',
|
fallbackLocale: 'en',
|
||||||
translations: translations,
|
translations: {
|
||||||
loaders: loaders
|
en: { lang },
|
||||||
|
fr: { lang }
|
||||||
|
},
|
||||||
|
loaders: [
|
||||||
|
{
|
||||||
|
locale: 'en',
|
||||||
|
key: '',
|
||||||
|
loader: async () => (await import('./locales/en.json')).default
|
||||||
|
},
|
||||||
|
{
|
||||||
|
locale: 'fr',
|
||||||
|
key: '',
|
||||||
|
loader: async () => (await import('./locales/fr.json')).default
|
||||||
|
}
|
||||||
|
]
|
||||||
};
|
};
|
||||||
|
|
||||||
export const { t, loading, locales, locale, loadTranslations } = new i18n(config);
|
export const { t, loading, locales, locale, loadTranslations } = new i18n(config);
|
||||||
|
loading.subscribe(($loading) => $loading && console.log('Loading translations...'));
|
||||||
loading.subscribe(($loading) => $loading);
|
|
||||||
|
Loading…
Reference in New Issue
Block a user