PageSourceSearch

https://www.nolimit-aventure.com/assets/ParkActivityLocalPage-uStNLqHK.js

js nolimit-aventure.com collected 2026-10-08 18:38:30 UTC 6,303 bytes, 1 lines download raw bytes

1import{r as j,j as e}from"./react-vendor-SL2CuwCp.js";import{u as C}from"./usePark-B8qvHWL1.js";import{u as L}from"./useActiviesData-Bxjmrz1y.js";import{P}from"./PageBreadcrumb-CIC2xIaB.js";import{ad as z,A as u,t as y,M as E,k as I,U as R,C as D}from"./index-B39jxOKW.js";import{c as M,L as d}from"./router-CU9rlUgi.js";import"./query-DEtUnGgE.js";import"./house-D9CFg9l9.js";import"./helmet-CdbWDaiJ.js";import"./motion-Dx0sOgyJ.js";const r="#357600",O="#eb700f",N="#111111";function J(){const{parkId:S,activiteSlug:x}=M(),s=C(),{activities:g,loading:k}=L(),t=j.useMemo(()=>g.find(n=>n.slug===x||n.id===x)||null,[g,x]),a=s?.location?.split(/[,(]/)[0]?.trim()||s?.name||"",i=s?.departement||"",m=t&&s?`${t.name} à ${a}${i?`, ${i}`:""}`:"";if(j.useEffect(()=>{if(!t||!s)return;const n=`${m} | Nolimit Aventure`,h=`${t.name} à ${a} au parc Nolimit Aventure ${s.name}. Horaires, tarifs, âge minimum, réservation en ligne. ${s.location}.`.slice(0,300),w=`${z}/parcs/${s.id}/${t.slug}`;document.title=n;const l=(v,$,A)=>{let o=document.head.querySelector(v);if(!o){o=document.createElement("meta");const p=v.replace(/^meta\[/,"").replace(/\]$/,""),b=p.indexOf("=");o.setAttribute(p.slice(0,b),p.slice(b+1).replace(/^"|"$/g,"")),document.head.appendChild(o)}o.setAttribute($,A)};l('meta[name="description"]',"content",h),l('meta[name="robots"]',"content","index, follow, max-image-preview:large"),l('meta[property="og:title"]',"content",n),l('meta[property="og:description"]',"content",h),(s.image||s.heroImage)&&l('meta[property="og:image"]',"content",s.heroImage||s.image);let c=document.head.querySelector('link[rel="canonical"]');c||(c=document.createElement("link"),c.setAttribute("rel","canonical"),document.head.appendChild(c)),c.setAttribute("href",w)},[t,s,a,i,m]),k||!s)return e.jsx("div",{className:"min-h-[60vh] flex items-center justify-center text-gray-400",children:"Chargement…"});if(!t)return e.jsxs("div",{className:"min-h-[60vh] flex flex-col items-center justify-center gap-4 px-4 text-center",children:[e.jsx("h1",{className:"text-2xl font-black text-gray-900",children:"Activité introuvable pour ce parc"}),e.jsxs(d,{to:y("activities"),className:"inline-flex items-center gap-2 px-6 py-3 rounded-2xl font-bold text-white",style:{backgroundColor:r},children:["Voir toutes les activités ",e.jsx(u,{className:"size-4"})]})]});const f=t.image||s.heroImage||s.image;return e.jsxs("div",{className:"bg-white",children:[e.jsxs("div",{className:"relative h-[42vh] min-h-[320px] overflow-hidden",children:[f&&e.jsx("img",{src:f,alt:m,className:"w-full h-full object-cover"}),e.jsx("div",{className:"absolute inset-0 bg-gradient-to-t from-black/70 via-black/30 to-black/20"}),e.jsx("div",{className:"absolute inset-0 flex items-end",children:e.jsxs("div",{className:"container mx-auto px-4 pb-8 max-w-5xl",children:[e.jsxs("div",{className:"inline-flex items-center gap-2 px-3 py-1.5 rounded-full text-xs font-bold text-white mb-3",style:{backgroundColor:`${r}DD`},children:[e.jsx(E,{className:"size-3.5"})," ",s.name]}),e.jsxs("h1",{className:"text-4xl md:text-6xl font-black text-white leading-tight drop-shadow-xl",children:[t.emoji?`${t.emoji} `:"",m]})]})})]}),e.jsx(P,{items:[{label:"Parcs"},{label:s.name},{label:t.name}]}),e.jsxs("div",{className:"container mx-auto px-4 py-12 max-w-3xl",children:[e.jsxs("div",{className:"flex flex-wrap gap-3 mb-8 text-sm",children:[t.duration&&e.jsxs("span",{className:"inline-flex items-center gap-1.5 px-3 py-1.5 rounded-full bg-gray-100 text-gray-700",children:[e.jsx(I,{className:"size-4",style:{color:r}}),t.duration]}),t.minAge?e.jsxs("span",{className:"inline-flex items-center gap-1.5 px-3 py-1.5 rounded-full bg-gray-100 text-gray-700",children:[e.jsx(R,{className:"size-4",style:{color:r}}),"Dès ",t.minAge," ans"]}):null,t.difficulty&&e.jsxs("span",{className:"inline-flex items-center gap-1.5 px-3 py-1.5 rounded-full bg-gray-100 text-gray-700",children:["Niveau : ",t.difficulty]})]}),e.jsxs("p",{className:"text-lg text-gray-700 leading-relaxed mb-6",children:["Envie de faire du ",e.jsx("strong",{children:t.name.toLowerCase()})," à ",e.jsx("strong",{children:a}),i?`, ${i}`:""," ? Le parc ",e.jsxs("strong",{children:["Nolimit Aventure ",s.name]})," vous accueille pour vivre l'expérience ",t.name.toLowerCase(),"dans un cadre naturel, encadré par des professionnels. Une sortie idéale entre amis, en famille ou en groupe, accessible dès ",t.minAge||6," ans."]}),t.description&&e.jsx("p",{className:"text-gray-600 leading-relaxed mb-6",children:t.description}),e.jsxs("h2",{className:"text-2xl font-black mt-10 mb-3",style:{color:N},children:["Le ",t.name.toLowerCase()," au parc de ",a]}),e.jsxs("p",{className:"text-gray-600 leading-relaxed mb-6",children:["Situé à ",s.location||a,", le parc ",s.name," propose le ",t.name.toLowerCase()," parmi ses activités.",s.address?` Adresse : ${s.address}.`:""," Les tarifs démarrent à partir de ",s.minPrice,"€ par personne. Pensez à réserver votre créneau à l'avance, surtout le week-end et pendant les vacances scolaires."]}),e.jsxs("div",{className:"rounded-3xl p-6 text-white my-10",style:{background:`linear-gradient(135deg, ${N} 0%, #1a2a00 100%)`},children:[e.jsxs("h3",{className:"font-black text-lg mb-1",children:["Réservez votre ",t.name.toLowerCase()," à ",a]}),e.jsx("p",{className:"text-white/60 text-sm mb-4",children:"Places limitées, réservation en ligne recommandée."}),e.jsxs(d,{to:y("booking"),className:"inline-flex items-center justify-center gap-2 px-5 py-3 rounded-2xl font-black text-sm text-white",style:{background:`linear-gradient(135deg, ${O}, #d66310)`},children:["Réserver ",e.jsx(u,{className:"size-4"})]})]}),e.jsxs("div",{className:"flex flex-col sm:flex-row gap-3",children:[e.jsxs(d,{to:`/activites/${t.slug}`,className:"flex-1 inline-flex items-center justify-center gap-2 px-4 py-3 rounded-2xl font-bold text-sm border-2",style:{borderColor:r,color:r},children:["Tout savoir sur le ",t.name.toLowerCase()," ",e.jsx(u,{className:"size-4"})]}),e.jsxs(d,{to:`/parcs/${s.id}`,className:"flex-1 inline-flex items-center justify-center gap-2 px-4 py-3 rounded-2xl font-bold text-sm border-2 border-gray-200 text-gray-700",children:[e.jsx(D,{className:"size-4"})," Le parc ",s.name]})]})]})]})}export{J as ParkActivityLocalPage};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.