ultisuite-client/out/_next/static/chunks/app/layout-ff893684d9d60f2f.js
R3D347HR4Y d6d18f911b
Some checks failed
E2E / Playwright e2e (push) Has been cancelled
Lots of stuff and mobile app
2026-06-17 00:13:28 +02:00

118 lines
25 KiB
JavaScript

(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[692,7177],{692:(e,t,a)=>{"use strict";a.d(t,{unregisterPushOnLogout:()=>u,z:()=>d});var r=a(94927),n=a(24717),s=a(81887),i=a(62805);function l(e){return"ios"===e?"ios":"android"===e?"android":null}let o=!1;async function c(e,t){await (0,i.XP)(t),await r.uE.post("/devices/register",{platform:e,app:s.fk,push_token:t})}async function d(){if((0,s.oX)()){o||(o=!0,await (0,n.K)("ulti://push-token",e=>{let t="string"==typeof e?e:null,a=l((navigator?.platform||"").toLowerCase().includes("android")?"android":"ios");t&&a&&c(a,t)}));try{let e=await (0,n.l)("plugin:ulti-core|push_register");if(!e)return;let t=l(e.platform);t&&e.token&&await c(t,e.token)}catch{}}}async function u(){if((0,s.oX)())try{let e=await (0,i.gm)();e&&await r.uE.post("/devices/unregister",{push_token:e})}catch{}}},5064:(e,t,a)=>{"use strict";a.d(t,{MobileLayoutRoot:()=>g});var r=a(4208),n=a(91356),s=a(61401),i=a(55318),l=a(22759),o=a(30826),c=a(61514),d=a(28069),u=a(46498),m=a(43885),h=a(30046);function p({hint:e}){return(0,r.jsxs)("div",{className:"fixed inset-0 flex h-dvh flex-col items-center justify-center gap-3 bg-background px-6 text-center",children:[(0,r.jsx)("img",{src:"/ultisuite-mark.svg",alt:"",width:64,height:64,className:"h-14 w-14 select-none","aria-hidden":!0}),(0,r.jsx)("p",{className:"text-sm text-muted-foreground",children:"UltiMail"}),e?(0,r.jsx)("p",{className:"text-xs text-muted-foreground/80",children:e}):null]})}class f extends n.Component{static getDerivedStateFromError(e){return{error:e}}render(){return this.state.error?(0,r.jsx)(p,{hint:this.state.error.message||"Erreur au d\xe9marrage."}):this.props.children}constructor(...e){super(...e),this.state={error:null}}}function g({children:e}){let[t,a]=(0,n.useState)(!1),[v,x]=(0,n.useState)();return((0,n.useEffect)(()=>{a(!0)},[]),(0,n.useEffect)(()=>{t&&(0,s.t)()},[t]),(0,n.useEffect)(()=>{if(t)return;let e=window.setTimeout(()=>{x("Chargement JavaScript…")},8e3);return()=>window.clearTimeout(e)},[t]),t)?(0,r.jsx)(f,{children:(0,r.jsxs)(l.QueryProvider,{children:[(0,r.jsxs)(o.AuthProvider,{children:[(0,r.jsx)(c.SessionGuard,{}),(0,r.jsxs)(d.NativeBridgeProvider,{children:[(0,r.jsx)(m.NativeShellChrome,{}),(0,r.jsx)(u.NativeAuthGate,{children:(0,r.jsx)(i.FirstLaunchSplash,{children:e})})]})]}),(0,r.jsx)(h.MailToaster,{})]})}):(0,r.jsx)(p,{hint:v})}},9025:(e,t,a)=>{Promise.resolve().then(a.t.bind(a,22802,23)),Promise.resolve().then(a.bind(a,30826)),Promise.resolve().then(a.bind(a,61514)),Promise.resolve().then(a.bind(a,55318)),Promise.resolve().then(a.bind(a,30046)),Promise.resolve().then(a.bind(a,5064)),Promise.resolve().then(a.bind(a,46498)),Promise.resolve().then(a.bind(a,28069)),Promise.resolve().then(a.bind(a,43885)),Promise.resolve().then(a.bind(a,61401)),Promise.resolve().then(a.bind(a,22759)),Promise.resolve().then(a.bind(a,88636)),Promise.resolve().then(a.t.bind(a,87104,23)),Promise.resolve().then(a.t.bind(a,824,23))},22759:(e,t,a)=>{"use strict";a.d(t,{QueryProvider:()=>p});var r=a(4208),n=a(91356),s=a(3400),i=a(8726),l=a(15234),o=a(74101),c=a(94927);let d="query-cache",u=null;function m(){return u||(u=(0,l.P2)("ultimail-query-cache",1,{upgrade(e){e.createObjectStore(d)}})),u}let h={persistClient:async e=>{let t=await m();await t.put(d,e,"cache")},restoreClient:async()=>{let e=await m(),t=await e.get(d,"cache");return t?.clientState?.queries&&(t.clientState.queries=t.clientState.queries.filter(e=>!(0,o.eR)(e.queryKey))),t},removeClient:async()=>{let e=await m();await e.delete(d,"cache")}};function p({children:e}){let[t]=(0,n.useState)(()=>{let e=new s.E({defaultOptions:{queries:{gcTime:864e5,staleTime:3e5,networkMode:"offlineFirst",retry:(e,t)=>(!(t instanceof c.UQ)||401!==t.status)&&e<3},mutations:{networkMode:"offlineFirst"}}});return e.getQueryCache().subscribe(e=>{"removed"===e.type&&(0,o.u$)(e.query.state.data)}),e});return(0,r.jsx)(i.t,{client:t,persistOptions:{persister:h,dehydrateOptions:{shouldDehydrateQuery:e=>{if("success"!==e.state.status||(0,o.eR)(e.queryKey))return!1;let t=e.queryKey[0];return"messages"!==t&&"message"!==t&&"mail-search"!==t&&"thread"!==t&&"demo"!==t}}},children:e})}},22802:()=>{},28069:(e,t,a)=>{"use strict";a.d(t,{NativeBridgeProvider:()=>m});var r=a(4208),n=a(91356),s=a(19984),i=a(81887),l=a(24717);function o(e,t){let a=e.replace(/\/{2,}/g,"/"),r="/"===a||""===a?"/":a.replace(/\/$/,"");return`${r}${t??""}`}async function c(){if(!(0,i.oX)())return null;try{return await (0,l.l)("plugin:ulti-core|share_take_pending")??null}catch{return null}}var d=a(692),u=a(86227);function m({children:e}){let t=(0,i.B8)(),a=(0,s.useRouter)(),h=(0,u.nc)(e=>e.accessToken),p=(0,n.useRef)(!1);return(0,n.useEffect)(()=>{if(!t)return;let e=null;return(async()=>{e=await (0,l.K)("ulti://deep-link",e=>{for(let t of Array.isArray(e)?e:[e]){if("string"!=typeof t)continue;let e=function(e){let t;try{t=new URL(e)}catch{return null}if(t.protocol.startsWith("ulti")&&t.protocol.endsWith(":")){if("oauth"===t.hostname)return null;let e=t.hostname,a=t.pathname.replace(/^\/+/,"");return o("go"===e||""===e?`/${a}`:`/${e}${a?`/${a}`:""}`,t.search)}if("https:"===t.protocol||"http:"===t.protocol){let e=t.pathname.split("/").filter(Boolean),a=e.indexOf("app");if(a>=0&&e.length>a+1){let r=e.slice(a+2).join("/");return o(`/${r}`,t.search)}return o(t.pathname,t.search)}return null}(t);e&&a.push(e)}})})(),()=>{e&&e()}},[t,a]),(0,n.useEffect)(()=>{t&&(async()=>{let e=await c();if(e){try{sessionStorage.setItem("ulti-pending-share",JSON.stringify(e))}catch{}a.push(function(){switch(i.fk){case"mail":return"/mail/inbox?compose=share";case"drive":return"/drive?upload=share";case"contacts":return"/contacts";default:return"/"}}())}})()},[t,a]),(0,n.useEffect)(()=>{t&&h&&!p.current&&(p.current=!0,(0,d.z)())},[t,h]),(0,r.jsx)(r.Fragment,{children:e})}},28292:(e,t,a)=>{"use strict";a.d(t,{d5:()=>s,tg:()=>r});let r="UltiCal",n="Ultimail";function s(e){let t=e?.replace(/\s+/g," ").trim();if(t){var a;return a=function(e,t=48){let a=e.replace(/\s+/g," ").trim();return a?a.length<=t?a:`${a.slice(0,t-1).trimEnd()}`:""}(t),`${a} - ${n}`}return"Bo\xeete mail - Ultimail"}},30046:(e,t,a)=>{"use strict";a.d(t,{MailToaster:()=>i});var r=a(4208),n=a(89032),s=a(17996);function i(){let{resolvedTheme:e}=(0,s.D)();return(0,r.jsx)(n.l$,{position:"bottom-right",offset:{right:16,bottom:16},mobileOffset:{right:16,left:16,bottom:16},style:{"--width":"min(420px, calc(100vw - 2.5rem))"},theme:"dark"===e?"dark":"light",richColors:!0})}},30273:(e,t,a)=>{"use strict";a.d(t,{Su:()=>i,_w:()=>o,ax:()=>l,pi:()=>s,wQ:()=>n});var r=a(58113);let n="h-8 w-8 shrink-0 object-contain object-center select-none",s="flex shrink-0 items-center gap-2.5",i=(0,r.cn)("font-[Helvetica_Neue,Helvetica,Arial,sans-serif]","shrink-0 text-[1.375rem] font-semibold leading-normal tracking-tight","text-mail-text dark:text-mail-text-strong"),l="text-muted-foreground hover:bg-accent hover:text-accent-foreground",o=(0,r.cn)("border border-border bg-[var(--suite-surface-elevated)] text-foreground shadow-xl")},30826:(e,t,a)=>{"use strict";a.d(t,{AuthProvider:()=>g,_:()=>v});var r=a(4208),n=a(91356),s=a(19984),i=a(86227),l=a(49039),o=a(41567),c=a(49677),d=a(43351),u=a(81887),m=a(68917),h=a(60112),p=a(29994),f=a(18753);function g({children:e}){let t=(0,s.usePathname)(),a=(0,s.useRouter)(),h=(0,i.nc)(e=>e.logout),v=(0,i.nc)(e=>e.isAuthenticated),[x,b]=(0,n.useState)(()=>!(0,l.EJ)()),y=(0,n.useCallback)(e=>(0,o.Pr)(e),[]),w=(0,u.B8)(),k=(0,n.useCallback)(async()=>{if(w)return!!await (0,m.P)()||(h(),!1);let e=await (0,o.fd)();return!!(e&&y(e))||(h(),!1)},[y,h,w]);return(0,n.useEffect)(()=>{let e=!1;async function a(){if(!(0,l.EJ)())return void b(!0);if(w){if(await (0,f.b)(),e)return;if((0,p.PC)()){let t=await (0,m._)();!e&&t&&await (0,m.P)()}e||b(!0);return}let a=await (0,o.fd)();if(e)return;if(a&&y(a))return void b(!0);let r=i.nc.getState().isAuthenticated();h(),!r||(0,d.V)(t)||(0,c.a)()||c.w.getState().setExpired(),b(!0)}if(!i.nc.persist.hasHydrated()){let t=i.nc.persist.onFinishHydration(()=>{a()});return()=>{e=!0,t()}}return a(),()=>{e=!0}},[y,h,t,w]),(0,n.useEffect)(()=>{if(!x||!(0,l.EJ)())return;let e=setInterval(()=>{let{accessToken:e,expiresAt:t}=i.nc.getState();e&&t&&Date.now()>=t-3e5&&k()},6e4);return()=>clearInterval(e)},[x,k]),(0,n.useEffect)(()=>{if(!x||!(0,l.EJ)()||(0,d.V)(t)||v()||w)return;let e=!1;return k().then(r=>{if(e||r||"expired"===c.w.getState().status)return;let n=encodeURIComponent(t);a.replace(`/login?returnTo=${n}`)}),()=>{e=!0}},[x,t,v,a,k]),(0,r.jsx)(r.Fragment,{children:e})}function v(){let e=(0,i.nc)(e=>e.logout),t=(0,s.useRouter)(),r=(0,u.B8)();return async()=>{if(r){try{let{unregisterPushOnLogout:e}=await a.e(692).then(a.bind(a,692));await e()}catch{}await (0,h.my)()}else await fetch("/api/auth/logout",{method:"POST",credentials:"include"});for(let t of(e(),localStorage.removeItem(i.Ht),i.IQ))localStorage.removeItem(t);t.replace("/login")}}},36042:(e,t,a)=>{"use strict";function r(e){return e.startsWith("/")?e:`/${e}`}a.d(t,{w:()=>r})},43885:(e,t,a)=>{"use strict";a.d(t,{NativeShellChrome:()=>s});var r=a(91356),n=a(81887);function s(){return(0,r.useLayoutEffect)(()=>{if(!(0,n.oX)())return;let e=document.documentElement;e.classList.add("native-shell");let t=document.createElement("div");t.style.cssText="position:fixed;top:0;left:0;padding-top:env(safe-area-inset-top);visibility:hidden;pointer-events:none",document.body.appendChild(t);let a=parseFloat(getComputedStyle(t).paddingTop)||0;return t.remove(),a<1&&e.style.setProperty("--native-safe-top","28px"),()=>{e.classList.remove("native-shell"),e.style.removeProperty("--native-safe-top")}},[]),null}},46498:(e,t,a)=>{"use strict";a.d(t,{NativeAuthGate:()=>f});var r=a(4208),n=a(91356),s=a(19984),i=a(43351),l=a(68917),o=a(18753),c=a(29994),d=a(81887),u=a(29731),m=a(82386);function h(e,t){return Promise.race([e,new Promise((e,a)=>{setTimeout(()=>a(Error("timeout")),t)})])}function p({children:e}){return(0,r.jsx)("div",{className:"native-auth-screen fixed inset-0 z-[10000] flex h-dvh flex-col overflow-auto bg-background touch-manipulation",children:e})}function f({children:e}){let t=(0,d.B8)(),a=(0,s.usePathname)(),g=(0,n.useRef)(!1),[v,x]=(0,n.useState)(()=>t?(0,i.V)(a)?"none":"picker":"none"),[b,y]=(0,n.useState)("/mail/inbox");return((0,n.useEffect)(()=>{!t||(y(a.startsWith("/")?a:"/mail/inbox"),(0,i.V)(a)&&x("none"))},[t,a]),(0,n.useEffect)(()=>{if(!t||g.current)return;let e=!1;return(async function(){try{await h((0,o.b)(),3e3)}catch{}if(e)return;if((0,i.V)(a))return void x("none");if(!(0,c.PC)())return void x("picker");let t=null;try{t=await h((0,l.P)(),8e3)}catch{t=null}e||x(t?"none":"login")})().finally(()=>{e||(g.current=!0)}),()=>{e=!0}},[t,a]),!t||(0,i.V)(a)||"none"===v)?e:"picker"===v?(0,r.jsx)(p,{children:(0,r.jsx)(m.A,{onSelected:()=>{x("login")}})}):(0,r.jsx)(p,{children:(0,r.jsx)(u.t,{returnTo:b})})}},51137:(e,t,a)=>{"use strict";a.d(t,{$v:()=>p,EO:()=>d,Lt:()=>l,Rx:()=>f,Zr:()=>g,ck:()=>m,r7:()=>h,wd:()=>u});var r=a(4208);a(91356);var n=a(65838),s=a(58113),i=a(61554);function l({...e}){return(0,r.jsx)(n.bL,{"data-slot":"alert-dialog",...e})}function o({...e}){return(0,r.jsx)(n.ZL,{"data-slot":"alert-dialog-portal",...e})}function c({className:e,...t}){return(0,r.jsx)(n.hJ,{"data-slot":"alert-dialog-overlay",className:(0,s.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",e),...t})}function d({className:e,...t}){return(0,r.jsxs)(o,{children:[(0,r.jsx)(c,{}),(0,r.jsx)(n.UC,{"data-slot":"alert-dialog-content",className:(0,s.cn)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg",e),...t})]})}function u({className:e,...t}){return(0,r.jsx)("div",{"data-slot":"alert-dialog-header",className:(0,s.cn)("flex flex-col gap-2 text-center sm:text-left",e),...t})}function m({className:e,...t}){return(0,r.jsx)("div",{"data-slot":"alert-dialog-footer",className:(0,s.cn)("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",e),...t})}function h({className:e,...t}){return(0,r.jsx)(n.hE,{"data-slot":"alert-dialog-title",className:(0,s.cn)("text-lg font-semibold",e),...t})}function p({className:e,...t}){return(0,r.jsx)(n.VY,{"data-slot":"alert-dialog-description",className:(0,s.cn)("text-muted-foreground text-sm",e),...t})}function f({className:e,...t}){return(0,r.jsx)(n.rc,{className:(0,s.cn)((0,i.r)(),e),...t})}function g({className:e,...t}){return(0,r.jsx)(n.ZD,{className:(0,s.cn)((0,i.r)({variant:"outline"}),e),...t})}},55318:(e,t,a)=>{"use strict";a.d(t,{FirstLaunchSplash:()=>f});var r=a(4208),n=a(91356),s=a(19984),i=a(73190),l=a(28292);let o="ultimail-splash-seen-v1",c={mail:{pill:"ULTIMAIL",mark:"/ultimail-mark.svg",subtitle:"Synchronisation de votre boite de reception...",ariaLabel:"Chargement d'Ultimail"},drive:{pill:"ULTIDRIVE",mark:"/ultidrive-mark.svg",subtitle:"Chargement de vos fichiers...",ariaLabel:"Chargement d'UltiDrive",spinMark:!0},agenda:{pill:"ULTICAL",mark:"/agenda-mark.svg",markDark:"/agenda-mark-dark.svg",subtitle:"Chargement de votre agenda...",ariaLabel:`Chargement d'${l.tg}`,spinMark:!0},contacts:{pill:"CONTACTS",mark:"/contacts-mark.svg",subtitle:"Chargement de vos contacts...",ariaLabel:"Chargement des contacts",spinMark:!0}};function d(e){return`ultisuite-splash-seen-v1-${e}`}function u(e){return"/mail"===e||e.startsWith("/mail/")?"mail":"/drive"===e||e.startsWith("/drive/")||"/demo/drive"===e||e.startsWith("/demo/drive/")?"drive":"/agenda"===e||e.startsWith("/agenda/")?"agenda":"/contacts"===e||e.startsWith("/contacts/")?"contacts":null}var m=a(36042),h=a(81887),p=a(58113);function f({children:e}){let t=(0,h.B8)(),a=(0,s.usePathname)(),l=h.ju||t,[g,v]=(0,n.useState)(null),[x,b]=(0,n.useState)(!1),[y,w]=(0,n.useState)(!0);(0,n.useLayoutEffect)(()=>{if(l){v(null),w(!0),b(!1),document.documentElement.dataset.splashSeen="1";return}let e=function(e){if("/"===e||e.startsWith("/demo/"))return null;let t=u(e);return!t||function(e){try{if("1"===localStorage.getItem(d(e))||"mail"===e&&"1"===localStorage.getItem(o))return!0}catch{}return!1}(t)?null:t}(a),t=document.documentElement;t.dataset.splashApp=u(a)??"",t.dataset.splashSeen=e?"0":"1",v(e),w(null===e),b(!1)},[a,l]),(0,n.useEffect)(()=>{if(!g)return;let e=window.setTimeout(()=>{b(!0)},1750),t=window.setTimeout(()=>{try{localStorage.setItem(d(g),"1"),"mail"===g&&localStorage.setItem(o,"1")}catch{}document.documentElement.dataset.splashSeen="1",v(null),w(!0)},2250);return()=>{window.clearTimeout(e),window.clearTimeout(t)}},[g]);let k=g?c[g]:null;return(0,r.jsxs)(r.Fragment,{children:[e,l||y||!k?null:(0,r.jsxs)("div",{className:(0,p.cn)("app-first-launch-splash",x&&"app-first-launch-splash--hide"),role:"status","aria-live":"polite","aria-label":k.ariaLabel,"data-suite-splash":g,children:[(0,r.jsx)("div",{className:"app-first-launch-splash__aurora","aria-hidden":!0}),(0,r.jsx)("div",{className:"app-first-launch-splash__grain","aria-hidden":!0}),(0,r.jsxs)("div",{className:"app-first-launch-splash__content",children:[(0,r.jsx)("div",{className:"app-first-launch-splash__pill",children:k.pill}),"mail"===g?(0,r.jsx)(i.X,{href:null,className:"app-first-launch-splash__logo"}):k.markDark?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("img",{src:(0,m.w)(k.mark),alt:"",className:(0,p.cn)("app-first-launch-splash__mark dark:hidden",k.spinMark&&"app-first-launch-splash__mark--spin"),width:56,height:56,decoding:"async",draggable:!1}),(0,r.jsx)("img",{src:(0,m.w)(k.markDark),alt:"",className:(0,p.cn)("app-first-launch-splash__mark hidden dark:block",k.spinMark&&"app-first-launch-splash__mark--spin"),width:56,height:56,decoding:"async",draggable:!1})]}):(0,r.jsx)("img",{src:(0,m.w)(k.mark),alt:"",className:(0,p.cn)("app-first-launch-splash__mark",k.spinMark&&"app-first-launch-splash__mark--spin"),width:56,height:56,decoding:"async",draggable:!1}),(0,r.jsx)("p",{className:"app-first-launch-splash__subtitle",children:k.subtitle}),(0,r.jsx)("div",{className:"app-first-launch-splash__loader","aria-hidden":!0,children:(0,r.jsx)("span",{})})]})]})]})}},61401:(e,t,a)=>{"use strict";a.d(t,{ThemeInitScript:()=>i,t:()=>s});var r=a(4208);let n=`
(function () {
try {
var path = window.location.pathname || "";
var isDrive =
path === "/drive" ||
path.indexOf("/drive/") === 0 ||
path === "/demo/drive" ||
path.indexOf("/demo/drive/") === 0;
var isMail =
path === "/mail" ||
path.indexOf("/mail/") === 0 ||
path === "/demo/mail" ||
path.indexOf("/demo/mail/") === 0;
var splashApp = null;
if (path === "/mail" || path.indexOf("/mail/") === 0) splashApp = "mail";
else if (isDrive) splashApp = "drive";
else if (path === "/agenda" || path.indexOf("/agenda/") === 0) splashApp = "agenda";
else if (path === "/contacts" || path.indexOf("/contacts/") === 0) splashApp = "contacts";
var splashSeen = false;
if (splashApp) {
splashSeen = localStorage.getItem("ultisuite-splash-seen-v1-" + splashApp) === "1";
if (!splashSeen && splashApp === "mail") {
splashSeen = localStorage.getItem("ultimail-splash-seen-v1") === "1";
}
} else {
splashSeen = true;
}
if (path === "/" || path.indexOf("/demo/") === 0) {
splashSeen = true;
}
if (isDrive) {
document.documentElement.dataset.routeScope = "drive";
delete document.documentElement.dataset.mailBackground;
document.documentElement.style.removeProperty("--mail-bg-layer");
document.documentElement.style.removeProperty("--mail-bg-fallback");
} else {
delete document.documentElement.dataset.routeScope;
}
document.documentElement.dataset.splashApp = splashApp || "";
document.documentElement.dataset.splashSeen = splashSeen ? "1" : "0";
var isDemo = path === "/demo" || path.indexOf("/demo/") === 0;
var isLanding = path === "/";
var mode = "system";
var bgId = null;
if (isDemo) {
var demoRaw = localStorage.getItem("ultimail-demo-theme");
mode = "system";
if (demoRaw) {
try {
var demoParsed = JSON.parse(demoRaw);
mode = (demoParsed.state || demoParsed).themeMode || "system";
} catch (e) {}
}
} else if (isLanding) {
mode = "system";
} else {
var raw = localStorage.getItem("ultimail-mail-settings");
if (!raw) return;
var parsed = JSON.parse(raw);
var state = parsed.state || parsed;
mode = state.themeMode || "system";
bgId = state.backgroundId;
}
var resolved =
mode === "system"
? window.matchMedia("(prefers-color-scheme: dark)").matches
? "dark"
: "light"
: mode;
document.documentElement.classList.toggle("dark", resolved === "dark");
if (isMail && bgId && bgId !== "none") {
var legacy = {
mountains: "photo-mountains",
ocean: "gradient-ocean",
forest: "photo-nature",
abstract: "gradient-blossom"
};
var id = legacy[bgId] || bgId;
var layers = {
"gradient-aurora": 'url("/mail-backgrounds/gradient-aurora.svg") center/cover no-repeat',
"gradient-sunset": 'url("/mail-backgrounds/gradient-sunset.svg") center/cover no-repeat',
"gradient-ocean": 'url("/mail-backgrounds/gradient-ocean.svg") center/cover no-repeat',
"gradient-blossom": 'url("/mail-backgrounds/gradient-blossom.svg") center/cover no-repeat',
"photo-mountains": 'url("https://picsum.photos/seed/ultimail-mountains/1920/1080") center/cover no-repeat',
"photo-ocean": 'url("https://picsum.photos/seed/ultimail-ocean/1920/1080") center/cover no-repeat',
"photo-city": 'url("https://picsum.photos/seed/ultimail-city/1920/1080") center/cover no-repeat',
"photo-nature": 'url("https://picsum.photos/seed/ultimail-nature/1920/1080") center/cover no-repeat'
};
var fallbacks = {
"gradient-aurora": "#667eea",
"gradient-sunset": "#e44d26",
"gradient-ocean": "#203a43",
"gradient-blossom": "#ffecd2",
"photo-mountains": "#5c6b73",
"photo-ocean": "#1a5276",
"photo-city": "#2c3e50",
"photo-nature": "#2d5016"
};
if (layers[id]) {
document.documentElement.dataset.mailBackground = id;
document.documentElement.style.setProperty("--mail-bg-layer", layers[id]);
document.documentElement.style.setProperty(
"--mail-bg-fallback",
fallbacks[id] || "#202124"
);
}
}
} catch (e) {}
})();
`.trim();function s(){try{Function(n)()}catch{}}function i(){return(0,r.jsx)("script",{id:"ultimail-theme-init",suppressHydrationWarning:!0,type:"application/json",dangerouslySetInnerHTML:{__html:n}})}},61514:(e,t,a)=>{"use strict";a.d(t,{SessionGuard:()=>f});var r=a(4208),n=a(91356),s=a(19984),i=a(84834),l=a(51137),o=a(61554),c=a(49677),d=a(41567),u=a(43351),m=a(81887),h=a(86227),p=a(58113);function f(){let e=(0,s.usePathname)(),t=(0,s.useRouter)(),a=(0,m.B8)(),f=(0,h.nc)(e=>!!e.accessToken),g=(0,c.w)(e=>e.status),v=e.startsWith("/")?e:"/mail/inbox",x=a?`/login?returnTo=${encodeURIComponent(v)}`:`/api/auth/login?returnTo=${encodeURIComponent(v)}`,b=(0,n.useCallback)(async()=>{("u"<typeof navigator||navigator.onLine)&&await (0,d.$G)()},[]);return((0,n.useEffect)(()=>{if("offline"!==g)return;let e=()=>{b()};return window.addEventListener("online",e),()=>window.removeEventListener("online",e)},[g,b]),(0,u.V)(e)||a&&!f)?null:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("div",{className:(0,p.cn)("pointer-events-none fixed inset-x-0 top-0 z-[60] overflow-hidden transition-all duration-300","offline"===g?"max-h-10 opacity-100":"max-h-0 opacity-0"),"aria-live":"polite",children:(0,r.jsxs)("div",{className:"pointer-events-auto flex h-10 items-center justify-center gap-2 bg-amber-50 px-4 text-xs font-medium text-amber-900 dark:bg-amber-950/60 dark:text-amber-100",children:[(0,r.jsx)(i.In,{icon:"mdi:wifi-off",className:"size-3.5 shrink-0"}),(0,r.jsx)("span",{children:"Pas de connexion internet — session non v\xe9rifiable pour le moment."}),(0,r.jsx)(o.$,{type:"button",variant:"outline",size:"sm",className:"h-7 border-amber-300 bg-transparent text-xs dark:border-amber-800",onClick:()=>void b(),children:"R\xe9essayer"})]})}),(0,r.jsx)(l.Lt,{open:"expired"===g,children:(0,r.jsxs)(l.EO,{onEscapeKeyDown:e=>e.preventDefault(),onPointerDownOutside:e=>e.preventDefault(),children:[(0,r.jsxs)(l.wd,{children:[(0,r.jsx)(l.r7,{children:"Vous avez \xe9t\xe9 d\xe9connect\xe9"}),(0,r.jsx)(l.$v,{children:"Votre session a expir\xe9 ou n'est plus valide. Reconnectez-vous pour continuer \xe0 utiliser Ultimail."})]}),(0,r.jsx)(l.ck,{children:(0,r.jsx)(l.Rx,{asChild:!0,children:a?(0,r.jsx)(o.$,{type:"button",onClick:()=>t.replace(x),children:"Se reconnecter"}):(0,r.jsx)("a",{href:x,children:"Se reconnecter"})})})]})})]})}},73190:(e,t,a)=>{"use strict";a.d(t,{X:()=>c});var r=a(4208),n=a(35855),s=a.n(n),i=a(30273),l=a(58113);let o="h-[11.25rem] w-auto max-w-none shrink-0 object-contain select-none sm:h-[12rem]";function c({className:e,variant:t="horizontal",href:a="/mail/inbox"}){let n=(0,r.jsx)("img",{src:"/ultimail-mark.svg",alt:"",width:288,height:288,draggable:!1,className:(0,l.cn)(i.wQ,"mark"===t&&"h-10 w-10"),"aria-hidden":!0});if("mark"===t)return null===a?(0,r.jsx)("div",{className:(0,l.cn)("shrink-0",e),children:n}):(0,r.jsx)(s(),{href:a,className:(0,l.cn)("shrink-0 rounded-md outline-none focus-visible:ring-2 focus-visible:ring-ring/50",e),"aria-label":"Ultimail — Bo\xeete de r\xe9ception",children:n});if("stacked"===t){let t=(0,r.jsxs)("div",{className:"flex h-[6.25rem] items-center justify-center overflow-hidden sm:h-[6.75rem]",children:[(0,r.jsx)("img",{src:"/brand/ultimail-wordmark-stacked.png",alt:"Ultimail",width:320,height:320,draggable:!1,className:(0,l.cn)(o,"dark:hidden")}),(0,r.jsx)("img",{src:"/brand/ultimail-wordmark-stacked-dark.png",alt:"Ultimail",width:320,height:320,draggable:!1,"aria-hidden":!0,className:(0,l.cn)(o,"hidden dark:block")})]});return null===a?(0,r.jsx)("div",{className:(0,l.cn)("flex justify-center",e),children:t}):(0,r.jsx)(s(),{href:a,className:(0,l.cn)("flex justify-center rounded-md outline-none focus-visible:ring-2 focus-visible:ring-ring/50",e),"aria-label":"Ultimail — Bo\xeete de r\xe9ception",children:t})}let d=(0,r.jsxs)("div",{role:"img","aria-label":"Ultimail",className:(0,l.cn)(i.pi,"min-w-0 text-foreground"),children:[n,(0,r.jsx)("span",{className:i.Su,children:"Ultimail"})]});return null===a?(0,r.jsx)("div",{className:(0,l.cn)("min-w-0",e),children:d}):(0,r.jsx)(s(),{href:a,className:(0,l.cn)("flex min-w-0 items-center rounded-md outline-none focus-visible:ring-2 focus-visible:ring-ring/50",e),"aria-label":"Ultimail — Bo\xeete de r\xe9ception",children:d})}},74101:(e,t,a)=>{"use strict";function r(e){return e.includes("preview-thumb")||e.includes("attachment-thumb")}function n(e){e?.startsWith("blob:")&&URL.revokeObjectURL(e)}function s(e){n(e?.url)}function i(e,t){return e?.url&&e.url!==t.url&&n(e.url),t}a.d(t,{Qh:()=>i,eR:()=>r,u$:()=>s})}},e=>{e.O(0,[2549,1383,1909,2082,3616,798,9032,5855,8023,2037,563,4927,9731,1614,1506,7358],()=>e(e.s=9025)),_N_E=e.O()}]);