@eureca/eureca-ui
Version:
UI component library of Eureca's user and admin apps
28 lines (23 loc) • 756 B
JavaScript
import React, { useState, createContext, useCallback } from 'react';
export const GroupActionContext = createContext({
content: {},
setContent: () => {},
variant: {},
setVariant: () => {},
isOpen: {},
show: () => {},
});
export function GroupActionProvider({ children }) {
const [content, setContent] = useState();
const [isOpen, setIsOpen] = useState(false);
const [variant, setVariant] = useState('success');
const contextValue = {
content,
setContent: useCallback(v => setContent(v), []),
variant,
setVariant: useCallback(v => setVariant(v), []),
isOpen,
show: useCallback(v => setIsOpen(v), []),
};
return <GroupActionContext.Provider value={contextValue}>{children}</GroupActionContext.Provider>;
}