Allow notifications to be dismissed by clicking

This commit is contained in:
nickofolas 2022-01-03 21:40:58 -06:00
parent 772317a4f1
commit c445df4168

@ -19,16 +19,17 @@ export function SnackbarProvider(props: IProps): React.ReactElement {
export const SnackbarEvents = new EventEmitter<[string, "success" | "warning" | "error" | "info", number]>(); export const SnackbarEvents = new EventEmitter<[string, "success" | "warning" | "error" | "info", number]>();
export function Snackbar(): React.ReactElement { export function Snackbar(): React.ReactElement {
const { enqueueSnackbar } = useSnackbar(); const { enqueueSnackbar, closeSnackbar } = useSnackbar();
useEffect(() => useEffect(() =>
SnackbarEvents.subscribe((s, variant, duration) => SnackbarEvents.subscribe((s, variant, duration) => {
enqueueSnackbar(<Alert severity={variant}>{s}</Alert>, { const id = enqueueSnackbar(<Alert severity={variant}>{s}</Alert>, {
content: (k, m) => <Paper key={k}>{m}</Paper>, content: (k, m) => <Paper key={k}>{m}</Paper>,
variant: variant, variant: variant,
autoHideDuration: duration, autoHideDuration: duration,
}), onClick: () => closeSnackbar(id),
), })
}),
); );
return <></>; return <></>;
} }