import { useMessage } from '@/hooks/useMessage' import { useState } from 'react' import WithDraggable from '@/components/common/draggable/WithDraggable' import RightAngle from '@/components/floor-plan/modal/lineTypes/RightAngle' import DoublePitch from '@/components/floor-plan/modal/lineTypes/DoublePitch' import Angle from '@/components/floor-plan/modal/lineTypes/Angle' import Diagonal from '@/components/floor-plan/modal/lineTypes/Diagonal' import { OUTER_LINE_TYPE } from '@/store/outerLineAtom' import OuterLineWall from '@/components/floor-plan/modal/lineTypes/OuterLineWall' import { usePlacementShapeDrawing } from '@/hooks/surface/usePlacementShapeDrawing' import { usePopup } from '@/hooks/usePopup' import { useSwal } from '@/hooks/useSwal' import Image from 'next/image' export default function PlacementShapeDrawing({ id, pos = { x: 50, y: 230 } }) { const { getMessage } = useMessage() const { closePopup } = usePopup() const { swalFire } = useSwal() const [buttonAct, setButtonAct] = useState(1) const [useCalcPad, setUseCalcPad] = useState(false) const types = [ { id: 1, name: getMessage('straight.line'), type: OUTER_LINE_TYPE.OUTER_LINE }, { id: 2, name: getMessage('right.angle'), type: OUTER_LINE_TYPE.RIGHT_ANGLE }, { id: 3, name: getMessage('double.pitch'), type: OUTER_LINE_TYPE.DOUBLE_PITCH }, { id: 4, name: getMessage('angle'), type: OUTER_LINE_TYPE.ANGLE }, { id: 5, name: getMessage('diagonal'), type: OUTER_LINE_TYPE.DIAGONAL_LINE }, ] const { length1, setLength1, length2, setLength2, length1Ref, length2Ref, arrow1, setArrow1, arrow2, setArrow2, angle1, setAngle1, angle1Ref, angle2, setAngle2, angle2Ref, type, setType, arrow1Ref, arrow2Ref, outerLineDiagonalLength, setOuterLineDiagonalLength, outerLineDiagonalLengthRef, handleRollback, handleFix, } = usePlacementShapeDrawing(id) const disableKeypad = !useCalcPad const outerLineProps = { length1, setLength1, length1Ref, arrow1, setArrow1, disableKeypad, } const rightAngleProps = { length1, setLength1, length1Ref, length2, setLength2, length2Ref, arrow1, setArrow1, arrow2, setArrow2, disableKeypad, } const doublePitchProps = { angle1, setAngle1, angle1Ref, angle2, setAngle2, angle2Ref, length1, setLength1, length1Ref, length2, setLength2, length2Ref, arrow1, setArrow1, arrow2, setArrow2, arrow1Ref, arrow2Ref, disableKeypad, } const angleProps = { angle1, setAngle1, angle1Ref, length1, setLength1, length1Ref, disableKeypad, } const diagonalLineProps = { length1, setLength1, length1Ref, length2, setLength2, length2Ref, diagonalLength: outerLineDiagonalLength, setDiagonalLength: setOuterLineDiagonalLength, diagonalLengthRef: outerLineDiagonalLengthRef, arrow1, setArrow1, arrow2, setArrow2, disableKeypad, } const onClickButton = (button) => { setButtonAct(button.id) setType(button.type) } return ( closePopup(id)} />
{types.map((type, idx) => ( ))}
{buttonAct === 1 && } {buttonAct === 2 && } {buttonAct === 3 && } {buttonAct === 4 && } {buttonAct === 5 && }
) }