@bigfishtv/cockpit
Version:
24 lines (18 loc) • 703 B
JavaScript
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);