diff --git a/src/app/admin/pool-management/components/createNewPoolModal.tsx b/src/app/admin/pool-management/components/createNewPoolModal.tsx index f713233..2aa4e93 100644 --- a/src/app/admin/pool-management/components/createNewPoolModal.tsx +++ b/src/app/admin/pool-management/components/createNewPoolModal.tsx @@ -4,7 +4,7 @@ import React from 'react' interface Props { isOpen: boolean onClose: () => void - onCreate: (data: { name: string; description: string }) => void | Promise + onCreate: (data: { pool_name: string; description: string; price: number; pool_type: 'coffee' | 'other' }) => void | Promise creating: boolean error?: string success?: string @@ -20,13 +20,19 @@ export default function CreateNewPoolModal({ success, clearMessages }: Props) { - const [name, setName] = React.useState('') + const [poolName, setPoolName] = React.useState('') const [description, setDescription] = React.useState('') + const [price, setPrice] = React.useState('0.00') + const [poolType, setPoolType] = React.useState<'coffee' | 'other'>('other') + + const isDisabled = creating || !!success React.useEffect(() => { if (!isOpen) { - setName('') + setPoolName('') setDescription('') + setPrice('0.00') + setPoolType('other') } }, [isOpen]) @@ -67,7 +73,7 @@ export default function CreateNewPoolModal({ onSubmit={e => { e.preventDefault() clearMessages() - onCreate({ name, description }) + onCreate({ pool_name: poolName, description, price: parseFloat(price) || 0, pool_type: poolType }) }} className="space-y-4" > @@ -76,26 +82,53 @@ export default function CreateNewPoolModal({ setName(e.target.value)} - disabled={creating} + value={poolName} + onChange={e => setPoolName(e.target.value)} + disabled={isDisabled} + required /> -
- -