feat: show and stream new notifications (#282)

Co-authored-by: Anthony Fu <anthonyfu117@hotmail.com>
This commit is contained in:
Daniel Roe 2022-12-02 02:21:10 +00:00 committed by GitHub
parent 0f06653636
commit 585b9e0229
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 74 additions and 10 deletions

View file

@ -2,7 +2,7 @@ import type { Paginator, WsEvents } from 'masto'
import { useDeactivated } from './lifecycle'
import type { PaginatorState } from '~/types'
export function usePaginator<T>(paginator: Paginator<any, T[]>, stream?: WsEvents) {
export function usePaginator<T>(paginator: Paginator<any, T[]>, stream?: WsEvents, eventType: 'notification' | 'update' = 'update') {
const state = ref<PaginatorState>('idle')
const items = ref<T[]>([])
const nextItems = ref<T[]>([])
@ -19,7 +19,7 @@ export function usePaginator<T>(paginator: Paginator<any, T[]>, stream?: WsEvent
prevItems.value = []
}
stream?.on('update', (status) => {
stream?.on(eventType, (status) => {
prevItems.value.unshift(status as any)
})