import { useMessage } from '@/hooks/useMessage' import WithDraggable from '@/components/common/draggable/WithDraggable' import { usePopup } from '@/hooks/usePopup' import { useRecoilValue } from 'recoil' import { contextPopupPositionState } from '@/store/popupAtom' import { useState } from 'react' import { currentObjectState } from '@/store/canvasAtom' import { useAuxiliaryDrawing } from '@/hooks/roofcover/useAuxiliaryDrawing' import { useSwal } from '@/hooks/useSwal' export default function AuxiliaryEdit(props) { const contextPopupPosition = useRecoilValue(contextPopupPositionState) const { id, pos = contextPopupPosition, type } = props const { getMessage } = useMessage() const { closePopup } = usePopup() const { move, copy } = useAuxiliaryDrawing() const [verticalSize, setVerticalSize] = useState('0') const [horizonSize, setHorizonSize] = useState('0') const [arrow1, setArrow1] = useState(null) const [arrow2, setArrow2] = useState(null) const currentObject = useRecoilValue(currentObjectState) const { swalFire } = useSwal() const handleSave = () => { if (!horizonSize || !verticalSize || !arrow1 || !arrow2) { swalFire({ title: '길이와 방향을 입력하세요.', type: 'alert' }) return } if (type === 'copy') { if (currentObject) { copy( currentObject, arrow2 === '←' ? Number(horizonSize) * -1 : Number(horizonSize), arrow1 === '↑' ? Number(verticalSize) * -1 : Number(verticalSize), ) } } else { move( currentObject, arrow2 === '←' ? Number(horizonSize) * -1 : Number(horizonSize), arrow1 === '↑' ? Number(verticalSize) * -1 : Number(verticalSize), ) } closePopup(id) } return (

{getMessage(type === 'copy' ? 'modal.auxiliary.copy' : 'modal.auxiliary.move')}

{getMessage(type === 'copy' ? 'modal.auxiliary.copy.info' : 'modal.auxiliary.move.info')}

{getMessage('length')}

setVerticalSize(e.target.value)} />
mm
setHorizonSize(e.target.value)} />
mm
) }