add initial validators for species-entries

This commit is contained in:
Eero Antikainen
2024-09-20 18:53:15 +03:00
parent fbe01e16e8
commit bc0fb3734a
2 changed files with 31 additions and 4 deletions
@@ -12,6 +12,7 @@ import { TaxonomyTab } from './Tabs/TaxonomyTab'
import { TeethTab } from './Tabs/TeethTab'
import { UpdateTab } from '../DetailView/common/UpdateTab'
import { EditDataType, SpeciesDetailsType } from '@/backendTypes'
import { validateSpecies } from '@/validators/species'
import { emptySpecies } from '../DetailView/common/defaultValues'
import { useNotify } from '@/hooks/notification'
import { useEffect } from 'react'
@@ -97,10 +98,7 @@ export const SpeciesDetails = () => {
onWrite={onWrite}
isNew={isNew}
hasStagingMode
validator={() => ({
name: 'unknown',
error: null,
})}
validator={validateSpecies}
deleteFunction={deleteFunction}
/>
)
+29
View File
@@ -0,0 +1,29 @@
import { EditDataType, SpeciesDetailsType } from '../backendTypes'
import { Validators, validator } from './validator'
export const validateSpecies = (
editData: EditDataType<SpeciesDetailsType>,
fieldName: keyof EditDataType<SpeciesDetailsType>
) => {
const validators: Validators<Partial<EditDataType<SpeciesDetailsType>>> = {
// const isNew = editData.lid === undefined
order_name: {
name: 'Order',
required: true,
},
family_name: {
name: 'Family',
required: true,
},
genus_name: {
name: 'Genus',
required: true,
},
species_name: {
name: 'Species',
required: true,
},
}
return validator<EditDataType<SpeciesDetailsType>>(validators, editData, fieldName)
}