diff --git a/plugins/events.client.ts b/plugins/events.client.ts index dc46571d..4bfbf316 100644 --- a/plugins/events.client.ts +++ b/plugins/events.client.ts @@ -49,7 +49,7 @@ export default defineNuxtPlugin(() => { const getAll = () => { getEventsAll().then((events: ServerEvent[]) => { if (events.length) { - eventsStore.addList(events); + eventsStore.initialize(events); cachedIdsStore.syncWithActive(events.map(({ uuid }) => uuid)); } else { // NOTE: clear cached events hardly diff --git a/stores/events.ts b/stores/events.ts index 556e2f44..6a955327 100644 --- a/stores/events.ts +++ b/stores/events.ts @@ -6,11 +6,14 @@ export const useEventStore = defineStore("useEventStore", { events: [] as ServerEvent[], }), actions: { + initialize(events: ServerEvent[]) { + this.events = events; + }, addList(events: ServerEvent[]) { events.forEach((event) => { const isExistedEvent = this.events.some((el) => el.uuid === event.uuid); if (!isExistedEvent) { - this.events.push(event); + this.events.unshift(event); } else { this.events = this.events.map((el) => { if (el.uuid !== event.uuid) {