wix-style-react
Version:
wix-style-react
46 lines (40 loc) • 1.76 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; };
import ReactTestUtils from 'react-dom/test-utils';
import { ThemeOptions } from '../BaseComponents/TextLinkLayout/TextLinkLayout';
import textLinkLayoutDriverFactory from '../BaseComponents/TextLinkLayout/TextLinkLayout.driver';
var textLinkDriverFactory = function textLinkDriverFactory(_ref) {
var element = _ref.element;
var textLinkLayoutElement = element ? element.children[0] : null;
var textLinkLayoutDriver = textLinkLayoutElement ? textLinkLayoutDriverFactory({ element: textLinkLayoutElement }) : {};
return _extends({}, textLinkLayoutDriver, {
exists: function exists() {
return !!element;
},
isDisabled: function isDisabled() {
return element.getAttribute('disabled') !== null;
},
click: function click() {
var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
return ReactTestUtils.Simulate.click(element, event);
},
getTheme: function getTheme() {
var color = textLinkLayoutDriver.getColor();
if (color === 'rgb(240, 244, 247)') {
return ThemeOptions.DARK_BACKGROUND.type;
} else if (color === 'rgb(22, 45, 61)') {
return ThemeOptions.GREYSCALE.type;
}
return ThemeOptions.NORMAL.type;
},
getLink: function getLink() {
return element.href;
},
getTarget: function getTarget() {
return element.target;
},
getRel: function getRel() {
return element.rel;
}
});
};
export default textLinkDriverFactory;