PageSourceSearch

https://wei.city/_nuxt/Mbn1_rms.js

js wei.city collected 2026-10-02 01:23:14 UTC 248,796 bytes, 6 lines download raw bytes

1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./D4OHAbGf.js","./CXrjN5r8.js","./Bvar31K0.js","./entry.CgDl8pAV.css","./BpTChtGg.js","./DHHte8yu.js","./BxBi1_Sw.js","./8QESn_fu.js","./Bk6k-oHp.js","./DLoSOc9j.js","./BXLgHFVY.js","./bDWHkiKe.js","./useQuickLinks.DtIe_w12.css","./Bkj-NMf9.js","./BQawY1YM.js","./AppUserMenu.DdnH06kx.css","./DTzB5GU3.js","./KNeBdjIC.js","./B2qdGcuk.js","./C9lZP1Li.js","./WcAiButton.BoTqTlN5.css","./D9-srlUO.js","./B8QAxleW.js","./VaultPickButton.BTZ_nESe.css","./zL1zXNpF.js","./BgRtxhC8.js","./DWRWTEWV.js","./KI3naYzN.js","./DW4JbKmU.js","./PUTlPuMM.js","./WeiCityShell.9yNPvgiQ.css","./DDrWzmX2.js","./Button.CjiFp0oL.css","./CWYbOWIT.js","./Loading.Dj4lx8RA.css","./lQH5Kn5G.js","./CSpfmH0L.js","./DXBI_DmT.js","./PasswordInput.B7AKjfyI.css","./FileVaultUnlockDialog.NtENSAy0.css","./p42btBcJ.js","./ChatCreateGroupDialog.Bfx2PmMD.css","./BZ0q7P7U.js","./ChatAudioPlayer.BhdLIK9_.css","./DeZcULKt.js","./ChatEmojiPicker.DaVD5-KV.css","./CROBzdiI.js","./XTo_-1ZZ.js","./ChatPollCard.CUSi_Y5N.css","./D2kYKtpj.js","./ChatVideoBubble.CZJQla1H.css","./DoL8ejv-.js","./ChatScheduleDialog.DIZ5AJ0B.css","./CrXQ0K6e.js","./ChatMentionPicker.HC7ae2_Y.css","./BVTbl_yM.js","./ImageLightbox.hd9vpH4S.css","./C0B6PIvi.js","./ChatGroupDrawer._8OiQu8H.css","./B_Rj7yd3.js","./ChatForwardPanel.LgDisifX.css","./C8pXnEuo.js","./ChatScheduledDialog.Irbd8OGs.css","./DfOoNPLV.js","./ChatPollDialog.q2gQMGec.css"])))=>i.map(i=>d[i]);
2import{eU as Ee,cF as St,cu as vt,aQ as _t,ee as Nt,e9 as tn,eq as Ea,cL as o,aw as Oe,av as n,dT as e,cw as Gn,d7 as Eo,aA as l,d6 as Ve,cv as Ce,dH as r,f as fe,ax as C,T as ln,c$ as g,as as P,a0 as bt,em as oi,dZ as oa,et as La,es as Lo,e_ as Ne,eR as dt,c9 as ft,aH as _e,aI as It,f0 as Ut,_ as Uo,co as lo,aP as Bt,$ as Dt,cH as nn,e$ as In,Z as Po,eZ as dn,eN as en,eQ as ro,cZ as Ua,bs as Pn,ez as bn,dq as aa,br as Un,er as si,cK as Aa,eP as ii,cJ as sa,bq as Do,e8 as li,dP as gn,cV as ri,ew as ci,ex as ui,ef as di,bx as vi,cs as An}from"./Bvar31K0.js";import{_ as Oo}from"./DDrWzmX2.js";import{_ as fi}from"./CWYbOWIT.js";import{c as Pt}from"./CXrjN5r8.js";import{G as qo,B as mi,Z as pi,$ as gi,y as hi,R as Vo,Q as yi,U as _i,K as bi,a0 as wi,_ as ki}from"./DHHte8yu.js";import{l as Bo,i as Ci,j as $i,q as Ii,d as co,m as Mi,o as Ti,k as Si,a as Ai,u as Ri,f as uo,b as hn,s as $n,e as Ei,c as Li,g as Ui,h as Pi,n as Di,p as Oi}from"./lQH5Kn5G.js";import{b as Pa,a as No,e as zn,u as Fo,i as qi,d as vo,c as Vi}from"./BpTChtGg.js";import{_ as Bi}from"./D9-srlUO.js";import{u as Ni}from"./zL1zXNpF.js";import{D as Fi,w as Ki,q as ji}from"./DTzB5GU3.js";import{_ as xi}from"./CSpfmH0L.js";import{L as Hi,K as Gi,S as zi,p as Qi,i as Xi}from"./DLoSOc9j.js";import{p as Wi}from"./KNeBdjIC.js";import{u as Ko}from"./BxBi1_Sw.js";import{u as Ji}from"./p42btBcJ.js";const Yi='a[href],button:not([disabled]),input:not([disabled]),textarea:not([disabled]),select:not([disabled]),[tabindex]:not([tabindex="-1"])';function Zi(t,s){function a(){const i=t.value;return i?Array.from(i.querySelectorAll(Yi)).filter(p=>p.offsetParent!==null||p===document.activeElement):[]}function u(i){if(i.key!=="Tab"||!s.value)return;const p=a();if(!p.length)return;const b=p[0],d=p[p.length-1],y=document.activeElement;i.shiftKey&&(y===b||!t.value?.contains(y))?(i.preventDefault(),d.focus()):!i.shiftKey&&y===d&&(i.preventDefault(),b.focus())}Ee(s,i=>{i?(window.addEventListener("keydown",u),vt(()=>{a()[0]?.focus({preventScroll:!0})}
2)):window.removeEventListener("keydown",u)},{immediate:!0}),St(()=>{window.removeEventListener("keydown",u)})}const el=["aria-label"],tl=["disabled","title","onClick"],nl=40,al=200,ol=_t({__name:"ChatMessageMenu",props:{items:{},mode:{},x:{},y:{}},emits:["pick","close"],setup(t,{emit:s}){const a=t,u=s,{t:i}=Nt(),p=g(!0);tn(p,()=>u("close"));const{onOverlayPointerdown:b,onOverlayClick:d}=Ea(()=>u("close")),y=g(null);Zi(y,p);const m=P(()=>{if(a.mode!=="popup")return;const h=window.innerWidth,I=window.innerHeight,E=Math.min(a.items.length*nl+76,I-24),j=Math.max(12,Math.min(a.x??0,h-al-12)),N=Math.max(12,Math.min(a.y??0,I-E-12));return{left:`${j}px`,top:`${N}px`}});function w(h){h.disabled||(u("close"),u("pick",h.key))}return(h,I)=>(o(),Oe(ln,{to:"body"},[n("div",{class:Ce(["wc-msgmenu",t.mode==="sheet"?"wc-msgmenu--sheet":"wc-msgmenu--popup"]),onPointerdown:I[1]||(I[1]=(...E)=>e(b)&&e(b)(...E)),onClick:I[2]||(I[2]=(...E)=>e(d)&&e(d)(...E))},[n("div",{ref_key:"panelRef",ref:y,class:"wc-msgmenu__panel",style:Gn(e(m)),role:"menu","aria-modal":"true","aria-label":e(i)("chat.actions_title")},[Eo(h.$slots,"reactions",{},void 0,!0),(o(!0),l(fe,null,Ve(t.items,E=>(o(),l("button",{key:E.key,type:"button",role:"menuitem",class:Ce(["wc-msgmenu__item",{"wc-msgmenu__item--danger":E.danger,"wc-msgmenu__item--disabled":E.disabled}]),disabled:E.disabled,title:E.reasonKey?e(i)(E.reasonKey):void 0,onClick:j=>w(E)},[n("i",{class:Ce(E.icon),"aria-hidden":"true"},null,2),n("span",null,r(e(i)(E.labelKey)),1)],10,tl))),128)),t.mode==="sheet"?(o(),l("button",{key:0,type:"button",class:"wc-msgmenu__cancel",onClick:I[0]||(I[0]=E=>u("close"))},r(e(i)("common.cancel")),1)):C("",!0)],12,el)],34)]))}}),Da=bt(ol,[["__scopeId","data-v-a10651e3"]]),sl=Object.freeze(Object.defineProperty({__proto__:null,default:Da},Symbol.toStringTag,{value:"Module"}));function il(t){const s=(t||"").trim(),i='<svg xmlns="http://www.w3.org/2000/svg" width="96" height="96" viewBox="0 0 96 96"><rect width="96" height="96" rx="48" fill="#2f3237"/><text x="48" y="48" fill="#ffffff" font-family="system-ui,-apple-system,Segoe UI,Roboto,sans-serif" font-size="44" font-weight="600" text-anchor="middle" dominant-baseline="central">'+(s?Array.from(s)[0].toUpperCase():"?").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")+"</text></svg>";return"data:image/svg+xml;charset=utf-8,"+encodeURIComponent(i)}function sn(t,s){const a=t.target;!a||a.dataset.fallback==="1"||(a.dataset.fallback="1",a.src=il(s||""))}const ll=50,jo=4e3;function xo(t,s,a){return`${(t||"").toLowerCase()}:${s}:${(a||"").toLowerCase()}`}function Ho(t){return`wc.chatdraft.v1.${(t||"").toLowerCase()}`}function Go(t){return t?!t.text.trim()&&t.pending.length===0&&!t.replyToMsgId:!0}function rl(t){if(!t||typeof t!="object")return null;const s=t,a=typeof s.text=="string"?s.text.slice(0,jo):"",u=Array.isArray(s.pending)?s.pending.filter(d=>typeof d=="string"&&!!d).slice(0,9):[],i=typeof s.replyToMsgId=="string"&&s.replyToMsgId?s.replyToMsgId:void 0,p=typeof s.updatedAt=="number"&&Number.isFinite(s.updatedAt)?s.updatedAt:0,b={text:a,pending:u,replyToMsgId:i,updatedAt:p};return Go(b)?null:b}function Ra(t,s,a){if(s)for(t.set(s,{...a,text:a.text.slice(0,jo)});t.size>ll;){let u="",i=Number.POSITIVE_INFINITY;for(const[p,b]of t)b.updatedAt<i&&(i=b.updatedAt,u=p);if(!u)break;t.delete(u)}}function cl(t){const s=new Map;if(!t)return s;try{const a=JSON.parse(t);if(!a||typeof a!="object"||Array.isArray(a))return s;for(const[u,i]of Object.entries(a)){const p=rl(i);p&&u&&Ra(s,u,p)}}catch{return new Map}return s}function ul(t){const s={};for(const[a,u]of t)s[a]=u;return JSON.stringify(s)}const un=new Map,ta=new Map;let fo="";function Nn(t){const s=(t||"").toLowerCase();if(!(!s||fo===s)){un.clear(),ta.clear(),fo=s;try{for(const[a,u]of cl(window.localStorage.getItem(Ho(s))))un.set(a,u)}catch{}}}function ka(t){const s=(t||"").toLowerCase();if(s)try{window.localStorage.setItem(Ho(s),ul(un))}catch{}}function Oa(){function t(m,w){return w?(Nn(m),un.get(w)||null):null}function s(m,w,h){if(w){if(Nn(m),Go(h)){a(m,w);return}Ra(un,w,{...h,updatedAt:Date.now()}),ka(m)}}function a(m,w){w&&(Nn(m),un.delete(w)&&ka(m))}function u(m,w){}function i(m){}function p(m){return ta.get(m)||0}function b(m,w){m&&(w>0?ta.set(m,w):ta.delete(m))}
2function d(m,w,h,I){if(!w||!h||(Nn(m),b(w,h.rev),!(h.text||"").trim()))return!1;const j=h.updatedAt?Date.parse(h.updatedAt):0,N=un.get(w);if(!j||N&&N.updatedAt>=j)return!1;const x=h.replyToSeq&&I?I(h.replyToSeq):void 0;return Ra(un,w,{text:h.text,replyToMsgId:x,pending:N?.pending??[],updatedAt:j}),ka(m),!0}function y(m,w,h){if(!w)return null;Nn(m);const I=un.get(w),E=(I?.text||"").trim();if(!I||!E)return null;const j=I.replyToMsgId&&h?h(I.replyToMsgId):void 0;return{text:I.text,replyToSeq:j??null}}return{get:t,set:s,clear:a,hydrate:u,onChanged:i,mergeCloud:d,toCloudPayload:y,cloudRevOf:p,noteCloudRev:b,key:xo}}function mo(t){return`wc.chat.notify:${t.toLowerCase()}`}function po(t){return`wc.chat.notifySound:${t.toLowerCase()}`}const dl="data:audio/wav;base64,UklGRvQCAABXQVZFZm10IBAAAAABAAEAQB8AAEAfAAABAAgAZGF0YdACAACAxuvfqF4jEzV5v+jhrWUoFDFyueXjs2wuFS5ssuLkuHIzFytmrN7kvXk5GShgpdrkwX8+GyZan9XkxYZEHiVVmNDjyIxKISNQksziy5JQJCNLjMbgzphWKCJHhsHf0J1cLCJDgLzc0qJiMCM/erba1KdoNSM8dLHX1axuOSU6b6vT1bB0PiY3aaXQ1bR6Qyg1ZKDM1beASCo0YJrI1bqFTS0yW5XE1L2KUjAyV4/A08CPWDMxU4q70cKUXTYxUIW3z8OYYjkxTYCyzcWdZz0ySnuty8agbEEzR3apyMakcUU0RXGkxceodkk1RG2fwsere043Qmmav8atf1I5QWWVu8awhFY8QGKRuMWyiFs+QF+MtMO0jF9BQFyIsMK1kGNEQFmErMC2lGhHQFd/qL63l2xKQVR8pLy4mnBNQlN4oLq4nXRRQ1F0nLe4n3hURVBxmLS4onxYRk9ulbG3pH9cSE5rka63pYNfSk5ojau1p4ZjTU5miai0qIlmT05khqWzqYxqUk9ig6Kxqo9tVE9ggJ+vqpFxV1BffZutqpN0WlFeepirqpV3XVJdd5Wpqpd6YFRcdZKmqZl9YlZcc4+kqJp/ZVdccYyip5uCaFlcb4mfppyEa1tcbYecpZyGbl1dbISao52IcF9da4KXop2Kc2JeaoCVoJ2MdWRfaX2SnpyNeGZgaXyQnZyOemhiaXqOm5uPfGtjaXmLmZqQfm1laXeJl5mQf29maXaHlZiQgXFoanWFk5eRgnNqanWEkZaQhHVra3SCj5SQhXdtbHSBjZOQhXlvbXR/i5GPhnpxbnR+iZCOhntzcHR+iI6Oh310cXR9hoyNh352cnV8hYuLh393dHZ8hImKhoB5dXd8g4iJhoB6d3d8goaIhYB7eHl8gYWGhYF8enp8gISFhIF9e3t9gIKEg4F+fHx9gIGCgoB/fn5+f4CBgYB/f39/f4A=",Rn=g(!1),Fn=g(!1),En=g("default");let go="",Ln="",Kn=null;function zo(){function t(m){const w=(m||"").toLowerCase();if(!(!w||go===w)){go=w;try{Rn.value=window.localStorage.getItem(mo(w))==="1",Fn.value=window.localStorage.getItem(po(w))==="1"}catch{}En.value=s()?Notification.permission:"denied",Ln||(Ln=document.title)}}function s(){return typeof window<"u"&&"Notification"in window}async function a(){if(!s())return!1;if(Notification.permission==="granted")return En.value="granted",!0;try{const m=await Notification.requestPermission();return En.value=m,m==="granted"}catch{return En.value="denied",!1}}async function u(m,w){return t(m),w&&!await a()?(Rn.value=!1,p(m),!1):(Rn.value=w,p(m),w)}function i(m,w){t(m),Fn.value=w,p(m)}function p(m){const w=(m||"").toLowerCase();if(w)try{window.localStorage.setItem(mo(w),Rn.value?"1":"0"),window.localStorage.setItem(po(w),Fn.value?"1":"0")}catch{}}function b(m){if(!s()||!Rn.value||En.value!=="granted"||m.muted||m.archived)return!1;const w=!!m.activeConvId&&m.activeConvId.toLowerCase()===(m.convId||"").toLowerCase();if(document.visibilityState==="visible"&&w)return!1;try{const h=new Notification(m.title,{body:m.body,icon:m.icon||void 0,tag:m.convId||void 0});return h.onclick=()=>{try{window.focus()}catch{}h.close(),m.onClick?.()},d(),!0}catch{return!1}}function d(){if(Fn.value)try{Kn||(Kn=new Audio(dl),Kn.volume=.35),Kn.currentTime=0,Kn.play().catch(()=>{})}catch{}}function y(m){Ln||(Ln=document.title),document.title=m>0?`(${m>99?"99+":m}) ${Ln}`:Ln}return{enabled:P(()=>Rn.value),soundOn:P(()=>Fn.value),permission:P(()=>En.value),supported:s,load:t,requestPermission:a,setEnabled:u,setSound:i,notify:b,setTitleBadge:y}}function vl(t,s){const a=!t.isArchived;return[{key:"pin",labelKey:"chat.conv_pin",icon:"fa-solid fa-thumbtack",visible:a&&!t.isPinned},{key:"unpin",labelKey:"chat.conv_unpin",icon:"fa-solid fa-thumbtack",visible:a&&t.isPinned},{key:"mute",labelKey:"chat.conv_mute",icon:"fa-solid fa-bell-slash",visible:a&&!t.isMuted},{key:"unmute",labelKey:"chat.conv_unmute",icon:"fa-solid fa-bell",visible:a&&t.isMuted},{key:"mark_read",labelKey:"chat.conv_mark_read",icon:"fa-regular fa-envelope-open",visible:a&&t.hasUnread},{key:"mark_unread",labelKey:"chat.conv_mark_unread",icon:"fa-regular fa-envelope",visible:a&&!t.hasUnread},{key:"archive",labelKey:"chat.conv_archive",icon:"fa-solid fa-box-archive",visible:a&&s.v2Actions},{key:"unarchive",labelKey:"chat.conv_unarchive",icon:"fa-solid fa-box-open",visible:t.isArchived&&s.v2Actions},{key:"leave",labelKey:"chat.conv_leave",icon:"fa-solid fa-right-from-bracket",danger:!0,visible:a&&t.isGroup&&s.canLeave},{key:"block",labelKey:"chat.actions_block",icon:"fa-solid fa-ban",danger:!0,visible:a&&t.isDm&&!!t.peerUserId&&!s.blocked},{key:"unblock",labelKey:"chat.actions_unblock",icon:"fa-solid fa-ban",visible:a&&t.isDm&&!!t.peerUserId&&s.blocked}]}function fl(t,s){return vl(t,s).filter(a=>a.visible)}function ia(){const{locale:t}=Nt(),s=d=>
2{if(!d)return null;const y=new Date(d);return Number.isNaN(y.getTime())?null:y},a=d=>d.toLocaleTimeString(t.value,{hour:"2-digit",minute:"2-digit",hour12:!1}),u=d=>d.toLocaleDateString(t.value,{month:"numeric",day:"numeric"}),i=d=>d.toLocaleDateString(t.value,{year:"numeric",month:"2-digit",day:"2-digit"});return{parse:s,hm:a,md:u,ymd:i,ymdhm:d=>`${i(d)} ${a(d)}`,weekday:d=>d.toLocaleDateString(t.value,{weekday:"short"})}}const ml={class:"wc-conv"},pl={class:"wc-conv__head"},gl={class:"wc-conv__head-title"},hl={class:"wc-conv__tabs"},yl=["aria-pressed"],_l=["aria-pressed"],bl=["aria-pressed"],wl=["aria-pressed"],kl={class:"wc-conv__searchrow"},Cl={class:"wc-conv__search"},$l=["aria-label","placeholder"],Il=["title","aria-label","aria-pressed"],Ml=["title","aria-label"],Tl={key:0,class:"wc-conv__joinmsg is-error"},Sl={key:2,class:"wc-conv__confirm"},Al={class:"wc-conv__confirm-acts"},Rl={class:"wc-conv__sec"},El=["onClick"],Ll={class:"wc-conv__avatar wc-conv__avatar--sm"},Ul=["src","alt","onError"],Pl={class:"wc-conv__body"},Dl={class:"wc-conv__row1"},Ol={class:"wc-conv__title"},ql={class:"wc-conv__row2"},Vl={class:"wc-conv__preview"},Bl={key:4,class:"wc-conv__loading"},Nl={key:0,class:"wc-conv__sec"},Fl=["onClick","onContextmenu","onPointerdown"],Kl={class:"wc-conv__avatar"},jl=["src","alt","onError"],xl=["title"],Hl={class:"wc-conv__body"},Gl={class:"wc-conv__row1"},zl=["title"],Ql={class:"wc-conv__title"},Xl={key:1,class:"wc-conv__ro"},Wl={class:"wc-conv__time"},Jl={class:"wc-conv__row2"},Yl={class:"wc-conv__preview"},Zl={key:0,class:"wc-conv__draft"},er=["title","aria-label"],tr={key:1,class:"wc-conv__badge"},nr={key:2,class:"fa-solid fa-bell-slash wc-conv__muted"},ar=["title","aria-label","onClick"],or={key:1,class:"wc-conv__empty"},sr={class:"wc-conv__empty-hint"},ir=["aria-expanded"],lr=["onClick","onContextmenu","onPointerdown"],rr={class:"wc-conv__avatar wc-conv__avatar--sm"},cr=["src","alt","onError"],ur={class:"wc-conv__body"},dr={class:"wc-conv__row1"},vr={class:"wc-conv__title"},fr={class:"wc-conv__time"},mr={class:"wc-conv__row2"},pr={class:"wc-conv__preview"},gr={key:0,class:"wc-conv__badge"},hr=["title","aria-label","onClick"],yr={class:"wc-conv__sec"},_r={class:"wc-conv__discover-err"},br={class:"wc-conv__sec"},wr={key:0,class:"fa-solid fa-spinner fa-spin"},kr={class:"wc-conv__item wc-conv__item--pub"},Cr={class:"wc-conv__avatar wc-conv__avatar--sm"},$r=["src","alt","onError"],Ir={class:"wc-conv__body"},Mr={class:"wc-conv__row1"},Tr={class:"wc-conv__title"},Sr={class:"wc-conv__row2"},Ar={class:"wc-conv__preview"},Rr=["disabled","onClick"],Er={key:0,class:"wc-conv__notebox"},Lr=["placeholder"],Ur=["disabled","onClick"],Pr={class:"wc-conv__sec"},Dr={key:0,class:"fa-solid fa-spinner fa-spin"},Or={class:"wc-conv__item wc-conv__item--pub"},qr={class:"wc-conv__avatar wc-conv__avatar--sm"},Vr=["src","alt","onError"],Br={class:"wc-conv__body"},Nr={class:"wc-conv__row1"},Fr={class:"wc-conv__title"},Kr={class:"wc-conv__row2"},jr={class:"wc-conv__preview"},xr=["disabled","onClick"],Hr={class:"wc-conv__sec"},Gr={key:0,class:"fa-solid fa-spinner fa-spin"},zr=["onClick"],Qr={class:"wc-conv__avatar wc-conv__avatar--sm"},Xr=["src","alt","onError"],Wr={class:"wc-conv__body"},Jr={class:"wc-conv__row1"},Yr={class:"wc-conv__title"},Zr={class:"wc-conv__row2"},ec={class:"wc-conv__preview"},tc={key:11,class:"wc-conv__empty"},nc={class:"wc-conv__empty-hint"},Ca=5,ac=_t({__name:"ConversationSidebar",props:lo({activeConvKey:{},v2Convs:{},blockedPeerIds:{}},{tab:{default:"all"},tabModifiers:{}}),emits:lo(["select","openMessage","startDm","refreshV2","block"],["update:tab"]),setup(t,{expose:s,emit:a}){const{t:u}=Nt(),i=t,p=a,b=oi(t,"tab"),d=g(""),y=g("");let m=null;Ee(d,T=>{m&&clearTimeout(m),m=setTimeout(()=>{y.value=T},250)});const w=P(()=>y.value.trim()?"all":b.value),{data:h,isLoading:I}=qo(w,y),E=g("all"),j=g(!1),{data:N,isFetching:x}=mi(y,E);Ee(y,()=>{j.value=!1});const U=P(()=>(y.value?.trim().length??0)>=2),_=P(()=>N.value?.messages??[]),S=P(()=>j.value?_.value:_.value.slice(0,Ca)),$=P(()=>b.value==="group"?"":y.value),{data:v,isFetching:R}=pi($),O=P(()=>b.value!=="group"&&(y.value?.trim().length??0)>=1),H=P(()=>h.value??[]),{userId:M}=oa(),q=Oa(),X=yi();Ee(M,T=>{T&&X.load(T)},{immediate:!0});const Y=P(()=>{const T=new Map;for(const z of i.v2Convs??[])z.conversationId&&T.set(z.conversationId.toLowerCase(),z);return T}),le=P(()=>{const T=new Map;for(const z of i.v2Convs??[])z.peerUserId&&T.set(z.peerUserId.toLowerCase(),z);return T});function oe(T){return(T.convType===0?le.value.get((T.peerUserId||"").toLowerCase()):Y.value.get((T.convKey||"").toLowerCase()))?.conversationId||""}function ne(T){return(T.convType===0?le.value.get((T.peerUserId||"").toLowerCase()):Y.value.get((T.convKey||"").toLowerCase()))?.mentionUnread??0}function K(T){return!!(T.convType===0?le.value.get((T.peerUserId||"").toLowerCase()):Y.value.get((T.convKey||"").toLowerCase()))?.archivedAt}function F(T){return T.unreadCount>0||X.isMarked(T.convKey)}const re=P(()=>H.value.filter(K)),ae=g(!1);Ee(y,()=>{ae.value=!1});const Te=g(!1),he=P(()=>Te.value?"unread":b.value);function ye(T){Te.value=T==="unread",b.value=T==="unread"?"all":T}const ot=P(()=>{const T=H.value.filter(z=>!K(z));return Te.value?T.filter(F):T}),we=zo();Ee(M,T=>{T&&we.load(T)},{immediate:!0});async function de(){if(!we.supported()){ve(u("chat.notify_unsupported"),!0);return}const T=await we.setEnabled(M.value||"",!we.enabled.value);if(!T&&we.permission.value==="denied"){ve(u("chat.notify_denied"),!0);return}ve(u(T?"chat.notify_on":"chat.notify_off"),!1)}const me=g(null);function $e(){vt(()=>me.value?.focus())}const Ie=Bt(()=>Dt(()=>import("./D4OHAbGf.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41]),import.meta.url)),be=g(!1);function Ue(){be.value=!0}const st=P(()=>H.value.filter(T=>T.convType===0&&T.peerUserId).slice(0,20).map(T=>({userId:T.peerUserId||"",nickname:T.title,avatar:T.avatar})));async function Pe(T){be.value=!1,await D.invalidateQueries({queryKey:["conversations"]}),p("refreshV2");const z=H.value.find(Be=>(Be.convKey||"").toLowerCase()===T.toLowerCase());z?p("select",z):ve(u("chat.ng_created_ok"),!1)}function mt(T){const z=M.value||"";return z?(q.get(z,q.key(z,T.convType,T.convKey))?.text||"").replace(/<[^>]*>/g,"").trim():""}const Ye=gi(),rt=hi(),pt=Bo(),Xe=zn(),D=La(),te=Vo(),G=g(null),Q=g(!1);function pe(T,z,Be="popup"){G.value={conv:T,x:z.clientX,y:z.clientY,mode:Be},Q.value=!0}let Se=null,Ae=!1;function Re(){Se&&(clearTimeout(Se),Se=null)}function xe(T,z){z.pointerType!=="mouse"&&(Re(),Se=setTimeout(()=>{Ae=!0,pe(T,z,"sheet")},500))}function et(T){if(Ae){Ae=!1;return}p("select",T)}const ze=P(()=>new Set((i.blockedPeerIds??[]).map(T=>(T||"").toLowerCase()))),Je=P(()=>{const T=G.value;if(!T)return[];const z=T.conv;return fl({isDm:z.convType===0,isGroup:z.convType===1,isPinned:z.isPinned,isMuted:z.isMuted,isArchived:K(z),hasUnread:F(z),peerUserId:z.peerUserId||""},{v2Actions:!!oe(z),blocked:ze.value.has((z.peerUserId||"").toLowerCase()),canLeave:z.convType===1&&!z.isDefault})}),Ke=g(""),ke=g(!1);let je=null;function ve(T,z){Ke.value=T,ke.value=z,je&&clearTimeout(je),je=setTimeout(()=>{Ke.value=""},6e3)}St(()=>{je&&clearTimeout(je),Re()});const it=g(null);async function Ft(T,z){const Be=oe(T);if(Be)try{await rt.mutateAsync({conversationId:Be,archived:z}),p("refreshV2"),ve(u(z?"chat.conv_archived_ok":"chat.conv_unarchived_ok"),!1)}catch(ut){ve(ce(ut,"chat.gerr.flags_failed"),!0)}}async function zt(){const T=it.value;if(it.value=null,!!T)try{No(T.convKey)?(await Xe.leaveNativeGroup(T.convKey),D.invalidateQueries({queryKey:["conversations"]}),p("refreshV2")):await pt.mutateAsync(T.convKey),ve(u("chat.conv_left_ok"),!1)}catch(z){ve(ce(z),!0)}}async function Kt(T){const z=G.value;if(!z)return;const Be=z.conv,ut=M.value||"",on=Be.convType===0?Be.peerUserId||"":Be.convKey;switch(T){case"pin":case"unpin":await Qt("pinned");return;case"mute":case"unmute":await Qt("muted");return;case"mark_read":G.value=null,X.unmark(ut,Be.convKey),on&&te.mutate({type:Be.convType===0?"dm":"group",key:on});return;case"mark_unread":G.value=null,X.mark(ut,Be.convKey);return;case"archive":G.value=null,await Ft(Be,!0);return;case"unarchive":G.value=null,await Ft(Be,!1);return;case"leave":G.value=null,it.value=Be;return;case"block":G.value=null,p("block",Be.peerUserId||"",!0);return;case"unblock":G.value=null,p("block",Be.peerUserId||"",!1);return}}async function Qt(T){const z=G.value;if(!z)return;G.value=null;const Be={type:z.conv.convType===0?"dm":"group",key:z.conv.convType===0?z.conv.peerUserId||"":z.conv.convKey,...T==="pinned"?{pinned:!z.conv.isPinned}:{muted:!z.conv.isMuted}
2};if(Be.key)try{await Ye.mutateAsync(Be)}catch(ut){Z(ut)}}const gt=g("");let B=null;function Z(T){gt.value=ce(T,"chat.gerr.flags_failed"),B&&clearTimeout(B),B=setTimeout(()=>{gt.value=""},6e3)}St(()=>{B&&clearTimeout(B)}),Ee(y,()=>{G.value=null,Q.value=!1});const Fe=P(()=>(y.value?.trim().length??0)>=2),{data:ie,isFetching:We,error:De}=Ci(y,Fe),lt=P(()=>(ie.value?.items??[]).filter(T=>!T.isJoined)),tt=$i(),ce=Pa(),wt=g(""),At=g(""),kt=g(""),Ct=g(""),Vt=g(!1);Ee(y,()=>{Ct.value="",At.value="",kt.value=""});async function ue(T){if(!wt.value){if(T.requiresApproval&&At.value!==T.groupId){At.value=T.groupId,kt.value="",Ct.value="";return}wt.value=T.groupId,Ct.value="";try{const z=At.value===T.groupId?kt.value:"",Be=await tt.mutateAsync({groupId:T.groupId,note:z});At.value===T.groupId&&(At.value="",kt.value=""),Vt.value=!1,Ct.value=Be.pendingApproval?u("chat.join_submitted"):u("chat.join_ok")}catch(z){Vt.value=!0,Ct.value=ce(z)}finally{wt.value=""}}}const{data:Rt,isFetching:ht}=Lo({queryKey:["chat-native-group-discover",y],queryFn:async()=>await Xe.discoverNativeGroups(y.value.trim(),20),enabled:P(()=>Fe.value),retry:!1,staleTime:15e3}),jt=P(()=>new Set(H.value.map(T=>(T.convKey||"").toLowerCase()))),Ze=P(()=>(Rt.value?.items??[]).filter(T=>!jt.value.has((T.conversationId||"").toLowerCase()))),Ot=g("");async function ct(T){if(!Ot.value){Ot.value=T.conversationId,Ct.value="";try{const z=await Xe.joinNativeGroup(T.conversationId);Vt.value=!1,Ct.value=z.pendingApproval?u("chat.join_submitted"):u("chat.join_ok"),z.joined&&(D.invalidateQueries({queryKey:["conversations"]}),p("refreshV2"))}catch(z){Vt.value=!0,Ct.value=ce(z)}finally{Ot.value=""}}}const Mt=P(()=>(y.value?.trim().length??0)>0),Qe=P(()=>I.value||x.value||We.value||R.value||ht.value),Et=P(()=>H.value.length>0||O.value&&(v.value?.length??0)>0||lt.value.length>0||Ze.value.length>0||_.value.length>0||!!De.value);function vn(T){const z=(T||"").replace(/<[^>]*>/g,"").trim();return z.length>60?z.slice(0,60)+"…":z}const{parse:$t,hm:xt,md:an,weekday:Ht}=ia();function Xt(T){const z=$t(T);if(!z)return"";const Be=new Date;return z.toDateString()===Be.toDateString()?xt(z):Math.floor((Be.getTime()-z.getTime())/864e5)<7?Ht(z):an(z)}return s({refreshTab:()=>b.value}),(T,z)=>{const Be=fi,ut=Uo,on=Da;return o(),l("div",ml,[n("div",pl,[n("h2",gl,r(T.$t("common.nav_messages")),1)]),n("div",hl,[n("button",{type:"button",class:Ce(["wc-conv__tab",{"wc-conv__tab--active":e(he)==="all"}]),"aria-pressed":e(he)==="all",onClick:z[0]||(z[0]=se=>ye("all"))},r(T.$t("common.tab_all_chats")),11,yl),n("button",{type:"button",class:Ce(["wc-conv__tab",{"wc-conv__tab--active":e(he)==="unread"}]),"aria-pressed":e(he)==="unread",onClick:z[1]||(z[1]=se=>ye("unread"))},r(T.$t("chat.tab_unread")),11,_l),n("button",{type:"button",class:Ce(["wc-conv__tab",{"wc-conv__tab--active":e(he)==="dm"}]),"aria-pressed":e(he)==="dm",onClick:z[2]||(z[2]=se=>ye("dm"))},r(T.$t("common.tab_dm")),11,bl),n("button",{type:"button",class:Ce(["wc-conv__tab",{"wc-conv__tab--active":e(he)==="group"}]),"aria-pressed":e(he)==="group",onClick:z[3]||(z[3]=se=>ye("group"))},r(T.$t("common.tab_group")),11,wl)]),n("div",kl,[n("div",Cl,[z[11]||(z[11]=n("i",{class:"fa-solid fa-magnifying-glass"},null,-1)),Ne(n("input",{ref_key:"searchInputRef",ref:me,"onUpdate:modelValue":z[4]||(z[4]=se=>ft(d)?d.value=se:null),type:"search",enterkeyhint:"search",autocomplete:"off","aria-label":b.value==="dm"?T.$t("chat.search_dm_placeholder"):b.value==="group"?T.$t("chat.search_group_placeholder"):T.$t("chat.search_all_placeholder"),placeholder:b.value==="dm"?T.$t("chat.search_dm_placeholder"):b.value==="group"?T.$t("chat.search_group_placeholder"):T.$t("chat.search_all_placeholder")},null,8,$l),[[dt,e(d)]])]),n("button",{type:"button",class:Ce(["wc-conv__bell",{"is-off":!e(we).enabled.value}]),title:T.$t("chat.notify_toggle"),"aria-label":T.$t("chat.notify_toggle"),"aria-pressed":e(we).enabled.value,onClick:de},[n("i",{class:Ce(e(we).enabled.value?"fa-solid fa-bell":"fa-solid fa-bell-slash")},null,2)],10,Il),n("button",{type:"button",class:"wc-conv__bell",title:T.$t("chat.ng_title"),"aria-label":T.$t("chat.ng_title"),onClick:Ue},[...z[12]||(z[12]=[n("i",{class:"fa-solid fa-user-plus"},null,-1)])],8,Ml)]),n("div",{class:"wc-conv__list",onScrollPassive:Re},[e(gt)?(o(),l("div",Tl,r(e(gt)),1)):C("",!0),e(Ke)?(o(),l("div",{key:1,class:Ce(["wc-conv__joinmsg",{"is-error":e(ke)}])},r(e(Ke)),3)):C("",!0),e(it)?(o(),l("div",Sl,[n("span",null,r(T.$t("chat.conv_leave_confirm",{name:e(it).title})),1),n("div",Al,[n("button",{type:"button",onClick:z[5]||(z[5]=se=>it.value=null)},r(T.$t("common.cancel")),1),n("button",{type:"button",class:"is-danger",onClick:zt},r(T.$t("chat.conv_leave")),1)])])):C("",!0),e(O)&&(e(v)?.length??0)>0?(o(),l(fe,{key:3},[n("div",Rl,[z[13]||(z[13]=n("i",{class:"fa-regular fa-paper-plane"},null,-1)),_e(" "+r(T.$t("chat.find_people_hint")),1)]),(o(!0),l(fe,null,Ve(e(v),se=>(o(),l("div",{key:"u"+se.userId,class:"wc-conv__item",onClick:A=>p("startDm",se)},[n("div",Ll,[n("img",{src:("cfImage"in T?T.cfImage:e(Pt))(se.logoUrl,96),alt:se.nickname,onError:A=>("onAvatarError"in T?T.onAvatarError:e(sn))(A,se.nickname)},null,40,Ul)]),n("div",Pl,[n("div",Dl,[n("span",Ol,r(se.nickname),1)]),n("div",ql,[n("span",Vl,[z[14]||(z[14]=n("i",{class:"fa-regular fa-paper-plane"},null,-1)),_e(" "+r(T.$t("chat.start_dm")),1)])])])],8,El))),128))],64)):C("",!0),e(I)?(o(),l("div",Bl,[It(Be,{inline:"",size:"sm"})])):(o(),l(fe,{key:5},[e(Mt)&&e(ot).length>0?(o(),l("div",Nl,r(T.$t("chat.sec_conversations")),1)):C("",!0),(o(!0),l(fe,null,Ve(e(ot),se=>(o(),l("div",{key:se.convKey,class:Ce(["wc-conv__item",{"wc-conv__item--active":se.convKey.toLowerCase()===i.activeConvKey.toLowerCase(),"wc-conv__item--muted":se.isMuted}
2]),onClick:A=>et(se),onContextmenu:Ut(A=>pe(se,A),["prevent"]),onPointerdown:A=>xe(se,A),onPointerup:Re,onPointercancel:Re},[n("div",Kl,[n("img",{src:("cfImage"in T?T.cfImage:e(Pt))(se.avatar,96),alt:se.title,onError:A=>("onAvatarError"in T?T.onAvatarError:e(sn))(A,se.title)},null,40,jl),se.convType===0&&se.isOnline?(o(),l("span",{key:0,class:"wc-conv__online",title:T.$t("common.online")},null,8,xl)):C("",!0)]),n("div",Hl,[n("div",Gl,[se.isPinned?(o(),l("i",{key:0,class:"fa-solid fa-thumbtack wc-conv__pinned",title:T.$t("chat.conv_pinned")},null,8,zl)):C("",!0),n("span",Ql,r(se.title),1),se.convType===3?(o(),l("span",Xl,r(T.$t("chat.broadcast_tag")),1)):C("",!0),n("span",Wl,r(Xt(se.lastActivity)),1)]),n("div",Jl,[n("span",Yl,[mt(se)?(o(),l("span",Zl,r(T.$t("chat.draft_prefix")),1)):C("",!0),_e(" "+r(mt(se)||se.lastMsgPreview||(se.isChatGPT?T.$t("chat.ai_assistant"):"")),1)]),ne(se)>0?(o(),l("i",{key:0,class:"fa-solid fa-at wc-conv__at",title:T.$t("chat.mention.badge"),"aria-label":T.$t("chat.mention.badge")},null,8,er)):C("",!0),se.unreadCount>0?(o(),l("span",tr,r(se.unreadCount>99?"99+":se.unreadCount),1)):se.isMuted?(o(),l("i",nr)):C("",!0)])]),n("button",{type:"button",class:"wc-conv__rowmenu",title:T.$t("common.more"),"aria-label":T.$t("common.more"),onClick:Ut(A=>pe(se,A),["stop"])},[...z[15]||(z[15]=[n("i",{class:"fa-solid fa-ellipsis"},null,-1)])],8,ar)],42,Fl))),128)),!e(Mt)&&e(ot).length===0?(o(),l("div",or,[b.value==="dm"?(o(),l(fe,{key:0},[It(ut,{scene:"empty-chat",height:64,class:"wc-conv__empty-art"}),n("p",null,r(T.$t("chat.empty_dm")),1),n("p",sr,r(T.$t("chat.empty_dm_hint")),1),n("button",{type:"button",class:"wc-conv__cta",onClick:$e},r(T.$t("chat.empty_cta_dm")),1)],64)):(o(),l(fe,{key:1},[n("p",null,r(T.$t("chat.empty_group")),1),n("button",{type:"button",class:"wc-conv__cta",onClick:$e},r(T.$t("chat.empty_cta_group")),1),n("button",{type:"button",class:"wc-conv__cta wc-conv__cta--ghost",onClick:Ue},r(T.$t("chat.empty_cta_new_group")),1)],64))])):C("",!0),e(re).length>0?(o(),l("button",{key:2,type:"button",class:"wc-conv__arch","aria-expanded":e(ae),onClick:z[6]||(z[6]=se=>ae.value=!e(ae))},[z[16]||(z[16]=n("i",{class:"fa-solid fa-box-archive"},null,-1)),n("span",null,r(T.$t("chat.conv_archived_entry",{n:e(re).length})),1),n("i",{class:Ce(e(ae)?"fa-solid fa-chevron-up":"fa-solid fa-chevron-down")},null,2)],8,ir)):C("",!0),(o(!0),l(fe,null,Ve(e(ae)?e(re):[],se=>(o(),l("div",{key:"arch"+se.convKey,class:Ce(["wc-conv__item wc-conv__item--arch",{"wc-conv__item--active":se.convKey.toLowerCase()===i.activeConvKey.toLowerCase()}]),onClick:A=>et(se),onContextmenu:Ut(A=>pe(se,A),["prevent"]),onPointerdown:A=>xe(se,A),onPointerup:Re,onPointercancel:Re},[n("div",rr,[n("img",{src:("cfImage"in T?T.cfImage:e(Pt))(se.avatar,96),alt:se.title,onError:A=>("onAvatarError"in T?T.onAvatarError:e(sn))(A,se.title)},null,40,cr)]),n("div",ur,[n("div",dr,[n("span",vr,r(se.title),1),n("span",fr,r(Xt(se.lastActivity)),1)]),n("div",mr,[n("span",pr,r(se.lastMsgPreview),1),se.unreadCount>0?(o(),l("span",gr,r(se.unreadCount>99?"99+":se.unreadCount),1)):C("",!0)])]),n("button",{type:"button",class:"wc-conv__rowmenu",title:T.$t("common.more"),"aria-label":T.$t("common.more"),onClick:Ut(A=>pe(se,A),["stop"])},[...z[17]||(z[17]=[n("i",{class:"fa-solid fa-ellipsis"},null,-1)])],8,hr)],42,lr))),128))],64)),e(Fe)&&e(De)&&!e(We)?(o(),l(fe,{key:6},[n("div",yr,[z[18]||(z[18]=n("i",{class:"fa-solid fa-earth-asia"},null,-1)),_e(" "+r(T.$t("chat.sec_public_groups")),1)]),n("div",_r,[z[19]||(z[19]=n("i",{class:"fa-solid fa-triangle-exclamation"},null,-1)),_e(" "+r(e(ce)(e(De),"chat.gerr.search_unavailable")),1)])],64)):C("",!0),e(Fe)&&e(lt).length>0?(o(),l(fe,{key:7},[n("div",br,[z[20]||(z[20]=n("i",{class:"fa-solid fa-earth-asia"},null,-1)),_e(" "+r(T.$t("chat.sec_public_groups"))+" ",1),e(We)?(o(),l("i",wr)):C("",!0)]),(o(!0),l(fe,null,Ve(e(lt),se=>(o(),l("div",{key:"g"+se.groupId,class:"wc-conv__gwrap"},[n("div",kr,[n("div",Cr,[n("img",{src:("cfImage"in T?T.cfImage:e(Pt))(se.logoUrl,96),alt:se.name,onError:A=>("onAvatarError"in T?T.onAvatarError:e(sn))(A,se.name)}
2,null,40,$r)]),n("div",Ir,[n("div",Mr,[n("span",Tr,r(se.name),1)]),n("div",Sr,[n("span",Ar,r(se.description||T.$t("chat.member_count",{n:se.memberCount})),1)])]),n("button",{class:"wc-conv__join",disabled:se.isPending||e(wt)===se.groupId,onClick:Ut(A=>ue(se),["stop"])},r(se.isPending?T.$t("chat.join_pending"):e(wt)===se.groupId?T.$t("chat.joining"):T.$t("chat.join")),9,Rr)]),e(At)===se.groupId?(o(),l("div",Er,[n("label",null,r(T.$t("chat.join_note_label")),1),Ne(n("textarea",{"onUpdate:modelValue":z[7]||(z[7]=A=>ft(kt)?kt.value=A:null),rows:"2",maxlength:"500",placeholder:T.$t("chat.join_note_placeholder")},null,8,Lr),[[dt,e(kt)]]),n("button",{class:"wc-conv__join",disabled:e(wt)===se.groupId,onClick:Ut(A=>ue(se),["stop"])},r(e(wt)===se.groupId?T.$t("chat.joining"):T.$t("chat.join")),9,Ur)])):C("",!0)]))),128))],64)):C("",!0),e(Fe)&&e(Ze).length>0?(o(),l(fe,{key:8},[n("div",Pr,[z[21]||(z[21]=n("i",{class:"fa-solid fa-user-group"},null,-1)),_e(" "+r(T.$t("chat.sec_native_groups"))+" ",1),e(ht)?(o(),l("i",Dr)):C("",!0)]),(o(!0),l(fe,null,Ve(e(Ze),se=>(o(),l("div",{key:"n"+se.conversationId,class:"wc-conv__gwrap"},[n("div",Or,[n("div",qr,[n("img",{src:("cfImage"in T?T.cfImage:e(Pt))(se.avatarUrl,96),alt:se.title,onError:A=>("onAvatarError"in T?T.onAvatarError:e(sn))(A,se.title)},null,40,Vr)]),n("div",Br,[n("div",Nr,[n("span",Fr,r(se.title),1)]),n("div",Kr,[n("span",jr,r(T.$t("chat.member_count",{n:se.memberCount})),1)])]),n("button",{class:"wc-conv__join",disabled:e(Ot)===se.conversationId,onClick:Ut(A=>ct(se),["stop"])},r(e(Ot)===se.conversationId?T.$t("chat.joining"):T.$t("chat.join")),9,xr)])]))),128))],64)):C("",!0),e(Ct)?(o(),l("div",{key:9,class:Ce(["wc-conv__joinmsg",{"is-error":e(Vt)}])},r(e(Ct)),3)):C("",!0),e(U)&&(e(_).length>0||e(x))?(o(),l(fe,{key:10},[n("div",Hr,[_e(r(T.$t("chat.message_history")),1),e(x)?(o(),l("i",Gr)):C("",!0)]),(o(!0),l(fe,null,Ve(e(S),se=>(o(),l("div",{key:"s"+se.msgId,class:"wc-conv__item wc-conv__item--msg",onClick:A=>p("openMessage",se)},[n("div",Qr,[n("img",{src:("cfImage"in T?T.cfImage:e(Pt))(se.userLogo,96),alt:se.userNickname,onError:A=>("onAvatarError"in T?T.onAvatarError:e(sn))(A,se.userNickname)},null,40,Xr)]),n("div",Wr,[n("div",Jr,[n("span",Yr,r(se.userNickname),1)]),n("div",Zr,[n("span",ec,r(vn(se.content)),1)])])],8,zr))),128)),!e(j)&&e(_).length>Ca?(o(),l("button",{key:0,class:"wc-conv__more",onClick:z[8]||(z[8]=se=>j.value=!0)},r(T.$t("chat.show_more_messages",{n:e(_).length-Ca})),1)):C("",!0)],64)):C("",!0),e(Mt)&&!e(Qe)&&!e(Et)?(o(),l("div",tc,[It(ut,{scene:"empty-search",height:64,class:"wc-conv__empty-art"}),n("p",null,r(T.$t("chat.search_no_results",{q:e(y).trim()})),1),n("p",nc,r(T.$t("chat.discover_hint_owner")),1),n("button",{type:"button",class:"wc-conv__cta",onClick:Ue},r(T.$t("chat.empty_cta_new_group")),1)])):C("",!0)],32),e(Q)&&e(G)?(o(),Oe(on,{key:0,items:e(Je),mode:e(G).mode,x:e(G).x,y:e(G).y,onClose:z[9]||(z[9]=se=>Q.value=!1),onPick:Kt},null,8,["items","mode","x","y"])):C("",!0),e(be)?(o(),Oe(e(Ie),{key:1,"user-id":e(M)||"","recent-peers":e(st),onClose:z[10]||(z[10]=se=>be.value=!1),onCreated:Pe},null,8,["user-id","recent-peers"])):C("",!0)])}}}),oc=bt(ac,[["__scopeId","data-v-11239bef"]]),sc=["title","aria-label","aria-expanded"],ic=_t({__name:"ChatHeadActionsMenu",setup(t){const{t:s}=Nt(),a=g(null),u=g(null),i=g(0),p=g(!1);let b=null;function d(){i.value=u.value?.querySelectorAll("button").length??0,i.value<2&&(p.value=!1)}function y(w){a.value?.contains(w.target)||(p.value=!1)}function m(w){w.target?.closest("button")&&(p.value=!1)}return Ee(p,w=>{w?document.addEventListener("pointerdown",y,!0):document.removeEventListener("pointerdown",y,!0)}),nn(()=>
2{d(),u.value&&(b=new MutationObserver(d),b.observe(u.value,{childList:!0,subtree:!0}))}),St(()=>{b?.disconnect(),document.removeEventListener("pointerdown",y,!0)}),(w,h)=>(o(),l("div",{ref_key:"rootEl",ref:a,class:Ce(["wc-head-more",{"is-collapsible":e(i)>=2,"is-open":e(p)}]),onKeydown:h[1]||(h[1]=In(I=>p.value=!1,["esc"]))},[e(i)>=2?(o(),l("button",{key:0,type:"button",class:"wc-head-more__toggle",title:e(s)("chat.actions_more"),"aria-label":e(s)("chat.actions_more"),"aria-haspopup":"true","aria-expanded":e(p),onClick:h[0]||(h[0]=I=>p.value=!e(p))},[...h[2]||(h[2]=[n("i",{class:"fa-solid fa-ellipsis","aria-hidden":"true"},null,-1)])],8,sc)):C("",!0),n("div",{ref_key:"panelEl",ref:u,class:"wc-head-more__panel",onClick:m},[h[3]||(h[3]=n("span",{id:"wc-chat-head-actions",class:"wc-head-more__slot"},null,-1)),Eo(w.$slots,"default",{},void 0,!0)],512)],34))}}),lc=bt(ic,[["__scopeId","data-v-5e682d56"]]),rc=1,cc=2,uc=4,dc=8,vc=16,fc=32,mc={key:0,class:"wc-gset"},pc=["aria-label"],gc={class:"wc-gset__panel",role:"dialog","aria-modal":"true"},hc={class:"wc-gset__head"},yc={class:"wc-gset__title"},_c=["disabled"],bc={class:"wc-gset__tabs"},wc={class:"wc-gset__badge"},kc={class:"wc-gset__body"},Cc={key:0,class:"wc-gset__error"},$c={key:1,class:"wc-gset__notice"},Ic={class:"wc-gset__logo-row"},Mc={class:"wc-gset__logo"},Tc=["src","alt"],Sc=["disabled","title"],Ac={class:"wc-gset__field"},Rc=["disabled"],Ec={class:"wc-gset__field"},Lc=["disabled"],Uc={key:0,class:"wc-gset__foot wc-gset__foot--inline"},Pc=["disabled"],Dc={key:0,class:"fa-solid fa-spinner fa-spin"},Oc={key:1,class:"wc-gset__foot wc-gset__foot--inline"},qc=["disabled"],Vc={key:0,class:"fa-solid fa-spinner fa-spin"},Bc={class:"wc-gset__member-toolbar"},Nc={class:"wc-gset__search"},Fc=["placeholder"],Kc={key:0,class:"wc-gset__add-row"},jc=["placeholder"],xc=["disabled"],Hc={key:1,class:"wc-gset__loading"},Gc={key:2,class:"wc-gset__empty-list"},zc={key:3,class:"wc-gset__members"},Qc=["href","target"],Xc=["src","alt"],Wc={class:"wc-gset__member-text"},Jc={class:"wc-gset__member-name"},Yc=["title"],Zc={key:1,class:"wc-gset__muted-tag"},eu={key:0,class:"wc-gset__member-sub"},tu={key:0,class:"wc-gset__member-actions"},nu=["disabled","onClick"],au=["disabled","onClick"],ou=["disabled","onClick"],su=["onClick"],iu={key:4,class:"wc-gset__more"},lu=["disabled"],ru={key:0,class:"fa-solid fa-spinner fa-spin"},cu={key:0,class:"wc-gset__empty-list"},uu={key:1,class:"wc-gset__members"},du=["href","target"],vu={class:"wc-gset__member-avatar"},fu=["src","alt"],mu={class:"wc-gset__member-text"},pu={class:"wc-gset__member-name"},gu={key:0,class:"wc-gset__member-sub"},hu={key:1,class:"wc-gset__member-note"},yu={class:"wc-gset__member-actions"},_u=["disabled","onClick"],bu=["disabled","onClick"],wu={key:2,class:"wc-gset__more"},ku=["disabled"],Cu={key:0,class:"fa-solid fa-spinner fa-spin"},$u={class:"wc-gsetv2__block"},Iu={class:"wc-gsetv2__title"},Mu={class:"wc-gsetv2__hint"},Tu={class:"wc-gsetv2__row"},Su={class:"wc-gsetv2__check"},Au=["disabled"],Ru={class:"wc-gsetv2__list"},Eu={class:"wc-gsetv2__url"},Lu={class:"wc-gsetv2__meta"},Uu=["onClick"],Pu=["onClick"],Du={key:0,class:"wc-gsetv2__empty"},Ou={class:"wc-gsetv2__block"},qu={class:"wc-gsetv2__title"},Vu={class:"wc-gsetv2__hint"},Bu={class:"wc-gsetv2__row"},Nu={class:"wc-gsetv2__check"},Fu=["checked"],Ku=["disabled"],ju={class:"wc-gsetv2__block"},xu={class:"wc-gsetv2__title"},Hu={class:"wc-gsetv2__row"},Gu=["placeholder"],zu={value:null},Qu={value:0},Xu={value:1},Wu={value:2},Ju={key:0,class:"wc-gsetv2__hint",role:"alert"},Yu={class:"wc-gsetv2__list"},Zu=["onClick"],ed={key:0,class:"wc-gsetv2__empty"},td={key:1,class:"wc-gsetv2__row"},nd=["disabled"],ad={key:0,class:"wc-gsetv2__block"},od={class:"wc-gsetv2__title"},sd={key:0,class:"wc-gsetv2__hint",role:"status"},id={class:"wc-gsetv2__row"},ld=["disabled"],rd={value:0},cd={value:1},ud=["disabled","checked","onChange"],dd={class:"wc-gsetv2__row"},vd=["disabled"],fd={key:1,class:"wc-gsetv2__hint"},md={class:"wc-gset__discover"},pd={class:"wc-gset__toggle"},gd={class:"wc-gset__toggle-text"},hd={key:0,class:"wc-gset__warn",role:"status"},yd=["disabled"],_d={key:0,class:"fa-solid fa-spinner fa-spin"},bd=["disabled"],wd={key:0,class:"fa-solid fa-spinner fa-spin"},kd={key:1,class:"wc-gset__fixerr",role:"alert"},Cd={key:1,class:"wc-gset__subnote"},$d={class:"wc-gset__discover"},Id={class:"wc-gset__toggle"},Md={class:"wc-gset__toggle-text"},Td={key:0,class:"wc-gset__subnote",role:"status"},Sd={key:1,class:"wc-gset__warn",role:"status"},Ad=["disabled"],Rd={key:0,class:"fa-solid fa-spinner fa-spin"},Ed={key:0,class:"wc-gset__fixerr",role:"alert"},Ld={key:2,class:"wc-gset__subnote",role:"status"},Ud=["disabled"],Pd={key:0,class:"fa-solid fa-spinner fa-spin"},Dd={key:0,class:"wc-gset__bcok"}
2,Od={key:1,class:"wc-gset__fixerr",role:"alert"},qd={class:"wc-gset__toggle"},Vd={class:"wc-gset__toggle-text"},Bd={class:"wc-gset__toggle"},Nd={class:"wc-gset__toggle-text"},Fd={class:"wc-gset__toggle"},Kd={class:"wc-gset__toggle-text"},jd={class:"wc-gset__toggle"},xd={class:"wc-gset__toggle-text"},Hd={class:"wc-gset__toggle"},Gd={class:"wc-gset__toggle-text"},zd={class:"wc-gset__field"},Qd=["placeholder"],Xd={class:"wc-gset__foot wc-gset__foot--inline"},Wd=["disabled"],Jd={key:0,class:"fa-solid fa-spinner fa-spin"},Yd=_t({__name:"ChatGroupSettingsDialog",props:{open:{type:Boolean},groupId:{},detail:{},initialTab:{},v2Settings:{}},emits:["update:open","left"],setup(t,{emit:s}){const{t:a,te:u}=Nt(),i=Ni("channel.ch_err_","chat.gset_action_failed"),p=oa(),b=P(()=>p.userId.value||""),d=t,y=s,m=P(()=>!!d.detail?.canManage&&!d.detail?.isChatGPT),w=P(()=>!!d.detail?.totalMemberOnlyAdmin&&!m.value),h=Bo(),I=P(()=>h.isPending.value),E=Pa(),j=P(()=>{const k=d.detail,V=b.value.trim().toLowerCase();return!!k&&k.groupId===d.groupId&&!!V&&k.isMember&&!k.isChatGPT&&k.ownerId.trim().toLowerCase()!==V}),N=g(null),x=g(""),U=g(!1);let _=null;function S(k=!1){U.value=!1,_?.(k),_=null}async function $(k){if(!N.value||!d.open)return ke.value=a("chat.gset_action_failed"),!1;S();const V=d.groupId,He=b.value;return x.value=k,U.value=!0,await new Promise(cn=>{_=cn})&&d.open&&V===d.groupId&&He===b.value}Ee([()=>d.open,()=>d.groupId,b],()=>S(),{flush:"sync"}),St(()=>S()),tn(U,()=>S());async function v(){if(!(I.value||!j.value)&&await $(a("chat.leave_confirm"))){ke.value="",je.value="";try{await h.mutateAsync(d.groupId),y("update:open",!1),y("left")}catch(k){ke.value=E(k)}}}const R=zn(),O=P(()=>R.chatV2ActionsEnabled.value&&m.value),H=g([]),M=g(!1),q=g(null),X=g(168),Y=g(!1),le=g("");async function oe(){if(!O.value||!d.groupId){H.value=[];return}const k=await R.listInvites(d.groupId);!k||k.conversationId.toLowerCase()!==d.groupId.toLowerCase()||(H.value=k.invites||[])}async function ne(){if(!M.value){M.value=!0,ke.value="";try{const k=await R.createInvite(d.groupId,{maxUses:q.value,expiresInHours:X.value,requiresApproval:Y.value});k&&(H.value=[k,...H.value])}catch(k){ke.value=E(k)}finally{M.value=!1}}}async function K(k){if(await $(a("chat.invite_revoke_confirm")))try{await R.revokeInvite(k),H.value=H.value.filter(V=>V.inviteCode!==k)}catch(V){ke.value=E(V)}}async function F(k){try{await navigator.clipboard.writeText(k),le.value=k,setTimeout(()=>{le.value=""},1800)}catch{ke.value=a("common.copy_failed")}}const re=g(null),ae=g(null),Te=g(""),he=g(null);Ee(()=>d.open,k=>{k||(Te.value="",re.value=null,ae.value=null,he.value=null)}),Ee([()=>d.open,()=>d.v2Settings,()=>d.groupId],([k])=>{!k||!d.v2Settings||!d.groupId||Te.value!==d.groupId&&(Te.value=d.groupId,re.value=d.v2Settings.slowModeSec,ae.value=d.v2Settings.joinApproval,he.value={slowModeSec:d.v2Settings.slowModeSec,joinApproval:d.v2Settings.joinApproval})},{immediate:!0});const ye=g(!1);async function ot(){if(ye.value)return;const k=he.value,V=re.value!==null&&re.value!==k?.slowModeSec?re.value:null,He=ae.value!==null&&ae.value!==k?.joinApproval?ae.value:null;if(!(V===null&&He===null)){ye.value=!0,ke.value="";try{const nt=await R.setConversationSettings(d.groupId,{slowModeSec:V,joinApproval:He});nt&&(re.value=nt.slowModeSec,ae.value=nt.joinApproval,he.value={slowModeSec:nt.slowModeSec,joinApproval:nt.joinApproval}),je.value=a("chat.gset_saved")}catch(nt){ke.value=E(nt)}finally{ye.value=!1}}}const we=g(""),de=g(0),me=g(0),$e=g(!1),Ie=P(()=>[{bit:rc,label:a("chat.perm_delete_others")},{bit:cc,label:a("chat.perm_mute_member")},{bit:uc,label:a("chat.perm_invite_member")},{bit:dc,label:a("chat.perm_pin_message")},{bit:vc,label:a("chat.perm_edit_profile")},{bit:fc,label:a("chat.perm_approve_join")}]),be=g({}),Ue=g(!1);async function st(){if(Ue.value=!1,!O.value||!d.groupId){be.value={};return}const k={};let V="";for(let He=0;He<50;He++){const nt=await R.listMembers(d.groupId,200,V);if(!nt||nt.conversationId.toLowerCase()!==d.groupId.toLowerCase()){be.value=k;return}for(const cn of nt.members||[])k[cn.userId.toLowerCase()]={role:cn.role,permissions:cn.permissions};if(V=nt.nextCursor||"",!V){be.value=k,Ue.value=!0;return}}be.value=k}const Pe=g("info"),mt=g(""),Ye=g("");let rt=null;Ee(mt,k=>{rt&&clearTimeout(rt),rt=setTimeout(()=>{Ye.value=k},300)});const pt=g(null),Xe=g([]),D=g(""),te=g(!1),G=g("");let Q=0;async function pe(k=!1){if(!O.value||!d.groupId){Xe.value=[],D.value="";return}const V=++Q,He=d.groupId;te.value=!0,G.value="";try{const nt=await R.listMembers(He,50,k?D.value:"",{q:Ye.value,role:pt.value});if(V!==Q||He.toLowerCase()!==d.groupId.toLowerCase())return;if(!nt){G.value=a("chat.perm_search_failed");return}Xe.value=k?[...Xe.value,...nt.members||[]]:nt.members||[],D.value=nt.nextCursor||""}finally{V===Q&&(te.value=!1)}}Ee([()=>d.open,()=>Pe.value,()=>d.groupId,Ye,pt],([k,V])=>{!k||V!=="v2manage"||pe(!1)});const Se=P(()=>Ue.value&&!!be.value[we.value.toLowerCase()]);function Ae(k){we.value=k.userId;const V=be.value[k.userId.toLowerCase()];de.value=V?.role??0,me.value=V?.permissions??0}function Re(k){me.value=(me.value&k)===k?me.value&~k:me.value|k}function xe(k){return O.value&&!k.isOwner&&k.userId.toLowerCase()!==b.value.toLowerCase()}
2async function et(){if(!($e.value||!we.value)&&!(!Ue.value||!Se.value)){$e.value=!0,ke.value="";try{await R.setMemberRole(d.groupId,we.value,de.value,me.value),be.value={...be.value,[we.value.toLowerCase()]:{role:de.value,permissions:me.value}},we.value="",je.value=a("chat.gset_saved")}catch(k){ke.value=E(k)}finally{$e.value=!1}}}const ze=g(!1),Je=Ii(),Ke=P(()=>Je.isPending.value),ke=g(""),je=g(""),ve=Ua({name:"",description:"",muteAll:!1,shadowChat:!1,publicPlaintextChat:!1,totalMemberOnlyAdmin:!1,pushAllMsg:!1,banKeywords:"",logoUrl:"",discoverable:!1,broadcastContent:!1}),it=g(""),Ft=P(()=>{const k=d.detail;if(!k||k.groupId!==d.groupId)return"";const V=(k.discoverBlockedReason||"").trim();if(!V)return"";const He=`chat.gset_discover_blocked_${V}`;return u(He)?a(He):a("chat.gset_discover_blocked_generic")}),zt=g("");Ee(()=>d.open,k=>{k||(zt.value="")});const Kt=La();Ee(()=>d.open,k=>{k&&Kt.invalidateQueries({queryKey:["chat-group-detail"]})});const Qt=P(()=>{const k=d.detail;return!k||k.groupId!==d.groupId?!1:k.discoverBlockedReason==="channel_private"}),gt=g(!1),B=g(""),Z=()=>bn().public.apiBase||void 0;async function Fe(){if(gt.value||!await $(a("chat.gset_discover_fix_confirm")))return;const k=d.groupId;gt.value=!0,B.value="";try{await $fetch(`/api/app/channels/${k}`,{method:"PUT",baseURL:Z(),credentials:"include",headers:Pn(),body:{private:!1}}),await Kt.invalidateQueries({queryKey:["chat-group-detail"]})}catch{d.groupId===k&&(B.value=a("chat.gset_discover_fix_failed"))}finally{gt.value=!1}}const ie=g(!1);async function We(){if(!ie.value){ie.value=!0;try{await Kt.invalidateQueries({queryKey:["chat-group-detail"]})}finally{ie.value=!1}}}const De=P(()=>{const k=d.detail;return!k||k.groupId!==d.groupId?"unknown":k.broadcastEnabled!==!0?"disabled":k.broadcastReady===!0?"ready":k.broadcastReady===!1?"missing":"unknown"}),lt=g(!1),tt=g(""),ce=g("");function wt(k){return(k?.data??k?.response?._data)?.error==="plan_upgrade_required"?a("chat.gset_bc_plan_required"):E(k)}async function At(){if(lt.value||!await $(a("chat.gset_bc_create_confirm")))return;const k=d.groupId;lt.value=!0,tt.value="",ce.value="";try{const He=(await R.createBroadcastConversation(k))?.conversationId||"";if(He){const nt=await R.syncBroadcastMembers(He);d.groupId===k&&nt&&(ce.value=a("chat.gset_bc_synced",{n:nt.active}))}await Kt.invalidateQueries({queryKey:["chat-group-detail"]})}catch(V){d.groupId===k&&(tt.value=wt(V)),await Kt.invalidateQueries({queryKey:["chat-group-detail"]})}finally{lt.value=!1}}async function kt(){if(lt.value)return;const k=d.groupId;lt.value=!0,tt.value="",ce.value="";try{const V=(d.detail?.broadcastConversationId||"").trim();if(!V){tt.value=a("chat.gset_bc_sync_failed");return}const He=await R.syncBroadcastMembers(V);d.groupId===k&&He&&(ce.value=a("chat.gset_bc_synced",{n:He.active}))}catch(V){d.groupId===k&&(tt.value=wt(V))}finally{lt.value=!1}}Ee([()=>d.open,()=>Pe.value,()=>d.groupId],([k,V])=>{!k||V!=="v2manage"||oe()}),Ee([()=>d.open,()=>Pe.value,()=>d.groupId],([k,V])=>{!k||V!=="members"&&V!=="v2manage"||st()}),Ee([()=>d.open,()=>d.detail],([k])=>{if(!k||!d.detail||zt.value===d.groupId)return;zt.value=d.groupId;const V=d.detail;ve.name=V.name||"",ve.description=V.description||"",ve.muteAll=!!V.muteAll,ve.shadowChat=!!V.shadowChat,ve.publicPlaintextChat=!!V.publicPlaintextChat,ve.totalMemberOnlyAdmin=!!V.totalMemberOnlyAdmin,ve.pushAllMsg=!!V.pushAllMsg,ve.discoverable=!!V.discoverable,ve.broadcastContent=!!V.broadcastContent,ve.banKeywords=V.banKeywords||"",ve.logoUrl="",it.value=V.logoUrl||"",ke.value="",je.value="",B.value=""},{immediate:!0}),Ee(()=>d.open,k=>{if(!k){ze.value=!1;return}if(ze.value)return;ze.value=!0;const V=d.initialTab??"info";Pe.value=V==="members"&&w.value?"info":V},{immediate:!0}),Ee(w,k=>{k&&Pe.value==="members"&&(Pe.value="info")});function Ct(){Ke.value||y("update:open",!1)}tn(P(()=>d.open),Ct);async function Vt(){if(!ve.name.trim()){ke.value=a("chat.gset_name_required");return}ke.value="",je.value="";try{await Je.mutateAsync({groupId:d.groupId,...ve,name:ve.name.trim()}),je.value=a("common.saved")}catch(k){ke.value=E(k,"chat.gset_save_failed")}}const ue=Fi(),Rt=g(null),ht=g(!1);function jt(){Rt.value?.click()}function Ze(k){const V=k.target,He=Array.from(V.files||[]);V.value="",Ot(He)}async function Ot(k){const V=k[0];if(V){ht.value=!0,ke.value="";try{const He=await ue.mutateAsync(V);He?.url&&(ve.logoUrl=He.url,it.value=He.url)}catch{ke.value=a("chat.gset_logo_failed")}finally{ht.value=!1}}}const ct=g(""),Mt=g("");let Qe=null;Ee(ct,k=>{Qe&&clearTimeout(Qe),Qe=setTimeout(()=>{Mt.value=k},300)});const Et=P(()=>d.groupId),vn=P(()=>d.open&&Pe.value==="members"&&!w.value),{data:$t,isLoading:xt,hasNextPage:an,fetchNextPage:Ht,isFetchingNextPage:Xt}=co(Et,g(!1),Mt,vn),T=P(()=>uo($t.value?.pages)),z=P(()=>d.open&&m.value),Be=g(""),{data:ut,hasNextPage:on,fetchNextPage:se,isFetchingNextPage:A}=co(Et,g(!0),Be,z),ee=P(()=>uo(ut.value?.pages)),Le=P(()=>ut.value?.pages?.[0]?.totalCount??0),yt=P(()=>m.value&&Le.value>0),Lt=Mi(),qt=Ti(),at=Si(),Qn=Ai(),Xn=Ri(),rn=g("");function la(k){return m.value&&!k.isOwner&&!k.isAdmin&&k.userId.toLowerCase()!==b.value.toLowerCase()}async function Mn(k,V){rn.value=V,ke.value="";try{await k({groupId:d.groupId,userId:V})}catch(He){ke.value=i(He,"chat.gset_action_failed")}finally{rn.value=""}}const ra=k=>Mn(Lt.mutateAsync,k.userId),ca=k=>Mn(qt.mutateAsync,k.userId);async function wn(k){await $(a("chat.gset_kick_confirm",{name:k.displayName}))&&await Mn(at.mutateAsync,k.userId)}const Dn=k=>Mn(Qn.mutateAsync,k.userId),Wt=g(!1),kn=g(""),ua=P(()=>Xn.isPending.value);async function On(){const k=kn.value.trim();if(k){ke.value="";try{await Xn.mutateAsync({groupId:d.groupId,email:k}),kn.value="",Wt.value=!1,je.value=a("chat.gset_member_added")}catch(V){ke.value=i(V,"chat.gset_action_failed")}}}
2return ia(),(k,V)=>{const He=Oo,nt=Po,cn=Bi;return o(),l(fe,null,[It(nt,{ref_key:"confirmHost",ref:N,"model-value":e(U),title:e(x),size:"sm","z-index":1400,"close-on-esc":!1,"onUpdate:modelValue":V[2]||(V[2]=W=>{W||S()})},{footer:dn(()=>[It(He,{variant:"default",onClick:V[0]||(V[0]=W=>S())},{default:dn(()=>[_e(r(k.$t("common.cancel")),1)]),_:1}),It(He,{variant:"primary",onClick:V[1]||(V[1]=W=>S(!0))},{default:dn(()=>[_e(r(k.$t("common.confirm")),1)]),_:1})]),_:1},8,["model-value","title"]),(o(),Oe(ln,{to:"body"},[t.open?(o(),l("div",mc,[n("button",{type:"button",class:"wc-gset__backdrop","aria-label":k.$t("common.close"),onClick:Ct},null,8,pc),n("div",gc,[n("header",hc,[n("h2",yc,r(k.$t("chat.gset_title")),1),n("button",{type:"button",class:"wc-gset__close",disabled:e(Ke),onClick:Ct},[...V[33]||(V[33]=[n("i",{class:"fa-solid fa-xmark"},null,-1)])],8,_c)]),n("div",bc,[n("button",{type:"button",class:Ce(["wc-gset__tab",{"is-active":e(Pe)==="info"}]),onClick:V[3]||(V[3]=W=>Pe.value="info")},r(k.$t("chat.gset_tab_info")),3),e(w)?C("",!0):(o(),l("button",{key:0,type:"button",class:Ce(["wc-gset__tab",{"is-active":e(Pe)==="members"}]),onClick:V[4]||(V[4]=W=>Pe.value="members")},r(k.$t("chat.gset_tab_members")),3)),e(yt)?(o(),l("button",{key:1,type:"button",class:Ce(["wc-gset__tab",{"is-active":e(Pe)==="waiting"}]),onClick:V[5]||(V[5]=W=>Pe.value="waiting")},[_e(r(k.$t("chat.gset_tab_waiting")),1),n("span",wc,r(e(Le)),1)],2)):C("",!0),e(m)?(o(),l("button",{key:2,type:"button",class:Ce(["wc-gset__tab",{"is-active":e(Pe)==="settings"}]),onClick:V[6]||(V[6]=W=>Pe.value="settings")},r(k.$t("chat.gset_tab_settings")),3)):C("",!0),e(O)?(o(),l("button",{key:3,type:"button",class:Ce(["wc-gset__tab",{"is-active":e(Pe)==="v2manage"}]),onClick:V[7]||(V[7]=W=>Pe.value="v2manage")},r(k.$t("chat.gset_tab_manage")),3)):C("",!0)]),n("div",kc,[e(ke)?(o(),l("p",Cc,r(e(ke)),1)):C("",!0),e(je)?(o(),l("p",$c,r(e(je)),1)):C("",!0),e(Pe)==="info"?(o(),l(fe,{key:2},[n("div",Ic,[n("div",Mc,[n("img",{src:e(it)||t.detail?.logoUrl,alt:e(ve).name},null,8,Tc),e(m)?(o(),l("button",{key:0,type:"button",class:"wc-gset__logo-edit",disabled:e(ht),title:k.$t("chat.gset_change_logo"),onClick:jt},[n("i",{class:Ce(e(ht)?"fa-solid fa-spinner fa-spin":"fa-solid fa-pencil")},null,2)],8,Sc)):C("",!0),n("input",{ref_key:"logoInput",ref:Rt,type:"file",accept:"image/*",class:"d-none",onChange:Ze},null,544)]),e(m)?(o(),Oe(cn,{key:0,kind:"image",compact:"",class:"wc-gset__logo-vault",disabled:e(ht),onFiles:Ot},null,8,["disabled"])):C("",!0)]),n("label",Ac,[n("span",null,r(k.$t("chat.gset_name")),1),Ne(n("input",{"onUpdate:modelValue":V[8]||(V[8]=W=>e(ve).name=W),type:"text",maxlength:"60",disabled:!e(m)},null,8,Rc),[[dt,e(ve).name]])]),n("label",Ec,[n("span",null,r(k.$t("chat.gset_desc")),1),Ne(n("textarea",{"onUpdate:modelValue":V[9]||(V[9]=W=>e(ve).description=W),maxlength:"1000",rows:"4",disabled:!e(m)},null,8,Lc),[[dt,e(ve).description]])]),e(m)?(o(),l("div",Uc,[n("button",{type:"button",class:"wc-gset__btn wc-gset__btn--primary",disabled:e(Ke)||!t.detail,onClick:Vt},[e(Ke)?(o(),l("i",Dc)):C("",!0),_e(" "+r(e(Ke)?k.$t("common.saving"):k.$t("common.save")),1)],8,Pc)])):C("",!0),e(j)?(o(),l("div",Oc,[n("button",{type:"button",class:"wc-gset__btn wc-gset__btn--danger-ghost",disabled:e(I),onClick:v},[e(I)?(o(),l("i",Vc)):C("",!0),_e(" "+r(e(I)?k.$t("common.saving"):k.$t("chat.leave_group")),1)],8,qc)])):C("",!0)],64)):e(Pe)==="members"?(o(),l(fe,{key:3},[n("div",Bc,[n("div",Nc,[V[34]||(V[34]=n("i",{class:"fa-solid fa-magnifying-glass"},null,-1)),Ne(n("input",{"onUpdate:modelValue":V[10]||(V[10]=W=>ft(ct)?ct.value=W:null),type:"text",placeholder:k.$t("chat.gset_search_member")},null,8,Fc),[[dt,e(ct)]])]),e(m)?(o(),l("button",{key:0,type:"button",class:"wc-gset__btn wc-gset__btn--ghost wc-gset__btn--sm",onClick:V[11]||(V[11]=W=>Wt.value=!e(Wt))},[V[35]||(V[35]=n("i",{class:"fa-solid fa-plus"},null,-1)),_e(" "+r(k.$t("chat.gset_add_member")),1)])):C("",!0)]),e(m)&&e(Wt)?(o(),l("div",Kc,[Ne(n("input",{"onUpdate:modelValue":V[12]||(V[12]=W=>ft(kn)?kn.value=W:null),type:"email",placeholder:k.$t("chat.gset_add_member_ph"),onKeydown:In(On,["enter"])},null,40,jc),[[dt,e(kn)]]),n("button",{type:"button",class:"wc-gset__btn wc-gset__btn--primary wc-gset__btn--sm",disabled:e(ua),onClick:On},r(k.$t("common.add")),9,xc)])):C("",!0),e(xt)&&!e($t)?(o(),l("div",Hc,[...V[36]||(V[36]=[n("i",{class:"fa-solid fa-spinner fa-spin"},null,-1)])])):e(T).length?(o(),l("ul",zc,[(o(!0),l(fe,null,Ve(e(T),W=>(o(),l("li",{key:W.userId,class:"wc-gset__member"},[n("a",{class:"wc-gset__member-main",href:W.channelUrl||"javascript:;",target:W.channelUrl?"_blank":void 0},[n("span",{class:Ce(["wc-gset__member-avatar",{"is-online":W.isOnline}])},[n("img",{src:("cfImage"in k?k.cfImage:e(Pt))(W.logoUrl,80),alt:W.displayName},null,8,Xc)],2),n("span",Wc,[n("span",Jc,[W.isOwner?(o(),l("i",{key:0,class:"fa-solid fa-crown wc-gset__crown",title:k.$t("chat.gset_owner")},null,8,Yc)):C("",!0),_e(" "+r(W.displayName)+" ",1),W.isMuted?(o(),l("span",Zc,r(k.$t("chat.gset_muted")),1)):C("",!0)]),e(m)&&W.email?(o(),l("small",eu,r(W.email),1)):C("",!0)])],8,Qc),la(W)?(o(),l("div",tu,[W.isMuted?(o(),l("button",{key:1,type:"button",class:"wc-gset__act wc-gset__act--warn",disabled:e(rn)===W.userId,onClick:Zt=>ca(W)}
2,r(k.$t("chat.gset_unmute")),9,au)):(o(),l("button",{key:0,type:"button",class:"wc-gset__act",disabled:e(rn)===W.userId,onClick:Zt=>ra(W)},r(k.$t("chat.gset_mute")),9,nu)),n("button",{type:"button",class:"wc-gset__act wc-gset__act--danger",disabled:e(rn)===W.userId,onClick:Zt=>wn(W)},r(k.$t("chat.gset_remove")),9,ou),xe(W)?(o(),l("button",{key:2,type:"button",class:"wc-gset__act",onClick:Zt=>{Ae(W),Pe.value="v2manage"}},r(k.$t("chat.perm_edit")),9,su)):C("",!0)])):C("",!0)]))),128))])):(o(),l("div",Gc,r(k.$t("chat.gset_no_members")),1)),e(an)?(o(),l("div",iu,[n("button",{type:"button",class:"wc-gset__btn wc-gset__btn--ghost wc-gset__btn--sm",disabled:e(Xt),onClick:V[13]||(V[13]=W=>e(Ht)())},[e(Xt)?(o(),l("i",ru)):C("",!0),_e(" "+r(k.$t("common.load_more")),1)],8,lu)])):C("",!0)],64)):e(Pe)==="waiting"?(o(),l(fe,{key:4},[e(ee).length?(o(),l("ul",uu,[(o(!0),l(fe,null,Ve(e(ee),W=>(o(),l("li",{key:W.userId,class:"wc-gset__member"},[n("a",{class:"wc-gset__member-main",href:W.channelUrl||"javascript:;",target:W.channelUrl?"_blank":void 0},[n("span",vu,[n("img",{src:("cfImage"in k?k.cfImage:e(Pt))(W.logoUrl,80),alt:W.displayName},null,8,fu)]),n("span",mu,[n("span",pu,r(W.displayName),1),W.email?(o(),l("small",gu,r(W.email),1)):C("",!0),W.joinNote?(o(),l("small",hu,[V[37]||(V[37]=n("i",{class:"fa-regular fa-comment-dots"},null,-1)),_e(" "+r(W.joinNote),1)])):C("",!0)])],8,du),n("div",yu,[n("button",{type:"button",class:"wc-gset__act wc-gset__act--ok",disabled:e(rn)===W.userId,onClick:Zt=>Dn(W)},r(k.$t("chat.gset_approve")),9,_u),n("button",{type:"button",class:"wc-gset__act wc-gset__act--danger",disabled:e(rn)===W.userId,onClick:Zt=>wn(W)},r(k.$t("chat.gset_reject")),9,bu)])]))),128))])):(o(),l("div",cu,r(k.$t("chat.gset_no_waiting")),1)),e(on)?(o(),l("div",wu,[n("button",{type:"button",class:"wc-gset__btn wc-gset__btn--ghost wc-gset__btn--sm",disabled:e(A),onClick:V[14]||(V[14]=W=>e(se)())},[e(A)?(o(),l("i",Cu)):C("",!0),_e(" "+r(k.$t("common.load_more")),1)],8,ku)])):C("",!0)],64)):e(Pe)==="v2manage"?(o(),l(fe,{key:5},[n("section",$u,[n("h4",Iu,r(k.$t("chat.invite_title")),1),n("p",Mu,r(k.$t("chat.invite_hint")),1),n("div",Tu,[n("label",null,[_e(r(k.$t("chat.invite_max_uses"))+" ",1),Ne(n("input",{"onUpdate:modelValue":V[15]||(V[15]=W=>ft(q)?q.value=W:null),type:"number",min:"1",max:"1000",class:"wc-gsetv2__num"},null,512),[[dt,e(q),void 0,{number:!0}]])]),n("label",null,[_e(r(k.$t("chat.invite_expires_hours"))+" ",1),Ne(n("input",{"onUpdate:modelValue":V[16]||(V[16]=W=>ft(X)?X.value=W:null),type:"number",min:"1",max:"2160",class:"wc-gsetv2__num"},null,512),[[dt,e(X),void 0,{number:!0}]])]),n("label",Su,[Ne(n("input",{"onUpdate:modelValue":V[17]||(V[17]=W=>ft(Y)?Y.value=W:null),type:"checkbox"},null,512),[[en,e(Y)]]),n("span",null,r(k.$t("chat.invite_requires_approval")),1)]),n("button",{type:"button",class:"wc-gsetv2__btn",disabled:e(M),onClick:ne},r(k.$t("chat.invite_create")),9,Au)]),n("ul",Ru,[(o(!0),l(fe,null,Ve(e(H),W=>(o(),l("li",{key:W.inviteCode,class:"wc-gsetv2__item"},[n("code",Eu,r(W.url),1),n("span",Lu,r(W.usedCount??0)+"/"+r(W.maxUses),1),n("button",{type:"button",class:"wc-gsetv2__btn",onClick:Zt=>F(W.url)},r(e(le)===W.url?k.$t("common.copied"):k.$t("common.copy")),9,Uu),n("button",{type:"button",class:"wc-gsetv2__btn wc-gsetv2__btn--danger",onClick:Zt=>K(W.inviteCode)},r(k.$t("chat.invite_revoke")),9,Pu)]))),128)),e(H).length===0?(o(),l("li",Du,r(k.$t("chat.invite_empty")),1)):C("",!0)])]),n("section",Ou,[n("h4",qu,r(k.$t("chat.slow_mode_title")),1),n("p",Vu,r(k.$t("chat.v2settings_patch_hint")),1),n("div",Bu,[n("label",null,[_e(r(k.$t("chat.slow_mode_seconds"))+" ",1),Ne(n("input",{"onUpdate:modelValue":V[18]||(V[18]=W=>ft(re)?re.value=W:null),type:"number",min:"0",max:"3600",class:"wc-gsetv2__num"},null,512),[[dt,e(re),void 0,{number:!0}]])]),n("label",Nu,[n("input",{checked:e(ae)===!0,type:"checkbox",onChange:V[19]||(V[19]=W=>ae.value=W.target.checked)},null,40,Fu),n("span",null,r(k.$t("chat.join_approval")),1)]),n("button",{type:"button",class:"wc-gsetv2__btn",disabled:e(ye),onClick:ot},r(k.$t("common.save")),9,Ku)])]),n("section",ju,[n("h4",xu,r(k.$t("chat.perm_pick_member")),1),n("div",Hu,[Ne(n("input",{"onUpdate:modelValue":V[20]||(V[20]=W=>ft(mt)?mt.value=W:null),type:"search",class:"wc-gsetv2__num",placeholder:k.$t("chat.gset_search_member")},null,8,Gu),[[dt,e(mt)]]),Ne(n("select",{"onUpdate:modelValue":V[21]||(V[21]=W=>ft(pt)?pt.value=W:null),class:"wc-gsetv2__num"},[n("option",zu,r(k.$t("chat.perm_role_all")),1),n("option",Qu,r(k.$t("chat.perm_role_member")),1),n("option",Xu,r(k.$t("chat.perm_role_admin")),1),n("option",Wu,r(k.$t("chat.perm_role_owner")),1)],512),[[ro,e(pt),void 0,{number:!0}]])]),e(G)?(o(),l("p",Ju,r(e(G)),1)):C("",!0),n("ul",Yu,[(o(!0),l(fe,null,Ve(e(Xe),W=>(o(),l("li",{key:"v2m"+W.userId,class:"wc-gsetv2__item"},[n("span",null,r(W.nickname||W.userId),1),n("button",{type:"button",class:"wc-gsetv2__btn",onClick:Zt=>we.value=W.userId},r(k.$t("chat.perm_edit")),9,Zu)]))),128)),!e(Xe).length&&!e(te)?(o(),l("li",ed,r(k.$t("chat.perm_search_empty")),1)):C("",!0)]),e(D)?(o(),l("div",td,[n("button",{type:"button",class:"wc-gsetv2__btn",disabled:e(te),onClick:V[22]||(V[22]=W=>pe(!0))},r(k.$t("common.load_more")),9,nd)])):C("",!0)]),e(we)?(o(),l("section",ad,[n("h4",od,r(k.$t("chat.perm_title")),1),e(Se)?C("",!0):(o(),l("p",sd,r(k.$t("chat.perm_authority_unloaded")),1)),n("div",id,[n("label",null,[_e(r(k.$t("chat.perm_role"))+" ",1),Ne(n("select",{"onUpdate:modelValue":V[23]||(V[23]=W=>ft(de)?de.value=W:null),disabled:!e(Se),class:"wc-gsetv2__num"},[n("option",rd,r(k.$t("chat.perm_role_member")),1),n("option",cd,r(k.$t("chat.perm_role_admin")),1)],8,ld),[[ro,e(de),void 0,{number:!0}]])])]),(o(!0),l(fe,null,Ve(e(Ie),W=>(o(),l("label",{key:W.bit,class:"wc-gsetv2__check"},[n("input",{type:"checkbox",disabled:!e(Se)||e(de)!==1,checked:(e(me)&W.bit)===W.bit,onChange:Zt=>Re(W.bit)},null,40,ud),n("span",null,r(W.label),1)]))),128)),n("div",dd,[n("button",{type:"button",class:"wc-gsetv2__btn",disabled:e($e)||!e(Se),onClick:et},r(k.$t("common.save")),9,vd),n("button",{type:"button",class:"wc-gsetv2__btn",onClick:V[24]||(V[24]=W=>we.value="")},r(k.$t("common.cancel")),1)])])):(o(),l("p",fd,r(k.$t("chat.perm_pick_member")),1))],64)):e(Pe)==="settings"?(o(),l(fe,{key:6},[n("div",md,[n("div",pd,[n("div",gd,[n("span",null,r(k.$t("chat.gset_discoverable")),1),n("small",null,r(k.$t("chat.gset_discoverable_hint")),1)]),Ne(n("input",{"onUpdate:modelValue":V[25]||(V[25]=W=>e(ve).discoverable=W),type:"checkbox",class:"wc-gset__switch"},null,512),[[en,e(ve).discoverable]])]),e(ve).discoverable&&e(Ft)?(o(),l("p",hd,[V[38]||(V[38]=n("i",{class:"fa-solid fa-triangle-exclamation"},null,-1)),n("span",null,[_e(r(e(Ft))+" ",1),e(Qt)?(o(),l("button",{key:0,t
2ype:"button",class:"wc-gset__recheck",disabled:e(gt),onClick:Fe},[e(gt)?(o(),l("i",_d)):C("",!0),_e(" "+r(k.$t("chat.gset_discover_fix_now")),1)],8,yd)):C("",!0),n("button",{type:"button",class:"wc-gset__recheck",disabled:e(ie),onClick:We},[e(ie)?(o(),l("i",wd)):C("",!0),_e(" "+r(k.$t("chat.gset_discover_recheck")),1)],8,bd),e(B)?(o(),l("span",kd,r(e(B)),1)):C("",!0)])])):e(ve).discoverable?(o(),l("p",Cd,[V[39]||(V[39]=n("i",{class:"fa-regular fa-circle-question"},null,-1)),n("span",null,r(k.$t("chat.gset_discoverable_owner_note")),1)])):C("",!0)]),n("div",$d,[n("div",Id,[n("div",Md,[n("span",null,r(k.$t("chat.gset_broadcast")),1),n("small",null,r(k.$t("chat.gset_broadcast_hint")),1)]),Ne(n("input",{"onUpdate:modelValue":V[26]||(V[26]=W=>e(ve).broadcastContent=W),type:"checkbox",class:"wc-gset__switch"},null,512),[[en,e(ve).broadcastContent]])]),e(ve).broadcastContent&&e(De)==="disabled"?(o(),l("p",Td,[V[40]||(V[40]=n("i",{class:"fa-regular fa-circle-question"},null,-1)),n("span",null,r(k.$t("chat.gset_bc_site_off")),1)])):e(ve).broadcastContent&&e(De)==="missing"?(o(),l("p",Sd,[V[41]||(V[41]=n("i",{class:"fa-solid fa-triangle-exclamation"},null,-1)),n("span",null,[_e(r(k.$t("chat.gset_bc_missing"))+" ",1),n("button",{type:"button",class:"wc-gset__recheck",disabled:e(lt),onClick:At},[e(lt)?(o(),l("i",Rd)):C("",!0),_e(" "+r(k.$t("chat.gset_bc_create")),1)],8,Ad),e(tt)?(o(),l("span",Ed,r(e(tt)),1)):C("",!0)])])):e(ve).broadcastContent&&e(De)==="ready"?(o(),l("p",Ld,[V[42]||(V[42]=n("i",{class:"fa-regular fa-circle-check"},null,-1)),n("span",null,[_e(r(k.$t("chat.gset_bc_ready"))+" ",1),n("button",{type:"button",class:"wc-gset__recheck",disabled:e(lt),onClick:kt},[e(lt)?(o(),l("i",Pd)):C("",!0),_e(" "+r(k.$t("chat.gset_bc_sync")),1)],8,Ud),e(ce)?(o(),l("span",Dd,r(e(ce)),1)):C("",!0),e(tt)?(o(),l("span",Od,r(e(tt)),1)):C("",!0)])])):C("",!0)]),n("div",qd,[n("div",Vd,[n("span",null,r(k.$t("chat.gset_public_plaintext")),1),n("small",null,r(k.$t("chat.gset_public_plaintext_hint")),1)]),Ne(n("input",{"onUpdate:modelValue":V[27]||(V[27]=W=>e(ve).publicPlaintextChat=W),type:"checkbox",class:"wc-gset__switch"},null,512),[[en,e(ve).publicPlaintextChat]])]),n("div",Bd,[n("div",Nd,[n("span",null,r(k.$t("chat.gset_push_all")),1)]),Ne(n("input",{"onUpdate:modelValue":V[28]||(V[28]=W=>e(ve).pushAllMsg=W),type:"checkbox",class:"wc-gset__switch"},null,512),[[en,e(ve).pushAllMsg]])]),n("div",Fd,[n("div",Kd,[n("span",null,r(k.$t("chat.gset_hide_members")),1)]),Ne(n("input",{"onUpdate:modelValue":V[29]||(V[29]=W=>e(ve).totalMemberOnlyAdmin=W),type:"checkbox",class:"wc-gset__switch"},null,512),[[en,e(ve).totalMemberOnlyAdmin]])]),n("div",jd,[n("div",xd,[n("span",null,r(k.$t("chat.gset_mute_all")),1)]),Ne(n("input",{"onUpdate:modelValue":V[30]||(V[30]=W=>e(ve).muteAll=W),type:"checkbox",class:"wc-gset__switch"},null,512),[[en,e(ve).muteAll]])]),n("div",Hd,[n("div",Gd,[n("span",null,r(k.$t("chat.gset_shadow")),1)]),Ne(n("input",{"onUpdate:modelValue":V[31]||(V[31]=W=>e(ve).shadowChat=W),type:"checkbox",class:"wc-gset__switch"},null,512),[[en,e(ve).shadowChat]])]),n("label",zd,[n("span",null,r(k.$t("chat.gset_ban_keywords")),1),Ne(n("textarea",{"onUpdate:modelValue":V[32]||(V[32]=W=>e(ve).banKeywords=W),maxlength:"1000",rows:"2",placeholder:k.$t("chat.gset_ban_keywords_ph")},null,8,Qd),[[dt,e(ve).banKeywords]])]),n("div",Xd,[n("button",{type:"button",class:"wc-gset__btn wc-gset__btn--primary",disabled:e(Ke)||!t.detail,onClick:Vt},[e(Ke)?(o(),l("i",Jd)):C("",!0),_e(" "+r(e(Ke)?k.$t("common.saving"):k.$t("common.save")),1)],8,Wd)])],64)):C("",!0)])])])):C("",!0)]))],64)}}}),Zd=bt(Yd,[["__scopeId","data-v-68b267cb"]]),ev=""+new URL("meetingPcm.worklet-CagyqvXs.js",import.meta.url).href,$a=16e3,tv=3;function nv(t){let s={phase:"idle",reason:"",sampleCount:0,deliveredSegments:0,pendingSegments:0,wakeLock:!1},a=null,u=null,i=null,p=null,b=null,d,y,m=0,w=0,h=0,I=!1,E=!1,j=!1,N,x=Promise.resolve();const U=[],_=new AbortController;let S;const $=new Promise(F=>{S=F});function v(F){s={...s,...F};try{t.onState?.({...s})}catch{}}function R(){clearInterval(d),clearTimeout(y),typeof document<"u"&&document.removeEventListener("visibilitychange",le),typeof window<"u"&&window.removeEventListener("pagehide",oe),u?.getTracks().forEac
2h(F=>{F.removeEventListener("ended",ne),F.removeEventListener("mute",ne),F.stop()}),u=null,i?.disconnect(),i=null,p&&(p.onprocessorerror=null,p.port.onmessage=null,p.port.close(),p.disconnect(),p=null),a&&(a.onstatechange=null,x=a.close().catch(()=>{}),a=null),b&&(b.release().catch(()=>{}),b=null),s={...s,wakeLock:!1}}function O(F,re){E||(E=!0,_.abort(),U.length=0,R(),v({phase:F,reason:re,pendingSegments:0}),x.then(()=>S({...s})))}function H(){if(!I||U.length||j||E)return;const F=s.reason||"stopped";O(F==="stopped"||F==="duration_limit"?"completed":"interrupted",F)}function M(F,re,ae){return new Promise((Te,he)=>{const ye=()=>we(()=>he(new Error("cancelled"))),ot=setTimeout(()=>we(()=>he(new Error(ae))),re),we=de=>{clearTimeout(ot),_.signal.removeEventListener("abort",ye),de()};_.signal.addEventListener("abort",ye,{once:!0}),_.signal.aborted&&ye(),F.then(de=>we(()=>Te(de)),de=>we(()=>he(de)))})}async function q(){if(!(j||E)){j=!0;try{for(;U.length&&!E;){const F=U[0];if(await M(Promise.resolve().then(()=>{if(_.signal.aborted)throw new Error("cancelled");return t.onSegment(F,_.signal)}),6e4,"segment_delivery_timeout"),E)return;U.shift(),p?.port.postMessage({type:"ack",index:F.index}),v({deliveredSegments:s.deliveredSegments+1,pendingSegments:U.length})}}catch(F){E||O("failed",F instanceof Error&&F.message==="segment_delivery_timeout"?"segment_delivery_timeout":"segment_delivery_failed")}finally{j=!1,H()}}}function X({data:F}){if(!(E||I)){if(m=performance.now(),F.type==="ready"&&s.phase==="starting")p?.port.postMessage({type:"start"});else if(F.type==="started"&&s.phase==="starting")v({phase:"recording"}),N?.();else if(F.type==="segment"){if(F.index!==h||F.startSample!==w||F.sampleRate!==$a||!Number.isSafeInteger(F.sampleCount)||F.sampleCount<=0||!(F.wav instanceof ArrayBuffer)||F.wav.byteLength!==44+F.sampleCount*2||U.length>=tv){O("failed","invalid_segment_sequence");return}h++,w+=F.sampleCount,U.push(F),v({sampleCount:w,pendingSegments:U.length}),q()}
2else if(F.type==="progress")v({sampleCount:F.sampleCount});else if(F.type==="stopped"){if(F.sampleCount!==w){O("failed","incomplete_audio");return}I=!0,R();const re=F.reason==="stopped"?s.reason||"stopped":F.reason;v({phase:"stopping",sampleCount:F.sampleCount,reason:re}),H()}}}function Y(F){if(!(E||I||s.phase==="stopping")){if(s.phase==="idle"||s.phase==="starting"){O("interrupted",F);return}v({phase:"stopping",reason:F}),p?.port.postMessage({type:"stop"}),y=setTimeout(()=>O("failed","stop_timeout"),2e3)}}function le(){document.hidden&&Y("background")}function oe(){Y("page_hidden")}function ne(){Y("input_lost")}async function K(){if(s.phase!=="idle"||E)return!1;if(!t.consentConfirmed)return O("failed","consent_required"),!1;if(typeof window>"u"||!window.isSecureContext||typeof AudioContext>"u"||typeof AudioWorkletNode>"u"||!navigator.mediaDevices?.getUserMedia)return O("failed","recording_unsupported"),!1;if(document.hidden)return O("interrupted","background"),!1;if(v({phase:"starting"}),E)return!1;document.addEventListener("visibilitychange",le),window.addEventListener("pagehide",oe);try{a=new AudioContext({sampleRate:$a});const F=a,re=F.resume(),ae=navigator.mediaDevices.getUserMedia({audio:{channelCount:1},video:!1}).then(he=>(E?he.getTracks().forEach(ye=>ye.stop()):u=he,he));if(await M(Promise.all([ae,re]),15e3,"start_timeout"),E)return!1;if(F.sampleRate!==$a||!F.audioWorklet)throw new Error("recording_unsupported");if(await M(F.audioWorklet.addModule(ev),1e4,"worklet_load_failed"),E)return!1;if(!u?.getAudioTracks().some(he=>he.readyState==="live"&&!he.muted))throw new Error("input_lost");p=new AudioWorkletNode(F,"weicity-meeting-pcm",{numberOfInputs:1,numberOfOutputs:1,outputChannelCount:[1],channelCount:1,channelCountMode:"explicit",processorOptions:{segmentSeconds:t.segmentSeconds,maxSeconds:t.maxSeconds}}),p.port.onmessage=X,p.onprocessorerror=()=>O("failed","processor_failed");const Te=new Promise(he=>{N=he});i=F.createMediaStreamSource(u),i.connect(p),p.connect(F.destination);for(const he of u.getTracks())he.addEventListener("ended",ne),he.addEventListener("mute",ne);return F.onstatechange=()=>{F.state!=="running"&&Y("audio_interrupted")},m=performance.now(),d=aa(()=>{performance.now()-m>5e3&&Y("capture_stalled")},1e3),await M(Te,5e3,"capture_start_timeout"),E?!1:(navigator.wakeLock?.request&&navigator.wakeLock.request("screen").then(he=>{if(E||I||s.phase!=="recording"){he.release().catch(()=>{});return}b=he,v({wakeLock:!0}),he.addEventListener("release",()=>{b===he&&(b=null,E||v({wakeLock:!1}))},{once:!0})}).catch(()=>{}),!0)}catch(F){if(!E){const re=["start_timeout","worklet_load_failed","capture_start_timeout","recording_unsupported","input_lost"],ae=F instanceof DOMException&&F.name==="NotAllowedError"?"microphone_denied":F instanceof Error&&re.includes(F.message)?F.message:"start_failed";O("failed",ae)}return!1}}return{start:K,stop:()=>(Y("stopped"),$),cancel:()=>O("cancelled","cancelled"),get state(){return{...s}},done:$}}function av(t){let s=null,a=null,u=!1,i=!1,p=!1,b=null;const d=new AbortController,y=()=>!u&&t.isCurrent(),m=_=>{s=_,y()&&t.onMeeting(_)};async function w(){if(s)try{const _=await t.request(`${s.id}/cancel`,{});t.isCurrent()&&t.onMeeting(_)}catch{t.isCurrent()&&t.onError("meeting_cleanup_pending")}}async function h(_){if(y()){if(_.phase==="failed"||_.phase==="cancelled"){t.onError("meeting_capture_failed"),await x();return}_.phase==="interrupted"&&t.onError("meeting_interrupted");try{m(await t.request(`${s.id}/end`,{}))}catch{y()&&t.onError("meeting_finish_failed")}}}async function I(){if(i||!y())return!1;i=!0;try{return s=await t.request("begin",{clientRequestId:t.requestId,consentNoticeVersion:t.consentVersion,consentConfirmed:!0,language:t.language||"zh-CN"}),y()?(m(s),s.status===0):(await w(),!1)}catch(_){throw y()&&t.onError("meeting_start_failed"),await w(),_}}async function E(){if(p||!s||s.status!==0||!y())return!1;p=!0;try{a=t.createRecorder(async(S,$)=>{if(!y()||d.signal.aborted)throw new Error("meeting_identity_changed");const v=new FormData;if(v.append("file",new Blob([S.wav],{type:"audio/wav"}),`segment-${S.index}.wav`),v.append("i",String(S.index)),v.append("startMs",String(S.startSample*1e3/S.sampleRate)),v.append("ms",String(S.sampleCount*1e3/S.sampleRate)),await t.request(`${s.id}/segments`,v,AbortSignal.any([$,d.signal])),!y())throw new Error("meeting_identity_changed")},S=>{y()?t.onRecorder(S):x()}),a.done.then(S=>{b??=h(S)});const _=await a.start();return!_&&y()&&(t.onError("meeting_capture_failed"),await x()),_&&y()}catch(_){throw y()&&t.onError("meeting_start_failed"),await w(),_}}async function j(){if(a){const _=await a.stop();b??=h(_),await b}}function N(){u||(u=!0,d.abort(),a?.cancel())}async function x(){u||(N(),await w())}async function U(){!y()||!s||m(await t.request(`${s.id}/end`,{}))}return{prepare:I,start:E,stop:j,cancel:x,release:N,retryEnd:U}}const ov=["aria-busy"],sv={key:0,role:"alert"},iv=["disabled"],lv={key:1},rv=["onUpdate:modelValue","aria-label"],cv=["onUpdate:modelValue","aria-label"],uv=["onClick"],dv=["onUpdate:modelValue","aria-label"],vv={key:1},fv=["onClick"],mv=["onUpdate:modelValue","aria-label"],pv=["onUpdate:modelValue","aria-label","placeholder"],gv=["onUpdate:modelValue","aria-label","placeholder"],hv={key:1},yv=["onClick"],_v=["onUpdate:modelValue","aria-label"],bv={key:1},wv=["onClick"],kv=["disabled"],Cv=["aria-label"],$v=["disabled"],Iv=["disabled"],Mv=["data-selected"],Tv=["disabled"],Sv={href:"/privacy"},Av=_t({__name:"ChatMeetingReview",props:{meetingId:{},conversationId:{},userId:{}},emits:["changed"],setup(t,{emit:s}){const a=t,u=s,{t:i}=Nt(),p=g(null),b=g(null),d=g(!1),y=g(""),m=g(!1),w=g(!1),h=g(null),I=g(null),E=g(null),j=P(()=>E.value||b.value?.transcript||[]),N=Un(),x=a.userId,U=a.conversationId,_=a.meetingId,S={...Pn(),"X-Meeting-User":x},$=bn().public.apiBase||void 0,v=`/api/app/chat/v2/conversations/${encodeURIComponent(U)}/meetings/${encodeURIComponent(_)}`,R=new AbortController,O=()=>!R.signal.aborted&&a.userId===x&&a.conversationId===U&&a.meetingId===_&&Un()===N,H=P(()=>p.value?.mine&&p.value.status===3);async function M(){d.value=!0,y.value="";try{const oe=await $fetch(v,{baseURL:$,headers:S,credentials:"include",retry:0,timeout:15e3,signal:R.signal});O()&&(p.value=oe,b.value=oe.result?structuredClone(oe.result):null,E.value=null)}catch{O()&&(y.value="meeting.review_error")}finally{O()&&(d.value=!1)}}async function q(){if(!(!O()||!H.value||!w.value||!m.value||d.value||!b.value)){d.value=!0,y.value="";try{const oe=await $fetch(`${v}/publish`,{method:"POST",body:{result:b.value},baseURL:$,headers:S,credentials:"include",retry:0,timeout:65e3,signal:R.signal});O()&&(p.value=oe,b.value=oe.result,m.value=!1,u("changed"))}catch{O()&&(y.value="meeting.publish_error")}finally{O()&&(d.value=!1)}}}async function X(){if(!(!O()||d.value)){d.value=!0;try{const oe=await $fetch(`${v}/transcript`,{baseURL:$,headers:S,credentials:"include",retry:0,timeout:15e3,signal:R.signal});if(!O())return;const ne=await $fetch(oe.url,{credentials:"omit",retry:0,timeout:15e3,signal:R.signal});if(!Array.isArray(ne)||ne.length>1e4)throw new Error("meeting_transcript_invalid");O()&&(E.value=ne)}catch{O()&&(y.value="meeting.review_error")}finally{O()&&(d.value=!1)}}}async function Y(oe){const ne=j.value;I.value=ne.filter(K=>K.t<=oe).at(-1)?.t??ne[0]?.t??null,await vt(),h.value?.querySelector('[data-selected="true"]')?.scrollIntoView({block:"nearest",behavior:"smooth"})}const le=oe=>`${Math.floor(oe/60)}:${String(Math.floor(oe%60)).padStart(2,"0")}`;return Ee(()=>[a.meetingId,a.conversationId,a.userId],()=>R.abort(),{flush:"sync"}),St(()=>R.abort()),nn(M),(oe,ne)=>(o(),l("div",{class:"wc-meeting-review","aria-busy":d.value},[n("p",null,r(e(i)("meeting.review_notice")),1),y.value?(o(),l("p",sv,[_e(r(e(i)(y.value))+" ",1),n("button",{type:"button",disabled:d.value,onClick:M},r(e(i)("meeting.reload")),9,iv)])):C("",!0),p.value&&!b.value?(o(),l("p",lv,r(e(i)("meeting.private_draft")),1)):C("",!0),b.value?(o(),l(fe,{key:2},[n("h4",null,r(e(i)("meeting.topics")),1),(o(!0),l(fe,null,Ve(b.value.minutes.topics,(K,F)=>(o(),l("article",{key:F},[H.value?(o(),l(fe,{key:0},[Ne(n("input",{"onUpdate:modelValue":re=>K.title=re,maxlength:"200","aria-label":e(i)("meeting.topic_title")},null,8,rv),[[dt,K.title]]),Ne(n("textarea",{"onUpdate:modelValue":re=>K.summary=re,maxlength:"4000","aria-label":e(i)("meeting.topic_summary")}
2,null,8,cv),[[dt,K.summary]])],64)):(o(),l(fe,{key:1},[n("strong",null,r(K.title),1),n("p",null,r(K.summary),1)],64)),n("button",{type:"button",onClick:re=>Y(K.t[0])},r(le(K.t[0]))+" — "+r(le(K.t[1])),9,uv)]))),128)),n("h4",null,r(e(i)("meeting.decisions")),1),(o(!0),l(fe,null,Ve(b.value.minutes.decisions,(K,F)=>(o(),l("article",{key:F},[H.value?Ne((o(),l("textarea",{key:0,"onUpdate:modelValue":re=>K.text=re,maxlength:"2000","aria-label":e(i)("meeting.decisions")},null,8,dv)),[[dt,K.text]]):(o(),l("p",vv,r(K.text),1)),n("button",{type:"button",onClick:re=>Y(K.t)},r(le(K.t))+" · "+r(e(i)("meeting.source")),9,fv)]))),128)),n("h4",null,r(e(i)("meeting.actions")),1),(o(!0),l(fe,null,Ve(b.value.minutes.actions,(K,F)=>(o(),l("article",{key:F},[H.value?(o(),l(fe,{key:0},[Ne(n("textarea",{"onUpdate:modelValue":re=>K.text=re,maxlength:"2000","aria-label":e(i)("meeting.actions")},null,8,mv),[[dt,K.text]]),Ne(n("input",{"onUpdate:modelValue":re=>K.owner=re,maxlength:"120","aria-label":e(i)("meeting.owner"),placeholder:e(i)("meeting.owner")},null,8,pv),[[dt,K.owner]]),Ne(n("input",{"onUpdate:modelValue":re=>K.due=re,maxlength:"120","aria-label":e(i)("meeting.due"),placeholder:e(i)("meeting.due")},null,8,gv),[[dt,K.due]])],64)):(o(),l("p",hv,r(K.text)+" · "+r(K.owner||e(i)("meeting.unspecified"))+" · "+r(K.due||e(i)("meeting.unspecified")),1)),n("button",{type:"button",onClick:re=>Y(K.t)},r(le(K.t))+" · "+r(e(i)("meeting.source")),9,yv)]))),128)),n("h4",null,r(e(i)("meeting.open_questions")),1),(o(!0),l(fe,null,Ve(b.value.minutes.open,(K,F)=>(o(),l("article",{key:F},[H.value?Ne((o(),l("textarea",{key:0,"onUpdate:modelValue":re=>K.text=re,maxlength:"2000","aria-label":e(i)("meeting.open_questions")},null,8,_v)),[[dt,K.text]]):(o(),l("p",bv,r(K.text),1)),n("button",{type:"button",onClick:re=>Y(K.t)},r(le(K.t))+" · "+r(e(i)("meeting.source")),9,wv)]))),128)),H.value?(o(),l(fe,{key:0},[m.value?(o(),l("div",{key:1,role:"dialog","aria-label":e(i)("meeting.publish"),onKeydown:ne[3]||(ne[3]=In(Ut(K=>m.value=!1,["stop"]),["esc"]))},[n("label",null,[Ne(n("input",{"onUpdate:modelValue":ne[1]||(ne[1]=K=>w.value=K),type:"checkbox"},null,512),[[en,w.value]]),_e(" "+r(e(i)("meeting.publish_consent")),1)]),n("button",{type:"button",disabled:d.value,onClick:ne[2]||(ne[2]=K=>m.value=!1)},r(e(i)("common.cancel")),9,$v),n("button",{type:"button",disabled:!w.value||d.value,onClick:q},r(e(i)("meeting.publish_confirm")),9,Iv)],40,Cv)):(o(),l("button",{key:0,type:"button",disabled:d.value,onClick:ne[0]||(ne[0]=K=>{m.value=!0,w.value=!1})},r(e(i)("meeting.publish")),9,kv))],64)):C("",!0),n("h4",null,r(e(i)("meeting.transcript")),1),n("div",{ref_key:"transcriptRoot",ref:h,class:"wc-meeting-review__transcript"},[(o(!0),l(fe,null,Ve(j.value,(K,F)=>(o(),l("p",{key:F,"data-selected":I.value===K.t},[n("strong",null,r(le(K.t))+" "+r(K.s),1),_e(" "+r(K.text),1)],8,Mv))),128))],512),p.value?.hasTranscript?(o(),l("button",{key:1,type:"button",disabled:d.value,onClick:X},r(e(i)("meeting.full_transcript")),9,Tv)):C("",!0)],64)):C("",!0),n("p",null,[n("a",Sv,r(e(i)("meeting.participant_request")),1)])],8,ov))}}),Qo=bt(Av,[["__scopeId","data-v-3bb59d0f"]]),Rv=["disabled","title","aria-label","aria-expanded"],Ev=["aria-label"],Lv={class:"wc-meeting__summary"},Uv={role:"status"},Pv={key:0},Dv=["disabled"],Ov=["disabled"],qv=["disabled"],Vv=["disabled"],Bv=["disabled"],Nv={key:0,class:"wc-meeting__hint"},Fv={key:1,role:"alert"},Kv=["aria-label"],jv={class:"wc-meeting__actions"},xv=["disabled"],Hv=["disabled"],Gv={key:4,class:"wc-meeting__history"},zv={key:0},Qv=["onClick"],Xv=_t({__name:"ChatMeetingPanel",props:{conversationId:{},userId:{},canManage:{type:Boolean}},setup(t){const s=t,{t:a,locale:u}=Nt(),i=g(!1),p=g(!1),b=g(!1),d=g([]),y=g(""),m=si(),w=g(!1),h=g(!1),I=g(null),E=g(!1),j=g(!1),N=g(null),x=g(""),U=g(""),_=g(!1),S=g(!1),$=g(!1),v=g(!1),R=g(0);let O=!1,H=0,M=null,q=null,X,Y=!1;const le=s.userId,oe=s.conversationId,ne=Un(),K={...Pn(),"X-Meeting-User":le},F=bn().public.apiBase||void 0,re=`/api/app/chat/v2/conversations/${encodeURIComponent(oe)}/meetings`,ae=()=>!O&&s.userId===le&&s.conversationId===oe&&Un()===ne,Te=P(()=>I.value&&[0,1,2].includes(I.value.status)),he=g(!1),ye=P(()=>!!Te.value||$.value||v.value||_.value||E.value||i.value||!!U.value||he.value),ot=P(()=>w.value&&(h.value||!!I.value));function we(){if(!I.value&&h.value&&!_.value){Pe();return}he.value=!he.value}const de=P(()=>S.value?"meeting.cancelling":$.value?"meeting.recording":{0:"meeting.recording_elsewhere",1:"meeting.queued",2:"meeting.processing",3:"meeting.draft",4:"meeting.published",5:"meeting.failed",6:"meeting.cancelled"}[I.value?.status??-1]||"meeting.ready"),me=D=>a(["recording_elsewhere","queued","processing","draft","published","failed","cancelled"][D]&&`meeting.${["recording_elsewhere","queued","processing","draft","published","failed","cancelled"][D]}`||"meeting.ready");async function $e(){if(!(!ae()||p.value)){i.value=!0,p.value=!0;try{const D=await $fetch(`${re}/history`,{baseURL:F,headers:K,credentials:"include",retry:0,timeout:15e3});ae()&&(d.value=D.items,b.value=D.truncated)}catch{ae()&&(U.value="meeting.review_error")}finally{ae()&&(p.value=!1)}}}const Ie=P(()=>
2{const D=Math.floor(($.value?R.value:I.value?.audioMs||0)/1e3);return`${Math.floor(D/60)}:${String(D%60).padStart(2,"0")}`});async function be(D,te={},G){return await $fetch(`${re}/${D}`,{method:"POST",body:te,baseURL:F,headers:K,credentials:"include",retry:0,timeout:65e3,signal:G})}async function Ue(){if(!(Y||!ae())){clearTimeout(X),Y=!0;try{const D=await $fetch(re,{baseURL:F,headers:K,credentials:"include",retry:0,timeout:15e3});if(!ae())return;w.value=D.enabled,h.value=D.canBegin,x.value=D.consentNoticeVersion,!M&&!_.value?I.value=D.meeting:!_.value&&M&&D.meeting?.id===I.value?.id&&D.meeting?.status!==0&&I.value?.status===0&&(M.release(),M=null,v.value=!1,$.value=!1,I.value=D.meeting)}catch{ae()&&w.value&&(U.value="meeting.connection_error")}finally{Y=!1,ae()&&w.value&&(X=setTimeout(Ue,15e3))}}}function st(D){E.value=!1,q?.(D&&j.value),q=null}async function Pe(){if(_.value||Te.value||!ae())return;_.value=!0,U.value="",j.value=!1,E.value=!0;const D=new Promise(Q=>{q=Q});if(await vt(),N.value?.focus(),!await D||!ae()){_.value=!1;return}const G=++H;M=av({requestId:crypto.randomUUID(),consentVersion:x.value,language:u.value,isCurrent:()=>ae()&&G===H,request:be,createRecorder:(Q,pe)=>nv({consentConfirmed:!0,onSegment:Q,onState:pe}),onMeeting:Q=>{I.value=Q,Q.status!==0&&($.value=!1,M=null)},onRecorder:Q=>{$.value=["starting","recording","stopping"].includes(Q.phase),R.value=Q.sampleCount*1e3/16e3},onError:Q=>{U.value=`meeting.${Q}`}});try{v.value=await M.prepare()}catch(Q){ae()&&G===H&&(M=null,s.canManage?m.handleError(Q,oe):m.handleBuyerError(Q,oe))}finally{ae()&&(_.value=!1)}}async function mt(){if(!(!M||_.value)){_.value=!0,v.value=!1;try{await M.start()}catch{ae()&&(U.value="meeting.meeting_capture_failed")}finally{ae()&&(_.value=!1)}}}async function Ye(){if(!(!M||_.value)){_.value=!0;try{await M.retryEnd(),U.value=""}catch{ae()&&(U.value="meeting.meeting_finish_failed")}finally{ae()&&(_.value=!1)}}}async function rt(){!M||_.value||(_.value=!0,await M.stop(),ae()&&(_.value=!1))}async function pt(){if(!S.value){if(S.value=!0,_.value=!0,U.value="",M)await M.cancel();else if(I.value)try{const D=await be(`${I.value.id}/cancel`);ae()&&(I.value=D)}catch{ae()&&(U.value="meeting.meeting_cleanup_pending")}ae()&&($.value=!1,v.value=!1,_.value=!1,S.value=!1,M=null)}}function Xe(){O||(O=!0,clearTimeout(X),st(!1),M?.cancel())}return Ee(()=>[s.userId,s.conversationId],Xe,{flush:"sync"}),nn(()=>{Ue()}),St(Xe),(D,te)=>(o(),l(fe,null,[e(ot)?(o(),Oe(ln,{key:0,defer:"",to:"#wc-chat-head-actions"},[n("button",{type:"button",class:Ce(["wc-meeting-headbtn",{"is-live":e(ye)&&(e($)||e(Te))}]),disabled:e(_)&&!e($),title:e(a)("meeting.title"),"aria-label":e(a)("meeting.title"),"aria-expanded":e(ye),onClick:we},[...te[6]||(te[6]=[n("i",{class:"fa-solid fa-circle-dot"},null,-1)])],10,Rv)])):C("",!0),e(w)&&e(ye)?(o(),l("section",{key:1,class:"wc-meeting","aria-label":e(a)("meeting.title")},[n("div",Lv,[n("strong",null,r(e(a)("meeting.title")),1),n("span",Uv,[_e(r(e(a)(e(de)))+" ",1),e(I)||e($)?(o(),l("span",Pv,"· "+r(e(Ie)),1)):C("",!0)]),!e(Te)&&e(h)?(o(),l("button",{key:0,type:"button",disabled:e(_),onClick:Pe},r(e(a)("meeting.begin")),9,Dv)):C("",!0),e(v)?(o(),l("button",{key:1,type:"button",disabled:e(_),onClick:mt},r(e(a)("meeting.open_mic")),9,Ov)):C("",!0),e(U)==="meeting.meeting_finish_failed"?(o(),l("button",{key:2,type:"button",disabled:e(_),onClick:Ye},r(e(a)("meeting.retry_end")),9,qv)):C("",!0),e($)?(o(),l("button",{key:3,type:"button",disabled:e(_),onClick:rt},r(e(a)("meeting.end")),9,Vv)):C("",!0),e(I)?.canCancel||e(_)&&!e(E)?(o(),l("button",{key:4,type:"button",disabled:e(S),onClick:pt},r(e(a)("meeting.cancel")),9,Bv)):C("",!0)]),e($)?(o(),l("p",Nv,r(e(a)("meeting.foreground")),1)):C("",!0),e(U)?(o(),l("p",Fv,r(e(a)(e(U))),1)):C("",!0),e(E)?(o(),l("div",{key:2,class:"wc-meeting__consent",role:"dialog","aria-modal":"false","aria-label":e(a)("meeting.consent_title"),onKeydown:te[3]||(te[3]=In(Ut(G=>st(!1),["stop"]),["esc"]))},[n("strong",null,r(e(a)("meeting.consent_title")),1),n("p",null,r(e(a)("meeting.consent_notice")),1),n("p",null,r(e(a)("meeting.test_notice")),1),n("label",null,[Ne(n("input",{ref_key:"consentCheckbox",ref:N,"onUpdate:modelValue":te[0]||(te[0]=G=>ft(j)?j.value=G:null),type:"checkbox"},null,512),[[en,e(j)]]),_e(" "+r(e(a)("meeting.consent_check")),1
2)]),n("div",jv,[n("button",{type:"button",onClick:te[1]||(te[1]=G=>st(!1))},r(e(a)("common.cancel")),1),n("button",{type:"button",disabled:!e(j),onClick:te[2]||(te[2]=G=>st(!0))},r(e(a)("meeting.confirm_begin")),9,xv)])],40,Kv)):C("",!0),e(I)?(o(),l("button",{key:3,type:"button",disabled:e(p),onClick:$e},r(e(a)("meeting.history")),9,Hv)):C("",!0),e(i)?(o(),l("div",Gv,[n("button",{type:"button",onClick:te[4]||(te[4]=G=>{i.value=!1,y.value=""})},r(e(a)("common.cancel")),1),e(b)?(o(),l("p",zv,r(e(a)("meeting.history_limit")),1)):C("",!0),(o(!0),l(fe,null,Ve(e(d),G=>(o(),l("article",{key:G.id},[n("button",{type:"button",onClick:Q=>y.value=e(y)===G.id?"":G.id},r(me(G.status))+" · "+r(G.startedAt?new Date(G.startedAt).toLocaleString(e(u)):G.id),9,Qv),e(y)===G.id?(o(),Oe(Qo,{key:`${e(le)}:${e(oe)}:${G.id}`,"meeting-id":G.id,"conversation-id":e(oe),"user-id":e(le),onChanged:te[5]||(te[5]=Q=>{$e(),Ue()})},null,8,["meeting-id","conversation-id","user-id"])):C("",!0)]))),128))])):C("",!0)],8,Ev)):C("",!0)],64))}}),Wv=bt(Xv,[["__scopeId","data-v-58fefbc9"]]),Jv=["role","aria-modal","aria-label"],Yv={class:"wc-voice-room__bar-info"},Zv={key:0,class:"wc-voice-room__bar-error",role:"alert"},ef=["disabled"],tf={key:0,class:"wc-voice-room__notice"},nf={key:1,role:"status"},af={key:2,role:"alert"},of={key:3,role:"alert"},sf={class:"wc-voice-room__people"},lf={class:"wc-voice-room__avatar"},rf={key:0},cf=["onClick"],uf={key:4},df=["disabled"],vf=_t({__name:"ChatVoiceRoom",props:{conversationId:{},join:{},canEnd:{type:Boolean},canManage:{type:Boolean},minimized:{type:Boolean},mobileDockVisible:{type:Boolean}},emits:["close","ended","backgroundExit","update:minimized"],setup(t,{emit:s}){const a=t,u=s,{t:i}=Nt(),p=bn().public.apiBase||void 0,b=Pn(),d=g(null),y=g(null);let m=null;const w=g(!0),h=g(!1),I=g(!a.join.canPublish),E=g([]),j=g(""),N=g(""),x=g(!1),U=g(!1);let _=null,S=null,$,v=!1,R=!1,O=!1;const H=()=>!!window.flutter_inappwebview,M=`/api/app/chat/v2/conversations/${encodeURIComponent(a.conversationId)}/voice`,q=new Set,X=P(()=>a.minimized?`wc-voice-room wc-voice-room--bar${a.mobileDockVisible?" wc-voice-room--above-dock":""}`:"wc-voice-room"),Y=P(()=>E.value.some(de=>de.speaking));function le(){!a.minimized||v||!y.value||document.body.style.setProperty("--wc-voice-minibar-height",`${y.value.getBoundingClientRect().height}px`)}function oe(de){const me=document?.body;me&&(de?(me.setAttribute("data-wc-voice-minibar",""),le()):(me.removeAttribute("data-wc-voice-minibar"),me.style.removeProperty("--wc-voice-minibar-height")))}Ee(()=>!!a.minimized,oe,{immediate:!0,flush:"post"});function ne(de){for(const me of de.localParticipant.audioTrackPublications.values())me.track?.stop();de.disconnect().catch(()=>{})}function K(de=[]){if(!_)return;const me=new Set(de),$e=[_.localParticipant,..._.remoteParticipants.values()];E.value=$e.map(Ie=>({id:Ie.identity,name:Ie.name||Ie.identity,speaking:me.has(Ie.identity),hand:q.has(Ie.identity)}))}function F(de){const me=de.attach();me.autoplay=!0,d.value?.appendChild(me)}async function re(){let de=null;const me=()=>!v&&!R&&_===de;try{const $e=await Dt(()=>import("./DtmdqohW.js"),[],import.meta.url);if(v||R)return;if(de=new $e.Room({adaptiveStream:!0,dynacast:!0}),_=de,_.on($e.RoomEvent.ParticipantConnected,()=>K()),_.on($e.RoomEvent.ParticipantDisconnected,Ie=>{q.delete(Ie.identity),K()}),_.on($e.RoomEvent.ActiveSpeakersChanged,Ie=>K(Ie.map(be=>be.identity))),_.on($e.RoomEvent.TrackSubscribed,(Ie,be,Ue)=>{me()&&F(Ie)}),_.on($e.RoomEvent.TrackUnsubscribed,Ie=>{for(const be of Ie.detach())be.remove()}),_.on($e.RoomEvent.TrackMuted,(Ie,be)=>{me()&&be===de?.localParticipant&&(I.value=!be.isMicrophoneEnabled)}),_.on($e.RoomEvent.TrackUnmuted,(Ie,be)=>{me()&&be===de?.localParticipant&&(I.value=!be.isMicrophoneEnabled)}),_.on($e.RoomEvent.DataReceived,(Ie,be,Ue,st)=>{if(!(st!=="voice.raise_hand"||!be))try{JSON.parse(new TextDecoder().decode(Ie)).raised?q.add(be.identity):q.delete(be.identity),K()}catch{}}),_.on($e.RoomEvent.Disconnected,Ie=>{if(!me())return;const be=$e.DisconnectReason?.ROOM_DELETED;N.value=be!==void 0&&Ie===be?"voice.room_ended":"voice.disconnected",ye(!1)}),await de.connect(a.join.url,a.join.token),!me()){ne(de);return}if(h.value=!0,j.value=de.localParticipant.identity,await de.startAudio().catch(()=>{}),!me()){ne(de);return}if(a.join.canPublish&&await de.localParticipant.setMicrophoneEnabled(!0),!me()){ne(de);return}
2if(I.value=!a.join.canPublish,K(),"wakeLock"in navigator){const Ie=await navigator.wakeLock.request("screen").catch(()=>null);me()?S=Ie:Ie?.release()}}catch{me()?(N.value="voice.connection_error",ye(!1)):de&&ne(de)}finally{v||(w.value=!1)}}async function ae(){if(!_||R||O||!a.join.canPublish)return;const de=_,me=I.value;O=!0;try{if(await de.localParticipant.setMicrophoneEnabled(me),v||R||_!==de){ne(de);return}I.value=!me}catch{!v&&!R&&(N.value="voice.microphone_error")}finally{O=!1}}async function Te(){if(!_)return;const de=!q.has(_.localParticipant.identity);try{await _.localParticipant.publishData(new TextEncoder().encode(JSON.stringify({raised:de})),{reliable:!0,topic:"voice.raise_hand"}),de?q.add(_.localParticipant.identity):q.delete(_.localParticipant.identity),K()}catch{N.value="voice.raise_hand_error"}}async function he(de){try{await $fetch(`${M}/mute/${encodeURIComponent(de)}`,{method:"POST",body:{},baseURL:p,headers:b,credentials:"include",retry:0,timeout:15e3})}catch{N.value="voice.mute_error"}}function ye(de=!0){R=!0,clearTimeout($);const me=_;_=null,me&&ne(me),h.value=!1,w.value=!1,E.value=[],q.clear(),d.value?.replaceChildren(),S?.release(),S=null,de&&u("close")}async function ot(){if(!U.value){U.value=!0;return}try{await $fetch(`${M}/end`,{method:"POST",body:{},baseURL:p,headers:b,credentials:"include",retry:0,timeout:15e3}),ye(!1),u("ended")}catch{N.value="voice.end_error",U.value=!1}}function we(){clearTimeout($),!(!H()||document.visibilityState!=="hidden")&&($=setTimeout(()=>{!v&&document.visibilityState==="hidden"&&(ye(!1),x.value=!0,u("backgroundExit"))},6e4))}return nn(()=>{typeof ResizeObserver<"u"&&y.value&&(m=new ResizeObserver(le),m.observe(y.value)),document.addEventListener("visibilitychange",we),re()}),St(()=>{v=!0,m?.disconnect(),oe(!1),document.removeEventListener("visibilitychange",we),ye(!1)}),(de,me)=>(o(),Oe(ln,{to:"body"},[n("section",{ref_key:"roomHost",ref:y,class:Ce(e(X)),role:t.minimized?"region":"dialog","aria-modal":t.minimized?void 0:!0,"aria-label":e(i)("voice.title")},[n("div",{ref_key:"audioHost",ref:d,hidden:""},null,512),t.minimized?(o(),l(fe,{key:0},[n("div",Yv,[n("span",{class:Ce(["wc-voice-room__dot",{live:e(Y)}])},null,2),n("strong",null,r(e(i)("voice.title")),1),n("span",null,r(e(i)("voice.participants",{count:e(E).length})),1)]),e(N)?(o(),l("p",Zv,r(e(i)(e(N))),1)):C("",!0),t.join.canPublish?(o(),l("button",{key:1,type:"button",disabled:!e(h),onClick:ae},r(e(i)(e(I)?"voice.unmute":"voice.mute")),9,ef)):C("",!0),n("button",{type:"button",onClick:me[0]||(me[0]=$e=>u("update:minimized",!1))},r(e(i)("voice.expand")),1),n("button",{type:"button",onClick:me[1]||(me[1]=$e=>ye())},r(e(i)("voice.leave")),1)],64)):(o(),l(fe,{key:1},[n("header",null,[n("div",null,[n("strong",null,r(e(i)("voice.title")),1),n("span",null,r(e(i)("voice.participants",{count:e(E).length})),1)]),n("button",{type:"button",onClick:me[2]||(me[2]=$e=>u("update:minimized",!0))},r(e(i)("voice.minimize")),1),n("button",{type:"button",onClick:me[3]||(me[3]=$e=>ye())},r(e(i)("voice.leave")),1)]),H()?(o(),l("p",tf,r(e(i)("voice.foreground")),1)):C("",!0),e(w)?(o(),l("p",nf,r(e(i)("voice.connecting")),1)):C("",!0),e(x)?(o(),l("p",af,r(e(i)("voice.background_exit")),1)):C("",!0),e(N)?(o(),l("p",of,r(e(i)(e(N))),1)):C("",!0),n("ul",sf,[(o(!0),l(fe,null,Ve(e(E),$e=>(o(),l("li",{key:$e.id,class:Ce({speaking:$e.speaking})},[n("span",lf,r(($e.name||"?").slice(0,1).toUpperCase()),1),n("span",null,[_e(r($e.name)+" ",1),$e.hand?(o(),l("small",rf,"✋")):C("",!0)]),t.canManage&&$e.id!==e(j)?(o(),l("button",{key:0,type:"button",onClick:Ie=>he($e.id)},r(e(i)("voice.mute_person")),9,cf)):C("",!0)],2))),128))]),e(h)?(o(),l("footer",uf,[n("button",{type:"button",disabled:!t.join.canPublish,onClick:ae},r(e(i)(e(I)?"voice.unmute":"voice.mute")),9,df),n("button",{type:"button",onClick:Te},r(e(i)("voice.raise_hand")),1),t.canEnd?(o(),l("button",{key:0,type:"button",class:"danger",onClick:ot},r(e(i)(e(U)?"voice.confirm_end":"voice.end")),1)):C("",!0),e(U)?(o(),l("button",{key:1,type:"button",onClick:me[4]||(me[4]=$e=>U.value=!1)},r(e(i)("common.cancel")),1)):C("",!0)])):C("",!0)],64))],10,Jv)]))}}),ff=bt(vf,[["__scopeId","data-v-9864ccd4"]]),ho=new Map;function Xo(t){let s=ho.get(t);return s||(s={room:g(null),canJoin:g(!1)},ho.set(t,s)),s}const mf=["disabled","title","aria-label"],pf=["aria-label"],gf={key:0},hf=["disabled"],yf={key:1,role:"alert"},_f=_t({__name:"ChatVoicePanel",props:{conversationId:{},userId:{},canManage:{type:Boolean},mobileDockVisible:{type:Boolean}},setup(t){const s=t,{t:a}=Nt(),u=Xo(s.conversationId),i=g(!1),p=g(!1),b=g(!1),d=g(""),y=u.canJoin,m=u.room,w=g(null),h=g(!1),I=bn().public.apiBase||void 0,E=Pn(),j=`/api/app/chat/v2/conversations/${encodeURIComponent(s.conversationId)}/voice`;let N,x=!1;function U(){clearTimeout(N),!(x||!i.value||document.visibilityState==="hidden")&&(N=setTimeout(_,1e4))}async function _(){if(clearTimeout(N),!x)try{const X=await $fetch(j,{baseURL:I,headers:E,credentials:"include",retry:0,timeout:15e3});if(x)return;i.value=X.enabled,y.value=X.canJoin,p.value=X.canStart,m.value=X.room}catch{i.value&&(d.value="voice.status_error")}finally{U()}}function S(){if(!x){if(document.visibilityState==="hidden"){clearTimeout(N);return}_()}}async function $(){if(!(x||b.value)){b.value=!0,d.value="";try{const X=await $fetch(j,{method:"POST",body:{},baseURL:I,headers:E,credentials:"include",retry:0,timeout:2e4});if(x)return;m.value=X,await R()}catch(X){if(x)return;const Y=X?.data?.code;Y==="voice_active"?(m.value=X.data?.room||m.value,await R()):d.value=Y==="voice_rate_limited"?"voice.rate_limited":"voice.start_error"}finally{b.value=!1}}}async function v(){if(!(x||b.value||w.value||!y.value)){b.value=!0,d.value="";try{await R()}finally{b.value=!1}}}async function R(){if(!(x||!y.value))try{const X=await $fetch(`${j}/join`,{method:"POST",body:{},baseURL:I,headers:E,credentials:"include",retry:0,timeout:15e3});x||(w.value=X)}catch(X){if(x)return;const Y=X?.data?.code;d.value=Y==="voice_full"?"voice.full":Y==="voice_rate_limited"?"voice.rate_limited":"voice.join_error"}}const O=P(()=>w.value?null:m.value?.status==="active"&&y.value?"join":p.value?"start":null),H=P(()=>m.value?.status==="active"||!!d.value);function M(){w.value=null,h.value=!1,_()}function q(X){X.detail?.conversationId===s.conversationId&&v()}return tn(P(()=>!!w.value&&!h.value),()=>{h.value=!0}),nn(()=>{window.addEventListener("weicity:join-voice",q),document.addEventListener("visibilitychange",S),_()}),St(()=>{x=!0,clearTimeout(N),window.removeEventListener("weicity:join-voice",q),document.removeEventListener("visibilitychange",S)}),(X,Y)=>(o(),l(fe,null,[e(i)&&e(O)?(o(),Oe(ln,{key:0,defer:"",to:"#wc-chat-head-actions"},[n("button",{type:"button",class:"wc-voice-headbtn",disabled:e(b),title:e(O)==="join"?e(a)("voice.join"):e(a)("voice.start"),"aria-label":e(O)==="join"?e(a)("voice.join"):e(a)("voice.start"),onClick:Y[0]||(Y[0]=le=>e(O)==="join"?v():$())},[...Y[4]||(Y[4]=[n("i",{class:"fa-solid fa-phone"},null,-1)])],8,mf)])):C("",!0),e(i)&&e(H)?(o(),l("section",{key:1,class:"wc-voice-panel","aria-label":e(a)("voice.title")},[Y[5]||(Y[5]=n("i",{class:"fa-solid fa-phone-volume wc-voice-panel__icon","aria-hidden":"true"},null,-1)),n("div",null,[n("strong",null,r(e(a)("voice.title")),1),e(m)?.status==="active"?(o(),l("span",gf,r(e(a)("voice.active_count",{count:e(m).participants})),1)):C("",!0)]),e(m)?.status==="active"&&e(y)&&!e(w)?(o(),l("button",{key:0,t
2ype:"button",disabled:e(b),onClick:v},r(e(a)("voice.join")),9,hf)):C("",!0),e(d)?(o(),l("p",yf,r(e(a)(e(d))),1)):C("",!0)],8,pf)):C("",!0),e(i)&&e(w)?(o(),Oe(ff,{key:2,minimized:e(h),"onUpdate:minimized":Y[1]||(Y[1]=le=>ft(h)?h.value=le:null),"conversation-id":t.conversationId,join:e(w),"mobile-dock-visible":t.mobileDockVisible,"can-end":e(m)?.canEnd||t.canManage,"can-manage":t.canManage,onClose:Y[2]||(Y[2]=le=>{w.value=null,h.value=!1}),onEnded:M,onBackgroundExit:Y[3]||(Y[3]=le=>d.value="voice.background_exit")},null,8,["minimized","conversation-id","join","mobile-dock-visible","can-end","can-manage"])):C("",!0)],64))}}),bf=bt(_f,[["__scopeId","data-v-a09828b5"]]),wf=32,kf=20;function Cf(t){const s=(typeof t=="string"?t:"").trim().replace(/^@+/,"");return s?`@${s}`:""}function yo(t){return t===" "||t==="	"||t===`
3`||t==="\r"||t==="\f"||t==="\v"||t===" "}function $f(t,s){const a=typeof t=="string"?t:"",u=Number.isFinite(s)?Math.max(0,Math.min(Math.floor(s),a.length)):0;for(let i=u-1;i>=0&&u-i-1<=wf;i--){const p=a[i];if(yo(p))return null;if(p==="@")return i>0&&!yo(a[i-1])?null:{start:i,query:a.slice(i+1,u)}}return null}function If(t,s){const a=typeof t=="string"?t:"",u=[];if(!a||!Array.isArray(s)||s.length===0)return u;const i=new Set;let p=0;for(const b of s){const d=(b?.userId||"").trim(),y=b?.token||"";if(!d||!y)continue;const m=a.indexOf(y,p);if(m<0)continue;const w=d.toLowerCase();if(!i.has(w)){if(i.size>=kf)continue;i.add(w)}u.push({userId:d,offset:m,length:y.length}),p=m+y.length}return u}function Mf(t,s,a){const u=typeof t=="string"?t:"",i=[];if(!u)return i;const p=(a||"").toLowerCase(),b=Array.isArray(s)?s:[];if(b.length===0)return[{kind:"text",text:u}];const d=[...b].sort((m,w)=>(m?.offset??0)-(w?.offset??0));let y=0;for(const m of d){const w=m?.offset,h=m?.length,I=(m?.userId||"").trim();if(!I||!Number.isInteger(w)||!Number.isInteger(h)||w<y||h<=0||w+h>u.length)continue;const E=u.slice(w,w+h);E[0]==="@"&&(E.includes("<")||E.includes(">")||E.includes(`
4`)||E.includes("\r")||(w>y&&i.push({kind:"text",text:u.slice(y,w)}),i.push({kind:"mention",text:E,userId:I,isMe:!!p&&I.toLowerCase()===p}),y=w+h))}return y<u.length&&i.push({kind:"text",text:u.slice(y)}),i}function Tf(t,s){const a=!s.v2Recalled;return[{key:"reply",labelKey:"common.action_reply",icon:"fa-solid fa-reply",visible:a},{key:"forward",labelKey:"chat.action_forward",icon:"fa-solid fa-share",visible:a&&s.v2Actions&&s.v2Ready},{key:"copy",labelKey:"common.copy",icon:"fa-regular fa-copy",visible:a&&t.hasText},{key:"transcribe",labelKey:"chat.ai_transcribe",icon:"fa-solid fa-closed-captioning",visible:a&&s.v2Actions&&s.v2Ready&&t.hasAudio&&!t.hasTranscript},{key:"translate",labelKey:"chat.ai_translate",icon:"fa-solid fa-language",visible:a&&s.v2Actions&&s.v2Ready&&t.hasText&&!t.isMyMsg},{key:"edit",labelKey:"chat.action_edit",icon:"fa-solid fa-pen",visible:a&&s.v2Actions&&s.v2Ready&&t.isMyMsg&&s.canEdit},{key:"pin",labelKey:"chat.action_pin",icon:"fa-solid fa-thumbtack",visible:a&&s.canPin&&!s.pinned},{key:"unpin",labelKey:"chat.action_unpin",icon:"fa-solid fa-thumbtack",visible:a&&s.canPin&&s.pinned},{key:"select",labelKey:"chat.actions_select",icon:"fa-regular fa-square-check",visible:s.canSelect},{key:"readers",labelKey:"chat.actions_readers",icon:"fa-regular fa-eye",visible:a&&s.canSeeReaders&&t.isMyMsg&&!t.isDirect&&s.v2Ready},{key:"report",labelKey:"social.report",icon:"fa-regular fa-flag",visible:a&&!t.isMyMsg},{key:"block",labelKey:"chat.actions_block",icon:"fa-solid fa-ban",danger:!0,visible:t.isDirect&&!t.isMyMsg&&!!t.userId&&!s.blocked},{key:"unblock",labelKey:"chat.actions_unblock",icon:"fa-solid fa-ban",visible:t.isDirect&&!t.isMyMsg&&!!t.userId&&s.blocked},{key:"recall",labelKey:"chat.action_recall",icon:"fa-solid fa-rotate-left",danger:!0,visible:a&&s.v2Actions&&s.v2Ready&&s.canRecall},{key:"delete",labelKey:"common.delete",icon:"fa-solid fa-trash-can",danger:!0,visible:a&&t.isMyMsg&&!s.v2Actions}]}function Sf(t,s){return Tf(t,s).filter(a=>a.visible)}function Af(){const t=g(!1),s=g("popup"),a=g(0),u=g(0);let i=null;function p(d,y){s.value=y;
4{const m=document.activeElement;i=m instanceof HTMLElement?m:null}if(y==="popup")if(d&&"clientX"in d&&d.clientX>0)a.value=d.clientX,u.value=d.clientY;else{const m=d?.currentTarget??d?.target,w=m?.getBoundingClientRect?.();a.value=w?w.left:0,u.value=w?w.bottom:0,m&&(i=m)}t.value=!0}function b(){t.value=!1;const d=i;i=null,d&&vt(()=>{try{d.focus({preventScroll:!0})}catch{}})}return{menuOpen:t,menuMode:s,menuX:a,menuY:u,openMessageMenu:p,closeMessageMenu:b}}const yn=["joys","heart","thumbsUp","tried"],xn={joys:"😂",heart:"❤️",thumbsUp:"👍",tried:"🙏"},Hn={joys:"OnAdd_Joys",heart:"OnAdd_Heart",thumbsUp:"OnAdd_ThumbsUp",tried:"OnAdd_Tride"};function Rf(t){return yn.includes(t)}function Ef(t){return Rf(t)?xn[t]:t}const Wo="wc.emoji.recent",Jo=24;function Yo(){try{const t=window.localStorage.getItem(Wo),s=t?JSON.parse(t):[];return Array.isArray(s)?s.filter(a=>typeof a=="string").slice(0,Jo):[]}catch{return[]}}function _o(t){const s=[t,...Yo().filter(a=>a!==t)].slice(0,Jo);try{window.localStorage.setItem(Wo,JSON.stringify(s))}catch{}return s}const Lf=["data-msg-id"],Uf=["title"],Pf=["src","alt"],Df={key:1,class:"wc-chat-msg__avatar"},Of=["src","alt"],qf={key:2,class:"wc-chat-msg__avatar-ph"},Vf={class:"wc-chat-msg__bubble-wrap"},Bf={key:0,class:"wc-chat-msg__meta"},Nf=["title"],Ff={key:1,class:"wc-chat-msg__name"},Kf={key:2,class:"wc-chat-msg__title"},jf={key:3,class:"wc-chat-msg__title"},xf={class:"wc-chat-msg__time"},Hf={key:4,class:"wc-chat-msg__edited"},Gf={key:1,class:"wc-chat-msg__hovertime","aria-hidden":"true"},zf={key:0,class:"wc-chat-msg__recalled"},Qf=["aria-label","title"],Xf={class:"wc-chat-msg__reply-name"},Wf={key:0,class:"wc-chat-msg__reply-del"},Jf={key:1,class:"wc-chat-msg__reply-text"},Yf={key:2,class:"wc-chat-msg__reply-text"},Zf={key:2,class:"wc-chat-msg__content"},em=["onClick","onKeydown"],tm=["innerHTML"],nm=["src","onClick"],am={key:4,class:"wc-chat-msg__audio"},om={key:0,class:"wc-chat-msg__audio-stt"},sm={key:5,class:"wc-chat-msg__transcript"},im={class:"wc-chat-msg__transcript-label"},lm={key:0,class:"wc-chat-msg__transcript-text"},rm={key:1,class:"wc-chat-msg__transcript-busy"},cm={key:6,class:"wc-chat-msg__translation"},um={key:0,class:"wc-chat-msg__translation-text"},dm={key:1,class:"wc-chat-msg__translation-busy"},vm={key:9,class:"wc-chat-msg__file"},fm=["href"],mm=["src"],pm={key:1,class:"wc-chat-msg__file-icon wc-chat-msg__file-icon--ext"},gm={key:2,class:"wc-chat-msg__file-icon","aria-hidden":"true"},hm={class:"wc-chat-msg__file-meta"},ym={key:0},_m={key:1,class:"wc-chat-msg__file-gone"},bm={key:2,class:"wc-chat-msg__file-desc"},wm={class:"wc-chat-msg__file-open"},km={key:10,class:"wc-chat-msg__link-preview"},Cm=["href"],$m=["src"],Im={class:"wc-chat-msg__link-meta"},Mm={key:0},Tm={key:1,class:"wc-chat-msg__link-desc"},Sm={key:2,class:"wc-chat-msg__link-url"},Am={class:"wc-chat-msg__actions"},Rm=["title","aria-label","aria-expanded"],Em=["title","aria-label"],Lm=["title","aria-label"],Um=["title","aria-label"],Pm=["title","aria-label"],Dm=["title","aria-label"],Om=["title","aria-label"],qm={key:11,class:"wc-chat-msg__reactions"},Vm=["onMouseenter"],Bm=["aria-label","onClick","onPointerdown"],Nm={key:0,class:"wc-chat-msg__roster",role:"tooltip"},Fm={key:2,class:"wc-chat-msg__send-state"},Km=["title"],jm=["title","aria-label"],xm={key:0,class:"wc-chat-msg__avatar"},Hm=["src","alt"],Gm={key:1,class:"wc-chat-msg__avatar-ph"},zm={class:"wc-msgmenu-rx"},Qm=["aria-label","onClick"],Xm=["title","aria-label"],Wm={key:0,class:"wc-msgtoast",role:"status"},Jm={class:"wc-msgreport",role:"dialog","aria-modal":"true"},Ym={class:"wc-msgreport__title"},Zm={class:"wc-msgreport__desc"},ep={class:"wc-msgreport__reasons"},tp=["value"],np=["placeholder"],ap={class:"wc-msgreport__acts"},op=["disabled"],bo=500,wo=10,sp=48*3600*1e3,ip=24*3600*1e3,ko=6,lp=_t({__name:"ChatMessageItem",props:{msg:{},currentUserId:{},canManage:{type:Boolean},grouped:{type:Boolean},sendFailed:{type:Boolean},sending:{type:Boolean},v2Actions:{type:Boolean},v2Meta:{},canDeleteOthers:{type:Boolean},pinned:{type:Boolean},blockedPeer:{type:Boolean},canSeeReaders:{type:Boolean},canSelect:{type:Boolean},resolveNickname:{type:Function},peerReadSeq:{},transcribing:{type:Boolean},translating:{type:Boolean},translation:{},showOriginal:{type:Boolean},poll:{},pollBusy:{type:Boolean}},emits:["reply","delete","pin","react","retry","openPeer","report","editRequest","recall","forward","unpin","select","blockUser","showReaders","reactKey","jumpTo","openImage","transcribe","translate","toggleOriginal","pollLoad","pollVote","pollRetract","pollClose"],setup(t,{emit:s}){const a=t,u=s,i=P(()=>!a.msg.isMyMsg&&!a.msg.isSystemMsg&&!a.msg.isBot&&!!a.msg.userId);Aa(()=>{N()});const{t:p}=Nt(),{menuOpen:b,menuMode:d,menuX:y,menuY:m,openMessageMenu:w,closeMessageMenu:h}=Af();let I=null,E=null,j=!1;function N(){I&&(clearTimeout(I),I=null),E=null}function x(B){B.pointerType==="touch"&&(N(),E={x:B.clientX,y:B.clientY},I=setTimeout(()=>{I=null,j=!0,w(null,"sheet");try{navigator.vibrate?.(15)}catch{}},bo))}function U(B){!E||B.pointerType!=="touch"||(Math.abs(B.clientX-E.x)>wo||Math.abs(B.clientY-E.y)>wo)&&N()}function _(){N()}function S(B){j&&(j=!1,B.stopPropagation(),B.preventDefault())}function $(B){if(b.value||j){B.preventDefault();return}B.preventDefault(),w(B,"popup")}const v=P(()=>{const B=a.msg.content||"";if(!B)return"";const Z=document.createElement("div");return Z.innerHTML=B.replace(/<br\s*\/?>/gi,`
5`),(Z.textContent||"").trim()}),R=g("");async function O(){const B=v.value;if(B){try{if(navigator.clipboard?.writeText)await navigator.clipboard.writeText(B);else{const Z=document.createElement("textarea");Z.value=B,Z.style.position="fixed",Z.style.opacity="0",document.body.appendChild(Z),Z.select(),document.execCommand("copy"),document.body.removeChild(Z)}R.value="ok"}catch{R.value="fail"}setTimeout(()=>{R.value=""},1800)}}const H=g(!1),M=g(""),q=g(""),X=P(()=>[{key:"spam",label:p("social.report_reason_spam")},{key:"harassment",label:p("social.report_reason_harassment")},{key:"sexual",label:p("social.report_reason_sexual")},{key:"violence",label:p("social.report_reason_violence")},{key:"fraud",label:p("social.report_reason_fraud")},{key:"other",label:p("social.report_reason_other")}]);function Y(){M.value="",q.value="",H.value=!0}function le(){H.value=!1}tn(H,le);const{onOverlayPointerdown:oe,onOverlayClick:ne}=Ea(le);function K(){M.value&&(u("report",{targetType:"message",targetId:a.msg.msgId,reason:M.value,detail
5:q.value.trim()}),H.value=!1)}const{parse:F,hm:re,ymdhm:ae}=ia(),Te=P(()=>{const B=F(a.msg.createDate);return B?re(B):""});function he(B){const Z=F(B);return Z?(Date.now()-Z.getTime())/36e5<24?re(Z):ae(Z):""}const ye=P(()=>a.msg.images.length>0),ot=P(()=>!!a.msg.replyToMsgId),we=P(()=>{const B=a.msg.includeUrls||"";return!B||!(B.startsWith("/")?B:(()=>{try{return new URL(B).pathname}catch{return""}})()).startsWith("/s/")?null:{url:B,name:a.msg.includeUrlFirstTitle||"",desc:a.msg.includeUrlFirstDescription||"",thumb:a.msg.includeUrlsFirstImages||""}}),de=P(()=>!!a.msg.includeUrls&&!we.value),me=P(()=>!!a.msg.audioMp3Url),$e=Bt(()=>Dt(()=>import("./BZ0q7P7U.js"),__vite__mapDeps([42,2,3,43]),import.meta.url)),Ie=P(()=>{const B=we.value?.name||"",Z=B.lastIndexOf(".");if(Z<=0||Z===B.length-1)return"";const Fe=B.slice(Z+1);return Fe.length<=4&&/^[A-Za-z0-9]+$/.test(Fe)?Fe.toUpperCase():""}),be=P(()=>!!a.v2Actions&&!!a.v2Meta?.createdAt&&(a.v2Meta?.seq??0)>0),Ue=P(()=>!!a.v2Meta?.deletedAt),st=P(()=>Mf(a.msg.content||"",a.msg.mentions,a.currentUserId)),Pe=P(()=>!!a.v2Meta?.editedAt);function mt(){const B=Date.parse(a.v2Meta?.createdAt||a.msg.createDate||"");return Number.isFinite(B)?Date.now()-B:Number.POSITIVE_INFINITY}const Ye=P(()=>be.value&&a.msg.isMyMsg&&!Ue.value&&mt()<sp),rt=P(()=>be.value&&!Ue.value&&(a.msg.isMyMsg&&mt()<ip||!!a.canDeleteOthers)),pt=P(()=>be.value&&!Ue.value),Xe=P(()=>{const B=a.currentUserId.toLowerCase(),Z=a.msg.reactions;return(Z&&Object.keys(Z).length?Object.entries(Z).map(([ie,We])=>[ie,We||[]]):yn.map(ie=>[ie,a.msg[ie]||[]])).filter(([,ie])=>ie.length>0).map(([ie,We])=>({key:ie,icon:Ef(ie),count:We.length,active:We.some(De=>(De||"").toLowerCase()===B),users:We}))});function D(B){u("reactKey",a.msg,B.key,!B.active)}const te=g(""),G=P(()=>{const B=Xe.value.find(Z=>Z.key===te.value);return B?B.users.map(Z=>a.resolveNickname?.(Z)||p("chat.reaction_unknown_user")):[]});let Q=null;function pe(B){te.value=B}function Se(){te.value=""}function Ae(B,Z){B.pointerType==="touch"&&(Q&&clearTimeout(Q),Q=setTimeout(()=>{te.value=Z},bo))}function Re(){Q&&(clearTimeout(Q),Q=null)}const xe=g([]),et=P(()=>{if(!a.v2Actions)return yn.map(ie=>xn[ie]);const B=xe.value.slice(0,ko),Z=yn.map(ie=>xn[ie]),Fe=[...B];for(const ie of Z){if(Fe.length>=ko)break;Fe.includes(ie)||Fe.push(ie)}return Fe}),ze=Bt(()=>Dt(()=>import("./DeZcULKt.js"),__vite__mapDeps([44,2,3,31,32,33,34,1,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,35,4,36,37,38,39,40,45]),import.meta.url)),Je=Bt(()=>Dt(()=>import("./CROBzdiI.js"),__vite__mapDeps([46,47,2,3,31,32,33,34,1,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,35,4,36,37,38,39,40,48]),import.meta.url)),Ke=Bt(()=>Dt(()=>import("./D2kYKtpj.js"),__vite__mapDeps([49,2,3,31,32,33,34,1,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,35,4,36,37,38,39,40,50]),import.meta.url)),ke=P(()=>{const B=a.v2Meta;return B?.seq&&B.createdAt?{seq:B.seq,createdAt:B.createdAt}:a.msg.seq&&a.msg.v2CreatedAt?{seq:a.msg.seq,createdAt:a.msg.v2CreatedAt}:null}),je=P(()=>a.msg.isMyMsg||!!a.canDeleteOthers||!!a.canManage),ve=g(!1);function it(B){if(h(),a.v2Actions)u("reactKey",a.msg,B,!0),xe.value=_o(B);else{const Z=yn.find(Fe=>xn[Fe]===B);Z&&u("react",a.msg,Hn[Z])}}function Ft(B){ve.value=!1,u("reactKey",a.msg,B,!0),xe.value=_o(B)}nn(()=>{xe.value=Yo()});const zt=P(()=>Sf({isMyMsg:a.msg.isMyMsg,isDirect:!!a.msg.isDirect,hasText:!!v.value,userId:a.msg.userId||"",hasAudio:me.value,hasTranscript:!!a.msg.transcript?.text},{v2Actions:!!a.v2Actions,v2Ready:be.value,v2Recalled:Ue.value,canEdit:Ye.value,canRecall:rt.value,canPin:!!a.canManage,pinned:!!a.pinned,blocked:!!a.blockedPeer,canSeeReaders:!!a.canSeeReaders,canSelect:!!a.canSelect}));function Kt(B){switch(B){case"reply":u("reply",a.msg);break;case"forward":u("forward",a.msg);break;case"copy":O();break;case"transcribe":u("transcribe",a.msg);break;case"translate":u("translate",a.msg);break;case"edit":u("editRequest",a.msg);break;case"pin":u("pin",a.msg);break;case"unpin":u("unpin",a.msg);break;case"select":u("select",a.msg);break;case"readers":u("showReaders",a.msg);break;case"report":Y();break;case"block":u("blockUser",a.msg.userId,!0);break;case"unblock":u("blockUser",a.msg.userId,!1);break;
5case"recall":u("recall",a.msg);break;case"delete":u("delete",a.msg.msgId);break}}const Qt=P(()=>{if(!a.msg.isMyMsg)return!1;const B=a.v2Meta?.seq??0,Z=a.peerReadSeq??0;return B>0&&Z>=B});function gt(B){return B===1?"wc-chat-images--single":B===2?"wc-chat-images--duo":"wc-chat-images--grid"}return(B,Z)=>{const Fe=Da;return o(),l("div",{class:Ce(["wc-chat-msg",{"wc-chat-msg--mine":t.msg.isMyMsg,"wc-chat-msg--grouped":t.grouped}]),"data-msg-id":t.msg.msgId},[t.msg.isMyMsg?C("",!0):(o(),l(fe,{key:0},[!t.grouped&&e(i)?(o(),l("button",{key:0,type:"button",class:"wc-chat-msg__avatar wc-chat-msg__avatar--btn",title:B.$t("chat.start_dm"),onClick:Z[1]||(Z[1]=ie=>u("openPeer",t.msg.userId))},[n("img",{src:("cfImage"in B?B.cfImage:e(Pt))(t.msg.userLogo,96),alt:t.msg.userNickname,onError:Z[0]||(Z[0]=ie=>("onAvatarError"in B?B.onAvatarError:e(sn))(ie,t.msg.userNickname))},null,40,Pf)],8,Uf)):t.grouped?(o(),l("span",qf)):(o(),l("div",Df,[n("img",{src:("cfImage"in B?B.cfImage:e(Pt))(t.msg.userLogo,96),alt:t.msg.userNickname,onError:Z[2]||(Z[2]=ie=>("onAvatarError"in B?B.onAvatarError:e(sn))(ie,t.msg.userNickname))},null,40,Of)]))],64)),n("div",Vf,[t.grouped?C("",!0):(o(),l("div",Bf,[e(i)?(o(),l("button",{key:0,type:"button",class:"wc-chat-msg__name wc-chat-msg__name--btn",title:B.$t("chat.start_dm"),onClick:Z[3]||(Z[3]=ie=>u("openPeer",t.msg.userId))},r(t.msg.userNickname),9,Nf)):(o(),l("span",Ff,r(t.msg.userNickname),1)),t.msg.customUserTitle?(o(),l("span",Kf,r(t.msg.customUserTitle),1)):t.msg.isAdmin?(o(),l("span",jf,"Admin")):C("",!0),n("span",xf,r(he(t.msg.createDate)),1),e(Pe)&&!e(Ue)?(o(),l("span",Hf,r(B.$t("chat.message_edited")),1)):C("",!0)])),t.grouped?(o(),l("span",Gf,r(e(Te)),1)):C("",!0),n("div",{class:Ce(["wc-chat-msg__bubble",t.msg.isMyMsg?"wc-chat-msg__bubble--mine":"wc-chat-msg__bubble--other"]),onPointerdown:x,onPointermove:U,onPointerup:_,onPointercancel:_,onContextmenu:$,onClickCapture:S},[e(Ue)?(o(),l("div",zf,[Z[25]||(Z[25]=n("i",{class:"fa-solid fa-ban"},null,-1)),n("span",null,r(B.$t("chat.message_recalled")),1)])):C("",!0),e(ot)&&!e(Ue)?(o(),l("button",{key:1,type:"button",class:"wc-chat-msg__reply-preview","aria-label":B.$t("chat.jump_to_original"),title:B.$t("chat.jump_to_original"),onClick:Z[4]||(Z[4]=ie=>u("jumpTo",t.msg.replyToMsgId))},[n("span",Xf,r(t.msg.replyUserNickname),1),t.msg.replyMarkDel?(o(),l("span",Wf,r(B.$t("chat.message_deleted")),1)):t.msg.replyContent?(o(),l("span",Jf,r(t.msg.replyContent.replace(/<[^>]*>/g,"")),1)):t.msg.replyImages.length?(o(),l("span",Yf,r(B.$t("common.image_placeholder")),1)):C("",!0)],8,Qf)):C("",!0),t.msg.content&&!e(Ue)?(o(),l("div",Zf,[(o(!0),l(fe,null,Ve(e(st),(ie,We)=>(o(),l(fe,{key:We},[ie.kind==="mention"?(o(),l("span",{key:0,class:Ce(["wc-chat-mention",{"wc-chat-mention--me":ie.isMe}]),role:"link",tabindex:"0",onClick:De=>u("openPeer",ie.userId),onKeydown:[In(Ut(De=>u("openPeer",ie.userId),["prevent"]),["enter"]),In(Ut(De=>u("openPeer",ie.userId),["prevent"]),["space"])]},r(ie.text),43,em)):(o(),l("span",{key:1,innerHTML:ie.text},null,8,tm))],64))),128))])):C("",!0),e(ye)&&!e(Ue)?(o(),l("div",{key:3,class:Ce(["wc-chat-images",gt(t.msg.images.length)])},[(o(!0),l(fe,null,Ve(t.msg.images,(ie,We)=>(o(),l("img",{key:We,src:("cfImage"in B?B.cfImage:e(Pt))(ie,640),class:"wc-chat-images__img",loading:"lazy",onClick:De=>u("openImage",t.msg.images,We)},null,8,nm))),128))],2)):C("",!0),e(me)&&!e(Ue)?(o(),l("div",am,[It(e($e),{src:t.msg.audioMp3Url,"msg-id":t.msg.msgId,waveform:t.msg.audioWaveform,mine:t.msg.isMyMsg},null,8,["src","msg-id","waveform","mine"]),t.msg.isSpeechToText?(o(),l("span",om,r(B.$t("chat.voice_stt")),1)):C("",!0)])):C("",!0),e(me)&&!e(Ue)&&(t.msg.transcript?.text||t.transcribing)?(o(),l("div",sm,[n("span",im,r(B.$t("chat.ai_transcript_label")),1),t.msg.transcript?.text?(o(),l("span",lm,r(t.msg.transcript.text),1)):(o(),l("span",rm,r(B.$t("chat.ai_transcribing")),1))])):C("",!0),!e(Ue)&&(t.translation||t.translating)?(o(),l("div",cm,[t.translation?(o(),l(fe,{key:0},[t.showOriginal?C("",!0):(o(),l("span",um,r(t.translation.text),1)),n("button",{type:"button",class:"wc-chat-msg__translation-toggle",onClick:Z[5]||(Z[5]=ie=>u("toggleOriginal",t.msg.msgId))},r(t.showOriginal?B.$t("chat.ai_show_translation"):B.$t("chat.ai_show_original")),1)],64)):(o(),l("span",dm,r(B.$t("chat.ai_translating")),1))])):C("",!0),t.msg.pollId&&!e(Ue)?(o(),Oe(e(Je),{key:7,detail:t.poll,busy:t.pollBusy,"can-close":e(je),"resolve-nickname":t.resolveNickname,onLoad:Z[6]||(Z[6]=ie=>u("pollLoad",t.msg.pollId)),onVote:Z[7]||(Z[7]=ie=>u("pollVote",t.msg.pollId,ie)),onRetract:Z[8]||(Z[8]=ie=>u("pollRetract",t.msg.pollId)),onClose:Z[9]||(Z[9]=ie=>u("pollClose",t.msg.pollId))},null,8,["detail","busy","can-close","resolve-nickname"])):C("",!0),t.msg.video?.id&&!e(Ue)?(o(),Oe(e(Ke),{key:8,video:t.msg.video,coords:e(ke),"msg-id":t.msg.msgId},null,8,["video","coords","msg-id"])):C("",!0),e(we)&&!e(Ue)?(o(),l("div",vm,[n("a",{href:e(we).url,target:"_blank",rel:"noopener",class:"wc-chat-msg__file-link"},[e(we).thumb?(o(),l("img",{key:0,src:("cfImage"in B?B.cfImage:e(Pt))(e(we).thumb,120),class:"wc-chat-msg__file-thumb"},null,8,mm)):e(Ie)?(o(),l("span",pm,r(e(Ie)),1)):(o(),l("span",gm,"📄")),n("span",hm,[e(we).name?(o(),l("strong",ym,r(e(we).name),1)):(o(),l("strong",_m,r(B.$t("chat.file_unavailable")),1)),e(we).desc?(o(),l("span",bm,r(e(we).desc),1)):C("",!0),n("span",wm,r(B.$t("chat.file_open")),1)])],8,fm)])):C("",!0),e(de)?(o(),l("div",km,[n("a",{href:t.msg.includeUrls,target:"_blank",rel:"noopener",class:"wc-chat-msg__link"},[t.msg.includeUrlsFirstImages?(o(),l("img",{key:0,src:("cfImage"in B?B.cfImage:e(Pt))(t.msg.includeUrlsFirstImages,240),class:"wc-chat-msg__link-img"}
5,null,8,$m)):C("",!0),n("div",Im,[t.msg.includeUrlFirstTitle?(o(),l("strong",Mm,r(t.msg.includeUrlFirstTitle),1)):C("",!0),t.msg.includeUrlFirstDescription?(o(),l("span",Tm,r(t.msg.includeUrlFirstDescription),1)):C("",!0),t.msg.includeUrlFirstTitle?C("",!0):(o(),l("span",Sm,r(t.msg.includeUrls),1))])],8,Cm)])):C("",!0),n("div",Am,[n("button",{type:"button",class:"wc-chat-msg__action-btn wc-chat-msg__action-btn--more",title:B.$t("chat.actions_more"),"aria-label":B.$t("chat.actions_more"),"aria-haspopup":!0,"aria-expanded":e(b),onClick:Z[10]||(Z[10]=ie=>e(w)(ie,"popup"))},[...Z[26]||(Z[26]=[n("i",{class:"fa-solid fa-ellipsis"},null,-1)])],8,Rm),n("button",{type:"button",class:"wc-chat-msg__action-btn",title:B.$t("common.action_reply"),"aria-label":B.$t("common.action_reply"),onClick:Z[11]||(Z[11]=ie=>u("reply",t.msg))},[...Z[27]||(Z[27]=[n("i",{class:"fa-solid fa-reply"},null,-1)])],8,Em),t.canManage?(o(),l("button",{key:0,type:"button",class:"wc-chat-msg__action-btn",title:B.$t("chat.action_pin"),"aria-label":B.$t("chat.action_pin"),onClick:Z[12]||(Z[12]=ie=>u("pin",t.msg))},[...Z[28]||(Z[28]=[n("i",{class:"fa-solid fa-thumbtack"},null,-1)])],8,Lm)):C("",!0),e(Ye)?(o(),l("button",{key:1,type:"button",class:"wc-chat-msg__action-btn",title:B.$t("chat.action_edit"),"aria-label":B.$t("chat.action_edit"),onClick:Z[13]||(Z[13]=ie=>u("editRequest",t.msg))},[...Z[29]||(Z[29]=[n("i",{class:"fa-solid fa-pen"},null,-1)])],8,Um)):C("",!0),e(pt)?(o(),l("button",{key:2,type:"button",class:"wc-chat-msg__action-btn",title:B.$t("chat.action_forward"),"aria-label":B.$t("chat.action_forward"),onClick:Z[14]||(Z[14]=ie=>u("forward",t.msg))},[...Z[30]||(Z[30]=[n("i",{class:"fa-solid fa-share"},null,-1)])],8,Pm)):C("",!0),e(rt)?(o(),l("button",{key:3,type:"button",class:"wc-chat-msg__action-btn wc-chat-msg__action-btn--danger",title:B.$t("chat.action_recall"),"aria-label":B.$t("chat.action_recall"),onClick:Z[15]||(Z[15]=ie=>u("recall",t.msg))},[...Z[31]||(Z[31]=[n("i",{class:"fa-solid fa-rotate-left"},null,-1)])],8,Dm)):C("",!0),t.msg.isMyMsg&&!t.v2Actions?(o(),l("button",{key:4,type:"button",class:"wc-chat-msg__action-btn wc-chat-msg__action-btn--danger",title:B.$t("common.delete"),"aria-label":B.$t("common.delete"),onClick:Z[16]||(Z[16]=ie=>u("delete",t.msg.msgId))},[...Z[32]||(Z[32]=[n("i",{class:"fa-solid fa-trash-can"},null,-1)])],8,Om)):C("",!0)]),e(Xe).length?(o(),l("div",qm,[(o(!0),l(fe,null,Ve(e(Xe),ie=>(o(),l("div",{key:ie.key,class:"wc-chat-msg__reaction-wrap",onMouseenter:We=>pe(ie.key),onMouseleave:Se},[n("button",{type:"button",class:Ce(["wc-chat-msg__reaction",{"wc-chat-msg__reaction--active":ie.active}]),"aria-label":`${ie.icon} ${ie.count}`,onClick:We=>D(ie),onPointerdown:We=>Ae(We,ie.key),onPointerup:Re,onPointercancel:Re},r(ie.icon)+" "+r(ie.count),43,Bm),e(te)===ie.key?(o(),l("div",Nm,[(o(!0),l(fe,null,Ve(e(G),(We,De)=>(o(),l("span",{key:De,class:"wc-chat-msg__roster-name"},r(We),1))),128))])):C("",!0)],40,Vm))),128))])):C("",!0)],34),t.msg.isMyMsg&&(t.sendFailed||t.sending)?(o(),l("div",Fm,[t.sendFailed?(o(),l(fe,{key:0},[Z[33]||(Z[33]=n("i",{class:"fa-solid fa-circle-exclamation wc-chat-msg__send-warn"},null,-1)),n("button",{type:"button",class:"wc-chat-msg__retry",onClick:Z[17]||(Z[17]=ie=>u("retry",t.msg.msgId))},r(B.$t("chat.action_resend")),1)],64)):(o(),l("i",{key:1,class:"fa-regular fa-clock wc-chat-msg__send-clock",title:B.$t("chat.read_sending")},null,8,Km))])):e(Qt)?(o(),l("i",{key:3,class:"fa-solid fa-check-double wc-chat-msg__seen",title:B.$t("chat.read_seen"),"aria-label":B.$t("chat.read_seen")},null,8,jm)):C("",!0)]),t.msg.isMyMsg?(o(),l(fe,{key:1},[t.grouped?(o(),l("span",Gm)):(o(),l("div",xm,[n("img",{src:("cfImage"in B?B.cfImage:e(Pt))(t.msg.userLogo,96),alt:t.msg.userNickname,onError:Z[18]||(Z[18]=ie=>("onAvatarError"in B?B.onAvatarError:e(sn))(ie,t.msg.userNickname))},null,40,Hm)]))],64)):C("",!0),e(b)?(o(),Oe(Fe,{key:2,items:e(zt),mode:e(d),x:e(y),y:e(m),onPick:Kt,onClose:e(h)},{reactions:dn(()=>[n("div",zm,[(o(!0),l(fe,null,Ve(e(et),ie=>(o(),l("button",{key:ie,type:"button",class:"wc-msgmenu-rx__btn","aria-label":ie,onClick:We=>it(ie)}
5,r(ie),9,Qm))),128)),t.v2Actions?(o(),l("button",{key:0,type:"button",class:"wc-msgmenu-rx__btn wc-msgmenu-rx__btn--more",title:B.$t("chat.reaction_more"),"aria-label":B.$t("chat.reaction_more"),onClick:Z[19]||(Z[19]=ie=>{e(h)(),ve.value=!0})},[...Z[34]||(Z[34]=[n("i",{class:"fa-solid fa-plus"},null,-1)])],8,Xm)):C("",!0)])]),_:1},8,["items","mode","x","y","onClose"])):C("",!0),e(ve)?(o(),Oe(e(ze),{key:3,onPick:Ft,onClose:Z[20]||(Z[20]=ie=>ve.value=!1)})):C("",!0),(o(),Oe(ln,{to:"body"},[e(R)?(o(),l("div",Wm,r(e(R)==="ok"?B.$t("common.copied"):B.$t("common.copy_failed")),1)):C("",!0)])),(o(),Oe(ln,{to:"body"},[e(H)?(o(),l("div",{key:0,class:"wc-msgsheet wc-msgsheet--center",onPointerdown:Z[23]||(Z[23]=(...ie)=>e(oe)&&e(oe)(...ie)),onClick:Z[24]||(Z[24]=(...ie)=>e(ne)&&e(ne)(...ie))},[n("div",Jm,[n("h3",Ym,r(B.$t("chat.report_message_title")),1),n("p",Zm,r(B.$t("social.report_desc")),1),n("div",ep,[(o(!0),l(fe,null,Ve(e(X),ie=>(o(),l("label",{key:ie.key,class:"wc-msgreport__reason"},[Ne(n("input",{"onUpdate:modelValue":Z[21]||(Z[21]=We=>ft(M)?M.value=We:null),type:"radio",value:ie.key},null,8,tp),[[ii,e(M)]]),n("span",null,r(ie.label),1)]))),128))]),Ne(n("textarea",{"onUpdate:modelValue":Z[22]||(Z[22]=ie=>ft(q)?q.value=ie:null),class:"wc-msgreport__detail",rows:"2",maxlength:"2000",placeholder:B.$t("social.report_detail_placeholder")},null,8,np),[[dt,e(q)]]),n("div",ap,[n("button",{type:"button",class:"wc-msgreport__btn",onClick:le},r(B.$t("common.cancel")),1),n("button",{type:"button",class:"wc-msgreport__btn wc-msgreport__btn--primary",disabled:!e(M),onClick:K},r(B.$t("social.report_submit")),9,op)])])],32)):C("",!0)]))],10,Lf)}}}),rp=bt(lp,[["__scopeId","data-v-d95445d3"]]),cp=["data-msg-id"],up={key:0},dp=["aria-expanded"],vp={key:2,class:"wc-meeting-card__reactions","aria-live":"polite"},fp=["disabled"],mp={key:6,role:"status"},pp=_t({__name:"ChatMeetingCard",props:{msg:{},userId:{}},setup(t){const s=t,a=P(()=>yn.map(U=>({key:U,emoji:xn[U],count:s.msg[U].length})).filter(U=>U.count>0)),u=g(!1),i=g(!1),p=g(""),b=g(!1),d=g(""),y=Un(),m=s.userId,w=s.msg.groupId,h={...Pn()},I=bn().public.apiBase||void 0,E=new AbortController,j=()=>!E.signal.aborted&&m===s.userId&&w===s.msg.groupId&&y===Un();async function N(){if(!(!j()||b.value||!p.value.trim())){b.value=!0,d.value="";try{await $fetch("/api/app/social/report",{method:"POST",baseURL:I,headers:h,credentials:"include",retry:0,timeout:15e3,signal:E.signal,body:{targetType:"message",targetId:s.msg.msgId,reason:"other",detail:p.value.trim()}}),j()&&(i.value=!1,p.value="",d.value="social.report_sent")}catch{j()&&(d.value="social.report_failed")}finally{j()&&(b.value=!1)}}}St(()=>E.abort());const x=P(()=>["recording_elsewhere","queued","processing","draft","published","failed","cancelled"][s.msg.meeting.status]);return Ee(()=>[s.userId,s.msg.groupId,s.msg.meeting?.status],()=>{u.value=!1,i.value=!1},{flush:"sync"}),Ee(()=>[s.userId,s.msg.groupId],()=>E.abort(),{flush:"sync"}),(U,_)=>(o(),l("article",{class:"wc-meeting-card","data-msg-id":t.msg.msgId},[t.msg.meeting?.deleted?(o(),l("p",up,r(U.$t("chat.message_recalled")),1)):(o(),l("button",{key:1,type:"button","aria-expanded":u.value,onClick:_[0]||(_[0]=S=>u.value=!u.value)},[n("span",null,r(U.$t(t.msg.meeting?.minutes?"meeting.minutes_title":"meeting.title")),1),n("small",null,r(U.$t(`meeting.${t.msg.meeting?.status===0?"recording":x.value}`)),1)],8,dp)),!t.msg.meeting?.deleted&&a.value.length?(o(),l("div",vp,[(o(!0),l(fe,null,Ve(a.value,S=>(o(),l("span",{key:S.key},r(S.emoji)+" "+r(S.count),1))),128))])):C("",!0),u.value&&t.msg.meeting&&!t.msg.meeting.deleted&&t.userId?(o(),Oe(Qo,{key:`${t.userId}:${t.msg.groupId}:${t.msg.meeting.id}`,"meeting-id":t.msg.meeting.id,"conversation-id":t.msg.groupId,"user-id":t.userId},null,8,["meeting-id","conversation-id","user-id"])):C("",!0),t.msg.meeting?.deleted?C("",!0):(o(),l("button",{key:4,class:"wc-meeting-card__report",type:"button",onClick:_[1]||(_[1]=S=>i.value=!i.value)},r(U.$t("social.report")),1)),i.value?(o(),l("form",{key:5,onSubmit:Ut(N,["prevent"]),onKeydown:_[4]||(_[4]=In(Ut(S=>i.value=!1,["stop"]),["esc"]))}
5,[n("label",null,[_e(r(U.$t("social.report_desc")),1),Ne(n("textarea",{"onUpdate:modelValue":_[2]||(_[2]=S=>p.value=S),maxlength:"2000",rows:"3",required:""},null,512),[[dt,p.value]])]),n("button",{type:"button",onClick:_[3]||(_[3]=S=>i.value=!1)},r(U.$t("common.cancel")),1),n("button",{type:"submit",disabled:b.value||!p.value.trim()},r(U.$t("social.report_submit")),9,fp)],32)):C("",!0),d.value?(o(),l("p",mp,r(U.$t(d.value)),1)):C("",!0)],8,cp))}}),gp=bt(pp,[["__scopeId","data-v-38412870"]]),hp={class:"wc-voice-card"},yp={key:0},_p={key:1},bp=_t({__name:"ChatVoiceCard",props:{msg:{}},setup(t){const s=t,{t:a}=Nt(),u=Xo(s.msg.groupId),i=P(()=>{const d=u.room.value;return d&&(!s.msg.voice?.id||d.id===s.msg.voice.id)?d:s.msg.voice}),p=P(()=>u.canJoin.value);function b(){window.dispatchEvent(new CustomEvent("weicity:join-voice",{detail:{conversationId:s.msg.groupId}}))}return(d,y)=>(o(),l("article",hp,[y[0]||(y[0]=n("span",{class:"wc-voice-card__icon","aria-hidden":"true"},"◖)))",-1)),n("div",null,[n("strong",null,r(e(a)("voice.title")),1),e(i)?.status==="active"?(o(),l("span",yp,r(e(a)("voice.active_count",{count:e(i).participants||0})),1)):(o(),l("span",_p,r(e(a)("voice.ended_summary",{count:e(i)?.peakParticipants||0,minutes:e(i)?.participantMinutes||0})),1))]),e(i)?.status==="active"&&e(p)?(o(),l("button",{key:0,type:"button",onClick:b},r(e(a)("voice.join")),1)):C("",!0)]))}}),wp=bt(bp,[["__scopeId","data-v-fafbb775"]]),kp={key:0,class:"wc-chat-day"},Cp={key:1,class:"wc-chat-unread-line",role:"separator"},$p=_t({__name:"ChatFeedRow",props:{kind:{},dayLabel:{},unreadCount:{},msg:{},grouped:{type:Boolean},currentUserId:{},canManage:{type:Boolean},sendFailed:{type:Boolean},sending:{type:Boolean},transcribing:{type:Boolean},translating:{type:Boolean},translation:{},showOriginal:{type:Boolean},v2Actions:{type:Boolean},v2MetaOf:{type:Function},canDeleteOthers:{type:Boolean},pinnedSeqs:{},blockedPeer:{type:Boolean},canSeeReaders:{type:Boolean},canSelect:{type:Boolean},resolveNickname:{type:Function},peerReadSeq:{}},emits:["reply","delete","pin","react","retry","openPeer","report","editRequest","recall","forward","unpinMsg","select","blockUser","showReaders","reactKey","jumpTo","openImage","transcribe","translate","toggleOriginal"],setup(t,{emit:s}){const a=t,u=P(()=>{const p=a.msg;if(!p||!a.pinnedSeqs?.length)return!1;const b=a.v2MetaOf?.(p.msgId)?.seq??0;return b>0&&a.pinnedSeqs.includes(b)}),i=s;return(p,b)=>{const d=rp;return t.kind==="day"?(o(),l("div",kp,[n("span",null,r(t.dayLabel),1)])):t.kind==="unread"?(o(),l("div",Cp,[n("span",null,r(p.$t("chat.unread_line",{count:t.unreadCount??0})),1)])):t.msg?.voice?(o(),Oe(wp,{key:2,msg:t.msg},null,8,["msg"])):t.msg?.meeting?(o(),Oe(gp,{key:3,msg:t.msg,"user-id":t.currentUserId},null,8,["msg","user-id"])):(o(),Oe(d,{key:4,msg:t.msg,grouped:t.grouped,"current-user-id":t.currentUserId,"can-manage":t.canManage,"send-failed":t.sendFailed,sending:t.sending,transcribing:t.transcribing,translating:t.translating,translation:t.translation,"show-original":t.showOriginal,"v2-actions":t.v2Actions,"v2-meta":t.msg?t.v2MetaOf?.(t.msg.msgId)??null:null,"can-delete-others":t.canDeleteOthers,pinned:u.value,"blocked-peer":t.blockedPeer,"can-see-readers":t.canSeeReaders,"can-select":t.canSelect,"resolve-nickname":t.resolveNickname,"peer-read-seq":t.peerReadSeq,onEditRequest:b[0]||(b[0]=y=>i("editRequest",y)),onRecall:b[1]||(b[1]=y=>i("recall",y)),onForward:b[2]||(b[2]=y=>i("forward",y)),onRetry:b[3]||(b[3]=y=>i("retry",y)),onReply:b[4]||(b[4]=y=>i("reply",y)),onDelete:b[5]||(b[5]=y=>i("delete",y)),onPin:b[6]||(b[6]=y=>i("pin",y)),onReact:b[7]||(b[7]=(y,m)=>i("react",y,m)),onOpenPeer:b[8]||(b[8]=y=>i("openPeer",y)),onReport:b[9]||(b[9]=y=>i("report",y)),onUnpin:b[10]||(b[10]=y=>i("unpinMsg",y)),onSelect:b[11]||(b[11]=y=>i("select",y)),onBlockUser:b[12]||(b[12]=(y,m)=>i("blockUser",y,m)),onShowReaders:b[13]||(b[13]=y=>i("showReaders",y)),onReactKey:b[14]||(b[14]=(y,m,w)=>i("reactKey",y,m,w)),onJumpTo:b[15]||(b[15]=y=>i("jumpTo",y)),onOpenImage:b[16]||(b[16]=(y,m)=>i("openImage",y,m)),onTranscribe:b[17]||(b[17]=y=>i("transcribe",y)),onTranslate:b[18]||(b[18]=y=>i("translate",y)),onToggleOriginal:b[19]||(b[19]=y=>i("toggleOriginal",y))},null,8,["msg","grouped","current-user-id","can-manage","send-failed","
5sending","transcribing","translating","translation","show-original","v2-actions","v2-meta","can-delete-others","pinned","blocked-peer","can-see-readers","can-select","resolve-nickname","peer-read-seq"]))}}}),Ip=bt($p,[["__scopeId","data-v-c27b6a0d"]]),Mp={class:"wc-chat-messages__error-text"},Tp=["disabled"],Sp={key:0,class:"fa-solid fa-spinner fa-spin"},Ap={key:1,class:"wc-chat-messages__loading"},Rp={key:2,class:"wc-chat-messages__empty"},Ep={key:3,class:"wc-chat-pinned"},Lp={class:"wc-chat-pinned__count"},Up={key:0,class:"wc-chat-pinned__list"},Pp=["onClick"],Dp=["aria-label","onClick"],Op=_t({__name:"ChatMessageList",props:{messages:{},currentUserId:{},isLoading:{type:Boolean},hasMore:{type:Boolean},canManage:{type:Boolean},loadFailed:{type:Boolean},loadRetrying:{type:Boolean},failedIds:{},inFlightIds:{},transcribingIds:{},translatingIds:{},translations:{},showOriginalIds:{},polls:{},pollBusyIds:{},v2Actions:{type:Boolean},v2MetaOf:{type:Function},canDeleteOthers:{type:Boolean},blockedPeer:{type:Boolean},canSeeReaders:{type:Boolean},canSelect:{type:Boolean},resolveNickname:{type:Function},peerReadSeq:{},pinnedSeqs:{},pinnedTextOf:{type:Function},unreadAnchorMsgId:{},unreadCount:{}},emits:["loadMore","reply","delete","pin","react","scrolledToBottom","retry","retryLoad","openPeer","report","editRequest","recall","forward","unpinMsg","select","blockUser","showReaders","reactKey","jumpTo","openImage","jumpToSeq","unpin","transcribe","translate","toggleOriginal","pollLoad","pollVote","pollRetract","pollClose"],setup(t,{expose:s,emit:a}){const u=t,i=a,p=g(null),b=g(!1),d=g(!0);function y($,v){return!$||!v?!1:new Date($).toDateString()===new Date(v).toDateString()}function m($){const v=u.messages[$-1],R=u.messages[$];if(!v||!R||v.userId!==R.userId||v.isMyMsg!==R.isMyMsg||!y(v.createDate,R.createDate))return!1;const O=new Date(R.createDate||0).getTime()-new Date(v.createDate||0).getTime();return O>=0&&O<=300*1e3}function w($){const v=u.messages[$-1];return v?!y(v.createDate,u.messages[$].createDate):!0}const{parse:h,ymd:I}=ia();function E($){const v=h($);return v?I(v):""}const j=P(()=>{const $=[],v=(u.unreadAnchorMsgId||"").toLowerCase();return u.messages.forEach((R,O)=>{w(O)&&$.push({kind:"day",key:`day-${R.msgId}`,dayLabel:E(R.createDate)}),v&&R.msgId.toLowerCase()===v&&$.push({kind:"unread",key:`unread-${R.msgId}`}),$.push({kind:"msg",key:R.msgId,msg:R,grouped:m(O)})}),$});function N(){if(!p.value)return;const $=p.value,v=$.scrollHeight-$.scrollTop-$.clientHeight<60;b.value=!v,d.value=v,i("scrolledToBottom",v),$.scrollTop<100&&u.hasMore&&!u.isLoading&&i("loadMore")}function x(){d.value&&U(!1)}function U($=!0){p.value&&p.value.scrollTo({top:p.value.scrollHeight,behavior:$?"smooth":"instant"})}function _($,v="center"){const R=p.value;if(!R||!$)return;const O=R.querySelector(`[data-msg-id="${CSS.escape($)}"]`);O&&(O.scrollIntoView({block:v,behavior:"smooth"}),requestAnimationFrame(()=>{R.querySelector(`[data-msg-id="${CSS.escape($)}"]`)?.scrollIntoView({block:v,behavior:"auto"})}),O.classList.add("wc-chat-msg--flash"),setTimeout(()=>O.classList.remove("wc-chat-msg--flash"),1600))}const S=g(!1);return s({scrollToBottom:U,scrollToMsg:_,containerRef:p}),($,v)=>{const R=Uo,O=Ip;return o(),l(fe,null,[n("div",{ref_key:"containerRef",ref:p,class:"wc-chat-messages",role:"log","aria-live":"polite","aria-relevant":"additions",onScroll:N,onLoadCapture:x},[t.loadFailed?(o(),l("div",{key:0,class:Ce(["wc-chat-messages__error",{"wc-chat-messages__error--compact":t.messages.length>0}]),role:"status"},[v[27]||(v[27]=n("i",{class:"fa-regular fa-circle-xmark wc-chat-messages__error-icon"},null,-1)),n("p",Mp,r($.$t("chat.load_failed")),1),n("button",{type:"button",class:"wc-chat-messages__reload-btn",disabled:t.loadRetrying,onClick:v[0]||(v[0]=H=>i("retryLoad"))},[t.loadRetrying?(o(),l("i",Sp)):C("",!0),_e(" "+r($.$t("chat.load_retry")),1)],8,Tp)],2)):t.isLoading&&t.hasMore?(o(),l("div",Ap,[...v[28]||(v[28]=[n("i",{class:"fa-solid fa-spinner fa-spin"},null,-1)])])):t.messages.length===0?(o(),l("div",Rp,[It(R,{scene:"empty-chat",height:80,class:"wc-chat-messages__empty-art"}),_e(" "+r($.$t("chat.empty_messages")),1)])):C("",!0),(t.pinnedSeqs?.length??0)>0?(o(),l("div",Ep,[n("button",{type:"button",class:"wc-chat-pinned__head",onClick:v[1]||(v[1]=H=>S.value=!e(S))},[v[29]||(v[29]=n("i",{class:"fa-solid fa-thumbtack"},null,-1)),n("span",Lp,r($.$t("chat.pinned_count",{count:t.pinnedSeqs.length})),1),n("i",{class:Ce(["fa-solid",e(S)?"fa-chevron-up":"fa-chevron-down"])},null,2)]),e(S)?(o(),l("ul",Up,[(o(!0),l(fe,null,Ve(t.pinnedSeqs,H=>(o(),l("li",{key:H,class:"wc-chat-pinned__item"},[n("button",{type:"button",class:"wc-chat-pinned__jump",onClick:M=>i("jumpToSeq",H)},r(t.pinnedTextOf?.(H)||`#${H}
5`),9,Pp),t.canManage?(o(),l("button",{key:0,type:"button",class:"wc-chat-pinned__unpin","aria-label":$.$t("chat.action_unpin"),onClick:M=>i("unpin",H)},[...v[30]||(v[30]=[n("i",{class:"fa-solid fa-xmark"},null,-1)])],8,Dp)):C("",!0)]))),128))])):C("",!0)])):C("",!0),(o(!0),l(fe,null,Ve(e(j),H=>(o(),Oe(O,{key:H.key,kind:H.kind,"day-label":H.dayLabel,"unread-count":t.unreadCount,msg:H.msg,grouped:H.grouped,"current-user-id":t.currentUserId,"can-manage":t.canManage,"send-failed":!!H.msg&&!!t.failedIds?.has(H.msg.msgId),sending:!!H.msg&&!!t.inFlightIds?.has(H.msg.msgId),transcribing:!!H.msg&&!!t.transcribingIds?.has(H.msg.msgId),translating:!!H.msg&&!!t.translatingIds?.has(H.msg.msgId),translation:H.msg?t.translations?.get(H.msg.msgId)??null:null,"show-original":!!H.msg&&!!t.showOriginalIds?.has(H.msg.msgId),poll:H.msg?.pollId?t.polls?.get(H.msg.pollId)??null:null,"poll-busy":!!H.msg?.pollId&&!!t.pollBusyIds?.has(H.msg.pollId),"v2-actions":t.v2Actions,"v2-meta-of":t.v2MetaOf,"can-delete-others":t.canDeleteOthers,"pinned-seqs":t.pinnedSeqs,"blocked-peer":t.blockedPeer,"can-see-readers":t.canSeeReaders,"can-select":t.canSelect,"resolve-nickname":t.resolveNickname,"peer-read-seq":t.peerReadSeq,onEditRequest:v[2]||(v[2]=M=>i("editRequest",M)),onRecall:v[3]||(v[3]=M=>i("recall",M)),onForward:v[4]||(v[4]=M=>i("forward",M)),onRetry:v[5]||(v[5]=M=>i("retry",M)),onReply:v[6]||(v[6]=M=>i("reply",M)),onDelete:v[7]||(v[7]=M=>i("delete",M)),onPin:v[8]||(v[8]=M=>i("pin",M)),onReact:v[9]||(v[9]=(M,q)=>i("react",M,q)),onOpenPeer:v[10]||(v[10]=M=>i("openPeer",M)),onReport:v[11]||(v[11]=M=>i("report",M)),onUnpinMsg:v[12]||(v[12]=M=>i("unpinMsg",M)),onSelect:v[13]||(v[13]=M=>i("select",M)),onBlockUser:v[14]||(v[14]=(M,q)=>i("blockUser",M,q)),onShowReaders:v[15]||(v[15]=M=>i("showReaders",M)),onReactKey:v[16]||(v[16]=(M,q,X)=>i("reactKey",M,q,X)),onJumpTo:v[17]||(v[17]=M=>i("jumpTo",M)),onOpenImage:v[18]||(v[18]=(M,q)=>i("openImage",M,q)),onTranscribe:v[19]||(v[19]=M=>i("transcribe",M)),onTranslate:v[20]||(v[20]=M=>i("translate",M)),onToggleOriginal:v[21]||(v[21]=M=>i("toggleOriginal",M)),onPollLoad:v[22]||(v[22]=M=>i("pollLoad",M)),onPollVote:v[23]||(v[23]=(M,q)=>i("pollVote",M,q)),onPollRetract:v[24]||(v[24]=M=>i("pollRetract",M)),onPollClose:v[25]||(v[25]=M=>i("pollClose",M))},null,8,["kind","day-label","unread-count","msg","grouped","current-user-id","can-manage","send-failed","sending","transcribing","translating","translation","show-original","poll","poll-busy","v2-actions","v2-meta-of","can-delete-others","pinned-seqs","blocked-peer","can-see-readers","can-select","resolve-nickname","peer-read-seq"]))),128))],544),(o(),Oe(ln,{to:"body"},[e(b)?(o(),l("button",{key:0,class:"wc-chat-scroll-btn",onClick:v[26]||(v[26]=H=>U(!0))},[...v[31]||(v[31]=[n("i",{class:"fa-solid fa-angles-down"},null,-1)])])):C("",!0)]))],64)}}}),qp=bt(Op,[["__scopeId","data-v-430e7934"]]),Vp={class:"wc-chat-vp"},Bp=["title","aria-label"],Np=["aria-label","aria-valuemax","aria-valuenow"],Fp={class:"wc-chat-vp__time"},Kp=["disabled"],jp=["disabled"],xp=["disabled"],Ia=64,Hp=_t({__name:"ChatVoicePreview",props:{audioEl:{},waveform:{},durationMs:{},uploading:{type:Boolean},progress:{}},emits:["send","redo","cancel"],setup(t,{emit:s}){const a=t,u=s,i=g(!1),p=g(0),b=P(()=>{const S=a.waveform;if(!S)return Array.from({length:Ia},()=>70);try{const $=atob(S),v=[];for(let R=0;R<$.length;R++)v.push($.charCodeAt(R));return v.length?v:Array.from({length:Ia},()=>70)}catch{return Array.from({length:Ia},()=>70)}}),d=P(()=>{const S=a.audioEl?.duration;return Number.isFinite(S)&&S>0?Math.round(S*1e3):a.durationMs}),y=P(()=>d.value>0?Math.min(1,p.value/d.value):0);function m(S){const $=Math.max(0,Math.floor(S/1e3));return`${String(Math.floor($/60)).padStart(2,"0")}:${String($%60).padStart(2,"0")}`}function w(){const S=a.audioEl;S&&(S.paused?S.play().catch(()=>{i.value=!1}):S.pause())}function h(S){const $=a.audioEl;if(!$||!Number.isFinite($.duration)||$.duration<=0)return;const v=S.currentTarget.getBoundingClientRect();if(v.width<=0)return;const R=Math.min(1,Math.max(0,(S.clientX-v.left)/v.width));$.currentTime=R*$.duration,p.value=Math.round($.currentTime*1e3)}function I(){i.value=!0}
5function E(){i.value=!1}function j(){p.value=Math.round((a.audioEl?.currentTime||0)*1e3)}function N(){i.value=!1,p.value=0}function x(S){S&&(S.addEventListener("play",I),S.addEventListener("pause",E),S.addEventListener("timeupdate",j),S.addEventListener("ended",N))}function U(S){S&&(S.removeEventListener("play",I),S.removeEventListener("pause",E),S.removeEventListener("timeupdate",j),S.removeEventListener("ended",N))}Ee(()=>a.audioEl,(S,$)=>{U($||null),i.value=!1,p.value=0,x(S)},{immediate:!0}),St(()=>U(a.audioEl));const _=P(()=>!0);return tn(_,()=>u("cancel")),(S,$)=>(o(),l("div",Vp,[n("button",{type:"button",class:"wc-chat-vp__play",title:e(i)?S.$t("chat.composer_voice_pause"):S.$t("chat.composer_voice_play"),"aria-label":e(i)?S.$t("chat.composer_voice_pause"):S.$t("chat.composer_voice_play"),onClick:w},[n("i",{class:Ce(e(i)?"fa-solid fa-pause":"fa-solid fa-play"),"aria-hidden":"true"},null,2)],8,Bp),n("div",{class:"wc-chat-vp__wave",role:"slider",tabindex:"0","aria-label":S.$t("chat.composer_voice_seek"),"aria-valuemin":0,"aria-valuemax":Math.round(e(d)/1e3),"aria-valuenow":Math.round(e(p)/1e3),onClick:h},[(o(!0),l(fe,null,Ve(e(b),(v,R)=>(o(),l("i",{key:R,class:Ce({"is-played":(R+1)/e(b).length<=e(y)}),style:Gn({height:Math.max(8,Math.round(v/255*100))+"%"})},null,6))),128))],8,Np),n("span",Fp,r(m(e(p)))+" / "+r(m(e(d))),1),n("button",{type:"button",class:"wc-chat-vp__btn wc-chat-vp__btn--primary",disabled:t.uploading,onClick:$[0]||($[0]=v=>u("send"))},[n("i",{class:Ce(t.uploading?"fa-solid fa-spinner fa-spin":"fa-solid fa-paper-plane"),"aria-hidden":"true"},null,2),_e(" "+r(t.uploading?`${t.progress}%`:S.$t("chat.voice_preview_send")),1)],8,Kp),n("button",{type:"button",class:"wc-chat-vp__btn",disabled:t.uploading,onClick:$[1]||($[1]=v=>u("redo"))},r(S.$t("chat.voice_preview_redo")),9,jp),n("button",{type:"button",class:"wc-chat-vp__btn",disabled:t.uploading,onClick:$[2]||($[2]=v=>u("cancel"))},r(S.$t("common.cancel")),9,xp)]))}}),Gp=bt(Hp,[["__scopeId","data-v-d2c07ce8"]]),zp={key:0,class:"wc-chat-pend"},Qp=["src"],Xp={key:0,class:"wc-chat-pend__mask"},Wp={class:"wc-chat-pend__pct"},Jp={class:"wc-chat-pend__bar"},Yp=["title","aria-label","onClick"],Zp=["title","aria-label","onClick"],eg=_t({__name:"ChatPendingImages",props:{items:{}},emits:["retry","remove"],setup(t,{emit:s}){const a=s;return(u,i)=>t.items.length?(o(),l("div",zp,[(o(!0),l(fe,null,Ve(t.items,p=>(o(),l("div",{key:p.id,class:Ce(["wc-chat-pend__thumb",{"wc-chat-pend__thumb--failed":p.status==="failed"}])},[n("img",{src:p.status==="done"?("cfImage"in u?u.cfImage:e(Pt))(p.previewUrl,240):p.previewUrl,alt:""},null,8,Qp),p.status==="uploading"?(o(),l("div",Xp,[n("span",Wp,r(p.progress)+"%",1),n("span",Jp,[n("i",{style:Gn({width:p.progress+"%"})},null,4)])])):p.status==="failed"?(o(),l("button",{key:1,type:"button",class:"wc-chat-pend__retry",title:u.$t("chat.composer_upload_retry"),"aria-label":u.$t("chat.composer_upload_retry"),onClick:b=>a("retry",p.id)},[...i[0]||(i[0]=[n("i",{class:"fa-solid fa-rotate-right","aria-hidden":"true"},null,-1)])],8,Yp)):C("",!0),n("button",{type:"button",class:"wc-chat-pend__remove",title:u.$t("common.remove"),"aria-label":u.$t("common.remove"),onClick:b=>a("remove",p.id)},[...i[1]||(i[1]=[n("i",{class:"fa-solid fa-xmark","aria-hidden":"true"},null,-1)])],8,Zp)],2))),128))])):C("",!0)}}),tg=bt(eg,[["__scopeId","data-v-0e9213f8"]]),ng={class:"wc-chat-rec"},ag={class:"wc-chat-rec__time"},og=["aria-label"],Ma=24,sg=_t({__name:"ChatVoiceRecordingBar",props:{label:{},level:{}},emits:["cancel","finish"],setup(t,{emit:s}){const a=t,u=s,i=P(()=>Array.from({length:Ma},(b,d)=>{const y=1-Math.abs(d-(Ma-1)/2)/((Ma-1)/2),m=.18+a.level*(.45+y*.55);return Math.round(Math.min(1,m)*100)})),p=P(()=>!0);return tn(p,()=>u("cancel")),(b,d)=>(o(),l("div",ng,[d[2]||(d[2]=n("span",{class:"wc-chat-rec__dot","aria-hidden":"true"},null,-1)),n("span",ag,r(t.label),1),n("span",{class:"wc-chat-rec__level",role:"img","aria-label":b.$t("chat.composer_voice_level")},[(o(!0),l(fe,null,Ve(e(i),(y,m)=>(o(),l("i",{key:m,style:Gn({height:y+"%"})},null,4))),128))],8,og),n("button",{type:"button",class:"wc-chat-rec__btn",onClick:d[0]||(d[0]=y=>u("cancel"))},r(b.$t("common.cancel")),1),n("button",{type:"button",class:"wc-chat-rec__btn wc-chat-rec__btn--primary",onClick:d[1]||(d[1]=y=>u("finish"))},r(b.$t("chat.composer_voice_finish")),1)]))}}),ig=bt(sg,[["__scopeId","data-v-efc6d4c6"]]),lg={class:"fvp-modal",role:"dialog","aria-modal":"true"},rg={class:"fvp-head"},cg={class:"fvp-title"},ug={class:"fvp-crumbs"},dg=["onClick"],vg={class:"fvp-body"},fg={key:0,class:"fvp-empty"},mg={key:0,class:"fvp-locked"},pg={class:"fvp-locked__title"},gg={class:"fvp-locked__desc"},hg={key:1,class:"fvp-empty"},yg=["onClick"],_g=["title"],bg=["title"],wg=["onClick"],kg=["onClick"],Cg=["title"],$g={class:"fvp-row__size"},Ig={key:0,class:"fvp-foot"},Mg={class:"fvp-foot__label"},Tg={class:"fvp-days"},Sg=["onClick"],Ag={class:"fvp-nodl"},Rg={class:"fvp-hint"},Eg=_t({__name:"FileVaultPickerDialog",props:{scope:{}},emits:["pick"],setup(t,{expose:s,emit:a}
5){const u=t,i=a,{t:p}=Nt(),b=g(!1),d=g(""),y=g(7),m=g(!0),w=P(()=>b.value),h=Hi(w),I=P(()=>h.data.value||[]),E=g(""),j=g(1),N=g("name"),x=g(!0),U=Gi({folderId:d,search:E,page:j,sort:N,asc:x,enabled:w}),_=P(()=>U.data.value?.items||[]),S=P(()=>new Map(I.value.map(K=>[K.folderId,K]))),$=P(()=>I.value.filter(K=>K.parentId===d.value)),v=P(()=>{const K=[];let F=S.value.get(d.value),re=0;for(;F&&re++<50;)K.unshift(F),F=S.value.get(F.parentId);return K});function R(){d.value="",j.value=1,y.value=7,m.value=!0,b.value=!0}function O(){b.value=!1}tn(b,()=>O());const H=g(null),M=P(()=>U.data.value?.lockedFolderId||""),q=P(()=>U.data.value?.lockedFolderName||"");function X(K,F){K&&H.value?.open(K,F)}Ee(M,K=>{K&&b.value&&vt(()=>X(K,q.value))});function Y(){h.refetch(),U.refetch()}function le(K){d.value=K,j.value=1}function oe(K){i("pick",{itemType:"file",itemId:K.fileId,name:K.displayName,isFolder:!1,days:u.scope==="group"?y.value:0,allowDownload:m.value}),O()}function ne(K){if(K.isLocked){X(K.folderId,K.name);return}i("pick",{itemType:"folder",itemId:K.folderId,name:K.name,isFolder:!0,days:u.scope==="group"?y.value:0,allowDownload:m.value}),O()}return s({open:R}),(K,F)=>{const re=xi;return o(),l(fe,null,[(o(),Oe(ln,{to:"body"},[e(b)?(o(),l("div",{key:0,class:"fvp-overlay",onClick:Ut(O,["self"])},[n("div",lg,[n("div",rg,[n("h3",cg,[F[3]||(F[3]=n("i",{class:"fa-solid fa-cloud"},null,-1)),_e(" "+r(e(p)("drive.chat_pick_title")),1)]),n("button",{type:"button",class:"fvp-close",onClick:O},[...F[4]||(F[4]=[n("i",{class:"fa-solid fa-xmark"},null,-1)])])]),n("nav",ug,[n("button",{type:"button",class:Ce(["fvp-crumb",{"is-current":!e(d)}]),onClick:F[0]||(F[0]=ae=>le(""))},[...F[5]||(F[5]=[n("i",{class:"fa-solid fa-house"},null,-1)])],2),(o(!0),l(fe,null,Ve(e(v),ae=>(o(),l(fe,{key:ae.folderId},[F[6]||(F[6]=n("i",{class:"fa-solid fa-chevron-right fvp-sep"},null,-1)),n("button",{type:"button",class:Ce(["fvp-crumb",{"is-current":e(d)===ae.folderId}]),onClick:Te=>le(ae.folderId)},r(ae.name),11,dg)],64))),128))]),n("div",vg,[e(h).isPending.value||e(U).isPending.value?(o(),l("div",fg,[...F[7]||(F[7]=[n("i",{class:"fa-solid fa-spinner fa-spin"},null,-1)])])):(o(),l(fe,{key:1},[e(M)?(o(),l("div",mg,[F[9]||(F[9]=n("i",{class:"fa-solid fa-lock fvp-locked__icon"},null,-1)),n("p",pg,r(e(q)||e(p)("drive.locked_title")),1),n("p",gg,r(e(p)("drive.locked_desc")),1),n("button",{type:"button",class:"fvp-locked__btn",onClick:F[1]||(F[1]=ae=>X(e(M),e(q)))},[F[8]||(F[8]=n("i",{class:"fa-solid fa-unlock"},null,-1)),_e(r(e(p)("drive.locked_unlock")),1)])])):!e($).length&&!e(_).length?(o(),l("div",hg,[F[10]||(F[10]=n("i",{class:"fa-solid fa-inbox fvp-empty__icon"},null,-1)),n("p",null,r(e(p)("drive.empty_folder")),1)])):C("",!0),(o(!0),l(fe,null,Ve(e($),ae=>(o(),l("div",{key:"d"+ae.folderId,class:"fvp-row fvp-row--folder",onClick:Te=>le(ae.folderId)},[F[11]||(F[11]=n("i",{class:"fa-solid fa-folder fvp-row__icon fvp-row__icon--folder"},null,-1)),n("span",{class:"fvp-row__name",title:ae.name},r(ae.name),9,_g),ae.isLocked?(o(),l("i",{key:0,class:"fa-solid fa-lock fvp-row__lock",title:e(p)("drive.share_folder_locked")},null,8,bg)):C("",!0),n("button",{type:"button",class:"fvp-send",onClick:Ut(Te=>ne(ae),["stop"])},[n("i",{class:Ce(ae.isLocked?"fa-solid fa-key":"fa-solid fa-paper-plane")},null,2),_e(r(ae.isLocked?e(p)("drive.unlock_go"):e(p)("drive.chat_pick_send")),1)],8,wg)],8,yg))),128)),(o(!0),l(fe,null,Ve(e(_),ae=>(o(),l("div",{key:"f"+ae.fileId,class:"fvp-row fvp-row--file",onClick:Te=>oe(ae)},[n("i",{class:Ce([e(zi)(ae),"fvp-row__icon"])},null,2),n("span",{class:"fvp-row__name",title:ae.displayName},r(ae.displayName),9,Cg),n("span",$g,r(e(Qi)(ae.sizeBytes)),1),F[12]||(F[12]=n("i",{class:"fa-solid fa-paper-plane fvp-row__pick"},null,-1))],8,kg))),128))],64))]),t.scope==="group"?(o(),l("div",Ig,[n("label",Mg,r(e(p)("drive.share_expiry")),1),n("div",Tg,[(o(),l(fe,null,Ve([1,7,30],ae=>n("button",{key:ae,type:"button",class:Ce(["fvp-days__opt",{"is-on":e(y)===ae}]),onClick:Te=>y.value=ae},r(e(p)("drive.share_days",{n:ae})),11,Sg)),64))])])):C("",!0),n("label",Ag,[Ne(n("input",{"onUpdate:modelValue":F[2]||(F[2]=ae=>ft(m)?m.value=ae:null),type:"checkbox","true-value":!1,"false-value":!0},null,512),[[en,e(m)]]),n("span",null,r(e(p)("drive.chat_share_no_download")),1)]),n("p",Rg,r(t.scope==="dm"?e(p)("drive.chat_pick_hint_dm"):e(p)("drive.chat_pick_hint_group")),1)])])):C("",!0)])),It(re,{ref_key:"unlockDialog",ref:H,onUnlocked:Y},null,512)],64)}}}),Lg=bt(Eg,[["__scopeId","data-v-13ae80c2"]]),Ug=500*1024*1024,Pg=300,Dg=8e3,Og=1500*1e3,qg=20,Vg=2,Bg=150,p_=4e3,g_=45,h_=2,Ng=95,Fg=[".mp4",".mov",".webm",".m4v"];function Kg(t){const s=(t.type||"").toLowerCase();if(s)return s.startsWith("video/");const a=(t.name||"").toLowerCase();return Fg.some(u=>a.endsWith(u))}function Ta(t,s={}){const a=s.maxBytes&&s.maxBytes>0?s.maxBytes:Ug,u=s.maxDurationSeconds&&s.maxDurationSeconds>0?s.maxDurationSeconds:Pg;if(Number.isFinite(t.size)&&t.size>a)return"video_too_large";const i=t.durationSeconds;return i!==null&&Number.isFinite(i)&&i>0&&i>u?"video_too_long":null}function y_(t,s){const a=Number(t),u=Number(s);return!Number.isFinite(a)||!Number.isFinite(u)||a<=0||u<=0?"16 / 9":`${Math.round(a)} / ${Math.round(u)}`}function __(t){const s=Number(t);if(!Number.isFinite(s)||s<=0)return"";const a=Math.max(1,Math.round(s/1e3)),u=Math.floor(a/3600),i=Math.floor(a%3600/60),p=a%60,b=p<10?`0${p}`:String(p);return u>0?`${u}:${i<10?`0${i}`:i}:${b}`:`${i}:${b}`}function jg(t,s){if(!Number.isFinite(t)||!Number.isFinite(s))return!1;const a=s-t;return a>=0&&a<Og}
5const xg=["video_too_large","video_too_long","video_invalid","video_quota_exceeded"];function Co(t){const s=t,a=(s?.data?.code||s?.data?.message||s?.data?.error||"").trim();return a==="chat_v2_video_disabled"||a==="chat_v2_actions_disabled"?{kind:"disabled",code:a}:xg.includes(a)?{kind:"terminal",code:a}:a==="video_not_found"?{kind:"not_found",code:a}:{kind:"retryable",code:a}}function $o(t){const s=[],a=[],u=[];for(const i of t)(i.type||"").toLowerCase().startsWith("image/")?s.push(i):Kg(i)?a.push(i):u.push(i);return{images:s,videos:a,others:u}}function Hg(t,s){if(!(s>0))return 0;const a=Math.max(0,Math.min(1,t/s));return Math.floor(a*Ng)}const Gg=()=>bn().public.apiBase||void 0,na=9,zg=3;function Zo(t,s,a,u){return new Promise((i,p)=>{const b=new FormData;b.append("file",s);for(const[y,m]of Object.entries(u||{}))b.append(y,m);const d=new XMLHttpRequest;d.open("POST",(Gg()||"")+t),d.withCredentials=!0;for(const[y,m]of Object.entries(Do()||{}))typeof m=="string"&&d.setRequestHeader(y,m);d.upload.onprogress=y=>{y.lengthComputable&&y.total>0&&a(Math.min(99,Math.round(y.loaded/y.total*100)))},d.onload=()=>{if(d.status<200||d.status>=300){p(new Error(`HTTP ${d.status}`));return}try{const y=JSON.parse(d.responseText||"{}");if(!y?.url){p(new Error("no_url"));return}a(100),i({url:y.url,mime:y.mime})}catch{p(new Error("bad_response"))}},d.onerror=()=>p(new Error("network")),d.onabort=()=>p(new Error("aborted")),d.send(b)})}let Qg=0;function Io(){return`pi-${Date.now().toString(36)}-${(Qg++).toString(36)}`}function Xg(){const t=g([]);let s=0;const a=[],u=P(()=>t.value.filter(N=>N.status==="done"&&N.url).map(N=>N.url)),i=P(()=>t.value.filter(N=>N.status==="uploading").length),p=P(()=>t.value.filter(N=>N.status==="failed").length),b=P(()=>t.value.length>=na);function d(N){if(N.previewUrl.startsWith("blob:"))try{URL.revokeObjectURL(N.previewUrl)}catch{}}function y(){for(;s<zg&&a.length>0;){const N=a.shift(),x=t.value.find(U=>U.id===N);!x||!x.file||(s+=1,m(x))}}async function m(N){try{const x=await Wi(N.file),U=await Zo("/api/app/social/upload/image",x,S=>{const $=t.value.find(v=>v.id===N.id);$&&($.progress=S)},x!==N.file?{clientOptimized:"true"}:void 0),_=t.value.find(S=>S.id===N.id);if(!_)return;
5d(_),_.url=U.url,_.previewUrl=U.url,_.status="done",_.progress=100,_.error=void 0,_.file=void 0}catch(x){const U=t.value.find(_=>_.id===N.id);U&&(U.status="failed",U.progress=0,U.error=x?.message||"failed")}finally{s=Math.max(0,s-1),y()}}function w(N){const x=na-t.value.length;if(x<=0)return 0;const U=N.filter(_=>_.type.startsWith("image/")).slice(0,x);for(const _ of U){const S={id:Io(),file:_,previewUrl:URL.createObjectURL(_),status:"uploading",progress:0};t.value.push(S),a.push(S.id)}return y(),U.length}function h(N){const x=t.value.find(U=>U.id===N);!x||!x.file||x.status==="uploading"||(x.status="uploading",x.progress=0,x.error=void 0,a.push(x.id),y())}function I(N){const x=t.value.findIndex(_=>_.id===N);if(x<0)return;d(t.value[x]),t.value.splice(x,1);const U=a.indexOf(N);U>=0&&a.splice(U,1)}function E(){for(const N of t.value)d(N);t.value=[],a.length=0}function j(N){E();for(const x of N.slice(0,na))t.value.push({id:Io(),previewUrl:x,url:x,status:"done",progress:100})}return sa(()=>{for(const N of t.value)d(N)}),{items:t,doneUrls:u,uploadingCount:i,failedCount:p,isFull:b,add:w,retry:h,remove:I,clear:E,hydrateUrls:j}}const Wg=()=>bn().public.apiBase||void 0,Sa=300*1e3,Jg=["audio/webm;codecs=opus","audio/webm","audio/ogg;codecs=opus","audio/ogg","audio/mp4"];function Mo(t){return(t||"").split(";")[0].trim()}function Yg(){if(typeof MediaRecorder>"u")return null;for(const t of Jg)try{if(MediaRecorder.isTypeSupported(t))return t}catch{}return null}const jn=64;async function To(t){try{const s=globalThis.AudioContext??globalThis.webkitAudioContext;if(!s)return"";const a=new s;try{const i=(await a.decodeAudioData(await t.arrayBuffer())).getChannelData(0),p=Math.max(1,Math.floor(i.length/jn)),b=new Float32Array(jn);let d=0;for(let w=0;w<jn;w++){const h=w*p,I=Math.min(i.length,h+p);let E=0;for(let j=h;j<I;j++)E+=i[j]*i[j];b[w]=I>h?Math.sqrt(E/(I-h)):0,b[w]>d&&(d=b[w])}const y=new Uint8Array(jn);for(let w=0;w<jn;w++)y[w]=d>0?Math.max(1,Math.round(b[w]/d*255)):0;let m="";for(const w of y)m+=String.fromCharCode(w);return btoa(m)}finally{try{await a.close()}catch{}}}catch{return""}}function Zg(){const t=g(!1),s=g(!1),a=g(0),u=g(""),i=g(""),p=g(0),b=g(0);let d=null,y="",m=0,w=null,h=null,I=[],E=null,j=0,N=!1,x=null,U=0,_=null;const S=P(()=>typeof MediaRecorder<"u"&&!!navigator?.mediaDevices?.getUserMedia);function $(){h?.getTracks().forEach(ne=>ne.stop()),h=null}function v(){if(u.value){try{URL.revokeObjectURL(u.value)}catch{}u.value=""}d=null,m=0,i.value=""}function R(){U&&(cancelAnimationFrame(U),U=0),_=null;const ne=x;if(x=null,ne)try{ne.close()}catch{}b.value=0}function O(ne){try{const K=globalThis.AudioContext??globalThis.webkitAudioContext;if(!K)return;const F=new K;x=F;const re=F.createAnalyser();re.fftSize=256,F.createMediaStreamSource(ne).connect(re),_=new Uint8Array(new ArrayBuffer(re.frequencyBinCount));const ae=()=>{if(!x||!_)return;re.getByteTimeDomainData(_);let Te=0;for(let he=0;he<_.length;he++){const ye=(_[he]-128)/128;Te+=ye*ye}b.value=Math.min(1,Math.sqrt(Te/_.length)*3),U=requestAnimationFrame(ae)};U=requestAnimationFrame(ae)}catch{R()}}function H(){R(),E&&(clearInterval(E),E=null),$(),w=null,t.value=!1}async function M(){if(t.value||s.value||!S.value)return!1;const ne=Yg();if(!ne)return!1;try{h=await navigator.mediaDevices.getUserMedia({audio:!0})}catch{return!1}I=[],N=!1;try{w=new MediaRecorder(h,{mimeType:ne})}catch{return H(),!1}return w.ondataavailable=K=>{K.data&&K.data.size>0&&I.push(K.data)},j=Date.now(),a.value=0,t.value=!0,O(h),w.start(),E=aa(()=>{a.value=Date.now()-j,a.value>=Sa&&w?.state==="recording"&&w.stop()},100),!0}function q(){if(!t.value){v(),$();return}N=!0;try{w?.state==="recording"&&w.stop()}catch{}I=[],a.value=0,H()}async function X(){if(!t.value||!w)return!1;const ne=w,K=Math.min(Date.now()-j,Sa),F=Mo(ne.mimeType),re=await new Promise(ae=>{ne.onstop=()=>ae(N?null:new Blob(I,{type:F}));try{ne.state==="recording"?ne.stop():ae(null)}catch{ae(null)}});return H(),I=[],a.value=0,v(),!re||re.size===0||K<1e3?!1:(d=re,y=F,m=K,u.value=URL.createObjectURL(re),i.value=await To(re),!0)}async function Y(){if(!d)return null;const ne=d,K=y,F=m,re=i.value,ae=K==="audio/mp4"?"m4a":K==="audio/ogg"?"ogg":"webm";s.value=!0,p.value=0;try{const Te=await Zo("/api/app/social/upload/audio",new File([ne],`voice-${Date.now()}.${ae}`,{type:K}),he=>{p.value=he});return Te?.url?(v(),{url:Te.url,mime:Te.mime||K,durationMs:F,waveform:re}):null}finally{s.value=!1}}function le(){v()}async function oe(){if(!t.value||!w)return null;const ne=w,K=Math.min(Date.now()-j,Sa),F=Mo(ne.mimeType),re=await new Promise(ye=>{ne.onstop=()=>ye(N?null:new Blob(I,{type:F}));try{ne.state==="recording"?ne.stop():ye(null)}catch{ye(null)}});if(H(),I=[],a.value=0,!re||re.size===0||K<1e3)return null;const ae=await To(re),Te=F==="audio/mp4"?"m4a":F==="audio/ogg"?"ogg":"webm",he=new FormData;he.append("file",new File([re],`voice-${Date.now()}.${Te}`,{type:F})),s.value=!0;try{const ye=await $fetch("/api/app/social/upload/audio",{method:"POST",baseURL:Wg(),credentials:"include",headers:Do(),body:he});return ye?.url?{url:ye.url,mime:ye.mime||F,durationMs:K,waveform:ae}:null}finally{s.value=!1}}return sa(()=>{t.value&&q(),R(),$(),v()}),{supported:S,recording:t,uploading:s,uploadProgress:p,elapsedMs:a,level:b,previewUrl:u,previewWaveform:i,start:M,cancel:q,stopAndUpload:oe,stopAndPreview:X,uploadPreview:Y,discardPreview:le}}const eh={key:0,class:"wc-chat-input wc-chat-input__readonly",role:"status"},th={key:0,class:"wc-chat-input__drop",role:"status"},nh={key:1,class:"wc-chat-input__reply wc-chat-input__editing"},ah={class:"wc-chat-input__reply-info"},oh={class:"wc-chat-input__reply-label"},sh=["aria-label"],ih={key:2,class:"wc-chat-input__slowmode",role:"status"}
5,lh={key:3,class:"wc-chat-input__reply"},rh={class:"wc-chat-input__reply-info"},ch={class:"wc-chat-input__reply-label"},uh={class:"wc-chat-input__reply-text"},dh=["aria-label"],vh={key:4,class:"wc-chat-input__upload-error",role:"alert"},fh=["disabled"],mh={key:5,class:"wc-chat-input__upload-error",role:"alert"},ph={key:6,class:"wc-chat-input__preview"},gh=["src"],hh={key:7,class:"wc-chat-input__partial",role:"status"},yh={key:8,class:"wc-chat-input__video",role:"status"},_h={class:"wc-chat-input__video-thumb"},bh=["src"],wh={key:1,class:"fa-solid fa-film","aria-hidden":"true"},kh={class:"wc-chat-input__video-info"},Ch={class:"wc-chat-input__video-name"},$h={key:0,class:"wc-chat-input__video-bar"},Ih={key:1,class:"wc-chat-input__video-note"},Mh={key:2,class:"wc-chat-input__video-err"},Th=["aria-label","title"],Sh={class:"wc-chat-input__row"},Ah=["disabled","title","aria-label","aria-expanded"],Rh=["disabled"],Eh=["disabled"],Lh=["disabled"],Uh=["disabled"],Ph={key:0,class:"wc-chat-input__field"},Dh=["placeholder","readonly","aria-expanded","aria-controls","aria-activedescendant"],Oh=["disabled","title","aria-label","aria-expanded"],qh=["disabled","aria-label"],Vh={key:0,class:"wc-chat-input__cool","aria-live":"polite"},Bh={key:1,class:"fa-solid fa-spinner fa-spin"},Nh={key:2,class:"fa-solid fa-paper-plane"},Fh=["disabled","title","aria-label"],Kh=200,So=400,Ao="wc-chat-mention-listbox",jh=_t({__name:"ChatInput",props:{disabled:{type:Boolean},placeholder:{},replyTo:{},vaultScope:{},editing:{},slowModeRemaining:{},draftKey:{},readonlyReason:{},mentionConvId:{},scheduleEnabled:{type:Boolean},scheduledCount:{},pollEnabled:{type:Boolean},videoEnabled:{type:Boolean},videoPending:{}},emits:["send","cancelReply","submitEdit","cancelEdit","typing","vaultShare","audio","schedule","openScheduled","openPoll","videoPick","videoSend","videoRetry","videoRemove"],setup(t,{expose:s,emit:a}){const{t:u}=Nt(),i=t,p=a,b=g(null);function d(){i.disabled||b.value?.open()}function y(A){p("vaultShare",A)}const m=g(""),w=g(null),h=g(null),I=Xg(),E=I.doneUrls,j=P(()=>I.uploadingCount.value>0),N=g(""),x=li(),U=Ko(),_=Zg(),S=g(""),$=P(()=>Math.floor(_.elapsedMs.value/1e3)),v=P(()=>{const A=$.value;return`${String(Math.floor(A/60)).padStart(2,"0")}:${String(A%60).padStart(2,"0")}`}),R=P(()=>!i.disabled&&_.supported.value&&!j.value);async function O(){if(!R.value||_.recording.value||_.uploading.value||!x.ensureCanUpload())return;S.value="",gn("chat_attachment_pick",{source:"composer",attachment_type:"audio"}),await _.start()||(S.value=u("chat.voice_unavailable"))}function H(){_.cancel(),S.value=""}async function M(){if(!_.recording.value)return;const A=await _.stopAndPreview();S.value=A?"":u("chat.voice_too_short")}async function q(){if(!(!_.previewUrl.value||_.uploading.value))try{const A=await _.uploadPreview();if(!A){S.value=u("chat.voice_upload_failed");return}S.value="",p("audio",A)}catch{S.value=u("chat.voice_upload_failed")}}async function X(){_.discardPreview(),S.value="",await O()}function Y(){_.discardPreview(),S.value=""}const le=g(null);let oe=0,ne=!1;function K(A){A.button!==0&&A.pointerType==="mouse"||_.recording.value||(oe=Date.now(),ne=!1,O().then(()=>{oe&&Date.now()-oe>=So&&(ne=!0)}))}function F(){if(!oe)return;const A=Date.now()-oe;oe=0,!(A<So&&!ne)&&(ne=!1,_.recording.value&&M())}function re(){oe||ne||_.recording.value&&M()}const ae=P(()=>_.supported.value?_.uploading.value||j.value?u("chat.composer_voice_busy"):_.recording.value?u("chat.composer_voice_finish"):u("chat.composer_voice_hint"):u("chat.voice_unsupported")),Te=P(()=>!i.disabled&&(i.slowModeRemaining??0)<=0&&I.uploadingCount.value===0&&!we.value&&(!!m.value.trim()||E.value.length>0||de.value)),he=P(()=>!_.recording.value&&(!!m.value.trim()||E.value.length>0||!!i.videoPending||!!i.editing)),ye=g(null),ot=Fo(),we=P(()=>["reading","uploading","sending"].includes(i.videoPending?.status||"")),de=P(()=>i.videoPending?.status==="ready"),me=P(()=>{const A=i.videoPending;return A?A.status==="disabled"?ot("chat_v2_video_disabled"):A.status==="failed"?ot(A.errorCode):"":""});function $e(){x.ensureCanUpload()&&(gn("chat_attachment_pick",{source:"composer",attachment_type:"video"}),ye.value?.click())}function Ie(A){if(i.videoPending){U.show(u("chat.video.one_at_a_time"),"info");return}p("videoPick",A)}function be(A){const ee=A.target,Le=ee.files?.[0];ee.value="",Le&&Ie(Le)}function Ue(A){if(!(A.isComposing||A.keyCode===229)){if(an.value){if(A.key==="Escape"){A.preventDefault(),A.stopPropagation(),Ht();return}const ee=Qe.value?.itemCount()??0;if(ee>0&&(A.key==="ArrowDown"||A.key==="ArrowUp")){A.preventDefault(),Qe.value?.move(A.key==="ArrowDown"?1:-1);return}if(ee>0&&(A.key==="Enter"||A.key==="Tab")){A.preventDefault(),Qe.value?.confirm();return}}if(A.key==="Enter"&&(A.ctrlKey||A.metaKey)){A.preventDefault(),Qt();return}
5A.key==="Enter"&&!A.shiftKey&&!A.altKey&&(A.preventDefault(),Qt())}}const st=P(()=>{const A=Math.max(0,Math.ceil(i.slowModeRemaining??0));return`${String(Math.floor(A/60)).padStart(2,"0")}:${String(A%60).padStart(2,"0")}`}),Pe=P(()=>(i.slowModeRemaining??0)>0);function mt(){x.ensureCanUpload()&&(N.value="",gn("chat_attachment_pick",{source:"composer",attachment_type:"image"}),h.value?.click())}function Ye(A){N.value="";const ee=I.add(A);ee===0&&A.length>0&&(N.value=u("chat.composer_images_full",{n:na})),ee>0&&it()}function rt(A){const ee=A.target,Le=Array.from(ee.files||[]);ee.value="",Le.length!==0&&Ye(Le)}function pt(A){const Le=Array.from(A.clipboardData?.items||[]).filter(at=>at.kind==="file").map(at=>at.getAsFile()).filter(at=>!!at),{images:yt,videos:Lt}=$o(Le),qt=i.videoEnabled?Lt[0]:void 0;yt.length===0&&!qt||(A.preventDefault(),x.ensureCanUpload()&&(yt.length&&(gn("chat_attachment_pick",{source:"paste",attachment_type:"image"}),Ye(yt)),qt&&Ie(qt)))}const Xe=g(!1);let D=0;function te(A){Array.from(A.dataTransfer?.types||[]).includes("Files")&&(D+=1,Xe.value=!0)}function G(A){Xe.value&&(A.preventDefault(),A.dataTransfer&&(A.dataTransfer.dropEffect="copy"))}function Q(){D=Math.max(0,D-1),D===0&&(Xe.value=!1)}function pe(){D=0,Xe.value=!1}function Se(A){if(!Xe.value)return;A.preventDefault(),pe();const ee=Array.from(A.dataTransfer?.files||[]);if(ee.length===0)return;const{images:Le,videos:yt,others:Lt}=$o(ee),qt=i.videoEnabled?yt[0]:void 0,at=i.videoEnabled?"chat.video.drop_only":"chat.composer_drop_images_only";if(Le.length===0&&!qt){U.show(u(at),"info");return}x.ensureCanUpload()&&(Le.length&&(gn("chat_attachment_pick",{source:"drop",attachment_type:"image"}),Ye(Le)),qt&&Ie(qt),Lt.length&&U.show(u(at),"info"))}const Ae=g(!1),Re=g(null);function xe(){i.disabled||(Ae.value=!Ae.value)}function et(){Ae.value=!1}function ze(A){Ae.value&&!Re.value?.contains(A.target)&&(Ae.value=!1)}nn(()=>document.addEventListener("pointerdown",ze)),St(()=>document.removeEventListener("pointerdown",ze)),tn(P(()=>Xe.value||Ae.value),()=>{pe(),Ae.value=!1});const Je=Oa(),Ke=P(()=>(i.draftKey||"").split(":")[0]||"");let ke=null;function je(A){if(!A)return;const ee=A.split(":")[0]||"",Le=m.value,yt=[...E.value];if(!Le.trim()&&yt.length===0&&!i.replyTo?.msgId){Je.clear(ee,A);return}Je.set(ee,A,{text:Le,pending:yt,replyToMsgId:i.replyTo?.msgId,updatedAt:Date.now()})}function ve(A){xt=[],ct.value=null,$t=-1;const ee=(A||"").split(":")[0]||"",Le=A?Je.get(ee,A):null;m.value=Le?.text||"",I.hydrateUrls(Le?Le.pending:[]),vt(()=>ut())}function it(){ke&&clearTimeout(ke),ke=setTimeout(()=>{ke=null,je(i.draftKey)},300)}Ee(()=>i.draftKey,(A,ee)=>{ke&&(clearTimeout(ke),ke=null),!i.editing&&(je(ee),ve(A))}),nn(()=>{i.editing||ve(i.draftKey)}),St(()=>{ke&&(clearTimeout(ke),ke=null),i.editing||je(i.draftKey)});let Ft=null;Ee(()=>i.editing,(A,ee)=>{A&&!ee&&(Ft=m.value),m.value=A?A.text||"":Ft??"",A||(Ft=null),vt(()=>{w.value?.focus(),ut()})});function zt(A){I.retry(A)}function Kt(A){I.remove(A),it()}function Qt(){if(i.editing){const Le=m.value.trim();if(!Le)return;p("submitEdit",Le);return}const A=de.value,ee=gt();if(ee){if(gn("chat_send",{has_text:!!ee.text,has_images:ee.images.length>0,image_count:ee.images.length}),A){p("videoSend",ee.text,ee.mentions),ee.images.length&&p("send","",ee.images,[]);return}p("send",ee.text,ee.images,ee.mentions)}}function gt(){if(!Te.value)return null;const A=m.value.trim(),ee=[...E.value],Le=If(A,xt);return m.value="",xt=[],ct.value=null,$t=-1,I.clear(),ke&&(clearTimeout(ke),ke=null),i.draftKey&&Je.clear(Ke.value,i.draftKey),vt(()=>{w.value&&(w.value.style.height="auto")}),{text:A,images:ee,mentions:Le}}const B=Bt(()=>Dt(()=>Promise.resolve().then(()=>sl),void 0,import.meta.url)),Z=Bt(()=>Dt(()=>import("./DoL8ejv-.js"),__vite__mapDeps([51,2,3,31,32,33,34,1,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,35,4,36,37,38,39,40,52]),import.meta.url)),Fe=g(null),ie=g(!1),We=P(()=>[{key:"schedule",labelKey:"chat.schedule.menu_schedule",icon:"fa-regular fa-clock",visible:!0,disabled:!Te.value||!!i.videoPending},{key:"scheduled_list",labelKey:"chat.schedule.menu_list",icon:"fa-regular fa-rectangle-list",visible:(i.scheduledCount??0)>0}].filter(A=>A.visible));let De=null,lt=!1,tt={x:0,y:0};function ce(){De&&(clearTimeout(De),De=null)}function wt(A,ee){!i.scheduleEnabled||i.editing||i.readonlyReason||(Fe.value={x:A.clientX,y:A.clientY,mode:ee})}function At(A){Fe.value||lt||wt(A,"popup")}function kt(A){A.pointerType!=="mouse"&&(ce(),tt={x:A.clientX,y:A.clientY},De=setTimeout(()=>{De=null,lt=!0,wt({clientX:tt.x,clientY:tt.y},"sheet")},500))}function Ct(A){De&&(Math.abs(A.clientX-tt.x)>10||Math.abs(A.clientY-tt.y)>10)&&ce()}function Vt(){ce()}function ue(){if(lt){lt=!1;return}Qt()}St(()=>ce());function Rt(A){if(Fe.value=null,A==="scheduled_list"){p("openScheduled");return}Te.value&&(ie.value=!0)}function ht(A){ie.value=!1;const ee=gt();ee&&p("schedule",ee.text,ee.images,ee.mentions,A)}const jt=Bt(()=>Dt(()=>import("./DeZcULKt.js"),__vite__mapDeps([44,2,3,31,32,33,34,1,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,35,4,36,37,38,39,40,45]),import.meta.url)),Ze
5=g(!1),Ot=Bt(()=>Dt(()=>import("./CrXQ0K6e.js"),__vite__mapDeps([53,1,2,3,4,54]),import.meta.url)),ct=g(null),Mt=g(""),Qe=g(null);let Et=-1,vn=0,$t=-1,xt=[];const an=P(()=>!!i.mentionConvId&&!i.editing&&!i.disabled&&ct.value!==null);function Ht(){$t=Et,ct.value=null,Mt.value=""}function Xt(){if(!i.mentionConvId||i.editing){ct.value=null;return}const ee=w.value?.selectionStart??m.value.length,Le=$f(m.value,ee);if(!Le){ct.value=null,Mt.value="",$t=-1;return}if(Le.start===$t){ct.value=null;return}Et=Le.start,vn=ee,ct.value=Le.query}function T(A){const ee=m.value;if(Et<0||Et>ee.length){Ht();return}const Le=Cf(A.nickname);if(!Le){Ht();return}m.value=`${ee.slice(0,Et)}${Le} ${ee.slice(Math.min(vn,ee.length))}`,xt.push({userId:A.userId,token:Le});const yt=Et+Le.length+1;ct.value=null,Mt.value="",$t=-1,vt(()=>{const Lt=w.value;Lt&&(Lt.focus(),Lt.setSelectionRange(yt,yt)),ut()}),it()}function z(){i.disabled||(Ze.value=!Ze.value)}function Be(A){const ee=w.value;if(!ee){m.value+=A,it();return}const Le=ee.selectionStart??m.value.length,yt=ee.selectionEnd??Le;m.value=m.value.slice(0,Le)+A+m.value.slice(yt),vt(()=>{ee.focus();const Lt=Le+A.length;ee.setSelectionRange(Lt,Lt),ut()}),it()}function ut(){w.value&&(w.value.style.height="auto",w.value.style.height=Math.min(w.value.scrollHeight,Kh)+"px")}function on(){ut(),Xt(),it(),m.value.trim()&&p("typing")}function se(){w.value?.focus()}return s({focus:se,restoreDraft:()=>ve(i.draftKey)}),(A,ee)=>{const Le=Gp,yt=tg,Lt=ig,qt=Lg;return t.readonlyReason?(o(),l("div",eh,[ee[10]||(ee[10]=n("i",{class:"fa-solid fa-circle-info","aria-hidden":"true"},null,-1)),n("span",null,r(t.readonlyReason),1)])):(o(),l("div",{key:1,class:"wc-chat-input",onDragenter:te,onDragover:G,onDragleave:Q,onDrop:Se},[e(Xe)?(o(),l("div",th,[ee[11]||(ee[11]=n("i",{class:"fa-solid fa-image","aria-hidden":"true"},null,-1)),n("span",null,r(A.$t("chat.composer_drop_hint")),1)])):C("",!0),t.editing?(o(),l("div",nh,[n("div",ah,[n("span",oh,r(A.$t("chat.editing_message")),1)]),n("button",{type:"button",class:"wc-chat-input__reply-close","aria-label":A.$t("common.cancel"),onClick:ee[0]||(ee[0]=at=>p("cancelEdit"))},[...ee[12]||(ee[12]=[n("i",{class:"fa-solid fa-xmark"},null,-1)])],8,sh)])):C("",!0),(t.slowModeRemaining??0)>0?(o(),l("div",ih,r(A.$t("chat.slow_mode_wait",{seconds:t.slowModeRemaining})),1)):C("",!0),t.replyTo&&!t.editing?(o(),l("div",lh,[n("div",rh,[n("span",ch,r(A.$t("chat.reply_to",{name:t.replyTo.userNickname})),1),n("span",uh,r(t.replyTo.content?t.replyTo.content.replace(/<[^>]*>/g,"").slice(0,60):A.$t("common.image_placeholder")),1)]),n("button",{type:"button",class:"wc-chat-input__reply-close","aria-label":A.$t("common.close"),onClick:ee[1]||(ee[1]=at=>p("cancelReply"))},[...ee[13]||(ee[13]=[n("i",{class:"fa-solid fa-xmark"},null,-1)])],8,dh)])):C("",!0),e(N)?(o(),l("div",vh,[n("span",null,[ee[14]||(ee[14]=n("i",{class:"fa-solid fa-circle-exclamation","aria-hidden":"true"},null,-1)),_e(r(e(N)),1)]),n("button",{type:"button",disabled:t.disabled||e(I).isFull.value,onClick:mt},r(A.$t("chat.composer_pick_more")),9,fh)])):C("",!0),e(S)?(o(),l("div",mh,[n("span",null,[ee[15]||(ee[15]=n("i",{class:"fa-solid fa-circle-exclamation","aria-hidden":"true"},null,-1)),_e(r(e(S)),1)])])):C("",!0),e(_).previewUrl.value?(o(),l("div",ph,[n("audio",{src:e(_).previewUrl.value,ref_key:"previewAudioEl",ref:le,preload:"metadata",class:"wc-chat-input__preview-audio"},null,8,gh),It(Le,{"audio-el":e(le),waveform:e(_).previewWaveform.value,"duration-ms":e(_).elapsedMs.value,uploading:e(_).uploading.value,progress:e(_).uploadProgress.value,onSend:q,onRedo:X,onCancel:Y},null,8,["audio-el","waveform","duration-ms","uploading","progress"])])):C("",!0),It(yt,{items:e(I).items.value,onRetry:zt,onRemove:Kt},null,8,["items"]),e(I).failedCount.value>0?(o(),l("div",hh,r(A.$t("chat.composer_images_not_uploaded",{n:e(I).failedCount.value})),1)):C("",!0),t.videoPending?(o(),l("div",yh,[n("span",_h,[t.videoPending.frameUrl?(o(),l("img",{key:0,src:t.videoPending.frameUrl,alt:""},null,8,bh)):(o(),l("i",wh))]),n("span",kh,[n("span",Ch,r(t.videoPending.name),1),t.videoPending.status==="reading"||t.videoPending.status==="uploading"?(o(),l("span",$h,[n("span",{style:Gn({width:`${t.videoPending.progress}%`})},null,4)])):C("",!0),t.videoPending.status==="sending"?(o(),l("span",Ih,r(A.$t("chat.video.sending")),1)):e(me)?(o(),l("span",Mh,r(e(me)),1)):C("",!0)]),t.videoPending.status==="failed"&&!t.videoPending.terminal?(o(),l("button",{key:0,t
5ype:"button",class:"wc-chat-input__video-btn",onClick:ee[2]||(ee[2]=at=>p("videoRetry"))},r(A.$t("common.retry")),1)):C("",!0),t.videoPending.status!=="sending"?(o(),l("button",{key:1,type:"button",class:"wc-chat-input__video-btn","aria-label":e(we)?A.$t("common.cancel"):A.$t("common.remove"),title:e(we)?A.$t("common.cancel"):A.$t("common.remove"),onClick:ee[3]||(ee[3]=at=>p("videoRemove"))},[...ee[16]||(ee[16]=[n("i",{class:"fa-solid fa-xmark","aria-hidden":"true"},null,-1)])],8,Th)):C("",!0)])):C("",!0),n("div",Sh,[n("input",{ref_key:"fileInputRef",ref:h,type:"file",accept:"image/*",multiple:"",class:"d-none",onChange:rt},null,544),n("input",{ref_key:"videoInputRef",ref:ye,type:"file",accept:"video/*,.mp4,.mov,.webm,.m4v",class:"d-none",onChange:be},null,544),n("div",{ref_key:"attachHostRef",ref:Re,class:"wc-chat-input__more"},[n("button",{class:"wc-chat-input__attach",type:"button",disabled:t.disabled,title:A.$t("chat.composer_more"),"aria-label":A.$t("chat.composer_more"),"aria-haspopup":"menu","aria-expanded":e(Ae),onClick:xe},[...ee[17]||(ee[17]=[n("i",{class:"fa-solid fa-plus"},null,-1)])],8,Ah),e(Ae)?(o(),l("div",{key:0,class:"wc-chat-input__menu",role:"menu",onClick:et},[n("button",{class:"wc-chat-input__menu-item",type:"button",role:"menuitem",disabled:t.disabled||e(I).isFull.value,onClick:mt},[ee[18]||(ee[18]=n("i",{class:"fa-solid fa-image","aria-hidden":"true"},null,-1)),_e(r(A.$t("chat.send_image")),1)],8,Rh),t.videoEnabled?(o(),l("button",{key:0,class:"wc-chat-input__menu-item",type:"button",role:"menuitem",disabled:t.disabled||!!t.videoPending,onClick:$e},[ee[19]||(ee[19]=n("i",{class:"fa-solid fa-video","aria-hidden":"true"},null,-1)),_e(r(A.$t("chat.video.send")),1)],8,Eh)):C("",!0),t.vaultScope?(o(),l("button",{key:1,class:"wc-chat-input__menu-item",type:"button",role:"menuitem",disabled:t.disabled,onClick:d},[ee[20]||(ee[20]=n("i",{class:"fa-solid fa-cloud","aria-hidden":"true"},null,-1)),_e(r(A.$t("drive.chat_send_vault")),1)],8,Lh)):C("",!0),t.pollEnabled?(o(),l("button",{key:2,class:"wc-chat-input__menu-item",type:"button",role:"menuitem",disabled:t.disabled,onClick:ee[4]||(ee[4]=at=>p("openPoll"))},[ee[21]||(ee[21]=n("i",{class:"fa-solid fa-square-poll-vertical","aria-hidden":"true"},null,-1)),_e(r(A.$t("chat.poll.create_title")),1)],8,Uh)):C("",!0)])):C("",!0)],512),e(_).recording.value?(o(),Oe(Lt,{key:1,label:e(v),level:e(_).level.value,onCancel:H,onFinish:M},null,8,["label","level"])):(o(),l("div",Ph,[Ne(n("textarea",{ref_key:"textareaRef",ref:w,"onUpdate:modelValue":ee[5]||(ee[5]=at=>ft(m)?m.value=at:null),class:"wc-chat-input__textarea",placeholder:t.placeholder,readonly:t.disabled,enterkeyhint:"send",rows:"1",role:"combobox","aria-autocomplete":"list","aria-expanded":e(an),"aria-controls":e(an)?Ao:void 0,"aria-activedescendant":e(Mt)||void 0,onKeydown:Ue,onInput:on,onPaste:pt,onClick:Xt,onKeyup:Xt},null,40,Dh),[[dt,e(m)]]),n("button",{class:"wc-chat-input__emoji",type:"button",disabled:t.disabled,title:A.$t("chat.composer_emoji"),"aria-label":A.$t("chat.composer_emoji"),"aria-expanded":e(Ze),onClick:z},[...ee[22]||(ee[22]=[n("i",{class:"fa-regular fa-face-smile"},null,-1)])],8,Oh)])),e(he)?(o(),l("button",{key:2,type:"button",class:Ce(["wc-chat-input__send",{"wc-chat-input__send--cooling":e(Pe)}]),disabled:!e(Te),"aria-label":e(Pe)?A.$t("chat.slow_mode_wait",{seconds:t.slowModeRemaining}):e(we)?A.$t("chat.video.uploading"):A.$t("common.send"),onClick:ue,onContextmenu:Ut(At,["prevent"]),onPointerdown:kt,onPointermove:Ct,onPointerup:Vt,onPointercancel:Vt},[e(Pe)?(o(),l("span",Vh,r(e(st)),1)):e(we)?(o(),l("i",Bh)):(o(),l("i",Nh))],42,qh)):(o(),l("button",{key:3,class:Ce(["wc-chat-input__attach wc-chat-input__mic",{"wc-chat-input__attach--rec":e(_).recording.value}]),type:"button",disabled:!e(R)&&!e(_).recording.value,title:e(ae),"aria-label":e(ae),onPointerdown:K,onPointerup:F,onPointercancel:F,onClick:re},[n("i",{class:Ce(e(_).uploading.value?"fa-solid fa-spinner fa-spin":"fa-solid fa-microphone")},null,2)],42,Fh))]),e(an)?(o(),Oe(e(Ot),{key:9,ref_key:"mentionPickerRef",ref:Qe,"conversation-id":t.mentionConvId||"",query:e(ct)||"","listbox-id":Ao,onPick:T,onClose:Ht,onHighlight:ee[6]||(ee[6]=at=>Mt.value=at)},null,8,["conversation-id","query"])):C("",!0),e(Ze)?(o(),Oe(e(jt),{key:10,onPick:Be,onClose:ee[7]||(ee[7]=at=>Ze.value=!1)})):C("",!0),e(Fe)?(o(),Oe(e(B),{key:11,items:e(We),mode:e(Fe).mode,x:e(Fe).x,y:e(Fe).y,onPick:Rt,onClose:ee[8]||(ee[8]=at=>Fe.value=null)},null,8,["items","mode","x","y"])):C("",!0),e(ie)?(o(),Oe(e(Z),{key:12,onConfirm:ht,onClose:ee[9]||(ee[9]=at=>ie.value=!1)})):C("",!0),t.vaultScope?(o(),Oe(qt,{key:13,ref_key:"vaultPickerRef",ref:b,scope:t.vaultScope,onPick:y},null,8,["scope"])):C("",!0)],32))}}}),xh=bt(jh,[["__scopeId","data-v-559f6d31"]]);function Hh(t,s){if(!(t>0))return null;for(const a of s)if(!a.isMine&&a.seq>t)return a.seq;return null}function Gh(t,s){if(!(t>0))return 0;let a=0;for(const u of s)u.isMine||u.seq>t&&a++;return a}function zh(t,s){const a=/^(meeting|minutes)_(mt_[0-7][0-9A-HJKMNP-TV-Z]{25})$/.exec(t.msgId),u=t.deletedAt&&a?{id:a[2],status:6,minutes:a[1]==="minutes"}:t.media?.meeting;return!u||!/^mt_[0-7][0-9A-HJKMNP-TV-Z]{25}$/.test(u.id)||!Number.isInteger(u.status)||u.status<0||u.status>6||typeof u.minutes!="boolean"||t.msgId!==`${u.minutes?"minutes":"meeting"}_${u.id}`||!Number.isFinite(Date.parse(t.createdAt))?null:{msgId:t.msgId,groupId:s,userId:"",userNickname:"",userLogo:"",content:"",images:[],createDate:t.createdAt,isMyMsg:!1,replyToMsgId:null,replyContent:null,replyUserNickname:null,replyUserLogo:null,replyImages:[],replyMarkDel:!1,includeUrls:null,includeUrlFirstTitle:null,includeUrlFirstDescription:null,includeUrlsFirstImages:null,customUserTitle:null,isAdmin:!1,isSystemMsg:!0,isBot:!0,joys:t.deletedAt?[]:[...t.reactions?.joys??[]],thumbsUp:t.deletedAt?[]:[...t.reactions?.thumbsUp??[]],heart:t.deletedAt?[]:[...t.reactions?.heart??[]],tried:t.deletedAt?[]:[...t.reactions?.tried??[]],meeting:{id:u.id,status:u.status,minutes:u.minutes,deleted:!!t.deletedAt}}}function Qh(t,s){const a=[...s];if(a.length===0)return t;const u=new Map(t.map(i=>[i.msgId.toLowerCase(),i]));for(const i of a)u.set(i.msgId.toLowerCase(),i);return[...u.values()].sort((i,p)=>Date.parse(i.createDate||"")-Date.parse(p.createDate||""))}const Xh=/^vr_[0-7][0-9A-HJKMNP-TV-Z]{25}$/;function Wh(t,s){const a=/^voice_(vr_[0-7][0-9A-HJKMNP-TV-Z]{25})$/.exec(t.msgId),u=t.deletedAt&&a?{id:a[1],status:"ended"}:t.media?.voice;return!u||!Xh.test(u.id)||!["active","ended"].includes(u.status)||t.msgId!==`voice_${u.id}`||!Number.isFinite(Date.parse(t.createdAt))?null:{msgId:t.msgId,groupId:s,userId:"",userNickname:"",userLogo:"",content:"",images:[],createDate:t.createdAt,isMyMsg:!1,replyToMsgId:null,replyContent:null,replyUserNickname:null,replyUserLogo:null,replyImages:[],replyMarkDel:!1,includeUrls:null,includeUrlFirstTitle:null,includeUrlFirstDescription:null,includeUrlsFirstImages:null,customUserTitle:null,isAdmin:!1,isSystemMsg:!0,isBot:!0,joys:[],thumbsUp:[],heart:[],tried:[],voice:{id:u.id,status:u.status,participants:u.participants,peakParticipants:u.peakParticipants,participantMinutes:u.participantMinutes,endedReason:u.endedReason,deleted:!!t.deletedAt}}}function Jh(t){const{activeConv:s,v2MetaOf:a,openConvEpoch:u,chatV2:i,resolveNickname:p,showActionError:b,t:d}=t,y=g(!1),m=g(!1),w=g({count:null,tooMany:!1,names:[]});function h(){y.value=!1}tn(y,h);const{onOverlayPointerdown:I,onOverlayClick:E}=Ea(h);async function j(N){const x=s.value,U=a(N.msgId);if(!x||!U)return;const _=u();y.value=!0,m.value=!0,w.value={count:null,tooMany:!1,names:[]};try{const S=await i.messageReaders(x.key,U.seq);if(_!==u()||s.value?.key!==x.key)return;w.value={count:S?.count??null,tooMany:!!S?.tooMany,names:(S?.readers||[]).map($=>$.nickname||p($.userId)||d("chat.reaction_unknown_user"))}}catch(S){b(S),y.value=!1}finally{_===u()&&(m.value=!1)}}
5return{readersOpen:y,readersBusy:m,readersData:w,closeReaders:h,onReadersDown:I,onReadersClick:E,onShowReaders:j}}function Yh(t){const{activeConv:s,timelineMessages:a,v2MetaOf:u,v2ActionsOn:i,chatV2:p,openConvEpoch:b,disposed:d,showActionError:y,t:m}=t,w=g([]),h=Ua(new Map),I=60;function E($,v,R){const H=(v||"").replace(/<[^>]*>/g,"").trim()||(R?m("common.image_placeholder"):""),M=H.length>I?`${H.slice(0,I)}…`:H;return $?`${$}: ${M}`:M}function j($){return h.get($)||""}async function N($,v,R){for(const O of v){if(h.has(O))continue;const H=a.value.find(X=>u(X.msgId)?.seq===O);if(H){h.set(O,E(H.userNickname,H.content,H.images.length>0));continue}const M=await p.getHistoryAround($.key,O,2).catch(()=>null);if(!M||d()||R!==b()||s.value?.key!==$.key)return;const q=(M.messages||[]).find(X=>X.seq===O);q&&h.set(O,E(q.senderNickname||"",q.text||"",!1))}}async function x($,v=b()){if(!i.value||!$.key){w.value=[];return}const R=await p.getPins($.key);v===b()&&(w.value=R?.pinned??[],N($,w.value,v))}async function U($){const v=s.value,R=u($.msgId);if(!(!v||!R))try{const O=await p.pinMessage(v.key,R.seq);O?.pinned&&(w.value=O.pinned)}catch(O){y(O)}}async function _($){const v=s.value;if(v)try{const R=await p.unpinMessage(v.key,$);R?.pinned&&(w.value=R.pinned)}catch(R){y(R)}}function S($){const v=u($.msgId);v&&_(v.seq)}return{pinnedSeqs:w,pinnedTextOf:j,refreshPinned:x,onPinV2:U,onUnpinSeq:_,onUnpinMsg:S}}function Zh(t){const{activeConv:s,toast:a,t:u}=t,i=g(new Set),p=Ki();async function b(m,w){const h=(m||"").toLowerCase();if(!h)return;const I=new Set(i.value);w?I.add(h):I.delete(h),i.value=I;try{await p.mutateAsync({userId:m,block:w}),a.show(u(w?"chat.actions_block_ok":"chat.actions_unblock_ok"),"success")}catch{const E=new Set(i.value);w?E.delete(h):E.add(h),i.value=E,a.show(u("chat.actions_block_failed"),"error")}}const d=P(()=>{const m=(s.value?.peerUserId||"").toLowerCase();return!!m&&i.value.has(m)});function y(m){const w=(m?.peerUserId||"").toLowerCase();if(!w)return;const h=new Set(i.value);m?.blockedByMe?h.add(w):h.delete(w),i.value=h}return{blockedUserIds:i,onBlockUser:b,activePeerBlocked:d,seedPeerBlocked:y}}function ey(t){const{activeConv:s,currentUserId:a,timelineMessages:u,v2MetaOf:i,v2IndexPage:p,v2ActionsOn:b,chatV2:d,openConvEpoch:y,disposed:m,getContainer:w,scrollToMsg:h,toast:I,t:E}=t,j=g(""),N=g(null);let x=null;function U(v){N.value=v,x&&clearTimeout(x),x=setTimeout(()=>{N.value=null},5e3)}function _(){const v=w();v&&N.value!==null&&v.scrollTo({top:N.value,behavior:"smooth"}),N.value=null,x&&(clearTimeout(x),x=null)}async function S(v){const R=s.value;if(!R||!v)return;const O=y(),H=a.value,M=w()?.scrollTop??0,q=v.toLowerCase();if(u.value.some(Y=>Y.msgId.toLowerCase()===q)){U(M),h(v);return}const X=i(v);if(X&&b.value){const Y=await d.getHistoryAround(R.key,X.seq,50);if(!Y||m()||O!==y()||H!==a.value||s.value?.key!==R.key)return;if(p(Y.messages||[]),await vt(),u.value.some(le=>le.msgId.toLowerCase()===q)){U(M),h(v);return}}I.show(E("chat.jump_unavailable"),"error")}async function $(v){const R=s.value;if(!R)return;const O=y(),H=a.value,M=await d.getHistoryAround(R.key,v,50);if(!M||m()||O!==y()||H!==a.value||s.value?.key!==R.key)return;p(M.messages||[]);const q=(M.messages||[]).find(X=>X.seq===v);if(!q?.msgId){j.value=E("chat.jump_need_more_history"),setTimeout(()=>{j.value=""},4e3);return}await vt(),O===y()&&H===a.value&&await S(q.msgId)}return{jumpHint:j,jumpBackTop:N,jumpBack:_,jumpToMessage:S,onJumpToSeq:$}}function ty(t){const{activeConv:s,localMessages:a,currentUserId:u,currentUserName:i,currentUserAvatar:p,v2ActionsOn:b,v2MetaOf:d,chatV2:y,signalR:m,showActionError:w,toast:h,t:I}=t;function E($,v){if(!u.value||!$.msgId||!s.value)return;const R=b.value?d($.msgId):null,O=j[v];if(R&&O){S($,R.seq,R.createdAt,O);return}const H=hn(u.value,$.groupId||s.value.key,i.value,p.value,"",{groupName:s.value.title});H.msgId=$.msgId,m.addReaction(v,H,u.value)}const j=Object.fromEntries(Object.entries(Hn).map(([$,v])=>[v,$]));async function N($,v,R){const O=s.value;if(!O||!u.value||!$.msgId)return;const H=b.value?d($.msgId):null;if(!H){const oe=Hn[v];if(oe){E($,oe);return}h.show(I("chat.gerr.generic"),"error");return}const M=u.value.toLowerCase(),q=$.reactions?JSON.parse(JSON.stringify($.reactions)):null,X={joys:[...$.j
5oys],heart:[...$.heart],thumbsUp:[...$.thumbsUp],tried:[...$.tried]},Y=q?{...q}:{};if(!q)for(const oe of yn)Y[oe]=[...$[oe]||[]];const le=(Y[v]||[]).filter(oe=>(oe||"").toLowerCase()!==M);Y[v]=R?[...le,u.value]:le,$.reactions=Y,x($,Y);try{const ne=(await y.toggleReaction(O.key,H.seq,v,R,H.createdAt))?.reactions;if(!ne)return;$.reactions=ne,x($,ne)}catch(oe){$.reactions=q,$.joys=X.joys,$.heart=X.heart,$.thumbsUp=X.thumbsUp,$.tried=X.tried,w(oe)}}function x($,v){for(const R of yn)$[R]=v[R]??[]}const U=P(()=>{const $=new Map;for(const R of a.value){const O=(R.userId||"").toLowerCase();O&&R.userNickname&&!$.has(O)&&$.set(O,R.userNickname)}const v=u.value.toLowerCase();return v&&i.value&&$.set(v,i.value),$});function _($){return U.value.get(($||"").toLowerCase())||""}async function S($,v,R,O){const H=s.value;if(!H)return;const M=u.value.toLowerCase(),q=($[O]||[]).some(X=>(X||"").toLowerCase()===M);try{const Y=(await y.toggleReaction(H.key,v,O,!q,R))?.reactions;if(!Y)return;$.joys=Y.joys??[],$.heart=Y.heart??[],$.thumbsUp=Y.thumbsUp??[],$.tried=Y.tried??[]}catch(X){w(X)}}return{onReact:E,onReactKey:N,applyLegacyProjection:x,nicknameByUserId:U,resolveNickname:_}}function ny(t){const{activeConv:s,currentUserId:a,v2Snapshots:u,v2SnapshotRev:i,selectConversation:p,stripHtml:b,t:d}=t,y=zo();Ee(a,I=>{I&&y.load(I)},{immediate:!0});const m=qo(g("all"),g("")).data,w=P(()=>{i.value;let I=0;for(const E of m.value??[])E.unreadCount<=0||E.isMuted||(E.convType===0?[...u.values()].find(N=>(N.peerUserId||"").toLowerCase()===(E.peerUserId||"").toLowerCase()):u.get((E.convKey||"").toLowerCase()))?.archivedAt||(I+=E.unreadCount);return I});Ee(w,I=>y.setTitleBadge(I),{immediate:!0}),St(()=>y.setTitleBadge(0));function h(I){if(!I?.groupID||(I.userId||"").toLowerCase()===a.value.toLowerCase())return;const E=u.get((I.groupID||"").toLowerCase())??[...u.values()].find(N=>!!N.peerUserId&&N.peerUserId.toLowerCase()===(I.userId||"").toLowerCase()),j=b(I.msgContent).trim();y.notify({convId:I.groupID,title:I.groupName||I.userNickname||d("common.nav_messages"),body:j||((I.images?.length??0)>0?d("chat.forward_src_image"):d("chat.forward_src_other")),icon:I.userLogo||void 0,activeConvId:s.value?.key,muted:!!E?.mutedUntil,archived:!!E?.archivedAt,onClick:()=>{const N=(m.value??[]).find(x=>x.convKey.toLowerCase()===(I.groupID||"").toLowerCase());N&&p(N)}})}return{badgeConvs:m,badgeTotal:w,notifyIncoming:h}}function ay(t){const{activeConv:s,chatDraftKeyRef:a,currentUserId:u,localMessages:i,replyToMsg:p,chatV2On:b,chatV2:d,drafts:y,v2MsgMeta:m,v2MetaOf:w,restoreDraft:h,openConvEpoch:I,disposed:E}=t,j=new Set;let N=null;function x(v){for(const[R,O]of m)if(O.seq===v)return R}function U(v){return w(v)?.seq}async function _(v,R){if(!b.value||!R||j.has(R))return;j.add(R);const O=I(),H=u.value,M=await d.getDraft(v.key);if(!M||E()||O!==I()||H!==u.value||!y.mergeCloud(H,R,M,x))return;h();const q=y.get(H,R);if(q?.replyToMsgId&&!p.value){const X=i.value.find(Y=>Y.msgId.toLowerCase()===(q.replyToMsgId||"").toLowerCase());X&&(p.value=X)}}function S(v=N){if(!b.value||!v?.conversationId||!v.draftKey)return;const R=u.value,O=y.toCloudPayload(R,v.draftKey,U);O?d.putDraft(v.conversationId,O):d.deleteDraft(v.conversationId)}Ee(a,v=>{const R=N;R&&R.draftKey!==v&&S(R);const O=s.value;N=O&&v?{conversationId:O.key,draftKey:v}:null}),nn(()=>{window.addEventListener("beforeunload",$)}),St(()=>{window.removeEventListener("beforeunload",$),S(N)});function $(){S(N)}return{hydratedDraftKeys:j,hydrateCloudDraft:_,pushDraftToCloud:S}}function oy(t){const{activeConv:s,v2Snapshots:a,v2SnapshotRev:u,chatV2:i,lastReadSeqAtOpen:p,v2LastSeq:b,onJumpToSeq:d,syncV2Difference:y,openConvEpoch:m,disposed:w}=t,h=g(""),I=g(0),E=g(0),j=g(0),N=g(!1);let x=!1;function U(){return(s.value?.key||"").toLowerCase()}const _=P(()=>(u.value,a.get(U())?.mentionUnread??0));Ee([U,_],([M,q])=>{if(M!==h.value){h.value=M,I.value=q,E.value=0,j.value=0,N.value=!1;return}q>I.value&&(I.value=Math.max(I.value,q),N.value=!1)},{immediate:!0});const S=P(()=>h.value!==U()||N.value?0:Math.max(0,I.value-E.value));async function $(){const M=s.value;if(!M||x)return;x=!0;const q=m(),X=M.key.toLowerCase();try{const Y=j.value>0?j.value:p(),le=await i.getMentions(M.key,Y,1);if(w()||q!==m()||U()!==X||!le)return;const oe=le.seqs?.[0]??0;if(oe<=0){N.value=!0;return}j.value=oe,E.value+=1,le.hasMore||(N.value=!0),await d(oe)}finally{x=!1}}async function v(){N.value=!1,await y()}function R(M,q){if(!M?.length||!q.value.length)return;const X=new Map;for(const Y of M){const le=Y.extra?.mentions;Y.msgId&&Array.isArray(le)&&le.length&&X.set(Y.msgId.toLowerCase(),le)}if(X.size!==0)for(const Y of q.value){if(Y.mentions?.length)continue;const le=X.get((Y.msgId||"").toLowerCase());le&&(Y.mentions=le)}}function O(M){const q=a.get((M||"").toLowerCase());!q||!q.mentionUnread||(q.mentionUnread=0,u.value+=1)}function H(M){const q=b();q>0&&i.markReadV2(M,q).then(X=>{X&&O(M)})}return{activeMentionUnread:S,jumpToNextMention:$,onMentionSignal:v,applyMentionsFromV2Rows:R,markReadAndClearMentions:H}}const qa=6e4,es=365*24*60*60*1e3,sy=4e3;function Ro(t,s,a,u){return new Date(t.getFullYear(),t.getMonth(),t.getDate()+s,a,u,0,0
5)}function _n(t){return t<10?`0${t}`:String(t)}function b_(t){const s=t.getTime()+qa,a=new Date(t.getFullYear(),t.getMonth(),t.getDate()+1,t.getHours(),t.getMinutes(),0,0);return[{key:"tonight",at:Ro(t,0,20,0)},{key:"tomorrow_morning",at:Ro(t,1,9,0)},{key:"tomorrow_same",at:a}].filter(i=>i.at.getTime()>=s&&i.at.getTime()-t.getTime()<=es)}function iy(t){return`${t.getFullYear()}-${_n(t.getMonth()+1)}-${_n(t.getDate())}T${_n(t.getHours())}:${_n(t.getMinutes())}`}function w_(t){const s=/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2})(?::\d{2})?$/.exec((t||"").trim());if(!s)return null;const a=Number(s[1]),u=Number(s[2]),i=Number(s[3]),p=Number(s[4]),b=Number(s[5]);if(u<1||u>12||i<1||i>31||p>23||b>59)return null;const d=new Date(a,u-1,i,p,b,0,0);return d.getFullYear()!==a||d.getMonth()!==u-1||d.getDate()!==i?null:d}function k_(t){const s=new Date(t.getTime()+qa);return(s.getSeconds()||s.getMilliseconds())&&s.setSeconds(60,0),iy(s)}function C_(t,s){if(!t||Number.isNaN(t.getTime()))return"too_soon";const a=t.getTime()-s.getTime();return a<qa?"too_soon":a>es?"too_far":""}function $_(t){return t.toISOString()}function ly(t,s){const a=`${_n(t.getHours())}:${_n(t.getMinutes())}`,u=`${_n(t.getMonth()+1)}-${_n(t.getDate())}`;return t.getFullYear()===s.getFullYear()?`${u} ${a}`:`${t.getFullYear()}-${u} ${a}`}function ry(t,s){const a=new Date(t||"");return Number.isNaN(a.getTime())?t||"":ly(a,s)}function cy(t){const{activeConv:s,chatV2On:a,isBroadcast:u,chatV2:i,replyToMsg:p,resolveReplySeq:b,showActionError:d,askConfirm:y,toast:m,t:w,openConvEpoch:h,disposed:I}=t,E=g([]),j=g(!1),N=g(!1),x=P(()=>E.value.length);function U(){return(s.value?.key||"").toLowerCase()}function _(){return!!s.value&&a.value&&!u.value}function S(oe){const ne=oe;return ne?.statusCode===503?!0:(ne?.data?.code||ne?.data?.message||ne?.data?.error||"").trim()==="chat_v2_actions_disabled"}const $=[2e3,6e3,15e3];let v=null,R=null;function O(){v&&(clearTimeout(v),v=null),R&&(window.removeEventListener("online",R),R=null)}function H(oe,ne){if(typeof window>"u"||R)return;const K=()=>{window.removeEventListener("online",K),R===K&&(R=null),!(I()||oe!==h()||U()!==ne)&&M()};R=K,window.addEventListener("online",K)}sa(()=>O());async function M(oe=0){if(O(),!_()){E.value=[];return}
5const ne=s.value,K=h(),F=ne.key.toLowerCase();let re=null;try{re=await i.listScheduled(ne.key)}catch(ae){if(I()||K!==h()||U()!==F)return;if(S(ae)){E.value=[],j.value=!0;return}const Te=$[oe];Te!==void 0&&(v=setTimeout(()=>{v=null,!(I()||K!==h()||U()!==F)&&M(oe+1)},Te)),H(K,F);return}I()||K!==h()||U()!==F||(j.value=!1,E.value=re?.items||[])}async function q(){O(),E.value=[],j.value=!1,N.value=!1,_()&&await M()}async function X(){await M()}async function Y(oe,ne,K,F){if(!_())return;const re=s.value,ae=(oe||"").trim(),Te=(ne||[]).filter(Boolean);if(!ae&&Te.length===0)return;if(ae.length>sy){m.show(w("chat.schedule.too_long"),"error");return}const he=p.value?.msgId||null;try{if(await i.createScheduled(re.key,{sendAt:F,message:{text:ae,images:Te,replyToSeq:he?b(he):null,replyToMsgId:he,mentions:K.length?K:null,audio:null,file:null,link:null}}),I())return;p.value=null,m.show(w("chat.schedule.done",{time:ry(F,new Date)}),"success"),await M()}catch(ye){if(I())return;if(S(ye)){j.value=!0,m.show(w("chat.gerr.generic"),"error");return}d(ye)}}async function le(oe){if(!oe||!_())return;const ne=s.value;if(!await y(w("chat.schedule.cancel_confirm"))||I()||U()!==ne.key.toLowerCase())return;const K=await i.deleteScheduled(ne.key,oe);I()||(K||m.show(w("chat.gerr.scheduled_not_found"),"info"),await M())}return{items:E,count:x,unavailable:j,dialogOpen:N,load:M,onConversationOpened:q,onSignal:X,schedule:Y,remove:le}}
5function uy(t){const{activeConv:s,chatV2:a,v2MetaOf:u,localMessages:i,showActionError:p,targetLang:b,openConvEpoch:d,disposed:y}=t,m=g(new Set),w=g(new Set),h=g(new Map),I=g(new Set);function E(){m.value=new Set,w.value=new Set,h.value=new Map,I.value=new Set}function j(S,$){return y()||S!==d()||(s.value?.key||"").toLowerCase()!==$}function N(S,$,v){const R=new Set(S.value);v?R.add($):R.delete($),S.value=R}async function x(S){const $=s.value;if(!$||!S?.msgId||m.value.has(S.msgId))return;const v=u(S.msgId);if(!v)return;const R=d(),O=$.key.toLowerCase(),H=S.msgId;N(m,H,!0);try{const M=await a.transcribeMessage($.key,v.seq,v.createdAt);if(j(R,O))return;if(M?.text){const q=i.value.find(X=>X.msgId.toLowerCase()===H.toLowerCase());q&&(q.transcript={text:M.text,lang:M.lang||null,at:M.at||null})}}catch(M){j(R,O)||p(M)}finally{N(m,H,!1)}}async function U(S){const $=s.value;if(!$||!S?.msgId)return;const v=S.msgId;if(w.value.has(v))return;if(h.value.has(v)){N(I,v,!1);return}const R=u(v);if(!R)return;const O=b();if(!O)return;const H=d(),M=$.key.toLowerCase();N(w,v,!0);try{const q=await a.translateMessage($.key,R.seq,R.createdAt,O);if(j(H,M))return;if(q?.text){const X=new Map(h.value);X.set(v,{text:q.text,lang:q.lang||O}),h.value=X,N(I,v,!1)}}catch(q){j(H,M)||p(q)}finally{N(w,v,!1)}}function _(S){!S||!h.value.has(S)||N(I,S,!I.value.has(S))}return{transcribing:m,translating:w,translations:h,showOriginal:I,onConversationOpened:E,transcribe:x,translate:U,toggleOriginal:_}}function dy(t){const{activeConv:s,chatV2:a,showActionError:u,viewerId:i,openConvEpoch:p,disposed:b}=t,d=g(new Map),y=g(new Set),m=g(!0),w=new Map;let h=null;function I(){return`${(i()||"").toLowerCase()}\0${(s.value?.key||"").toLowerCase()}`}function E(){const q=I();q!==h&&(h=q,d.value=new Map,y.value=new Set,w.clear())}function j(q,X){return b()||q!==p()||(s.value?.key||"").toLowerCase()!==X}function N(q){return b()||I()!==q}function x(q,X){const Y=new Set(y.value);X?Y.add(q):Y.delete(q),y.value=Y}function U(q){const X=new Map(d.value);X.set(q.id,q),d.value=X}function _(q){return d.value.get(q)??null}async function S(q,X){const Y=s.value;if(!Y||!q||!X?.force&&d.value.has(q))return;const le=w.get(q);if(le)return le;const oe=I(),ne=(async()=>{try{const K=await a.getPoll(Y.key,q);if(N(oe)||!K)return;U(K)}finally{w.delete(q)}})();return w.set(q,ne),ne}async function $(q){if(!Number.isFinite(q)||q<=0)return;const X=[];d.value.forEach((Y,le)=>{Y.seq===q&&X.push(le)});for(const Y of X)await S(Y,{force:!0})}async function v(q,X){const Y=s.value;if(!Y||!q||y.value.has(q))return;const le=p(),oe=Y.key.toLowerCase();x(q,!0);try{const ne=await a.votePoll(Y.key,q,X);if(j(le,oe))return;ne?U(ne):await S(q,{force:!0})}finally{x(q,!1)}}async function R(q){await v(q,[])}async function O(q){const X=s.value;if(!X||!q||y.value.has(q))return;const Y=p(),le=X.key.toLowerCase();x(q,!0);try{const oe=await a.closePoll(X.key,q);if(j(Y,le))return;oe?U(oe):await S(q,{force:!0})}finally{x(q,!1)}}async function H(q){const X=s.value;if(!X)return null;const Y=p(),le=X.key.toLowerCase();try{const oe=await a.createPoll(X.key,q);return j(Y,le)?null:(oe?.poll&&U(oe.poll),oe?.poll??null)}catch(oe){return qi(oe)?(m.value=!1,null):(j(Y,le)||u(oe),null)}}function M(q,X){if(!q?.length||!X.value.length)return;const Y=new Map;for(const le of q){const oe=le.media?.poll?.id;le.msgId&&oe&&Y.set(le.msgId.toLowerCase(),oe)}if(Y.size!==0)for(const le of X.value){if(le.pollId)continue;const oe=Y.get((le.msgId||"").toLowerCase());oe&&(le.pollId=oe)}}return{polls:d,busy:y,createEnabled:m,onConversationOpened:E,pollOf:_,ensureLoaded:S,onSignal:$,vote:v,retract:R,close:O,create:H,applyPollIdsFromV2Rows:M}}let vy=0;const fy=()=>`pv-${Date.now().toString(36)}-${(vy++).toString(36)}`;function my(t){const{activeConv:s,chatV2:a,localMessages:u,seen:i,v2Meta:p,replyTo:b,viewerId:d,me:y,resolveReplySeq:m,scrollToBottom:w,toast:h,codeText:I,disposed:E}=t,j=D=>(D||"").toLowerCase(),N=()=>j(d()),x=()=>`${N()}\0${j(s.value?.key)}`,U=g(!0),_=g(new Map),S=new Map,$=P(()=>_.value.get(x())??null),v=P(()=>{const D=$.value;return!!D&&(D.status==="reading"||D.status==="uploading"||D.status==="sending")}),R=P(()=>$.value?.status==="ready"),O=new Map;function H(D){if(D&&D.startsWith("blob:"))try{URL.revokeObjectURL(D)}catch{}}function M(D,te){const G=_.value.get(D);return G&&G.id===te?G:null}function q(D,te,G=!1){const Q=M(D,te);if(!Q)return;S.get(te)?.abort(),S.delete(te),G||H(Q.frameUrl);const pe=new Map(_.value);pe.delete(D),_.value=pe}function X(D,te,G){const Q=M(D,te);if(!Q)return;const{kind:pe,code:Se}=Co(G);if(pe==="disabled"){U.value=!1,Q.status="disabled",Q.errorCode="chat_v2_video_disabled";return}Q.status="failed",Q.errorCode=Se||"generic",Q.terminal=pe==="terminal",pe==="terminal"&&h.show(I(Se),"error")}
5async function Y(){return await Dt(()=>import("./BzPb3SK-.js"),[],import.meta.url)}async function le(D){const te=s.value;if(!te||!U.value||!D)return!1;const G=x();if(_.value.has(G))return!1;const Q=Ta({size:D.size,durationSeconds:null});if(Q)return h.show(I(Q),"error"),!1;const pe={id:fy(),convKey:te.key,file:D,name:D.name||"video",frameUrl:"",width:0,height:0,durationMs:null,status:"reading",progress:0,errorCode:"",terminal:!1,videoId:"",size:D.size,clientMsgId:crypto.randomUUID().replace(/-/g,""),outgoing:null},Se=new Map(_.value);Se.set(G,pe),_.value=Se;const Re=await(await Y()).readChatVideoMeta(D,Dg),xe=M(G,pe.id);if(!xe||E())return H(Re.frameUrl),!1;xe.frameUrl=Re.frameUrl,xe.width=Re.width,xe.height=Re.height,xe.durationMs=Re.durationSeconds?Math.round(Re.durationSeconds*1e3):null;const et=Ta({size:D.size,durationSeconds:Re.durationSeconds});return et?(q(G,pe.id),h.show(I(et),"error"),!1):(oe(G,pe.id),!0)}async function oe(D,te){const G=M(D,te);if(!G||!G.file)return;const Q=G.file;G.status="uploading",G.progress=0,G.errorCode="",G.terminal=!1,G.videoId="";const pe=await Y(),Se=pe.createChatVideoUploadHandle();S.set(te,Se);try{const Ae=Q.type||"video/mp4",Re=await a.beginVideoUpload({fileName:Q.name,sizeBytes:Q.size,contentType:Ae});if(!M(D,te)||Se.aborted)return;const xe=Ta({size:Q.size,durationSeconds:(M(D,te)?.durationMs??0)/1e3||null},{maxBytes:Re.maxBytes,maxDurationSeconds:Re.maxDurationSeconds});if(xe){X(D,te,{data:{code:xe}});return}const et=await pe.uploadChatVideoBlocks(Q,Re,Se,Ke=>{const ke=M(D,te);ke&&(ke.progress=Hg(Ke,Q.size))});if(!M(D,te)||Se.aborted)return;const ze=await a.completeVideoUpload({blobName:Re.blobName,blockIds:et,contentType:Ae}),Je=M(D,te);if(!Je||Se.aborted)return;Je.videoId=ze.videoId,ze.width&&(Je.width=ze.width),ze.height&&(Je.height=ze.height),ze.durationMs&&(Je.durationMs=ze.durationMs),ze.size&&(Je.size=ze.size),Je.progress=100,Je.status="ready",Je.outgoing&&K(D,te)}catch(Ae){if(Se.aborted||Ae?.message==="aborted")return;X(D,te,Ae)}finally{S.get(te)===Se&&S.delete(te)}}async function ne(D,te=[]){const G=x(),Q=_.value.get(G);if(!Q||!Q.videoId||Q.status!=="ready")return;const pe=b.value;Q.outgoing={text:D,mentions:te,replyToSeq:pe?.msgId?m(pe.msgId):null,replyToMsgId:pe?.msgId||null,reply:pe},b.value=null,await K(G,Q.id)}async function K(D,te){const G=M(D,te);if(!G||!G.outgoing||!G.videoId)return;const Q=G.outgoing;G.status="sending",G.errorCode="";try{const pe=await a.sendVideo(G.convKey,{videoId:G.videoId,clientMsgId:G.clientMsgId,text:Q.text,replyToSeq:Q.replyToSeq,replyToMsgId:Q.replyToMsgId,mentions:Q.mentions.length?Q.mentions:null});re(D,te,{msgId:pe.msgId||G.clientMsgId,seq:pe.seq,createdAt:pe.createdAt})}catch(pe){if(!M(D,te))return;const{kind:Se,code:Ae}=Co(pe);if(Se==="not_found"){const Re=await F(G.convKey,G.clientMsgId);if(Re&&M(D,te)){re(D,te,Re);return}}X(D,te,pe),Se==="retryable"&&Ae&&Ae!=="rate_limited"&&h.show(I(Ae),"error")}}async function F(D,te){const G=j(te),Q=p.get(G);if(Q?.seq)return{msgId:te,seq:Q.seq,createdAt:Q.createdAt};const Se=((await a.getHistory(D,null,30,"back"))?.messages||[]).find(Ae=>j(Ae.clientMsgId)===G||j(Ae.msgId)===G);return Se?{msgId:Se.msgId||te,seq:Se.seq,createdAt:Se.createdAt}:null}function re(D,te,G){const Q=M(D,te);if(!Q)return;const pe=Q.outgoing,Se={id:Q.videoId,...Q.width?{width:Q.width}:{},...Q.height?{height:Q.height}:{},...Q.durationMs?{durationMs:Q.durationMs}:{},...Q.size?{size:Q.size}:{}},Ae=j(G.msgId),Re=!E()&&x()===D;if(Re){p.set(Ae,{seq:G.seq,createdAt:G.createdAt,editedAt:null,deletedAt:null}),Q.frameUrl&&O.set(Ae,Q.frameUrl);const xe=u.value.find(et=>j(et.msgId)===Ae||j(et.msgId)===j(Q.clientMsgId));if(xe)xe.video||(xe.video=Se);else{const et=s.value,ze=y(),Je=hn(d(),et.key,ze.name,ze.avatar,pe?.text||"",{replyToMsgId:pe?.replyToMsgId||void 0,replyMsg:pe?.reply??null,groupName:et.title,isAdmin:ze.isAdmin}),Ke=$n(Je,d());Ke.msgId=G.msgId,Ke.video=Se,pe?.mentions.length&&(Ke.mentions=pe.mentions),i.has(Ke.msgId)||(i.add(Ke.msgId),u.value.push(Ke))}w()}q(D,te,Re&&!!Q.frameUrl)}function ae(){const D=x(),te=_.value.get(D);if(!(!te||te.terminal||te.status==="disabled")&&te.status==="failed"){if(te.videoId&&te.outgoing&&te.errorCode!=="video_not_found"){K(D,te.id);return}oe(D,te.id)}}function Te(){const D=x(),te=_.value.get(D);te&&q(D,te.id)}const he=g(new Map),ye=new Map,ot=new Set;let we=0,de=null,me=0,$e=null;function Ie(D){const te=he.value.get(D);return te&&jg(te.at,Date.now())?te:null}function be(D,te){!(D>0)||!te||!s.value||Ie(D)||ye.has(D)||ot.has(D)||(ye.set(D,te),Ue(Bg))}function Ue(D){de||(de=setTimeout(()=>{de=null,st()},D))}async function st(){const D=s.value;if(!D||E())return;const te=me-Date.now();if(te>0){Ue(te);return}for(;we<Vg&&ye.size>0;){const G=[];for(const[Q,pe]of ye)if(G.push({seq:Q,createdAt:pe}),G.length>=qg)break;for(const Q of G)ye.delete(Q.seq),ot.add(Q.seq);we++,Pe(D.key,x(),G)}}async function Pe(D,te,G){try{const Q=await a.getVideoPosters(D,G);
5if(E()||x()!==te)return;if(Q.length===0){me=Date.now()+3e4;return}const pe=new Map(he.value),Se=Date.now();for(const Ae of Q)pe.set(Ae.seq,{state:Ae.state,posterUrl:Ae.state==="ready"&&Ae.posterUrl||"",at:Se});he.value=pe}finally{for(const Q of G)ot.delete(Q.seq);we=Math.max(0,we-1),ye.size>0&&Ue(0)}}function mt(D){return O.get(j(D))||""}async function Ye(D,te,G){const Q=s.value;if(!Q)return null;const pe=x(),Se=await a.resolveVideoPlay(Q.key,D,te,G);return E()||x()!==pe?null:Se}function rt(){const D=x();if(D===$e)return;const te=$e===null?null:$e.split("\0")[0];$e=D,he.value=new Map,ye.clear(),ot.clear(),de&&(clearTimeout(de),de=null),me=0;for(const G of O.values())H(G);if(O.clear(),te!==null&&te!==N())for(const[G,Q]of _.value)q(G,Q.id)}function pt(D,te){if(!D?.length||!te.value.length)return;const G=new Map;for(const Q of D){const pe=Q.media?.video;Q.msgId&&pe?.id&&G.set(j(Q.msgId),pe)}if(G.size!==0)for(const Q of te.value){if(Q.video?.id)continue;const pe=G.get(j(Q.msgId));pe&&(Q.video=pe)}}return ri("wcChatVideo",{posterOf:Ie,requestPoster:be,localPosterOf:mt,resolvePlay:Ye}),sa(()=>{for(const D of S.values())D.abort();S.clear();for(const D of _.value.values())H(D.frameUrl);for(const D of O.values())H(D);O.clear(),de&&clearTimeout(de)}),{createEnabled:U,current:$,busy:v,ready:R,enqueue:le,send:ne,retry:ae,remove:Te,onConversationOpened:rt,applyVideosFromV2Rows:pt}}function py(t,s,a){const u=(a||"").toLowerCase(),i=(t.senderId||"").toLowerCase(),p=t.media||null,b=p?.link||null;return{msgId:t.msgId,groupId:s,userId:t.senderId||"",userNickname:t.senderNickname||"",userLogo:t.senderAvatar||"",content:t.text||"",images:p?.images??[],createDate:t.createdAt,isMyMsg:!!u&&!!i&&i===u,replyToMsgId:null,replyContent:null,replyUserNickname:null,replyUserLogo:null,replyImages:[],replyMarkDel:!1,includeUrls:b?.url||null,includeUrlFirstTitle:b?.title||null,includeUrlFirstDescription:b?.desc||null,includeUrlsFirstImages:b?.image||null,audioMp3Url:p?.audio?.url||null,isSpeechToText:p?.audio?.isStt===!0,audioWaveform:p?.audio?.waveform||null,customUserTitle:null,isAdmin:t.senderIsAdmin===!0,isSystemMsg:!i,isBot:!1,joys:t.reactions?.joys??[],thumbsUp:t.reactions?.thumbsUp??[],heart:t.reactions?.heart??[],tried:t.reactions?.tried??[],reactions:t.reactions??null,mentions:t.extra?.mentions??null,transcript:t.extra?.transcript??null,pollId:p?.poll?.id??null,video:p?.video??null}}function gy(t){const s=zn();return Lo({queryKey:["native-group",t],queryFn:async()=>await s.getNativeGroup(t.value),enabled:P(()=>!!t.value),retry:!1,staleTime:15e3})}function hy(t,s){const a=zn(),{userId:u}=oa(),i=g(void 0),p=g(!1),b=g(!1);let d=null,y=0;const m=50;async function w(h){const I=t.value;if(!I){i.value=void 0;return}const E=++y;h&&(d=null,i.value=void 0),p.value=!0,b.value=!1;try{const j=await a.getHistory(I,h?null:d,m,"back");if(E!==y||t.value!==I)return;if(!j){b.value=!0;return}const N=(j.messages||[]).map(_=>py(_,I,u.value||""));N.sort((_,S)=>Date.parse(_.createDate||"")-Date.parse(S.createDate||""));const x=h?[]:i.value?.messages??[];i.value={messages:[...N,...x],page:s.value,hasMore:j.hasMore===!0};const U=(j.messages||[]).map(_=>_.seq).filter(_=>Number.isFinite(_));U.length&&(d=Math.min(...U))}catch{E===y&&(b.value=!0)}finally{E===y&&(p.value=!1)}}return Ee(t,()=>{w(!0)},{immediate:!0}),Ee(s,(h,I)=>{!t.value||!(h>(I??1))||w(!1)}),{data:i,isLoading:p,isError:b,refetch:()=>w(!0)}}function yy(t,s){Ji(()=>{t.value&&s(!1)})}const _y=["aria-label"],by={class:"wc-readers__title"},wy={key:0,class:"wc-readers__msg"},ky={key:1,class:"wc-readers__msg"},Cy={key:2,class:"wc-readers__msg"},$y={class:"wc-readers__msg"},Iy={class:"wc-readers__list"},My={class:"wc-chat-page__workspace"},Ty={class:"wc-chat-shell"},Sy=["aria-label"],Ay={key:0,class:"wc-chat-main__avatar"},Ry=["src","alt"],Ey={key:0,class:"wc-chat-main__online"},Ly={class:"wc-chat-main__header-info"},Uy={class:"wc-chat-main__header-name"},Py={key:0,class:"wc-chat-main__header-sub"},Dy=["title"],Oy=["title","aria-label"],qy=["title","aria-label"],Vy={key:4,class:"wc-chat-pinned wc-chat-pinned--legacy"},By={class:"wc-chat-pinned__body"},Ny={class:"wc-chat-pinned__label"},Fy={class:"wc-chat-pinned__text"},Ky=["title","aria-label","disabled"],jy={key:7,class:"wc-chat-seen"},xy={key:8,class:"wc-chat-readonly",role:"status"},Hy={key:10,class:"wc-chat-actionerr",role:"alert"},Gy={key:11,class:"wc-chat-actionerr",role:"status"}
5,zy=["aria-label","title"],Qy={key:1,class:"wc-chat-empty"},Xy={class:"wc-chat-empty__card"},Wy={class:"wc-chat-empty__title"},Jy={class:"wc-chat-empty__desc"},Yy=_t({__name:"[[groupId]]",setup(t){const{t:s,locale:a}=Nt(),u=Ko(),i=Fo(),p=ci(),b=ui(),{isInApp:d}=di(),y=oa(),m=La(),{data:w}=Ei(),h=g(null),I=g("all"),E=P(()=>h.value?.type===0),j=P(()=>h.value?.type===1),N=P(()=>h.value?.type===3),x=g(1),U=g([]),_=new Set,S=g(new Map),$=g(new Set),v=g(new Set),R=zn(),O=g(!1),H=g(0),M=Ua(new Map),q=g(new Map),X=P(()=>Qh(U.value,q.value.values())),Y=g(!1),le=g(!1);let oe=null;const ne=P(()=>O.value&&R.chatV2ActionsEnabled.value);function K(c){return M.get((c||"").toLowerCase())??null}function F(c){for(const f of c){const L=(f.msgId||"").toLowerCase();if(!L)continue;M.set(L,{seq:f.seq,createdAt:f.createdAt,editedAt:f.editedAt??null,deletedAt:f.deletedAt??null});const J=h.value?.type===1?zh(f,h.value.key)||Wh(f,h.value.key):null;J?q.value.set(L,J):q.value.delete(L)}}async function re(c,f){if(!O.value||le.value)return;const L=ue.value;le.value=!0;try{const J=await R.getHistory(c.key,oe,100,"back");if(!J||Tt||f!==D||L!==ue.value||h.value?.key!==c.key)return;F(J.messages||[]),Y.value=c.type===1&&J.hasMore,J.messages.length&&(oe=Math.min(...J.messages.map(ge=>ge.seq)))}finally{f===D&&L===ue.value&&(le.value=!1)}}const{pinnedSeqs:ae,pinnedTextOf:Te,refreshPinned:he,onPinV2:ye,onUnpinSeq:ot,onUnpinMsg:we}=Yh({activeConv:h,timelineMessages:X,v2MetaOf:K,v2ActionsOn:ne,chatV2:R,openConvEpoch:()=>D,disposed:()=>Tt,showActionError:Ie,t:s}),de=Pa(),me=g("");let $e=null;function Ie(c){me.value=de(c,"chat.gerr.generic"),$e&&clearTimeout($e),$e=setTimeout(()=>{me.value=""},4e3)}const be=g(null),Ue=g(0);let st=null;function Pe(c){Ue.value=Math.max(0,Math.floor(c)),st&&clearInterval(st),!(Ue.value<=0)&&(st=aa(()=>{Ue.value--,Ue.value<=0&&st&&(clearInterval(st),st=null)},1e3))}function mt(c){const f=c;return(f?.data?.code||"")!=="slow_mode"?!1:(Pe(f?.data?.retryAfterSeconds??0),!0)}const Ye=new Map,rt=g(0);let pt=!1,Xe=0,D=0;function te(){Xe++,S.value.clear(),$.value.clear(),v.value.clear()}const G=g(null),Q=g(""),pe=g(0),Se=g(!1),Ae=g(null),Re=g(!0),xe=g(!0),et=g(!1),ze=g(0),Je=g(!1),Ke=g(0);let ke=[],je=0,ve=null;const it=P(()=>X.value.map(c=>({msgId:c.msgId,seq:K(c.msgId)?.seq??0,isMine:c.isMyMsg}))),Ft=P(()=>Je.value?0:Gh(ze.value,it.value)),zt=P(()=>{if(Je.value)return"";const c=Hh(ze.value,it.value);return c===null?"":it.value.find(f=>f.seq===c)?.msgId||""});function Kt(c){xe.value=c,c&&(Ke.value=0,et.value&&(Je.value=!0))}const Qt=Bt(()=>Dt(()=>import("./BVTbl_yM.js"),__vite__mapDeps([55,1,2,3,56]),import.meta.url)),gt=g([]),B=g(-1);function Z(c,f){gt.value=c||[],B.value=f}function Fe(){je&&(cancelAnimationFrame(je),je=0),ve&&(clearTimeout(ve),ve=null);const c=ke;if(ke=[],!c.length)return;U.value.push(...c);const f=c.some(L=>L.isMyMsg);xe.value||f?vt(()=>De.value?.scrollToBottom(!0)):Ke.value+=c.filter(L=>!L.isMyMsg).length}function ie(c){ke.push(c),!(je||ve)&&(je=requestAnimationFrame(Fe),ve=setTimeout(Fe,120))}function We(){Ke.value=0,De.value?.scrollToBottom(!0)}const De=g(null),lt=g(null);let tt=null;const ce=wi(),wt=Vo(),At=_i();let kt=null;function Ct(c){kt||(kt=setTimeout(()=>{kt=null;const f=h.value;!f||f.type!==1||f.key.toLowerCase()!==c.toLowerCase()||wt.mutate({type:"group",key:c})},2500))}function Vt(){kt&&(clearTimeout(kt),kt=null)}const ue=P(()=>y.userId.value||"");Ee([ue,()=>h.value?.key,O],([c,f],[L,J])=>{(c!==L||f!==J)&&D++,q.value.clear(),M.clear(),oe=null,Y.value=!1,le.value=!1,h.value&&ue.value&&O.value&&re(h.value,D)},{flush:"sync"});const Rt=P(()=>y.userName.value||""),ht=P(()=>y.userAvatarUrl.value||""),jt=P(()=>h.value&&ue.value?xo(ue.value,h.value.type,h.value.key):""),Ze=P(()=>j.value&&No(h.value?.key||"")),Ot=P(()=>j.value&&!Ze.value&&h.value?.key||""),ct=P(()=>Ze.value&&h.value?.key||""),Mt=P(()=>j.value&&h.value?.key||""),{data:Qe}=Li(Ot),{data:Et}=gy(ct),vn=P(()=>(Et.value?.myRole??0)>=1),$t=P(()=>Ze.value?vn.value:Qe.value?.canManage??!1),xt=g(!1),an=Bt(()=>Dt(()=>import("./C0B6PIvi.js"),__vite__mapDeps([57,1,2,3,4,31,32,33,34,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,35,36,37,38,39,40,58]),import.meta.url)),Ht=g(!1),Xt=g(0),T=g("info");function z(c="info"){if(Ze.value){Ht.value=!0;return}T.value=c,xt.value=!0}const{data:Be,isLoading:ut,isError:on,refetch:se}=Ui(Ot,x),{data:A,isLoading:ee,isError:Le,refetch:yt}=hy(ct,x),Lt=P(()=>Qe.value?.pinnedMsgId??null),{data:qt}=Pi(Ot,Lt),at=Di(),Qn=Oi(),Xn=P(()=>E.value&&h.value?.peerUserId||""),{data:rn,isLoading:la,isError:Mn,refetch:ra}=bi(Xn,x),ca=P(()=>E.value?la.value:Ze.value?ee.value:ut.value),wn=P(()=>
5E.value?rn.value:Ze.value?A.value:Be.value);function Dn(){return E.value?ra():Ze.value?yt():se()}const Wt=g(!1);async function kn(){if(!Wt.value){Wt.value=!0;try{await Dn()}finally{Wt.value=!1}}}const ua=P(()=>((E.value?Mn.value:Ze.value?Le.value:on.value)||Wt.value)&&!wn.value);function On(c){return c?c.replace(/<[^>]*>/g,"").trim():""}const k=P(()=>{const c=qt.value;return c?On(c.content)||(c.images?.length?s("common.image_placeholder"):s("chat.preview_message")):""});function V(c){gn("chat_conversation_open",{conversation_type:c.convType===0?"dm":"group",source:"list"}),W({type:c.convType,key:c.convKey,peerUserId:c.peerUserId||"",title:c.title,avatar:c.avatar,isOnline:c.isOnline});const f=c.convType===0?{dm:c.peerUserId||""}:{g:c.convKey};Promise.resolve(An({path:"/chat",query:f})).catch(()=>{})}async function He(c){gn("chat_conversation_open",{conversation_type:"dm",source:"people_search"});const f=++D;An({path:"/chat",query:{dm:c.userId}});const L=await At.mutateAsync(c.userId).catch(()=>null);f===D&&(L?(Wn(L),W({type:0,key:L.threadId,peerUserId:L.peerUserId,title:L.peerNickname,avatar:L.peerLogo,isOnline:L.peerIsOnline})):W({type:0,key:"",peerUserId:c.userId,title:c.nickname,avatar:c.logoUrl,isOnline:!1}),m.invalidateQueries({queryKey:["conversations"]}))}async function nt(c){if(!c||c.toLowerCase()===ue.value.toLowerCase()||E.value&&(h.value?.peerUserId||"").toLowerCase()===c.toLowerCase())return;const f=++D;An({path:"/chat",query:{dm:c}});const L=await At.mutateAsync(c).catch(()=>null);f===D&&L&&(Wn(L),W({type:0,key:L.threadId,peerUserId:L.peerUserId,title:L.peerNickname,avatar:L.peerLogo,isOnline:L.peerIsOnline}
5),m.invalidateQueries({queryKey:["conversations"]}))}async function cn(c){if(c.isDirect||c.threadId||c.toUserId){const f=c.isMyMsg?c.toUserId||"":c.userId;if(!f)return;const L=++D;An({path:"/chat",query:{dm:f}});const J=await At.mutateAsync(f).catch(()=>null);if(L!==D)return;J&&(Wn(J),W({type:0,key:J.threadId,peerUserId:J.peerUserId,title:J.peerNickname,avatar:J.peerLogo,isOnline:J.peerIsOnline}),ha(c.msgId))}else{const f=c.groupId;if(!f)return;const L=w.value?.groups?.find(J=>J.groupId.toLowerCase()===f.toLowerCase());An({path:"/chat",query:{g:f}}),W({type:1,key:f,peerUserId:"",title:L?.name||s("common.tab_group"),avatar:L?.logoUrl||"",isOnline:!1}),ha(c.msgId)}}function W(c){if(!!c.key&&h.value?.type===c.type&&h.value.key.toLowerCase()===c.key.toLowerCase()){Re.value=!1;return}D++,h.value=c,I.value!=="all"&&(I.value=c.type===0?"dm":"group"),x.value=1,U.value=[],_.clear(),tt=null,te(),Wt.value=!1,G.value=null,Q.value="",Ae.value=null,Se.value=c.isOnline,pe.value=0,xe.value=!0,et.value=!1,ke=[],je&&(cancelAnimationFrame(je),je=0),ve&&(clearTimeout(ve),ve=null),ze.value=0,Je.value=!1,Ke.value=0,Re.value=!1,he(c,D)}function Zt(c){return Array.isArray(c)?c[0]||"":typeof c=="string"?c:""}async function ts(){const c=p.query.dm,f=p.query.g||Zt(p.params.groupId);if(c){const L=await At.mutateAsync(c).catch(()=>null);L&&(Wn(L),W({type:0,key:L.threadId,peerUserId:L.peerUserId,title:L.peerNickname,avatar:L.peerLogo,isOnline:L.peerIsOnline}))}else if(f){const L=w.value?.groups?.find(J=>J.groupId.toLowerCase()===f.toLowerCase());W({type:1,key:f,peerUserId:"",title:L?.name||s("common.tab_group"),avatar:L?.logoUrl||"",isOnline:!1})}}Ee(w,c=>{c&&!h.value&&ts()},{immediate:!0});function da(){ss(),h.value=null,U.value=[],_.clear(),te(),Wt.value=!1,G.value=null,Q.value="",Ae.value=null,Se.value=!1,pe.value=0,x.value=1,et.value=!1,Re.value=!0,Promise.resolve(An({path:"/chat",query:{}})).catch(()=>{})}function Va(c){if(!(c.key!=="Escape"||c.isComposing)&&!vi()){if(G.value){G.value=null;return}h.value&&da()}}nn(()=>window.addEventListener("keydown",Va)),Aa(()=>{window.removeEventListener("keydown",Va),Vt()});function va(c,f){return new Date(c.createDate||0).getTime()-new Date(f.createDate||0).getTime()}function ns(){const c=zt.value;if(c){vt(()=>{De.value?.scrollToMsg(c,"start"),requestAnimationFrame(()=>De.value?.scrollToMsg(c,"start"))});return}const f=()=>De.value?.scrollToBottom(!1);vt(()=>{f(),requestAnimationFrame(f),setTimeout(()=>{xe.value&&f()},200),setTimeout(()=>{xe.value&&f()},500)})}function as(){const c=tt;tt=null,c&&vt(()=>{const f=De.value?.containerRef;if(!f)return;const L=f.scrollHeight-c.height;L>0&&(f.scrollTop=c.top+L)})}Ee(wn,c=>{if(!c?.messages)return;const f=[];for(const L of c.messages)_.has(L.msgId)||(_.add(L.msgId),f.push(L));if(x.value===1){const L=new Set(c.messages.map(ge=>ge.msgId)),J=[...c.messages,...U.value.filter(ge=>!L.has(ge.msgId))];J.sort(va),U.value=J,!et.value&&J.length&&(et.value=!0,ns())}else{const L=[...f,...U.value];L.sort(va),U.value=L,as()}},{immediate:!0});const fa=Oa();Ee([U,jt],()=>{const c=h.value,f=jt.value;if(!c||!f||G.value||!U.value.length)return;const L=D,J=fa.get(ue.value,f),ge=J?.replyToMsgId;if(!ge)return;const Me=U.value.find(Ge=>Ge.msgId.toLowerCase()===ge.toLowerCase());L!==D||h.value?.key!==c.key||(Me?G.value=Me:fa.set(ue.value,f,{...J,replyToMsgId:void 0,updatedAt:Date.now()}))}),Ee([U,jt],()=>{const c=h.value,f=jt.value;c&&f&&U.value.length&&Ba(c,f)});const{hydratedDraftKeys:os,hydrateCloudDraft:Ba,pushDraftToCloud:ss}=ay({activeConv:h,chatDraftKeyRef:jt,currentUserId:ue,localMessages:U,replyToMsg:G,chatV2On:O,chatV2:R,drafts:fa,v2MsgMeta:M,v2MetaOf:K,restoreDraft:()=>lt.value?.restoreDraft(),openConvEpoch:()=>D,disposed:()=>Tt});yy(xe,c=>De.value?.scrollToBottom(!!c));const{notifyIncoming:is}=ny({activeConv:h,currentUserId:ue,v2Snapshots:Ye,v2SnapshotRev:rt,selectConversation:V,stripHtml:On,t:s});let qn=[],ma=null,pa=null,Tt=!1;const ls=g(!1);async function rs(){if(!d.value)return!1;const c=window.flutter_inappwebview;if(!c?.callHandler)return!1;try{const f=await Promise.race([c.callHandler("weicityOpenChat",{dm:String(p.query.dm||""),g:String(p.query.g||p.params.groupId||"")}),new Promise(L=>setTimeout(()=>L(null),1500))]);if(!f||f.handled!==!0)return!1}catch{return!1}return ls.value=!0,window.history.length>1?b.back():b.replace("/"),!0}nn(async()=>
5{if(!await rs()&&ue.value&&(await ce.ensureConnection(),!Tt)){if(await ce.registerPresence(ue.value),Tt){ce.clearPresence();return}ma=aa(()=>ce.presenceHeartbeat(ue.value),4e4),pa=ce.onReconnected(()=>{Tn(),h.value&&(Dn(),m.invalidateQueries({queryKey:["conversations"]}),m.invalidateQueries({queryKey:["chat-unread"]}))}),ce.on("OnConversationUpdated",c=>{m.invalidateQueries({queryKey:["conversations"]}),m.invalidateQueries({queryKey:["chat-unread"]}),is(c)}),ce.on("KickUser",(c,f)=>{f?.toLowerCase()===ue.value.toLowerCase()&&(m.invalidateQueries({queryKey:["chat-groups"]}),m.invalidateQueries({queryKey:["conversations"]}),h.value?.type===1&&h.value.key.toLowerCase()===(c||"").toLowerCase()&&(h.value=null,Re.value=!0))}),O.value=await R.ensureChatV2Enabled(),!(Tt||!O.value)&&(ce.on("OnChatSignalV2",(c,f,L)=>{us(c,f,L)}),ce.on("OnChatReadV2",(c,f)=>{const L=h.value;!L||L.key.toLowerCase()!==(c||"").toLowerCase()||(f||"").toLowerCase()!==ue.value.toLowerCase()&&(Ae.value=new Date().toISOString())}),ce.on("OnChatTypingV2",(c,f,L)=>{const J=h.value;!J||J.key.toLowerCase()!==(c||"").toLowerCase()||(f||"").toLowerCase()!==ue.value.toLowerCase()&&(Q.value=L||J.title,setTimeout(()=>{Q.value=""},6e3))}),ce.onChatMessageChangedV2((c,f,L)=>{ds(c,f,L)}),ce.onChatMemberChangedV2(c=>{vs(c)}),Tn())}}),Ee(h,async c=>{for(const f of qn)f();if(qn=[],Vt(),ce.leaveConversation(),!(!c||!ue.value)&&(await ce.ensureConnection(),!Tt))if(O.value&&(H.value=Ye.get(c.key.toLowerCase())?.lastSeq??0,ze.value=Ye.get(c.key.toLowerCase())?.lastReadSeq??0,ya(c.key),Tn()),c.type===0)await ce.joinDmThread(c.key),ce.markDmRead(c.key,ue.value),wt.mutate({type:"dm",key:c.peerUserId}),ce.on("OnReceiveDirectMsg",f=>{if((f.threadId||f.groupID||"").toLowerCase()!==c.key.toLowerCase())return;const J=$n(f,ue.value);_.has(J.msgId)||(_.add(J.msgId),ie(J),J.isMyMsg||(ce.markDmRead(c.key,ue.value),wt.mutate({type:"dm",key:c.peerUserId})))}),ce.on("OnDmRead",(f,L)=>{f.toLowerCase()===c.key.toLowerCase()&&L.toLowerCase()!==ue.value.toLowerCase()&&(Ae.value=new Date().toISOString())}),ce.on("OnDmTyping",(f,L)=>{O.value||f.toLowerCase()===c.key.toLowerCase()&&L.toLowerCase()!==ue.value.toLowerCase()&&(Q.value=c.title,setTimeout(()=>{Q.value=""},6e3))}),qn.push(()=>{ce.off("OnReceiveDirectMsg"),ce.off("OnDmRead"),ce.off("OnDmTyping")});else{const f=hn(ue.value,c.key,Rt.value,ht.value,"",{groupName:c.title});await ce.registerUser(f),wt.mutate({type:"group",key:c.key}),ce.on("OnReceiveChatMsgAsync",L=>{if(L.groupID?.toLowerCase()!==c.key.toLowerCase())return;const J=$n(L,ue.value);_.has(J.msgId)||(_.add(J.msgId),ie(J),J.isMyMsg||Ct(c.key))}),ce.on("WelcomeChatMsgAsycn",L=>{const J=$n(L,ue.value);_.has(J.msgId)||(_.add(J.msgId),ie(J))}),ce.on("RequestDeleteMsgItem",L=>{U.value=U.value.filter(J=>J.msgId.toLowerCase()!==L.toLowerCase()),_.delete(L)}),ce.on("OnReceiveOnlineCountChange",L=>{pe.value=L}),ce.on("OnChatRejected",(L,J,ge)=>{L?.toLowerCase()===c.key.toLowerCase()&&(v.value.add(J),u.show(i(ge),"error"))}),ce.on("Muted",L=>{L.groupID?.toLowerCase()===c.key.toLowerCase()&&L.userId?.toLowerCase()===ue.value.toLowerCase()&&m.invalidateQueries({queryKey:["chat-group-detail"]})}),ce.on("UnMuted",(L,J)=>{J?.toLowerCase()===ue.value.toLowerCase()&&m.invalidateQueries({queryKey:["chat-group-detail"]})}),ce.on("OnInputTypeStatus",L=>{if(!O.value&&L.userId.toLowerCase()!==ue.value.toLowerCase()){if(L.groupID?.toLowerCase()!==c.key.toLowerCase()){Q.value="";return}Q.value=L.userNickname,setTimeout(()=>{Q.value=""},8e3)}});for(const L of Object.values(Hn))ce.on(L,J=>{const ge=U.value.find(Me=>Me.msgId===J.msgId);ge&&J.settingsEntity&&(ge.joys=J.settingsEntity.joys||[],ge.thumbsUp=J.settingsEntity.thumbsUP||[],ge.heart=J.settingsEntity.heart||[],ge.tried=J.settingsEntity.tried||[])});qn.push(()=>{ce.off("OnReceiveChatMsgAsync"),ce.off("WelcomeChatMsgAsycn"),ce.off("RequestDeleteMsgItem"),ce.off("OnReceiveOnlineCountChange"),ce.off("OnInputTypeStatus");for(const L of Object.values(Hn))ce.off(L);ce.off("Muted"),ce.off("UnMuted"),ce.off("OnChatRejected")})}}),Aa(()=>{Tt=!0,je&&(cancelAnimationFrame(je),je=0),ve&&(clearTimeout(ve),ve=null),ke=[];for(const c of qn)c();ce.off("OnConversationUpdated"),ce.off("KickUser"),ce.off("OnChatSignalV2"),ce.off("OnChatReadV2"),ce.off("OnChatTypingV2"),ce.off("OnChatMessageChangedV2"),ce.off("OnChatMemberChangedV2"),ma&&clearInterval(ma),pa?.(),pa=null,ce.clearPresence(),ce.leaveConversation()});function cs(c){const f=(c||"").toLowerCase();if(!f)return!1;for(const L of _)if(L.toLowerCase()===f)return!0;return!1}async function Na(c,f){const L=D,J=ue.value,ge=H.value,Me=await R.getHistory(c.key,ge,f,"forward");if(!Me||Tt||L!==D||J!==ue.value||h.value?.key!==c.key)return;F(Me.messages||[]),Ms(Me.messages||[],U),Jt.applyPollIdsFromV2Rows(Me.messages||[],U),mn.applyVideosFromV2Rows(Me.messages||[],U);let Ge=ge,pn=!1;for(const Yt of Me.messages||[])Yt.seq>Ge&&(Ge=Yt.seq),Yt.msgId&&M.set(Yt.msgId.toLowerCase(),{seq:Yt.seq,createdAt:Yt.createdAt,editedAt:Yt.editedAt??null,deletedAt:Yt.deletedAt??null}),cs(Yt.msgId||Yt.clientMsgId)||(pn=!0);Ge>H.value&&(H.value=Ge),pn&&Dn(),ya(c.key)}async function Tn(){if(!(!O.value||!ue.value||pt)){pt=!0;try{const c=await R.getDifference(R.loadPts(ue.value));if(!c)return;for(const L of c.conversations||[])Ye.set((L.conversationId||"").toLowerCase(),L);rt.value++,R.savePts(ue.value,c.pts);const f=h.value;if(f){const L=Ye.get(f.key.toLowerCase());L&&(H.value<=0?(H.value=L.lastSeq,ya(f.key)):L.lastSeq>H.value&&await Na(f,50))}m.invalidateQueries({queryKey:["conversations"]}
5),m.invalidateQueries({queryKey:["chat-unread"]})}finally{pt=!1}}}async function us(c,f,L){if(!O.value)return;L>0&&R.savePts(ue.value,L);const J=h.value;if(!J||J.key.toLowerCase()!==(c||"").toLowerCase()){m.invalidateQueries({queryKey:["conversations"]}),m.invalidateQueries({queryKey:["chat-unread"]});return}const ge=vo(H.value,f);ge!=="ignore"&&(ge==="forward"?await Na(J,1):await Tn())}async function ds(c,f,L){if(!O.value)return;const J=vo(H.value,f,L);if(J==="refetch-mentions"){await Is();return}const ge=h.value;if(!(!ge||ge.key.toLowerCase()!==(c||"").toLowerCase())){if(J==="refetch-message"){await ga(ge,f),Jt.onSignal(f);return}if(J==="refetch-conversation"){await he(ge);return}if(J==="refetch-members"){m.invalidateQueries({queryKey:["chat-group-detail"]}),m.invalidateQueries({queryKey:["native-group"]}),Xt.value+=1;return}if(J==="refetch-draft"){const Me=jt.value;Me&&(os.delete(Me),await Ba(ge,Me));return}if(J==="refetch-scheduled"){await Gt.onSignal();return}}}function vs(c){if(!O.value)return;m.invalidateQueries({queryKey:["conversations"]});const f=h.value;f&&f.key.toLowerCase()===(c||"").toLowerCase()&&m.invalidateQueries({queryKey:["chat-group-detail"]})}async function ga(c,f){const L=D,J=ue.value,ge=await R.getHistoryAround(c.key,f,2);if(!ge||Tt||L!==D||J!==ue.value||h.value?.key!==c.key)return;F(ge.messages||[]);const Me=(ge.messages||[]).find(pn=>pn.seq===f);if(!Me||!Me.msgId)return;const Ge=U.value.find(pn=>pn.msgId.toLowerCase()===Me.msgId.toLowerCase());Ge&&(Me.deletedAt?(Ge.content="",Ge.images=[],Ge.audioMp3Url=null,Ge.joys=[],Ge.thumbsUp=[],Ge.heart=[],Ge.tried=[],Ge.transcript=null,Ge.video=null):(Ge.content=Me.text||Ge.content,Ge.transcript=Me.extra?.transcript??Ge.transcript??null,Ge.video=Me.media?.video??Ge.video??null,Ge.joys=Me.reactions?.joys||[],Ge.thumbsUp=Me.reactions?.thumbsUp||[],Ge.heart=Me.reactions?.heart||[],Ge.tried=Me.reactions?.tried||[]))}function fs(c){be.value={msgId:c.msgId,text:(c.content||"").replace(/<br\s*\/?>/gi,`
6`).replace(/<[^>]*>/g,"")}}function ms(){be.value=null}async function ps(c){const f=h.value,L=be.value;if(!f||!L)return;const J=K(L.msgId);if(!J){be.value=null;return}try{await R.editMessage(f.key,J.seq,c,J.createdAt),be.value=null,await ga(f,J.seq)}catch(ge){Ie(ge)}}async function gs(c){const f=h.value,L=K(c.msgId);if(!(!f||!L)&&await ea(s("chat.confirm_recall_message")))try{await R.deleteMessage(f.key,L.seq,L.createdAt),await ga(f,L.seq)}catch(J){Ie(J)}}const hs=Bt(()=>Dt(()=>import("./B_Rj7yd3.js"),__vite__mapDeps([59,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,60]),import.meta.url)),Vn=g(null);function ys(c){Vn.value=c}function Fa(){Vn.value=null}const Ka=P(()=>{const c=h.value,f=Vn.value;if(!c||!f)return null;const L=K(f.msgId);return L?{conversationId:c.key,seq:L.seq,createdAt:L.createdAt}:null});function _s(c){Fa(),m.invalidateQueries({queryKey:["conversations"]}),u.show(s("chat.forward_done",{n:c}))}const bs=P(()=>{if(rt.value,!j.value)return null;const c=Ye.get((h.value?.key||"").toLowerCase());return!c||c.slowModeSec===void 0?null:{slowModeSec:c.slowModeSec,joinApproval:c.joinApproval===!0}}),ws=P(()=>{rt.value;const c=[];for(const f of Ye.values())c.push({conversationId:f.conversationId,peerUserId:f.peerUserId,archivedAt:f.archivedAt,mentionUnread:f.mentionUnread});return c}),ks=P(()=>{rt.value;const c=[];for(const[f,L]of Ye)f&&c.push({conversationId:L.conversationId,peerUserId:L.peerUserId,title:L.title,avatarUrl:L.avatarUrl});return c}),{blockedUserIds:Cs,onBlockUser:ja,activePeerBlocked:xa,seedPeerBlocked:Wn}=Zh({activeConv:h,toast:u,t:s}),{jumpHint:Ha,jumpBackTop:$s,jumpBack:Ga,jumpToMessage:ha,onJumpToSeq:za}=ey({activeConv:h,currentUserId:ue,timelineMessages:X,v2MetaOf:K,v2IndexPage:F,v2ActionsOn:ne,chatV2:R,openConvEpoch:()=>D,disposed:()=>Tt,getContainer:()=>De.value?.containerRef,scrollToMsg:c=>De.value?.scrollToMsg?.(c),toast:u,t:s}),{activeMentionUnread:Qa,jumpToNextMention:Xa,onMentionSignal:Is,applyMentionsFromV2Rows:Ms,markReadAndClearMentions:ya}=oy({activeConv:h,v2Snapshots:Ye,v2SnapshotRev:rt,chatV2:R,onJumpToSeq:za,syncV2Difference:()=>Tn(),lastReadSeqAtOpen:()=>ze.value,v2LastSeq:()=>H.value,openConvEpoch:()=>D,disposed:()=>Tt}),Gt=cy({activeConv:h,chatV2On:O,isBroadcast:N,chatV2:R,replyToMsg:G,toast:u,t:s,showActionError:Ie,resolveReplySeq:c=>K(c)?.seq??null,askConfirm:c=>ea(c),openConvEpoch:()=>D,disposed:()=>Tt}),Ts=Bt(()=>Dt(()=>import("./C8pXnEuo.js"),__vite__mapDeps([61,2,3,4,31,32,33,34,1,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,35,36,37,38,39,40,62]),import.meta.url)),fn=uy({activeConv:h,chatV2:R,v2MetaOf:K,localMessages:U,showActionError:Ie,targetLang:()=>a.value,openConvEpoch:()=>D,disposed:()=>Tt}),Jt=dy({activeConv:h,chatV2:R,showActionError:Ie,viewerId:()=>ue.value,openConvEpoch:()=>D,disposed:()=>Tt}),Ss=Bt(()=>Dt(()=>import("./DfOoNPLV.js"),__vite__mapDeps([63,2,3,47,31,32,33,34,1,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,35,4,36,37,38,39,40,64]),import.meta.url)),mn=my({activeConv:h,chatV2:R,localMessages:U,seen:_,v2Meta:M,replyTo:G,viewerId:()=>ue.value,toast:u,codeText:i,me:()=>({name:Rt.value,avatar:ht.value,isAdmin:Qe.value?.canManage||!1}),resolveReplySeq:c=>K(c)?.seq??null,scrollToBottom:()=>De.value?.scrollToBottom(!0),disposed:()=>Tt}),Jn=g(!1);async function As(c){(await Jt.create(c)||!Jt.createEnabled.value)&&(Jn.value=!1)}Ee([ue,()=>h.value?.key,O],()=>{Gt.onConversationOpened(),fn.onConversationOpened(),Jt.onConversationOpened(),mn.onConversationOpened()});async function Rs(c,f=[],L=[]){const J=h.value;if(!J||!ue.value||!c.trim()&&f.length===0)return;const ge=hn(ue.value,J.key,Rt.value,ht.value,c,{images:f,replyToMsgId:G.value?.msgId,replyMsg:G.value,groupName:J.title,isAdmin:Qe.value?.canManage||!1}),Me=$n(ge,ue.value);L.length&&(Me.mentions=L,Ya.set(Me.msgId,L)),_.has(Me.msgId)||(_.add(Me.msgId),U.value.push(Me)),G.value=null,vt(()=>De.value?.scrollToBottom(!0)),await Yn(J,Me.msgId,ge)}async function Es(c){const f=h.value;if(!f||!ue.value||!c.url)return;const L=hn(ue.value,f.key,Rt.value,ht.value,"",{replyToMsgId:G.value?.msgId,replyMsg:G.value,groupName:f.title,isAdmin:Qe.value?.canManage||!1});L.audioMp3Url=c.url,L.isSpeechToText=!1;const J=$n(L,ue.value);Ja.set(J.msgId,{durationMs:c.durationMs,mime:c.mime,waveform:c.waveform||void 0}),_.has(J.msgId)||(_.add(J.msgId),U.value.push(J)),G.value=null,vt(()=>De.value?.scrollToBottom(!0)),await Yn(f,J.msgId,L)}const Wa=new Map,Ja=new Map,Ya=new Map;async function Ls(c,f){const L=Wa.get(f.msgId);
6if(O.value)try{return{ok:!0,rejected:!1,code:"",seq:(await R.sendMessageV2(c.key,{clientMsgId:f.msgId,text:f.msgContent||"",images:(f.images||[]).filter(Boolean),replyToSeq:f.replyToMsgId?K(f.replyToMsgId)?.seq??null:null,replyToMsgId:f.replyToMsgId||null,mentions:Ya.get(f.msgId)??null,audio:f.audioMp3Url?{url:f.audioMp3Url,isStt:f.isSpeechToText||!1,...Ja.get(f.msgId)||{}}:null,file:L?{shareToken:L.shareToken,url:L.url,name:L.name}:null,link:!L&&f.includeUrls?{url:f.includeUrls,title:f.includeUrlFirstTitle||"",desc:f.includeUrlFirstDescription||"",image:f.includeUrlsFirstImages||""}:null})).seq}}catch(ge){if(!R.chatV2Enabled.value)O.value=!1;else{mt(ge)&&Ie(ge);const{rejected:Me,code:Ge}=Vi(ge);return{ok:!1,rejected:Me,code:Ge,seq:0}}}return{ok:c.type===0?await ce.sendDirectMessage(f,c.peerUserId):await ce.sendMessage(f),rejected:!1,code:"",seq:0}}async function Yn(c,f,L){const J=Xe;$.value.add(f);const ge=await Ls(c,L);J===Xe&&(ge.ok&&ge.seq>0&&(M.set(f.toLowerCase(),{seq:ge.seq,createdAt:new Date().toISOString(),editedAt:null,deletedAt:null}),ge.seq>H.value&&(H.value=ge.seq)),!ge.ok&&ge.rejected&&(v.value.add(f),u.show(i(ge.code),"error")),Us(f,L,ge.ok))}function Us(c,f,L){$.value.delete(c);const J=v.value.has(c);if(L&&!J){S.value.delete(c);return}S.value.set(c,f),!J&&u.show(ce.isConnectedNow()?s("chat.send_failed"):s("chat.send_offline_queued"),"error")}async function Ps(c){const f=h.value,L=S.value.get(c);!f||!L||$.value.has(c)||(v.value.delete(c),await Yn(f,c,L))}async function Ds(c){const f=h.value;if(!(!f||!ue.value))try{const L=f.type===0?"dm":"group",J=await Xi({itemType:c.itemType,itemId:c.itemId,scope:L,peerUserId:f.peerUserId,days:c.days,allowDownload:c.allowDownload??!0}),ge=hn(ue.value,f.key,Rt.value,ht.value,J.url,{groupName:f.title,isAdmin:Qe.value?.canManage||!1});ge.includeUrls=J.url,ge.includeUrlFirstTitle=J.title,ge.includeUrlFirstDescription=J.description,ge.includeUrlsFirstImages=null;const Me=$n(ge,ue.value);Wa.set(Me.msgId,{shareToken:J.shareId,url:J.url,name:J.title}),_.has(Me.msgId)||(_.add(Me.msgId),U.value.push(Me)),vt(()=>De.value?.scrollToBottom(!0)),await Yn(f,Me.msgId,ge)}catch(L){(L?.data?.message||L?.response?._data?.message||"")==="folder_locked"&&u.show(s("drive.share_folder_locked"),"error")}}function Os(c){G.value=c,lt.value?.focus()}const{onReact:qs,onReactKey:Vs,resolveNickname:Za}=ty({activeConv:h,localMessages:U,currentUserId:ue,currentUserName:Rt,currentUserAvatar:ht,v2ActionsOn:ne,v2MetaOf:K,chatV2:R,signalR:ce,showActionError:Ie,toast:u,t:s});async function Bs(c){if(!await ea(s("chat.confirm_delete_message"))||!h.value)return;const f=U.value.find(Me=>Me.msgId===c);if(!f)return;U.value=U.value.filter(Me=>Me.msgId!==c),_.delete(c);const L=hn(ue.value,h.value.key,Rt.value,ht.value,"");if(await ce.deleteMessage(L,c))return;const ge=[...U.value,f];ge.sort(va),U.value=ge,_.add(c),u.show(s("chat.delete_failed"),"error")}const Ns=ji();function Fs(c){Ns.mutate(c,{onSuccess:()=>u.show(s("social.report_sent"),"success"),onError:()=>u.show(s("social.report_failed"),"error")})}async function Ks(){if(le.value)return;if(Y.value&&h.value){const f=h.value,L=D,J=De.value?.containerRef,ge=J?.scrollHeight||0,Me=J?.scrollTop||0;await re(f,L),await vt(),J&&L===D&&(J.scrollTop=Me+Math.max(0,J.scrollHeight-ge));return}if(!wn.value?.hasMore||tt)return;const c=De.value?.containerRef;if(c){const f={height:c.scrollHeight,top:c.scrollTop};tt=f,setTimeout(()=>{tt===f&&(tt=null)},8e3)}x.value++}function js(c){if(ne.value&&K(c.msgId)){ye(c);return}j.value&&h.value&&at.mutate({groupId:h.value.key,msgId:c.msgId})}async function xs(){j.value&&h.value&&await ea(s("chat.confirm_unpin"))&&Qn.mutate(h.value.key)}const eo=g(null),to=g(""),Zn=g(!1);let _a=null;function Cn(c){Zn.value=!1,_a?.(c),_a=null}async function ea(c){if(!eo.value)return u.show(s("chat.gerr.generic"),"error"),!1;Cn(!1);const f=D,L=ue.value;return to.value=c,Zn.value=!0,await new Promise(ge=>{_a=ge})&&!Tt&&f===D&&L===ue.value}Ee([ue,()=>h.value?.key],()=>Cn(!1),{flush:"sync"}),St(()=>Cn(!1)),tn(Zn,()=>Cn(!1));let no=0;function Hs(){const c=h.value;if(!c)return;const f=Date.now();if(!(f-no<(O.value?5e3:2500))){if(no=f,O.value){ce.sendTypingV2(c.key);return}
6if(c.type===0)ce.sendDmTyping(c.key,ue.value,Rt.value);else{const L=hn(ue.value,c.key,Rt.value,ht.value,"",{groupName:c.title});ce.sendTypingStatus(L)}}}const Gs=P(()=>Ze.value&&Et.value?.title||h.value?.title||s("common.nav_messages")),ba=P(()=>{if(!h.value)return"";if(Q.value)return s("chat.someone_typing",{name:Q.value});if(E.value)return Se.value?s("common.online"):s("chat.status_offline");const c=Ze.value?Et.value?.memberCount||0:Qe.value?.memberCount||0;return pe.value>0?s("chat.online_and_members",{online:pe.value,total:c}):c?s("chat.member_count",{n:c}):""}),zs=P(()=>!j.value||Q.value?!1:Ze.value?!0:!!Qe.value&&!Qe.value.isChatGPT&&!(Qe.value.totalMemberOnlyAdmin&&!Qe.value.canManage));function Qs(){z("members")}const Xs=P(()=>j.value&&Qe.value?.isMuted?Qe.value.muteAll?s("chat.mute_all"):s("chat.muted_by_admin"):E.value?s("chat.dm_input_placeholder"):s("chat.group_input_placeholder")),Sn=P(()=>N.value?s("chat.broadcast_readonly"):xa.value?s("chat.readonly_blocked"):j.value&&Qe.value?.isMuted?Qe.value.muteAll?s("chat.mute_all"):s("chat.muted_by_admin"):""),Ws=P(()=>!!Sn.value),Js=P(()=>(rt.value,E.value?Ye.get((h.value?.key||"").toLowerCase())?.peerLastReadSeq??null:null)),{readersOpe
6n:Ys,readersBusy:Zs,readersData:Bn,closeReaders:ao,onReadersDown:oo,onReadersClick:so,onShowReaders:ei}=Jh({activeConv:h,v2MetaOf:K,openConvEpoch:()=>D,chatV2:R,resolveNickname:Za,showActionError:Ie,t:s}),io=P(()=>{if(!E.value)return"";const c=U.value.filter(L=>L.isMyMsg);if(!c.length)return"";const f=c[c.length-1];return S.value.has(f.msgId)?s("chat.read_send_failed"):$.value.has(f.msgId)?s("chat.read_sending"):Ae.value&&new Date(f.createDate||0)<=new Date(Ae.value)?s("chat.read_seen"):s("chat.read_delivered")});return(c,f)=>{const L=Oo,J=Po,ge=oc,Me=lc,Ge=Zd,pn=Wv,Yt=bf,ti=qp,ni=xh,ai=ki;return o(),l(fe,null,[It(ai,{"active-mode":"messages","show-header":!1,"show-rail":!0,"show-appbar":e(Re),"show-dock":e(Re),"shell-class":e(Re)?"":"wc-social--chat-fullscreen"},{default:dn(()=>[(o(),Oe(ln,{to:"body"},[e(Ys)?(o(),l("div",{key:0,class:"wc-readers",onPointerdown:f[1]||(f[1]=(...qe)=>e(oo)&&e(oo)(...qe)),onClick:f[2]||(f[2]=(...qe)=>e(so)&&e(so)(...qe))},[n("div",{class:"wc-readers__panel",role:"dialog","aria-modal":"true","aria-label":c.$t("chat.readers_title")},[n("h3",by,r(c.$t("chat.readers_title")),1),e(Zs)?(o(),l("p",wy,r(c.$t("common.loading")),1)):e(Bn).tooMany?(o(),l("p",ky,r(c.$t("chat.readers_too_many")),1)):e(Bn).names.length?(o(),l(fe,{key:3},[n("p",$y,r(c.$t("chat.readers_count",{count:e(Bn).count??e(Bn).names.length})),1),n("ul",Iy,[(o(!0),l(fe,null,Ve(e(Bn).names,(qe,wa)=>(o(),l("li",{key:wa},r(qe),1))),128))])],64)):(o(),l("p",Cy,r(c.$t("chat.readers_none")),1)),n("button",{type:"button",class:"wc-readers__close",onClick:f[0]||(f[0]=(...qe)=>e(ao)&&e(ao)(...qe))},r(c.$t("common.close")),1)],8,_y)],32)):C("",!0)])),It(J,{ref_key:"confirmHost",ref:eo,"model-value":e(Zn),title:e(to),size:"sm","z-index":1460,"close-on-esc":!1,"onUpdate:modelValue":f[5]||(f[5]=qe=>{qe||Cn(!1)})},{footer:dn(()=>[It(L,{variant:"default",onClick:f[3]||(f[3]=qe=>Cn(!1))},{default:dn(()=>[_e(r(c.$t("common.cancel")),1)]),_:1}),It(L,{variant:"primary",onClick:f[4]||(f[4]=qe=>Cn(!0))},{default:dn(()=>[_e(r(c.$t("common.confirm")),1)]),_:1})]),_:1},8,["model-value","title"]),n("div",{class:Ce(["wc-chat-page wc-chat-page--thread",{"wc-chat-page--fullscreen":!e(Re)}])},[n("section",My,[n("div",Ty,[n("aside",{class:Ce(["wc-chat-sidebar",{"wc-chat-sidebar--mobile-show":e(Re)}])},[It(ge,{tab:e(I),"onUpdate:tab":f[6]||(f[6]=qe=>ft(I)?I.value=qe:null),"active-conv-key":e(h)?.key||"","v2-convs":e(ws),"blocked-peer-ids":[...e(Cs)],onSelect:V,onOpenMessage:cn,onStartDm:He,onRefreshV2:Tn,onBlock:e(ja)},null,8,["tab","active-conv-key","v2-convs","blocked-peer-ids","onBlock"])],2),n("div",{class:Ce(["wc-chat-main",{"wc-chat-main--mobile-hide":e(Re)}])},[n("div",{class:Ce(["wc-chat-main__header",{"wc-chat-main__header--idle":!e(h)}])},[n("button",{type:"button",class:"wc-chat-main__back","aria-label":c.$t("common.back"),onClick:f[7]||(f[7]=qe=>Re.value=!0)},[...f[25]||(f[25]=[n("i",{class:"fa-solid fa-arrow-left"},null,-1)])],8,Sy),e(h)?(o(),l("div",Ay,[n("img",{src:("cfImage"in c?c.cfImage:e(Pt))(e(h).avatar,96),alt:e(h).title,onError:f[8]||(f[8]=qe=>("onAvatarError"in c?c.onAvatarError:e(sn))(qe,e(h).title))},null,40,Ry),e(E)&&e(Se)?(o(),l("span",Ey)):C("",!0)])):C("",!0),n("div",Ly,[n("div",Uy,r(e(Gs)),1),e(ba)?(o(),l("div",Py,[e(zs)?(o(),l("button",{key:0,type:"button",class:"wc-chat-main__header-sub-btn",title:c.$t("chat.gset_tab_members"),onClick:Qs},r(e(ba)),9,Dy)):(o(),l("span",{key:1,class:Ce({"wc-chat-main__typing":e(Q)})},r(e(ba)),3))])):C("",!0)]),It(Me,null,{default:dn(()=>[e(Gt).count.value>0?(o(),l("button",{key:0,type:"button",class:"wc-chat-main__settings",title:c.$t("chat.schedule.list_title"),"aria-label":c.$t("chat.schedule.list_title"),onClick:f[9]||(f[9]=qe=>e(Gt).dialogOpen.value=!0)},[f[26]||(f[26]=n("i",{class:"fa-regular fa-clock"},null,-1)),_e(" "+r(e(Gt).count.value),1)],8,Oy)):C("",!0)]),_:1}),e(j)&&(e(Ze)||!e(Qe)?.isChatGPT)?(o(),l("button",{key:1,type:"button",class:"wc-chat-main__settings",title:c.$t("chat.gset_title"),"aria-label":c.$t("chat.gset_title"),onClick:f[10]||(f[10]=qe=>z("info"))},[n("i",{class:Ce(e($t)?"fa-solid fa-gear":"fa-solid fa-circle-info")},null,2)],8,qy)):C("",!0)],2),e(h)?(o(),l(fe,{key:0}
6,[e(j)&&!e(Ze)?(o(),Oe(Ge,{key:0,open:e(xt),"onUpdate:open":f[11]||(f[11]=qe=>ft(xt)?xt.value=qe:null),"group-id":e(Ot),detail:e(Qe)??null,"v2-settings":e(bs),"initial-tab":e(T),onLeft:da},null,8,["open","group-id","detail","v2-settings","initial-tab"])):C("",!0),e(Gt).dialogOpen.value?(o(),Oe(e(Ts),{key:1,items:e(Gt).items.value,onRemove:e(Gt).remove,onClose:f[12]||(f[12]=qe=>e(Gt).dialogOpen.value=!1)},null,8,["items","onRemove"])):C("",!0),e(Jn)?(o(),Oe(e(Ss),{key:2,onConfirm:As,onClose:f[13]||(f[13]=qe=>Jn.value=!1)})):C("",!0),e(Ze)&&e(Ht)?(o(),Oe(e(an),{key:3,"conversation-id":e(ct),detail:e(Et)??null,"member-change-rev":e(Xt),onClose:f[14]||(f[14]=qe=>Ht.value=!1),onChanged:f[15]||(f[15]=qe=>e(m).invalidateQueries({queryKey:["native-group",e(ct)]})),onLeft:f[16]||(f[16]=qe=>{Ht.value=!1,da()})},null,8,["conversation-id","detail","member-change-rev"])):C("",!0),!e(ne)&&e(j)&&e(qt)?(o(),l("div",Vy,[f[28]||(f[28]=n("i",{class:"fa-solid fa-thumbtack wc-chat-pinned__icon"},null,-1)),n("div",By,[n("span",Ny,r(c.$t("chat.pinned_by",{name:e(qt).userNickname})),1),n("span",Fy,r(e(k)),1)]),e($t)?(o(),l("button",{key:0,type:"button",class:"wc-chat-pinned__unpin",title:c.$t("chat.unpin"),"aria-label":c.$t("chat.unpin"),disabled:e(Qn).isPending.value,onClick:xs},[...f[27]||(f[27]=[n("i",{class:"fa-solid fa-xmark"},null,-1)])],8,Ky)):C("",!0)])):C("",!0),e(j)&&e(ne)&&e(ue)?(o(),Oe(pn,{key:`${e(ue)}:${e(Mt)}`,"conversation-id":e(Mt),"user-id":e(ue),"can-manage":e($t)},null,8,["conversation-id","user-id","can-manage"])):C("",!0),e(j)&&e(ne)&&e(ue)?(o(),Oe(Yt,{key:`voice:${e(ue)}:${e(Mt)}`,"conversation-id":e(Mt),"user-id":e(ue),"can-manage":e($t),"mobile-dock-visible":e(Re)},null,8,["conversation-id","user-id","can-manage","mobile-dock-visible"])):C("",!0),It(ti,{ref_key:"messageListRef",ref:De,messages:e(X),"current-user-id":e(ue),"is-loading":e(ca),"has-more":e(Y)||(e(wn)?.hasMore??!0),"load-failed":e(ua),"load-retrying":e(Wt),"failed-ids":e(S),"in-flight-ids":e($),"v2-actions":e(ne),"v2-meta-of":K,"can-delete-others":e($t),"pinned-seqs":e(ae),"blocked-peer":e(xa),"can-select":!1,"resolve-nickname":e(Za),"pinned-text-of":e(Te),"peer-read-seq":e(Js),"unread-anchor-msg-id":e(zt),"unread-count":e(Ft),"can-see-readers":e(ne)&&e(j),"transcribing-ids":e(fn).transcribing.value,"translating-ids":e(fn).translating.value,translations:e(fn).translations.value,"show-original-ids":e(fn).showOriginal.value,polls:e(Jt).polls.value,"poll-busy-ids":e(Jt).busy.value,onTranscribe:e(fn).transcribe,onTranslate:e(fn).translate,onPollLoad:f[17]||(f[17]=qe=>e(Jt).ensureLoaded(qe,{force:!0})),onPollVote:f[18]||(f[18]=(qe,wa)=>e(Jt).vote(qe,wa)),onPollRetract:e(Jt).retract,onPollClose:e(Jt).close,onToggleOriginal:e(fn).toggleOriginal,onShowReaders:e(ei),onReactKey:e(Vs),onJumpTo:e(ha),onUnpinMsg:e(we),onBlockUser:e(ja),onSelect:()=>{},onEditRequest:fs,onRecall:gs,onForward:ys,onJumpToSeq:e(za),onUnpin:e(ot),onRetry:Ps,onRetryLoad:kn,"can-manage":e($t),onLoadMore:Ks,onReply:Os,onDelete:Bs,onPin:js,onReact:e(qs),onOpenPeer:nt,onReport:Fs,onScrolledToBottom:Kt,onOpenImage:Z},null,8,["messages","current-user-id","is-loading","has-more","load-failed","load-retrying","failed-ids","in-flight-ids","v2-actions","can-delete-others","pinned-seqs","blocked-peer","resolve-nickname","pinned-text-of","peer-read-seq","unread-anchor-msg-id","unread-count","can-see-readers","transcribing-ids","translating-ids","translations","show-original-ids","polls","poll-busy-ids","onTranscribe","onTranslate","onPollRetract","onPollClose","onToggleOriginal","onShowReaders","onReactKey","onJumpTo","onUnpinMsg","onBlockUser","onJumpToSeq","onUnpin","can-manage","onReact"]),e(E)&&e(io)?(o(),l("div",jy,r(e(io)),1)):C("",!0),e(N)?(o(),l("div",xy,r(e(Sn)),1)):!e(j)||!e(Qe)?.autoBot||e(Qe)?.canManage?(o(),Oe(ni,{key:9,ref_key:"chatInputRef",ref:lt,disabled:e(Ws),placeholder:e(Xs),"reply-to":e(G),"vault-scope":e(h)?.type===0?"dm":"group",editing:e(be),"slow-mode-remaining":e(Ue),"draft-key":e(jt),"readonly-reason":e(Sn),"mention-conv-id":e(j)&&e(O)&&e(h)?.key||null,"schedule-enabled":e(O)&&!e(be)&&!e(Sn)&&!e(Gt).unavailable.value,"scheduled-count":e(Gt).count.value,"poll-enabled":e(O)&&!e(be)&&!e(Sn)&&e(Jt).createEnabled.value,"video-enabled":e(O)&&!e(be)&&!e(Sn)&&e(mn).createEnabled.value,"video-pending":e(mn).current.value,onVideoPick:e(mn
6).enqueue,onVideoSend:e(mn).send,onVideoRetry:e(mn).retry,onVideoRemove:e(mn).remove,onSchedule:e(Gt).schedule,onOpenScheduled:f[19]||(f[19]=qe=>e(Gt).dialogOpen.value=!0),onOpenPoll:f[20]||(f[20]=qe=>Jn.value=!0),onSubmitEdit:ps,onCancelEdit:ms,onSend:Rs,onTyping:Hs,onCancelReply:f[21]||(f[21]=qe=>G.value=null),onVaultShare:Ds,onAudio:Es},null,8,["disabled","placeholder","reply-to","vault-scope","editing","slow-mode-remaining","draft-key","readonly-reason","mention-conv-id","schedule-enabled","scheduled-count","poll-enabled","video-enabled","video-pending","onVideoPick","onVideoSend","onVideoRetry","onVideoRemove","onSchedule"])):C("",!0),e(me)?(o(),l("div",Hy,r(e(me)),1)):C("",!0),e(Ha)?(o(),l("div",Gy,r(e(Ha)),1)):C("",!0),e($s)!==null?(o(),l("button",{key:12,type:"button",class:"wc-chat-jumpback",onClick:f[22]||(f[22]=(...qe)=>e(Ga)&&e(Ga)(...qe))},[f[29]||(f[29]=n("i",{class:"fa-solid fa-arrow-down"},null,-1)),_e(r(c.$t("chat.jump_back")),1)])):C("",!0),e(Ke)>0&&!e(xe)?(o(),l("button",{key:13,type:"button",class:"wc-chat-jumpback wc-chat-jumpback--new",onClick:We},[f[30]||(f[30]=n("i",{class:"fa-solid fa-arrow-down"},null,-1)),_e(r(c.$t("chat.unread_new_below",{count:e(Ke)})),1)])):C("",!0),e(Qa)>0?(o(),l("button",{key:14,type:"button",class:"wc-chat-jumpback wc-chat-jumpback--mention","aria-label":c.$t("chat.mention.jump_next"),title:c.$t("chat.mention.jump_next"),onClick:f[23]||(f[23]=(...qe)=>e(Xa)&&e(Xa)(...qe))},r(c.$t("chat.mention.count",{count:e(Qa)})),9,zy)):C("",!0)],64)):(o(),l("div",Qy,[n("div",Xy,[f[31]||(f[31]=n("i",{class:"fa-regular fa-comments wc-chat-empty__icon"},null,-1)),n("p",Wy,r(c.$t("chat.no_conversation_title")),1),n("p",Jy,r(c.$t("chat.no_conversation_desc")),1)])]))],2)])])],2)]),_:1},8,["show-appbar","show-dock","shell-class"]),e(gt).length?(o(),Oe(e(Qt),{key:0,modelValue:e(B),"onUpdate:modelValue":f[24]||(f[24]=qe=>ft(B)?B.value=qe:null),images:e(gt)},null,8,["modelValue","images"])):C("",!0),e(Vn)&&e(Ka)?(o(),Oe(e(hs),{key:1,source:e(Vn),"source-meta":e(Ka),candidates:e(ks),"user-id":e(ue),onClose:Fa,onDone:_s,onError:Ie},null,8,["source","source-meta","candidates","user-id"])):C("",!0)],64)}}}),Zy=bt(Yy,[["__scopeId","data-v-e5387f5c"]]),I_=Object.freeze(Object.defineProperty({__proto__:null,default:Zy},Symbol.toStringTag,{value:"Module"}));export{g_ as C,I_ as _,h_ as a,p_ as b,b_ as c,y_ as d,ry as e,__ as f,ly as g,_o as h,$_ as i,Zi as j,Yo as l,k_ as m,sn as o,w_ as p,iy as t,Zo as u,C_ as v};

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.