Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 24x 24x 2x 2x 21x 21x 1x 1x 21x 21x 21x 7x 21x 21x 21x 4x 21x 21x 21x 21x 21x 21x 21x 21x 21x 21x | "use client";
import React, { createContext, useContext, useState } from "react";
interface CartModalContextType {
isCartModalOpen: boolean;
openCartModal: () => void;
closeCartModal: () => void;
}
const CartModalContext = createContext<CartModalContextType | undefined>(
undefined
);
export const useCartModalContext = () => {
const context = useContext(CartModalContext);
if (!context) {
throw new Error("useModalContext must be used within a ModalProvider");
}
return context;
};
export const CartModalProvider = ({ children }: { children: React.ReactNode }) => {
const [isCartModalOpen, setIsCartModalOpen] = useState(false);
const openCartModal = () => {
setIsCartModalOpen(true);
};
const closeCartModal = () => {
setIsCartModalOpen(false);
};
return (
<CartModalContext.Provider
value={{ isCartModalOpen, openCartModal, closeCartModal }}
>
{children}
</CartModalContext.Provider>
);
};
|