2018-04-09 10:44:37 -07:00
|
|
|
import Status from '../status/status.vue'
|
2019-02-02 12:33:02 -08:00
|
|
|
import UserAvatar from '../user_avatar/user_avatar.vue'
|
2019-03-05 11:01:49 -08:00
|
|
|
import UserCard from '../user_card/user_card.vue'
|
2018-06-18 02:09:14 -07:00
|
|
|
import { highlightClass, highlightStyle } from '../../services/user_highlighter/user_highlighter.js'
|
2018-12-13 08:57:11 -08:00
|
|
|
import generateProfileLink from 'src/services/user_profile_link_generator/user_profile_link_generator'
|
2018-04-09 10:44:37 -07:00
|
|
|
|
|
|
|
const Notification = {
|
|
|
|
data () {
|
|
|
|
return {
|
2018-11-30 05:39:07 -08:00
|
|
|
userExpanded: false,
|
|
|
|
betterShadow: this.$store.state.interface.browserSupport.cssFilter
|
2018-04-09 10:44:37 -07:00
|
|
|
}
|
|
|
|
},
|
2018-12-28 11:39:54 -08:00
|
|
|
props: [ 'notification' ],
|
2018-04-09 10:44:37 -07:00
|
|
|
components: {
|
2019-03-05 11:01:49 -08:00
|
|
|
Status, UserAvatar, UserCard
|
2018-04-09 10:44:37 -07:00
|
|
|
},
|
|
|
|
methods: {
|
|
|
|
toggleUserExpanded () {
|
|
|
|
this.userExpanded = !this.userExpanded
|
2018-12-16 15:52:27 -08:00
|
|
|
},
|
|
|
|
userProfileLink (user) {
|
2018-12-26 05:50:48 -08:00
|
|
|
return generateProfileLink(user.id, user.screen_name, this.$store.state.instance.restrictedNicknames)
|
2018-04-09 10:44:37 -07:00
|
|
|
}
|
2018-06-18 02:09:14 -07:00
|
|
|
},
|
|
|
|
computed: {
|
|
|
|
userClass () {
|
2019-03-31 18:59:18 -07:00
|
|
|
return highlightClass(this.notification.from_profile)
|
2018-06-18 02:09:14 -07:00
|
|
|
},
|
|
|
|
userStyle () {
|
2018-06-19 06:17:50 -07:00
|
|
|
const highlight = this.$store.state.config.highlight
|
2019-03-31 18:59:18 -07:00
|
|
|
const user = this.notification.from_profile
|
2018-08-04 19:18:04 -07:00
|
|
|
return highlightStyle(highlight[user.screen_name])
|
2019-04-01 07:26:13 -07:00
|
|
|
},
|
|
|
|
userInStore () {
|
|
|
|
return this.$store.getters.findUser(this.notification.action.user.id)
|
|
|
|
},
|
|
|
|
user () {
|
|
|
|
if (this.userInStore) {
|
|
|
|
return this.userInStore
|
|
|
|
}
|
|
|
|
return {}
|
2018-06-19 06:17:50 -07:00
|
|
|
}
|
2018-04-09 10:44:37 -07:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
export default Notification
|