PageSourceSearch

https://koh-chang.lovable.app/assets/_lang-huTfqvOa.js

js koh-chang.lovable.app collected 2026-10-03 03:35:07 UTC 6,746 bytes, 1 lines download raw bytes

1import{u as j,r as b,a as v,b as N,T as y,j as e,M as d,L as k,E as w,C as f,F as h,c as i,R as E,i as _,O as L}from"./index-CCtdw7Sk.js";function A(s){const l=j(),r=b.useRef(void 0);return v(l.stores.location,n=>{const c=n;if(l.options.defaultStructuralSharing){const o=N(r.current,c);return r.current=o,o}return c})}const m=[{key:"home",slug:""},{key:"centre",slug:"centre"},{key:"sites",slug:"sites"},{key:"fauna",slug:"faune"},{key:"reviews",slug:"avis"}];function x({lang:s,slug:l,className:r,children:n}){const c={lang:s};return l===""?e.jsx(i,{to:"/$lang",params:c,className:r,children:n}):l==="centre"?e.jsx(i,{to:"/$lang/centre",params:c,className:r,children:n}):l==="sites"?e.jsx(i,{to:"/$lang/sites",params:c,className:r,children:n}):l==="faune"?e.jsx(i,{to:"/$lang/faune",params:c,className:r,children:n}):e.jsx(i,{to:"/$lang/avis",params:c,className:r,children:n})}function R({lang:s,children:l}){const r=y[s],n=w[s],o=A().pathname.replace(/^\/(fr|en|th)/,"").replace(/^\//,""),a=r.footerCols;return e.jsxs("div",{className:"min-h-screen flex flex-col bg-background",children:[e.jsx("div",{className:"bg-deep text-deep-foreground text-xs",children:e.jsxs("div",{className:"container-x py-2 flex items-center justify-between gap-4",children:[e.jsx("span",{className:"opacity-80 italic",children:r.tagline}),e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("a",{href:"tel:+66950203540",className:"hover:text-accent transition-colors hidden sm:inline",children:"☎ +66 95 020 3540"}),e.jsxs("a",{href:d,target:"_blank",rel:"noopener noreferrer",className:"hover:text-accent transition-colors hidden sm:inline",children:["🔐 ",r.nav.login]}),e.jsx("div",{className:"flex items-center gap-1",children:k.map(t=>{const p=m.find(g=>g.slug===o)?.slug??"";return e.jsx(x,{lang:t,slug:p,className:`px-2 py-1 rounded ${t===s?"bg-accent text-accent-foreground":"hover:bg-white/10"}`,children:t.toUpperCase()},t)})})]})]})}),e.jsx("header",{className:"sticky top-0 z-40 glass border-b border-border",children:e.jsxs("div",{className:"container-x py-3 flex items-center justify-between gap-4",children:[e.jsxs(x,{lang:s,slug:"",className:"flex items-center gap-2 group",children:[e.jsx("span",{className:"text-2xl",children:"🌊"}),e.jsxs("div",{className:"leading-tight",children:[e.jsx("div",{className:"font-display text-lg font-bold text-primary group-hover:text-accent transition-colors",children:"Plongée Asie"}),e.jsx("div",{className:"text-xs text-muted-foreground -mt-0.5",children:"Koh Chang · Thailand"})]})]}),e.jsxs("nav",{className:"hidden lg:flex items-center gap-1",children:[e.jsxs("a",{href:n.href,target:"_blank",rel:"noopener noreferrer",className:"px-3 py-2 rounded-full text-sm font-medium text-foreground hover:bg-secondary transition-colors",children:["🌐 ",n.label]}),m.map(t=>{const u=o===t.slug;return e.jsx(x,{lang:s,slug:t.slug,className:`px-3 py-2 rounded-full text-sm font-medium transition-colors ${u?"bg-primary text-primary-foreground":"text-foreground hover:bg-secondary"}`,children:r.nav[t.key]},t.key)}),e.jsxs("a",{href:d,target:"_blank",rel:"noopener noreferrer",className:"px-3 py-2 rounded-full text-sm font-medium text-foreground hover:bg-secondary transition-colors",children:["🔐 ",r.nav.login]}),e.jsx("a",{href:f[s],target:"_blank",rel:"noopener noreferrer",className:"ml-2 btn-base btn-coral !py-2 !px-4 text-sm",children:r.nav.contact})]}),e.jsxs("nav",{className:"lg:hidden flex items-center gap-1 overflow-x-auto max-w-[60vw]",children:[e.jsx("a",{href:n.href,target:"_blank",rel:"noopener noreferrer",className:"px-2 py-1 text-xs whitespace-nowrap text-foreground hover:text-accent",children:n.label}),m.map(t=>e.jsx(x,{lang:s,slug:t.slug,className:"px-2 py-1 text-xs whitespace-nowrap text-foreground hover:text-accent",children:r.nav[t.key]},t.key)),e.jsx("a",{href:d,target:"_blank",rel:"noopener noreferrer",className:"px-2 py-1 text-xs whitespace-nowrap text-foreground hover:text-accent",children:r.nav.login})]})]})}),e.jsx("main",{className:"flex-1",children:l}),e.jsxs("footer",{className:"bg-deep text-deep-foreground mt-16",children:[e.jsxs("div",{className:"container-x py-14 grid md:grid-cols-2 lg:grid-cols-4 gap-8",children:[e.jsxs("div",{children:[e.jsxs("div",{className:"font-display text-xl font-bold mb-3",children:["🌊 ",a.brand.title]}),e.jsx("p",{className:"text-sm opacity-85 leading-relaxed mb-3",children:a.brand.about}),e.jsx("p",{className:"text-sm italic text-accent",children:a.brand.motto}
1)]}),e.jsxs("div",{children:[e.jsx("div",{className:"font-semibold mb-3 text-accent",children:a.nav.title}),e.jsx("ul",{className:"space-y-1.5 text-sm opacity-90",children:a.nav.links.map(t=>t.slug!==void 0?e.jsx("li",{children:e.jsx(x,{lang:s,slug:t.slug,className:"hover:text-accent",children:t.label})},t.label):e.jsx("li",{children:e.jsx("a",{href:t.href,target:"_blank",rel:"noopener noreferrer",className:"hover:text-accent",children:t.label})},t.label))})]}),e.jsxs("div",{children:[e.jsx("div",{className:"font-semibold mb-3 text-accent",children:a.contact.title}),e.jsxs("ul",{className:"space-y-1.5 text-sm opacity-90",children:[e.jsx("li",{children:e.jsxs("a",{href:f[s],target:"_blank",rel:"noopener noreferrer",className:"hover:text-accent",children:["✉ ",a.contact.contactLabel]})}),e.jsx("li",{children:e.jsxs("a",{href:h.WHATSAPP_GENERIC,target:"_blank",rel:"noopener noreferrer",className:"hover:text-accent",children:["💬 ",a.contact.whatsapp]})}),e.jsx("li",{children:e.jsxs("a",{href:h.TELEGRAM,target:"_blank",rel:"noopener noreferrer",className:"hover:text-accent",children:["✈ ",a.contact.telegram]})}),e.jsx("li",{children:e.jsxs("a",{href:"tel:+66950203540",className:"hover:text-accent",children:["☎ ",a.contact.phone]})}),e.jsx("li",{children:e.jsx("a",{href:h.EMAIL,className:"hover:text-accent break-all",children:a.contact.email})}),e.jsxs("li",{className:"opacity-80",children:["🕗 ",a.contact.hours]})]})]}),e.jsxs("div",{children:[e.jsx("div",{className:"font-semibold mb-3 text-accent",children:a.links.title}),e.jsxs("ul",{className:"space-y-1.5 text-sm opacity-90",children:[a.links.items.map(t=>e.jsx("li",{children:e.jsx("a",{href:t.href,target:"_blank",rel:"noopener noreferrer",className:"hover:text-accent",children:t.label})},t.label)),e.jsx("li",{children:e.jsxs("a",{href:d,target:"_blank",rel:"noopener noreferrer",className:"hover:text-accent",children:["🔐 ",r.nav.login]})})]})]})]}),e.jsxs("div",{className:"border-t border-white/10 py-4 text-center text-xs opacity-70",children:["© 2000 – ",new Date().getFullYear()," Plongée Asie · ",r.footer.rights]})]})]})}function T(){const{lang:s}=E.useParams();return _(s)?e.jsx(R,{lang:s,children:e.jsx(L,{})}):null}export{T as component};

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.