Add Indonesian zod messages to pelanggan and tidy rak imports

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
main
Deardo Satria 3 hours ago
parent 3002e55bc4
commit 76fda6d1c4

@ -23,17 +23,29 @@ export type SimpanPelangganState = FormState<PelangganField> & {
export type HapusPelangganState = DeleteState; export type HapusPelangganState = DeleteState;
const pelangganSchema = z.object({ const pelangganSchema = z.object({
nama: z.string().trim().min(1, "Nama wajib diisi").max(100), nama: z
alias: z.string().trim().max(11), .string()
ktp: z.string().trim().max(16), .trim()
alamat: z.string().trim().min(1, "Alamat wajib diisi").max(100), .min(1, "Nama wajib diisi")
wilayah: z.string().trim().max(200), .max(100, "Nama maksimal 100 karakter"),
telp: z.string().trim().max(15), alias: z.string().trim().max(11, "Alias maksimal 11 karakter"),
ponsel: z.string().trim().max(15), ktp: z.string().trim().max(16, "No. KTP maksimal 16 karakter"),
email: z.string().trim().max(30), alamat: z
jenisCustomer: z.string().trim().max(1), .string()
upline: z.string().trim().max(11), .trim()
btsBon: z.coerce.number().int().min(0).max(2_000_000_000), .min(1, "Alamat wajib diisi")
.max(100, "Alamat maksimal 100 karakter"),
wilayah: z.string().trim().max(200, "Wilayah maksimal 200 karakter"),
telp: z.string().trim().max(15, "Telepon maksimal 15 karakter"),
ponsel: z.string().trim().max(15, "Ponsel maksimal 15 karakter"),
email: z.string().trim().max(30, "Email maksimal 30 karakter"),
jenisCustomer: z.string().trim().max(1, "Jenis customer maksimal 1 karakter"),
upline: z.string().trim().max(11, "Upline maksimal 11 karakter"),
btsBon: z.coerce
.number({ error: "Harus berupa angka" })
.int("Harus bilangan bulat")
.min(0, "Tidak boleh negatif")
.max(2_000_000_000, "Maksimal 2.000.000.000"),
}); });
function emptyStringToNull(value: string): string | null { function emptyStringToNull(value: string): string | null {

@ -1,9 +1,10 @@
import "server-only"; import "server-only";
import { asc, eq, like } from "drizzle-orm"; import { asc, eq, like } from "drizzle-orm";
import { amigoDb } from "@/db/amigo"; import { amigoDb } from "@/db/amigo";
import { rak } from "@/db/amigo/schema";
import { PER_PAGE } from "@/lib/pagination"; import { PER_PAGE } from "@/lib/pagination";
import { escapeLike } from "@/lib/utils"; import { escapeLike } from "@/lib/utils";
import { rak } from "@/db/amigo/schema";
export type Rak = { export type Rak = {
idRak: number; idRak: number;

Loading…
Cancel
Save