1
0
mirror of https://gitlab.nic.cz/turris/reforis/foris-js.git synced 2025-06-15 13:36:35 +02:00

Use global AlertContext

This commit is contained in:
Maciej Lenartowicz
2019-11-18 12:51:43 +00:00
parent a6866a0673
commit e54db2c577
5 changed files with 14 additions and 11 deletions

View File

@ -11,8 +11,6 @@ import PropTypes from "prop-types";
import { Alert, ALERT_TYPES } from "bootstrap/Alert";
import { Portal } from "utils/Portal";
const AlertContext = React.createContext();
AlertContextProvider.propTypes = {
children: PropTypes.oneOfType([
PropTypes.arrayOf(PropTypes.node),
@ -21,6 +19,7 @@ AlertContextProvider.propTypes = {
};
function AlertContextProvider({ children }) {
const { AlertContext } = window;
const [alert, setAlert] = useState(null);
const setAlertWrapper = useCallback((message, type = ALERT_TYPES.DANGER) => {
@ -46,7 +45,8 @@ function AlertContextProvider({ children }) {
}
function useAlert() {
const { AlertContext } = window;
return useContext(AlertContext);
}
export { AlertContext, AlertContextProvider, useAlert };
export { AlertContextProvider, useAlert };

View File

@ -75,4 +75,4 @@ export {
} from "validations";
// Alert context
export { AlertContext, AlertContextProvider, useAlert } from "alertContext/AlertContext";
export { AlertContextProvider, useAlert } from "alertContext/AlertContext";

View File

@ -7,11 +7,11 @@
import React from "react";
import { AlertContext } from "../alertContext/AlertContext";
const mockSetAlert = jest.fn();
const mockDismissAlert = jest.fn();
window.AlertContext = React.createContext();
function AlertContextMock({ children }) {
return (
<AlertContext.Provider value={[mockSetAlert, mockDismissAlert]}>