yandere_fe/src/components/remove_follower_button/remove_follower_button.js

49 lines
1.2 KiB
JavaScript
Raw Normal View History

2022-09-27 18:47:50 -04:00
import ConfirmModal from '../confirm_modal/confirm_modal.vue'
export default {
2022-09-27 18:47:50 -04:00
props: ['user', 'relationship'],
data () {
return {
2022-09-27 18:47:50 -04:00
inProgress: false,
showingConfirmRemoveFollower: false
}
},
2022-09-27 18:47:50 -04:00
components: {
ConfirmModal
},
computed: {
label () {
if (this.inProgress) {
return this.$t('user_card.follow_progress')
} else {
return this.$t('user_card.remove_follower')
}
2022-09-27 18:47:50 -04:00
},
shouldConfirmRemoveUserFromFollowers () {
return this.$store.getters.mergedConfig.modalOnRemoveUserFromFollowers
}
},
methods: {
2022-09-27 18:47:50 -04:00
showConfirmRemoveUserFromFollowers () {
this.showingConfirmRemoveFollower = true
},
hideConfirmRemoveUserFromFollowers () {
this.showingConfirmRemoveFollower = false
},
onClick () {
2022-09-27 18:47:50 -04:00
if (!this.shouldConfirmRemoveUserFromFollowers) {
this.doRemoveUserFromFollowers()
} else {
this.showConfirmRemoveUserFromFollowers()
}
},
doRemoveUserFromFollowers () {
this.inProgress = true
this.$store.dispatch('removeUserFromFollowers', this.relationship.id).then(() => {
this.inProgress = false
})
2022-09-27 18:47:50 -04:00
this.hideConfirmRemoveUserFromFollowers()
}
}
}