UNPKG

wix-style-react

Version:
161 lines (132 loc) 5.11 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _testUtils = _interopRequireDefault(require("react-dom/test-utils")); var _vanilla = require("wix-ui-test-utils/vanilla"); var _Loader = _interopRequireDefault(require("../Loader/Loader.driver")); var _Selector = _interopRequireDefault(require("../Selector/Selector.driver")); var _Search = _interopRequireDefault(require("../Search/Search.driver")); var _Text = _interopRequireDefault(require("../Text/Text.driver")); var _SelectorList = require("../SelectorList/SelectorList.helpers"); var _Checkbox = _interopRequireDefault(require("../Checkbox/Checkbox.driver")); var _ButtonLegacy = _interopRequireDefault(require("../Button/Button.legacy.driver")); var textTestkitFactory = (0, _vanilla.testkitFactoryCreator)(_Text["default"]); var loaderTestkitFactory = (0, _vanilla.testkitFactoryCreator)(_Loader["default"]); var buttonTestkitFactory = (0, _vanilla.testkitFactoryCreator)(_ButtonLegacy["default"]); var searchTestkitFactory = (0, _vanilla.testkitFactoryCreator)(_Search["default"]); var checkboxTestkitFactory = (0, _vanilla.testkitFactoryCreator)(_Checkbox["default"]); var modalSelectorLayoutDriverFactory = function modalSelectorLayoutDriverFactory(_ref) { var element = _ref.element; var findInModalByDataHook = function findInModalByDataHook(dataHook) { return element.querySelector("[data-hook=\"".concat(dataHook, "\"]")); }; var mainLoaderDriver = function mainLoaderDriver() { return loaderTestkitFactory({ wrapper: element, dataHook: _SelectorList.dataHooks.mainLoader }); }; var nextPageLoaderDriver = function nextPageLoaderDriver() { return loaderTestkitFactory({ wrapper: element, dataHook: _SelectorList.dataHooks.nextPageLoader }); }; var cancelButtonDriver = function cancelButtonDriver() { return buttonTestkitFactory({ wrapper: element, dataHook: 'cancellation-button' }); }; var okButtonDriver = function okButtonDriver() { return buttonTestkitFactory({ wrapper: element, dataHook: 'confirmation-button' }); }; var subtitleTextDriver = function subtitleTextDriver() { return textTestkitFactory({ wrapper: element, dataHook: _SelectorList.dataHooks.subtitle }); }; var searchDriver = function searchDriver() { return searchTestkitFactory({ wrapper: element, dataHook: _SelectorList.dataHooks.search }); }; var getList = function getList() { return findInModalByDataHook(_SelectorList.dataHooks.list); }; var getSelectorListContent = function getSelectorListContent() { return findInModalByDataHook(_SelectorList.dataHooks.content); }; var getSelectors = function getSelectors() { return getList().querySelectorAll("[data-hook=\"".concat(_SelectorList.dataHooks.selector, "\"]")); }; var selectorDriverAt = function selectorDriverAt(i) { return (0, _Selector["default"])({ element: getSelectors()[i] }); }; var emptyState = function emptyState() { return findInModalByDataHook(_SelectorList.dataHooks.emptyState); }; var noResultsFoundState = function noResultsFoundState() { return findInModalByDataHook(_SelectorList.dataHooks.noResultsFoundState); }; var _footerSelector = checkboxTestkitFactory({ wrapper: element, dataHook: _SelectorList.dataHooks.toggleAllCheckbox }); return { exists: function exists() { return !!element; }, mainLoaderDriver: mainLoaderDriver, nextPageLoaderDriver: nextPageLoaderDriver, cancelButtonDriver: cancelButtonDriver, okButtonDriver: okButtonDriver, searchDriver: searchDriver, subtitleTextDriver: subtitleTextDriver, getTitle: function getTitle() { return findInModalByDataHook('header-layout-title').textContent; }, clickOnClose: function clickOnClose() { return _testUtils["default"].Simulate.click(findInModalByDataHook('header-close-button')); }, showsEmptyState: function showsEmptyState() { return !!emptyState(); }, getEmptyState: function getEmptyState() { return emptyState().childNodes[0]; }, showsNoResultsFoundState: function showsNoResultsFoundState() { return !!noResultsFoundState(); }, getNoResultsFoundState: function getNoResultsFoundState() { return noResultsFoundState().childNodes[0]; }, listExists: function listExists() { return !!getList(); }, numberOfItemsInList: function numberOfItemsInList() { return getSelectors().length; }, getSelectorDriverAt: function getSelectorDriverAt(i) { return selectorDriverAt(i); }, scrollDown: function scrollDown() { return getSelectorListContent().dispatchEvent(new Event('scroll')); }, footerSelector: function footerSelector() { return _footerSelector; } }; }; var _default = modalSelectorLayoutDriverFactory; exports["default"] = _default;