diff --git a/microfrontends/SignDocuments/src/Component/WidgetComponent/dropdownWidgetOption.js b/microfrontends/SignDocuments/src/Component/WidgetComponent/dropdownWidgetOption.js
index 2ed82f9b8..03bd1e93c 100644
--- a/microfrontends/SignDocuments/src/Component/WidgetComponent/dropdownWidgetOption.js
+++ b/microfrontends/SignDocuments/src/Component/WidgetComponent/dropdownWidgetOption.js
@@ -1,4 +1,4 @@
-import React, { useState } from "react";
+import React, { useEffect, useState } from "react";
import { themeColor } from "../../utils/ThemeColor/backColor";
import ModalUi from "../../premitives/ModalUi";
function DropdownWidgetOption(props) {
@@ -8,7 +8,17 @@ function DropdownWidgetOption(props) {
]);
const [dropdownName, setDropdownName] = useState("Field-1");
- const [error, setError] = useState("");
+
+ useEffect(() => {
+ if (
+ props.currWidgetsDetails?.widgetName &&
+ props.currWidgetsDetails?.widgetOption
+ ) {
+ setDropdownName(props.currWidgetsDetails?.widgetName);
+ setDropdownOptionList(props.currWidgetsDetails?.widgetOption);
+ }
+ }, [props.currWidgetsDetails]);
+
const handleInputChange = (index, value) => {
setDropdownOptionList((prevInputs) => {
const newInputs = [...prevInputs];
@@ -28,19 +38,10 @@ function DropdownWidgetOption(props) {
setDropdownOptionList(getUpdatedOptions);
};
const handleSaveOption = () => {
- const existEmptyOption = dropdownOptionList.some((data) => data === "");
-
- if (existEmptyOption) {
- setError("Enter all option");
- setTimeout(() => {
- setError("");
- }, 1000);
- } else {
- props.handleSaveDropdownOptions(dropdownName, dropdownOptionList);
- props.setShowDropdown(false);
- setDropdownOptionList(["option-1", "option-2"]);
- setDropdownName("Field-1");
- }
+ props.handleSaveWidgetsOptions(dropdownName, dropdownOptionList);
+ props.setShowDropdown(false);
+ setDropdownOptionList(["option-1", "option-2"]);
+ setDropdownName("Field-1");
};
return (
@@ -48,99 +49,102 @@ function DropdownWidgetOption(props) {
props.setShowDropdown(false)}
>
-
-
-
setDropdownName(e.target.value)}
- className="drodown-input"
- />
-
+
-
- {error}
-
-
- {/* */}
+ Save
+
+
);
diff --git a/microfrontends/SignDocuments/src/Component/WidgetComponent/placeholder.js b/microfrontends/SignDocuments/src/Component/WidgetComponent/placeholder.js
index 044964f39..715bfc9ee 100644
--- a/microfrontends/SignDocuments/src/Component/WidgetComponent/placeholder.js
+++ b/microfrontends/SignDocuments/src/Component/WidgetComponent/placeholder.js
@@ -188,6 +188,7 @@ function Placeholder(props) {
props.setSignKey(props.pos.key);
props.setUniqueId(props.data.Id);
props.setWidgetType(props.pos.type);
+ props.setCurrWidgetsDetails(props.pos);
}}
onTouchEnd={(e) => {
e.stopPropagation();
@@ -203,6 +204,7 @@ function Placeholder(props) {
props.setSignKey(props.pos.key);
props.setUniqueId(props.data.Id);
props.setWidgetType(props.pos.type);
+ props.setCurrWidgetsDetails(props.pos);
}}
class="fa-solid fa-gear settingIcon"
style={{
@@ -214,7 +216,7 @@ function Placeholder(props) {
props.pos.type === "company" ||
props.pos.type === "job title"
? "49px"
- : "17px",
+ : "23px",
top:
props.pos.type === "text" ||
props.pos.type === "email" ||
@@ -222,7 +224,7 @@ function Placeholder(props) {
props.pos.type === "company" ||
props.pos.type === "job title"
? "-17px"
- : "-35px"
+ : "-28px"
}}
>
)}
@@ -244,11 +246,11 @@ function Placeholder(props) {
color: "#188ae2",
right:
props.pos.type === "checkbox" || props.pos.type === "radio"
- ? "6px"
+ ? "8px"
: "32px",
top:
props.pos.type === "checkbox" || props.pos.type === "radio"
- ? "-35px"
+ ? "-28px"
: "-18px"
}}
>
@@ -259,7 +261,7 @@ function Placeholder(props) {
id="menu-container"
style={{
zIndex: "99",
- top: "-27px",
+ top: isMobile ? "-17px" : "-27px",
left: props.isPlaceholder ? "-12px" : "5px"
}}
className={isShowDateFormat ? "dropdown show" : "dropdown"}
@@ -350,12 +352,12 @@ function Placeholder(props) {
right:
(props.pos.type === "checkbox" || props.pos.type === "radio") &&
props.isPlaceholder
- ? "-11px"
+ ? "-9px"
: "12px",
top:
(props.pos.type === "checkbox" || props.pos.type === "radio") &&
props.isPlaceholder
- ? "-35px"
+ ? "-28px"
: "-18px"
}}
>
@@ -385,12 +387,12 @@ function Placeholder(props) {
right:
(props.pos.type === "checkbox" || props.pos.type === "radio") &&
props.isPlaceholder
- ? "-30px"
+ ? "-27px"
: "-8px",
top:
(props.pos.type === "checkbox" || props.pos.type === "radio") &&
props.isPlaceholder
- ? "-35px"
+ ? "-28px"
: "-18px"
}}
>
@@ -502,13 +504,13 @@ function Placeholder(props) {
right={
(props.pos.type === "checkbox" || props.pos.type === "radio") &&
props.isPlaceholder
- ? -28
+ ? -21
: -12
}
top={
(props.pos.type === "checkbox" || props.pos.type === "radio") &&
props.isPlaceholder
- ? -28
+ ? -21
: -11
}
/>
diff --git a/microfrontends/SignDocuments/src/Component/WidgetComponent/placeholderBorder.js b/microfrontends/SignDocuments/src/Component/WidgetComponent/placeholderBorder.js
index 135f9572f..ca45b22ba 100644
--- a/microfrontends/SignDocuments/src/Component/WidgetComponent/placeholderBorder.js
+++ b/microfrontends/SignDocuments/src/Component/WidgetComponent/placeholderBorder.js
@@ -2,17 +2,13 @@ import React from "react";
import { themeColor } from "../../utils/ThemeColor/backColor";
import { defaultWidthHeight, resizeBorderExtraWidth } from "../../utils/Utils";
function PlaceholderBorder(props) {
- const getResizeBorderExtraWidth = resizeBorderExtraWidth();
- const defaultWidth =
+ const getResizeBorderExtraWidth =
(props.pos.type === "checkbox" || props.pos.type === "radio") &&
props.isPlaceholder
- ? 50
- : defaultWidthHeight(props.pos.type).width;
- const defaultHeight =
- (props.pos.type === "checkbox" || props.pos.type === "radio") &&
- props.isPlaceholder
- ? 50
- : defaultWidthHeight(props.pos.type).height;
+ ? 38
+ : resizeBorderExtraWidth();
+ const defaultWidth = defaultWidthHeight(props.pos.type).width;
+ const defaultHeight = defaultWidthHeight(props.pos.type).height;
return (
{
let isValidate = regexValidation.test(inputValue);
@@ -70,7 +73,7 @@ function PlaceholderType(props) {
useEffect(() => {
onChangeInput(
- isCheckedRadio,
+ isCheckedRadio.selectValue,
props.pos.key,
props.xyPostion,
props.index,
@@ -540,18 +543,31 @@ function PlaceholderType(props) {
);
case "radio":
return (
-
+
+ {props.pos?.widgetOption?.map((data, ind) => {
+ return (
+ {
+ setIsCheckedRadio({
+ isChecked: !isCheckedRadio,
+ selectValue: data
+ });
+ }}
+ />
+ );
+ })}
+
);
default:
diff --git a/microfrontends/SignDocuments/src/Component/component/renderPdf.js b/microfrontends/SignDocuments/src/Component/component/renderPdf.js
index 5a7f55012..612549cc8 100644
--- a/microfrontends/SignDocuments/src/Component/component/renderPdf.js
+++ b/microfrontends/SignDocuments/src/Component/component/renderPdf.js
@@ -59,7 +59,8 @@ function RenderPdf({
setIsValidate,
setWidgetType,
setValidateAlert,
- setIsRadio
+ setIsRadio,
+ setCurrWidgetsDetails
}) {
const isMobile = window.innerWidth < 767;
const newWidth = containerWH.width;
@@ -242,106 +243,6 @@ function RenderPdf({
return (
pos && (
- {/* {
- if (data.signerObjId === signerObjectId) {
- setIsSignPad(true);
- setSignKey(pos.key);
- setIsStamp(pos.isStamp);
- }
- }}
- onResize={(e, direction, ref, delta, position) => {
- e.stopPropagation();
- handleImageResize(
- ref,
- pos.key,
- data.Id,
- position,
- signerPos,
- pageNumber,
- setSignerPos,
- pdfOriginalWidth,
- containerWH,
- true
- );
- }}
- lockAspectRatio={
- pos.Width ? pos.Width / pos.Height : 2.5
- }
- default={{
- x: xPos(pos),
- y: yPos(pos)
- }}
- >
-
- {data.signerObjId === signerObjectId && (
-
- )}
- {pos.SignUrl ? (
-
![no img]()
{
- setIsSignPad(true);
- setSignKey(pos.key);
- }}
- src={pos.SignUrl}
- style={{
- width: "100%",
- height: "100%",
- objectFit: "contain"
- }}
- />
- ) : (
- pdfDetails[0].Signers.map((signerData, key) => {
- return (
- signerData.objectId === data.signerObjId && (
-
- {signerData.Name}
-
- )
- );
- })
- )}
-
- */}
{
return (
- // handleTabDrag(pos.key)}
- // size={{
- // width: posWidth(pos),
- // height: posHeight(pos)
- // }}
- // // size={{
- // // width: pos.Width ? pos.Width : 150,
- // // height: pos.Height ? pos.Height : 60
- // // }}
- // lockAspectRatio={
- // pos.Width ? pos.Width / pos.Height : 2.5
- // }
- // onDragStop={
- // (event, dragElement) =>
- // handleStop(
- // event,
- // dragElement,
- // data.Id,
- // pos.key
- // )
- // // data.signerObjId,
- // }
- // // default={{
- // // x: pos.xPosition,
- // // y: pos.yPosition
- // // }}
- // default={{
- // x: xPos(pos),
- // y: yPos(pos)
- // }}
- // onResizeStart={() => {
- // setIsResize(true);
- // }}
- // onResizeStop={() => {
- // setIsResize && setIsResize(false);
- // }}
- // onResize={(
- // e,
- // direction,
- // ref,
- // delta,
- // position
- // ) => {
- // handleImageResize(
- // ref,
- // pos.key,
- // data.Id,
- // position,
- // signerPos,
- // pageNumber,
- // setSignerPos,
- // pdfOriginalWidth,
- // containerWH,
- // true
- // );
- // }}
- // >
- //
- //
- // {
- // if (!isDragging) {
- // handleLinkUser(data.Id);
- // setUniqueId(data.Id);
- // }
- // }}
- // onTouchEnd={() => {
- // if (!isDragging) {
- // handleLinkUser(data.Id);
- // setUniqueId(data.Id);
- // }
- // const dataNewPlace = addZIndex(
- // signerPos,
- // pos.key,
- // setZIndex
- // );
- // setSignerPos((prevState) => {
- // const newState = [...prevState];
- // newState.splice(
- // 0,
- // signerPos.length,
- // ...dataNewPlace
- // );
- // return newState;
- // });
- // }}
- // >
- //
{
- // e.stopPropagation();
- // handleLinkUser(data.Id);
- // setUniqueId(data.Id);
- // }}
- // onClick={(e) => {
- // e.stopPropagation();
- // handleLinkUser(data.Id);
- // setUniqueId(data.Id);
- // }}
- // style={{
- // color: "#188ae2"
- // }}
- // >
- //
{
- // e.stopPropagation();
- // setIsPageCopy(true);
- // setSignKey(pos.key);
- // setSignerObjId(data.signerObjId);
- // setUniqueId(data.Id);
- // }}
- // onClick={(e) => {
- // e.stopPropagation();
- // setIsPageCopy(true);
- // setSignKey(pos.key);
- // setSignerObjId(data.signerObjId);
- // setUniqueId(data.Id);
- // }}
- // style={{
- // color: "#188ae2"
- // }}
- // >
- //
{
- // e.stopPropagation();
- // handleDeleteSign(pos.key, data.Id);
- // }}
- // onClick={(e) => {
- // e.stopPropagation();
- // handleDeleteSign(pos.key, data.Id);
- // // data.signerObjId
- // }}
- // style={{
- // color: "#188ae2"
- // }}
- // >
-
- //
- //
{pos.type}
- // {handleUserName(
- // data.signerObjId,
- // data.Role
- // )}{" "}
- //
- //
- //
);
@@ -662,138 +386,6 @@ function RenderPdf({
data.pos.map((pos) => {
return (
pos && (
- // handleTabDrag(pos.key)}
- // onDragStop={handleStop}
- // onResize={(
- // e,
- // direction,
- // ref,
- // delta,
- // position
- // ) => {
- // handleSignYourselfImageResize(
- // ref,
- // pos.key,
- // xyPostion,
- // index,
- // setXyPostion
- // );
- // }}
- // >
- //
- //
- // {
- // if (!isDragging && isMobile) {
- // setTimeout(() => {
- // e.stopPropagation();
- // setIsSignPad(true);
- // setSignKey(pos.key);
- // setIsStamp(pos.isStamp);
- // }, 500);
- // }
- // }}
- // >
- //
{
- // e.stopPropagation();
- // setIsPageCopy(true);
- // setSignKey(pos.key);
- // }}
- // style={{
- // color: "#188ae2"
- // }}
- // >
- //
{
- // e.stopPropagation();
- // if (data) {
- // handleDeleteSign(
- // pos.key,
- // data.signerObjId
- // );
- // } else {
- // handleDeleteSign(pos.key);
- // setIsStamp(false);
- // }
- // }}
- // style={{
- // color: "#188ae2"
- // }}
- // >
-
- // {pos.SignUrl ? (
- //
- //

- //
- // ) : (
- //
- // {pos.isStamp ? "stamp" : "signature"}
- //
- // )}
- //
- //
{
return (
- // {
- // if (!isDragging) {
- // handleLinkUser(data.Id);
- // setUniqueId(data.Id);
- // }
- // const dataNewPlace = addZIndex(
- // signerPos,
- // pos.key,
- // setZIndex
- // );
- // setSignerPos((prevState) => {
- // const newState = [...prevState];
- // newState.splice(
- // 0,
- // signerPos.length,
- // ...dataNewPlace
- // );
- // return newState;
- // });
- // }}
- // key={pos.key}
- // enableResizing={{
- // top: false,
- // right: false,
- // bottom: false,
- // left: false,
- // topRight: false,
- // bottomRight: true,
- // bottomLeft: false,
- // topLeft: false
- // }}
- // bounds="parent"
- // style={{
- // cursor: "all-scroll",
- // background: data.blockColor,
- // zIndex: pos.zIndex
- // }}
- // className="signYourselfBlock"
- // onDrag={() => handleTabDrag(pos.key)}
- // size={{
- // width: posWidth(pos),
- // height: posHeight(pos)
- // }}
- // lockAspectRatio={
- // pos.Width
- // ? pos.Width / pos.Height
- // : 2.5
- // }
- // onDragStop={
- // (event, dragElement) =>
- // handleStop(
- // event,
- // dragElement,
- // data.Id,
- // pos.key
- // )
- // // data.signerObjId,
- // }
- // // default={{
- // // x: pos.xPosition,
- // // y: pos.yPosition
- // // }}
- // default={{
- // x: xPos(pos),
- // y: yPos(pos)
- // }}
- // onResizeStart={() => {
- // setIsResize(true);
- // }}
- // onResizeStop={() => {
- // setIsResize && setIsResize(false);
- // }}
- // onResize={(
- // e,
- // direction,
- // ref,
- // delta,
- // position
- // ) => {
- // e.stopPropagation();
- // handleImageResize(
- // ref,
- // pos.key,
- // data.Id, //data.signerObjId,
- // position,
- // signerPos,
- // pageNumber,
- // setSignerPos,
- // pdfOriginalWidth,
- // containerWH,
- // false
- // );
- // }}
- // >
- //
- //
- //
- //
{
- // e.stopPropagation();
- // handleLinkUser(data.Id);
- // setUniqueId(data.Id);
- // }}
- // style={{
- // color: "#188ae2"
- // }}
- // >
- //
{
- // e.stopPropagation();
- // setIsPageCopy(true);
- // setSignKey(pos.key);
- // setUniqueId(data.Id);
- // setSignerObjId(
- // data.signerObjId
- // );
- // }}
- // style={{
- // color: "#188ae2"
- // }}
- // >
- //
{
- // e.stopPropagation();
- // handleDeleteSign(
- // pos.key,
- // data.Id
- // );
- // // data.signerObjId
- // }}
- // style={{
- // color: "#188ae2"
- // }}
- // >
-
- //
- // {pos.isStamp ? (
- //
stamp
- // ) : (
- //
signature
- // )}
- // {handleUserName(
- // data.signerObjId,
- // data.Role
- // )}
- //
- //
- //
);
@@ -1123,72 +555,6 @@ function RenderPdf({
data.pos.map((pos) => {
return (
pos && (
- // handleTabDrag(pos.key)}
- // size={{
- // width: pos.Width ? pos.Width : 150,
- // height: pos.Height ? pos.Height : 60
- // }}
- // onDragStop={handleStop}
- // default={{
- // x: pos.xPosition,
- // y: pos.yPosition
- // }}
- // onClick={() => {
- // if (!isDragging) {
- // setIsSignPad(true);
- // setSignKey(pos.key);
- // setIsStamp(pos.isStamp);
- // }
- // }}
- // onResize={(
- // e,
- // direction,
- // ref,
- // delta,
- // position
- // ) => {
- // e.stopPropagation();
- // handleSignYourselfImageResize(
- // ref,
- // pos.key,
- // xyPostion,
- // index,
- // setXyPostion
- // );
- // }}
- // >
- //
- //
- //
- //
{
+ const handleSaveWidgetsOptions = (dropdownName, dropdownOptions) => {
const filterSignerPos = signerPos.filter((data) => data.Id === uniqueId);
if (filterSignerPos.length > 0) {
const getPlaceHolder = filterSignerPos[0].placeHolder;
@@ -918,11 +917,22 @@ function PlaceHolderSign() {
const getPosData = getXYdata;
const addSignPos = getPosData.map((position, ind) => {
if (position.key === signKey) {
- return {
- ...position,
- widgetName: dropdownName,
- widgetOption: dropdownOptions
- };
+ if (widgetType === "radio") {
+ return {
+ ...position,
+ widgetName: dropdownName,
+ widgetOption: dropdownOptions,
+ Height: position.Height
+ ? position.Height + 15
+ : defaultWidthHeight(widgetType).width + 15
+ };
+ } else {
+ return {
+ ...position,
+ widgetName: dropdownName,
+ widgetOption: dropdownOptions
+ };
+ }
}
return position;
});
@@ -1068,12 +1078,6 @@ function PlaceHolderSign() {
widgetStatus: selectRequiredType
};
}
- } else if (widgetType === "radio") {
- return {
- ...position,
- widgetName: radioData.label,
- widgetOption: [radioData.data]
- };
} else {
return {
...position,
@@ -1099,13 +1103,11 @@ function PlaceHolderSign() {
setSignerPos(newUpdateSigner);
setIsCheckboxRequired(false);
- setIsRadio(false);
- setRadioData({});
+
setSelectRequiredType("Optional");
}
}
};
-
const handleValidateInput = (e) => {
if (
textValidate === "email" ||
@@ -1121,16 +1123,6 @@ function PlaceHolderSign() {
}, 1500);
}
};
- const handleInputChange = (e) => {
- const { name, value } = e.target;
-
- // Update the state with the new value for the corresponding input
- setRadioData((prevValues) => ({
- ...prevValues,
- [name]: value
- }));
- };
-
return (
<>
@@ -1461,83 +1453,7 @@ function PlaceHolderSign() {
-
-
-
+
{/* pdf header which contain funish back button */}
)}
diff --git a/microfrontends/SignDocuments/src/utils/Utils.js b/microfrontends/SignDocuments/src/utils/Utils.js
index ab8692e21..91e3bc440 100644
--- a/microfrontends/SignDocuments/src/utils/Utils.js
+++ b/microfrontends/SignDocuments/src/utils/Utils.js
@@ -1058,13 +1058,18 @@ export const multiSignEmbed = async (
dropdown.enableReadOnly();
} else if (imgData.type === "radio") {
const rocketField = form.createRadioGroup(randomboxId);
- rocketField.addOptionToPage(imgData.widgetOption[0], page, {
- x: xPos(imgData),
- y: yPos(imgData),
- width: scaleWidth,
- height: scaleHeight
+ let addYPosition = 20;
+ imgData.widgetOption.map((data, ind) => {
+ rocketField.addOptionToPage(data, page, {
+ x: xPos(imgData),
+ y: ind === 0 ? yPos(imgData) : yPos(imgData) - addYPosition,
+ width: 11,
+ height: 11
+ });
+ addYPosition = ind !== 0 && addYPosition + 20;
});
- rocketField.select(imgData.widgetOption[0]);
+
+ rocketField.select(imgData.widgetValue);
rocketField.enableReadOnly();
} else {
page.drawImage(img, {