Proyectos de Subversion LeadersLinked - SPA

Rev

Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |

import React, { createContext, useCallback, useState } from 'react';

export const ModalContext = createContext({
  show: false,
  title: '',
  content: '',
  showModal: () => {},
  closeModal: () => {}
});

export function ModalProvider({ children }) {
  const [show, setShow] = useState(false);
  const [title, setTitle] = useState('');
  const [content, setContent] = useState('');

  const showModal = useCallback((title, content) => {
    setTitle(title);
    setContent(content);
    setShow(true);
  }, []);

  const closeModal = useCallback(() => {
    setTitle('');
    setContent('');
    setShow(false);
  }, []);

  return (
    <ModalContext.Provider
      value={{
        show,
        title,
        content,
        showModal,
        closeModal
      }}
    >
      {children}
    </ModalContext.Provider>
  );
}