1import{A as h,x as a,w as i}from"./index-frHe-QTJ.js";import{u as _}from"./useTrackPage-C0HbKnr8.js";import{a2 as x}from"./useCompositionComponentMap-DWzF-41J.js";import{I as j}from"./BackgroundImage-rbIYIl3N.js";import"./index-B7188j3S.js";import{L as g}from"./useDynamicRoutePrefetch-C4gPGCka.js";import{t as C}from"./translateOpeningHoursText-KjdleH61.js";import{g as E}from"./generatePhysicalStoreStructuredDataMeta-B4eC13OV.js";import{M as c}from"./message-DBAK7fgr.js";import{L as d}from"./LayoutErrorBoundary-tl1yqgSV.js";import"./Modal-BUCfbQTV.js";import"./LayoutDataContext-JixUoDjm.js";import"./Maintenance-Cth5GISA.js";import"./H4-Vbldgf9K.js";import"./Body-DwUSvLEP.js";import"./NotFound-hButR2Cz.js";import{g as L}from"./generateCmsPageSeoMetas-DN9BpvMs.js";import{b as k}from"./remix-CJu4mMbi.js";import{r as v}from"./index-C17B0W3s.js";import{h as w}from"./router-B_iyvJuC.js";import{g as b}from"./PublicConfigProvider-kNi7Hxab.js";import{g as T}from"./generateMetas-BeQf208e.js";import"./AddDataToPayload-Dv-VhTbs.js";import"./analytics-QQ9LoeNv.js";import"./preload-helper-D7HrI6pR.js";import"./_overArg-D-g42Zwp.js";import"./useExtensionFeatureFlags-Cf6WouV5.js";import"./Icon-BPvprOR1.js";import"./InlineAlert-BNs3TQ7p.js";import"./ErrorAlert-bjL4iD78.js";import"./BodyParagraph-BkL2QNz6.js";import"./index-CRvHnHVi.js";import"./MediaQuery-ChGzcqTw.js";import"./react-lifecycles-compat.es-rcFiNSPc.js";import"./FormActions-LA7cQ8ZG.js";import"./IconButton-tFmiO-pt.js";import"./Button-DeZ6E75T.js";import"./getImageUrl-46fH57_B.js";import"./TrackingLink-Bq8fENyp.js";import"./ProductPrice-DtLnH2qd.js";import"./index-Lm53zlLu.js";import"./Rating-G4Fh_eIP.js";import"./BaseInput-C_ngzUgI.js";import"./useCustomer-BRfiYyWu.js";import"./DefaultLoading-BmpDvcuR.js";import"./LoadingArea-pr7B78CE.js";import"./Spinner-DVKLIRwY.js";import"./BodyFade-Dse8S9jB.js";import"./useApiFetcher-BBgY9LW3.js";import"./Select-CS6yBuOz.js";import"./File-CpC_fIdv.js";import"./Password-BdrFFlF8.js";import"./website-8BCxNJ7H.js";import"./components-D5hao2Cj.js";import"./Stack-Ba9RgzpV.js";import"./Sku-lTw2udKR.js";import"./FlashMessages-BVsYShWI.js";import"./SuccessAlert-DErlytFp.js";import"./Tag-BwTNx61O.js";import"./SubmitButton-CEhnyH9h.js";import"./Email-DuaFrKHa.js";import"./Text-BDY6t9m2.js";import"./graphql-BiAkActC.js";import"./tslib.es6-Ca8F59hu.js";import"./parser-C88wK-7X.js";import"./bundle.esm-H10cGb_w.js";import"./tslib.es6-CyS-GwTT.js";import"./index-DFvfou91.js";/* empty css */import"./LoginForm-BNG9wTl4.js";import"./Fieldset-BbRpR0Ne.js";import"./Password-Deir1JcL.js";import"./fp.esm-Dsihf574.js";import"./LabelledIcon-CGIsUCTq.js";import"./queryString-CGFbVIbi.js";import"./useAutocomplete-fKqznKoW.js";import"./usePreload-2fXYlaPf.js";import"./stores-C0mJ0Epb.js";import"./PrimaryButton-BR6V3aEZ.js";import"./formatPhoneNumber-BotCVQAf.js";import"./index-_39QetOB.js";import"./useFullUrl-EcLaish4.js";import"./client-B2GKp5eB.js";import"./Logo-yiepKuCL.js";import"./logo_white-DQpdcJzt.js";import"./generateHreflangMetas-BuPUNuqs.js";import"./safeParseUrl-CEwjz_vP.js";const N=({stores:t})=>{let o=[],s=!1,n=0;const e=a.useRef(),[p,l]=a.useState(""),u=()=>{const r=window.pageYOffset;r>n&&!s?(s=!0,e.current.classList.add("sticky")):r<n&&s&&(s=!1,e.current.classList.remove("sticky"))};a.useEffect(()=>(o[0]&&l(o[0]),n=e.current.offsetTop,typeof window<"u"&&window.addEventListener("scroll",u),()=>{window.removeEventListener("scroll",u)}),[]);const f=r=>{const m=document.querySelector("[data-city='"+r+"']");m&&window.scrollTo({left:m.getBoundingClientRect().left,top:m.offsetTop-60,behavior:"smooth"}),l(r)},y=()=>{const r=document.querySelector("[data-store-slug='le-cafe-lulli-marseille']");r&&window.scrollTo({left:r.getBoundingClientRect().left,top:r.offsetTop-60,behavior:"smooth"}),l("LES CAFES")};return i.jsxs("div",{className:"city__picker",ref:e,children:[t.map((r,m)=>r.city!==""&&!o.includes(r.city)?(o.push(r.city),i.jsx("button",{className:`city__item ${p===r.city?"city__item__active":""}`,onClick:()=>f(r.city),children:r.city==="Saint-Tropez"?"ST-TROPEZ":r.city},m)):null),i.jsx("button",{className:`city__item ${p==="LES CAFES"?"city__item__active":""}`,onClick:y,children:"LES CAFES"})]})},M=({physicalStores:t,cmsContentBlockList:o,cmsContentPageList:s})=>{const n=h();return _("toutes-nos-boutiques-mode"),a.useEffect(()=>{const e=document.getElementById("app");return e&&e.classList.add("page-boutique"),()=>{e&&e.classList.remove("page-boutique")}},[]),i.jsxs(i.Fragment,{children:[(o==null?void 0:o[0])&&i.jsx(x,{content:o[0].c
1ontentWysiwyg}),t&&i.jsxs(i.Fragment,{children:[i.jsx(N,{stores:t}),t.map((e,p)=>i.jsx("div",{"data-city":e.city,"data-store-slug":e.slug,className:"store-container",children:i.jsxs("div",{className:"store-card",children:[i.jsx("div",{className:"store-media",children:i.jsx(j,{className:"store-image",alt:e.name,src:e.photo+"?format=original"})}),i.jsxs("div",{className:"store-details",children:[i.jsxs("span",{className:"store-title",children:[" ",e.name," "]}),e.click_collect&&i.jsx("span",{className:"click-collect",children:i.jsx(c,{id:"Pages.Store.PhysicalStore.ClickCollect",defaultMessage:"Click & Collect available"})}),e.address&&i.jsx("span",{children:e.address+" - "+e.post_code+" "+e.city}),e.tel&&i.jsx("span",{children:e.tel}),e.opening_hours&&i.jsxs("span",{className:"store__horaires",children:[i.jsx(c,{id:"Pages.Store.PhysicalStore.Schedule",defaultMessage:"Schedule"})," ",":"," ",C(n,e.opening_hours.text)]}),e.exceptionnals_opening_hours&&i.jsx("p",{className:"store-infos__exceptionnals_opening_hours",dangerouslySetInnerHTML:{__html:e.exceptionnals_opening_hours}}),i.jsx(g,{to:`/toutes-nos-boutiques-mode/${e.slug}`,itemProp:"item",buttonSize:"default",buttonAppearance:"primary",children:i.jsx(c,{id:"Pages.Store.PhysicalStore.Button.Store",defaultMessage:"The store and its selection"})})]})]})},p))]})]})},q=(t,o,s,n)=>{const e="/toutes-nos-boutiques-mode",p=(t==null?void 0:t.meta_title)??(t==null?void 0:t.title)??"Nos boutiques",l=(t==null?void 0:t.meta_description)??void 0;return[...L({meta_title:p,meta_description:l??null,meta_keywords:(t==null?void 0:t.meta_keywords)??null,title:(t==null?void 0:t.title)??p,hreflangs:t==null?void 0:t.hreflangs},{shopUrl:s,locale:n,path:e}),...E(o,s)]},ce=t=>{var n,e;const o=b().shop,s=(e=(n=t.data)==null?void 0:n.cmsContentPageList)==null?void 0:e[0];return T(()=>{var p;return q(s,((p=t.data)==null?void 0:p.physicalStores)??[],o.url,o.locale)},"/toutes-nos-boutiques-mode")(t)};function ue(){const t=k();return i.jsx(M,{physicalStores:t.physicalStores,cmsContentBlockList:t.cmsContentBlockList,cmsContentPageList:t.cmsContentPageList})}function de(){const t=v();return w(t)&&t.status===404?i.jsx(d,{}):i.jsx(d,{})}export{de as ErrorBoundary,ue as default,ce as meta};
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.