File size: 482 Bytes
adea8c3 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | import { create } from "zustand";
import { WsEvent } from "../types";
interface EventStore {
events: WsEvent[];
connected: boolean;
push: (e: WsEvent) => void;
clear: () => void;
setConnected: (v: boolean) => void;
}
export const useEventStore = create<EventStore>((set) => ({
events: [],
connected: false,
push: (e) => set((s) => ({ events: [e, ...s.events].slice(0, 20) })),
clear: () => set({ events: [] }),
setConnected: (v) => set({ connected: v }),
}));
|