2525 :href =" contact.profileUrl"
2626 class =" contact__avatar-wrapper" >
2727 <NcAvatar class="contact__avatar"
28- :is-no-user =" true "
28+ :size =" 44 "
29+ :user =" contact .isUser ? contact .uid : undefined "
30+ :is-no-user =" ! contact .isUser "
2931 :display-name =" contact .avatarLabel "
30- :url =" contact .avatar " />
32+ :url =" contact .avatar "
33+ :preloaded-user-status =" preloadedUserStatus " />
3134 </a >
3235 <a v-else-if =" contact.profileUrl"
3336 :href =" contact.profileUrl" >
3437 <NcAvatar class="contact__avatar"
35- :is-no-user =" true "
36- :display-name =" contact .avatarLabel " />
38+ :size =" 44 "
39+ :user =" contact .isUser ? contact .uid : undefined "
40+ :is-no-user =" ! contact .isUser "
41+ :display-name =" contact .avatarLabel "
42+ :preloaded-user-status =" preloadedUserStatus " />
3743 </a >
3844 <NcAvatar v-else
45+ :size =" 44 "
3946 class="contact__avatar"
40- :is-no-user =" true "
47+ :user =" contact .isUser ? contact .uid : undefined "
48+ :is-no-user =" ! contact .isUser "
4149 :display-name =" contact .avatarLabel "
42- :url =" contact .avatar " />
50+ :url =" contact .avatar "
51+ :preloaded-user-status =" preloadedUserStatus " />
4352
4453 <a class =" contact__body"
4554 :href =" contact.profileUrl || contact.topAction?.hyperlink" >
4655 <div class =" contact__body__full-name" >{{ contact.fullName }}</div >
4756 <div v-if =" contact.lastMessage" class =" contact__body__last-message" >{{ contact.lastMessage }}</div >
48- <div class =" contact__body__email-address" >{{ contact.emailAddresses[0] }}</div >
57+ <div v-if =" contact.statusMessage" class =" contact__body__status-message" >{{ contact.statusMessage }}</div >
58+ <div v-else class =" contact__body__email-address" >{{ contact.emailAddresses[0] }}</div >
4959 </a >
5060 <NcActions v-if =" actions .length "
5161 :inline =" contact .topAction ? 1 : 0 " >
@@ -97,6 +107,16 @@ export default {
97107 }
98108 return this .contact .actions
99109 },
110+ preloadedUserStatus () {
111+ if (this .contact .status ) {
112+ return {
113+ status: this .contact .status ,
114+ message: this .contact .statusMessage ,
115+ icon: this .contact .statusIcon ,
116+ }
117+ }
118+ return undefined
119+ }
100120 },
101121}
102122 </script >
@@ -118,28 +138,32 @@ export default {
118138 }
119139
120140 & __avatar-wrapper {
121- height : 32px ;
122141 }
123142
124143 & __avatar {
125- height : 32px ;
126- width : 32px ;
127144 display : inherit ;
128145 }
129146
130147 & __body {
131148 flex-grow : 1 ;
132- padding-left : 8 px ;
149+ padding-left : 10 px ;
133150 min-width : 0 ;
134151
135152 div {
136153 position : relative ;
137154 width : 100% ;
138155 overflow-x : hidden ;
139156 text-overflow : ellipsis ;
157+ margin : -1px 0 ;
158+ }
159+ div :first-of-type {
160+ margin-top : 0 ;
161+ }
162+ div :last-of-type {
163+ margin-bottom : 0 ;
140164 }
141165
142- .last -message , .email -address {
166+ & __last -message , & __status-message , & __email -address {
143167 color : var (--color-text-maxcontrast );
144168 }
145169 }
0 commit comments