fix: issue of onclick yes button rotate pdf page

This commit is contained in:
RaktimaNXG
2024-08-21 14:36:01 +05:30
parent 1c2b4794f3
commit f993817cb6
5 changed files with 52 additions and 19 deletions
+3 -5
View File
@@ -8,17 +8,15 @@ function RotateAlert(props) {
<ModalUi
isOpen={props.isRotate}
title={t("Rotation-alert")}
handleClose={() => {
props.setIsRotate(false);
}}
handleClose={() => props.setIsRotate({ status: false, degree: 0 })}
>
{" "}
<div className="p-[20px] h-full">
<p>{t("rotate-alert-mssg")}</p>
<div className="h-[1px] w-full my-[15px] bg-[#9f9f9f]"></div>
<div className="flex gap-1">
<button
onClick={() => props.setIsRotate(false)}
onClick={() => props.setIsRotate({ status: false, degree: 0 })}
type="button"
className="op-btn op-btn-ghost shadow-md"
>
+4 -1
View File
@@ -2437,7 +2437,10 @@ export const handleRemoveWidgets = (
};
});
setSignerPos(updatedSignerPos);
setIsRotate(false);
setIsRotate({
status: false,
degree: 0
});
};
//function to show warning when user rotate page and there are some already widgets on that page
export const handleRotateWarning = (signerPos, pageNumber) => {
+15 -4
View File
@@ -140,7 +140,10 @@ function PlaceHolderSign() {
const [pdfArrayBuffer, setPdfArrayBuffer] = useState("");
const isHeader = useSelector((state) => state.showHeader);
const [activeMailAdapter, setActiveMailAdapter] = useState("");
const [isRotate, setIsRotate] = useState(false);
const [isRotate, setIsRotate] = useState({
status: false,
degree: 0
});
const [isAlreadyPlace, setIsAlreadyPlace] = useState({
status: false,
message: ""
@@ -1732,7 +1735,7 @@ function PlaceHolderSign() {
const handleRotationFun = async (rotateDegree) => {
const isRotate = handleRotateWarning(signerPos, pageNumber);
if (isRotate) {
setIsRotate(true);
setIsRotate({ status: true, degree: rotateDegree });
} else {
const urlDetails = await rotatePdfPage(
pdfDetails[0].URL,
@@ -1744,8 +1747,16 @@ function PlaceHolderSign() {
setPdfRotatese64(urlDetails.base64);
}
};
const handleRemovePlaceholder = () => {
const handleRemovePlaceholder = async () => {
handleRemoveWidgets(setSignerPos, signerPos, pageNumber, setIsRotate);
const urlDetails = await rotatePdfPage(
pdfDetails[0].URL,
isRotate.degree,
pageNumber - 1,
pdfRotateBase64
);
setPdfArrayBuffer && setPdfArrayBuffer(urlDetails.arrayBuffer);
setPdfRotatese64(urlDetails.base64);
};
return (
<>
@@ -2247,7 +2258,7 @@ function PlaceHolderSign() {
setFontColor={setFontColor}
/>
<RotateAlert
isRotate={isRotate}
isRotate={isRotate.status}
setIsRotate={setIsRotate}
handleRemoveWidgets={handleRemovePlaceholder}
/>
+16 -5
View File
@@ -128,7 +128,10 @@ function SignYourSelf() {
const isHeader = useSelector((state) => state.showHeader);
const [scale, setScale] = useState(1);
const [pdfRotateBase64, setPdfRotatese64] = useState("");
const [isRotate, setIsRotate] = useState(false);
const [isRotate, setIsRotate] = useState({
status: false,
degree: 0
});
const divRef = useRef(null);
const nodeRef = useRef(null);
const [, drop] = useDrop({
@@ -1178,7 +1181,7 @@ function SignYourSelf() {
const handleRotationFun = async (rotateDegree) => {
const isPlaceholder = handleRotateWarning();
if (isPlaceholder) {
setIsRotate(true);
setIsRotate({ status: true, degree: rotateDegree });
} else {
const urlDetails = await rotatePdfPage(
pdfUrl || pdfDetails[0].URL,
@@ -1203,12 +1206,20 @@ function SignYourSelf() {
}
};
//function to use remove widgets from current page when user want to rotate page
const handleRemoveWidgets = () => {
const handleRemoveWidgets = async () => {
const updatePlaceholder = xyPostion.filter(
(data) => data.pageNumber !== pageNumber
);
const urlDetails = await rotatePdfPage(
pdfUrl || pdfDetails[0].URL,
isRotate.degree,
pageNumber - 1,
pdfRotateBase64
);
setPdfArrayBuffer && setPdfArrayBuffer(urlDetails.arrayBuffer);
setPdfRotatese64(urlDetails.base64);
setXyPostion(updatePlaceholder);
setIsRotate(false);
setIsRotate({ status: false, degree: 0 });
};
return (
<DndProvider backend={HTML5Backend}>
@@ -1490,7 +1501,7 @@ function SignYourSelf() {
</div>
</ModalUi>
<RotateAlert
isRotate={isRotate}
isRotate={isRotate.status}
setIsRotate={setIsRotate}
handleRemoveWidgets={handleRemoveWidgets}
/>
+14 -4
View File
@@ -70,7 +70,10 @@ const TemplatePlaceholder = () => {
const [isSendAlert, setIsSendAlert] = useState(false);
const [isCreateDocModal, setIsCreateDocModal] = useState(false);
const [isSubscribe, setIsSubscribe] = useState(false);
const [isRotate, setIsRotate] = useState(false);
const [isRotate, setIsRotate] = useState({
status: false,
degree: 0
});
const [isLoading, setIsLoading] = useState({
isLoad: true,
message: t("loading-mssg")
@@ -1334,7 +1337,7 @@ const TemplatePlaceholder = () => {
const handleRotationFun = async (rotateDegree) => {
const isRotate = handleRotateWarning(signerPos, pageNumber);
if (isRotate) {
setIsRotate(true);
setIsRotate({ status: true, degree: rotateDegree });
} else {
const urlDetails = await rotatePdfPage(
pdfDetails[0].URL,
@@ -1345,8 +1348,15 @@ const TemplatePlaceholder = () => {
setPdfRotatese64(urlDetails.base64);
}
};
const handleRemovePlaceholder = () => {
const handleRemovePlaceholder = async () => {
handleRemoveWidgets(setSignerPos, signerPos, pageNumber, setIsRotate);
const urlDetails = await rotatePdfPage(
pdfDetails[0].URL,
isRotate.degree,
pageNumber - 1,
pdfRotateBase64
);
setPdfRotatese64(urlDetails.base64);
};
return (
@@ -1734,7 +1744,7 @@ const TemplatePlaceholder = () => {
setFontColor={setFontColor}
/>
<RotateAlert
isRotate={isRotate}
isRotate={isRotate.status}
setIsRotate={setIsRotate}
handleRemoveWidgets={handleRemovePlaceholder}
/>