ghostguild-org/app/components
Jennie Robinson Faber 96470a604a fix(natural-date-input): preserve input on edit, use reliable update event
Two reliability bugs in the natural-language date input:

1. Clicking Edit on a saved-date pill and changing the value immediately
   re-showed the saved value. clearAndEdit pre-fills the input with the
   formatted saved date so the admin doesn't start over, but chrono
   parses that string on the very first keystroke, re-sets parsedDate,
   and the auto-hide template flips the pill back. Added an isEditing
   flag that keeps the input visible across re-parses and clears on
   blur once we have a valid parse.

2. Typing "tomorrow at 2pm" sometimes committed "tomorrow at <current
   time>". UInput's template spreads \$attrs onto the inner <input>
   alongside its own @input="onInput", and Vue's listener-array merge
   intermittently drops the fall-through @input mid-typing — in the
   reproduction, the final 'm' never reached parseNaturalInput, so
   chrono's last successful read was "tomorrow at 2p" matching just
   "tomorrow". Switched to @update:model-value (a declared emit on
   UInput, so it goes through the reliable component-emit path) and
   made onBlur always re-parse the final value as a backup.
2026-05-19 12:19:35 +01:00
..
admin feat(admin): add restore dismissed alerts flow 2026-04-08 12:22:35 +01:00
AppNavigation.vue Copy and layout improvements. 2026-04-16 21:11:05 +01:00
BoardPostCard.vue style(a11y): meet WCAG AA on --text-faint 2026-04-30 22:25:57 +01:00
BoardPostForm.vue style(visual-fidelity): components — batches B,E,G,H 2026-04-30 00:13:13 +01:00
CircleBadge.vue feat: add zine-direction shared components 2026-04-02 21:16:00 +01:00
CirclePicker.vue style(visual-fidelity): components — batches B,E,G,H 2026-04-30 00:13:13 +01:00
ColorModeToggle.vue UI/UX tweaks and improvements. 2026-04-05 12:28:41 +01:00
ColumnsLayout.vue fix(dashboard): bind Upcoming sidebar to reactive useFetch data 2026-05-19 00:10:27 +01:00
CooperativeTagSelector.vue fix(board): address review feedback on components 2026-04-14 17:08:52 +01:00
CraftTagSelector.vue Add CraftTagSelector, CooperativeTagSelector, and TagSuggestModal components 2026-04-05 16:23:22 +01:00
DashedBox.vue feat: add zine-direction shared components 2026-04-02 21:16:00 +01:00
DevLoginPanel.vue Accessibility fixes. 2026-04-05 16:03:10 +01:00
EventSeriesTicketCard.vue fix(events): replace phantom candlelight Tailwind with --candle var 2026-04-29 18:30:29 +01:00
EventsMiniSidebar.vue style(visual-fidelity): components — batches B,E,G,H 2026-04-30 00:13:13 +01:00
EventTicketCard.vue chore(visual): Phase 4 audit polish on event/series surface 2026-04-25 18:41:04 +01:00
EventTicketPurchase.vue fix(admin-events): polish form papercuts 2026-05-18 17:56:45 +01:00
FilterBar.vue style(visual-fidelity): components — batches B,E,G,H 2026-04-30 00:13:13 +01:00
ImageUpload.vue fix(ImageUpload): restore :focus styling on alt-text input 2026-04-30 15:29:35 +01:00
LoginModal.vue style(visual-fidelity): components — batches B,E,G,H 2026-04-30 00:13:13 +01:00
MemberStatusBanner.vue UI/UX tweaks and improvements. 2026-04-05 12:28:41 +01:00
MemberStatusIndicator.vue Many an update! 2025-12-01 15:26:42 +00:00
NaturalDateInput.vue fix(natural-date-input): preserve input on edit, use reliable update event 2026-05-19 12:19:35 +01:00
OnboardingWidget.vue style(visual-fidelity): components — batches B,E,G,H 2026-04-30 00:13:13 +01:00
PageHeader.vue feat(layout): add PageShell, ColumnsLayout, PageSection primitives 2026-04-08 15:51:38 +01:00
PageSection.vue feat(layout): add PageShell, ColumnsLayout, PageSection primitives 2026-04-08 15:51:38 +01:00
PageShell.vue feat(layout): add PageShell, ColumnsLayout, PageSection primitives 2026-04-08 15:51:38 +01:00
ParchmentInset.vue Design token updates. 2026-04-11 23:24:38 +01:00
SeriesPassPurchase.vue fix(series): replace phantom Tailwind on SeriesPassPurchase 2026-04-29 20:22:35 +01:00
SignupFlowOverlay.vue style(visual-fidelity): components — batches B,E,G,H 2026-04-30 00:13:13 +01:00
TagSuggestModal.vue fix: correct POST body field name and state enum values in tag components 2026-04-05 16:25:10 +01:00
TopStrip.vue fix(topstrip): wrap breadcrumb-current in ClientOnly 2026-05-19 10:33:26 +01:00