@lokascript/i18n 2.7.2 → 2.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/CHANGELOG.md +51 -0
  2. package/README.md +1 -1
  3. package/dist/browser.cjs +649 -180
  4. package/dist/browser.cjs.map +1 -1
  5. package/dist/browser.d.cts +2 -2
  6. package/dist/browser.d.ts +2 -2
  7. package/dist/browser.js +649 -180
  8. package/dist/browser.js.map +1 -1
  9. package/dist/dictionaries/index.cjs +370 -174
  10. package/dist/dictionaries/index.cjs.map +1 -1
  11. package/dist/dictionaries/index.js +370 -174
  12. package/dist/dictionaries/index.js.map +1 -1
  13. package/dist/index.cjs +649 -180
  14. package/dist/index.cjs.map +1 -1
  15. package/dist/index.d.cts +1 -1
  16. package/dist/index.d.ts +1 -1
  17. package/dist/index.js +649 -180
  18. package/dist/index.js.map +1 -1
  19. package/dist/lokascript-i18n.min.js +1 -1
  20. package/dist/lokascript-i18n.min.js.map +1 -1
  21. package/dist/lokascript-i18n.mjs +678 -175
  22. package/dist/lokascript-i18n.mjs.map +1 -1
  23. package/dist/plugins/vite.cjs +370 -174
  24. package/dist/plugins/vite.cjs.map +1 -1
  25. package/dist/plugins/vite.js +370 -174
  26. package/dist/plugins/vite.js.map +1 -1
  27. package/dist/plugins/webpack.cjs +370 -174
  28. package/dist/plugins/webpack.cjs.map +1 -1
  29. package/dist/plugins/webpack.js +370 -174
  30. package/dist/plugins/webpack.js.map +1 -1
  31. package/dist/{transformer-DM7iplCU.d.cts → transformer--W46PGaW.d.cts} +8 -0
  32. package/dist/{transformer-BA8YX9u1.d.ts → transformer-FU06J6kG.d.ts} +8 -0
  33. package/package.json +9 -10
  34. package/src/dictionaries/ar.ts +20 -15
  35. package/src/dictionaries/bn.ts +10 -5
  36. package/src/dictionaries/de.ts +20 -8
  37. package/src/dictionaries/es.ts +10 -5
  38. package/src/dictionaries/fr.ts +15 -6
  39. package/src/dictionaries/he.ts +4 -0
  40. package/src/dictionaries/hi.ts +3 -2
  41. package/src/dictionaries/id.ts +31 -16
  42. package/src/dictionaries/it.ts +11 -4
  43. package/src/dictionaries/ja.ts +23 -15
  44. package/src/dictionaries/ko.ts +10 -5
  45. package/src/dictionaries/ms.ts +4 -1
  46. package/src/dictionaries/pl.ts +12 -5
  47. package/src/dictionaries/pt.ts +10 -5
  48. package/src/dictionaries/qu.ts +30 -19
  49. package/src/dictionaries/ru.ts +5 -2
  50. package/src/dictionaries/sw.ts +29 -14
  51. package/src/dictionaries/th.ts +5 -2
  52. package/src/dictionaries/tl.ts +4 -1
  53. package/src/dictionaries/tr.ts +24 -16
  54. package/src/dictionaries/uk.ts +5 -2
  55. package/src/dictionaries/vi.ts +23 -17
  56. package/src/dictionaries/zh.ts +24 -9
  57. package/src/grammar/grammar.test.ts +152 -0
  58. package/src/grammar/profiles/index.ts +316 -1
  59. package/src/grammar/transformer.ts +64 -1
  60. package/src/new-languages.test.ts +9 -3
  61. package/src/positional-keyword-drift.test.ts +6 -19
@@ -39,7 +39,8 @@ const POSITIONAL_CONCEPTS = [
39
39
 
40
40
  /**
41
41
  * Burn-down list (lang:concept). State as of introduction:
42
- * - `random` is unrecognized by most tokenizers (no extras entry).
42
+ * - `random` was unrecognized by most tokenizers (no extras entry) — BURNED DOWN
43
+ * in pick-text-range arc 2 (Batch D added the missing EXTRAS entries).
43
44
  * - The `closest` superlatives/compounds (es máscercano, fr plusproche,
44
45
  * it piùvicino, pt mais_próximo, tr en_yakın, qu aswan_kaylla) split or
45
46
  * missed entirely — the tokenizer never matches multi-word/underscore
@@ -62,28 +63,14 @@ const POSITIONAL_CONCEPTS = [
62
63
  */
63
64
  const KNOWN_DRIFT = new Set<string>([
64
65
  'ar:parent',
65
- 'ar:random',
66
66
  'bn:last',
67
- 'bn:random',
68
67
  'de:parent',
69
- 'de:random',
70
- 'es:random',
71
- 'fr:random',
72
- 'hi:random',
73
- 'id:random',
74
68
  'it:parent',
75
- 'it:random',
76
- 'ja:random',
77
- 'ko:random',
78
- 'ms:random',
79
- 'pl:random',
80
- 'pt:random',
81
69
  'qu:parent',
82
- 'qu:random',
83
- 'sw:random',
84
- 'th:random',
85
- 'tr:random',
86
- 'zh:random',
70
+ // The `random` drift (18 languages) was BURNED DOWN in pick-text-range arc 2
71
+ // (Batch D): `random` lived in the dicts' `expressions` but was recognized by
72
+ // the tokenizer only in ru/uk; arc 2 added the missing EXTRAS entries, so every
73
+ // dict `random` emission now normalizes back to `random`.
87
74
  ]);
88
75
 
89
76
  function normalizeEmission(lang: string, emission: string): string | null {