import { create } from "zustand"; import { persist } from "zustand/middleware"; export const basketStore = create()((set, get) => ({ templ: { id1: { name: "Шаблонизатор", desc: "Дисковое хранилище 5 гб", id: "id1", privelegeid: "1", amount: 5, price: 390, }, id2: { name: "Шаблонизатор", desc: "Подписка на месяц", id: "id2", privelegeid: "2", amount: 30, price: 290, }, }, squiz: { id1: { name: "Квиз конструктор", desc: "Дисковое хранилище 5 гб", id: "id1", privelegeid: "1", amount: 5, price: 300, }, id2: { name: "Квиз конструктор", desc: "Подписка на месяц", id: "id2", privelegeid: "2", amount: 30, price: 90, }, }, reducer: {}, add: ({id, obj, type}:any) => { const store:any = get()[type] || {} const newStore = { [type]:{ ...store, [id]:obj } } set(() => (newStore)) }, remove: ( type: { name: string; desc: string; id: string; privelegeid: string; amount: number; price: number; }[], id: string ) => { const arrayCopy = { ...get().type }; Object.keys(arrayCopy).forEach((key) => { if (key === id) { delete arrayCopy[key]; } }); set({ type: arrayCopy }); }, }));