diff --git a/src/components/extra_buttons/extra_buttons.js b/src/components/extra_buttons/extra_buttons.js deleted file mode 100644 index b3e1cb2bb..000000000 --- a/src/components/extra_buttons/extra_buttons.js +++ /dev/null @@ -1,175 +0,0 @@ -import Popover from '../popover/popover.vue' -import genRandomSeed from '../../services/random_seed/random_seed.service.js' -import ConfirmModal from '../confirm_modal/confirm_modal.vue' -import StatusBookmarkFolderMenu from '../status_bookmark_folder_menu/status_bookmark_folder_menu.vue' -import { library } from '@fortawesome/fontawesome-svg-core' -import { - faEllipsisH, - faBookmark, - faEyeSlash, - faThumbtack, - faShareAlt, - faExternalLinkAlt, - faHistory, - faPlus, - faTimes -} from '@fortawesome/free-solid-svg-icons' -import { - faBookmark as faBookmarkReg, - faFlag -} from '@fortawesome/free-regular-svg-icons' - -library.add( - faEllipsisH, - faBookmark, - faBookmarkReg, - faEyeSlash, - faThumbtack, - faShareAlt, - faExternalLinkAlt, - faFlag, - faHistory, - faPlus, - faTimes -) - -const ExtraButtons = { - props: ['status'], - components: { - Popover, - ConfirmModal, - StatusBookmarkFolderMenu - }, - data () { - return { - expanded: false, - showingDeleteDialog: false, - randomSeed: genRandomSeed() - } - }, - methods: { - onShow () { - this.expanded = true - }, - onClose () { - this.expanded = false - }, - deleteStatus () { - if (this.shouldConfirmDelete) { - this.showDeleteStatusConfirmDialog() - } else { - this.doDeleteStatus() - } - }, - doDeleteStatus () { - this.$store.dispatch('deleteStatus', { id: this.status.id }) - this.hideDeleteStatusConfirmDialog() - }, - showDeleteStatusConfirmDialog () { - this.showingDeleteDialog = true - }, - hideDeleteStatusConfirmDialog () { - this.showingDeleteDialog = false - }, - pinStatus () { - this.$store.dispatch('pinStatus', this.status.id) - .then(() => this.$emit('onSuccess')) - .catch(err => this.$emit('onError', err.error.error)) - }, - unpinStatus () { - this.$store.dispatch('unpinStatus', this.status.id) - .then(() => this.$emit('onSuccess')) - .catch(err => this.$emit('onError', err.error.error)) - }, - muteConversation () { - this.$store.dispatch('muteConversation', this.status.id) - .then(() => this.$emit('onSuccess')) - .catch(err => this.$emit('onError', err.error.error)) - }, - unmuteConversation () { - this.$store.dispatch('unmuteConversation', this.status.id) - .then(() => this.$emit('onSuccess')) - .catch(err => this.$emit('onError', err.error.error)) - }, - copyLink () { - navigator.clipboard.writeText(this.statusLink) - .then(() => this.$emit('onSuccess')) - .catch(err => this.$emit('onError', err.error.error)) - }, - bookmarkStatus () { - this.$store.dispatch('bookmark', { id: this.status.id }) - .then(() => this.$emit('onSuccess')) - .catch(err => this.$emit('onError', err.error.error)) - }, - unbookmarkStatus () { - this.$store.dispatch('unbookmark', { id: this.status.id }) - .then(() => this.$emit('onSuccess')) - .catch(err => this.$emit('onError', err.error.error)) - }, - reportStatus () { - this.$store.dispatch('openUserReportingModal', { userId: this.status.user.id, statusIds: [this.status.id] }) - }, - editStatus () { - this.$store.dispatch('fetchStatusSource', { id: this.status.id }) - .then(data => this.$store.dispatch('openEditStatusModal', { - statusId: this.status.id, - subject: data.spoiler_text, - statusText: data.text, - statusIsSensitive: this.status.nsfw, - statusPoll: this.status.poll, - statusFiles: [...this.status.attachments], - visibility: this.status.visibility, - statusContentType: data.content_type - })) - }, - showStatusHistory () { - const originalStatus = { ...this.status } - const stripFieldsList = ['attachments', 'created_at', 'emojis', 'text', 'raw_html', 'nsfw', 'poll', 'summary', 'summary_raw_html'] - stripFieldsList.forEach(p => delete originalStatus[p]) - this.$store.dispatch('openStatusHistoryModal', originalStatus) - } - }, - computed: { - currentUser () { return this.$store.state.users.currentUser }, - canDelete () { - if (!this.currentUser) { return } - return this.currentUser.privileges.includes('messages_delete') || this.status.user.id === this.currentUser.id - }, - ownStatus () { - return this.status.user.id === this.currentUser.id - }, - canPin () { - return this.ownStatus && (this.status.visibility === 'public' || this.status.visibility === 'unlisted') - }, - canMute () { - return !!this.currentUser - }, - canBookmark () { - return !!this.currentUser - }, - bookmarkFolders () { - return this.$store.state.instance.pleromaBookmarkFoldersAvailable - }, - statusLink () { - return `${this.$store.state.instance.server}${this.$router.resolve({ name: 'conversation', params: { id: this.status.id } }).href}` - }, - isEdited () { - return this.status.edited_at !== null - }, - editingAvailable () { return this.$store.state.instance.editingAvailable }, - shouldConfirmDelete () { - return this.$store.getters.mergedConfig.modalOnDelete - }, - triggerAttrs () { - return { - title: this.$t('status.more_actions'), - id: `popup-trigger-${this.randomSeed}`, - 'aria-controls': `popup-menu-${this.randomSeed}`, - 'aria-expanded': this.expanded, - 'aria-haspopup': 'menu' - } - } - } -} - -export default ExtraButtons diff --git a/src/components/extra_buttons/extra_buttons.vue b/src/components/extra_buttons/extra_buttons.vue deleted file mode 100644 index f58116759..000000000 --- a/src/components/extra_buttons/extra_buttons.vue +++ /dev/null @@ -1,236 +0,0 @@ - - - - - diff --git a/src/components/favorite_button/favorite_button.js b/src/components/favorite_button/favorite_button.js deleted file mode 100644 index cf3378c90..000000000 --- a/src/components/favorite_button/favorite_button.js +++ /dev/null @@ -1,49 +0,0 @@ -import { mapGetters } from 'vuex' -import { library } from '@fortawesome/fontawesome-svg-core' -import { - faStar, - faPlus, - faMinus, - faCheck -} from '@fortawesome/free-solid-svg-icons' -import { - faStar as faStarRegular -} from '@fortawesome/free-regular-svg-icons' - -library.add( - faStar, - faStarRegular, - faPlus, - faMinus, - faCheck -) - -const FavoriteButton = { - props: ['status', 'loggedIn'], - data () { - return { - animated: false - } - }, - methods: { - favorite () { - if (!this.status.favorited) { - this.$store.dispatch('favorite', { id: this.status.id }) - } else { - this.$store.dispatch('unfavorite', { id: this.status.id }) - } - this.animated = true - setTimeout(() => { - this.animated = false - }, 500) - } - }, - computed: { - ...mapGetters(['mergedConfig']), - remoteInteractionLink () { - return this.$store.getters.remoteInteractionLink({ statusId: this.status.id }) - } - } -} - -export default FavoriteButton diff --git a/src/components/favorite_button/favorite_button.vue b/src/components/favorite_button/favorite_button.vue deleted file mode 100644 index 2e0dd0476..000000000 --- a/src/components/favorite_button/favorite_button.vue +++ /dev/null @@ -1,114 +0,0 @@ - - - - - diff --git a/src/components/react_button/react_button.js b/src/components/react_button/react_button.js deleted file mode 100644 index 0d2521556..000000000 --- a/src/components/react_button/react_button.js +++ /dev/null @@ -1,54 +0,0 @@ -import Popover from '../popover/popover.vue' -import EmojiPicker from '../emoji_picker/emoji_picker.vue' -import { library } from '@fortawesome/fontawesome-svg-core' -import { faPlus, faTimes } from '@fortawesome/free-solid-svg-icons' -import { faSmileBeam } from '@fortawesome/free-regular-svg-icons' - -library.add( - faPlus, - faTimes, - faSmileBeam -) - -const ReactButton = { - props: ['status'], - data () { - return { - filterWord: '', - expanded: false - } - }, - components: { - Popover, - EmojiPicker - }, - methods: { - addReaction (event) { - const emoji = event.insertion - const existingReaction = this.status.emoji_reactions.find(r => r.name === emoji) - if (existingReaction && existingReaction.me) { - this.$store.dispatch('unreactWithEmoji', { id: this.status.id, emoji }) - } else { - this.$store.dispatch('reactWithEmoji', { id: this.status.id, emoji }) - } - }, - show () { - if (!this.expanded) { - this.$refs.picker.showPicker() - } - }, - onShow () { - this.expanded = true - }, - onClose () { - this.expanded = false - } - }, - computed: { - hideCustomEmoji () { - return !this.$store.state.instance.pleromaCustomEmojiReactionsAvailable - } - } -} - -export default ReactButton diff --git a/src/components/react_button/react_button.vue b/src/components/react_button/react_button.vue deleted file mode 100644 index 579b0e16c..000000000 --- a/src/components/react_button/react_button.vue +++ /dev/null @@ -1,115 +0,0 @@ - - - - - diff --git a/src/components/reply_button/reply_button.js b/src/components/reply_button/reply_button.js deleted file mode 100644 index 543d25ac2..000000000 --- a/src/components/reply_button/reply_button.js +++ /dev/null @@ -1,27 +0,0 @@ -import { library } from '@fortawesome/fontawesome-svg-core' -import { - faReply, - faPlus, - faTimes -} from '@fortawesome/free-solid-svg-icons' - -library.add( - faReply, - faPlus, - faTimes -) - -const ReplyButton = { - name: 'ReplyButton', - props: ['status', 'replying'], - computed: { - loggedIn () { - return !!this.$store.state.users.currentUser - }, - remoteInteractionLink () { - return this.$store.getters.remoteInteractionLink({ statusId: this.status.id }) - } - } -} - -export default ReplyButton diff --git a/src/components/reply_button/reply_button.vue b/src/components/reply_button/reply_button.vue deleted file mode 100644 index 87c06e391..000000000 --- a/src/components/reply_button/reply_button.vue +++ /dev/null @@ -1,96 +0,0 @@ - - - - - diff --git a/src/components/retweet_button/retweet_button.js b/src/components/retweet_button/retweet_button.js deleted file mode 100644 index 198b6c14b..000000000 --- a/src/components/retweet_button/retweet_button.js +++ /dev/null @@ -1,68 +0,0 @@ -import ConfirmModal from '../confirm_modal/confirm_modal.vue' -import { library } from '@fortawesome/fontawesome-svg-core' -import { - faRetweet, - faPlus, - faMinus, - faCheck -} from '@fortawesome/free-solid-svg-icons' - -library.add( - faRetweet, - faPlus, - faMinus, - faCheck -) - -const RetweetButton = { - props: ['status', 'loggedIn', 'visibility'], - components: { - ConfirmModal - }, - data () { - return { - animated: false, - showingConfirmDialog: false - } - }, - methods: { - retweet () { - if (!this.status.repeated && this.shouldConfirmRepeat) { - this.showConfirmDialog() - } else { - this.doRetweet() - } - }, - doRetweet () { - if (!this.status.repeated) { - this.$store.dispatch('retweet', { id: this.status.id }) - } else { - this.$store.dispatch('unretweet', { id: this.status.id }) - } - this.animated = true - setTimeout(() => { - this.animated = false - }, 500) - this.hideConfirmDialog() - }, - showConfirmDialog () { - this.showingConfirmDialog = true - }, - hideConfirmDialog () { - this.showingConfirmDialog = false - } - }, - computed: { - mergedConfig () { - return this.$store.getters.mergedConfig - }, - remoteInteractionLink () { - return this.$store.getters.remoteInteractionLink({ statusId: this.status.id }) - }, - shouldConfirmRepeat () { - return this.mergedConfig.modalOnRepeat - } - } -} - -export default RetweetButton diff --git a/src/components/retweet_button/retweet_button.vue b/src/components/retweet_button/retweet_button.vue deleted file mode 100644 index adda9a429..000000000 --- a/src/components/retweet_button/retweet_button.vue +++ /dev/null @@ -1,133 +0,0 @@ - - - - - diff --git a/src/components/status/status.js b/src/components/status/status.js index 903542564..86acaada6 100644 --- a/src/components/status/status.js +++ b/src/components/status/status.js @@ -1,8 +1,3 @@ -import ReplyButton from '../reply_button/reply_button.vue' -import FavoriteButton from '../favorite_button/favorite_button.vue' -import ReactButton from '../react_button/react_button.vue' -import RetweetButton from '../retweet_button/retweet_button.vue' -import ExtraButtons from '../extra_buttons/extra_buttons.vue' import PostStatusForm from '../post_status_form/post_status_form.vue' import UserAvatar from '../user_avatar/user_avatar.vue' import AvatarList from '../avatar_list/avatar_list.vue' @@ -103,11 +98,6 @@ const controlledOrUncontrolledSet = (obj, name, val) => { const Status = { name: 'Status', components: { - ReplyButton, - FavoriteButton, - ReactButton, - RetweetButton, - ExtraButtons, PostStatusForm, UserAvatar, AvatarList, diff --git a/src/components/status/status.vue b/src/components/status/status.vue index 4e6c3f2d1..dfae2f72f 100644 --- a/src/components/status/status.vue +++ b/src/components/status/status.vue @@ -541,37 +541,6 @@ :replying="replying" @toggleReplying="toggleReplying" /> -
- - - - - -