mirror of
https://github.com/nextcloud/server.git
synced 2026-11-02 20:11:47 +01:00
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
3 lines
15 KiB
JavaScript
3 lines
15 KiB
JavaScript
import{d as ye,a as ee}from"./livePhotoUtils-CVUhgL4S.chunk.mjs";import{c as D}from"./index-DHyMMYTN.chunk.mjs";import{b as ae}from"./translations-pLZlvQeM.chunk.mjs";import{f as M,a as O,d as le}from"./star-outline-BpDZzOb8.chunk.mjs";import{N as ge}from"./NcActionButton-BvGszxyz.chunk.mjs";import{N as ke}from"./NcActionLink-DvEArNRM.chunk.mjs";import{N as Ce}from"./NcActionRouter-X9XmAaxE.chunk.mjs";import{a as be}from"./NcModal-BxLzaUZK.chunk.mjs";import{N as te}from"./NcAvatar-RT0QIft7.chunk.mjs";import{N as re}from"./Link-CUdpEe-t.chunk.mjs";import{N as ie}from"./Check-CEU1oy_I.chunk.mjs";import{N as we}from"./NcRichText-BQgo5yW3.chunk.mjs";import{a as Ie}from"./TrayArrowDown-vMg8Cl05.chunk.mjs";import{r as Ne,m as Se,a as y}from"./_l10n-CK24vgHE.chunk.mjs";import{l as T}from"./MapMarkerOutline-Ip3bQdll.chunk.mjs";import{N as se}from"./ArrowRight-COu6qSN5.chunk.mjs";import{e as ze,q as N,C as A,v as Ae,o as t,f as i,p as g,u as _,G as L,l as d,k as b,w,h as u,m as I,K as Z,t as p,I as oe,n as F,z as S,H as Me,i as h}from"./PencilOutline-C4ZkKkas.chunk.mjs";import"./index-D6fZh9CR.chunk.mjs";import"./formatRelative-uuSCBZ1C.chunk.mjs";import"./Web-BMG0zIln.chunk.mjs";import"./File-xDTWu8L0.chunk.mjs";import"./autolink-D1sObkXs.chunk.mjs";import"./colors-B1T-jIOW.chunk.mjs";import"./NcUserStatusIcon-CWV4DI9J.chunk.mjs";import"./NcActionText-BWO7oBCL.chunk.mjs";import"./NcCheckboxRadioSwitch-BgZXg73g.chunk.mjs";const Le={name:"BriefcaseOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Ue=["aria-hidden","aria-label"],Ve=["fill","width","height"],xe={d:"M20,6C20.58,6 21.05,6.2 21.42,6.59C21.8,7 22,7.45 22,8V19C22,19.55 21.8,20 21.42,20.41C21.05,20.8 20.58,21 20,21H4C3.42,21 2.95,20.8 2.58,20.41C2.2,20 2,19.55 2,19V8C2,7.45 2.2,7 2.58,6.59C2.95,6.2 3.42,6 4,6H8V4C8,3.42 8.2,2.95 8.58,2.58C8.95,2.2 9.42,2 10,2H14C14.58,2 15.05,2.2 15.42,2.58C15.8,2.95 16,3.42 16,4V6H20M4,8V19H20V8H4M14,6V4H10V6H14Z"},He={key:0};function Be(s,a,r,f,l,c){return t(),i("span",I(s.$attrs,{"aria-hidden":r.title?null:"true","aria-label":r.title,class:"material-design-icon briefcase-outline-icon",role:"img",onClick:a[0]||(a[0]=o=>s.$emit("click",o))}),[(t(),i("svg",{fill:r.fillColor,class:"material-design-icon__svg",width:r.size,height:r.size,viewBox:"0 0 24 24"},[d("path",xe,[r.title?(t(),i("title",He,p(r.title),1)):u("",!0)])],8,Ve))],16,Ue)}const $e=M(Le,[["render",Be]]),De={name:"ClockOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Oe=["aria-hidden","aria-label"],Te=["fill","width","height"],Ze={d:"M12,20A8,8 0 0,0 20,12A8,8 0 0,0 12,4A8,8 0 0,0 4,12A8,8 0 0,0 12,20M12,2A10,10 0 0,1 22,12A10,10 0 0,1 12,22C6.47,22 2,17.5 2,12A10,10 0 0,1 12,2M12.5,7V12.25L17,14.92L16.25,16.15L11,13V7H12.5Z"},Fe={key:0};function Pe(s,a,r,f,l,c){return t(),i("span",I(s.$attrs,{"aria-hidden":r.title?null:"true","aria-label":r.title,class:"material-design-icon clock-outline-icon",role:"img",onClick:a[0]||(a[0]=o=>s.$emit("click",o))}),[(t(),i("svg",{fill:r.fillColor,class:"material-design-icon__svg",width:r.size,height:r.size,viewBox:"0 0 24 24"},[d("path",Ze,[r.title?(t(),i("title",Fe,p(r.title),1)):u("",!0)])],8,Te))],16,Oe)}const We=M(De,[["render",Pe]]),Ee={name:"MapMarkerOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},qe=["aria-hidden","aria-label"],Ge=["fill","width","height"],Ke={d:"M12,6.5A2.5,2.5 0 0,1 14.5,9A2.5,2.5 0 0,1 12,11.5A2.5,2.5 0 0,1 9.5,9A2.5,2.5 0 0,1 12,6.5M12,2A7,7 0 0,1 19,9C19,14.25 12,22 12,22C12,22 5,14.25 5,9A7,7 0 0,1 12,2M12,4A5,5 0 0,0 7,9C7,10 7,12 12,18.71C17,12 17,10 17,9A5,5 0 0,0 12,4Z"},je={key:0};function Je(s,a,r,f,l,c){return t(),i("span",I(s.$attrs,{"aria-hidden":r.title?null:"true","aria-label":r.title,class:"material-design-icon map-marker-outline-icon",role:"img",onClick:a[0]||(a[0]=o=>s.$emit("click",o))}),[(t(),i("svg",{fill:r.fillColor,class:"material-design-icon__svg",width:r.size,height:r.size,viewBox:"0 0 24 24"},[d("path",Ke,[r.title?(t(),i("title",je,p(r.title),1)):u("",!0)])],8,Ge))],16,qe)}const Qe=M(Ee,[["render",Je]]),Re={name:"PencilOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Xe=["aria-hidden","aria-label"],Ye=["fill","width","height"],ea={d:"M14.06,9L15,9.94L5.92,19H5V18.08L14.06,9M17.66,3C17.41,3 17.15,3.1 16.96,3.29L15.13,5.12L18.88,8.87L20.71,7.04C21.1,6.65 21.1,6 20.71,5.63L18.37,3.29C18.17,3.09 17.92,3 17.66,3M14.06,6.19L3,17.25V21H6.75L17.81,9.94L14.06,6.19Z"},aa={key:0};function la(s,a,r,f,l,c){return t(),i("span",I(s.$attrs,{"aria-hidden":r.title?null:"true","aria-label":r.title,class:"material-design-icon pencil-outline-icon",role:"img",onClick:a[0]||(a[0]=o=>s.$emit("click",o))}),[(t(),i("svg",{fill:r.fillColor,class:"material-design-icon__svg",width:r.size,height:r.size,viewBox:"0 0 24 24"},[d("path",ea,[r.title?(t(),i("title",aa,p(r.title),1)):u("",!0)])],8,Ye))],16,Xe)}const ta=M(Re,[["render",la]]);Ne(Se);const ne=1800*1e3,W=new Map,P=new Map;function ue(s){const a=W.get(s);return a?Date.now()>=a.expiresAt?(W.delete(s),null):a.data:null}function U(s,a,r=ne){W.set(s,{data:a,expiresAt:Date.now()+r})}async function ra(s,a,r=ne){const f=ue(s);if(f)return f;const l=P.get(s);if(l)return l;const c=(async()=>{try{const o=await a();return o&&U(s,o,r),o}finally{P.delete(s)}})();return P.set(s,c),c}const ia=["aria-label"],sa={key:0,class:"profile-hover-card__loading"},oa={class:"profile-hover-card__header"},na={class:"profile-hover-card__header__container"},ua={key:1,class:"profile-hover-card__header__container__placeholder"},ca={class:"profile-hover-card__header__container__identity"},da={class:"profile-hover-card__header__container__displayname"},va=["href"],pa={key:1},fa={key:2,class:"profile-hover-card__header__container__pronoun-separator"},ma={key:3,class:"profile-hover-card__header__container__pronouns"},_a={key:0,class:"profile-hover-card__header__container__status"},ha={class:"profile-hover-card__header__container__status-content"},ya={class:"profile-hover-card__body"},ga={class:"profile-hover-card__content"},ka={class:"profile-hover-card__sidebar"},Ca={class:"user-actions"},ba={key:0,class:"user-actions__loading"},wa=["src"],Ia=["src"],Na={key:0,class:"profile-hover-card__blocks"},Sa={key:0,class:"profile-hover-card__blocks-details"},za={key:0,class:"detail"},Aa={key:0},Ma={key:1,class:"detail"},La={key:2,class:"detail"},Ua={key:0,class:"profile-hover-card__blocks-headline"},Va={key:1,class:"profile-hover-card__blocks-biography"},xa=ze({__name:"NcProfileHoverCard",props:{user:{default:null},displayName:{default:null},profile:{default:null},preloadedUserStatus:{default:null},open:{type:Boolean,default:!1},actions:{default:null},actionsLoading:{type:Boolean,default:!1}},setup(s){const a=s,r=N(!1),f=N(!1),l=N(a.profile),c=N(a.preloadedUserStatus??{}),o=N(!!a.profile),k=N(a.preloadedUserStatus!==null),V=Ie(),E=h(()=>r.value||!!l.value&&!f.value&&!k.value);a.user&&a.profile&&U(a.user,a.profile);const q=h(()=>!!a.user&&ee()?.uid===a.user),ce=O("/settings/user"),C=h(()=>{if(!o.value)return null;const e=l.value?.userId||a.user;return e?O("/u/{userId}",{userId:e}):null}),z=h(()=>l.value?.displayname||a.displayName||l.value?.userId||a.user||""),G=h(()=>C.value?{href:C.value,"aria-label":y("View profile")}:{});function K(e){return e.appId!=="timezone"&&e.appId!=="profile"&&e.id!=="profile"}function j(e){return q.value?e.text:e.id==="talk-call"||de(e)?y("Start call"):e.id==="talk"||e.appId==="spreed"?y("Send message"):e.text}function de(e){if(e.appId!=="spreed")return!1;const v=e.href??(typeof e.to=="string"?e.to:"");return typeof v=="string"&&v.includes("#direct-call")}const x=h(()=>a.actions&&a.actions.length>0?a.actions.filter(K):(l.value?.actions??[]).filter(K).map(e=>({id:e.id,appId:e.appId,text:e.title,href:e.target||void 0,icon:e.icon,target:e.id==="phone"?"_self":"_blank",rel:e.id==="fediverse"?"me":void 0}))),H=h(()=>{const e=pe(new Date);return e?y("Local time: {time}",{time:e}):null}),m=h(()=>x.value[0]),J=h(()=>x.value.slice(1)),ve=h(()=>{const e=m.value;return e?e.to?{to:e.to}:e.href?{href:e.href,target:e.target??(e.href.startsWith("tel:")?"_self":"_blank"),rel:e.rel}:{}:{}}),Q=h(()=>({status:c.value.status??null,icon:c.value.icon??null,message:c.value.message??null}));function pe(e){const v=l.value?.timezone;if(v)try{return new Intl.DateTimeFormat(ae(),{timeZone:v,hour:"2-digit",minute:"2-digit"}).format(e)}catch{}if(typeof l.value?.timezoneOffset=="number"){const n=new Date(e.getTime()+l.value.timezoneOffset*1e3);return new Intl.DateTimeFormat(ae(),{timeZone:"UTC",hour:"2-digit",minute:"2-digit"}).format(n)}return null}function R(e){return!!e&&(/^(https?:)?\/\//.test(e)||e.startsWith("/")||e.startsWith("data:"))}function fe(e){return e.to?Ce:e.onClick&&!e.href?ge:ke}function me(e){return e.to?{to:e.to,closeAfterClick:!0}:e.onClick&&!e.href?{onClick:e.onClick,closeAfterClick:!0}:{href:e.href,target:e.target??(e.href?.startsWith("tel:")?"_self":"_blank"),rel:e.rel,closeAfterClick:!0}}A(()=>a.profile,e=>{e&&(l.value=e,o.value=!0,a.user&&U(a.user,e),f.value=!1)}),A(()=>a.preloadedUserStatus,e=>{e&&(c.value=e,k.value=!0)}),A(()=>a.displayName,e=>{e&&l.value&&!o.value&&(l.value={...l.value,displayname:e})}),A(()=>a.user,()=>{l.value=a.profile,c.value=a.preloadedUserStatus??{},k.value=a.preloadedUserStatus!==null,o.value=!!a.profile,f.value=!1,a.user&&a.profile&&U(a.user,a.profile),a.open&&B()}),A(()=>a.open,e=>{e&&B()}),Ae(()=>{a.open&&B()});async function _e(e){if(a.displayName)return a.displayName;try{const{data:v}=await D.post(O("/displaynames"),{users:[e]});return v?.users?.[e]||e}catch(v){return T.debug("Failed to load display name for hovercard",{error:v,userId:e}),e}}async function X(e){return{userId:e,displayname:await _e(e),actions:[],isUserAvatarVisible:!0}}async function he(e){k.value||(c.value=await Y(e),k.value=!0)}async function B(){if(!a.user||r.value)return;const e=a.user;if(!l.value){const n=ue(e);n&&(l.value=n,o.value=!0)}if(l.value&&o.value){if(!k.value){r.value=!0;try{await he(e)}finally{r.value=!1}}return}r.value=!0,f.value=!1;const v=k.value?Promise.resolve(c.value):Y(e);try{const n=await ra(e,async()=>{const{data:$}=await D.get(le("/profile/{userId}",{userId:e}));return $.ocs?.data??null});n?(l.value=n,o.value=!0):(l.value=await X(e),o.value=!1)}catch(n){T.debug("Failed to load profile for hovercard, showing limited info",{error:n,user:e}),l.value=await X(e),o.value=!1}try{c.value=await v,k.value=!0}finally{r.value=!1}}async function Y(e){try{if(!ye()?.user_status?.enabled||!ee())return{};const{data:v}=await D.get(le("/apps/user_status/api/v1/statuses/{userId}",{userId:e}));return v.ocs?.data??{}}catch(v){return T.debug("Failed to load user status for hovercard",{error:v,userId:e}),{}}}return(e,v)=>(t(),i("div",{class:F(["profile-hover-card",{"profile-hover-card--limited":!E.value&&!!l.value&&!f.value&&!o.value}]),role:"dialog","aria-label":_(y)("Profile of {user}",{user:z.value})},[E.value?(t(),i("div",sa,[g(ie,{size:32,name:_(y)("Loading profile")},null,8,["name"])])):l.value&&!f.value?(t(),i(L,{key:1},[d("div",oa,[q.value?(t(),b(re,{key:0,class:"profile-hover-card__header__edit",variant:"tertiary","aria-label":_(y)("Edit profile"),title:_(y)("Edit profile"),href:_(ce),target:"_blank"},{icon:w(()=>[g(ta,{size:20})]),_:1},8,["aria-label","title","href"])):u("",!0),d("div",na,[_(V)?(t(),b(Z(C.value?"a":"div"),I({key:0,class:["profile-hover-card__header__container__avatar",{"profile-hover-card__profile-link":!!C.value}]},G.value),{default:w(()=>[g(te,{class:"avatar",user:l.value.userId,displayName:z.value,size:96,disableMenu:"",disableTooltip:"",preloadedUserStatus:Q.value,isNoUser:!l.value.isUserAvatarVisible},null,8,["user","displayName","preloadedUserStatus","isNoUser"])]),_:1},16,["class"])):(t(),i("div",ua)),d("div",ca,[d("div",da,[C.value?(t(),i("a",{key:0,class:"profile-hover-card__profile-link",href:C.value},[d("h2",null,p(z.value),1)],8,va)):(t(),i("h2",pa,p(z.value),1)),l.value.pronouns?(t(),i("span",fa,"·")):u("",!0),l.value.pronouns?(t(),i("span",ma,p(l.value.pronouns),1)):u("",!0)]),c.value.icon||c.value.message?(t(),i("div",_a,[d("span",ha,[d("span",null,p(c.value.icon)+" "+p(c.value.message),1)])])):u("",!0)])])]),d("div",ya,[d("div",ga,[d("div",ka,[_(V)?u("",!0):(t(),b(Z(C.value?"a":"div"),I({key:0,class:{"profile-hover-card__profile-link":!!C.value}},G.value),{default:w(()=>[g(te,{class:"avatar",user:l.value.userId,displayName:z.value,size:135,disableMenu:"",disableTooltip:"",preloadedUserStatus:Q.value,isNoUser:!l.value.isUserAvatarVisible},null,8,["user","displayName","preloadedUserStatus","isNoUser"])]),_:1},16,["class"])),d("div",Ca,[s.actionsLoading&&x.value.length===0?(t(),i("div",ba,[g(ie,{size:20,name:_(y)("Loading actions")},null,8,["name"])])):(t(),i(L,{key:1},[m.value?(t(),b(re,I({key:0,variant:"primary",class:"user-actions__primary"},ve.value,{onClick:m.value.onClick}),oe({default:w(()=>[S(" "+p(j(m.value)),1)]),_:2},[m.value.iconSvg||m.value.icon?{name:"icon",fn:w(()=>[m.value.iconSvg?(t(),b(_(se),{key:0,svg:m.value.iconSvg},null,8,["svg"])):R(m.value.icon)?(t(),i("img",{key:1,src:m.value.icon,alt:"",class:"user-actions__primary__icon"},null,8,wa)):(t(),i("span",{key:2,"aria-hidden":"true",class:F(["user-actions__primary__icon-class",m.value.icon])},null,2))]),key:"0"}:void 0]),1040,["onClick"])):u("",!0),J.value.length>0?(t(),b(be,{key:1,class:"user-actions__other",inline:_(V)?5:4},{default:w(()=>[(t(!0),i(L,null,Me(J.value,(n,$)=>(t(),b(Z(fe(n)),I({key:n.id||n.href||$},{ref_for:!0},me(n)),oe({default:w(()=>[S(" "+p(j(n)),1)]),_:2},[n.iconSvg||n.icon?{name:"icon",fn:w(()=>[n.iconSvg?(t(),b(_(se),{key:0,svg:n.iconSvg},null,8,["svg"])):R(n.icon)?(t(),i("img",{key:1,src:n.icon,alt:"",class:"user-actions__other__icon"},null,8,Ia)):(t(),i("span",{key:2,"aria-hidden":"true",class:F(["user-actions__other__icon-class",n.icon])},null,2))]),key:"0"}:void 0]),1040))),128))]),_:1},8,["inline"])):u("",!0)],64))])]),o.value?(t(),i("div",Na,[l.value.organisation||l.value.role||l.value.address||H.value?(t(),i("div",Sa,[l.value.organisation||l.value.role?(t(),i("div",za,[d("p",null,[g($e,{class:"detail-icon",size:16,title:""}),S(" "+p(l.value.organisation)+" ",1),l.value.organisation&&l.value.role?(t(),i("span",Aa,"•")):u("",!0),S(" "+p(l.value.role),1)])])):u("",!0),l.value.address?(t(),i("div",Ma,[d("p",null,[g(Qe,{class:"detail-icon",size:16,title:""}),S(" "+p(l.value.address),1)])])):u("",!0),H.value?(t(),i("div",La,[d("p",null,[g(We,{class:"detail-icon",size:16,title:""}),S(" "+p(H.value),1)])])):u("",!0)])):u("",!0),l.value.headline||l.value.biography?(t(),i(L,{key:1},[l.value.headline?(t(),i("h3",Ua,p(l.value.headline),1)):u("",!0),l.value.biography?(t(),i("div",Va,[g(we,{text:l.value.biography,useExtendedMarkdown:""},null,8,["text"])])):u("",!0)],64)):u("",!0)])):u("",!0)])])],64)):u("",!0)],10,ia))}}),sl=M(xa,[["__scopeId","data-v-592f6ec3"]]);export{sl as default};
|
|
//# sourceMappingURL=NcProfileHoverCard-RZrrM7IM.chunk.mjs.map
|