Skip to content

Commit 87c65e4

Browse files
#204 - Fix issue due to Signature URL validation
1 parent 2b73087 commit 87c65e4

File tree

6 files changed

+27
-9
lines changed

6 files changed

+27
-9
lines changed

microfrontends/SignDocuments/package-lock.json

Lines changed: 9 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

microfrontends/SignDocuments/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
"react-scrollbars-custom": "^4.1.1",
3333
"react-signature-canvas": "^1.0.6",
3434
"reactour": "^1.19.1",
35+
"validator": "^13.11.0",
3536
"web-vitals": "^2.1.4"
3637
},
3738
"scripts": {

microfrontends/SignDocuments/src/Component/PdfRequestFiles.js

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@ import RenderAllPdfPage from "./component/renderAllPdfPage";
1414
import {
1515
contractDocument,
1616
getBase64FromIMG,
17-
getBase64FromUrl
17+
getBase64FromUrl,
18+
urlValidator
1819
} from "../utils/Utils";
1920
import Loader from "./component/loader";
2021
import HandleError from "./component/HandleError";
@@ -346,7 +347,7 @@ function PdfRequestFiles() {
346347
imgUrlList.map(async (data) => {
347348
//cheking signUrl is defau;t signature url of custom url
348349
let ImgUrl = data.SignUrl;
349-
const checkUrl = ImgUrl.includes("https:");
350+
const checkUrl = urlValidator(ImgUrl);
350351

351352
//if default signature url then convert it in base 64
352353
if (checkUrl) {
@@ -434,7 +435,7 @@ function PdfRequestFiles() {
434435
imgUrlList.map(async (url) => {
435436
let signUrl = url.SignUrl;
436437

437-
const checkUrl = url.SignUrl.includes("https:");
438+
const checkUrl = urlValidator(signUrl);
438439
if (checkUrl) {
439440
signUrl = signUrl + "?get";
440441
}

microfrontends/SignDocuments/src/Component/SignYourselfPdf.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ import HandleError from "./component/HandleError";
2424
import Nodata from "./component/Nodata";
2525
import Header from "./component/header";
2626
import RenderPdf from "./component/renderPdf";
27-
import { contractUsers, contactBook } from "../utils/Utils";
27+
import { contractUsers, contactBook, urlValidator } from "../utils/Utils";
2828
//For signYourself inProgress section signer can add sign and complete doc sign.
2929
function SignYourSelf() {
3030
const [pdfDetails, setPdfDetails] = useState([]);
@@ -444,7 +444,7 @@ function SignYourSelf() {
444444
imgUrlList.map(async (data) => {
445445
let ImgUrl = data.SignUrl;
446446
//cheking signUrl is defau;t signature url of custom url
447-
const checkUrl = ImgUrl.includes("https:");
447+
const checkUrl = urlValidator(ImgUrl);
448448

449449
//if default signature url then convert it in base 64
450450
if (checkUrl) {
@@ -524,7 +524,7 @@ function SignYourSelf() {
524524
imgUrlList.map(async (url) => {
525525
let signUrl = url.SignUrl;
526526

527-
const checkUrl = url.SignUrl.includes("https:");
527+
const checkUrl = urlValidator(signUrl);
528528
if (checkUrl) {
529529
signUrl = signUrl + "?get";
530530
}

microfrontends/SignDocuments/src/Component/recipientSignPdf.js

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,8 @@ import {
1616
getBase64FromIMG,
1717
contractUsers,
1818
contactBook,
19-
contractDocument
19+
contractDocument,
20+
urlValidator
2021
} from "../utils/Utils";
2122
import Tour from "reactour";
2223
import Signedby from "./component/signedby";
@@ -445,7 +446,7 @@ function EmbedPdfImage() {
445446
imgUrlList.map(async (data) => {
446447
//cheking signUrl is defau;t signature url of custom url
447448
let ImgUrl = data.SignUrl;
448-
const checkUrl = ImgUrl.includes("https:");
449+
const checkUrl = urlValidator(ImgUrl);
449450

450451
//if default signature url then convert it in base 64
451452
if (checkUrl) {
@@ -523,7 +524,7 @@ function EmbedPdfImage() {
523524
const images = await Promise.all(
524525
imgUrlList.map(async (url) => {
525526
let signUrl = url.SignUrl;
526-
const checkUrl = url.SignUrl.includes("https:");
527+
const checkUrl = urlValidator(signUrl);
527528
if (checkUrl) {
528529
signUrl = signUrl + "?get";
529530
}

microfrontends/SignDocuments/src/utils/Utils.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import axios from "axios";
2+
import validator from 'validator';
23

34
export async function getBase64FromUrl(url) {
45
const data = await fetch(url);
@@ -299,3 +300,8 @@ export const contactBook = async (objectId) => {
299300
});
300301
return result;
301302
};
303+
304+
// function for validating URLs
305+
export function urlValidator(url) {
306+
return validator.isURL(url);
307+
};

0 commit comments

Comments
 (0)