keanu-weblite/src/components/messages/MessageOperations.vue

49 lines
1.2 KiB
Vue
Raw Normal View History

2020-11-25 14:42:50 +01:00
<template>
2020-12-14 16:11:45 +01:00
<div :class="{'message-operations':true,'incoming':incoming,'outgoing':!incoming}">
<template v-for="(item,index) in emojis">
<v-btn v-if="index < maxRecents" :key="item.data" id="btn-quick-reaction" icon @click.stop="addQuickReaction(item.data)" class="ma-0 pa-0" dense>
2021-06-22 17:38:16 +05:30
<span class="recent-emoji">{{ item.data }}</span>
</v-btn>
</template>
<v-btn v-if="incoming" id="btn-reply" icon @click.stop="addReply" class="ma-0 pa-0" large>
2020-12-14 16:11:45 +01:00
<v-icon>reply</v-icon>
</v-btn>
<v-btn id="btn-more" icon @click.stop="more" class="ma-0 pa-0" large>
<v-icon>more_horiz</v-icon>
</v-btn> </div>
2020-11-25 14:42:50 +01:00
</template>
<script>
import messageMixin from "./messageMixin";
import messageOperationsMixin from "./messageOperationsMixin";
2020-11-25 14:42:50 +01:00
export default {
mixins: [messageMixin, messageOperationsMixin],
data() {
return {
maxRecents: 5
}
},
2020-11-25 14:42:50 +01:00
props: {
emojis: {
type: Array,
2020-11-25 14:42:50 +01:00
default: function () {
return []
2020-11-25 14:42:50 +01:00
}
}
2020-11-25 14:42:50 +01:00
},
2020-12-03 22:12:50 +01:00
watch: {
emojis: {
immediate: true,
handler(newVal, oldVal) {
console.log("Emojis changed", newVal, oldVal);
}
2020-12-14 16:11:45 +01:00
},
},
2020-11-25 14:42:50 +01:00
};
</script>
<style lang="scss">
@import "@/assets/css/chat.scss";
</style>