import{n as e}from"./chunk-B3K2TuZy.js";import{a as t,d as n,p as r,r as i,t as a}from"./jsx-runtime-C2-Nj7wv.js";import{t as o}from"./useTranslation-CVci57dC.js";import{i as s}from"./eventService-DqkhQ37J.js";import{a as c,i as l,n as u}from"./urlUtils-BfUddnYu.js";import{f as d}from"./index-ExJrxI2H.js";import{t as f}from"./associationService-DOKSox7a.js";import{t as p}from"./SEOHead-BiG-LOW5.js";import{n as m,r as h,t as g}from"./frenchRegions-DlMoGD3N.js";var _=e(r()),v=a();function y(e,t){let n=e.location?.postalCode?.trim().slice(0,2).toUpperCase();if(n&&t.departments.includes(n))return!0;let r=e.location?.city?.toLowerCase();return!!r&&t.cities.some(e=>e.toLowerCase()===r)}var b=()=>{let{t:e}=o(),{region:r}=n(),a=r?m[r]:void 0,[b,x]=(0,_.useState)([]),[S,C]=(0,_.useState)([]);(0,_.useEffect)(()=>{if(!a)return;let e=!0;return s.getEvents().then(t=>{e&&x(t.filter(e=>y(e,a)).slice(0,6))}).catch(()=>{}),f.getAssociations({region:a.name,page_size:100}).then(t=>{e&&C(t.associations||[])}).catch(()=>{}),()=>{e=!1}},[a]);let w=(0,_.useMemo)(()=>{let e=new Map;for(let t of S){if(!t.city)continue;let n=c(t.city);n&&e.set(n,t.city)}return e},[S]),T=(0,_.useMemo)(()=>{let e=[...w.entries()].map(([e,t])=>({name:t,slug:e})).sort((e,t)=>e.name.localeCompare(t.name,`fr`)),t=a?a.cities.filter(e=>!w.has(c(e))).map(e=>({name:e,slug:void 0})):[];return[...e,...t].slice(0,14)},[w,a]),E=(0,_.useMemo)(()=>g.filter(e=>e.slug!==a?.slug).slice(0,6),[a]);return a?(0,v.jsxs)(`div`,{className:`min-h-screen bg-surface-2`,children:[(0,v.jsx)(p,{...d(a)}),(0,v.jsxs)(`div`,{className:`max-w-5xl mx-auto px-6 pt-6 text-xs text-fg-faint`,children:[(0,v.jsx)(i,{to:`/airsoft`,className:`hover:text-fg-muted`,children:e(`regionHub.breadcrumbRegions`)}),(0,v.jsx)(`span`,{className:`mx-1.5`,children:`/`}),(0,v.jsx)(`span`,{className:`text-fg-muted`,children:a.name})]}),(0,v.jsxs)(`section`,{className:`max-w-5xl mx-auto px-6 pt-4 pb-8`,children:[(0,v.jsx)(`h1`,{className:`text-3xl md:text-4xl font-bold text-fg leading-tight mb-4`,children:e(`regionHub.title`,{region:a.name})}),(0,v.jsx)(`p`,{className:`text-fg-muted text-sm md:text-base leading-relaxed max-w-3xl`,children:a.intro}),(0,v.jsx)(`div`,{className:`flex flex-wrap gap-2 mt-5`,children:T.map(({name:t,slug:n})=>(0,v.jsx)(i,{to:n?`/airsoft/${a.slug}/${n}`:h(t),title:e(n?`regionHub.cityChipVisit`:`regionHub.cityChipOrganize`,{city:t}),className:`px-3 py-1 bg-surface border border-line rounded-full text-xs font-medium text-fg-muted hover:border-primary-400 hover:text-accent-hover hover:bg-primary-50 transition-colors`,children:t},t))})]}),(0,v.jsxs)(`div`,{className:`max-w-5xl mx-auto px-6 space-y-10 pb-16`,children:[(0,v.jsxs)(`section`,{children:[(0,v.jsxs)(`div`,{className:`flex items-center justify-between mb-4`,children:[(0,v.jsx)(`h2`,{className:`text-lg font-bold text-fg`,children:e(`regionHub.eventsTitle`,{region:a.name})}),(0,v.jsx)(i,{to:`/events`,className:`text-xs font-semibold text-accent hover:underline`,children:e(`regionHub.seeAll`)})]}),b.length>0?(0,v.jsx)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 gap-3`,children:b.map(e=>(0,v.jsxs)(i,{to:l(e.id,e.title,`recommended`),className:`bg-surface rounded-xl border border-line-soft p-4 hover:shadow-md transition-shadow`,children:[(0,v.jsx)(`h3`,{className:`text-sm font-semibold text-fg truncate`,children:e.title}),(0,v.jsx)(`p`,{className:`text-xs text-fg-subtle mt-1`,children:[e.location?.city,e.startDate].filter(Boolean).join(` · `)})]},e.id))}):(0,v.jsxs)(`div`,{className:`bg-surface rounded-xl border border-dashed border-line p-6 text-center`,children:[(0,v.jsx)(`p`,{className:`text-sm text-fg-subtle mb-3`,children:e(`regionHub.eventsEmpty`,{region:a.name})}),(0,v.jsx)(i,{to:h(a.cities[0]),className:`inline-block px-4 py-2 bg-inverse text-white text-xs font-semibold rounded-lg hover:bg-inverse-2 transition-colors`,children:e(`regionHub.eventsEmptyCta`)})]})]}),(0,v.jsxs)(`section`,{children:[(0,v.jsxs)(`div`,{className:`flex items-center justify-between mb-4`,children:[(0,v.jsx)(`h2`,{className:`text-lg font-bold text-fg`,children:e(`regionHub.associationsTitle`,{region:a.name})}),(0,v.jsx)(i,{to:`/associations`,className:`text-xs font-semibold text-accent hover:underline`,children:e(`regionHub.seeAll`)})]}),S.length>0?(0,v.jsx)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 gap-3`,children:S.slice(0,6).map(t=>(0,v.jsxs)(i,{to:u(t.id,t.name),className:`bg-surface rounded-xl border border-line-soft p-4 hover:shadow-md transition-shadow`,children:[(0,v.jsx)(`h3`,{className:`text-sm font-semibold text-fg truncate`,children:t.name}),(0,v.jsx)(`p`,{className:`text-xs text-fg-subtle mt-1`,children:[t.city,t.region].filter(Boolean).join(`, `)||e(`regionHub.associationFallback`)})]},t.id))}):(0,v.jsxs)(`div`,{className:`bg-surface rounded-xl border border-dashed border-line p-6 text-center`,children:[(0,v.jsx)(`p`,{className:`text-sm text-fg-subtle mb-3`,children:e(`regionHub.associationsEmpty`,{region:a.name})}),(0,v.jsx)(i,{to:`/associations/create`,className:`inline-block px-4 py-2 bg-inverse text-white text-xs font-semibold rounded-lg hover:bg-inverse-2 transition-colors`,children:e(`regionHub.associationsEmptyCta`)})]})]}),(0,v.jsxs)(`section`,{className:`bg-surface rounded-2xl border border-line-soft p-6`,children:[(0,v.jsx)(`h2`,{className:`text-lg font-bold text-fg mb-3`,children:e(`regionHub.startTitle`,{region:a.name})}),(0,v.jsx)(`p`,{className:`text-sm text-fg-muted leading-relaxed mb-3`,children:e(`regionHub.startParagraph1`,{region:a.name})}),(0,v.jsxs)(`p`,{className:`text-sm text-fg-muted leading-relaxed`,children:[e(`regionHub.startParagraph2Before`,{region:a.name}),(0,v.jsx)(i,{to:`/blog`,className:`text-accent hover:underline`,children:e(`regionHub.startBlogLink`)}),e(`regionHub.startParagraph2After`)]})]}),(0,v.jsxs)(`section`,{children:[(0,v.jsx)(`h2`,{className:`text-sm font-semibold text-fg-subtle mb-3`,children:e(`regionHub.otherRegionsTitle`)}),(0,v.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[E.map(e=>(0,v.jsx)(i,{to:`/airsoft/${e.slug}`,className:`px-3 py-1.5 bg-surface border border-line rounded-full text-xs font-medium text-fg-muted hover:border-line-strong hover:bg-surface-2 transition-colors`,children:e.name},e.slug)),(0,v.jsx)(i,{to:`/airsoft`,className:`px-3 py-1.5 bg-inverse text-white rounded-full text-xs font-semibold hover:bg-inverse-2 transition-colors`,children:e(`regionHub.otherRegionsAll`)})]})]})]})]}):(0,v.jsx)(t,{to:`/airsoft`,replace:!0})};export{b as default};