1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5861],{2504:(e,t,r)=>{Promise.resolve().then(r.t.bind(r,16976,23)),Promise.resolve().then(r.t.bind(r,87385,23)),Promise.resolve().then(r.bind(r,88777))},12867:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});var a=r(82558);let o=function(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return t.filter((e,t,r)=>!!e&&""!==e.trim()&&r.indexOf(e)===t).join(" ").trim()},i=e=>{let t=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,r)=>r?r.toUpperCase():t.toLowerCase());return t.charAt(0).toUpperCase()+t.slice(1)};var s={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let l=(0,a.forwardRef)((e,t)=>{let{color:r="currentColor",size:i=24,strokeWidth:l=2,absoluteStrokeWidth:n,className:c="",children:u,iconNode:d,...p}=e;return(0,a.createElement)("svg",{ref:t,...s,width:i,height:i,stroke:r,strokeWidth:n?24*Number(l)/Number(i):l,className:o("lucide",c),...!u&&!(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0;return!1})(p)&&{"aria-hidden":"true"},...p},[...d.map(e=>{let[t,r]=e;return(0,a.createElement)(t,r)}),...Array.isArray(u)?u:[u]])}),n=(e,t)=>{let r=(0,a.forwardRef)((r,s)=>{let{className:n,...c}=r;return(0,a.createElement)(l,{ref:s,iconNode:t,className:o("lucide-".concat(i(e).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()),"lucide-".concat(e),n),...c})});return r.displayName=i(e),r}},34268:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(12867).A)("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]])},37839:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),!function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{default:function(){return n},getImageProps:function(){return l}});let a=r(62192),o=r(43777),i=r(87385),s=a._(r(73379));function l(e){let{props:t}=(0,o.getImgProps)(e,{defaultLoader:s.default,imgConf:{deviceSizes:[640,750,828,1080,1200,1920],imageSizes:[16,32,48,64,96,128,256,384],qualities:[75,85,90,100],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!1}});for(let[e,r]of Object.entries(t))void 0===r&&delete t[e];return{props:t}}let n=i.Image},51320:(e,t,r)=>{"use strict";r.d(t,{default:()=>o.a});var a=r(37839),o=r.n(a)},59252:(e,t,r)=>{"use strict";r.d(t,{N:()=>y});var a=r(83406),o=r(82558),i=r(67583),s=r(11059),l=r(57708),n=r(8123),c=r(13691),u=r(74338);function d(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}class p extends o.Component{getSnapshotBeforeUpdate(e){let t=this.props.childRef.current;if(t&&e.isPresent&&!this.props.isPresent&&!1!==this.props.pop){let e=t.offsetParent,r=(0,c.s)(e)&&e.offsetWidth||0,a=(0,c.s)(e)&&e.offsetHeight||0,o=this.props.sizeRef.current;o.height=t.offsetHeight||0,o.width=t.offsetWidth||0,o.top=t.offsetTop,o.left=t.offsetLeft,o.right=r-o.width-o.left,o.bottom=a-o.height-o.top}return null}componentDidUpdate(){}render(){return this.props.children}}function m(e){var t,r;let{children:i,isPresent:s,anchorX:l,anchorY:n,root:c,pop:m}=e,h=(0,o.useId)(),g=(0,o.useRef)(null),f=(0,o.useRef)({width:0,height:0,top:0,left:0,right:0,bottom:0}),{nonce:b}=(0,o.useContext)(u.Q),x=function(...e){return o.useCallback(function(...e){return t=>{let r=!1,a=e.map(e=>{let a=d(e,t);return r||"function"!=typeof a||(r=!0),a});if(r)return()=>{for(let t=0;t<a.length;t++){let r=a[t];"function"==typeof r?r():d(e[t],null)}}}}(...e),e)}(g,null!=(r=null==(t=i.props)?void 0:t.ref)?r:null==i?void 0:i.ref);return(0,o.useInsertionEffect)(()=>{let{width:e,height:t,top:r,left:a,right:o,bottom:i}=f.current;if(s||!1===m||!g.current||!e||!t)return;g.current.dataset.motionPopId=h;let u=document.createElement("style");b&&(u.nonce=b);let d=null!=c?c:document.head;return d.appendChild(u),u.sheet&&u.sheet.insertRule('\n [data-motion-pop-id="'.concat(h,'"] {\n position: absolute !important;\n width: ').concat(e,"px !important;\n height: ").concat(t,"px !important;\n ").concat("left"===l?"left: ".concat(a):"right: ".concat(o),"px !important;\n ").concat("bottom"===n?"bottom: ".concat(i):"top: ".concat(r),"px !important;\n }\n ")),()=>{d.contains(u)&&d.removeChild(u)}},[s]),(0,a.jsx)(p,{isPresent:s,childRef:g,sizeRef:f,pop:m,children:!1===m?i:o.cloneElement(i,{ref:x})})}let h=e=>{let{children:t,initial:r,isPresent:i,onExitComplete:l,custom:c,presenceAffectsLayout:u,mode:d,anchorX:p,anchorY:h,root:f}=e,b=(0,s.M)(g),x=(0,o.useId)(),y=!0,w=(0,o.useMemo)(()=>(y=!1,{id:x,initial:r,isPresent:i,custom:c,onExitComplete:e=>
1{for(let t of(b.set(e,!0),b.values()))if(!t)return;l&&l()},register:e=>(b.set(e,!1),()=>b.delete(e))}),[i,b,l]);return u&&y&&(w={...w}),(0,o.useMemo)(()=>{b.forEach((e,t)=>b.set(t,!1))},[i]),o.useEffect(()=>{i||b.size||!l||l()},[i]),t=(0,a.jsx)(m,{pop:"popLayout"===d,isPresent:i,anchorX:p,anchorY:h,root:f,children:t}),(0,a.jsx)(n.t.Provider,{value:w,children:t})};function g(){return new Map}var f=r(8508);let b=e=>e.key||"";function x(e){let t=[];return o.Children.forEach(e,e=>{(0,o.isValidElement)(e)&&t.push(e)}),t}let y=e=>{let{children:t,custom:r,initial:n=!0,onExitComplete:c,presenceAffectsLayout:u=!0,mode:d="sync",propagate:p=!1,anchorX:m="left",anchorY:g="top",root:y}=e,[w,v]=(0,f.xQ)(p),j=(0,o.useMemo)(()=>x(t),[t]),C=p&&!w?[]:j.map(b),k=(0,o.useRef)(!0),E=(0,o.useRef)(j),P=(0,s.M)(()=>new Map),N=(0,o.useRef)(new Set),[A,R]=(0,o.useState)(j),[S,L]=(0,o.useState)(j);(0,l.E)(()=>{k.current=!1,E.current=j;for(let e=0;e<S.length;e++){let t=b(S[e]);C.includes(t)?(P.delete(t),N.current.delete(t)):!0!==P.get(t)&&P.set(t,!1)}},[S,C.length,C.join("-")]);let _=[];if(j!==A){let e=[...j];for(let t=0;t<S.length;t++){let r=S[t],a=b(r);C.includes(a)||(e.splice(t,0,r),_.push(r))}return"wait"===d&&_.length&&(e=_),L(x(e)),R(j),null}let{forceRender:z}=(0,o.useContext)(i.L);return(0,a.jsx)(a.Fragment,{children:S.map(e=>{let t=b(e),o=(!p||!!w)&&(j===S||C.includes(t));return(0,a.jsx)(h,{isPresent:o,initial:(!k.current||!!n)&&void 0,custom:r,presenceAffectsLayout:u,mode:d,root:y,onExitComplete:o?void 0:()=>{if(N.current.has(t)||(N.current.add(t),!P.has(t)))return;P.set(t,!0);let e=!0;P.forEach(t=>{t||(e=!1)}),e&&(null==z||z(),L(E.current),p&&(null==v||v()),c&&c())},anchorX:m,anchorY:g,children:e},t)})})}},88777:(e,t,r)=>{"use strict";r.d(t,{default:()=>m});var a=r(83406),o=r(96854),i=r(59252),s=r(11092),l=r(51320),n=r(82558),c=r(34268);function u(e){let{item:t,onClose:r}=e,u=(0,o.c)("gallery");return(0,n.useEffect)(()=>{if(!t)return;let e=e=>{"Escape"===e.key&&r()};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)},[t,r]),(0,a.jsx)(i.N,{children:t&&(0,a.jsx)(s.P.div,{initial:{opacity:0}
1,animate:{opacity:1},exit:{opacity:0},transition:{duration:.25},className:"fixed inset-0 z-50 flex items-center justify-center bg-black/70 backdrop-blur-sm p-4",onClick:r,children:(0,a.jsxs)(s.P.div,{initial:{scale:.9,opacity:0},animate:{scale:1,opacity:1},exit:{scale:.9,opacity:0},transition:{duration:.25},className:"relative w-full max-w-4xl aspect-[4/3] rounded-2xl overflow-hidden shadow-2xl",onClick:e=>e.stopPropagation(),children:[(0,a.jsx)(l.default,{src:t.src,alt:t.label,fill:!0,className:"object-cover",sizes:"(max-width: 1024px) 95vw, 900px",priority:!0}),(0,a.jsxs)("div",{className:"absolute inset-x-0 bottom-0 bg-gradient-to-t from-black/60 to-transparent p-6",children:[(0,a.jsx)("p",{className:"font-display text-white text-2xl md:text-3xl drop-shadow-lg mb-1",children:t.label}),(0,a.jsx)("p",{className:"font-sans text-white/80 text-sm uppercase tracking-wide",children:u(t.category)})]}),(0,a.jsx)("button",{onClick:r,className:"absolute top-4 right-4 w-11 h-11 rounded-full bg-white/20 hover:bg-white/40 flex items-center justify-center transition-colors text-white","aria-label":u("close"),children:(0,a.jsx)(c.A,{className:"w-5 h-5"})})]})})})}let d=[{id:1,category:"rooms",label:"Chambre",src:"/images/hotel/facade-hotel.webp"},{id:2,category:"restaurant",label:"Plat de Saison",src:"/images/restaurant/plat-saison-1.webp"},{id:3,category:"hotel",label:"Reception",src:"/images/hotel/reception.webp"},{id:4,category:"restaurant",label:"Hotel",src:"/images/hotel/photo-hotel-new-1.webp"},{id:5,category:"restaurant",label:"Hotel",src:"/images/hotel/photo-hotel-new-2.webp"},{id:6,category:"rooms",label:"Suite Duplex",src:"/images/rooms/suite-duplex-main.jpg"},{id:7,category:"rooms",label:"Chambre Executive",src:"/images/rooms/chambre-executive-main.jpg"},{id:8,category:"rooms",label:"Chambre Privilege",src:"/images/rooms/chambre-privilege.png"},{id:9,category:"rooms",label:"Chambre Twin",src:"/images/rooms/chambre-twin.png"},{id:10,category:"rooms",label:"Chambre Duplex",src:"/images/rooms/chambre-duplex.webp"},{id:11,category:"rooms",label:"Chambre",src:"/images/rooms/gallery-room-1.png"},{id:12,category:"rooms",label:"Chambre",src:"/images/rooms/gallery-room-2.png"},{id:13,category:"rooms",label:"Chambre",src:"/images/rooms/gallery-room-3.png"},{id:14,category:"rooms",label:"Chambre",src:"/images/rooms/gallery-room-4.png"},{id:15,category:"restaurant",label:"Salle",src:"/images/restaurant/salle-restaurant.webp"},{id:16,category:"restaurant",label:"Plat Gastronomique",src:"/images/restaurant/plat-gastronomique-1.webp"},{id:17,category:"restaurant",label:"Plat de Saison",src:"/images/restaurant/plat-saison-1.webp"},{id:18,category:"restaurant",label:"Dessert",src:"/images/restaurant/dessert.webp"},{id:19,category:"restaurant",label:"Plat Printemps",src:"/images/restaurant/plat-printemps-1.webp"},{id:20,category:"restaurant",label:"Plat Ete",src:"/images/restaurant/plat-ete-1.webp"},{id:21,category:"restaurant",label:"Plat Hiver",src:"/images/restaurant/plat-hiver-1.webp"},{id:22,category:"exterior",label:"Terrasse",src:"/images/exterior/terrasse.webp"},{id:23,category:"exterior",label:"Jardin",src:"/images/exterior/jardin.webp"},{id:24,category:"exterior",label:"Exterieur",src:"/images/exterior/exterieur-automne-5.webp"},{id:25,category:"exterior",label:"Vue Automne",src:"/images/exterior/vue-automne-1.webp"},{id:26,category:"exterior",label:"Exterieur",src:"/images/exterior/exterieur-automne-1.webp"},{id:27,category:"exterior",label:"Exterieur",src:"/images/exterior/exterieur-automne-5.webp"}],p=["all","hotel","rooms","restaurant","exterior"];function m(){let e=(0,o.c)("gallery"),[t,r]=(0,n.useState)("all"),[c,m]=(0,n.use
1State)(null),h="all"===t?d:d.filter(e=>e.category===t);return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{className:"flex flex-wrap justify-center gap-3 mb-12",children:p.map(o=>(0,a.jsx)("button",{onClick:()=>r(o),className:"px-5 py-2.5 min-h-[44px] rounded-full font-sans text-sm font-medium transition-colors ".concat(t===o?"bg-burgundy text-white shadow-md":"bg-white text-gray-600 hover:bg-burgundy-50 border border-gray-200"),children:e(o)},o))}),(0,a.jsx)("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-4",children:(0,a.jsx)(i.N,{mode:"popLayout",children:h.map(e=>(0,a.jsxs)(s.P.button,{layoutId:"gallery-".concat(e.id),initial:{opacity:0,scale:.9},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.9},transition:{duration:.3,layout:{duration:.3}},onClick:()=>m(e),className:"aspect-[4/3] rounded-xl overflow-hidden cursor-pointer group relative",children:[(0,a.jsx)(l.default,{src:e.src,alt:e.label,fill:!0,className:"object-cover transition-transform duration-300 group-hover:scale-105",sizes:"(max-width: 640px) 100vw, (max-width: 1024px) 50vw, 25vw"}),(0,a.jsx)("div",{className:"absolute inset-0 bg-gradient-to-t from-black/50 via-transparent to-transparent opacity-0 group-hover:opacity-100 transition-opacity duration-300"}),(0,a.jsx)("span",{className:"absolute bottom-3 left-3 font-display text-white text-sm drop-shadow-lg op
1acity-0 group-hover:opacity-100 transition-opacity duration-300",children:e.label})]},e.id))})}),(0,a.jsx)(u,{item:c,onClose:()=>m(null)})]})}},96854:(e,t,r)=>{"use strict";r.d(t,{c:()=>i});var a=r(24572);function o(e,t){return(...e)=>{try{return t(...e)}catch{throw Error(void 0)}}}let i=o(0,a.c3);o(0,a.kc)}},e=>{e.O(0,[6976,7385,4572,1092,9786,586,7358],()=>e(e.s=2504)),_N_E=e.O()}]);
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.