UNPKG

@bigfishtv/cockpit

Version:

24 lines (18 loc) 703 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'; var ProtectedRedirect = function ProtectedRedirect(_ref) { var viewer = _ref.viewer, routes = _ref.routes; return routes.reduce(function (acc, route) { if (acc) return acc; if (userCanAccess(route.resource, viewer)) return React.createElement(Redirect, { to: route.to }); }, null) || React.createElement(Forbidden, null); }; function mapStateToProps(_ref2) { var viewer = _ref2.viewer; return { viewer: viewer }; } export default connect(mapStateToProps)(ProtectedRedirect);