{"ast":null,"code":"var _jsxFileName = \"D:\\\\LDT\\\\000 Project\\\\LDT\\\\Client\\\\src\\\\components\\\\KakaoMap.js\",\n  _s = $RefreshSig$();\nimport React, { useEffect, useRef, useState } from \"react\";\n\n// markers: [{ title: \"장소명\", desc: \"추가설명\", ... }]\nimport { jsxDEV as _jsxDEV } from \"react/jsx-dev-runtime\";\nexport default function KakaoMapSearchOverlay({\n  latitude = 37.5665,\n  longitude = 126.9780,\n  markers = [],\n  style = {\n    width: \"100%\",\n    height: \"600px\"\n  }\n}) {\n  _s();\n  const mapRef = useRef(null);\n  const [searched, setSearched] = useState([]); // [{lat, lng, title, ...}]\n\n  useEffect(() => {\n    if (!window.kakao || !window.kakao.maps || !mapRef.current) return;\n\n    // 지도 초기화\n    const kakao = window.kakao;\n    const map = new kakao.maps.Map(mapRef.current, {\n      center: new kakao.maps.LatLng(latitude, longitude),\n      level: 6\n    });\n\n    // ---- 검색 및 마커 생성 ----\n    let allSearched = []; // 검색된 모든 위치 저장\n    let activeMarkers = [];\n    let infoWindows = [];\n    if (markers.length > 0) {\n      // Place 검색 객체 준비\n      const ps = new kakao.maps.services.Places();\n      // 비동기 검색 결과를 모두 기다리기\n      let completed = 0;\n      markers.forEach((m, idx) => {\n        // 우선 title > desc 순서로 키워드 선택\n        const keyword = m.title || m.desc || \"\";\n        if (!keyword) {\n          completed++;\n          if (completed === markers.length) setSearched([...allSearched]);\n          return;\n        }\n        ps.keywordSearch(keyword, (data, status) => {\n          if (status === kakao.maps.services.Status.OK && data[0]) {\n            // 첫 번째 결과만 사용\n            const found = data[0];\n            const pos = {\n              lat: parseFloat(found.y),\n              lng: parseFloat(found.x),\n              title: found.place_name,\n              desc: found.address_name,\n              inputTitle: m.title,\n              // 원본과 연결\n              icon: m.icon || null\n            };\n            allSearched.push(pos);\n          }\n          completed++;\n          if (completed === markers.length) setSearched([...allSearched]);\n        });\n      });\n    } else {\n      setSearched([]);\n    }\n\n    // 지도 clean-up\n    return () => {\n      activeMarkers.forEach(m => m.setMap(null));\n      infoWindows.forEach(iw => iw.close());\n    };\n  }, [markers, latitude, longitude]);\n\n  // 지도 렌더링/오버레이\n  useEffect(() => {\n    var _searched$0$lat, _searched$, _searched$0$lng, _searched$2;\n    if (!window.kakao || !window.kakao.maps || !mapRef.current) return;\n    const kakao = window.kakao;\n    const map = new kakao.maps.Map(mapRef.current, {\n      center: new kakao.maps.LatLng((_searched$0$lat = (_searched$ = searched[0]) === null || _searched$ === void 0 ? void 0 : _searched$.lat) !== null && _searched$0$lat !== void 0 ? _searched$0$lat : latitude, (_searched$0$lng = (_searched$2 = searched[0]) === null || _searched$2 === void 0 ? void 0 : _searched$2.lng) !== null && _searched$0$lng !== void 0 ? _searched$0$lng : longitude),\n      level: 6\n    });\n\n    // 클러스터러\n    const markerObjs = searched.map(m => {\n      const image = m.icon ? new kakao.maps.MarkerImage(m.icon, new kakao.maps.Size(36, 36), {\n        offset: new kakao.maps.Point(18, 36)\n      }) : null;\n      return new kakao.maps.Marker({\n        position: new kakao.maps.LatLng(m.lat, m.lng),\n        clickable: true,\n        image,\n        map\n      });\n    });\n    const infoWindows = searched.map((m, idx) => new kakao.maps.InfoWindow({\n      content: `<div style=\"padding:7px;font-size:14px;\">\n          <b>${m.title}</b><br/>${m.desc}<br/>\n          <span style=\"color:gray;font-size:12px;\">(입력값: ${m.inputTitle})</span>\n        </div>`\n    }));\n    markerObjs.forEach((markerObj, idx) => {\n      if (infoWindows[idx]) {\n        kakao.maps.event.addListener(markerObj, \"mouseover\", () => {\n          infoWindows.forEach(iw => iw.close());\n          infoWindows[idx].open(map, markerObj);\n        });\n        kakao.maps.event.addListener(markerObj, \"mouseout\", () => {\n          infoWindows[idx].close();\n        });\n      }\n    });\n\n    // Clean up\n    return () => {\n      markerObjs.forEach(m => m.setMap(null));\n      infoWindows.forEach(iw => iw.close());\n    };\n  }, [searched, latitude, longitude]);\n  return /*#__PURE__*/_jsxDEV(\"div\", {\n    style: {\n      position: \"relative\",\n      ...style\n    },\n    children: [/*#__PURE__*/_jsxDEV(\"div\", {\n      ref: mapRef,\n      style: {\n        width: \"100%\",\n        height: \"100%\"\n      }\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 127,\n      columnNumber: 7\n    }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n      style: {\n        position: \"absolute\",\n        top: 10,\n        left: 10,\n        background: \"#fff\",\n        padding: 8,\n        borderRadius: 6,\n        boxShadow: \"0 2px 8px #0002\"\n      },\n      children: [/*#__PURE__*/_jsxDEV(\"b\", {\n        children: \"\\uAC80\\uC0C9\\uB41C \\uC7A5\\uC18C \\uBAA9\\uB85D\"\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 132,\n        columnNumber: 9\n      }, this), /*#__PURE__*/_jsxDEV(\"ol\", {\n        style: {\n          margin: 0,\n          paddingLeft: 18,\n          fontSize: 13\n        },\n        children: [searched.length === 0 && /*#__PURE__*/_jsxDEV(\"li\", {\n          children: \"\\uD45C\\uC2DC\\uD560 \\uC7A5\\uC18C \\uC5C6\\uC74C\"\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 134,\n          columnNumber: 37\n        }, this), searched.map((m, i) => /*#__PURE__*/_jsxDEV(\"li\", {\n          children: [/*#__PURE__*/_jsxDEV(\"b\", {\n            children: m.title\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 137,\n            columnNumber: 15\n          }, this), /*#__PURE__*/_jsxDEV(\"br\", {}, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 138,\n            columnNumber: 15\n          }, this), /*#__PURE__*/_jsxDEV(\"span\", {\n            style: {\n              color: \"#666\"\n            },\n            children: m.desc\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 139,\n            columnNumber: 15\n          }, this), /*#__PURE__*/_jsxDEV(\"br\", {}, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 140,\n            columnNumber: 15\n          }, this), /*#__PURE__*/_jsxDEV(\"span\", {\n            style: {\n              color: \"#888\",\n              fontSize: 11\n            },\n            children: [\"\\uC785\\uB825\\uAC12: \", m.inputTitle]\n          }, void 0, true, {\n            fileName: _jsxFileName,\n            lineNumber: 141,\n            columnNumber: 15\n          }, this)]\n        }, i, true, {\n          fileName: _jsxFileName,\n          lineNumber: 136,\n          columnNumber: 13\n        }, this))]\n      }, void 0, true, {\n        fileName: _jsxFileName,\n        lineNumber: 133,\n        columnNumber: 9\n      }, this)]\n    }, void 0, true, {\n      fileName: _jsxFileName,\n      lineNumber: 129,\n      columnNumber: 7\n    }, this)]\n  }, void 0, true, {\n    fileName: _jsxFileName,\n    lineNumber: 126,\n    columnNumber: 5\n  }, this);\n}\n_s(KakaoMapSearchOverlay, \"mizCxNmerxlwrcsVRUD676Jj/KY=\");\n_c = KakaoMapSearchOverlay;\nvar _c;\n$RefreshReg$(_c, \"KakaoMapSearchOverlay\");","map":{"version":3,"names":["React","useEffect","useRef","useState","jsxDEV","_jsxDEV","KakaoMapSearchOverlay","latitude","longitude","markers","style","width","height","_s","mapRef","searched","setSearched","window","kakao","maps","current","map","Map","center","LatLng","level","allSearched","activeMarkers","infoWindows","length","ps","services","Places","completed","forEach","m","idx","keyword","title","desc","keywordSearch","data","status","Status","OK","found","pos","lat","parseFloat","y","lng","x","place_name","address_name","inputTitle","icon","push","setMap","iw","close","_searched$0$lat","_searched$","_searched$0$lng","_searched$2","markerObjs","image","MarkerImage","Size","offset","Point","Marker","position","clickable","InfoWindow","content","markerObj","event","addListener","open","children","ref","fileName","_jsxFileName","lineNumber","columnNumber","top","left","background","padding","borderRadius","boxShadow","margin","paddingLeft","fontSize","i","color","_c","$RefreshReg$"],"sources":["D:/LDT/000 Project/LDT/Client/src/components/KakaoMap.js"],"sourcesContent":["import React, { useEffect, useRef, useState } from \"react\";\r\n\r\n// markers: [{ title: \"장소명\", desc: \"추가설명\", ... }]\r\nexport default function KakaoMapSearchOverlay({\r\n  latitude = 37.5665,\r\n  longitude = 126.9780,\r\n  markers = [],\r\n  style = { width: \"100%\", height: \"600px\" }\r\n}) {\r\n  const mapRef = useRef(null);\r\n  const [searched, setSearched] = useState([]); // [{lat, lng, title, ...}]\r\n\r\n  useEffect(() => {\r\n    if (!window.kakao || !window.kakao.maps || !mapRef.current) return;\r\n\r\n    // 지도 초기화\r\n    const kakao = window.kakao;\r\n    const map = new kakao.maps.Map(mapRef.current, {\r\n      center: new kakao.maps.LatLng(latitude, longitude),\r\n      level: 6\r\n    });\r\n\r\n    // ---- 검색 및 마커 생성 ----\r\n    let allSearched = []; // 검색된 모든 위치 저장\r\n    let activeMarkers = [];\r\n    let infoWindows = [];\r\n\r\n    if (markers.length > 0) {\r\n      // Place 검색 객체 준비\r\n      const ps = new kakao.maps.services.Places();\r\n      // 비동기 검색 결과를 모두 기다리기\r\n      let completed = 0;\r\n      markers.forEach((m, idx) => {\r\n        // 우선 title > desc 순서로 키워드 선택\r\n        const keyword = m.title || m.desc || \"\";\r\n        if (!keyword) {\r\n          completed++;\r\n          if (completed === markers.length) setSearched([...allSearched]);\r\n          return;\r\n        }\r\n        ps.keywordSearch(keyword, (data, status) => {\r\n          if (status === kakao.maps.services.Status.OK && data[0]) {\r\n            // 첫 번째 결과만 사용\r\n            const found = data[0];\r\n            const pos = {\r\n              lat: parseFloat(found.y),\r\n              lng: parseFloat(found.x),\r\n              title: found.place_name,\r\n              desc: found.address_name,\r\n              inputTitle: m.title, // 원본과 연결\r\n              icon: m.icon || null\r\n            };\r\n            allSearched.push(pos);\r\n          }\r\n          completed++;\r\n          if (completed === markers.length) setSearched([...allSearched]);\r\n        });\r\n      });\r\n    } else {\r\n      setSearched([]);\r\n    }\r\n\r\n    // 지도 clean-up\r\n    return () => {\r\n      activeMarkers.forEach(m => m.setMap(null));\r\n      infoWindows.forEach(iw => iw.close());\r\n    };\r\n  }, [markers, latitude, longitude]);\r\n\r\n  // 지도 렌더링/오버레이\r\n  useEffect(() => {\r\n    if (!window.kakao || !window.kakao.maps || !mapRef.current) return;\r\n    const kakao = window.kakao;\r\n    const map = new kakao.maps.Map(mapRef.current, {\r\n      center: new kakao.maps.LatLng(\r\n        searched[0]?.lat ?? latitude,\r\n        searched[0]?.lng ?? longitude\r\n      ),\r\n      level: 6\r\n    });\r\n\r\n    // 클러스터러\r\n    const markerObjs = searched.map(m => {\r\n      const image = m.icon\r\n        ? new kakao.maps.MarkerImage(m.icon, new kakao.maps.Size(36, 36), {\r\n          offset: new kakao.maps.Point(18, 36)\r\n        })\r\n        : null;\r\n      return new kakao.maps.Marker({\r\n        position: new kakao.maps.LatLng(m.lat, m.lng),\r\n        clickable: true,\r\n        image,\r\n        map,\r\n      });\r\n    });\r\n\r\n    const infoWindows = searched.map((m, idx) =>\r\n      new kakao.maps.InfoWindow({\r\n        content: `<div style=\"padding:7px;font-size:14px;\">\r\n          <b>${m.title}</b><br/>${m.desc}<br/>\r\n          <span style=\"color:gray;font-size:12px;\">(입력값: ${m.inputTitle})</span>\r\n        </div>`\r\n      })\r\n    );\r\n\r\n    markerObjs.forEach((markerObj, idx) => {\r\n      if (infoWindows[idx]) {\r\n        kakao.maps.event.addListener(markerObj, \"mouseover\", () => {\r\n          infoWindows.forEach(iw => iw.close());\r\n          infoWindows[idx].open(map, markerObj);\r\n        });\r\n        kakao.maps.event.addListener(markerObj, \"mouseout\", () => {\r\n          infoWindows[idx].close();\r\n        });\r\n      }\r\n    });\r\n\r\n    // Clean up\r\n    return () => {\r\n      markerObjs.forEach(m => m.setMap(null));\r\n      infoWindows.forEach(iw => iw.close());\r\n    };\r\n  }, [searched, latitude, longitude]);\r\n\r\n  return (\r\n    <div style={{ position: \"relative\", ...style }}>\r\n      <div ref={mapRef} style={{ width: \"100%\", height: \"100%\" }} />\r\n      {/** 리스트로 검색결과 표출(선택) */}\r\n      <div style={{\r\n        position: \"absolute\", top: 10, left: 10, background: \"#fff\", padding: 8, borderRadius: 6, boxShadow: \"0 2px 8px #0002\"\r\n      }}>\r\n        <b>검색된 장소 목록</b>\r\n        <ol style={{ margin: 0, paddingLeft: 18, fontSize: 13 }}>\r\n          {searched.length === 0 && <li>표시할 장소 없음</li>}\r\n          {searched.map((m, i) => (\r\n            <li key={i}>\r\n              <b>{m.title}</b>\r\n              <br />\r\n              <span style={{ color: \"#666\" }}>{m.desc}</span>\r\n              <br />\r\n              <span style={{ color: \"#888\", fontSize: 11 }}>입력값: {m.inputTitle}</span>\r\n            </li>\r\n          ))}\r\n        </ol>\r\n      </div>\r\n    </div>\r\n  );\r\n}\r\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}