File size: 716 Bytes
5f40163 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | import { create } from "zustand";
type SubmittedEventId = string | number;
interface EventMessageState {
submittedEventIds: SubmittedEventId[];
}
interface EventMessageStore extends EventMessageState {
addSubmittedEventId: (id: SubmittedEventId) => void;
removeSubmittedEventId: (id: SubmittedEventId) => void;
}
export const useEventMessageStore = create<EventMessageStore>((set) => ({
submittedEventIds: [],
addSubmittedEventId: (id) =>
set((state) => ({
submittedEventIds: [...state.submittedEventIds, id],
})),
removeSubmittedEventId: (id) =>
set((state) => ({
submittedEventIds: state.submittedEventIds.filter(
(eventId) => eventId !== id,
),
})),
}));
|