MCPcopy Index your code
hub / github.com/OpenSignLabs/OpenSign / handleStop

Function handleStop

apps/OpenSign/src/pages/PlaceHolderSign.jsx:746–802  ·  view source on GitHub ↗
(event, dragElement, signerId, key, widgetPageNumber)

Source from the content-addressed store, hash-verified

744
745 //function for set and update x and y postion after drag and drop signature tab
746 const handleStop = (event, dragElement, signerId, key, widgetPageNumber) => {
747 setFontColor();
748 setFontSize();
749 if (!isResize && isDragging) {
750 const effectivePageNumber = widgetPageNumber || pageNumber;
751 const dataNewPlace = addZIndex(signerPos, key, setZIndex);
752 let updateSignPos = [...signerPos];
753 updateSignPos.splice(0, updateSignPos.length, ...dataNewPlace);
754 const signId = signerId ? signerId : uniqueId; //? signerId : signerObjId;
755 const keyValue = key ? key : dragKey;
756 const containerScale = getContainerScale(
757 pdfOriginalWH,
758 effectivePageNumber,
759 containerWH
760 );
761 if (keyValue >= 0) {
762 const filterSignerPos = updateSignPos.filter(
763 (data) => data.Id === signId
764 );
765 if (filterSignerPos.length > 0) {
766 const getPlaceHolder = filterSignerPos[0].placeHolder;
767 const getPageNumer = getPlaceHolder.filter(
768 (data) => data.pageNumber === effectivePageNumber
769 );
770 if (getPageNumer.length > 0) {
771 const addSignPos = getPageNumer?.[0]?.pos?.map((url) => {
772 if (url.key === keyValue) {
773 return {
774 ...url,
775 xPosition: dragElement.x / containerScale,
776 yPosition: dragElement.y / containerScale
777 };
778 }
779 return url;
780 });
781
782 const newUpdateSignPos = getPlaceHolder.map((obj) => {
783 if (obj.pageNumber === effectivePageNumber) {
784 return { ...obj, pos: addSignPos };
785 }
786 return obj;
787 });
788 const newUpdateSigner = updateSignPos.map((obj) => {
789 if (signId) {
790 if (obj.Id === signId) {
791 return { ...obj, placeHolder: newUpdateSignPos };
792 }
793 }
794 return obj;
795 });
796 setSignerPos(newUpdateSigner);
797 }
798 }
799 }
800 }
801 setTimeout(() => setIsDragging(false), 200);
802 };
803 //function for delete signature block

Callers

nothing calls this directly

Calls 2

addZIndexFunction · 0.90
getContainerScaleFunction · 0.90

Tested by

no test coverage detected