UNPKG

react-authorization

Version:
32 lines (30 loc) 1.19 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var IfAllGranted = function IfAllGranted(props) { var expected = props.expected, actual = props.actual ? Array.isArray(props.actual) ? props.actual : [props.actual] : []; for (var i = 0; i < expected.length; i++) { if (actual.indexOf(expected[i]) === -1) { return props.unauthorized; } } return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, props.children); }; IfAllGranted.propTypes = { expected: _propTypes["default"].array.isRequired, // The expected roles actual: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].array]), // The actual roles unauthorized: _propTypes["default"].node // Node to render if the actual roles do not match the expected }; IfAllGranted.defaultProps = { unauthorized: null }; var _default = IfAllGranted; exports["default"] = _default;