From af52bb30f5533607e1203a096906fedeec73b16f Mon Sep 17 00:00:00 2001 From: RaktimaNXG Date: Thu, 27 Jun 2024 12:23:39 +0530 Subject: [PATCH 1/8] fix: signer's list order issue after change order of signers in tamplate and placeholder flow --- .../src/components/pdf/RecipientList.js | 28 +++++++++++++------ apps/OpenSign/src/pages/PlaceHolderSign.js | 1 + .../OpenSign/src/pages/TemplatePlaceholder.js | 1 + 3 files changed, 22 insertions(+), 8 deletions(-) diff --git a/apps/OpenSign/src/components/pdf/RecipientList.js b/apps/OpenSign/src/components/pdf/RecipientList.js index b31c907d4..b7c3b69d8 100644 --- a/apps/OpenSign/src/components/pdf/RecipientList.js +++ b/apps/OpenSign/src/components/pdf/RecipientList.js @@ -61,15 +61,27 @@ const RecipientList = (props) => { ); //splice method is used to replace or add new value in array at specific index remainingItems.splice(index, 0, ...draggedItem); - //set current draggable recipient details,objectId,index,contract_className ... after replace recipient list - props.setSignersData(remainingItems); - props.setSignerObjId(remainingItems[index]?.objectId || ""); - props.setIsSelectId(index); - props.setContractName(remainingItems[index]?.className || ""); - props.setUniqueId(remainingItems[index]?.Id); - props.setRoleName(remainingItems[index]?.Role); - props.setBlockColor(remainingItems[index]?.blockColor); + props?.setSignersData(remainingItems); + props?.setSignerObjId(remainingItems[index]?.objectId || ""); + props?.setIsSelectId(index); + props?.setContractName(remainingItems[index]?.className || ""); + props?.setUniqueId(remainingItems[index]?.Id); + props?.setRoleName(remainingItems[index]?.Role); + props?.setBlockColor(remainingItems[index]?.blockColor); + + //change order of placeholder's list using sorting method + //`remainingItems` is correct order of signers after change order + const changeOrderSignerList = props?.signerPos.sort((a, b) => { + //`indexA` and `indexB` is to get element position using index in correct order array + const indexA = remainingItems.findIndex((item) => item.Id === a.Id); + const indexB = remainingItems.findIndex((item) => item.Id === b.Id); + //and then compare `indexA - indexB` value + //if positive it means indexB element comes before indexA then need to sorting + //if negative it means indexA element is on correct position do not need to sorting + return indexA - indexB; + }); + props?.setSignerPos(changeOrderSignerList); }; return ( <> diff --git a/apps/OpenSign/src/pages/PlaceHolderSign.js b/apps/OpenSign/src/pages/PlaceHolderSign.js index e550a00de..1a37a5cb7 100644 --- a/apps/OpenSign/src/pages/PlaceHolderSign.js +++ b/apps/OpenSign/src/pages/PlaceHolderSign.js @@ -2151,6 +2151,7 @@ function PlaceHolderSign() { aria-disabled > { Date: Thu, 27 Jun 2024 13:20:17 +0530 Subject: [PATCH 2/8] fix: inconsistent font size and color for all type text widgets in the template flow --- apps/OpenSign/src/pages/PlaceHolderSign.js | 4 ++-- apps/OpenSign/src/pages/TemplatePlaceholder.js | 5 ++--- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/apps/OpenSign/src/pages/PlaceHolderSign.js b/apps/OpenSign/src/pages/PlaceHolderSign.js index 1a37a5cb7..a6fc66d10 100644 --- a/apps/OpenSign/src/pages/PlaceHolderSign.js +++ b/apps/OpenSign/src/pages/PlaceHolderSign.js @@ -1708,8 +1708,8 @@ function PlaceHolderSign() { ...position, options: { ...position.options, - fontSize: fontSize, - fontColor: fontColor + fontSize: fontSize || currWidgetsDetails?.options?.fontSize, + fontColor: fontColor || currWidgetsDetails?.options?.fontColor } }; } diff --git a/apps/OpenSign/src/pages/TemplatePlaceholder.js b/apps/OpenSign/src/pages/TemplatePlaceholder.js index 05d75f670..64e51eb00 100644 --- a/apps/OpenSign/src/pages/TemplatePlaceholder.js +++ b/apps/OpenSign/src/pages/TemplatePlaceholder.js @@ -1248,7 +1248,6 @@ const TemplatePlaceholder = () => { setIsRadio(false); setIsCheckbox(false); }; - const handleSaveFontSize = () => { const filterSignerPos = signerPos.filter((data) => data.Id === uniqueId); if (filterSignerPos.length > 0) { @@ -1267,8 +1266,8 @@ const TemplatePlaceholder = () => { ...position, options: { ...position.options, - fontSize: fontSize, - fontColor: fontColor + fontSize: fontSize || currWidgetsDetails?.options?.fontSize, + fontColor: fontColor || currWidgetsDetails?.options?.fontColor } }; } From de2154e6fe683d1439f09e85ef4da99038aca799 Mon Sep 17 00:00:00 2001 From: RaktimaNXG Date: Thu, 27 Jun 2024 17:30:21 +0530 Subject: [PATCH 3/8] fix: change add recipient and role ui design in mobile view and inconsistent font size and color combination in text widgets --- .../src/components/pdf/TextFontSetting.js | 8 +- .../src/components/pdf/WidgetComponent.js | 140 ++++++++---------- apps/OpenSign/src/pages/PlaceHolderSign.js | 23 +-- .../OpenSign/src/pages/TemplatePlaceholder.js | 18 +-- 4 files changed, 79 insertions(+), 110 deletions(-) diff --git a/apps/OpenSign/src/components/pdf/TextFontSetting.js b/apps/OpenSign/src/components/pdf/TextFontSetting.js index 1687513b6..13d5cc5de 100644 --- a/apps/OpenSign/src/components/pdf/TextFontSetting.js +++ b/apps/OpenSign/src/components/pdf/TextFontSetting.js @@ -19,7 +19,9 @@ function TextFontSetting(props) { props.setFontColor(e.target.value)} className="ml-[7px] op-select op-select-bordered op-select-sm focus:outline-none hover:border-base-content text-xs" diff --git a/apps/OpenSign/src/components/pdf/WidgetComponent.js b/apps/OpenSign/src/components/pdf/WidgetComponent.js index 6b812bbcc..d90012541 100644 --- a/apps/OpenSign/src/components/pdf/WidgetComponent.js +++ b/apps/OpenSign/src/components/pdf/WidgetComponent.js @@ -37,11 +37,10 @@ function WidgetComponent({ sendInOrder, isTemplateFlow, setBlockColor, - blockColor, - setIsAddSigner + setIsAddSigner, + blockColor }) { const [isSignersModal, setIsSignersModal] = useState(false); - const [, dropdown] = useDrag({ type: "BOX", item: { @@ -187,7 +186,6 @@ function WidgetComponent({ const isMobile = window.innerWidth < 767; const scrollContainerRef = useRef(null); const [widget, setWidget] = useState([]); - const color = [ "#93a3db", "#e6c3db", @@ -245,86 +243,70 @@ function WidgetComponent({ ? textWidgetData : widget; + const handleSelectRecipient = () => { + if ( + signersdata[isSelectListId]?.Email || + signersdata[isSelectListId]?.Role + ) { + const userData = + signersdata[isSelectListId]?.Name || signersdata[isSelectListId]?.Role; + const name = + userData?.length > 20 ? `${userData.slice(0, 20)}...` : userData; + return name; + } + }; + return ( <> {isMobile ? ( !isMailSend && ( -