123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- import { Engine } from '../common/engine.js';
- import { Variables } from '../common/variables.js';
- import { Grammar } from '../rule_engine/grammar.js';
- import { af } from './locales/locale_af.js';
- import { ca } from './locales/locale_ca.js';
- import { da } from './locales/locale_da.js';
- import { de } from './locales/locale_de.js';
- import { en } from './locales/locale_en.js';
- import { es } from './locales/locale_es.js';
- import { euro } from './locales/locale_euro.js';
- import { fr } from './locales/locale_fr.js';
- import { hi } from './locales/locale_hi.js';
- import { ko } from './locales/locale_ko.js';
- import { it } from './locales/locale_it.js';
- import { nb } from './locales/locale_nb.js';
- import { nemeth } from './locales/locale_nemeth.js';
- import { nn } from './locales/locale_nn.js';
- import { sv } from './locales/locale_sv.js';
- import { LOCALE } from './locale.js';
- export const locales = {
- af: af,
- ca: ca,
- da: da,
- de: de,
- en: en,
- es: es,
- euro: euro,
- fr: fr,
- hi: hi,
- it: it,
- ko: ko,
- nb: nb,
- nn: nn,
- sv: sv,
- nemeth: nemeth
- };
- export function setLocale() {
- const msgs = getLocale();
- setSubiso(msgs);
- if (msgs) {
- for (const key of Object.getOwnPropertyNames(msgs)) {
- LOCALE[key] = msgs[key];
- }
- for (const [key, func] of Object.entries(msgs.CORRECTIONS)) {
- Grammar.getInstance().setCorrection(key, func);
- }
- }
- }
- function setSubiso(msg) {
- const subiso = Engine.getInstance().subiso;
- if (msg.SUBISO.all.indexOf(subiso) === -1) {
- Engine.getInstance().subiso = msg.SUBISO.default;
- }
- msg.SUBISO.current = Engine.getInstance().subiso;
- }
- function getLocale() {
- const locale = Variables.ensureLocale(Engine.getInstance().locale, Engine.getInstance().defaultLocale);
- Engine.getInstance().locale = locale;
- return locales[locale]();
- }
- export function completeLocale(json) {
- const locale = locales[json.locale];
- if (!locale) {
- console.error('Locale ' + json.locale + ' does not exist!');
- return;
- }
- const kind = json.kind.toUpperCase();
- const messages = json.messages;
- if (!messages)
- return;
- const loc = locale();
- for (const [key, value] of Object.entries(messages)) {
- loc[kind][key] = value;
- }
- }
|