2026-04-01 10:36:22 +02:00
const _ _vite _ _mapDeps = ( i , m = _ _vite _ _mapDeps , d = ( m . f || ( m . f = [ "../assets/leaflet.CIGW-MKW.css" ] ) ) ) => i . map ( i => d [ i ] ) ;
2026-04-01 14:32:06 +02:00
import { _ as S } from "../chunks/PPVm8Dsz.js" ; import { d as de , a as l , f as n , b as ce } from "../chunks/B89f14j0.js" ; import { o as ve } from "../chunks/DrzKg1h1.js" ; import { p as pe , s as u , a as B , b as i , f as ge , t as _ , c as me , e as fe , h as r , g as o , $ as ue , r as a , d as h } from "../chunks/reyx9_7L.js" ; import { s as d } from "../chunks/BwTTNG21.js" ; import { i as L } from "../chunks/Do7Yo2YN.js" ; import { h as _e , e as Z , i as q } from "../chunks/D5EBvEcH.js" ; import { s as he } from "../chunks/B-WTs0fq.js" ; import { s as xe } from "../chunks/C7sCDBjT.js" ; var be = n ( '<link rel="stylesheet" href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css"/>' ) , ye = n ( '<div class="h-[500px] flex items-center justify-center"><div class="animate-spin rounded-full h-12 w-12 border-b-2 border-green-600"></div></div>' ) , we = n ( '<div id="map" class="h-[500px]"></div>' ) , ke = n ( '<li><a class="block p-2 rounded-lg border border-gray-100 hover:bg-gray-50 transition-colors"><div class="flex items-center gap-2"><span class="font-mono text-xs font-medium text-green-700"> </span> <span class="text-xs px-1.5 py-0.5 rounded bg-gray-100 text-gray-500"> </span></div> <p class="text-xs text-gray-600 mt-1 line-clamp-2"> </p></a></li>' ) , Oe = n ( '<ul class="space-y-2"></ul>' ) , Ae = n ( '<div class="bg-white rounded-xl shadow-sm border border-gray-200 p-6"><h2 class="text-lg font-semibold text-gray-900 mb-2"> </h2> <p class="text-sm text-gray-500 mb-4"> </p> <!></div>' ) , Ee = n ( '<div class="bg-white rounded-xl shadow-sm border border-gray-200 p-6"><p class="text-gray-500 text-sm">Klicke auf einen Marker um die zugehörigen Vorlagen zu sehen.</p></div>' ) , $e = n ( '<li><button><span class="font-medium"> </span> <span class="text-gray-400 ml-2"> </span></button></li>' ) , Ve = n ( '<div class="mb-6"><h1 class="text-2xl font-bold text-gray-900">📍 Anträge auf der Karte</h1> <p class="text-gray-500 text-sm mt-1">Orte aus Anträgen und Anfragen in Hagen</p></div> <div class="grid grid-cols-1 lg:grid-cols-3 gap-6"><div class="lg:col-span-2"><div class="bg-white rounded-xl shadow-sm border border-gray-200 overflow-hidden"><!></div> <div class="mt-4 text-sm text-gray-500"> </div></div> <div class="space-y-6"><!> <div class="bg-white rounded-xl shadow-sm border border-gray-200 p-6"><h2 class="text-lg font-semibold text-gray-900 mb-4">🗺️ Alle Orte</h2> <ul class="space-y-1 max-h-80 overflow-y-auto"></ul></div></div></div>' , 1 ) ; function Ke ( J , Q ) { pe ( Q , ! 0 ) ; let g = u ( B ( [ ] ) ) , p = u ( null ) , x = u ( B ( [ ] ) ) , P = u ( ! 0 ) , b = null ; const T = typeof window < "u" && window . location . port === "5173" ? ` http:// ${ window . location . hostname } :8099/api ` : "/api" , U = [ 51.361 , 7.476 ] , W = 12 ; async function X ( ) { try { const t = await fetch ( ` ${ T } /orte ` ) ; t . ok && h ( g , await t . json ( ) , ! 0 ) } catch ( t ) { console . error ( "Fehler beim Laden der Orte:" , t ) } finally { h ( P , ! 1 ) } } async function H ( t ) { h ( p , t , ! 0 ) ; try { const e = await fetch ( ` ${ T } /orte/ ${ t . id } /vorlagen ` ) ; e . ok && h ( x , await e . json ( ) , ! 0 ) } catch ( e ) { console . error ( "Fehler:" , e ) } } ve ( async ( ) => { await X ( ) ; const t = await S ( ( ) => import ( "../chunks/CjPBq9Bq.js" ) . then ( e => e . l ) , [ ] , import . meta . url ) ; await S ( ( ) => Promise . resolve ( { } ) , _ _vite _ _mapDeps ( [ 0 ] ) , import . meta . url ) , b = t . map ( "map" ) . setView ( U , W ) , t . tileLayer ( "https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png" , { attribution : '© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a>' } ) . addTo ( b ) ; for ( const e of o ( g ) ) { const s = t . circleMarker ( [ e . lat , e . lon ] , { radius : Math . min ( 8 + e . vorlage _count * 2 , 20 ) , fillColor : "#16a34a" , color : "#166534" , weight : 2 , opacity : 1 , fillOpacity : . 7 } ) . addTo ( b ) ; s . bindPopup ( `
2026-04-01 10:36:22 +02:00
< strong > $ { e . name } < / s t r o n g > < b r >
$ { e . vorlage _count } Vorlage ( n )
2026-04-01 14:32:06 +02:00
` ),s.on("click",()=>H(e))}});var j=Ve();_e("hbihfm",t=>{var e=be();fe(()=>{ue.title="Karte - Antragstracker Hagen"}),l(t,e)});var G=i(ge(j),2),y=r(G),w=r(y),Y=r(w);{var ee=t=>{var e=ye();l(t,e)},te=t=>{var e=we();l(t,e)};L(Y,t=>{o(P)?t(ee):t(te,-1)})}a(w);var I=i(w,2),ae=r(I);a(I),a(y);var K=i(y,2),N=r(K);{var re=t=>{var e=Ae(),s=r(e),v=r(s,!0);a(s);var c=i(s,2),k=r(c);a(c);var m=i(c,2);{var O=A=>{var E=Oe();Z(E,21,()=>o(x),q,(se,f)=>{var $ =ke(),V=r( $ ),M=r(V),z=r(M),ie=r(z,!0);a(z);var D=i(z,2),le=r(D,!0);a(D),a(M);var F=i(M,2),ne=r(F,!0);a(F),a(V),a( $ ),_(()=>{he(V,"href", ` / vorlagen / $ { o ( f ) . id ? ? "" } ` ),d(ie,o(f).aktenzeichen),d(le,o(f).typ),d(ne,o(f).betreff)}),l(se, $ )}),a(E),l(A,E)};L(m,A=>{o(x).length>0&&A(O)})}a(e),_(()=>{d(v,o(p).name),d(k, ` $ { o ( p ) . vorlage _count ? ? "" } Vorlage ( n ) betreffen diesen Ort ` )}),l(t,e)},oe=t=>{var e=Ee();l(t,e)};L(N,t=>{o(p)?t(re):t(oe,-1)})}var R=i(N,2),C=i(r(R),2);Z(C,21,()=>o(g),q,(t,e)=>{var s= $ e(),v=r(s),c=r(v),k=r(c,!0);a(c);var m=i(c,2),O=r(m);a(m),a(v),a(s),_(()=>{xe(v,1, ` w - full text - left px - 3 py - 2 rounded - lg hover : bg - gray - 50 transition - colors text - sm
$ { o ( p ) ? . id === o ( e ) . id ? "bg-green-50 text-green-700" : "text-gray-700" } ` ),d(k,o(e).name),d(O, ` ( $ { o ( e ) . vorlage _count ? ? "" } ) ` )}),ce("click",v,()=>H(o(e))),l(t,s)}),a(C),a(R),a(K),a(G),_(()=>d(ae, ` $ { o ( g ) . length ? ? "" } Orte geocodiert • Marker - Größe = Anzahl Vorlagen ` )),l(J,j),me()}de(["click"]);export{Ke as component};