/** 지도 화면의 응답·날짜·키보드 입력 판별. 기존 값과 처리 순서를 유지한다. */ /** 침수예측 오버레이용 12자리 분석시각을 화면 표시 형식으로 변환한다. */ export const formatFloodPredictionDateTime = (value: unknown) => { const text = String(value ?? "").trim(); return /^\d{12}$/.test(text) ? `${text.slice(0, 4)}-${text.slice(4, 6)}-${text.slice(6, 8)} ${text.slice(8, 10)}:${text.slice(10, 12)}` : text || "-"; }; export const geometryObjectToKey = ( geometry: Record | null, ) => (geometry ? JSON.stringify(geometry) : ""); export const isTypingElement = (target: EventTarget | null) => { if (!(target instanceof HTMLElement)) return false; const tagName = target.tagName.toLowerCase(); return ( tagName === "input" || tagName === "textarea" || tagName === "select" || target.isContentEditable ); }; export { getFeatureCollection } from "@/features/map-layers/lib/geojson-response";