refs #2258 Apply filter to public timeline

This commit is contained in:
AkiraFukushima 2021-05-22 14:39:32 +09:00
parent 914f539353
commit c4395dd536
No known key found for this signature in database
GPG Key ID: B6E51BAC4DE1A957
2 changed files with 12 additions and 3 deletions

View File

@ -9,6 +9,7 @@
:message="item"
:focused="item.uri + item.id === focusedId"
:overlaid="modalOpened"
:filters="filters"
v-on:update="updateToot"
v-on:delete="deleteToot"
@focusNext="focusNext"
@ -56,6 +57,7 @@ export default {
startReload: state => state.TimelineSpace.HeaderMenu.reload,
unreadNotification: state => state.TimelineSpace.unreadNotification
}),
...mapGetters('TimelineSpace/Contents/Public', ['filters']),
...mapGetters('TimelineSpace/Modals', ['modalOpened']),
shortcutEnabled: function () {
if (this.modalOpened) {

View File

@ -1,5 +1,5 @@
import generator, { Entity } from 'megalodon'
import { Module, MutationTree, ActionTree } from 'vuex'
import generator, { Entity, FilterContext } from 'megalodon'
import { Module, MutationTree, ActionTree, GetterTree } from 'vuex'
import { RootState } from '@/store'
export type PublicState = {
@ -131,11 +131,18 @@ const actions: ActionTree<PublicState, RootState> = {
}
}
const getters: GetterTree<PublicState, RootState> = {
filters: (_state, _getters, rootState) => {
return rootState.TimelineSpace.filters.filter(f => f.context.includes(FilterContext.Public) && !f.irreversible)
}
}
const Public: Module<PublicState, RootState> = {
namespaced: true,
state: state,
mutations: mutations,
actions: actions
actions: actions,
getters: getters
}
export default Public