UNPKG

wix-style-react

Version:
85 lines (72 loc) 2.48 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _FloatingTabItem = require('../FloatingTabItem/FloatingTabItem.driver'); var _FloatingTabItem2 = _interopRequireDefault(_FloatingTabItem); var _Button = require('../Button/Button.driver'); var _Button2 = _interopRequireDefault(_Button); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var floatingTabsDriverFactory = function floatingTabsDriverFactory(_ref) { var element = _ref.element; var containers = Array.from(element.childNodes).map(function (container) { return (0, _FloatingTabItem2.default)({ element: container }); }); var getButtonById = function getButtonById(id) { return element.querySelector('[data-hook="floating-tab-item-button-' + id + '"]'); }; return { exists: function exists() { return !!element; }, // clickOnTabAt: index => buttonDrivers[index].click(), activeContent: function activeContent() { var activeContent = containers.find(function (c) { return c.isActive(); }); if (activeContent) { return activeContent.content(); } return null; }, activeTitle: function activeTitle() { var activeContent = containers.find(function (c) { return c.isActive(); }); if (activeContent) { return activeContent.content(); } return null; }, isButtonByIdExists: function isButtonByIdExists(id) { return !!getButtonById(id); }, getButtonTextById: function getButtonTextById(id) { return getButtonById(id).textContent; }, isButtonActive: function isButtonActive(id) { var button = getButtonById(id); if (button) { var buttonFactory = (0, _Button2.default)({ element: button }); return buttonFactory.hasTheme('fill'); } return undefined; }, isButtonHasClass: function isButtonHasClass(id, className) { var button = getButtonById(id); if (button) { var buttonFactory = (0, _Button2.default)({ element: button }); return buttonFactory.hasClass(className); } return undefined; }, clickButtonById: function clickButtonById(id) { var button = getButtonById(id); if (button) { var buttonFactory = (0, _Button2.default)({ element: button }); return buttonFactory.click(); } } }; }; exports.default = floatingTabsDriverFactory;