ndla-ui
Version:
UI component library for NDLA.
116 lines (93 loc) • 4.73 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.LearningPathBadge = exports.SourceMaterialBadge = exports.ExternalLearningResourcesBadge = exports.SubjectBadge = exports.AssessmentResourcesBadge = exports.TasksAndActivitiesBadge = exports.SubjectMaterialBadge = exports.ContentTypeBadge = undefined;
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
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 _contentType = require('ndla-icons/contentType');
var _ContentType = require('../model/ContentType');
var contentTypes = _interopRequireWildcard(_ContentType);
var _shapes = require('../shapes');
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var classes = new _reactBemHelper2.default({
name: 'content-type-badge',
prefix: 'c-'
});
var ContentTypeBadge = exports.ContentTypeBadge = function ContentTypeBadge(_ref) {
var type = _ref.type,
background = _ref.background,
size = _ref.size;
var modifiers = [type, size];
if (background) {
modifiers.push('background');
}
var icon = null;
switch (type) {
case contentTypes.SUBJECT_MATERIAL:
icon = _react2.default.createElement(_contentType.SubjectMaterial, null);
break;
case contentTypes.TASKS_AND_ACTIVITIES:
icon = _react2.default.createElement(_contentType.TasksAndActivities, null);
break;
case contentTypes.ASSESSMENT_RESOURCES:
icon = _react2.default.createElement(_contentType.AssessmentResource, null);
break;
case contentTypes.SUBJECT:
icon = _react2.default.createElement(_contentType.Subject, null);
break;
case contentTypes.EXTERNAL_LEARNING_RESOURCES:
icon = _react2.default.createElement(_contentType.ExternalLearningResource, null);
break;
case contentTypes.SOURCE_MATERIAL:
icon = _react2.default.createElement(_contentType.SharedResource, null);
break;
case contentTypes.LEARNING_PATH:
icon = _react2.default.createElement(_contentType.LearningPath, null);
break;
default:
break;
}
return _react2.default.createElement(
'div',
classes('', modifiers),
icon
);
};
ContentTypeBadge.propTypes = {
size: _propTypes2.default.oneOf(['xx-small', 'x-small', 'small', 'large']),
type: _shapes.ContentTypeShape,
background: _propTypes2.default.bool
};
ContentTypeBadge.defaultProps = {
size: 'small'
};
var SubjectMaterialBadge = exports.SubjectMaterialBadge = function SubjectMaterialBadge(props) {
return _react2.default.createElement(ContentTypeBadge, _extends({}, props, { type: contentTypes.SUBJECT_MATERIAL }));
};
var TasksAndActivitiesBadge = exports.TasksAndActivitiesBadge = function TasksAndActivitiesBadge(props) {
return _react2.default.createElement(ContentTypeBadge, _extends({}, props, { type: contentTypes.TASKS_AND_ACTIVITIES }));
};
var AssessmentResourcesBadge = exports.AssessmentResourcesBadge = function AssessmentResourcesBadge(props) {
return _react2.default.createElement(ContentTypeBadge, _extends({}, props, { type: contentTypes.ASSESSMENT_RESOURCES }));
};
var SubjectBadge = exports.SubjectBadge = function SubjectBadge(props) {
return _react2.default.createElement(ContentTypeBadge, _extends({}, props, { type: contentTypes.SUBJECT }));
};
var ExternalLearningResourcesBadge = exports.ExternalLearningResourcesBadge = function ExternalLearningResourcesBadge(props) {
return _react2.default.createElement(ContentTypeBadge, _extends({}, props, {
type: contentTypes.EXTERNAL_LEARNING_RESOURCES
}));
};
var SourceMaterialBadge = exports.SourceMaterialBadge = function SourceMaterialBadge(props) {
return _react2.default.createElement(ContentTypeBadge, _extends({}, props, { type: contentTypes.SOURCE_MATERIAL }));
};
var LearningPathBadge = exports.LearningPathBadge = function LearningPathBadge(props) {
return _react2.default.createElement(ContentTypeBadge, _extends({}, props, { type: contentTypes.LEARNING_PATH }));
};