// lib/camera/hooks/useCameraStore.ts import { create } from "zustand"; interface CameraStore { barcode: string; setBarcode: (barcode: string) => void; imageSj: string[]; // dataURL setImageSj: (imgOrArr: string | string[]) => void; removeSjImage: (idx: number) => void; imagePackage: string | null; setImagePackage: (image: string | null) => void; imageDispatch: string | null; setImageDispatch: (image: string | null) => void; } const useCameraStore = create((set) => ({ barcode: "", setBarcode: (barcode) => set({ barcode }), imageSj: [], setImageSj: (imgOrArr) => set((s) => ({ imageSj: Array.isArray(imgOrArr) ? imgOrArr : [...s.imageSj, imgOrArr], })), removeSjImage: (idx) => set((s) => ({ imageSj: s.imageSj.filter((_, i) => i !== idx) })), imagePackage: "", setImagePackage: (image) => set({ imagePackage: image }), imageDispatch: "", setImageDispatch: (image) => set({ imageDispatch: image }), })); export default useCameraStore;