hazo_ui 6.12.3 → 6.12.5

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/CHANGE_LOG.md CHANGED
@@ -5,6 +5,54 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## v6.12.5 (2026-10-03)
9
+
10
+ ### Changed — i18n string wiring (remaining hardcoded strings)
11
+
12
+ - Nine previously unwired components now go through
13
+ `createPackageT("hazo_ui", en)`: `hazo_ui_flex_input` (validation messages),
14
+ `hazo_ui_textarea` / `hazo_ui_textbox` (placeholder + "Remove"),
15
+ `locale_picker`, `app_logo`, `app_header`, `skeleton`, `ui/spinner`,
16
+ `hazo_ui_kanban/kanban_filter`.
17
+ - Leaked literals wired in already-wired components: RTE toolbar
18
+ (link/table-ops/variable search) and RTE placeholder, multi-sort dialog,
19
+ kanban DnD announcements and card role description, `loading_timeout`,
20
+ icon picker tab and group labels, `error_page` correlation-ID label and
21
+ title default, funnel chart tooltip prefixes, toaster "Missing:" prefix.
22
+ - `hazo_ui_rte/index.tsx`, `hazo_ui_kanban/index.tsx`,
23
+ `hazo_ui_kanban/kanban_card.tsx` and `hazo_ui_charts/funnel_chart.tsx` had
24
+ no `createPackageT` wiring before this release; they now import it.
25
+ - `src/locales/en.json` grows from 133 to 207 keys (additive). Key names
26
+ follow the `<component>.<meaning>` convention already in use.
27
+ - Prop defaults resolve in the body (`prop ?? t(key)`), never in a default
28
+ parameter. English output is unchanged except as noted below.
29
+ - Known gap: `flex_input` decimal/character counts use one plural form, so a
30
+ count of 1 reads "1 decimal places" / "1 characters". Needs `_one`/`_other`
31
+ plural keys; not changed here.
32
+ - Intentionally left hardcoded: font family names in `canvas_text_toolbar`
33
+ (proper nouns), format tab labels in the RTE source view (`HTML`,
34
+ `Plain Text`, `Raw HTML`) — follow-up.
35
+
36
+ ## v6.12.4 (2026-10-03)
37
+
38
+ ### Changed — i18n string wiring (remaining components)
39
+
40
+ - The 8 remaining components are now wired through
41
+ `createPackageT("hazo_ui", en)` from `hazo_core/i18n`: `HazoUiDialog`,
42
+ `kanban_editor`, `MarkdownEditor`, `HazoUiImageCropperDialog`,
43
+ `HazoUiImageCropper`, `HazoUiMemoryDropdown`, `HazoUiCelebration` and
44
+ `DateRangeSelector`.
45
+ - `src/locales/en.json` grows from 102 to 133 keys, adding the `dialog.*`,
46
+ `kanban.*`, `markdown.*`, `cropper.*`, `memory.*`, `celebration.*` and
47
+ `charts.date_range` namespaces. Additive only.
48
+ - Prop defaults for user-facing labels now resolve in the component body via
49
+ `prop ?? t(key)`, so consumer overrides still win. Behaviour is identical
50
+ in English.
51
+ - Intentionally left hardcoded: the `![uploading…]()` markdown marker and
52
+ developer-facing `Error` messages.
53
+ - Non-English translations (de/es/fr/zh) are to be generated via the
54
+ test-app `/translations` page.
55
+
8
56
  ## v6.12.3 (2026-09-30)
9
57
 
10
58
  ### Changed — i18n string wiring
package/README.md CHANGED
@@ -81,6 +81,10 @@ The `tw-animate-css` import replaces the legacy `tailwindcss-animate` plugin (us
81
81
 
82
82
  ---
83
83
 
84
+ ## Internationalisation
85
+
86
+ All built-in user-facing strings (dialogs, form inputs, rich text toolbar, sort dialog, kanban, loading/error states, kanban editor, markdown editor, image cropper, memory dropdown, celebration, date-range selector, etc.) resolve through `createPackageT("hazo_ui", en)` from `hazo_core/i18n`. The English catalogue lives in `src/locales/en.json` (207 keys). Prop defaults for labels resolve as `prop ?? t(key)`, so explicit props always override translations. Other locales are generated through `hazo_i18n` (see the test-app `/translations` page).
87
+
84
88
  ## Color Configuration
85
89
 
86
90
  hazo_ui provides a centralized configuration system for customizing button and header colors across all components. You can set colors globally using `set_hazo_ui_config()` or override them per-component using props.