thelounge/client/components/UsernameFiltered.vue

41 lines
796 B
Vue
Raw Normal View History

2018-07-08 21:02:36 +02:00
<template>
<span
:class="['user', nickColor, {active: active}]"
2018-07-08 21:02:36 +02:00
:data-name="user.original.nick"
2018-07-08 22:08:08 +02:00
role="button"
@mouseover="hover"
2019-11-18 21:05:47 +01:00
@click.prevent="rightClick($event)"
2019-11-09 23:21:34 +01:00
@contextmenu.prevent="rightClick($event)"
v-html="user.original.mode + user.string"
/>
2018-07-08 21:02:36 +02:00
</template>
<script>
2019-11-16 18:24:03 +01:00
import colorClass from "../js/helpers/colorClass";
2018-07-08 21:02:36 +02:00
export default {
name: "UsernameFiltered",
props: {
user: Object,
active: Boolean,
2018-07-11 01:25:21 +02:00
onHover: Function,
2019-11-09 23:21:34 +01:00
contextMenuCallback: Function,
2018-07-11 01:25:21 +02:00
},
computed: {
nickColor() {
return colorClass(this.user.original.nick);
},
},
2018-07-11 01:25:21 +02:00
methods: {
hover() {
this.onHover ? this.onHover(this.user.original) : null;
},
2019-11-09 23:21:34 +01:00
rightClick($event) {
if (this.contextMenuCallback) {
this.contextMenuCallback($event, this.user);
}
},
2018-07-08 21:02:36 +02:00
},
};
</script>