Files
2025-11-11 14:07:46 +07:00

25 lines
877 B
TypeScript

import { z } from 'zod'
import type { UnitPosition } from '~/models/unit-position'
const UnitPositionSchema = z.object({
code: z.string({ required_error: 'Kode harus diisi' }).min(1, 'Kode minimum 1 karakter'),
name: z.string({ required_error: 'Nama harus diisi' }).min(1, 'Nama minimum 1 karakter'),
headStatus: z.boolean().optional().nullable(),
unit_code: z
.union([
z.string({ required_error: 'Unit Induk harus diisi' }),
z.number({ required_error: 'Unit Induk harus diisi' }),
])
.optional()
.nullable(),
employee_id: z
.union([z.string({ required_error: 'Karyawan harus diisi' }), z.number({ required_error: 'Karyawan harus diisi' })])
.optional()
.nullable(),
})
type UnitPositionFormData = z.infer<typeof UnitPositionSchema> & Partial<UnitPosition>
export { UnitPositionSchema }
export type { UnitPositionFormData }