diff --git a/apps/sn/app/(map-layout)/map/page.tsx b/apps/sn/app/(map-layout)/map/page.tsx index 94603ab30..48e75e968 100644 --- a/apps/sn/app/(map-layout)/map/page.tsx +++ b/apps/sn/app/(map-layout)/map/page.tsx @@ -5924,6 +5924,22 @@ const Map = () => { if (!tabId) return; const closingTab = rightPanelTabs.find((tab) => tab.id === tabId); const remainingTabs = removeRightPanelTabGroup(rightPanelTabs, tabId); + const closingLayerTypeName = getSelectedFeatureLayerTypeName( + closingTab?.featureData, + ); + + // 침수흔적 연계 조회로 만든 공용 search-layer는 선택 해제만으로 + // 제거되지 않는다. 마지막 탭을 닫는 경우와 다른 일반 feature 탭으로 + // 전환되는 경우 모두 잔상으로 남지 않도록 여기서 명시적으로 제거한다. + if ( + closingLayerTypeName === FLOOD_HISTORY_LAYER_TYPE || + closingLayerTypeName === "tb_ms_fldng_dpth_map" + ) { + const layerModule = GisApp.Module.layer as any; + if (layerModule?.searchLayer) { + layerModule.clearSearchLayer?.(); + } + } if (closingTab?.kind === "sinkhole") { setSelectedSinkholeDetail(null);