UNPKG

wix-style-react

Version:
68 lines (61 loc) 2.04 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _testUtils = require('react-dom/test-utils'); var _testUtils2 = _interopRequireDefault(_testUtils); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var modalDriverFactory = function modalDriverFactory(_ref) { var _element = _ref.element; var getPortal = function getPortal() { return document.body.querySelector('.portal'); }; var getOverlay = function getOverlay() { return document.body.querySelector('.ReactModal__Overlay'); }; var getContent = function getContent() { return document.body.querySelector('.ReactModal__Content'); }; var isOpen = function isOpen() { return !!getContent(); }; var getCloseButton = function getCloseButton() { return document.body.querySelector('[data-hook="modal-close-button"]'); }; return { exists: function exists() { return !!getPortal(); }, element: function element() { return _element; }, isOpen: isOpen, isThemeExist: function isThemeExist(theme) { return !!getPortal().querySelector('.' + theme); }, getChildBySelector: function getChildBySelector(selector) { return getPortal().querySelector(selector); }, isScrollable: function isScrollable() { return !getPortal().classList.contains('portalNonScrollable'); }, closeButtonExists: function closeButtonExists() { return !!getCloseButton(); }, clickOnOverlay: function clickOnOverlay() { var overlay = getOverlay(); _testUtils2.default.Simulate.click(overlay); }, clickOnCloseButton: function clickOnCloseButton() { var button = getCloseButton(); _testUtils2.default.Simulate.click(button); }, getContentStyle: function getContentStyle() { return getContent().style; }, getContentLabel: function getContentLabel() { return getContent().getAttribute('aria-label'); } }; }; exports.default = modalDriverFactory;