import { useForm } from '@inertiajs/react'; import { ChangeEvent, FormEvent, useMemo } from 'react'; import FormField from '~/components/common/form/_form_field'; import TextBox from '~/components/common/form/textbox'; import BackToDashboard from '~/components/common/navigation/bask_to_dashboard'; import FormLayout from '~/components/layouts/form_layout'; import { Visibility } from '../../../app/enums/visibility'; export default function CreateCollectionPage() { const { data, setData, post, processing, errors } = useForm({ name: '', description: '', visibility: Visibility.PRIVATE, }); const isFormDisabled = useMemo( () => processing || data.name.length === 0, [processing, data] ); function handleOnCheck({ target }: ChangeEvent) { setData( 'visibility', target.checked ? Visibility.PUBLIC : Visibility.PRIVATE ); } function handleSubmit(e: FormEvent) { e.preventDefault(); post('/collections'); } return ( {errors.name &&
{errors.name}
} {errors.description &&
{errors.description}
}
); }