diff --git a/CHANGELOG.md b/CHANGELOG.md index e2afc18..cd73ba5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,45 @@ All notable changes to `@codebar-ag/storybook`. The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## v1.21.0 + +### Added + +- **`SearchableSelect` accepts `clearable`** (plus `clear-label` for the ✕'s + accessible name, default "Clear selection"). While something is selected, an + ✕ appears between the label and the chevron; pressing it emits + `update:modelValue` with `''` and hands focus back to the trigger. + + Without it the control is a trap for OPTIONAL values: it picks from a closed + set and only ever emits `option.value`, so once anything is picked there is + no gesture that returns to "nothing chosen". The consuming app hit this on + its data-source form — the store-dialog field is nullable all the way down + (`'nullable'` in the FormRequest, `?? null` on submit), but a user who + selected a dialog could never unselect it short of reloading the page. Its + sibling controls both already had an exit: the native `Select` renders a + selectable placeholder `