UNPKG

@bigfishtv/cockpit

Version:

20 lines (14 loc) 539 B
import React from 'react' import { connect } from 'react-redux' import { Redirect } from 'react-router-dom' import { userCanAccess } from '../utils/roleUtils' import Forbidden from './template/Forbidden' const ProtectedRedirect = ({ viewer, routes }) => routes.reduce((acc, route) => { if (acc) return acc if (userCanAccess(route.resource, viewer)) return <Redirect to={route.to} /> }, null) || <Forbidden /> function mapStateToProps({ viewer }) { return { viewer } } export default connect(mapStateToProps)(ProtectedRedirect)