Groom wizard steps 1-15: critique/harden/polish pass

- [P0] CrematoriumStep: Fix <option> → <MenuItem> in priority select
- [P1] All form steps: Add aria-busy={loading} + loading guard on submit
- [P1] Error messages: Replace color="error" (red) with copper
  (var(--fa-color-text-brand)) across ProvidersStep, PackagesStep,
  VenueStep, CrematoriumStep, CemeteryStep, CoffinsStep, PaymentStep
- [P2] IntroStep: "Has the person died?" → "Has this person passed away?"
- [P2] DateTimeStep: "About the person who died" → "who has passed"
- [P2] ProvidersStep: "Showing results from X" → "X providers found"
- [P2] Empty states: Add guidance text for ProvidersStep, PackagesStep,
  VenueStep, CoffinsStep empty results

Steps 4, 13, 15 passed with no issues.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-29 15:33:01 +11:00
parent 826496e645
commit 87249b6d9b
12 changed files with 112 additions and 29 deletions

View File

@@ -159,9 +159,10 @@ export const CemeteryStep: React.FC<CemeteryStepProps> = ({
<Box
component="form"
noValidate
aria-busy={loading}
onSubmit={(e: React.FormEvent) => {
e.preventDefault();
onContinue();
if (!loading) onContinue();
}}
>
{/* ─── Burial plot question ─── */}
@@ -177,7 +178,11 @@ export const CemeteryStep: React.FC<CemeteryStepProps> = ({
<FormControlLabel value="no" control={<Radio />} label="No, we need to find one" />
</RadioGroup>
{errors?.burialOwn && (
<Typography variant="body2" color="error" sx={{ mt: 0.5 }} role="alert">
<Typography
variant="body2"
sx={{ mt: 0.5, color: 'var(--fa-color-text-brand)' }}
role="alert"
>
{errors.burialOwn}
</Typography>
)}
@@ -201,7 +206,11 @@ export const CemeteryStep: React.FC<CemeteryStepProps> = ({
/>
</RadioGroup>
{errors?.burialCustom && (
<Typography variant="body2" color="error" sx={{ mt: 0.5 }} role="alert">
<Typography
variant="body2"
sx={{ mt: 0.5, color: 'var(--fa-color-text-brand)' }}
role="alert"
>
{errors.burialCustom}
</Typography>
)}
@@ -257,7 +266,11 @@ export const CemeteryStep: React.FC<CemeteryStepProps> = ({
</Box>
{errors?.selectedCemeteryId && (
<Typography variant="body2" color="error" sx={{ mt: 1 }} role="alert">
<Typography
variant="body2"
sx={{ mt: 1, color: 'var(--fa-color-text-brand)' }}
role="alert"
>
{errors.selectedCemeteryId}
</Typography>
)}