@remit/web-client-dist 0.0.571 → 0.0.573

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. package/assets/{BriefPane-C-AXD_S1.js → BriefPane-DTwqpehY.js} +1 -1
  2. package/assets/{CalendarComposePane-ZInEcl83.js → CalendarComposePane-DMpEx0pI.js} +1 -1
  3. package/assets/{CalendarComposeSeed-BXablasw.js → CalendarComposeSeed-DoaW4DQP.js} +1 -1
  4. package/assets/{CalendarShell-D8PXYY5k.js → CalendarShell-Do67E4cT.js} +1 -1
  5. package/assets/{EmptyState-BdQOG7lh.js → EmptyState-B51IVrJy.js} +1 -1
  6. package/assets/{ErrorState-yTshApcZ.js → ErrorState-DsBtijJZ.js} +1 -1
  7. package/assets/{FlaggedPane-DBMd-f82.js → FlaggedPane-CeJ0lxX3.js} +1 -1
  8. package/assets/{FullCompose-DFM5SSTD.js → FullCompose-utRdyTob.js} +1 -1
  9. package/assets/{MailListHeader-DixjeKWo.js → MailListHeader-CDRRsdUl.js} +1 -1
  10. package/assets/{MailNav-B16LaKDW.js → MailNav-Ded5OdRB.js} +1 -1
  11. package/assets/{MailShell-D2tbOLnz.js → MailShell-K5p0Mrz6.js} +1 -1
  12. package/assets/{MailViewChrome-B2e9uACs.js → MailViewChrome-wm5gxQlP.js} +1 -1
  13. package/assets/{MailboxPane-CfT2HmEK.js → MailboxPane-CU_5z2WT.js} +1 -1
  14. package/assets/{NavMenuButton-DbwB8-EE.js → NavMenuButton-CNrrDR3O.js} +1 -1
  15. package/assets/{OnboardingWizard-BwDNIpbV.js → OnboardingWizard-BGI6h1dq.js} +1 -1
  16. package/assets/{OpenCalendarEvent-Cp3Xxt88.js → OpenCalendarEvent-CmcmB0nH.js} +1 -1
  17. package/assets/{OutboxPane-CW2jpqSm.js → OutboxPane-Ceq0teEA.js} +1 -1
  18. package/assets/_calendarObjectId-DFvXD3oD.js +1 -0
  19. package/assets/_mailboxId-DO4UDB0V.js +1 -0
  20. package/assets/_messageId-CD4CJfdP.js +1 -0
  21. package/assets/_messageId-DVrmsl_R.js +1 -0
  22. package/assets/_messageId-DzX5ZoqJ.js +1 -0
  23. package/assets/_outboxMessageId-cGQVIcu3.js +1 -0
  24. package/assets/_recurrenceId-Dza4TSyq.js +1 -0
  25. package/assets/_threadId-B8z8oIj7.js +1 -0
  26. package/assets/_threadId-BXUkLXRD.js +1 -0
  27. package/assets/_threadId-CrdBXGOB.js +1 -0
  28. package/assets/{_view._date-vmYhsMe2.js → _view._date-D2dzzddn.js} +1 -1
  29. package/assets/{accounts-B5b2n325.js → accounts-Bwc0Mtjk.js} +1 -1
  30. package/assets/{advanced-V_8Vc7Op.js → advanced-g_NpRk9w.js} +1 -1
  31. package/assets/{appearance-B0Z3Sg7A.js → appearance-B-nHL9E4.js} +1 -1
  32. package/assets/{attachment-file-D1lRTIpJ.js → attachment-file-D4ltwNwP.js} +1 -1
  33. package/assets/{attendee-row-BY_sZYga.js → attendee-row-CGWfa3DU.js} +1 -1
  34. package/assets/{avatar-Dc7q-vE0.js → avatar-kb7BRIj-.js} +1 -1
  35. package/assets/{bottom-sheet-Dj78OKpl.js → bottom-sheet-EOczQGoU.js} +1 -1
  36. package/assets/brief-D1dcKREw.js +1 -0
  37. package/assets/{brief-Di6IdjaO.js → brief-zbb8u79R.js} +1 -1
  38. package/assets/{browser-ponyfill-Lmz1LgWx.js → browser-ponyfill-sEWMPSAy.js} +1 -1
  39. package/assets/{bug-BCJlsHb-.js → bug-CIR5aOCb.js} +1 -1
  40. package/assets/{calendar-Cdtx6qRv.js → calendar-D48jm-2O.js} +1 -1
  41. package/assets/{calendar-color-CREaSNOF.js → calendar-color-C9vd3NQU.js} +1 -1
  42. package/assets/{calendar-event-chip-PRMkWtmn.js → calendar-event-chip-BBHc41iQ.js} +1 -1
  43. package/assets/{calendars-BfHi1c8f.js → calendars-evJ97TLb.js} +1 -1
  44. package/assets/{card-Blb5LxlW.js → card-Yo3XEg6b.js} +1 -1
  45. package/assets/chevron-left-CvKqvS9_.js +1 -0
  46. package/assets/{circle-check-DQceIvPw.js → circle-check-TN2pLSAm.js} +1 -1
  47. package/assets/{circle-check-big-DrsWjtbF.js → circle-check-big-Li9WrqhW.js} +1 -1
  48. package/assets/{circle-help-C90h4Gxl.js → circle-help-6lT0PZTp.js} +1 -1
  49. package/assets/{clock-DJx8eT0h.js → clock-BZGi8qZp.js} +1 -1
  50. package/assets/compose._-_outboxMessageId_-8EaZCr-h.js +1 -0
  51. package/assets/compose._-_outboxMessageId_-BprdGL3E.js +1 -0
  52. package/assets/compose._-_outboxMessageId_-C3bxz31s.js +1 -0
  53. package/assets/compose._-_outboxMessageId_-CRcTV4_X.js +1 -0
  54. package/assets/{config-import-zWUhkyrx.js → config-import-BIsND89q.js} +1 -1
  55. package/assets/{confirm-dialog-BnvctSkU.js → confirm-dialog-BP0RGVB7.js} +1 -1
  56. package/assets/{copy-CPegVmmX.js → copy-CSMTIGQ5.js} +1 -1
  57. package/assets/{credential-steps-03ZiFb9S.js → credential-steps-_Bfnkria.js} +1 -1
  58. package/assets/{download-DCjKcyoD.js → download-CkEmIWry.js} +1 -1
  59. package/assets/{file-json-Bp9PxrXB.js → file-json-CGnHrwAf.js} +1 -1
  60. package/assets/{filters-Cz6ACP3x.js → filters-BLKSR6Xv.js} +1 -1
  61. package/assets/flagged-5xYQDOCL.js +1 -0
  62. package/assets/{flagged-CVe-xaZ6.js → flagged-CRLrZAGU.js} +1 -1
  63. package/assets/{folders-D0RCMVTd.js → folders-NXbZhYVt.js} +1 -1
  64. package/assets/{help-copy-Xy5HlVm9.js → help-copy-BnfXul_l.js} +1 -1
  65. package/assets/{import-DntPPUzf.js → import-CtxU-anM.js} +1 -1
  66. package/assets/index-CD4CJfdP.js +1 -0
  67. package/assets/{index-DyF2fU1Q.js → index-CGoUhxLl.js} +1 -1
  68. package/assets/{index-ELhtBEwQ.js → index-CLDSMpwb.js} +4 -4
  69. package/assets/index-CSl21pmh.js +1 -0
  70. package/assets/index-CsIM9j-Q.js +1 -0
  71. package/assets/index-DVrmsl_R.js +1 -0
  72. package/assets/index-DYgX7tdP.js +1 -0
  73. package/assets/index-Da-HpnDm.js +1 -0
  74. package/assets/{index-Dy5D6YkV.js → index-Pa-PXhYt.js} +4 -4
  75. package/assets/index-TJzptkez.js +1 -0
  76. package/assets/index-ifhhvbnN.js +1 -0
  77. package/assets/index-rT6iKaqw.js +1 -0
  78. package/assets/{kbd-6xrqVw1K.js → kbd-BptaoNeb.js} +1 -1
  79. package/assets/{labels-eMbeaPk4.js → labels-CEry7JP8.js} +1 -1
  80. package/assets/{mail-w8cRSHpe.js → mail-B9R0LNya.js} +1 -1
  81. package/assets/{mail-1kAZ-hEc.js → mail-CUfpnKmW.js} +1 -1
  82. package/assets/{map-pin-pA2YiBQX.js → map-pin-BAQN6x3n.js} +1 -1
  83. package/assets/{menu-BBzSZjBL.js → menu-C_ItFy3L.js} +1 -1
  84. package/assets/{new-a4cb6vhA.js → new-Dh-2Su8H.js} +1 -1
  85. package/assets/onboarding-C5Ly9snk.js +1 -0
  86. package/assets/{onboarding-completion-DPHalyAM.js → onboarding-completion-B5FZtUux.js} +1 -1
  87. package/assets/outbox-B0uqNR7a.js +1 -0
  88. package/assets/{pencil-DWkVPRF_.js → pencil-wopYA3tK.js} +1 -1
  89. package/assets/{refresh-cw-N6rrepD7.js → refresh-cw-WQWjOiDL.js} +1 -1
  90. package/assets/{rich-text-CIfc5KKH.js → rich-text-D5ePDD9m.js} +1 -1
  91. package/assets/{rich-text-spellcheck-worker-provider-B-dYPpIy.js → rich-text-spellcheck-worker-provider-CWZtLN7v.js} +1 -1
  92. package/assets/{rotate-ccw-Cq64A4JR.js → rotate-ccw-BGnoQrsd.js} +1 -1
  93. package/assets/{roving-focus-BOWQw34Y.js → roving-focus-xdT_hFx-.js} +1 -1
  94. package/assets/{row-actions-CHU1lTnr.js → row-actions-CPjrTXH5.js} +1 -1
  95. package/assets/{search-mirror-D__KCGFD.js → search-mirror-D9T_QTSg.js} +1 -1
  96. package/assets/{search-token-index-RpS46UX-.js → search-token-index-DH9ZHWHu.js} +1 -1
  97. package/assets/{sections-DpPFeJvC.js → sections-BbwJeaVs.js} +1 -1
  98. package/assets/{senders-BzofDilD.js → senders-VOON1QUW.js} +1 -1
  99. package/assets/settings-BdLYbmQe.js +1 -0
  100. package/assets/{settings-screen-CEtuw85p.js → settings-screen-CJlF_Cuc.js} +1 -1
  101. package/assets/{shield-check-C-xWv7tn.js → shield-check-CdBctVu5.js} +1 -1
  102. package/assets/{suggested-vips-D-TCsoQ_.js → suggested-vips-D0pthKMY.js} +1 -1
  103. package/assets/{useCalendarData-tBA8O6aY.js → useCalendarData-C2bHSfW2.js} +1 -1
  104. package/assets/{useCalendars-DmOIJuzJ.js → useCalendars-300H4qIk.js} +1 -1
  105. package/assets/{useDebouncedValue-cgYnkNgs.js → useDebouncedValue-B17cbPWx.js} +1 -1
  106. package/assets/{useFilters-toZUnuEV.js → useFilters-EUeKL3LS.js} +1 -1
  107. package/assets/{useLabels-CuITaMaj.js → useLabels-DXD0xTLQ.js} +1 -1
  108. package/assets/{useLayoutTier-BiCLmmpl.js → useLayoutTier-CqqMDWMQ.js} +1 -1
  109. package/assets/{useMessageBodyContent-Dqn8BKJN.js → useMessageBodyContent-CqnK7vFx.js} +1 -1
  110. package/assets/{useQueries-BuVSZIL7.js → useQueries-DLtTi8je.js} +1 -1
  111. package/assets/{useRefreshControl-BY8dJRFq.js → useRefreshControl-YILSa993.js} +1 -1
  112. package/assets/{useResultFolderIndex-Bh5N3vbq.js → useResultFolderIndex-Bl-t2uo0.js} +1 -1
  113. package/assets/{useSearchTokenContext-BDaT1iE0.js → useSearchTokenContext-sk7n5_Wa.js} +1 -1
  114. package/assets/{useSemanticSearch-Cr2T-SJl.js → useSemanticSearch-681BpGBX.js} +1 -1
  115. package/assets/{useSignature-Do1zcP6k.js → useSignature-DL3dYCSH.js} +1 -1
  116. package/assets/{window-BeKH_DgL.js → window-vYbNZDbX.js} +1 -1
  117. package/index.html +1 -1
  118. package/package.json +1 -1
  119. package/assets/_calendarObjectId-Bhzj_LOc.js +0 -1
  120. package/assets/_mailboxId-7CeQdqXt.js +0 -1
  121. package/assets/_messageId-9yyd8JQa.js +0 -1
  122. package/assets/_messageId-BjT0iqtE.js +0 -1
  123. package/assets/_messageId-DIrX2-NC.js +0 -1
  124. package/assets/_outboxMessageId-5Hilxc-o.js +0 -1
  125. package/assets/_recurrenceId-9zc7QOUi.js +0 -1
  126. package/assets/_threadId-BLPnJQ1O.js +0 -1
  127. package/assets/_threadId-Cj-AqWpe.js +0 -1
  128. package/assets/_threadId-DmnNT1YW.js +0 -1
  129. package/assets/brief-pYORS2EQ.js +0 -1
  130. package/assets/chevron-left-B5q2zkoV.js +0 -1
  131. package/assets/compose._-_outboxMessageId_-Bx3jTrEX.js +0 -1
  132. package/assets/compose._-_outboxMessageId_-CCL9Z9Rr.js +0 -1
  133. package/assets/compose._-_outboxMessageId_-J5Xr0VYM.js +0 -1
  134. package/assets/compose._-_outboxMessageId_-OYQ8wE-O.js +0 -1
  135. package/assets/flagged-bqIrcL0D.js +0 -1
  136. package/assets/index-4TyPLW-n.js +0 -1
  137. package/assets/index-9yyd8JQa.js +0 -1
  138. package/assets/index-BjT0iqtE.js +0 -1
  139. package/assets/index-BpsjtF88.js +0 -1
  140. package/assets/index-C-j9H2jQ.js +0 -1
  141. package/assets/index-CfHR_Ae8.js +0 -1
  142. package/assets/index-CmmqbTph.js +0 -1
  143. package/assets/index-drC6ZRdd.js +0 -1
  144. package/assets/index-iaeEYdB7.js +0 -1
  145. package/assets/onboarding-B6cLhnyh.js +0 -1
  146. package/assets/outbox-BMQSynaj.js +0 -1
  147. package/assets/settings-t8hjTuQb.js +0 -1
@@ -1 +1 @@
1
- import{j as r,L as Tt,W as wt,ev as _e,ew as ue,dX as me,r as n,c as Qe,C as J,bm as Rt,cN as Mt,K as jt,dN as kt,ex as Et,a0 as ze,ee as At,ey as Ft,al as Ot,cZ as Nt,c_ as Bt}from"./index-Dy5D6YkV.js";import{g as He,e as Lt,f as Ke,u as qt,p as Pt,R as Dt}from"./useSearchTokenContext-BDaT1iE0.js";import{a8 as _t,A as Qt,E as zt,ak as Ht,al as Kt,am as Gt,an as Wt,ao as Ut,ap as Fe,aq as Yt,ar as $t,as as Vt,a7 as Zt,at as Jt,au as Xt,av as es,af as ts,M as ss,aw as os,ag as rs,ax as ns,ay as as,e as is,p as cs,ai as ls,m as ds,S as us,J as ms,O as Oe,N as fs,K as hs,d as gs,Y as ps,Z as xs,$ as Ge,a0 as We,a1 as Is,a2 as ys,a3 as vs}from"./MailListHeader-DixjeKWo.js";import{u as bs,a as Ss,R as Cs,b as Ts,c as ws}from"./useRefreshControl-BY8dJRFq.js";import{u as fe}from"./useQueries-BuVSZIL7.js";import{t as Rs,u as Ms,r as js,L as ks}from"./useSemanticSearch-Cr2T-SJl.js";import{a as Es}from"./useLabels-CuITaMaj.js";import{u as As,b as Fs}from"./useLayoutTier-BiCLmmpl.js";import{d as Os,w as Ns}from"./wizard-selection-DxUM65kM.js";import{u as Ue}from"./sections-DpPFeJvC.js";import{R as Bs}from"./refresh-cw-N6rrepD7.js";import{a as Ls}from"./useMessageBodyContent-Dqn8BKJN.js";import{g as qs,h as Ps}from"./search-token-index-RpS46UX-.js";function Ds({sync:e}){return e?r.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-2 py-12 text-center px-4",role:"status","aria-live":"polite",children:[r.jsx(Tt,{className:"size-8 animate-spin text-fg-subtle","aria-hidden":"true"}),r.jsx("p",{className:"text-sm font-medium text-fg",children:"Still syncing your mail"}),r.jsx("p",{className:"text-xs text-fg-subtle",children:_s(e)})]}):r.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-2 py-12 text-center px-4",children:[r.jsx(wt,{className:"size-8 text-fg-subtle","aria-hidden":"true"}),r.jsx("p",{className:"text-sm font-medium text-fg",children:"You're caught up"}),r.jsx("p",{className:"text-xs text-fg-subtle",children:"Nothing needs attention."})]})}function _s({synced:e,total:t}){return t>0?`${e.toLocaleString()} of ${t.toLocaleString()} messages downloaded. This list fills in as they arrive.`:"Downloading your messages. This list fills in as they arrive."}const Ye=[{id:"unread",name:"is",value:"unread"},{id:"attachment",name:"has",value:"attachment"}],$e="category",Qs={unclassified:"uncategorized"},H=e=>Lt(e).map(t=>t.raw),z=e=>e.join(" "),he=e=>{const t=Ke(e);if(t)return Ye.find(o=>o.name===t.name&&o.value===t.value.toLowerCase())?.id},ge=e=>{const t=Ke(e);if(!t||t.name!==$e)return;const o=t.value.toLowerCase(),a=Qs[o];if(a)return a;if(!(!_e(o)||o==="all"))return o},Ve=e=>Ye.find(t=>t.id===e),Ze=e=>Ve(e)!==void 0,zs=e=>{const t=new Set;for(const o of H(e)){const a=he(o);a&&t.add(a)}return t},Hs=e=>{let t="all";for(const o of H(e)){const a=ge(o);a&&(t=a)}return t},Ks=(e,t)=>{const o=Ve(t);if(!o)return;const a=H(e),c=a.filter(d=>he(d)!==t);return c.length<a.length?z(c):z([...a,He(o.name,o.value)])},Gs=(e,t)=>{const o=H(e).filter(a=>!ge(a));return z(t==="all"?o:[...o,He($e,t)])},Ws=e=>z(H(e).filter(t=>!he(t)&&!ge(t))),Je=e=>e.trim().length>0,Ne=e=>{if(!Je(e.query))return e.ownFilters;const t=new Set(zs(e.query));for(const o of e.ownFilters)Ze(o)||t.add(o);return t},Be=e=>Je(e.query)?Hs(e.query):e.ownCategory,Le=6e4,Us=3e4,Ys={kind:"unknown"},qe=e=>(t,o)=>_t(o?.queryKey,e)?t:void 0,$s=(e,t,o)=>({...e,category:[t],limit:o,order:"desc"}),Vs=(e,t)=>({...e,category:[t],order:"desc",count:!0,results:!1}),Pe=(e,t)=>({category:[t],...e.unread!==void 0?{unread:e.unread}:{},...e.starred!==void 0?{starred:e.starred}:{},...e.attachments!==void 0?{attachments:e.attachments}:{}});function Zs({categories:e,criteria:t,limit:o,counted:a}){const c=fe({queries:e.map(m=>{const f=$s(t,m,o),g=Pe(t,m);return{queryKey:me({query:f}),queryFn:async()=>{const{data:T}=await ue({query:f,throwOnError:!0});return T},placeholderData:qe(g),staleTime:Le}})}),d=fe({queries:e.map(m=>{const f=Vs(t,m),g=Pe(t,m);return{queryKey:me({query:f}),queryFn:async()=>{const{data:T}=await ue({query:f,throwOnError:!0});return T},enabled:a,placeholderData:qe(g),staleTime:Le}})}),l=n.useMemo(()=>e.map((m,f)=>{const g=c[f],T=d[f],I=g?.data?.items??[];return{category:m,rows:I,atCap:I.length>=o,total:a?Rs(T?.data?.count):Ys,loading:g?.isPending??!0,failed:g?.isError??!1,retry:()=>{g?.refetch(),a&&T?.refetch()}}}),[e,c,d,a,o]),u=n.useCallback(()=>{for(const m of c)m.refetch();for(const m of d)m.refetch()},[c,d]);return{sections:l,isLoading:c.length>0&&c.every(m=>m.isPending),isError:c.length>0&&c.every(m=>m.isError),refetch:u}}function Js(e,t,o){const a={...e,limit:t,order:"desc"},{data:c,isLoading:d,isError:l,refetch:u}=Qe({queryKey:me({query:a}),queryFn:async()=>{const{data:f}=await ue({query:a,throwOnError:!0});return f},enabled:o,staleTime:Us});return{rows:n.useMemo(()=>o?c?.items??[]:[],[c,o]),isLoading:o&&d,isError:o&&l,refetch:n.useCallback(()=>{u()},[u])}}const Xs=(e,t)=>e.createdAt!==t.createdAt?e.createdAt-t.createdAt:e.accountId.localeCompare(t.accountId),eo=e=>[...e].sort(Xs),to=["category","unread","starred","attachments"],Xe=["contacts","today"],so=e=>new Set(Xe.filter(t=>e.has(t))),oo=(e,t,o)=>{const a=Qt({category:e,attributes:t}),{params:c,residual:d}=zt(o,a,to),l={...c,...a},u={};return l.unread!==void 0&&(u.unread=l.unread),l.starred!==void 0&&(u.starred=l.starred),l.attachments!==void 0&&(u.attachments=l.attachments),{criteria:u,residual:d}},ro=({residual:e,attributes:t,accountScoped:o})=>e.length===0&&!o&&!Xe.some(a=>t.has(a)),no=50,ao=200,io=[],De=()=>r.jsx("div",{className:"animate-pulse",children:Array.from({length:3}).map((e,t)=>r.jsxs("div",{className:"flex items-start gap-3 py-2 pl-5 pr-4 border-b border-line",children:[r.jsx("div",{className:"size-7 rounded-full bg-surface-sunken shrink-0 mt-0.5"}),r.jsxs("div",{className:"flex-1 space-y-1.5",children:[r.jsxs("div",{className:"flex justify-between gap-2",children:[r.jsx("div",{className:"h-3.5 bg-surface-sunken rounded w-28"}),r.jsx("div",{className:"h-3 bg-surface-sunken rounded w-12"})]}),r.jsx("div",{className:"h-3.5 bg-surface-sunken rounded w-48"}),r.jsx("div",{className:"h-3 bg-surface-sunken rounded w-full"})]})]},t))}),co=({accountEmail:e})=>{const t=Ue();return r.jsxs("div",{className:"flex items-center gap-2 px-row-inset py-2 border-b border-line bg-danger-soft/40 text-xs text-danger",children:[r.jsx(ze,{className:"size-3.5 shrink-0"}),r.jsxs("span",{className:"flex-1 truncate",children:[e," can't connect"]}),r.jsx("button",{type:"button",onClick:()=>t("accounts"),className:"shrink-0 underline text-danger hover:opacity-80",children:"Reconnect"})]})},lo=(e,t)=>{if(t.size===0)return{};const o=e.filter(d=>t.has(d.id)),a=js(o.map(d=>d.accountId));if(a.restriction)return a;const c=new Set;for(const d of o)d.mailboxId&&c.add(d.mailboxId);return c.size>1?{accountId:a.accountId,restriction:"spansFolders",moveDisabledHint:`Move only works within one folder — this selection spans ${c.size} folders`}:{accountId:a.accountId,mailboxId:c.size===1?[...c][0]:void 0}};function uo({header:e,rows:t,wizard:o,children:a}){const{selectedIds:c,selectedCount:d,exitSelection:l,orderedIds:u,allSelected:m,toggleAllLoaded:f}=as(),g=n.useMemo(()=>lo(t,c),[t,c]),{junkMailboxId:T}=is(g.accountId),{labels:I}=Es(g.accountId),v=n.useMemo(()=>Array.from(c),[c]),B=n.useMemo(()=>Ns(t,c),[t,c]),p=cs(T,g.mailboxId),b=n.useMemo(()=>u.length>0?{checked:m,indeterminate:d>0&&!m,onChange:f}:void 0,[u.length,m,d,f]),F=g.moveDisabledHint?{tone:"warning",text:g.moveDisabledHint}:void 0,S=R=>r.jsx(us,{title:R.title,navSlot:R.navSlot,titleMeta:R.titleMeta,searchSlot:R.searchSlot,searchField:R.searchField,idleSlot:R.makeFilterSlot,count:d,onCancel:l,onDelete:()=>o.start("delete"),onMove:()=>o.start("move"),onOrganize:()=>o.start("organize"),onJunk:p?()=>o.start("junk"):void 0,onMarkRead:()=>o.start("markRead"),overflowSlot:g.accountId&&g.mailboxId&&d>0&&I.length>0?r.jsx(ks,{accountId:g.accountId,mailboxId:g.mailboxId,messageIds:v}):void 0,selectAll:b,notice:F});return r.jsx(ls,{...e,selectionBar:S,paneOverlay:r.jsx(ds,{verb:o.verb,accountId:g.accountId,mailboxId:g.mailboxId,selection:B,selectionRestriction:g.restriction,onFinished:l}),children:a})}function mo({accounts:e,selectedMessageId:t,onOpenThread:o,commandsRef:a,onTriageContextChange:c,onDeleteMessages:d}){const{searchQuery:l,searchInput:u,resultFolderIndex:m,onSearchChange:f}=J(),g=qt(),T=Rt(),I=As(),v=Mt(),B=Fs(),p=n.useMemo(()=>eo(e.filter(s=>!s.muted?.value)),[e]),[b,F]=n.useState("all"),[S,R]=n.useState("all"),[O,L]=n.useState(new Set),[ee,M]=n.useState(!1),q=n.useCallback(s=>{L(i=>{const h=new Set(i);return h.has(s)?h.delete(s):h.add(s),h})},[]),K=n.useCallback(()=>L(new Set),[]),E=u.trim().length>0,{freeText:j,tokens:P}=Pt(l.trim().toLowerCase(),g),y=j.length>0,D=n.useMemo(()=>Ne({query:u,ownFilters:O}),[u,O]),_=n.useMemo(()=>Be({query:u,ownCategory:S}),[u,S]),A=n.useMemo(()=>Ne({query:l,ownFilters:O}),[l,O]),C=n.useMemo(()=>Be({query:l,ownCategory:S}),[l,S]),x=n.useCallback(s=>{if(!E||!Ze(s)){q(s);return}const i=Ks(u,s);i!==void 0&&f(i)},[E,u,f,q]),k=n.useCallback(s=>{if(!E){R(s);return}f(Gs(u,s))},[E,u,f]),te=n.useMemo(()=>C==="all"&&!y?s=>{_e(s)&&k(s)}:void 0,[C,y,k]),se=n.useCallback(()=>{R("all"),F("all"),K(),E&&f(Ws(u))},[E,u,f,K]),G=fe({queries:p.map(s=>({...jt({path:{accountId:s.accountId}}),staleTime:1/0,meta:{softError:!0}}))}),W=n.useMemo(()=>{const s=new Map;for(let i=0;i<p.length;i++){const h=p[i].accountId,bt=(G[i]?.data?.items??[]).reduce((St,Ct)=>St+(Ct.unseenCount??0),0);s.set(h,bt)}return s},[p,G]),st=n.useMemo(()=>p.filter((s,i)=>{const h=G[i];return h?.isError?!kt(h.error):!1}),[p,G]),{criteria:oe,residual:re}=n.useMemo(()=>oo(C,A,P),[C,A,P]),ot=n.useMemo(()=>C==="all"?[...Ht]:[C],[C]),rt=n.useMemo(()=>({...oe,query:j,...C==="all"?{}:{category:[C]}}),[oe,j,C]),nt=ro({residual:re,attributes:A,accountScoped:b!=="all"}),{sections:U,isLoading:at,isError:it,refetch:pe}=Zs({categories:y?io:ot,criteria:oe,limit:C==="all"?ns:no,counted:nt}),{rows:xe,isLoading:ct,isError:lt,refetch:Ie}=Js(rt,ao,y),ne=y?ct:at,ye=y?lt:it,ve=n.useCallback(()=>{if(y){Ie();return}pe()},[y,Ie,pe]),be=n.useMemo(()=>so(A),[A]),Y=n.useCallback(s=>Os(Kt(s)).map(Gt).filter(i=>(b==="all"||i.accountId===b)&&Et(i,be)&&Wt(i,re)),[b,be,re]),$=n.useMemo(()=>U.map(s=>({category:s.category,total:Ut(s.total,s.rows),atCap:s.atCap,loading:s.loading,failed:s.failed,rows:Y(s.rows)})),[U,Y]),V=n.useMemo(()=>Y(xe),[xe,Y]),dt=n.useCallback(s=>{U.find(i=>i.category===s)?.retry()},[U]),w=n.useMemo(()=>y?V:$.flatMap(s=>s.rows),[y,V,$]),{spamIds:ae,briefSpamOffer:ie}=n.useMemo(()=>{const s={spamIds:void 0,briefSpamOffer:void 0};if(!j)return s;const i=w.map(N=>Fe(N,m)),{spam:h}=Yt(i);return h.length===0?s:{spamIds:new Set(h.map(N=>N.id)),briefSpamOffer:$t(i)}},[w,j,m]),Se=n.useMemo(()=>{const s=i=>ae===void 0?i:i.filter(h=>!ae.has(h.id));return y?[{id:"matches",threads:s(V)}]:Vt($.map(i=>({...i,rows:s(i.rows)})))},[y,V,$,ae]),Ce=n.useCallback((s,i)=>{const h=w.find(N=>N.id===s)?.threadId;h&&o?.({threadId:h,messageId:s},i)},[w,o]),ut=n.useCallback(s=>{const i=s.threadId??w.find(h=>h.id===s.id)?.threadId;i&&o?.({threadId:i,messageId:s.id})},[w,o]),ce=n.useMemo(()=>p.length<=1?[]:[{id:"all",label:"All",active:b==="all"},...p.map(s=>({id:s.accountId,label:s.email.split("@")[0]??s.email,count:W.get(s.accountId),active:b===s.accountId}))],[p,W,b]),Q=n.useMemo(()=>e.filter(s=>s.muted?.value).length,[e]),mt=n.useMemo(()=>Array.from(W.values()).reduce((s,i)=>s+i,0),[W]),le=n.useMemo(()=>p.map(s=>s.accountId),[p]),{hasNewMail:Te}=bs(),{state:we,errorMessage:Re,refresh:Me}=Ss(le,{onSettled:()=>ve()}),ft=n.useMemo(()=>r.jsx(Cs,{state:we,onRefresh:Me,label:"Refresh daily brief",errorMessage:Re,hasUpdate:Te(le)}),[we,Me,Re,Te,le]),de=n.useMemo(()=>w.map(s=>Fe(s,m)),[w,m]),{hits:je,isLoading:ht}=Ms(),gt=n.useMemo(()=>{const s=new Map(w.map(h=>[h.id,h.threadId])),i=de.map(h=>s.get(h.id)).filter(h=>h!=null);return Zt(je,i,m)},[je,de,w,m]),pt=n.useMemo(()=>{const s=Jt(ce.map(i=>({id:i.id,label:i.label,count:i.count,active:i.active})));return{categories:s.categories,filters:s.filters,sources:s.sources,sourcesNote:Q>0?`+${Q} muted`:void 0,selectedCategory:_,activeFilters:D,expanded:ee,onExpandedChange:M,onSelectCategory:i=>k(i),onSelectSource:F,onToggleFilter:i=>x(i),onClear:se}},[ce,Q,_,D,ee,x,k,se]),ke=Se.length===0&&b==="all"&&j.length===0&&P.length===0,xt=n.useMemo(()=>p.map(s=>s.accountId),[p]),It=n.useMemo(()=>p.some(s=>Ts(s.syncPhase)),[p]),Z=ws(xt,ke||It),Ee=r.jsxs("div",{className:"h-full overflow-y-auto",children:[r.jsx(De,{}),r.jsx(De,{})]}),Ae=!ne&&!ye&&!ke,yt=Xt({tier:I,hasLiveInput:E,hasCommittedQuery:l.trim().length>0,bodyRendersCommittedResults:!0}),vt=Ae?r.jsxs("div",{className:"flex h-full min-h-0 flex-col",children:[ie&&r.jsx(es,{count:ie.count,onScopeToSpam:()=>B(ie.mailboxId,l)}),r.jsx("div",{className:"min-h-0 flex-1",children:r.jsx(ts,{sections:Se,briefCategory:_,Row:ss,selectedThreadId:t,onSelectThread:Ce,onShowAllSection:te,onRetrySection:dt,flat:y,onSelectBriefCategory:k,sources:ce,sourcesNote:Q>0?`+${Q} muted`:void 0,onSelectSource:F,activeFilters:D,onToggleFilter:x,onClearFilters:se})})]}):ne?Ee:ye?r.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-3 py-12 text-sm text-fg-muted",children:[r.jsx(ze,{className:"size-8 text-danger"}),r.jsx("p",{children:"Couldn't load your messages"}),r.jsxs("button",{type:"button",onClick:()=>ve(),className:"flex items-center gap-1 text-accent underline text-xs",children:[r.jsx(Bs,{className:"size-3.5"}),"Try again"]})]}):Z.resolved?r.jsx(Ds,{sync:Z.syncing?{synced:Z.synced,total:Z.total}:void 0}):Ee;return r.jsx(At,{hasSheet:Ae&&!yt,children:r.jsx(os,{selectedMessageId:t,rows:w,onOpen:Ce,onDeleteMessages:d,onSelectionVerb:v.start,commandsRef:a,onTriageContextChange:c,children:r.jsx(uo,{wizard:v,header:{title:"Daily brief",unreadCount:mt,footer:T?r.jsx(rs,{}):void 0,searchFilter:pt,searchResults:de,searchLoading:ne,relatedResults:gt,relatedLoading:ht,onSelectSearchResult:ut,searchResultsInBody:!0,refreshControl:ft},rows:w,children:r.jsxs("div",{className:"flex h-full flex-col",children:[st.map(s=>r.jsx(co,{accountEmail:s.email,accountId:s.accountId},s.accountId)),r.jsx("div",{className:"min-h-0 flex-1",children:vt})]})})})})}const et=n.createContext(null);function X(){const e=n.useContext(et);if(!e)throw new Error("BriefPane.* must be used inside <BriefPane>");return e}function fo({thread:e,children:t}){const o=qs(),a=Ps(),c=Ue(),{searchInput:d}=J(),l=e?.threadId,u=e?.messageId,{data:m}=Qe({...Ft(),staleTime:6e4}),f=n.useMemo(()=>m?.items??[],[m]),g=n.useMemo(()=>{if(l)return f.find(x=>x.messageId===u)??f.find(x=>x.threadId===l)},[f,l,u]),T=ms(l,u),I=g??T,v=u??I?.messageId,B=n.useMemo(()=>{if(l)return{threadId:l,mailboxId:I?.mailboxId??"",subject:I?.subject,messageId:v,authenticity:I?.authenticity}},[l,I,v]),p=n.useCallback((x,k)=>{o(x,{replace:k?.replace,query:d})},[o,d]),b=n.useCallback(x=>{v&&x.includes(v)&&a()},[v,a]),F=Oe({thread:I,isOpen:!0,onAfterOptimisticRemove:b}),S=fs(),{deleteMessages:R}=hs({mailboxId:I?.mailboxId??"",messages:f,onAfterOptimisticRemove:b}),{toggleReadFor:O}=gs({mailboxId:I?.mailboxId??"",messages:f}),L=S.focusedMessageId,M=n.useMemo(()=>f.find(x=>x.messageId===L),[f,L])??I,q=Oe({thread:M,isOpen:M?.messageId===v}),K=Ls(),E=Ot(),j=Nt(),P=n.useMemo(()=>Bt(j,l,v),[j,l,v]),y=n.useMemo(()=>{if(M)return x=>j({threadId:M.threadId,messageId:M.messageId,mode:x})},[j,M]),{nextMessageId:D,previousMessageId:_}=ps({context:S,orderedIds:S.orderedIds,selectedMessageId:v,enabled:!K&&!E,hasOpenThread:l!==void 0,onClose:a,handlers:{reply:()=>y?.("reply"),replyAll:()=>y?.("reply-all"),forward:()=>y?.("forward"),delete:()=>{S.listCommandsRef.current?.requestVerb("delete")||q.deleteThread()},toggleStar:q.toggleStar,toggleRead:()=>{S.listCommandsRef.current?.requestVerb("markRead")||M&&O([M.messageId],!M.isRead)},goFlagged:()=>c("flagged"),goSettings:()=>c("settings")}}),A=n.useCallback(x=>{if(!x)return;const k=f.find(te=>te.messageId===x);return k?{threadId:k.threadId,messageId:x}:void 0},[f]),C={selectedMessageId:v,selectedThread:I,conversation:B,onOpenThread:p,onCloseThread:a,nextThread:A(D),previousThread:A(_),actions:F,onReply:P,triage:S,onDeleteMessages:R,handleDeselectIfRemoved:b};return r.jsx(et.Provider,{value:C,children:t})}function tt(){const{selectedMessageId:e,onOpenThread:t,triage:o,onDeleteMessages:a}=X(),{accounts:c}=J();return r.jsx(mo,{accounts:c,selectedMessageId:e,onOpenThread:t,commandsRef:o.listCommandsRef,onTriageContextChange:o.onTriageContextChange,onDeleteMessages:a})}function ho(){const{conversation:e,selectedThread:t,actions:o,onReply:a,handleDeselectIfRemoved:c}=X(),d=!!e,l=ys(e?.threadId);return r.jsxs(r.Fragment,{children:[r.jsxs("section",{className:"flex h-full w-full min-w-0 flex-col bg-canvas",children:[r.jsx(vs,{hasThread:d,intelligenceOpen:l.isShowing,canToggleIntelligence:l.canToggle,onToggleIntelligence:l.toggle,onReply:a?()=>a("reply"):void 0,onReplyAll:a?()=>a("reply-all"):void 0,onForward:a?()=>a("forward"):void 0,onDelete:d?o.deleteThread:void 0,onToggleStar:d?o.toggleStar:void 0,isStarred:o.isStarred,moveContext:d&&o.accountId&&o.mailboxId?{accountId:o.accountId,currentMailboxId:o.mailboxId,onMove:o.moveThread}:void 0}),r.jsx("div",{className:"min-h-0 flex-1 overflow-hidden",children:e?r.jsx(Ge,{threadId:e.threadId,mailboxId:e.mailboxId,subject:e.subject,selectedMessageId:e.messageId,authenticity:e.authenticity,onOpenIntelligence:l.open,listOnScreen:!0}):r.jsx(Dt,{})})]}),r.jsx(We,{isOpen:l.drawerOpen,onClose:l.closeDrawer,thread:t,mailboxId:t?.mailboxId,accountId:t?.accountId,onAfterOptimisticRemove:c})]})}function go(){const{selectedThread:e,handleDeselectIfRemoved:t}=X(),{onToggleIntelligence:o}=J();return r.jsx(Is,{onClose:o,thread:e,mailboxId:e?.mailboxId,accountId:e?.accountId,onAfterOptimisticRemove:t})}function po(){const{selectedThread:e,conversation:t,onOpenThread:o,onCloseThread:a,nextThread:c,previousThread:d,handleDeselectIfRemoved:l}=X(),u=xs(t?.threadId??null);return t?r.jsxs(r.Fragment,{children:[r.jsx(Ge,{threadId:t.threadId,mailboxId:t.mailboxId,subject:t.subject,selectedMessageId:t.messageId,authenticity:t.authenticity,onBack:a,onOpenIntelligence:u.toggle,onSwipeNext:c?()=>o(c):void 0,onSwipePrevious:d?()=>o(d):void 0,mobileIntelligenceOpen:u.isOpen}),r.jsx(We,{isOpen:u.isOpen,onClose:u.close,thread:e,mailboxId:e?.mailboxId,accountId:e?.accountId,onAfterOptimisticRemove:l})]}):r.jsx("div",{className:"h-full",children:r.jsx(tt,{})})}const Eo=Object.assign(fo,{List:tt,Reading:ho,Intelligence:go,Phone:po});export{Eo as B};
1
+ import{j as r,L as Tt,W as wt,ev as _e,ew as ue,dX as me,r as n,c as Qe,C as J,bm as Rt,cN as Mt,K as jt,dN as kt,ex as Et,a0 as ze,ee as At,ey as Ft,al as Ot,cZ as Nt,c_ as Bt}from"./index-Pa-PXhYt.js";import{g as He,e as Lt,f as Ke,u as qt,p as Pt,R as Dt}from"./useSearchTokenContext-sk7n5_Wa.js";import{a8 as _t,A as Qt,E as zt,ak as Ht,al as Kt,am as Gt,an as Wt,ao as Ut,ap as Fe,aq as Yt,ar as $t,as as Vt,a7 as Zt,at as Jt,au as Xt,av as es,af as ts,M as ss,aw as os,ag as rs,ax as ns,ay as as,e as is,p as cs,ai as ls,m as ds,S as us,J as ms,O as Oe,N as fs,K as hs,d as gs,Y as ps,Z as xs,$ as Ge,a0 as We,a1 as Is,a2 as ys,a3 as vs}from"./MailListHeader-CDRRsdUl.js";import{u as bs,a as Ss,R as Cs,b as Ts,c as ws}from"./useRefreshControl-YILSa993.js";import{u as fe}from"./useQueries-DLtTi8je.js";import{t as Rs,u as Ms,r as js,L as ks}from"./useSemanticSearch-681BpGBX.js";import{a as Es}from"./useLabels-DXD0xTLQ.js";import{u as As,b as Fs}from"./useLayoutTier-CqqMDWMQ.js";import{d as Os,w as Ns}from"./wizard-selection-DxUM65kM.js";import{u as Ue}from"./sections-BbwJeaVs.js";import{R as Bs}from"./refresh-cw-WQWjOiDL.js";import{a as Ls}from"./useMessageBodyContent-CqnK7vFx.js";import{g as qs,h as Ps}from"./search-token-index-DH9ZHWHu.js";function Ds({sync:e}){return e?r.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-2 py-12 text-center px-4",role:"status","aria-live":"polite",children:[r.jsx(Tt,{className:"size-8 animate-spin text-fg-subtle","aria-hidden":"true"}),r.jsx("p",{className:"text-sm font-medium text-fg",children:"Still syncing your mail"}),r.jsx("p",{className:"text-xs text-fg-subtle",children:_s(e)})]}):r.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-2 py-12 text-center px-4",children:[r.jsx(wt,{className:"size-8 text-fg-subtle","aria-hidden":"true"}),r.jsx("p",{className:"text-sm font-medium text-fg",children:"You're caught up"}),r.jsx("p",{className:"text-xs text-fg-subtle",children:"Nothing needs attention."})]})}function _s({synced:e,total:t}){return t>0?`${e.toLocaleString()} of ${t.toLocaleString()} messages downloaded. This list fills in as they arrive.`:"Downloading your messages. This list fills in as they arrive."}const Ye=[{id:"unread",name:"is",value:"unread"},{id:"attachment",name:"has",value:"attachment"}],$e="category",Qs={unclassified:"uncategorized"},H=e=>Lt(e).map(t=>t.raw),z=e=>e.join(" "),he=e=>{const t=Ke(e);if(t)return Ye.find(o=>o.name===t.name&&o.value===t.value.toLowerCase())?.id},ge=e=>{const t=Ke(e);if(!t||t.name!==$e)return;const o=t.value.toLowerCase(),a=Qs[o];if(a)return a;if(!(!_e(o)||o==="all"))return o},Ve=e=>Ye.find(t=>t.id===e),Ze=e=>Ve(e)!==void 0,zs=e=>{const t=new Set;for(const o of H(e)){const a=he(o);a&&t.add(a)}return t},Hs=e=>{let t="all";for(const o of H(e)){const a=ge(o);a&&(t=a)}return t},Ks=(e,t)=>{const o=Ve(t);if(!o)return;const a=H(e),c=a.filter(d=>he(d)!==t);return c.length<a.length?z(c):z([...a,He(o.name,o.value)])},Gs=(e,t)=>{const o=H(e).filter(a=>!ge(a));return z(t==="all"?o:[...o,He($e,t)])},Ws=e=>z(H(e).filter(t=>!he(t)&&!ge(t))),Je=e=>e.trim().length>0,Ne=e=>{if(!Je(e.query))return e.ownFilters;const t=new Set(zs(e.query));for(const o of e.ownFilters)Ze(o)||t.add(o);return t},Be=e=>Je(e.query)?Hs(e.query):e.ownCategory,Le=6e4,Us=3e4,Ys={kind:"unknown"},qe=e=>(t,o)=>_t(o?.queryKey,e)?t:void 0,$s=(e,t,o)=>({...e,category:[t],limit:o,order:"desc"}),Vs=(e,t)=>({...e,category:[t],order:"desc",count:!0,results:!1}),Pe=(e,t)=>({category:[t],...e.unread!==void 0?{unread:e.unread}:{},...e.starred!==void 0?{starred:e.starred}:{},...e.attachments!==void 0?{attachments:e.attachments}:{}});function Zs({categories:e,criteria:t,limit:o,counted:a}){const c=fe({queries:e.map(m=>{const f=$s(t,m,o),g=Pe(t,m);return{queryKey:me({query:f}),queryFn:async()=>{const{data:T}=await ue({query:f,throwOnError:!0});return T},placeholderData:qe(g),staleTime:Le}})}),d=fe({queries:e.map(m=>{const f=Vs(t,m),g=Pe(t,m);return{queryKey:me({query:f}),queryFn:async()=>{const{data:T}=await ue({query:f,throwOnError:!0});return T},enabled:a,placeholderData:qe(g),staleTime:Le}})}),l=n.useMemo(()=>e.map((m,f)=>{const g=c[f],T=d[f],I=g?.data?.items??[];return{category:m,rows:I,atCap:I.length>=o,total:a?Rs(T?.data?.count):Ys,loading:g?.isPending??!0,failed:g?.isError??!1,retry:()=>{g?.refetch(),a&&T?.refetch()}}}),[e,c,d,a,o]),u=n.useCallback(()=>{for(const m of c)m.refetch();for(const m of d)m.refetch()},[c,d]);return{sections:l,isLoading:c.length>0&&c.every(m=>m.isPending),isError:c.length>0&&c.every(m=>m.isError),refetch:u}}function Js(e,t,o){const a={...e,limit:t,order:"desc"},{data:c,isLoading:d,isError:l,refetch:u}=Qe({queryKey:me({query:a}),queryFn:async()=>{const{data:f}=await ue({query:a,throwOnError:!0});return f},enabled:o,staleTime:Us});return{rows:n.useMemo(()=>o?c?.items??[]:[],[c,o]),isLoading:o&&d,isError:o&&l,refetch:n.useCallback(()=>{u()},[u])}}const Xs=(e,t)=>e.createdAt!==t.createdAt?e.createdAt-t.createdAt:e.accountId.localeCompare(t.accountId),eo=e=>[...e].sort(Xs),to=["category","unread","starred","attachments"],Xe=["contacts","today"],so=e=>new Set(Xe.filter(t=>e.has(t))),oo=(e,t,o)=>{const a=Qt({category:e,attributes:t}),{params:c,residual:d}=zt(o,a,to),l={...c,...a},u={};return l.unread!==void 0&&(u.unread=l.unread),l.starred!==void 0&&(u.starred=l.starred),l.attachments!==void 0&&(u.attachments=l.attachments),{criteria:u,residual:d}},ro=({residual:e,attributes:t,accountScoped:o})=>e.length===0&&!o&&!Xe.some(a=>t.has(a)),no=50,ao=200,io=[],De=()=>r.jsx("div",{className:"animate-pulse",children:Array.from({length:3}).map((e,t)=>r.jsxs("div",{className:"flex items-start gap-3 py-2 pl-5 pr-4 border-b border-line",children:[r.jsx("div",{className:"size-7 rounded-full bg-surface-sunken shrink-0 mt-0.5"}),r.jsxs("div",{className:"flex-1 space-y-1.5",children:[r.jsxs("div",{className:"flex justify-between gap-2",children:[r.jsx("div",{className:"h-3.5 bg-surface-sunken rounded w-28"}),r.jsx("div",{className:"h-3 bg-surface-sunken rounded w-12"})]}),r.jsx("div",{className:"h-3.5 bg-surface-sunken rounded w-48"}),r.jsx("div",{className:"h-3 bg-surface-sunken rounded w-full"})]})]},t))}),co=({accountEmail:e})=>{const t=Ue();return r.jsxs("div",{className:"flex items-center gap-2 px-row-inset py-2 border-b border-line bg-danger-soft/40 text-xs text-danger",children:[r.jsx(ze,{className:"size-3.5 shrink-0"}),r.jsxs("span",{className:"flex-1 truncate",children:[e," can't connect"]}),r.jsx("button",{type:"button",onClick:()=>t("accounts"),className:"shrink-0 underline text-danger hover:opacity-80",children:"Reconnect"})]})},lo=(e,t)=>{if(t.size===0)return{};const o=e.filter(d=>t.has(d.id)),a=js(o.map(d=>d.accountId));if(a.restriction)return a;const c=new Set;for(const d of o)d.mailboxId&&c.add(d.mailboxId);return c.size>1?{accountId:a.accountId,restriction:"spansFolders",moveDisabledHint:`Move only works within one folder — this selection spans ${c.size} folders`}:{accountId:a.accountId,mailboxId:c.size===1?[...c][0]:void 0}};function uo({header:e,rows:t,wizard:o,children:a}){const{selectedIds:c,selectedCount:d,exitSelection:l,orderedIds:u,allSelected:m,toggleAllLoaded:f}=as(),g=n.useMemo(()=>lo(t,c),[t,c]),{junkMailboxId:T}=is(g.accountId),{labels:I}=Es(g.accountId),v=n.useMemo(()=>Array.from(c),[c]),B=n.useMemo(()=>Ns(t,c),[t,c]),p=cs(T,g.mailboxId),b=n.useMemo(()=>u.length>0?{checked:m,indeterminate:d>0&&!m,onChange:f}:void 0,[u.length,m,d,f]),F=g.moveDisabledHint?{tone:"warning",text:g.moveDisabledHint}:void 0,S=R=>r.jsx(us,{title:R.title,navSlot:R.navSlot,titleMeta:R.titleMeta,searchSlot:R.searchSlot,searchField:R.searchField,idleSlot:R.makeFilterSlot,count:d,onCancel:l,onDelete:()=>o.start("delete"),onMove:()=>o.start("move"),onOrganize:()=>o.start("organize"),onJunk:p?()=>o.start("junk"):void 0,onMarkRead:()=>o.start("markRead"),overflowSlot:g.accountId&&g.mailboxId&&d>0&&I.length>0?r.jsx(ks,{accountId:g.accountId,mailboxId:g.mailboxId,messageIds:v}):void 0,selectAll:b,notice:F});return r.jsx(ls,{...e,selectionBar:S,paneOverlay:r.jsx(ds,{verb:o.verb,accountId:g.accountId,mailboxId:g.mailboxId,selection:B,selectionRestriction:g.restriction,onFinished:l}),children:a})}function mo({accounts:e,selectedMessageId:t,onOpenThread:o,commandsRef:a,onTriageContextChange:c,onDeleteMessages:d}){const{searchQuery:l,searchInput:u,resultFolderIndex:m,onSearchChange:f}=J(),g=qt(),T=Rt(),I=As(),v=Mt(),B=Fs(),p=n.useMemo(()=>eo(e.filter(s=>!s.muted?.value)),[e]),[b,F]=n.useState("all"),[S,R]=n.useState("all"),[O,L]=n.useState(new Set),[ee,M]=n.useState(!1),q=n.useCallback(s=>{L(i=>{const h=new Set(i);return h.has(s)?h.delete(s):h.add(s),h})},[]),K=n.useCallback(()=>L(new Set),[]),E=u.trim().length>0,{freeText:j,tokens:P}=Pt(l.trim().toLowerCase(),g),y=j.length>0,D=n.useMemo(()=>Ne({query:u,ownFilters:O}),[u,O]),_=n.useMemo(()=>Be({query:u,ownCategory:S}),[u,S]),A=n.useMemo(()=>Ne({query:l,ownFilters:O}),[l,O]),C=n.useMemo(()=>Be({query:l,ownCategory:S}),[l,S]),x=n.useCallback(s=>{if(!E||!Ze(s)){q(s);return}const i=Ks(u,s);i!==void 0&&f(i)},[E,u,f,q]),k=n.useCallback(s=>{if(!E){R(s);return}f(Gs(u,s))},[E,u,f]),te=n.useMemo(()=>C==="all"&&!y?s=>{_e(s)&&k(s)}:void 0,[C,y,k]),se=n.useCallback(()=>{R("all"),F("all"),K(),E&&f(Ws(u))},[E,u,f,K]),G=fe({queries:p.map(s=>({...jt({path:{accountId:s.accountId}}),staleTime:1/0,meta:{softError:!0}}))}),W=n.useMemo(()=>{const s=new Map;for(let i=0;i<p.length;i++){const h=p[i].accountId,bt=(G[i]?.data?.items??[]).reduce((St,Ct)=>St+(Ct.unseenCount??0),0);s.set(h,bt)}return s},[p,G]),st=n.useMemo(()=>p.filter((s,i)=>{const h=G[i];return h?.isError?!kt(h.error):!1}),[p,G]),{criteria:oe,residual:re}=n.useMemo(()=>oo(C,A,P),[C,A,P]),ot=n.useMemo(()=>C==="all"?[...Ht]:[C],[C]),rt=n.useMemo(()=>({...oe,query:j,...C==="all"?{}:{category:[C]}}),[oe,j,C]),nt=ro({residual:re,attributes:A,accountScoped:b!=="all"}),{sections:U,isLoading:at,isError:it,refetch:pe}=Zs({categories:y?io:ot,criteria:oe,limit:C==="all"?ns:no,counted:nt}),{rows:xe,isLoading:ct,isError:lt,refetch:Ie}=Js(rt,ao,y),ne=y?ct:at,ye=y?lt:it,ve=n.useCallback(()=>{if(y){Ie();return}pe()},[y,Ie,pe]),be=n.useMemo(()=>so(A),[A]),Y=n.useCallback(s=>Os(Kt(s)).map(Gt).filter(i=>(b==="all"||i.accountId===b)&&Et(i,be)&&Wt(i,re)),[b,be,re]),$=n.useMemo(()=>U.map(s=>({category:s.category,total:Ut(s.total,s.rows),atCap:s.atCap,loading:s.loading,failed:s.failed,rows:Y(s.rows)})),[U,Y]),V=n.useMemo(()=>Y(xe),[xe,Y]),dt=n.useCallback(s=>{U.find(i=>i.category===s)?.retry()},[U]),w=n.useMemo(()=>y?V:$.flatMap(s=>s.rows),[y,V,$]),{spamIds:ae,briefSpamOffer:ie}=n.useMemo(()=>{const s={spamIds:void 0,briefSpamOffer:void 0};if(!j)return s;const i=w.map(N=>Fe(N,m)),{spam:h}=Yt(i);return h.length===0?s:{spamIds:new Set(h.map(N=>N.id)),briefSpamOffer:$t(i)}},[w,j,m]),Se=n.useMemo(()=>{const s=i=>ae===void 0?i:i.filter(h=>!ae.has(h.id));return y?[{id:"matches",threads:s(V)}]:Vt($.map(i=>({...i,rows:s(i.rows)})))},[y,V,$,ae]),Ce=n.useCallback((s,i)=>{const h=w.find(N=>N.id===s)?.threadId;h&&o?.({threadId:h,messageId:s},i)},[w,o]),ut=n.useCallback(s=>{const i=s.threadId??w.find(h=>h.id===s.id)?.threadId;i&&o?.({threadId:i,messageId:s.id})},[w,o]),ce=n.useMemo(()=>p.length<=1?[]:[{id:"all",label:"All",active:b==="all"},...p.map(s=>({id:s.accountId,label:s.email.split("@")[0]??s.email,count:W.get(s.accountId),active:b===s.accountId}))],[p,W,b]),Q=n.useMemo(()=>e.filter(s=>s.muted?.value).length,[e]),mt=n.useMemo(()=>Array.from(W.values()).reduce((s,i)=>s+i,0),[W]),le=n.useMemo(()=>p.map(s=>s.accountId),[p]),{hasNewMail:Te}=bs(),{state:we,errorMessage:Re,refresh:Me}=Ss(le,{onSettled:()=>ve()}),ft=n.useMemo(()=>r.jsx(Cs,{state:we,onRefresh:Me,label:"Refresh daily brief",errorMessage:Re,hasUpdate:Te(le)}),[we,Me,Re,Te,le]),de=n.useMemo(()=>w.map(s=>Fe(s,m)),[w,m]),{hits:je,isLoading:ht}=Ms(),gt=n.useMemo(()=>{const s=new Map(w.map(h=>[h.id,h.threadId])),i=de.map(h=>s.get(h.id)).filter(h=>h!=null);return Zt(je,i,m)},[je,de,w,m]),pt=n.useMemo(()=>{const s=Jt(ce.map(i=>({id:i.id,label:i.label,count:i.count,active:i.active})));return{categories:s.categories,filters:s.filters,sources:s.sources,sourcesNote:Q>0?`+${Q} muted`:void 0,selectedCategory:_,activeFilters:D,expanded:ee,onExpandedChange:M,onSelectCategory:i=>k(i),onSelectSource:F,onToggleFilter:i=>x(i),onClear:se}},[ce,Q,_,D,ee,x,k,se]),ke=Se.length===0&&b==="all"&&j.length===0&&P.length===0,xt=n.useMemo(()=>p.map(s=>s.accountId),[p]),It=n.useMemo(()=>p.some(s=>Ts(s.syncPhase)),[p]),Z=ws(xt,ke||It),Ee=r.jsxs("div",{className:"h-full overflow-y-auto",children:[r.jsx(De,{}),r.jsx(De,{})]}),Ae=!ne&&!ye&&!ke,yt=Xt({tier:I,hasLiveInput:E,hasCommittedQuery:l.trim().length>0,bodyRendersCommittedResults:!0}),vt=Ae?r.jsxs("div",{className:"flex h-full min-h-0 flex-col",children:[ie&&r.jsx(es,{count:ie.count,onScopeToSpam:()=>B(ie.mailboxId,l)}),r.jsx("div",{className:"min-h-0 flex-1",children:r.jsx(ts,{sections:Se,briefCategory:_,Row:ss,selectedThreadId:t,onSelectThread:Ce,onShowAllSection:te,onRetrySection:dt,flat:y,onSelectBriefCategory:k,sources:ce,sourcesNote:Q>0?`+${Q} muted`:void 0,onSelectSource:F,activeFilters:D,onToggleFilter:x,onClearFilters:se})})]}):ne?Ee:ye?r.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-3 py-12 text-sm text-fg-muted",children:[r.jsx(ze,{className:"size-8 text-danger"}),r.jsx("p",{children:"Couldn't load your messages"}),r.jsxs("button",{type:"button",onClick:()=>ve(),className:"flex items-center gap-1 text-accent underline text-xs",children:[r.jsx(Bs,{className:"size-3.5"}),"Try again"]})]}):Z.resolved?r.jsx(Ds,{sync:Z.syncing?{synced:Z.synced,total:Z.total}:void 0}):Ee;return r.jsx(At,{hasSheet:Ae&&!yt,children:r.jsx(os,{selectedMessageId:t,rows:w,onOpen:Ce,onDeleteMessages:d,onSelectionVerb:v.start,commandsRef:a,onTriageContextChange:c,children:r.jsx(uo,{wizard:v,header:{title:"Daily brief",unreadCount:mt,footer:T?r.jsx(rs,{}):void 0,searchFilter:pt,searchResults:de,searchLoading:ne,relatedResults:gt,relatedLoading:ht,onSelectSearchResult:ut,searchResultsInBody:!0,refreshControl:ft},rows:w,children:r.jsxs("div",{className:"flex h-full flex-col",children:[st.map(s=>r.jsx(co,{accountEmail:s.email,accountId:s.accountId},s.accountId)),r.jsx("div",{className:"min-h-0 flex-1",children:vt})]})})})})}const et=n.createContext(null);function X(){const e=n.useContext(et);if(!e)throw new Error("BriefPane.* must be used inside <BriefPane>");return e}function fo({thread:e,children:t}){const o=qs(),a=Ps(),c=Ue(),{searchInput:d}=J(),l=e?.threadId,u=e?.messageId,{data:m}=Qe({...Ft(),staleTime:6e4}),f=n.useMemo(()=>m?.items??[],[m]),g=n.useMemo(()=>{if(l)return f.find(x=>x.messageId===u)??f.find(x=>x.threadId===l)},[f,l,u]),T=ms(l,u),I=g??T,v=u??I?.messageId,B=n.useMemo(()=>{if(l)return{threadId:l,mailboxId:I?.mailboxId??"",subject:I?.subject,messageId:v,authenticity:I?.authenticity}},[l,I,v]),p=n.useCallback((x,k)=>{o(x,{replace:k?.replace,query:d})},[o,d]),b=n.useCallback(x=>{v&&x.includes(v)&&a()},[v,a]),F=Oe({thread:I,isOpen:!0,onAfterOptimisticRemove:b}),S=fs(),{deleteMessages:R}=hs({mailboxId:I?.mailboxId??"",messages:f,onAfterOptimisticRemove:b}),{toggleReadFor:O}=gs({mailboxId:I?.mailboxId??"",messages:f}),L=S.focusedMessageId,M=n.useMemo(()=>f.find(x=>x.messageId===L),[f,L])??I,q=Oe({thread:M,isOpen:M?.messageId===v}),K=Ls(),E=Ot(),j=Nt(),P=n.useMemo(()=>Bt(j,l,v),[j,l,v]),y=n.useMemo(()=>{if(M)return x=>j({threadId:M.threadId,messageId:M.messageId,mode:x})},[j,M]),{nextMessageId:D,previousMessageId:_}=ps({context:S,orderedIds:S.orderedIds,selectedMessageId:v,enabled:!K&&!E,hasOpenThread:l!==void 0,onClose:a,handlers:{reply:()=>y?.("reply"),replyAll:()=>y?.("reply-all"),forward:()=>y?.("forward"),delete:()=>{S.listCommandsRef.current?.requestVerb("delete")||q.deleteThread()},toggleStar:q.toggleStar,toggleRead:()=>{S.listCommandsRef.current?.requestVerb("markRead")||M&&O([M.messageId],!M.isRead)},goFlagged:()=>c("flagged"),goSettings:()=>c("settings")}}),A=n.useCallback(x=>{if(!x)return;const k=f.find(te=>te.messageId===x);return k?{threadId:k.threadId,messageId:x}:void 0},[f]),C={selectedMessageId:v,selectedThread:I,conversation:B,onOpenThread:p,onCloseThread:a,nextThread:A(D),previousThread:A(_),actions:F,onReply:P,triage:S,onDeleteMessages:R,handleDeselectIfRemoved:b};return r.jsx(et.Provider,{value:C,children:t})}function tt(){const{selectedMessageId:e,onOpenThread:t,triage:o,onDeleteMessages:a}=X(),{accounts:c}=J();return r.jsx(mo,{accounts:c,selectedMessageId:e,onOpenThread:t,commandsRef:o.listCommandsRef,onTriageContextChange:o.onTriageContextChange,onDeleteMessages:a})}function ho(){const{conversation:e,selectedThread:t,actions:o,onReply:a,handleDeselectIfRemoved:c}=X(),d=!!e,l=ys(e?.threadId);return r.jsxs(r.Fragment,{children:[r.jsxs("section",{className:"flex h-full w-full min-w-0 flex-col bg-canvas",children:[r.jsx(vs,{hasThread:d,intelligenceOpen:l.isShowing,canToggleIntelligence:l.canToggle,onToggleIntelligence:l.toggle,onReply:a?()=>a("reply"):void 0,onReplyAll:a?()=>a("reply-all"):void 0,onForward:a?()=>a("forward"):void 0,onDelete:d?o.deleteThread:void 0,onToggleStar:d?o.toggleStar:void 0,isStarred:o.isStarred,moveContext:d&&o.accountId&&o.mailboxId?{accountId:o.accountId,currentMailboxId:o.mailboxId,onMove:o.moveThread}:void 0}),r.jsx("div",{className:"min-h-0 flex-1 overflow-hidden",children:e?r.jsx(Ge,{threadId:e.threadId,mailboxId:e.mailboxId,subject:e.subject,selectedMessageId:e.messageId,authenticity:e.authenticity,onOpenIntelligence:l.open,listOnScreen:!0}):r.jsx(Dt,{})})]}),r.jsx(We,{isOpen:l.drawerOpen,onClose:l.closeDrawer,thread:t,mailboxId:t?.mailboxId,accountId:t?.accountId,onAfterOptimisticRemove:c})]})}function go(){const{selectedThread:e,handleDeselectIfRemoved:t}=X(),{onToggleIntelligence:o}=J();return r.jsx(Is,{onClose:o,thread:e,mailboxId:e?.mailboxId,accountId:e?.accountId,onAfterOptimisticRemove:t})}function po(){const{selectedThread:e,conversation:t,onOpenThread:o,onCloseThread:a,nextThread:c,previousThread:d,handleDeselectIfRemoved:l}=X(),u=xs(t?.threadId??null);return t?r.jsxs(r.Fragment,{children:[r.jsx(Ge,{threadId:t.threadId,mailboxId:t.mailboxId,subject:t.subject,selectedMessageId:t.messageId,authenticity:t.authenticity,onBack:a,onOpenIntelligence:u.toggle,onSwipeNext:c?()=>o(c):void 0,onSwipePrevious:d?()=>o(d):void 0,mobileIntelligenceOpen:u.isOpen}),r.jsx(We,{isOpen:u.isOpen,onClose:u.close,thread:e,mailboxId:e?.mailboxId,accountId:e?.accountId,onAfterOptimisticRemove:l})]}):r.jsx("div",{className:"h-full",children:r.jsx(tt,{})})}const Eo=Object.assign(fo,{List:tt,Reading:ho,Intelligence:go,Phone:po});export{Eo as B};
@@ -1 +1 @@
1
- import{a as ee,i as _}from"./window-BeKH_DgL.js";import{j as n,f as j,t as d,_ as te,$ as ne,aA as f,r as p,az as ae,X as se,i as T,eF as re,eG as ie,eH as le,h as oe,s as ce,b4 as de,a0 as ue}from"./index-Dy5D6YkV.js";import{f as me}from"./ErrorState-yTshApcZ.js";import{R as z,c as he}from"./calendar-color-CREaSNOF.js";const xe=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],pe=["January","February","March","April","May","June","July","August","September","October","November","December"],fe=["first","second","third","fourth","last"],A="";function ye(e,t){if(!/^\d{4}-\d{2}-\d{2}$/.test(e))return[];const[a,s,i]=e.split("-").map(Number),r=new Date(Date.UTC(a,s-1,i)),l=xe[r.getUTCDay()],o=fe[Math.min(Math.floor((i-1)/7),4)],c=t===""?"":`, ${t}`,y=r.getUTCDay()>=1&&r.getUTCDay()<=5;return[`Every day${c}`,...y?[`Every weekday${c}`]:[],`Every week on ${l}${c}`,`Every month on the ${o} ${l}${c}`,`Every year on ${i} ${pe[s-1]}${c}`]}const ve="w-full rounded-md border border-line bg-surface-sunken px-3 py-2 text-sm text-fg outline-none placeholder:text-fg-subtle focus-visible:border-line-strong focus-visible:ring-2 focus-visible:ring-ring/30",u=({draft:e,onChange:t},a,s)=>t({...e,[a]:s});function x({label:e,children:t}){return n.jsxs("div",{className:"flex flex-col gap-2",children:[n.jsx("span",{className:"text-2xs font-semibold uppercase tracking-wider text-fg-subtle",children:e}),t]})}function ge({draft:e,onChange:t,layout:a="compact",touch:s}){const i=a==="pane";return n.jsx(f,{value:e.title,placeholder:"Title","aria-label":"Title",onChange:r=>u({draft:e,onChange:t},"title",r.target.value),className:d(i?"text-lg font-medium":"text-md font-medium",i?"h-11":s?"min-h-11":"")})}function H(e){return e.allDay||e.startTime===""||e.endTime===""?!1:e.endTime<e.startTime}function be({draft:e,onChange:t,touch:a}){const s=a?"min-h-11":"",i=H(e),r=p.useId();return n.jsxs("div",{className:"flex flex-col gap-1.5",children:[n.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[n.jsx(f,{type:"date",value:e.date,"aria-label":"Date",onChange:l=>u({draft:e,onChange:t},"date",l.target.value),className:d("w-40",s)}),e.allDay?n.jsx("span",{className:"text-sm text-fg-muted",children:"All day"}):n.jsxs(n.Fragment,{children:[n.jsx(f,{type:"time",value:e.startTime,"aria-label":"Start time",max:e.endTime===""?void 0:e.endTime,"aria-invalid":i,"aria-describedby":i?r:void 0,onChange:l=>u({draft:e,onChange:t},"startTime",l.target.value),className:d("w-28",s,i&&"border-danger/60")}),n.jsx("span",{className:"text-sm text-fg-subtle",children:"to"}),n.jsx(f,{type:"time",value:e.endTime,"aria-label":"End time",min:e.startTime===""?void 0:e.startTime,"aria-invalid":i,"aria-describedby":i?r:void 0,onChange:l=>u({draft:e,onChange:t},"endTime",l.target.value),className:d("w-28",s,i&&"border-danger/60")})]}),n.jsxs("label",{className:"flex items-center gap-2 text-sm text-fg-muted",children:[n.jsx("input",{type:"checkbox",checked:e.allDay,onChange:l=>u({draft:e,onChange:t},"allDay",l.target.checked),className:"size-4 accent-current"}),"All day"]})]}),i&&n.jsxs("p",{id:r,className:"text-xs text-danger",role:"alert",children:["Ends before it starts. Move the end past ",e.startTime,", or start earlier."]})]})}function Ee({draft:e,onChange:t,calendars:a,touch:s}){return n.jsx(Ae,{calendars:a,value:e.calendarId,onChange:i=>u({draft:e,onChange:t},"calendarId",i),touch:s})}function Ne({draft:e,onChange:t,touch:a,repeatEditable:s=!0,onCustom:i}){return s?n.jsx(ke,{value:e.repeat,date:e.date,startTime:e.startTime,onChange:r=>u({draft:e,onChange:t},"repeat",r),onCustom:i,className:a?"min-h-11":""}):n.jsxs("p",{className:"flex items-center gap-2 text-sm text-fg-muted",children:[n.jsx(z,{className:"size-4 shrink-0 text-fg-subtle","aria-hidden":!0}),e.repeat===A?"Does not repeat":e.repeat]})}function je({draft:e,onChange:t,touch:a}){return n.jsx(f,{value:e.location,placeholder:"Location","aria-label":"Location",onChange:s=>u({draft:e,onChange:t},"location",s.target.value),className:a?"min-h-11":""})}function Te({draft:e,onChange:t,touch:a}){return n.jsx(f,{value:e.guests,placeholder:"Guests, comma separated","aria-label":"Guests",onChange:s=>u({draft:e,onChange:t},"guests",s.target.value),className:a?"min-h-11":""})}function Ce({draft:e,onChange:t,layout:a="compact"}){return n.jsx("textarea",{value:e.notes,placeholder:"Notes","aria-label":"Notes",onChange:s=>u({draft:e,onChange:t},"notes",s.target.value),rows:a==="pane"?6:3,className:ve})}function De({draft:e,onChange:t,calendars:a,layout:s="compact",expanded:i=!1,onToggleExpanded:r,onSave:l,onCancel:o,onDelete:c,saveLabel:y="Add",header:g,repeatEditable:b=!0,guestsEditable:I=!1,calendarEditable:M=!0,onCustomRepeat:X,touch:m,className:$}){const v=s==="pane",h={draft:e,onChange:t,layout:s,touch:m},w=n.jsx(ge,{...h}),S=n.jsx(be,{...h}),F=n.jsx(Ee,{...h,calendars:a}),R=n.jsx(Ne,{...h,repeatEditable:b,onCustom:X}),Y=n.jsx(je,{...h}),L=n.jsx(Te,{...h}),P=n.jsx(Ce,{...h}),W=n.jsxs("div",{className:d("flex items-center gap-2",v?"pt-2":"pt-1"),children:[n.jsx(j,{variant:"primary",size:m||v?"md":"sm",onClick:l,disabled:H(e),className:m?"min-h-11 flex-1":"",children:y}),n.jsx(j,{variant:"ghost",size:m||v?"md":"sm",onClick:o,className:m?"min-h-11":"",children:"Cancel"}),c&&n.jsx(j,{variant:"ghost",size:m||v?"md":"sm",onClick:c,className:d("ml-auto text-danger",m&&"min-h-11"),children:"Delete"})]});if(v)return n.jsxs("div",{className:d("flex flex-col gap-5",$),children:[g,n.jsx(x,{label:"Title",children:w}),n.jsx(x,{label:"When",children:S}),M&&n.jsx(x,{label:"Calendar",children:F}),n.jsx(x,{label:"Repeat",children:R}),n.jsx(x,{label:"Location",children:Y}),I&&n.jsx(x,{label:"Guests",children:L}),n.jsx(x,{label:"Notes",children:P}),W]});const Z=r!==void 0&&!i;return n.jsxs("div",{className:d("flex flex-col gap-3",$),children:[g,w,S,M&&F,r&&n.jsxs("button",{type:"button",onClick:r,"aria-expanded":i,className:d("flex items-center gap-1 self-start rounded-sm text-xs font-medium text-fg-muted outline-none hover:text-fg focus-visible:ring-2 focus-visible:ring-ring",m&&"min-h-11"),children:[i?n.jsx(te,{className:"size-3.5"}):n.jsx(ne,{className:"size-3.5"}),i?"Fewer details":"More details"]}),!Z&&n.jsxs("div",{className:"flex flex-col gap-2 border-t border-line pt-3",children:[Y,I&&L,R,P]}),W]})}const U="__custom__";function ke({value:e,date:t,startTime:a,onChange:s,onCustom:i,className:r}){const l=ye(t,a),o=e===A||l.includes(e)?l:[e,...l];return n.jsxs(ae,{icon:n.jsx(z,{className:"size-4"}),"aria-label":"Repeat",value:e,onChange:c=>{if(c.target.value===U){i?.();return}s(c.target.value)},className:r,children:[n.jsx("option",{value:A,children:"Does not repeat"}),o.map(c=>n.jsx("option",{value:c,children:c},c)),i&&n.jsx("option",{value:U,children:"Custom…"})]})}function Ae({calendars:e,value:t,onChange:a,touch:s}){const i=p.useId();return n.jsxs("fieldset",{className:"flex flex-wrap gap-1.5",children:[n.jsx("legend",{className:"sr-only",children:"Calendar"}),e.map(r=>{const l=he(r.color),o=r.id===t;return n.jsxs("label",{className:d("inline-flex cursor-pointer items-center gap-1.5 rounded-full border px-2.5 text-xs transition-colors","has-[:focus-visible]:ring-2 has-[:focus-visible]:ring-ring",s?"min-h-11":"h-7",o?d(l.soft,l.text,l.border):"border-line text-fg-muted hover:bg-surface-sunken"),children:[n.jsx("input",{type:"radio",name:i,value:r.id,checked:o,onChange:()=>a(r.id),className:"sr-only"}),n.jsx("span",{className:d("size-2 rounded-full",l.solid)}),r.name]},r.id)})]})}function Oe({title:e,subtitle:t,onClose:a,children:s,className:i}){return n.jsxs("section",{className:d("flex h-full w-full flex-col bg-surface",i),children:[n.jsxs("header",{className:"flex h-pane-header shrink-0 items-center gap-2 border-b border-line px-row-inset",children:[n.jsx("h2",{className:"shrink-0 text-xs font-medium text-fg",children:e}),t!==void 0&&t!==""&&n.jsx("span",{className:"min-w-0 flex-1 truncate text-xs text-fg-muted",children:t}),n.jsx("button",{type:"button","aria-label":"Close editor",onClick:a,className:"ml-auto flex size-7 shrink-0 items-center justify-center rounded-md text-fg-subtle outline-none hover:bg-surface-sunken hover:text-fg focus-visible:ring-2 focus-visible:ring-ring",children:n.jsx(se,{className:"size-4"})})]}),n.jsx("div",{className:"min-h-0 flex-1 overflow-y-auto px-row-inset py-5",children:n.jsx("div",{className:"mx-auto w-full max-w-2xl",children:s})})]})}const E=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],N=["SU","MO","TU","WE","TH","FR","SA"],Q=["January","February","March","April","May","June","July","August","September","October","November","December"],G=["first","second","third","fourth","last"],K=[1,2,3,4,-1],J="MO,TU,WE,TH,FR",Ie=e=>e.replace(/,\s*\d{2}:\d{2}$/,"").trim();function O(e){const t=Ie(e);if(t==="")return"";if(t==="Every day")return"FREQ=DAILY";if(t==="Every weekday")return`FREQ=WEEKLY;BYDAY=${J}`;const a=t.match(/^Every week on (\w+)$/);if(a){const r=E.indexOf(a[1]);return r===-1?void 0:`FREQ=WEEKLY;BYDAY=${N[r]}`}const s=t.match(/^Every month on the (\w+) (\w+)$/);if(s){const r=G.indexOf(s[1]),l=E.indexOf(s[2]);return r===-1||l===-1?void 0:`FREQ=MONTHLY;BYDAY=${K[r]}${N[l]}`}const i=t.match(/^Every year on (\d{1,2}) (\w+)$/);if(i){const r=Q.indexOf(i[2]);return r===-1?void 0:`FREQ=YEARLY;BYMONTH=${r+1};BYMONTHDAY=${Number(i[1])}`}}const Me=e=>e===""?"":`, ${e}`;function Pe(e,t){const a=new Map(e.split(";").map(l=>l.split("=")).filter(l=>l.length===2).map(([l,o])=>[l.toUpperCase(),o.toUpperCase()])),s=Me(t),i=a.get("FREQ"),r=a.get("BYDAY");if(!(a.has("INTERVAL")&&a.get("INTERVAL")!=="1")&&!(a.has("UNTIL")||a.has("COUNT"))){if(i==="DAILY")return`Every day${s}`;if(i==="WEEKLY"){if(r===void 0)return;if(r===J)return`Every weekday${s}`;const l=N.indexOf(r);return l===-1?void 0:`Every week on ${E[l]}${s}`}if(i==="MONTHLY"){const l=r?.match(/^(-?\d)([A-Z]{2})$/);if(!l)return;const o=K.indexOf(Number(l[1])),c=N.indexOf(l[2]);return o===-1||c===-1?void 0:`Every month on the ${G[o]} ${E[c]}${s}`}if(i==="YEARLY"){const l=Number(a.get("BYMONTH")),o=Number(a.get("BYMONTHDAY"));return!l||!o||l>12?void 0:`Every year on ${o} ${Q[l-1]}${s}`}}}function We(e,t){return{title:"",date:e,startTime:"09:00",endTime:"10:00",allDay:!1,calendarId:t,location:"",guests:"",notes:"",repeat:""}}function _e(e,t){return{title:e.title,date:e.start.slice(0,10),startTime:e.allDay?"":e.start.slice(11,16),endTime:e.allDay?"":e.end.slice(11,16),allDay:e.allDay,calendarId:e.calendarId,location:t.location,guests:"",notes:t.notes,repeat:t.repeat}}function q(e,t){return e.allDay?{start:e.date,end:ee(e.date,1)}:{start:_(e.date,e.startTime,t),end:_(e.date,e.endTime,t)}}function V(e,t){return e.title.trim()===""?"Give the event a title before saving it.":e.date===""?"Pick the day the event is on.":e.calendarId===""?"Pick the calendar to save the event in.":!e.allDay&&(e.startTime===""||e.endTime==="")?"Set a start and an end time, or mark the event all day.":!e.allDay&&e.endTime<=e.startTime?"The end time is not after the start time. Move one of them.":t&&O(e.repeat)===void 0?"This calendar can't store that repeat rule. Pick one of the offered rules, or turn the repeat off.":""}function Ue(e,t){const a=V(e,!0);if(a!=="")return{ok:!1,problem:a};const{start:s,end:i}=q(e,t);return{ok:!0,input:{calendarId:e.calendarId,summary:e.title.trim(),description:e.notes,location:e.location,start:s,end:i,allDay:e.allDay,...t===""?{}:{timeZone:t},recurrenceRule:O(e.repeat)??""}}}function Be(e,t,a){const s=t.repeat!==e.repeat,i=V(t,s);if(i!=="")return{ok:!1,problem:i};const r={};if(t.title.trim()!==e.title.trim()&&(r.summary=t.title.trim()),t.location!==e.location&&(r.location=t.location),t.notes!==e.notes&&(r.description=t.notes),t.date!==e.date||t.startTime!==e.startTime||t.endTime!==e.endTime||t.allDay!==e.allDay){const{start:o,end:c}=q(t,a);r.start=o,r.end=c,r.allDay=t.allDay,a!==""&&(r.timeZone=a)}return s&&(r.recurrenceRule=O(t.repeat)??""),{ok:!0,patch:r}}const C=ce(400,404,412),$e=new Set(["calendarEventOperationsListCalendarEvents","calendarEventDetailOperationsGetCalendarEvent","calendarFreeBusyOperationsListCalendarFreeBusy"]),D={kind:"written"},k=e=>de(e)===412?{kind:"conflict"}:{kind:"refused",message:me(e)},we={this:"This",following:"Following",all:"All"};function Se(){const e=oe();return p.useCallback(()=>{e.invalidateQueries({predicate:t=>{const a=t.queryKey[0];if(typeof a!="object"||a===null)return!1;const s=a._id;return typeof s=="string"&&$e.has(s)}})},[e])}const B=({scope:e,recurrenceId:t})=>e===void 0||e==="all"?{}:{scope:we[e],recurrenceId:t};function ze(){const e=Se(),t=T({...re(),meta:C,onSuccess:e}),a=T({...ie(),meta:C,onSuccess:e}),s=T({...le(),meta:C,onSuccess:e}),i=p.useCallback(o=>t.mutateAsync({body:o}).then(()=>D).catch(k),[t]),r=p.useCallback((o,c)=>a.mutateAsync({path:{calendarObjectId:o.calendarObjectId},query:{calendarId:o.calendarId,...B(o)},headers:{"If-Match":o.etag},body:c}).then(()=>D).catch(k),[a]),l=p.useCallback(o=>s.mutateAsync({path:{calendarObjectId:o.calendarObjectId},query:{calendarId:o.calendarId,...B(o)},headers:{"If-Match":o.etag}}).then(()=>D).catch(k),[s]);return p.useMemo(()=>({createEvent:i,updateEvent:r,deleteEvent:l,isWriting:t.isPending||a.isPending||s.isPending}),[i,r,l,t.isPending,a.isPending,s.isPending])}function He({title:e,subtitle:t,calendars:a,draft:s,onChange:i,problem:r,saveLabel:l,isSaving:o,repeatEditable:c=!0,calendarEditable:y=!0,onSave:g,onCancel:b}){return n.jsx(Oe,{title:e,subtitle:t,onClose:b,children:n.jsx(De,{draft:s,onChange:i,calendars:a,layout:"pane",repeatEditable:c,calendarEditable:y,saveLabel:o?"Saving…":l,onSave:g,onCancel:b,header:r===""?void 0:n.jsxs("div",{role:"alert",className:"flex items-start gap-2 rounded-md border border-danger/40 bg-danger-soft px-3 py-2 text-sm",children:[n.jsx(ue,{className:"mt-0.5 size-4 shrink-0 text-danger","aria-hidden":"true"}),n.jsx("p",{className:"min-w-0 flex-1 break-words text-fg",children:r})]})})})}export{He as C,Ue as c,_e as d,We as e,Be as p,Pe as t,ze as u};
1
+ import{a as ee,i as _}from"./window-vYbNZDbX.js";import{j as n,f as j,t as d,_ as te,$ as ne,aA as f,r as p,az as ae,X as se,i as T,eF as re,eG as ie,eH as le,h as oe,s as ce,b4 as de,a0 as ue}from"./index-Pa-PXhYt.js";import{f as me}from"./ErrorState-DsBtijJZ.js";import{R as z,c as he}from"./calendar-color-C9vd3NQU.js";const xe=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],pe=["January","February","March","April","May","June","July","August","September","October","November","December"],fe=["first","second","third","fourth","last"],A="";function ye(e,t){if(!/^\d{4}-\d{2}-\d{2}$/.test(e))return[];const[a,s,i]=e.split("-").map(Number),r=new Date(Date.UTC(a,s-1,i)),l=xe[r.getUTCDay()],o=fe[Math.min(Math.floor((i-1)/7),4)],c=t===""?"":`, ${t}`,y=r.getUTCDay()>=1&&r.getUTCDay()<=5;return[`Every day${c}`,...y?[`Every weekday${c}`]:[],`Every week on ${l}${c}`,`Every month on the ${o} ${l}${c}`,`Every year on ${i} ${pe[s-1]}${c}`]}const ve="w-full rounded-md border border-line bg-surface-sunken px-3 py-2 text-sm text-fg outline-none placeholder:text-fg-subtle focus-visible:border-line-strong focus-visible:ring-2 focus-visible:ring-ring/30",u=({draft:e,onChange:t},a,s)=>t({...e,[a]:s});function x({label:e,children:t}){return n.jsxs("div",{className:"flex flex-col gap-2",children:[n.jsx("span",{className:"text-2xs font-semibold uppercase tracking-wider text-fg-subtle",children:e}),t]})}function ge({draft:e,onChange:t,layout:a="compact",touch:s}){const i=a==="pane";return n.jsx(f,{value:e.title,placeholder:"Title","aria-label":"Title",onChange:r=>u({draft:e,onChange:t},"title",r.target.value),className:d(i?"text-lg font-medium":"text-md font-medium",i?"h-11":s?"min-h-11":"")})}function H(e){return e.allDay||e.startTime===""||e.endTime===""?!1:e.endTime<e.startTime}function be({draft:e,onChange:t,touch:a}){const s=a?"min-h-11":"",i=H(e),r=p.useId();return n.jsxs("div",{className:"flex flex-col gap-1.5",children:[n.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[n.jsx(f,{type:"date",value:e.date,"aria-label":"Date",onChange:l=>u({draft:e,onChange:t},"date",l.target.value),className:d("w-40",s)}),e.allDay?n.jsx("span",{className:"text-sm text-fg-muted",children:"All day"}):n.jsxs(n.Fragment,{children:[n.jsx(f,{type:"time",value:e.startTime,"aria-label":"Start time",max:e.endTime===""?void 0:e.endTime,"aria-invalid":i,"aria-describedby":i?r:void 0,onChange:l=>u({draft:e,onChange:t},"startTime",l.target.value),className:d("w-28",s,i&&"border-danger/60")}),n.jsx("span",{className:"text-sm text-fg-subtle",children:"to"}),n.jsx(f,{type:"time",value:e.endTime,"aria-label":"End time",min:e.startTime===""?void 0:e.startTime,"aria-invalid":i,"aria-describedby":i?r:void 0,onChange:l=>u({draft:e,onChange:t},"endTime",l.target.value),className:d("w-28",s,i&&"border-danger/60")})]}),n.jsxs("label",{className:"flex items-center gap-2 text-sm text-fg-muted",children:[n.jsx("input",{type:"checkbox",checked:e.allDay,onChange:l=>u({draft:e,onChange:t},"allDay",l.target.checked),className:"size-4 accent-current"}),"All day"]})]}),i&&n.jsxs("p",{id:r,className:"text-xs text-danger",role:"alert",children:["Ends before it starts. Move the end past ",e.startTime,", or start earlier."]})]})}function Ee({draft:e,onChange:t,calendars:a,touch:s}){return n.jsx(Ae,{calendars:a,value:e.calendarId,onChange:i=>u({draft:e,onChange:t},"calendarId",i),touch:s})}function Ne({draft:e,onChange:t,touch:a,repeatEditable:s=!0,onCustom:i}){return s?n.jsx(ke,{value:e.repeat,date:e.date,startTime:e.startTime,onChange:r=>u({draft:e,onChange:t},"repeat",r),onCustom:i,className:a?"min-h-11":""}):n.jsxs("p",{className:"flex items-center gap-2 text-sm text-fg-muted",children:[n.jsx(z,{className:"size-4 shrink-0 text-fg-subtle","aria-hidden":!0}),e.repeat===A?"Does not repeat":e.repeat]})}function je({draft:e,onChange:t,touch:a}){return n.jsx(f,{value:e.location,placeholder:"Location","aria-label":"Location",onChange:s=>u({draft:e,onChange:t},"location",s.target.value),className:a?"min-h-11":""})}function Te({draft:e,onChange:t,touch:a}){return n.jsx(f,{value:e.guests,placeholder:"Guests, comma separated","aria-label":"Guests",onChange:s=>u({draft:e,onChange:t},"guests",s.target.value),className:a?"min-h-11":""})}function Ce({draft:e,onChange:t,layout:a="compact"}){return n.jsx("textarea",{value:e.notes,placeholder:"Notes","aria-label":"Notes",onChange:s=>u({draft:e,onChange:t},"notes",s.target.value),rows:a==="pane"?6:3,className:ve})}function De({draft:e,onChange:t,calendars:a,layout:s="compact",expanded:i=!1,onToggleExpanded:r,onSave:l,onCancel:o,onDelete:c,saveLabel:y="Add",header:g,repeatEditable:b=!0,guestsEditable:I=!1,calendarEditable:M=!0,onCustomRepeat:X,touch:m,className:$}){const v=s==="pane",h={draft:e,onChange:t,layout:s,touch:m},w=n.jsx(ge,{...h}),S=n.jsx(be,{...h}),F=n.jsx(Ee,{...h,calendars:a}),R=n.jsx(Ne,{...h,repeatEditable:b,onCustom:X}),Y=n.jsx(je,{...h}),L=n.jsx(Te,{...h}),P=n.jsx(Ce,{...h}),W=n.jsxs("div",{className:d("flex items-center gap-2",v?"pt-2":"pt-1"),children:[n.jsx(j,{variant:"primary",size:m||v?"md":"sm",onClick:l,disabled:H(e),className:m?"min-h-11 flex-1":"",children:y}),n.jsx(j,{variant:"ghost",size:m||v?"md":"sm",onClick:o,className:m?"min-h-11":"",children:"Cancel"}),c&&n.jsx(j,{variant:"ghost",size:m||v?"md":"sm",onClick:c,className:d("ml-auto text-danger",m&&"min-h-11"),children:"Delete"})]});if(v)return n.jsxs("div",{className:d("flex flex-col gap-5",$),children:[g,n.jsx(x,{label:"Title",children:w}),n.jsx(x,{label:"When",children:S}),M&&n.jsx(x,{label:"Calendar",children:F}),n.jsx(x,{label:"Repeat",children:R}),n.jsx(x,{label:"Location",children:Y}),I&&n.jsx(x,{label:"Guests",children:L}),n.jsx(x,{label:"Notes",children:P}),W]});const Z=r!==void 0&&!i;return n.jsxs("div",{className:d("flex flex-col gap-3",$),children:[g,w,S,M&&F,r&&n.jsxs("button",{type:"button",onClick:r,"aria-expanded":i,className:d("flex items-center gap-1 self-start rounded-sm text-xs font-medium text-fg-muted outline-none hover:text-fg focus-visible:ring-2 focus-visible:ring-ring",m&&"min-h-11"),children:[i?n.jsx(te,{className:"size-3.5"}):n.jsx(ne,{className:"size-3.5"}),i?"Fewer details":"More details"]}),!Z&&n.jsxs("div",{className:"flex flex-col gap-2 border-t border-line pt-3",children:[Y,I&&L,R,P]}),W]})}const U="__custom__";function ke({value:e,date:t,startTime:a,onChange:s,onCustom:i,className:r}){const l=ye(t,a),o=e===A||l.includes(e)?l:[e,...l];return n.jsxs(ae,{icon:n.jsx(z,{className:"size-4"}),"aria-label":"Repeat",value:e,onChange:c=>{if(c.target.value===U){i?.();return}s(c.target.value)},className:r,children:[n.jsx("option",{value:A,children:"Does not repeat"}),o.map(c=>n.jsx("option",{value:c,children:c},c)),i&&n.jsx("option",{value:U,children:"Custom…"})]})}function Ae({calendars:e,value:t,onChange:a,touch:s}){const i=p.useId();return n.jsxs("fieldset",{className:"flex flex-wrap gap-1.5",children:[n.jsx("legend",{className:"sr-only",children:"Calendar"}),e.map(r=>{const l=he(r.color),o=r.id===t;return n.jsxs("label",{className:d("inline-flex cursor-pointer items-center gap-1.5 rounded-full border px-2.5 text-xs transition-colors","has-[:focus-visible]:ring-2 has-[:focus-visible]:ring-ring",s?"min-h-11":"h-7",o?d(l.soft,l.text,l.border):"border-line text-fg-muted hover:bg-surface-sunken"),children:[n.jsx("input",{type:"radio",name:i,value:r.id,checked:o,onChange:()=>a(r.id),className:"sr-only"}),n.jsx("span",{className:d("size-2 rounded-full",l.solid)}),r.name]},r.id)})]})}function Oe({title:e,subtitle:t,onClose:a,children:s,className:i}){return n.jsxs("section",{className:d("flex h-full w-full flex-col bg-surface",i),children:[n.jsxs("header",{className:"flex h-pane-header shrink-0 items-center gap-2 border-b border-line px-row-inset",children:[n.jsx("h2",{className:"shrink-0 text-xs font-medium text-fg",children:e}),t!==void 0&&t!==""&&n.jsx("span",{className:"min-w-0 flex-1 truncate text-xs text-fg-muted",children:t}),n.jsx("button",{type:"button","aria-label":"Close editor",onClick:a,className:"ml-auto flex size-7 shrink-0 items-center justify-center rounded-md text-fg-subtle outline-none hover:bg-surface-sunken hover:text-fg focus-visible:ring-2 focus-visible:ring-ring",children:n.jsx(se,{className:"size-4"})})]}),n.jsx("div",{className:"min-h-0 flex-1 overflow-y-auto px-row-inset py-5",children:n.jsx("div",{className:"mx-auto w-full max-w-2xl",children:s})})]})}const E=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],N=["SU","MO","TU","WE","TH","FR","SA"],Q=["January","February","March","April","May","June","July","August","September","October","November","December"],G=["first","second","third","fourth","last"],K=[1,2,3,4,-1],J="MO,TU,WE,TH,FR",Ie=e=>e.replace(/,\s*\d{2}:\d{2}$/,"").trim();function O(e){const t=Ie(e);if(t==="")return"";if(t==="Every day")return"FREQ=DAILY";if(t==="Every weekday")return`FREQ=WEEKLY;BYDAY=${J}`;const a=t.match(/^Every week on (\w+)$/);if(a){const r=E.indexOf(a[1]);return r===-1?void 0:`FREQ=WEEKLY;BYDAY=${N[r]}`}const s=t.match(/^Every month on the (\w+) (\w+)$/);if(s){const r=G.indexOf(s[1]),l=E.indexOf(s[2]);return r===-1||l===-1?void 0:`FREQ=MONTHLY;BYDAY=${K[r]}${N[l]}`}const i=t.match(/^Every year on (\d{1,2}) (\w+)$/);if(i){const r=Q.indexOf(i[2]);return r===-1?void 0:`FREQ=YEARLY;BYMONTH=${r+1};BYMONTHDAY=${Number(i[1])}`}}const Me=e=>e===""?"":`, ${e}`;function Pe(e,t){const a=new Map(e.split(";").map(l=>l.split("=")).filter(l=>l.length===2).map(([l,o])=>[l.toUpperCase(),o.toUpperCase()])),s=Me(t),i=a.get("FREQ"),r=a.get("BYDAY");if(!(a.has("INTERVAL")&&a.get("INTERVAL")!=="1")&&!(a.has("UNTIL")||a.has("COUNT"))){if(i==="DAILY")return`Every day${s}`;if(i==="WEEKLY"){if(r===void 0)return;if(r===J)return`Every weekday${s}`;const l=N.indexOf(r);return l===-1?void 0:`Every week on ${E[l]}${s}`}if(i==="MONTHLY"){const l=r?.match(/^(-?\d)([A-Z]{2})$/);if(!l)return;const o=K.indexOf(Number(l[1])),c=N.indexOf(l[2]);return o===-1||c===-1?void 0:`Every month on the ${G[o]} ${E[c]}${s}`}if(i==="YEARLY"){const l=Number(a.get("BYMONTH")),o=Number(a.get("BYMONTHDAY"));return!l||!o||l>12?void 0:`Every year on ${o} ${Q[l-1]}${s}`}}}function We(e,t){return{title:"",date:e,startTime:"09:00",endTime:"10:00",allDay:!1,calendarId:t,location:"",guests:"",notes:"",repeat:""}}function _e(e,t){return{title:e.title,date:e.start.slice(0,10),startTime:e.allDay?"":e.start.slice(11,16),endTime:e.allDay?"":e.end.slice(11,16),allDay:e.allDay,calendarId:e.calendarId,location:t.location,guests:"",notes:t.notes,repeat:t.repeat}}function q(e,t){return e.allDay?{start:e.date,end:ee(e.date,1)}:{start:_(e.date,e.startTime,t),end:_(e.date,e.endTime,t)}}function V(e,t){return e.title.trim()===""?"Give the event a title before saving it.":e.date===""?"Pick the day the event is on.":e.calendarId===""?"Pick the calendar to save the event in.":!e.allDay&&(e.startTime===""||e.endTime==="")?"Set a start and an end time, or mark the event all day.":!e.allDay&&e.endTime<=e.startTime?"The end time is not after the start time. Move one of them.":t&&O(e.repeat)===void 0?"This calendar can't store that repeat rule. Pick one of the offered rules, or turn the repeat off.":""}function Ue(e,t){const a=V(e,!0);if(a!=="")return{ok:!1,problem:a};const{start:s,end:i}=q(e,t);return{ok:!0,input:{calendarId:e.calendarId,summary:e.title.trim(),description:e.notes,location:e.location,start:s,end:i,allDay:e.allDay,...t===""?{}:{timeZone:t},recurrenceRule:O(e.repeat)??""}}}function Be(e,t,a){const s=t.repeat!==e.repeat,i=V(t,s);if(i!=="")return{ok:!1,problem:i};const r={};if(t.title.trim()!==e.title.trim()&&(r.summary=t.title.trim()),t.location!==e.location&&(r.location=t.location),t.notes!==e.notes&&(r.description=t.notes),t.date!==e.date||t.startTime!==e.startTime||t.endTime!==e.endTime||t.allDay!==e.allDay){const{start:o,end:c}=q(t,a);r.start=o,r.end=c,r.allDay=t.allDay,a!==""&&(r.timeZone=a)}return s&&(r.recurrenceRule=O(t.repeat)??""),{ok:!0,patch:r}}const C=ce(400,404,412),$e=new Set(["calendarEventOperationsListCalendarEvents","calendarEventDetailOperationsGetCalendarEvent","calendarFreeBusyOperationsListCalendarFreeBusy"]),D={kind:"written"},k=e=>de(e)===412?{kind:"conflict"}:{kind:"refused",message:me(e)},we={this:"This",following:"Following",all:"All"};function Se(){const e=oe();return p.useCallback(()=>{e.invalidateQueries({predicate:t=>{const a=t.queryKey[0];if(typeof a!="object"||a===null)return!1;const s=a._id;return typeof s=="string"&&$e.has(s)}})},[e])}const B=({scope:e,recurrenceId:t})=>e===void 0||e==="all"?{}:{scope:we[e],recurrenceId:t};function ze(){const e=Se(),t=T({...re(),meta:C,onSuccess:e}),a=T({...ie(),meta:C,onSuccess:e}),s=T({...le(),meta:C,onSuccess:e}),i=p.useCallback(o=>t.mutateAsync({body:o}).then(()=>D).catch(k),[t]),r=p.useCallback((o,c)=>a.mutateAsync({path:{calendarObjectId:o.calendarObjectId},query:{calendarId:o.calendarId,...B(o)},headers:{"If-Match":o.etag},body:c}).then(()=>D).catch(k),[a]),l=p.useCallback(o=>s.mutateAsync({path:{calendarObjectId:o.calendarObjectId},query:{calendarId:o.calendarId,...B(o)},headers:{"If-Match":o.etag}}).then(()=>D).catch(k),[s]);return p.useMemo(()=>({createEvent:i,updateEvent:r,deleteEvent:l,isWriting:t.isPending||a.isPending||s.isPending}),[i,r,l,t.isPending,a.isPending,s.isPending])}function He({title:e,subtitle:t,calendars:a,draft:s,onChange:i,problem:r,saveLabel:l,isSaving:o,repeatEditable:c=!0,calendarEditable:y=!0,onSave:g,onCancel:b}){return n.jsx(Oe,{title:e,subtitle:t,onClose:b,children:n.jsx(De,{draft:s,onChange:i,calendars:a,layout:"pane",repeatEditable:c,calendarEditable:y,saveLabel:o?"Saving…":l,onSave:g,onCancel:b,header:r===""?void 0:n.jsxs("div",{role:"alert",className:"flex items-start gap-2 rounded-md border border-danger/40 bg-danger-soft px-3 py-2 text-sm",children:[n.jsx(ue,{className:"mt-0.5 size-4 shrink-0 text-danger","aria-hidden":"true"}),n.jsx("p",{className:"min-w-0 flex-1 break-words text-fg",children:r})]})})})}export{He as C,Ue as c,_e as d,We as e,Be as p,Pe as t,ze as u};
@@ -1 +1 @@
1
- import{j as t,r as e}from"./index-Dy5D6YkV.js";const o=e.createContext(void 0),C=({pick:s,children:r})=>t.jsx(o.Provider,{value:s,children:r}),d=()=>e.useContext(o);export{C,d as u};
1
+ import{j as t,r as e}from"./index-Pa-PXhYt.js";const o=e.createContext(void 0),C=({pick:s,children:r})=>t.jsx(o.Provider,{value:s,children:r}),d=()=>e.useContext(o);export{C,d as u};
@@ -1 +1 @@
1
- import{r,j as n,am as l,an as o}from"./index-Dy5D6YkV.js";const i=r.createContext(null),v=({chrome:s,children:a})=>n.jsx(i.Provider,{value:s,children:a});function C({workspace:s,reading:a,hasOpenEvent:x}){const e=r.useContext(i);if(!e)return n.jsx(l,{});const t={nav:e.nav,skeleton:n.jsx(l,{}),isLoading:e.isLoading,navOpen:e.navOpen,onOpenNav:e.onOpenNav,onCloseNav:e.onCloseNav,listBias:"list"};return e.isSinglePane?n.jsx(o,{...t,list:x?a:s}):n.jsx(o,{...t,list:s,reading:a})}export{v as C,C as a};
1
+ import{r,j as n,am as l,an as o}from"./index-Pa-PXhYt.js";const i=r.createContext(null),v=({chrome:s,children:a})=>n.jsx(i.Provider,{value:s,children:a});function C({workspace:s,reading:a,hasOpenEvent:x}){const e=r.useContext(i);if(!e)return n.jsx(l,{});const t={nav:e.nav,skeleton:n.jsx(l,{}),isLoading:e.isLoading,navOpen:e.navOpen,onOpenNav:e.onOpenNav,onCloseNav:e.onCloseNav,listBias:"list"};return e.isSinglePane?n.jsx(o,{...t,list:x?a:s}):n.jsx(o,{...t,list:s,reading:a})}export{v as C,C as a};
@@ -1 +1 @@
1
- import{j as e}from"./index-Dy5D6YkV.js";const x=({message:s,icon:t})=>e.jsxs("div",{className:"flex flex-col items-center justify-center p-8 text-center",children:[t&&e.jsx("div",{className:"mb-4 text-fg-muted",children:t}),e.jsx("p",{className:"text-fg-muted",children:s})]});export{x as E};
1
+ import{j as e}from"./index-Pa-PXhYt.js";const x=({message:s,icon:t})=>e.jsxs("div",{className:"flex flex-col items-center justify-center p-8 text-center",children:[t&&e.jsx("div",{className:"mb-4 text-fg-muted",children:t}),e.jsx("p",{className:"text-fg-muted",children:s})]});export{x as E};
@@ -1 +1 @@
1
- import{j as t,a0 as r}from"./index-Dy5D6YkV.js";const d=e=>e instanceof Error?e.message:typeof e=="string"?e:typeof e=="object"&&e!==null&&"message"in e&&typeof e.message=="string"?e.message:"An unexpected error occurred",l=({title:e="Couldn't load content",error:a,onRetry:s,variant:i="block"})=>{const n=d(a);return i==="inline"?t.jsxs("div",{role:"alert",className:"flex items-start gap-2 rounded-md border border-danger/40 bg-danger-soft px-3 py-2 text-sm",children:[t.jsx(r,{className:"size-4 shrink-0 text-danger mt-0.5","aria-hidden":"true"}),t.jsxs("div",{className:"flex-1 min-w-0",children:[t.jsx("p",{className:"font-medium text-danger",children:e}),t.jsx("p",{className:"text-fg-muted mt-0.5 break-words",children:n})]}),s&&t.jsx("button",{type:"button",onClick:s,className:"shrink-0 text-sm font-medium text-accent hover:underline",children:"Retry"})]}):t.jsxs("div",{role:"alert",className:"flex flex-col items-center justify-center gap-3 p-8 text-center",children:[t.jsx(r,{className:"size-8 text-danger","aria-hidden":"true"}),t.jsxs("div",{children:[t.jsx("p",{className:"font-medium text-danger",children:e}),t.jsx("p",{className:"text-sm text-fg-muted mt-1 break-words",children:n})]}),s&&t.jsx("button",{type:"button",onClick:s,className:"inline-flex items-center rounded-md border border-line bg-canvas px-4 py-2 text-sm font-medium hover:bg-surface-raised transition-colors",children:"Retry"})]})};export{l as E,d as f};
1
+ import{j as t,a0 as r}from"./index-Pa-PXhYt.js";const d=e=>e instanceof Error?e.message:typeof e=="string"?e:typeof e=="object"&&e!==null&&"message"in e&&typeof e.message=="string"?e.message:"An unexpected error occurred",l=({title:e="Couldn't load content",error:a,onRetry:s,variant:i="block"})=>{const n=d(a);return i==="inline"?t.jsxs("div",{role:"alert",className:"flex items-start gap-2 rounded-md border border-danger/40 bg-danger-soft px-3 py-2 text-sm",children:[t.jsx(r,{className:"size-4 shrink-0 text-danger mt-0.5","aria-hidden":"true"}),t.jsxs("div",{className:"flex-1 min-w-0",children:[t.jsx("p",{className:"font-medium text-danger",children:e}),t.jsx("p",{className:"text-fg-muted mt-0.5 break-words",children:n})]}),s&&t.jsx("button",{type:"button",onClick:s,className:"shrink-0 text-sm font-medium text-accent hover:underline",children:"Retry"})]}):t.jsxs("div",{role:"alert",className:"flex flex-col items-center justify-center gap-3 p-8 text-center",children:[t.jsx(r,{className:"size-8 text-danger","aria-hidden":"true"}),t.jsxs("div",{children:[t.jsx("p",{className:"font-medium text-danger",children:e}),t.jsx("p",{className:"text-sm text-fg-muted mt-1 break-words",children:n})]}),s&&t.jsx("button",{type:"button",onClick:s,className:"inline-flex items-center rounded-md border border-line bg-canvas px-4 py-2 text-sm font-medium hover:bg-surface-raised transition-colors",children:"Retry"})]})};export{l as E,d as f};
@@ -1 +1 @@
1
- import{ew as H,r as n,dX as G,c as J,C as V,bm as ge,cN as he,a_ as me,a$ as pe,j as r,al as fe,cZ as Ie,c_ as xe}from"./index-Dy5D6YkV.js";import{u as Te,p as U,R as ye}from"./useSearchTokenContext-BDaT1iE0.js";import{A as be,E as ve,am as X,az as Se,aA as Ce,an as we,aB as Re,ap as Fe,b as Me,M as je,aw as Oe,aC as ke,ay as Pe,m as Ae,J as Le,O as $,N as Ne,K as Ee,d as qe,Y as De,Z as Be,$ as Y,a0 as ee,a1 as Qe,a2 as _e,a3 as Ke}from"./MailListHeader-DixjeKWo.js";import{u as ze,l as He,b as Ge,a as Ve}from"./MailViewChrome-B2e9uACs.js";import{f as We}from"./ErrorState-yTshApcZ.js";import{d as z,w as Ze}from"./wizard-selection-DxUM65kM.js";import{a as Ue}from"./useMessageBodyContent-Dqn8BKJN.js";import{g as Xe,h as $e}from"./search-token-index-RpS46UX-.js";import{u as Je}from"./sections-DpPFeJvC.js";const q=e=>({...e,starred:!0,order:"desc"}),Ye=(e={})=>G({query:q(e)});function te(e={}){const{data:t,isLoading:s,isError:a,error:l,refetch:c,fetchNextPage:i,hasNextPage:g,isFetchingNextPage:h}=ze({queryKey:Ye(e),queryFn:async({pageParam:I})=>{const{data:u}=await H({query:{...q(e),continuationToken:I},throwOnError:!0});return u},initialPageParam:void 0,getNextPageParam:I=>I.continuationToken,staleTime:6e4});return{threads:n.useMemo(()=>(t?.pages??[]).flatMap(I=>I.items??[]),[t]),isLoading:s,isError:a,error:l,refetch:c,fetchNextPage:i,hasNextPage:g,isFetchingNextPage:h}}function et(e,t){const s=e.query??"",a={...q(e),limit:t},{data:l}=J({queryKey:G({query:a}),queryFn:async()=>{const{data:c}=await H({query:a,throwOnError:!0});return c},enabled:s.length>0,staleTime:3e4});return n.useMemo(()=>l?.items??[],[l])}function tt(e={}){const t={...q(e),unread:!0,count:!0,results:!1},{data:s}=J({queryKey:G({query:t}),queryFn:async()=>{const{data:a}=await H({query:t,throwOnError:!0});return a},staleTime:6e4});return s?.count}const st=["category","unread","starred","attachments"],at=(e,t)=>{const s=be(e),{params:a,residual:l}=ve(t,{...s,starred:!0},st);return{criteria:{...a,...s},residual:l}},rt=200;function ot({rows:e,verb:t}){const{selectedIds:s,exitSelection:a}=Pe(),l=n.useMemo(()=>Ze(e,s),[e,s]);return r.jsx(Ae,{verb:t,selection:l,selectionRestriction:"spansAccounts",onFinished:a})}function nt({selectedMessageId:e,onOpenThread:t,commandsRef:s,onTriageContextChange:a,onDeleteMessages:l}){const{searchQuery:c,resultFolderIndex:i,onSearchClearQuery:g}=V(),h=Te(),k=ge(),I=he(),[u,m]=n.useState("all"),[S,P]=n.useState(new Set),w=n.useCallback(d=>{P(b=>{const f=new Set(b);return f.has(d)?f.delete(d):f.add(d),f})},[]),R=n.useCallback(()=>{m("all"),P(new Set)},[]),T=n.useCallback(()=>{R(),g()},[R,g]),{freeText:x,tokens:C}=U(c.trim().toLowerCase(),h),A=U(c.trim(),h).freeText,{criteria:F,residual:p}=n.useMemo(()=>at({category:u,attributes:S},C),[u,S,C]),M=n.useMemo(()=>x?{...F,query:x}:F,[F,x]),{threads:L,isLoading:N,isError:v,error:B,refetch:j,fetchNextPage:Q,hasNextPage:_,isFetchingNextPage:O}=te(F),E=et(M,rt),o=n.useMemo(()=>{const d=z(L).map(X),b=x?Se(d.filter(f=>Ce(f,x)),z(E).map(X)):d;return z(b).filter(f=>we(f,p))},[L,E,x,p]),y=n.useCallback((d,b)=>{const f=o.find(ue=>ue.id===d)?.threadId;f&&t?.({threadId:f,messageId:d},b)},[o,t]),K=n.useCallback(d=>{const b=d.threadId??o.find(f=>f.id===d.id)?.threadId;b&&t?.({threadId:b,messageId:d.id})},[o,t]),re=n.useMemo(()=>Re(),[]),oe=n.useMemo(()=>o.map(d=>Fe(d,i)),[o,i]),ne=tt(M)??null,ie=n.useMemo(()=>C.filter(d=>d.type!=="isStarred"),[C]),de=He({chips:{category:u,attributes:S},tokens:ie,reach:p.length>0||x?"loaded-pages":"whole-folder",onClear:T}),W=N?"loading":v?"error":o.length===0?"empty":"ready",le=n.useCallback(()=>{const d=me(pe());window.open(d,"_blank","noopener,noreferrer")},[]),Z=Me(),ce=r.jsx("div",{className:"flex h-full min-h-0 flex-col",children:r.jsxs("div",{className:"flex-1 overflow-y-auto",children:[r.jsx("div",{className:"divide-y divide-line",children:o.map(d=>r.jsx(je,{thread:d,active:d.id===e,onClick:()=>y(d.id)},d.id))}),_?r.jsx("button",{type:"button",className:"w-full py-3 text-sm text-muted hover:text-fg disabled:opacity-50",onClick:()=>Q(),disabled:O,children:O?"Loading…":"Load more"}):null]})});return r.jsx(Ge,{title:"Starred",unreadCount:ne,preset:re,selectedCategory:u,activeFilters:S,onSelectCategory:m,onToggleFilter:w,onClearFilters:R,searchResults:oe,searchLoading:N,onSelectSearchResult:K,searchResultsInBody:!0,children:r.jsxs(Oe,{selectedMessageId:e,rows:o,onOpen:y,onDeleteMessages:l,onSelectionVerb:I.start,commandsRef:s,onTriageContextChange:a,children:[r.jsx(Ve,{listTitle:"Starred",sections:[{id:"flagged",threads:o}],flatList:!0,hideHeader:!0,listState:Z.searchResults?"ready":W,listFilter:de,listScopeLabel:"Starred",searchQuery:A||void 0,errorMessage:v?We(B):void 0,onRetry:()=>j(),onReportError:le,selectedThreadId:e,onSelectThread:y,isDesktop:k,selectionBar:r.jsx(ke,{title:"Starred"}),listBody:Z.searchResults??(W==="ready"?ce:void 0)}),r.jsx(ot,{rows:o,verb:I.verb})]})})}const se=n.createContext(null);function D(){const e=n.useContext(se);if(!e)throw new Error("FlaggedPane.* must be used inside <FlaggedPane>");return e}function it({thread:e,children:t}){const s=Xe(),a=$e(),l=Je(),{searchInput:c}=V(),i=e?.threadId,g=e?.messageId,{threads:h}=te(),k=n.useMemo(()=>{if(i)return h.find(o=>o.messageId===g)??h.find(o=>o.threadId===i)},[h,i,g]),I=Le(i,g),u=k??I,m=g??u?.messageId,S=n.useMemo(()=>{if(i)return{threadId:i,mailboxId:u?.mailboxId??"",subject:u?.subject,messageId:m,authenticity:u?.authenticity}},[i,u,m]),P=n.useCallback((o,y)=>{s(o,{replace:y?.replace,query:c})},[s,c]),w=n.useCallback(o=>{m&&o.includes(m)&&a()},[m,a]),R=$({thread:u,isOpen:!0,onAfterOptimisticRemove:w}),T=Ne(),{deleteMessages:x}=Ee({mailboxId:u?.mailboxId??"",messages:h,onAfterOptimisticRemove:w}),{toggleReadFor:C}=qe({mailboxId:u?.mailboxId??"",messages:h}),A=T.focusedMessageId,p=n.useMemo(()=>h.find(o=>o.messageId===A),[h,A])??u,M=$({thread:p,isOpen:p?.messageId===m}),L=Ue(),N=fe(),v=Ie(),B=n.useMemo(()=>xe(v,i,m),[v,i,m]),j=n.useMemo(()=>{if(p)return o=>v({threadId:p.threadId,messageId:p.messageId,mode:o})},[v,p]),{nextMessageId:Q,previousMessageId:_}=De({context:T,orderedIds:T.orderedIds,selectedMessageId:m,enabled:!L&&!N,hasOpenThread:i!==void 0,onClose:a,handlers:{reply:()=>j?.("reply"),replyAll:()=>j?.("reply-all"),forward:()=>j?.("forward"),delete:()=>{T.listCommandsRef.current?.requestVerb("delete")||M.deleteThread()},toggleStar:M.toggleStar,toggleRead:()=>{T.listCommandsRef.current?.requestVerb("markRead")||p&&C([p.messageId],!p.isRead)},goBrief:()=>l("brief"),goSettings:()=>l("settings")}}),O=n.useCallback(o=>{if(!o)return;const y=h.find(K=>K.messageId===o);return y?{threadId:y.threadId,messageId:o}:void 0},[h]),E={selectedMessageId:m,selectedThread:u,conversation:S,onOpenThread:P,onCloseThread:a,nextThread:O(Q),previousThread:O(_),actions:R,onReply:B,triage:T,onDeleteMessages:x,handleDeselectIfRemoved:w};return r.jsx(se.Provider,{value:E,children:t})}function ae(){const{selectedMessageId:e,onOpenThread:t,triage:s,onDeleteMessages:a}=D();return r.jsx(nt,{selectedMessageId:e,onOpenThread:t,commandsRef:s.listCommandsRef,onTriageContextChange:s.onTriageContextChange,onDeleteMessages:a})}function dt(){const{conversation:e,selectedThread:t,actions:s,onReply:a,handleDeselectIfRemoved:l}=D(),c=!!e,i=_e(e?.threadId);return r.jsxs(r.Fragment,{children:[r.jsxs("section",{className:"flex h-full w-full min-w-0 flex-col bg-canvas",children:[r.jsx(Ke,{hasThread:c,intelligenceOpen:i.isShowing,canToggleIntelligence:i.canToggle,onToggleIntelligence:i.toggle,onReply:a?()=>a("reply"):void 0,onReplyAll:a?()=>a("reply-all"):void 0,onForward:a?()=>a("forward"):void 0,onDelete:c?s.deleteThread:void 0,onToggleStar:c?s.toggleStar:void 0,isStarred:s.isStarred,moveContext:c&&s.accountId&&s.mailboxId?{accountId:s.accountId,currentMailboxId:s.mailboxId,onMove:s.moveThread}:void 0}),r.jsx("div",{className:"min-h-0 flex-1 overflow-hidden",children:e?r.jsx(Y,{threadId:e.threadId,mailboxId:e.mailboxId,subject:e.subject,selectedMessageId:e.messageId,authenticity:e.authenticity,onOpenIntelligence:i.open,listOnScreen:!0}):r.jsx(ye,{})})]}),r.jsx(ee,{isOpen:i.drawerOpen,onClose:i.closeDrawer,thread:t,mailboxId:t?.mailboxId,accountId:t?.accountId,onAfterOptimisticRemove:l})]})}function lt(){const{selectedThread:e,handleDeselectIfRemoved:t}=D(),{onToggleIntelligence:s}=V();return r.jsx(Qe,{onClose:s,thread:e,mailboxId:e?.mailboxId,accountId:e?.accountId,onAfterOptimisticRemove:t})}function ct(){const{selectedThread:e,conversation:t,onCloseThread:s,onOpenThread:a,nextThread:l,previousThread:c,handleDeselectIfRemoved:i}=D(),g=Be(t?.threadId??null);return t?r.jsxs(r.Fragment,{children:[r.jsx(Y,{threadId:t.threadId,mailboxId:t.mailboxId,subject:t.subject,selectedMessageId:t.messageId,authenticity:t.authenticity,onBack:s,onOpenIntelligence:g.toggle,onSwipeNext:l?()=>a(l):void 0,onSwipePrevious:c?()=>a(c):void 0,mobileIntelligenceOpen:g.isOpen}),r.jsx(ee,{isOpen:g.isOpen,onClose:g.close,thread:e,mailboxId:e?.mailboxId,accountId:e?.accountId,onAfterOptimisticRemove:i})]}):r.jsx("div",{className:"h-full",children:r.jsx(ae,{})})}const yt=Object.assign(it,{List:ae,Reading:dt,Intelligence:lt,Phone:ct});export{yt as F};
1
+ import{ew as H,r as n,dX as G,c as J,C as V,bm as ge,cN as he,a_ as me,a$ as pe,j as r,al as fe,cZ as Ie,c_ as xe}from"./index-Pa-PXhYt.js";import{u as Te,p as U,R as ye}from"./useSearchTokenContext-sk7n5_Wa.js";import{A as be,E as ve,am as X,az as Se,aA as Ce,an as we,aB as Re,ap as Fe,b as Me,M as je,aw as Oe,aC as ke,ay as Pe,m as Ae,J as Le,O as $,N as Ne,K as Ee,d as qe,Y as De,Z as Be,$ as Y,a0 as ee,a1 as Qe,a2 as _e,a3 as Ke}from"./MailListHeader-CDRRsdUl.js";import{u as ze,l as He,b as Ge,a as Ve}from"./MailViewChrome-wm5gxQlP.js";import{f as We}from"./ErrorState-DsBtijJZ.js";import{d as z,w as Ze}from"./wizard-selection-DxUM65kM.js";import{a as Ue}from"./useMessageBodyContent-CqnK7vFx.js";import{g as Xe,h as $e}from"./search-token-index-DH9ZHWHu.js";import{u as Je}from"./sections-BbwJeaVs.js";const q=e=>({...e,starred:!0,order:"desc"}),Ye=(e={})=>G({query:q(e)});function te(e={}){const{data:t,isLoading:s,isError:a,error:l,refetch:c,fetchNextPage:i,hasNextPage:g,isFetchingNextPage:h}=ze({queryKey:Ye(e),queryFn:async({pageParam:I})=>{const{data:u}=await H({query:{...q(e),continuationToken:I},throwOnError:!0});return u},initialPageParam:void 0,getNextPageParam:I=>I.continuationToken,staleTime:6e4});return{threads:n.useMemo(()=>(t?.pages??[]).flatMap(I=>I.items??[]),[t]),isLoading:s,isError:a,error:l,refetch:c,fetchNextPage:i,hasNextPage:g,isFetchingNextPage:h}}function et(e,t){const s=e.query??"",a={...q(e),limit:t},{data:l}=J({queryKey:G({query:a}),queryFn:async()=>{const{data:c}=await H({query:a,throwOnError:!0});return c},enabled:s.length>0,staleTime:3e4});return n.useMemo(()=>l?.items??[],[l])}function tt(e={}){const t={...q(e),unread:!0,count:!0,results:!1},{data:s}=J({queryKey:G({query:t}),queryFn:async()=>{const{data:a}=await H({query:t,throwOnError:!0});return a},staleTime:6e4});return s?.count}const st=["category","unread","starred","attachments"],at=(e,t)=>{const s=be(e),{params:a,residual:l}=ve(t,{...s,starred:!0},st);return{criteria:{...a,...s},residual:l}},rt=200;function ot({rows:e,verb:t}){const{selectedIds:s,exitSelection:a}=Pe(),l=n.useMemo(()=>Ze(e,s),[e,s]);return r.jsx(Ae,{verb:t,selection:l,selectionRestriction:"spansAccounts",onFinished:a})}function nt({selectedMessageId:e,onOpenThread:t,commandsRef:s,onTriageContextChange:a,onDeleteMessages:l}){const{searchQuery:c,resultFolderIndex:i,onSearchClearQuery:g}=V(),h=Te(),k=ge(),I=he(),[u,m]=n.useState("all"),[S,P]=n.useState(new Set),w=n.useCallback(d=>{P(b=>{const f=new Set(b);return f.has(d)?f.delete(d):f.add(d),f})},[]),R=n.useCallback(()=>{m("all"),P(new Set)},[]),T=n.useCallback(()=>{R(),g()},[R,g]),{freeText:x,tokens:C}=U(c.trim().toLowerCase(),h),A=U(c.trim(),h).freeText,{criteria:F,residual:p}=n.useMemo(()=>at({category:u,attributes:S},C),[u,S,C]),M=n.useMemo(()=>x?{...F,query:x}:F,[F,x]),{threads:L,isLoading:N,isError:v,error:B,refetch:j,fetchNextPage:Q,hasNextPage:_,isFetchingNextPage:O}=te(F),E=et(M,rt),o=n.useMemo(()=>{const d=z(L).map(X),b=x?Se(d.filter(f=>Ce(f,x)),z(E).map(X)):d;return z(b).filter(f=>we(f,p))},[L,E,x,p]),y=n.useCallback((d,b)=>{const f=o.find(ue=>ue.id===d)?.threadId;f&&t?.({threadId:f,messageId:d},b)},[o,t]),K=n.useCallback(d=>{const b=d.threadId??o.find(f=>f.id===d.id)?.threadId;b&&t?.({threadId:b,messageId:d.id})},[o,t]),re=n.useMemo(()=>Re(),[]),oe=n.useMemo(()=>o.map(d=>Fe(d,i)),[o,i]),ne=tt(M)??null,ie=n.useMemo(()=>C.filter(d=>d.type!=="isStarred"),[C]),de=He({chips:{category:u,attributes:S},tokens:ie,reach:p.length>0||x?"loaded-pages":"whole-folder",onClear:T}),W=N?"loading":v?"error":o.length===0?"empty":"ready",le=n.useCallback(()=>{const d=me(pe());window.open(d,"_blank","noopener,noreferrer")},[]),Z=Me(),ce=r.jsx("div",{className:"flex h-full min-h-0 flex-col",children:r.jsxs("div",{className:"flex-1 overflow-y-auto",children:[r.jsx("div",{className:"divide-y divide-line",children:o.map(d=>r.jsx(je,{thread:d,active:d.id===e,onClick:()=>y(d.id)},d.id))}),_?r.jsx("button",{type:"button",className:"w-full py-3 text-sm text-muted hover:text-fg disabled:opacity-50",onClick:()=>Q(),disabled:O,children:O?"Loading…":"Load more"}):null]})});return r.jsx(Ge,{title:"Starred",unreadCount:ne,preset:re,selectedCategory:u,activeFilters:S,onSelectCategory:m,onToggleFilter:w,onClearFilters:R,searchResults:oe,searchLoading:N,onSelectSearchResult:K,searchResultsInBody:!0,children:r.jsxs(Oe,{selectedMessageId:e,rows:o,onOpen:y,onDeleteMessages:l,onSelectionVerb:I.start,commandsRef:s,onTriageContextChange:a,children:[r.jsx(Ve,{listTitle:"Starred",sections:[{id:"flagged",threads:o}],flatList:!0,hideHeader:!0,listState:Z.searchResults?"ready":W,listFilter:de,listScopeLabel:"Starred",searchQuery:A||void 0,errorMessage:v?We(B):void 0,onRetry:()=>j(),onReportError:le,selectedThreadId:e,onSelectThread:y,isDesktop:k,selectionBar:r.jsx(ke,{title:"Starred"}),listBody:Z.searchResults??(W==="ready"?ce:void 0)}),r.jsx(ot,{rows:o,verb:I.verb})]})})}const se=n.createContext(null);function D(){const e=n.useContext(se);if(!e)throw new Error("FlaggedPane.* must be used inside <FlaggedPane>");return e}function it({thread:e,children:t}){const s=Xe(),a=$e(),l=Je(),{searchInput:c}=V(),i=e?.threadId,g=e?.messageId,{threads:h}=te(),k=n.useMemo(()=>{if(i)return h.find(o=>o.messageId===g)??h.find(o=>o.threadId===i)},[h,i,g]),I=Le(i,g),u=k??I,m=g??u?.messageId,S=n.useMemo(()=>{if(i)return{threadId:i,mailboxId:u?.mailboxId??"",subject:u?.subject,messageId:m,authenticity:u?.authenticity}},[i,u,m]),P=n.useCallback((o,y)=>{s(o,{replace:y?.replace,query:c})},[s,c]),w=n.useCallback(o=>{m&&o.includes(m)&&a()},[m,a]),R=$({thread:u,isOpen:!0,onAfterOptimisticRemove:w}),T=Ne(),{deleteMessages:x}=Ee({mailboxId:u?.mailboxId??"",messages:h,onAfterOptimisticRemove:w}),{toggleReadFor:C}=qe({mailboxId:u?.mailboxId??"",messages:h}),A=T.focusedMessageId,p=n.useMemo(()=>h.find(o=>o.messageId===A),[h,A])??u,M=$({thread:p,isOpen:p?.messageId===m}),L=Ue(),N=fe(),v=Ie(),B=n.useMemo(()=>xe(v,i,m),[v,i,m]),j=n.useMemo(()=>{if(p)return o=>v({threadId:p.threadId,messageId:p.messageId,mode:o})},[v,p]),{nextMessageId:Q,previousMessageId:_}=De({context:T,orderedIds:T.orderedIds,selectedMessageId:m,enabled:!L&&!N,hasOpenThread:i!==void 0,onClose:a,handlers:{reply:()=>j?.("reply"),replyAll:()=>j?.("reply-all"),forward:()=>j?.("forward"),delete:()=>{T.listCommandsRef.current?.requestVerb("delete")||M.deleteThread()},toggleStar:M.toggleStar,toggleRead:()=>{T.listCommandsRef.current?.requestVerb("markRead")||p&&C([p.messageId],!p.isRead)},goBrief:()=>l("brief"),goSettings:()=>l("settings")}}),O=n.useCallback(o=>{if(!o)return;const y=h.find(K=>K.messageId===o);return y?{threadId:y.threadId,messageId:o}:void 0},[h]),E={selectedMessageId:m,selectedThread:u,conversation:S,onOpenThread:P,onCloseThread:a,nextThread:O(Q),previousThread:O(_),actions:R,onReply:B,triage:T,onDeleteMessages:x,handleDeselectIfRemoved:w};return r.jsx(se.Provider,{value:E,children:t})}function ae(){const{selectedMessageId:e,onOpenThread:t,triage:s,onDeleteMessages:a}=D();return r.jsx(nt,{selectedMessageId:e,onOpenThread:t,commandsRef:s.listCommandsRef,onTriageContextChange:s.onTriageContextChange,onDeleteMessages:a})}function dt(){const{conversation:e,selectedThread:t,actions:s,onReply:a,handleDeselectIfRemoved:l}=D(),c=!!e,i=_e(e?.threadId);return r.jsxs(r.Fragment,{children:[r.jsxs("section",{className:"flex h-full w-full min-w-0 flex-col bg-canvas",children:[r.jsx(Ke,{hasThread:c,intelligenceOpen:i.isShowing,canToggleIntelligence:i.canToggle,onToggleIntelligence:i.toggle,onReply:a?()=>a("reply"):void 0,onReplyAll:a?()=>a("reply-all"):void 0,onForward:a?()=>a("forward"):void 0,onDelete:c?s.deleteThread:void 0,onToggleStar:c?s.toggleStar:void 0,isStarred:s.isStarred,moveContext:c&&s.accountId&&s.mailboxId?{accountId:s.accountId,currentMailboxId:s.mailboxId,onMove:s.moveThread}:void 0}),r.jsx("div",{className:"min-h-0 flex-1 overflow-hidden",children:e?r.jsx(Y,{threadId:e.threadId,mailboxId:e.mailboxId,subject:e.subject,selectedMessageId:e.messageId,authenticity:e.authenticity,onOpenIntelligence:i.open,listOnScreen:!0}):r.jsx(ye,{})})]}),r.jsx(ee,{isOpen:i.drawerOpen,onClose:i.closeDrawer,thread:t,mailboxId:t?.mailboxId,accountId:t?.accountId,onAfterOptimisticRemove:l})]})}function lt(){const{selectedThread:e,handleDeselectIfRemoved:t}=D(),{onToggleIntelligence:s}=V();return r.jsx(Qe,{onClose:s,thread:e,mailboxId:e?.mailboxId,accountId:e?.accountId,onAfterOptimisticRemove:t})}function ct(){const{selectedThread:e,conversation:t,onCloseThread:s,onOpenThread:a,nextThread:l,previousThread:c,handleDeselectIfRemoved:i}=D(),g=Be(t?.threadId??null);return t?r.jsxs(r.Fragment,{children:[r.jsx(Y,{threadId:t.threadId,mailboxId:t.mailboxId,subject:t.subject,selectedMessageId:t.messageId,authenticity:t.authenticity,onBack:s,onOpenIntelligence:g.toggle,onSwipeNext:l?()=>a(l):void 0,onSwipePrevious:c?()=>a(c):void 0,mobileIntelligenceOpen:g.isOpen}),r.jsx(ee,{isOpen:g.isOpen,onClose:g.close,thread:e,mailboxId:e?.mailboxId,accountId:e?.accountId,onAfterOptimisticRemove:i})]}):r.jsx("div",{className:"h-full",children:r.jsx(ae,{})})}const yt=Object.assign(it,{List:ae,Reading:dt,Intelligence:lt,Phone:ct});export{yt as F};
@@ -1 +1 @@
1
- import{r as n,c as f,d as m,G as N,j as e,bm as w,X as E}from"./index-Dy5D6YkV.js";import{E as u}from"./ErrorState-yTshApcZ.js";import{D as r,C as x,u as k}from"./index-ELhtBEwQ.js";import{c as p,d as h,e as b}from"./useMessageBodyContent-Dqn8BKJN.js";import{C as S}from"./confirm-dialog-BnvctSkU.js";const C=t=>t?"Draft":"New Message",I=()=>{const t=n.useRef(!1);return n.useCallback(()=>{const s=document.querySelector("[data-subject-field]")?.value??"",o=(document.querySelector('[data-testid="compose-body"]')?.textContent??"").replace(/--\s*/g,"").trim();return t.current=s.trim().length>0||o.length>0,t.current},[])},O=()=>{const t=p(),i=h(),s=b(),a=I(),[l,o]=n.useState(!1),{isError:d,error:c,refetch:g}=f({...m(),staleTime:1/0}),j=n.useCallback(D=>{D||(a()?o(!0):s())},[s,a]),y=n.useCallback(()=>{o(!1),s()},[s]),v=n.useCallback(()=>{o(!1)},[]);return N({id:"mobile-compose",open:!0}),e.jsxs(r.Root,{open:!0,onOpenChange:j,children:[e.jsxs(r.Portal,{children:[e.jsx(r.Overlay,{className:"fixed inset-0 z-40 bg-black/40"}),e.jsxs(r.Content,{className:"fixed inset-x-0 bottom-0 z-50 flex flex-col rounded-t-lg bg-canvas pb-[env(safe-area-inset-bottom,0px)]",style:{height:"95dvh"},children:[e.jsx(r.Handle,{className:"mx-auto mt-2 mb-1 h-1.5 w-12 rounded-full bg-fg-muted/30"}),e.jsx(r.Title,{className:"px-4 py-2 text-base font-semibold border-b border-line",children:C(t)}),d?e.jsx("div",{className:"flex-1 flex items-center justify-center p-4",children:e.jsx(u,{title:"Couldn't load compose",error:c,onRetry:()=>{g()}})}):e.jsx("div",{className:"flex-1 overflow-hidden",children:e.jsx(x,{mode:"new",outboxMessageId:t,onDraftCreated:i,onClose:s})})]})]}),e.jsx(S,{isOpen:l,title:"Discard draft?",description:"Your message has unsaved content. Are you sure you want to discard it?",confirmLabel:"Discard",cancelLabel:"Keep editing",destructive:!0,onConfirm:y,onCancel:v})]})},q=()=>{const t=p(),i=h(),s=b(),a=w(),{isError:l,error:o,refetch:d}=f({...m(),staleTime:1/0});if(k({bindings:[{key:"Escape",handler:s,preventDefault:!0}]}),!a)return e.jsx(O,{});const c=e.jsxs("header",{className:"flex items-center justify-between gap-2 px-4 py-3 border-b border-line shrink-0",children:[e.jsx("div",{className:"flex items-center gap-2 min-w-0",children:e.jsx("h2",{className:"text-lg font-semibold truncate",children:C(t)})}),e.jsx("button",{type:"button",onClick:s,className:"p-2 rounded-md hover:bg-surface-raised transition-colors min-h-11 min-w-11 inline-flex items-center justify-center","aria-label":"Close",children:e.jsx(E,{className:"size-5"})})]});return l?e.jsxs("div",{className:"h-full flex flex-col bg-canvas",children:[c,e.jsx("div",{className:"flex-1 flex items-center justify-center p-4",children:e.jsx(u,{title:"Couldn't load compose",error:o,onRetry:()=>{d()}})})]}):e.jsxs("div",{className:"flex h-full min-h-0 flex-col bg-canvas",children:[c,e.jsx("div",{className:"min-h-0 flex-1 overflow-hidden",children:e.jsx(x,{mode:"new",outboxMessageId:t,onDraftCreated:i,onClose:s})})]})};export{q as F};
1
+ import{r as n,c as f,d as m,G as N,j as e,bm as w,X as E}from"./index-Pa-PXhYt.js";import{E as u}from"./ErrorState-DsBtijJZ.js";import{D as r,C as x,u as k}from"./index-CLDSMpwb.js";import{c as p,d as h,e as b}from"./useMessageBodyContent-CqnK7vFx.js";import{C as S}from"./confirm-dialog-BP0RGVB7.js";const C=t=>t?"Draft":"New Message",I=()=>{const t=n.useRef(!1);return n.useCallback(()=>{const s=document.querySelector("[data-subject-field]")?.value??"",o=(document.querySelector('[data-testid="compose-body"]')?.textContent??"").replace(/--\s*/g,"").trim();return t.current=s.trim().length>0||o.length>0,t.current},[])},O=()=>{const t=p(),i=h(),s=b(),a=I(),[l,o]=n.useState(!1),{isError:d,error:c,refetch:g}=f({...m(),staleTime:1/0}),j=n.useCallback(D=>{D||(a()?o(!0):s())},[s,a]),y=n.useCallback(()=>{o(!1),s()},[s]),v=n.useCallback(()=>{o(!1)},[]);return N({id:"mobile-compose",open:!0}),e.jsxs(r.Root,{open:!0,onOpenChange:j,children:[e.jsxs(r.Portal,{children:[e.jsx(r.Overlay,{className:"fixed inset-0 z-40 bg-black/40"}),e.jsxs(r.Content,{className:"fixed inset-x-0 bottom-0 z-50 flex flex-col rounded-t-lg bg-canvas pb-[env(safe-area-inset-bottom,0px)]",style:{height:"95dvh"},children:[e.jsx(r.Handle,{className:"mx-auto mt-2 mb-1 h-1.5 w-12 rounded-full bg-fg-muted/30"}),e.jsx(r.Title,{className:"px-4 py-2 text-base font-semibold border-b border-line",children:C(t)}),d?e.jsx("div",{className:"flex-1 flex items-center justify-center p-4",children:e.jsx(u,{title:"Couldn't load compose",error:c,onRetry:()=>{g()}})}):e.jsx("div",{className:"flex-1 overflow-hidden",children:e.jsx(x,{mode:"new",outboxMessageId:t,onDraftCreated:i,onClose:s})})]})]}),e.jsx(S,{isOpen:l,title:"Discard draft?",description:"Your message has unsaved content. Are you sure you want to discard it?",confirmLabel:"Discard",cancelLabel:"Keep editing",destructive:!0,onConfirm:y,onCancel:v})]})},q=()=>{const t=p(),i=h(),s=b(),a=w(),{isError:l,error:o,refetch:d}=f({...m(),staleTime:1/0});if(k({bindings:[{key:"Escape",handler:s,preventDefault:!0}]}),!a)return e.jsx(O,{});const c=e.jsxs("header",{className:"flex items-center justify-between gap-2 px-4 py-3 border-b border-line shrink-0",children:[e.jsx("div",{className:"flex items-center gap-2 min-w-0",children:e.jsx("h2",{className:"text-lg font-semibold truncate",children:C(t)})}),e.jsx("button",{type:"button",onClick:s,className:"p-2 rounded-md hover:bg-surface-raised transition-colors min-h-11 min-w-11 inline-flex items-center justify-center","aria-label":"Close",children:e.jsx(E,{className:"size-5"})})]});return l?e.jsxs("div",{className:"h-full flex flex-col bg-canvas",children:[c,e.jsx("div",{className:"flex-1 flex items-center justify-center p-4",children:e.jsx(u,{title:"Couldn't load compose",error:o,onRetry:()=>{d()}})})]}):e.jsxs("div",{className:"flex h-full min-h-0 flex-col bg-canvas",children:[c,e.jsx("div",{className:"min-h-0 flex-1 overflow-hidden",children:e.jsx(x,{mode:"new",outboxMessageId:t,onDraftCreated:i,onClose:s})})]})};export{q as F};
@@ -1,4 +1,4 @@
1
- import{at as As,d1 as Ur,r as l,e as ne,j as s,_ as Be,$ as $s,aC as Xe,t as E,as as Xn,a8 as Br,f as K,X as Ke,a4 as yt,W as He,d2 as Jn,aN as Kr,Y as Hr,b8 as Qr,g as Ne,d0 as qt,d3 as Zn,Z as Je,d4 as qr,d5 as Gr,d6 as Wr,d7 as Vr,d8 as ea,d9 as ta,da as Gt,db as Yr,bo as Xr,dc as Jr,dd as sa,bF as Ls,de as Zr,df as na,aJ as eo,L as aa,a0 as to,dg as so,B as ra,dh as no,di as ao,dj as ro,dk as oo,dl as io,w as lo,c as J,d as Ze,K as kt,dm as co,dn as uo,dp as Wt,h as de,au as ve,i as me,E as Ae,F as $e,Q as jt,cC as Le,dq as Vt,dr as ht,bd as fo,ds as wt,dt as Pe,du as Nt,dv as Ct,dw as St,dx as mo,dy as po,dz as nn,dA as ho,s as oa,dB as go,dC as xo,dD as bo,b5 as vo,cm as yo,cT as ia,cU as ko,dE as jo,bm as Ps,bp as la,bj as ca,bq as da,br as ua,G as Ds,bs as wo,a_ as fa,a$ as ma,cH as No,dF as Co,ac as pa,cG as So,dG as gt,dH as To,dI as Io,ba as ha,dJ as Ro,dK as ga,dL as Eo,cZ as Mo,H as xa,bQ as Fs,dM as Ao,cJ as et,dN as an,dO as ba,bR as $o,dP as ds,dQ as Lo,bP as Po,S as Do,q as Fo,ai as va,J as Oo,dR as zo,dS as _o,dT as Uo,cY as rn,bz as Bo,dU as Ko,dV as Ho,aw as Qo,cL as qo,cW as Go,dW as Wo,aj as Vo,cX as Yo,dX as Xo,dY as Jo,dZ as Zo,d_ as ei,C as Tt,d$ as ti,e0 as si,e1 as on,e2 as ni,e3 as ai,e4 as ri,e5 as oi,v as ya,c$ as ii,e6 as Os,e7 as li,e8 as ci,cn as di,ck as ui,e9 as fi,a3 as mi,ea as ka,co as pi}from"./index-Dy5D6YkV.js";import{u as hi,L as gi,a as xi}from"./roving-focus-BOWQw34Y.js";import{l as bi,S as ja,h as vi,d as yi,D as ki,b as Dt,a as ji,t as dt,e as wi,m as Ni,n as Ci,u as Si}from"./search-token-index-RpS46UX-.js";import{K as Ti}from"./kbd-6xrqVw1K.js";import{P as wa,f as Ii,U as Ri,a as Ei,E as Mi,s as Ai}from"./attachment-file-D1lRTIpJ.js";import{M as Na}from"./mail-1kAZ-hEc.js";import{A as xt}from"./avatar-Dc7q-vE0.js";import{M as $i,a as Li,b as Ca,c as Pi,s as Sa,d as Ta,e as Di,f as Fi,S as ln,g as Ia,u as Ra,p as Oi,r as zi}from"./useSearchTokenContext-BDaT1iE0.js";import{C as _i,D as We,u as Ui}from"./index-ELhtBEwQ.js";import{E as Ea}from"./EmptyState-BdQOG7lh.js";import{E as Ue}from"./ErrorState-yTshApcZ.js";import{D as Bi}from"./download-DCjKcyoD.js";import{g as Ki}from"./useMessageBodyContent-Dqn8BKJN.js";import{C as Hi}from"./calendar-event-chip-PRMkWtmn.js";import{c as Qi}from"./calendar-color-CREaSNOF.js";import{R as qi,M as Gi}from"./attendee-row-BY_sZYga.js";import{C as Ma}from"./clock-DJx8eT0h.js";import{M as Wi,G as Vi}from"./map-pin-pA2YiBQX.js";import{B as Yi,b as Xi,u as Ji,i as Zi}from"./useLayoutTier-BiCLmmpl.js";import{S as el,C as Aa}from"./shield-check-C-xWv7tn.js";import{u as $a}from"./useDebouncedValue-cgYnkNgs.js";import{h as cn,u as tl,a as sl,i as nl,n as al,o as rl,j as ol,k as il,S as ll}from"./useFilters-toZUnuEV.js";import{u as zs}from"./useQueries-BuVSZIL7.js";import{C as Ft}from"./confirm-dialog-BnvctSkU.js";import{r as cl,a as dl}from"./search-scope-B5-OK3Cq.js";import{M as ul}from"./menu-BBzSZjBL.js";function bt(e){if(fl())e.focus({preventScroll:!0});else{let t=ml(e);e.focus(),pl(t)}}let Ot=null;function fl(){if(Ot==null){Ot=!1;try{document.createElement("div").focus({get preventScroll(){return Ot=!0,!0}})}catch{}}return Ot}function ml(e){let t=e.parentNode,n=[],a=document.scrollingElement||document.documentElement;for(;t instanceof HTMLElement&&t!==a;)(t.offsetHeight<t.scrollHeight||t.offsetWidth<t.scrollWidth)&&n.push({element:t,scrollTop:t.scrollTop,scrollLeft:t.scrollLeft}),t=t.parentNode;return a instanceof HTMLElement&&n.push({element:a,scrollTop:a.scrollTop,scrollLeft:a.scrollLeft}),n}function pl(e){for(let{element:t,scrollTop:n,scrollLeft:a}of e)t.scrollTop=n,t.scrollLeft=a}const Ee=e=>e?.ownerDocument??document,Me=e=>e&&"window"in e&&e.window===e?e:Ee(e).defaultView||window;function hl(e){return e!==null&&typeof e=="object"&&"nodeType"in e&&typeof e.nodeType=="number"}function gl(e){return hl(e)&&e.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&"host"in e}let xl=!1;function La(){return xl}function xe(e,t){if(!La())return t&&e?e.contains(t):!1;if(!e||!t)return!1;let n=t;for(;n!==null;){if(n===e)return!0;n.tagName==="SLOT"&&n.assignedSlot?n=n.assignedSlot.parentNode:gl(n)?n=n.host:n=n.parentNode}return!1}function te(e){if(La()&&e.target instanceof Element&&e.target.shadowRoot){if("composedPath"in e)return e.composedPath()[0]??null;if("composedPath"in e.nativeEvent)return e.nativeEvent.composedPath()[0]??null}return e.target}const bl=typeof Element<"u"&&"checkVisibility"in Element.prototype;function vl(e){const t=Me(e);if(!(e instanceof t.HTMLElement)&&!(e instanceof t.SVGElement))return!1;let{display:n,visibility:a}=e.style,r=n!=="none"&&a!=="hidden"&&a!=="collapse";if(r){const{getComputedStyle:o}=Me(e);let{display:i,visibility:c}=o(e);r=i!=="none"&&c!=="hidden"&&c!=="collapse"}return r}function yl(e,t){return!e.hasAttribute("hidden")&&!e.hasAttribute("data-react-aria-prevent-focus")&&(e.nodeName==="DETAILS"&&t&&t.nodeName!=="SUMMARY"?e.hasAttribute("open"):!0)}function Pa(e,t){return bl?e.checkVisibility({visibilityProperty:!0})&&!e.closest("[data-react-aria-prevent-focus]"):e.nodeName!=="#comment"&&vl(e)&&yl(e,t)&&(!e.parentElement||Pa(e.parentElement,e))}const Da=["input:not([disabled]):not([type=hidden])","select:not([disabled])","textarea:not([disabled])","button:not([disabled])","a[href]","area[href]","summary","iframe","object","embed","audio[controls]","video[controls]",'[contenteditable]:not([contenteditable^="false"])',"permission"],kl=Da.join(":not([hidden]),")+",[tabindex]:not([disabled]):not([hidden])";Da.push('[tabindex]:not([tabindex="-1"]):not([disabled])');function jl(e,t){return e.matches(kl)&&!wl(e)&&(t?.skipVisibilityCheck||Pa(e))}function wl(e){let t=e;for(;t!=null;){if(t instanceof Me(t).HTMLElement&&t.inert)return!0;t=t.parentElement}return!1}const _s=typeof document<"u"?As.useLayoutEffect:()=>{};function Nl(e){let t=e;return t.nativeEvent=e,t.isDefaultPrevented=()=>t.defaultPrevented,t.isPropagationStopped=()=>t.cancelBubble,t.persist=()=>{},t}function Cl(e,t){Object.defineProperty(e,"target",{value:t}),Object.defineProperty(e,"currentTarget",{value:t})}function Sl(e){for(;e&&!jl(e,{skipVisibilityCheck:!0});)e=e.parentElement;let t=Me(e),n=t.document.activeElement;if(!n||n===e)return;let a=!1,r=g=>{(te(g)===n||a)&&g.stopImmediatePropagation()},o=g=>{(te(g)===n||a)&&(g.stopImmediatePropagation(),!e&&!a&&(a=!0,bt(n),d()))},i=g=>{(te(g)===e||a)&&g.stopImmediatePropagation()},c=g=>{(te(g)===e||a)&&(g.stopImmediatePropagation(),a||(a=!0,bt(n),d()))};t.addEventListener("blur",r,!0),t.addEventListener("focusout",o,!0),t.addEventListener("focusin",c,!0),t.addEventListener("focus",i,!0);let d=()=>{cancelAnimationFrame(x),t.removeEventListener("blur",r,!0),t.removeEventListener("focusout",o,!0),t.removeEventListener("focusin",c,!0),t.removeEventListener("focus",i,!0),a=!1},x=requestAnimationFrame(d);return d}function Yt(e){if(typeof window>"u"||window.navigator==null)return!1;let t=window.navigator.userAgentData?.brands;return Array.isArray(t)&&t.some(n=>e.test(n.brand))||e.test(window.navigator.userAgent)}function Us(e){return typeof window<"u"&&window.navigator!=null?e.test(window.navigator.userAgentData?.platform||window.navigator.platform):!1}function De(e){let t=null;return()=>(t==null&&(t=e()),t)}const Bt=De(function(){return Us(/^Mac/i)}),Tl=De(function(){return Us(/^iPhone/i)}),Fa=De(function(){return Us(/^iPad/i)||Bt()&&navigator.maxTouchPoints>1}),Oa=De(function(){return Tl()||Fa()}),Il=De(function(){return Yt(/AppleWebKit/i)&&!Rl()}),Rl=De(function(){return Yt(/Chrome/i)}),za=De(function(){return Yt(/Android/i)}),El=De(function(){return Yt(/Firefox/i)});function Ml(e){return e.pointerType===""&&e.isTrusted?!0:za()&&e.pointerType?e.type==="click"&&e.buttons===1:e.detail===0&&!e.pointerType}function Al(e){return!za()&&e.width===0&&e.height===0||e.width===1&&e.height===1&&e.pressure===0&&e.detail===0&&e.pointerType==="mouse"}function vt(e,t,n=!0){let{metaKey:a,ctrlKey:r,altKey:o,shiftKey:i}=t;El()&&window.event?.type?.startsWith("key")&&e.target==="_blank"&&(Bt()?a=!0:r=!0);let c=Il()&&Bt()&&!Fa()?new KeyboardEvent("keydown",{keyIdentifier:"Enter",metaKey:a,ctrlKey:r,altKey:o,shiftKey:i}):new MouseEvent("click",{metaKey:a,ctrlKey:r,altKey:o,shiftKey:i,detail:1,bubbles:!0,cancelable:!0});vt.isOpening=n,bt(e),e.dispatchEvent(c),vt.isOpening=!1}vt.isOpening=!1;let Re=new Map,ks=new Set;function dn(){if(typeof window>"u")return;function e(a){return"propertyName"in a}let t=a=>{let r=te(a);if(!e(a)||!r)return;let o=Re.get(r);o||(o=new Set,Re.set(r,o),r.addEventListener("transitioncancel",n,{once:!0})),o.add(a.propertyName)},n=a=>{let r=te(a);if(!e(a)||!r)return;let o=Re.get(r);if(o&&(o.delete(a.propertyName),o.size===0&&(r.removeEventListener("transitioncancel",n),Re.delete(r)),Re.size===0)){for(let i of ks)i();ks.clear()}};document.body.addEventListener("transitionrun",t),document.body.addEventListener("transitionend",n)}typeof document<"u"&&(document.readyState!=="loading"?dn():document.addEventListener("DOMContentLoaded",dn));function $l(){for(const[e]of Re)"isConnected"in e&&!e.isConnected&&Re.delete(e)}function Ll(e){requestAnimationFrame(()=>{$l(),Re.size===0?e():ks.add(e)})}function _a(...e){return(...t)=>{for(let n of e)typeof n=="function"&&n(...t)}}let js=new Map;typeof FinalizationRegistry<"u"&&new FinalizationRegistry(e=>{js.delete(e)});function Pl(e,t){if(e===t)return e;let n=js.get(e);if(n)return n.forEach(r=>r.current=t),t;let a=js.get(t);return a?(a.forEach(r=>r.current=e),e):t}function Dl(...e){return e.length===1&&e[0]?e[0]:t=>{let n=!1;const a=e.map(r=>{const o=un(r,t);return n||=typeof o=="function",o});if(n)return()=>{a.forEach((r,o)=>{typeof r=="function"?r():un(e[o],null)})}}}function un(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function It(...e){let t={...e[0]};for(let n=1;n<e.length;n++){let a=e[n];for(let r in a){let o=t[r],i=a[r];typeof o=="function"&&typeof i=="function"&&r[0]==="o"&&r[1]==="n"&&r.charCodeAt(2)>=65&&r.charCodeAt(2)<=90?t[r]=_a(o,i):(r==="className"||r==="UNSAFE_className")&&typeof o=="string"&&typeof i=="string"?t[r]=Ur(o,i):r==="id"&&o&&i?t.id=Pl(o,i):r==="ref"&&o&&i?t.ref=Dl(o,i):t[r]=i!==void 0?i:o}}return t}function Fl(e,t){_s(()=>{if(e&&e.ref&&t)return e.ref.current=t.current,()=>{e.ref&&(e.ref.current=null)}})}const Ol=As.useInsertionEffect??_s;function us(e){const t=l.useRef(null);return Ol(()=>{t.current=e},[e]),l.useCallback((...n)=>{const a=t.current;return a?.(...n)},[])}let Ve="default",ws="",Ut=new WeakMap;function zl(e){if(Oa()){if(Ve==="default"){const t=Ee(e);ws=t.documentElement.style.webkitUserSelect,t.documentElement.style.webkitUserSelect="none"}Ve="disabled"}else if(e instanceof HTMLElement||e instanceof SVGElement){let t="userSelect"in e.style?"userSelect":"webkitUserSelect";Ut.set(e,e.style[t]),e.style[t]="none"}}function fn(e){if(Oa()){if(Ve!=="disabled")return;Ve="restoring",setTimeout(()=>{Ll(()=>{if(Ve==="restoring"){const t=Ee(e);t.documentElement.style.webkitUserSelect==="none"&&(t.documentElement.style.webkitUserSelect=ws||""),ws="",Ve="default"}})},300)}else if((e instanceof HTMLElement||e instanceof SVGElement)&&e&&Ut.has(e)){let t=Ut.get(e),n="userSelect"in e.style?"userSelect":"webkitUserSelect";e.style[n]==="none"&&(e.style[n]=t),e.getAttribute("style")===""&&e.removeAttribute("style"),Ut.delete(e)}}function mn(e){return e?.defaultView?.__webpack_nonce__||globalThis.__webpack_nonce__||void 0}let fs=new WeakMap;function _l(e){let t=e??(typeof document<"u"?document:void 0);if(!t)return mn(t);if(fs.has(t))return fs.get(t);let n=t.querySelector('meta[property="csp-nonce"]'),a=n&&n instanceof Me(n).HTMLMetaElement&&(n.nonce||n.content)||mn(t)||void 0;return a!==void 0&&fs.set(t,a),a}const Ua=As.createContext({register:()=>{}});Ua.displayName="PressResponderContext";function Ba(){let e=l.useRef(new Map),t=l.useCallback((r,o,i,c)=>{let d=c?.once?(...x)=>{e.current.delete(i),i(...x)}:i;e.current.set(i,{type:o,eventTarget:r,fn:d,options:c}),r.addEventListener(o,d,c)},[]),n=l.useCallback((r,o,i,c)=>{let d=e.current.get(i)?.fn||i;r.removeEventListener(o,d,c),e.current.delete(i)},[]),a=l.useCallback(()=>{e.current.forEach((r,o)=>{n(r.eventTarget,r.type,o,r.options)})},[n]);return l.useEffect(()=>a,[a]),{addGlobalListener:t,removeGlobalListener:n,removeAllGlobalListeners:a}}function Ul(e){let t=l.useContext(Ua);if(t){let{register:n,ref:a,...r}=t;e=It(r,e),n()}return Fl(t,e.ref),e}class zt{#e;constructor(t,n,a,r){this.#e=!0;const i=(r?.target??a.currentTarget)?.getBoundingClientRect();let c,d=0,x,g=null;a.clientX!=null&&a.clientY!=null&&(x=a.clientX,g=a.clientY),i&&(x!=null&&g!=null?(c=x-i.left,d=g-i.top):(c=i.width/2,d=i.height/2)),this.type=t,this.pointerType=n,this.target=a.currentTarget,this.shiftKey=a.shiftKey,this.metaKey=a.metaKey,this.ctrlKey=a.ctrlKey,this.altKey=a.altKey,this.x=c,this.y=d,this.key=a.key}continuePropagation(){this.#e=!1}get shouldStopPropagation(){return this.#e}}const pn=Symbol("linkClicked"),hn="react-aria-pressable-style",gn="data-react-aria-pressable";function Bl(e){let{onPress:t,onPressChange:n,onPressStart:a,onPressEnd:r,onPressUp:o,onClick:i,isDisabled:c,isPressed:d,preventFocusOnPress:x,shouldCancelOnPointerExit:g,allowTextSelectionOnPress:v,ref:f,...b}=Ul(e),[m,p]=l.useState(!1),u=l.useRef({isPressed:!1,ignoreEmulatedMouseEvents:!1,didFirePressStart:!1,isTriggeringEvent:!1,activePointerId:null,target:null,isOverTarget:!1,pointerType:null,disposables:[]}),{addGlobalListener:h,removeAllGlobalListeners:j}=Ba(),y=l.useCallback((w,R)=>{let F=u.current;if(c||F.didFirePressStart)return!1;let N=!0;if(F.isTriggeringEvent=!0,a){let L=new zt("pressstart",R,w);a(L),N=L.shouldStopPropagation}return n&&n(!0),F.isTriggeringEvent=!1,F.didFirePressStart=!0,p(!0),N},[c,a,n]),k=l.useCallback((w,R,F=!0)=>{let N=u.current;if(!N.didFirePressStart)return!1;N.didFirePressStart=!1,N.isTriggeringEvent=!0;let L=!0;if(r){let C=new zt("pressend",R,w);r(C),L=C.shouldStopPropagation}if(n&&n(!1),p(!1),t&&F&&!c){let C=new zt("press",R,w);t(C),L&&=C.shouldStopPropagation}return N.isTriggeringEvent=!1,L},[c,r,n,t]),S=us(k),I=l.useCallback((w,R)=>{let F=u.current;if(c)return!1;if(o){F.isTriggeringEvent=!0;let N=new zt("pressup",R,w);return o(N),F.isTriggeringEvent=!1,N.shouldStopPropagation}return!0},[c,o]),A=us(I),P=l.useCallback(w=>{let R=u.current;if(R.isPressed&&R.target){R.didFirePressStart&&R.pointerType!=null&&k(_e(R.target,w),R.pointerType,!1),R.isPressed=!1,R.isOverTarget=!1,R.activePointerId=null,R.pointerType=null,j(),v||fn(R.target);for(let F of R.disposables)F();R.disposables=[]}},[v,j,k]),$=us(P);l.useEffect(()=>{c&&u.current.isPressed&&$({currentTarget:u.current.target,shiftKey:!1,ctrlKey:!1,metaKey:!1,altKey:!1})},[c]);let D=l.useCallback(w=>{g&&P(w)},[g,P]),M=l.useCallback(w=>{c||i?.(w)},[c,i]),U=l.useCallback((w,R)=>{if(!c&&i){let F=new MouseEvent("click",w);Cl(F,R),i(Nl(F))}},[c,i]),z=l.useMemo(()=>{let w=u.current,R={onKeyDown(N){if(ms(N.nativeEvent,N.currentTarget)&&xe(N.currentTarget,te(N))){xn(te(N),N.key)&&N.preventDefault();let L=!0;!w.isPressed&&!N.repeat&&(w.target=N.currentTarget,w.isPressed=!0,w.pointerType="keyboard",L=y(N,"keyboard"));let C=N.currentTarget,B=_=>{ms(_,C)&&!_.repeat&&xe(C,te(_))&&w.target&&A(_e(w.target,_),"keyboard")};h(Ee(N.currentTarget),"keyup",_a(B,F),!0),L&&N.stopPropagation(),N.metaKey&&Bt()&&w.metaKeyEvents?.set(N.key,N.nativeEvent)}else N.key==="Meta"&&(w.metaKeyEvents=new Map)},onClick(N){if(!(N&&!xe(N.currentTarget,te(N)))&&N&&N.button===0&&!w.isTriggeringEvent&&!vt.isOpening){let L=!0;if(c&&N.preventDefault(),!w.ignoreEmulatedMouseEvents&&!w.isPressed&&(w.pointerType==="virtual"||Ml(N.nativeEvent))){let C=y(N,"virtual"),B=A(N,"virtual"),_=S(N,"virtual");M(N),L=C&&B&&_}else if(w.isPressed&&w.pointerType!=="keyboard"){let C=w.pointerType||N.nativeEvent.pointerType||"virtual",B=A(_e(N.currentTarget,N),C),_=S(_e(N.currentTarget,N),C,!0);L=B&&_,w.isOverTarget=!1,M(N),$(N)}w.ignoreEmulatedMouseEvents=!1,L&&N.stopPropagation()}}},F=N=>{if(w.isPressed&&w.target&&ms(N,w.target)){xn(te(N),N.key)&&N.preventDefault();let L=te(N),C=xe(w.target,L);S(_e(w.target,N),"keyboard",C),C&&U(N,w.target),j(),N.key!=="Enter"&&Bs(w.target)&&xe(w.target,L)&&!N[pn]&&(N[pn]=!0,vt(w.target,N,!1)),w.isPressed=!1,w.metaKeyEvents?.delete(N.key)}else if(N.key==="Meta"&&w.metaKeyEvents?.size){let L=w.metaKeyEvents;w.metaKeyEvents=void 0;for(let C of L.values())w.target?.dispatchEvent(new KeyboardEvent("keyup",C))}};if(typeof PointerEvent<"u"){R.onPointerDown=C=>{if(C.button!==0||!xe(C.currentTarget,te(C)))return;if(Al(C.nativeEvent)){w.pointerType="virtual";return}w.pointerType=C.pointerType;let B=!0;if(!w.isPressed){w.isPressed=!0,w.isOverTarget=!0,w.activePointerId=C.pointerId,w.target=C.currentTarget,v||zl(w.target),B=y(C,w.pointerType);let _=te(C);"releasePointerCapture"in _&&("hasPointerCapture"in _?_.hasPointerCapture(C.pointerId)&&_.releasePointerCapture(C.pointerId):_.releasePointerCapture(C.pointerId)),h(Ee(C.currentTarget),"pointerup",N,!1),h(Ee(C.currentTarget),"pointercancel",L,!1)}B&&C.stopPropagation()},R.onMouseDown=C=>{if(xe(C.currentTarget,te(C))&&C.button===0){if(x){let B=Sl(C.target);B&&w.disposables.push(B)}C.stopPropagation()}},R.onPointerUp=C=>{!xe(C.currentTarget,te(C))||w.pointerType==="virtual"||C.button===0&&!w.isPressed&&A(C,w.pointerType||C.pointerType)},R.onPointerEnter=C=>{C.pointerId===w.activePointerId&&w.target&&!w.isOverTarget&&w.pointerType!=null&&(w.isOverTarget=!0,y(_e(w.target,C),w.pointerType))},R.onPointerLeave=C=>{C.pointerId===w.activePointerId&&w.target&&w.isOverTarget&&w.pointerType!=null&&(w.isOverTarget=!1,S(_e(w.target,C),w.pointerType,!1),D(C))};let N=C=>{if(C.pointerId===w.activePointerId&&w.isPressed&&C.button===0&&w.target){if(xe(w.target,te(C))&&w.pointerType!=null){let B=!1,_=setTimeout(()=>{w.isPressed&&w.target instanceof HTMLElement&&(B?$(C):(bt(w.target),w.target.click()))},80);h(C.currentTarget,"click",()=>B=!0,!0),w.disposables.push(()=>clearTimeout(_))}else $(C);w.isOverTarget=!1}},L=C=>{$(C)};R.onDragStart=C=>{xe(C.currentTarget,te(C))&&$(C)}}return R},[h,c,x,j,v,D,y,M,U]);return l.useEffect(()=>{if(!f)return;const w=Ee(f.current);if(!w||!w.head||w.getElementById(hn))return;const R=w.createElement("style");R.id=hn;let F=_l(w);F&&(R.nonce=F),R.textContent=`
1
+ import{at as As,d1 as Ur,r as l,e as ne,j as s,_ as Be,$ as $s,aC as Xe,t as E,as as Xn,a8 as Br,f as K,X as Ke,a4 as yt,W as He,d2 as Jn,aN as Kr,Y as Hr,b8 as Qr,g as Ne,d0 as qt,d3 as Zn,Z as Je,d4 as qr,d5 as Gr,d6 as Wr,d7 as Vr,d8 as ea,d9 as ta,da as Gt,db as Yr,bo as Xr,dc as Jr,dd as sa,bF as Ls,de as Zr,df as na,aJ as eo,L as aa,a0 as to,dg as so,B as ra,dh as no,di as ao,dj as ro,dk as oo,dl as io,w as lo,c as J,d as Ze,K as kt,dm as co,dn as uo,dp as Wt,h as de,au as ve,i as me,E as Ae,F as $e,Q as jt,cC as Le,dq as Vt,dr as ht,bd as fo,ds as wt,dt as Pe,du as Nt,dv as Ct,dw as St,dx as mo,dy as po,dz as nn,dA as ho,s as oa,dB as go,dC as xo,dD as bo,b5 as vo,cm as yo,cT as ia,cU as ko,dE as jo,bm as Ps,bp as la,bj as ca,bq as da,br as ua,G as Ds,bs as wo,a_ as fa,a$ as ma,cH as No,dF as Co,ac as pa,cG as So,dG as gt,dH as To,dI as Io,ba as ha,dJ as Ro,dK as ga,dL as Eo,cZ as Mo,H as xa,bQ as Fs,dM as Ao,cJ as et,dN as an,dO as ba,bR as $o,dP as ds,dQ as Lo,bP as Po,S as Do,q as Fo,ai as va,J as Oo,dR as zo,dS as _o,dT as Uo,cY as rn,bz as Bo,dU as Ko,dV as Ho,aw as Qo,cL as qo,cW as Go,dW as Wo,aj as Vo,cX as Yo,dX as Xo,dY as Jo,dZ as Zo,d_ as ei,C as Tt,d$ as ti,e0 as si,e1 as on,e2 as ni,e3 as ai,e4 as ri,e5 as oi,v as ya,c$ as ii,e6 as Os,e7 as li,e8 as ci,cn as di,ck as ui,e9 as fi,a3 as mi,ea as ka,co as pi}from"./index-Pa-PXhYt.js";import{u as hi,L as gi,a as xi}from"./roving-focus-xdT_hFx-.js";import{l as bi,S as ja,h as vi,d as yi,D as ki,b as Dt,a as ji,t as dt,e as wi,m as Ni,n as Ci,u as Si}from"./search-token-index-DH9ZHWHu.js";import{K as Ti}from"./kbd-BptaoNeb.js";import{P as wa,f as Ii,U as Ri,a as Ei,E as Mi,s as Ai}from"./attachment-file-D4ltwNwP.js";import{M as Na}from"./mail-CUfpnKmW.js";import{A as xt}from"./avatar-kb7BRIj-.js";import{M as $i,a as Li,b as Ca,c as Pi,s as Sa,d as Ta,e as Di,f as Fi,S as ln,g as Ia,u as Ra,p as Oi,r as zi}from"./useSearchTokenContext-sk7n5_Wa.js";import{C as _i,D as We,u as Ui}from"./index-CLDSMpwb.js";import{E as Ea}from"./EmptyState-B51IVrJy.js";import{E as Ue}from"./ErrorState-DsBtijJZ.js";import{D as Bi}from"./download-CkEmIWry.js";import{g as Ki}from"./useMessageBodyContent-CqnK7vFx.js";import{C as Hi}from"./calendar-event-chip-BBHc41iQ.js";import{c as Qi}from"./calendar-color-C9vd3NQU.js";import{R as qi,M as Gi}from"./attendee-row-CGWfa3DU.js";import{C as Ma}from"./clock-BZGi8qZp.js";import{M as Wi,G as Vi}from"./map-pin-BAQN6x3n.js";import{B as Yi,b as Xi,u as Ji,i as Zi}from"./useLayoutTier-CqqMDWMQ.js";import{S as el,C as Aa}from"./shield-check-CdBctVu5.js";import{u as $a}from"./useDebouncedValue-B17cbPWx.js";import{h as cn,u as tl,a as sl,i as nl,n as al,o as rl,j as ol,k as il,S as ll}from"./useFilters-EUeKL3LS.js";import{u as zs}from"./useQueries-DLtTi8je.js";import{C as Ft}from"./confirm-dialog-BP0RGVB7.js";import{r as cl,a as dl}from"./search-scope-B5-OK3Cq.js";import{M as ul}from"./menu-C_ItFy3L.js";function bt(e){if(fl())e.focus({preventScroll:!0});else{let t=ml(e);e.focus(),pl(t)}}let Ot=null;function fl(){if(Ot==null){Ot=!1;try{document.createElement("div").focus({get preventScroll(){return Ot=!0,!0}})}catch{}}return Ot}function ml(e){let t=e.parentNode,n=[],a=document.scrollingElement||document.documentElement;for(;t instanceof HTMLElement&&t!==a;)(t.offsetHeight<t.scrollHeight||t.offsetWidth<t.scrollWidth)&&n.push({element:t,scrollTop:t.scrollTop,scrollLeft:t.scrollLeft}),t=t.parentNode;return a instanceof HTMLElement&&n.push({element:a,scrollTop:a.scrollTop,scrollLeft:a.scrollLeft}),n}function pl(e){for(let{element:t,scrollTop:n,scrollLeft:a}of e)t.scrollTop=n,t.scrollLeft=a}const Ee=e=>e?.ownerDocument??document,Me=e=>e&&"window"in e&&e.window===e?e:Ee(e).defaultView||window;function hl(e){return e!==null&&typeof e=="object"&&"nodeType"in e&&typeof e.nodeType=="number"}function gl(e){return hl(e)&&e.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&"host"in e}let xl=!1;function La(){return xl}function xe(e,t){if(!La())return t&&e?e.contains(t):!1;if(!e||!t)return!1;let n=t;for(;n!==null;){if(n===e)return!0;n.tagName==="SLOT"&&n.assignedSlot?n=n.assignedSlot.parentNode:gl(n)?n=n.host:n=n.parentNode}return!1}function te(e){if(La()&&e.target instanceof Element&&e.target.shadowRoot){if("composedPath"in e)return e.composedPath()[0]??null;if("composedPath"in e.nativeEvent)return e.nativeEvent.composedPath()[0]??null}return e.target}const bl=typeof Element<"u"&&"checkVisibility"in Element.prototype;function vl(e){const t=Me(e);if(!(e instanceof t.HTMLElement)&&!(e instanceof t.SVGElement))return!1;let{display:n,visibility:a}=e.style,r=n!=="none"&&a!=="hidden"&&a!=="collapse";if(r){const{getComputedStyle:o}=Me(e);let{display:i,visibility:c}=o(e);r=i!=="none"&&c!=="hidden"&&c!=="collapse"}return r}function yl(e,t){return!e.hasAttribute("hidden")&&!e.hasAttribute("data-react-aria-prevent-focus")&&(e.nodeName==="DETAILS"&&t&&t.nodeName!=="SUMMARY"?e.hasAttribute("open"):!0)}function Pa(e,t){return bl?e.checkVisibility({visibilityProperty:!0})&&!e.closest("[data-react-aria-prevent-focus]"):e.nodeName!=="#comment"&&vl(e)&&yl(e,t)&&(!e.parentElement||Pa(e.parentElement,e))}const Da=["input:not([disabled]):not([type=hidden])","select:not([disabled])","textarea:not([disabled])","button:not([disabled])","a[href]","area[href]","summary","iframe","object","embed","audio[controls]","video[controls]",'[contenteditable]:not([contenteditable^="false"])',"permission"],kl=Da.join(":not([hidden]),")+",[tabindex]:not([disabled]):not([hidden])";Da.push('[tabindex]:not([tabindex="-1"]):not([disabled])');function jl(e,t){return e.matches(kl)&&!wl(e)&&(t?.skipVisibilityCheck||Pa(e))}function wl(e){let t=e;for(;t!=null;){if(t instanceof Me(t).HTMLElement&&t.inert)return!0;t=t.parentElement}return!1}const _s=typeof document<"u"?As.useLayoutEffect:()=>{};function Nl(e){let t=e;return t.nativeEvent=e,t.isDefaultPrevented=()=>t.defaultPrevented,t.isPropagationStopped=()=>t.cancelBubble,t.persist=()=>{},t}function Cl(e,t){Object.defineProperty(e,"target",{value:t}),Object.defineProperty(e,"currentTarget",{value:t})}function Sl(e){for(;e&&!jl(e,{skipVisibilityCheck:!0});)e=e.parentElement;let t=Me(e),n=t.document.activeElement;if(!n||n===e)return;let a=!1,r=g=>{(te(g)===n||a)&&g.stopImmediatePropagation()},o=g=>{(te(g)===n||a)&&(g.stopImmediatePropagation(),!e&&!a&&(a=!0,bt(n),d()))},i=g=>{(te(g)===e||a)&&g.stopImmediatePropagation()},c=g=>{(te(g)===e||a)&&(g.stopImmediatePropagation(),a||(a=!0,bt(n),d()))};t.addEventListener("blur",r,!0),t.addEventListener("focusout",o,!0),t.addEventListener("focusin",c,!0),t.addEventListener("focus",i,!0);let d=()=>{cancelAnimationFrame(x),t.removeEventListener("blur",r,!0),t.removeEventListener("focusout",o,!0),t.removeEventListener("focusin",c,!0),t.removeEventListener("focus",i,!0),a=!1},x=requestAnimationFrame(d);return d}function Yt(e){if(typeof window>"u"||window.navigator==null)return!1;let t=window.navigator.userAgentData?.brands;return Array.isArray(t)&&t.some(n=>e.test(n.brand))||e.test(window.navigator.userAgent)}function Us(e){return typeof window<"u"&&window.navigator!=null?e.test(window.navigator.userAgentData?.platform||window.navigator.platform):!1}function De(e){let t=null;return()=>(t==null&&(t=e()),t)}const Bt=De(function(){return Us(/^Mac/i)}),Tl=De(function(){return Us(/^iPhone/i)}),Fa=De(function(){return Us(/^iPad/i)||Bt()&&navigator.maxTouchPoints>1}),Oa=De(function(){return Tl()||Fa()}),Il=De(function(){return Yt(/AppleWebKit/i)&&!Rl()}),Rl=De(function(){return Yt(/Chrome/i)}),za=De(function(){return Yt(/Android/i)}),El=De(function(){return Yt(/Firefox/i)});function Ml(e){return e.pointerType===""&&e.isTrusted?!0:za()&&e.pointerType?e.type==="click"&&e.buttons===1:e.detail===0&&!e.pointerType}function Al(e){return!za()&&e.width===0&&e.height===0||e.width===1&&e.height===1&&e.pressure===0&&e.detail===0&&e.pointerType==="mouse"}function vt(e,t,n=!0){let{metaKey:a,ctrlKey:r,altKey:o,shiftKey:i}=t;El()&&window.event?.type?.startsWith("key")&&e.target==="_blank"&&(Bt()?a=!0:r=!0);let c=Il()&&Bt()&&!Fa()?new KeyboardEvent("keydown",{keyIdentifier:"Enter",metaKey:a,ctrlKey:r,altKey:o,shiftKey:i}):new MouseEvent("click",{metaKey:a,ctrlKey:r,altKey:o,shiftKey:i,detail:1,bubbles:!0,cancelable:!0});vt.isOpening=n,bt(e),e.dispatchEvent(c),vt.isOpening=!1}vt.isOpening=!1;let Re=new Map,ks=new Set;function dn(){if(typeof window>"u")return;function e(a){return"propertyName"in a}let t=a=>{let r=te(a);if(!e(a)||!r)return;let o=Re.get(r);o||(o=new Set,Re.set(r,o),r.addEventListener("transitioncancel",n,{once:!0})),o.add(a.propertyName)},n=a=>{let r=te(a);if(!e(a)||!r)return;let o=Re.get(r);if(o&&(o.delete(a.propertyName),o.size===0&&(r.removeEventListener("transitioncancel",n),Re.delete(r)),Re.size===0)){for(let i of ks)i();ks.clear()}};document.body.addEventListener("transitionrun",t),document.body.addEventListener("transitionend",n)}typeof document<"u"&&(document.readyState!=="loading"?dn():document.addEventListener("DOMContentLoaded",dn));function $l(){for(const[e]of Re)"isConnected"in e&&!e.isConnected&&Re.delete(e)}function Ll(e){requestAnimationFrame(()=>{$l(),Re.size===0?e():ks.add(e)})}function _a(...e){return(...t)=>{for(let n of e)typeof n=="function"&&n(...t)}}let js=new Map;typeof FinalizationRegistry<"u"&&new FinalizationRegistry(e=>{js.delete(e)});function Pl(e,t){if(e===t)return e;let n=js.get(e);if(n)return n.forEach(r=>r.current=t),t;let a=js.get(t);return a?(a.forEach(r=>r.current=e),e):t}function Dl(...e){return e.length===1&&e[0]?e[0]:t=>{let n=!1;const a=e.map(r=>{const o=un(r,t);return n||=typeof o=="function",o});if(n)return()=>{a.forEach((r,o)=>{typeof r=="function"?r():un(e[o],null)})}}}function un(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function It(...e){let t={...e[0]};for(let n=1;n<e.length;n++){let a=e[n];for(let r in a){let o=t[r],i=a[r];typeof o=="function"&&typeof i=="function"&&r[0]==="o"&&r[1]==="n"&&r.charCodeAt(2)>=65&&r.charCodeAt(2)<=90?t[r]=_a(o,i):(r==="className"||r==="UNSAFE_className")&&typeof o=="string"&&typeof i=="string"?t[r]=Ur(o,i):r==="id"&&o&&i?t.id=Pl(o,i):r==="ref"&&o&&i?t.ref=Dl(o,i):t[r]=i!==void 0?i:o}}return t}function Fl(e,t){_s(()=>{if(e&&e.ref&&t)return e.ref.current=t.current,()=>{e.ref&&(e.ref.current=null)}})}const Ol=As.useInsertionEffect??_s;function us(e){const t=l.useRef(null);return Ol(()=>{t.current=e},[e]),l.useCallback((...n)=>{const a=t.current;return a?.(...n)},[])}let Ve="default",ws="",Ut=new WeakMap;function zl(e){if(Oa()){if(Ve==="default"){const t=Ee(e);ws=t.documentElement.style.webkitUserSelect,t.documentElement.style.webkitUserSelect="none"}Ve="disabled"}else if(e instanceof HTMLElement||e instanceof SVGElement){let t="userSelect"in e.style?"userSelect":"webkitUserSelect";Ut.set(e,e.style[t]),e.style[t]="none"}}function fn(e){if(Oa()){if(Ve!=="disabled")return;Ve="restoring",setTimeout(()=>{Ll(()=>{if(Ve==="restoring"){const t=Ee(e);t.documentElement.style.webkitUserSelect==="none"&&(t.documentElement.style.webkitUserSelect=ws||""),ws="",Ve="default"}})},300)}else if((e instanceof HTMLElement||e instanceof SVGElement)&&e&&Ut.has(e)){let t=Ut.get(e),n="userSelect"in e.style?"userSelect":"webkitUserSelect";e.style[n]==="none"&&(e.style[n]=t),e.getAttribute("style")===""&&e.removeAttribute("style"),Ut.delete(e)}}function mn(e){return e?.defaultView?.__webpack_nonce__||globalThis.__webpack_nonce__||void 0}let fs=new WeakMap;function _l(e){let t=e??(typeof document<"u"?document:void 0);if(!t)return mn(t);if(fs.has(t))return fs.get(t);let n=t.querySelector('meta[property="csp-nonce"]'),a=n&&n instanceof Me(n).HTMLMetaElement&&(n.nonce||n.content)||mn(t)||void 0;return a!==void 0&&fs.set(t,a),a}const Ua=As.createContext({register:()=>{}});Ua.displayName="PressResponderContext";function Ba(){let e=l.useRef(new Map),t=l.useCallback((r,o,i,c)=>{let d=c?.once?(...x)=>{e.current.delete(i),i(...x)}:i;e.current.set(i,{type:o,eventTarget:r,fn:d,options:c}),r.addEventListener(o,d,c)},[]),n=l.useCallback((r,o,i,c)=>{let d=e.current.get(i)?.fn||i;r.removeEventListener(o,d,c),e.current.delete(i)},[]),a=l.useCallback(()=>{e.current.forEach((r,o)=>{n(r.eventTarget,r.type,o,r.options)})},[n]);return l.useEffect(()=>a,[a]),{addGlobalListener:t,removeGlobalListener:n,removeAllGlobalListeners:a}}function Ul(e){let t=l.useContext(Ua);if(t){let{register:n,ref:a,...r}=t;e=It(r,e),n()}return Fl(t,e.ref),e}class zt{#e;constructor(t,n,a,r){this.#e=!0;const i=(r?.target??a.currentTarget)?.getBoundingClientRect();let c,d=0,x,g=null;a.clientX!=null&&a.clientY!=null&&(x=a.clientX,g=a.clientY),i&&(x!=null&&g!=null?(c=x-i.left,d=g-i.top):(c=i.width/2,d=i.height/2)),this.type=t,this.pointerType=n,this.target=a.currentTarget,this.shiftKey=a.shiftKey,this.metaKey=a.metaKey,this.ctrlKey=a.ctrlKey,this.altKey=a.altKey,this.x=c,this.y=d,this.key=a.key}continuePropagation(){this.#e=!1}get shouldStopPropagation(){return this.#e}}const pn=Symbol("linkClicked"),hn="react-aria-pressable-style",gn="data-react-aria-pressable";function Bl(e){let{onPress:t,onPressChange:n,onPressStart:a,onPressEnd:r,onPressUp:o,onClick:i,isDisabled:c,isPressed:d,preventFocusOnPress:x,shouldCancelOnPointerExit:g,allowTextSelectionOnPress:v,ref:f,...b}=Ul(e),[m,p]=l.useState(!1),u=l.useRef({isPressed:!1,ignoreEmulatedMouseEvents:!1,didFirePressStart:!1,isTriggeringEvent:!1,activePointerId:null,target:null,isOverTarget:!1,pointerType:null,disposables:[]}),{addGlobalListener:h,removeAllGlobalListeners:j}=Ba(),y=l.useCallback((w,R)=>{let F=u.current;if(c||F.didFirePressStart)return!1;let N=!0;if(F.isTriggeringEvent=!0,a){let L=new zt("pressstart",R,w);a(L),N=L.shouldStopPropagation}return n&&n(!0),F.isTriggeringEvent=!1,F.didFirePressStart=!0,p(!0),N},[c,a,n]),k=l.useCallback((w,R,F=!0)=>{let N=u.current;if(!N.didFirePressStart)return!1;N.didFirePressStart=!1,N.isTriggeringEvent=!0;let L=!0;if(r){let C=new zt("pressend",R,w);r(C),L=C.shouldStopPropagation}if(n&&n(!1),p(!1),t&&F&&!c){let C=new zt("press",R,w);t(C),L&&=C.shouldStopPropagation}return N.isTriggeringEvent=!1,L},[c,r,n,t]),S=us(k),I=l.useCallback((w,R)=>{let F=u.current;if(c)return!1;if(o){F.isTriggeringEvent=!0;let N=new zt("pressup",R,w);return o(N),F.isTriggeringEvent=!1,N.shouldStopPropagation}return!0},[c,o]),A=us(I),P=l.useCallback(w=>{let R=u.current;if(R.isPressed&&R.target){R.didFirePressStart&&R.pointerType!=null&&k(_e(R.target,w),R.pointerType,!1),R.isPressed=!1,R.isOverTarget=!1,R.activePointerId=null,R.pointerType=null,j(),v||fn(R.target);for(let F of R.disposables)F();R.disposables=[]}},[v,j,k]),$=us(P);l.useEffect(()=>{c&&u.current.isPressed&&$({currentTarget:u.current.target,shiftKey:!1,ctrlKey:!1,metaKey:!1,altKey:!1})},[c]);let D=l.useCallback(w=>{g&&P(w)},[g,P]),M=l.useCallback(w=>{c||i?.(w)},[c,i]),U=l.useCallback((w,R)=>{if(!c&&i){let F=new MouseEvent("click",w);Cl(F,R),i(Nl(F))}},[c,i]),z=l.useMemo(()=>{let w=u.current,R={onKeyDown(N){if(ms(N.nativeEvent,N.currentTarget)&&xe(N.currentTarget,te(N))){xn(te(N),N.key)&&N.preventDefault();let L=!0;!w.isPressed&&!N.repeat&&(w.target=N.currentTarget,w.isPressed=!0,w.pointerType="keyboard",L=y(N,"keyboard"));let C=N.currentTarget,B=_=>{ms(_,C)&&!_.repeat&&xe(C,te(_))&&w.target&&A(_e(w.target,_),"keyboard")};h(Ee(N.currentTarget),"keyup",_a(B,F),!0),L&&N.stopPropagation(),N.metaKey&&Bt()&&w.metaKeyEvents?.set(N.key,N.nativeEvent)}else N.key==="Meta"&&(w.metaKeyEvents=new Map)},onClick(N){if(!(N&&!xe(N.currentTarget,te(N)))&&N&&N.button===0&&!w.isTriggeringEvent&&!vt.isOpening){let L=!0;if(c&&N.preventDefault(),!w.ignoreEmulatedMouseEvents&&!w.isPressed&&(w.pointerType==="virtual"||Ml(N.nativeEvent))){let C=y(N,"virtual"),B=A(N,"virtual"),_=S(N,"virtual");M(N),L=C&&B&&_}else if(w.isPressed&&w.pointerType!=="keyboard"){let C=w.pointerType||N.nativeEvent.pointerType||"virtual",B=A(_e(N.currentTarget,N),C),_=S(_e(N.currentTarget,N),C,!0);L=B&&_,w.isOverTarget=!1,M(N),$(N)}w.ignoreEmulatedMouseEvents=!1,L&&N.stopPropagation()}}},F=N=>{if(w.isPressed&&w.target&&ms(N,w.target)){xn(te(N),N.key)&&N.preventDefault();let L=te(N),C=xe(w.target,L);S(_e(w.target,N),"keyboard",C),C&&U(N,w.target),j(),N.key!=="Enter"&&Bs(w.target)&&xe(w.target,L)&&!N[pn]&&(N[pn]=!0,vt(w.target,N,!1)),w.isPressed=!1,w.metaKeyEvents?.delete(N.key)}else if(N.key==="Meta"&&w.metaKeyEvents?.size){let L=w.metaKeyEvents;w.metaKeyEvents=void 0;for(let C of L.values())w.target?.dispatchEvent(new KeyboardEvent("keyup",C))}};if(typeof PointerEvent<"u"){R.onPointerDown=C=>{if(C.button!==0||!xe(C.currentTarget,te(C)))return;if(Al(C.nativeEvent)){w.pointerType="virtual";return}w.pointerType=C.pointerType;let B=!0;if(!w.isPressed){w.isPressed=!0,w.isOverTarget=!0,w.activePointerId=C.pointerId,w.target=C.currentTarget,v||zl(w.target),B=y(C,w.pointerType);let _=te(C);"releasePointerCapture"in _&&("hasPointerCapture"in _?_.hasPointerCapture(C.pointerId)&&_.releasePointerCapture(C.pointerId):_.releasePointerCapture(C.pointerId)),h(Ee(C.currentTarget),"pointerup",N,!1),h(Ee(C.currentTarget),"pointercancel",L,!1)}B&&C.stopPropagation()},R.onMouseDown=C=>{if(xe(C.currentTarget,te(C))&&C.button===0){if(x){let B=Sl(C.target);B&&w.disposables.push(B)}C.stopPropagation()}},R.onPointerUp=C=>{!xe(C.currentTarget,te(C))||w.pointerType==="virtual"||C.button===0&&!w.isPressed&&A(C,w.pointerType||C.pointerType)},R.onPointerEnter=C=>{C.pointerId===w.activePointerId&&w.target&&!w.isOverTarget&&w.pointerType!=null&&(w.isOverTarget=!0,y(_e(w.target,C),w.pointerType))},R.onPointerLeave=C=>{C.pointerId===w.activePointerId&&w.target&&w.isOverTarget&&w.pointerType!=null&&(w.isOverTarget=!1,S(_e(w.target,C),w.pointerType,!1),D(C))};let N=C=>{if(C.pointerId===w.activePointerId&&w.isPressed&&C.button===0&&w.target){if(xe(w.target,te(C))&&w.pointerType!=null){let B=!1,_=setTimeout(()=>{w.isPressed&&w.target instanceof HTMLElement&&(B?$(C):(bt(w.target),w.target.click()))},80);h(C.currentTarget,"click",()=>B=!0,!0),w.disposables.push(()=>clearTimeout(_))}else $(C);w.isOverTarget=!1}},L=C=>{$(C)};R.onDragStart=C=>{xe(C.currentTarget,te(C))&&$(C)}}return R},[h,c,x,j,v,D,y,M,U]);return l.useEffect(()=>{if(!f)return;const w=Ee(f.current);if(!w||!w.head||w.getElementById(hn))return;const R=w.createElement("style");R.id=hn;let F=_l(w);F&&(R.nonce=F),R.textContent=`
2
2
  @layer {
3
3
  [${gn}] {
4
4
  touch-action: pan-x pan-y pinch-zoom;
@@ -1 +1 @@
1
- import{e as D,r as h,j as e,W as ae,Y as ne,Z as U,t as N,_ as T,$ as V,a0 as re,a1 as G,a2 as ie,a3 as le,X as oe,a4 as ce,a5 as ue,a6 as de,a7 as xe,a8 as fe,I as me,a9 as he,aa as ge,ab as I,ac as pe,h as be,C as ve,ad as je,K as ye,c as Ne,ae as Se,af as ke,ag as M,ah as Ce,ai as w,aj as we,D as Oe,v as ze}from"./index-Dy5D6YkV.js";import{u as Re}from"./roving-focus-BOWQw34Y.js";import{B as Ae,a as Ie}from"./useLayoutTier-BiCLmmpl.js";import{u as Ee}from"./useQueries-BuVSZIL7.js";import{i as Le}from"./outbox-status-BlKn6P0x.js";import{B as Fe}from"./bug-BCJlsHb-.js";const Pe=D("BookmarkPlus",[["path",{d:"m19 21-7-4-7 4V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2v16z",key:"1fy3hk"}],["line",{x1:"12",x2:"12",y1:"7",y2:"13",key:"1cppfj"}],["line",{x1:"15",x2:"9",y1:"10",y2:"10",key:"1gty7f"}]]);const Me=D("LogOut",[["path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4",key:"1uf3rs"}],["polyline",{points:"16 17 21 12 16 7",key:"1gabdz"}],["line",{x1:"21",x2:"9",y1:"12",y2:"12",key:"1uyos4"}]]);const De=D("Settings",[["path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z",key:"1qme2f"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]),_e="button:not([disabled]), a[href]",O="outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:ring-offset-surface-sunken";function Be({active:s,dimmed:t,indent:a}){return N("flex w-full items-center gap-2 rounded-md px-2 py-1 text-left text-sm transition-colors",O,a&&"pl-7",s?"bg-accent-2-soft font-medium text-accent-2":"text-fg-muted hover:bg-surface hover:text-fg",t&&"opacity-55")}function Te({icon:s,label:t,count:a,active:n}){return e.jsxs(e.Fragment,{children:[s&&e.jsx("span",{className:N("shrink-0",n?"text-accent-2":"text-fg-subtle"),children:s}),e.jsx("span",{className:"flex-1 truncate",children:t}),a!=null&&a>0&&e.jsx("span",{className:N("text-2xs tabular-nums",n?"text-accent-2":"text-fg-subtle"),children:a})]})}function A({icon:s,label:t,count:a,active:n,dimmed:o,indent:l,navId:u,linkComponent:g,ariaLabel:x,title:v,onClick:j}){const p=Be({active:n,dimmed:o,indent:l}),d=e.jsx(Te,{icon:s,label:t,count:a,active:n});return u&&g?g({navId:u,className:p,ariaLabel:x??t,title:v,onClick:j,children:d}):e.jsx("button",{type:"button",onClick:j,className:p,"aria-label":x,title:v,children:d})}const K={inbox:0,flagged:1,drafts:2,sent:3,archive:4,all:5,junk:6,trash:7};function Ve(s){switch(s){case"inbox":return e.jsx(me,{className:"size-4"});case"flagged":return e.jsx(U,{className:"size-4"});case"drafts":return e.jsx(fe,{className:"size-4"});case"sent":return e.jsx(G,{className:"size-4"});case"archive":return e.jsx(xe,{className:"size-4"});case"all":return e.jsx(de,{className:"size-4"});case"junk":return e.jsx(ue,{className:"size-4"});case"trash":return e.jsx(ce,{className:"size-4"})}}const q=s=>s.role!=null,P=8,Q="remit.nav.folders.open.",$="remit.nav.account.open.";function H(s,t,a){if(typeof localStorage>"u")return a;const n=localStorage.getItem(s+t);return n===null?a:n!=="0"}function W(s,t,a){typeof localStorage>"u"||localStorage.setItem(s+t,a?"1":"0")}function Ke({query:s,onSelect:t,onRemove:a}){return e.jsxs("div",{className:"group flex w-full items-center gap-1 rounded-md pr-1 hover:bg-surface",children:[e.jsxs("button",{type:"button",onClick:t,className:N("flex min-w-0 flex-1 items-center gap-2 px-2 py-1 text-left text-sm text-fg-muted transition-colors hover:text-fg",O),children:[e.jsx(le,{className:"size-4 shrink-0 text-fg-subtle"}),e.jsx("span",{className:"min-w-0 flex-1 truncate",children:s})]}),a&&e.jsx("button",{type:"button",onClick:a,"aria-label":`Remove saved search: ${s}`,className:N("shrink-0 rounded-full p-1 text-fg-subtle opacity-0 transition-opacity hover:bg-surface-sunken hover:text-fg group-hover:opacity-100 focus-visible:opacity-100",O),children:e.jsx(oe,{className:"size-3.5"})})]})}function qe({savedSearches:s,saveableQuery:t,onSelectSavedSearch:a,onRemoveSavedSearch:n,onSaveCurrentSearch:o}){return s.length===0&&!t?null:e.jsxs("div",{className:"mt-3",children:[e.jsx("div",{className:"px-2 pb-1 text-2xs font-semibold uppercase tracking-wider text-fg-subtle",children:"Saved searches"}),t&&e.jsxs("button",{type:"button",onClick:o,className:N("flex w-full items-center gap-2 rounded-md px-2 py-1 text-left text-sm text-accent transition-colors hover:bg-surface",O),children:[e.jsx(Pe,{className:"size-4 shrink-0"}),e.jsxs("span",{className:"min-w-0 flex-1 truncate",children:["Save “",t,"”"]})]}),s.map(l=>e.jsx(Ke,{query:l,onSelect:()=>a?.(l),onRemove:n?()=>n(l):void 0},l))]})}function Qe({account:s,selectedNavId:t,onSelectNav:a,linkComponent:n}){const[o,l]=h.useState(()=>H($,s.id,!0)),[u,g]=h.useState(()=>H(Q,s.id,!0)),[x,v]=h.useState(!1),j=()=>{l(r=>{const f=!r;return W($,s.id,f),f})},p=()=>{g(r=>{const f=!r;return W(Q,s.id,f),f})},d=s.mailboxes.filter(q).sort((r,f)=>K[r.role]-K[f.role]),c=s.mailboxes.filter(r=>!q(r)),S=x||c.length<=P?c:c.slice(0,P),z=c.length-S.length,R=s.status??"ready",F=R==="ready"&&d.length===0&&c.length===0;return e.jsxs("div",{className:"mt-3",children:[e.jsxs("button",{type:"button",onClick:j,"aria-expanded":o,className:N("flex w-full items-center gap-1.5 px-2 pb-1 text-left transition-colors hover:text-fg",O,s.muted&&"opacity-55"),children:[o?e.jsx(T,{className:"size-3 shrink-0 text-fg-subtle"}):e.jsx(V,{className:"size-3 shrink-0 text-fg-subtle"}),e.jsx("span",{className:"truncate text-2xs font-semibold uppercase tracking-wider text-fg-subtle",children:s.label}),s.muted&&e.jsxs(e.Fragment,{children:[e.jsx(Ae,{className:"size-3 shrink-0 text-fg-subtle"}),e.jsx("span",{className:"text-2xs text-fg-subtle",children:"muted"})]})]}),o&&e.jsxs(e.Fragment,{children:[R==="loading"&&e.jsx("div",{className:"px-2 py-1 text-sm text-fg-muted",children:"Loading…"}),R==="error"&&e.jsxs("div",{role:"alert",className:"mx-2 my-1 flex items-start gap-2 rounded-md border border-danger/40 bg-danger-soft px-2 py-1.5 text-sm",children:[e.jsx(re,{className:"mt-0.5 size-4 shrink-0 text-danger","aria-hidden":"true"}),e.jsx("div",{className:"min-w-0 flex-1",children:e.jsx("p",{className:"font-medium text-danger",children:"Couldn't load mailboxes"})}),s.onRetry&&e.jsx("button",{type:"button",onClick:s.onRetry,className:"shrink-0 text-sm font-medium text-accent hover:underline",children:"Retry"})]}),F&&e.jsx("div",{className:"px-2 py-1 text-sm text-fg-muted",children:"No mailboxes"}),R==="ready"&&e.jsxs(e.Fragment,{children:[d.map(r=>e.jsx(A,{navId:r.id,linkComponent:n,icon:Ve(r.role),label:r.name,ariaLabel:r.name,title:r.fullPath??r.name,count:r.unseen,active:t===r.id,dimmed:s.muted,onClick:()=>a?.(r.id)},r.id)),s.outboxPending!==void 0&&e.jsx(A,{navId:"outbox",linkComponent:n,icon:e.jsx(G,{className:"size-4"}),label:"Outbox",ariaLabel:"Outbox",count:s.outboxPending>0?s.outboxPending:void 0,active:t==="outbox",dimmed:s.muted,onClick:()=>a?.("outbox")}),c.length>0&&e.jsxs(e.Fragment,{children:[e.jsxs("button",{type:"button",onClick:p,"aria-expanded":u,className:N("mt-1 flex w-full items-center gap-1 px-2 py-1 text-left text-2xs font-semibold uppercase tracking-wider text-fg-subtle transition-colors hover:text-fg",O),children:[u?e.jsx(T,{className:"size-3 shrink-0"}):e.jsx(V,{className:"size-3 shrink-0"}),e.jsx("span",{className:"flex-1",children:"Folders"}),e.jsx("span",{className:"tabular-nums opacity-70",children:c.length})]}),u&&e.jsxs(e.Fragment,{children:[S.map(r=>e.jsx(A,{navId:r.id,linkComponent:n,icon:e.jsx(ie,{className:"size-4"}),label:r.name,ariaLabel:r.name,title:r.fullPath??r.name,count:r.unseen,active:t===r.id,dimmed:s.muted,onClick:()=>a?.(r.id)},r.id)),(z>0||x)&&c.length>P&&e.jsx("button",{type:"button",onClick:()=>v(r=>!r),className:N("ml-7 flex items-center px-2 py-1 text-2xs font-medium text-accent transition-colors hover:underline",O),children:x?"Show less":`Show all (${c.length})`})]})]})]})]})]})}function $e({accounts:s,selectedNavId:t,briefUnseen:a,onSelectNav:n,variant:o="desktop",linkComponent:l,calendarNav:u="hidden",savedSearches:g=[],saveableQuery:x,onSelectSavedSearch:v,onRemoveSavedSearch:j,onSaveCurrentSearch:p}){const d=h.useRef(null);Re({containerRef:d,itemSelector:_e});const c=o==="drawer",S=e.jsxs("nav",{ref:c?d:void 0,className:c?"px-2 py-2":"flex-1 overflow-y-auto px-2 py-2","aria-label":"Mailboxes",children:[e.jsx(A,{navId:"brief",linkComponent:l,icon:e.jsx(ae,{className:"size-4"}),label:"Daily brief",ariaLabel:"Daily brief",count:a,active:t==="brief",onClick:()=>n?.("brief")}),u==="shown"&&e.jsx(A,{navId:"calendar",linkComponent:l,icon:e.jsx(ne,{className:"size-4"}),label:"Calendar",ariaLabel:"Calendar",active:t==="calendar",onClick:()=>n?.("calendar")}),e.jsx(A,{navId:"flagged",linkComponent:l,icon:e.jsx(U,{className:"size-4"}),label:"Starred",ariaLabel:"Starred",active:t==="flagged",onClick:()=>n?.("flagged")}),e.jsx(qe,{savedSearches:g,saveableQuery:x,onSelectSavedSearch:v,onRemoveSavedSearch:j,onSaveCurrentSearch:p}),s.length===0?e.jsx("div",{className:"px-2 py-4 text-center text-sm text-fg-muted",children:"No accounts configured"}):s.map(z=>e.jsx(Qe,{account:z,selectedNavId:t,onSelectNav:n,linkComponent:l},z.id))]});return c?S:e.jsx("aside",{ref:d,className:"flex h-full w-full flex-col bg-surface-sunken",children:S})}function He(){const{pathname:s}=he(),t=ge({from:"/mail/$mailboxId",shouldThrow:!1});return I(s,"/settings")?"settings":I(s,"/calendar")?"calendar":I(s,"/mail/outbox")?"outbox":I(s,"/mail/flagged")?"flagged":I(s,"/mail/brief")?"brief":t?.mailboxId??""}const We=({children:s})=>{const{Account:t}=pe();return e.jsx(t,{children:s})},_="remit.savedSearches",Ye=25;function L(){try{const s=localStorage.getItem(_);if(!s)return[];const t=JSON.parse(s);return Array.isArray(t)?t.filter(a=>typeof a=="string"):[]}catch{return[]}}function Je(s){const t=s.trim();if(!t)return L();const a=[t,...L().filter(n=>n!==t)].slice(0,Ye);try{localStorage.setItem(_,JSON.stringify(a))}catch{return a}return a}function Ue(s){const t=L().filter(a=>a!==s);try{localStorage.setItem(_,JSON.stringify(t))}catch{return t}return t}const Y=s=>/^\d/.test(s),Ge=(s,t)=>{const a=Y(s),n=Y(t);return a&&!n?-1:!a&&n?1:s.localeCompare(t,void 0,{sensitivity:"base",numeric:!0})};function Xe(s,t,a){const n=[],o=[];for(const l of s)t.has(l.mailboxId)?n.push(l):o.push(l);return o.sort((l,u)=>Ge(M(l,void 0,a),M(u,void 0,a))),{system:n,labels:o}}function Ze(s,t,a){const n=Ce(t)&&s.unseenCount>0;return{id:s.mailboxId,name:M(s,t,a),unseen:n?s.unseenCount:void 0,role:t,fullPath:s.fullPath}}function J({accounts:s,onMailboxSelect:t,variant:a="desktop"}){const n=be(),o=Ie(),l=He(),{searchInput:u,onSearchChange:g}=ve(),[x,v]=h.useState(L),{t:j}=je("mail",{useSuspense:!1}),p=h.useCallback((i,b)=>j(i,{defaultValue:b}),[j]),d=Ee({queries:s.map(i=>({...ye({path:{accountId:i.accountId}}),staleTime:1/0}))}),{data:c}=Ne(Se()),S=h.useMemo(()=>(c?.items??[]).filter(i=>Le(i.status)).length,[c?.items]),z=h.useMemo(()=>s.map((i,b)=>{const m=d[b],k=m?.data?.items??[],y=ke(i.folderAppointments),{system:C,labels:se}=Xe(k,y,p),te=m?.isError?"error":m?.isLoading?"loading":"ready";return{id:i.accountId,label:i.email,email:i.email,muted:!!i.muted,outboxPending:S,status:te,onRetry:()=>m?.refetch(),mailboxes:[...C,...se].map(B=>Ze(B,y.get(B.mailboxId),p))}}),[s,d,S,p]),R=i=>{n.invalidateQueries({queryKey:we({path:{mailboxId:i},query:{order:"desc"}})})},F=({navId:i,className:b,ariaLabel:m,title:k,children:y,onClick:C})=>i==="brief"?e.jsx(w,{to:"/mail/brief",search:{q:void 0},activeOptions:{includeSearch:!1},onClick:()=>C?.(),className:b,"aria-label":m,title:k,children:y}):i==="calendar"?e.jsx(w,{to:"/calendar",onClick:()=>C?.(),className:b,"aria-label":m,title:k,children:y}):i==="outbox"?e.jsx(w,{to:"/mail/outbox",search:{q:void 0},onClick:()=>C?.(),className:b,"aria-label":m,title:k,children:y}):i==="flagged"?e.jsx(w,{to:"/mail/flagged",search:{q:void 0},onClick:()=>C?.(),className:b,"aria-label":m,title:k,children:y}):i==="settings"?e.jsx(w,{to:"/settings/accounts",onClick:()=>C?.(),className:b,"aria-label":m,title:k,children:y}):e.jsx(w,{to:"/mail/$mailboxId",params:{mailboxId:i},search:{q:void 0},onClick:()=>{R(i),C?.()},className:b,"aria-label":m,title:k,children:y}),r=()=>{g(""),t?.()},f=u.trim(),E=f.length>0&&!x.includes(f)?f:void 0,X=h.useCallback(()=>{E&&v(Je(E))},[E]),Z=h.useCallback(i=>{v(Ue(i))},[]),ee=h.useCallback(i=>{g(i),o(i),t?.()},[g,o,t]);return e.jsx($e,{accounts:z,selectedNavId:l,onSelectNav:r,linkComponent:F,calendarNav:"shown",variant:a,savedSearches:x,saveableQuery:E,onSaveCurrentSearch:X,onSelectSavedSearch:ee,onRemoveSavedSearch:Z})}function es(){return e.jsxs("button",{type:"button",onClick:Oe,className:"flex w-full items-center gap-2 rounded-md px-2 py-1 text-sm text-fg-muted transition-colors hover:bg-surface hover:text-fg",children:[e.jsx(Fe,{className:"size-4 shrink-0"}),e.jsx("span",{className:"flex-1 truncate text-left",children:"Report a bug"})]})}function ls({accounts:s,onMailboxSelect:t}){return ze()?.showNavPane??!0?e.jsx(J,{accounts:s}):e.jsxs("div",{className:"flex h-full flex-col",children:[e.jsx("div",{className:"flex-1 overflow-y-auto",children:e.jsx(J,{accounts:s,onMailboxSelect:t,variant:"drawer"})}),e.jsxs("div",{className:"border-t border-line px-2 py-2",children:[e.jsxs(w,{to:"/settings/accounts",onClick:t,children:[e.jsx(De,{className:"size-4 shrink-0"}),e.jsx("span",{className:"flex-1 truncate text-left",children:"Settings"})]}),e.jsx(es,{}),e.jsx(We,{children:({signOut:o})=>e.jsxs("button",{type:"button",onClick:()=>{t?.(),o()},className:"flex min-h-11 w-full items-center gap-2 rounded-md px-2 py-1 text-sm text-fg-muted transition-colors hover:bg-surface hover:text-fg","data-testid":"sign-out-button",children:[e.jsx(Me,{className:"size-4 shrink-0"}),e.jsx("span",{className:"flex-1 truncate text-left",children:"Sign out"})]})})]})]})}export{We as A,Me as L,ls as M,De as S};
1
+ import{e as D,r as h,j as e,W as ae,Y as ne,Z as U,t as N,_ as T,$ as V,a0 as re,a1 as G,a2 as ie,a3 as le,X as oe,a4 as ce,a5 as ue,a6 as de,a7 as xe,a8 as fe,I as me,a9 as he,aa as ge,ab as I,ac as pe,h as be,C as ve,ad as je,K as ye,c as Ne,ae as Se,af as ke,ag as M,ah as Ce,ai as w,aj as we,D as Oe,v as ze}from"./index-Pa-PXhYt.js";import{u as Re}from"./roving-focus-xdT_hFx-.js";import{B as Ae,a as Ie}from"./useLayoutTier-CqqMDWMQ.js";import{u as Ee}from"./useQueries-DLtTi8je.js";import{i as Le}from"./outbox-status-BlKn6P0x.js";import{B as Fe}from"./bug-CIR5aOCb.js";const Pe=D("BookmarkPlus",[["path",{d:"m19 21-7-4-7 4V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2v16z",key:"1fy3hk"}],["line",{x1:"12",x2:"12",y1:"7",y2:"13",key:"1cppfj"}],["line",{x1:"15",x2:"9",y1:"10",y2:"10",key:"1gty7f"}]]);const Me=D("LogOut",[["path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4",key:"1uf3rs"}],["polyline",{points:"16 17 21 12 16 7",key:"1gabdz"}],["line",{x1:"21",x2:"9",y1:"12",y2:"12",key:"1uyos4"}]]);const De=D("Settings",[["path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z",key:"1qme2f"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]),_e="button:not([disabled]), a[href]",O="outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:ring-offset-surface-sunken";function Be({active:s,dimmed:t,indent:a}){return N("flex w-full items-center gap-2 rounded-md px-2 py-1 text-left text-sm transition-colors",O,a&&"pl-7",s?"bg-accent-2-soft font-medium text-accent-2":"text-fg-muted hover:bg-surface hover:text-fg",t&&"opacity-55")}function Te({icon:s,label:t,count:a,active:n}){return e.jsxs(e.Fragment,{children:[s&&e.jsx("span",{className:N("shrink-0",n?"text-accent-2":"text-fg-subtle"),children:s}),e.jsx("span",{className:"flex-1 truncate",children:t}),a!=null&&a>0&&e.jsx("span",{className:N("text-2xs tabular-nums",n?"text-accent-2":"text-fg-subtle"),children:a})]})}function A({icon:s,label:t,count:a,active:n,dimmed:o,indent:l,navId:u,linkComponent:g,ariaLabel:x,title:v,onClick:j}){const p=Be({active:n,dimmed:o,indent:l}),d=e.jsx(Te,{icon:s,label:t,count:a,active:n});return u&&g?g({navId:u,className:p,ariaLabel:x??t,title:v,onClick:j,children:d}):e.jsx("button",{type:"button",onClick:j,className:p,"aria-label":x,title:v,children:d})}const K={inbox:0,flagged:1,drafts:2,sent:3,archive:4,all:5,junk:6,trash:7};function Ve(s){switch(s){case"inbox":return e.jsx(me,{className:"size-4"});case"flagged":return e.jsx(U,{className:"size-4"});case"drafts":return e.jsx(fe,{className:"size-4"});case"sent":return e.jsx(G,{className:"size-4"});case"archive":return e.jsx(xe,{className:"size-4"});case"all":return e.jsx(de,{className:"size-4"});case"junk":return e.jsx(ue,{className:"size-4"});case"trash":return e.jsx(ce,{className:"size-4"})}}const q=s=>s.role!=null,P=8,Q="remit.nav.folders.open.",$="remit.nav.account.open.";function H(s,t,a){if(typeof localStorage>"u")return a;const n=localStorage.getItem(s+t);return n===null?a:n!=="0"}function W(s,t,a){typeof localStorage>"u"||localStorage.setItem(s+t,a?"1":"0")}function Ke({query:s,onSelect:t,onRemove:a}){return e.jsxs("div",{className:"group flex w-full items-center gap-1 rounded-md pr-1 hover:bg-surface",children:[e.jsxs("button",{type:"button",onClick:t,className:N("flex min-w-0 flex-1 items-center gap-2 px-2 py-1 text-left text-sm text-fg-muted transition-colors hover:text-fg",O),children:[e.jsx(le,{className:"size-4 shrink-0 text-fg-subtle"}),e.jsx("span",{className:"min-w-0 flex-1 truncate",children:s})]}),a&&e.jsx("button",{type:"button",onClick:a,"aria-label":`Remove saved search: ${s}`,className:N("shrink-0 rounded-full p-1 text-fg-subtle opacity-0 transition-opacity hover:bg-surface-sunken hover:text-fg group-hover:opacity-100 focus-visible:opacity-100",O),children:e.jsx(oe,{className:"size-3.5"})})]})}function qe({savedSearches:s,saveableQuery:t,onSelectSavedSearch:a,onRemoveSavedSearch:n,onSaveCurrentSearch:o}){return s.length===0&&!t?null:e.jsxs("div",{className:"mt-3",children:[e.jsx("div",{className:"px-2 pb-1 text-2xs font-semibold uppercase tracking-wider text-fg-subtle",children:"Saved searches"}),t&&e.jsxs("button",{type:"button",onClick:o,className:N("flex w-full items-center gap-2 rounded-md px-2 py-1 text-left text-sm text-accent transition-colors hover:bg-surface",O),children:[e.jsx(Pe,{className:"size-4 shrink-0"}),e.jsxs("span",{className:"min-w-0 flex-1 truncate",children:["Save “",t,"”"]})]}),s.map(l=>e.jsx(Ke,{query:l,onSelect:()=>a?.(l),onRemove:n?()=>n(l):void 0},l))]})}function Qe({account:s,selectedNavId:t,onSelectNav:a,linkComponent:n}){const[o,l]=h.useState(()=>H($,s.id,!0)),[u,g]=h.useState(()=>H(Q,s.id,!0)),[x,v]=h.useState(!1),j=()=>{l(r=>{const f=!r;return W($,s.id,f),f})},p=()=>{g(r=>{const f=!r;return W(Q,s.id,f),f})},d=s.mailboxes.filter(q).sort((r,f)=>K[r.role]-K[f.role]),c=s.mailboxes.filter(r=>!q(r)),S=x||c.length<=P?c:c.slice(0,P),z=c.length-S.length,R=s.status??"ready",F=R==="ready"&&d.length===0&&c.length===0;return e.jsxs("div",{className:"mt-3",children:[e.jsxs("button",{type:"button",onClick:j,"aria-expanded":o,className:N("flex w-full items-center gap-1.5 px-2 pb-1 text-left transition-colors hover:text-fg",O,s.muted&&"opacity-55"),children:[o?e.jsx(T,{className:"size-3 shrink-0 text-fg-subtle"}):e.jsx(V,{className:"size-3 shrink-0 text-fg-subtle"}),e.jsx("span",{className:"truncate text-2xs font-semibold uppercase tracking-wider text-fg-subtle",children:s.label}),s.muted&&e.jsxs(e.Fragment,{children:[e.jsx(Ae,{className:"size-3 shrink-0 text-fg-subtle"}),e.jsx("span",{className:"text-2xs text-fg-subtle",children:"muted"})]})]}),o&&e.jsxs(e.Fragment,{children:[R==="loading"&&e.jsx("div",{className:"px-2 py-1 text-sm text-fg-muted",children:"Loading…"}),R==="error"&&e.jsxs("div",{role:"alert",className:"mx-2 my-1 flex items-start gap-2 rounded-md border border-danger/40 bg-danger-soft px-2 py-1.5 text-sm",children:[e.jsx(re,{className:"mt-0.5 size-4 shrink-0 text-danger","aria-hidden":"true"}),e.jsx("div",{className:"min-w-0 flex-1",children:e.jsx("p",{className:"font-medium text-danger",children:"Couldn't load mailboxes"})}),s.onRetry&&e.jsx("button",{type:"button",onClick:s.onRetry,className:"shrink-0 text-sm font-medium text-accent hover:underline",children:"Retry"})]}),F&&e.jsx("div",{className:"px-2 py-1 text-sm text-fg-muted",children:"No mailboxes"}),R==="ready"&&e.jsxs(e.Fragment,{children:[d.map(r=>e.jsx(A,{navId:r.id,linkComponent:n,icon:Ve(r.role),label:r.name,ariaLabel:r.name,title:r.fullPath??r.name,count:r.unseen,active:t===r.id,dimmed:s.muted,onClick:()=>a?.(r.id)},r.id)),s.outboxPending!==void 0&&e.jsx(A,{navId:"outbox",linkComponent:n,icon:e.jsx(G,{className:"size-4"}),label:"Outbox",ariaLabel:"Outbox",count:s.outboxPending>0?s.outboxPending:void 0,active:t==="outbox",dimmed:s.muted,onClick:()=>a?.("outbox")}),c.length>0&&e.jsxs(e.Fragment,{children:[e.jsxs("button",{type:"button",onClick:p,"aria-expanded":u,className:N("mt-1 flex w-full items-center gap-1 px-2 py-1 text-left text-2xs font-semibold uppercase tracking-wider text-fg-subtle transition-colors hover:text-fg",O),children:[u?e.jsx(T,{className:"size-3 shrink-0"}):e.jsx(V,{className:"size-3 shrink-0"}),e.jsx("span",{className:"flex-1",children:"Folders"}),e.jsx("span",{className:"tabular-nums opacity-70",children:c.length})]}),u&&e.jsxs(e.Fragment,{children:[S.map(r=>e.jsx(A,{navId:r.id,linkComponent:n,icon:e.jsx(ie,{className:"size-4"}),label:r.name,ariaLabel:r.name,title:r.fullPath??r.name,count:r.unseen,active:t===r.id,dimmed:s.muted,onClick:()=>a?.(r.id)},r.id)),(z>0||x)&&c.length>P&&e.jsx("button",{type:"button",onClick:()=>v(r=>!r),className:N("ml-7 flex items-center px-2 py-1 text-2xs font-medium text-accent transition-colors hover:underline",O),children:x?"Show less":`Show all (${c.length})`})]})]})]})]})]})}function $e({accounts:s,selectedNavId:t,briefUnseen:a,onSelectNav:n,variant:o="desktop",linkComponent:l,calendarNav:u="hidden",savedSearches:g=[],saveableQuery:x,onSelectSavedSearch:v,onRemoveSavedSearch:j,onSaveCurrentSearch:p}){const d=h.useRef(null);Re({containerRef:d,itemSelector:_e});const c=o==="drawer",S=e.jsxs("nav",{ref:c?d:void 0,className:c?"px-2 py-2":"flex-1 overflow-y-auto px-2 py-2","aria-label":"Mailboxes",children:[e.jsx(A,{navId:"brief",linkComponent:l,icon:e.jsx(ae,{className:"size-4"}),label:"Daily brief",ariaLabel:"Daily brief",count:a,active:t==="brief",onClick:()=>n?.("brief")}),u==="shown"&&e.jsx(A,{navId:"calendar",linkComponent:l,icon:e.jsx(ne,{className:"size-4"}),label:"Calendar",ariaLabel:"Calendar",active:t==="calendar",onClick:()=>n?.("calendar")}),e.jsx(A,{navId:"flagged",linkComponent:l,icon:e.jsx(U,{className:"size-4"}),label:"Starred",ariaLabel:"Starred",active:t==="flagged",onClick:()=>n?.("flagged")}),e.jsx(qe,{savedSearches:g,saveableQuery:x,onSelectSavedSearch:v,onRemoveSavedSearch:j,onSaveCurrentSearch:p}),s.length===0?e.jsx("div",{className:"px-2 py-4 text-center text-sm text-fg-muted",children:"No accounts configured"}):s.map(z=>e.jsx(Qe,{account:z,selectedNavId:t,onSelectNav:n,linkComponent:l},z.id))]});return c?S:e.jsx("aside",{ref:d,className:"flex h-full w-full flex-col bg-surface-sunken",children:S})}function He(){const{pathname:s}=he(),t=ge({from:"/mail/$mailboxId",shouldThrow:!1});return I(s,"/settings")?"settings":I(s,"/calendar")?"calendar":I(s,"/mail/outbox")?"outbox":I(s,"/mail/flagged")?"flagged":I(s,"/mail/brief")?"brief":t?.mailboxId??""}const We=({children:s})=>{const{Account:t}=pe();return e.jsx(t,{children:s})},_="remit.savedSearches",Ye=25;function L(){try{const s=localStorage.getItem(_);if(!s)return[];const t=JSON.parse(s);return Array.isArray(t)?t.filter(a=>typeof a=="string"):[]}catch{return[]}}function Je(s){const t=s.trim();if(!t)return L();const a=[t,...L().filter(n=>n!==t)].slice(0,Ye);try{localStorage.setItem(_,JSON.stringify(a))}catch{return a}return a}function Ue(s){const t=L().filter(a=>a!==s);try{localStorage.setItem(_,JSON.stringify(t))}catch{return t}return t}const Y=s=>/^\d/.test(s),Ge=(s,t)=>{const a=Y(s),n=Y(t);return a&&!n?-1:!a&&n?1:s.localeCompare(t,void 0,{sensitivity:"base",numeric:!0})};function Xe(s,t,a){const n=[],o=[];for(const l of s)t.has(l.mailboxId)?n.push(l):o.push(l);return o.sort((l,u)=>Ge(M(l,void 0,a),M(u,void 0,a))),{system:n,labels:o}}function Ze(s,t,a){const n=Ce(t)&&s.unseenCount>0;return{id:s.mailboxId,name:M(s,t,a),unseen:n?s.unseenCount:void 0,role:t,fullPath:s.fullPath}}function J({accounts:s,onMailboxSelect:t,variant:a="desktop"}){const n=be(),o=Ie(),l=He(),{searchInput:u,onSearchChange:g}=ve(),[x,v]=h.useState(L),{t:j}=je("mail",{useSuspense:!1}),p=h.useCallback((i,b)=>j(i,{defaultValue:b}),[j]),d=Ee({queries:s.map(i=>({...ye({path:{accountId:i.accountId}}),staleTime:1/0}))}),{data:c}=Ne(Se()),S=h.useMemo(()=>(c?.items??[]).filter(i=>Le(i.status)).length,[c?.items]),z=h.useMemo(()=>s.map((i,b)=>{const m=d[b],k=m?.data?.items??[],y=ke(i.folderAppointments),{system:C,labels:se}=Xe(k,y,p),te=m?.isError?"error":m?.isLoading?"loading":"ready";return{id:i.accountId,label:i.email,email:i.email,muted:!!i.muted,outboxPending:S,status:te,onRetry:()=>m?.refetch(),mailboxes:[...C,...se].map(B=>Ze(B,y.get(B.mailboxId),p))}}),[s,d,S,p]),R=i=>{n.invalidateQueries({queryKey:we({path:{mailboxId:i},query:{order:"desc"}})})},F=({navId:i,className:b,ariaLabel:m,title:k,children:y,onClick:C})=>i==="brief"?e.jsx(w,{to:"/mail/brief",search:{q:void 0},activeOptions:{includeSearch:!1},onClick:()=>C?.(),className:b,"aria-label":m,title:k,children:y}):i==="calendar"?e.jsx(w,{to:"/calendar",onClick:()=>C?.(),className:b,"aria-label":m,title:k,children:y}):i==="outbox"?e.jsx(w,{to:"/mail/outbox",search:{q:void 0},onClick:()=>C?.(),className:b,"aria-label":m,title:k,children:y}):i==="flagged"?e.jsx(w,{to:"/mail/flagged",search:{q:void 0},onClick:()=>C?.(),className:b,"aria-label":m,title:k,children:y}):i==="settings"?e.jsx(w,{to:"/settings/accounts",onClick:()=>C?.(),className:b,"aria-label":m,title:k,children:y}):e.jsx(w,{to:"/mail/$mailboxId",params:{mailboxId:i},search:{q:void 0},onClick:()=>{R(i),C?.()},className:b,"aria-label":m,title:k,children:y}),r=()=>{g(""),t?.()},f=u.trim(),E=f.length>0&&!x.includes(f)?f:void 0,X=h.useCallback(()=>{E&&v(Je(E))},[E]),Z=h.useCallback(i=>{v(Ue(i))},[]),ee=h.useCallback(i=>{g(i),o(i),t?.()},[g,o,t]);return e.jsx($e,{accounts:z,selectedNavId:l,onSelectNav:r,linkComponent:F,calendarNav:"shown",variant:a,savedSearches:x,saveableQuery:E,onSaveCurrentSearch:X,onSelectSavedSearch:ee,onRemoveSavedSearch:Z})}function es(){return e.jsxs("button",{type:"button",onClick:Oe,className:"flex w-full items-center gap-2 rounded-md px-2 py-1 text-sm text-fg-muted transition-colors hover:bg-surface hover:text-fg",children:[e.jsx(Fe,{className:"size-4 shrink-0"}),e.jsx("span",{className:"flex-1 truncate text-left",children:"Report a bug"})]})}function ls({accounts:s,onMailboxSelect:t}){return ze()?.showNavPane??!0?e.jsx(J,{accounts:s}):e.jsxs("div",{className:"flex h-full flex-col",children:[e.jsx("div",{className:"flex-1 overflow-y-auto",children:e.jsx(J,{accounts:s,onMailboxSelect:t,variant:"drawer"})}),e.jsxs("div",{className:"border-t border-line px-2 py-2",children:[e.jsxs(w,{to:"/settings/accounts",onClick:t,children:[e.jsx(De,{className:"size-4 shrink-0"}),e.jsx("span",{className:"flex-1 truncate text-left",children:"Settings"})]}),e.jsx(es,{}),e.jsx(We,{children:({signOut:o})=>e.jsxs("button",{type:"button",onClick:()=>{t?.(),o()},className:"flex min-h-11 w-full items-center gap-2 rounded-md px-2 py-1 text-sm text-fg-muted transition-colors hover:bg-surface hover:text-fg","data-testid":"sign-out-button",children:[e.jsx(Me,{className:"size-4 shrink-0"}),e.jsx("span",{className:"flex-1 truncate text-left",children:"Sign out"})]})})]})]})}export{We as A,Me as L,ls as M,De as S};
@@ -1 +1 @@
1
- import{ab as v,j as s,r as u,am as l,an as p}from"./index-Dy5D6YkV.js";import{F as x}from"./FullCompose-DFM5SSTD.js";import{a as m}from"./useMessageBodyContent-Dqn8BKJN.js";function S(o,n,r){if(o!==n)return r}function d(o,n){return o===""?"":n}function j({searchInput:o,committedQuery:n,urlQuery:r,pathname:t,listPath:a}){return!v(t,a)||n!==o?!1:n!==r}const c=u.createContext(null),C=({chrome:o,children:n})=>s.jsx(c.Provider,{value:o,children:n});function M({phone:o,list:n,reading:r,intelligence:t,hasThread:a=!1}){const e=u.useContext(c),f=m();if(!e)return s.jsx(l,{});const i={nav:e.nav,overlay:e.overlay,skeleton:s.jsx(l,{}),isLoading:e.isLoading,navOpen:e.navOpen,onOpenNav:e.onOpenNav,onCloseNav:e.onCloseNav};return e.isSinglePane?s.jsx(p,{...i,list:f?s.jsx(x,{}):o,intelligenceOpen:e.intelligenceOpen}):s.jsx(p,{...i,topBar:e.topBar,list:n,reading:r,intelligence:t,intelligenceOpen:e.intelligenceOpen,hasThread:a})}export{C as M,M as a,j as b,d as c,S as s};
1
+ import{ab as v,j as s,r as u,am as l,an as p}from"./index-Pa-PXhYt.js";import{F as x}from"./FullCompose-utRdyTob.js";import{a as m}from"./useMessageBodyContent-CqnK7vFx.js";function S(o,n,r){if(o!==n)return r}function d(o,n){return o===""?"":n}function j({searchInput:o,committedQuery:n,urlQuery:r,pathname:t,listPath:a}){return!v(t,a)||n!==o?!1:n!==r}const c=u.createContext(null),C=({chrome:o,children:n})=>s.jsx(c.Provider,{value:o,children:n});function M({phone:o,list:n,reading:r,intelligence:t,hasThread:a=!1}){const e=u.useContext(c),f=m();if(!e)return s.jsx(l,{});const i={nav:e.nav,overlay:e.overlay,skeleton:s.jsx(l,{}),isLoading:e.isLoading,navOpen:e.navOpen,onOpenNav:e.onOpenNav,onCloseNav:e.onCloseNav};return e.isSinglePane?s.jsx(p,{...i,list:f?s.jsx(x,{}):o,intelligenceOpen:e.intelligenceOpen}):s.jsx(p,{...i,topBar:e.topBar,list:n,reading:r,intelligence:t,intelligenceOpen:e.intelligenceOpen,hasThread:a})}export{C as M,M as a,j as b,d as c,S as s};
@@ -1 +1 @@
1
- import{j as s,L as le,f as $,a0 as ue,r as g,t as K,aC as de,a4 as fe,d7 as me,c3 as xe,eb as ge,ec as he,ed as pe,C as be,ee as ve,d8 as je}from"./index-Dy5D6YkV.js";import{l as we,o as Ne}from"./search-token-index-RpS46UX-.js";import{u as ye,L as Q}from"./roving-focus-BOWQw34Y.js";import{a9 as Pe,aa as Re,c as Ce,a as G,ab as Se,o as Ee,ac as Me,ad as ke,ae as Ie,af as Le,ag as Te,ah as ee,ai as ze}from"./MailListHeader-DixjeKWo.js";import{A as Ae}from"./avatar-Dc7q-vE0.js";import{M as Oe}from"./mail-1kAZ-hEc.js";import{R as De}from"./refresh-cw-N6rrepD7.js";import{M as $e}from"./menu-BBzSZjBL.js";function _e(){return s.jsx("div",{className:"space-y-0",role:"status","aria-busy":"true","aria-label":"Loading messages",children:Array.from({length:8}).map((e,t)=>s.jsxs("div",{className:"animate-pulse border-b border-line px-3 py-2",children:[s.jsxs("div",{className:"mb-2 flex items-center justify-between",children:[s.jsx("div",{className:"h-4 w-32 rounded bg-surface-sunken"}),s.jsx("div",{className:"h-3 w-16 rounded bg-surface-sunken"})]}),s.jsx("div",{className:"mb-2 h-4 w-48 rounded bg-surface-sunken"}),s.jsx("div",{className:"h-3 w-full rounded bg-surface-sunken"})]},t))})}function Fe({filter:e,scopeLabel:t,searchQuery:n}){const u=n?.trim();return e?s.jsxs(q,{children:[s.jsx("p",{className:"font-medium text-fg",children:Be(e.label,t,u)}),s.jsx("p",{className:"mt-1 text-sm text-fg-muted",children:He[e.reach]}),s.jsx($,{variant:"secondary",size:"sm",className:"mt-4",onClick:e.onClear,children:"Clear filter"})]}):s.jsx(q,{children:s.jsx("p",{className:"text-fg-muted",children:Xe(u,t)})})}const He={"whole-folder":"Every message in this folder was checked.","loaded-pages":"Only the messages loaded so far were checked."};function Xe(e,t){return e?"No messages match your search":t?`No messages in ${t}`:"No messages in this mailbox"}function Be(e,t,n){return n?`No results for “${n}” in ${e}`:t?`No ${e} in ${t}`:`No ${e}`}function q({children:e}){return s.jsx("div",{className:"flex h-full flex-1 items-center justify-center",children:s.jsx("div",{className:"flex max-w-sm flex-col items-center justify-center p-8 text-center",children:e})})}function us(){return s.jsxs("div",{className:"flex items-center justify-center gap-2 py-4 text-sm text-fg-muted",role:"status","aria-live":"polite",children:[s.jsx(le,{className:"size-4 animate-spin","aria-hidden":"true"}),s.jsx("span",{children:"Loading more…"})]})}function Ue({message:e="Something went wrong loading this mailbox.",onRetry:t,onReport:n}){return s.jsx("div",{className:"flex h-full flex-1 items-center justify-center p-4",children:s.jsxs("div",{role:"alert",className:"flex max-w-sm flex-col items-center justify-center gap-3 text-center",children:[s.jsx(ue,{className:"size-8 text-danger","aria-hidden":"true"}),s.jsxs("div",{children:[s.jsx("p",{className:"font-medium text-danger",children:"Couldn't load messages"}),s.jsx("p",{className:"mt-1 break-words text-sm text-fg-muted",children:e})]}),s.jsxs("div",{className:"flex items-center gap-2",children:[t&&s.jsx($,{variant:"secondary",size:"sm",onClick:t,children:"Retry"}),n&&s.jsx($,{variant:"ghost",size:"sm",onClick:n,children:"Report a problem"})]})]})})}const L=72,V=10,We=L/2,J="__swipeableRowAxisCancel";function Z(e){return e==="leading"?L:e==="trailing"?-L:0}function Ye(e){return e>=L/2?"leading":e<=-L/2?"trailing":"none"}function Ke({thread:e,selectionMode:t,checked:n,active:u,peek:f,onPeek:c,onToggleCheck:p,onLongPress:w,onOpen:b,onAct:v}){const x=g.useRef(null),[j,h]=g.useState(null),{longPressProps:P}=Pe({onLongPress:w,isDisabled:t,accessibilityDescription:"Select message"}),S=i=>{const o=new PointerEvent("pointercancel",{bubbles:!0});o[J]=!0,i.currentTarget.dispatchEvent(o)},r=Re(P,{onPointerDown:i=>{x.current={startX:i.clientX,startY:i.clientY,axis:"none",escaped:!1}},onPointerMove:i=>{if(t)return;const o=x.current;if(!o)return;const m=i.clientX-o.startX,M=i.clientY-o.startY;if(o.axis==="none"&&(Math.abs(M)>V&&Math.abs(M)>Math.abs(m)?o.axis="vertical":Math.abs(m)>V&&Math.abs(m)>Math.abs(M)&&(o.axis="horizontal",i.currentTarget.setPointerCapture(i.pointerId))),o.axis==="none")return;const T=o.axis==="horizontal"?Math.abs(m):Math.abs(M);if(!o.escaped&&T>We&&(o.escaped=!0,S(i)),o.axis!=="horizontal")return;const F=Z(f),H=Math.max(-L,Math.min(L,F+m));h(H)},onPointerUp:i=>{const o=x.current;x.current=null;const m=j;if(h(null),!!o){if(o.axis!=="none"&&!o.escaped&&S(i),o.axis==="horizontal"){m!==null&&c(Ye(m));return}if(o.axis!=="vertical"){if(t){p();return}if(f!=="none"){c("none");return}b()}}},onPointerCancel:i=>{i.nativeEvent[J]||(x.current=null,h(null))}}),d=j??Z(f),y=d>0?"leading":d<0?"trailing":"none",R=K("relative touch-pan-y bg-surface","select-none",Ce({active:n||u})),A={transform:d!==0?`translateX(${d}px)`:void 0,transition:j===null?"transform 150ms ease":"none",minHeight:44},_=!e.isRead,I=i=>i.stopPropagation(),O=t?s.jsxs(s.Fragment,{children:[s.jsx("span",{className:K("inline-flex size-7 shrink-0 items-center justify-center rounded-full border",n?"border-accent bg-accent text-accent-fg":"border-line-strong bg-canvas"),children:n&&s.jsx(de,{className:"size-3.5"})}),s.jsx(G,{thread:e})]}):s.jsxs(s.Fragment,{children:[_&&s.jsx("span",{className:"absolute left-1.5 top-1/2 size-1.5 -translate-y-1/2 rounded-full bg-accent"}),s.jsx("span",{role:"checkbox",tabIndex:0,"aria-checked":n,"aria-label":`Select message from ${e.fromName}`,onPointerDown:I,onPointerMove:I,onPointerUp:I,onClick:i=>{i.preventDefault(),i.stopPropagation(),w()},onKeyDown:i=>{i.key!=="Enter"&&i.key!==" "||(i.preventDefault(),i.stopPropagation(),w())},className:"-m-2 inline-flex size-11 shrink-0 items-center justify-center rounded-full",children:s.jsx(Ae,{name:e.fromName,email:e.fromEmail,size:"sm"})}),s.jsx(G,{thread:e})]});return s.jsxs("div",{className:"relative overflow-hidden",children:[y==="leading"&&s.jsx("button",{type:"button",onClick:()=>v("leading"),"aria-label":e.isRead?"Mark as unread":"Mark as read",className:"absolute inset-y-0 left-0 flex items-center justify-start bg-accent-2 px-6 text-accent-fg",children:e.isRead?s.jsx(Oe,{className:"size-6"}):s.jsx(Se,{className:"size-6"})}),y==="trailing"&&s.jsx("button",{type:"button",onClick:()=>v("trailing"),"aria-label":"Delete message",className:"absolute inset-y-0 right-0 flex items-center justify-end bg-danger px-6 text-canvas",children:s.jsx(fe,{className:"size-6"})}),s.jsx("button",{type:"button",role:t?"checkbox":void 0,"aria-checked":t?n:void 0,"data-message-row":!0,"data-message-id":e.id,...r,className:R,style:A,children:O})]})}function Qe({sections:e,selectedThreadId:t,selectionMode:n,checkedIds:u,initialPeek:f,onToggleCheck:c,onEnterSelection:p,onOpenThread:w,onRefresh:b,refreshing:v,busy:x=!1}){const[j,h]=g.useState(new Set),[P,S]=g.useState(new Map),N=e.flatMap(r=>r.threads).filter(r=>!j.has(r.id)).map(r=>{const d=P.get(r.id);return d===void 0?r:{...r,isRead:d}}),[E,C]=g.useState(f&&f!=="none"&&N[1]?{id:N[1].id,side:f}:null),k=(r,d)=>{if(d==="trailing")h(y=>new Set(y).add(r));else{const y=N.find(R=>R.id===r);S(R=>new Map(R).set(r,!y?.isRead))}C(null)};return s.jsxs("div",{className:"flex-1 overflow-y-auto",children:[v&&s.jsxs("div",{className:"flex items-center justify-center gap-2 border-b border-line py-3 text-fg-muted",children:[s.jsx(De,{className:"size-4 animate-spin"}),s.jsx("span",{className:"text-xs",children:"Checking for new mail…"})]}),s.jsx("div",{className:"divide-y divide-line",children:N.map(r=>s.jsx("div",{className:x?"pointer-events-none opacity-50":void 0,children:s.jsx(Ke,{thread:r,selectionMode:n,checked:u.has(r.id),active:r.id===t,peek:E?.id===r.id?E.side:"none",onPeek:d=>C(d==="none"?null:{id:r.id,side:d}),onToggleCheck:()=>c(r.id),onLongPress:()=>p(r.id),onOpen:()=>w(r.id),onAct:d=>k(r.id,d)})},r.id))}),!n&&!v&&!x&&s.jsx("button",{type:"button",onClick:b,className:"w-full border-t border-line py-2 text-center text-2xs text-fg-subtle transition-colors hover:bg-surface-sunken",children:"Pull to refresh"})]})}const Ge=new Set;function ds({listTitle:e,listMeta:t,sections:n,briefFilters:u,flatList:f,listState:c="ready",searchQuery:p,listFilter:w,listScopeLabel:b,errorMessage:v,onRetry:x,onReportError:j,briefFilter:h,selectedThreadId:P,density:S="comfortable",onSelectThread:N,onOpenNav:E,isDesktop:C,initialTouchState:k,selection:r,keyboard:d,selectionBar:y,paneOverlay:R,listBody:A,hideHeader:_=!1}){const I=S==="compact"?ke:Ie,O=g.useRef(null),i=g.useRef(null),o=me(d);ye({containerRef:O,itemSelector:Q,enabled:!o});const m=o?d.focusedId:void 0,M=o?m??n[0]?.threads[0]?.id:void 0,T=g.useCallback(a=>M===void 0?void 0:a===M?0:-1,[M]);g.useEffect(()=>{if(m===void 0)return;const a=i.current;if(!a)return;const l=a.querySelector(`${Q}[data-message-id="${m}"]`);!l||l===a.ownerDocument.activeElement||l.focus({preventScroll:!1})},[m]),g.useEffect(()=>{if(!o)return;const a=i.current;if(!a)return;const l=a.ownerDocument.activeElement;l!==null&&l!==a.ownerDocument.body||a.focus({preventScroll:!0})},[o]);const F=!C&&!u&&c==="ready",[H,W]=g.useState(!1),ae=k==="peek-trailing"?"trailing":k==="peek-leading"?"leading":void 0,re=()=>{W(!0),setTimeout(()=>W(!1),1400)},D=r?.selectedIds??Ge,z=r?.onToggle,Y=r?.onRowSelect,ie=Ee(D.size,C),X=g.useCallback(a=>{if(z)return{checked:D.has(a),onToggle:l=>{l.preventDefault(),l.stopPropagation(),z(a)}}},[D,z]),B=g.useCallback((a,l)=>Y?.(a,Me(l))?(l.preventDefault(),l.shiftKey&&window.getSelection()?.removeAllRanges(),!0):!1,[Y]),oe=g.useCallback(({thread:a,active:l,onClick:U})=>s.jsx(I,{thread:a,active:l,focused:a.id===m,tabIndex:T(a.id),selection:X(a.id),onClick:ce=>{B(a.id,ce)||U?.()}}),[I,X,B,m,T]);return s.jsxs("section",{ref:a=>{i.current=a,d?.ref(a)},tabIndex:o?-1:void 0,className:"relative flex h-full w-full flex-col bg-surface outline-none",children:[y??(_?null:s.jsxs("header",{className:"flex h-pane-header shrink-0 items-center gap-2 border-b border-line px-row-inset",children:[E&&s.jsx($,{variant:"ghost",size:"sm",icon:s.jsx($e,{className:"size-4"}),onClick:E,"aria-label":"Open folders",className:"-ml-1 shrink-0"}),s.jsx("h1",{className:"min-w-0 flex-1 truncate text-sm font-semibold text-fg",children:e}),t&&s.jsx("span",{className:"shrink-0 text-2xs text-fg-subtle",children:t})]})),c==="loading"?s.jsx("div",{className:"flex-1 overflow-y-auto",children:s.jsx(_e,{})}):c==="empty"?s.jsx(Fe,{filter:w,scopeLabel:b,searchQuery:p}):c==="error"?s.jsx(Ue,{message:v,onRetry:x,onReport:j}):u&&h?s.jsx(Le,{...h,sections:n,selectedThreadId:P,Row:oe,keyboard:d,onSelectThread:N}):A??(F?s.jsx(Qe,{sections:n,selectedThreadId:P,selectionMode:ie,checkedIds:D,initialPeek:ae,onToggleCheck:a=>z?.(a),onEnterSelection:a=>z?.(a),onOpenThread:a=>N?.(a),onRefresh:re,refreshing:H}):s.jsx("div",{ref:O,className:"flex-1 overflow-y-auto",children:n.map(a=>s.jsxs("div",{children:[!f&&a.label&&s.jsxs("div",{className:"sticky top-0 flex h-section-row items-center justify-between border-b border-line bg-surface-sunken px-row-inset",children:[s.jsx("span",{className:"text-2xs font-semibold uppercase tracking-wider text-fg-subtle",children:a.label}),s.jsx("span",{className:"text-2xs text-fg-subtle tabular-nums",children:a.threads.length})]}),s.jsx("div",{className:"divide-y divide-line",children:a.threads.map(l=>s.jsx(I,{thread:l,active:l.id===P,focused:l.id===m,tabIndex:T(l.id),selection:X(l.id),onClick:U=>{B(l.id,U)||N?.(l.id)}},l.id))})]},a.id))})),C&&s.jsx(Te,{hints:d?Ne(d.handlers):we}),R]})}var qe=class extends xe{constructor(e,t){super(e,t)}bindMethods(){super.bindMethods(),this.fetchNextPage=this.fetchNextPage.bind(this),this.fetchPreviousPage=this.fetchPreviousPage.bind(this)}setOptions(e){e._type="infinite",super.setOptions(e)}getOptimisticResult(e){return e._type="infinite",super.getOptimisticResult(e)}fetchNextPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"forward"}}})}fetchPreviousPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"backward"}}})}createResult(e,t){const{state:n}=e,u=super.createResult(e,t),{isFetching:f,isRefetching:c,isError:p,isRefetchError:w}=u,b=n.fetchMeta?.fetchMore?.direction,v=p&&b==="forward",x=f&&b==="forward",j=p&&b==="backward",h=f&&b==="backward";return{...u,fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:he(t,n.data),hasPreviousPage:ge(t,n.data),isFetchNextPageError:v,isFetchingNextPage:x,isFetchPreviousPageError:j,isFetchingPreviousPage:h,isRefetchError:w&&!v&&!j,isRefetching:c&&!x&&!h}}};function fs(e,t){return pe(e,qe)}const se={dimension:"read",position:"pre",text:"unread"},Ve={dimension:"read",position:"pre",text:"read"},te={dimension:"starred",position:"pre",text:"starred"},ne={dimension:"attachment",position:"post",text:"with an attachment"},Je=[["unread",se],["flagged",te],["attachment",ne]],Ze=e=>{switch(e.type){case"category":return{dimension:"category",position:"pre",text:ee(e.category)??e.value};case"isUnread":return se;case"isRead":return Ve;case"isStarred":return te;case"hasAttachment":return ne;case"from":return{dimension:e.raw,position:"post",text:`from ${e.value}`};case"subject":return{dimension:e.raw,position:"post",text:`about “${e.value}”`};case"before":return{dimension:e.raw,position:"post",text:`sent before ${e.value}`};case"after":return{dimension:e.raw,position:"post",text:`sent on or after ${e.value}`};case"in":return{dimension:e.raw,position:"post",text:`in ${e.value}`};case"account":return{dimension:e.raw,position:"post",text:`in the ${e.value} account`}}},es=(e,t)=>{const n=new Map,u=c=>{n.has(c.dimension)||n.set(c.dimension,c)},f=ee(e.category);f&&u({dimension:"category",position:"pre",text:f});for(const[c,p]of Je)e.attributes.has(c)&&u(p);for(const c of t)u(Ze(c));return[...n.values()]},ss=(e,t)=>{const n=es(e,t);if(n.length===0)return;const u=f=>n.filter(c=>c.position===f).map(c=>c.text);return[...u("pre"),"mail",...u("post")].join(" ")},ms=({chips:e,tokens:t,reach:n,onClear:u})=>{const f=ss(e,t);if(f)return{label:f,reach:n,onClear:u}};function xs({title:e,unreadCount:t,preset:n,selectedCategory:u,activeFilters:f,onSelectCategory:c,onToggleFilter:p,onSelectSource:w,onClearFilters:b,children:v,footer:x,searchResults:j,searchLoading:h,relatedResults:P,relatedLoading:S,onSelectSearchResult:N,searchResultsLabel:E,relatedResultsLabel:C,searchResultsInBody:k,refreshControl:r}){const{searchInput:d}=be(),y=d.trim().length>0,R={categories:n.categories,filters:n.filters,sources:n.sources,selectedCategory:u,activeFilters:f,onSelectCategory:c,onSelectSource:w,onToggleFilter:p,onClear:b};return s.jsx(ve,{hasSheet:!y,children:s.jsx(ze,{title:e,unreadCount:t,footer:x,searchFilter:R,searchResults:j,searchLoading:h,relatedResults:P,relatedLoading:S,onSelectSearchResult:N,searchResultsLabel:E,relatedResultsLabel:C,searchResultsInBody:k,refreshControl:r,children:s.jsx(je,{...R,hideChrome:y,children:v})})})}export{us as M,Ke as S,ds as a,xs as b,ms as l,fs as u};
1
+ import{j as s,L as le,f as $,a0 as ue,r as g,t as K,aC as de,a4 as fe,d7 as me,c3 as xe,eb as ge,ec as he,ed as pe,C as be,ee as ve,d8 as je}from"./index-Pa-PXhYt.js";import{l as we,o as Ne}from"./search-token-index-DH9ZHWHu.js";import{u as ye,L as Q}from"./roving-focus-xdT_hFx-.js";import{a9 as Pe,aa as Re,c as Ce,a as G,ab as Se,o as Ee,ac as Me,ad as ke,ae as Ie,af as Le,ag as Te,ah as ee,ai as ze}from"./MailListHeader-CDRRsdUl.js";import{A as Ae}from"./avatar-kb7BRIj-.js";import{M as Oe}from"./mail-CUfpnKmW.js";import{R as De}from"./refresh-cw-WQWjOiDL.js";import{M as $e}from"./menu-C_ItFy3L.js";function _e(){return s.jsx("div",{className:"space-y-0",role:"status","aria-busy":"true","aria-label":"Loading messages",children:Array.from({length:8}).map((e,t)=>s.jsxs("div",{className:"animate-pulse border-b border-line px-3 py-2",children:[s.jsxs("div",{className:"mb-2 flex items-center justify-between",children:[s.jsx("div",{className:"h-4 w-32 rounded bg-surface-sunken"}),s.jsx("div",{className:"h-3 w-16 rounded bg-surface-sunken"})]}),s.jsx("div",{className:"mb-2 h-4 w-48 rounded bg-surface-sunken"}),s.jsx("div",{className:"h-3 w-full rounded bg-surface-sunken"})]},t))})}function Fe({filter:e,scopeLabel:t,searchQuery:n}){const u=n?.trim();return e?s.jsxs(q,{children:[s.jsx("p",{className:"font-medium text-fg",children:Be(e.label,t,u)}),s.jsx("p",{className:"mt-1 text-sm text-fg-muted",children:He[e.reach]}),s.jsx($,{variant:"secondary",size:"sm",className:"mt-4",onClick:e.onClear,children:"Clear filter"})]}):s.jsx(q,{children:s.jsx("p",{className:"text-fg-muted",children:Xe(u,t)})})}const He={"whole-folder":"Every message in this folder was checked.","loaded-pages":"Only the messages loaded so far were checked."};function Xe(e,t){return e?"No messages match your search":t?`No messages in ${t}`:"No messages in this mailbox"}function Be(e,t,n){return n?`No results for “${n}” in ${e}`:t?`No ${e} in ${t}`:`No ${e}`}function q({children:e}){return s.jsx("div",{className:"flex h-full flex-1 items-center justify-center",children:s.jsx("div",{className:"flex max-w-sm flex-col items-center justify-center p-8 text-center",children:e})})}function us(){return s.jsxs("div",{className:"flex items-center justify-center gap-2 py-4 text-sm text-fg-muted",role:"status","aria-live":"polite",children:[s.jsx(le,{className:"size-4 animate-spin","aria-hidden":"true"}),s.jsx("span",{children:"Loading more…"})]})}function Ue({message:e="Something went wrong loading this mailbox.",onRetry:t,onReport:n}){return s.jsx("div",{className:"flex h-full flex-1 items-center justify-center p-4",children:s.jsxs("div",{role:"alert",className:"flex max-w-sm flex-col items-center justify-center gap-3 text-center",children:[s.jsx(ue,{className:"size-8 text-danger","aria-hidden":"true"}),s.jsxs("div",{children:[s.jsx("p",{className:"font-medium text-danger",children:"Couldn't load messages"}),s.jsx("p",{className:"mt-1 break-words text-sm text-fg-muted",children:e})]}),s.jsxs("div",{className:"flex items-center gap-2",children:[t&&s.jsx($,{variant:"secondary",size:"sm",onClick:t,children:"Retry"}),n&&s.jsx($,{variant:"ghost",size:"sm",onClick:n,children:"Report a problem"})]})]})})}const L=72,V=10,We=L/2,J="__swipeableRowAxisCancel";function Z(e){return e==="leading"?L:e==="trailing"?-L:0}function Ye(e){return e>=L/2?"leading":e<=-L/2?"trailing":"none"}function Ke({thread:e,selectionMode:t,checked:n,active:u,peek:f,onPeek:c,onToggleCheck:p,onLongPress:w,onOpen:b,onAct:v}){const x=g.useRef(null),[j,h]=g.useState(null),{longPressProps:P}=Pe({onLongPress:w,isDisabled:t,accessibilityDescription:"Select message"}),S=i=>{const o=new PointerEvent("pointercancel",{bubbles:!0});o[J]=!0,i.currentTarget.dispatchEvent(o)},r=Re(P,{onPointerDown:i=>{x.current={startX:i.clientX,startY:i.clientY,axis:"none",escaped:!1}},onPointerMove:i=>{if(t)return;const o=x.current;if(!o)return;const m=i.clientX-o.startX,M=i.clientY-o.startY;if(o.axis==="none"&&(Math.abs(M)>V&&Math.abs(M)>Math.abs(m)?o.axis="vertical":Math.abs(m)>V&&Math.abs(m)>Math.abs(M)&&(o.axis="horizontal",i.currentTarget.setPointerCapture(i.pointerId))),o.axis==="none")return;const T=o.axis==="horizontal"?Math.abs(m):Math.abs(M);if(!o.escaped&&T>We&&(o.escaped=!0,S(i)),o.axis!=="horizontal")return;const F=Z(f),H=Math.max(-L,Math.min(L,F+m));h(H)},onPointerUp:i=>{const o=x.current;x.current=null;const m=j;if(h(null),!!o){if(o.axis!=="none"&&!o.escaped&&S(i),o.axis==="horizontal"){m!==null&&c(Ye(m));return}if(o.axis!=="vertical"){if(t){p();return}if(f!=="none"){c("none");return}b()}}},onPointerCancel:i=>{i.nativeEvent[J]||(x.current=null,h(null))}}),d=j??Z(f),y=d>0?"leading":d<0?"trailing":"none",R=K("relative touch-pan-y bg-surface","select-none",Ce({active:n||u})),A={transform:d!==0?`translateX(${d}px)`:void 0,transition:j===null?"transform 150ms ease":"none",minHeight:44},_=!e.isRead,I=i=>i.stopPropagation(),O=t?s.jsxs(s.Fragment,{children:[s.jsx("span",{className:K("inline-flex size-7 shrink-0 items-center justify-center rounded-full border",n?"border-accent bg-accent text-accent-fg":"border-line-strong bg-canvas"),children:n&&s.jsx(de,{className:"size-3.5"})}),s.jsx(G,{thread:e})]}):s.jsxs(s.Fragment,{children:[_&&s.jsx("span",{className:"absolute left-1.5 top-1/2 size-1.5 -translate-y-1/2 rounded-full bg-accent"}),s.jsx("span",{role:"checkbox",tabIndex:0,"aria-checked":n,"aria-label":`Select message from ${e.fromName}`,onPointerDown:I,onPointerMove:I,onPointerUp:I,onClick:i=>{i.preventDefault(),i.stopPropagation(),w()},onKeyDown:i=>{i.key!=="Enter"&&i.key!==" "||(i.preventDefault(),i.stopPropagation(),w())},className:"-m-2 inline-flex size-11 shrink-0 items-center justify-center rounded-full",children:s.jsx(Ae,{name:e.fromName,email:e.fromEmail,size:"sm"})}),s.jsx(G,{thread:e})]});return s.jsxs("div",{className:"relative overflow-hidden",children:[y==="leading"&&s.jsx("button",{type:"button",onClick:()=>v("leading"),"aria-label":e.isRead?"Mark as unread":"Mark as read",className:"absolute inset-y-0 left-0 flex items-center justify-start bg-accent-2 px-6 text-accent-fg",children:e.isRead?s.jsx(Oe,{className:"size-6"}):s.jsx(Se,{className:"size-6"})}),y==="trailing"&&s.jsx("button",{type:"button",onClick:()=>v("trailing"),"aria-label":"Delete message",className:"absolute inset-y-0 right-0 flex items-center justify-end bg-danger px-6 text-canvas",children:s.jsx(fe,{className:"size-6"})}),s.jsx("button",{type:"button",role:t?"checkbox":void 0,"aria-checked":t?n:void 0,"data-message-row":!0,"data-message-id":e.id,...r,className:R,style:A,children:O})]})}function Qe({sections:e,selectedThreadId:t,selectionMode:n,checkedIds:u,initialPeek:f,onToggleCheck:c,onEnterSelection:p,onOpenThread:w,onRefresh:b,refreshing:v,busy:x=!1}){const[j,h]=g.useState(new Set),[P,S]=g.useState(new Map),N=e.flatMap(r=>r.threads).filter(r=>!j.has(r.id)).map(r=>{const d=P.get(r.id);return d===void 0?r:{...r,isRead:d}}),[E,C]=g.useState(f&&f!=="none"&&N[1]?{id:N[1].id,side:f}:null),k=(r,d)=>{if(d==="trailing")h(y=>new Set(y).add(r));else{const y=N.find(R=>R.id===r);S(R=>new Map(R).set(r,!y?.isRead))}C(null)};return s.jsxs("div",{className:"flex-1 overflow-y-auto",children:[v&&s.jsxs("div",{className:"flex items-center justify-center gap-2 border-b border-line py-3 text-fg-muted",children:[s.jsx(De,{className:"size-4 animate-spin"}),s.jsx("span",{className:"text-xs",children:"Checking for new mail…"})]}),s.jsx("div",{className:"divide-y divide-line",children:N.map(r=>s.jsx("div",{className:x?"pointer-events-none opacity-50":void 0,children:s.jsx(Ke,{thread:r,selectionMode:n,checked:u.has(r.id),active:r.id===t,peek:E?.id===r.id?E.side:"none",onPeek:d=>C(d==="none"?null:{id:r.id,side:d}),onToggleCheck:()=>c(r.id),onLongPress:()=>p(r.id),onOpen:()=>w(r.id),onAct:d=>k(r.id,d)})},r.id))}),!n&&!v&&!x&&s.jsx("button",{type:"button",onClick:b,className:"w-full border-t border-line py-2 text-center text-2xs text-fg-subtle transition-colors hover:bg-surface-sunken",children:"Pull to refresh"})]})}const Ge=new Set;function ds({listTitle:e,listMeta:t,sections:n,briefFilters:u,flatList:f,listState:c="ready",searchQuery:p,listFilter:w,listScopeLabel:b,errorMessage:v,onRetry:x,onReportError:j,briefFilter:h,selectedThreadId:P,density:S="comfortable",onSelectThread:N,onOpenNav:E,isDesktop:C,initialTouchState:k,selection:r,keyboard:d,selectionBar:y,paneOverlay:R,listBody:A,hideHeader:_=!1}){const I=S==="compact"?ke:Ie,O=g.useRef(null),i=g.useRef(null),o=me(d);ye({containerRef:O,itemSelector:Q,enabled:!o});const m=o?d.focusedId:void 0,M=o?m??n[0]?.threads[0]?.id:void 0,T=g.useCallback(a=>M===void 0?void 0:a===M?0:-1,[M]);g.useEffect(()=>{if(m===void 0)return;const a=i.current;if(!a)return;const l=a.querySelector(`${Q}[data-message-id="${m}"]`);!l||l===a.ownerDocument.activeElement||l.focus({preventScroll:!1})},[m]),g.useEffect(()=>{if(!o)return;const a=i.current;if(!a)return;const l=a.ownerDocument.activeElement;l!==null&&l!==a.ownerDocument.body||a.focus({preventScroll:!0})},[o]);const F=!C&&!u&&c==="ready",[H,W]=g.useState(!1),ae=k==="peek-trailing"?"trailing":k==="peek-leading"?"leading":void 0,re=()=>{W(!0),setTimeout(()=>W(!1),1400)},D=r?.selectedIds??Ge,z=r?.onToggle,Y=r?.onRowSelect,ie=Ee(D.size,C),X=g.useCallback(a=>{if(z)return{checked:D.has(a),onToggle:l=>{l.preventDefault(),l.stopPropagation(),z(a)}}},[D,z]),B=g.useCallback((a,l)=>Y?.(a,Me(l))?(l.preventDefault(),l.shiftKey&&window.getSelection()?.removeAllRanges(),!0):!1,[Y]),oe=g.useCallback(({thread:a,active:l,onClick:U})=>s.jsx(I,{thread:a,active:l,focused:a.id===m,tabIndex:T(a.id),selection:X(a.id),onClick:ce=>{B(a.id,ce)||U?.()}}),[I,X,B,m,T]);return s.jsxs("section",{ref:a=>{i.current=a,d?.ref(a)},tabIndex:o?-1:void 0,className:"relative flex h-full w-full flex-col bg-surface outline-none",children:[y??(_?null:s.jsxs("header",{className:"flex h-pane-header shrink-0 items-center gap-2 border-b border-line px-row-inset",children:[E&&s.jsx($,{variant:"ghost",size:"sm",icon:s.jsx($e,{className:"size-4"}),onClick:E,"aria-label":"Open folders",className:"-ml-1 shrink-0"}),s.jsx("h1",{className:"min-w-0 flex-1 truncate text-sm font-semibold text-fg",children:e}),t&&s.jsx("span",{className:"shrink-0 text-2xs text-fg-subtle",children:t})]})),c==="loading"?s.jsx("div",{className:"flex-1 overflow-y-auto",children:s.jsx(_e,{})}):c==="empty"?s.jsx(Fe,{filter:w,scopeLabel:b,searchQuery:p}):c==="error"?s.jsx(Ue,{message:v,onRetry:x,onReport:j}):u&&h?s.jsx(Le,{...h,sections:n,selectedThreadId:P,Row:oe,keyboard:d,onSelectThread:N}):A??(F?s.jsx(Qe,{sections:n,selectedThreadId:P,selectionMode:ie,checkedIds:D,initialPeek:ae,onToggleCheck:a=>z?.(a),onEnterSelection:a=>z?.(a),onOpenThread:a=>N?.(a),onRefresh:re,refreshing:H}):s.jsx("div",{ref:O,className:"flex-1 overflow-y-auto",children:n.map(a=>s.jsxs("div",{children:[!f&&a.label&&s.jsxs("div",{className:"sticky top-0 flex h-section-row items-center justify-between border-b border-line bg-surface-sunken px-row-inset",children:[s.jsx("span",{className:"text-2xs font-semibold uppercase tracking-wider text-fg-subtle",children:a.label}),s.jsx("span",{className:"text-2xs text-fg-subtle tabular-nums",children:a.threads.length})]}),s.jsx("div",{className:"divide-y divide-line",children:a.threads.map(l=>s.jsx(I,{thread:l,active:l.id===P,focused:l.id===m,tabIndex:T(l.id),selection:X(l.id),onClick:U=>{B(l.id,U)||N?.(l.id)}},l.id))})]},a.id))})),C&&s.jsx(Te,{hints:d?Ne(d.handlers):we}),R]})}var qe=class extends xe{constructor(e,t){super(e,t)}bindMethods(){super.bindMethods(),this.fetchNextPage=this.fetchNextPage.bind(this),this.fetchPreviousPage=this.fetchPreviousPage.bind(this)}setOptions(e){e._type="infinite",super.setOptions(e)}getOptimisticResult(e){return e._type="infinite",super.getOptimisticResult(e)}fetchNextPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"forward"}}})}fetchPreviousPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"backward"}}})}createResult(e,t){const{state:n}=e,u=super.createResult(e,t),{isFetching:f,isRefetching:c,isError:p,isRefetchError:w}=u,b=n.fetchMeta?.fetchMore?.direction,v=p&&b==="forward",x=f&&b==="forward",j=p&&b==="backward",h=f&&b==="backward";return{...u,fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:he(t,n.data),hasPreviousPage:ge(t,n.data),isFetchNextPageError:v,isFetchingNextPage:x,isFetchPreviousPageError:j,isFetchingPreviousPage:h,isRefetchError:w&&!v&&!j,isRefetching:c&&!x&&!h}}};function fs(e,t){return pe(e,qe)}const se={dimension:"read",position:"pre",text:"unread"},Ve={dimension:"read",position:"pre",text:"read"},te={dimension:"starred",position:"pre",text:"starred"},ne={dimension:"attachment",position:"post",text:"with an attachment"},Je=[["unread",se],["flagged",te],["attachment",ne]],Ze=e=>{switch(e.type){case"category":return{dimension:"category",position:"pre",text:ee(e.category)??e.value};case"isUnread":return se;case"isRead":return Ve;case"isStarred":return te;case"hasAttachment":return ne;case"from":return{dimension:e.raw,position:"post",text:`from ${e.value}`};case"subject":return{dimension:e.raw,position:"post",text:`about “${e.value}”`};case"before":return{dimension:e.raw,position:"post",text:`sent before ${e.value}`};case"after":return{dimension:e.raw,position:"post",text:`sent on or after ${e.value}`};case"in":return{dimension:e.raw,position:"post",text:`in ${e.value}`};case"account":return{dimension:e.raw,position:"post",text:`in the ${e.value} account`}}},es=(e,t)=>{const n=new Map,u=c=>{n.has(c.dimension)||n.set(c.dimension,c)},f=ee(e.category);f&&u({dimension:"category",position:"pre",text:f});for(const[c,p]of Je)e.attributes.has(c)&&u(p);for(const c of t)u(Ze(c));return[...n.values()]},ss=(e,t)=>{const n=es(e,t);if(n.length===0)return;const u=f=>n.filter(c=>c.position===f).map(c=>c.text);return[...u("pre"),"mail",...u("post")].join(" ")},ms=({chips:e,tokens:t,reach:n,onClear:u})=>{const f=ss(e,t);if(f)return{label:f,reach:n,onClear:u}};function xs({title:e,unreadCount:t,preset:n,selectedCategory:u,activeFilters:f,onSelectCategory:c,onToggleFilter:p,onSelectSource:w,onClearFilters:b,children:v,footer:x,searchResults:j,searchLoading:h,relatedResults:P,relatedLoading:S,onSelectSearchResult:N,searchResultsLabel:E,relatedResultsLabel:C,searchResultsInBody:k,refreshControl:r}){const{searchInput:d}=be(),y=d.trim().length>0,R={categories:n.categories,filters:n.filters,sources:n.sources,selectedCategory:u,activeFilters:f,onSelectCategory:c,onSelectSource:w,onToggleFilter:p,onClear:b};return s.jsx(ve,{hasSheet:!y,children:s.jsx(ze,{title:e,unreadCount:t,footer:x,searchFilter:R,searchResults:j,searchLoading:h,relatedResults:P,relatedLoading:S,onSelectSearchResult:N,searchResultsLabel:E,relatedResultsLabel:C,searchResultsInBody:k,refreshControl:r,children:s.jsx(je,{...R,hideChrome:y,children:v})})})}export{us as M,Ke as S,ds as a,xs as b,ms as l,fs as u};