{"version":3,"file":"static/js/main-d7496137.cabb39cd.js","mappings":"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","sources":["Components/DrawBoard/Nodes-Types/UserCardNode.js","Components/DrawBoard/Nodes-Types/UserStoryMapNode.js"],"sourcesContent":["import React, {\r\n useState,\r\n useRef,\r\n useCallback,\r\n useMemo,\r\n useEffect,\r\n memo,\r\n} from \"react\";\r\nimport {\r\n TextField,\r\n Box,\r\n IconButton,\r\n ClickAwayListener,\r\n Stack,\r\n Popover,\r\n} from \"@mui/material\";\r\nimport { Handle, NodeResizeControl, useStoreApi, useViewport } from \"reactflow\";\r\nimport { debounce } from \"lodash\";\r\nimport { useParams, useLocation } from \"react-router-dom\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport {\r\n convertToRgba,\r\n removeHTMLTags,\r\n toRgba,\r\n updateJson,\r\n} from \"../../../CommanFunctions/commanFunctions\";\r\nimport {\r\n IcHiring,\r\n IcLockLocked,\r\n IcLockUnLocked,\r\n IcSettingsOutlined,\r\n} from \"../../../assets/icon-components\";\r\nimport { IcMenuDotsVertical } from \"../../../assets/icon-components\";\r\nimport { Position, NodeToolbar } from \"reactflow\";\r\nimport { IcChangeBg } from \"../../../assets/icon-components\";\r\nimport ToolTipWithDisabled from \"../top-toolbar/components/ToolTipWithDisabled\";\r\nimport ColorPicker from \"react-best-gradient-color-picker\";\r\nimport { CustomTooltip } from \"../top-toolbar/components/CustomTooltip\";\r\nimport { CustomNameTooltip } from \"../top-toolbar/components/CustomTooltip\";\r\nimport { useReactFlow } from \"reactflow\";\r\nimport FrameMoreMenus from \"../../Node/frameNode/FrameMoreMenus\";\r\nimport SimpleCheckBox from \"../../../common-components/SimpleCheckBox\";\r\nimport { useUndoRedo } from \"../dndUndoRedo/UndoRedoProvider\";\r\nimport { useSelector } from \"react-redux\";\r\nimport useNodeSelectionStarted from \"../../../Utils/hooks/useNodeSelectionStarted\";\r\nimport { color } from \"../../../Utils/style/color/color\";\r\nimport CommonDivider from \"../../../common-components/CommonDivider\";\r\nimport { getNodePositionInsideParent } from \"../../../Utils/grouping-utils\";\r\nimport BackgroundTool from \"../../Node/common-components/nodeTopToolbar/components/BackgroundTool\";\r\nimport { EditorContent, useEditor } from \"@tiptap/react\";\r\nimport { tipTapExtensions } from \"../tip-tap-editor\";\r\n\r\nconst UserCardNode = (node) => {\r\n const cardRef = useRef(null);\r\n const boxRef = useRef(null);\r\n const user_data = localStorage.getItem(\"user_data\");\r\n const { setNodes, getNodes, getIntersectingNodes, getNode } = useReactFlow();\r\n const currNode = getNode(node?.id);\r\n const [hoveredItem, setHoveredItem] = useState(\"\");\r\n const [hovered, setHovered] = useState(false);\r\n const [isFocused, setIsFocused] = useState({\r\n isLocation: false,\r\n isTeam: false,\r\n });\r\n const currentNode = getNode(node?.id);\r\n const frameMoreOptionsRef = useRef(null);\r\n const [showFrameMoreOptions, setShowFrameMoreOptions] = useState(false);\r\n const borderPopupRef = useRef(null);\r\n const titleRef = useRef(null);\r\n const descriptionRef = useRef(null);\r\n const locationRef = useRef(null);\r\n const teamRef = useRef(null);\r\n useEffect(() => {\r\n document.addEventListener(\"mousedown\", handleClickOutside);\r\n return () => {\r\n document.removeEventListener(\"mousedown\", handleClickOutside);\r\n };\r\n }, []);\r\n const handleClickOutside = (event) => {\r\n if (\r\n borderPopupRef?.current &&\r\n borderPopupRef.current.contains(event.target)\r\n ) {\r\n setShowColor(true);\r\n } else {\r\n // setShowColor(false);\r\n }\r\n };\r\n const location = useLocation();\r\n const { undo, takeSnapshot } = useUndoRedo();\r\n const { id: architectureId } = useParams();\r\n const dispatch = useDispatch();\r\n const { copyAsImage } = useSelector((state) => state?.mindMapStore);\r\n const { isNodeSelectionStarted } = useNodeSelectionStarted({\r\n selected: node?.selected,\r\n });\r\n const [showColor, setShowColor] = useState(false);\r\n const [anchorEl, setAnchorEl] = React.useState(null);\r\n const [open, setOpen] = React.useState(false);\r\n const [showEdit, setShowEdit] = useState(false);\r\n const [showTextEditor, setShowTextEditor] = useState(false);\r\n const canBeOpen = open && Boolean(anchorEl);\r\n const [zoomPercentages, setZoomPercentages] = useState(100);\r\n const { zoom } = useViewport();\r\n const sizeAsPerZoom =\r\n (currentNode?.width > currentNode?.height\r\n ? currentNode?.width\r\n : currentNode?.height) * zoom || 100;\r\n const id = canBeOpen ? \"transition-popper\" : undefined;\r\n\r\n const store = useStoreApi();\r\n const handleClick = (event) => {\r\n setAnchorEl(event.currentTarget);\r\n setOpen((previousOpen) => !previousOpen);\r\n setShowFrameMoreOptions(false);\r\n };\r\n const isWidthLessthan25 = useMemo(\r\n () => zoomPercentages <= 25,\r\n [zoomPercentages]\r\n );\r\n const isWidthLessthan50 = useMemo(\r\n () => 25 < zoomPercentages && zoomPercentages <= 50,\r\n [zoomPercentages]\r\n );\r\n const isWidthLessthan100 = useMemo(\r\n () => 50 < zoomPercentages && zoomPercentages <= 100,\r\n [zoomPercentages]\r\n );\r\n\r\n const handleCheckboxToggle = (option) => {\r\n const newOptionValue = !node?.data?.[option];\r\n let updatedNodes;\r\n setNodes((nds) => {\r\n updatedNodes = nds.map((nd) => {\r\n if (nd.id === node?.id) {\r\n return {\r\n ...nd,\r\n data: {\r\n ...nd.data,\r\n [option]: newOptionValue,\r\n },\r\n };\r\n }\r\n return nd;\r\n });\r\n return updatedNodes;\r\n });\r\n debouncedUpdateJson(updatedNodes);\r\n };\r\n const handleInputChange = (value, name) => {\r\n let updatedNodes = [];\r\n setNodes((nds) => {\r\n updatedNodes = nds.map((nd) => {\r\n if (nd.id === node?.id) {\r\n return {\r\n ...nd,\r\n data: {\r\n ...nd.data,\r\n [name]: value,\r\n },\r\n };\r\n }\r\n return nd;\r\n });\r\n return updatedNodes;\r\n });\r\n debouncedUpdateJson(updatedNodes);\r\n };\r\n\r\n const debouncedUpdateJson = useCallback(\r\n debounce((tempNodes) => {\r\n let parsedData = {};\r\n if (user_data) {\r\n parsedData = JSON.parse(user_data);\r\n }\r\n const search = new URLSearchParams(location.search);\r\n const a_id = search.get(\"a_id\");\r\n updateJson({\r\n json: {\r\n architecture_json: {\r\n nodes: tempNodes.length > 0 ? tempNodes : getNodes(),\r\n lastUpdatedBy: parsedData?.user_id,\r\n },\r\n },\r\n id: architectureId,\r\n dispatch,\r\n undo,\r\n takeSnapshot,\r\n a_id,\r\n });\r\n }, 500),\r\n [updateJson, user_data, id, dispatch, undo]\r\n );\r\n\r\n useEffect(() => {\r\n if (currNode?.resize) {\r\n const titleHeight = titleRef?.current?.offsetHeight || 0;\r\n const descriptionHeight = descriptionRef?.current?.offsetHeight || 0;\r\n const locationHeight = locationRef?.current?.offsetHeight || 0;\r\n const teamHeight = teamRef?.current?.offsetHeight || 0;\r\n\r\n const totalHeight =\r\n titleHeight + descriptionHeight + locationHeight + teamHeight;\r\n\r\n let updatedNodes = [];\r\n const parsedData = user_data ? JSON.parse(user_data) : {};\r\n if (cardRef?.current?.offsetHeight < boxRef?.current?.offsetHeight + 30) {\r\n setNodes((prev) => {\r\n localStorage.setItem(\r\n \"architectureJson\",\r\n JSON.stringify({\r\n architecture_json: {\r\n nodes: prev,\r\n lastEvent: ``,\r\n },\r\n })\r\n );\r\n\r\n updatedNodes = prev.map((node) => {\r\n if (node?.id === currNode?.id) {\r\n return {\r\n ...node,\r\n height: totalHeight + 60,\r\n style: {\r\n ...node.style,\r\n height: totalHeight + 60,\r\n },\r\n };\r\n }\r\n return node;\r\n });\r\n\r\n return updatedNodes;\r\n });\r\n\r\n const search = new URLSearchParams(location.search);\r\n const a_id = search.get(\"a_id\");\r\n\r\n updateJson({\r\n json: {\r\n architecture_json: {\r\n nodes: updatedNodes,\r\n lastUpdatedBy: parsedData?.user_id,\r\n lastEvent: `editor_changed_${id}`,\r\n },\r\n },\r\n id: architectureId,\r\n dispatch,\r\n undo,\r\n a_id,\r\n });\r\n }\r\n }\r\n }, [\r\n node?.data?.teamShow,\r\n node?.data?.descriptionShow,\r\n node?.data?.locationShow,\r\n ]);\r\n\r\n const selectedNodes = getNodes()?.filter((val) => val?.selected)?.length;\r\n\r\n const isMultiNodeSelected = useMemo(() => {\r\n return selectedNodes > 1;\r\n }, [selectedNodes]);\r\n\r\n // const onResizeEnd = (event, node) => {\r\n // if (event.x > 330 && event.x < 650) {\r\n // setNodes((nds) =>\r\n // nds.map((n) => {\r\n // if (n?.id === node?.id) {\r\n // return {\r\n // ...n,\r\n // width: event.x,\r\n // height: event.y,\r\n // data: {\r\n // ...n.data,\r\n // width: event.x,\r\n // height: event.y,\r\n // },\r\n // style: {\r\n // width: event.x,\r\n // height: event.y,\r\n // },\r\n // };\r\n // }\r\n // return n;\r\n // })\r\n // );\r\n\r\n // let updatedNodes = [];\r\n // let parsedData = {};\r\n // if (user_data) {\r\n // parsedData = JSON.parse(user_data);\r\n // }\r\n // setNodes((prev) => {\r\n // localStorage.setItem(\r\n // \"architectureJson\",\r\n // JSON.stringify({\r\n // architecture_json: {\r\n // nodes: prev,\r\n // lastEvent: ``,\r\n // },\r\n // })\r\n // );\r\n // updatedNodes = prev?.map((_) => {\r\n // if (_?.id === node?.id) {\r\n // _ = JSON.parse(JSON.stringify(_));\r\n // _.style.width = Number(event?.x);\r\n // _.style.height = Number(cardRef?.current?.offsetHeight + 40);\r\n\r\n // return _;\r\n // } else {\r\n // return _;\r\n // }\r\n // });\r\n\r\n // return updatedNodes;\r\n // });\r\n\r\n // const search = new URLSearchParams(location.search);\r\n // const a_id = search.get(\"a_id\");\r\n // updateJson({\r\n // json: {\r\n // architecture_json: {\r\n // nodes: updatedNodes,\r\n // lastUpdatedBy: parsedData?.user_id,\r\n // lastEvent: `editor_changed_${node?.id}`,\r\n // },\r\n // },\r\n // id: architectureId,\r\n // dispatch,\r\n // undo,\r\n // a_id,\r\n // takeSnapshot,\r\n // });\r\n // }\r\n // };\r\n\r\n const onResize = (event, { width, height }) => {\r\n setNodes((prev) => {\r\n return prev?.map((val) => {\r\n if (val?.id === node?.id) {\r\n return {\r\n ...val,\r\n resize: true,\r\n style: {\r\n ...val?.style,\r\n width,\r\n height,\r\n },\r\n };\r\n } else {\r\n return val;\r\n }\r\n });\r\n });\r\n };\r\n\r\n const onResizeEnd = (node) => {\r\n let updatedNodes = [];\r\n let parsedData = {};\r\n if (user_data) {\r\n parsedData = JSON.parse(user_data);\r\n }\r\n setNodes((prev) => {\r\n localStorage.setItem(\r\n \"architectureJson\",\r\n JSON.stringify({\r\n architecture_json: {\r\n nodes: prev,\r\n lastEvent: ``,\r\n },\r\n })\r\n );\r\n updatedNodes = prev?.map((_) => {\r\n if (_?.id === node?.id) {\r\n _ = JSON.parse(JSON.stringify(_));\r\n _.style.width = Number(cardRef?.current?.offsetWidth);\r\n _.style.height = Number(cardRef?.current?.offsetHeight);\r\n return _;\r\n } else {\r\n return _;\r\n }\r\n });\r\n\r\n updatedNodes = updatedNodes?.map((n) => {\r\n const intersections = getIntersectingNodes(node, false);\r\n\r\n let groupNode = null;\r\n if (intersections?.length > 0) {\r\n groupNode = intersections[intersections?.length - 1];\r\n }\r\n\r\n if (\r\n node.type !== \"group\" &&\r\n node?.parentNode &&\r\n node?.parentNode === groupNode?.id\r\n ) {\r\n return n;\r\n } else if (\r\n intersections.length &&\r\n node?.parentNode !== groupNode?.id &&\r\n !node?.parentNode\r\n ) {\r\n if (n.id === groupNode.id) {\r\n return {\r\n ...n,\r\n className: \"\",\r\n };\r\n } else if (n.id === node.id && !n?.parentNode) {\r\n const position = getNodePositionInsideParent(n, groupNode) ?? {\r\n x: 0,\r\n y: 0,\r\n };\r\n return {\r\n ...n,\r\n position,\r\n parentNode: groupNode.id,\r\n };\r\n } else return n;\r\n } else if (\r\n node?.parentNode &&\r\n node?.parentNode !== groupNode?.id &&\r\n !groupNode\r\n ) {\r\n if ([node?.id].includes(n.id) && node?.parentNode) {\r\n const parentNode = store\r\n .getState()\r\n ?.nodeInternals?.get(node?.parentNode);\r\n if (parentNode) {\r\n return {\r\n ...n,\r\n position: {\r\n x: n.position.x + (parentNode?.positionAbsolute?.x ?? 0),\r\n y: n.position.y + (parentNode?.positionAbsolute?.y ?? 0),\r\n },\r\n expandParent: undefined,\r\n parentNode: undefined,\r\n };\r\n } else {\r\n return n;\r\n }\r\n } else {\r\n return n;\r\n }\r\n } else if (\r\n node?.parentNode &&\r\n node?.parentNode !== groupNode?.id &&\r\n groupNode\r\n ) {\r\n if (n?.id === node?.id) {\r\n n = structuredClone(n);\r\n n.parentNode = groupNode?.id;\r\n n.position = {\r\n x:\r\n (node?.positionAbsolute?.x || 0) -\r\n (groupNode?.positionAbsolute?.x || 0),\r\n y:\r\n (node?.positionAbsolute?.y || 0) -\r\n (groupNode?.positionAbsolute?.y || 0),\r\n };\r\n return n;\r\n } else return n;\r\n } else {\r\n if (n?.type === \"group\") {\r\n }\r\n return n;\r\n }\r\n });\r\n\r\n return updatedNodes;\r\n });\r\n\r\n const search = new URLSearchParams(location.search);\r\n const a_id = search.get(\"a_id\");\r\n updateJson({\r\n json: {\r\n architecture_json: {\r\n nodes: updatedNodes,\r\n lastUpdatedBy: parsedData?.user_id,\r\n lastEvent: `editor_changed_${node?.id}`,\r\n },\r\n },\r\n id,\r\n dispatch,\r\n undo,\r\n a_id,\r\n takeSnapshot,\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n if (!node?.selected) {\r\n setShowFrameMoreOptions(false);\r\n setShowColor(false);\r\n setShowEdit(false);\r\n setShowTextEditor(false);\r\n setIsFocused({ isLocation: false });\r\n setIsFocused({ isTeam: false });\r\n }\r\n }, [node?.selected]);\r\n\r\n const handleColorChange = (color) => {\r\n let updatedNodes = [];\r\n setNodes((nds) => {\r\n updatedNodes = nds.map((nd) => {\r\n if (nd.id === node?.id) {\r\n return {\r\n ...nd,\r\n data: {\r\n ...nd.data,\r\n cardColor: color,\r\n },\r\n };\r\n }\r\n return nd;\r\n });\r\n return updatedNodes;\r\n });\r\n debouncedUpdateJson(updatedNodes);\r\n };\r\n\r\n const timerForEditor = useRef();\r\n const selectedTextRef = useRef();\r\n\r\n const onEditorClick = (event) => {\r\n event.stopPropagation();\r\n clearTimeout(timerForEditor.current);\r\n // Check if there is an active text selection\r\n if (!selectedTextRef.current) {\r\n const selection = window.getSelection();\r\n if (selection && selection.type === \"Range\") {\r\n selectedTextRef.current = true;\r\n return; // Do nothing if there is an active text selection\r\n }\r\n } else {\r\n selectedTextRef.current = false;\r\n }\r\n if (event.detail === 1) {\r\n timerForEditor.current = setTimeout(() => {\r\n // setIsEditorShow(true);\r\n setTimeout(() => {\r\n if (editor) {\r\n editor.commands.focus();\r\n const pos = editor.view.posAtCoords({\r\n left: event.clientX,\r\n top: event.clientY,\r\n });\r\n if (pos) {\r\n editor.commands.setTextSelection(pos.pos);\r\n }\r\n }\r\n if (titleEditor) {\r\n titleEditor.commands.focus();\r\n const pos = titleEditor.view.posAtCoords({\r\n left: event.clientX,\r\n top: event.clientY,\r\n });\r\n if (pos) {\r\n titleEditor.commands.setTextSelection(pos.pos);\r\n }\r\n }\r\n }, 0);\r\n }, 250);\r\n } else if (event.detail === 2) {\r\n }\r\n };\r\n\r\n const debouncedUpdateHTML = useMemo(() => {\r\n return debounce((updatedNodes) => {\r\n const search = new URLSearchParams(location.search);\r\n const a_id = search.get(\"a_id\");\r\n updateJson({\r\n json: {\r\n architecture_json: {\r\n nodes: updatedNodes,\r\n },\r\n },\r\n id: architectureId,\r\n dispatch,\r\n undo,\r\n a_id,\r\n });\r\n }, 500);\r\n }, [setNodes]);\r\n\r\n const titleEditor = useEditor(\r\n {\r\n extensions: [...tipTapExtensions(\"Add name, role, team...\")],\r\n content: node?.data?.title,\r\n onUpdate: async ({ editor }) => {\r\n let updatedNodes = [];\r\n setNodes((nds) => {\r\n const data = nds;\r\n updatedNodes = data.map((nd) => {\r\n if (nd.id === node?.id) {\r\n return {\r\n ...nd,\r\n data: {\r\n ...nd.data,\r\n title: editor.getHTML(),\r\n },\r\n };\r\n }\r\n return nd;\r\n });\r\n return updatedNodes; // Return updated nodes\r\n });\r\n debouncedUpdateHTML(updatedNodes);\r\n },\r\n onBlur({ editor }) {\r\n takeSnapshot({ nodes: getNodes(), edges: null });\r\n },\r\n editorProps: {\r\n handlePaste: (view, event) => {\r\n const pastedContent = event.clipboardData.getData(\"text/plain\");\r\n try {\r\n JSON.parse(pastedContent);\r\n // If it's valid JSON, prevent paste\r\n return true;\r\n } catch (e) {\r\n // If it's not valid JSON, allow paste\r\n return false;\r\n }\r\n },\r\n },\r\n onSelectionUpdate: async () => {\r\n const selection = window.getSelection();\r\n if (selection && selection.rangeCount > 0) {\r\n }\r\n },\r\n },\r\n []\r\n );\r\n\r\n const editor = useEditor(\r\n {\r\n extensions: [...tipTapExtensions(\"Add description\")],\r\n content: node?.data?.description,\r\n onUpdate: async ({ editor }) => {\r\n let updatedNodes = [];\r\n setNodes((nds) => {\r\n const data = nds;\r\n updatedNodes = data.map((nd) => {\r\n if (nd.id === node?.id) {\r\n return {\r\n ...nd,\r\n data: {\r\n ...nd.data,\r\n description: editor.getHTML(),\r\n },\r\n };\r\n }\r\n return nd;\r\n });\r\n return updatedNodes; // Return updated nodes\r\n });\r\n debouncedUpdateHTML(updatedNodes);\r\n },\r\n onBlur({ editor }) {\r\n takeSnapshot({ nodes: getNodes(), edges: null });\r\n },\r\n editorProps: {\r\n handlePaste: (view, event) => {\r\n const pastedContent = event.clipboardData.getData(\"text/plain\");\r\n try {\r\n JSON.parse(pastedContent);\r\n // If it's valid JSON, prevent paste\r\n return true;\r\n } catch (e) {\r\n // If it's not valid JSON, allow paste\r\n return false;\r\n }\r\n },\r\n },\r\n onSelectionUpdate: async () => {\r\n const selection = window.getSelection();\r\n if (selection && selection.rangeCount > 0) {\r\n }\r\n },\r\n },\r\n []\r\n );\r\n\r\n return (\r\n setHovered(true)}\r\n onMouseOut={() => setHovered(false)}\r\n ref={cardRef}\r\n >\r\n {node?.selected && !isMultiNodeSelected && (\r\n \r\n \r\n {node.selected && (\r\n <>\r\n {!node?.data?.locked && (\r\n <>\r\n \r\n setShowColor(false)}\r\n >\r\n setShowColor(!showColor)}>\r\n setShowColor(false)}\r\n open={showColor}\r\n disableFocusListener\r\n disableHoverListener\r\n disableTouchListener\r\n title={\r\n {\r\n handleColorChange(color, \"backgroundColor\");\r\n }}\r\n />\r\n // \r\n // handleInputChange(color, \"cardColor\")\r\n // }\r\n // />\r\n }\r\n >\r\n \r\n \r\n \r\n \r\n {/* */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\" \"}\r\n \r\n )}\r\n \r\n \r\n {\r\n setShowFrameMoreOptions(false);\r\n handleCheckboxToggle(\"locked\");\r\n }}\r\n >\r\n {node?.data?.locked ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n \r\n \r\n {\" \"}\r\n \r\n setShowFrameMoreOptions(false)}\r\n open={showFrameMoreOptions}\r\n disableFocusListener\r\n disableHoverListener\r\n disableTouchListener\r\n title={\r\n \r\n }\r\n >\r\n {\r\n setShowColor(false);\r\n // setShowBackgroundPopup(false);\r\n // setShowBorderPopup(false);\r\n setShowFrameMoreOptions(!showFrameMoreOptions);\r\n // setIsShowToolsPop(true);\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n {\r\n if (node.selected) {\r\n setShowEdit(true);\r\n setShowTextEditor(false);\r\n if (titleEditor) {\r\n titleEditor?.commands.focus();\r\n }\r\n }\r\n }}\r\n >\r\n {showEdit && node?.selected && !node?.data?.locked ? (\r\n {\r\n e?.stopPropagation();\r\n e?.preventDefault();\r\n onEditorClick(e);\r\n }}\r\n style={{\r\n cursor: \"text\",\r\n width: \"100%\",\r\n marginBottom: \"none\",\r\n pointerEvents: titleEditor?.isFocused ? \"auto\" : \"none\",\r\n padding: node?.data?.hiring ? \"0px 85px 0px 0px\" : \"0px\",\r\n maxHeight: \"82px\",\r\n overflow: \"hidden\",\r\n minHeight: \"30px\",\r\n fontSize: \"18px\",\r\n color: \"#18181b\"\r\n }}\r\n className=\"editortiptoptitle nodrag\"\r\n />\r\n ) : (\r\n 10 ? \"auto\" : \"hidden\",\r\n fontSize: \"18px\",\r\n fontWeight: 600,\r\n // maxHeight: \"40px\",\r\n marginRight: \"20px !important\",\r\n padding: node?.data?.hiring ? \"0px 85px 0px 0px\" : \"0px\",\r\n color:\r\n removeHTMLTags(node?.data?.title).trim().length > 0\r\n ? \"#18181B\"\r\n : \"#A9A8A8\",\r\n maxHeight: \"83px\",\r\n overflow: \"hidden\",\r\n }}\r\n className=\"card_title_box\"\r\n dangerouslySetInnerHTML={{\r\n __html:\r\n removeHTMLTags(node?.data?.title).trim().length > 0\r\n ? node?.data?.title\r\n : \"Add name, role, team...\",\r\n }}\r\n />\r\n )}\r\n \r\n {node?.data?.hiring && (\r\n \r\n \r\n \r\n )}\r\n \r\n {node?.data?.descriptionShow && (\r\n {\r\n if (node.selected) {\r\n setShowTextEditor(true);\r\n setShowEdit(false);\r\n if (editor) {\r\n editor?.commands.focus();\r\n }\r\n }\r\n }}\r\n >\r\n {showTextEditor && node?.selected && !node?.data?.locked ? (\r\n {\r\n onEditorClick(e);\r\n }}\r\n style={{\r\n cursor: \"text\",\r\n width: \"100%\",\r\n marginBottom: \"none\",\r\n pointerEvents: editor?.isFocused ? \"auto\" : \"none\",\r\n maxHeight: \"71px\",\r\n fontSize: \"13.73px\",\r\n overflow: \"hidden\",\r\n color: \"#18181b\"\r\n }}\r\n className=\"editortiptop nodrag\"\r\n />\r\n ) : (\r\n 0\r\n ? \"#18181B\"\r\n : \"#A9A8A8\",\r\n maxHeight: \"71px\",\r\n overflow: \"hidden\",\r\n }}\r\n className=\"card_description_box\"\r\n dangerouslySetInnerHTML={{\r\n __html:\r\n removeHTMLTags(node?.data?.description).trim().length > 0\r\n ? node?.data?.description\r\n : \"Add description\",\r\n }}\r\n />\r\n )}\r\n \r\n )}\r\n\r\n {(node?.data?.teamShow || node?.data?.locationShow) && (\r\n \r\n \r\n \r\n )}\r\n\r\n {node?.data?.locationShow && (\r\n \r\n \r\n Location\r\n \r\n {isFocused?.isLocation ? (\r\n setIsFocused({ isLocation: true })}\r\n onBlur={() => setIsFocused(false)}\r\n onChange={(e) =>\r\n handleInputChange(e.target.value, \"location\")\r\n }\r\n autoComplete=\"off\"\r\n sx={{\r\n \"& .MuiOutlinedInput-root\": {\r\n border: \"none\",\r\n padding: \"0px\",\r\n \"& fieldset\": {\r\n border: \"none\",\r\n },\r\n \"&:hover fieldset\": {\r\n border: \"none\",\r\n },\r\n \"&.Mui-focused fieldset\": {\r\n border: \"none\",\r\n },\r\n \"& .MuiInputBase-input::placeholder\": {\r\n color: \"#848382\",\r\n textAlign: \"end\",\r\n },\r\n \"&.Mui-focused .MuiInputBase-input::placeholder\": {\r\n color: \"#84838299\",\r\n },\r\n \"& .MuiInputBase-input\": {\r\n padding: \"0\",\r\n border: \"none\",\r\n lineHeight: \"17.64px\",\r\n textAlign: \"end\",\r\n fontSize: \"14px !important\",\r\n fontWeight: \"400 !important\",\r\n height: \"auto\",\r\n minHeight: \"18px\",\r\n resize: \"none\",\r\n overflow: \"hidden\",\r\n },\r\n },\r\n }}\r\n />\r\n ) : (\r\n setIsFocused({ isLocation: true })}\r\n >\r\n {node?.data?.location || \"Add Location\"}\r\n \r\n )}\r\n \r\n )}\r\n {node?.data?.teamShow && (\r\n \r\n \r\n Team\r\n \r\n {isFocused?.isTeam ? (\r\n setIsFocused({ isTeam: true })}\r\n onBlur={() => setIsFocused(false)}\r\n onChange={(e) => handleInputChange(e.target.value, \"team\")}\r\n autoComplete=\"off\"\r\n sx={{\r\n \"& .MuiOutlinedInput-root\": {\r\n border: \"none\",\r\n padding: \"0px\",\r\n \"& fieldset\": {\r\n border: \"none\",\r\n },\r\n \"&:hover fieldset\": {\r\n border: \"none\",\r\n },\r\n \"&.Mui-focused fieldset\": {\r\n border: \"none\",\r\n },\r\n \"& .MuiInputBase-input::placeholder\": {\r\n color: \"#848382\",\r\n textAlign: \"end\",\r\n },\r\n \"&.Mui-focused .MuiInputBase-input::placeholder\": {\r\n color: \"#84838299\",\r\n },\r\n \"& .MuiInputBase-input\": {\r\n padding: \"0\",\r\n border: \"none\",\r\n lineHeight: \"17.64px\",\r\n textAlign: \"end\",\r\n fontSize: \"14px !important\",\r\n fontWeight: \"400 !important\",\r\n height: \"auto\",\r\n minHeight: \"18px\",\r\n overflow: \"hidden\",\r\n resize: \"none\",\r\n },\r\n },\r\n }}\r\n />\r\n ) : (\r\n setIsFocused({ isTeam: true })}\r\n >\r\n {node?.data?.team || \"Add Team\"}\r\n \r\n )}\r\n \r\n )}\r\n \r\n \r\n {!node?.dragging && !copyAsImage && (\r\n <>\r\n {\r\n setHoveredItem(\"bottom\");\r\n }}\r\n onMouseLeave={() => {\r\n setHoveredItem(\"\");\r\n }}\r\n onClick={(e) => {\r\n e.preventDefault();\r\n }}\r\n >\r\n \r\n \r\n {\r\n setHoveredItem(\"right\");\r\n }}\r\n onMouseLeave={() => {\r\n setHoveredItem(\"\");\r\n }}\r\n onClick={(e) => {\r\n e.preventDefault();\r\n }}\r\n >\r\n \r\n \r\n {\r\n setHoveredItem(\"top\");\r\n }}\r\n onMouseLeave={() => {\r\n setHoveredItem(\"\");\r\n }}\r\n onClick={(e) => {\r\n e.preventDefault();\r\n }}\r\n >\r\n \r\n \r\n {\r\n setHoveredItem(\"left\");\r\n }}\r\n onMouseLeave={() => {\r\n setHoveredItem(\"\");\r\n }}\r\n onClick={(e) => {\r\n e.preventDefault();\r\n }}\r\n >\r\n \r\n \r\n \r\n )}\r\n {sizeAsPerZoom > 25 && node.selected && !copyAsImage && (\r\n <>\r\n onResizeEnd(node)}\r\n onResize={onResize}\r\n style={{\r\n zIndex: 999999999999,\r\n backgroundColor: \"transparent\",\r\n border: \"1px solid transparent\",\r\n }}\r\n >\r\n \r\n \r\n onResizeEnd(node)}\r\n onResize={onResize}\r\n style={{\r\n zIndex: 999999999999,\r\n backgroundColor: \"transparent\",\r\n border: \"1px solid transparent\",\r\n }}\r\n >\r\n \r\n \r\n onResizeEnd(node)}\r\n onResize={onResize}\r\n style={{\r\n zIndex: 999999999999,\r\n backgroundColor: \"transparent\",\r\n border: \"1px solid transparent\",\r\n }}\r\n >\r\n \r\n \r\n onResizeEnd(node)}\r\n onResize={onResize}\r\n style={{\r\n zIndex: 999999999999,\r\n backgroundColor: \"transparent\",\r\n border: \"1px solid transparent\",\r\n }}\r\n >\r\n \r\n \r\n \r\n )}\r\n setAnchorEl(null)}\r\n anchorOrigin={{\r\n vertical: \"bottom\",\r\n horizontal: \"center\",\r\n }}\r\n transformOrigin={{\r\n vertical: \"top\",\r\n horizontal: \"center\",\r\n }}\r\n BackdropProps={{\r\n style: { backgroundColor: \"transparent\" },\r\n }}\r\n sx={{\r\n \"& .MuiPaper-root\": {\r\n p: \"10px\",\r\n mt: \"-10px\",\r\n my: \"9px\",\r\n boxShadow: \"none\",\r\n bgcolor: \"transparent\",\r\n },\r\n }}\r\n >\r\n \r\n \r\n handleCheckboxToggle(\"hiring\")}\r\n sx={{ margin: 0 }}\r\n mainSx={{\r\n gap: \"18px !important\",\r\n }}\r\n labelFontSize={14}\r\n labelStyle={{\r\n color: \"#282828\",\r\n }}\r\n />\r\n \r\n\r\n handleCheckboxToggle(\"descriptionShow\")}\r\n >\r\n handleCheckboxToggle(\"descriptionShow\")}\r\n sx={{ margin: 0 }}\r\n mainSx={{ gap: \"18px !important\" }}\r\n labelFontSize={14}\r\n labelStyle={{ color: \"#282828\" }}\r\n />\r\n \r\n\r\n handleCheckboxToggle(\"locationShow\")}\r\n >\r\n handleCheckboxToggle(\"locationShow\")}\r\n sx={{ margin: 0 }}\r\n mainSx={{ gap: \"18px !important\" }}\r\n labelFontSize={14}\r\n labelStyle={{ color: \"#282828\" }}\r\n />\r\n \r\n\r\n handleCheckboxToggle(\"teamShow\")}\r\n >\r\n handleCheckboxToggle(\"teamShow\")}\r\n sx={{ margin: 0 }}\r\n mainSx={{ gap: \"18px !important\" }}\r\n labelFontSize={14}\r\n labelStyle={{ color: \"#282828\" }}\r\n />\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default memo(UserCardNode, (prevProps, nextProps) => {\r\n return prevProps.data.globalDragging && nextProps.data.globalDragging;\r\n});\r\n","import React, { memo, useCallback, useMemo, useState } from \"react\";\r\nimport { useReactFlow } from \"reactflow\";\r\nimport { DragDropContext, Droppable, Draggable } from \"react-beautiful-dnd\";\r\nimport {\r\n Avatar,\r\n Box,\r\n IconButton,\r\n Stack,\r\n TextField,\r\n Typography,\r\n} from \"@mui/material\";\r\nimport { IcArrowExpand, IcPlus2 } from \"../../../assets/icon-components\";\r\nimport UserStoryMapModal, {\r\n getPriorityFill,\r\n getStatusFill,\r\n hexToRgba,\r\n} from \"../../../common-components/modals/UserStoryMapModal\";\r\nimport IcPriorityLevel from \"../../../assets/icon-components/IcPriorityLevel\";\r\nimport { CustomTooltip } from \"../top-toolbar/components/CustomTooltip\";\r\nimport { updateJson } from \"../../../CommanFunctions/commanFunctions\";\r\nimport { useLocation, useParams } from \"react-router-dom\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport { debounce } from \"lodash\";\r\nimport { useUndoRedo } from \"../dndUndoRedo/UndoRedoProvider\";\r\nimport { s3AssetsUrl } from \"../const\";\r\n\r\nconst UserStoryMapNode = (node) => {\r\n const { data } = node;\r\n const { setNodes, getZoom, getNodes } = useReactFlow();\r\n\r\n const { id: architectureId } = useParams();\r\n const user_data = localStorage.getItem(\"user_data\");\r\n const { undo, takeSnapshot } = useUndoRedo();\r\n const location = useLocation();\r\n const dispatch = useDispatch();\r\n\r\n const [showDetailsModal, setShowDetailsModal] = useState(false);\r\n const [selectedCardData, setSelectedCardData] = useState({});\r\n\r\n const orderedKeys = [\"activities\", \"tasks\", \"releases\"];\r\n\r\n const onDragEnd = (result) => {\r\n const { source, destination } = result;\r\n let updatedNodes = getNodes();\r\n\r\n // Drop outside the list\r\n if (!destination) return;\r\n\r\n // Same position\r\n if (\r\n source.droppableId === destination.droppableId &&\r\n source.index === destination.index\r\n )\r\n return;\r\n\r\n // Get source and destination lists\r\n const sourceList = [...data?.sections[source.droppableId]];\r\n const destList =\r\n source.droppableId === destination.droppableId\r\n ? sourceList\r\n : [...data?.sections[destination.droppableId]];\r\n\r\n // Check if this is a release item being moved to tasks or activities\r\n const isReleaseToTaskOrActivity =\r\n source.droppableId === \"releases\" &&\r\n (destination.droppableId === \"activities\" ||\r\n destination.droppableId === \"tasks\");\r\n\r\n // If it's not a move within the same category AND not a release to task/activity, prevent the move\r\n if (\r\n source.droppableId !== destination.droppableId &&\r\n !isReleaseToTaskOrActivity\r\n ) {\r\n return;\r\n }\r\n\r\n // Remove from source list\r\n const [removed] = sourceList.splice(source.index, 1);\r\n\r\n // Handle placement based on destination\r\n if (source.droppableId === destination.droppableId) {\r\n // Same category reordering\r\n sourceList.splice(destination.index, 0, removed);\r\n\r\n setNodes((prevNodes) => {\r\n updatedNodes = prevNodes.map((nd) => {\r\n if (nd.id === node?.id) {\r\n return {\r\n ...nd,\r\n data: {\r\n ...nd.data,\r\n sections: {\r\n ...nd.data.sections,\r\n [source.droppableId]: sourceList,\r\n },\r\n },\r\n };\r\n }\r\n return nd;\r\n });\r\n\r\n return updatedNodes;\r\n });\r\n } else if (isReleaseToTaskOrActivity) {\r\n // Release to task/activity movement\r\n destList.splice(destination.index, 0, removed);\r\n\r\n setNodes((prevNodes) => {\r\n updatedNodes = prevNodes.map((nd) => {\r\n if (nd.id === node?.id) {\r\n return {\r\n ...nd,\r\n data: {\r\n ...nd.data,\r\n sections: {\r\n ...nd.data.sections,\r\n [source.droppableId]: sourceList,\r\n [destination.droppableId]: destList,\r\n },\r\n },\r\n };\r\n }\r\n return nd;\r\n });\r\n\r\n return updatedNodes;\r\n });\r\n }\r\n\r\n const search = new URLSearchParams(location.search);\r\n const a_id = search.get(\"a_id\");\r\n\r\n let parsedData = {};\r\n if (user_data) {\r\n parsedData = JSON.parse(user_data);\r\n }\r\n\r\n updateJson({\r\n json: {\r\n architecture_json: {\r\n nodes: updatedNodes,\r\n lastUpdatedBy: parsedData?.user_id,\r\n },\r\n },\r\n id: architectureId,\r\n dispatch,\r\n undo,\r\n a_id,\r\n should_delete: updatedNodes?.length === 0,\r\n takeSnapshot,\r\n });\r\n };\r\n\r\n const addNewItem = (section) => {\r\n const borderColor = {\r\n activities: \"#A815FF\",\r\n tasks: \"#FF9900\",\r\n releases: \"#D9D9D9\",\r\n };\r\n const newItem = {\r\n id: `${section}-${Math.random().toString(36).substr(2, 9)}`,\r\n type: section,\r\n title: \"\",\r\n description: \"\",\r\n status: \"\",\r\n priority: \"\",\r\n date: \"\",\r\n assignee: [],\r\n tag: [],\r\n borderColor: borderColor[section],\r\n };\r\n\r\n setNodes((prevNodes) => {\r\n const updatedNodes = prevNodes.map((nd) => {\r\n if (nd.id === node?.id) {\r\n return {\r\n ...nd,\r\n data: {\r\n ...nd.data,\r\n sections: {\r\n ...nd.data.sections,\r\n [section]: [...nd.data.sections[section], newItem],\r\n },\r\n },\r\n };\r\n }\r\n return nd;\r\n });\r\n\r\n const search = new URLSearchParams(location.search);\r\n const a_id = search.get(\"a_id\");\r\n\r\n let parsedData = {};\r\n if (user_data) {\r\n parsedData = JSON.parse(user_data);\r\n }\r\n\r\n updateJson({\r\n json: {\r\n architecture_json: {\r\n nodes: updatedNodes,\r\n lastUpdatedBy: parsedData?.user_id,\r\n },\r\n },\r\n id: architectureId,\r\n dispatch,\r\n undo,\r\n a_id,\r\n should_delete: updatedNodes?.length === 0,\r\n takeSnapshot,\r\n });\r\n return updatedNodes;\r\n });\r\n };\r\n\r\n const debouncedUpdateJson = useCallback(\r\n debounce((tempNodes) => {\r\n let parsedData = {};\r\n if (user_data) {\r\n parsedData = JSON.parse(user_data);\r\n }\r\n const search = new URLSearchParams(location.search);\r\n const a_id = search.get(\"a_id\");\r\n updateJson({\r\n json: {\r\n architecture_json: {\r\n nodes: tempNodes.length > 0 ? tempNodes : getNodes(),\r\n lastUpdatedBy: parsedData?.user_id,\r\n },\r\n },\r\n id: architectureId,\r\n dispatch,\r\n undo,\r\n a_id,\r\n });\r\n }, 500),\r\n [updateJson, user_data, dispatch, undo]\r\n );\r\n\r\n const handleTitleChange = (e, sectionKey, itemId) => {\r\n let updatedNodes = getNodes();\r\n\r\n setNodes((prevNodes) => {\r\n updatedNodes = prevNodes.map((nd) => {\r\n if (nd.id === node?.id) {\r\n return {\r\n ...nd,\r\n data: {\r\n ...nd.data,\r\n sections: {\r\n ...nd.data.sections,\r\n [sectionKey]: nd.data.sections[sectionKey].map((item) => {\r\n if (item.id === itemId) {\r\n return {\r\n ...item,\r\n title: e.target.value,\r\n };\r\n }\r\n return item;\r\n }),\r\n },\r\n },\r\n };\r\n }\r\n return nd;\r\n });\r\n\r\n return updatedNodes;\r\n });\r\n\r\n debouncedUpdateJson(updatedNodes);\r\n };\r\n\r\n const handleCloseModal = () => {\r\n setShowDetailsModal(false);\r\n\r\n const search = new URLSearchParams(location.search);\r\n const a_id = search.get(\"a_id\");\r\n\r\n let parsedData = {};\r\n if (user_data) {\r\n parsedData = JSON.parse(user_data);\r\n }\r\n\r\n updateJson({\r\n json: {\r\n architecture_json: {\r\n nodes: getNodes(),\r\n lastUpdatedBy: parsedData?.user_id,\r\n },\r\n },\r\n id: architectureId,\r\n dispatch,\r\n undo,\r\n a_id,\r\n });\r\n };\r\n\r\n const getDragStyle = useMemo(() => {\r\n return (draggableStyle, isDragging, zoom) => {\r\n if (!isDragging) return draggableStyle;\r\n\r\n // Calculate fixed dimensions once\r\n const fixedWidth = draggableStyle.width\r\n ? draggableStyle.width / zoom\r\n : \"auto\";\r\n const fixedHeight = draggableStyle.height\r\n ? draggableStyle.height / zoom\r\n : \"auto\";\r\n\r\n return {\r\n ...draggableStyle,\r\n position: \"static\",\r\n width: fixedWidth,\r\n height: fixedHeight,\r\n };\r\n };\r\n }, []);\r\n\r\n const renderSection = (sectionKey, sectionValue) => (\r\n \r\n \r\n \r\n {sectionKey === \"releases\"\r\n ? \"Releases\"\r\n : sectionKey === \"tasks\"\r\n ? \"Tasks\"\r\n : \"Activities\"}\r\n \r\n addNewItem(sectionKey)}\r\n >\r\n \r\n \r\n \r\n \r\n {sectionKey === \"releases\"\r\n ? \"Add story\"\r\n : sectionKey === \"tasks\"\r\n ? \"Add task\"\r\n : \"Add activity\"}\r\n \r\n \r\n \r\n \r\n {(provided, snapshot) => (\r\n \r\n {sectionValue.map((item, index) => (\r\n \r\n {(provided, snapshot) => {\r\n const zoom = getZoom();\r\n const dragStyle = getDragStyle(\r\n provided.draggableProps.style,\r\n snapshot.isDragging,\r\n zoom\r\n );\r\n\r\n const fillColorStatus = getStatusFill(item?.status);\r\n const fillColorPriority = getPriorityFill(item?.priority);\r\n\r\n return (\r\n e.stopPropagation()}\r\n style={dragStyle}\r\n sx={{\r\n width: \"294px\",\r\n minHeight: \"50px\",\r\n borderWidth: \"4px 1px 1px 1px\",\r\n borderColor: item.borderColor,\r\n borderStyle: \"solid\",\r\n borderRadius: \"8px\",\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n justifyContent: \"center\",\r\n padding: \"8px\",\r\n gap: \"12px\",\r\n boxShadow: snapshot.isDragging\r\n ? \"0 5px 10px rgba(0,0,0,0.2)\"\r\n : \"none\",\r\n }}\r\n >\r\n \r\n \r\n handleTitleChange(e, sectionKey, item.id)\r\n }\r\n placeholder={\r\n sectionKey === \"releases\"\r\n ? \"Add Story\"\r\n : sectionKey === \"tasks\"\r\n ? \"Add Task\"\r\n : \"Add Activity\"\r\n }\r\n sx={{\r\n \"& .MuiOutlinedInput-root\": {\r\n border: \"none\",\r\n padding: \"0px\",\r\n \"& fieldset\": {\r\n border: \"none\",\r\n },\r\n \"&:hover fieldset\": {\r\n border: \"none\",\r\n },\r\n \"&.Mui-focused fieldset\": {\r\n border: \"none\",\r\n },\r\n \"& .MuiInputBase-input::placeholder\": {\r\n color: \"#848382\",\r\n },\r\n \"&.Mui-focused .MuiInputBase-input::placeholder\":\r\n {\r\n color: \"#84838299\",\r\n },\r\n \"& .MuiInputBase-input\": {\r\n padding: \"0\",\r\n border: \"none\",\r\n lineHeight: \"20.64px\",\r\n fontSize: \"14px !important\",\r\n fontWeight: \"400 !important\",\r\n height: \"auto\",\r\n minHeight: \"10px\",\r\n overflow: \"hidden\",\r\n resize: \"none\",\r\n },\r\n },\r\n }}\r\n style={{\r\n backgroundColor: \"transparent\",\r\n border: \"none\",\r\n outline: \"none\",\r\n width: \"100%\",\r\n }}\r\n />\r\n {\r\n setShowDetailsModal(true);\r\n setSelectedCardData(item);\r\n }}\r\n >\r\n \r\n \r\n \r\n\r\n \r\n {item?.priority && (\r\n \r\n {\" \"}\r\n \r\n {item?.priority}{\" \"}\r\n \r\n )}\r\n\r\n {item?.status && (\r\n \r\n \r\n {fillColorStatus?.Icon && (\r\n \r\n )}\r\n \r\n {item?.status} \r\n \r\n )}\r\n\r\n {item?.date && (\r\n \r\n {\r\n \r\n }{\" \"}\r\n {item?.date}\r\n \r\n )}\r\n \r\n\r\n {item?.assignee.length > 0 && (\r\n \r\n \r\n {item?.assignee\r\n ?.slice(0, 5)\r\n .map((val, index) => (\r\n \r\n \r\n {val.charAt(0).toUpperCase()}\r\n \r\n \r\n \r\n {val}\r\n \r\n \r\n \r\n ))}\r\n \r\n }\r\n placement=\"bottom\"\r\n isAvatarGroup\r\n >\r\n \r\n {item?.assignee.slice(0, 5).map((val, index) => {\r\n return (\r\n \r\n \r\n {val.charAt(0).toUpperCase()}\r\n \r\n \r\n );\r\n })}\r\n {item?.assignee.length > 5 && (\r\n \r\n \r\n +{5}\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n )}\r\n\r\n {item?.tag.length > 0 && (\r\n \r\n {item?.tag?.map((val, index) => {\r\n return (\r\n \r\n {val?.name}\r\n \r\n );\r\n })}\r\n \r\n )}\r\n \r\n );\r\n }}\r\n \r\n ))}\r\n {provided.placeholder}\r\n \r\n )}\r\n \r\n \r\n );\r\n\r\n return (\r\n \r\n \r\n {orderedKeys.map((key) => {\r\n const items = data.sections[key] || [];\r\n return renderSection(key, items);\r\n })}\r\n \r\n\r\n \r\n \r\n );\r\n};\r\n\r\nexport default memo(UserStoryMapNode, (prevProps, nextProps) => {\r\n return prevProps.data.globalDragging && nextProps.data.globalDragging;\r\n});\r\n"],"names":["UserCardNode","node","_node$data2","_node$data3","_node$data4","_getNodes","_getNodes$filter","_node$data5","_node$data6","_node$data7","_node$data8","_node$data9","_node$data10","_node$data11","_node$data12","_node$data13","_node$data14","_node$data15","_node$data16","_node$data17","_node$data18","_node$data19","_node$data20","_node$data21","_node$data22","_node$data23","_node$data24","_node$data25","_node$data26","_node$data27","_node$data28","_node$data29","_node$data30","_node$data31","_node$data32","_node$data33","_node$data34","_node$data35","_node$data36","_node$data37","_boxRef$current2","_boxRef$current3","_boxRef$current4","_boxRef$current5","_node$data38","_node$data39","_node$data40","_node$data41","cardRef","useRef","boxRef","user_data","localStorage","getItem","setNodes","getNodes","getIntersectingNodes","getNode","useReactFlow","currNode","id","hoveredItem","setHoveredItem","useState","hovered","setHovered","isFocused","setIsFocused","isLocation","isTeam","currentNode","frameMoreOptionsRef","showFrameMoreOptions","setShowFrameMoreOptions","borderPopupRef","titleRef","descriptionRef","locationRef","teamRef","useEffect","document","addEventListener","handleClickOutside","removeEventListener","event","current","contains","target","setShowColor","location","useLocation","undo","takeSnapshot","useUndoRedo","architectureId","useParams","dispatch","useDispatch","copyAsImage","useSelector","state","mindMapStore","isNodeSelectionStarted","useNodeSelectionStarted","selected","showColor","anchorEl","setAnchorEl","React","open","setOpen","showEdit","setShowEdit","showTextEditor","setShowTextEditor","canBeOpen","Boolean","zoomPercentages","setZoomPercentages","zoom","useViewport","sizeAsPerZoom","width","height","undefined","store","useStoreApi","handleCheckboxToggle","useMemo","option","_node$data","newOptionValue","data","updatedNodes","nds","map","nd","_objectSpread","debouncedUpdateJson","handleInputChange","value","name","useCallback","debounce","tempNodes","_parsedData","parsedData","JSON","parse","a_id","URLSearchParams","search","get","updateJson","json","architecture_json","nodes","length","lastUpdatedBy","user_id","resize","_titleRef$current","_descriptionRef$curre","_locationRef$current","_teamRef$current","_cardRef$current","_boxRef$current","totalHeight","offsetHeight","prev","setItem","stringify","lastEvent","style","concat","teamShow","descriptionShow","locationShow","selectedNodes","filter","val","isMultiNodeSelected","onResize","_ref","onResizeEnd","_parsedData2","_updatedNodes","_","_ref2","_cardRef$current2","_cardRef$current3","Number","offsetWidth","n","_groupNode","_groupNode2","_groupNode3","_groupNode4","intersections","groupNode","type","parentNode","includes","_store$getState","_store$getState$nodeI","getState","nodeInternals","_parentNode$positionA","_parentNode$positionA2","_parentNode$positionA3","_parentNode$positionA4","position","x","positionAbsolute","y","expandParent","_n2","_groupNode5","_node$positionAbsolut","_groupNode6","_groupNode6$positionA","_node$positionAbsolut2","_groupNode7","_groupNode7$positionA","_n3","structuredClone","_n","className","_getNodePositionInsid","getNodePositionInsideParent","timerForEditor","selectedTextRef","onEditorClick","stopPropagation","clearTimeout","selection","window","getSelection","detail","setTimeout","editor","commands","focus","pos","view","posAtCoords","left","clientX","top","clientY","setTextSelection","titleEditor","debouncedUpdateHTML","useEditor","extensions","tipTapExtensions","content","title","onUpdate","async","_ref3","getHTML","onBlur","_ref4","edges","editorProps","handlePaste","pastedContent","clipboardData","getData","e","onSelectionUpdate","rangeCount","description","_ref5","_ref6","_jsxs","Stack","sx","boxShadow","onMouseOver","onMouseOut","ref","children","_jsx","NodeToolbar","isVisible","dragging","Position","Top","Box","display","gap","px","py","background","border","zIndex","alignItems","borderRadius","_Fragment","locked","ClickAwayListener","onClickAway","onClick","CustomTooltip","mt","PopperProps","disablePortal","onClose","disableFocusListener","disableHoverListener","disableTouchListener","BackgroundTool","colorHeading","selectedNodeColor","toRgba","cardColor","onChangeColor","color","handleColorChange","ToolTipWithDisabled","placement","tooltipTitle","disabled","IconButton","padding","flexDirection","justifyContent","IcChangeBg","fill","CommonDivider","my","orientation","variant","flexItem","CustomNameTooltip","arrow","transition","bgcolor","currentTarget","previousOpen","IcSettingsOutlined","IcLockLocked","size","IcLockUnLocked","FrameMoreMenus","showRename","showDuplicate","showCopyAsImage","showFrame","showLockUnlock","showCopyLink","showLinkTo","showDelete","showBringToFrontAndBack","direction","cursor","transform","IcMenuDotsVertical","overflow","hiring","convertToRgba","fontSize","fontWeight","wordWrap","lineHeight","minHeight","marginRight","removeHTMLTags","trim","maxHeight","dangerouslySetInnerHTML","__html","EditorContent","preventDefault","marginBottom","pointerEvents","right","IcHiring","TextField","multiline","minRows","maxRows","fullWidth","autoFocus","placeholder","onFocus","onChange","autoComplete","textAlign","wordBreak","whiteSpace","team","Handle","connectionMode","isConnectable","transitionDuration","visibility","onMouseLeave","primaryColor","transformOrigin","NodeResizeControl","keepAspectRatio","minWidth","backgroundColor","Popover","anchorOrigin","vertical","horizontal","BackdropProps","p","SimpleCheckBox","label","checked","margin","mainSx","labelFontSize","labelStyle","memo","prevProps","nextProps","globalDragging","UserStoryMapNode","getZoom","showDetailsModal","setShowDetailsModal","selectedCardData","setSelectedCardData","_parsedData3","getDragStyle","draggableStyle","isDragging","fixedWidth","fixedHeight","renderSection","sectionKey","sectionValue","Typography","section","newItem","Math","random","toString","substr","status","priority","date","assignee","tag","borderColor","activities","tasks","releases","prevNodes","sections","should_delete","addNewItem","IcPlus2","Droppable","droppableId","provided","snapshot","innerRef","droppableProps","isDraggingOver","item","index","Draggable","draggableId","_item$assignee","_item$tag","dragStyle","draggableProps","fillColorStatus","getStatusFill","fillColorPriority","getPriorityFill","dragHandleProps","onMouseDownCapture","borderWidth","borderStyle","handleTitleChange","itemId","outline","mr","IcArrowExpand","flexWrap","hexToRgba","paddingX","paddingY","alignContent","IcPriorityLevel","Icon","src","s3AssetsUrl","alt","slice","Avatar","charAt","toUpperCase","isAvatarGroup","DragDropContext","onDragEnd","result","source","destination","sourceList","destList","isReleaseToTaskOrActivity","removed","splice","key","items","UserStoryMapModal","handleClose","handleCloseModal","_parsedData4","cardData"],"sourceRoot":""}