l10n.js 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. exports.locales = void 0;
  4. exports.setLocale = setLocale;
  5. exports.completeLocale = completeLocale;
  6. const engine_js_1 = require("../common/engine.js");
  7. const variables_js_1 = require("../common/variables.js");
  8. const grammar_js_1 = require("../rule_engine/grammar.js");
  9. const locale_af_js_1 = require("./locales/locale_af.js");
  10. const locale_ca_js_1 = require("./locales/locale_ca.js");
  11. const locale_da_js_1 = require("./locales/locale_da.js");
  12. const locale_de_js_1 = require("./locales/locale_de.js");
  13. const locale_en_js_1 = require("./locales/locale_en.js");
  14. const locale_es_js_1 = require("./locales/locale_es.js");
  15. const locale_euro_js_1 = require("./locales/locale_euro.js");
  16. const locale_fr_js_1 = require("./locales/locale_fr.js");
  17. const locale_hi_js_1 = require("./locales/locale_hi.js");
  18. const locale_ko_js_1 = require("./locales/locale_ko.js");
  19. const locale_it_js_1 = require("./locales/locale_it.js");
  20. const locale_nb_js_1 = require("./locales/locale_nb.js");
  21. const locale_nemeth_js_1 = require("./locales/locale_nemeth.js");
  22. const locale_nn_js_1 = require("./locales/locale_nn.js");
  23. const locale_sv_js_1 = require("./locales/locale_sv.js");
  24. const locale_js_1 = require("./locale.js");
  25. exports.locales = {
  26. af: locale_af_js_1.af,
  27. ca: locale_ca_js_1.ca,
  28. da: locale_da_js_1.da,
  29. de: locale_de_js_1.de,
  30. en: locale_en_js_1.en,
  31. es: locale_es_js_1.es,
  32. euro: locale_euro_js_1.euro,
  33. fr: locale_fr_js_1.fr,
  34. hi: locale_hi_js_1.hi,
  35. it: locale_it_js_1.it,
  36. ko: locale_ko_js_1.ko,
  37. nb: locale_nb_js_1.nb,
  38. nn: locale_nn_js_1.nn,
  39. sv: locale_sv_js_1.sv,
  40. nemeth: locale_nemeth_js_1.nemeth
  41. };
  42. function setLocale() {
  43. const msgs = getLocale();
  44. setSubiso(msgs);
  45. if (msgs) {
  46. for (const key of Object.getOwnPropertyNames(msgs)) {
  47. locale_js_1.LOCALE[key] = msgs[key];
  48. }
  49. for (const [key, func] of Object.entries(msgs.CORRECTIONS)) {
  50. grammar_js_1.Grammar.getInstance().setCorrection(key, func);
  51. }
  52. }
  53. }
  54. function setSubiso(msg) {
  55. const subiso = engine_js_1.Engine.getInstance().subiso;
  56. if (msg.SUBISO.all.indexOf(subiso) === -1) {
  57. engine_js_1.Engine.getInstance().subiso = msg.SUBISO.default;
  58. }
  59. msg.SUBISO.current = engine_js_1.Engine.getInstance().subiso;
  60. }
  61. function getLocale() {
  62. const locale = variables_js_1.Variables.ensureLocale(engine_js_1.Engine.getInstance().locale, engine_js_1.Engine.getInstance().defaultLocale);
  63. engine_js_1.Engine.getInstance().locale = locale;
  64. return exports.locales[locale]();
  65. }
  66. function completeLocale(json) {
  67. const locale = exports.locales[json.locale];
  68. if (!locale) {
  69. console.error('Locale ' + json.locale + ' does not exist!');
  70. return;
  71. }
  72. const kind = json.kind.toUpperCase();
  73. const messages = json.messages;
  74. if (!messages)
  75. return;
  76. const loc = locale();
  77. for (const [key, value] of Object.entries(messages)) {
  78. loc[kind][key] = value;
  79. }
  80. }