PageSourceSearch

https://www.onehaircut.com/_next/static/chunks/9165-7f8f7ce877fe8af6.js

js onehaircut.com collected 2026-09-24 14:17:12 UTC 25,377 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9165],{89165:function(e,t,a){a.d(t,{Z:function(){return f}});var r=a(57437),n=a(2265),i=a(99376),o=a(84406),s=a(87069),c=a(60824),l=a(36012),d=a(99760),u=a(84515);function f(e){let{showBack:t=!0,onBack:a,backFallback:f="/accueil",className:g="",showNotification:b=!0}=e,{isDarkMode:x,toggleDarkMode:p}=(0,l.v)(),m=(0,i.useRouter)(),h=(0,i.usePathname)(),_=(0,i.useSearchParams)(),y=x?"flex h-9 w-9 items-center justify-center rounded-full border border-white/[0.05] bg-[linear-gradient(180deg,rgba(255,255,255,0.2)_0%,rgba(255,255,255,0.04)_100%)] text-white shadow-[0_18px_34px_rgba(0,0,0,0.24),inset_0_1px_0_rgba(255,255,255,0.16)] backdrop-blur-[26px] transition-all duration-300 hover:translate-y-[-1px] hover:bg-[linear-gradient(180deg,rgba(255,255,255,0.24)_0%,rgba(255,255,255,0.08)_100%)]":"flex h-9 w-9 items-center justify-center rounded-full border border-slate-200/70 bg-[linear-gradient(180deg,rgba(255,255,255,0.98)_0%,rgba(242,245,248,0.86)_100%)] text-zinc-900 shadow-[0_16px_30px_rgba(148,163,184,0.16),inset_0_1px_0_rgba(255,255,255,0.98)] backdrop-blur-[26px] transition-all duration-300 hover:translate-y-[-1px] hover:bg-[linear-gradient(180deg,rgba(255,255,255,1)_0%,rgba(237,241,245,0.92)_100%)]",v="/actualites-coiffure"===h,[N,w]=(0,n.useState)(!1);return(0,n.useEffect)(()=>{let e=window.location.hostname;w(e.startsWith("dev.")||"localhost"===e||"127.0.0.1"===e)},[]),(0,r.jsx)(o.Z,{title:(0,r.jsxs)("button",{type:"button",onClick:()=>{if(v){let e=null==_?void 0:_.get("returnTo"),t=e&&e.startsWith("/")?e:"/accueil";m.replace(t);return}let e=null==_?void 0:_.toString(),t="".concat(h||"/accueil").concat(e?"?".concat(e):"");m.push("/actualites-coiffure?returnTo=".concat(encodeURIComponent(t)))},"aria-label":v?"Revenir \xe0 la page pr\xe9c\xe9dente":"Ouvrir les actualit\xe9s OneHaircut",title:v?"Revenir":"Voir les actualit\xe9s",className:"".concat(x?"inline-flex h-[38px] flex-col items-center justify-center gap-[1px] rounded-[14px] border border-white/[0.04] bg-[linear-gradient(180deg,rgba(255,255,255,0.09)_0%,rgba(255,255,255,0.02)_100%)] px-2.5 shadow-[0_12px_24px_rgba(0,0,0,0.18),inset_0_1px_0_rgba(255,255,255,0.08)] backdrop-blur-[20px]":"inline-flex h-[38px] flex-col items-center justify-center gap-[1px] rounded-[14px] border border-slate-200/70 bg-[linear-gradient(180deg,rgba(255,255,255,0.96)_0%,rgba(244,247,250,0.88)_100%)] px-2.5 shadow-[0_12px_24px_rgba(148,163,184,0.14),inset_0_1px_0_rgba(255,255,255,0.98)] backdrop-blur-[20px]"," transition-transform duration-300 hover:-translate-y-[1px]"),children:[(0,r.jsx)("img",{src:x?"/assets/background/logo_ohc_blanc.png":"/assets/DefaultPictures/Onehaircut_Logo.png",alt:"OneHaircut",className:"h-[14px] w-auto sm:h-[15px]","data-ohc-logo-target":""}),N?(0,r.jsx)("span",{className:"rounded-sm bg-rose-600 px-1 text-[7px] font-bold uppercase leading-[11px] tracking-[0.16em] text-white",children:"Dev"}):v?null:(0,r.jsx)("span",{className:x?"text-[7px] font-semibold italic uppercase leading-none tracking-[0.16em] text-amber-300/95 drop-shadow-[0_0_10px_rgba(251,191,36,0.18)]":"text-[7px] font-semibold italic uppercase leading-none tracking-[0.16em] text-amber-500/90",children:"Actus"})]}),showBack:t,onBack:a,backFallback:f,titleInteractive:!0,trailing:(0,r.jsxs)("div",{className:"flex items-center gap-1",children:[(0,r.jsx)("button",{type:"button",onClick:p,"aria-label":x?"Activer le mode clair":"Activer le mode nuit",className:y,children:x?(0,r.jsx)(d.d,{size:16,strokeWidth:2}):(0,r.jsx)(u.c,{size:16,strokeWidth:2})}),b&&(0,r.jsx)(c.Z,{buttonClassName:y}),(0,r.jsx)(s.Z,{buttonClassName:y})]}),className:g})}},84406:function(e,t,a){var r=a(57437),n=a(2265),i=a(83608),o=a(36012),s=a(90077),c=a(16174);let l=0;t.Z=e=>{let{title:t,subtitle:a,showBack:d=!0,backFallback:u="/",onBack:f,leading:g,trailing:b,transparent:x=!1,centerTitle:p=!0,titleInteractive:m=!1,className:h=""}=e,_=(0,c.Z)({fallback:u}),{isDarkMode:y}=(0,o.v)(),v=function(){let[e,t]=n.useState(!1);return n.useEffect(()=>{if("undefined"!=typeof document)return 1===(l+=1)&&t(!0),document.documentElement.dataset.pwaTopBar="true",()=>{0===(l=Math.max(0,l-1))&&delete document.documentElement.dataset.pwaTopBar}},[]),e}();return(0,r.jsx)("header",{className:"".concat(v?"ohc-vt-topbar ":"","fixed left-0 right-0 top-0 ").concat(x?"bg-transparent border-transparent":y?"border-transparent bg-[linear-gradient(180deg,rgba(14,16,22,0.62)_0%,rgba(14,16,22,0.32)_56%,rgba(14,16,22,0.05)_100%)] shadow-none":"border-transparent bg-[linear-gradient(180deg,rgba(255,255,255,0.8)_0%,rgba(246,248,250,0.34)_58%,rgba(243,246,249,0)_100%)] shadow-none"," ").concat(h),style:{zIndex:s.MB.topBar,paddingTop:"max(calc(env(safe-area-inset-top, 0px) - ".concat(s.D0,"px), 0px)")},children:(0,r.jsxs)("div",{className:y?"relative mx-auto mt-1 grid w-[calc(100%-20px)] max-w-[720px] grid-cols-[1fr_auto_1fr] items-center gap-1.5 rounded-[28px] border border-white/[0.07] bg-[linear-gradient(180deg,rgba(30,33,40,0.62)_0%,rgba(18,20,26,0.54)_54%,rgba(18,20,26,0.46)_100%)] px-2.5 shadow-[0_16px_36px_rgba(0,0,0,0.24),inset_0_1px_0_rgba(255,255,255,0.10)] backdrop-blur-[26px] backdrop-saturate-[180%]":"relative mx-auto mt-1 grid w-[calc(100%-20px)] max-w-[720px] grid-cols-[1fr_auto_1fr] items-center gap-1.5 rounded-[28px] border border-white/70 bg-[linear-gradient(180deg,rgba(255,255,255,0.62)_0%,rgba(246,248,250,0.54)_54%,rgba(237,241,245,
10.48)_100%)] px-2.5 shadow-[0_16px_36px_rgba(148,163,184,0.18),inset_0_1px_0_rgba(255,255,255,0.9)] backdrop-blur-[26px] backdrop-saturate-[180%]",style:{height:s.P7},children:[(0,r.jsx)("div",{"aria-hidden":"true",className:y?"pointer-events-none absolute inset-x-5 top-[3px] h-[42%] rounded-[22px] bg-white/[0.08] blur-xl":"pointer-events-none absolute inset-x-5 top-[3px] h-[42%] rounded-[22px] bg-white/[0.84] blur-xl"}),(0,r.jsx)("div",{className:"flex min-w-0 items-center gap-1",children:null!=g?g:d&&(0,r.jsx)("button",{type:"button",onClick:null!=f?f:_,"aria-label":"Retour",className:"flex h-9 w-9 items-center justify-center rounded-full transition-all duration-300 ".concat(y?"border border-white/[0.07] bg-[linear-gradient(180deg,rgba(255,255,255,0.18)_0%,rgba(255,255,255,0.05)_100%)] text-white shadow-[0_14px_28px_rgba(0,0,0,0.22),inset_0_1px_0_rgba(255,255,255,0.16)] backdrop-blur-[24px] hover:bg-[linear-gradient(180deg,rgba(255,255,255,0.22)_0%,rgba(255,255,255,0.08)_100%)]":"border border-slate-200/70 bg-[linear-gradient(180deg,rgba(255,255,255,0.98)_0%,rgba(242,245,248,0.86)_100%)] text-zinc-900 shadow-[0_12px_24px_rgba(148,163,184,0.16),inset_0_1px_0_rgba(255,255,255,0.98)] backdrop-blur-[24px] hover:bg-[linear-gradient(180deg,rgba(255,255,255,1)_0%,rgba(237,241,245,0.92)_100%)]"),children:(0,r.jsx)(i.e,{className:"h-4.5 w-4.5"})})}),(0,r.jsxs)("div",{className:"".concat(m?"pointer-events-auto":"pointer-events-none"," ").concat(p?"justify-self-center":"justify-self-start"," min-w-0 max-w-full overflow-hidden flex flex-col items-center text-center"),children:[t&&("string"==typeof t||"number"==typeof t?(0,r.jsx)("p",{className:"max-w-[240px] truncate text-[15px] font-semibold leading-tight ".concat(y?"text-white":"text-zinc-900"),children:t}):(0,r.jsx)("div",{className:"flex items-center justify-center",children:t})),a&&(0,r.jsx)("p",{className:"max-w-[240px] truncate text-[11px] leading-tight ".concat(y?"text-white/70":"text-zinc-600"),children:a})]}),(0,r.jsx)("div",{className:"flex min-w-0 items-center justify-end gap-1",children:b})]})})}},60824:function(e,t,a){var r=a(57437),n=a(2265),i=a(54887),o=a(99997),s=a(83716),c=a(42586),l=a(99376),d=a(36012),u=a(63522),f=a(62005),g=a(17226),b=a(80186),x=a(66957),p=a(91001),m=a(39310),h=a(80403),_=a(75548),y=a(15940);function v(e){let{isMobile:t,isDarkMode:a,sheetRef:n,onClose:o,children:s}=e,c=a?"bg-zinc-800 border-zinc-700":"bg-white border-gray-200";return t?"undefined"==typeof document?null:(0,i.createPortal)((0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"fixed inset-0 z-[60] bg-black/40",onClick:o,"aria-hidden":"true"}),(0,r.jsxs)("div",{ref:n,className:"fixed inset-x-0 bottom-0 z-[70] flex max-h-[85dvh] flex-col overflow-hidden rounded-t-2xl border shadow-lg transition-colors duration-300 ".concat(c),children:[(0,r.jsx)("div",{className:"mx-auto mt-2 mb-1 h-1.5 w-10 shrink-0 rounded-full ".concat(a?"bg-zinc-600":"bg-gray-300")}),s]})]}),document.body):(0,r.jsx)("div",{className:"absolute right-0 mt-2 flex max-h-[80vh] w-80 max-w-md flex-col overflow-hidden rounded-lg border shadow-lg z-50 transition-colors duration-300 ".concat(c),children:s})}t.Z=e=>{let{buttonClassName:t=""}=e,{isDarkMode:a}=(0,d.v)(),[i,N]=(0,n.useState)(!1),w=(0,f.Z)(),k=(0,c.useTranslations)("SalonDashboard"),j=(0,c.useTranslations)("Common"),z=(0,n.useRef)(null),C=(0,n.useRef)(null),[S,B]=(0,n.useState)([]),R=(0,l.useRouter)(),A=(0,l.usePathname)(),{refetchUserNotifications:T,refetchSalonNotifications:E}=(0,u.lm)(),O=!!((0,s.$o)("auth-token")||(0,s.$o)("access_token")),D=null==A?void 0:A.startsWith("/client"),P=(0,n.useCallback)(async()=>{if(!O){B([]);return}await o.l.getNotification().then(e=>{let{data:t}=e;B((t||[]).map(e=>"platform_notification"===e.type?{...e,read_at:e.read_at||new Date().toISOString()}:e))}).catch(()=>{})},[O]),M=async()=>{if(O)try{await o.l.markAllAsRead(),P()}catch(e){}},I=async(e,t)=>{if(t.stopPropagation(),O)try{await o.l.dismissNotification(e),B(t=>t.filter(t=>t.id!==e))}catch(e){console.error("Failed to dismiss notification:",e)}},Z=async()=>{if(O)try{await o.l.dismissAllNotifications(),B([])}catch(e){console.error("Failed to dismiss all notifications:",e)}};(0,n.useEffect)(()=>{function e(e){var t,a;let r=e.target,n=null===(t=z.current)||void 0===t?void 0:t.contains(r),i=null===(a=C.current)||void 0===a?void 0:a.contains(r);n||i||N(!1)}return P(),document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[P]);let W=(e,t)=>{let a={};try{a="string"==typeof t.data?JSON.parse(t.data):t.data}catch(e){console.error("Error parsing notification data:",e)}let r=Date.now();if(D)switch(e){case"MessageNotification":return"/client/messages";case"CustomerBookingConfirmationAccept":case"CustomerBookingDeclinedReject":case"CustomerBookingReminder":case"CustomerCancelBookingConfirmation":case"HairSalonCancelBookingNotification":return"/client/currentreservation";case"PlatformNotification":case"platform_notification":if(a.action_url)return a.action_url;return"#";case"InstantBookingAcceptedNotification":return"/?instant=open";
1case"ClientRelanceNotification":return a.salon_id?"/salon/".concat(a.salon_id):"/client/dashboard";default:return"/client/dashboard"}switch(e){case"SalonMisconfigurationNotification":return"/dashboard/settings";case"SalonActivationRelanceNotification":return a.action_url||"/dashboard?refreshtab=hairstyle&notificationNav=".concat(r);case"MessageNotification":return"/dashboard/messages";case"HairSalonBookingNotification":case"HairSalonBookingNotificationForManualSalon":case"SalonBookingReminder":case"SalonReminderNotification":return"/dashboard?refreshtab=dashboard&transactionTab=pending&notificationNav=".concat(r);case"BookingDoneNotification":case"DemandeExpireeSalonNotification":case"InstantBookingCancelledByClientNotification":return"/dashboard?refreshtab=dashboard&transactionTab=past&notificationNav=".concat(r);case"ExternalCustomerBookingNotification":case"SalonDailyAgendaNotification":case"SalonWeeklyRecapNotification":case"DeplacementReponseNotification":case"RdvAutreCreneauNotification":case"HairSalonCancelBookingNotification":case"CustomerCancelBookingConfirmation":return"/dashboard?refreshtab=agenda&notificationNav=".concat(r);case"PlatformNotification":case"platform_notification":if(a.action_url)return a.action_url;return"#";case"CustomerBookingConfirmationAccept":case"CustomerBookingDeclinedReject":return"/client/currentreservation";default:return"/dashboard?refreshtab=dashboard&notificationNav=".concat(r)}},X=S.length,H=S.filter(e=>null===e.read_at&&"platform_notification"!==e.type).length;return(0,r.jsxs)("div",{className:"relative",ref:z,children:[(0,r.jsx)("button",{onClick:()=>{let e=!i;N(e),e&&O&&M()},className:t||(a?"flex h-9 w-9 items-center justify-center rounded-full border border-white/[0.08] bg-[linear-gradient(180deg,rgba(255,255,255,0.16)_0%,rgba(255,255,255,0.05)_100%)] text-zinc-50 shadow-[0_12px_28px_rgba(0,0,0,0.26),inset_0_1px_0_rgba(255,255,255,0.16)] backdrop-blur-xl transition-colors hover:bg-[linear-gradient(180deg,rgba(255,255,255,0.2)_0%,rgba(255,255,255,0.08)_100%)]":"flex h-9 w-9 items-center justify-center rounded-full border border-slate-200/80 bg-[linear-gradient(180deg,rgba(255,255,255,0.98)_0%,rgba(240,244,248,0.86)_100%)] text-zinc-900 shadow-[0_12px_28px_rgba(148,163,184,0.14),inset_0_1px_0_rgba(255,255,255,0.96)] backdrop-blur-xl transition-colors hover:bg-[linear-gradient(180deg,rgba(255,255,255,1)_0%,rgba(237,241,245,0.9)_100%)]"),children:(0,r.jsx)(g.O,{size:16})}),X>0&&(0,r.jsx)("span",{className:"absolute -top-0.5 -right-0.5 flex items-center justify-center min-w-[18px] h-[18px] px-1 text-[10px] font-bold text-white bg-red-500 rounded-full border-2 border-white",children:X>99?"99+":X}),H>0&&0===X&&(0,r.jsx)("span",{className:"absolute top-0 right-0 h-2.5 w-2.5 -mt-1 -mr-1 pointer-events-none",children:(0,r.jsx)("span",{className:"absolute inline-flex h-full w-full rounded-full bg-orange-500 opacity-75 animate-ping"})}),i&&(0,r.jsxs)(v,{isMobile:w,isDarkMode:a,sheetRef:C,onClose:()=>N(!1),children:[(0,r.jsxs)("div",{className:"p-4 border-b font-medium transition-colors duration-300 flex items-center justify-between shrink-0 ".concat(a?"text-zinc-100 border-zinc-700":"text-gray-800 border-gray-200"),children:[(0,r.jsx)("span",{children:j("notifications")}),S.length>0&&(0,r.jsx)("button",{onClick:Z,className:"text-xs px-2 py-1 rounded-md transition-all duration-200 ".concat(a?"text-red-400 hover:bg-red-900/30 hover:text-red-300":"text-red-500 hover:bg-red-50 hover:text-red-600"),title:"Supprimer toutes les notifications",children:j("delete_all")})]}),(0,r.jsx)("div",{className:"flex-1 overflow-y-auto overscroll-contain pb-[env(safe-area-inset-bottom)] sm:flex-none sm:max-h-64 sm:pb-0",children:S.length>0?S.map(e=>{let t=(0,r.jsx)(g.O,{size:28,className:"mt-1 ".concat(a?"text-zinc-400":"text-gray-400")}),n=a?e.read_at?"bg-zinc-800":"bg-zinc-700":(e.read_at,"bg-gray-50"),i=a?e.read_at?"text-zinc-200":"text-zinc-100":e.read_at?"text-gray-700":"text-gray-800",s=a?e.read_at?"text-zinc-400":"text-zinc-300":e.read_at?"text-gray-500":"text-gray-700";switch(e.type){case"SalonMisconfigurationNotification":t=(0,r.jsx)(b.M,{size:28,className:"mt-1 text-yellow-400"}),n=a?e.read_at?"bg-zinc-800":"bg-orange-900/30":e.read_at?"bg-gray-50":"bg-orange-50";break;case"CustomerBookingConfirmationAccept":case"BookingDoneNotification":t=(0,r.jsx)(x.Z,{size:28,className:"mt-1 text-green-400"}),n=a?e.read_at?"bg-zinc-800":"bg-green-900/30":e.read_at?"bg-gray-50":"bg-green-50";break;case"CustomerBookingDeclinedReject":case"InstantBookingCancelledByClientNotification":t=(0,r.jsx)(p._,{size:28,className:"mt-1 text-red-400"}),n=a?e.read_at?"bg-zinc-800":"bg-red-900/30":e.read_at?"bg-gray-50":"bg-red-50";break;case"MessageNotification":t=(0,r.jsx)(m.y,{size:28,className:"mt-1 text-blue-500"}),n=a?e.read_at?"bg-zinc-800":"bg-blue-900/30":e.read_at?"bg-gray-50":"bg-blue-50",i=a?e.read_at?"text-zinc-200":"text-blue-300":e.read_at?"text-gray-700":"text-blue-800",s=a?e.read_at?"text-zinc-400":"text-blue-400":e.read_at?"text-gray-500":"text-blue-700";break;case"HairSalonCancelBookingNotification":t=(0,r.jsx)(p._,{size:28,className:"mt-1 text-red-400"}),n=a?e.read_at?"bg-zinc-800":"bg-red-900/30":e.read_at?"bg-gray-50":"bg-red-50",i=a?e.read_at?"text-zinc-200":"text-red-300":e.read_at?"text-gray-700":"text-red-800",s=a?e.read_at?"text-zinc-400":"text-red-400":e.read_at?"text-gray-500":"text-red-700";break;
1case"SalonDailyAgendaNotification":case"SalonWeeklyRecapNotification":t=(0,r.jsx)(h.y,{size:28,className:"mt-1 text-sky-500"}),n=a?e.read_at?"bg-zinc-800":"bg-sky-900/30":e.read_at?"bg-gray-50":"bg-sky-50";break;case"AdminCustomNotification":case"platform_notification":t=(0,r.jsx)(g.O,{size:28,className:"mt-1 text-orange-500"}),n=a?e.read_at?"bg-zinc-800":"bg-amber-900/30":e.read_at?"bg-gray-50":"bg-amber-50",i=a?e.read_at?"text-zinc-200":"text-amber-300":e.read_at?"text-gray-700":"text-amber-800",s=a?e.read_at?"text-zinc-400":"text-amber-400":e.read_at?"text-gray-500":"text-amber-700";break;case"InstantBookingAcceptedNotification":t=(0,r.jsx)(x.Z,{size:28,className:"mt-1 text-amber-400"}),n=a?e.read_at?"bg-zinc-800":"bg-amber-900/30":e.read_at?"bg-gray-50":"bg-amber-50",i=a?e.read_at?"text-zinc-200":"text-amber-300":e.read_at?"text-gray-700":"text-amber-800"}let c={};try{c="string"==typeof e.data?JSON.parse(e.data):e.data||{}}catch(e){c={}}let l="platform_notification"===e.type,d=!l||l&&!0===c.dismissible;return(0,r.jsxs)("div",{className:"relative grid grid-cols-[auto,1fr,auto] gap-3 px-4 py-3 rounded-md transition-colors ".concat(n," ").concat(a?"hover:bg-zinc-700":"hover:bg-gray-100"),children:[t,(0,r.jsxs)("button",{onClick:async()=>{let t=W(e.type,e);if("#"!==t){try{await o.l.dismissNotification(e.id),B(t=>t.filter(t=>t.id!==e.id)),D?T():E()}catch(e){console.error("Failed to dismiss notification:",e)}N(!1),R.push(t)}},className:"flex flex-col text-left cursor-pointer",children:[(0,r.jsx)("div",{className:"font-medium ".concat(i),children:"platform_notification"===e.type?c.title_key||"Notification":"AdminCustomNotification"===e.type?c.title||"Notification":c.title_key?k(c.title_key):e.type||"Notification"}),(0,r.jsx)("div",{className:"text-sm ".concat(s),children:"platform_notification"===e.type?c.desc_key||"":"AdminCustomNotification"===e.type?c.message||"":"ClientRelanceNotification"===e.type||"SalonActivationRelanceNotification"===e.type?c.message||(c.desc_key?k(c.desc_key):""):c.desc_key?k(c.desc_key,c):""})]}),d&&(0,r.jsx)("button",{onClick:t=>I(e.id,t),className:"flex items-center justify-center w-8 h-8 border rounded-md transition-all duration-200 ".concat(a?"border-zinc-600 text-zinc-400 hover:border-red-400 hover:bg-red-900/30 hover:text-red-400":"border-gray-300 text-gray-500 hover:border-red-400 hover:bg-red-50 hover:text-red-600"),"aria-label":"Supprimer la notification",title:"Supprimer cette notification",children:(0,r.jsx)(_.r,{size:18})})]},e.id)}):(0,r.jsxs)("div",{className:"flex flex-col items-center justify-center py-8 ".concat(a?"text-zinc-400":"text-gray-500"),children:[(0,r.jsx)(y.x,{size:50,className:"mb-2 ".concat(a?"text-zinc-500":"text-gray-400")}),(0,r.jsx)("p",{className:"text-sm font-medium",children:j("no_notification_yet")}),(0,r.jsx)("p",{className:"text-xs ".concat(a?"text-zinc-500":"text-gray-400"),children:j("no_notification_yet_desc")})]})})]})]})}},71403:function(e,t,a){a.d(t,{Jo:function(){return u},LU:function(){return i},Nd:function(){return d},QW:function(){return s},Qb:function(){return n},Vg:function(){return x},pn:function(){return l}});var r=a(98635);let n="data-ohc-nav",i=700,o=["/dashboard","/checkout","/payment","/confirm-payment","/stripe-redirect"],s=["/accueil","/reservation","/reservation/parcours","/studio-ia-coiffure","/urgence"],c=0;function l(){c=Date.now()+1e3}function d(){let e=c>Date.now();return c=0,e}function u(e,t){if("undefined"!=typeof document&&e)try{document.querySelectorAll('[data-ohc-shared="'.concat(t,'"]')).forEach(e=>{e.style.viewTransitionName="",e.removeAttribute("data-ohc-shared")});let a=e.querySelector("img")||e;a.style.viewTransitionName=t,a.setAttribute("data-ohc-shared",t)}catch(e){}}function f(e){if(!e)return"/";let t=e;try{/^https?:\/\//i.test(t)&&(t=new URL(t).pathname)}catch(e){}let a=t.indexOf("?");a>=0&&(t=t.slice(0,a));let r=t.indexOf("#");return r>
1=0&&(t=t.slice(0,r)),t.length>1&&(t=t.replace(/\/+$/,"")),t||"/"}function g(e){return o.some(t=>e===t||e.startsWith(t+"/"))}function b(e){if("/"===e)return!0;let t=(0,r.TX)(e);return!!t&&f((0,r.$X)(t))===e}function x(e,t,a){let n=arguments.length>3&&void 0!==arguments[3]&&arguments[3],i=f(e);if("back"===a)return g(i)?"none":"back";let o=f(t);return o===i||g(i)||g(o)?"none":n?"back":b(i)&&b(o)?"none":b(o)&&null!==(0,r.TX)(o)&&(0,r.TX)(o)===(0,r.TX)(i)?"back":"forward"}},40237:function(e,t,a){a.d(t,{M:function(){return x},T:function(){return p}});var r=a(57437),n=a(2265),i=a(99376),o=a(98635);let s="pwa_route_history",c="pwa_route_history_by_tab",l=(e,t,a)=>{if(e[e.length-1]===t)return e;let r=e.lastIndexOf(t);return r>=0?e.slice(0,r+1):[...e,t].slice(-a)},d=(0,n.createContext)(void 0),u=()=>{try{let e=window.sessionStorage.getItem(s);if(!e)return[];let t=JSON.parse(e);return Array.isArray(t)?t.filter(e=>"string"==typeof e):[]}catch(e){return[]}},f=e=>{try{window.sessionStorage.setItem(s,JSON.stringify(e))}catch(e){}},g=()=>{try{let e=window.sessionStorage.getItem(c);if(!e)return{};let t=JSON.parse(e);if(!t||"object"!=typeof t)return{};let a={};for(let[e,r]of Object.entries(t))Array.isArray(r)&&(a[e]=r.filter(e=>"string"==typeof e));return a}catch(e){return{}}},b=e=>{try{window.sessionStorage.setItem(c,JSON.stringify(e))}catch(e){}},x=e=>{let{children:t}=e,a=(0,i.usePathname)(),s=(0,i.useSearchParams)(),[c,x]=(0,n.useState)(()=>
1u()),[p,m]=(0,n.useState)(()=>g()),h=(0,n.useRef)(null);(0,n.useEffect)(()=>{if(!a||h.current===a)return;h.current=a,x(e=>{let t=l(e,a,25);return t===e?e:(f(t),t)});let e=(0,o.TX)(a);e&&m(t=>{var r;let n=null!==(r=t[e])&&void 0!==r?r:[],i=l(n,a,15);if(i===n)return t;let o={...t,[e]:i};return b(o),o})},[a,s]);let _=(0,n.useCallback)(()=>{let e=a?[a]:[];x(e),f(e);let t=a?(0,o.TX)(a):null,r=t&&a?{[t]:[a]}:{};m(r),b(r)},[a]),y=(0,n.useMemo)(()=>{var e;return c.length<2?null:null!==(e=c[c.length-2])&&void 0!==e?e:null},[c]),v=(0,n.useMemo)(()=>({history:c,previous:y,tabHistory:p,reset:_}),[c,y,p,_]);return(0,r.jsx)(d.Provider,{value:v,children:t})},p=()=>(0,n.useContext)(d)||{history:[],previous:null,tabHistory:{},reset:()=>void 0}},62005:function(e,t,a){a.d(t,{Z:function(){return i}});var r=a(2265),n=a(66097);function i(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:n.BREAKPOINTS.md,[t,a]=(0,r.useState)(!1);return(0,r.useEffect)(()=>{let t=()=>a(window.innerWidth<e);return t(),window.addEventListener("resize",t),()=>window.removeEventListener("resize",t)},[e]),t}},63522:function(e,t,a){a.d(t,{l4:function(){return s},lm:function(){return c}});var r=a(57437),n=a(2265),i=a(31017);let o=(0,n.createContext)({notifications:null,refetchUserNotifications:async()=>{},refetchSalonNotifications:async()=>{}}),s=e=>{let{children:t}=e,[a,s]=(0,n.useState)({chat_count:0,reservation_count:0}),c=(0,n.useMemo)(()=>({notifications:a,refetchUserNotifications:async function(){try{let{data:e}=await i.s.userNotification();s(e)}catch(e){console.error("Error fetching user notifications:",e)}},refetchSalonNotifications:async function(){try{let{data:e}=await i.s.salonNotification();s(e)}catch(e){console.error("Error fetching salon notifications:",e)}}}),[a]);return(0,r.jsx)(o.Provider,{value:c,children:t})},c=()=>{var e;let t=(0,n.useContext)(o);if(void 0===t)throw Error("useNotification must be used within a NotificationContextProvider.");return{notifications:null!==(e=t.notifications)&&void 0!==e?e:{},refetchUserNotifications:t.refetchUserNotifications,refetchSalonNotifications:t.refetchSalonNotifications}}},16174:function(e,t,a){var r=a(2265),n=a(99376),i=a(40237),o=a(98635),s=a(71403);t.Z=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{fallback:t="/",forceFallback:a=!1,onBeforeNavigate:c}=e,l=(0,n.useRouter)(),d=(0,n.usePathname)(),{history:u,tabHistory:f}=(0,i.T)();return(0,r.useCallback)(()=>{if(null==c||c(),(0,s.pn)(),a){l.push(t);return}let e=(0,o.TX)(d);if(e){var r;let t=null!==(r=f[e])&&void 0!==r?r:[];if(t.length>=2){let e=t[t.length-2];if(e&&e!==d){l.push(e);return}}let a=(0,o.$X)(e);a&&a!==d&&l.push(a);return}if(u.length>=2){let e=u[u.length-2];if(e&&e!==d){l.push(e);return}}if(t&&t!==d){l.push(t);return}"/"!==d&&l.push("/")},[a,t,u.length,c,d,l,f])}},98635:function(e,t,a){a.d(t,{$X:function(){return o},Qs:function(){return c},TX:function(){return i}});let r=[{id:"news",root:"/actualites-coiffure",prefixes:["/actualites-coiffure"]},{id:"studio",root:"/studio-ia-coiffure",prefixes:["/studio-ia-coiffure","/hairstyles-pwa","/parcours-coiffure-service"]},{id:"messages",root:"/client/messages",prefixes:["/client/messages","/messages"]},{id:"favorites",root:"/client/favorites",prefixes:["/client/favorites","/favorites","/favoris"]},{id:"profile",root:"/accueil",prefixes:["/accueil","/profil-invite","/profil","/account","/client/dashboard","/client/history","/client/portrait","/client/help","/client/settings","/client/profile","/parametres"]},{id:"reserve",root:"/reservation",prefixes:["/reservation","/services","/salons","/salon","/book","/book-salon","/rebook-salon","/payment","/confirm-payment","/urgence"]}],n=(e,t)=>"/"===t?"/"===e:e===t||e.startsWith("".concat(t,"/")),i=e=>{if(!e)return null;for(let t of r)if(t.prefixes.some(t=>n(e,t)))return t.id;return null},o=e=>{var t;let a=r.find(t=>t.id===e);return null!==(t=null==a?void 0:a.root)&&void 0!==t?t:"/"},s=[/^\/dashboard(\/|$)/,/^\/book(\/|$)/],c=e=>s.some(t=>t.test(e||""))}}]);

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.