1import{d as y,_ as e,S as i,T as m,F as _,B as T,b as V,G as S,q as Y,fF as Z,is as ee,it as te,am as ae,r as b,iu as se,e as oe,H as M,ad as A,iv as z,h4 as ie,iw as f,I as F,L as D,C as P,as as ne,ar as ce,K as H,J as le,aV as j,fr as re,cT as de,R as me,c as $,cy as ue,b0 as E,ix as ge}from"../index-VMHOJWMU.js";import{v as he}from"./logout-zW9vLZBv.js";import{v as pe}from"./ban-dv3pzPah.js";import{v as U}from"./arrow-left-mFFeWVp-.js";import{L as R,a as v}from"./list-kNu8XdP6.js";import{A as q}from"./avatar-z6niy09N.js";import{I as x}from"./icon-button-4Eh3IETG.js";import{T as fe}from"./tooltip-SYCiS-yv.js";import{a as ve,b as be,c as Me,d as O}from"./menu-8Il-9S-m.js";import{V as we}from"./verification-badge-Odkn1GWt.js";import{C as _e,a as ye,b as ke,c as Ce}from"./chat-search-input-StRbwqKq.js";import{b as C,a as W}from"./card-7ohsvvPd.js";import{T as G}from"./toggle-YgWtisqe.js";import{S as xe}from"./setting-toggle-jaEljFQh.js";import{u as J}from"./accounts-6NJw7UOL.js";import{v as Ne}from"./edit-vwXWf2lD.js";import{v as Se}from"./settings-wDIwdem2.js";import{u as De}from"./useDebounce-4D0Ijhr3.js";import"./check-yIzLNTTz.js";import"./chevron-right--X4Ix3iI.js";import"./select-lfqcZLnA.js";import"./photo-off-79HRmGFB.js";import"./still-image-9yQf3vd2.js";import"./floating-ui.react-ccaI1FQM.js";import"./reach-auto-id-AmiT-jyu.js";import"./upload-button-LHtX7en0.js";import"./upload-kxg31hbs.js";import"./alert-triangle-2cgZAY-x.js";import"./zoom-in-dM1E3CPq.js";import"./blurhash-FJalZQZj.js";import"./optional-motion-3eGf36pp.js";import"./suggestions-XzNssXdr.js";import"./progress-bar-B-g6KG59.js";import"./index-67k_gRxX.js";import"./divider-_U2F5RuU.js";import"./utils-MSBgc6-h.js";import"./placeholder-display-name-Arv23TFv.js";import"./dots-amwgDkrE.js";import"./mood-smile-OHOxQISc.js";import"./trash-6yLDosET.js";import"./flag-ot_jwvh4.js";import"./dropdown-menu-h5DuJsjU.js";import"./portal-q788c6zA.js";import"./rich-content-YPJkE4vr.js";import"./emoji-selector-rF1RB_dS.js";import"./emoji-eLnzave5.js";import"./useClickOutside-wno_glGN.js";import"./link-W8DKRVkR.js";import"./search-Z7DxwcJD.js";import"./input-bKk5pD2j.js";import"./eye-tv-5IEBh.js";import"./eye-off-NuujKo4r.js";import"./pull-to-refresh-Aj08JBtW.js";import"./relative-timestamp-bBky9-Y8.js";const Ie=()=>{const s=y();return e(i,{space:6,alignItems:"center",justifyContent:"center",className:"h-full p-6"},void 0,e(i,{space:2,className:"max-w-sm"},void 0,e(m,{size:"2xl",weight:"bold",tag:"h2",align:"center"},void 0,e(_,{id:"chats.main.blankslate.title",defaultMessage:"No messages yet"})),e(m,{size:"sm",theme:"muted",align:"center"},void 0,e(_,{id:"chats.main.blankslate.subtitle",defaultMessage:"Search for someone to chat with"}))),e(T,{theme:"primary",onClick:()=>{s.push("/chats/new")}},void 0,e(_,{id:"chats.main.blankslate.new_chat",defaultMessage:"Message someone"})))},Re=()=>{const s=y();return e(i,{space:6,alignItems:"center",justifyContent:"center",className:"h-full p-6"},void 0,e(i,{space:2,className:"max-w-sm"},void 0,e(m,{size:"2xl",weight:"bold",tag:"h2",align:"center"},void 0,e(_,{id:"chats.main.blankslate_with_chats.title",defaultMessage:"Select a chat"})),e(m,{size:"sm",theme:"muted",align:"center"},void 0,e(_,{id:"chats.main.blankslate_with_chats.subtitle",defaultMessage:"Select from one of your open chats or create a new message."}))),e(T,{theme:"primary",onClick:()=>{s.push("/chats/new")}},void 0,e(_,{id:"chats.main.blankslate.new_chat",defaultMessage:"Message someone"})))},o=D({blockMessage:{id:"chat_settings.block.message",defaultMessage:"Blocking will prevent this profile from direct messaging you and viewing your content. You can unblock later."},blockHeading:{id:"chat_settings.block.heading",defaultMessage:"Block @{acct}"},blockConfirm:{id:"chat_settings.block.confirm",defaultMessage:"Block"},unblockMessage:{id:"chat_settings.unblock.message",defaultMessage:"Unblocking will allow this profile to direct message you and view your content."},unblockHeading:{id:"chat_settings.unblock.heading",defaultMessage:"Unblock @{acct}"},unblockConfirm:{id:"chat_settings.unblock.confirm",defaultMessage:"Unblock"}
1,leaveMessage:{id:"chat_settings.leave.message",defaultMessage:"Are you sure you want to leave this chat? Messages will be deleted for you and this chat will be removed from your inbox."},leaveHeading:{id:"chat_settings.leave.heading",defaultMessage:"Leave Chat"},leaveConfirm:{id:"chat_settings.leave.confirm",defaultMessage:"Leave Chat"},blockUser:{id:"chat_settings.options.block_user",defaultMessage:"Block @{acct}"},unblockUser:{id:"chat_settings.options.unblock_user",defaultMessage:"Unblock @{acct}"},reportUser:{id:"chat_settings.options.report_user",defaultMessage:"Report @{acct}"},leaveChat:{id:"chat_settings.options.leave_chat",defaultMessage:"Leave Chat"},autoDeleteLabel:{id:"chat_settings.auto_delete.label",defaultMessage:"Auto-delete messages"},autoDeleteHint:{id:"chat_settings.auto_delete.hint",defaultMessage:"Sent messages will auto-delete after the time period selected"},autoDelete2Minutes:{id:"chat_settings.auto_delete.2minutes",defaultMessage:"2 minutes"},autoDelete7Days:{id:"chat_settings.auto_delete.7days",defaultMessage:"7 days"},autoDelete14Days:{id:"chat_settings.auto_delete.14days",defaultMessage:"14 days"},autoDelete30Days:{id:"chat_settings.auto_delete.30days",defaultMessage:"30 days"},autoDelete90Days:{id:"chat_settings.auto_delete.90days",defaultMessage:"90 days"},autoDeleteMessage:{id:"chat_window.auto_delete_label",defaultMessage:"Auto-delete after {day, plural, one {# day} other {# days}}"},autoDeleteMessageTooltip:{id:"chat_window.auto_delete_tooltip",defaultMessage:"Chat messages are set to auto-delete after {day, plural, one {# day} other {# days}} upon sending."}}),Te=()=>{const s=V(),t=S(),r=Y(),c=y(),{chatId:u}=Z(),{data:a}=ee(u),{currentChatId:n}=te(),{chatsQuery:{data:l,isLoading:h}}=ae(),d=b.useRef(null),{deleteChat:w,updateChat:p}=se(a==null?void 0:a.id),g=L=>p.mutate({message_expiration:L}),I=oe(L=>{var B;return L.getIn(["relationships",(B=a==null?void 0:a.account)==null?void 0:B.id,"blocking"])}),K=()=>{s(P("CONFIRM",{heading:t.formatMessage(o.blockHeading,{acct:a==null?void 0:a.account.acct}),message:t.formatMessage(o.blockMessage),confirm:t.formatMessage(o.blockConfirm),confirmationTheme:"primary",onConfirm:()=>s(ne(a==null?void 0:a.account.id))}))},Q=()=>{s(P("CONFIRM",{heading:t.formatMessage(o.unblockHeading,{acct:a==null?void 0:a.account.acct}),message:t.formatMessage(o.unblockMessage),confirm:t.formatMessage(o.unblockConfirm),confirmationTheme:"primary",onConfirm:()=>s(ce(a==null?void 0:a.account.id))}))},X=()=>{s(P("CONFIRM",{heading:t.formatMessage(o.leaveHeading),message:t.formatMessage(o.leaveMessage),confirm:t.formatMessage(o.leaveConfirm),confirmationTheme:"primary",onConfirm:()=>{w.mutate(void 0,{onSuccess(){c.push("/chats")}})}}))};return h?null:!n&&l&&l.length>0?e(Re,{}):n?a?e(i,{className:"h-full overflow-hidden"},void 0,e(M,{alignItems:"center",justifyContent:"between",space:2,className:"w-full p-4"},void 0,e(M,{alignItems:"center",space:2,className:"overflow-hidden"},void 0,e(M,{alignItems:"center"},void 0,e(x,{src:U,className:"mr-2 h-7 w-7 sm:mr-0 sm:hidden rtl:rotate-180",onClick:()=>c.push("/chats")}),e(A,{to:`/@${a.account.acct}`},void 0,e(q,{src:a.account.avatar,size:40,className:"flex-none"}))),e(i,{alignItems:"start",className:"h-11 overflow-hidden"},void 0,e("div",{className:"flex w-full grow items-center space-x-1"},void 0,e(A,{to:`/@${a.account.acct}`},void 0,e(m,{weight:"bold",size:"sm",align:"left",truncate:!0},void 0,a.account.display_name||`@${a.account.username}`)),a.account.verified&&e(we,{})),a.message_expiration&&e(fe,{text:t.formatMessage(o.autoDeleteMessageTooltip,{day:z(a.message_expiration)})},void 0,e(m,{align:"left",size:"sm",weight:"medium",theme:"primary",truncate:!0,className:"w-full cursor-help"},void 0,t.formatMessage(o.autoDeleteMessage,{day:z(a.message_expiration)}))))),e(ve,{},void 0,e(be,{as:x,src:ie,iconClassName:"h-5 w-5 text-gray-600",children:null}),e(Me,{className:"w-80"},void 0,e(i,{space:4,className:"px-6 py-5"},void 0,e(M,{alignItems:"center",space:3},void 0,e(q,{src:a.account.avatar_static,size:50}),e(i,{},void 0,e(m,{weight:"semibold"},void 0,a.account.display_name),e(m,{size:"sm",theme:"primary"},void 0,"@",a.account.acct))),r.chatsExpiration&&e(R,{},void 0,e(v,{label:t.formatMessage(o.autoDeleteLabel),hint:t.formatMessage(o.autoDeleteHint)}),e(v,{label:t.formatMessage(o.autoDelete7Days),onSelect:()=>g(f.SEVEN),isSelected:a.message_expiration===f.SEVEN}),e(v,{label:t.formatMessage(o.autoDelete14Days),onSelect:()=>g(f.FOURTEEN),isSelected:a.message_expiration===f.FOURTEEN}),e(v,{label:t.formatMessage(o.autoDelete30Days),onSelect:()=>g(f.THIRTY),isSelected:a.message_expiration===f.THIRTY}),e(v,{label:t.formatMessage(o.autoDelete90Days),onSelect:()=>g(f.NINETY),isSelected:a.message_expiration===f.NINETY})),e(i,{space:2},void 0,e(O,{as:"button",onSelect:I?Q:K,className:"!px-0 hover:!bg-transparent"},void 0,e("div",{className:"flex w-full items-center space-x-2 text-sm font-bold text-primary-500 dark:text-accent-blue"},void 0,e(F,{src:pe,className:"h-5 w-5"}),e("span",{},void 0,t.formatMessage(I?o.unblockUser:o.blockUser,{acct:a.account.acct}
1)))),r.chatsDelete&&e(O,{as:"button",onSelect:X,className:"!px-0 hover:!bg-transparent"},void 0,e("div",{className:"flex w-full items-center space-x-2 text-sm font-bold text-danger-600 dark:text-danger-500"},void 0,e(F,{src:he,className:"h-5 w-5"}),e("span",{},void 0,t.formatMessage(o.leaveChat))))))))),e("div",{className:"h-full overflow-hidden"},void 0,e(_e,{className:"h-full",chat:a,inputRef:d}))):null:e(Ie,{})},Le=D({title:{id:"chat.new_message.title",defaultMessage:"New Message"}}),Pe=()=>{const s=S(),t=y();return e(i,{className:"h-full space-y-4"},void 0,e(i,{className:"grow px-4 pt-6 sm:px-6"},void 0,e(M,{alignItems:"center"},void 0,e(x,{src:U,className:"mr-2 h-7 w-7 sm:mr-0 sm:hidden rtl:rotate-180",onClick:()=>t.push("/chats")}),e(C,{title:s.formatMessage(Le.title)}))),e(ye,{isMainPage:!0}))},k=D({title:{id:"chat.page_settings.title",defaultMessage:"Message Settings"},preferences:{id:"chat.page_settings.preferences",defaultMessage:"Preferences"},privacy:{id:"chat.page_settings.privacy",defaultMessage:"Privacy"},acceptingMessageLabel:{id:"chat.page_settings.accepting_messages.label",defaultMessage:"Allow users to start a new chat with you"},playSoundsLabel:{id:"chat.page_settings.play_sounds.label",defaultMessage:"Play a sound when you receive a message"},submit:{id:"chat.page_settings.submit",defaultMessage:"Save"}}),Ee=()=>{var w;const{account:s}=H(),t=S(),r=y(),c=V(),u=le(),a=J(),[n,l]=b.useState({chats_onboarded:!0,accepts_chat_messages:((w=s==null?void 0:s.pleroma)==null?void 0:w.accepts_chat_messages)===!0}),h=(p,g)=>{c(re(p,g,{showAlert:!0}))},d=p=>{p.preventDefault(),a.mutate(n)};return e(i,{className:"h-full space-y-8 px-4 py-6 sm:p-6"},void 0,e(M,{alignItems:"center"},void 0,e(x,{src:U,className:"mr-2 h-7 w-7 sm:mr-0 sm:hidden rtl:rotate-180",onClick:()=>r.push("/chats")}),e(C,{title:t.formatMessage(k.title)})),e(j,{onSubmit:d},void 0,e(C,{title:t.formatMessage(k.preferences)}),e(R,{},void 0,e(v,{label:t.formatMessage(k.playSoundsLabel)},void 0,e(xe,{settings:u,settingPath:["chats","sound"],onChange:h}))),e(C,{title:t.formatMessage(k.privacy)}),e(W,{},void 0,e(R,{},void 0,e(v,{label:t.formatMessage(k.acceptingMessageLabel)},void 0,e(G,{checked:n.accepts_chat_messages,onChange:p=>l(g=>({...g,accepts_chat_messages:p.target.checked}))})))),e(T,{type:"submit",theme:"primary",disabled:a.isPending},void 0,t.formatMessage(k.submit))))},He=D({title:{id:"column.chats",defaultMessage:"Chats"}}),Ue=()=>{const s=S(),t=y(),r=Y(),[c,u]=b.useState(""),a=De(c,300),n=d=>{t.push(`/chats/${d.id}`)},l=()=>{t.push("/chats/new")},h=()=>{t.push("/chats/settings")};return e(i,{space:4,className:"h-full"},void 0,e(i,{space:4,className:"px-4 pt-6"},void 0,e(M,{alignItems:"center",justifyContent:"between"},void 0,e(C,{title:s.formatMessage(He.title)}),e(M,{space:1},void 0,e(x,{src:Se,iconClassName:"h-5 w-5 text-gray-600",onClick:h}),e(x,{src:Ne,iconClassName:"h-5 w-5 text-gray-600",onClick:l}))),r.chatsSearch&&e(ke,{value:c,onChange:d=>u(d.target.value),onClear:()=>u("")})),e(i,{className:"h-full grow"},void 0,e(Ce,{onClickChat:n,searchValue:a})))},N=D({title:{id:"chat.welcome.title",defaultMessage:"Welcome to {br} Chats!"},subtitle:{id:"chat.welcome.subtitle",defaultMessage:"Exchange direct messages with other users."},acceptingMessageLabel:{id:"chat.welcome.accepting_messages.label",defaultMessage:"Allow users to start a new chat with you"},notice:{id:"chat.welcome.notice",defaultMessage:"You can change these settings later."},submit:{id:"chat.welcome.submit",defaultMessage:"Save & Continue"}}),Be=()=>{var n;const{account:s}=H(),t=S(),r=J(),[c,u]=b.useState({chats_onboarded:!0,accepts_chat_messages:((n=s==null?void 0:s.pleroma)==null?void 0:n.accepts_chat_messages)===!0}),a=l=>{l.preventDefault(),r.mutate(c)};return e(i,{className:"h-full overflow-y-auto px-4 py-20 sm:px-0","data-testid":"chats-welcome"},void 0,e("div",{className:"mx-auto mb-2.5 w-full sm:w-3/5 xl:w-2/5"},void 0,e(m,{align:"center",weight:"bold",className:"mb-6 text-2xl leading-8 md:text-3xl"},void 0,t.formatMessage(N.title,{br:e("br",{})})),e(m,{align:"center",theme:"muted"},void 0,t.formatMessage(N.subtitle))),e(j,{onSubmit:a,className:"w-full space-y-8 sm:mx-auto sm:w-2/3 lg:w-3/5"},void 0,e(i,{space:2},void 0,e(C,{title:e(_,{id:"chat.page_settings.privacy",defaultMessage:"Privacy"})}),e(W,{},void 0,e(R,{},void 0,e(v,{label:t.formatMessage(N.acceptingMessageLabel)},void 0,e(G,{checked:c.accepts_chat_messages,onChange:l=>u(h=>({...h,accepts_chat_messages:l.target.checked}))}))))),e(m,{align:"center",theme:"muted"},void 0,t.formatMessage(N.notice)),e(T,{type:"submit",theme:"primary",block:!0,size:"lg",disabled:r.isPending},void 0,t.formatMessage(N.submit))))},Ae=s=>{var w;const{account:t}=H(),r=y(),c=((w=t==null?void 0:t.source)==null?void 0:w.chats_onboarded)??!0,u=r.location.pathname,a=de(u,{path:["/chats/settings","/chats/new","/chats/:chatId"],exact:!0}),n=b.useRef(null),[l,h]=b.useState("100%"),d=()=>
1{if(!n.current)return null;const{top:p}=n.current.getBoundingClientRect(),g=document.body.offsetHeight,I=document.body.clientWidth<976?-61:0;h(g-p+I)};return b.useLayoutEffect(()=>{d()},[n.current]),b.useEffect(()=>(window.addEventListener("resize",d),()=>{window.removeEventListener("resize",d)}),[]),me.createElement("div",{ref:n,style:{height:l},className:"h-screen overflow-hidden bg-white text-gray-900 shadow-lg black:bg-transparent sm:rounded-t-xl dark:bg-primary-900 dark:text-gray-100 dark:shadow-none"},c?e("div",{className:"grid h-full grid-cols-9 overflow-hidden black:divide-x dark:divide-x-2 dark:divide-solid dark:divide-gray-800","data-testid":"chat-page"},void 0,e(i,{className:$("dark:inset col-span-9 overflow-hidden bg-gradient-to-r from-white to-gray-100 black:bg-black sm:col-span-3 dark:bg-gray-900 dark:bg-none",{"hidden sm:block":a})},void 0,e(Ue,{})),e(i,{className:$("col-span-9 h-full overflow-hidden sm:col-span-6",{"hidden sm:block":!a})},void 0,e(ue,{},void 0,e(E,{path:"/chats/new"},void 0,e(Pe,{})),e(E,{path:"/chats/settings"},void 0,e(Ee,{})),e(E,{},void 0,e(Te,{}))))):e(Be,{}))},zt=s=>{let{params:t}=s;return e(ge,{},void 0,e(Ae,{chatId:t==null?void 0:t.chatId}))};export{zt as default}; 2//# sourceMappingURL=index-KISs9IOj.js.map
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.