@pie-players/pie-i18n-generated 1.0.0-beta.6 → 1.0.0-beta.8
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.
- package/README.md +104 -13
- package/dist/index.js +67 -0
- package/dist/messages/am.d.ts +667 -0
- package/dist/messages/am.js +678 -0
- package/dist/messages/ar.d.ts +31 -4
- package/dist/messages/ar.js +42 -15
- package/dist/messages/bn.d.ts +662 -0
- package/dist/messages/bn.js +662 -0
- package/dist/messages/cy.d.ts +31 -5
- package/dist/messages/cy.js +44 -18
- package/dist/messages/de.d.ts +665 -0
- package/dist/messages/de.js +688 -0
- package/dist/messages/el.d.ts +661 -0
- package/dist/messages/el.js +661 -0
- package/dist/messages/en-AU.d.ts +27 -6
- package/dist/messages/en-AU.js +27 -6
- package/dist/messages/en-GB.d.ts +27 -6
- package/dist/messages/en-GB.js +27 -6
- package/dist/messages/es.d.ts +26 -4
- package/dist/messages/es.js +55 -33
- package/dist/messages/fa.d.ts +664 -0
- package/dist/messages/fa.js +664 -0
- package/dist/messages/fil.d.ts +665 -0
- package/dist/messages/fil.js +690 -0
- package/dist/messages/fr.d.ts +37 -8
- package/dist/messages/fr.js +63 -34
- package/dist/messages/he.d.ts +669 -0
- package/dist/messages/he.js +669 -0
- package/dist/messages/hmn.d.ts +660 -0
- package/dist/messages/hmn.js +660 -0
- package/dist/messages/ht.d.ts +665 -0
- package/dist/messages/ht.js +683 -0
- package/dist/messages/it.d.ts +672 -0
- package/dist/messages/it.js +703 -0
- package/dist/messages/ja.d.ts +25 -4
- package/dist/messages/ja.js +31 -10
- package/dist/messages/km.d.ts +658 -0
- package/dist/messages/km.js +658 -0
- package/dist/messages/ko.d.ts +25 -4
- package/dist/messages/ko.js +42 -21
- package/dist/messages/lo.d.ts +659 -0
- package/dist/messages/lo.js +659 -0
- package/dist/messages/ne.d.ts +667 -0
- package/dist/messages/ne.js +682 -0
- package/dist/messages/nl-NL.d.ts +668 -0
- package/dist/messages/nl-NL.js +668 -0
- package/dist/messages/pa.d.ts +663 -0
- package/dist/messages/pa.js +663 -0
- package/dist/messages/pl.d.ts +675 -0
- package/dist/messages/pl.js +675 -0
- package/dist/messages/pt.d.ts +27 -4
- package/dist/messages/pt.js +55 -32
- package/dist/messages/ro.d.ts +31 -8
- package/dist/messages/ro.js +55 -32
- package/dist/messages/ru.d.ts +676 -0
- package/dist/messages/ru.js +689 -0
- package/dist/messages/so.d.ts +666 -0
- package/dist/messages/so.js +679 -0
- package/dist/messages/sv.d.ts +31 -8
- package/dist/messages/sv.js +39 -16
- package/dist/messages/th-TH.d.ts +27 -6
- package/dist/messages/th-TH.js +36 -15
- package/dist/messages/tr.d.ts +659 -0
- package/dist/messages/tr.js +659 -0
- package/dist/messages/uk.d.ts +675 -0
- package/dist/messages/uk.js +675 -0
- package/dist/messages/ur.d.ts +661 -0
- package/dist/messages/ur.js +661 -0
- package/dist/messages/vi.d.ts +652 -0
- package/dist/messages/vi.js +652 -0
- package/dist/messages/zh-Hant.d.ts +655 -0
- package/dist/messages/zh-Hant.js +655 -0
- package/dist/messages/zh.d.ts +32 -10
- package/dist/messages/zh.js +42 -20
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -54,19 +54,43 @@ loaded catalog.
|
|
|
54
54
|
|
|
55
55
|
| Tag | Status | Brief | Generated |
|
|
56
56
|
| --- | --- | --- | --- |
|
|
57
|
-
| `th-TH` |
|
|
58
|
-
| `en-GB` |
|
|
59
|
-
| `en-AU` |
|
|
60
|
-
| `es` |
|
|
61
|
-
| `fr` |
|
|
62
|
-
| `ar` |
|
|
63
|
-
| `pt` |
|
|
64
|
-
| `ko` |
|
|
65
|
-
| `ja` |
|
|
66
|
-
| `zh` |
|
|
67
|
-
| `cy` |
|
|
68
|
-
| `sv` |
|
|
69
|
-
| `ro` |
|
|
57
|
+
| `th-TH` | reviewed (agent pass in lieu of a native reader, 2026-11-03) | [`briefs/th-TH.md`](./briefs/th-TH.md) | 2026-10-19 |
|
|
58
|
+
| `en-GB` | reviewed (agent verification pass, 2026-11-03; delta locale) | [`briefs/en-GB.md`](./briefs/en-GB.md) | 2026-10-19 |
|
|
59
|
+
| `en-AU` | reviewed (agent verification pass, 2026-11-03; delta locale) | [`briefs/en-AU.md`](./briefs/en-AU.md) | 2026-10-19 |
|
|
60
|
+
| `es` | reviewed (agent pass in lieu of a native reader, 2026-11-03; Latin-American neutral; serves `es*`) | [`briefs/es.md`](./briefs/es.md) | 2026-10-19 |
|
|
61
|
+
| `fr` | reviewed (agent pass in lieu of a native reader, 2026-11-03; France flavour; serves `fr*`) | [`briefs/fr.md`](./briefs/fr.md) | 2026-10-19 |
|
|
62
|
+
| `ar` | reviewed (agent pass in lieu of a native reader, 2026-11-04, after the RTL layout audit below landed; MSA; serves `ar*`; RTL) | [`briefs/ar.md`](./briefs/ar.md) | 2026-10-19 |
|
|
63
|
+
| `pt` | reviewed (agent pass in lieu of a native reader, 2026-11-03; Brazilian; serves `pt*`) | [`briefs/pt.md`](./briefs/pt.md) | 2026-10-19 |
|
|
64
|
+
| `ko` | reviewed (agent pass in lieu of a native reader, 2026-11-03) | [`briefs/ko.md`](./briefs/ko.md) | 2026-10-19 |
|
|
65
|
+
| `ja` | reviewed (agent pass in lieu of a native reader, 2026-11-03) | [`briefs/ja.md`](./briefs/ja.md) | 2026-10-19 |
|
|
66
|
+
| `zh` | reviewed (agent pass in lieu of a native reader, 2026-11-03; Simplified; serves `zh`, `zh-CN`, `zh-SG`; Traditional hosts supply `customMessages`) | [`briefs/zh.md`](./briefs/zh.md) | 2026-10-19 |
|
|
67
|
+
| `cy` | reviewed (agent pass in lieu of a native reader, 2026-11-03; serves `cy`, `cy-GB`; six CLDR plural categories) | [`briefs/cy.md`](./briefs/cy.md) | 2026-10-19 |
|
|
68
|
+
| `sv` | reviewed (agent pass in lieu of a native reader, 2026-11-03; serves `sv`, `sv-SE`, `sv-FI`) | [`briefs/sv.md`](./briefs/sv.md) | 2026-10-19 |
|
|
69
|
+
| `ro` | reviewed (agent pass in lieu of a native reader, 2026-11-03; serves `ro`, `ro-RO`, `ro-MD`; three CLDR plural categories, `other` takes `de`) | [`briefs/ro.md`](./briefs/ro.md) | 2026-10-19 |
|
|
70
|
+
| `vi` | reviewed (agent pass in lieu of a native reader, 2026-11-03; serves `vi`, `vi-VN`; one CLDR plural category) | [`briefs/vi.md`](./briefs/vi.md) | 2026-11-03 |
|
|
71
|
+
| `nl-NL` | reviewed (**native-speaker audit** — the framework's audit language; carried over from `players-shared`'s bundled set on 2026-11-04, verbatim) | [`briefs/nl-NL.md`](./briefs/nl-NL.md) | 2026-10-18 |
|
|
72
|
+
| `de` | reviewed (agent generation-and-review pass in lieu of a native reader, 2026-11-04; international deployment set; serves `de`, `de-AT`, `de-CH`) | [`briefs/de.md`](./briefs/de.md) | 2026-11-04 |
|
|
73
|
+
| `it` | reviewed (agent generation-and-review pass in lieu of a native reader, 2026-11-04; international deployment set; serves `it`) | [`briefs/it.md`](./briefs/it.md) | 2026-11-04 |
|
|
74
|
+
| `pl` | reviewed (agent generation-and-review pass in lieu of a native reader, 2026-11-04; international deployment set; serves `pl`; four CLDR plural categories) | [`briefs/pl.md`](./briefs/pl.md) | 2026-11-04 |
|
|
75
|
+
| `tr` | reviewed (agent generation-and-review pass in lieu of a native reader, 2026-11-04; international deployment set; serves `tr`, `tr-CY`) | [`briefs/tr.md`](./briefs/tr.md) | 2026-11-04 |
|
|
76
|
+
| `uk` | reviewed (agent generation-and-review pass in lieu of a native reader, 2026-11-04; international deployment set; serves `uk`; four CLDR plural categories) | [`briefs/uk.md`](./briefs/uk.md) | 2026-11-04 |
|
|
77
|
+
| `el` | reviewed (agent generation-and-review pass in lieu of a native reader, 2026-11-04; international deployment set; serves `el`, `el-CY`) | [`briefs/el.md`](./briefs/el.md) | 2026-11-04 |
|
|
78
|
+
| `ru` | reviewed (agent generation-and-review pass in lieu of a native reader, 2026-11-04; big-US wave; four CLDR plural categories) | [`briefs/ru.md`](./briefs/ru.md) | 2026-11-04 |
|
|
79
|
+
| `fil` | reviewed (agent generation-and-review pass in lieu of a native reader, 2026-11-04; big-US wave; the `tl` tag aliases this catalog) | [`briefs/fil.md`](./briefs/fil.md) | 2026-11-04 |
|
|
80
|
+
| `tl` | alias of `fil` (US systems label the language Tagalog) | [`briefs/fil.md`](./briefs/fil.md) | 2026-11-04 |
|
|
81
|
+
| `ht` | reviewed (agent generation-and-review pass in lieu of a native reader, 2026-11-04; big-US wave) | [`briefs/ht.md`](./briefs/ht.md) | 2026-11-04 |
|
|
82
|
+
| `ur` | reviewed (agent generation-and-review pass in lieu of a native reader, 2026-11-04; second RTL wave — inherits the audited RTL layout contract) | [`briefs/ur.md`](./briefs/ur.md) | 2026-11-04 |
|
|
83
|
+
| `fa` | reviewed (agent generation-and-review pass in lieu of a native reader, 2026-11-04; second RTL wave) | [`briefs/fa.md`](./briefs/fa.md) | 2026-11-04 |
|
|
84
|
+
| `he` | reviewed (agent generation-and-review pass in lieu of a native reader, 2026-11-04; second RTL wave; CLDR `two` category) | [`briefs/he.md`](./briefs/he.md) | 2026-11-04 |
|
|
85
|
+
| `zh-Hant` | reviewed (agent generation-and-review pass in lieu of a native reader, 2026-11-04; Taiwan-register Traditional — regional tag, bare `zh` stays Simplified) | [`briefs/zh-Hant.md`](./briefs/zh-Hant.md) | 2026-11-04 |
|
|
86
|
+
| `so` | reviewed (agent pass, 2026-11-04; state/regional wave — terminology partially standardized, **native review strongly advised**) | [`briefs/so.md`](./briefs/so.md) | 2026-11-04 |
|
|
87
|
+
| `hmn` | reviewed (agent pass, 2026-11-04; state/regional wave — White Hmong RPA, CLDR-undersourced, **native review strongly advised**) | [`briefs/hmn.md`](./briefs/hmn.md) | 2026-11-04 |
|
|
88
|
+
| `km` | reviewed (agent pass, 2026-11-04; state/regional wave — Khmer script, **native review strongly advised**) | [`briefs/km.md`](./briefs/km.md) | 2026-11-04 |
|
|
89
|
+
| `lo` | reviewed (agent pass, 2026-11-04; state/regional wave — Lao script, **native review strongly advised**) | [`briefs/lo.md`](./briefs/lo.md) | 2026-11-04 |
|
|
90
|
+
| `bn` | reviewed (agent pass, 2026-11-04; state/regional wave — Bengali script, **native review strongly advised**) | [`briefs/bn.md`](./briefs/bn.md) | 2026-11-04 |
|
|
91
|
+
| `pa` | reviewed (agent pass, 2026-11-04; state/regional wave — Gurmukhi script, **native review strongly advised**) | [`briefs/pa.md`](./briefs/pa.md) | 2026-11-04 |
|
|
92
|
+
| `ne` | reviewed (agent pass, 2026-11-04; state/regional wave — Devanagari script, **native review strongly advised**) | [`briefs/ne.md`](./briefs/ne.md) | 2026-11-04 |
|
|
93
|
+
| `am` | reviewed (agent pass, 2026-11-04; state/regional wave — Ethiopic script, **native review strongly advised**) | [`briefs/am.md`](./briefs/am.md) | 2026-11-04 |
|
|
70
94
|
|
|
71
95
|
Locale tags are chosen for variant reach: bare tags (`es`, `fr`, `ar`) let
|
|
72
96
|
`es-MX`, `fr-CA` and `ar-SA` widen onto them through RFC 4647 lookup, while
|
|
@@ -109,6 +133,14 @@ fails the gate until the affected catalogs are regenerated — wholesale for
|
|
|
109
133
|
|
|
110
134
|
## The review lifecycle
|
|
111
135
|
|
|
136
|
+
**Agent passes in lieu of native readers.** On 2026-11-03 `es`, `en-GB` and
|
|
137
|
+
`en-AU` were promoted on agent passes: no native readers were available, the
|
|
138
|
+
maintainer accepted agent review for them, and each manifest entry's
|
|
139
|
+
`reviewedBy` records exactly that. `reviewed` still means *a pass happened and
|
|
140
|
+
its work is anchored* — the pass's nature lives in the manifest, the native
|
|
141
|
+
pass remains open work, and because regeneration is surgical from here, a
|
|
142
|
+
later native pass corrects in place instead of starting over.
|
|
143
|
+
|
|
112
144
|
A locale moves through two statuses, recorded in `catalog-manifest.json`, and
|
|
113
145
|
what regeneration may touch follows from the status:
|
|
114
146
|
|
|
@@ -151,6 +183,65 @@ lists keys whose English moved:
|
|
|
151
183
|
Wholesale regeneration of a `reviewed` locale discards review work; do it
|
|
152
184
|
only deliberately, by flipping the status back to `generated` first.
|
|
153
185
|
|
|
186
|
+
## The RTL layout audit (`ar`)
|
|
187
|
+
|
|
188
|
+
Status: **landed 2026-11-04**, and `ar`'s promotion followed it. This section
|
|
189
|
+
is the audit's record; the checks it added run in the suite.
|
|
190
|
+
|
|
191
|
+
`ar` is the framework's first right-to-left interface locale, and the audit
|
|
192
|
+
that gated its review pass was a layout audit, not a translation one: a native
|
|
193
|
+
reviewer certifying strings that render mirrored would certify the wrong
|
|
194
|
+
product. `direction` derives from `Intl.Locale.prototype.textInfo` and the
|
|
195
|
+
shell stamps `lang`/`dir` on its own host
|
|
196
|
+
([adoption record](../../docs/architecture/i18n-interface-locale-adoption.md)).
|
|
197
|
+
|
|
198
|
+
`packages/section-player/tests/section-player-rtl-layout.spec.ts` holds seven
|
|
199
|
+
rendered cases against the `ar` demo
|
|
200
|
+
(`/interface-locale?locale=ar`), run outside the sandbox per the repository's
|
|
201
|
+
Playwright rules:
|
|
202
|
+
|
|
203
|
+
1. **Card header** (pre-existing): the item toolbar hugs the trailing edge,
|
|
204
|
+
under a forced `dir` and under the real `ar` stamps.
|
|
205
|
+
2. **Card footer**: the formative check-answer button mirrors under the same
|
|
206
|
+
`margin-inline-start` trailing-edge rule (`/formative-delivery`, forced
|
|
207
|
+
`dir` — the rule reads inherited direction, and case 1 proves the stamping
|
|
208
|
+
path end to end).
|
|
209
|
+
3. **Split-pane layout**: pane *order* flips — passages pane leads in LTR,
|
|
210
|
+
trails in RTL; containment stays with the scroll contract.
|
|
211
|
+
4. **Toolbar pane**: the shell's toolbar pane hugs the trailing viewport edge
|
|
212
|
+
and follows the direction (right under LTR, left under `ar`); the vertical
|
|
213
|
+
tool column's reading order is direction-independent by design and is
|
|
214
|
+
pinned as stable.
|
|
215
|
+
5. **Tool windows at `document.body`**: the graph shell's contents mirror
|
|
216
|
+
(title leads from the right under `ar`) while its screen position and size
|
|
217
|
+
stay put — the adoption record's free-window rule.
|
|
218
|
+
6. **Metrics**: no chrome control clips (`scrollWidth` past the box) and no
|
|
219
|
+
horizontal page overflow appears under `ar`; the sweep covers the chrome
|
|
220
|
+
subtrees through the custom elements' open shadow roots and excludes the
|
|
221
|
+
item players' content roots, which are the content-language channel.
|
|
222
|
+
7. **Text-level rendered inspection** (recorded, not asserted): a full-page
|
|
223
|
+
screenshot of the `ar` demo was inspected — Arabic labels sit at the
|
|
224
|
+
trailing edges with Western digits per the brief, English content keeps
|
|
225
|
+
its own LTR inside the content root's `dir="auto"`, and no punctuation
|
|
226
|
+
strands on the wrong side of an embedded Latin run in the rendered chrome.
|
|
227
|
+
|
|
228
|
+
**Defect found and repaired by the audit**: the toolbar pane's divider was a
|
|
229
|
+
physical `border-left`/`border-right`
|
|
230
|
+
(`SectionPlayerShell.svelte`), so under RTL the divider rendered on the
|
|
231
|
+
pane's outer screen edge instead of the content side. It now uses
|
|
232
|
+
`border-inline-start`/`border-inline-end`, and case 4's pane-flip assertion
|
|
233
|
+
pins the geometry.
|
|
234
|
+
|
|
235
|
+
**Recorded without assertions** — the surfaces the section demo cannot
|
|
236
|
+
exercise: the toolbar scrolls rather than collapsing into an overflow menu
|
|
237
|
+
when it overflows, and its tooltips are the browser's `title` rendering, so
|
|
238
|
+
neither has an assertion to carry; Back/Next navigation chrome belongs to the
|
|
239
|
+
assessment player (the reference assembly), not this building block; the
|
|
240
|
+
standalone item player (`<pie-item-player>` on its own) has no locale-driven
|
|
241
|
+
demo route, so its chrome mirror is covered only at the stamp level (the
|
|
242
|
+
interface-locale spec asserts its content-root stamps) — a follow-up demo
|
|
243
|
+
route would close that.
|
|
244
|
+
|
|
154
245
|
## Adding a locale
|
|
155
246
|
|
|
156
247
|
Add `briefs/<locale>.md` (register, glossary, untranslated product names —
|
package/dist/index.js
CHANGED
|
@@ -70,6 +70,50 @@ const GENERATED_CATALOG_LOADERS = {
|
|
|
70
70
|
cy: () => import("./messages/cy.js"),
|
|
71
71
|
sv: () => import("./messages/sv.js"),
|
|
72
72
|
ro: () => import("./messages/ro.js"),
|
|
73
|
+
// Bare tag: `vi-VN` widens to `vi`.
|
|
74
|
+
vi: () => import("./messages/vi.js"),
|
|
75
|
+
// Regional on purpose, like en-GB/en-AU: the framework's audit language,
|
|
76
|
+
// native-speaker-reviewed, carried over from players-shared's bundled set
|
|
77
|
+
// on 2026-11-04. A bare `nl` widens onto it through the host's composed
|
|
78
|
+
// availableLocales, and its absence from the bundled set means a host that
|
|
79
|
+
// never wires this package never fetches it.
|
|
80
|
+
"nl-NL": () => import("./messages/nl-NL.js"),
|
|
81
|
+
// Bare tags: `de-AT`/`de-CH` widen to `de`, `tr` covers `tr-TR`, `el` covers
|
|
82
|
+
// Greece and Cyprus, `uk` covers Ukrainian everywhere.
|
|
83
|
+
de: () => import("./messages/de.js"),
|
|
84
|
+
it: () => import("./messages/it.js"),
|
|
85
|
+
pl: () => import("./messages/pl.js"),
|
|
86
|
+
tr: () => import("./messages/tr.js"),
|
|
87
|
+
uk: () => import("./messages/uk.js"),
|
|
88
|
+
el: () => import("./messages/el.js"),
|
|
89
|
+
// The big-US wave: `ru` carries the Slavic four-category set; `ht` is
|
|
90
|
+
// Haitian Creole; `fil` is Filipino — one catalog. A host labeling delivery
|
|
91
|
+
// Tagalog names `fil` (the modern stack name) or aliases `tl` in its own
|
|
92
|
+
// composition; this package ships the single authored catalog.
|
|
93
|
+
ru: () => import("./messages/ru.js"),
|
|
94
|
+
fil: () => import("./messages/fil.js"),
|
|
95
|
+
ht: () => import("./messages/ht.js"),
|
|
96
|
+
// The second RTL wave: the framework's RTL layout contract is audited and
|
|
97
|
+
// pinned by section-player's geometry spec (see the ar locale), so these
|
|
98
|
+
// inherit a verified mirroring path. `he` carries a CLDR `two` category.
|
|
99
|
+
ur: () => import("./messages/ur.js"),
|
|
100
|
+
fa: () => import("./messages/fa.js"),
|
|
101
|
+
he: () => import("./messages/he.js"),
|
|
102
|
+
// Regional on purpose, like nl-NL: Taiwan-register Traditional Chinese.
|
|
103
|
+
// Bare `zh` stays Simplified; `zh-TW`/`zh-HK` widen onto this.
|
|
104
|
+
"zh-Hant": () => import("./messages/zh-Hant.js"),
|
|
105
|
+
// The state/regional US wave: mostly one/other or other-only plurals, and
|
|
106
|
+
// several non-Latin scripts (Khmer, Lao, Bengali, Gurmukhi, Ethiopic,
|
|
107
|
+
// Devanagari; White Hmong in RPA Latin). Briefs flag where assessment
|
|
108
|
+
// terminology is not standardized — native review strongly advised.
|
|
109
|
+
so: () => import("./messages/so.js"),
|
|
110
|
+
hmn: () => import("./messages/hmn.js"),
|
|
111
|
+
km: () => import("./messages/km.js"),
|
|
112
|
+
lo: () => import("./messages/lo.js"),
|
|
113
|
+
bn: () => import("./messages/bn.js"),
|
|
114
|
+
pa: () => import("./messages/pa.js"),
|
|
115
|
+
ne: () => import("./messages/ne.js"),
|
|
116
|
+
am: () => import("./messages/am.js"),
|
|
73
117
|
};
|
|
74
118
|
/**
|
|
75
119
|
* Every locale tag this package ships a generated catalog for.
|
|
@@ -91,6 +135,29 @@ export const GENERATED_LOCALES = [
|
|
|
91
135
|
"cy",
|
|
92
136
|
"sv",
|
|
93
137
|
"ro",
|
|
138
|
+
"vi",
|
|
139
|
+
"nl-NL",
|
|
140
|
+
"de",
|
|
141
|
+
"it",
|
|
142
|
+
"pl",
|
|
143
|
+
"tr",
|
|
144
|
+
"uk",
|
|
145
|
+
"el",
|
|
146
|
+
"ru",
|
|
147
|
+
"fil",
|
|
148
|
+
"ht",
|
|
149
|
+
"ur",
|
|
150
|
+
"fa",
|
|
151
|
+
"he",
|
|
152
|
+
"zh-Hant",
|
|
153
|
+
"so",
|
|
154
|
+
"hmn",
|
|
155
|
+
"km",
|
|
156
|
+
"lo",
|
|
157
|
+
"bn",
|
|
158
|
+
"pa",
|
|
159
|
+
"ne",
|
|
160
|
+
"am",
|
|
94
161
|
];
|
|
95
162
|
/**
|
|
96
163
|
* Load one generated catalog.
|