fix the booking and contract
Build & Push / Pipeline Tests (push) Failing after 1m31s
Build & Push / Build & Push Docker Image (push) Has been skipped
Test / Type Check (all packages) (push) Successful in 55s
Test / API Unit Tests (push) Successful in 1m8s
Test / Homepage Unit Tests (push) Successful in 47s
Test / Carplace Unit Tests (push) Successful in 44s
Test / Admin Unit Tests (push) Successful in 43s
Test / Dashboard Unit Tests (push) Failing after 46s
Test / API Integration Tests (push) Successful in 1m7s

This commit is contained in:
root
2026-07-27 23:04:26 -04:00
parent 8046a1d447
commit 5649ab02c7
40 changed files with 1699 additions and 1066 deletions
@@ -143,7 +143,7 @@ export function ReservationWizard({
clearFieldError(`rental.${field}`)
}
function updatePayment(field: keyof ReservationDraft['payment'], value: string) {
function updatePayment(field: keyof ReservationDraft['payment'], value: string | boolean) {
dispatch({ type: 'updatePayment', field, value })
clearFieldError(`payment.${field}`)
}
@@ -617,7 +617,7 @@ function PaymentStep({
copy: ReturnType<typeof getReservationWizardCopy>
draft: ReservationDraft
errors: FieldErrors
onPaymentChange: (field: keyof ReservationDraft['payment'], value: string) => void
onPaymentChange: (field: keyof ReservationDraft['payment'], value: string | boolean) => void
onAddDriver: () => void
onRemoveDriver: (id: string) => void
onDriverChange: (id: string, field: keyof AdditionalDriverDraft, value: any) => void
@@ -638,6 +638,26 @@ function PaymentStep({
<span className="text-sm font-medium text-slate-700">{copy.notes}</span>
<textarea value={draft.payment.notes} onChange={(event) => onPaymentChange('notes', event.target.value)} className="input-field min-h-[96px]" placeholder={copy.notesPlaceholder} />
</label>
<div className="grid grid-cols-1 gap-4 md:grid-cols-2">
<label className="flex items-center gap-3 rounded-lg border border-slate-200 px-4 py-3 text-sm font-medium text-slate-700">
<input
type="checkbox"
className="h-4 w-4 rounded border-slate-300 text-blue-600"
checked={draft.payment.spareWheel}
onChange={(event) => onPaymentChange('spareWheel', event.target.checked)}
/>
{copy.spareWheel}
</label>
<label className="flex items-center gap-3 rounded-lg border border-slate-200 px-4 py-3 text-sm font-medium text-slate-700">
<input
type="checkbox"
className="h-4 w-4 rounded border-slate-300 text-blue-600"
checked={draft.payment.radioCd}
onChange={(event) => onPaymentChange('radioCd', event.target.checked)}
/>
{copy.radioCd}
</label>
</div>
<div className="rounded-lg border border-slate-200 p-4">
<div className="flex items-center justify-between gap-3">