logo

pleroma-fe

My custom branche(s) on git.pleroma.social/pleroma/pleroma-fe
commit: be6ebc176bf8e863aba7e099a9fde4aa4dca34b0
parent: 11f8a4f312675a82d5fed9c5e75fed63a8456ffc
Author: lambda <pleromagit@rogerbraun.net>
Date:   Wed, 14 Nov 2018 10:28:54 +0000

Merge branch 'dm-tab' into 'develop'

Direct Message tab

See merge request pleroma/pleroma-fe!374

Diffstat:

Msrc/boot/after_store.js2++
Asrc/components/dm_timeline/dm_timeline.js14++++++++++++++
Asrc/components/dm_timeline/dm_timeline.vue5+++++
Msrc/components/nav_panel/nav_panel.vue5+++++
Msrc/i18n/en.json1+
Msrc/modules/statuses.js3++-
Msrc/services/api/api.service.js2++
7 files changed, 31 insertions(+), 1 deletion(-)

diff --git a/src/boot/after_store.js b/src/boot/after_store.js @@ -8,6 +8,7 @@ import FriendsTimeline from '../components/friends_timeline/friends_timeline.vue import TagTimeline from '../components/tag_timeline/tag_timeline.vue' import ConversationPage from '../components/conversation-page/conversation-page.vue' import Mentions from '../components/mentions/mentions.vue' +import DMs from '../components/dm_timeline/dm_timeline.vue' import UserProfile from '../components/user_profile/user_profile.vue' import Settings from '../components/settings/settings.vue' import Registration from '../components/registration/registration.vue' @@ -88,6 +89,7 @@ const afterStoreSetup = ({store, i18n}) => { { name: 'conversation', path: '/notice/:id', component: ConversationPage, meta: { dontScroll: true } }, { name: 'user-profile', path: '/users/:id', component: UserProfile }, { name: 'mentions', path: '/:username/mentions', component: Mentions }, + { name: 'dms', path: '/:username/dms', component: DMs }, { name: 'settings', path: '/settings', component: Settings }, { name: 'registration', path: '/registration', component: Registration }, { name: 'registration', path: '/registration/:token', component: Registration }, diff --git a/src/components/dm_timeline/dm_timeline.js b/src/components/dm_timeline/dm_timeline.js @@ -0,0 +1,14 @@ +import Timeline from '../timeline/timeline.vue' + +const DMs = { + computed: { + timeline () { + return this.$store.state.statuses.timelines.dms + } + }, + components: { + Timeline + } +} + +export default DMs diff --git a/src/components/dm_timeline/dm_timeline.vue b/src/components/dm_timeline/dm_timeline.vue @@ -0,0 +1,5 @@ +<template> + <Timeline :title="$t('nav.dms')" v-bind:timeline="timeline" v-bind:timeline-name="'dms'"/> +</template> + +<script src="./dm_timeline.js"></script> diff --git a/src/components/nav_panel/nav_panel.vue b/src/components/nav_panel/nav_panel.vue @@ -12,6 +12,11 @@ {{ $t("nav.mentions") }} </router-link> </li> + <li v-if='currentUser'> + <router-link :to="{ name: 'dms', params: { username: currentUser.screen_name } }"> + {{ $t("nav.dms") }} + </router-link> + </li> <li v-if='currentUser && currentUser.locked'> <router-link to='/friend-requests'> {{ $t("nav.friend_requests") }} diff --git a/src/i18n/en.json b/src/i18n/en.json @@ -32,6 +32,7 @@ "chat": "Local Chat", "friend_requests": "Follow Requests", "mentions": "Mentions", + "dms": "Direct Messages", "public_tl": "Public Timeline", "timeline": "Timeline", "twkn": "The Whole Known Network" diff --git a/src/modules/statuses.js b/src/modules/statuses.js @@ -41,7 +41,8 @@ export const defaultState = { own: emptyTl(), publicAndExternal: emptyTl(), friends: emptyTl(), - tag: emptyTl() + tag: emptyTl(), + dms: emptyTl() } } diff --git a/src/services/api/api.service.js b/src/services/api/api.service.js @@ -15,6 +15,7 @@ const STATUS_URL = '/api/statuses/show' const MEDIA_UPLOAD_URL = '/api/statusnet/media/upload' const CONVERSATION_URL = '/api/statusnet/conversation' const MENTIONS_URL = '/api/statuses/mentions.json' +const DM_TIMELINE_URL = '/api/statuses/dm_timeline.json' const FOLLOWERS_URL = '/api/statuses/followers.json' const FRIENDS_URL = '/api/statuses/friends.json' const FOLLOWING_URL = '/api/friendships/create.json' @@ -292,6 +293,7 @@ const fetchTimeline = ({timeline, credentials, since = false, until = false, use public: PUBLIC_TIMELINE_URL, friends: FRIENDS_TIMELINE_URL, mentions: MENTIONS_URL, + dms: DM_TIMELINE_URL, notifications: QVITTER_USER_NOTIFICATIONS_URL, 'publicAndExternal': PUBLIC_AND_EXTERNAL_TIMELINE_URL, user: QVITTER_USER_TIMELINE_URL,