'use client' import { useContext, useEffect } from 'react' import { FloorPlanContext } from '@/app/floor-plan/FloorPlanProvider' import { useMessage } from '@/hooks/useMessage' import { useRefFiles } from '@/hooks/common/useRefFiles' import { usePlan } from '@/hooks/usePlan' import WithDraggable from '@/components/common/draggable/WithDraggable' import { useCanvas } from '@/hooks/useCanvas' import { useImgLoader } from '@/hooks/floorPlan/useImgLoader' // import { initImageLoaderPopup } from '@/lib/planAction' /** * 이미지 로드 모달 * @returns */ export default function ImgLoad() { const { currentCanvasPlan, setCurrentCanvasPlan } = usePlan() const { getMessage } = useMessage() const { canvas } = useCanvas() const { floorPlanState, setFloorPlanState } = useContext(FloorPlanContext) const { refImage, queryRef, setRefImage, handleRefFile, refFileMethod, setRefFileMethod, handleRefFileMethod, mapPositionAddress, setMapPositionAddress, handleFileDelete, handleMapImageDown, handleAddressDelete, } = useRefFiles() const { handleCanvasToPng } = useImgLoader() const handleModal = () => { setFloorPlanState({ ...floorPlanState, refFileModalOpen: false, toggleRotate: false }) // setCurrentCanvasPlan({ // ...currentCanvasPlan, // bgImageName: refImage?.name ?? null, // mapPositionAddress, // }) } useEffect(() => { console.log('🚀 ~ ImgLoad ~ floorPlanState.refFileModalOpen:', floorPlanState.refFileModalOpen) console.log('🚀 ~ ImgLoad ~ currentCanvasPlan:', currentCanvasPlan) if (floorPlanState.refFileModalOpen) { // initImageLoaderPopup({ objectNo: currentCanvasPlan.objectNo, planNo: currentCanvasPlan.planNo }) } }, [floorPlanState.refFileModalOpen]) useEffect(() => { const backGroundImage = canvas?.getObjects().filter((obj) => obj.name === 'backGroundImage') if (backGroundImage && backGroundImage.length === 1) { backGroundImage[0].set({ lockMovementX: !floorPlanState.toggleRotate, lockMovementY: !floorPlanState.toggleRotate, lockRotation: !floorPlanState.toggleRotate, lockScalingX: !floorPlanState.toggleRotate, lockScalingY: !floorPlanState.toggleRotate, selectable: floorPlanState.toggleRotate, }) } }, [floorPlanState.toggleRotate]) useEffect(() => { if (!currentCanvasPlan) return const refFileMethod = currentCanvasPlan?.mapPositionAddress === null || currentCanvasPlan?.mapPositionAddress?.trim() === '' ? '1' : '2' setRefFileMethod(refFileMethod) setMapPositionAddress(currentCanvasPlan?.mapPositionAddress ?? '') }, [currentCanvasPlan]) return ( setFloorPlanState({ ...floorPlanState, refFileModalOpen: false })} />
{getMessage('modal.image.load.size.rotate')}
handleRefFileMethod(e)} checked={refFileMethod === '1'} />
handleRefFile(e.target.files[0]) : () => {}} />
{currentCanvasPlan?.bgImageName && }
handleRefFileMethod(e)} checked={refFileMethod === '2'} />
setMapPositionAddress(e.target.value)} />
{mapPositionAddress && } {/* */}
{/* */}
) }