1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
|
import { z } from 'zod';
export const TempoSchema = z.object({
name: z.string().min(1, { message: 'Nama harus diisi' }),
street: z.string().min(1, { message: 'Alamat harus diisi' }),
industry_id: z.string().min(1, { message: 'Jenis usaha harus dipilih' }),
zip: z.string().min(1, { message: 'Kode pos harus diisi' }),
state: z.string().min(1, { message: 'Provinsi harus dipilih' }),
city: z.string().min(1, { message: 'Kota harus dipilih' }),
mobile: z
.string()
.min(1, { message: 'Nomor telepon harus diisi' })
.refine((val) => /^\d{10,12}$/.test(val), {
message: 'Format nomor telepon tidak valid, contoh: 081234567890',
}),
bankName: z.string().min(1, { message: 'Nama bank harus diisi' }),
accountName: z.string().min(1, { message: 'Nama rekening harus diisi' }),
accountNumber: z.string().min(1, { message: 'Nomor rekening harus diisi' }),
estimasi: z
.string()
.min(1, { message: 'Estimasi pemmbelian pertahun harus diisi' }),
tempoDuration: z.string().min(1, { message: 'Durasi tempo harus dipilih' }),
tempoLimit: z.string().min(1, { message: 'Limit tempo harus dipilih' }),
bersedia: z.string().min(1, { message: 'Harus dipilih' }),
categoryProduk: z
.string()
.min(1, { message: 'Category produk harus dipilih' }),
});
export const TempoSchemaKontakPerson = z.object({
direkturName: z.string().min(1, { message: 'Nama harus diisi' }),
financeName: z.string().min(1, { message: 'Nama harus diisi' }),
direkturMobile: z
.string()
.min(1, { message: 'Nomor telepon harus diisi' })
.refine((val) => /^\d{10,12}$/.test(val), {
message: 'Format nomor telepon tidak valid, contoh: 081234567890',
}),
financeMobile: z
.string()
.min(1, { message: 'Nomor telepon harus diisi' })
.refine((val) => /^\d{10,12}$/.test(val), {
message: 'Format nomor telepon tidak valid, contoh: 081234567890',
}),
purchasingMobile: z
.string()
.min(1, { message: 'Nomor telepon harus diisi' })
.refine((val) => /^\d{10,12}$/.test(val), {
message: 'Format nomor telepon tidak valid, contoh: 081234567890',
}),
direkturEmail: z
.string()
.min(1, { message: 'Email harus diisi' })
.email({ message: 'Email harus menggunakan format example@mail.com' }),
purchasingEmail: z
.string()
.min(1, { message: 'Email harus diisi' })
.email({ message: 'Email harus menggunakan format example@mail.com' }),
financeEmail: z
.string()
.min(1, { message: 'Email harus diisi' })
.email({ message: 'Email harus menggunakan format example@mail.com' }),
purchasingName: z.string().min(1, { message: 'Nama harus diisi' }),
});
export const TempoSchemaPengiriman = z.object({
PICName: z.string().min(1, { message: 'Nama harus diisi' }),
streetPengiriman: z.string().min(1, { message: 'Alamat harus diisi' }),
statePengiriman: z.string().min(1, { message: 'Provinsi harus dipilih' }),
cityPengiriman: z.string().min(1, { message: 'Kota harus dipilih' }),
zip: z.string().min(1, { message: 'Kode pos harus diisi' }),
invoicePic: z.string().min(1, { message: 'Nama pic invoice harus diisi' }),
streetInvoice: z.string().min(1, { message: 'Alamat invoice harus diisi' }),
stateInvoice: z
.string()
.min(1, { message: 'Provinsi invoice harus dipilih' }),
cityInvoice: z.string().min(1, { message: 'Kota invoice harus dipilih' }),
everyWeekday: z.boolean().optional(),
everyWeekdayInput: z.string().optional(),
everyWeek: z.boolean().optional(),
everyWeekInput: z.string().optional(),
tukarInvoice: z.boolean().optional(),
tukarInvoiceInput: z.string().optional(),
everyWeekdayPembayaran: z.boolean().optional(),
everyWeekdayInputPembayaran: z.string().optional(),
everyWeekPembayaran: z.boolean().optional(),
everyWeekInputPembayaran: z.string().optional(),
tukarInvoicePembayaran: z.boolean().optional(),
tukarInvoiceInputPembayaran: z.string().optional(),
dokumenPengiriman: z.string().min(1, {
message: 'dokumen lampiran saat pengiriman barang harus dipilih',
}),
dokumenPengirimanInput: z.string().optional(),
dokumenPengirimanInvoice: z.string().min(1, {
message: 'dokumen lampiran saat pengiriman barang harus dipilih',
}),
dokumenPengirimanInvoiceInput: z.string().optional(),
});
export const TempoSchemaSupplier = z.object({
supplier: z.string().min(1, { message: 'Nama supplier harus diisi' }),
pic: z.string().min(1, { message: 'Nama PIC harus diisi' }),
telepon: z
.string()
.min(1, { message: 'Nomor telepon harus diisi' })
.refine((val) => /^\d{10,12}$/.test(val), {
message: 'Format nomor telepon tidak valid, contoh: 081234567890',
}),
durasiTempo: z.string().min(1, { message: 'Durasi tempo harus diisi' }),
creditLimit: z.string().min(1, { message: 'Limit Kredit harus diisi' }),
});
|