adminFront/src/stores/privilegesStore.ts
2023-08-02 14:36:50 +03:00

27 lines
809 B
TypeScript

import { create } from "zustand";
import { devtools } from "zustand/middleware";
import { PrivilegeWithAmount } from "@frontend/kitui";
interface PrivilegeStore {
privileges: PrivilegeWithAmount[];
}
export const usePrivilegeStore = create<PrivilegeStore>()(
devtools(
(set, get) => ({
privileges: [],
}),
{
name: "Privileges",
enabled: process.env.NODE_ENV === "development",
}
)
);
export const resetPrivilegeArray = (privileges: PrivilegeStore["privileges"]) => usePrivilegeStore.setState({ privileges });
export const findPrivilegeById = (privilegeId: string) => {
return usePrivilegeStore.getState().privileges.find((privilege) => privilege._id === privilegeId || privilege.privilegeId === privilegeId) ?? null;
};