| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- import Path from 'path'
- import fs from 'fs'
- import { fileURLToPath } from 'node:url'
- import { loadLocale } from './utils.js'
- const __dirname = fileURLToPath(new URL('.', import.meta.url))
- const LANGUAGES = [
- 'cs',
- 'da',
- 'de',
- 'en',
- 'es',
- 'fi',
- 'fr',
- 'it',
- 'ja',
- 'ko',
- 'nl',
- 'no',
- 'pl',
- 'pt',
- 'ru',
- 'sv',
- 'tr',
- 'zh-CN',
- ]
- const LOCALES = {}
- LANGUAGES.forEach(loadLocales)
- function loadLocales(language) {
- LOCALES[language] = loadLocale(language)
- }
- function transformLocales(mapping, transformLocale) {
- Object.entries(LOCALES).forEach(([language, translatedLocales]) => {
- Object.entries(mapping).forEach(([localeKey, spec]) => {
- const locale = translatedLocales[localeKey]
- if (!locale) {
- // This locale is not translated yet.
- return
- }
- translatedLocales[localeKey] = transformLocale(locale, spec)
- })
- fs.writeFileSync(
- Path.join(__dirname, `/../../locales/${language}.json`),
- JSON.stringify(translatedLocales, null, 2) + '\n'
- )
- })
- }
- export default {
- transformLocales,
- }
|