wix-style-react
Version:
wix-style-react
41 lines (33 loc) • 1.89 kB
JavaScript
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; };
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
import React from 'react';
import PropTypes from 'prop-types';
import classnames from 'classnames';
import styles from './styles.scss';
var LinkLayout = function LinkLayout(_ref) {
var _classnames;
var children = _ref.children,
isDiminishedHover = _ref.isDiminishedHover,
isActive = _ref.isActive,
disabled = _ref.disabled,
className = _ref.className,
rest = _objectWithoutProperties(_ref, ['children', 'isDiminishedHover', 'isActive', 'disabled', 'className']);
return React.createElement(
'span',
_extends({
className: classnames(styles.linkLayout, (_classnames = {}, _defineProperty(_classnames, styles.linkActive, isActive), _defineProperty(_classnames, styles.linkDiminishedHover, isDiminishedHover), _defineProperty(_classnames, styles.linkDisabled, disabled), _classnames), className),
'data-hook': 'menu-navigation-link-wrapper',
'data-link-active': isActive // hack to allow styling
}, rest),
children
);
};
LinkLayout.propTypes = {
children: PropTypes.node,
isActive: PropTypes.bool,
isDiminishedHover: PropTypes.bool,
disabled: PropTypes.bool,
className: PropTypes.string
};
export default LinkLayout;