From 1aa0e8d7e026267aa2af82fbd18cf7521ad842e9 Mon Sep 17 00:00:00 2001 From: dave Date: Thu, 4 Apr 2019 12:47:25 -0400 Subject: #468 - pin/unpin status --- src/modules/statuses.js | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/modules/statuses.js') diff --git a/src/modules/statuses.js b/src/modules/statuses.js index 4c92d4e1..176e5f42 100644 --- a/src/modules/statuses.js +++ b/src/modules/statuses.js @@ -424,6 +424,10 @@ export const mutations = { newStatus.favoritedBy.push(user) } }, + setPinned (state, { status }) { + const newStatus = state.allStatusesObject[status.id] + newStatus.pinned = status.pinned + }, setRetweeted (state, { status, value }) { const newStatus = state.allStatusesObject[status.id] @@ -533,6 +537,9 @@ const statuses = { rootState.api.backendInteractor.unfavorite(status.id) .then(status => commit('setFavoritedConfirm', { status, user: rootState.users.currentUser })) }, + updatePinned ({ rootState, commit }, status) { + commit('setPinned', { status }) + }, retweet ({ rootState, commit }, status) { // Optimistic retweeting... commit('setRetweeted', { status, value: true }) -- cgit v1.2.3-70-g09d2 From 2c89d49a3d22ed2813a6a57fb6049341fa8624ba Mon Sep 17 00:00:00 2001 From: dave Date: Thu, 4 Apr 2019 15:10:34 -0400 Subject: #468 - show pinned timeline and add pinned label to the status --- src/components/conversation/conversation.js | 3 ++- src/components/conversation/conversation.vue | 1 + src/components/status/status.js | 3 ++- src/components/status/status.vue | 17 ++++++++++--- src/components/timeline/timeline.js | 3 ++- src/components/timeline/timeline.vue | 3 ++- src/components/user_profile/user_profile.js | 5 ++++ src/components/user_profile/user_profile.vue | 29 ++++++++++++++-------- src/modules/statuses.js | 3 ++- src/services/api/api.service.js | 14 +++++++++++ .../timeline_fetcher/timeline_fetcher.service.js | 6 +++++ 11 files changed, 69 insertions(+), 18 deletions(-) (limited to 'src/modules/statuses.js') diff --git a/src/components/conversation/conversation.js b/src/components/conversation/conversation.js index ffeb7244..fc239ee9 100644 --- a/src/components/conversation/conversation.js +++ b/src/components/conversation/conversation.js @@ -41,7 +41,8 @@ const conversation = { props: [ 'statusoid', 'collapsable', - 'isPage' + 'isPage', + 'pinned' ], created () { if (this.isPage) { diff --git a/src/components/conversation/conversation.vue b/src/components/conversation/conversation.vue index d04ff722..40011113 100644 --- a/src/components/conversation/conversation.vue +++ b/src/components/conversation/conversation.vue @@ -13,6 +13,7 @@ :key="status.id" :inlineExpanded="collapsable && isExpanded" :statusoid="status" + :pinned="pinned" :expandable='!isExpanded' :focused="focused(status.id)" :inConversation="isExpanded" diff --git a/src/components/status/status.js b/src/components/status/status.js index a3596b69..f2881742 100644 --- a/src/components/status/status.js +++ b/src/components/status/status.js @@ -26,7 +26,8 @@ const Status = { 'replies', 'isPreview', 'noHeading', - 'inlineExpanded' + 'inlineExpanded', + 'pinned' ], data () { return { diff --git a/src/components/status/status.vue b/src/components/status/status.vue index 0443e758..a5614f59 100644 --- a/src/components/status/status.vue +++ b/src/components/status/status.vue @@ -12,6 +12,13 @@