UNPKG

ndla-ui

Version:

UI component library for NDLA.

92 lines (73 loc) 2.67 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _react = require('react'); var _react2 = _interopRequireDefault(_react); var _propTypes = require('prop-types'); var _propTypes2 = _interopRequireDefault(_propTypes); var _reactBemHelper = require('react-bem-helper'); var _reactBemHelper2 = _interopRequireDefault(_reactBemHelper); var _shapes = require('../shapes'); var _ResourceList = require('./ResourceList'); var _ResourceList2 = _interopRequireDefault(_ResourceList); var _ResourcesTitle = require('../ResourcesWrapper/ResourcesTitle'); var _ResourcesTitle2 = _interopRequireDefault(_ResourcesTitle); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } /** * Copyright (c) 2017-present, NDLA. * * This source code is licensed under the GPLv3 license found in the * LICENSE file in the root directory of this source tree. * */ var classes = new _reactBemHelper2.default({ name: 'resource-group', prefix: 'c-' }); var ResourceGroup = function ResourceGroup(_ref) { var title = _ref.title, icon = _ref.icon, resources = _ref.resources, toggleAdditionalResources = _ref.toggleAdditionalResources, showAdditionalResources = _ref.showAdditionalResources, resourceToLinkProps = _ref.resourceToLinkProps, contentType = _ref.contentType; return _react2.default.createElement( 'section', classes('', [contentType, showAdditionalResources ? 'showall' : '']), _react2.default.createElement( 'header', classes('header'), _react2.default.createElement( _ResourcesTitle2.default, null, title ) ), resources.length > 0 ? _react2.default.createElement(_ResourceList2.default, { title: title, resourceToLinkProps: resourceToLinkProps, onClick: toggleAdditionalResources, showAdditionalResources: showAdditionalResources, icon: icon, resources: resources }) : null ); }; ResourceGroup.propTypes = { title: _propTypes2.default.string.isRequired, icon: _propTypes2.default.node.isRequired, contentType: _shapes.ContentTypeShape.isRequired, resources: _propTypes2.default.arrayOf(_shapes.ResourceShape).isRequired, toggleAdditionalResources: _propTypes2.default.func.isRequired, resourceToLinkProps: _propTypes2.default.func.isRequired, hideResourceToggleFilter: _propTypes2.default.bool, empty: _propTypes2.default.bool, showAdditionalResources: _propTypes2.default.bool }; ResourceGroup.defaultProps = { hideResourceToggleFilter: false, showAdditionalResources: false }; exports.default = ResourceGroup;