aboutsummaryrefslogtreecommitdiff
path: root/src/modules
diff options
context:
space:
mode:
Diffstat (limited to 'src/modules')
-rw-r--r--src/modules/api.js11
-rw-r--r--src/modules/config.js5
-rw-r--r--src/modules/statuses.js34
3 files changed, 48 insertions, 2 deletions
diff --git a/src/modules/api.js b/src/modules/api.js
index a32adfde..e61382eb 100644
--- a/src/modules/api.js
+++ b/src/modules/api.js
@@ -1,4 +1,5 @@
import backendInteractorService from '../services/backend_interactor_service/backend_interactor_service.js'
+import {isArray} from 'lodash'
const api = {
state: {
@@ -18,9 +19,17 @@ const api = {
},
actions: {
startFetching (store, timeline) {
+ let userId = false
+
+ // This is for user timelines
+ if (isArray(timeline)) {
+ userId = timeline[1]
+ timeline = timeline[0]
+ }
+
// Don't start fetching if we already are.
if (!store.state.fetchers[timeline]) {
- const fetcher = store.state.backendInteractor.startFetching({timeline, store})
+ const fetcher = store.state.backendInteractor.startFetching({timeline, store, userId})
store.commit('addFetcher', {timeline, fetcher})
}
},
diff --git a/src/modules/config.js b/src/modules/config.js
index 05b4ab3b..f7d6e9c8 100644
--- a/src/modules/config.js
+++ b/src/modules/config.js
@@ -6,7 +6,10 @@ const defaultState = {
colors: {},
hideAttachments: false,
hideAttachmentsInConv: false,
- hideNsfw: true
+ hideNsfw: true,
+ autoLoad: true,
+ hoverPreview: true,
+ muteWords: []
}
const config = {
diff --git a/src/modules/statuses.js b/src/modules/statuses.js
index 051ec71b..c3753c5a 100644
--- a/src/modules/statuses.js
+++ b/src/modules/statuses.js
@@ -32,6 +32,17 @@ export const defaultState = {
minVisibleId: 0,
loading: false
},
+ user: {
+ statuses: [],
+ statusesObject: {},
+ faves: [],
+ visibleStatuses: [],
+ visibleStatusesObject: {},
+ newStatusCount: 0,
+ maxId: 0,
+ minVisibleId: 0,
+ loading: false
+ },
publicAndExternal: {
statuses: [],
statusesObject: {},
@@ -242,6 +253,14 @@ const addNewStatuses = (state, { statuses, showImmediately = false, timeline, us
const uri = deletion.uri
updateMaxId(deletion)
+ // Remove possible notification
+ const status = find(allStatuses, {uri})
+ if (!status) {
+ return
+ }
+
+ remove(state.notifications, ({action: {id}}) => id === status.id)
+
remove(allStatuses, { uri })
if (timeline) {
remove(timelineObject.statuses, { uri })
@@ -276,6 +295,21 @@ export const mutations = {
oldTimeline.visibleStatusesObject = {}
each(oldTimeline.visibleStatuses, (status) => { oldTimeline.visibleStatusesObject[status.id] = status })
},
+ clearTimeline (state, { timeline }) {
+ const emptyTimeline = {
+ statuses: [],
+ statusesObject: {},
+ faves: [],
+ visibleStatuses: [],
+ visibleStatusesObject: {},
+ newStatusCount: 0,
+ maxId: 0,
+ minVisibleId: 0,
+ loading: false
+ }
+
+ state.timelines[timeline] = emptyTimeline
+ },
setFavorited (state, { status, value }) {
const newStatus = state.allStatusesObject[status.id]
newStatus.favorited = value