REQUIREMENTS §22 (Form scaffolding), §16 R16.3, §25.9. Base: shadcn `form`, `field`, `label`, `button`, `button-group`, `input-group`, `card`, `separator`; `react-hook-form`. - [x] Form (`Form`; react-hook-form + Inertia; 422 → field errors, focus first invalid, summary) - [x] Form group - [x] Fieldset / form section (collapsible, opens on invalid) - [x] Label - [x] Required marker - [x] Field errors - [x] AJAX validation errors (`ValidationSummary` / `AjaxValidationErrors`) - [x] Help text - [x] Form container - [x] Repeating group (`useFieldArray` or controlled arrays) - [x] Inline edit - [x] Autosave indicator (+ `useAutosave`) - [x] Save buttons bar (§25.9; `useUnsavedChangesGuard`) - [x] Floating submit - [x] Submit button - [x] Button - [x] Link button - [x] Button group - [x] Auth forms (`SignInForm`, `RegisterForm`, `ForgotPasswordForm`, `ResetPasswordForm`) Merged into `claude/amazing-cerf-htnpm8`. 153 tests in the group; coverage 99.5% lines / 94.8% branches. Follow-ups: - [ ] Figma components + Code Connect (#29) - [ ] Repeating group: drag-to-reorder (currently Move up/down buttons) - [ ] eFaas button assets (R16.7) — slot only until eFaas supplies them - [ ] dv locale: label-to-input spacing looks large with Thaana line height
Activity
Add Thaana keyboard engine, icon adapters, FormField and text inputs,…
Form scaffolding: Form, Fieldset, FormGroup, validation summary, save…
Merge Form scaffolding group (#9)