biome format --write
This commit is contained in:
parent
8372348148
commit
9262e803ec
415 changed files with 54076 additions and 17419 deletions
|
|
@ -4,12 +4,12 @@ import { useServerSideStorageStore } from 'src/stores/serverSideStorage'
|
|||
import {
|
||||
isStatusNotification,
|
||||
isValidNotification,
|
||||
maybeShowNotification
|
||||
maybeShowNotification,
|
||||
} from '../services/notification_utils/notification_utils.js'
|
||||
|
||||
import {
|
||||
closeDesktopNotification,
|
||||
closeAllDesktopNotifications
|
||||
closeAllDesktopNotifications,
|
||||
} from '../services/desktop_notification_utils/desktop_notification_utils.js'
|
||||
|
||||
import { useReportsStore } from 'src/stores/reports.js'
|
||||
|
|
@ -20,58 +20,58 @@ const emptyNotifications = () => ({
|
|||
minId: Number.POSITIVE_INFINITY,
|
||||
data: [],
|
||||
idStore: {},
|
||||
loading: false
|
||||
loading: false,
|
||||
})
|
||||
|
||||
export const defaultState = () => ({
|
||||
...emptyNotifications()
|
||||
...emptyNotifications(),
|
||||
})
|
||||
|
||||
export const notifications = {
|
||||
state: defaultState(),
|
||||
mutations: {
|
||||
addNewNotifications (state, { notifications }) {
|
||||
notifications.forEach(notification => {
|
||||
addNewNotifications(state, { notifications }) {
|
||||
notifications.forEach((notification) => {
|
||||
state.data.push(notification)
|
||||
state.idStore[notification.id] = notification
|
||||
})
|
||||
},
|
||||
clearNotifications (state) {
|
||||
clearNotifications(state) {
|
||||
const blankState = defaultState()
|
||||
Object.keys(state).forEach(k => {
|
||||
Object.keys(state).forEach((k) => {
|
||||
state[k] = blankState[k]
|
||||
})
|
||||
},
|
||||
updateNotificationsMinMaxId (state, id) {
|
||||
updateNotificationsMinMaxId(state, id) {
|
||||
state.maxId = id > state.maxId ? id : state.maxId
|
||||
state.minId = id < state.minId ? id : state.minId
|
||||
},
|
||||
setNotificationsLoading (state, { value }) {
|
||||
setNotificationsLoading(state, { value }) {
|
||||
state.loading = value
|
||||
},
|
||||
setNotificationsSilence (state, { value }) {
|
||||
setNotificationsSilence(state, { value }) {
|
||||
state.desktopNotificationSilence = value
|
||||
},
|
||||
markNotificationsAsSeen (state) {
|
||||
markNotificationsAsSeen(state) {
|
||||
state.data.forEach((notification) => {
|
||||
notification.seen = true
|
||||
})
|
||||
},
|
||||
markSingleNotificationAsSeen (state, { id }) {
|
||||
markSingleNotificationAsSeen(state, { id }) {
|
||||
const notification = state.idStore[id]
|
||||
if (notification) notification.seen = true
|
||||
},
|
||||
dismissNotification (state, { id }) {
|
||||
state.data = state.data.filter(n => n.id !== id)
|
||||
dismissNotification(state, { id }) {
|
||||
state.data = state.data.filter((n) => n.id !== id)
|
||||
delete state.idStore[id]
|
||||
},
|
||||
updateNotification (state, { id, updater }) {
|
||||
updateNotification(state, { id, updater }) {
|
||||
const notification = state.idStore[id]
|
||||
notification && updater(notification)
|
||||
}
|
||||
},
|
||||
},
|
||||
actions: {
|
||||
addNewNotifications (store, { notifications }) {
|
||||
addNewNotifications(store, { notifications }) {
|
||||
const { commit, dispatch, state, rootState } = store
|
||||
const validNotifications = notifications.filter((notification) => {
|
||||
// If invalid notification, update ids but don't add it to store
|
||||
|
|
@ -83,13 +83,20 @@ export const notifications = {
|
|||
return true
|
||||
})
|
||||
|
||||
const statusNotifications = validNotifications.filter(notification => isStatusNotification(notification.type) && notification.status)
|
||||
const statusNotifications = validNotifications.filter(
|
||||
(notification) =>
|
||||
isStatusNotification(notification.type) && notification.status,
|
||||
)
|
||||
|
||||
// Synchronous commit to add all the statuses
|
||||
commit('addNewStatuses', { statuses: statusNotifications.map(notification => notification.status) })
|
||||
commit('addNewStatuses', {
|
||||
statuses: statusNotifications.map(
|
||||
(notification) => notification.status,
|
||||
),
|
||||
})
|
||||
|
||||
// Update references to statuses in notifications to ones in the store
|
||||
statusNotifications.forEach(notification => {
|
||||
statusNotifications.forEach((notification) => {
|
||||
const id = notification.status.id
|
||||
const referenceStatus = rootState.statuses.allStatusesObject[id]
|
||||
|
||||
|
|
@ -98,7 +105,7 @@ export const notifications = {
|
|||
}
|
||||
})
|
||||
|
||||
validNotifications.forEach(notification => {
|
||||
validNotifications.forEach((notification) => {
|
||||
if (notification.type === 'pleroma:report') {
|
||||
useReportsStore().addReport(notification.report)
|
||||
}
|
||||
|
|
@ -115,15 +122,17 @@ export const notifications = {
|
|||
|
||||
maybeShowNotification(
|
||||
store,
|
||||
Object.values(useServerSideStorageStore().prefsStorage.simple.muteFilters),
|
||||
notification
|
||||
Object.values(
|
||||
useServerSideStorageStore().prefsStorage.simple.muteFilters,
|
||||
),
|
||||
notification,
|
||||
)
|
||||
} else if (notification.seen) {
|
||||
state.idStore[notification.id].seen = true
|
||||
}
|
||||
})
|
||||
},
|
||||
notificationClicked ({ state, dispatch }, { id }) {
|
||||
notificationClicked({ state, dispatch }, { id }) {
|
||||
const notification = state.idStore[id]
|
||||
const { type, seen } = notification
|
||||
|
||||
|
|
@ -138,42 +147,46 @@ export const notifications = {
|
|||
}
|
||||
}
|
||||
},
|
||||
setNotificationsLoading ({ commit }, { value }) {
|
||||
setNotificationsLoading({ commit }, { value }) {
|
||||
commit('setNotificationsLoading', { value })
|
||||
},
|
||||
setNotificationsSilence ({ commit }, { value }) {
|
||||
setNotificationsSilence({ commit }, { value }) {
|
||||
commit('setNotificationsSilence', { value })
|
||||
},
|
||||
markNotificationsAsSeen ({ rootState, state, commit }) {
|
||||
markNotificationsAsSeen({ rootState, state, commit }) {
|
||||
commit('markNotificationsAsSeen')
|
||||
apiService.markNotificationsAsSeen({
|
||||
id: state.maxId,
|
||||
credentials: rootState.users.currentUser.credentials
|
||||
}).then(() => {
|
||||
closeAllDesktopNotifications(rootState)
|
||||
})
|
||||
apiService
|
||||
.markNotificationsAsSeen({
|
||||
id: state.maxId,
|
||||
credentials: rootState.users.currentUser.credentials,
|
||||
})
|
||||
.then(() => {
|
||||
closeAllDesktopNotifications(rootState)
|
||||
})
|
||||
},
|
||||
markSingleNotificationAsSeen ({ rootState, commit }, { id }) {
|
||||
markSingleNotificationAsSeen({ rootState, commit }, { id }) {
|
||||
commit('markSingleNotificationAsSeen', { id })
|
||||
apiService.markNotificationsAsSeen({
|
||||
single: true,
|
||||
id,
|
||||
credentials: rootState.users.currentUser.credentials
|
||||
}).then(() => {
|
||||
closeDesktopNotification(rootState, { id })
|
||||
})
|
||||
apiService
|
||||
.markNotificationsAsSeen({
|
||||
single: true,
|
||||
id,
|
||||
credentials: rootState.users.currentUser.credentials,
|
||||
})
|
||||
.then(() => {
|
||||
closeDesktopNotification(rootState, { id })
|
||||
})
|
||||
},
|
||||
dismissNotificationLocal ({ commit }, { id }) {
|
||||
dismissNotificationLocal({ commit }, { id }) {
|
||||
commit('dismissNotification', { id })
|
||||
},
|
||||
dismissNotification ({ rootState, commit }, { id }) {
|
||||
dismissNotification({ rootState, commit }, { id }) {
|
||||
commit('dismissNotification', { id })
|
||||
rootState.api.backendInteractor.dismissNotification({ id })
|
||||
},
|
||||
updateNotification ({ commit }, { id, updater }) {
|
||||
updateNotification({ commit }, { id, updater }) {
|
||||
commit('updateNotification', { id, updater })
|
||||
}
|
||||
}
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
export default notifications
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue