@bigfishtv/cockpit
Version:
26 lines (20 loc) • 871 B
JavaScript
function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
import React from 'react';
import { connect } from 'react-redux';
import { Link } from 'react-router-dom';
import { userCanAccess } from '../utils/roleUtils';
var ProtectedLink = function ProtectedLink(_ref) {
var viewer = _ref.viewer,
resource = _ref.resource,
rest = _objectWithoutProperties(_ref, ['viewer', 'resource']);
return userCanAccess(resource, viewer) ? React.createElement(Link, rest) : React.createElement(
'span',
null,
rest.children
);
};
var mapStateToProps = function mapStateToProps(_ref2) {
var viewer = _ref2.viewer;
return { viewer: viewer };
};
export default connect(mapStateToProps)(ProtectedLink);