@remit/web-client-dist 0.0.466 → 0.0.467
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.
- package/assets/BriefPane-BOViVPzm.js +1 -0
- package/assets/{ErrorState-DahaLsPP.js → ErrorState-CjTpaQno.js} +1 -1
- package/assets/{FlaggedPane-BnLZg3bX.js → FlaggedPane-D3I4Pwy7.js} +1 -1
- package/assets/{FullCompose-BRl0TTg1.js → FullCompose-DuePhify.js} +1 -1
- package/assets/{MailListHeader-CE3fumXQ.js → MailListHeader-CRaaDXQR.js} +2 -2
- package/assets/{MailShell-DM51bkst.js → MailShell-V_w1u8gE.js} +1 -1
- package/assets/{MailViewChrome-rCAcUprL.js → MailViewChrome-BCf1WGZa.js} +1 -1
- package/assets/{MailboxPane-CfEuGJke.js → MailboxPane-BsKUfMU2.js} +1 -1
- package/assets/{NavMenuButton-D7OnVn0n.js → NavMenuButton-CC5gLyj0.js} +1 -1
- package/assets/{OnboardingWizard-D7n1FFgq.js → OnboardingWizard-CVzORg2L.js} +1 -1
- package/assets/{OutboxPane-CHY4zzPd.js → OutboxPane-Clk5BfO-.js} +1 -1
- package/assets/_mailboxId-CBUg_ptw.js +1 -0
- package/assets/_messageId-057gyMQS.js +1 -0
- package/assets/_messageId-DD0fgfdC.js +1 -0
- package/assets/_messageId-DG1qhEoP.js +1 -0
- package/assets/_outboxMessageId-DU1rn74b.js +1 -0
- package/assets/_threadId-Dw16H3Tf.js +1 -0
- package/assets/_threadId-EI718SZQ.js +1 -0
- package/assets/_threadId-pJd3qxq_.js +1 -0
- package/assets/{accounts-b7snCCud.js → accounts-Bm_0ofuS.js} +1 -1
- package/assets/advanced-CS8HcIDg.js +4 -0
- package/assets/{appearance-BnKopIIl.js → appearance-jSepbsmX.js} +1 -1
- package/assets/{attachment-file-DdY-ZgnJ.js → attachment-file-D55Jaoaq.js} +1 -1
- package/assets/{avatar-CgRc9nHj.js → avatar-DLJoYIv_.js} +1 -1
- package/assets/{bottom-sheet-Buif-5NL.js → bottom-sheet-AwUWj4gF.js} +1 -1
- package/assets/{brief-t259xOxc.js → brief-CAwM5ktG.js} +1 -1
- package/assets/brief-CtLmEBHi.js +1 -0
- package/assets/{browser-ponyfill-CyCeay-8.js → browser-ponyfill-2vsokFsa.js} +2 -2
- package/assets/{bug-DJcpDTib.js → bug-uyAppgDo.js} +1 -1
- package/assets/{circle-check-Cj5oazRb.js → circle-check-B9LSKrg7.js} +1 -1
- package/assets/{circle-check-big-LmiZ66Yc.js → circle-check-big-DtMSaP_G.js} +1 -1
- package/assets/{circle-help-C-uModsr.js → circle-help-CqSWJsmD.js} +1 -1
- package/assets/{clock-C7yqRbXe.js → clock-LI1YoW4E.js} +1 -1
- package/assets/compose._-_outboxMessageId_-Bu4vOgU_.js +1 -0
- package/assets/compose._-_outboxMessageId_-CVNmcgAW.js +1 -0
- package/assets/compose._-_outboxMessageId_-DOnJUPFO.js +1 -0
- package/assets/compose._-_outboxMessageId_-DXS2YkKB.js +1 -0
- package/assets/{confirm-dialog-BsxoJB1K.js → confirm-dialog-Do7BKKbS.js} +1 -1
- package/assets/{download-D8jdmJXi.js → download-2WBsIUvO.js} +1 -1
- package/assets/{filters-QOwHL3Ws.js → filters-DS_squQB.js} +1 -1
- package/assets/flagged-B1AcXPnX.js +1 -0
- package/assets/{flagged-SOlEOghK.js → flagged-DAthIoGr.js} +1 -1
- package/assets/{folders-ClaskegL.js → folders-Cv6wJRMN.js} +1 -1
- package/assets/{format-Q6SH-IHD.js → format-Xf3x3S7v.js} +1 -1
- package/assets/{help-copy-CqGXlWWr.js → help-copy-Bs2TAdP_.js} +1 -1
- package/assets/index-057gyMQS.js +1 -0
- package/assets/{index-C0YbF1L6.js → index-BFSh9YGr.js} +51 -51
- package/assets/{index-Xoco-tet.js → index-BTmFY2LN.js} +7 -7
- package/assets/index-BtcD4z03.js +1 -0
- package/assets/index-C2dsI74A.js +1 -0
- package/assets/index-CTwgvsPr.js +1 -0
- package/assets/index-CzMA82w1.js +1 -0
- package/assets/index-DD0fgfdC.js +1 -0
- package/assets/index-YuYDQQvp.js +1 -0
- package/assets/index-kwQ4_r06.js +1 -0
- package/assets/{kbd-BroWJblw.js → kbd-d3x-5lg-.js} +1 -1
- package/assets/{labels-oVvqVPqX.js → labels-DXKvqOTN.js} +1 -1
- package/assets/mail-CGQS8vKj.js +1 -0
- package/assets/{mail-Dk_5qV5Y.js → mail-qFd201fa.js} +1 -1
- package/assets/{menu-D9zjxEPa.js → menu-BZv4uGsn.js} +1 -1
- package/assets/{onboarding-BgPHzyar.js → onboarding-C1UBPnqd.js} +1 -1
- package/assets/outbox-DuvIV9pU.js +1 -0
- package/assets/{pencil-lIIqlS7F.js → pencil-CqcMMFUL.js} +1 -1
- package/assets/{rich-text-DrIBcneQ.js → rich-text-CAGcQ1v6.js} +1 -1
- package/assets/{rich-text-spellcheck-worker-provider-COaIbIz6.js → rich-text-spellcheck-worker-provider-DY2NofEC.js} +1 -1
- package/assets/{rotate-ccw-BhOBHPpy.js → rotate-ccw-SHoN5aMa.js} +1 -1
- package/assets/{row-actions-CgwuP_XL.js → row-actions-COoiORoZ.js} +1 -1
- package/assets/{search-mirror-BxxbguOQ.js → search-mirror-DYZjUUmX.js} +1 -1
- package/assets/search-token-index-CXNrQUph.js +1 -0
- package/assets/{senders-BRrbMgxw.js → senders-5XOhBpVv.js} +1 -1
- package/assets/settings-BOP5grKL.js +1 -0
- package/assets/{settings-screen-oaXSGTtC.js → settings-screen-dLADNIxp.js} +1 -1
- package/assets/{shield-check-CcjA5zAM.js → shield-check-P0GwdRMN.js} +1 -1
- package/assets/{suggested-vips-TrcvWL6P.js → suggested-vips-eZJpq5SO.js} +1 -1
- package/assets/{useDebouncedValue-Nd03opjC.js → useDebouncedValue-DFjNv-Yn.js} +1 -1
- package/assets/{useFilters-CyHmS5pJ.js → useFilters-BsWiB4yj.js} +1 -1
- package/assets/{useLabels-1rNWGQyV.js → useLabels-C7SkjRHK.js} +1 -1
- package/assets/{useMessageBodyContent-DUyoMT7-.js → useMessageBodyContent-BDTufR43.js} +1 -1
- package/assets/useQueries-c5cMWJ-B.js +1 -0
- package/assets/useRefreshControl-DOJse1dZ.js +1 -0
- package/assets/{useSearchTokenContext-9FUSRyq-.js → useSearchTokenContext-B2RNVrZh.js} +3 -3
- package/assets/{useSemanticSearch-CndRDdLY.js → useSemanticSearch-DJo5HBvF.js} +1 -1
- package/assets/{useSignature-Dh1YfrLK.js → useSignature-D8_hBTPg.js} +1 -1
- package/index.html +1 -1
- package/package.json +1 -1
- package/assets/BriefPane-CccvxIPm.js +0 -1
- package/assets/_mailboxId-0KPLzSyc.js +0 -1
- package/assets/_messageId-CLzaKnpD.js +0 -1
- package/assets/_messageId-XN2qNpQ2.js +0 -1
- package/assets/_messageId-b0kzFKt3.js +0 -1
- package/assets/_outboxMessageId-CexeuSvn.js +0 -1
- package/assets/_threadId-B7_He_P1.js +0 -1
- package/assets/_threadId-B_hTqYxv.js +0 -1
- package/assets/_threadId-CdaFxlag.js +0 -1
- package/assets/advanced-BevmkfTc.js +0 -4
- package/assets/brief-CpItGQkI.js +0 -1
- package/assets/compose._-_outboxMessageId_-B6FztRTg.js +0 -1
- package/assets/compose._-_outboxMessageId_-BPwbuaFL.js +0 -1
- package/assets/compose._-_outboxMessageId_-CAWDoa8e.js +0 -1
- package/assets/compose._-_outboxMessageId_-DGgNutCU.js +0 -1
- package/assets/flagged-DqAOo1zz.js +0 -1
- package/assets/index-B5M8PwWY.js +0 -1
- package/assets/index-B7FCRaei.js +0 -1
- package/assets/index-BqVgmOq9.js +0 -1
- package/assets/index-C9sfLIJT.js +0 -1
- package/assets/index-CG6B9kNs.js +0 -1
- package/assets/index-XN2qNpQ2.js +0 -1
- package/assets/index-b0kzFKt3.js +0 -1
- package/assets/index-cBLQ-i9P.js +0 -1
- package/assets/mail-Y2G6r7YB.js +0 -1
- package/assets/outbox-7hty8V-r.js +0 -1
- package/assets/search-token-index-C2zFed-7.js +0 -1
- package/assets/settings-kfpDZaa6.js +0 -1
- package/assets/useRefreshControl-0RtlFTjR.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as o,as as Xe,S as Ze,bS as es,v as Y,b5 as ss,bF as ts,r as a,D as oe,bT as ne,z as os,bU as ns,bV as as,bW as rs,e as Ce,bX as is,a9 as cs,bP as ls,bQ as ds}from"./index-BFSh9YGr.js";import{s as je,a as us,b as Re,u as ms,p as fs,R as hs}from"./useSearchTokenContext-B2RNVrZh.js";import{aa as be,H as ve,ab as gs,ac as xs,I as ps,ad as ye,ae as Is,af as bs,ag as vs,a9 as ys,ah as Ss,ai as Ts,aj as Cs,M as js,ak as Rs,al as ws,am as Ms,e as ks,v as Fs,an as As,q as Os,S as Ns,L as Bs,Q as Se,P as Ds,N as Ls,d as Es,_ as Ps,$ as qs,a1 as we,a2 as Me,a3 as zs,a4 as Qs,a5 as Hs}from"./MailListHeader-CRaaDXQR.js";import{u as _s,a as Ws,R as $s,i as Us,b as Vs}from"./useRefreshControl-DOJse1dZ.js";import{u as Gs}from"./useQueries-c5cMWJ-B.js";import{a as Ys}from"./useLabels-C7SkjRHK.js";import{e as Js,o as Ks,R as Xs,j as Zs,k as et}from"./search-token-index-CXNrQUph.js";import{u as st,r as tt,L as ot}from"./useSemanticSearch-DJo5HBvF.js";import{w as nt}from"./wizard-selection-B1bng5Jq.js";import{u as ke}from"./index-BTmFY2LN.js";import{a as at}from"./useMessageBodyContent-BDTufR43.js";function rt({sync:e}){return e?o.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:[o.jsx(Xe,{className:"size-8 animate-spin text-fg-subtle","aria-hidden":"true"}),o.jsx("p",{className:"text-sm font-medium text-fg",children:"Still syncing your mail"}),o.jsx("p",{className:"text-xs text-fg-subtle",children:it(e)})]}):o.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-2 py-12 text-center px-4",children:[o.jsx(Ze,{className:"size-8 text-fg-subtle","aria-hidden":"true"}),o.jsx("p",{className:"text-sm font-medium text-fg",children:"You're caught up"}),o.jsx("p",{className:"text-xs text-fg-subtle",children:"Nothing needs attention."})]})}function it({synced:e,total:s}){return s>0?`${e.toLocaleString()} of ${s.toLocaleString()} messages downloaded. This list fills in as they arrive.`:"Downloading your messages. This list fills in as they arrive."}const Fe=[{id:"unread",name:"is",value:"unread"},{id:"attachment",name:"has",value:"attachment"}],Ae="category",ct={unclassified:"uncategorized"},W=e=>us(e).map(s=>s.raw),_=e=>e.join(" "),ae=e=>{const s=Re(e);if(s)return Fe.find(n=>n.name===s.name&&n.value===s.value.toLowerCase())?.id},re=e=>{const s=Re(e);if(!s||s.name!==Ae)return;const n=s.value.toLowerCase(),r=ct[n];if(r)return r;if(!(!es(n)||n==="all"))return n},Oe=e=>Fe.find(s=>s.id===e),Ne=e=>Oe(e)!==void 0,lt=e=>{const s=new Set;for(const n of W(e)){const r=ae(n);r&&s.add(r)}return s},dt=e=>{let s="all";for(const n of W(e)){const r=re(n);r&&(s=r)}return s},ut=(e,s)=>{const n=Oe(s);if(!n)return;const r=W(e),l=r.filter(d=>ae(d)!==s);return l.length<r.length?_(l):_([...r,je(n.name,n.value)])},mt=(e,s)=>{const n=W(e).filter(r=>!re(r));return _(s==="all"?n:[...n,je(Ae,s)])},ft=e=>_(W(e).filter(s=>!ae(s)&&!re(s))),Be=e=>e.trim().length>0,ht=e=>{if(!Be(e.query))return e.ownFilters;const s=new Set(lt(e.query));for(const n of e.ownFilters)Ne(n)||s.add(n);return s},gt=e=>Be(e.query)?dt(e.query):e.ownCategory,xt=(e,s)=>e.createdAt!==s.createdAt?e.createdAt-s.createdAt:e.accountId.localeCompare(s.accountId),pt=e=>[...e].sort(xt),It=200,Te=()=>o.jsx("div",{className:"animate-pulse",children:Array.from({length:3}).map((e,s)=>o.jsxs("div",{className:"flex items-start gap-3 py-2 pl-5 pr-4 border-b border-line",children:[o.jsx("div",{className:"size-7 rounded-full bg-surface-sunken shrink-0 mt-0.5"}),o.jsxs("div",{className:"flex-1 space-y-1.5",children:[o.jsxs("div",{className:"flex justify-between gap-2",children:[o.jsx("div",{className:"h-3.5 bg-surface-sunken rounded w-28"}),o.jsx("div",{className:"h-3 bg-surface-sunken rounded w-12"})]}),o.jsx("div",{className:"h-3.5 bg-surface-sunken rounded w-48"}),o.jsx("div",{className:"h-3 bg-surface-sunken rounded w-full"})]})]},s))}),bt=({accountEmail:e})=>{const s=ke();return o.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:[o.jsx(Ce,{className:"size-3.5 shrink-0"}),o.jsxs("span",{className:"flex-1 truncate",children:[e," can't connect"]}),o.jsx("button",{type:"button",onClick:()=>s("accounts"),className:"shrink-0 underline text-danger hover:opacity-80",children:"Reconnect"})]})},vt=(e,s)=>{if(s.size===0)return{};const n=e.filter(d=>s.has(d.id)),r=tt(n.map(d=>d.accountId));if(r.restriction)return r;const l=new Set;for(const d of n)d.mailboxId&&l.add(d.mailboxId);return l.size>1?{accountId:r.accountId,restriction:"spansFolders",moveDisabledHint:`Move only works within one folder — this selection spans ${l.size} folders`}:{accountId:r.accountId,mailboxId:l.size===1?[...l][0]:void 0}};function yt({header:e,rows:s,wizard:n,children:r}){const{selectedIds:l,selectedCount:d,exitSelection:u,orderedIds:m,allSelected:b,toggleAllLoaded:f}=Ms(),x=a.useMemo(()=>vt(s,l),[s,l]),{junkMailboxId:D}=ks(x.accountId),{labels:I}=Ys(x.accountId),p=a.useMemo(()=>Array.from(l),[l]),L=a.useMemo(()=>nt(s,l),[s,l]),h=Fs(D,x.mailboxId),v=a.useMemo(()=>m.length>0?{checked:b,indeterminate:d>0&&!b,onChange:f}:void 0,[m.length,b,d,f]),F=x.moveDisabledHint?{tone:"warning",text:x.moveDisabledHint}:void 0,S=T=>o.jsx(Ns,{title:T.title,navSlot:T.navSlot,titleMeta:T.titleMeta,searchSlot:T.searchSlot,searchField:T.searchField,idleSlot:T.makeFilterSlot,count:d,onCancel:u,onDelete:()=>n.start("delete"),onMove:()=>n.start("move"),onOrganize:()=>n.start("organize"),onJunk:h?()=>n.start("junk"):void 0,onMarkRead:()=>n.start("markRead"),overflowSlot:x.accountId&&x.mailboxId&&d>0&&I.length>0?o.jsx(ot,{accountId:x.accountId,mailboxId:x.mailboxId,messageIds:p}):void 0,selectAll:v,notice:F});return o.jsx(As,{...e,selectionBar:S,paneOverlay:o.jsx(Os,{verb:n.verb,accountId:x.accountId,mailboxId:x.mailboxId,selection:L,selectionRestriction:x.restriction,onFinished:u}),children:r})}function St({accounts:e,selectedMessageId:s,onOpenThread:n,commandsRef:r,onTriageContextChange:l,onDeleteMessages:d}){const{searchQuery:u,searchInput:m,resultFolderIndex:b,onSearchChange:f}=Y(),x=ms(),D=ss(),I=Js(),p=ts(),L=Ks(),h=a.useMemo(()=>pt(e.filter(t=>!t.muted?.value)),[e]),[v,F]=a.useState("all"),[S,T]=a.useState("all"),[$,E]=a.useState(new Set),[K,C]=a.useState(!1),P=a.useCallback(t=>{E(i=>{const c=new Set(i);return c.has(t)?c.delete(t):c.add(t),c})},[]),U=a.useCallback(()=>E(new Set),[]),R=m.trim().length>0,j=a.useMemo(()=>ht({query:m,ownFilters:$}),[m,$]),w=a.useMemo(()=>gt({query:m,ownCategory:S}),[m,S]),A=a.useCallback(t=>{if(!R||!Ne(t)){P(t);return}const i=ut(m,t);i!==void 0&&f(i)},[R,m,f,P]),q=a.useCallback(t=>{if(!R){T(t);return}f(mt(m,t))},[R,m,f]),z=a.useCallback(()=>{T("all"),F("all"),U(),R&&f(ft(m))},[R,m,f,U]),{data:O,isLoading:Q,isError:g,refetch:N}=oe({...ne(),staleTime:6e4}),B=Gs({queries:h.map(t=>({...os({path:{accountId:t.accountId}}),staleTime:1/0,meta:{softError:!0}}))}),V=a.useMemo(()=>{const t=new Map;for(let i=0;i<h.length;i++){const c=h[i].accountId,Ye=(B[i]?.data?.items??[]).reduce((Je,Ke)=>Je+(Ke.unseenCount??0),0);t.set(c,Ye)}return t},[h,B]),Ee=a.useMemo(()=>h.filter((t,i)=>{const c=B[i];return c?.isError?!ns(c.error):!1}),[h,B]),{freeText:M,tokens:X}=fs(u.trim().toLowerCase(),x),{data:ie,isFetching:Pe}=oe({...ne({query:{query:M,limit:It}}),enabled:M.length>0,staleTime:3e4}),y=a.useMemo(()=>{const t=be(O?.items??[]).map(ve);return(M?gs(t.filter(c=>xs(c,M)),be(ie?.items??[]).map(ve)):t).filter(c=>(v==="all"||c.accountId===v)&&ps(c,X))},[O,ie,v,M,X]),{bodyRows:ce,briefSpamOffer:Z}=a.useMemo(()=>{if(!M)return{bodyRows:y,briefSpamOffer:void 0};const t=y.map(k=>ye(k,b)),{spam:i}=Is(t);if(i.length===0)return{bodyRows:y,briefSpamOffer:void 0};const c=new Set(i.map(k=>k.id));return{bodyRows:y.filter(k=>!c.has(k.id)),briefSpamOffer:bs(t)}},[y,M,b]),le=a.useMemo(()=>vs(ce),[ce]),de=a.useCallback((t,i)=>{const c=y.find(k=>k.id===t)?.threadId;c&&n?.({threadId:c,messageId:t},i)},[y,n]),qe=a.useCallback(t=>{const i=t.threadId??y.find(c=>c.id===t.id)?.threadId;i&&n?.({threadId:i,messageId:t.id})},[y,n]),ee=a.useMemo(()=>h.length<=1?[]:[{id:"all",label:"All",active:v==="all"},...h.map(t=>({id:t.accountId,label:t.email.split("@")[0]??t.email,count:V.get(t.accountId),active:v===t.accountId}))],[h,V,v]),H=a.useMemo(()=>e.filter(t=>t.muted?.value).length,[e]),ze=a.useMemo(()=>Array.from(V.values()).reduce((t,i)=>t+i,0),[V]),se=a.useMemo(()=>h.map(t=>t.accountId),[h]),{hasNewMail:ue}=_s(),{state:me,errorMessage:fe,refresh:he}=Ws(se,{onSettled:()=>N()}),Qe=a.useMemo(()=>o.jsx($s,{state:me,onRefresh:he,label:"Refresh daily brief",errorMessage:fe,hasUpdate:ue(se)}),[me,he,fe,ue,se]),te=a.useMemo(()=>y.filter(t=>(w==="all"||t.category===w)&&as(t,j)).map(t=>ye(t,b)),[y,w,j,b]),{hits:ge,isLoading:He}=st(),_e=a.useMemo(()=>{const t=new Map;for(const c of O?.items??[])t.set(c.messageId,c.threadId);const i=te.map(c=>t.get(c.id)).filter(c=>c!=null);return ys(ge,i,b)},[ge,te,O,b]),We=a.useMemo(()=>{const t=Ss(ee.map(i=>({id:i.id,label:i.label,count:i.count,active:i.active})));return{categories:t.categories,filters:t.filters,sources:t.sources,sourcesNote:H>0?`+${H} muted`:void 0,selectedCategory:w,activeFilters:j,expanded:K,onExpandedChange:C,onSelectCategory:i=>q(i),onSelectSource:F,onToggleFilter:i=>A(i),onClear:z}},[ee,H,w,j,K,A,q,z]),xe=le.length===0&&v==="all"&&M.length===0&&X.length===0,$e=a.useMemo(()=>h.map(t=>t.accountId),[h]),Ue=a.useMemo(()=>h.some(t=>Us(t.syncPhase)),[h]),G=Vs($e,xe||Ue),pe=o.jsxs("div",{className:"h-full overflow-y-auto",children:[o.jsx(Te,{}),o.jsx(Te,{})]}),Ie=!Q&&!g&&!xe,Ve=Ts({tier:I,hasLiveInput:R,hasCommittedQuery:u.trim().length>0,bodyRendersCommittedResults:!0}),Ge=Ie?o.jsxs("div",{className:"flex h-full min-h-0 flex-col",children:[Z&&o.jsx(Cs,{count:Z.count,onScopeToSpam:()=>L(Z.mailboxId,u)}),o.jsx("div",{className:"min-h-0 flex-1",children:o.jsx(rs,{sections:le,briefCategory:w,Row:js,selectedThreadId:s,onSelectThread:de,onSelectBriefCategory:q,sources:ee,sourcesNote:H>0?`+${H} muted`:void 0,onSelectSource:F,activeFilters:j,onToggleFilter:A,onClearFilters:z})})]}):Q?pe:g?o.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-3 py-12 text-sm text-fg-muted",children:[o.jsx(Ce,{className:"size-8 text-danger"}),o.jsx("p",{children:"Couldn't load your messages"}),o.jsxs("button",{type:"button",onClick:()=>N(),className:"flex items-center gap-1 text-accent underline text-xs",children:[o.jsx(Xs,{className:"size-3.5"}),"Try again"]})]}):G.resolved?o.jsx(rt,{sync:G.syncing?{synced:G.synced,total:G.total}:void 0}):pe;return o.jsx(is,{hasSheet:Ie&&!Ve,children:o.jsx(Rs,{selectedMessageId:s,rows:y,onOpen:de,onDeleteMessages:d,onSelectionVerb:p.start,commandsRef:r,onTriageContextChange:l,children:o.jsx(yt,{wizard:p,header:{title:"Daily brief",unreadCount:ze,footer:D?o.jsx(ws,{}):void 0,searchFilter:We,searchResults:te,searchLoading:Q||Pe,relatedResults:_e,relatedLoading:He,onSelectSearchResult:qe,searchResultsInBody:!0,refreshControl:Qe},rows:y,children:o.jsxs("div",{className:"flex h-full flex-col",children:[Ee.map(t=>o.jsx(bt,{accountEmail:t.email,accountId:t.accountId},t.accountId)),o.jsx("div",{className:"min-h-0 flex-1",children:Ge})]})})})})}const De=a.createContext(null);function J(){const e=a.useContext(De);if(!e)throw new Error("BriefPane.* must be used inside <BriefPane>");return e}function Tt({thread:e,children:s}){const n=Zs(),r=et(),l=ke(),{searchInput:d}=Y(),u=e?.threadId,m=e?.messageId,{data:b}=oe({...ne(),staleTime:6e4}),f=a.useMemo(()=>b?.items??[],[b]),x=a.useMemo(()=>{if(u)return f.find(g=>g.messageId===m)??f.find(g=>g.threadId===u)},[f,u,m]),D=Bs(u,m),I=x??D,p=m??I?.messageId,L=a.useMemo(()=>{if(u)return{threadId:u,mailboxId:I?.mailboxId??"",subject:I?.subject,messageId:p,authenticity:I?.authenticity}},[u,I,p]),h=a.useCallback((g,N)=>{n(g,{replace:N?.replace,query:d})},[n,d]),v=a.useCallback(g=>{p&&g.includes(p)&&r()},[p,r]),F=Se({thread:I,isOpen:!0,onAfterOptimisticRemove:v}),S=Ds(),{deleteMessages:T}=Ls({mailboxId:I?.mailboxId??"",messages:f,onAfterOptimisticRemove:v}),{toggleReadFor:$}=Es({mailboxId:I?.mailboxId??"",messages:f}),E=S.focusedMessageId,C=a.useMemo(()=>f.find(g=>g.messageId===E),[f,E])??I,P=Se({thread:C,isOpen:C?.messageId===p}),U=at(),R=cs(),j=ls(),w=a.useMemo(()=>ds(j,u,p),[j,u,p]),A=a.useMemo(()=>{if(C)return g=>j({threadId:C.threadId,messageId:C.messageId,mode:g})},[j,C]),{nextMessageId:q,previousMessageId:z}=Ps({context:S,orderedIds:S.orderedIds,selectedMessageId:p,enabled:!U&&!R,hasOpenThread:u!==void 0,onClose:r,handlers:{reply:()=>A?.("reply"),replyAll:()=>A?.("reply-all"),forward:()=>A?.("forward"),delete:()=>{S.listCommandsRef.current?.requestVerb("delete")||P.deleteThread()},toggleStar:P.toggleStar,toggleRead:()=>{S.listCommandsRef.current?.requestVerb("markRead")||C&&$([C.messageId],!C.isRead)},goFlagged:()=>l("flagged"),goSettings:()=>l("settings")}}),O=a.useCallback(g=>{if(!g)return;const N=f.find(B=>B.messageId===g);return N?{threadId:N.threadId,messageId:g}:void 0},[f]),Q={selectedMessageId:p,selectedThread:I,conversation:L,onOpenThread:h,onCloseThread:r,nextThread:O(q),previousThread:O(z),actions:F,onReply:w,triage:S,onDeleteMessages:T,handleDeselectIfRemoved:v};return o.jsx(De.Provider,{value:Q,children:s})}function Le(){const{selectedMessageId:e,onOpenThread:s,triage:n,onDeleteMessages:r}=J(),{accounts:l}=Y();return o.jsx(St,{accounts:l,selectedMessageId:e,onOpenThread:s,commandsRef:n.listCommandsRef,onTriageContextChange:n.onTriageContextChange,onDeleteMessages:r})}function Ct(){const{conversation:e,selectedThread:s,actions:n,onReply:r,handleDeselectIfRemoved:l}=J(),d=!!e,u=Qs(e?.threadId);return o.jsxs(o.Fragment,{children:[o.jsxs("section",{className:"flex h-full w-full min-w-0 flex-col bg-canvas",children:[o.jsx(Hs,{hasThread:d,intelligenceOpen:u.isShowing,canToggleIntelligence:u.canToggle,onToggleIntelligence:u.toggle,onReply:r?()=>r("reply"):void 0,onReplyAll:r?()=>r("reply-all"):void 0,onForward:r?()=>r("forward"):void 0,onDelete:d?n.deleteThread:void 0,onToggleStar:d?n.toggleStar:void 0,isStarred:n.isStarred,moveContext:d&&n.accountId&&n.mailboxId?{accountId:n.accountId,currentMailboxId:n.mailboxId,onMove:n.moveThread}:void 0}),o.jsx("div",{className:"min-h-0 flex-1 overflow-hidden",children:e?o.jsx(we,{threadId:e.threadId,mailboxId:e.mailboxId,subject:e.subject,selectedMessageId:e.messageId,authenticity:e.authenticity,onOpenIntelligence:u.open,listOnScreen:!0}):o.jsx(hs,{})})]}),o.jsx(Me,{isOpen:u.drawerOpen,onClose:u.closeDrawer,thread:s,mailboxId:s?.mailboxId,accountId:s?.accountId,onAfterOptimisticRemove:l})]})}function jt(){const{selectedThread:e,handleDeselectIfRemoved:s}=J(),{onToggleIntelligence:n}=Y();return o.jsx(zs,{onClose:n,thread:e,mailboxId:e?.mailboxId,accountId:e?.accountId,onAfterOptimisticRemove:s})}function Rt(){const{selectedThread:e,conversation:s,onOpenThread:n,onCloseThread:r,nextThread:l,previousThread:d,handleDeselectIfRemoved:u}=J(),m=qs(s?.threadId??null);return s?o.jsxs(o.Fragment,{children:[o.jsx(we,{threadId:s.threadId,mailboxId:s.mailboxId,subject:s.subject,selectedMessageId:s.messageId,authenticity:s.authenticity,onBack:r,onOpenIntelligence:m.toggle,onSwipeNext:l?()=>n(l):void 0,onSwipePrevious:d?()=>n(d):void 0,mobileIntelligenceOpen:m.isOpen}),o.jsx(Me,{isOpen:m.isOpen,onClose:m.close,thread:e,mailboxId:e?.mailboxId,accountId:e?.accountId,onAfterOptimisticRemove:u})]}):o.jsx("div",{className:"h-full",children:o.jsx(Le,{})})}const Pt=Object.assign(Tt,{List:Le,Reading:Ct,Intelligence:jt,Phone:Rt});export{Pt as B};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{j as t,e as r}from"./index-
|
|
1
|
+
import{j as t,e as r}from"./index-BFSh9YGr.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{
|
|
1
|
+
import{dU as J,r as n,d6 as X,v as H,b5 as Y,bF as Z,aT as ee,aU as te,j as a,a9 as se,bP as ae,bQ as re}from"./index-BFSh9YGr.js";import{u as oe,p as ne,R as de}from"./useSearchTokenContext-B2RNVrZh.js";import{H as ie,ac as le,I as ce,aw as ue,ad as ge,b as he,M as me,ak as fe,ax as Ie,am as pe,q as xe,L as Te,Q as V,P as ye,N as be,d as ve,_ as Re,$ as Ce,a1 as K,a2 as U,a3 as Se,a4 as we,a5 as je}from"./MailListHeader-CRaaDXQR.js";import{u as Fe,b as Me,a as Oe}from"./MailViewChrome-BCf1WGZa.js";import{f as Pe}from"./ErrorState-CjTpaQno.js";import{w as ke}from"./wizard-selection-B1bng5Jq.js";import{a as Le}from"./useMessageBodyContent-BDTufR43.js";import{j as Ae,k as Ne}from"./search-token-index-CXNrQUph.js";import{u as De}from"./index-BTmFY2LN.js";const Ee=()=>X({query:{starred:!0,order:"desc"}});function W(){const{data:e,isLoading:t,isError:s,error:d,refetch:h,fetchNextPage:c,hasNextPage:r,isFetchingNextPage:m}=Fe({queryKey:Ee(),queryFn:async({pageParam:T})=>{const{data:b}=await J({query:{starred:!0,order:"desc",continuationToken:T},throwOnError:!0});return b},initialPageParam:void 0,getNextPageParam:T=>T.continuationToken,staleTime:6e4});return{threads:n.useMemo(()=>(e?.pages??[]).flatMap(T=>T.items??[]),[e]),isLoading:t,isError:s,error:d,refetch:h,fetchNextPage:c,hasNextPage:r,isFetchingNextPage:m}}const Be=e=>{const t=new Set;return e.filter(s=>t.has(s.threadId)?!1:(t.add(s.threadId),!0))},qe={unread:e=>!e.isRead,attachment:e=>e.hasAttachment===!0};function Qe({rows:e,verb:t}){const{selectedIds:s,exitSelection:d}=pe(),h=n.useMemo(()=>ke(e,s),[e,s]);return a.jsx(xe,{verb:t,selection:h,selectionRestriction:"spansAccounts",onFinished:d})}function He({selectedMessageId:e,onOpenThread:t,commandsRef:s,onTriageContextChange:d,onDeleteMessages:h}){const{searchQuery:c,resultFolderIndex:r}=H(),m=oe(),I=Y(),T=Z(),[b,f]=n.useState("all"),[g,F]=n.useState(new Set),D=n.useCallback(o=>{F(u=>{const x=new Set(u);return x.has(o)?x.delete(o):x.add(o),x})},[]),C=n.useCallback(()=>{f("all"),F(new Set)},[]),{threads:M,isLoading:y,isError:O,error:E,refetch:P,fetchNextPage:z,hasNextPage:p,isFetchingNextPage:S}=W(),{freeText:R,tokens:k}=ne(c.trim().toLowerCase(),m),i=n.useMemo(()=>{const o=Array.from(g).map(u=>qe[u]).filter(u=>u!=null);return Be(M).map(ie).filter(u=>(b==="all"||u.category===b)&&o.every(x=>x(u))&&(!R||le(u,R))&&ce(u,k))},[M,b,g,R,k]),w=n.useCallback((o,u)=>{const x=i.find($=>$.id===o)?.threadId;x&&t?.({threadId:x,messageId:o},u)},[i,t]),j=n.useCallback(o=>{const u=o.threadId??i.find(x=>x.id===o.id)?.threadId;u&&t?.({threadId:u,messageId:o.id})},[i,t]),B=n.useMemo(()=>ue(),[]),q=n.useMemo(()=>i.map(o=>ge(o,r)),[i,r]),L=n.useMemo(()=>i.filter(o=>!o.isRead).length,[i]),A=y?"loading":O?"error":i.length===0?"empty":"ready",l=n.useCallback(()=>{const o=ee(te());window.open(o,"_blank","noopener,noreferrer")},[]),v=he(),Q=a.jsx("div",{className:"flex h-full min-h-0 flex-col",children:a.jsxs("div",{className:"flex-1 overflow-y-auto",children:[a.jsx("div",{className:"divide-y divide-line",children:i.map(o=>a.jsx(me,{thread:o,active:o.id===e,onClick:()=>w(o.id)},o.id))}),p?a.jsx("button",{type:"button",className:"w-full py-3 text-sm text-muted hover:text-fg disabled:opacity-50",onClick:()=>z(),disabled:S,children:S?"Loading…":"Load more"}):null]})});return a.jsx(Me,{title:"Starred",unreadCount:L,preset:B,selectedCategory:b,activeFilters:g,onSelectCategory:f,onToggleFilter:D,onClearFilters:C,searchResults:q,searchLoading:y,onSelectSearchResult:j,searchResultsInBody:!0,children:a.jsxs(fe,{selectedMessageId:e,rows:i,onOpen:w,onDeleteMessages:h,onSelectionVerb:T.start,commandsRef:s,onTriageContextChange:d,children:[a.jsx(Oe,{listTitle:"Starred",sections:[{id:"flagged",threads:i}],flatList:!0,hideHeader:!0,listState:v.searchResults?"ready":A,searchQuery:R?c:void 0,errorMessage:O?Pe(E):void 0,onRetry:()=>P(),onReportError:l,selectedThreadId:e,onSelectThread:w,isDesktop:I,selectionBar:a.jsx(Ie,{title:"Starred"}),listBody:v.searchResults??(A==="ready"?Q:void 0)}),a.jsx(Qe,{rows:i,verb:T.verb})]})})}const _=n.createContext(null);function N(){const e=n.useContext(_);if(!e)throw new Error("FlaggedPane.* must be used inside <FlaggedPane>");return e}function ze({thread:e,children:t}){const s=Ae(),d=Ne(),h=De(),{searchInput:c}=H(),r=e?.threadId,m=e?.messageId,{threads:I}=W(),T=n.useMemo(()=>{if(r)return I.find(l=>l.messageId===m)??I.find(l=>l.threadId===r)},[I,r,m]),b=Te(r,m),f=T??b,g=m??f?.messageId,F=n.useMemo(()=>{if(r)return{threadId:r,mailboxId:f?.mailboxId??"",subject:f?.subject,messageId:g,authenticity:f?.authenticity}},[r,f,g]),D=n.useCallback((l,v)=>{s(l,{replace:v?.replace,query:c})},[s,c]),C=n.useCallback(l=>{g&&l.includes(g)&&d()},[g,d]),M=V({thread:f,isOpen:!0,onAfterOptimisticRemove:C}),y=ye(),{deleteMessages:O}=be({mailboxId:f?.mailboxId??"",messages:I,onAfterOptimisticRemove:C}),{toggleReadFor:E}=ve({mailboxId:f?.mailboxId??"",messages:I}),P=y.focusedMessageId,p=n.useMemo(()=>I.find(l=>l.messageId===P),[I,P])??f,S=V({thread:p,isOpen:p?.messageId===g}),R=Le(),k=se(),i=ae(),w=n.useMemo(()=>re(i,r,g),[i,r,g]),j=n.useMemo(()=>{if(p)return l=>i({threadId:p.threadId,messageId:p.messageId,mode:l})},[i,p]),{nextMessageId:B,previousMessageId:q}=Re({context:y,orderedIds:y.orderedIds,selectedMessageId:g,enabled:!R&&!k,hasOpenThread:r!==void 0,onClose:d,handlers:{reply:()=>j?.("reply"),replyAll:()=>j?.("reply-all"),forward:()=>j?.("forward"),delete:()=>{y.listCommandsRef.current?.requestVerb("delete")||S.deleteThread()},toggleStar:S.toggleStar,toggleRead:()=>{y.listCommandsRef.current?.requestVerb("markRead")||p&&E([p.messageId],!p.isRead)},goBrief:()=>h("brief"),goSettings:()=>h("settings")}}),L=n.useCallback(l=>{if(!l)return;const v=I.find(Q=>Q.messageId===l);return v?{threadId:v.threadId,messageId:l}:void 0},[I]),A={selectedMessageId:g,selectedThread:f,conversation:F,onOpenThread:D,onCloseThread:d,nextThread:L(B),previousThread:L(q),actions:M,onReply:w,triage:y,onDeleteMessages:O,handleDeselectIfRemoved:C};return a.jsx(_.Provider,{value:A,children:t})}function G(){const{selectedMessageId:e,onOpenThread:t,triage:s,onDeleteMessages:d}=N();return a.jsx(He,{selectedMessageId:e,onOpenThread:t,commandsRef:s.listCommandsRef,onTriageContextChange:s.onTriageContextChange,onDeleteMessages:d})}function Ve(){const{conversation:e,selectedThread:t,actions:s,onReply:d,handleDeselectIfRemoved:h}=N(),c=!!e,r=we(e?.threadId);return a.jsxs(a.Fragment,{children:[a.jsxs("section",{className:"flex h-full w-full min-w-0 flex-col bg-canvas",children:[a.jsx(je,{hasThread:c,intelligenceOpen:r.isShowing,canToggleIntelligence:r.canToggle,onToggleIntelligence:r.toggle,onReply:d?()=>d("reply"):void 0,onReplyAll:d?()=>d("reply-all"):void 0,onForward:d?()=>d("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}),a.jsx("div",{className:"min-h-0 flex-1 overflow-hidden",children:e?a.jsx(K,{threadId:e.threadId,mailboxId:e.mailboxId,subject:e.subject,selectedMessageId:e.messageId,authenticity:e.authenticity,onOpenIntelligence:r.open,listOnScreen:!0}):a.jsx(de,{})})]}),a.jsx(U,{isOpen:r.drawerOpen,onClose:r.closeDrawer,thread:t,mailboxId:t?.mailboxId,accountId:t?.accountId,onAfterOptimisticRemove:h})]})}function Ke(){const{selectedThread:e,handleDeselectIfRemoved:t}=N(),{onToggleIntelligence:s}=H();return a.jsx(Se,{onClose:s,thread:e,mailboxId:e?.mailboxId,accountId:e?.accountId,onAfterOptimisticRemove:t})}function Ue(){const{selectedThread:e,conversation:t,onCloseThread:s,onOpenThread:d,nextThread:h,previousThread:c,handleDeselectIfRemoved:r}=N(),m=Ce(t?.threadId??null);return t?a.jsxs(a.Fragment,{children:[a.jsx(K,{threadId:t.threadId,mailboxId:t.mailboxId,subject:t.subject,selectedMessageId:t.messageId,authenticity:t.authenticity,onBack:s,onOpenIntelligence:m.toggle,onSwipeNext:h?()=>d(h):void 0,onSwipePrevious:c?()=>d(c):void 0,mobileIntelligenceOpen:m.isOpen}),a.jsx(U,{isOpen:m.isOpen,onClose:m.close,thread:e,mailboxId:e?.mailboxId,accountId:e?.accountId,onAfterOptimisticRemove:r})]}):a.jsx("div",{className:"h-full",children:a.jsx(G,{})})}const tt=Object.assign(ze,{List:G,Reading:Ve,Intelligence:Ke,Phone:Ue});export{tt as F};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as n,D as f,a2 as m,L as N,j as e,
|
|
1
|
+
import{r as n,D as f,a2 as m,L as N,j as e,b5 as w,X as E}from"./index-BFSh9YGr.js";import{E as u}from"./ErrorState-CjTpaQno.js";import{D as r,C as x,a as k}from"./index-BTmFY2LN.js";import{b as p,e as h,f as b}from"./useMessageBodyContent-BDTufR43.js";import{C as S}from"./confirm-dialog-Do7BKKbS.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})]})},L=()=>{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{L as F};
|