@datamoc/mw_games 0.7.6 → 0.7.7

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 (283) hide show
  1. package/CHANGELOG.md +270 -0
  2. package/dist/actors/Inventory.d.ts +7 -1
  3. package/dist/actors/Inventory.d.ts.map +1 -1
  4. package/dist/actors/Inventory.js.map +1 -1
  5. package/dist/actors/craft.d.ts +35 -14
  6. package/dist/actors/craft.d.ts.map +1 -1
  7. package/dist/actors/craft.js +56 -24
  8. package/dist/actors/craft.js.map +1 -1
  9. package/dist/actors/index.d.ts +1 -1
  10. package/dist/actors/index.d.ts.map +1 -1
  11. package/dist/ai/Heuristics.d.ts +232 -0
  12. package/dist/ai/Heuristics.d.ts.map +1 -0
  13. package/dist/ai/Heuristics.js +298 -0
  14. package/dist/ai/Heuristics.js.map +1 -0
  15. package/dist/ai/index.d.ts +4 -0
  16. package/dist/ai/index.d.ts.map +1 -1
  17. package/dist/ai/index.js +2 -0
  18. package/dist/ai/index.js.map +1 -1
  19. package/dist/ai/score.d.ts +126 -0
  20. package/dist/ai/score.d.ts.map +1 -0
  21. package/dist/ai/score.js +121 -0
  22. package/dist/ai/score.js.map +1 -0
  23. package/dist/assets/loader.d.ts +18 -4
  24. package/dist/assets/loader.d.ts.map +1 -1
  25. package/dist/assets/loader.js +40 -11
  26. package/dist/assets/loader.js.map +1 -1
  27. package/dist/audio/Positional.d.ts +125 -0
  28. package/dist/audio/Positional.d.ts.map +1 -0
  29. package/dist/audio/Positional.js +135 -0
  30. package/dist/audio/Positional.js.map +1 -0
  31. package/dist/audio/Sound.d.ts +7 -1
  32. package/dist/audio/Sound.d.ts.map +1 -1
  33. package/dist/audio/Sound.js +8 -2
  34. package/dist/audio/Sound.js.map +1 -1
  35. package/dist/audio/index.d.ts +2 -0
  36. package/dist/audio/index.d.ts.map +1 -1
  37. package/dist/audio/index.js +1 -0
  38. package/dist/audio/index.js.map +1 -1
  39. package/dist/battle/AttackDialog.d.ts +75 -0
  40. package/dist/battle/AttackDialog.d.ts.map +1 -0
  41. package/dist/battle/AttackDialog.js +115 -0
  42. package/dist/battle/AttackDialog.js.map +1 -0
  43. package/dist/battle/AttackPreview.d.ts +70 -0
  44. package/dist/battle/AttackPreview.d.ts.map +1 -0
  45. package/dist/battle/AttackPreview.js +78 -0
  46. package/dist/battle/AttackPreview.js.map +1 -0
  47. package/dist/battle/BattleStats.d.ts +45 -0
  48. package/dist/battle/BattleStats.d.ts.map +1 -0
  49. package/dist/battle/BattleStats.js +63 -0
  50. package/dist/battle/BattleStats.js.map +1 -0
  51. package/dist/battle/UnitSelector.d.ts +72 -0
  52. package/dist/battle/UnitSelector.d.ts.map +1 -0
  53. package/dist/battle/UnitSelector.js +117 -0
  54. package/dist/battle/UnitSelector.js.map +1 -0
  55. package/dist/battle/Whiteboard.d.ts +50 -0
  56. package/dist/battle/Whiteboard.d.ts.map +1 -0
  57. package/dist/battle/Whiteboard.js +94 -0
  58. package/dist/battle/Whiteboard.js.map +1 -0
  59. package/dist/battle/index.d.ts +10 -0
  60. package/dist/battle/index.d.ts.map +1 -1
  61. package/dist/battle/index.js +5 -0
  62. package/dist/battle/index.js.map +1 -1
  63. package/dist/board/FogOfWar.d.ts +32 -2
  64. package/dist/board/FogOfWar.d.ts.map +1 -1
  65. package/dist/board/FogOfWar.js +70 -6
  66. package/dist/board/FogOfWar.js.map +1 -1
  67. package/dist/core/Achievements.d.ts +40 -7
  68. package/dist/core/Achievements.d.ts.map +1 -1
  69. package/dist/core/Achievements.js +51 -7
  70. package/dist/core/Achievements.js.map +1 -1
  71. package/dist/core/Hex.d.ts +26 -6
  72. package/dist/core/Hex.d.ts.map +1 -1
  73. package/dist/core/Hex.js +40 -13
  74. package/dist/core/Hex.js.map +1 -1
  75. package/dist/core/Input.d.ts +36 -0
  76. package/dist/core/Input.d.ts.map +1 -1
  77. package/dist/core/Input.js +63 -1
  78. package/dist/core/Input.js.map +1 -1
  79. package/dist/core/Random.d.ts +93 -0
  80. package/dist/core/Random.d.ts.map +1 -1
  81. package/dist/core/Random.js +177 -0
  82. package/dist/core/Random.js.map +1 -1
  83. package/dist/core/SyncGuard.d.ts +57 -0
  84. package/dist/core/SyncGuard.d.ts.map +1 -0
  85. package/dist/core/SyncGuard.js +116 -0
  86. package/dist/core/SyncGuard.js.map +1 -0
  87. package/dist/core/index.d.ts +3 -1
  88. package/dist/core/index.d.ts.map +1 -1
  89. package/dist/core/index.js +2 -1
  90. package/dist/core/index.js.map +1 -1
  91. package/dist/i18n/Po.d.ts +51 -0
  92. package/dist/i18n/Po.d.ts.map +1 -0
  93. package/dist/i18n/Po.js +176 -0
  94. package/dist/i18n/Po.js.map +1 -0
  95. package/dist/i18n/index.d.ts +2 -0
  96. package/dist/i18n/index.d.ts.map +1 -1
  97. package/dist/i18n/index.js +1 -0
  98. package/dist/i18n/index.js.map +1 -1
  99. package/dist/mw_games.global.js +104 -98
  100. package/dist/mwl/MapFile.d.ts +41 -0
  101. package/dist/mwl/MapFile.d.ts.map +1 -0
  102. package/dist/mwl/MapFile.js +43 -0
  103. package/dist/mwl/MapFile.js.map +1 -0
  104. package/dist/mwl/campaign.d.ts +51 -0
  105. package/dist/mwl/campaign.d.ts.map +1 -0
  106. package/dist/mwl/campaign.js +58 -0
  107. package/dist/mwl/campaign.js.map +1 -0
  108. package/dist/mwl/carryover.d.ts +79 -0
  109. package/dist/mwl/carryover.d.ts.map +1 -0
  110. package/dist/mwl/carryover.js +63 -0
  111. package/dist/mwl/carryover.js.map +1 -0
  112. package/dist/mwl/content.d.ts +10 -0
  113. package/dist/mwl/content.d.ts.map +1 -1
  114. package/dist/mwl/content.js +8 -0
  115. package/dist/mwl/content.js.map +1 -1
  116. package/dist/mwl/hooks.d.ts +6 -5
  117. package/dist/mwl/hooks.d.ts.map +1 -1
  118. package/dist/mwl/hooks.js.map +1 -1
  119. package/dist/mwl/index.d.ts +8 -2
  120. package/dist/mwl/index.d.ts.map +1 -1
  121. package/dist/mwl/index.js +4 -1
  122. package/dist/mwl/index.js.map +1 -1
  123. package/dist/mwl/runtime.d.ts +140 -7
  124. package/dist/mwl/runtime.d.ts.map +1 -1
  125. package/dist/mwl/runtime.js +427 -33
  126. package/dist/mwl/runtime.js.map +1 -1
  127. package/dist/mwl/schema.d.ts.map +1 -1
  128. package/dist/mwl/schema.js +97 -18
  129. package/dist/mwl/schema.js.map +1 -1
  130. package/dist/roguelike/MultiTurnBeam.d.ts +50 -12
  131. package/dist/roguelike/MultiTurnBeam.d.ts.map +1 -1
  132. package/dist/roguelike/MultiTurnBeam.js +100 -53
  133. package/dist/roguelike/MultiTurnBeam.js.map +1 -1
  134. package/dist/roguelike/Targeting.d.ts +94 -0
  135. package/dist/roguelike/Targeting.d.ts.map +1 -1
  136. package/dist/roguelike/Targeting.js +123 -0
  137. package/dist/roguelike/Targeting.js.map +1 -1
  138. package/dist/roguelike/index.d.ts +3 -1
  139. package/dist/roguelike/index.d.ts.map +1 -1
  140. package/dist/roguelike/index.js +1 -0
  141. package/dist/roguelike/index.js.map +1 -1
  142. package/dist/simulation/CampaignSave.d.ts +68 -0
  143. package/dist/simulation/CampaignSave.d.ts.map +1 -0
  144. package/dist/simulation/CampaignSave.js +54 -0
  145. package/dist/simulation/CampaignSave.js.map +1 -0
  146. package/dist/simulation/EventPresentation.d.ts +111 -0
  147. package/dist/simulation/EventPresentation.d.ts.map +1 -0
  148. package/dist/simulation/EventPresentation.js +120 -0
  149. package/dist/simulation/EventPresentation.js.map +1 -0
  150. package/dist/simulation/index.d.ts +4 -0
  151. package/dist/simulation/index.d.ts.map +1 -1
  152. package/dist/simulation/index.js +2 -0
  153. package/dist/simulation/index.js.map +1 -1
  154. package/dist/two-d/pixi-interop.d.ts +18 -6
  155. package/dist/two-d/pixi-interop.d.ts.map +1 -1
  156. package/dist/two-d/pixi-interop.js +18 -6
  157. package/dist/two-d/pixi-interop.js.map +1 -1
  158. package/dist/two-d/render/AnimatedSprite.d.ts +74 -7
  159. package/dist/two-d/render/AnimatedSprite.d.ts.map +1 -1
  160. package/dist/two-d/render/AnimatedSprite.js +88 -26
  161. package/dist/two-d/render/AnimatedSprite.js.map +1 -1
  162. package/dist/two-d/render/Camera.d.ts +64 -4
  163. package/dist/two-d/render/Camera.d.ts.map +1 -1
  164. package/dist/two-d/render/Camera.js +132 -11
  165. package/dist/two-d/render/Camera.js.map +1 -1
  166. package/dist/two-d/render/Halo.d.ts +58 -0
  167. package/dist/two-d/render/Halo.d.ts.map +1 -0
  168. package/dist/two-d/render/Halo.js +48 -0
  169. package/dist/two-d/render/Halo.js.map +1 -0
  170. package/dist/two-d/render/ImageModifiers.d.ts +174 -0
  171. package/dist/two-d/render/ImageModifiers.d.ts.map +1 -1
  172. package/dist/two-d/render/ImageModifiers.js +438 -1
  173. package/dist/two-d/render/ImageModifiers.js.map +1 -1
  174. package/dist/two-d/render/LightningArc.d.ts +57 -0
  175. package/dist/two-d/render/LightningArc.d.ts.map +1 -0
  176. package/dist/two-d/render/LightningArc.js +91 -0
  177. package/dist/two-d/render/LightningArc.js.map +1 -0
  178. package/dist/two-d/render/PaletteRemap.d.ts +135 -0
  179. package/dist/two-d/render/PaletteRemap.d.ts.map +1 -0
  180. package/dist/two-d/render/PaletteRemap.js +181 -0
  181. package/dist/two-d/render/PaletteRemap.js.map +1 -0
  182. package/dist/two-d/render/Particles.d.ts +26 -0
  183. package/dist/two-d/render/Particles.d.ts.map +1 -1
  184. package/dist/two-d/render/Particles.js +23 -2
  185. package/dist/two-d/render/Particles.js.map +1 -1
  186. package/dist/two-d/render/SpriteAttachment.d.ts +55 -0
  187. package/dist/two-d/render/SpriteAttachment.d.ts.map +1 -0
  188. package/dist/two-d/render/SpriteAttachment.js +60 -0
  189. package/dist/two-d/render/SpriteAttachment.js.map +1 -0
  190. package/dist/two-d/render/TerrainGraphics.d.ts +142 -0
  191. package/dist/two-d/render/TerrainGraphics.d.ts.map +1 -0
  192. package/dist/two-d/render/TerrainGraphics.js +161 -0
  193. package/dist/two-d/render/TerrainGraphics.js.map +1 -0
  194. package/dist/two-d/render/index.d.ts +13 -3
  195. package/dist/two-d/render/index.d.ts.map +1 -1
  196. package/dist/two-d/render/index.js +6 -1
  197. package/dist/two-d/render/index.js.map +1 -1
  198. package/dist/two-d/stage/StoryScreen.d.ts +110 -0
  199. package/dist/two-d/stage/StoryScreen.d.ts.map +1 -0
  200. package/dist/two-d/stage/StoryScreen.js +178 -0
  201. package/dist/two-d/stage/StoryScreen.js.map +1 -0
  202. package/dist/two-d/stage/index.d.ts +2 -0
  203. package/dist/two-d/stage/index.d.ts.map +1 -1
  204. package/dist/two-d/stage/index.js +1 -0
  205. package/dist/two-d/stage/index.js.map +1 -1
  206. package/dist/two-d/ui/Checkbox.d.ts +44 -0
  207. package/dist/two-d/ui/Checkbox.d.ts.map +1 -0
  208. package/dist/two-d/ui/Checkbox.js +89 -0
  209. package/dist/two-d/ui/Checkbox.js.map +1 -0
  210. package/dist/two-d/ui/DataTable.d.ts +79 -0
  211. package/dist/two-d/ui/DataTable.d.ts.map +1 -0
  212. package/dist/two-d/ui/DataTable.js +164 -0
  213. package/dist/two-d/ui/DataTable.js.map +1 -0
  214. package/dist/two-d/ui/Dropdown.d.ts +72 -0
  215. package/dist/two-d/ui/Dropdown.d.ts.map +1 -0
  216. package/dist/two-d/ui/Dropdown.js +126 -0
  217. package/dist/two-d/ui/Dropdown.js.map +1 -0
  218. package/dist/two-d/ui/FloatingText.d.ts +43 -4
  219. package/dist/two-d/ui/FloatingText.d.ts.map +1 -1
  220. package/dist/two-d/ui/FloatingText.js +52 -5
  221. package/dist/two-d/ui/FloatingText.js.map +1 -1
  222. package/dist/two-d/ui/FloatingTextStack.d.ts +86 -13
  223. package/dist/two-d/ui/FloatingTextStack.d.ts.map +1 -1
  224. package/dist/two-d/ui/FloatingTextStack.js +89 -18
  225. package/dist/two-d/ui/FloatingTextStack.js.map +1 -1
  226. package/dist/two-d/ui/Layout.d.ts +105 -0
  227. package/dist/two-d/ui/Layout.d.ts.map +1 -0
  228. package/dist/two-d/ui/Layout.js +174 -0
  229. package/dist/two-d/ui/Layout.js.map +1 -0
  230. package/dist/two-d/ui/ScrollBox.d.ts +67 -0
  231. package/dist/two-d/ui/ScrollBox.d.ts.map +1 -0
  232. package/dist/two-d/ui/ScrollBox.js +127 -0
  233. package/dist/two-d/ui/ScrollBox.js.map +1 -0
  234. package/dist/two-d/ui/Skins.d.ts +59 -0
  235. package/dist/two-d/ui/Skins.d.ts.map +1 -0
  236. package/dist/two-d/ui/Skins.js +77 -0
  237. package/dist/two-d/ui/Skins.js.map +1 -0
  238. package/dist/two-d/ui/Slider.d.ts +91 -0
  239. package/dist/two-d/ui/Slider.d.ts.map +1 -0
  240. package/dist/two-d/ui/Slider.js +170 -0
  241. package/dist/two-d/ui/Slider.js.map +1 -0
  242. package/dist/two-d/ui/Spinner.d.ts +67 -0
  243. package/dist/two-d/ui/Spinner.d.ts.map +1 -0
  244. package/dist/two-d/ui/Spinner.js +137 -0
  245. package/dist/two-d/ui/Spinner.js.map +1 -0
  246. package/dist/two-d/ui/TabbedList.d.ts +118 -0
  247. package/dist/two-d/ui/TabbedList.d.ts.map +1 -0
  248. package/dist/two-d/ui/TabbedList.js +221 -0
  249. package/dist/two-d/ui/TabbedList.js.map +1 -0
  250. package/dist/two-d/ui/TextModel.d.ts +65 -0
  251. package/dist/two-d/ui/TextModel.d.ts.map +1 -0
  252. package/dist/two-d/ui/TextModel.js +126 -0
  253. package/dist/two-d/ui/TextModel.js.map +1 -0
  254. package/dist/two-d/ui/TreeView.d.ts +68 -0
  255. package/dist/two-d/ui/TreeView.d.ts.map +1 -0
  256. package/dist/two-d/ui/TreeView.js +133 -0
  257. package/dist/two-d/ui/TreeView.js.map +1 -0
  258. package/dist/two-d/ui/Window.d.ts +13 -0
  259. package/dist/two-d/ui/Window.d.ts.map +1 -1
  260. package/dist/two-d/ui/Window.js +23 -0
  261. package/dist/two-d/ui/Window.js.map +1 -1
  262. package/dist/two-d/ui/WindowStack.d.ts.map +1 -1
  263. package/dist/two-d/ui/WindowStack.js +2 -0
  264. package/dist/two-d/ui/WindowStack.js.map +1 -1
  265. package/dist/two-d/ui/index.d.ts +27 -3
  266. package/dist/two-d/ui/index.d.ts.map +1 -1
  267. package/dist/two-d/ui/index.js +14 -2
  268. package/dist/two-d/ui/index.js.map +1 -1
  269. package/dist/two-d/ui/markup.d.ts +127 -0
  270. package/dist/two-d/ui/markup.d.ts.map +1 -0
  271. package/dist/two-d/ui/markup.js +322 -0
  272. package/dist/two-d/ui/markup.js.map +1 -0
  273. package/dist/version.d.ts +1 -1
  274. package/dist/version.js +1 -1
  275. package/dist/world/SideTurns.d.ts +115 -0
  276. package/dist/world/SideTurns.d.ts.map +1 -0
  277. package/dist/world/SideTurns.js +138 -0
  278. package/dist/world/SideTurns.js.map +1 -0
  279. package/dist/world/index.d.ts +2 -0
  280. package/dist/world/index.d.ts.map +1 -1
  281. package/dist/world/index.js +1 -0
  282. package/dist/world/index.js.map +1 -1
  283. package/package.json +2 -1
@@ -0,0 +1,176 @@
1
+ /**
2
+ * Parses the useful, dependency-free subset of a gettext `.po` file into an `i18n`
3
+ * `Catalog`: `msgid`/`msgstr`, `msgctxt`, `msgid_plural` with `msgstr[N]`, and the header
4
+ * entry, which is read and dropped. Comments and flags are ignored.
5
+ *
6
+ * Gettext's plural forms are positions (`msgstr[0]`, `msgstr[1]`), while a `Catalog` keys
7
+ * them by CLDR category (what `Intl.PluralRules.select` returns). The two agree on order for
8
+ * a CLDR-ordered catalog - English's two forms are one/other and Arabic's six are
9
+ * zero/one/two/few/many/other - so form `N` maps to the Nth category the locale declares. A
10
+ * catalog with more forms than its locale declares throws rather than silently mislabelling
11
+ * one.
12
+ *
13
+ * An entry with an empty translation is left out, which is what gettext means by
14
+ * "untranslated" and what lets `t()` fall back to the base language. A `msgid` carries no
15
+ * placeholder syntax of its own here: write the catalog's own `{token}` form in the `.po`,
16
+ * or run the strings through `FormatSpec` separately.
17
+ *
18
+ * @example
19
+ * ```ts
20
+ * import { parsePo, setBase, setActive, t } from '@datamoc/mw_games/i18n';
21
+ *
22
+ * const po = [
23
+ * 'msgid "greeting"',
24
+ * 'msgstr "Bonjour, {name} !"',
25
+ * '',
26
+ * 'msgid "apple"',
27
+ * 'msgid_plural "{n} apples"',
28
+ * 'msgstr[0] "une pomme"',
29
+ * 'msgstr[1] "{n} pommes"',
30
+ * ].join('\n');
31
+ *
32
+ * setBase({ locale: 'en', direction: 'ltr', messages: { greeting: 'Hello, {name}!' } });
33
+ * setActive(parsePo('fr', po));
34
+ * console.log(t('greeting', { name: 'Ada' })); // 'Bonjour, Ada !'
35
+ * console.log(t('apple', { count: 3, n: 3 })); // '{n} pommes'
36
+ * ```
37
+ */
38
+ export function parsePo(locale, source, options = {}) {
39
+ const domain = options.domain ?? 'messages';
40
+ const prefix = domain === 'messages' ? '' : `${domain}:`;
41
+ const messages = {};
42
+ const lines = source.replace(/\r\n?/g, '\n').split('\n');
43
+ let entry = null;
44
+ const finish = () => {
45
+ if (!entry)
46
+ return;
47
+ if (entry.id === undefined) {
48
+ if (entry.str !== undefined || entry.plurals.size > 0 || entry.context !== undefined) {
49
+ throw new Error('PO entry has a translation but no msgid');
50
+ }
51
+ entry = null;
52
+ return;
53
+ }
54
+ store(entry);
55
+ entry = null;
56
+ };
57
+ const store = (current) => {
58
+ const id = current.id;
59
+ if (id === '')
60
+ return; // the header entry: metadata, not a message
61
+ if (current.plural !== undefined && current.plurals.size === 0) {
62
+ throw new Error(`PO message "${id}" has a plural but no msgstr[N] forms`);
63
+ }
64
+ const key = prefix + (current.context ? `${current.context}\u0004${id}` : id);
65
+ if (messages[key] !== undefined)
66
+ throw new Error(`Duplicate PO message: ${key}`);
67
+ if (current.plurals.size > 0) {
68
+ if ([...current.plurals.values()].every((text) => text === ''))
69
+ return; // untranslated
70
+ const categories = new Intl.PluralRules(locale).resolvedOptions().pluralCategories;
71
+ const forms = {};
72
+ for (const [index, text] of [...current.plurals].sort((a, b) => a[0] - b[0])) {
73
+ const category = categories[index];
74
+ if (category === undefined) {
75
+ throw new Error(`PO message "${id}" has plural form ${index}, but ${locale} declares only ${categories.length}`);
76
+ }
77
+ forms[category] = text;
78
+ }
79
+ messages[key] = forms;
80
+ return;
81
+ }
82
+ if (current.str !== undefined && current.str !== '')
83
+ messages[key] = current.str;
84
+ //an empty msgstr is gettext's "untranslated": leave the key out so the base language wins
85
+ };
86
+ for (let i = 0; i < lines.length; i++) {
87
+ const line = lines[i];
88
+ const trimmed = line.trim();
89
+ if (trimmed === '') {
90
+ finish();
91
+ continue;
92
+ }
93
+ if (trimmed.startsWith('#'))
94
+ continue; // translator comments, references, flags
95
+ const match = line.match(/^(msgctxt|msgid_plural|msgid|msgstr(?:\[(\d+)\])?)\s+(.*)$/);
96
+ if (!match)
97
+ throw new Error(`Invalid PO line ${i + 1}: ${line}`);
98
+ const keyword = match[1];
99
+ const index = match[2] === undefined ? undefined : Number(match[2]);
100
+ const read = readPoString(lines, i, match[3]);
101
+ i = read.next - 1;
102
+ if (!entry) {
103
+ entry = { plurals: new Map() };
104
+ }
105
+ else if ((keyword === 'msgctxt' || keyword === 'msgid') && entry.id !== undefined) {
106
+ //a new entry with no blank line between: close the previous one
107
+ finish();
108
+ entry = { plurals: new Map() };
109
+ }
110
+ if (keyword === 'msgctxt')
111
+ entry.context = read.text;
112
+ else if (keyword === 'msgid')
113
+ entry.id = read.text;
114
+ else if (keyword === 'msgid_plural')
115
+ entry.plural = read.text;
116
+ else if (keyword === 'msgstr')
117
+ entry.str = read.text;
118
+ else if (index !== undefined)
119
+ entry.plurals.set(index, read.text);
120
+ else
121
+ throw new Error(`Invalid PO keyword on line ${i + 1}: ${keyword}`);
122
+ }
123
+ finish();
124
+ return {
125
+ locale,
126
+ direction: options.direction ?? (/^(ar|he|fa|ur)(?:-|$)/i.test(locale) ? 'rtl' : 'ltr'),
127
+ messages,
128
+ };
129
+ }
130
+ /** Reads one PO string at `start`, its quoted chunk and any continuation lines, concatenated. */
131
+ function readPoString(lines, start, rest) {
132
+ if (!rest.trim().startsWith('"')) {
133
+ throw new Error(`PO string must start with a quote on line ${start + 1}: ${rest}`);
134
+ }
135
+ let text = parseChunk(rest.trim(), start);
136
+ let i = start + 1;
137
+ while (i < lines.length && lines[i].trim().startsWith('"')) {
138
+ text += parseChunk(lines[i].trim(), i);
139
+ i++;
140
+ }
141
+ return { text, next: i };
142
+ }
143
+ function parseChunk(chunk, line) {
144
+ const match = chunk.match(/^"((?:[^"\\]|\\.)*)"/);
145
+ if (!match)
146
+ throw new Error(`Invalid PO string on line ${line + 1}: ${chunk}`);
147
+ return unescapePo(match[1]);
148
+ }
149
+ function unescapePo(text) {
150
+ return text.replace(/\\(.)/g, (_, character) => {
151
+ switch (character) {
152
+ case 'n':
153
+ return '\n';
154
+ case 't':
155
+ return '\t';
156
+ case 'r':
157
+ return '\r';
158
+ case '"':
159
+ return '"';
160
+ case '\\':
161
+ return '\\';
162
+ case 'a':
163
+ return '\x07';
164
+ case 'b':
165
+ return '\b';
166
+ case 'f':
167
+ return '\f';
168
+ case 'v':
169
+ return '\v';
170
+ default:
171
+ //an unrecognised escape keeps the character, which is gettext's own laxness
172
+ return character;
173
+ }
174
+ });
175
+ }
176
+ //# sourceMappingURL=Po.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Po.js","sourceRoot":"","sources":["../../src/i18n/Po.ts"],"names":[],"mappings":"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"}
@@ -151,6 +151,8 @@ export declare function has(key: string): boolean;
151
151
  export declare function reset(): void;
152
152
  export { parseFTL } from './Fluent.ts';
153
153
  export type { FluentOptions } from './Fluent.ts';
154
+ export { parsePo } from './Po.ts';
155
+ export type { PoOptions } from './Po.ts';
154
156
  export { parseSoundMarkers, stripSoundMarkers } from './SoundMarkers.ts';
155
157
  export type { InlineSoundCue, ParsedSoundText } from './SoundMarkers.ts';
156
158
  export { createCatalogFormatter } from './SemanticMessage.ts';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/i18n/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/i18n/index.ts"],"names":[],"mappings":"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"}
@@ -300,6 +300,7 @@ export function reset() {
300
300
  activeRules = null;
301
301
  }
302
302
  export { parseFTL } from './Fluent.js';
303
+ export { parsePo } from './Po.js';
303
304
  export { parseSoundMarkers, stripSoundMarkers } from './SoundMarkers.js';
304
305
  export { createCatalogFormatter } from './SemanticMessage.js';
305
306
  export { formatNumber, formatDate, formatList } from './Format.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/i18n/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/i18n/index.ts"],"names":[],"mappings":"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"}