import{t as l}from"./NcLoadingIcon-CBTC2zMe.chunk.mjs";import{N as v,s as _,b,c as S}from"./NcNoteCard-CwNXZ4vV-Dyi378DT.chunk.mjs";import{n as m}from"./NcCheckboxRadioSwitch-CgbTELjq-BFpDVXaF.chunk.mjs";import{j as f,k as A,l as C,N as x,m as k,i as I,n as G,o as w,b as B,q as M,r as O,u as D}from"./Wrapper-g9rQ14Xc.chunk.mjs";import{r as d,s as z,w as h,c as P,o as V,e as F,f as g}from"./vue.runtime.esm-B7-PK3p1.chunk.mjs";import{u as W}from"./Editor-h9EWaODT.chunk.mjs";import"./emoji-picker-hi3Hwbeu.chunk.mjs";import"./index-CdM8BgQf.chunk.mjs";import"./index-DCzdQJ7L.chunk.mjs";import"./index-D3wiQe9-.chunk.mjs";import"./index-Bnw2WuIx.chunk.mjs";import"./logger-DS8A9d_w.chunk.mjs";import"./preload-helper-BorfeO-5.chunk.mjs";import"./MediaHandler.provider-BoQN9QHH.chunk.mjs";import"./index-kwZOOyqh.chunk.mjs";import"./MenuBar-yxPsXXVM.chunk.mjs";const $={name:"AccountMultipleOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var H=function(){var t=this,s=t._self._c;return s("span",t._b({staticClass:"material-design-icon account-multiple-outline-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M13.07 10.41A5 5 0 0 0 13.07 4.59A3.39 3.39 0 0 1 15 4A3.5 3.5 0 0 1 15 11A3.39 3.39 0 0 1 13.07 10.41M5.5 7.5A3.5 3.5 0 1 1 9 11A3.5 3.5 0 0 1 5.5 7.5M7.5 7.5A1.5 1.5 0 1 0 9 6A1.5 1.5 0 0 0 7.5 7.5M16 17V19H2V17S2 13 9 13 16 17 16 17M14 17C13.86 16.22 12.67 15 9 15S4.07 16.31 4 17M15.95 13A5.32 5.32 0 0 1 18 17V19H22V17S22 13.37 15.94 13Z"}},[t.title?s("title",[t._v(t._s(t.title))]):t._e()])])])},j=[],q=m($,H,j,!1,null,null);const L=q.exports;function U(t){const{openData:s}=f(),e=d(s.value?.session),a=z([]);h(s,i=>{i?.session&&(e.value=i.session)});const u=P({get(){if(e.value&&A(e.value))return e.value},set(i){e.value=i}}),p=({sessions:i})=>{const c=Date.now()/1e3-C;a.value=i.filter(n=>n.lastContact>c).sort((n,r)=>r.lastContact-n.lastContact).filter(E);const o=a.value.find(n=>n.id===e.value?.id);o&&(e.value=o)};return V(()=>{t.bus.on("change",p)}),F(()=>{t.bus.off("change",p)}),{currentGuestSession:u,currentSession:g(e),sessions:g(a)}}function E(t,s,e){return"userId"in t?!e.slice(0,s).some(a=>"userId"in a&&a.userId===t.userId):!0}const T={name:"AccountOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var Z=function(){var t=this,s=t._self._c;return s("span",t._b({staticClass:"material-design-icon account-outline-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M12,4A4,4 0 0,1 16,8A4,4 0 0,1 12,12A4,4 0 0,1 8,8A4,4 0 0,1 12,4M12,6A2,2 0 0,0 10,8A2,2 0 0,0 12,10A2,2 0 0,0 14,8A2,2 0 0,0 12,6M12,13C14.67,13 20,14.33 20,17V20H4V17C4,14.33 9.33,13 12,13M12,14.9C9.03,14.9 5.9,16.36 5.9,17V18.1H18.1V17C18.1,16.36 14.97,14.9 12,14.9Z"}},[t.title?s("title",[t._v(t._s(t.title))]):t._e()])])])},J=[],K=m(T,Z,J,!1,null,null);const Q=K.exports,R={name:"AvatarWrapper",components:{NcAvatar:x,AccountOutlineIcon:Q},props:{session:{type:Object,required:!0}},computed:{sessionAvatarStyle(){return{...this.sessionBackgroundStyle,"border-color":this.session.color}},sessionBackgroundStyle(){return{"background-color":this.session.userId?this.session.color+" !important":"var(--color-background-dark)"}},guestInitial(){return this.session.guestName===""?"?":this.session.guestName.slice(0,1).toUpperCase()}}};var X=function(){var t=this,s=t._self._c;return s("div",{staticClass:"avatar-wrapper",style:t.sessionAvatarStyle},[t.session.userId?s("NcAvatar",{attrs:{user:t.session.userId,"is-guest":!1,"disable-menu":!0,"hide-status":"","disable-tooltip":!0}}):s("div",{staticClass:"avatar",style:t.sessionBackgroundStyle},[t.session.guestName?[t._v(" "+t._s(t.guestInitial)+" ")]:s("AccountOutlineIcon")],2)],1)},Y=[],tt=m(R,X,Y,!1,null,"b9aa9c07");const N=tt.exports,et={__name:"GuestNameDialog",props:{session:{type:Object,required:!0}},emits:["update:session"],setup(t,{emit:s}){const e=t,{connection:a}=f(),{editor:u}=k(),{updateUser:p}=B(u),i=d(!1),c=d(!1),o=d(e.session.guestName);return h(()=>e.session.guestName,n=>{i.value||(o.value=n)}),{__sfc:!0,props:e,emit:s,connection:a,editor:u,updateUser:p,editing:i,loading:c,guestName:o,setGuestName:async()=>{if(!a.value){_(l("text","Not connected. Cannot update guest name."));return}const n=e.session.guestName;c.value=!0;try{const r=await M(o.value,a.value);c.value=!1,i.value=!1;try{localStorage.setItem("nick",r.guestName)}catch(y){console.warn("Could not store guest name in local storage.",y)}s("update:session",r),p(r)}catch(r){c.value=!1,console.warn("Failed to update the session",{error:r}),b(l("text","Failed to update the guest name.")),o.value=n}},t:l,NcButton:v,NcInputField:w,CheckIcon:G,PencilOutlineIcon:I,AvatarWrapper:N}}};var st=function(){var t=this,s=t._self._c,e=t._self._setupProxy;return s("li",[e.editing?s("form",{staticClass:"guest-name-dialog",attrs:{title:e.t("text","Enter your name so other people can see who is editing")},on:{submit:function(a){return a.preventDefault(),e.setGuestName.apply(null,arguments)}}},[s(e.NcInputField,{attrs:{maxlength:"60",disabled:e.loading,label:e.t("text","Enter your name"),placeholder:e.t("text","Guest")},model:{value:e.guestName,callback:function(a){e.guestName=a},expression:"guestName"}}),s(e.NcButton,{attrs:{variant:"primary","aria-label":e.t("text","submit")},on:{click:e.setGuestName},scopedSlots:t._u([{key:"icon",fn:function(){return[s(e.CheckIcon,{attrs:{size:20}})]},proxy:!0}],null,!1,1971559621)})],1):[s(e.AvatarWrapper,{attrs:{session:t.session}}),s("span",{staticClass:"session-label guest"},[t._v(" "+t._s(e.guestName||e.t("text","you"))+" ")]),s(e.NcButton,{attrs:{"aria-label":e.t("text","edit")},on:{click:function(a){e.editing=!0}},scopedSlots:t._u([{key:"icon",fn:function(){return[s(e.PencilOutlineIcon,{attrs:{size:20}})]},proxy:!0}])})]],2)},at=[],it=m(et,st,at,!1,null,"c5c78adf");const nt=it.exports,ot={name:"SessionList",components:{AccountMultipleOutlineIcon:L,AvatarWrapper:N,GuestNameDialog:nt,NcButton:v,NcPopover:S},setup(){const{isPublic:t}=D(),{syncService:s}=W(),{currentGuestSession:e,currentSession:a,sessions:u}=U(s);return{currentGuestSession:e,currentSession:a,sessions:u,isPublic:t}},computed:{label(){return l("text","Active people")},sessionList(){return this.showGuestNameDialog?this.remoteSessions:this.sessions},remoteSessions(){return this.sessions.filter(t=>t.id!==this.currentSession?.id)},showGuestNameDialog(){return this.isPublic&&this.currentGuestSession},avatarStyle(){return t=>({opacity:t.lastContact>Date.now()/1e3-O?1:.5})},sessionsForTriggerButton(){return this.remoteSessions.slice(0,3)}},methods:{t:l,displayNameOrGuestName:t=>t.userId?t.displayName:`${t.guestName||l("text","Guest")} (${l("text","guest")})`}};var rt=function(){var t=this,s=t._self._c;return s("NcPopover",{staticClass:"session-list",attrs:{"no-focus-trap":!t.showGuestNameDialog,placement:"bottom"},scopedSlots:t._u([{key:"trigger",fn:function({attrs:e}){return[s("div",[s("NcButton",t._b({staticClass:"avatar-list",attrs:{title:t.label,"aria-label":t.label,variant:"tertiary"},scopedSlots:t._u([{key:"icon",fn:function(){return[s("AccountMultipleOutlineIcon",{attrs:{size:20}}),t._l(t.sessionsForTriggerButton,function(a){return s("AvatarWrapper",{key:a.id,attrs:{session:a}})})]},proxy:!0}],null,!0)},"NcButton",e,!1))],1)]}},{key:"default",fn:function(){return[s("div",{staticClass:"session-menu"},[t._t("lastSaved"),s("ul",[t.showGuestNameDialog?s("GuestNameDialog",{attrs:{session:t.currentGuestSession},on:{"update:session":function(e){t.currentGuestSession=e}}}):t._e(),t._l(t.sessionList,function(e){return s("li",{key:e.id,style:t.avatarStyle(e)},[s("AvatarWrapper",{attrs:{session:e}}),s("span",{staticClass:"session-label",class:!e.userId&&"guest"},[t._v(" "+t._s(t.displayNameOrGuestName(e))+" ")])],1)})],2)],2)]},proxy:!0}],null,!0)})},lt=[],ut=m(ot,rt,lt,!1,null,"86376ae7");const kt=ut.exports;export{kt as default}; //# sourceMappingURL=SessionList-C71aaTYc.chunk.mjs.map