add messages store

This commit is contained in:
nflnkr 2023-03-21 15:58:40 +03:00
parent ff41ea51ff
commit 1c1f50926f

23
src/stores/messages.ts Normal file

@ -0,0 +1,23 @@
import { TicketMessage } from "@root/model/ticket";
import { create } from "zustand";
import { devtools } from "zustand/middleware";
import { testMessages } from "./mocks/messages";
interface MessageStore {
messages: TicketMessage[];
}
export const useMessageStore = create<MessageStore>()(
devtools(
(set, get) => ({
messages: testMessages,
}),
{
name: "Message store"
}
)
);
export const setMessages = (messages: TicketMessage[]) => useMessageStore.setState(({ messages }));
export const addMessages = (messages: TicketMessage[]) => useMessageStore.setState(state => ({ messages: [...state.messages, ...messages] }));