wix-style-react
Version:
wix-style-react
85 lines (72 loc) • 2.48 kB
JavaScript
;
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;