react-authorization
Version:
React authorization library.
26 lines (24 loc) • 1.17 kB
JavaScript
;
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 IfAuthorized = function IfAuthorized(props) {
if (typeof props.isAuthorized === "function") {
return props.isAuthorized() ? /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, props.children) : props.unauthorized;
}
return props.isAuthorized === true ? /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, props.children) : props.unauthorized;
};
IfAuthorized.propTypes = {
isAuthorized: _propTypes["default"].oneOfType([_propTypes["default"].func, _propTypes["default"].bool]),
// Either an authorization function returning boolean or directly boolean
unauthorized: _propTypes["default"].node // Node to render if the actual roles do not match any the expected
};
IfAuthorized.defaultProps = {
unauthorized: null
};
var _default = IfAuthorized;
exports["default"] = _default;