@remit/web-client-dist 0.0.495 → 0.0.497
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-BEMpREbM.js → BriefPane-C1YHZUAd.js} +1 -1
- package/assets/{CalendarComposePane-B8RIG3G1.js → CalendarComposePane-VeLWQkta.js} +1 -1
- package/assets/{CalendarComposeSeed-DKiVztER.js → CalendarComposeSeed-675yfCbg.js} +1 -1
- package/assets/{CalendarShell-CPdIENU0.js → CalendarShell-xNMmpbgB.js} +1 -1
- package/assets/{EmptyState-ByZPPoBW.js → EmptyState-CegqC3j2.js} +1 -1
- package/assets/{ErrorState-BdpB-2BQ.js → ErrorState-BGolGYcc.js} +1 -1
- package/assets/{FlaggedPane-DgGAJWxG.js → FlaggedPane-DaORUctH.js} +1 -1
- package/assets/{FullCompose-w8QBwa1F.js → FullCompose-DqLTXvyP.js} +1 -1
- package/assets/{MailListHeader-DpqTxu9Y.js → MailListHeader-Dhgkq9td.js} +1 -1
- package/assets/{MailNav-B_HG7DOH.js → MailNav-BPZ--2Zq.js} +1 -1
- package/assets/{MailShell-DoajaymZ.js → MailShell-Cd-aCKBf.js} +1 -1
- package/assets/{MailViewChrome-BoZny5Ug.js → MailViewChrome-J4bT_B41.js} +1 -1
- package/assets/{MailboxPane-55oYauzw.js → MailboxPane-dSxHZfJq.js} +1 -1
- package/assets/{NavMenuButton-eChrqIjJ.js → NavMenuButton-CqSZuMpN.js} +1 -1
- package/assets/{OnboardingWizard-Cnq-2-am.js → OnboardingWizard-bzjJS9rU.js} +1 -1
- package/assets/{OpenCalendarEvent-D8vDrPlh.js → OpenCalendarEvent-DHCCZvs1.js} +1 -1
- package/assets/{OutboxPane-YAn3UaxA.js → OutboxPane-BFHcQFSQ.js} +1 -1
- package/assets/_calendarObjectId-DB4s52e7.js +1 -0
- package/assets/_mailboxId-_UuyonBt.js +1 -0
- package/assets/_messageId-C2mL362O.js +1 -0
- package/assets/_messageId-DoUX-Wpm.js +1 -0
- package/assets/_messageId-QtN4lnMz.js +1 -0
- package/assets/_outboxMessageId-u04H30d0.js +1 -0
- package/assets/_recurrenceId-p4xgYlsW.js +1 -0
- package/assets/_threadId-B52u4ZGm.js +1 -0
- package/assets/_threadId-DyxmoTSp.js +1 -0
- package/assets/_threadId-NYak8BAJ.js +1 -0
- package/assets/{_view._date-6Wdiax9r.js → _view._date-CNtQuag8.js} +1 -1
- package/assets/{accounts-B7WcpGKX.js → accounts-BFZIBw9t.js} +1 -1
- package/assets/{advanced-Bh1WCftW.js → advanced-DHRgNnGq.js} +1 -1
- package/assets/{appearance-Ux2-yIoq.js → appearance--2gV-DqW.js} +1 -1
- package/assets/{attachment-file-D0HDeXxM.js → attachment-file-QQZovKAl.js} +1 -1
- package/assets/{avatar-CRolAGMx.js → avatar-klLMB_Me.js} +1 -1
- package/assets/{bottom-sheet-DscANK9c.js → bottom-sheet-CRsV78aJ.js} +1 -1
- package/assets/brief-CK2Ag4aM.js +1 -0
- package/assets/{brief-CnKOJ14k.js → brief-pxbBSjyV.js} +1 -1
- package/assets/{browser-ponyfill-Q866M4Nr.js → browser-ponyfill-rQg15kf2.js} +1 -1
- package/assets/{bug-pEghc6tg.js → bug-ECDjr3jW.js} +1 -1
- package/assets/{calendar-Rv-lEWWe.js → calendar-YiaPuzno.js} +1 -1
- package/assets/{calendar-days-BJ_20Jyk.js → calendar-days-oK-1rKbM.js} +1 -1
- package/assets/{card-CcIkIugx.js → card-GNRohr9F.js} +1 -1
- package/assets/chevron-left-CK510N2A.js +1 -0
- package/assets/{circle-check-j3ftvpbW.js → circle-check-D_bOnWVf.js} +1 -1
- package/assets/{circle-check-big-C-VUNWnE.js → circle-check-big-CvyTX3eu.js} +1 -1
- package/assets/{circle-help-CwU6dZTm.js → circle-help-rRKfilDF.js} +1 -1
- package/assets/{clock-WuXeJWU-.js → clock-CV2mIEQ0.js} +1 -1
- package/assets/compose._-_outboxMessageId_-BhZ6kS29.js +1 -0
- package/assets/compose._-_outboxMessageId_-CF-uuezv.js +1 -0
- package/assets/compose._-_outboxMessageId_-CmYl260X.js +1 -0
- package/assets/compose._-_outboxMessageId_-D-vZ8Vfz.js +1 -0
- package/assets/{config-import-BE0ryw-i.js → config-import-s1ErxyaK.js} +1 -1
- package/assets/{confirm-dialog-BHPwL2Mu.js → confirm-dialog-PyqpaetG.js} +1 -1
- package/assets/{credential-steps-DNS1SWlp.js → credential-steps-BiPyTE8I.js} +1 -1
- package/assets/{download-N8RxH0I6.js → download-DdbznPAS.js} +1 -1
- package/assets/{filters-Ct4TImnH.js → filters-SuJREA5G.js} +1 -1
- package/assets/flagged-BnnTqpKk.js +1 -0
- package/assets/{flagged-DhiVOrbH.js → flagged-DPX_qlUe.js} +1 -1
- package/assets/{folders-CQJZVAEw.js → folders-qoxhQhfr.js} +1 -1
- package/assets/{format-B_FD2e8R.js → format-RgJz8yFq.js} +1 -1
- package/assets/{help-copy-CG_2LyCi.js → help-copy-DdhDXdzQ.js} +1 -1
- package/assets/{import-kmOabCNM.js → import-B0ywsXJp.js} +1 -1
- package/assets/index-3Cm_Sair.js +1 -0
- package/assets/{index-BQWnqT7l.js → index-8Di8quRN.js} +1 -1
- package/assets/index-BU1mrVnk.js +1 -0
- package/assets/index-BdhP6zUj.js +1 -0
- package/assets/index-C61kVhwz.js +1 -0
- package/assets/index-DFBSDyEq.js +1 -0
- package/assets/{index-BoxiBjE8.js → index-DMZ8-zZM.js} +4 -4
- package/assets/index-DZxBsRSE.js +1 -0
- package/assets/index-DoUX-Wpm.js +1 -0
- package/assets/index-QtN4lnMz.js +1 -0
- package/assets/{index-tORYm1g3.js → index-RbY7Dn0X.js} +4 -4
- package/assets/index-RlCFATZr.js +1 -0
- package/assets/{kbd-CQfGa1PF.js → kbd-BV5q0Za-.js} +1 -1
- package/assets/{labels-DmoFn23z.js → labels-Dgk62TQB.js} +1 -1
- package/assets/{mail-zh2SRy5b.js → mail-Bff0HSL7.js} +1 -1
- package/assets/{mail-DzgLd5ht.js → mail-C2pH_nIp.js} +1 -1
- package/assets/{menu-DN5zpA0a.js → menu-DqCvhoo6.js} +1 -1
- package/assets/minus-DTWvP8bv.js +1 -0
- package/assets/{new-SbqXSShl.js → new-zGcaCoRf.js} +1 -1
- package/assets/onboarding-DN1fXIpr.js +1 -0
- package/assets/{onboarding-completion-bJbWoJKX.js → onboarding-completion-0kUxmKoQ.js} +1 -1
- package/assets/outbox-CuXqTLiE.js +1 -0
- package/assets/{pencil-BxMsOZ8c.js → pencil-D2wigVut.js} +1 -1
- package/assets/{rich-text-BHpf3a14.js → rich-text-DJZuCFUV.js} +1 -1
- package/assets/{rich-text-spellcheck-worker-provider-BO9xn8gr.js → rich-text-spellcheck-worker-provider-CJdp1lGc.js} +1 -1
- package/assets/{rotate-ccw-Cs1JQfpJ.js → rotate-ccw-BRLfH-fd.js} +1 -1
- package/assets/{row-actions-DPIYaysg.js → row-actions-DO7n5J0t.js} +1 -1
- package/assets/{search-mirror-2weR7Ba_.js → search-mirror-NOSJLcGR.js} +1 -1
- package/assets/{search-token-index-D-gWPAEk.js → search-token-index-BQBAjCB1.js} +1 -1
- package/assets/{sections-COsJpcXX.js → sections-DVKafU2-.js} +1 -1
- package/assets/{senders-3doDrsut.js → senders-BAu3RfQ0.js} +1 -1
- package/assets/settings-BbKjeZZu.js +1 -0
- package/assets/{settings-screen-4RhR5454.js → settings-screen-BZEszQ1s.js} +1 -1
- package/assets/{shield-check-CDbh7UQQ.js → shield-check-BM5CxZVS.js} +1 -1
- package/assets/{suggested-vips-BlaOLYOc.js → suggested-vips-9wJhynOD.js} +1 -1
- package/assets/{useCalendarData-B5kQq5mg.js → useCalendarData-C2e-a6YP.js} +1 -1
- package/assets/{useCalendars-CuuHCvAe.js → useCalendars-BruqGaWc.js} +1 -1
- package/assets/{useDebouncedValue-ATwGPcJy.js → useDebouncedValue-BBOZojyy.js} +1 -1
- package/assets/{useFilters-BcjDJmnI.js → useFilters-D8luT8sB.js} +1 -1
- package/assets/{useLabels-DXK6wqpQ.js → useLabels-DbWrQIbS.js} +1 -1
- package/assets/{useLayoutTier-B31omesr.js → useLayoutTier-DKpSXts5.js} +1 -1
- package/assets/{useMessageBodyContent-Dgv5wWIW.js → useMessageBodyContent-DxQjkGza.js} +1 -1
- package/assets/{useQueries-CYk5lp9G.js → useQueries-Baii11SK.js} +1 -1
- package/assets/{useRefreshControl-Ek98Uvm0.js → useRefreshControl-DKnu6drF.js} +1 -1
- package/assets/{useSearchTokenContext-BKuymkTr.js → useSearchTokenContext-DohJINg2.js} +1 -1
- package/assets/{useSemanticSearch-BK5kVsoj.js → useSemanticSearch-DfxdKsNk.js} +1 -1
- package/assets/{useSignature-D5Vdi95d.js → useSignature-At1N2nkq.js} +1 -1
- package/index.html +1 -1
- package/package.json +1 -1
- package/assets/_calendarObjectId-BuG_Ye1C.js +0 -1
- package/assets/_mailboxId-YH1qdozC.js +0 -1
- package/assets/_messageId-DT8AInZs.js +0 -1
- package/assets/_messageId-Drx2zgqi.js +0 -1
- package/assets/_messageId-wkdIQ55g.js +0 -1
- package/assets/_outboxMessageId-BH_mWFfT.js +0 -1
- package/assets/_recurrenceId-BpO2J3MQ.js +0 -1
- package/assets/_threadId-BBYabMdf.js +0 -1
- package/assets/_threadId-DgIn0EPf.js +0 -1
- package/assets/_threadId-pMNs7I9p.js +0 -1
- package/assets/brief-BSuLtYRH.js +0 -1
- package/assets/chevron-left-Ga46zxOJ.js +0 -1
- package/assets/compose._-_outboxMessageId_-BmHcjRV_.js +0 -1
- package/assets/compose._-_outboxMessageId_-CBakJ-28.js +0 -1
- package/assets/compose._-_outboxMessageId_-CQmLLJ1w.js +0 -1
- package/assets/compose._-_outboxMessageId_-Cy_n6EHj.js +0 -1
- package/assets/flagged-Br3BjTTD.js +0 -1
- package/assets/index-BwMp4ajK.js +0 -1
- package/assets/index-Cv2GSA9r.js +0 -1
- package/assets/index-DPkvu_tH.js +0 -1
- package/assets/index-DdfFHYoN.js +0 -1
- package/assets/index-Dlf2Mkch.js +0 -1
- package/assets/index-Drx2zgqi.js +0 -1
- package/assets/index-bKs-2H7O.js +0 -1
- package/assets/index-th64R5dx.js +0 -1
- package/assets/index-wkdIQ55g.js +0 -1
- package/assets/minus-cjwKQEGX.js +0 -1
- package/assets/onboarding-C1GknuLf.js +0 -1
- package/assets/outbox-WWgW5q0K.js +0 -1
- package/assets/settings-C4nobC4_.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as r}from"./index-DMZ8-zZM.js";import{B as o}from"./BriefPane-C1YHZUAd.js";import"./useSearchTokenContext-DohJINg2.js";import"./kbd-BV5q0Za-.js";import"./useMessageBodyContent-DxQjkGza.js";import"./search-scope-B5-OK3Cq.js";import"./MailListHeader-Dhgkq9td.js";import"./search-token-index-BQBAjCB1.js";import"./useLayoutTier-DKpSXts5.js";import"./useQueries-Baii11SK.js";import"./attachment-file-QQZovKAl.js";import"./mail-Bff0HSL7.js";import"./avatar-klLMB_Me.js";import"./index-RbY7Dn0X.js";import"./useSignature-At1N2nkq.js";import"./account-form-helpers-DhckT_PN.js";import"./useDebouncedValue-BBOZojyy.js";import"./sections-DVKafU2-.js";import"./format-RgJz8yFq.js";import"./EmptyState-CegqC3j2.js";import"./ErrorState-BGolGYcc.js";import"./download-DdbznPAS.js";import"./shield-check-BM5CxZVS.js";import"./useFilters-D8luT8sB.js";import"./minus-DTWvP8bv.js";import"./confirm-dialog-PyqpaetG.js";import"./clock-CV2mIEQ0.js";import"./menu-DqCvhoo6.js";import"./useRefreshControl-DKnu6drF.js";import"./circle-check-big-CvyTX3eu.js";import"./useLabels-DbWrQIbS.js";import"./useSemanticSearch-DfxdKsNk.js";import"./search-query-Cr_ZXBCp.js";import"./wizard-selection-B1bng5Jq.js";function I(){return r.jsx(o.Reading,{})}export{I as component};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as r}from"./index-DMZ8-zZM.js";import{B as o}from"./BriefPane-C1YHZUAd.js";import"./useSearchTokenContext-DohJINg2.js";import"./kbd-BV5q0Za-.js";import"./useMessageBodyContent-DxQjkGza.js";import"./search-scope-B5-OK3Cq.js";import"./MailListHeader-Dhgkq9td.js";import"./search-token-index-BQBAjCB1.js";import"./useLayoutTier-DKpSXts5.js";import"./useQueries-Baii11SK.js";import"./attachment-file-QQZovKAl.js";import"./mail-Bff0HSL7.js";import"./avatar-klLMB_Me.js";import"./index-RbY7Dn0X.js";import"./useSignature-At1N2nkq.js";import"./account-form-helpers-DhckT_PN.js";import"./useDebouncedValue-BBOZojyy.js";import"./sections-DVKafU2-.js";import"./format-RgJz8yFq.js";import"./EmptyState-CegqC3j2.js";import"./ErrorState-BGolGYcc.js";import"./download-DdbznPAS.js";import"./shield-check-BM5CxZVS.js";import"./useFilters-D8luT8sB.js";import"./minus-DTWvP8bv.js";import"./confirm-dialog-PyqpaetG.js";import"./clock-CV2mIEQ0.js";import"./menu-DqCvhoo6.js";import"./useRefreshControl-DKnu6drF.js";import"./circle-check-big-CvyTX3eu.js";import"./useLabels-DbWrQIbS.js";import"./useSemanticSearch-DfxdKsNk.js";import"./search-query-Cr_ZXBCp.js";import"./wizard-selection-B1bng5Jq.js";function H(){return r.jsx(o.Reading,{})}export{H as component};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as o}from"./index-DMZ8-zZM.js";import{F as r}from"./FlaggedPane-DaORUctH.js";import"./useSearchTokenContext-DohJINg2.js";import"./kbd-BV5q0Za-.js";import"./useMessageBodyContent-DxQjkGza.js";import"./search-scope-B5-OK3Cq.js";import"./MailListHeader-Dhgkq9td.js";import"./search-token-index-BQBAjCB1.js";import"./useLayoutTier-DKpSXts5.js";import"./useQueries-Baii11SK.js";import"./attachment-file-QQZovKAl.js";import"./mail-Bff0HSL7.js";import"./avatar-klLMB_Me.js";import"./index-RbY7Dn0X.js";import"./useSignature-At1N2nkq.js";import"./account-form-helpers-DhckT_PN.js";import"./useDebouncedValue-BBOZojyy.js";import"./sections-DVKafU2-.js";import"./format-RgJz8yFq.js";import"./EmptyState-CegqC3j2.js";import"./ErrorState-BGolGYcc.js";import"./download-DdbznPAS.js";import"./shield-check-BM5CxZVS.js";import"./useFilters-D8luT8sB.js";import"./minus-DTWvP8bv.js";import"./confirm-dialog-PyqpaetG.js";import"./clock-CV2mIEQ0.js";import"./menu-DqCvhoo6.js";import"./MailViewChrome-J4bT_B41.js";import"./wizard-selection-B1bng5Jq.js";function B(){return o.jsx(r.Reading,{})}export{B as component};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/rich-text-spellcheck-worker-provider-
|
|
2
|
-
import{j as m,X as Lr,t as _r,f as un,L as Mr,$ as jr,a2 as $r,r as s,cd as Fr,ce as Br,Y as $n,aq as Hr,cf as Wr,Z as Ur,cg as Vr,ch as tn,bH as Fn,ci as Ee,cj as Bn,ck as zr,c2 as qr,h as Kr,i as yt,cl as bt,cm as Yr,cn as Gr,ac as Xr,c as Et,bF as Qr,co as Hn,aY as Zr,aZ as Jr,cp as eo,d as Wn,cq as to,as as no,cr as ro,cs as ln,ct as oo,cu as Lt,cv as ao,au as so,cw as io,at as co,B as uo,bc as lo,cx as fo,ar as C}from"./index-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/rich-text-spellcheck-worker-provider-CJdp1lGc.js","assets/index-DMZ8-zZM.js","assets/index-BvZRCv6K.css","assets/rich-text-spellcheck-provider-J8m9wz6A.js","assets/rich-text-DJZuCFUV.js","assets/confirm-dialog-PyqpaetG.js","assets/bottom-sheet-CRsV78aJ.js","assets/attachment-file-QQZovKAl.js","assets/useMessageBodyContent-DxQjkGza.js","assets/useSignature-At1N2nkq.js","assets/account-form-helpers-DhckT_PN.js","assets/useDebouncedValue-BBOZojyy.js","assets/sections-DVKafU2-.js","assets/format-RgJz8yFq.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{j as m,X as Lr,t as _r,f as un,L as Mr,$ as jr,a2 as $r,r as s,cd as Fr,ce as Br,Y as $n,aq as Hr,cf as Wr,Z as Ur,cg as Vr,ch as tn,bH as Fn,ci as Ee,cj as Bn,ck as zr,c2 as qr,h as Kr,i as yt,cl as bt,cm as Yr,cn as Gr,ac as Xr,c as Et,bF as Qr,co as Hn,aY as Zr,aZ as Jr,cp as eo,d as Wn,cq as to,as as no,cr as ro,cs as ln,ct as oo,cu as Lt,cv as ao,au as so,cw as io,at as co,B as uo,bc as lo,cx as fo,ar as C}from"./index-DMZ8-zZM.js";import{b as mo}from"./useMessageBodyContent-DxQjkGza.js";import{u as po}from"./useSignature-At1N2nkq.js";import{b as ho}from"./account-form-helpers-DhckT_PN.js";import{u as vo}from"./useDebouncedValue-BBOZojyy.js";import{a as go}from"./sections-DVKafU2-.js";import{a as wo}from"./format-RgJz8yFq.js";const yo=({email:e,displayName:t,onRemove:n,className:r})=>m.jsxs("span",{className:_r("inline-flex items-center gap-1 px-2 py-0.5 rounded-full bg-accent-2-soft text-sm max-w-[200px]",r),children:[m.jsx("span",{className:"truncate",children:t||e}),m.jsx("button",{type:"button",onClick:n,className:"shrink-0 p-0.5 rounded-full hover:bg-fg-muted/20 transition-colors","aria-label":`Remove ${e}`,children:m.jsx(Lr,{className:"size-3"})})]}),bo=({save:e})=>e.status==="saving"?m.jsx("output",{className:"animate-pulse text-xs text-fg-muted",children:"Saving..."}):e.status==="saved"?m.jsx("output",{className:"text-xs text-fg-muted",children:"Draft saved"}):e.status==="error"?m.jsx("output",{className:"text-xs text-danger",children:"Save failed"}):e.status==="unsaved"?m.jsx("output",{className:"truncate text-xs text-warning",children:e.reason}):null;function Eo({send:e,onSend:t,onBlocked:n,onDiscard:r,save:o={status:"idle"}}){const a=e.status==="sending",i=e.status==="blocked"?e.reason:void 0;return m.jsxs("div",{className:"flex items-center justify-between border-t border-line px-3 py-2",children:[m.jsxs("div",{className:"flex min-w-0 items-center gap-3",children:[m.jsx(un,{variant:"primary",size:"md","aria-busy":a,title:i,className:"min-h-11 shrink-0 rounded-full px-4","data-testid":"compose-send",icon:a?m.jsx(Mr,{className:"size-4 animate-spin"}):m.jsx(jr,{className:"size-4"}),onClick:()=>{if(!a){if(i!==void 0){n(i);return}t()}},children:"Send"}),m.jsx(bo,{save:o})]}),m.jsx(un,{variant:"ghost",size:"md","aria-busy":a,"aria-label":"Discard",className:"min-h-11 min-w-11 px-2 hover:text-danger",icon:m.jsx($r,{className:"size-4"}),onClick:()=>{a||r()}})]})}const dn=e=>/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e.trim()),So=e=>{const t=e.trim();if(!t)return;const n=t.match(/^(.+?)\s*<([^>]+)>$/);if(n){const r=n[1].trim().replace(/^"(.*)"$/,"$1"),o=n[2].trim();if(dn(o))return{email:o,displayName:r}}if(dn(t))return{email:t}},xo=e=>{const t=[];let n="",r=!1,o=!1;for(const a of e){if(a==='"'&&(r=!r),a==="<"&&(o=!0),a===">"&&(o=!1),(a===","||a===";")&&!r&&!o){t.push(n),n="";continue}n+=a}return t.push(n),t},Co=e=>{const t=[],n=[];for(const r of xo(e)){const o=So(r);if(o){t.push(o);continue}r.trim()&&n.push(r.trim())}return{entries:t,unparsed:n.join(", ")}},Ro=["Tab",","],To=150,Do=({label:e,addresses:t,onChange:n,placeholder:r,suggestions:o=[],onQueryChange:a,onPendingChange:i,ref:c})=>{const[p,f]=s.useState(""),l=s.useRef(null),u=s.useMemo(()=>Co(p),[p]);s.useEffect(()=>{i?.(u)},[u,i]);const h=s.useRef(void 0),w=s.useCallback(()=>{h.current!==void 0&&(clearTimeout(h.current),h.current=void 0)},[]);s.useEffect(()=>w,[w]);const x=new Set(t.map(y=>y.email.toLowerCase())),d=p.length>=2?o.filter(y=>!x.has(y.email.toLowerCase())):[],E=s.useCallback(y=>{f(y),a?.(y)},[a]),b=s.useCallback(y=>{w(),!x.has(y.email.toLowerCase())&&(n([...t,y]),E(""))},[t,x,n,E,w]),T=s.useCallback(y=>{n(t.filter((M,R)=>R!==y))},[t,n]),g=s.useCallback(y=>{b(y),l.current?.focus()},[b]),v=s.useCallback(()=>{if(w(),u.entries.length===0)return{addresses:t,unparsed:u.unparsed};const y=new Set(x),M=[...t];for(const R of u.entries){const W=R.email.toLowerCase();y.has(W)||(y.add(W),M.push(R))}return n(M),E(u.unparsed),{addresses:M,unparsed:u.unparsed}},[u,t,x,n,E,w]),D=s.useCallback(()=>{w(),E("")},[E,w]);s.useImperativeHandle(c,()=>({commitPending:v,clearPending:D}),[v,D]);const _=s.useRef(v);s.useEffect(()=>{_.current=v},[v]);const S=Fr({count:d.length,acceptKeys:Ro,onAccept:y=>g(d[y])}),O=s.useMemo(()=>d.map(y=>({value:y.email,label:y.displayName??y.email,...y.displayName?{hint:y.email}:{}})),[d]),N=s.useCallback(y=>{if(y.key==="Backspace"&&p===""&&t.length>0){T(t.length-1);return}S.handleKeyDown(y)||(y.key==="Enter"||y.key==="Tab"||y.key===",")&&p.trim()&&(y.preventDefault(),v())},[p,t.length,T,S.handleKeyDown,v]),$=s.useCallback(()=>{w(),h.current=setTimeout(()=>{h.current=void 0,_.current(),S.dismiss()},To)},[w,S.dismiss]);return m.jsxs("div",{className:"relative","data-address-field":e,children:[m.jsxs("div",{className:"flex items-start gap-2",children:[m.jsxs("label",{htmlFor:`address-field-${e}`,className:"text-sm text-fg-muted shrink-0 w-12 pt-1.5",children:[e,":"]}),m.jsxs("div",{className:"flex-1 flex flex-wrap items-center gap-1 min-h-[36px] px-2 py-1 border rounded-md bg-canvas cursor-text",onClick:()=>l.current?.focus(),onKeyDown:y=>{(y.key==="Enter"||y.key===" ")&&l.current?.focus()},children:[t.map((y,M)=>m.jsx(yo,{email:y.email,displayName:y.displayName,onRemove:()=>T(M)},y.email)),m.jsx("input",{ref:l,id:`address-field-${e}`,type:"text",value:p,onChange:y=>{S.reopen(),E(y.target.value)},onKeyDown:N,onBlur:$,placeholder:t.length===0?r:"",className:"flex-1 min-w-[120px] bg-transparent outline-none text-sm py-0.5",autoComplete:"off",...S.comboboxProps})]})]}),S.open&&m.jsx(Br,{id:S.listId,suggestions:O,activeIndex:S.activeIndex,optionId:S.optionId,onPick:y=>{const M=d.find(R=>R.email===y.value);M&&g(M)},onHighlight:S.setActiveIndex,label:`${e} suggestions`,className:"absolute left-12 right-0 z-50 mt-1 max-h-[200px] shadow-lg"})]})},Ao=()=>m.jsxs("div",{"aria-hidden":"true","data-testid":"compose-body-skeleton",className:"min-h-[120px] px-3 py-2",children:[m.jsx("div",{className:"mb-2 h-8 animate-pulse rounded bg-surface-sunken"}),m.jsx("div",{className:"min-h-[80px] animate-pulse rounded bg-surface-sunken/50"})]});function Oo({banner:e,header:t,children:n,quoted:r,actionBar:o,layout:a="fill"}){const i=a==="fill";return m.jsxs("div",{className:i?"flex h-full min-h-0 flex-col":"flex flex-col",children:[e,t,m.jsxs("div",{className:i?"flex min-h-0 flex-1 flex-col overflow-auto":"flex flex-col","data-testid":"compose-body-area",children:[n,r&&m.jsx("div",{className:"shrink-0 px-3 pb-2",children:r})]}),i?o:m.jsx("div",{className:"sticky bottom-0 z-10 bg-canvas",children:o})]})}const _t=({label:e,onClick:t})=>m.jsx("button",{type:"button",onClick:t,className:"text-xs text-fg-muted hover:text-fg transition-colors",children:e}),No=({to:e,cc:t,bcc:n,subject:r})=>{const o=[];return e.length>0&&o.push(`To: ${e.map(a=>a.displayName??a.email).join(", ")}`),t.length>0&&o.push(`Cc: ${t.length}`),n.length>0&&o.push(`Bcc: ${n.length}`),r&&o.push(r),o.join(" · ")},ko=({collapsed:e=!1,summary:t="",onExpand:n,from:r,to:o,cc:a,bcc:i,subject:c,onShowCc:p,onShowBcc:f})=>e?m.jsxs("button",{type:"button",onClick:n,"aria-label":"Show recipients and subject",className:"flex min-h-11 w-full items-center gap-2 overflow-hidden border-b border-line px-3 py-1.5 text-left transition-colors hover:bg-surface-sunken","data-testid":"compose-header-collapsed",children:[m.jsx("span",{className:"truncate text-xs text-fg-muted",children:t||"…"}),m.jsx($n,{className:"ml-auto size-4 shrink-0 text-fg-muted","aria-hidden":"true"})]}):m.jsxs("div",{className:"space-y-1 px-3 py-2 border-b border-line",children:[r,o,a??m.jsxs("div",{className:"flex gap-2 pl-14",children:[m.jsx(_t,{label:"Cc",onClick:p}),m.jsx(_t,{label:"Bcc",onClick:f})]}),a&&!i&&m.jsx("div",{className:"pl-14",children:m.jsx(_t,{label:"Bcc",onClick:f})}),i,c]}),Gt="This account can't send mail until SMTP is configured.",Po=({onConfigure:e,configureRef:t})=>m.jsxs("div",{role:"alert","data-testid":"compose-smtp-missing-banner",className:"flex items-start gap-3 border-b border-warning/50 bg-warning/10 px-3 py-2",children:[m.jsx(Hr,{className:"size-5 shrink-0 mt-0.5 text-warning","aria-hidden":"true"}),m.jsxs("div",{className:"flex-1 min-w-0",children:[m.jsx("p",{className:"text-sm font-medium text-warning",children:Gt}),m.jsxs("button",{ref:t,type:"button",onClick:e,"data-testid":"compose-smtp-configure",className:"mt-1 inline-flex items-center gap-1 text-xs font-medium text-warning hover:underline",children:["Configure SMTP",m.jsx(Wr,{className:"size-3","aria-hidden":"true"})]})]})]}),Io=({value:e,onChange:t})=>m.jsxs("div",{className:"flex items-start gap-2",children:[m.jsx("label",{className:"text-sm text-fg-muted shrink-0 w-12 pt-1.5",children:"Subj:"}),m.jsx("input",{type:"text",value:e,onChange:n=>t(n.target.value),className:"flex-1 px-2 py-1.5 border rounded-md bg-canvas text-sm",placeholder:"Subject","data-subject-field":!0})]}),Lo=({text:e,html:t,senderName:n,date:r})=>{const[o,a]=s.useState(!1);if(!e&&!t)return null;const i=[n,r].filter(Boolean).join(" on ");return m.jsxs("div",{className:"mt-2 px-3 pb-2",children:[m.jsxs("button",{type:"button",onClick:()=>a(!o),"aria-expanded":o,className:"flex items-center gap-1 text-xs text-fg-muted hover:text-fg transition-colors",children:[o?m.jsx($n,{className:"size-3"}):m.jsx(Ur,{className:"size-3"}),i?`${i} wrote:`:"Show quoted text"]}),o&&m.jsx("blockquote",{className:"mt-2 pl-3 border-l-2 border-fg-subtle/30 text-sm text-fg-muted [&_a]:text-accent [&_a]:underline [&_blockquote]:pl-3 [&_blockquote]:border-l-2 [&_blockquote]:border-fg-subtle/30",children:t?m.jsx("div",{dangerouslySetInnerHTML:{__html:t}}):e.split(`
|
|
3
3
|
`).map((c,p)=>m.jsx("p",{className:"min-h-[1.2em]",children:c},p))})]})},_o=["p","br","div","h1","h2","h3","h4","h5","h6","strong","b","em","i","u","s","ul","ol","li","blockquote","pre","code","hr","table","thead","tbody","tr","th","td","a","img"],Mo=["href","src","alt","colspan","rowspan","lang","dir"],jo=/^(?:https?:|mailto:)/i,$o=/^(?:https:|data:image\/)/i,Fo="max-width:100%;height:auto",Bo=e=>{const t=Vr();if(!t.isSupported)throw new Error("adopted HTML cannot be sanitized: no DOM is available");return t.addHook("afterSanitizeAttributes",n=>{if(n.tagName==="A"){jo.test(n.getAttribute("href")??"")||n.removeAttribute("href"),e==="quoted"&&(n.setAttribute("target","_blank"),n.setAttribute("rel","noopener noreferrer nofollow"));return}if(n.tagName==="IMG"){if(e==="quoted"){n.remove();return}if(!$o.test(n.getAttribute("src")??"")){n.remove();return}n.setAttribute("style",Fo)}}),t},fn=new Map,Ho=e=>{const t=fn.get(e);if(t)return t;const n=Bo(e);return fn.set(e,n),n},Un=(e,t)=>Ho(t).sanitize(e,{ALLOWED_TAGS:_o,ALLOWED_ATTR:Mo,ALLOW_DATA_ATTR:!1,ALLOW_ARIA_ATTR:!1}),Ui=e=>Un(e,"outgoing"),Wo=e=>Un(e,"quoted"),Uo=e=>typeof e=="string"&&e.length>0?"rich":"plain",Vi=(e,t)=>t.length>0,Vo={plain:"Couldn't switch to plain text",rich:"Couldn't switch to rich text"},zi=(e,t,n)=>t.trim()===""||n.trim()!==""?{outcome:"switch"}:{outcome:"blocked",title:Vo[e],detail:"The conversion came back empty, so your message is unchanged."};function Se(e,t,{checkForDefaultPrevented:n=!0}={}){return function(o){if(e?.(o),n===!1||!o||!o.defaultPrevented)return t?.(o)}}function mn(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function zo(...e){return t=>{let n=!1;const r=e.map(o=>{const a=mn(o,t);return!n&&typeof a=="function"&&(n=!0),a});if(n)return()=>{for(let o=0;o<r.length;o++){const a=r[o];typeof a=="function"?a():mn(e[o],null)}}}}function Pe(...e){return s.useCallback(zo(...e),e)}function qo(e,t=[]){let n=[];function r(a,i){const c=s.createContext(i);c.displayName=a+"Context";const p=n.length;n=[...n,i];const f=u=>{const{scope:h,children:w,...x}=u,d=h?.[e]?.[p]||c,E=s.useMemo(()=>x,Object.values(x));return m.jsx(d.Provider,{value:E,children:w})};f.displayName=a+"Provider";function l(u,h,w={}){const{optional:x=!1}=w,d=h?.[e]?.[p]||c,E=s.useContext(d);if(E)return E;if(i!==void 0)return i;if(!x)throw new Error(`\`${u}\` must be used within \`${a}\``)}return[f,l]}const o=()=>{const a=n.map(i=>s.createContext(i));return function(c){const p=c?.[e]||a;return s.useMemo(()=>({[`__scope${e}`]:{...c,[e]:p}}),[c,p])}};return o.scopeName=e,[r,Ko(o,...t)]}function Ko(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const r=e.map(o=>({useScope:o(),scopeName:o.scopeName}));return function(a){const i=r.reduce((c,{useScope:p,scopeName:f})=>{const u=p(a)[`__scope${f}`];return{...c,...u}},{});return s.useMemo(()=>({[`__scope${t.scopeName}`]:i}),[i])}};return n.scopeName=t.scopeName,n}var Je=globalThis?.document?s.useLayoutEffect:()=>{},Yo=tn[" useInsertionEffect ".trim().toString()]||Je;function Go({prop:e,defaultProp:t,onChange:n=()=>{},caller:r}){const[o,a,i]=Xo({defaultProp:t,onChange:n}),c=e!==void 0,p=c?e:o;{const l=s.useRef(e!==void 0);s.useEffect(()=>{const u=l.current;u!==c&&console.warn(`${r} is changing from ${u?"controlled":"uncontrolled"} to ${c?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),l.current=c},[c,r])}const f=s.useCallback(l=>{if(c){const u=Qo(l)?l(e):l;u!==e&&i.current?.(u)}else a(l)},[c,e,a,i]);return[p,f]}function Xo({defaultProp:e,onChange:t}){const[n,r]=s.useState(e),o=s.useRef(n),a=s.useRef(t);return Yo(()=>{a.current=t},[t]),s.useEffect(()=>{o.current!==n&&(a.current?.(n),o.current=n)},[n,o]),[n,r,a]}function Qo(e){return typeof e=="function"}function Vn(e){const t=s.forwardRef((n,r)=>{let{children:o,...a}=n,i=null,c=!1;const p=[];pn(o)&&typeof ct=="function"&&(o=ct(o._payload)),s.Children.forEach(o,h=>{if(na(h)){c=!0;const w=h;let x="child"in w.props?w.props.child:w.props.children;pn(x)&&typeof ct=="function"&&(x=ct(x._payload)),i=Jo(w,x),p.push(i?.props?.children)}else p.push(h)}),i?i=s.cloneElement(i,void 0,p):!c&&s.Children.count(o)===1&&s.isValidElement(o)&&(i=o);const f=i?ta(i):void 0,l=Pe(r,f);if(!i){if(o||o===0)throw new Error(c?sa(e):aa(e));return o}const u=ea(a,i.props??{});return i.type!==s.Fragment&&(u.ref=r?l:f),s.cloneElement(i,u)});return t.displayName=`${e}.Slot`,t}var Zo=Symbol.for("radix.slottable"),Jo=(e,t)=>{if("child"in e.props){const n=e.props.child;return s.isValidElement(n)?s.cloneElement(n,void 0,e.props.children(n.props.children)):null}return s.isValidElement(t)?t:null};function ea(e,t){const n={...t};for(const r in t){const o=e[r],a=t[r];/^on[A-Z]/.test(r)?o&&a?n[r]=(...c)=>{const p=a(...c);return o(...c),p}:o&&(n[r]=o):r==="style"?n[r]={...o,...a}:r==="className"&&(n[r]=[o,a].filter(Boolean).join(" "))}return{...e,...n}}function ta(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function na(e){return s.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===Zo}var ra=Symbol.for("react.lazy");function pn(e){return e!=null&&typeof e=="object"&&"$$typeof"in e&&e.$$typeof===ra&&"_payload"in e&&oa(e._payload)}function oa(e){return typeof e=="object"&&e!==null&&"then"in e}var aa=e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,sa=e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,ct=tn[" use ".trim().toString()],ia=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],he=ia.reduce((e,t)=>{const n=Vn(`Primitive.${t}`),r=s.forwardRef((o,a)=>{const{asChild:i,...c}=o,p=i?n:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),m.jsx(p,{...c,ref:a})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function ca(e,t){e&&Fn.flushSync(()=>e.dispatchEvent(t))}function et(e){const t=s.useRef(e);return s.useEffect(()=>{t.current=e}),s.useMemo(()=>((...n)=>t.current?.(...n)),[])}var ua="DismissableLayer",Xt="dismissableLayer.update",la="dismissableLayer.pointerDownOutside",da="dismissableLayer.focusOutside",hn,nn=s.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),zn=s.forwardRef((e,t)=>{const{disableOutsidePointerEvents:n=!1,deferPointerDownOutside:r=!1,onEscapeKeyDown:o,onPointerDownOutside:a,onFocusOutside:i,onInteractOutside:c,onDismiss:p,...f}=e,l=s.useContext(nn),[u,h]=s.useState(null),w=u?.ownerDocument??globalThis?.document,[,x]=s.useState({}),d=Pe(t,h),E=Array.from(l.layers),[b]=[...l.layersWithOutsidePointerEventsDisabled].slice(-1),T=b?E.indexOf(b):-1,g=u?E.indexOf(u):-1,v=l.layersWithOutsidePointerEventsDisabled.size>0,D=g>=T,_=s.useRef(!1),S=va(y=>{a?.(y),c?.(y),y.defaultPrevented||p?.()},{ownerDocument:w,deferPointerDownOutside:r,isDeferredPointerDownOutsideRef:_,dismissableSurfaces:l.dismissableSurfaces,shouldHandlePointerDownOutside:s.useCallback(y=>{if(!(y instanceof Node))return!1;const M=[...l.branches].some(R=>R.contains(y));return D&&!M},[l.branches,D])}),O=ga(y=>{if(r&&_.current)return;const M=y.target;[...l.branches].some(W=>W.contains(M))||(i?.(y),c?.(y),y.defaultPrevented||p?.())},w),N=u?g===E.length-1:!1,$=et(y=>{y.key==="Escape"&&(o?.(y),!y.defaultPrevented&&p&&(y.preventDefault(),p()))});return s.useEffect(()=>{if(N)return w.addEventListener("keydown",$,{capture:!0}),()=>w.removeEventListener("keydown",$,{capture:!0})},[w,N,$]),s.useEffect(()=>{if(u)return n&&(l.layersWithOutsidePointerEventsDisabled.size===0&&(hn=w.body.style.pointerEvents,w.body.style.pointerEvents="none"),l.layersWithOutsidePointerEventsDisabled.add(u)),l.layers.add(u),vn(),()=>{n&&(l.layersWithOutsidePointerEventsDisabled.delete(u),l.layersWithOutsidePointerEventsDisabled.size===0&&(w.body.style.pointerEvents=hn))}},[u,w,n,l]),s.useEffect(()=>()=>{u&&(l.layers.delete(u),l.layersWithOutsidePointerEventsDisabled.delete(u),vn())},[u,l]),s.useEffect(()=>{const y=()=>x({});return document.addEventListener(Xt,y),()=>document.removeEventListener(Xt,y)},[]),m.jsx(he.div,{...f,ref:d,style:{pointerEvents:v?D?"auto":"none":void 0,...e.style},onFocusCapture:Se(e.onFocusCapture,O.onFocusCapture),onBlurCapture:Se(e.onBlurCapture,O.onBlurCapture),onPointerDownCapture:Se(e.onPointerDownCapture,S.onPointerDownCapture)})});zn.displayName=ua;var fa="DismissableLayerBranch",ma=s.forwardRef((e,t)=>{const n=s.useContext(nn),r=s.useRef(null),o=Pe(t,r);return s.useEffect(()=>{const a=r.current;if(a)return n.branches.add(a),()=>{n.branches.delete(a)}},[n.branches]),m.jsx(he.div,{...e,ref:o})});ma.displayName=fa;function pa(){const e=s.useContext(nn),[t,n]=s.useState(null);return s.useEffect(()=>{if(t)return e.dismissableSurfaces.add(t),()=>{e.dismissableSurfaces.delete(t)}},[t,e.dismissableSurfaces]),n}var ha=()=>!0;function va(e,t){const{ownerDocument:n=globalThis?.document,deferPointerDownOutside:r=!1,isDeferredPointerDownOutsideRef:o,dismissableSurfaces:a,shouldHandlePointerDownOutside:i=ha}=t,c=et(e),p=s.useRef(!1),f=s.useRef(!1),l=s.useRef(new Map),u=s.useRef(()=>{});return s.useEffect(()=>{function h(){f.current=!1,o.current=!1,l.current.clear()}function w(){return Array.from(l.current.values()).some(Boolean)}function x(g){if(!f.current)return;const v=g.target;v instanceof Node&&[...a].some(_=>_.contains(v))||l.current.set(g.type,!0),g.type==="click"&&window.setTimeout(()=>{f.current&&u.current()},0)}function d(g){f.current&&l.current.set(g.type,!1)}const E=g=>{if(g.target&&!p.current){let v=function(){n.removeEventListener("click",u.current);const _=w();h(),_||qn(la,c,D,{discrete:!0})};if(!i(g.target)){n.removeEventListener("click",u.current),h(),p.current=!1;return}const D={originalEvent:g};f.current=!0,o.current=r&&g.button===0,l.current.clear(),!r||g.button!==0?v():(n.removeEventListener("click",u.current),u.current=v,n.addEventListener("click",u.current,{once:!0}))}else n.removeEventListener("click",u.current),h();p.current=!1},b=["pointerup","mousedown","mouseup","touchstart","touchend","click"];for(const g of b)n.addEventListener(g,x,!0),n.addEventListener(g,d);const T=window.setTimeout(()=>{n.addEventListener("pointerdown",E)},0);return()=>{window.clearTimeout(T),n.removeEventListener("pointerdown",E),n.removeEventListener("click",u.current);for(const g of b)n.removeEventListener(g,x,!0),n.removeEventListener(g,d)}},[n,c,r,o,a,i]),{onPointerDownCapture:()=>p.current=!0}}function ga(e,t=globalThis?.document){const n=et(e),r=s.useRef(!1);return s.useEffect(()=>{const o=a=>{a.target&&!r.current&&qn(da,n,{originalEvent:a},{discrete:!1})};return t.addEventListener("focusin",o),()=>t.removeEventListener("focusin",o)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function vn(){const e=new CustomEvent(Xt);document.dispatchEvent(e)}function qn(e,t,n,{discrete:r}){const o=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&o.addEventListener(e,t,{once:!0}),r?ca(o,a):o.dispatchEvent(a)}var ut=0,je=null;function wa(){s.useEffect(()=>{je||(je={start:gn(),end:gn()});const{start:e,end:t}=je;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement("afterbegin",e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement("beforeend",t),ut++,()=>{ut===1&&(je?.start.remove(),je?.end.remove(),je=null),ut=Math.max(0,ut-1)}},[])}function gn(){const e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}var Mt="focusScope.autoFocusOnMount",jt="focusScope.autoFocusOnUnmount",wn={bubbles:!1,cancelable:!0},ya="FocusScope",Kn=s.forwardRef((e,t)=>{const{loop:n=!1,trapped:r=!1,onMountAutoFocus:o,onUnmountAutoFocus:a,...i}=e,[c,p]=s.useState(null),f=et(o),l=et(a),u=s.useRef(null),h=Pe(t,p),w=s.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;s.useEffect(()=>{if(r){let d=function(g){if(w.paused||!c)return;const v=g.target;c.contains(v)?u.current=v:be(u.current,{select:!0})},E=function(g){if(w.paused||!c)return;const v=g.relatedTarget;v!==null&&(c.contains(v)||be(u.current,{select:!0}))},b=function(g){if(document.activeElement===document.body)for(const D of g)D.removedNodes.length>0&&be(c)};document.addEventListener("focusin",d),document.addEventListener("focusout",E);const T=new MutationObserver(b);return c&&T.observe(c,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",d),document.removeEventListener("focusout",E),T.disconnect()}}},[r,c,w.paused]),s.useEffect(()=>{if(c){bn.add(w);const d=document.activeElement;if(!c.contains(d)){const b=new CustomEvent(Mt,wn);c.addEventListener(Mt,f),c.dispatchEvent(b),b.defaultPrevented||(ba(Ra(Yn(c)),{select:!0}),document.activeElement===d&&be(c))}return()=>{c.removeEventListener(Mt,f),setTimeout(()=>{const b=new CustomEvent(jt,wn);c.addEventListener(jt,l),c.dispatchEvent(b),b.defaultPrevented||be(d??document.body,{select:!0}),c.removeEventListener(jt,l),bn.remove(w)},0)}}},[c,f,l,w]);const x=s.useCallback(d=>{if(!n&&!r||w.paused)return;const E=d.key==="Tab"&&!d.altKey&&!d.ctrlKey&&!d.metaKey,b=document.activeElement;if(E&&b){const T=d.currentTarget,[g,v]=Ea(T);g&&v?!d.shiftKey&&b===v?(d.preventDefault(),n&&be(g,{select:!0})):d.shiftKey&&b===g&&(d.preventDefault(),n&&be(v,{select:!0})):b===T&&d.preventDefault()}},[n,r,w.paused]);return m.jsx(he.div,{tabIndex:-1,...i,ref:h,onKeyDown:x})});Kn.displayName=ya;function ba(e,{select:t=!1}={}){const n=document.activeElement;for(const r of e)if(be(r,{select:t}),document.activeElement!==n)return}function Ea(e){const t=Yn(e),n=yn(t,e),r=yn(t.reverse(),e);return[n,r]}function Yn(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const o=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||o?NodeFilter.FILTER_SKIP:r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function yn(e,t){const n=typeof t.checkVisibility=="function"&&t.checkVisibility({checkVisibilityCSS:!0});for(const r of e)if(!(n?!r.checkVisibility({checkVisibilityCSS:!0}):Sa(r,{upTo:t})))return r}function Sa(e,{upTo:t}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}function xa(e){return e instanceof HTMLInputElement&&"select"in e}function be(e,{select:t=!1}={}){if(e&&e.focus){const n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&xa(e)&&t&&e.select()}}var bn=Ca();function Ca(){let e=[];return{add(t){const n=e[0];t!==n&&n?.pause(),e=En(e,t),e.unshift(t)},remove(t){e=En(e,t),e[0]?.resume()}}}function En(e,t){const n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function Ra(e){return e.filter(t=>t.tagName!=="A")}var Ta=tn[" useId ".trim().toString()]||(()=>{}),Da=0;function $t(e){const[t,n]=s.useState(Ta());return Je(()=>{n(r=>r??String(Da++))},[e]),e||(t?`radix-${t}`:"")}var Aa="Portal",Gn=s.forwardRef((e,t)=>{const{container:n,...r}=e,[o,a]=s.useState(!1);Je(()=>a(!0),[]);const i=n||o&&globalThis?.document?.body;return i?Fn.createPortal(m.jsx(he.div,{...r,ref:t}),i):null});Gn.displayName=Aa;function Oa(e,t){return s.useReducer((n,r)=>t[n][r]??n,e)}var xt=e=>{const{present:t,children:n}=e,r=Na(t),o=typeof n=="function"?n({present:r.isPresent}):s.Children.only(n),a=ka(r.ref,Pa(o));return typeof n=="function"||r.isPresent?s.cloneElement(o,{ref:a}):null};xt.displayName="Presence";function Na(e){const[t,n]=s.useState(),r=s.useRef(null),o=s.useRef(e),a=s.useRef("none"),i=s.useRef(void 0),c=e?"mounted":"unmounted",[p,f]=Oa(c,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return s.useEffect(()=>{p==="mounted"?(a.current=i.current??Xe(r.current),i.current=void 0):a.current="none"},[p]),Je(()=>{const l=r.current,u=o.current;if(u!==e){const w=a.current,x=Xe(l);e?(i.current=x,f("MOUNT")):x==="none"||l?.display==="none"?f("UNMOUNT"):f(u&&w!==x?"ANIMATION_OUT":"UNMOUNT"),o.current=e}},[e,f]),Je(()=>{if(t){let l;const u=t.ownerDocument.defaultView??window,h=x=>{const E=Xe(r.current).includes(CSS.escape(x.animationName));if(x.target===t&&E&&(f("ANIMATION_END"),!o.current)){const b=t.style.animationFillMode;t.style.animationFillMode="forwards",l=u.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=b)})}},w=x=>{x.target===t&&(a.current=Xe(r.current))};return t.addEventListener("animationstart",w),t.addEventListener("animationcancel",h),t.addEventListener("animationend",h),()=>{u.clearTimeout(l),t.removeEventListener("animationstart",w),t.removeEventListener("animationcancel",h),t.removeEventListener("animationend",h)}}else f("ANIMATION_END")},[t,f]),{isPresent:["mounted","unmountSuspended"].includes(p),ref:s.useCallback(l=>{if(l){const u=getComputedStyle(l);r.current=u,i.current=Xe(u)}else r.current=null;n(l)},[])}}function Sn(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function ka(...e){const t=s.useRef(e);return t.current=e,s.useCallback(n=>{const r=t.current;let o=!1;const a=r.map(i=>{const c=Sn(i,n);return!o&&typeof c=="function"&&(o=!0),c});if(o)return()=>{for(let i=0;i<a.length;i++){const c=a[i];typeof c=="function"?c():Sn(r[i],null)}}},[])}function Xe(e){return e?.animationName||"none"}function Pa(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var Ia=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},$e=new WeakMap,lt=new WeakMap,dt={},Ft=0,Xn=function(e){return e&&(e.host||Xn(e.parentNode))},La=function(e,t){return t.map(function(n){if(e.contains(n))return n;var r=Xn(n);return r&&e.contains(r)?r:(console.error("aria-hidden",n,"in not contained inside",e,". Doing nothing"),null)}).filter(function(n){return!!n})},_a=function(e,t,n,r){var o=La(t,Array.isArray(e)?e:[e]);dt[n]||(dt[n]=new WeakMap);var a=dt[n],i=[],c=new Set,p=new Set(o),f=function(u){!u||c.has(u)||(c.add(u),f(u.parentNode))};o.forEach(f);var l=function(u){!u||p.has(u)||Array.prototype.forEach.call(u.children,function(h){if(c.has(h))l(h);else try{var w=h.getAttribute(r),x=w!==null&&w!=="false",d=($e.get(h)||0)+1,E=(a.get(h)||0)+1;$e.set(h,d),a.set(h,E),i.push(h),d===1&&x&<.set(h,!0),E===1&&h.setAttribute(n,"true"),x||h.setAttribute(r,"true")}catch(b){console.error("aria-hidden: cannot operate on ",h,b)}})};return l(t),c.clear(),Ft++,function(){i.forEach(function(u){var h=$e.get(u)-1,w=a.get(u)-1;$e.set(u,h),a.set(u,w),h||(lt.has(u)||u.removeAttribute(r),lt.delete(u)),w||u.removeAttribute(n)}),Ft--,Ft||($e=new WeakMap,$e=new WeakMap,lt=new WeakMap,dt={})}},Ma=function(e,t,n){n===void 0&&(n="data-aria-hidden");var r=Array.from(Array.isArray(e)?e:[e]),o=Ia(e);return o?(r.push.apply(r,Array.from(o.querySelectorAll("[aria-live], script"))),_a(r,o,n,"aria-hidden")):function(){return null}},vt="right-scroll-bar-position",gt="width-before-scroll-bar",ja="with-scroll-bars-hidden",$a="--removed-body-scroll-bar-size";function Bt(e,t){return typeof e=="function"?e(t):e&&(e.current=t),e}function Fa(e,t){var n=s.useState(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(r){var o=n.value;o!==r&&(n.value=r,n.callback(r,o))}}}})[0];return n.callback=t,n.facade}var Ba=typeof window<"u"?s.useLayoutEffect:s.useEffect,xn=new WeakMap;function Ha(e,t){var n=Fa(null,function(r){return e.forEach(function(o){return Bt(o,r)})});return Ba(function(){var r=xn.get(n);if(r){var o=new Set(r),a=new Set(e),i=n.current;o.forEach(function(c){a.has(c)||Bt(c,null)}),a.forEach(function(c){o.has(c)||Bt(c,i)})}xn.set(n,e)},[e]),n}function Wa(e){return e}function Ua(e,t){t===void 0&&(t=Wa);var n=[],r=!1,o={read:function(){if(r)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(a){var i=t(a,r);return n.push(i),function(){n=n.filter(function(c){return c!==i})}},assignSyncMedium:function(a){for(r=!0;n.length;){var i=n;n=[],i.forEach(a)}n={push:function(c){return a(c)},filter:function(){return n}}},assignMedium:function(a){r=!0;var i=[];if(n.length){var c=n;n=[],c.forEach(a),i=n}var p=function(){var l=i;i=[],l.forEach(a)},f=function(){return Promise.resolve().then(p)};f(),n={push:function(l){i.push(l),f()},filter:function(l){return i=i.filter(l),n}}}};return o}function Va(e){e===void 0&&(e={});var t=Ua(null);return t.options=Ee({async:!0,ssr:!1},e),t}var Qn=function(e){var t=e.sideCar,n=Bn(e,["sideCar"]);if(!t)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw new Error("Sidecar medium not found");return s.createElement(r,Ee({},n))};Qn.isSideCarExport=!0;function za(e,t){return e.useMedium(t),Qn}var Zn=Va(),Ht=function(){},Ct=s.forwardRef(function(e,t){var n=s.useRef(null),r=s.useState({onScrollCapture:Ht,onWheelCapture:Ht,onTouchMoveCapture:Ht}),o=r[0],a=r[1],i=e.forwardProps,c=e.children,p=e.className,f=e.removeScrollBar,l=e.enabled,u=e.shards,h=e.sideCar,w=e.noRelative,x=e.noIsolation,d=e.inert,E=e.allowPinchZoom,b=e.as,T=b===void 0?"div":b,g=e.gapMode,v=Bn(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),D=h,_=Ha([n,t]),S=Ee(Ee({},v),o);return s.createElement(s.Fragment,null,l&&s.createElement(D,{sideCar:Zn,removeScrollBar:f,shards:u,noRelative:w,noIsolation:x,inert:d,setCallbacks:a,allowPinchZoom:!!E,lockRef:n,gapMode:g}),i?s.cloneElement(s.Children.only(c),Ee(Ee({},S),{ref:_})):s.createElement(T,Ee({},S,{className:p,ref:_}),c))});Ct.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};Ct.classNames={fullWidth:gt,zeroRight:vt};var qa=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function Ka(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=qa();return t&&e.setAttribute("nonce",t),e}function Ya(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function Ga(e){var t=document.head||document.getElementsByTagName("head")[0];t.appendChild(e)}var Xa=function(){var e=0,t=null;return{add:function(n){e==0&&(t=Ka())&&(Ya(t,n),Ga(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},Qa=function(){var e=Xa();return function(t,n){s.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},Jn=function(){var e=Qa(),t=function(n){var r=n.styles,o=n.dynamic;return e(r,o),null};return t},Za={left:0,top:0,right:0,gap:0},Wt=function(e){return parseInt(e||"",10)||0},Ja=function(e){var t=window.getComputedStyle(document.body),n=t[e==="padding"?"paddingLeft":"marginLeft"],r=t[e==="padding"?"paddingTop":"marginTop"],o=t[e==="padding"?"paddingRight":"marginRight"];return[Wt(n),Wt(r),Wt(o)]},es=function(e){if(e===void 0&&(e="margin"),typeof window>"u")return Za;var t=Ja(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},ts=Jn(),He="data-scroll-locked",ns=function(e,t,n,r){var o=e.left,a=e.top,i=e.right,c=e.gap;return n===void 0&&(n="margin"),`
|
|
4
4
|
.`.concat(ja,` {
|
|
5
5
|
overflow: hidden `).concat(r,`;
|
|
@@ -40,7 +40,7 @@ import{j as m,X as Lr,t as _r,f as un,L as Mr,$ as jr,a2 as $r,r as s,cd as Fr,c
|
|
|
40
40
|
`)},Cn=function(){var e=parseInt(document.body.getAttribute(He)||"0",10);return isFinite(e)?e:0},rs=function(){s.useEffect(function(){return document.body.setAttribute(He,(Cn()+1).toString()),function(){var e=Cn()-1;e<=0?document.body.removeAttribute(He):document.body.setAttribute(He,e.toString())}},[])},os=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,o=r===void 0?"margin":r;rs();var a=s.useMemo(function(){return es(o)},[o]);return s.createElement(ts,{styles:ns(a,!t,o,n?"":"!important")})},Qt=!1;if(typeof window<"u")try{var ft=Object.defineProperty({},"passive",{get:function(){return Qt=!0,!0}});window.addEventListener("test",ft,ft),window.removeEventListener("test",ft,ft)}catch{Qt=!1}var Fe=Qt?{passive:!1}:!1,as=function(e){return e.tagName==="TEXTAREA"},er=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!=="hidden"&&!(n.overflowY===n.overflowX&&!as(e)&&n[t]==="visible")},ss=function(e){return er(e,"overflowY")},is=function(e){return er(e,"overflowX")},Rn=function(e,t){var n=t.ownerDocument,r=t;do{typeof ShadowRoot<"u"&&r instanceof ShadowRoot&&(r=r.host);var o=tr(e,r);if(o){var a=nr(e,r),i=a[1],c=a[2];if(i>c)return!0}r=r.parentNode}while(r&&r!==n.body);return!1},cs=function(e){var t=e.scrollTop,n=e.scrollHeight,r=e.clientHeight;return[t,n,r]},us=function(e){var t=e.scrollLeft,n=e.scrollWidth,r=e.clientWidth;return[t,n,r]},tr=function(e,t){return e==="v"?ss(t):is(t)},nr=function(e,t){return e==="v"?cs(t):us(t)},ls=function(e,t){return e==="h"&&t==="rtl"?-1:1},ds=function(e,t,n,r,o){var a=ls(e,window.getComputedStyle(t).direction),i=a*r,c=n.target,p=t.contains(c),f=!1,l=i>0,u=0,h=0;do{if(!c)break;var w=nr(e,c),x=w[0],d=w[1],E=w[2],b=d-E-a*x;(x||b)&&tr(e,c)&&(u+=b,h+=x);var T=c.parentNode;c=T&&T.nodeType===Node.DOCUMENT_FRAGMENT_NODE?T.host:T}while(!p&&c!==document.body||p&&(t.contains(c)||t===c));return(l&&Math.abs(u)<1||!l&&Math.abs(h)<1)&&(f=!0),f},mt=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},Tn=function(e){return[e.deltaX,e.deltaY]},Dn=function(e){return e&&"current"in e?e.current:e},fs=function(e,t){return e[0]===t[0]&&e[1]===t[1]},ms=function(e){return`
|
|
41
41
|
.block-interactivity-`.concat(e,` {pointer-events: none;}
|
|
42
42
|
.allow-interactivity-`).concat(e,` {pointer-events: all;}
|
|
43
|
-
`)},ps=0,Be=[];function hs(e){var t=s.useRef([]),n=s.useRef([0,0]),r=s.useRef(),o=s.useState(ps++)[0],a=s.useState(Jn)[0],i=s.useRef(e);s.useEffect(function(){i.current=e},[e]),s.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(o));var d=zr([e.lockRef.current],(e.shards||[]).map(Dn),!0).filter(Boolean);return d.forEach(function(E){return E.classList.add("allow-interactivity-".concat(o))}),function(){document.body.classList.remove("block-interactivity-".concat(o)),d.forEach(function(E){return E.classList.remove("allow-interactivity-".concat(o))})}}},[e.inert,e.lockRef.current,e.shards]);var c=s.useCallback(function(d,E){if("touches"in d&&d.touches.length===2||d.type==="wheel"&&d.ctrlKey)return!i.current.allowPinchZoom;var b=mt(d),T=n.current,g="deltaX"in d?d.deltaX:T[0]-b[0],v="deltaY"in d?d.deltaY:T[1]-b[1],D,_=d.target,S=Math.abs(g)>Math.abs(v)?"h":"v";if("touches"in d&&S==="h"&&_.type==="range")return!1;var O=window.getSelection(),N=O&&O.anchorNode,$=N?N===_||N.contains(_):!1;if($)return!1;var y=Rn(S,_);if(!y)return!0;if(y?D=S:(D=S==="v"?"h":"v",y=Rn(S,_)),!y)return!1;if(!r.current&&"changedTouches"in d&&(g||v)&&(r.current=D),!D)return!0;var M=r.current||D;return ds(M,E,d,M==="h"?g:v)},[]),p=s.useCallback(function(d){var E=d;if(!(!Be.length||Be[Be.length-1]!==a)){var b="deltaY"in E?Tn(E):mt(E),T=t.current.filter(function(D){return D.name===E.type&&(D.target===E.target||E.target===D.shadowParent)&&fs(D.delta,b)})[0];if(T&&T.should){E.cancelable&&E.preventDefault();return}if(!T){var g=(i.current.shards||[]).map(Dn).filter(Boolean).filter(function(D){return D.contains(E.target)}),v=g.length>0?c(E,g[0]):!i.current.noIsolation;v&&E.cancelable&&E.preventDefault()}}},[]),f=s.useCallback(function(d,E,b,T){var g={name:d,delta:E,target:b,should:T,shadowParent:vs(b)};t.current.push(g),setTimeout(function(){t.current=t.current.filter(function(v){return v!==g})},1)},[]),l=s.useCallback(function(d){n.current=mt(d),r.current=void 0},[]),u=s.useCallback(function(d){f(d.type,Tn(d),d.target,c(d,e.lockRef.current))},[]),h=s.useCallback(function(d){f(d.type,mt(d),d.target,c(d,e.lockRef.current))},[]);s.useEffect(function(){return Be.push(a),e.setCallbacks({onScrollCapture:u,onWheelCapture:u,onTouchMoveCapture:h}),document.addEventListener("wheel",p,Fe),document.addEventListener("touchmove",p,Fe),document.addEventListener("touchstart",l,Fe),function(){Be=Be.filter(function(d){return d!==a}),document.removeEventListener("wheel",p,Fe),document.removeEventListener("touchmove",p,Fe),document.removeEventListener("touchstart",l,Fe)}},[]);var w=e.removeScrollBar,x=e.inert;return s.createElement(s.Fragment,null,x?s.createElement(a,{styles:ms(o)}):null,w?s.createElement(os,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function vs(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const gs=za(Zn,hs);var rr=s.forwardRef(function(e,t){return s.createElement(Ct,Ee({},e,{ref:t,sideCar:gs}))});rr.classNames=Ct.classNames;const qi=({enabled:e=!0,bindings:t,capture:n=!1})=>{const r=s.useCallback(o=>{const a=o.target;if(!(a.tagName==="INPUT"||a.tagName==="TEXTAREA"||a.isContentEditable))for(const i of t){if(!(o.key.toLowerCase()===i.key.toLowerCase())||i.action&&qr(i.action)||i.requireShift!==void 0&&i.requireShift!==o.shiftKey)continue;const p=o.ctrlKey||o.metaKey;if(i.requireMeta!==void 0){if(i.requireMeta!==p)continue}else{const f=i.noModifiers??!0,l=p||o.altKey||i.requireShift===void 0&&o.shiftKey;if(f&&l)continue}i.preventDefault&&o.preventDefault(),i.stopPropagation&&(o.stopPropagation(),o.stopImmediatePropagation()),i.handler(o);return}},[t]);s.useEffect(()=>{if(e)return window.addEventListener("keydown",r,n),()=>window.removeEventListener("keydown",r,n)},[e,r,n])},ws=(e,t)=>e===void 0&&t.toAddresses.length===0,ys={status:"unsaved",reason:"Not saved — add a To address to keep this draft."},An={status:"idle"},bs={status:"saving"},On={status:"saved"},Nn={status:"error"},Es=e=>e.then(()=>{},()=>{}),Ss=({outboxMessageId:e,onDraftCreated:t})=>{const[n,r]=s.useState(An),[o,a]=s.useState(null),i=s.useRef(void 0),c=s.useRef(new Set),p=Kr(),f=s.useRef(e),l=s.useRef(e);if(f.current!==e){const g=f.current!==void 0;f.current=e,l.current=e,g&&i.current&&clearTimeout(i.current)}const u=yt({...Yr(),meta:bt}),h=yt({...Gr(),meta:bt}),w=s.useCallback(async g=>{r(bs),a(null);const v=l.current;if(v){const _=await h.mutateAsync({path:{outboxMessageId:v},body:{toAddresses:g.toAddresses,ccAddresses:g.ccAddresses,bccAddresses:g.bccAddresses,subject:g.subject,textBody:g.textBody,htmlBody:g.htmlBody,inReplyTo:g.inReplyTo,references:g.references}});return r(On),_}const D=await u.mutateAsync({body:{...g,sendImmediately:!1}});return l.current=D.outboxMessageId,t(D.outboxMessageId),r(On),p.invalidateQueries({queryKey:Xr().queryKey}),D},[u.mutateAsync,h.mutateAsync,t,p]),x=s.useRef(Promise.resolve()),d=s.useCallback(g=>{const v=x.current.then(()=>w(g));return x.current=Es(v),v},[w]),E=s.useCallback(g=>{if(i.current&&clearTimeout(i.current),ws(l.current,g)){r(ys);return}r(v=>v.status==="unsaved"?An:v),i.current=setTimeout(()=>{const v=l.current;v&&c.current.has(v)||d(g).catch(D=>{a(D),r(Nn)})},2e3)},[d]),b=s.useCallback(g=>(i.current&&clearTimeout(i.current),d(g).then(v=>({outcome:"saved",outboxMessageId:v.outboxMessageId})).catch(v=>(r(Nn),{outcome:"failed",error:v}))),[d]),T=s.useCallback(g=>{i.current&&clearTimeout(i.current),g&&c.current.add(g)},[]);return{saveState:n,saveError:o,saveDraft:E,saveImmediately:b,stopAutoSave:T}},xs=e=>e.outboundCount>0||e.replyCount>0||e.flags?.vip?.value===!0||e.flags?.trusted?.value===!0,Cs=e=>e.flags?.blocked?.value===!0?!1:e.flags?.junkOnly?.value!==!0?!0:xs(e),Ut=({label:e,addresses:t,onChange:n,placeholder:r,onPendingChange:o,ref:a})=>{const[i,c]=s.useState(""),p=vo(i,200),{data:f}=Et({...Qr({query:{q:p,limit:8}}),enabled:p.length>=2}),l=s.useMemo(()=>(f?.items??[]).filter(Cs).map(u=>({email:u.normalizedEmail,displayName:u.displayName})),[f]);return m.jsx(Do,{label:e,addresses:t,onChange:n,placeholder:r,suggestions:l,onQueryChange:c,onPendingChange:o,ref:a})},Rs=({accountId:e,configureRef:t})=>{const n=go();return m.jsx(Po,{configureRef:t,onConfigure:()=>{n(e)}})},Ts={download:"its dictionary could not be downloaded",engine:"the checker could not start",worker:"the checker stopped running"},Ds=e=>{const t=`Spellcheck for ${e.language} is off: ${Ts[e.reason]}.`;return{severity:"warning",title:"Spellcheck stopped",detail:`${t} Your browser is checking this message instead. ${e.detail}`,action:{label:"Report this",href:Zr(Jr({title:`Spellcheck stopped: ${e.reason} (${e.language})`,errorMessage:`${t} ${e.detail}`}))}}},As=e=>({provider:async t=>{const{openSpellcheckWorker:n}=await Hn(async()=>{const{openSpellcheckWorker:r}=await import("./rich-text-spellcheck-worker-provider-
|
|
43
|
+
`)},ps=0,Be=[];function hs(e){var t=s.useRef([]),n=s.useRef([0,0]),r=s.useRef(),o=s.useState(ps++)[0],a=s.useState(Jn)[0],i=s.useRef(e);s.useEffect(function(){i.current=e},[e]),s.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(o));var d=zr([e.lockRef.current],(e.shards||[]).map(Dn),!0).filter(Boolean);return d.forEach(function(E){return E.classList.add("allow-interactivity-".concat(o))}),function(){document.body.classList.remove("block-interactivity-".concat(o)),d.forEach(function(E){return E.classList.remove("allow-interactivity-".concat(o))})}}},[e.inert,e.lockRef.current,e.shards]);var c=s.useCallback(function(d,E){if("touches"in d&&d.touches.length===2||d.type==="wheel"&&d.ctrlKey)return!i.current.allowPinchZoom;var b=mt(d),T=n.current,g="deltaX"in d?d.deltaX:T[0]-b[0],v="deltaY"in d?d.deltaY:T[1]-b[1],D,_=d.target,S=Math.abs(g)>Math.abs(v)?"h":"v";if("touches"in d&&S==="h"&&_.type==="range")return!1;var O=window.getSelection(),N=O&&O.anchorNode,$=N?N===_||N.contains(_):!1;if($)return!1;var y=Rn(S,_);if(!y)return!0;if(y?D=S:(D=S==="v"?"h":"v",y=Rn(S,_)),!y)return!1;if(!r.current&&"changedTouches"in d&&(g||v)&&(r.current=D),!D)return!0;var M=r.current||D;return ds(M,E,d,M==="h"?g:v)},[]),p=s.useCallback(function(d){var E=d;if(!(!Be.length||Be[Be.length-1]!==a)){var b="deltaY"in E?Tn(E):mt(E),T=t.current.filter(function(D){return D.name===E.type&&(D.target===E.target||E.target===D.shadowParent)&&fs(D.delta,b)})[0];if(T&&T.should){E.cancelable&&E.preventDefault();return}if(!T){var g=(i.current.shards||[]).map(Dn).filter(Boolean).filter(function(D){return D.contains(E.target)}),v=g.length>0?c(E,g[0]):!i.current.noIsolation;v&&E.cancelable&&E.preventDefault()}}},[]),f=s.useCallback(function(d,E,b,T){var g={name:d,delta:E,target:b,should:T,shadowParent:vs(b)};t.current.push(g),setTimeout(function(){t.current=t.current.filter(function(v){return v!==g})},1)},[]),l=s.useCallback(function(d){n.current=mt(d),r.current=void 0},[]),u=s.useCallback(function(d){f(d.type,Tn(d),d.target,c(d,e.lockRef.current))},[]),h=s.useCallback(function(d){f(d.type,mt(d),d.target,c(d,e.lockRef.current))},[]);s.useEffect(function(){return Be.push(a),e.setCallbacks({onScrollCapture:u,onWheelCapture:u,onTouchMoveCapture:h}),document.addEventListener("wheel",p,Fe),document.addEventListener("touchmove",p,Fe),document.addEventListener("touchstart",l,Fe),function(){Be=Be.filter(function(d){return d!==a}),document.removeEventListener("wheel",p,Fe),document.removeEventListener("touchmove",p,Fe),document.removeEventListener("touchstart",l,Fe)}},[]);var w=e.removeScrollBar,x=e.inert;return s.createElement(s.Fragment,null,x?s.createElement(a,{styles:ms(o)}):null,w?s.createElement(os,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function vs(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const gs=za(Zn,hs);var rr=s.forwardRef(function(e,t){return s.createElement(Ct,Ee({},e,{ref:t,sideCar:gs}))});rr.classNames=Ct.classNames;const qi=({enabled:e=!0,bindings:t,capture:n=!1})=>{const r=s.useCallback(o=>{const a=o.target;if(!(a.tagName==="INPUT"||a.tagName==="TEXTAREA"||a.isContentEditable))for(const i of t){if(!(o.key.toLowerCase()===i.key.toLowerCase())||i.action&&qr(i.action)||i.requireShift!==void 0&&i.requireShift!==o.shiftKey)continue;const p=o.ctrlKey||o.metaKey;if(i.requireMeta!==void 0){if(i.requireMeta!==p)continue}else{const f=i.noModifiers??!0,l=p||o.altKey||i.requireShift===void 0&&o.shiftKey;if(f&&l)continue}i.preventDefault&&o.preventDefault(),i.stopPropagation&&(o.stopPropagation(),o.stopImmediatePropagation()),i.handler(o);return}},[t]);s.useEffect(()=>{if(e)return window.addEventListener("keydown",r,n),()=>window.removeEventListener("keydown",r,n)},[e,r,n])},ws=(e,t)=>e===void 0&&t.toAddresses.length===0,ys={status:"unsaved",reason:"Not saved — add a To address to keep this draft."},An={status:"idle"},bs={status:"saving"},On={status:"saved"},Nn={status:"error"},Es=e=>e.then(()=>{},()=>{}),Ss=({outboxMessageId:e,onDraftCreated:t})=>{const[n,r]=s.useState(An),[o,a]=s.useState(null),i=s.useRef(void 0),c=s.useRef(new Set),p=Kr(),f=s.useRef(e),l=s.useRef(e);if(f.current!==e){const g=f.current!==void 0;f.current=e,l.current=e,g&&i.current&&clearTimeout(i.current)}const u=yt({...Yr(),meta:bt}),h=yt({...Gr(),meta:bt}),w=s.useCallback(async g=>{r(bs),a(null);const v=l.current;if(v){const _=await h.mutateAsync({path:{outboxMessageId:v},body:{toAddresses:g.toAddresses,ccAddresses:g.ccAddresses,bccAddresses:g.bccAddresses,subject:g.subject,textBody:g.textBody,htmlBody:g.htmlBody,inReplyTo:g.inReplyTo,references:g.references}});return r(On),_}const D=await u.mutateAsync({body:{...g,sendImmediately:!1}});return l.current=D.outboxMessageId,t(D.outboxMessageId),r(On),p.invalidateQueries({queryKey:Xr().queryKey}),D},[u.mutateAsync,h.mutateAsync,t,p]),x=s.useRef(Promise.resolve()),d=s.useCallback(g=>{const v=x.current.then(()=>w(g));return x.current=Es(v),v},[w]),E=s.useCallback(g=>{if(i.current&&clearTimeout(i.current),ws(l.current,g)){r(ys);return}r(v=>v.status==="unsaved"?An:v),i.current=setTimeout(()=>{const v=l.current;v&&c.current.has(v)||d(g).catch(D=>{a(D),r(Nn)})},2e3)},[d]),b=s.useCallback(g=>(i.current&&clearTimeout(i.current),d(g).then(v=>({outcome:"saved",outboxMessageId:v.outboxMessageId})).catch(v=>(r(Nn),{outcome:"failed",error:v}))),[d]),T=s.useCallback(g=>{i.current&&clearTimeout(i.current),g&&c.current.add(g)},[]);return{saveState:n,saveError:o,saveDraft:E,saveImmediately:b,stopAutoSave:T}},xs=e=>e.outboundCount>0||e.replyCount>0||e.flags?.vip?.value===!0||e.flags?.trusted?.value===!0,Cs=e=>e.flags?.blocked?.value===!0?!1:e.flags?.junkOnly?.value!==!0?!0:xs(e),Ut=({label:e,addresses:t,onChange:n,placeholder:r,onPendingChange:o,ref:a})=>{const[i,c]=s.useState(""),p=vo(i,200),{data:f}=Et({...Qr({query:{q:p,limit:8}}),enabled:p.length>=2}),l=s.useMemo(()=>(f?.items??[]).filter(Cs).map(u=>({email:u.normalizedEmail,displayName:u.displayName})),[f]);return m.jsx(Do,{label:e,addresses:t,onChange:n,placeholder:r,suggestions:l,onQueryChange:c,onPendingChange:o,ref:a})},Rs=({accountId:e,configureRef:t})=>{const n=go();return m.jsx(Po,{configureRef:t,onConfigure:()=>{n(e)}})},Ts={download:"its dictionary could not be downloaded",engine:"the checker could not start",worker:"the checker stopped running"},Ds=e=>{const t=`Spellcheck for ${e.language} is off: ${Ts[e.reason]}.`;return{severity:"warning",title:"Spellcheck stopped",detail:`${t} Your browser is checking this message instead. ${e.detail}`,action:{label:"Report this",href:Zr(Jr({title:`Spellcheck stopped: ${e.reason} (${e.language})`,errorMessage:`${t} ${e.detail}`}))}}},As=e=>({provider:async t=>{const{openSpellcheckWorker:n}=await Hn(async()=>{const{openSpellcheckWorker:r}=await import("./rich-text-spellcheck-worker-provider-CJdp1lGc.js");return{openSpellcheckWorker:r}},__vite__mapDeps([0,1,2,3]));return n(t)},onStatus:t=>{t.state==="failed"&&e(Ds(t))}}),or=e=>e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,"""),Zt=e=>e.split(`
|
|
44
44
|
`).map(t=>`<p>${or(t)}</p>`).join(""),Os=new Set(["ADDRESS","ARTICLE","BLOCKQUOTE","BR","DIV","H1","H2","H3","H4","H5","H6","HR","LI","OL","P","PRE","SECTION","TABLE","TR","UL"]),Ns=e=>{const t=new DOMParser().parseFromString(e,"text/html"),n=[];let r="";const o=()=>{n.push(r.trim()),r=""},a=i=>{if(i.nodeType===i.TEXT_NODE){r+=(i.textContent??"").replace(/\s+/g," ");return}if(i.nodeType!==i.ELEMENT_NODE)return;const c=Os.has(i.tagName);c&&r!==""&&o();for(const p of i.childNodes)a(p);c&&o()};return a(t.body),r!==""&&o(),n.join(`
|
|
45
45
|
`).replace(/\n{3,}/g,`
|
|
46
46
|
|
|
@@ -50,6 +50,6 @@ import{j as m,X as Lr,t as _r,f as un,L as Mr,$ as jr,a2 as $r,r as s,cd as Fr,c
|
|
|
50
50
|
`))}${o}`}}const a=Ps(t);return{text:[a,..._s(r)].join(`
|
|
51
51
|
`),html:`<p>${or(a)}</p><blockquote type="cite">${o}</blockquote>`}},js=(e,t)=>e===""?t:`${e}
|
|
52
52
|
|
|
53
|
-
${t}`,kn=(e,t,n,r)=>{const o=r?js(t.text,r.text):t.text;if(e==="plain")return{textBody:o||void 0,htmlBody:""};const a=r?`${t.html}${r.html}`:t.html;return{textBody:o||void 0,htmlBody:a?eo(a,n):void 0}},Pn=150,$s=()=>{const[e,t]=s.useState(()=>{if(typeof window>"u"||!window.visualViewport)return{viewportHeight:0,isKeyboardOpen:!1};const n=window.visualViewport.height;return{viewportHeight:n,isKeyboardOpen:window.innerHeight-n>Pn}});return s.useEffect(()=>{if(typeof window>"u"||!window.visualViewport)return;const n=window.visualViewport,r=()=>{const o=n.height;t({viewportHeight:o,isKeyboardOpen:window.innerHeight-o>Pn})};return r(),n.addEventListener("resize",r),()=>n.removeEventListener("resize",r)},[]),e},Fs=({selectedAccountId:e,onSelect:t})=>{const{data:n}=Et({...Wn(),staleTime:1/0}),r=n?.accounts??[];if(s.useEffect(()=>{!e&&r.length===1&&r[0]&&t(r[0])},[e,r,t]),r.length<=1){const o=r[0];return o?m.jsxs("div",{className:"flex items-start gap-2",children:[m.jsx("label",{className:"text-sm text-fg-muted shrink-0 w-12 pt-1.5",children:"From:"}),m.jsx("div",{className:"text-sm py-1.5",children:o.email})]}):null}return m.jsxs("div",{className:"flex items-start gap-2",children:[m.jsx("label",{htmlFor:"from-account-selector",className:"text-sm text-fg-muted shrink-0 w-12 pt-1.5",children:"From:"}),m.jsx("select",{id:"from-account-selector",value:e??"",onChange:o=>{const a=r.find(i=>i.accountId===o.target.value);a&&t(a)},className:"flex-1 px-2 py-1.5 border rounded-md bg-canvas text-sm",children:r.map(o=>m.jsx("option",{value:o.accountId,children:o.email},o.accountId))})]})},Bs=s.lazy(()=>Hn(()=>import("./rich-text-BHpf3a14.js"),__vite__mapDeps([4,1,2,5,6,7,3,8,9,10,11,12,13])).then(e=>({default:e.ComposeBody}))),Hs=e=>e?`<p></p><p>-- </p>${Zt(e)}`:"",Vt=e=>({html:Hs(e),text:e}),Ws=e=>e?/^re:\s/i.test(e)?e:`Re: ${e}`:"Re: ",Us=e=>e?/^fwd?:\s/i.test(e)?e:`Fwd: ${e}`:"Fwd: ",Vs=(e,t,n)=>{const{envelope:r}=e,a=(r.replyTo.length>0?r.replyTo:r.from).map(f=>({email:f.normalizedEmail,displayName:f.displayName}));if(t!=="reply-all")return{to:a,cc:[]};const i=n?.toLowerCase(),c=new Set(a.map(f=>f.email.toLowerCase())),p=[...r.to,...r.cc].filter(f=>f.normalizedEmail.toLowerCase()!==i&&!c.has(f.normalizedEmail.toLowerCase())).map(f=>({email:f.normalizedEmail,displayName:f.displayName}));return{to:a,cc:p}},zs=e=>{const t=e.envelope.messageIdValue,r=[...e.references.filter(o=>o.referenceType==="references").sort((o,a)=>o.referenceOrder-a.referenceOrder).map(o=>o.messageIdValue)];return t&&!r.includes(t)&&r.push(t),{inReplyTo:t,references:r}},qs="Add a To address before sending.",Ks="Loading the message you're quoting.",Ys="The message you're quoting couldn't be loaded, so it won't be included.",Gs=({label:e,text:t})=>`${e} holds "${t}", which is not an address.`,In=e=>e.find(t=>t.text.trim()!==""),Xs={entries:[],unparsed:""},Qs=(e,t,n,r,o)=>e.length===0&&t.length===0&&n.length===0&&r.trim()===""&&o.text.trim()==="",Zs=({documentGeneration:e,selectedAccountId:t,onAccountChange:n,toAddresses:r,setToAddresses:o,ccAddresses:a,setCcAddresses:i,bccAddresses:c,setBccAddresses:p,showCc:f,setShowCc:l,showBcc:u,setShowBcc:h,subject:w,setSubject:x,fieldHandles:d,onToPendingChange:E})=>{const b=lo(),{isKeyboardOpen:T}=$s(),[g,v]=s.useState(void 0),D=g===e;return m.jsx(ko,{collapsed:!b&&T&&!D,onExpand:()=>v(e),summary:No({to:r,cc:a,bcc:c,subject:w}),from:m.jsx(Fs,{selectedAccountId:t,onSelect:n}),to:m.jsx(Ut,{label:"To",addresses:r,onChange:o,placeholder:"Recipients",onPendingChange:E,ref:d.to}),cc:f?m.jsx(Ut,{label:"Cc",addresses:a,onChange:i,ref:d.cc}):void 0,bcc:u?m.jsx(Ut,{label:"Bcc",addresses:c,onChange:p,ref:d.bcc}):void 0,subject:m.jsx(Io,{value:w,onChange:x}),onShowCc:()=>l(!0),onShowBcc:()=>h(!0)})},Ki=({mode:e,account:t,sourceMessage:n,outboxMessageId:r,onDraftCreated:o,onClose:a,onAccountChange:i,layout:c="fill"})=>{const{startSendPolling:p}=to(),{pushError:f}=no(),[l,u]=s.useState([]),[h,w]=s.useState([]),[x,d]=s.useState([]),[E,b]=s.useState(Xs),T=s.useRef(null),g=s.useRef(null),v=s.useRef(null),D=s.useMemo(()=>({to:T,cc:g,bcc:v}),[]),_=s.useCallback(()=>{T.current?.clearPending(),g.current?.clearPending(),v.current?.clearPending()},[]),[S,O]=s.useState(""),[N,$]=s.useState(!1),[y,M]=s.useState(!1),[R,W]=s.useState(t?.accountId),[U,X]=s.useState(!1),[V,ne]=s.useState(r),re=s.useRef(void 0),ce=s.useRef(!1),nt=s.useRef(null),Ue=s.useRef(r),ue=s.useRef(r!==void 0),[xe,Ve]=s.useState(r!==void 0),Ce=s.useRef(r!==void 0?e:void 0),de=s.useRef(void 0),ve=s.useRef(e);ve.current=e;const Ie=s.useRef(t?.accountId);s.useEffect(()=>{const P=t?.accountId;!P||Ie.current===P||(Ie.current=P,!ue.current&&W(P))},[t?.accountId]),s.useEffect(()=>{const P=Ue.current;if(P===r||(Ue.current=r,P===void 0))return;ue.current=r!==void 0,Ve(r!==void 0),Ce.current=r!==void 0?ve.current:void 0,de.current=void 0;const F=r?{html:"",text:""}:Vt(me.current);u([]),w([]),d([]),_(),O(""),$(!1),M(!1),Ke(F.html),Le(F.text),Ye("rich"),ge(void 0),_e({...F,formatting:[]}),qe(oe=>oe+1),X(!1),re.current=void 0,ce.current=!1,ne(r)},[r,_]);const{signature:fe}=po(R),me=s.useRef(fe.plainText);me.current=fe.plainText;const[ze,qe]=s.useState(0),[k,Ke]=s.useState(()=>Vt(fe.plainText).html),[rt,Le]=s.useState(fe.plainText),[Re,Ye]=s.useState("rich"),[se,ot]=s.useState("en"),[Tt,ge]=s.useState(),[Te,_e]=s.useState(()=>({...Vt(fe.plainText),formatting:[]})),{data:G,error:at}=Et({...ro({path:{outboxMessageId:r??""}}),enabled:!!r&&!U,meta:fo,retry:(P,F)=>!ln(F)&&P<1});s.useEffect(()=>{ln(at)&&a()},[at,a]),s.useEffect(()=>{if(!G||U)return;u(G.toAddresses.map(Q=>({email:Q,displayName:void 0}))),G.ccAddresses&&G.ccAddresses.length>0&&(w(G.ccAddresses.map(Q=>({email:Q,displayName:void 0}))),$(!0)),G.bccAddresses&&G.bccAddresses.length>0&&(d(G.bccAddresses.map(Q=>({email:Q,displayName:void 0}))),M(!0)),G.subject&&O(G.subject);const P=oo(G.htmlBody??""),F=P.html,oe=G.textBody??"";Ye(Uo(G.htmlBody)),ge(P.language??void 0),Ke(F),Le(oe),_e({html:F,text:oe,formatting:[]}),qe(Q=>Q+1),W(G.accountId),X(!0),ce.current=!0},[G,U]),s.useEffect(()=>{if(n){if(ue.current&&Ce.current===e){const P=de.current;if(!P||P.myEmail===t?.email)return}if(Ce.current=e,de.current={myEmail:t?.email},_(),e==="reply"||e==="reply-all"){const{to:P,cc:F}=Vs(n,e,t?.email);u(P),w(F),F.length>0&&$(!0),O(Ws(n.envelope.subject))}e==="forward"&&(u([]),w([]),d([]),O(Us(n.envelope.subject)))}},[e,n,t?.email,_]);const we=e==="reply"||e==="reply-all"||e==="forward",{data:De,isLoading:Ge,isError:Dt,refetch:Ae}=mo({messageId:n?.message.messageId,bodyParts:n?.bodyParts,enabled:we&&!!n}),le=s.useMemo(()=>{if(!we||!n||xe||!De)return;const P=De.kind==="html"?{kind:"html",content:Wo(De.body)}:{kind:"text",content:De.body};return Ms(e==="forward"?"forward":"reply",n.envelope,P)},[we,n,xe,De,e]),At=n?.envelope.from[0]?.displayName??n?.envelope.from[0]?.normalizedEmail,Ot=s.useCallback(P=>{X(!0),ne(P),o(P)},[o]),{saveState:Nt,saveError:Me,saveDraft:st,saveImmediately:A,stopAutoSave:I}=Ss({outboxMessageId:r,onDraftCreated:Ot});s.useEffect(()=>{Me&&f({title:"Couldn't save draft",detail:Lt(Me)??"Saving the draft failed.",error:Me})},[Me,f]);const j=yt({...ao(),meta:bt}),L=yt({...io(),meta:bt,onError:P=>{f(so("Couldn't discard draft","The draft wasn't discarded.",P))}}),{data:B}=Et({...Wn(),staleTime:1/0}),z=B?.accounts.find(P=>P.accountId===R),K=z?ho(z):!1,Z=z?.composeLanguages,J=s.useMemo(()=>Z&&Z.length>0?Z:co(navigator.languages),[Z]),pe=s.useMemo(()=>As(f),[f]),ee=s.useRef(!1),[te,Oe]=s.useState(!1),Ne=s.useCallback((P,F)=>te?{status:"sending"}:R?K?{status:"blocked",reason:Gt}:Ge?{status:"blocked",reason:Ks}:F?{status:"blocked",reason:Gs(F)}:P===0?{status:"blocked",reason:qs}:{status:"ready",accountId:R}:{status:"blocked",reason:"Choose an account to send from."},[te,R,K,Ge]),kt=s.useMemo(()=>Ne(l.length+E.entries.length,In([{label:"To",text:E.unparsed}])),[Ne,l.length,E]),Nr=kt;s.useEffect(()=>{if(!R||ee.current||V!==void 0&&V!==r||r&&!U||Qs(l,h,x,S,Te))return;const{htmlBody:P,textBody:F}=kn(Re,Te,se,le),oe={accountId:R,toAddresses:l.map(ae=>ae.email),ccAddresses:h.length>0?h.map(ae=>ae.email):void 0,bccAddresses:x.length>0?x.map(ae=>ae.email):void 0,subject:S||void 0,textBody:F,htmlBody:P},Q=JSON.stringify(oe);if(ce.current){ce.current=!1,re.current=Q;return}re.current!==Q&&st(oe)},[R,r,V,U,l,h,x,S,Te,Re,se,le,st]);const sn=s.useCallback(async(P,F)=>{if(!ee.current){ee.current=!0,Oe(!0);try{I();const oe=n&&(e==="reply"||e==="reply-all")?zs(n):{},{htmlBody:Q,textBody:ae}=kn(Re,Te,se,le),Ir=!r,it=await A({accountId:P,toAddresses:F.to.map(ye=>ye.email),ccAddresses:F.cc.length>0?F.cc.map(ye=>ye.email):void 0,bccAddresses:F.bcc.length>0?F.bcc.map(ye=>ye.email):void 0,subject:S||void 0,textBody:ae,htmlBody:Q,...oe});if(it.outcome==="failed"){f({title:"Couldn't send message",detail:Lt(it.error)??"Saving the message failed, so nothing was sent. Try again.",error:it.error});return}const It=it.outboxMessageId;if(await j.mutateAsync({path:{outboxMessageId:It}}).catch(ye=>(f({title:"Couldn't send message",detail:Lt(ye)??(Ir?"The draft was saved but the send request failed. Try again from the Outbox.":"The send request failed. Try again."),error:ye}),null))===null)return;I(It),p(It),a()}finally{ee.current=!1,Oe(!1)}}},[S,Te,Re,se,le,e,n,r,A,j,I,p,f,a]),kr=s.useCallback(()=>{I(r),r&&L.mutate({path:{outboxMessageId:r}}),a()},[I,r,L,a]),Pt=s.useCallback(P=>{f({title:"Can't send yet",detail:P}),P===Gt&&nt.current?.focus()},[f]),cn=s.useCallback(()=>{if(kt.status==="sending")return;const P=D.to.current?.commitPending(),F=D.cc.current?.commitPending(),oe=D.bcc.current?.commitPending(),Q={to:P?.addresses??l,cc:F?.addresses??h,bcc:oe?.addresses??x},ae=Ne(Q.to.length,In([{label:"To",text:P?.unparsed??""},{label:"Cc",text:F?.unparsed??""},{label:"Bcc",text:oe?.unparsed??""}]));if(ae.status!=="sending"){if(ae.status==="blocked"){Pt(ae.reason);return}sn(ae.accountId,Q)}},[kt.status,D,l,h,x,Ne,Pt,sn]),Pr=s.useCallback(P=>{W(P.accountId),i?.(P)},[i]);return m.jsx(Oo,{layout:c,banner:m.jsxs(m.Fragment,{children:[z&&K?m.jsx(Rs,{accountId:z.accountId,configureRef:nt}):null,Dt?m.jsxs(uo,{tone:"warning","data-testid":"compose-quote-failed",children:[m.jsx("span",{children:Ys})," ",m.jsx("button",{type:"button",className:"underline",onClick:()=>{Ae()},children:"Try again"})]}):null]}),header:m.jsx(Zs,{documentGeneration:ze,selectedAccountId:R,onAccountChange:Pr,toAddresses:l,setToAddresses:u,ccAddresses:h,setCcAddresses:w,bccAddresses:x,setBccAddresses:d,showCc:N,setShowCc:$,showBcc:y,setShowBcc:M,subject:S,setSubject:O,fieldHandles:D,onToPendingChange:b}),quoted:le?m.jsx(Lo,{text:le.text,html:le.html,senderName:At}):void 0,actionBar:m.jsx(Eo,{send:Nr,onSend:cn,onBlocked:Pt,onDiscard:kr,save:Nt}),children:m.jsx(s.Suspense,{fallback:m.jsx(Ao,{}),children:m.jsx(Bs,{mode:Re,onModeChange:Ye,initialHtml:k,initialText:rt,onChange:_e,onSubmit:cn,initialCaret:e==="new"?"start":void 0,onConversionError:f,languages:J,initialLanguage:Tt,onLanguageChange:ot,spellcheck:pe},ze)})})};var Rt="Dialog",[sr]=qo(Rt),[Js,ie]=sr(Rt),ir=e=>{const{__scopeDialog:t,children:n,open:r,defaultOpen:o,onOpenChange:a,modal:i=!0}=e,c=s.useRef(null),p=s.useRef(null),[f,l]=Go({prop:r,defaultProp:o??!1,onChange:a,caller:Rt});return m.jsx(Js,{scope:t,triggerRef:c,contentRef:p,contentId:$t(),titleId:$t(),descriptionId:$t(),open:f,onOpenChange:l,onOpenToggle:s.useCallback(()=>l(u=>!u),[l]),modal:i,children:n})};ir.displayName=Rt;var cr="DialogTrigger",ei=s.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=ie(cr,n),a=Pe(t,o.triggerRef);return m.jsx(he.button,{type:"button","aria-haspopup":"dialog","aria-expanded":o.open,"aria-controls":o.open?o.contentId:void 0,"data-state":on(o.open),...r,ref:a,onClick:Se(e.onClick,o.onOpenToggle)})});ei.displayName=cr;var rn="DialogPortal",[ti,ur]=sr(rn,{forceMount:void 0}),lr=e=>{const{__scopeDialog:t,forceMount:n,children:r,container:o}=e,a=ie(rn,t);return m.jsx(ti,{scope:t,forceMount:n,children:s.Children.map(r,i=>m.jsx(xt,{present:n||a.open,children:m.jsx(Gn,{asChild:!0,container:o,children:i})}))})};lr.displayName=rn;var St="DialogOverlay",dr=s.forwardRef((e,t)=>{const n=ur(St,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,a=ie(St,e.__scopeDialog);return a.modal?m.jsx(xt,{present:r||a.open,children:m.jsx(ri,{...o,ref:t})}):null});dr.displayName=St;var ni=Vn("DialogOverlay.RemoveScroll"),ri=s.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=ie(St,n),a=pa(),i=Pe(t,a);return m.jsx(rr,{as:ni,allowPinchZoom:!0,shards:[o.contentRef],children:m.jsx(he.div,{"data-state":on(o.open),...r,ref:i,style:{pointerEvents:"auto",...r.style}})})}),We="DialogContent",fr=s.forwardRef((e,t)=>{const n=ur(We,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,a=ie(We,e.__scopeDialog);return m.jsx(xt,{present:r||a.open,children:a.modal?m.jsx(oi,{...o,ref:t}):m.jsx(ai,{...o,ref:t})})});fr.displayName=We;var oi=s.forwardRef((e,t)=>{const n=ie(We,e.__scopeDialog),r=s.useRef(null),o=Pe(t,n.contentRef,r);return s.useEffect(()=>{const a=r.current;if(a)return Ma(a)},[]),m.jsx(mr,{...e,ref:o,trapFocus:n.open,disableOutsidePointerEvents:n.open,onCloseAutoFocus:Se(e.onCloseAutoFocus,a=>{a.preventDefault(),n.triggerRef.current?.focus()}),onPointerDownOutside:Se(e.onPointerDownOutside,a=>{const i=a.detail.originalEvent,c=i.button===0&&i.ctrlKey===!0;(i.button===2||c)&&a.preventDefault()}),onFocusOutside:Se(e.onFocusOutside,a=>a.preventDefault())})}),ai=s.forwardRef((e,t)=>{const n=ie(We,e.__scopeDialog),r=s.useRef(!1),o=s.useRef(!1);return m.jsx(mr,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:a=>{e.onCloseAutoFocus?.(a),a.defaultPrevented||(r.current||n.triggerRef.current?.focus(),a.preventDefault()),r.current=!1,o.current=!1},onInteractOutside:a=>{e.onInteractOutside?.(a),a.defaultPrevented||(r.current=!0,a.detail.originalEvent.type==="pointerdown"&&(o.current=!0));const i=a.target;n.triggerRef.current?.contains(i)&&a.preventDefault(),a.detail.originalEvent.type==="focusin"&&o.current&&a.preventDefault()}})}),mr=s.forwardRef((e,t)=>{const{__scopeDialog:n,trapFocus:r,onOpenAutoFocus:o,onCloseAutoFocus:a,...i}=e,c=ie(We,n);return wa(),m.jsx(m.Fragment,{children:m.jsx(Kn,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:o,onUnmountAutoFocus:a,children:m.jsx(zn,{role:"dialog",id:c.contentId,"aria-describedby":c.descriptionId,"aria-labelledby":c.titleId,"data-state":on(c.open),...i,ref:t,deferPointerDownOutside:!0,onDismiss:()=>c.onOpenChange(!1)})})})}),pr="DialogTitle",hr=s.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=ie(pr,n);return m.jsx(he.h2,{id:o.titleId,...r,ref:t})});hr.displayName=pr;var vr="DialogDescription",si=s.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=ie(vr,n);return m.jsx(he.p,{id:o.descriptionId,...r,ref:t})});si.displayName=vr;var gr="DialogClose",ii=s.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=ie(gr,n);return m.jsx(he.button,{type:"button",...r,ref:t,onClick:Se(e.onClick,()=>o.onOpenChange(!1))})});ii.displayName=gr;function on(e){return e?"open":"closed"}function ci(e){if(typeof document>"u")return;let t=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css",t.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}const wr=C.createContext({drawerRef:{current:null},overlayRef:{current:null},onPress:()=>{},onRelease:()=>{},onDrag:()=>{},onNestedDrag:()=>{},onNestedOpenChange:()=>{},onNestedRelease:()=>{},openProp:void 0,dismissible:!1,isOpen:!1,isDragging:!1,keyboardIsOpen:{current:!1},snapPointsOffset:null,snapPoints:null,handleOnly:!1,modal:!1,shouldFade:!1,activeSnapPoint:null,onOpenChange:()=>{},setActiveSnapPoint:()=>{},closeDrawer:()=>{},direction:"bottom",shouldAnimate:{current:!0},shouldScaleBackground:!1,setBackgroundColorOnScale:!0,noBodyStyles:!1,container:null,autoFocus:!1}),tt=()=>{const e=C.useContext(wr);if(!e)throw new Error("useDrawerContext must be used within a Drawer.Root");return e};ci(`[data-vaul-drawer]{touch-action:none;will-change:transform;transition:transform .5s cubic-bezier(.32, .72, 0, 1);animation-duration:.5s;animation-timing-function:cubic-bezier(0.32,0.72,0,1)}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=open]{animation-name:slideFromBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=closed]{animation-name:slideToBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=open]{animation-name:slideFromTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=closed]{animation-name:slideToTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=open]{animation-name:slideFromLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=closed]{animation-name:slideToLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=open]{animation-name:slideFromRight}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=closed]{animation-name:slideToRight}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--initial-transform,100%),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=top]{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=left]{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--initial-transform,100%),0,0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=top]{transform:translate3d(0,var(--snap-point-height,0),0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--snap-point-height,0),0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=left]{transform:translate3d(var(--snap-point-height,0),0,0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--snap-point-height,0),0,0)}[data-vaul-overlay][data-vaul-snap-points=false]{animation-duration:.5s;animation-timing-function:cubic-bezier(0.32,0.72,0,1)}[data-vaul-overlay][data-vaul-snap-points=false][data-state=open]{animation-name:fadeIn}[data-vaul-overlay][data-state=closed]{animation-name:fadeOut}[data-vaul-animate=false]{animation:none!important}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:0;transition:opacity .5s cubic-bezier(.32, .72, 0, 1)}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:1}[data-vaul-drawer]:not([data-vaul-custom-container=true])::after{content:'';position:absolute;background:inherit;background-color:inherit}[data-vaul-drawer][data-vaul-drawer-direction=top]::after{top:initial;bottom:100%;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=bottom]::after{top:100%;bottom:initial;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=left]::after{left:initial;right:100%;top:0;bottom:0;width:200%}[data-vaul-drawer][data-vaul-drawer-direction=right]::after{left:100%;right:initial;top:0;bottom:0;width:200%}[data-vaul-overlay][data-vaul-snap-points=true]:not([data-vaul-snap-points-overlay=true]):not(
|
|
53
|
+
${t}`,kn=(e,t,n,r)=>{const o=r?js(t.text,r.text):t.text;if(e==="plain")return{textBody:o||void 0,htmlBody:""};const a=r?`${t.html}${r.html}`:t.html;return{textBody:o||void 0,htmlBody:a?eo(a,n):void 0}},Pn=150,$s=()=>{const[e,t]=s.useState(()=>{if(typeof window>"u"||!window.visualViewport)return{viewportHeight:0,isKeyboardOpen:!1};const n=window.visualViewport.height;return{viewportHeight:n,isKeyboardOpen:window.innerHeight-n>Pn}});return s.useEffect(()=>{if(typeof window>"u"||!window.visualViewport)return;const n=window.visualViewport,r=()=>{const o=n.height;t({viewportHeight:o,isKeyboardOpen:window.innerHeight-o>Pn})};return r(),n.addEventListener("resize",r),()=>n.removeEventListener("resize",r)},[]),e},Fs=({selectedAccountId:e,onSelect:t})=>{const{data:n}=Et({...Wn(),staleTime:1/0}),r=n?.accounts??[];if(s.useEffect(()=>{!e&&r.length===1&&r[0]&&t(r[0])},[e,r,t]),r.length<=1){const o=r[0];return o?m.jsxs("div",{className:"flex items-start gap-2",children:[m.jsx("label",{className:"text-sm text-fg-muted shrink-0 w-12 pt-1.5",children:"From:"}),m.jsx("div",{className:"text-sm py-1.5",children:o.email})]}):null}return m.jsxs("div",{className:"flex items-start gap-2",children:[m.jsx("label",{htmlFor:"from-account-selector",className:"text-sm text-fg-muted shrink-0 w-12 pt-1.5",children:"From:"}),m.jsx("select",{id:"from-account-selector",value:e??"",onChange:o=>{const a=r.find(i=>i.accountId===o.target.value);a&&t(a)},className:"flex-1 px-2 py-1.5 border rounded-md bg-canvas text-sm",children:r.map(o=>m.jsx("option",{value:o.accountId,children:o.email},o.accountId))})]})},Bs=s.lazy(()=>Hn(()=>import("./rich-text-DJZuCFUV.js"),__vite__mapDeps([4,1,2,5,6,7,3,8,9,10,11,12,13])).then(e=>({default:e.ComposeBody}))),Hs=e=>e?`<p></p><p>-- </p>${Zt(e)}`:"",Vt=e=>({html:Hs(e),text:e}),Ws=e=>e?/^re:\s/i.test(e)?e:`Re: ${e}`:"Re: ",Us=e=>e?/^fwd?:\s/i.test(e)?e:`Fwd: ${e}`:"Fwd: ",Vs=(e,t,n)=>{const{envelope:r}=e,a=(r.replyTo.length>0?r.replyTo:r.from).map(f=>({email:f.normalizedEmail,displayName:f.displayName}));if(t!=="reply-all")return{to:a,cc:[]};const i=n?.toLowerCase(),c=new Set(a.map(f=>f.email.toLowerCase())),p=[...r.to,...r.cc].filter(f=>f.normalizedEmail.toLowerCase()!==i&&!c.has(f.normalizedEmail.toLowerCase())).map(f=>({email:f.normalizedEmail,displayName:f.displayName}));return{to:a,cc:p}},zs=e=>{const t=e.envelope.messageIdValue,r=[...e.references.filter(o=>o.referenceType==="references").sort((o,a)=>o.referenceOrder-a.referenceOrder).map(o=>o.messageIdValue)];return t&&!r.includes(t)&&r.push(t),{inReplyTo:t,references:r}},qs="Add a To address before sending.",Ks="Loading the message you're quoting.",Ys="The message you're quoting couldn't be loaded, so it won't be included.",Gs=({label:e,text:t})=>`${e} holds "${t}", which is not an address.`,In=e=>e.find(t=>t.text.trim()!==""),Xs={entries:[],unparsed:""},Qs=(e,t,n,r,o)=>e.length===0&&t.length===0&&n.length===0&&r.trim()===""&&o.text.trim()==="",Zs=({documentGeneration:e,selectedAccountId:t,onAccountChange:n,toAddresses:r,setToAddresses:o,ccAddresses:a,setCcAddresses:i,bccAddresses:c,setBccAddresses:p,showCc:f,setShowCc:l,showBcc:u,setShowBcc:h,subject:w,setSubject:x,fieldHandles:d,onToPendingChange:E})=>{const b=lo(),{isKeyboardOpen:T}=$s(),[g,v]=s.useState(void 0),D=g===e;return m.jsx(ko,{collapsed:!b&&T&&!D,onExpand:()=>v(e),summary:No({to:r,cc:a,bcc:c,subject:w}),from:m.jsx(Fs,{selectedAccountId:t,onSelect:n}),to:m.jsx(Ut,{label:"To",addresses:r,onChange:o,placeholder:"Recipients",onPendingChange:E,ref:d.to}),cc:f?m.jsx(Ut,{label:"Cc",addresses:a,onChange:i,ref:d.cc}):void 0,bcc:u?m.jsx(Ut,{label:"Bcc",addresses:c,onChange:p,ref:d.bcc}):void 0,subject:m.jsx(Io,{value:w,onChange:x}),onShowCc:()=>l(!0),onShowBcc:()=>h(!0)})},Ki=({mode:e,account:t,sourceMessage:n,outboxMessageId:r,onDraftCreated:o,onClose:a,onAccountChange:i,layout:c="fill"})=>{const{startSendPolling:p}=to(),{pushError:f}=no(),[l,u]=s.useState([]),[h,w]=s.useState([]),[x,d]=s.useState([]),[E,b]=s.useState(Xs),T=s.useRef(null),g=s.useRef(null),v=s.useRef(null),D=s.useMemo(()=>({to:T,cc:g,bcc:v}),[]),_=s.useCallback(()=>{T.current?.clearPending(),g.current?.clearPending(),v.current?.clearPending()},[]),[S,O]=s.useState(""),[N,$]=s.useState(!1),[y,M]=s.useState(!1),[R,W]=s.useState(t?.accountId),[U,X]=s.useState(!1),[V,ne]=s.useState(r),re=s.useRef(void 0),ce=s.useRef(!1),nt=s.useRef(null),Ue=s.useRef(r),ue=s.useRef(r!==void 0),[xe,Ve]=s.useState(r!==void 0),Ce=s.useRef(r!==void 0?e:void 0),de=s.useRef(void 0),ve=s.useRef(e);ve.current=e;const Ie=s.useRef(t?.accountId);s.useEffect(()=>{const P=t?.accountId;!P||Ie.current===P||(Ie.current=P,!ue.current&&W(P))},[t?.accountId]),s.useEffect(()=>{const P=Ue.current;if(P===r||(Ue.current=r,P===void 0))return;ue.current=r!==void 0,Ve(r!==void 0),Ce.current=r!==void 0?ve.current:void 0,de.current=void 0;const F=r?{html:"",text:""}:Vt(me.current);u([]),w([]),d([]),_(),O(""),$(!1),M(!1),Ke(F.html),Le(F.text),Ye("rich"),ge(void 0),_e({...F,formatting:[]}),qe(oe=>oe+1),X(!1),re.current=void 0,ce.current=!1,ne(r)},[r,_]);const{signature:fe}=po(R),me=s.useRef(fe.plainText);me.current=fe.plainText;const[ze,qe]=s.useState(0),[k,Ke]=s.useState(()=>Vt(fe.plainText).html),[rt,Le]=s.useState(fe.plainText),[Re,Ye]=s.useState("rich"),[se,ot]=s.useState("en"),[Tt,ge]=s.useState(),[Te,_e]=s.useState(()=>({...Vt(fe.plainText),formatting:[]})),{data:G,error:at}=Et({...ro({path:{outboxMessageId:r??""}}),enabled:!!r&&!U,meta:fo,retry:(P,F)=>!ln(F)&&P<1});s.useEffect(()=>{ln(at)&&a()},[at,a]),s.useEffect(()=>{if(!G||U)return;u(G.toAddresses.map(Q=>({email:Q,displayName:void 0}))),G.ccAddresses&&G.ccAddresses.length>0&&(w(G.ccAddresses.map(Q=>({email:Q,displayName:void 0}))),$(!0)),G.bccAddresses&&G.bccAddresses.length>0&&(d(G.bccAddresses.map(Q=>({email:Q,displayName:void 0}))),M(!0)),G.subject&&O(G.subject);const P=oo(G.htmlBody??""),F=P.html,oe=G.textBody??"";Ye(Uo(G.htmlBody)),ge(P.language??void 0),Ke(F),Le(oe),_e({html:F,text:oe,formatting:[]}),qe(Q=>Q+1),W(G.accountId),X(!0),ce.current=!0},[G,U]),s.useEffect(()=>{if(n){if(ue.current&&Ce.current===e){const P=de.current;if(!P||P.myEmail===t?.email)return}if(Ce.current=e,de.current={myEmail:t?.email},_(),e==="reply"||e==="reply-all"){const{to:P,cc:F}=Vs(n,e,t?.email);u(P),w(F),F.length>0&&$(!0),O(Ws(n.envelope.subject))}e==="forward"&&(u([]),w([]),d([]),O(Us(n.envelope.subject)))}},[e,n,t?.email,_]);const we=e==="reply"||e==="reply-all"||e==="forward",{data:De,isLoading:Ge,isError:Dt,refetch:Ae}=mo({messageId:n?.message.messageId,bodyParts:n?.bodyParts,enabled:we&&!!n}),le=s.useMemo(()=>{if(!we||!n||xe||!De)return;const P=De.kind==="html"?{kind:"html",content:Wo(De.body)}:{kind:"text",content:De.body};return Ms(e==="forward"?"forward":"reply",n.envelope,P)},[we,n,xe,De,e]),At=n?.envelope.from[0]?.displayName??n?.envelope.from[0]?.normalizedEmail,Ot=s.useCallback(P=>{X(!0),ne(P),o(P)},[o]),{saveState:Nt,saveError:Me,saveDraft:st,saveImmediately:A,stopAutoSave:I}=Ss({outboxMessageId:r,onDraftCreated:Ot});s.useEffect(()=>{Me&&f({title:"Couldn't save draft",detail:Lt(Me)??"Saving the draft failed.",error:Me})},[Me,f]);const j=yt({...ao(),meta:bt}),L=yt({...io(),meta:bt,onError:P=>{f(so("Couldn't discard draft","The draft wasn't discarded.",P))}}),{data:B}=Et({...Wn(),staleTime:1/0}),z=B?.accounts.find(P=>P.accountId===R),K=z?ho(z):!1,Z=z?.composeLanguages,J=s.useMemo(()=>Z&&Z.length>0?Z:co(navigator.languages),[Z]),pe=s.useMemo(()=>As(f),[f]),ee=s.useRef(!1),[te,Oe]=s.useState(!1),Ne=s.useCallback((P,F)=>te?{status:"sending"}:R?K?{status:"blocked",reason:Gt}:Ge?{status:"blocked",reason:Ks}:F?{status:"blocked",reason:Gs(F)}:P===0?{status:"blocked",reason:qs}:{status:"ready",accountId:R}:{status:"blocked",reason:"Choose an account to send from."},[te,R,K,Ge]),kt=s.useMemo(()=>Ne(l.length+E.entries.length,In([{label:"To",text:E.unparsed}])),[Ne,l.length,E]),Nr=kt;s.useEffect(()=>{if(!R||ee.current||V!==void 0&&V!==r||r&&!U||Qs(l,h,x,S,Te))return;const{htmlBody:P,textBody:F}=kn(Re,Te,se,le),oe={accountId:R,toAddresses:l.map(ae=>ae.email),ccAddresses:h.length>0?h.map(ae=>ae.email):void 0,bccAddresses:x.length>0?x.map(ae=>ae.email):void 0,subject:S||void 0,textBody:F,htmlBody:P},Q=JSON.stringify(oe);if(ce.current){ce.current=!1,re.current=Q;return}re.current!==Q&&st(oe)},[R,r,V,U,l,h,x,S,Te,Re,se,le,st]);const sn=s.useCallback(async(P,F)=>{if(!ee.current){ee.current=!0,Oe(!0);try{I();const oe=n&&(e==="reply"||e==="reply-all")?zs(n):{},{htmlBody:Q,textBody:ae}=kn(Re,Te,se,le),Ir=!r,it=await A({accountId:P,toAddresses:F.to.map(ye=>ye.email),ccAddresses:F.cc.length>0?F.cc.map(ye=>ye.email):void 0,bccAddresses:F.bcc.length>0?F.bcc.map(ye=>ye.email):void 0,subject:S||void 0,textBody:ae,htmlBody:Q,...oe});if(it.outcome==="failed"){f({title:"Couldn't send message",detail:Lt(it.error)??"Saving the message failed, so nothing was sent. Try again.",error:it.error});return}const It=it.outboxMessageId;if(await j.mutateAsync({path:{outboxMessageId:It}}).catch(ye=>(f({title:"Couldn't send message",detail:Lt(ye)??(Ir?"The draft was saved but the send request failed. Try again from the Outbox.":"The send request failed. Try again."),error:ye}),null))===null)return;I(It),p(It),a()}finally{ee.current=!1,Oe(!1)}}},[S,Te,Re,se,le,e,n,r,A,j,I,p,f,a]),kr=s.useCallback(()=>{I(r),r&&L.mutate({path:{outboxMessageId:r}}),a()},[I,r,L,a]),Pt=s.useCallback(P=>{f({title:"Can't send yet",detail:P}),P===Gt&&nt.current?.focus()},[f]),cn=s.useCallback(()=>{if(kt.status==="sending")return;const P=D.to.current?.commitPending(),F=D.cc.current?.commitPending(),oe=D.bcc.current?.commitPending(),Q={to:P?.addresses??l,cc:F?.addresses??h,bcc:oe?.addresses??x},ae=Ne(Q.to.length,In([{label:"To",text:P?.unparsed??""},{label:"Cc",text:F?.unparsed??""},{label:"Bcc",text:oe?.unparsed??""}]));if(ae.status!=="sending"){if(ae.status==="blocked"){Pt(ae.reason);return}sn(ae.accountId,Q)}},[kt.status,D,l,h,x,Ne,Pt,sn]),Pr=s.useCallback(P=>{W(P.accountId),i?.(P)},[i]);return m.jsx(Oo,{layout:c,banner:m.jsxs(m.Fragment,{children:[z&&K?m.jsx(Rs,{accountId:z.accountId,configureRef:nt}):null,Dt?m.jsxs(uo,{tone:"warning","data-testid":"compose-quote-failed",children:[m.jsx("span",{children:Ys})," ",m.jsx("button",{type:"button",className:"underline",onClick:()=>{Ae()},children:"Try again"})]}):null]}),header:m.jsx(Zs,{documentGeneration:ze,selectedAccountId:R,onAccountChange:Pr,toAddresses:l,setToAddresses:u,ccAddresses:h,setCcAddresses:w,bccAddresses:x,setBccAddresses:d,showCc:N,setShowCc:$,showBcc:y,setShowBcc:M,subject:S,setSubject:O,fieldHandles:D,onToPendingChange:b}),quoted:le?m.jsx(Lo,{text:le.text,html:le.html,senderName:At}):void 0,actionBar:m.jsx(Eo,{send:Nr,onSend:cn,onBlocked:Pt,onDiscard:kr,save:Nt}),children:m.jsx(s.Suspense,{fallback:m.jsx(Ao,{}),children:m.jsx(Bs,{mode:Re,onModeChange:Ye,initialHtml:k,initialText:rt,onChange:_e,onSubmit:cn,initialCaret:e==="new"?"start":void 0,onConversionError:f,languages:J,initialLanguage:Tt,onLanguageChange:ot,spellcheck:pe},ze)})})};var Rt="Dialog",[sr]=qo(Rt),[Js,ie]=sr(Rt),ir=e=>{const{__scopeDialog:t,children:n,open:r,defaultOpen:o,onOpenChange:a,modal:i=!0}=e,c=s.useRef(null),p=s.useRef(null),[f,l]=Go({prop:r,defaultProp:o??!1,onChange:a,caller:Rt});return m.jsx(Js,{scope:t,triggerRef:c,contentRef:p,contentId:$t(),titleId:$t(),descriptionId:$t(),open:f,onOpenChange:l,onOpenToggle:s.useCallback(()=>l(u=>!u),[l]),modal:i,children:n})};ir.displayName=Rt;var cr="DialogTrigger",ei=s.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=ie(cr,n),a=Pe(t,o.triggerRef);return m.jsx(he.button,{type:"button","aria-haspopup":"dialog","aria-expanded":o.open,"aria-controls":o.open?o.contentId:void 0,"data-state":on(o.open),...r,ref:a,onClick:Se(e.onClick,o.onOpenToggle)})});ei.displayName=cr;var rn="DialogPortal",[ti,ur]=sr(rn,{forceMount:void 0}),lr=e=>{const{__scopeDialog:t,forceMount:n,children:r,container:o}=e,a=ie(rn,t);return m.jsx(ti,{scope:t,forceMount:n,children:s.Children.map(r,i=>m.jsx(xt,{present:n||a.open,children:m.jsx(Gn,{asChild:!0,container:o,children:i})}))})};lr.displayName=rn;var St="DialogOverlay",dr=s.forwardRef((e,t)=>{const n=ur(St,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,a=ie(St,e.__scopeDialog);return a.modal?m.jsx(xt,{present:r||a.open,children:m.jsx(ri,{...o,ref:t})}):null});dr.displayName=St;var ni=Vn("DialogOverlay.RemoveScroll"),ri=s.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=ie(St,n),a=pa(),i=Pe(t,a);return m.jsx(rr,{as:ni,allowPinchZoom:!0,shards:[o.contentRef],children:m.jsx(he.div,{"data-state":on(o.open),...r,ref:i,style:{pointerEvents:"auto",...r.style}})})}),We="DialogContent",fr=s.forwardRef((e,t)=>{const n=ur(We,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,a=ie(We,e.__scopeDialog);return m.jsx(xt,{present:r||a.open,children:a.modal?m.jsx(oi,{...o,ref:t}):m.jsx(ai,{...o,ref:t})})});fr.displayName=We;var oi=s.forwardRef((e,t)=>{const n=ie(We,e.__scopeDialog),r=s.useRef(null),o=Pe(t,n.contentRef,r);return s.useEffect(()=>{const a=r.current;if(a)return Ma(a)},[]),m.jsx(mr,{...e,ref:o,trapFocus:n.open,disableOutsidePointerEvents:n.open,onCloseAutoFocus:Se(e.onCloseAutoFocus,a=>{a.preventDefault(),n.triggerRef.current?.focus()}),onPointerDownOutside:Se(e.onPointerDownOutside,a=>{const i=a.detail.originalEvent,c=i.button===0&&i.ctrlKey===!0;(i.button===2||c)&&a.preventDefault()}),onFocusOutside:Se(e.onFocusOutside,a=>a.preventDefault())})}),ai=s.forwardRef((e,t)=>{const n=ie(We,e.__scopeDialog),r=s.useRef(!1),o=s.useRef(!1);return m.jsx(mr,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:a=>{e.onCloseAutoFocus?.(a),a.defaultPrevented||(r.current||n.triggerRef.current?.focus(),a.preventDefault()),r.current=!1,o.current=!1},onInteractOutside:a=>{e.onInteractOutside?.(a),a.defaultPrevented||(r.current=!0,a.detail.originalEvent.type==="pointerdown"&&(o.current=!0));const i=a.target;n.triggerRef.current?.contains(i)&&a.preventDefault(),a.detail.originalEvent.type==="focusin"&&o.current&&a.preventDefault()}})}),mr=s.forwardRef((e,t)=>{const{__scopeDialog:n,trapFocus:r,onOpenAutoFocus:o,onCloseAutoFocus:a,...i}=e,c=ie(We,n);return wa(),m.jsx(m.Fragment,{children:m.jsx(Kn,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:o,onUnmountAutoFocus:a,children:m.jsx(zn,{role:"dialog",id:c.contentId,"aria-describedby":c.descriptionId,"aria-labelledby":c.titleId,"data-state":on(c.open),...i,ref:t,deferPointerDownOutside:!0,onDismiss:()=>c.onOpenChange(!1)})})})}),pr="DialogTitle",hr=s.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=ie(pr,n);return m.jsx(he.h2,{id:o.titleId,...r,ref:t})});hr.displayName=pr;var vr="DialogDescription",si=s.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=ie(vr,n);return m.jsx(he.p,{id:o.descriptionId,...r,ref:t})});si.displayName=vr;var gr="DialogClose",ii=s.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=ie(gr,n);return m.jsx(he.button,{type:"button",...r,ref:t,onClick:Se(e.onClick,()=>o.onOpenChange(!1))})});ii.displayName=gr;function on(e){return e?"open":"closed"}function ci(e){if(typeof document>"u")return;let t=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css",t.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}const wr=C.createContext({drawerRef:{current:null},overlayRef:{current:null},onPress:()=>{},onRelease:()=>{},onDrag:()=>{},onNestedDrag:()=>{},onNestedOpenChange:()=>{},onNestedRelease:()=>{},openProp:void 0,dismissible:!1,isOpen:!1,isDragging:!1,keyboardIsOpen:{current:!1},snapPointsOffset:null,snapPoints:null,handleOnly:!1,modal:!1,shouldFade:!1,activeSnapPoint:null,onOpenChange:()=>{},setActiveSnapPoint:()=>{},closeDrawer:()=>{},direction:"bottom",shouldAnimate:{current:!0},shouldScaleBackground:!1,setBackgroundColorOnScale:!0,noBodyStyles:!1,container:null,autoFocus:!1}),tt=()=>{const e=C.useContext(wr);if(!e)throw new Error("useDrawerContext must be used within a Drawer.Root");return e};ci(`[data-vaul-drawer]{touch-action:none;will-change:transform;transition:transform .5s cubic-bezier(.32, .72, 0, 1);animation-duration:.5s;animation-timing-function:cubic-bezier(0.32,0.72,0,1)}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=open]{animation-name:slideFromBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=closed]{animation-name:slideToBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=open]{animation-name:slideFromTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=closed]{animation-name:slideToTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=open]{animation-name:slideFromLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=closed]{animation-name:slideToLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=open]{animation-name:slideFromRight}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=closed]{animation-name:slideToRight}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--initial-transform,100%),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=top]{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=left]{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--initial-transform,100%),0,0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=top]{transform:translate3d(0,var(--snap-point-height,0),0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--snap-point-height,0),0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=left]{transform:translate3d(var(--snap-point-height,0),0,0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--snap-point-height,0),0,0)}[data-vaul-overlay][data-vaul-snap-points=false]{animation-duration:.5s;animation-timing-function:cubic-bezier(0.32,0.72,0,1)}[data-vaul-overlay][data-vaul-snap-points=false][data-state=open]{animation-name:fadeIn}[data-vaul-overlay][data-state=closed]{animation-name:fadeOut}[data-vaul-animate=false]{animation:none!important}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:0;transition:opacity .5s cubic-bezier(.32, .72, 0, 1)}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:1}[data-vaul-drawer]:not([data-vaul-custom-container=true])::after{content:'';position:absolute;background:inherit;background-color:inherit}[data-vaul-drawer][data-vaul-drawer-direction=top]::after{top:initial;bottom:100%;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=bottom]::after{top:100%;bottom:initial;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=left]::after{left:initial;right:100%;top:0;bottom:0;width:200%}[data-vaul-drawer][data-vaul-drawer-direction=right]::after{left:100%;right:initial;top:0;bottom:0;width:200%}[data-vaul-overlay][data-vaul-snap-points=true]:not([data-vaul-snap-points-overlay=true]):not(
|
|
54
54
|
[data-state=closed]
|
|
55
55
|
){opacity:0}[data-vaul-overlay][data-vaul-snap-points-overlay=true]{opacity:1}[data-vaul-handle]{display:block;position:relative;opacity:.7;background:#e2e2e4;margin-left:auto;margin-right:auto;height:5px;width:32px;border-radius:1rem;touch-action:pan-y}[data-vaul-handle]:active,[data-vaul-handle]:hover{opacity:1}[data-vaul-handle-hitarea]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max(100%,2.75rem);height:max(100%,2.75rem);touch-action:inherit}@media (hover:hover) and (pointer:fine){[data-vaul-drawer]{user-select:none}}@media (pointer:fine){[data-vaul-handle-hitarea]:{width:100%;height:100%}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeOut{to{opacity:0}}@keyframes slideFromBottom{from{transform:translate3d(0,var(--initial-transform,100%),0)}to{transform:translate3d(0,0,0)}}@keyframes slideToBottom{to{transform:translate3d(0,var(--initial-transform,100%),0)}}@keyframes slideFromTop{from{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}to{transform:translate3d(0,0,0)}}@keyframes slideToTop{to{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}}@keyframes slideFromLeft{from{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}to{transform:translate3d(0,0,0)}}@keyframes slideToLeft{to{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}}@keyframes slideFromRight{from{transform:translate3d(var(--initial-transform,100%),0,0)}to{transform:translate3d(0,0,0)}}@keyframes slideToRight{to{transform:translate3d(var(--initial-transform,100%),0,0)}}`);function ui(){const e=navigator.userAgent;return typeof window<"u"&&(/Firefox/.test(e)&&/Mobile/.test(e)||/FxiOS/.test(e))}function li(){return an(/^Mac/)}function di(){return an(/^iPhone/)}function Ln(){return/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}function fi(){return an(/^iPad/)||li()&&navigator.maxTouchPoints>1}function yr(){return di()||fi()}function an(e){return typeof window<"u"&&window.navigator!=null?e.test(window.navigator.platform):void 0}const mi=24,pi=typeof window<"u"?s.useLayoutEffect:s.useEffect;function _n(...e){return(...t)=>{for(let n of e)typeof n=="function"&&n(...t)}}const zt=typeof document<"u"&&window.visualViewport;function Mn(e){let t=window.getComputedStyle(e);return/(auto|scroll)/.test(t.overflow+t.overflowX+t.overflowY)}function br(e){for(Mn(e)&&(e=e.parentElement);e&&!Mn(e);)e=e.parentElement;return e||document.scrollingElement||document.documentElement}const hi=new Set(["checkbox","radio","range","color","file","image","button","submit","reset"]);let pt=0,qt;function vi(e={}){let{isDisabled:t}=e;pi(()=>{if(!t)return pt++,pt===1&&yr()&&(qt=gi()),()=>{pt--,pt===0&&qt?.()}},[t])}function gi(){let e,t=0,n=u=>{e=br(u.target),!(e===document.documentElement&&e===document.body)&&(t=u.changedTouches[0].pageY)},r=u=>{if(!e||e===document.documentElement||e===document.body){u.preventDefault();return}let h=u.changedTouches[0].pageY,w=e.scrollTop,x=e.scrollHeight-e.clientHeight;x!==0&&((w<=0&&h>t||w>=x&&h<t)&&u.preventDefault(),t=h)},o=u=>{let h=u.target;Jt(h)&&h!==document.activeElement&&(u.preventDefault(),h.style.transform="translateY(-2000px)",h.focus(),requestAnimationFrame(()=>{h.style.transform=""}))},a=u=>{let h=u.target;Jt(h)&&(h.style.transform="translateY(-2000px)",requestAnimationFrame(()=>{h.style.transform="",zt&&(zt.height<window.innerHeight?requestAnimationFrame(()=>{jn(h)}):zt.addEventListener("resize",()=>jn(h),{once:!0}))}))},i=()=>{window.scrollTo(0,0)},c=window.pageXOffset,p=window.pageYOffset,f=_n(wi(document.documentElement,"paddingRight",`${window.innerWidth-document.documentElement.clientWidth}px`));window.scrollTo(0,0);let l=_n(Qe(document,"touchstart",n,{passive:!1,capture:!0}),Qe(document,"touchmove",r,{passive:!1,capture:!0}),Qe(document,"touchend",o,{passive:!1,capture:!0}),Qe(document,"focus",a,!0),Qe(window,"scroll",i));return()=>{f(),l(),window.scrollTo(c,p)}}function wi(e,t,n){let r=e.style[t];return e.style[t]=n,()=>{e.style[t]=r}}function Qe(e,t,n,r){return e.addEventListener(t,n,r),()=>{e.removeEventListener(t,n,r)}}function jn(e){let t=document.scrollingElement||document.documentElement;for(;e&&e!==t;){let n=br(e);if(n!==document.documentElement&&n!==document.body&&n!==e){let r=n.getBoundingClientRect().top,o=e.getBoundingClientRect().top,a=e.getBoundingClientRect().bottom;const i=n.getBoundingClientRect().bottom+mi;a>i&&(n.scrollTop+=o-r)}e=n.parentElement}}function Jt(e){return e instanceof HTMLInputElement&&!hi.has(e.type)||e instanceof HTMLTextAreaElement||e instanceof HTMLElement&&e.isContentEditable}function yi(e,t){typeof e=="function"?e(t):e!=null&&(e.current=t)}function bi(...e){return t=>e.forEach(n=>yi(n,t))}function Er(...e){return s.useCallback(bi(...e),e)}const Sr=new WeakMap;function Y(e,t,n=!1){if(!e||!(e instanceof HTMLElement))return;let r={};Object.entries(t).forEach(([o,a])=>{if(o.startsWith("--")){e.style.setProperty(o,a);return}r[o]=e.style[o],e.style[o]=a}),!n&&Sr.set(e,r)}function Ei(e,t){if(!e||!(e instanceof HTMLElement))return;let n=Sr.get(e);n&&(e.style[t]=n[t])}const q=e=>{switch(e){case"top":case"bottom":return!0;case"left":case"right":return!1;default:return e}};function ht(e,t){if(!e)return null;const n=window.getComputedStyle(e),r=n.transform||n.webkitTransform||n.mozTransform;let o=r.match(/^matrix3d\((.+)\)$/);return o?parseFloat(o[1].split(", ")[q(t)?13:12]):(o=r.match(/^matrix\((.+)\)$/),o?parseFloat(o[1].split(", ")[q(t)?5:4]):null)}function Si(e){return 8*(Math.log(e+1)-2)}function Kt(e,t){if(!e)return()=>{};const n=e.style.cssText;return Object.assign(e.style,t),()=>{e.style.cssText=n}}function xi(...e){return(...t)=>{for(const n of e)typeof n=="function"&&n(...t)}}const H={DURATION:.5,EASE:[.32,.72,0,1]},xr=.4,Ci=.25,Ri=100,Cr=8,ke=16,en=26,Yt="vaul-dragging";function Rr(e){const t=C.useRef(e);return C.useEffect(()=>{t.current=e}),C.useMemo(()=>(...n)=>t.current==null?void 0:t.current.call(t,...n),[])}function Ti({defaultProp:e,onChange:t}){const n=C.useState(e),[r]=n,o=C.useRef(r),a=Rr(t);return C.useEffect(()=>{o.current!==r&&(a(r),o.current=r)},[r,o,a]),n}function Tr({prop:e,defaultProp:t,onChange:n=()=>{}}){const[r,o]=Ti({defaultProp:t,onChange:n}),a=e!==void 0,i=a?e:r,c=Rr(n),p=C.useCallback(f=>{if(a){const u=typeof f=="function"?f(e):f;u!==e&&c(u)}else o(f)},[a,e,o,c]);return[i,p]}function Di({activeSnapPointProp:e,setActiveSnapPointProp:t,snapPoints:n,drawerRef:r,overlayRef:o,fadeFromIndex:a,onSnapPointChange:i,direction:c="bottom",container:p,snapToSequentialPoint:f}){const[l,u]=Tr({prop:e,defaultProp:n?.[0],onChange:t}),[h,w]=C.useState(typeof window<"u"?{innerWidth:window.innerWidth,innerHeight:window.innerHeight}:void 0);C.useEffect(()=>{function S(){w({innerWidth:window.innerWidth,innerHeight:window.innerHeight})}return window.addEventListener("resize",S),()=>window.removeEventListener("resize",S)},[]);const x=C.useMemo(()=>l===n?.[n.length-1]||null,[n,l]),d=C.useMemo(()=>{var S;return(S=n?.findIndex(O=>O===l))!=null?S:null},[n,l]),E=n&&n.length>0&&(a||a===0)&&!Number.isNaN(a)&&n[a]===l||!n,b=C.useMemo(()=>{const S=p?{width:p.getBoundingClientRect().width,height:p.getBoundingClientRect().height}:typeof window<"u"?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0};var O;return(O=n?.map(N=>{const $=typeof N=="string";let y=0;if($&&(y=parseInt(N,10)),q(c)){const R=$?y:h?N*S.height:0;return h?c==="bottom"?S.height-R:-S.height+R:R}const M=$?y:h?N*S.width:0;return h?c==="right"?S.width-M:-S.width+M:M}))!=null?O:[]},[n,h,p]),T=C.useMemo(()=>d!==null?b?.[d]:null,[b,d]),g=C.useCallback(S=>{var O;const N=(O=b?.findIndex($=>$===S))!=null?O:null;i(N),Y(r.current,{transition:`transform ${H.DURATION}s cubic-bezier(${H.EASE.join(",")})`,transform:q(c)?`translate3d(0, ${S}px, 0)`:`translate3d(${S}px, 0, 0)`}),b&&N!==b.length-1&&a!==void 0&&N!==a&&N<a?Y(o.current,{transition:`opacity ${H.DURATION}s cubic-bezier(${H.EASE.join(",")})`,opacity:"0"}):Y(o.current,{transition:`opacity ${H.DURATION}s cubic-bezier(${H.EASE.join(",")})`,opacity:"1"}),u(n?.[Math.max(N,0)])},[r.current,n,b,a,o,u]);C.useEffect(()=>{if(l||e){var S;const O=(S=n?.findIndex(N=>N===e||N===l))!=null?S:-1;b&&O!==-1&&typeof b[O]=="number"&&g(b[O])}},[l,e,n,b,g]);function v({draggedDistance:S,closeDrawer:O,velocity:N,dismissible:$}){if(a===void 0)return;const y=c==="bottom"||c==="right"?(T??0)-S:(T??0)+S,M=d===a-1,R=d===0,W=S>0;if(M&&Y(o.current,{transition:`opacity ${H.DURATION}s cubic-bezier(${H.EASE.join(",")})`}),!f&&N>2&&!W){$?O():g(b[0]);return}if(!f&&N>2&&W&&b&&n){g(b[n.length-1]);return}const U=b?.reduce((V,ne)=>typeof V!="number"||typeof ne!="number"?V:Math.abs(ne-y)<Math.abs(V-y)?ne:V),X=q(c)?window.innerHeight:window.innerWidth;if(N>xr&&Math.abs(S)<X*.4){const V=W?1:-1;if(V>0&&x&&n){g(b[n.length-1]);return}if(R&&V<0&&$&&O(),d===null)return;g(b[d+V]);return}g(U)}function D({draggedDistance:S}){if(T===null)return;const O=c==="bottom"||c==="right"?T-S:T+S;(c==="bottom"||c==="right")&&O<b[b.length-1]||(c==="top"||c==="left")&&O>b[b.length-1]||Y(r.current,{transform:q(c)?`translate3d(0, ${O}px, 0)`:`translate3d(${O}px, 0, 0)`})}function _(S,O){if(!n||typeof d!="number"||!b||a===void 0)return null;const N=d===a-1;if(d>=a&&O)return 0;if(N&&!O)return 1;if(!E&&!N)return null;const y=N?d+1:d-1,M=N?b[y]-b[y-1]:b[y+1]-b[y],R=S/Math.abs(M);return N?1-R:R}return{isLastSnapPoint:x,activeSnapPoint:l,shouldFade:E,getPercentageDragged:_,setActiveSnapPoint:u,activeSnapPointIndex:d,onRelease:v,onDrag:D,snapPointsOffset:b}}const Ai=()=>()=>{};function Oi(){const{direction:e,isOpen:t,shouldScaleBackground:n,setBackgroundColorOnScale:r,noBodyStyles:o}=tt(),a=C.useRef(null),i=s.useMemo(()=>document.body.style.backgroundColor,[]);function c(){return(window.innerWidth-en)/window.innerWidth}C.useEffect(()=>{if(t&&n){a.current&&clearTimeout(a.current);const p=document.querySelector("[data-vaul-drawer-wrapper]")||document.querySelector("[vaul-drawer-wrapper]");if(!p)return;xi(r&&!o?Kt(document.body,{background:"black"}):Ai,Kt(p,{transformOrigin:q(e)?"top":"left",transitionProperty:"transform, border-radius",transitionDuration:`${H.DURATION}s`,transitionTimingFunction:`cubic-bezier(${H.EASE.join(",")})`}));const f=Kt(p,{borderRadius:`${Cr}px`,overflow:"hidden",...q(e)?{transform:`scale(${c()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`}:{transform:`scale(${c()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`}});return()=>{f(),a.current=window.setTimeout(()=>{i?document.body.style.background=i:document.body.style.removeProperty("background")},H.DURATION*1e3)}}},[t,n,i])}let Ze=null;function Ni({isOpen:e,modal:t,nested:n,hasBeenOpened:r,preventScrollRestoration:o,noBodyStyles:a}){const[i,c]=C.useState(()=>typeof window<"u"?window.location.href:""),p=C.useRef(0),f=C.useCallback(()=>{if(Ln()&&Ze===null&&e&&!a){Ze={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left,height:document.body.style.height,right:"unset"};const{scrollX:u,innerHeight:h}=window;document.body.style.setProperty("position","fixed","important"),Object.assign(document.body.style,{top:`${-p.current}px`,left:`${-u}px`,right:"0px",height:"auto"}),window.setTimeout(()=>window.requestAnimationFrame(()=>{const w=h-window.innerHeight;w&&p.current>=h&&(document.body.style.top=`${-(p.current+w)}px`)}),300)}},[e]),l=C.useCallback(()=>{if(Ln()&&Ze!==null&&!a){const u=-parseInt(document.body.style.top,10),h=-parseInt(document.body.style.left,10);Object.assign(document.body.style,Ze),window.requestAnimationFrame(()=>{if(o&&i!==window.location.href){c(window.location.href);return}window.scrollTo(h,u)}),Ze=null}},[i]);return C.useEffect(()=>{function u(){p.current=window.scrollY}return u(),window.addEventListener("scroll",u),()=>{window.removeEventListener("scroll",u)}},[]),C.useEffect(()=>{if(t)return()=>{typeof document>"u"||document.querySelector("[data-vaul-drawer]")||l()}},[t,l]),C.useEffect(()=>{n||!r||(e?(!window.matchMedia("(display-mode: standalone)").matches&&f(),t||window.setTimeout(()=>{l()},500)):l())},[e,r,i,t,n,f,l]),{restorePositionSetting:l}}function ki({open:e,onOpenChange:t,children:n,onDrag:r,onRelease:o,snapPoints:a,shouldScaleBackground:i=!1,setBackgroundColorOnScale:c=!0,closeThreshold:p=Ci,scrollLockTimeout:f=Ri,dismissible:l=!0,handleOnly:u=!1,fadeFromIndex:h=a&&a.length-1,activeSnapPoint:w,setActiveSnapPoint:x,fixed:d,modal:E=!0,onClose:b,nested:T,noBodyStyles:g=!1,direction:v="bottom",defaultOpen:D=!1,disablePreventScroll:_=!0,snapToSequentialPoint:S=!1,preventScrollRestoration:O=!1,repositionInputs:N=!0,onAnimationEnd:$,container:y,autoFocus:M=!1}){var R,W;const[U=!1,X]=Tr({defaultProp:D,prop:e,onChange:A=>{t?.(A),!A&&!T&&at(),setTimeout(()=>{$?.(A)},H.DURATION*1e3),A&&!E&&typeof window<"u"&&window.requestAnimationFrame(()=>{document.body.style.pointerEvents="auto"}),A||(document.body.style.pointerEvents="auto")}}),[V,ne]=C.useState(!1),[re,ce]=C.useState(!1),[nt,Ue]=C.useState(!1),ue=C.useRef(null),xe=C.useRef(null),Ve=C.useRef(null),Ce=C.useRef(null),de=C.useRef(null),ve=C.useRef(!1),Ie=C.useRef(null),fe=C.useRef(0),me=C.useRef(!1),ze=C.useRef(!D),qe=C.useRef(0),k=C.useRef(null),Ke=C.useRef(((R=k.current)==null?void 0:R.getBoundingClientRect().height)||0),rt=C.useRef(((W=k.current)==null?void 0:W.getBoundingClientRect().width)||0),Le=C.useRef(0),Re=C.useCallback(A=>{a&&A===ge.length-1&&(xe.current=new Date)},[]),{activeSnapPoint:Ye,activeSnapPointIndex:se,setActiveSnapPoint:ot,onRelease:Tt,snapPointsOffset:ge,onDrag:Te,shouldFade:_e,getPercentageDragged:G}=Di({snapPoints:a,activeSnapPointProp:w,setActiveSnapPointProp:x,drawerRef:k,fadeFromIndex:h,overlayRef:ue,onSnapPointChange:Re,direction:v,container:y,snapToSequentialPoint:S});vi({isDisabled:!U||re||!E||nt||!V||!N||!_});const{restorePositionSetting:at}=Ni({isOpen:U,modal:E,nested:T??!1,hasBeenOpened:V,preventScrollRestoration:O,noBodyStyles:g});function we(){return(window.innerWidth-en)/window.innerWidth}function De(A){var I,j;!l&&!a||k.current&&!k.current.contains(A.target)||(Ke.current=((I=k.current)==null?void 0:I.getBoundingClientRect().height)||0,rt.current=((j=k.current)==null?void 0:j.getBoundingClientRect().width)||0,ce(!0),Ve.current=new Date,yr()&&window.addEventListener("touchend",()=>ve.current=!1,{once:!0}),A.target.setPointerCapture(A.pointerId),fe.current=q(v)?A.pageY:A.pageX)}function Ge(A,I){var j;let L=A;const B=(j=window.getSelection())==null?void 0:j.toString(),z=k.current?ht(k.current,v):null,K=new Date;if(L.tagName==="SELECT"||L.hasAttribute("data-vaul-no-drag")||L.closest("[data-vaul-no-drag]"))return!1;if(v==="right"||v==="left")return!0;if(xe.current&&K.getTime()-xe.current.getTime()<500)return!1;if(z!==null&&(v==="bottom"?z>0:z<0))return!0;if(B&&B.length>0)return!1;if(de.current&&K.getTime()-de.current.getTime()<f&&z===0||I)return de.current=K,!1;for(;L;){if(L.scrollHeight>L.clientHeight){if(L.scrollTop!==0)return de.current=new Date,!1;if(L.getAttribute("role")==="dialog")return!0}L=L.parentNode}return!0}function Dt(A){if(k.current&&re){const I=v==="bottom"||v==="right"?1:-1,j=(fe.current-(q(v)?A.pageY:A.pageX))*I,L=j>0,B=a&&!l&&!L;if(B&&se===0)return;const z=Math.abs(j),K=document.querySelector("[data-vaul-drawer-wrapper]"),Z=v==="bottom"||v==="top"?Ke.current:rt.current;let J=z/Z;const pe=G(z,L);if(pe!==null&&(J=pe),B&&J>=1||!ve.current&&!Ge(A.target,L))return;if(k.current.classList.add(Yt),ve.current=!0,Y(k.current,{transition:"none"}),Y(ue.current,{transition:"none"}),a&&Te({draggedDistance:j}),L&&!a){const te=Si(j),Oe=Math.min(te*-1,0)*I;Y(k.current,{transform:q(v)?`translate3d(0, ${Oe}px, 0)`:`translate3d(${Oe}px, 0, 0)`});return}const ee=1-J;if((_e||h&&se===h-1)&&(r?.(A,J),Y(ue.current,{opacity:`${ee}`,transition:"none"},!0)),K&&ue.current&&i){const te=Math.min(we()+J*(1-we()),1),Oe=8-J*8,Ne=Math.max(0,14-J*14);Y(K,{borderRadius:`${Oe}px`,transform:q(v)?`scale(${te}) translate3d(0, ${Ne}px, 0)`:`scale(${te}) translate3d(${Ne}px, 0, 0)`,transition:"none"},!0)}if(!a){const te=z*I;Y(k.current,{transform:q(v)?`translate3d(0, ${te}px, 0)`:`translate3d(${te}px, 0, 0)`})}}}C.useEffect(()=>{window.requestAnimationFrame(()=>{ze.current=!0})},[]),C.useEffect(()=>{var A;function I(){if(!k.current||!N)return;const j=document.activeElement;if(Jt(j)||me.current){var L;const B=((L=window.visualViewport)==null?void 0:L.height)||0,z=window.innerHeight;let K=z-B;const Z=k.current.getBoundingClientRect().height||0,J=Z>z*.8;Le.current||(Le.current=Z);const pe=k.current.getBoundingClientRect().top;if(Math.abs(qe.current-K)>60&&(me.current=!me.current),a&&a.length>0&&ge&&se){const ee=ge[se]||0;K+=ee}if(qe.current=K,Z>B||me.current){const ee=k.current.getBoundingClientRect().height;let te=ee;ee>B&&(te=B-(J?pe:en)),d?k.current.style.height=`${ee-Math.max(K,0)}px`:k.current.style.height=`${Math.max(te,B-pe)}px`}else ui()||(k.current.style.height=`${Le.current}px`);a&&a.length>0&&!me.current?k.current.style.bottom="0px":k.current.style.bottom=`${Math.max(K,0)}px`}}return(A=window.visualViewport)==null||A.addEventListener("resize",I),()=>{var j;return(j=window.visualViewport)==null?void 0:j.removeEventListener("resize",I)}},[se,a,ge]);function Ae(A){At(),b?.(),A||X(!1),setTimeout(()=>{a&&ot(a[0])},H.DURATION*1e3)}function le(){if(!k.current)return;const A=document.querySelector("[data-vaul-drawer-wrapper]"),I=ht(k.current,v);Y(k.current,{transform:"translate3d(0, 0, 0)",transition:`transform ${H.DURATION}s cubic-bezier(${H.EASE.join(",")})`}),Y(ue.current,{transition:`opacity ${H.DURATION}s cubic-bezier(${H.EASE.join(",")})`,opacity:"1"}),i&&I&&I>0&&U&&Y(A,{borderRadius:`${Cr}px`,overflow:"hidden",...q(v)?{transform:`scale(${we()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`,transformOrigin:"top"}:{transform:`scale(${we()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`,transformOrigin:"left"},transitionProperty:"transform, border-radius",transitionDuration:`${H.DURATION}s`,transitionTimingFunction:`cubic-bezier(${H.EASE.join(",")})`},!0)}function At(){!re||!k.current||(k.current.classList.remove(Yt),ve.current=!1,ce(!1),Ce.current=new Date)}function Ot(A){if(!re||!k.current)return;k.current.classList.remove(Yt),ve.current=!1,ce(!1),Ce.current=new Date;const I=ht(k.current,v);if(!A||!Ge(A.target,!1)||!I||Number.isNaN(I)||Ve.current===null)return;const j=Ce.current.getTime()-Ve.current.getTime(),L=fe.current-(q(v)?A.pageY:A.pageX),B=Math.abs(L)/j;if(B>.05&&(Ue(!0),setTimeout(()=>{Ue(!1)},200)),a){Tt({draggedDistance:L*(v==="bottom"||v==="right"?1:-1),closeDrawer:Ae,velocity:B,dismissible:l}),o?.(A,!0);return}if(v==="bottom"||v==="right"?L>0:L<0){le(),o?.(A,!0);return}if(B>xr){Ae(),o?.(A,!1);return}var z;const K=Math.min((z=k.current.getBoundingClientRect().height)!=null?z:0,window.innerHeight);var Z;const J=Math.min((Z=k.current.getBoundingClientRect().width)!=null?Z:0,window.innerWidth),pe=v==="left"||v==="right";if(Math.abs(I)>=(pe?J:K)*p){Ae(),o?.(A,!1);return}o?.(A,!0),le()}C.useEffect(()=>(U&&(Y(document.documentElement,{scrollBehavior:"auto"}),xe.current=new Date),()=>{Ei(document.documentElement,"scrollBehavior")}),[U]);function Nt(A){const I=A?(window.innerWidth-ke)/window.innerWidth:1,j=A?-ke:0;Ie.current&&window.clearTimeout(Ie.current),Y(k.current,{transition:`transform ${H.DURATION}s cubic-bezier(${H.EASE.join(",")})`,transform:q(v)?`scale(${I}) translate3d(0, ${j}px, 0)`:`scale(${I}) translate3d(${j}px, 0, 0)`}),!A&&k.current&&(Ie.current=setTimeout(()=>{const L=ht(k.current,v);Y(k.current,{transition:"none",transform:q(v)?`translate3d(0, ${L}px, 0)`:`translate3d(${L}px, 0, 0)`})},500))}function Me(A,I){if(I<0)return;const j=(window.innerWidth-ke)/window.innerWidth,L=j+I*(1-j),B=-ke+I*ke;Y(k.current,{transform:q(v)?`scale(${L}) translate3d(0, ${B}px, 0)`:`scale(${L}) translate3d(${B}px, 0, 0)`,transition:"none"})}function st(A,I){const j=q(v)?window.innerHeight:window.innerWidth,L=I?(j-ke)/j:1,B=I?-ke:0;I&&Y(k.current,{transition:`transform ${H.DURATION}s cubic-bezier(${H.EASE.join(",")})`,transform:q(v)?`scale(${L}) translate3d(0, ${B}px, 0)`:`scale(${L}) translate3d(${B}px, 0, 0)`})}return C.useEffect(()=>{E||window.requestAnimationFrame(()=>{document.body.style.pointerEvents="auto"})},[E]),C.createElement(ir,{defaultOpen:D,onOpenChange:A=>{!l&&!A||(A?ne(!0):Ae(!0),X(A))},open:U},C.createElement(wr.Provider,{value:{activeSnapPoint:Ye,snapPoints:a,setActiveSnapPoint:ot,drawerRef:k,overlayRef:ue,onOpenChange:t,onPress:De,onRelease:Ot,onDrag:Dt,dismissible:l,shouldAnimate:ze,handleOnly:u,isOpen:U,isDragging:re,shouldFade:_e,closeDrawer:Ae,onNestedDrag:Me,onNestedOpenChange:Nt,onNestedRelease:st,keyboardIsOpen:me,modal:E,snapPointsOffset:ge,activeSnapPointIndex:se,direction:v,shouldScaleBackground:i,setBackgroundColorOnScale:c,noBodyStyles:g,container:y,autoFocus:M}},n))}const Dr=C.forwardRef(function({...e},t){const{overlayRef:n,snapPoints:r,onRelease:o,shouldFade:a,isOpen:i,modal:c,shouldAnimate:p}=tt(),f=Er(t,n),l=r&&r.length>0;if(!c)return null;const u=C.useCallback(h=>o(h),[o]);return C.createElement(dr,{onMouseUp:u,ref:f,"data-vaul-overlay":"","data-vaul-snap-points":i&&l?"true":"false","data-vaul-snap-points-overlay":i&&a?"true":"false","data-vaul-animate":p?.current?"true":"false",...e})});Dr.displayName="Drawer.Overlay";const Ar=C.forwardRef(function({onPointerDownOutside:e,style:t,onOpenAutoFocus:n,...r},o){const{drawerRef:a,onPress:i,onRelease:c,onDrag:p,keyboardIsOpen:f,snapPointsOffset:l,activeSnapPointIndex:u,modal:h,isOpen:w,direction:x,snapPoints:d,container:E,handleOnly:b,shouldAnimate:T,autoFocus:g}=tt(),[v,D]=C.useState(!1),_=Er(o,a),S=C.useRef(null),O=C.useRef(null),N=C.useRef(!1),$=d&&d.length>0;Oi();const y=(R,W,U=0)=>{if(N.current)return!0;const X=Math.abs(R.y),V=Math.abs(R.x),ne=V>X,re=["bottom","right"].includes(W)?1:-1;if(W==="left"||W==="right"){if(!(R.x*re<0)&&V>=0&&V<=U)return ne}else if(!(R.y*re<0)&&X>=0&&X<=U)return!ne;return N.current=!0,!0};C.useEffect(()=>{$&&window.requestAnimationFrame(()=>{D(!0)})},[]);function M(R){S.current=null,N.current=!1,c(R)}return C.createElement(fr,{"data-vaul-drawer-direction":x,"data-vaul-drawer":"","data-vaul-delayed-snap-points":v?"true":"false","data-vaul-snap-points":w&&$?"true":"false","data-vaul-custom-container":E?"true":"false","data-vaul-animate":T?.current?"true":"false",...r,ref:_,style:l&&l.length>0?{"--snap-point-height":`${l[u??0]}px`,...t}:t,onPointerDown:R=>{b||(r.onPointerDown==null||r.onPointerDown.call(r,R),S.current={x:R.pageX,y:R.pageY},i(R))},onOpenAutoFocus:R=>{n?.(R),g||R.preventDefault()},onPointerDownOutside:R=>{if(e?.(R),!h||R.defaultPrevented){R.preventDefault();return}f.current&&(f.current=!1)},onFocusOutside:R=>{if(!h){R.preventDefault();return}},onPointerMove:R=>{if(O.current=R,b||(r.onPointerMove==null||r.onPointerMove.call(r,R),!S.current))return;const W=R.pageY-S.current.y,U=R.pageX-S.current.x,X=R.pointerType==="touch"?10:2;y({x:U,y:W},x,X)?p(R):(Math.abs(U)>X||Math.abs(W)>X)&&(S.current=null)},onPointerUp:R=>{r.onPointerUp==null||r.onPointerUp.call(r,R),S.current=null,N.current=!1,c(R)},onPointerOut:R=>{r.onPointerOut==null||r.onPointerOut.call(r,R),M(O.current)},onContextMenu:R=>{r.onContextMenu==null||r.onContextMenu.call(r,R),O.current&&M(O.current)}})});Ar.displayName="Drawer.Content";const Pi=250,Ii=120,Or=C.forwardRef(function({preventCycle:e=!1,children:t,...n},r){const{closeDrawer:o,isDragging:a,snapPoints:i,activeSnapPoint:c,setActiveSnapPoint:p,dismissible:f,handleOnly:l,isOpen:u,onPress:h,onDrag:w}=tt(),x=C.useRef(null),d=C.useRef(!1);function E(){if(d.current){g();return}window.setTimeout(()=>{b()},Ii)}function b(){if(a||e||d.current){g();return}if(g(),!i||i.length===0){f||o();return}if(c===i[i.length-1]&&f){o();return}const D=i.findIndex(S=>S===c);if(D===-1)return;const _=i[D+1];p(_)}function T(){x.current=window.setTimeout(()=>{d.current=!0},Pi)}function g(){x.current&&window.clearTimeout(x.current),d.current=!1}return C.createElement("div",{onClick:E,onPointerCancel:g,onPointerDown:v=>{l&&h(v),T()},onPointerMove:v=>{l&&w(v)},ref:r,"data-vaul-drawer-visible":u?"true":"false","data-vaul-handle":"","aria-hidden":"true",...n},C.createElement("span",{"data-vaul-handle-hitarea":"","aria-hidden":"true"},t))});Or.displayName="Drawer.Handle";function Li(e){const t=tt(),{container:n=t.container,...r}=e;return C.createElement(lr,{container:n,...r})}const Yi={Root:ki,Content:Ar,Overlay:Dr,Portal:Li,Handle:Or,Title:hr};export{Ki as C,Yi as D,Vi as a,zi as c,Ui as s,qi as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as o}from"./index-DMZ8-zZM.js";import{M as r}from"./MailboxPane-dSxHZfJq.js";import"./useSearchTokenContext-DohJINg2.js";import"./kbd-BV5q0Za-.js";import"./useMessageBodyContent-DxQjkGza.js";import"./search-scope-B5-OK3Cq.js";import"./useRefreshControl-DKnu6drF.js";import"./circle-check-big-CvyTX3eu.js";import"./search-token-index-BQBAjCB1.js";import"./useLayoutTier-DKpSXts5.js";import"./useQueries-Baii11SK.js";import"./MailListHeader-Dhgkq9td.js";import"./attachment-file-QQZovKAl.js";import"./mail-Bff0HSL7.js";import"./avatar-klLMB_Me.js";import"./index-RbY7Dn0X.js";import"./useSignature-At1N2nkq.js";import"./account-form-helpers-DhckT_PN.js";import"./useDebouncedValue-BBOZojyy.js";import"./sections-DVKafU2-.js";import"./format-RgJz8yFq.js";import"./EmptyState-CegqC3j2.js";import"./ErrorState-BGolGYcc.js";import"./download-DdbznPAS.js";import"./shield-check-BM5CxZVS.js";import"./useFilters-D8luT8sB.js";import"./minus-DTWvP8bv.js";import"./confirm-dialog-PyqpaetG.js";import"./clock-CV2mIEQ0.js";import"./menu-DqCvhoo6.js";import"./MailViewChrome-J4bT_B41.js";import"./NavMenuButton-CqSZuMpN.js";import"./useLabels-DbWrQIbS.js";import"./useSemanticSearch-DfxdKsNk.js";import"./search-query-Cr_ZXBCp.js";import"./bottom-sheet-CRsV78aJ.js";import"./circle-help-rRKfilDF.js";import"./circle-check-D_bOnWVf.js";function K(){return o.jsx(r.Reading,{})}export{K as component};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{j as n,t as s}from"./index-
|
|
1
|
+
import{j as n,t as s}from"./index-DMZ8-zZM.js";function x({className:e,...t}){return n.jsx("kbd",{className:s("inline-flex h-4 min-w-4 items-center justify-center rounded-xs border border-line bg-surface-sunken px-1 font-sans text-2xs text-fg-muted",e),...t})}export{x as K};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as f,j as e,ay as h,be as y,ax as b,bB as g,f as v,a2 as N,u as C,c as L,d as I,aK as D,aM as S,B as w}from"./index-
|
|
1
|
+
import{r as f,j as e,ay as h,be as y,ax as b,bB as g,f as v,a2 as N,u as C,c as L,d as I,aK as D,aM as S,B as w}from"./index-DMZ8-zZM.js";import{C as E}from"./confirm-dialog-PyqpaetG.js";import{S as $}from"./settings-screen-BZEszQ1s.js";import{E as j}from"./ErrorState-BGolGYcc.js";import{a as T,b as k,c as R,u as B}from"./useLabels-DbWrQIbS.js";import"./avatar-klLMB_Me.js";import"./chevron-left-CK510N2A.js";import"./menu-DqCvhoo6.js";import"./circle-help-rRKfilDF.js";function O({labels:l,onRename:i,onRecolor:n,onDelete:m,deletingLabelId:c}){const[u,r]=f.useState(),[o,d]=f.useState("");if(l.length===0)return e.jsx("p",{className:"py-6 text-sm text-fg-muted",children:"No labels yet. Create one below, then use it in a filter or apply it to mail directly."});const t=a=>{const s=o.trim();s!==""&&i(a,s),r(void 0)};return e.jsx("ul",{className:"divide-y divide-line rounded-md border border-line",children:l.map(a=>e.jsxs("li",{className:"flex items-center gap-3 px-3 py-2.5",children:[e.jsxs("div",{className:"min-w-0 flex-1",children:[u===a.labelId?e.jsx(h,{autoFocus:!0,value:o,onChange:s=>d(s.target.value),onBlur:()=>t(a.labelId),onKeyDown:s=>{s.key==="Enter"&&(s.preventDefault(),t(a.labelId)),s.key==="Escape"&&(s.preventDefault(),r(void 0))},"aria-label":`Rename label ${a.name}`}):e.jsx("button",{type:"button",onClick:()=>{r(a.labelId),d(a.name)},"aria-label":`Rename label ${a.name}`,className:"flex items-center gap-2 rounded-sm text-left hover:opacity-80",children:e.jsx(y,{label:a})}),e.jsx("p",{className:"mt-0.5 text-xs text-fg-subtle",children:a.filterCount===0?"Not used in any filter":`Used in ${a.filterCount} ${a.filterCount===1?"filter":"filters"}`})]}),e.jsx(b,{"aria-label":`Color for ${a.name}`,value:a.color,onChange:s=>n(a.labelId,s.target.value),className:"w-28 shrink-0",children:g.map(s=>e.jsx("option",{value:s,children:s},s))}),e.jsx(v,{variant:"ghost",size:"sm",icon:e.jsx(N,{className:"size-4 text-danger"}),onClick:()=>m(a),disabled:c===a.labelId,"aria-label":`Delete label ${a.name}`})]},a.labelId))})}const P=(l,i)=>{if(i===0)return{title:`Delete the "${l}" label?`};const n=i===1?"filter":"filters";return{title:`Delete the "${l}" label?`,description:`This also deletes ${i} ${n} that ${i===1?"applies":"apply"} it — they can't be recovered.`}},_=e.jsxs("div",{className:"space-y-3",children:[e.jsx("p",{children:"Labels mark mail without moving it — a message can carry any number of them alongside whichever folder it lives in."}),e.jsx("p",{children:"Use a label in a filter's action to have new (and existing) mail label itself automatically, or apply one to a selection directly from the mailbox."}),e.jsx("p",{children:"Deleting a label removes it from every message, and deletes every filter that applies it — the confirmation names how many."})]});function H({accountId:l}){const{createLabel:i,isPending:n,isError:m}=B(l),[c,u]=f.useState(""),[r,o]=f.useState("Default"),d=()=>{const t=c.trim();t!==""&&i(t,r).then(()=>{u(""),o("Default")})};return e.jsxs("div",{className:"space-y-2 rounded-sm border border-line bg-surface p-3",children:[e.jsx("p",{className:"text-sm font-medium text-fg",children:"New label"}),e.jsxs("div",{className:"flex flex-col gap-2 sm:flex-row sm:items-end",children:[e.jsxs("div",{className:"flex-1 space-y-1",children:[e.jsx("span",{className:"text-xs text-fg-muted",children:"Name"}),e.jsx(h,{value:c,onChange:t=>u(t.target.value),placeholder:"e.g. Receipts","aria-label":"Label name",onKeyDown:t=>{t.key==="Enter"&&(t.preventDefault(),d())}})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("span",{className:"text-xs text-fg-muted",children:"Color"}),e.jsx(b,{value:r,onChange:t=>o(t.target.value),"aria-label":"Label color",className:"w-28",children:g.map(t=>e.jsx("option",{value:t,children:t},t))})]}),e.jsx(v,{variant:"primary",onClick:d,disabled:n||c.trim()==="",children:n?"Creating…":"Create label"})]}),m&&e.jsx(w,{tone:"danger",variant:"soft",children:"Couldn't create that label. Please try again."})]})}function M({account:l}){const i=l.accountId,{labels:n,isPending:m,isError:c,error:u,refetch:r}=T(i),{updateLabel:o}=k(i),{deleteLabel:d,deletingLabelId:t}=R(i),[a,s]=f.useState();return e.jsxs("section",{className:"space-y-2",children:[e.jsx("h2",{className:"text-sm font-semibold text-fg",children:l.email}),m?e.jsx("div",{className:"h-16 animate-pulse rounded-md border border-line bg-surface","aria-busy":"true","aria-label":`Loading labels for ${l.email}`}):c?e.jsx(j,{variant:"inline",title:`Couldn't load labels for ${l.email}`,error:u,onRetry:()=>{r()}}):e.jsx(O,{labels:n,onRename:(p,x)=>o(p,{name:x}),onRecolor:(p,x)=>o(p,{color:x}),onDelete:s,deletingLabelId:t}),e.jsx(H,{accountId:i}),a&&(()=>{const p=P(a.name,a.filterCount);return e.jsx(E,{isOpen:!0,title:p.title,description:p.description,confirmLabel:"Delete label",destructive:!0,isBusy:t===a.labelId,onConfirm:()=>{d(a.labelId),s(void 0)},onCancel:()=>s(void 0)})})()]})}function J(){const l=C(),[i,n]=f.useState(!0),{data:m,isPending:c,isError:u,error:r,refetch:o}=L(I()),d=t=>{const a=S[t];a&&l({to:a})};return e.jsx($,{items:D,activeId:"labels",title:"Labels",description:"Mark mail without moving it, per account.",help:_,helpOpen:i,onToggleHelp:()=>n(t=>!t),onSelect:d,onBackToMail:()=>{l({to:"/mail"})},children:c?e.jsx("div",{className:"h-24 animate-pulse rounded-sm border border-line bg-surface","aria-busy":"true","aria-label":"Loading accounts"}):u?e.jsx(j,{title:"Couldn't load accounts",error:r,onRetry:()=>{o()}}):m.accounts.length===0?e.jsx("p",{className:"py-12 text-sm text-fg-muted",children:"No accounts configured."}):e.jsx("div",{className:"space-y-8",children:m.accounts.map(t=>e.jsx(M,{account:t},t.accountId))})})}export{J as component};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e}from"./index-
|
|
1
|
+
import{e}from"./index-DMZ8-zZM.js";const a=e("Mail",[["rect",{width:"20",height:"16",x:"2",y:"4",rx:"2",key:"18n3k1"}],["path",{d:"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7",key:"1ocrg3"}]]);export{a as M};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e as te,j as t,t as F,v as ne,f as I,w as oe,x as M,r as u,y as R,z as ae,A as re,C as ie,h as Q,D as ce,E as le,F as ue,X as de,G as K,a as me,b as pe,H as he,J as fe,K as xe,M as ge,N as be,P as ve,Q as ye,R as Se,u as je,c as Ce,d as Ie,S as Ne,O as we,T as Me}from"./index-BoxiBjE8.js";import{S as Ee,D as Oe,a as Pe,b as Re,u as Te,s as ke,i as Le,t as Ae,K as De,c as Fe,d as Qe,e as Ke,f as _e}from"./search-token-index-D-gWPAEk.js";import{u as O,a as ze}from"./useMessageBodyContent-Dgv5wWIW.js";import{P as Be}from"./pencil-BxMsOZ8c.js";import{c as He,s as Ve,M as qe}from"./MailShell-DoajaymZ.js";import{u as $e,a as Ge,R as Ue,s as We,i as Ye,H as Je,M as Xe}from"./useRefreshControl-Ek98Uvm0.js";import{M as Ze}from"./menu-DN5zpA0a.js";import{B as es}from"./bug-pEghc6tg.js";import{S as ss,A as ts,L as ns,M as os}from"./MailNav-B_HG7DOH.js";import{A as as}from"./avatar-CRolAGMx.js";import{u as rs}from"./sections-COsJpcXX.js";import{E as is}from"./ErrorState-BdpB-2BQ.js";import{K as T}from"./kbd-CQfGa1PF.js";import{u as cs}from"./index-tORYm1g3.js";import{u as _,i as ls}from"./useLayoutTier-B31omesr.js";import{u as z}from"./useQueries-CYk5lp9G.js";import{u as us}from"./useDebouncedValue-ATwGPcJy.js";import"./search-scope-B5-OK3Cq.js";import"./FullCompose-w8QBwa1F.js";import"./confirm-dialog-BHPwL2Mu.js";import"./circle-check-big-C-VUNWnE.js";import"./calendar-days-BJ_20Jyk.js";import"./outbox-status-BlKn6P0x.js";import"./useSignature-D5Vdi95d.js";import"./account-form-helpers-DhckT_PN.js";import"./format-B_FD2e8R.js";const ds=te("SquarePen",[["path",{d:"M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7",key:"1m0v6g"}],["path",{d:"M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z",key:"ohrbg2"}]]);function ms({leading:e,search:s,actions:n,className:o}){return t.jsxs("header",{className:F("flex min-h-pane-header w-full shrink-0 items-center gap-2 border-b border-line bg-canvas px-row-inset py-1",o),children:[e&&t.jsx("div",{className:"flex shrink-0 items-center gap-1",children:e}),t.jsx("div",{className:"flex min-w-0 flex-1 justify-start",children:t.jsx("div",{className:"w-full max-w-xs transition-[max-width] duration-150 ease-out focus-within:max-w-lg",children:s})}),n&&t.jsx("div",{className:"flex shrink-0 items-center gap-1",children:n})]})}function ps(){const e=ne();if(!e)return null;const s=e.showNavPane?!e.navCollapsed:!1;return t.jsx(I,{variant:"ghost",size:"sm",icon:t.jsx(Ze,{className:"size-4"}),onClick:e.toggleNav,"aria-label":s?"Hide folders":"Show folders","aria-expanded":s,title:"Folders",className:"shrink-0"})}const hs={global:"Search all mail",pending:"Search mail",scoped:"Search this folder"};function fs({search:e,onCompose:s,onReportBug:n,onOpenSettings:o,composeShortcut:a,refreshControl:r,account:c}){return t.jsx(ms,{leading:t.jsx(ps,{}),search:t.jsx(Ee,{value:e.value,onChange:e.onChange,onClear:e.onClear,onClearQuery:e.onClearQuery,chips:e.chips,onRemoveChip:e.onRemoveChip,placeholder:hs[e.scope]}),actions:t.jsxs(t.Fragment,{children:[t.jsx(I,{variant:"ghost",size:"sm",icon:t.jsx(ds,{className:"size-4"}),title:a?`Compose (${a})`:"Compose","aria-label":"Compose",onClick:s}),t.jsx(I,{variant:"ghost",size:"sm",icon:t.jsx(es,{className:"size-4"}),title:"Report a bug","aria-label":"Report a bug",onClick:n}),t.jsx(I,{variant:"ghost",size:"sm",icon:t.jsx(ss,{className:"size-4"}),title:"Settings","aria-label":"Settings",onClick:o}),r,c]})})}function xs(){const e=oe(),s=M({select:i=>R(i.location.pathname)}),n=M({select:i=>ae(i.location.search)}),[o,a]=u.useState(n),r=us(o,200),[c,d]=u.useState(s);if(c!==s){const i=Ve(c,s,n);d(s),i!==void 0&&a(i)}const m=u.useCallback(i=>{d(R(e.state.location.pathname)),a(i)},[e]);return{searchInput:o,committedQuery:He(o,r),viewKey:s,setSearchInput:m}}const gs=()=>{const e=O();return re()?null:t.jsx("button",{type:"button",onClick:e,"aria-label":"Compose new message",className:"lg:hidden fixed right-4 z-30 h-14 w-14 rounded-full bg-accent text-accent-fg shadow-lg flex items-center justify-center hover:opacity-90 active:scale-95 transition-all",style:{bottom:"calc(env(safe-area-inset-bottom, 0) + 1rem)"},children:t.jsx(Be,{className:"size-6"})})},bs=({email:e,onSignOut:s})=>{const n=e??"Account";return t.jsxs(Oe,{trigger:t.jsx(as,{name:n,email:e??void 0,size:"sm"}),align:"right",children:[e&&t.jsxs(t.Fragment,{children:[t.jsx("div",{className:"px-3 py-2 text-xs text-fg-muted truncate",title:e,"data-testid":"account-menu-email",children:e}),t.jsx(Pe,{})]}),t.jsxs(Re,{onClick:s,children:[t.jsx(ns,{className:"size-4"}),"Sign out"]})]})},vs=()=>t.jsx(ts,{children:({email:e,signOut:s})=>t.jsx(bs,{email:e,onSignOut:s})});function ys({accounts:e}){const{searchInput:s,onSearchChange:n,onSearchClear:o,onSearchClearQuery:a,resultFolderIndex:r}=ie(),c=Q(),d=rs(),m=O(),{scope:i,clearScope:x}=Te(e),f=i.kind==="scoped"?[{id:i.chip.id,label:i.chip.label,tone:"scope"}]:void 0,p=u.useMemo(()=>e.map(b=>b.accountId),[e]),{hasNewMail:l}=$e(),{state:h,errorMessage:y,refresh:g}=Ge(p,{onSettled:()=>Le(c,Ae(r.keys()))});return t.jsx(fs,{search:{value:s,scope:i.kind,chips:f,onChange:n,onClear:o,onClearQuery:a,onRemoveChip:x},onCompose:m,onReportBug:ce,onOpenSettings:()=>d("accounts"),composeShortcut:ke("compose"),refreshControl:t.jsx(Ue,{state:h,onRefresh:g,label:"Refresh all accounts",errorMessage:y,hasUpdate:l(p)}),account:t.jsx(vs,{})})}const Ss=({isOpen:e,onClose:s})=>(le({id:"shortcuts",open:e,answers:{back:s}}),e?t.jsxs("div",{className:"fixed inset-0 z-50 flex items-center justify-center",children:[t.jsx(ue,{label:"Dismiss keyboard shortcuts",onDismiss:s,className:"backdrop-blur-sm"}),t.jsxs("div",{role:"dialog","aria-modal":"true","aria-label":"Keyboard shortcuts",className:F("relative z-10 max-h-[85vh] w-full max-w-2xl overflow-y-auto","rounded-lg border border-line bg-surface shadow-lg","p-6"),children:[t.jsxs("div",{className:"mb-6 flex items-center justify-between",children:[t.jsx("h2",{className:"text-lg font-semibold",children:"Keyboard shortcuts"}),t.jsx("button",{type:"button",onClick:s,className:"p-1 text-fg-muted transition-colors hover:text-fg","aria-label":"Close",children:t.jsx(de,{className:"size-5"})})]}),t.jsx("div",{className:"grid gap-x-8 gap-y-6 sm:grid-cols-2",children:De.map(n=>t.jsxs("div",{children:[t.jsx("h3",{className:"mb-3 text-sm font-medium text-fg-muted",children:n.title}),t.jsx("div",{className:"space-y-2",children:n.hints.map(o=>t.jsxs("div",{className:"flex items-center justify-between gap-4",children:[t.jsx("span",{className:"text-sm",children:o.description}),t.jsx("span",{className:"flex shrink-0 items-center gap-1",children:o.keys.map((a,r)=>t.jsxs(u.Fragment,{children:[r>0&&o.keys[0]==="g"&&t.jsx("span",{className:"text-2xs text-fg-subtle",children:"then"}),t.jsx(T,{children:a})]},a))})]},`${o.action}-${o.keys.join("+")}`))})]},n.title))}),t.jsx("div",{className:"mt-6 border-t border-line pt-4",children:t.jsxs("p",{className:"text-center text-xs text-fg-muted",children:["Press ",t.jsx(T,{children:"Esc"})," to close"]})})]})]}):null);function js(e){const s=z({queries:e.map(n=>({...K({path:{accountId:n.accountId}}),staleTime:1/0}))});return u.useMemo(()=>Fe(s.map(n=>n.data?.items??[])),[s])}const B="remit:intelligence-open";function Cs(){try{return localStorage.getItem(B)!=="closed"}catch{return!0}}function Is(e){try{localStorage.setItem(B,e?"open":"closed")}catch{}}function k({panels:e,prefersOpen:s,isDesktop:n,hasThread:o,raisedFor:a,openMessage:r}){return a!==null&&a===r?!0:e.length>0?e.includes("intelligence"):n&&o&&s}const Ns=()=>{const e=_(),s=me(),n=pe(),o=s.find(he),a=Qe(),[r,c]=u.useState(Cs),d=a?`${a.threadId}/${a.messageId??""}`:null,[m,i]=u.useState(null),x={panels:s,prefersOpen:r,isDesktop:e==="desktop",hasThread:a!==void 0,openMessage:d},f=k({...x,raisedFor:m}),p=k({...x,raisedFor:null}),l=u.useCallback((b,j)=>{n([...b?["intelligence"]:[],...j?[j]:[]])},[n]),h=u.useCallback(b=>{l(p,b)},[p,l]),y=u.useCallback(()=>{if(f&&!p){i(null);return}const b=!f;Is(b),c(b),i(null),l(b,o)},[p,f,o,l]),g=u.useCallback(()=>{i(d)},[d]);return{openOverlay:o,intelligenceOpen:f,showOverlay:h,toggleIntelligence:y,raiseIntelligence:g}},ws=e=>e.map(s=>s.data?.items??[]);function Ms(e){const s=z({queries:e.map(n=>({...K({path:{accountId:n.accountId}}),staleTime:1/0})),combine:ws});return u.useMemo(()=>fe(e.map((n,o)=>({folderAppointments:n.folderAppointments,mailboxes:s[o]??[]}))),[e,s])}var C={exports:{}},L;function Es(){if(L)return C.exports;L=1;const e=(s,n,o)=>new Promise((a,r)=>{if(o=Object.assign({concurrency:1/0},o),typeof n!="function")throw new TypeError("Mapper function is required");const{concurrency:c}=o;if(!(typeof c=="number"&&c>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${c}\` (${typeof c})`);const d=[],m=s[Symbol.iterator]();let i=!1,x=!1,f=0,p=0;const l=()=>{if(i)return;const h=m.next(),y=p;if(p++,h.done){x=!0,f===0&&a(d);return}f++,Promise.resolve(h.value).then(g=>n(g,y)).then(g=>{d[y]=g,f--,l()},g=>{i=!0,r(g)})};for(let h=0;h<c&&(l(),!x);h++);});return C.exports=e,C.exports.default=e,C.exports}var Os=Es();const Ps=xe(Os),Rs=900*1e3,Ts=30,ks=(e,s)=>{if(!e)return s;const n=Number.parseInt(e,10);return Number.isFinite(n)&&n>0?n:s},Ls=30*1e3,As=e=>Math.max(ks(e,Ts)*1e3,Ls),H=As(Se().mailboxPollIntervalSeconds),S=(e=Date.now(),s=H)=>Ye(e)?Math.min(Je,s):s,Ds=5,E=new Set,Fs=(e,s,n=Rs)=>e.filter(o=>{const a=o.lastSyncAt;return a==null?!0:s-a>n}).map(o=>o.accountId),Qs=(e,s,n=H)=>e-s>=n,Ks=(e,s)=>e.filter(n=>!s.has(n)),A=(e,s)=>{if(E.delete(e),ve(s,{softError:!0},"nobody")){ye(s);return}console.warn("[remit] background mailbox sync failed",{accountId:e,error:s})},D=(e,s)=>ge({path:{accountId:e},throwOnError:!0}).then(()=>{s.invalidateQueries({queryKey:be({path:{accountId:e}})})}),_s=e=>{const s=Q(),n=u.useRef(e);n.current=e;const o=e.map(a=>a.accountId).join(",");u.useEffect(()=>{const a=Date.now(),c=Fs(n.current,a).filter(d=>!E.has(d));if(c.length!==0)for(const d of c)E.add(d),D(d,s).catch(m=>{A(d,m)})},[o,s]),u.useEffect(()=>{let a=Date.now(),r;const c=new Set,d=()=>{a=Date.now();const p=Ks(n.current.map(l=>l.accountId),c);for(const l of p)c.add(l);Ps(p,l=>D(l,s).catch(h=>{A(l,h)}).finally(()=>{c.delete(l)}),{concurrency:Ds})},m=()=>{if(document.visibilityState==="visible"){d(),r=setTimeout(m,S());return}},i=()=>{document.visibilityState==="visible"&&Qs(Date.now(),a,S())&&(r!==void 0&&clearTimeout(r),d(),r=setTimeout(m,S()))},x=()=>{document.visibilityState==="visible"&&(r!==void 0&&clearTimeout(r),a=Date.now(),r=setTimeout(m,S()))};r=setTimeout(m,S()),document.addEventListener("visibilitychange",i);const f=We(x);return()=>{r!==void 0&&clearTimeout(r),document.removeEventListener("visibilitychange",i),f()}},[o,s])};function pt(){const e=je(),s=_(),n=ls(s),{openOverlay:o,intelligenceOpen:a,showOverlay:r,toggleIntelligence:c,raiseIntelligence:d}=Ns(),m=o==="shortcuts",i=o==="nav",{searchInput:x,committedQuery:f,viewKey:p,setSearchInput:l}=xs(),{data:h,isLoading:y,isError:g,error:b,refetch:j}=Ce({...Ie(),staleTime:1/0}),N=!!(h&&(h.accounts?.length??0)===0);u.useEffect(()=>{N&&e({to:"/onboarding",replace:!0})},[N,e]),cs({enabled:!m,bindings:[{key:"?",action:"help",handler:()=>r("shortcuts"),noModifiers:!1,preventDefault:!0}]});const P=O(),V=ze(),q=M({select:w=>Me(w.matches)?.list==="mailbox"}),$=u.useMemo(()=>({compose:P}),[P]);Ke({enabled:!q&&!V,handlers:$});const G=u.useCallback(()=>{l("")},[l]),U=u.useCallback(()=>{l("")},[l]),v=h?.accounts??[],W=u.useMemo(()=>v.map(w=>w.accountId),[v]),Y=js(v),J=Ms(v),X=u.useMemo(()=>_e(v),[v]);_s(v);const Z=u.useCallback(()=>{o==="nav"&&r(void 0)},[o,r]),ee={accounts:v,mailboxNameIndex:Y,accountNameIndex:X,resultFolderIndex:J,searchQuery:f,searchInput:x,searchViewKey:p,onSearchChange:l,onSearchClear:G,onSearchClearQuery:U,intelligenceOpen:a,onToggleIntelligence:c,onRaiseIntelligence:d},se={isSinglePane:n,isLoading:y||N,intelligenceOpen:a,nav:t.jsx(os,{accounts:v,onMailboxSelect:Z}),topBar:n?void 0:t.jsx(ys,{accounts:v}),overlay:n?t.jsx(gs,{}):void 0,navOpen:i,onOpenNav:()=>r("nav"),onCloseNav:()=>r(void 0)};return t.jsx(Ne.Provider,{value:ee,children:t.jsxs(Xe,{accountIds:W,children:[g?t.jsx("div",{className:"flex h-full items-center justify-center bg-canvas p-4",children:t.jsx(is,{title:"Couldn't load your account",error:b,onRetry:()=>{j()}})}):t.jsx(qe,{chrome:se,children:t.jsx(we,{})}),t.jsx(Ss,{isOpen:m,onClose:()=>r(void 0)})]})})}export{pt as component,ie as useMailContext};
|
|
1
|
+
import{e as te,j as t,t as F,v as ne,f as I,w as oe,x as M,r as u,y as R,z as ae,A as re,C as ie,h as Q,D as ce,E as le,F as ue,X as de,G as K,a as me,b as pe,H as he,J as fe,K as xe,M as ge,N as be,P as ve,Q as ye,R as Se,u as je,c as Ce,d as Ie,S as Ne,O as we,T as Me}from"./index-DMZ8-zZM.js";import{S as Ee,D as Oe,a as Pe,b as Re,u as Te,s as ke,i as Le,t as Ae,K as De,c as Fe,d as Qe,e as Ke,f as _e}from"./search-token-index-BQBAjCB1.js";import{u as O,a as ze}from"./useMessageBodyContent-DxQjkGza.js";import{P as Be}from"./pencil-D2wigVut.js";import{c as He,s as Ve,M as qe}from"./MailShell-Cd-aCKBf.js";import{u as $e,a as Ge,R as Ue,s as We,i as Ye,H as Je,M as Xe}from"./useRefreshControl-DKnu6drF.js";import{M as Ze}from"./menu-DqCvhoo6.js";import{B as es}from"./bug-ECDjr3jW.js";import{S as ss,A as ts,L as ns,M as os}from"./MailNav-BPZ--2Zq.js";import{A as as}from"./avatar-klLMB_Me.js";import{u as rs}from"./sections-DVKafU2-.js";import{E as is}from"./ErrorState-BGolGYcc.js";import{K as T}from"./kbd-BV5q0Za-.js";import{u as cs}from"./index-RbY7Dn0X.js";import{u as _,i as ls}from"./useLayoutTier-DKpSXts5.js";import{u as z}from"./useQueries-Baii11SK.js";import{u as us}from"./useDebouncedValue-BBOZojyy.js";import"./search-scope-B5-OK3Cq.js";import"./FullCompose-DqLTXvyP.js";import"./confirm-dialog-PyqpaetG.js";import"./circle-check-big-CvyTX3eu.js";import"./calendar-days-oK-1rKbM.js";import"./outbox-status-BlKn6P0x.js";import"./useSignature-At1N2nkq.js";import"./account-form-helpers-DhckT_PN.js";import"./format-RgJz8yFq.js";const ds=te("SquarePen",[["path",{d:"M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7",key:"1m0v6g"}],["path",{d:"M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z",key:"ohrbg2"}]]);function ms({leading:e,search:s,actions:n,className:o}){return t.jsxs("header",{className:F("flex min-h-pane-header w-full shrink-0 items-center gap-2 border-b border-line bg-canvas px-row-inset py-1",o),children:[e&&t.jsx("div",{className:"flex shrink-0 items-center gap-1",children:e}),t.jsx("div",{className:"flex min-w-0 flex-1 justify-start",children:t.jsx("div",{className:"w-full max-w-xs transition-[max-width] duration-150 ease-out focus-within:max-w-lg",children:s})}),n&&t.jsx("div",{className:"flex shrink-0 items-center gap-1",children:n})]})}function ps(){const e=ne();if(!e)return null;const s=e.showNavPane?!e.navCollapsed:!1;return t.jsx(I,{variant:"ghost",size:"sm",icon:t.jsx(Ze,{className:"size-4"}),onClick:e.toggleNav,"aria-label":s?"Hide folders":"Show folders","aria-expanded":s,title:"Folders",className:"shrink-0"})}const hs={global:"Search all mail",pending:"Search mail",scoped:"Search this folder"};function fs({search:e,onCompose:s,onReportBug:n,onOpenSettings:o,composeShortcut:a,refreshControl:r,account:c}){return t.jsx(ms,{leading:t.jsx(ps,{}),search:t.jsx(Ee,{value:e.value,onChange:e.onChange,onClear:e.onClear,onClearQuery:e.onClearQuery,chips:e.chips,onRemoveChip:e.onRemoveChip,placeholder:hs[e.scope]}),actions:t.jsxs(t.Fragment,{children:[t.jsx(I,{variant:"ghost",size:"sm",icon:t.jsx(ds,{className:"size-4"}),title:a?`Compose (${a})`:"Compose","aria-label":"Compose",onClick:s}),t.jsx(I,{variant:"ghost",size:"sm",icon:t.jsx(es,{className:"size-4"}),title:"Report a bug","aria-label":"Report a bug",onClick:n}),t.jsx(I,{variant:"ghost",size:"sm",icon:t.jsx(ss,{className:"size-4"}),title:"Settings","aria-label":"Settings",onClick:o}),r,c]})})}function xs(){const e=oe(),s=M({select:i=>R(i.location.pathname)}),n=M({select:i=>ae(i.location.search)}),[o,a]=u.useState(n),r=us(o,200),[c,d]=u.useState(s);if(c!==s){const i=Ve(c,s,n);d(s),i!==void 0&&a(i)}const m=u.useCallback(i=>{d(R(e.state.location.pathname)),a(i)},[e]);return{searchInput:o,committedQuery:He(o,r),viewKey:s,setSearchInput:m}}const gs=()=>{const e=O();return re()?null:t.jsx("button",{type:"button",onClick:e,"aria-label":"Compose new message",className:"lg:hidden fixed right-4 z-30 h-14 w-14 rounded-full bg-accent text-accent-fg shadow-lg flex items-center justify-center hover:opacity-90 active:scale-95 transition-all",style:{bottom:"calc(env(safe-area-inset-bottom, 0) + 1rem)"},children:t.jsx(Be,{className:"size-6"})})},bs=({email:e,onSignOut:s})=>{const n=e??"Account";return t.jsxs(Oe,{trigger:t.jsx(as,{name:n,email:e??void 0,size:"sm"}),align:"right",children:[e&&t.jsxs(t.Fragment,{children:[t.jsx("div",{className:"px-3 py-2 text-xs text-fg-muted truncate",title:e,"data-testid":"account-menu-email",children:e}),t.jsx(Pe,{})]}),t.jsxs(Re,{onClick:s,children:[t.jsx(ns,{className:"size-4"}),"Sign out"]})]})},vs=()=>t.jsx(ts,{children:({email:e,signOut:s})=>t.jsx(bs,{email:e,onSignOut:s})});function ys({accounts:e}){const{searchInput:s,onSearchChange:n,onSearchClear:o,onSearchClearQuery:a,resultFolderIndex:r}=ie(),c=Q(),d=rs(),m=O(),{scope:i,clearScope:x}=Te(e),f=i.kind==="scoped"?[{id:i.chip.id,label:i.chip.label,tone:"scope"}]:void 0,p=u.useMemo(()=>e.map(b=>b.accountId),[e]),{hasNewMail:l}=$e(),{state:h,errorMessage:y,refresh:g}=Ge(p,{onSettled:()=>Le(c,Ae(r.keys()))});return t.jsx(fs,{search:{value:s,scope:i.kind,chips:f,onChange:n,onClear:o,onClearQuery:a,onRemoveChip:x},onCompose:m,onReportBug:ce,onOpenSettings:()=>d("accounts"),composeShortcut:ke("compose"),refreshControl:t.jsx(Ue,{state:h,onRefresh:g,label:"Refresh all accounts",errorMessage:y,hasUpdate:l(p)}),account:t.jsx(vs,{})})}const Ss=({isOpen:e,onClose:s})=>(le({id:"shortcuts",open:e,answers:{back:s}}),e?t.jsxs("div",{className:"fixed inset-0 z-50 flex items-center justify-center",children:[t.jsx(ue,{label:"Dismiss keyboard shortcuts",onDismiss:s,className:"backdrop-blur-sm"}),t.jsxs("div",{role:"dialog","aria-modal":"true","aria-label":"Keyboard shortcuts",className:F("relative z-10 max-h-[85vh] w-full max-w-2xl overflow-y-auto","rounded-lg border border-line bg-surface shadow-lg","p-6"),children:[t.jsxs("div",{className:"mb-6 flex items-center justify-between",children:[t.jsx("h2",{className:"text-lg font-semibold",children:"Keyboard shortcuts"}),t.jsx("button",{type:"button",onClick:s,className:"p-1 text-fg-muted transition-colors hover:text-fg","aria-label":"Close",children:t.jsx(de,{className:"size-5"})})]}),t.jsx("div",{className:"grid gap-x-8 gap-y-6 sm:grid-cols-2",children:De.map(n=>t.jsxs("div",{children:[t.jsx("h3",{className:"mb-3 text-sm font-medium text-fg-muted",children:n.title}),t.jsx("div",{className:"space-y-2",children:n.hints.map(o=>t.jsxs("div",{className:"flex items-center justify-between gap-4",children:[t.jsx("span",{className:"text-sm",children:o.description}),t.jsx("span",{className:"flex shrink-0 items-center gap-1",children:o.keys.map((a,r)=>t.jsxs(u.Fragment,{children:[r>0&&o.keys[0]==="g"&&t.jsx("span",{className:"text-2xs text-fg-subtle",children:"then"}),t.jsx(T,{children:a})]},a))})]},`${o.action}-${o.keys.join("+")}`))})]},n.title))}),t.jsx("div",{className:"mt-6 border-t border-line pt-4",children:t.jsxs("p",{className:"text-center text-xs text-fg-muted",children:["Press ",t.jsx(T,{children:"Esc"})," to close"]})})]})]}):null);function js(e){const s=z({queries:e.map(n=>({...K({path:{accountId:n.accountId}}),staleTime:1/0}))});return u.useMemo(()=>Fe(s.map(n=>n.data?.items??[])),[s])}const B="remit:intelligence-open";function Cs(){try{return localStorage.getItem(B)!=="closed"}catch{return!0}}function Is(e){try{localStorage.setItem(B,e?"open":"closed")}catch{}}function k({panels:e,prefersOpen:s,isDesktop:n,hasThread:o,raisedFor:a,openMessage:r}){return a!==null&&a===r?!0:e.length>0?e.includes("intelligence"):n&&o&&s}const Ns=()=>{const e=_(),s=me(),n=pe(),o=s.find(he),a=Qe(),[r,c]=u.useState(Cs),d=a?`${a.threadId}/${a.messageId??""}`:null,[m,i]=u.useState(null),x={panels:s,prefersOpen:r,isDesktop:e==="desktop",hasThread:a!==void 0,openMessage:d},f=k({...x,raisedFor:m}),p=k({...x,raisedFor:null}),l=u.useCallback((b,j)=>{n([...b?["intelligence"]:[],...j?[j]:[]])},[n]),h=u.useCallback(b=>{l(p,b)},[p,l]),y=u.useCallback(()=>{if(f&&!p){i(null);return}const b=!f;Is(b),c(b),i(null),l(b,o)},[p,f,o,l]),g=u.useCallback(()=>{i(d)},[d]);return{openOverlay:o,intelligenceOpen:f,showOverlay:h,toggleIntelligence:y,raiseIntelligence:g}},ws=e=>e.map(s=>s.data?.items??[]);function Ms(e){const s=z({queries:e.map(n=>({...K({path:{accountId:n.accountId}}),staleTime:1/0})),combine:ws});return u.useMemo(()=>fe(e.map((n,o)=>({folderAppointments:n.folderAppointments,mailboxes:s[o]??[]}))),[e,s])}var C={exports:{}},L;function Es(){if(L)return C.exports;L=1;const e=(s,n,o)=>new Promise((a,r)=>{if(o=Object.assign({concurrency:1/0},o),typeof n!="function")throw new TypeError("Mapper function is required");const{concurrency:c}=o;if(!(typeof c=="number"&&c>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${c}\` (${typeof c})`);const d=[],m=s[Symbol.iterator]();let i=!1,x=!1,f=0,p=0;const l=()=>{if(i)return;const h=m.next(),y=p;if(p++,h.done){x=!0,f===0&&a(d);return}f++,Promise.resolve(h.value).then(g=>n(g,y)).then(g=>{d[y]=g,f--,l()},g=>{i=!0,r(g)})};for(let h=0;h<c&&(l(),!x);h++);});return C.exports=e,C.exports.default=e,C.exports}var Os=Es();const Ps=xe(Os),Rs=900*1e3,Ts=30,ks=(e,s)=>{if(!e)return s;const n=Number.parseInt(e,10);return Number.isFinite(n)&&n>0?n:s},Ls=30*1e3,As=e=>Math.max(ks(e,Ts)*1e3,Ls),H=As(Se().mailboxPollIntervalSeconds),S=(e=Date.now(),s=H)=>Ye(e)?Math.min(Je,s):s,Ds=5,E=new Set,Fs=(e,s,n=Rs)=>e.filter(o=>{const a=o.lastSyncAt;return a==null?!0:s-a>n}).map(o=>o.accountId),Qs=(e,s,n=H)=>e-s>=n,Ks=(e,s)=>e.filter(n=>!s.has(n)),A=(e,s)=>{if(E.delete(e),ve(s,{softError:!0},"nobody")){ye(s);return}console.warn("[remit] background mailbox sync failed",{accountId:e,error:s})},D=(e,s)=>ge({path:{accountId:e},throwOnError:!0}).then(()=>{s.invalidateQueries({queryKey:be({path:{accountId:e}})})}),_s=e=>{const s=Q(),n=u.useRef(e);n.current=e;const o=e.map(a=>a.accountId).join(",");u.useEffect(()=>{const a=Date.now(),c=Fs(n.current,a).filter(d=>!E.has(d));if(c.length!==0)for(const d of c)E.add(d),D(d,s).catch(m=>{A(d,m)})},[o,s]),u.useEffect(()=>{let a=Date.now(),r;const c=new Set,d=()=>{a=Date.now();const p=Ks(n.current.map(l=>l.accountId),c);for(const l of p)c.add(l);Ps(p,l=>D(l,s).catch(h=>{A(l,h)}).finally(()=>{c.delete(l)}),{concurrency:Ds})},m=()=>{if(document.visibilityState==="visible"){d(),r=setTimeout(m,S());return}},i=()=>{document.visibilityState==="visible"&&Qs(Date.now(),a,S())&&(r!==void 0&&clearTimeout(r),d(),r=setTimeout(m,S()))},x=()=>{document.visibilityState==="visible"&&(r!==void 0&&clearTimeout(r),a=Date.now(),r=setTimeout(m,S()))};r=setTimeout(m,S()),document.addEventListener("visibilitychange",i);const f=We(x);return()=>{r!==void 0&&clearTimeout(r),document.removeEventListener("visibilitychange",i),f()}},[o,s])};function pt(){const e=je(),s=_(),n=ls(s),{openOverlay:o,intelligenceOpen:a,showOverlay:r,toggleIntelligence:c,raiseIntelligence:d}=Ns(),m=o==="shortcuts",i=o==="nav",{searchInput:x,committedQuery:f,viewKey:p,setSearchInput:l}=xs(),{data:h,isLoading:y,isError:g,error:b,refetch:j}=Ce({...Ie(),staleTime:1/0}),N=!!(h&&(h.accounts?.length??0)===0);u.useEffect(()=>{N&&e({to:"/onboarding",replace:!0})},[N,e]),cs({enabled:!m,bindings:[{key:"?",action:"help",handler:()=>r("shortcuts"),noModifiers:!1,preventDefault:!0}]});const P=O(),V=ze(),q=M({select:w=>Me(w.matches)?.list==="mailbox"}),$=u.useMemo(()=>({compose:P}),[P]);Ke({enabled:!q&&!V,handlers:$});const G=u.useCallback(()=>{l("")},[l]),U=u.useCallback(()=>{l("")},[l]),v=h?.accounts??[],W=u.useMemo(()=>v.map(w=>w.accountId),[v]),Y=js(v),J=Ms(v),X=u.useMemo(()=>_e(v),[v]);_s(v);const Z=u.useCallback(()=>{o==="nav"&&r(void 0)},[o,r]),ee={accounts:v,mailboxNameIndex:Y,accountNameIndex:X,resultFolderIndex:J,searchQuery:f,searchInput:x,searchViewKey:p,onSearchChange:l,onSearchClear:G,onSearchClearQuery:U,intelligenceOpen:a,onToggleIntelligence:c,onRaiseIntelligence:d},se={isSinglePane:n,isLoading:y||N,intelligenceOpen:a,nav:t.jsx(os,{accounts:v,onMailboxSelect:Z}),topBar:n?void 0:t.jsx(ys,{accounts:v}),overlay:n?t.jsx(gs,{}):void 0,navOpen:i,onOpenNav:()=>r("nav"),onCloseNav:()=>r(void 0)};return t.jsx(Ne.Provider,{value:ee,children:t.jsxs(Xe,{accountIds:W,children:[g?t.jsx("div",{className:"flex h-full items-center justify-center bg-canvas p-4",children:t.jsx(is,{title:"Couldn't load your account",error:b,onRetry:()=>{j()}})}):t.jsx(qe,{chrome:se,children:t.jsx(we,{})}),t.jsx(Ss,{isOpen:m,onClose:()=>r(void 0)})]})})}export{pt as component,ie as useMailContext};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e}from"./index-
|
|
1
|
+
import{e}from"./index-DMZ8-zZM.js";const n=e("Menu",[["line",{x1:"4",x2:"20",y1:"12",y2:"12",key:"1e0a9i"}],["line",{x1:"4",x2:"20",y1:"6",y2:"6",key:"1owob3"}],["line",{x1:"4",x2:"20",y1:"18",y2:"18",key:"yk5zj1"}]]);export{n as M};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{e}from"./index-DMZ8-zZM.js";const a=e("Minus",[["path",{d:"M5 12h14",key:"1ays0h"}]]);export{a as M};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as i,j as c}from"./index-
|
|
1
|
+
import{r as i,j as c}from"./index-DMZ8-zZM.js";import{u as D,e as g,C as y,c as E}from"./CalendarComposePane-VeLWQkta.js";import{u as b}from"./CalendarComposeSeed-675yfCbg.js";import{u as h,i as x,U as I,d as w}from"./useCalendars-BruqGaWc.js";import"./ErrorState-BGolGYcc.js";function N({onClose:t}){const{date:m}=h(),a=b(),{calendars:d,timeZoneByCalendarId:u}=x(),{createEvent:f,isWriting:C}=D(),[p,r]=i.useState(""),[n,l]=i.useState(()=>{const e=g(a?.date??m,"");return a?{...e,allDay:a.allDay,startTime:a.allDay?"":a.startTime,endTime:a.allDay?"":a.endTime}:e}),s=d[0]?.id??"";i.useEffect(()=>{s!==""&&l(e=>e.calendarId===""?{...e,calendarId:s}:e)},[s]);const v=()=>{const e=E(n,u[n.calendarId]??I);if(!e.ok){r(e.problem);return}f(e.input).then(o=>{if(o.kind==="written"){r(""),t();return}r(o.kind==="conflict"?"This calendar changed while you were writing. Close the form and try again.":o.message)})};return c.jsx(y,{title:"New event",subtitle:n.date,calendars:d,draft:n,onChange:l,problem:p,saveLabel:"Add",isSaving:C,onSave:v,onCancel:t})}function R(){const{closeEvent:t}=w();return c.jsx(N,{onClose:t})}export{R as component};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{q as n,h as a,u as i,r as m,j as s}from"./index-DMZ8-zZM.js";import{O as p}from"./OnboardingWizard-bzjJS9rU.js";import{c}from"./onboarding-completion-0kUxmKoQ.js";import"./kbd-BV5q0Za-.js";import"./credential-steps-BiPyTE8I.js";import"./card-GNRohr9F.js";import"./account-form-helpers-DhckT_PN.js";import"./mail-Bff0HSL7.js";function y(){const o=n(),e=a(),t=i(),r=m.useCallback(l=>{c({queryClient:e,recordCompleted:()=>o.recordEvent("onboarding.completed"),navigateToInbox:()=>{window.location.assign("/mail")}})},[o,e]);return s.jsx(p,{skipWelcome:!1,onComplete:r,onImportConfig:()=>{t({to:"/import"})}})}export{y as component};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o}from"./index-
|
|
1
|
+
import{o}from"./index-DMZ8-zZM.js";async function n(e){e.recordCompleted(),await e.queryClient.refetchQueries({queryKey:o()}),e.navigateToInbox()}export{n as c};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as o,O as i}from"./index-DMZ8-zZM.js";import{a as m}from"./MailShell-Cd-aCKBf.js";import{u as p,O as t}from"./OutboxPane-BFHcQFSQ.js";import{u as s}from"./search-mirror-NOSJLcGR.js";import"./FullCompose-DqLTXvyP.js";import"./ErrorState-BGolGYcc.js";import"./index-RbY7Dn0X.js";import"./useMessageBodyContent-DxQjkGza.js";import"./useSignature-At1N2nkq.js";import"./account-form-helpers-DhckT_PN.js";import"./useDebouncedValue-BBOZojyy.js";import"./sections-DVKafU2-.js";import"./format-RgJz8yFq.js";import"./confirm-dialog-PyqpaetG.js";import"./useSearchTokenContext-DohJINg2.js";import"./kbd-BV5q0Za-.js";import"./search-scope-B5-OK3Cq.js";import"./circle-check-big-CvyTX3eu.js";import"./clock-CV2mIEQ0.js";import"./row-actions-DO7n5J0t.js";import"./rotate-ccw-BRLfH-fd.js";import"./NavMenuButton-CqSZuMpN.js";import"./menu-DqCvhoo6.js";import"./outbox-status-BlKn6P0x.js";import"./search-query-Cr_ZXBCp.js";function v(){const r=p();return s({to:"/mail/outbox"}),o.jsx(t,{outboxMessageId:r,children:o.jsx(m,{phone:o.jsx(t.Phone,{}),list:o.jsx(t.List,{}),reading:o.jsx(i,{})})})}export{v as component};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e as a}from"./index-
|
|
1
|
+
import{e as a}from"./index-DMZ8-zZM.js";const c=a("Pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);export{c as P};
|