corrad-bp/docs/json/form/customScript.js
Md Afiq Iskandar 0a01f1116a Enhance Process Flow Nodes with Custom Shape and Color Support
- Added support for custom shapes and colors in ProcessFlowNodes component, allowing for more visually distinct node representations.
- Implemented computed properties for dynamic styling based on node type, including shape classes and color variables for background, border, and text.
- Updated the process builder to initialize new nodes with default shapes and colors, improving user experience and consistency.
- Enhanced the UI to include shape selection and color customization options for nodes, providing users with greater flexibility in designing their workflows.
- Improved overall code clarity and maintainability through refactoring and added comments.
2025-07-09 11:55:46 +08:00

879 lines
21 KiB
JavaScript

this.hideField("form_jeniskp_1");
this.hideField("form_jeniskp_2");
this.hideField("form_jeniskp_3");
this.onFieldChange("select_1", (value) => {
this.hideField("form_jeniskp_1");
this.hideField("form_jeniskp_2");
this.hideField("form_jeniskp_3");
if (value && value.trim()) {
if (value == "jeniskp_1") this.showField("form_jeniskp_1");
if (value == "jeniskp_2") this.showField("form_jeniskp_2");
if (value == "jeniskp_3") this.showField("form_jeniskp_3");
}
});
// Conditional logic for field: nyatakan_lain2
onFieldChange("radio_bangsa", function () {
if (getField("radio_bangsa") !== "lain") {
hideField("nyatakan_lain2");
} else {
showField("nyatakan_lain2");
}
});
// Initial evaluation for field: nyatakan_lain2
(function () {
if (getField("radio_bangsa") !== "lain") {
hideField("nyatakan_lain2");
} else {
showField("nyatakan_lain2");
}
})();
// Conditional Logic Script
// Conditional logic for field: nyatakan_lain2
onFieldChange("radio_bangsa", function () {
if (getField("radio_bangsa") !== "lain") {
hideField("nyatakan_lain2");
} else {
showField("nyatakan_lain2");
}
});
// Initial evaluation for field: nyatakan_lain2
(function () {
if (getField("radio_bangsa") !== "lain") {
hideField("nyatakan_lain2");
} else {
showField("nyatakan_lain2");
}
})();
// Conditional Logic Script
// Conditional logic for field: nyatakan_lain2
onFieldChange("radio_bangsa", function () {
if (getField("radio_bangsa") !== "lain") {
hideField("nyatakan_lain2");
} else {
showField("nyatakan_lain2");
}
});
// Initial evaluation for field: nyatakan_lain2
(function () {
if (getField("radio_bangsa") !== "lain") {
hideField("nyatakan_lain2");
} else {
showField("nyatakan_lain2");
}
})();
// Conditional logic for field: text_14
onFieldChange("radio_pendidikan", function () {
if (getField("radio_pendidikan") !== "lain") {
hideField("text_14");
} else {
showField("text_14");
}
});
// Initial evaluation for field: text_14
(function () {
if (getField("radio_pendidikan") !== "lain") {
hideField("text_14");
} else {
showField("text_14");
}
})();
// Conditional Logic Script
// Conditional logic for field: nyatakan_lain2
onFieldChange("radio_bangsa", function () {
if (getField("radio_bangsa") !== "lain") {
hideField("nyatakan_lain2");
} else {
showField("nyatakan_lain2");
}
});
// Initial evaluation for field: nyatakan_lain2
(function () {
if (getField("radio_bangsa") !== "lain") {
hideField("nyatakan_lain2");
} else {
showField("nyatakan_lain2");
}
})();
// Conditional logic for field: text_14
onFieldChange("radio_pendidikan", function () {
if (getField("radio_pendidikan") !== "lain") {
hideField("text_14");
} else {
showField("text_14");
}
});
// Initial evaluation for field: text_14
(function () {
if (getField("radio_pendidikan") !== "lain") {
hideField("text_14");
} else {
showField("text_14");
}
})();
// Conditional Logic Script
// Conditional logic for field: nyatakan_lain2
onFieldChange("radio_bangsa", function () {
if (getField("radio_bangsa") !== "lain") {
hideField("nyatakan_lain2");
} else {
showField("nyatakan_lain2");
}
});
// Initial evaluation for field: nyatakan_lain2
(function () {
if (getField("radio_bangsa") !== "lain") {
hideField("nyatakan_lain2");
} else {
showField("nyatakan_lain2");
}
})();
// Conditional logic for field: text_14
onFieldChange("radio_pendidikan", function () {
if (getField("radio_pendidikan") !== "lain") {
hideField("text_14");
} else {
showField("text_14");
}
});
// Initial evaluation for field: text_14
(function () {
if (getField("radio_pendidikan") !== "lain") {
hideField("text_14");
} else {
showField("text_14");
}
})();
// Conditional Logic Script
// Conditional logic for field: nyatakan_lain2
onFieldChange("radio_bangsa", function () {
if (getField("radio_bangsa") !== "lain") {
hideField("nyatakan_lain2");
} else {
showField("nyatakan_lain2");
}
});
// Initial evaluation for field: nyatakan_lain2
(function () {
if (getField("radio_bangsa") !== "lain") {
hideField("nyatakan_lain2");
} else {
showField("nyatakan_lain2");
}
})();
// Conditional logic for field: text_14
onFieldChange("radio_pendidikan", function () {
if (getField("radio_pendidikan") !== "lain") {
hideField("text_14");
} else {
showField("text_14");
}
});
// Initial evaluation for field: text_14
(function () {
if (getField("radio_pendidikan") !== "lain") {
hideField("text_14");
} else {
showField("text_14");
}
})();
// Conditional Logic Script
// Conditional logic for field: nyatakan_lain2
onFieldChange("radio_bangsa", function () {
if (getField("radio_bangsa") !== "lain") {
hideField("nyatakan_lain2");
} else {
showField("nyatakan_lain2");
}
});
// Initial evaluation for field: nyatakan_lain2
(function () {
if (getField("radio_bangsa") !== "lain") {
hideField("nyatakan_lain2");
} else {
showField("nyatakan_lain2");
}
})();
// Conditional logic for field: text_14
onFieldChange("radio_pendidikan", function () {
if (getField("radio_pendidikan") !== "lain") {
hideField("text_14");
} else {
showField("text_14");
}
});
// Initial evaluation for field: text_14
(function () {
if (getField("radio_pendidikan") !== "lain") {
hideField("text_14");
} else {
showField("text_14");
}
})();
// Hide "Nyatakan Hubungan Lain-lain" initially
this.hideField("hubungan_lain_nyatakan");
// Show/hide relationship specification field
this.onFieldChange("hubungan_keluarga", (value) => {
if (value && value.includes("lain_lain")) {
this.showField("hubungan_lain_nyatakan");
} else {
this.hideField("hubungan_lain_nyatakan");
}
});
// Hide "Sebab Pembayaran Tunai" initially
this.hideField("sebab_tunai");
// Show/hide cash payment reason field
this.onFieldChange("cara_pembayaran", (value) => {
if (value && value.includes("tunai")) {
this.showField("sebab_tunai");
} else {
this.hideField("sebab_tunai");
}
});
// Hide education specification field initially
this.hideField("pendidikan_lain_tanggungan");
// Show/hide education specification field
this.onFieldChange("pendidikan_tertinggi_tanggungan", (value) => {
if (value && value.includes("lain_lain")) {
this.showField("pendidikan_lain_tanggungan");
} else {
this.hideField("pendidikan_lain_tanggungan");
}
});
// Hide school information initially
this.hideField("maklumat_sekolah");
// Show/hide school information based on schooling status
this.onFieldChange("bersekolah_tanggungan", (value) => {
if (value === "ya") {
this.showField("maklumat_sekolah");
} else {
this.hideField("maklumat_sekolah");
}
});
// Handle repeating group conditional logic for each dependent
this.onFieldChange("tanggungan_maklumat", (value) => {
if (value && Array.isArray(value)) {
value.forEach((item, index) => {
// Handle race specification for each dependent
if (item.bangsa_tanggungan !== "lain_lain") {
// Hide the specification field for this item
const fieldName = `tanggungan_maklumat[${index}].bangsa_lain_tanggungan`;
// Note: Repeating group field hiding requires specific handling
}
});
}
});
// Conditional Logic Script
// Conditional logic for field: nyatakan_lain2
onFieldChange("radio_bangsa", function () {
if (getField("radio_bangsa") !== "lain") {
hideField("nyatakan_lain2");
} else {
showField("nyatakan_lain2");
}
});
// Initial evaluation for field: nyatakan_lain2
(function () {
if (getField("radio_bangsa") !== "lain") {
hideField("nyatakan_lain2");
} else {
showField("nyatakan_lain2");
}
})();
// Conditional logic for field: text_14
onFieldChange("radio_pendidikan", function () {
if (getField("radio_pendidikan") !== "lain") {
hideField("text_14");
} else {
showField("text_14");
}
});
// Initial evaluation for field: text_14
(function () {
if (getField("radio_pendidikan") !== "lain") {
hideField("text_14");
} else {
showField("text_14");
}
})();
// Conditional logic for field: hubungan_lain_nyatakan
onFieldChange("hubungan_keluarga", function () {
if (
!String(getField("hubungan_keluarga") || "")
.toLowerCase()
.includes("lain_lain".toLowerCase())
) {
hideField("hubungan_lain_nyatakan");
} else {
showField("hubungan_lain_nyatakan");
}
});
// Initial evaluation for field: hubungan_lain_nyatakan
(function () {
if (
!String(getField("hubungan_keluarga") || "")
.toLowerCase()
.includes("lain_lain".toLowerCase())
) {
hideField("hubungan_lain_nyatakan");
} else {
showField("hubungan_lain_nyatakan");
}
})();
// Conditional logic for field: sebab_tunai
onFieldChange("cara_pembayaran", function () {
if (
!String(getField("cara_pembayaran") || "")
.toLowerCase()
.includes("tunai".toLowerCase())
) {
hideField("sebab_tunai");
} else {
showField("sebab_tunai");
}
});
// Initial evaluation for field: sebab_tunai
(function () {
if (
!String(getField("cara_pembayaran") || "")
.toLowerCase()
.includes("tunai".toLowerCase())
) {
hideField("sebab_tunai");
} else {
showField("sebab_tunai");
}
})();
// Conditional logic for field: pendidikan_lain_tanggungan
onFieldChange("pendidikan_tertinggi_tanggungan", function () {
if (
!String(getField("pendidikan_tertinggi_tanggungan") || "")
.toLowerCase()
.includes("lain_lain".toLowerCase())
) {
hideField("pendidikan_lain_tanggungan");
} else {
showField("pendidikan_lain_tanggungan");
}
});
// Initial evaluation for field: pendidikan_lain_tanggungan
(function () {
if (
!String(getField("pendidikan_tertinggi_tanggungan") || "")
.toLowerCase()
.includes("lain_lain".toLowerCase())
) {
hideField("pendidikan_lain_tanggungan");
} else {
showField("pendidikan_lain_tanggungan");
}
})();
// Conditional logic for field: maklumat_sekolah
onFieldChange("bersekolah_tanggungan", function () {
if (getField("bersekolah_tanggungan") !== "ya") {
hideField("maklumat_sekolah");
} else {
showField("maklumat_sekolah");
}
});
// Initial evaluation for field: maklumat_sekolah
(function () {
if (getField("bersekolah_tanggungan") !== "ya") {
hideField("maklumat_sekolah");
} else {
showField("maklumat_sekolah");
}
})();
// Conditional Logic Script
// Conditional logic for field: nyatakan_lain2
onFieldChange("radio_bangsa", function () {
if (getField("radio_bangsa") !== "lain") {
hideField("nyatakan_lain2");
} else {
showField("nyatakan_lain2");
}
});
// Initial evaluation for field: nyatakan_lain2
(function () {
if (getField("radio_bangsa") !== "lain") {
hideField("nyatakan_lain2");
} else {
showField("nyatakan_lain2");
}
})();
// Conditional logic for field: text_14
onFieldChange("radio_pendidikan", function () {
if (getField("radio_pendidikan") !== "lain") {
hideField("text_14");
} else {
showField("text_14");
}
});
// Initial evaluation for field: text_14
(function () {
if (getField("radio_pendidikan") !== "lain") {
hideField("text_14");
} else {
showField("text_14");
}
})();
// Conditional logic for field: hubungan_lain_nyatakan
onFieldChange("hubungan_keluarga", function () {
if (
!String(getField("hubungan_keluarga") || "")
.toLowerCase()
.includes("lain_lain".toLowerCase())
) {
hideField("hubungan_lain_nyatakan");
} else {
showField("hubungan_lain_nyatakan");
}
});
// Initial evaluation for field: hubungan_lain_nyatakan
(function () {
if (
!String(getField("hubungan_keluarga") || "")
.toLowerCase()
.includes("lain_lain".toLowerCase())
) {
hideField("hubungan_lain_nyatakan");
} else {
showField("hubungan_lain_nyatakan");
}
})();
// Conditional logic for field: bangsa_lain_tanggungan
onFieldChange("bangsa_tanggungan", function () {
if (getField("bangsa_tanggungan") !== "lain_lain") {
hideField("bangsa_lain_tanggungan");
} else {
showField("bangsa_lain_tanggungan");
}
});
// Initial evaluation for field: bangsa_lain_tanggungan
(function () {
if (getField("bangsa_tanggungan") !== "lain_lain") {
hideField("bangsa_lain_tanggungan");
} else {
showField("bangsa_lain_tanggungan");
}
})();
// Conditional logic for field: sebab_tunai
onFieldChange("cara_pembayaran", function () {
if (
!String(getField("cara_pembayaran") || "")
.toLowerCase()
.includes("tunai".toLowerCase())
) {
hideField("sebab_tunai");
} else {
showField("sebab_tunai");
}
});
// Initial evaluation for field: sebab_tunai
(function () {
if (
!String(getField("cara_pembayaran") || "")
.toLowerCase()
.includes("tunai".toLowerCase())
) {
hideField("sebab_tunai");
} else {
showField("sebab_tunai");
}
})();
// Conditional logic for field: pendidikan_lain_tanggungan
onFieldChange("pendidikan_tertinggi_tanggungan", function () {
if (
!String(getField("pendidikan_tertinggi_tanggungan") || "")
.toLowerCase()
.includes("lain_lain".toLowerCase())
) {
hideField("pendidikan_lain_tanggungan");
} else {
showField("pendidikan_lain_tanggungan");
}
});
// Initial evaluation for field: pendidikan_lain_tanggungan
(function () {
if (
!String(getField("pendidikan_tertinggi_tanggungan") || "")
.toLowerCase()
.includes("lain_lain".toLowerCase())
) {
hideField("pendidikan_lain_tanggungan");
} else {
showField("pendidikan_lain_tanggungan");
}
})();
// Conditional logic for field: nama_sekolah
onFieldChange("bersekolah_tanggungan", function () {
if (getField("bersekolah_tanggungan") !== "ya") {
hideField("nama_sekolah");
} else {
showField("nama_sekolah");
}
});
// Initial evaluation for field: nama_sekolah
(function () {
if (getField("bersekolah_tanggungan") !== "ya") {
hideField("nama_sekolah");
} else {
showField("nama_sekolah");
}
})();
// Conditional logic for field: alamat_sekolah
onFieldChange("bersekolah_tanggungan", function () {
if (getField("bersekolah_tanggungan") !== "ya") {
hideField("alamat_sekolah");
} else {
showField("alamat_sekolah");
}
});
// Initial evaluation for field: alamat_sekolah
(function () {
if (getField("bersekolah_tanggungan") !== "ya") {
hideField("alamat_sekolah");
} else {
showField("alamat_sekolah");
}
})();
// Conditional logic for field: daerah_sekolah
onFieldChange("bersekolah_tanggungan", function () {
if (getField("bersekolah_tanggungan") !== "ya") {
hideField("daerah_sekolah");
} else {
showField("daerah_sekolah");
}
});
// Initial evaluation for field: daerah_sekolah
(function () {
if (getField("bersekolah_tanggungan") !== "ya") {
hideField("daerah_sekolah");
} else {
showField("daerah_sekolah");
}
})();
// Conditional logic for field: negeri_sekolah
onFieldChange("bersekolah_tanggungan", function () {
if (getField("bersekolah_tanggungan") !== "ya") {
hideField("negeri_sekolah");
} else {
showField("negeri_sekolah");
}
});
// Initial evaluation for field: negeri_sekolah
(function () {
if (getField("bersekolah_tanggungan") !== "ya") {
hideField("negeri_sekolah");
} else {
showField("negeri_sekolah");
}
})();
// Conditional logic for field: poskod_sekolah
onFieldChange("bersekolah_tanggungan", function () {
if (getField("bersekolah_tanggungan") !== "ya") {
hideField("poskod_sekolah");
} else {
showField("poskod_sekolah");
}
});
// Initial evaluation for field: poskod_sekolah
(function () {
if (getField("bersekolah_tanggungan") !== "ya") {
hideField("poskod_sekolah");
} else {
showField("poskod_sekolah");
}
})();
// Conditional Logic Script
// Conditional logic for field: nyatakan_lain2
onFieldChange("radio_bangsa", function () {
if (getField("radio_bangsa") !== "lain") {
hideField("nyatakan_lain2");
} else {
showField("nyatakan_lain2");
}
});
// Initial evaluation for field: nyatakan_lain2
(function () {
if (getField("radio_bangsa") !== "lain") {
hideField("nyatakan_lain2");
} else {
showField("nyatakan_lain2");
}
})();
// Conditional logic for field: text_14
onFieldChange("radio_pendidikan", function () {
if (getField("radio_pendidikan") !== "lain") {
hideField("text_14");
} else {
showField("text_14");
}
});
// Initial evaluation for field: text_14
(function () {
if (getField("radio_pendidikan") !== "lain") {
hideField("text_14");
} else {
showField("text_14");
}
})();
// Conditional logic for field: hubungan_lain_nyatakan
onFieldChange("hubungan_keluarga", function () {
if (
!String(getField("hubungan_keluarga") || "")
.toLowerCase()
.includes("lain_lain".toLowerCase())
) {
hideField("hubungan_lain_nyatakan");
} else {
showField("hubungan_lain_nyatakan");
}
});
// Initial evaluation for field: hubungan_lain_nyatakan
(function () {
if (
!String(getField("hubungan_keluarga") || "")
.toLowerCase()
.includes("lain_lain".toLowerCase())
) {
hideField("hubungan_lain_nyatakan");
} else {
showField("hubungan_lain_nyatakan");
}
})();
// Conditional logic for field: bangsa_lain_tanggungan
onFieldChange("bangsa_tanggungan", function () {
if (getField("bangsa_tanggungan") !== "lain_lain") {
hideField("bangsa_lain_tanggungan");
} else {
showField("bangsa_lain_tanggungan");
}
});
// Initial evaluation for field: bangsa_lain_tanggungan
(function () {
if (getField("bangsa_tanggungan") !== "lain_lain") {
hideField("bangsa_lain_tanggungan");
} else {
showField("bangsa_lain_tanggungan");
}
})();
// Conditional logic for field: sebab_tunai
onFieldChange("cara_pembayaran", function () {
if (
!String(getField("cara_pembayaran") || "")
.toLowerCase()
.includes("tunai".toLowerCase())
) {
hideField("sebab_tunai");
} else {
showField("sebab_tunai");
}
});
// Initial evaluation for field: sebab_tunai
(function () {
if (
!String(getField("cara_pembayaran") || "")
.toLowerCase()
.includes("tunai".toLowerCase())
) {
hideField("sebab_tunai");
} else {
showField("sebab_tunai");
}
})();
// Conditional logic for field: pendidikan_lain_tanggungan
onFieldChange("pendidikan_tertinggi_tanggungan", function () {
if (
!String(getField("pendidikan_tertinggi_tanggungan") || "")
.toLowerCase()
.includes("lain_lain".toLowerCase())
) {
hideField("pendidikan_lain_tanggungan");
} else {
showField("pendidikan_lain_tanggungan");
}
});
// Initial evaluation for field: pendidikan_lain_tanggungan
(function () {
if (
!String(getField("pendidikan_tertinggi_tanggungan") || "")
.toLowerCase()
.includes("lain_lain".toLowerCase())
) {
hideField("pendidikan_lain_tanggungan");
} else {
showField("pendidikan_lain_tanggungan");
}
})();
// Conditional logic for field: nama_sekolah
onFieldChange("bersekolah_tanggungan", function () {
if (getField("bersekolah_tanggungan") !== "ya") {
hideField("nama_sekolah");
} else {
showField("nama_sekolah");
}
});
// Initial evaluation for field: nama_sekolah
(function () {
if (getField("bersekolah_tanggungan") !== "ya") {
hideField("nama_sekolah");
} else {
showField("nama_sekolah");
}
})();
// Conditional logic for field: alamat_sekolah
onFieldChange("bersekolah_tanggungan", function () {
if (getField("bersekolah_tanggungan") !== "ya") {
hideField("alamat_sekolah");
} else {
showField("alamat_sekolah");
}
});
// Initial evaluation for field: alamat_sekolah
(function () {
if (getField("bersekolah_tanggungan") !== "ya") {
hideField("alamat_sekolah");
} else {
showField("alamat_sekolah");
}
})();
// Conditional logic for field: daerah_sekolah
onFieldChange("bersekolah_tanggungan", function () {
if (getField("bersekolah_tanggungan") !== "ya") {
hideField("daerah_sekolah");
} else {
showField("daerah_sekolah");
}
});
// Initial evaluation for field: daerah_sekolah
(function () {
if (getField("bersekolah_tanggungan") !== "ya") {
hideField("daerah_sekolah");
} else {
showField("daerah_sekolah");
}
})();
// Conditional logic for field: negeri_sekolah
onFieldChange("bersekolah_tanggungan", function () {
if (getField("bersekolah_tanggungan") !== "ya") {
hideField("negeri_sekolah");
} else {
showField("negeri_sekolah");
}
});
// Initial evaluation for field: negeri_sekolah
(function () {
if (getField("bersekolah_tanggungan") !== "ya") {
hideField("negeri_sekolah");
} else {
showField("negeri_sekolah");
}
})();
// Conditional logic for field: poskod_sekolah
onFieldChange("bersekolah_tanggungan", function () {
if (getField("bersekolah_tanggungan") !== "ya") {
hideField("poskod_sekolah");
} else {
showField("poskod_sekolah");
}
});
// Initial evaluation for field: poskod_sekolah
(function () {
if (getField("bersekolah_tanggungan") !== "ya") {
hideField("poskod_sekolah");
} else {
showField("poskod_sekolah");
}
})();