Add internationalization support with astro-i18next integration
- Implemented astro-i18next for multi-language support, including English, Dutch, and Italian. - Configured default locale and language fallback settings. - Defined routes for localized content in the configuration. - Updated package.json and package-lock.json to include new dependencies for i18next and related plugins.
This commit is contained in:
40
node_modules/locale-emoji/update-defaults.js
generated
vendored
Normal file
40
node_modules/locale-emoji/update-defaults.js
generated
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
var fs = require('fs');
|
||||
|
||||
var cldr = require('cldr-core/supplemental/likelySubtags.json');
|
||||
var likelySubtags = cldr.supplemental.likelySubtags;
|
||||
|
||||
var defaultsCode = 'var defaults = {\n';
|
||||
|
||||
Object.keys(likelySubtags).forEach(key => {
|
||||
if (key.indexOf('und-') === 0 || (/-[A-Z]{2}$/g).test(key)) {
|
||||
return;
|
||||
}
|
||||
|
||||
var locale = likelySubtags[key];
|
||||
|
||||
var split = locale.toUpperCase().split(/-|_/);
|
||||
if (split.length < 2) {
|
||||
return;
|
||||
}
|
||||
|
||||
var code = split.pop();
|
||||
if (!code || code === 'ZZ' || !/^[A-Z]{2}$/.test(code)) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (key.indexOf('-') !== -1) {
|
||||
key = `'${key}'`;
|
||||
}
|
||||
|
||||
defaultsCode += ` ${key}: '${code}',\n`;
|
||||
});
|
||||
|
||||
defaultsCode += '};\n';
|
||||
|
||||
let path = `${__dirname}/index.js`;
|
||||
|
||||
let content = fs.readFileSync(path, 'utf-8')
|
||||
.replace(/\/\/ --- DEFAULTS START ---\n((.|\n)+)\/\/ --- DEFAULTS END ---/gm,
|
||||
`// --- DEFAULTS START ---\n${defaultsCode}// --- DEFAULTS END ---`);
|
||||
|
||||
fs.writeFileSync(path, content, 'utf-8');
|
Reference in New Issue
Block a user