mirror of
https://github.com/OpenSignLabs/OpenSign.git
synced 2026-08-21 15:12:34 +02:00
fix: add try catch to convert pdf array buffer
This commit is contained in:
@@ -1895,3 +1895,19 @@ export const copytoData = (text) => {
|
||||
document.body.removeChild(textArea);
|
||||
}
|
||||
};
|
||||
|
||||
export const convertPdfArrayBuffer = async (url) => {
|
||||
try {
|
||||
const response = await fetch(url);
|
||||
// Check if the response was successful (status 200)
|
||||
if (!response.ok) {
|
||||
return "Error";
|
||||
}
|
||||
// Convert the response to ArrayBuffer
|
||||
const arrayBuffer = await response.arrayBuffer();
|
||||
return arrayBuffer;
|
||||
} catch (error) {
|
||||
console.error("Error fetching data:", error);
|
||||
return "Error";
|
||||
}
|
||||
};
|
||||
|
||||
@@ -23,7 +23,8 @@ import {
|
||||
addDefaultSignatureImg,
|
||||
radioButtonWidget,
|
||||
replaceMailVaribles,
|
||||
fetchSubscription
|
||||
fetchSubscription,
|
||||
convertPdfArrayBuffer
|
||||
} from "../constant/Utils";
|
||||
import Loader from "../primitives/LoaderWithMsg";
|
||||
import HandleError from "../primitives/HandleError";
|
||||
@@ -170,8 +171,12 @@ function PdfRequestFiles() {
|
||||
if (documentData && documentData.length > 0) {
|
||||
const url = documentData[0] && documentData[0]?.URL;
|
||||
//convert document url in array buffer format to use embed widgets in pdf using pdf-lib
|
||||
const arrayBuffer = await fetch(url).then((res) => res.arrayBuffer());
|
||||
setPdfArrayBuffer(arrayBuffer);
|
||||
const arrayBuffer = await convertPdfArrayBuffer(url);
|
||||
if (arrayBuffer === "Error") {
|
||||
setHandleError("Error: Something went wrong!");
|
||||
} else {
|
||||
setPdfArrayBuffer(arrayBuffer);
|
||||
}
|
||||
if (isEnableSubscription) {
|
||||
await checkIsSubscribed(documentData[0]?.ExtUserPtr?.Email);
|
||||
}
|
||||
|
||||
@@ -33,7 +33,8 @@ import {
|
||||
getTenantDetails,
|
||||
replaceMailVaribles,
|
||||
copytoData,
|
||||
fetchSubscription
|
||||
fetchSubscription,
|
||||
convertPdfArrayBuffer
|
||||
} from "../constant/Utils";
|
||||
import RenderPdf from "../components/pdf/RenderPdf";
|
||||
import { useNavigate } from "react-router-dom";
|
||||
@@ -266,8 +267,12 @@ function PlaceHolderSign() {
|
||||
if (documentData && documentData.length > 0) {
|
||||
const url = documentData[0] && documentData[0]?.URL;
|
||||
//convert document url in array buffer format to use embed widgets in pdf using pdf-lib
|
||||
const arrayBuffer = await fetch(url).then((res) => res.arrayBuffer());
|
||||
setPdfArrayBuffer(arrayBuffer);
|
||||
const arrayBuffer = await convertPdfArrayBuffer(url);
|
||||
if (arrayBuffer === "Error") {
|
||||
setHandleError("Error: Something went wrong!");
|
||||
} else {
|
||||
setPdfArrayBuffer(arrayBuffer);
|
||||
}
|
||||
setExtUserId(documentData[0]?.ExtUserPtr?.objectId);
|
||||
if (isEnableSubscription) {
|
||||
checkIsSubscribed(documentData[0]?.ExtUserPtr?.Email);
|
||||
|
||||
@@ -28,7 +28,8 @@ import {
|
||||
getDate,
|
||||
textWidget,
|
||||
getTenantDetails,
|
||||
checkIsSubscribed
|
||||
checkIsSubscribed,
|
||||
convertPdfArrayBuffer
|
||||
} from "../constant/Utils";
|
||||
import { useParams } from "react-router-dom";
|
||||
import Tour from "reactour";
|
||||
@@ -193,8 +194,12 @@ function SignYourSelf() {
|
||||
setExtUserId(documentData[0]?.ExtUserPtr?.objectId);
|
||||
const url = documentData[0] && documentData[0]?.URL;
|
||||
//convert document url in array buffer format to use embed widgets in pdf using pdf-lib
|
||||
const arrayBuffer = await fetch(url).then((res) => res.arrayBuffer());
|
||||
setPdfArrayBuffer(arrayBuffer);
|
||||
const arrayBuffer = await convertPdfArrayBuffer(url);
|
||||
if (arrayBuffer === "Error") {
|
||||
setHandleError("Error: Something went wrong!");
|
||||
} else {
|
||||
setPdfArrayBuffer(arrayBuffer);
|
||||
}
|
||||
isCompleted = documentData[0].IsCompleted && documentData[0].IsCompleted;
|
||||
if (isCompleted) {
|
||||
setIsCompleted(true);
|
||||
|
||||
Reference in New Issue
Block a user