diff --git a/src/app/(dashboard)/[portSlug]/admin/berths/bulk-add/page.tsx b/src/app/(dashboard)/[portSlug]/admin/berths/bulk-add/page.tsx new file mode 100644 index 00000000..71bf9547 --- /dev/null +++ b/src/app/(dashboard)/[portSlug]/admin/berths/bulk-add/page.tsx @@ -0,0 +1,14 @@ +import { PageHeader } from '@/components/shared/page-header'; +import { BulkAddBerthsWizard } from '@/components/admin/bulk-add-berths-wizard'; + +export default function BulkAddBerthsPage() { + return ( +
+ Will generate {Math.max(0, parseInt(rangeEnd, 10) - parseInt(rangeStart, 10) + 1)} rows + (e.g. {letter} + {rangeStart} … {letter} + {rangeEnd}). +
+ +| Mooring | +Length (ft) | +Width (ft) | +Draft (ft) | +Side pontoon | +Price | +Currency | ++ |
|---|---|---|---|---|---|---|---|
| apply to all → | + {( + [ + ['lengthFt', 'number'], + ['widthFt', 'number'], + ['draftFt', 'number'], + ] as const + ).map(([k, type]) => ( ++ { + if (e.target.value) applyToAll(k, e.target.value); + }} + placeholder="all" + /> + | + ))} ++ + | ++ { + if (e.target.value) applyToAll('price', e.target.value); + }} + placeholder="all" + /> + | ++ { + if (e.target.value) applyToAll('priceCurrency', e.target.value.toUpperCase()); + }} + placeholder="all" + /> + | ++ | ||
| {row.mooringNumber} | ++ setRowField(idx, 'lengthFt', e.target.value)} + /> + | ++ setRowField(idx, 'widthFt', e.target.value)} + /> + | ++ setRowField(idx, 'draftFt', e.target.value)} + /> + | ++ + | ++ setRowField(idx, 'price', e.target.value)} + /> + | ++ + setRowField(idx, 'priceCurrency', e.target.value.toUpperCase()) + } + /> + | ++ + | +