lib/zod playground
helper ทุกตัวใน @/lib/zod ผูกกับ component จริง — กด Submit ทั้งที่ยังไม่กรอกเพื่อดูข้อความ error แล้วกรอกให้ผ่านเพื่อดูชนิดของค่าที่ component เก็บจริง (สังเกต startDate กับ coverImage)
helper ไหนคู่กับ component ไหน
| helper | component | หมายเหตุ |
|---|---|---|
requiredText() | FormTextInput | trim ก่อนเช็ค เว้นวรรคล้วน = ว่าง |
requiredName() | FormTextInput | เช็ครูปแบบชื่อเพิ่มจาก requiredText |
requiredTextArea() | FormTextarea | ส่ง max + ข้อความยาวเกินได้ |
optionalTextField | FormTextInput | ว่างได้ ใช้ได้ทั้งฟอร์ม / server fn / validateSearch |
nullableText | FormSelect ที่ clear ได้ | คง null ไว้ |
requiredEmail() | FormTextInput | ข้อความ default มาจาก i18n แล้ว |
requiredPhone() | FormTextInput | เบอร์ไทย |
requiredZipCode() / requiredTaxId() | FormTextInput | เช็ครูปแบบเฉพาะทาง |
requiredNumber() / optionalNumber | FormNumberInput | coerce จากสตริงให้ |
requiredEnum() / nullableEnum() | FormRadioGroup / FormSelect | รับ tuple หรือ object as const |
requiredDateString() | FormDatePickerInput | ค่าเป็นสตริง 'YYYY-MM-DD' |
nullableDateString | FormDatePickerInput | เว้นว่างได้ |
nullableDateRange | FormDatePickerInput type="range" | [เริ่ม, สิ้นสุด] |
requiredMedia() | FormImageInput | ค่าเป็น MediaValue { key, url } |
requiredMutipleMedia() | FormImagesInput | หลายรูป |
requiredStringArray() / optionalStringArray | FormCheckboxGroup | ต้องมีอย่างน้อย 1 / ว่างได้ |