fix: checkbox onclick border issue

This commit is contained in:
RaktimaNXG
2024-02-20 14:51:17 +05:30
parent ef1b82f426
commit 439ac7eac6
2 changed files with 74 additions and 90 deletions
@@ -301,65 +301,12 @@ function PdfRequestFiles() {
);
if (checkUser && checkUser.length > 0) {
let unSignUrlData;
let checkWidgetSign = 0;
let allXyPos = 0;
let checkedRequireCount = 0;
let optionalCheckbox = 0;
let CheckboxRequireCount = 0;
for (let i = 0; i < checkUser[0].placeHolder.length; i++) {
const posSignUrlData = checkUser[0].placeHolder[i].pos.filter(
(pos) => pos?.SignUrl
);
unSignUrlData = checkUser[0].placeHolder[i].pos.filter(
(pos) => !pos?.SignUrl && !pos.widgetValue
);
console.log("unsigned", unSignUrlData);
// const posWidgetData = checkUser[0].placeHolder[i].pos.filter(
// (pos) => pos?.widgetValue && pos?.type !== "checkbox"
// );
// const checkboxReadOnly = checkUser[0].placeHolder[i].pos.filter(
// (pos) =>
// pos?.widgetValue &&
// pos?.type === "checkbox" &&
// pos?.widgetStatus === "Read only"
// ).length;
// const checkboxRequire = checkUser[0].placeHolder[i].pos.filter(
// (pos) => pos?.type === "checkbox" && pos?.widgetStatus === "Required"
// );
// CheckboxRequireCount = CheckboxRequireCount + checkboxRequire?.length;
// checkedRequireCount =
// checkedRequireCount +
// checkUser[0].placeHolder[i].pos?.filter(
// (pos) =>
// pos?.widgetValue &&
// pos?.type === "checkbox" &&
// pos?.widgetStatus === "Required"
// )?.length;
// optionalCheckbox = checkUser[0].placeHolder[i].pos.filter(
// (pos) => pos.type === "checkbox" && pos.widgetStatus === "Optional"
// ).length;
// checkWidgetSign =
// checkWidgetSign +
// posSignUrlData.length +
// posWidgetData.length +
// checkboxReadOnly +
// checkedRequireCount +
// optionalCheckbox;
// allXyPos = allXyPos + checkUser[0].placeHolder[i].pos.length;
}
// if (CheckboxRequireCount !== checkedRequireCount) {
// setIsAlert({
// isShow: true,
// alertMessage: "Please check the required checkbox to continue."
// });
// } else if (allXyPos !== checkWidgetSign) {
// setIsAlert({
// isShow: true,
// alertMessage: "Please complete your signature!"
// });
// }
let checkboxExist;
let optionRequiredCheckbox;
checkboxExist = unSignUrlData.some((data) => data.type === "checkbox");
@@ -409,38 +356,37 @@ function PdfRequestFiles() {
);
//function for call to embed signature in pdf and get digital signature pdf
// try {
// const res = await signPdfFun(
// pdfBytes,
// documentId,
// signerObjectId,
// pdfOriginalWidth,
// pngUrl,
// containerWH,
// setIsAlert
// );
// if (res && res.status === "success") {
// setPdfUrl(res.data);
// setIsSigned(true);
// setSignedSigners([]);
// setUnSignedSigners([]);
// getDocumentDetails();
// } else {
// setIsAlert({
// isShow: true,
// alertMessage: "something went wrong"
// });
// }
// } catch (err) {
// setIsAlert({
// isShow: true,
// alertMessage: "something went wrong"
// });
// }
try {
const res = await signPdfFun(
pdfBytes,
documentId,
signerObjectId,
pdfOriginalWidth,
pngUrl,
containerWH,
setIsAlert
);
if (res && res.status === "success") {
setPdfUrl(res.data);
setIsSigned(true);
setSignedSigners([]);
setUnSignedSigners([]);
getDocumentDetails();
} else {
setIsAlert({
isShow: true,
alertMessage: "something went wrong"
});
}
} catch (err) {
setIsAlert({
isShow: true,
alertMessage: "something went wrong"
});
}
}
setIsSignPad(false);
// }
} else {
setIsAlert({
isShow: true,
@@ -741,6 +687,9 @@ function PdfRequestFiles() {
</ModalUi>
<Tour
showNumber={false}
showNavigation={false}
showNavigationNumber={false}
onRequestClose={closeTour}
steps={tourConfig}
isOpen={widgetsTour}
@@ -12,6 +12,7 @@ function PlaceholderType(props) {
const inputRef = useRef(null);
const [textValue, setTextValue] = useState("");
const [inputValue, setInputValue] = useState("");
const [checkedValue, setCheckedValue] = useState(false);
const [isCheckedRadio, setIsCheckedRadio] = useState({
isChecked: false,
selectValue: ""
@@ -170,6 +171,28 @@ function PlaceholderType(props) {
const size = fontSize ? fontSize : 12;
return size + "px";
};
const handleChecked = () => {
if (props.isPlaceholder) {
if (props.pos?.widgetStatus === "Read only") {
if (checkedValue) {
return checkedValue;
} else {
const isChecked = true;
return isChecked;
}
} else {
if (checkedValue) {
return !checkedValue;
} else {
return false;
}
}
} else {
return props.pos?.widgetValue;
}
};
switch (props.pos.type) {
case "signature":
return props.pos.SignUrl ? (
@@ -234,23 +257,35 @@ function PlaceholderType(props) {
disabled={
props.isNeedSign && props.data?.signerObjId !== props.signerObjId
? true
: props.isNeedSign && props.pos?.widgetStatus === "Read only"
? true
: props.isPlaceholder
: props.isNeedSign &&
props.pos?.widgetStatus === "Read only" &&
true
// : props.isPlaceholder
}
onBlur={handleInputBlur}
checked={props.pos.widgetValue}
onChange={(e) =>
checked={handleChecked()}
onChange={(e) => {
let isChecked = e.target.checked;
if (props.isPlaceholder) {
if (props.pos.widgetStatus === "Read only") {
setCheckedValue(true);
isChecked = true;
} else {
setCheckedValue(false);
isChecked = false;
}
}
onChangeInput(
e.target.checked,
isChecked,
props.pos.key,
props.xyPostion,
props.index,
props.setXyPostion,
props.data && props.data.Id,
false
)
}
);
}}
/>
);
case "text":