fix: resolve conflict
This commit is contained in:
No files matched your search
@@ -0,0 +1,5 @@
|
||||
export interface GenerateFile {
|
||||
entityType_code: string
|
||||
ref_id: number
|
||||
type_code: string
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
import { z } from 'zod'
|
||||
|
||||
const ACCEPTED_UPLOAD_TYPES = ['image/jpeg', 'image/png', 'application/pdf']
|
||||
const MAX_SIZE_BYTES = 1 * 1024 * 1024 // 1MB
|
||||
|
||||
const DocumentUploadSchema = z.object({
|
||||
entityType_code: z.string().default('encounter'),
|
||||
ref_id: z.number(),
|
||||
upload_employee_id: z.number().optional(),
|
||||
// upload_employee_id: z.number(),
|
||||
name: z.string({ required_error: 'Mohon isi', }),
|
||||
type_code: z.string({ required_error: 'Mohon isi', }),
|
||||
content: z.custom<File>()
|
||||
.refine((f) => f, { message: 'File tidak boleh kosong' })
|
||||
.refine((f) => !f || f instanceof File, { message: 'Harus berupa file yang valid' })
|
||||
.refine((f) => !f || ACCEPTED_UPLOAD_TYPES.includes(f.type), {
|
||||
message: 'Format file harus JPG, PNG, atau PDF',
|
||||
})
|
||||
.refine((f) => !f || f.size <= MAX_SIZE_BYTES, { message: 'Maksimal 1MB' }),
|
||||
})
|
||||
|
||||
type DocumentUploadFormData = z.infer<typeof DocumentUploadSchema>
|
||||
|
||||
export { DocumentUploadSchema }
|
||||
export type { DocumentUploadFormData }
|
||||
@@ -0,0 +1,16 @@
|
||||
import { z } from 'zod'
|
||||
import type { CreateDto } from '~/models/general-consent'
|
||||
|
||||
const GeneralConsentSchema = z.object({
|
||||
relatives: z.array(z.object({ name: z.string(), phone: z.string() })),
|
||||
responsibleName: z.string().optional(),
|
||||
responsiblePhone: z.string().optional(),
|
||||
informant: z.string().optional(),
|
||||
witness1: z.string().optional(),
|
||||
witness2: z.string().optional(),
|
||||
})
|
||||
|
||||
type GeneralConsentFormData = z.infer<typeof GeneralConsentSchema> & CreateDto
|
||||
|
||||
export { GeneralConsentSchema }
|
||||
export type { GeneralConsentFormData }
|
||||
@@ -5,6 +5,7 @@ export const MedicineSchema = z.object({
|
||||
name: z.string({ required_error: 'Nama harus diisi' }).min(1, 'Nama minimal 1 karakter'),
|
||||
medicineGroup_code: z.string({ required_error: 'Kelompok obat harus diisi' }).min(1, 'Kelompok obat harus diisi'),
|
||||
medicineMethod_code: z.string({ required_error: 'Metode pemberian harus diisi' }).min(1, 'Metode pemberian harus diisi'),
|
||||
medicineForm_code: z.string({ required_error: 'Sediaan Obat harus diisi' }).min(1, 'Sediaan Obat harus diisi'),
|
||||
uom_code: z.string({ required_error: 'Satuan harus diisi' }).min(1, 'Satuan harus diisi'),
|
||||
infra_id: z.number().nullable().optional(),
|
||||
stock: z.preprocess((val) => Number(val), z.number({ invalid_type_error: 'Stok harus berupa angka' }).min(1, 'Stok harus lebih besar dari 0')),
|
||||
|
||||
@@ -0,0 +1,76 @@
|
||||
import { z } from 'zod'
|
||||
import type { CreateDto } from '~/models/consultation'
|
||||
|
||||
export type ResumeArrangementType = "krs" | "mrs" | "rujukInternal" | "rujukExternal" | "meninggal" | "other"
|
||||
|
||||
const SecondaryDiagnosisSchema = z.object({
|
||||
diagnosis: z.string({ required_error: 'Diagnosis harus diisi' }),
|
||||
icd10: z.string({ required_error: 'ICD 10 harus diisi' }),
|
||||
diagnosisBasis: z.string({ required_error: 'Dasar Diagnosis harus diisi' })
|
||||
.min(1, 'Uraian minimum 1 karakter')
|
||||
.max(2048, 'Uraian maksimum 2048 karakter'),
|
||||
})
|
||||
|
||||
const SecondaryActionSchema = z.object({
|
||||
action: z.string({ required_error: 'Action harus diisi' }),
|
||||
icd9: z.string({ required_error: 'ICD 10 harus diisi' }),
|
||||
actionBasis: z.string({ required_error: 'Dasar Action harus diisi' })
|
||||
.min(1, 'Uraian minimum 1 karakter')
|
||||
.max(2048, 'Uraian maksimum 2048 karakter'),
|
||||
})
|
||||
|
||||
const ConsultationSchema = z.object({
|
||||
consultation: z.string({ required_error: 'Consultation harus diisi' })
|
||||
.min(1, 'Uraian minimum 1 karakter')
|
||||
.max(2048, 'Uraian maksimum 2048 karakter'),
|
||||
consultationReply: z.string({ required_error: 'Jawaban Consultation harus diisi' })
|
||||
.min(1, 'Uraian minimum 1 karakter')
|
||||
.max(2048, 'Uraian maksimum 2048 karakter'),
|
||||
})
|
||||
|
||||
const ResumeSchema = z.object({
|
||||
inDate: z.string({ required_error: 'Tanggal harus diisi' }),
|
||||
outDate: z.string({ required_error: 'Tanggal harus diisi' }),
|
||||
anamnesis: z.number({ required_error: 'Anamnesis harus diisi' })
|
||||
.min(1, 'Anamnesis minimum 1 karakter')
|
||||
.max(2048, 'Anamnesis maksimum 2048 karakter'),
|
||||
physicalCheckup: z.string({ required_error: 'Uraian harus diisi' })
|
||||
.min(1, 'Uraian minimum 1 karakter')
|
||||
.max(2048, 'Uraian maksimum 2048 karakter'),
|
||||
supplementCheckup: z.string({ required_error: 'Uraian harus diisi' })
|
||||
.min(1, 'Uraian minimum 1 karakter')
|
||||
.max(2048, 'Uraian maksimum 2048 karakter'),
|
||||
|
||||
primaryDiagnosis: z.string({ required_error: 'Diagnosis harus diisi' }),
|
||||
secondaryDiagnosis: z.array(SecondaryDiagnosisSchema).optional(),
|
||||
|
||||
primaryOperativeNonOperativeAct: z.string({ required_error: 'Diagnosis harus diisi' }),
|
||||
secondaryOperativeNonOperativeAct: z.array(SecondaryActionSchema).optional(),
|
||||
medikamentosa: z.string({ required_error: 'Uraian harus diisi' })
|
||||
.min(1, 'Uraian minimum 1 karakter')
|
||||
.max(2048, 'Uraian maksimum 2048 karakter'),
|
||||
|
||||
consultation: z.array(ConsultationSchema).optional(),
|
||||
|
||||
arrangement: z.custom<ResumeArrangementType>().default("krs"),
|
||||
inpatientIndication: z.string({ required_error: 'Uraian harus diisi' })
|
||||
.min(1, 'Uraian minimum 1 karakter')
|
||||
.max(2048, 'Uraian maksimum 2048 karakter'),
|
||||
faskes: z.string({ required_error: 'Faskes harus diisi' }).optional(),
|
||||
clinic: z.string({ required_error: 'Klinik harus diisi' }).optional(),
|
||||
deathDate: z.string({ required_error: 'Tanggal harus diisi' }).optional(),
|
||||
deathCause: z.array(z.string()).optional().default([]),
|
||||
deathCauseDescription: z.string({ required_error: 'Uraian harus diisi' })
|
||||
.min(1, 'Uraian minimum 1 karakter')
|
||||
.max(2048, 'Uraian maksimum 2048 karakter')
|
||||
.optional(),
|
||||
keterangan: z.string({ required_error: 'Uraian harus diisi' })
|
||||
.min(1, 'Uraian minimum 1 karakter')
|
||||
.max(2048, 'Uraian maksimum 2048 karakter')
|
||||
.optional(),
|
||||
})
|
||||
|
||||
type ResumeFormData = z.infer<typeof ResumeSchema> & (CreateDto)
|
||||
|
||||
export { ResumeSchema }
|
||||
export type { ResumeFormData }
|
||||
@@ -0,0 +1,19 @@
|
||||
import { z } from 'zod'
|
||||
|
||||
const VerificationSchema = z.object({
|
||||
name: z.string({
|
||||
required_error: 'Mohon lengkapi Nama Anda',
|
||||
}),
|
||||
email: z.string({
|
||||
required_error: 'Mohon lengkapi email',
|
||||
}),
|
||||
password: z.string({
|
||||
required_error: 'Mohon lengkapi password',
|
||||
}),
|
||||
})
|
||||
|
||||
|
||||
type VerificationFormData = z.infer<typeof VerificationSchema>
|
||||
|
||||
export { VerificationSchema, }
|
||||
export type { VerificationFormData, }
|
||||
Reference in New Issue
Block a user