ndla-ui
Version:
UI component library for NDLA.
84 lines (67 loc) • 3.65 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
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; }; /**
* Copyright (c) 2016-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 _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);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var classes = new _reactBemHelper2.default({
name: 'translation',
prefix: 'c-'
});
var TranslationLine = function TranslationLine(_ref) {
var children = _ref.children,
lang = _ref.lang,
langName = _ref.langName,
isTerm = _ref.isTerm;
var hasLang = langName && lang;
var content = _react2.default.createElement(
_react.Fragment,
null,
_react2.default.createElement(
'div',
_extends({}, classes('line-body'), { lang: lang }),
children
),
hasLang && _react2.default.createElement(
'div',
classes('line-lang'),
langName
)
);
if (isTerm) {
return _react2.default.createElement(
'dt',
classes('line', hasLang ? 'lang' : ''),
content
);
}
return _react2.default.createElement(
'dd',
classes('line', hasLang ? 'lang' : ''),
content
);
};
TranslationLine.propTypes = {
isTerm: _propTypes2.default.bool,
children: _propTypes2.default.node.isRequired,
lang: _propTypes2.default.string,
langName: _propTypes2.default.string
};
TranslationLine.defaultProps = {
isTerm: false,
lang: undefined,
langName: undefined
};
exports.default = TranslationLine;