import { forwardRef, useContext, useEffect, useImperativeHandle, useState } from 'react' import { useMessage } from '@/hooks/useMessage' import { useOrientation } from '@/hooks/module/useOrientation' import { getDegreeInOrientation } from '@/util/canvas-util' import { numberCheck } from '@/util/common-utils' import { useCanvasPopupStatusController } from '@/hooks/common/useCanvasPopupStatusController' export const Orientation = forwardRef(({ tabNum }, ref) => { const { getMessage } = useMessage() const { trigger: canvasPopupStatusTrigger } = useCanvasPopupStatusController(1) const { nextStep, compasDeg, setCompasDeg } = useOrientation() const [hasAnglePassivity, setHasAnglePassivity] = useState(false) useImperativeHandle(ref, () => ({ handleNextStep, })) const handleNextStep = () => { nextStep() canvasPopupStatusTrigger(compasDeg) } useEffect(() => { checkDegree(compasDeg) }, [compasDeg]) const checkDegree = (e) => { if (e === '-0' || e === '-') { setCompasDeg('-') return } if (e === '0-') { setCompasDeg('-0') return } if (Number(e) >= -180 && Number(e) <= 180) { if (numberCheck(Number(e))) { setCompasDeg(Number(e)) } } else { setCompasDeg(compasDeg) } } return ( <>