1import{d as K,m as _,f as m,e as b,b as d,c,k as Q,t as y,F as Z,p,ac as pe,A as fe,D as O,y as s,hX as ye,hy as he,u as ge,N as _e,r as f,jn as be,w as J,o as Ce,j as r,E as ke,q as U,bo as W,aM as Ie,jo as xe,jp as X,fJ as I,M as Ue,x as De,h as H,l as Te,n as Ee,hh as we,jq as Se,jr as Me,_ as Ve}from"./main-a3mq9nrI.js";import{V as je}from"./VMenu-8lmTJJQv.js";import{V as D}from"./VSheet-CFMx8laS.js";import{r as Ne,k as $e}from"./datetime-formatter-Cv86WHWF.js";import{T as Be}from"./TeamSupportComponent-pSLCuRsG.js";import{a as Ae,V as L}from"./VTabs-UxGodF2z.js";import{V as He}from"./VTextField-CyD9xf1Q.js";import"./ContactCard-BpxvhsPk.js";import"./phone-validation-D_u-NW25.js";import"./VSkeletonLoader-Bmusv_Yt.js";import"./ssrBoot-CabMM86H.js";import"./VSlideGroup-DL2o5vLZ.js";import"./index-cb0kMjr_.js";import"./autofocus-Dbts4_Lj.js";import"./VInput-CvdTyho7.js";const Le={class:"emoji-container"},ze=["onClick"],Re=K({__name:"EmojiPicker",props:{pickedEmoji:Function},setup(i){const n=["ð","ð","ð¤£","ð","ð","ð","ð¢","ð¥³","ð","â¤ï¸","ð¥","ð"];return(h,o)=>(s(),_(je,{"close-on-content-click":!1},{activator:m(({props:t})=>[b(O,fe({icon:"",variant:"text",color:"primary",class:"custom-hover-primary"},t),{default:m(()=>[b(p(pe),{"stroke-width":"1.5",size:"24",color:"black"})]),_:1},16)]),default:m(()=>[b(D,{rounded:"md",class:"px-2 py-2 bg-grey100",width:"240",elevation:"10"},{default:m(()=>[d("div",Le,[(s(),c(Z,null,Q(n,t=>d("div",{key:t},[d("div",{class:"emoji",onClick:v=>{var C;return(C=i.pickedEmoji)==null?void 0:C.call(i,t)}},y(t),9,ze)])),64))])]),_:1})]),_:1}))}}),T={};function qe(i,n,h,o,t){if(T[i]!=null)return;let v=ye(he());v.emit("requesting clients joins chat",{chatId:i,playerName:n,email:h,isAdmin:o}),v.on("receive new message in chat",C=>{t(C)}),T[i]=v}function Fe(i,n,h,o){let t=T[i];if(!t){console.error("No socket found for chat:",i);return}t.emit("post new message in chat",{chatId:i,clientName:n,clientSocketId:t.id,message:h,email:o})}function Y(i){let n=T[i];n!=null&&(n.disconnect(),T[i]=null)}const Ge={class:"messaging-chat-container"},Pe={key:0,class:"chat-tabs"},Je={key:1,class:"h-100"},We={class:"d-flex justify-center align-center px-6 h-100 pb-12"},Xe={key:0,class:"px-4 pt-5"},Ye={class:"d-flex"},Ke={class:"w-100"},Qe={key:0,class:"justify-end d-flex text-end mb-1"},Ze={key:0,class:"text-medium-emphasis text-subtitle-2"},Oe={class:"text-body-1 message-text"},et=["src"],tt={key:1,class:"d-flex align-items-start gap-3 mb-1"},at={key:0,class:"text-medium-emphasis text-subtitle-2"},st={key:0,class:"chat-socket-id"},ot={key:1,class:"chat-email font-weight-bold"},lt={class:"text-body-1 message-text"},nt=["src"],it={key:3,class:"chat-input-container"},ut=K({__name:"MessagingChat",setup(i){const{t:n}=ge(),h=_e(),o=f(null),t=f(null),v=f(null),C=f(h.email),M=f(h.username),x=U(()=>{switch(u.value){case 0:return t.value;case 1:return o.value;case 2:return v.value;default:return W.GetLobbyUUID()}}),k=be(),z=U(()=>x.value&&k.chatHistoryById[x.value]||[]),V=f(0),ee=f(0),te=f(!1),E=f(null),g=f(""),R=f(k.myUniqueUUID),ae=f([]),se=U(()=>({id:R.value,name:S(),status:"online",thumb:"/favicon.ico",recent:!1,chatHistory:ae.value})),j=U(()=>{let e=0;return t.value&&e++,o.value&&e++,v.value&&e++,e}),q=U(()=>{const e=[];return t.value&&e.push(0),o.value&&e.push(1),v.value&&e.push(2),e}),u=U({get:()=>q.value.indexOf(V.value)>=0?V.value:q.value[0]||2,set:e=>{V.value=e}});J(()=>j.value,()=>{le()},{immediate:!0});async function oe(){window.addEventListener("message",l=>{C.value=l.data.data.email,M.value=l.data.data.name,l.data.data.lobbyUUID?(t.value=l.data.data.lobbyUUID,$()):(k.removeChatHistory(t.value),Y(t.value),t.value=null),l.data.data.joinCodeUUID?(o.value=l.data.data.joinCodeUUID,N()):(k.removeChatHistory(o.value),Y(o.value),o.value=null),w()}),ne(),o.value=h.joinCodeUUID||sessionStorage.getItem("jc"),N();const e=W.GetLobbyUUID();e&&(t.value=e,$()),Ie.on(xe,l=>{t.value||(t.value=l,$())})}function le(){window.parent.postMessage({type:Me,data:{count:j.value,tabs:{lobby:!!t.value,game:!!o.value,support:!!v.value}}},"*")}function N(){o.value&&(w(),B(o.value))}function $(){t.value&&(w(),B(t.value))}function ne(){v.value=X,w(),B(v.value)}function w(){if(o.value){u.value=1;return}if(t.value){u.value=0;return}v.value&&(u.value=2)}function B(e){e&&qe(e,S(),A(),I(),de)}function ie(e){g.value=g.value+e}function F(){De(()=>{if(E.value){const e=E.value.$el||E.value;e.scrollTop=e.scrollHeight}})}function A(){return C.value===""?k.myUniqueUUID:C.value}function S(){return M.value===""?n("chat.unknown"):M.value}function ue(){ce(g.value),G(g.value),F()}function G(e){x.value&&(k.newChatMessage(x.value,R.value,A(),S(),e,!0),g.value="")}function re(e){I()&&(g.value=`[${e}] `)}
1async function ce(e){Fe(x.value,S(),e,A())}const de=e=>{k.newChatMessage(e.chatId,e.clientSocketId,e.customerEmail?e.customerEmail:"",e.clientName,e.message,!1),F(),window.parent.postMessage({type:Se,data:{isSupportMessage:e.chatId===X}},"*")};function P(e){const l=typeof e=="string"?new Date(e):e;return Ne($e(l))}return J(()=>h.joinCodeUUID,()=>{h.joinCodeUUID&&N()}),Ce(()=>{oe()}),(e,l)=>{const me=Ue("perfect-scrollbar");return s(),c("div",Ge,[j.value>=2?(s(),c("div",Pe,[b(Ae,{modelValue:u.value,"onUpdate:modelValue":l[0]||(l[0]=a=>u.value=a),"align-tabs":"center",grow:"",color:"gray"},{default:m(()=>[t.value?(s(),_(L,{key:0,"prepend-icon":"mdi-city",value:0,color:"gray"},{default:m(()=>[H(y(p(n)("chat.lobby")),1)]),_:1},8,["value"])):r("",!0),o.value?(s(),_(L,{key:1,"prepend-icon":"mdi-controller",value:1,color:"gray"},{default:m(()=>[H(y(p(n)("chat.game")),1)]),_:1},8,["value"])):r("",!0),v.value?(s(),_(L,{key:2,"prepend-icon":"mdi-face-agent",value:2,color:"gray"},{default:m(()=>[H(y(p(n)("chat.support")),1)]),_:1},8,["value"])):r("",!0)]),_:1},8,["modelValue"])])):r("",!0),u.value===2?(s(),c("div",Je,[d("div",We,[b(Be)])])):(s(),_(me,{ref_key:"scrollContainer",ref:E,class:"chat-messages chat-height pa-4",key:ee.value},{default:m(()=>[z.value.length<1?(s(),c("p",Xe,[d("small",null,y(u.value===2?p(n)("chat.support-scope"):
1p(n)("chat.private-scope")),1)])):r("",!0),d("div",Ye,[d("div",Ke,[(s(!0),c(Z,null,Q(z.value,(a,ve)=>(s(),c("div",{key:`chat-history-${x.value}-${ve}`},[a.myMessage?(s(),c("div",Qe,[d("div",null,[a.createdAt?(s(),c("small",Ze,y(`${se.value.name}, ${P(a.createdAt)}`),1)):r("",!0),a.type=="text"?(s(),_(D,{key:1,class:"bg-white rounded-md px-3 py-2 mb-1 message-container"},{default:m(()=>[d("p",Oe,y(a.msg),1)]),_:2},1024)):r("",!0),a.type=="img"?(s(),_(D,{key:2,class:"mb-1"},{default:m(()=>[d("img",{src:a.msg,class:"rounded-md",alt:"pro",width:"250"},null,8,et)]),_:2},1024)):r("",!0)])])):(s(),c("div",tt,[d("div",null,[a.createdAt?(s(),c("small",at,y(`${a.name}, ${P(a.createdAt)}`),1)):r("",!0),a.type=="text"?(s(),_(D,{key:1,class:Ee(["rounded-md px-3 py-2 mb-1 message-container",[{"cursor-pointer text-black":p(I)()&&u.value===2},{"bg-primary text-white":!p(I)()||u.value!==2}]]),style:Te(p(I)()&&u.value===2?{"background-color":a.color}:{}),onClick:rt=>re(a.senderId)},{default:m(()=>[p(I)()&&a.senderId&&u.value===2?(s(),c("div",st,y(a.senderId),1)):r("",!0),p(I)()&&a.senderEmail&&u.value===2?(s(),c("div",ot,y(a.senderEmail),1)):r("",!0),d("p",lt,y(a.msg),1)]),_:2},1032,["class","style","onClick"])):r("",!0),a.type=="img"?(s(),_(D,{key:2,class:"mb-1"},{default:m(()=>[d("img",{src:a.msg,class:"rounded-md",alt:"pro",width:"250"},null,8,nt)]),_:2},1024)):r("",!0)])]))]))),128))])])]),_:1})),u.value!==2?(s(),c("div",it,[d("form",{onSubmit:l[2]||(l[2]=ke(a=>G(g.value),["prevent"])),class:"d-flex align-center"},[b(Re,{pickedEmoji:ie}),b(He,{modelValue:g.value,"onUpdate:modelValue":l[1]||(l[1]=a=>g.value=a),variant:"solo",flat:"","hide-details":"",color:"primary",density:"compact",placeholder:p(n)("chat.type-a-message")},null,8,["modelValue","placeholder"]),b(O,{icon:"",variant:"text",type:"submit",class:"text-medium-emphasis",disabled:!g.value||te.value,onClick:ue},{default:m(()=>[b(p(we),{size:"20"})]),_:1},8,["disabled"])],32)])):r("",!0)])}}}),Ut=Ve(ut,[["__scopeId","data-v-ee7768c7"]]);export{Ut as default};
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.