UNPKG

@tsc_tech/medusa-plugin-notification-template

Version:
31 lines (30 loc) 867 B
import { jsx } from "react/jsx-runtime"; import { useState, useCallback, useMemo } from "react"; import { useNavigate } from "react-router-dom"; import { RouteModalProviderContext } from "./route-modal-context.js"; const RouteModalProvider = ({ prev, children }) => { const navigate = useNavigate(); const [closeOnEscape, setCloseOnEscape] = useState(true); const handleSuccess = useCallback( (path) => { const to = path || prev; navigate(to, { replace: true, state: { isSubmitSuccessful: true } }); }, [navigate, prev] ); const value = useMemo( () => ({ handleSuccess, setCloseOnEscape, __internal: { closeOnEscape } }), [handleSuccess, setCloseOnEscape, closeOnEscape] ); return /* @__PURE__ */ jsx(RouteModalProviderContext.Provider, { value, children }); }; export { RouteModalProvider };