added LIFO history to popUp context

This commit is contained in:
anovazzi1 2023-04-12 20:22:57 -03:00
commit 4206a2183c

View file

@ -12,20 +12,20 @@ interface PopUpProviderProps {
} }
const PopUpProvider = ({ children }: PopUpProviderProps) => { const PopUpProvider = ({ children }: PopUpProviderProps) => {
const [popUpElement, setPopUpElement] = useState<JSX.Element | null>(null); const [popUpElements, setPopUpElements] = useState<JSX.Element[]>([]);
const openPopUp = (element: JSX.Element) => { const openPopUp = (element: JSX.Element) => {
setPopUpElement(element); setPopUpElements(prevPopUps => [element, ...prevPopUps]);
}; };
const closePopUp = () => { const closePopUp = () => {
setPopUpElement(null); setPopUpElements(prevPopUps => prevPopUps.slice(1));
}; };
return ( return (
<PopUpContext.Provider value={{ openPopUp, closePopUp }}> <PopUpContext.Provider value={{ openPopUp, closePopUp }}>
{children} {children}
{popUpElement} {popUpElements[0]}
</PopUpContext.Provider> </PopUpContext.Provider>
); );
}; };