UNPKG

ndla-ui

Version:

UI component library for NDLA.

92 lines (72 loc) 2.43 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.Logo = exports.logoClasses = undefined; 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 _SvgLogo = require('./SvgLogo'); var _SvgLogo2 = _interopRequireDefault(_SvgLogo); var _SafeLink = require('../common/SafeLink'); var _SafeLink2 = _interopRequireDefault(_SafeLink); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var logoClasses = exports.logoClasses = new _reactBemHelper2.default({ name: 'logo', prefix: 'c-' }); /** * 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. * */ /* eslint-disable max-len */ var Logo = exports.Logo = function Logo(_ref) { var name = _ref.name, to = _ref.to, cssModifier = _ref.cssModifier, color = _ref.color, large = _ref.large, locale = _ref.locale, label = _ref.label; var modifiers = { large: large }; if (cssModifier) { modifiers[cssModifier] = true; } var logo = to ? _react2.default.createElement( _SafeLink2.default, { to: to, 'aria-label': label }, _react2.default.createElement(_SvgLogo2.default, { name: name, color: color, locale: locale }) ) : _react2.default.createElement( _react.Fragment, null, _react2.default.createElement(_SvgLogo2.default, { name: name, color: color, locale: locale }) ); return _react2.default.createElement( 'h1', logoClasses('', modifiers), logo ); }; Logo.propTypes = { to: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({ pathname: _propTypes2.default.string.isRequired, search: _propTypes2.default.string, hash: _propTypes2.default.string })]), label: _propTypes2.default.string.isRequired, locale: _propTypes2.default.string, cssModifier: _propTypes2.default.string, large: _propTypes2.default.bool, name: _propTypes2.default.bool, color: _propTypes2.default.string }; Logo.defaultProps = { name: true, large: false }; exports.default = Logo;