v0.1.0 — graduate from alpha
First release on the npm latest dist-tag: @hypermedia-components/core@0.1.0.
This release answers the TesseraQL improvement brief (brief · per-theme response) — one PR per theme, #192–#198.
Markup compatibility with 0.0.1-alpha.0
Fully additive. No documented class name, data attribute, --hc-* custom property, JS export, or hc:* event was renamed or removed. Template/codegen consumers upgrade without markup changes. The rules these guarantees follow are written down in VERSIONING.md (the markup is a wire contract; renames ship behind ≥1-minor deprecation aliases from here on).
Highlights
field-errorscontract +installFieldErrors()(#193) — a documented 422 fragment the server emits; the behavior distributes each error to its field with full ARIA wiring, focus management, clearing rules, and i18n message-key resolution. Zero custom JS downstream..hc-statusutility (#195) — the theme-aware status palette on arbitrary elements (table cells, rows, text) viadata-variant/data-fill.hc-chip,hc-tableKV variant,hc-itemaria-current,.hc-spacer(#196) — the generic patterns consumers hand-wrote.- Blessed htmx patterns + tested confirm-gating spec (#197) — incl. browser tests against real htmx 2.0.4.
installThemeToggle()+ complete, guarded i18n docs (#198) —prefers-color-schemedefault, persisted toggle, full Japanese catalog example, docs/key drift guard.- Versioning policy + form-composition docs (#192, #194).
Migration (opt-in) — adopting the field-errors contract
For consumers that invented their own error-fragment markup:
| Old (consumer-invented) | Canonical |
|---|---|
hc-alert hc-alert-error |
hc-alert + data-variant="error" + data-hc-field-errors |
hc-alert-message |
hc-alert__title |
hc-field-errors / hc-field-error |
hc-alert__errors / hc-alert__error |
hc-alert-hint |
hc-alert__body |
data-message |
data-message-key |
Full contract: recipes/field-errors/contract.md.
Complete change list: CHANGELOG § 0.1.0.