Fix All Text Input User & Admin, fix deskripsi detail break word

This commit is contained in:
2025-09-29 14:06:04 +08:00
parent 2a26db6e17
commit dbd56a1493
319 changed files with 965 additions and 817 deletions

View File

@@ -194,7 +194,7 @@ function EditKeamananLingkungan() {
)}
<TextInput
value={formData.name}
defaultValue={formData.name}
onChange={(e) =>
setFormData({ ...formData, name: e.target.value })
}

View File

@@ -88,7 +88,7 @@ function DetailKeamananLingkungan() {
<Box>
<Text fz="lg" fw="bold">Deskripsi</Text>
<Text fz="md" c="dimmed" dangerouslySetInnerHTML={{ __html: data?.deskripsi }} />
<Text fz="md" c="dimmed" dangerouslySetInnerHTML={{ __html: data?.deskripsi }} style={{ wordBreak: "break-word", whiteSpace: "normal" }} />
</Box>
{/* Aksi */}

View File

@@ -172,7 +172,7 @@ function CreateKeamananLingkungan() {
{/* Input Nama */}
<TextInput
value={keamananState.create.form.name}
defaultValue={keamananState.create.form.name}
onChange={(val) => {
keamananState.create.form.name = val.target.value;
}}

View File

@@ -99,7 +99,7 @@ function EditKontakItem() {
<TextInput
label="Nama Kontak"
placeholder="Masukkan nama kontak"
value={formData.name}
defaultValue={formData.name}
onChange={(e) => setFormData({ ...formData, name: e.target.value })}
required
/>
@@ -107,7 +107,7 @@ function EditKontakItem() {
<TextInput
label="Nomor Telepon"
placeholder="Masukkan nomor telepon"
value={formData.nomorTelepon}
defaultValue={formData.nomorTelepon}
onChange={(e) => setFormData({ ...formData, nomorTelepon: e.target.value })}
required
/>

View File

@@ -65,7 +65,7 @@ function CreateKontakItem() {
<Stack gap="md">
{/* Input Nama Kategori */}
<TextInput
value={kontakState.create.form.nama}
defaultValue={kontakState.create.form.nama}
onChange={(val) => {
kontakState.create.form.nama = val.target.value;
}}
@@ -77,7 +77,7 @@ function CreateKontakItem() {
<TextInput
label={<Text fw="bold" fz="sm">Nomor Telepon Kontak</Text>}
placeholder="Masukkan nomor telepon"
value={kontakState.create.form.nomorTelepon}
defaultValue={kontakState.create.form.nomorTelepon}
onChange={(val) => {
kontakState.create.form.nomorTelepon = val.target.value;
}}

View File

@@ -112,7 +112,7 @@ function EditKontakDaruratKeamanan() {
<Stack gap="md">
{/* Nama kategori */}
<TextInput
value={formData.name}
defaultValue={formData.name}
onChange={(e) => setFormData({ ...formData, name: e.target.value })}
label="Nama Kontak Darurat"
placeholder="Masukkan nama kontak darurat"

View File

@@ -72,7 +72,7 @@ function CreateKontakDaruratKeamanan() {
<Stack gap="md">
{/* Input Nama Kategori */}
<TextInput
value={kontakState.create.form.nama}
defaultValue={kontakState.create.form.nama}
onChange={(val) => {
kontakState.create.form.nama = val.target.value;
}}

View File

@@ -111,7 +111,7 @@ function EditLaporanPublik() {
>
<Stack gap="md">
<TextInput
value={formData.judul}
defaultValue={formData.judul}
onChange={(e) => setFormData({ ...formData, judul: e.target.value })}
label={<Text fw="bold" fz="sm">Judul Laporan Publik</Text>}
placeholder="Masukkan judul laporan publik"
@@ -119,7 +119,7 @@ function EditLaporanPublik() {
/>
<TextInput
value={formData.lokasi}
defaultValue={formData.lokasi}
onChange={(e) => setFormData({ ...formData, lokasi: e.target.value })}
label={<Text fw="bold" fz="sm">Lokasi Laporan Publik</Text>}
placeholder="Masukkan lokasi laporan publik"

View File

@@ -77,7 +77,7 @@ function DetailLaporanPublik() {
<Stack gap="sm">
<Box>
<Text fz="lg" fw="bold">Judul Laporan Publik</Text>
<Text fz="md" c="dimmed">{data.judul || '-'}</Text>
<Text fz="md" c="dimmed" style={{ wordBreak: "break-word", whiteSpace: "normal" }}>{data.judul || '-'}</Text>
</Box>
<Box>
@@ -91,7 +91,7 @@ function DetailLaporanPublik() {
<Box>
<Text fz="lg" fw="bold">Lokasi</Text>
<Text fz="md" c="dimmed">{data.lokasi || '-'}</Text>
<Text fz="md" c="dimmed" style={{ wordBreak: "break-word", whiteSpace: "normal" }}>{data.lokasi || '-'}</Text>
</Box>
<Box>
@@ -121,7 +121,7 @@ function DetailLaporanPublik() {
<Box>
<Text fz="lg" fw="bold">Kronologi</Text>
<Text fz="md" c="dimmed" dangerouslySetInnerHTML={{ __html: data.kronologi || '' }} />
<Text fz="md" c="dimmed" style={{ wordBreak: "break-word", whiteSpace: "normal" }} dangerouslySetInnerHTML={{ __html: data.kronologi || '' }} />
</Box>
<Box>
@@ -133,6 +133,7 @@ function DetailLaporanPublik() {
fz="md"
c="dimmed"
dangerouslySetInnerHTML={{ __html: item.deskripsi || '-' }}
style={{ wordBreak: "break-word", whiteSpace: "normal" }}
/>
</Box>
))

View File

@@ -63,7 +63,7 @@ function CreateLaporanPublik() {
>
<Stack gap="md">
<TextInput
value={stateLaporan.create.form.judul}
defaultValue={stateLaporan.create.form.judul}
onChange={(e) => (stateLaporan.create.form.judul = e.target.value)}
label={<Text fw="bold" fz="sm">Judul Laporan Publik</Text>}
placeholder="Masukkan judul laporan publik"
@@ -71,7 +71,7 @@ function CreateLaporanPublik() {
/>
<TextInput
value={stateLaporan.create.form.lokasi}
defaultValue={stateLaporan.create.form.lokasi}
onChange={(e) => (stateLaporan.create.form.lokasi = e.target.value)}
label={<Text fw="bold" fz="sm">Lokasi Laporan Publik</Text>}
placeholder="Masukkan lokasi laporan publik"
@@ -91,7 +91,7 @@ function CreateLaporanPublik() {
/>
<TextInput
value={stateLaporan.create.form.kronologi}
defaultValue={stateLaporan.create.form.kronologi}
onChange={(e) => (stateLaporan.create.form.kronologi = e.target.value)}
label={<Text fw="bold" fz="sm">Kronologi Laporan Publik</Text>}
placeholder="Masukkan kronologi laporan publik"

View File

@@ -119,7 +119,7 @@ function EditPencegahanKriminalitas() {
<TextInput
label="Judul"
placeholder="Masukkan judul"
value={formData.judul}
defaultValue={formData.judul}
onChange={(e) => setFormData({ ...formData, judul: e.target.value })}
required
/>
@@ -127,7 +127,7 @@ function EditPencegahanKriminalitas() {
<TextInput
label="Deskripsi Singkat"
placeholder="Masukkan deskripsi singkat"
value={formData.deskripsiSingkat}
defaultValue={formData.deskripsiSingkat}
onChange={(e) =>
setFormData({ ...formData, deskripsiSingkat: e.target.value })
}
@@ -150,7 +150,7 @@ function EditPencegahanKriminalitas() {
<TextInput
label="Link Video YouTube"
placeholder="https://www.youtube.com/watch?v=abc123"
value={formData.linkVideo}
defaultValue={formData.linkVideo}
onChange={(e) =>
setFormData({ ...formData, linkVideo: e.currentTarget.value })
}

View File

@@ -75,7 +75,7 @@ function DetailPencegahanKriminalitas() {
<Box>
<Text fz="lg" fw="bold">Deskripsi Singkat</Text>
{data?.deskripsiSingkat ? (
<Text fz="md" c="dimmed" dangerouslySetInnerHTML={{ __html: data.deskripsiSingkat }} />
<Text fz="md" c="dimmed" style={{ wordBreak: "break-word", whiteSpace: "normal" }} dangerouslySetInnerHTML={{ __html: data.deskripsiSingkat }} />
) : (
<Text fz="sm" c="dimmed">Tidak ada deskripsi singkat</Text>
)}
@@ -84,7 +84,7 @@ function DetailPencegahanKriminalitas() {
<Box>
<Text fz="lg" fw="bold">Deskripsi</Text>
{data?.deskripsi ? (
<Text fz="md" c="dimmed" dangerouslySetInnerHTML={{ __html: data.deskripsi }} />
<Text fz="md" c="dimmed" style={{ wordBreak: "break-word", whiteSpace: "normal" }} dangerouslySetInnerHTML={{ __html: data.deskripsi }} />
) : (
<Text fz="sm" c="dimmed">Tidak ada deskripsi</Text>
)}

View File

@@ -82,7 +82,7 @@ function CreatePencegahanKriminalitas() {
<TextInput
label="Judul Pencegahan Kriminalitas"
placeholder="Masukkan judul Pencegahan Kriminalitas"
value={kriminalitasState.create.form.judul}
defaultValue={kriminalitasState.create.form.judul}
onChange={(e) => {
kriminalitasState.create.form.judul = e.currentTarget.value;
}}
@@ -93,7 +93,7 @@ function CreatePencegahanKriminalitas() {
<TextInput
label="Deskripsi Singkat"
placeholder="Masukkan deskripsi singkat"
value={kriminalitasState.create.form.deskripsiSingkat}
defaultValue={kriminalitasState.create.form.deskripsiSingkat}
onChange={(e) => {
kriminalitasState.create.form.deskripsiSingkat = e.currentTarget.value;
}}
@@ -117,7 +117,7 @@ function CreatePencegahanKriminalitas() {
<TextInput
label="Link Video YouTube"
placeholder="https://www.youtube.com/watch?v=abc123"
value={link}
defaultValue={link}
onChange={(e) => setLink(e.currentTarget.value)}
required
/>

View File

@@ -211,7 +211,7 @@ function EditPolsekTerdekat() {
<TextInput
label="Nama Layanan"
placeholder="Masukkan nama layanan"
value={namaLayananBaru}
defaultValue={namaLayananBaru}
onChange={(e) => setNamaLayananBaru(e.currentTarget.value)}
/>
<Button onClick={handleTambahLayanan}>Simpan</Button>
@@ -229,7 +229,7 @@ function EditPolsekTerdekat() {
<TextInput
label="Nama Layanan"
placeholder="Masukkan nama layanan"
value={namaLayananUpdate}
defaultValue={namaLayananUpdate}
onChange={(e) => setNamaLayananUpdate(e.currentTarget.value)}
/>
<Button
@@ -273,7 +273,7 @@ function EditPolsekTerdekat() {
<Stack gap="md">
{/* Input fields */}
<TextInput
value={formData.nama}
defaultValue={formData.nama}
onChange={(val) =>
setFormData({ ...formData, nama: val.target.value })
}
@@ -282,7 +282,7 @@ function EditPolsekTerdekat() {
required
/>
<TextInput
value={formData.jarakKeDesa}
defaultValue={formData.jarakKeDesa}
onChange={(val) =>
setFormData({ ...formData, jarakKeDesa: val.target.value })
}
@@ -290,7 +290,7 @@ function EditPolsekTerdekat() {
placeholder="Masukkan jarak Polsek Terdekat"
/>
<TextInput
value={formData.alamat}
defaultValue={formData.alamat}
onChange={(val) =>
setFormData({ ...formData, alamat: val.target.value })
}
@@ -298,7 +298,7 @@ function EditPolsekTerdekat() {
placeholder="Masukkan alamat Polsek Terdekat"
/>
<TextInput
value={formData.nomorTelepon}
defaultValue={formData.nomorTelepon}
onChange={(val) =>
setFormData({ ...formData, nomorTelepon: val.target.value })
}
@@ -306,7 +306,7 @@ function EditPolsekTerdekat() {
placeholder="Masukkan nomor telepon Polsek Terdekat"
/>
<TextInput
value={formData.jamOperasional}
defaultValue={formData.jamOperasional}
onChange={(val) =>
setFormData({ ...formData, jamOperasional: val.target.value })
}
@@ -314,7 +314,7 @@ function EditPolsekTerdekat() {
placeholder="Masukkan jam operasional Polsek Terdekat"
/>
<TextInput
value={formData.embedMapUrl}
defaultValue={formData.embedMapUrl}
onChange={(val) =>
setFormData({ ...formData, embedMapUrl: val.target.value })
}
@@ -322,7 +322,7 @@ function EditPolsekTerdekat() {
placeholder="Masukkan embed map url"
/>
<TextInput
value={formData.namaTempatMaps}
defaultValue={formData.namaTempatMaps}
onChange={(val) =>
setFormData({ ...formData, namaTempatMaps: val.target.value })
}
@@ -330,7 +330,7 @@ function EditPolsekTerdekat() {
placeholder="Masukkan nama tempat di maps"
/>
<TextInput
value={formData.alamatMaps}
defaultValue={formData.alamatMaps}
onChange={(val) =>
setFormData({ ...formData, alamatMaps: val.target.value })
}
@@ -338,7 +338,7 @@ function EditPolsekTerdekat() {
placeholder="Masukkan alamat di maps"
/>
<TextInput
value={formData.linkPetunjukArah}
defaultValue={formData.linkPetunjukArah}
onChange={(val) =>
setFormData({ ...formData, linkPetunjukArah: val.target.value })
}

View File

@@ -82,7 +82,7 @@ function DetailPolsekTerdekat() {
{/* Alamat */}
<Box>
<Text fz="lg" fw="bold">Alamat Polsek</Text>
<Text fz="md" c="dimmed">{data?.alamat || "-"}</Text>
<Text fz="md" c="dimmed" style={{ wordBreak: "break-word", whiteSpace: "normal" }}>{data?.alamat || "-"}</Text>
</Box>
{/* Nomor */}
@@ -125,19 +125,19 @@ function DetailPolsekTerdekat() {
{/* Nama Tempat Maps */}
<Box>
<Text fz="lg" fw="bold">Nama Tempat Maps</Text>
<Text fz="md" c="dimmed">{data?.namaTempatMaps || "-"}</Text>
<Text fz="md" c="dimmed" style={{ wordBreak: "break-word", whiteSpace: "normal" }}>{data?.namaTempatMaps || "-"}</Text>
</Box>
{/* Alamat Maps */}
<Box>
<Text fz="lg" fw="bold">Alamat Maps</Text>
<Text fz="md" c="dimmed">{data?.alamatMaps || "-"}</Text>
<Text fz="md" c="dimmed" style={{ wordBreak: "break-word", whiteSpace: "normal" }}>{data?.alamatMaps || "-"}</Text>
</Box>
{/* Link Petunjuk Arah */}
<Box>
<Text fz="lg" fw="bold">Link Petunjuk Arah</Text>
<Text fz="md">
<Text fz="lg" fw="bold" >Link Petunjuk Arah</Text>
<Text fz="md" style={{ wordBreak: "break-word", whiteSpace: "normal" }}>
<a
href={data?.linkPetunjukArah || "#"}
target="_blank"

View File

@@ -113,7 +113,7 @@ function CreatePolsekTerdekat() {
<TextInput
label="Nama Layanan"
placeholder="Masukkan nama layanan"
value={namaLayananBaru}
defaultValue={namaLayananBaru}
onChange={(e) => setNamaLayananBaru(e.currentTarget.value)}
/>
<Button onClick={handleTambahLayanan}>Simpan</Button>
@@ -148,59 +148,59 @@ function CreatePolsekTerdekat() {
>
<Stack gap="md">
<TextInput
value={polsekState.create.form.nama}
defaultValue={polsekState.create.form.nama}
onChange={(val) => (polsekState.create.form.nama = val.target.value)}
label={<Text fw="bold" fz="sm">Nama Polsek Terdekat</Text>}
placeholder="Masukkan nama Polsek Terdekat"
required
/>
<TextInput
value={polsekState.create.form.jarakKeDesa}
defaultValue={polsekState.create.form.jarakKeDesa}
onChange={(val) => (polsekState.create.form.jarakKeDesa = val.target.value)}
label={<Text fw="bold" fz="sm">Jarak Polsek Terdekat</Text>}
placeholder="Masukkan jarak Polsek Terdekat"
required
/>
<TextInput
value={polsekState.create.form.alamat}
defaultValue={polsekState.create.form.alamat}
onChange={(val) => (polsekState.create.form.alamat = val.target.value)}
label={<Text fw="bold" fz="sm">Alamat Polsek Terdekat</Text>}
placeholder="Masukkan alamat Polsek Terdekat"
required
/>
<TextInput
value={polsekState.create.form.nomorTelepon}
defaultValue={polsekState.create.form.nomorTelepon}
onChange={(val) => (polsekState.create.form.nomorTelepon = val.target.value)}
label={<Text fw="bold" fz="sm">Nomor Telepon Polsek Terdekat</Text>}
placeholder="Masukkan nomor telepon Polsek Terdekat"
required
/>
<TextInput
value={polsekState.create.form.jamOperasional}
defaultValue={polsekState.create.form.jamOperasional}
onChange={(val) => (polsekState.create.form.jamOperasional = val.target.value)}
label={<Text fw="bold" fz="sm">Jam Operasional Polsek Terdekat</Text>}
placeholder="Masukkan jam operasional Polsek Terdekat"
/>
<TextInput
value={polsekState.create.form.embedMapUrl}
defaultValue={polsekState.create.form.embedMapUrl}
onChange={(val) => (polsekState.create.form.embedMapUrl = val.target.value)}
label={<Text fw="bold" fz="sm">Embed Map URL</Text>}
placeholder="Masukkan embed map url"
/>
<TextInput
value={polsekState.create.form.namaTempatMaps}
defaultValue={polsekState.create.form.namaTempatMaps}
onChange={(val) => (polsekState.create.form.namaTempatMaps = val.target.value)}
label={<Text fw="bold" fz="sm">Nama Tempat Maps</Text>}
placeholder="Masukkan nama tempat maps"
/>
<TextInput
value={polsekState.create.form.alamatMaps}
defaultValue={polsekState.create.form.alamatMaps}
onChange={(val) => (polsekState.create.form.alamatMaps = val.target.value)}
label={<Text fw="bold" fz="sm">Alamat Maps</Text>}
placeholder="Masukkan alamat maps"
/>
<TextInput
value={polsekState.create.form.linkPetunjukArah}
defaultValue={polsekState.create.form.linkPetunjukArah}
onChange={(val) => (polsekState.create.form.linkPetunjukArah = val.target.value)}
label={<Text fw="bold" fz="sm">Link Petunjuk Arah</Text>}
placeholder="Masukkan link petunjuk arah"

View File

@@ -199,7 +199,7 @@ function EditTipsKeamanan() {
<TextInput
label="Nama Tips Keamanan"
placeholder="Masukkan nama tips keamanan"
value={formData.judul}
defaultValue={formData.judul}
onChange={(e) => setFormData({ ...formData, judul: e.target.value })}
required
/>

View File

@@ -68,7 +68,7 @@ function DetailTipsKeamanan() {
<Stack gap="sm">
<Box>
<Text fz="lg" fw="bold">Nama Tips Keamanan</Text>
<Text fz="md" c="dimmed">{data.judul || '-'}</Text>
<Text fz="md" c="dimmed" style={{ wordBreak: "break-word", whiteSpace: "normal" }}>{data.judul || '-'}</Text>
</Box>
<Box>
@@ -76,6 +76,7 @@ function DetailTipsKeamanan() {
<Text
fz="md"
c="dimmed"
style={{ wordBreak: "break-word", whiteSpace: "normal" }}
dangerouslySetInnerHTML={{ __html: data.deskripsi || '-' }}
/>
</Box>

View File

@@ -138,7 +138,7 @@ function CreateKeamananLingkungan() {
<TextInput
label="Judul Tips Keamanan"
placeholder="Masukkan judul tips keamanan"
value={stateKeamanan.create.form.judul || ''}
defaultValue={stateKeamanan.create.form.judul || ''}
onChange={(e) => (stateKeamanan.create.form.judul = e.target.value)}
required
/>