Alerts.tsx 692 B

12345678910111213141516171819202122232425262728
  1. import React from 'react';
  2. import { alertDissmissed, selectAll } from 'redux/reducers/alerts/alertsSlice';
  3. import { useAppSelector, useAppDispatch } from 'lib/hooks/redux';
  4. import Alert from 'components/Alerts/Alert';
  5. const Alerts: React.FC = () => {
  6. const alerts = useAppSelector(selectAll);
  7. const dispatch = useAppDispatch();
  8. const dismiss = (id: string) => () => {
  9. dispatch(alertDissmissed(id));
  10. };
  11. return (
  12. <>
  13. {alerts.map(({ id, type, title, message }) => (
  14. <Alert
  15. key={id}
  16. type={type}
  17. title={title}
  18. message={message}
  19. onDissmiss={dismiss(id)}
  20. />
  21. ))}
  22. </>
  23. );
  24. };
  25. export default Alerts;