19 lines
584 B
TypeScript
19 lines
584 B
TypeScript
import { create } from "zustand";
|
|
import type { OrderRecord } from "@/types/guest-order";
|
|
|
|
type OrdersState = {
|
|
orders: OrderRecord[];
|
|
/** Append one order to the in-memory state. */
|
|
pushOrder: (rec: OrderRecord) => void;
|
|
setOrders: (next: OrderRecord[] | ((prev: OrderRecord[]) => OrderRecord[])) => void;
|
|
};
|
|
|
|
export const useOrdersStore = create<OrdersState>((set) => ({
|
|
orders: [],
|
|
pushOrder: (rec) => set((s) => ({ orders: [rec, ...s.orders] })),
|
|
setOrders: (next) =>
|
|
set((s) => ({
|
|
orders: typeof next === "function" ? next(s.orders) : next,
|
|
})),
|
|
}));
|