UNPKG

wix-style-react

Version:
109 lines (90 loc) 4.62 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _PopoverMenu = require('../PopoverMenu/PopoverMenu.driver'); var _PopoverMenu2 = _interopRequireDefault(_PopoverMenu); var _Tooltip = require('../Tooltip/Tooltip.driver'); var _Tooltip2 = _interopRequireDefault(_Tooltip); var _ButtonDriver = require('../Backoffice/Button/Button.driver.js'); var _ButtonDriver2 = _interopRequireDefault(_ButtonDriver); var _privateDrivers = require('../../test/utils/private-drivers'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } var tableActionCellDriverFactory = function tableActionCellDriverFactory(_ref) { var _element = _ref.element; var getPrimaryActionPlaceholder = function getPrimaryActionPlaceholder() { return _element.querySelector('[data-hook="table-action-cell-placeholder"]'); }; var getVisibleActionsWrapper = function getVisibleActionsWrapper() { return _element.querySelector('[data-hook="table-action-cell-visible-actions"]'); }; var getPrimaryActionButtonDriver = function getPrimaryActionButtonDriver() { return (0, _ButtonDriver2.default)({ element: _element.querySelector('[data-hook="table-action-cell-primary-action"] button') }); }; var getVisibleActionTooltipDriver = function getVisibleActionTooltipDriver(actionIndex) { return (0, _Tooltip2.default)({ element: getVisibleActionsWrapper().querySelectorAll('[data-hook="table-action-cell-visible-action-tooltip"]')[actionIndex] }); }; var getVisibleActionButtonDriver = function getVisibleActionButtonDriver(actionIndex) { return (0, _ButtonDriver2.default)({ element: getVisibleActionsWrapper().querySelectorAll('button')[actionIndex] }); }; var getHiddenActionsPopoverMenuDriver = function getHiddenActionsPopoverMenuDriver() { return (0, _PopoverMenu2.default)({ element: _element.querySelector('[data-hook="table-action-cell-popover-menu"]') }).init.menuItemDataHook('table-action-cell-popover-menu-item').init.parentElement(_element); }; return _defineProperty({ /** Get the element */ element: function element() { return _element; }, /** Whether the element exists */ exists: function exists() { return !!_element; }, /** Get the driver of the primary action <Button/> from the action column */ getPrimaryActionButtonDriver: getPrimaryActionButtonDriver, /** Click the primary action button from the action column */ clickPrimaryActionButton: function clickPrimaryActionButton() { return getPrimaryActionButtonDriver().click(); }, /** Get the number of the visible secondary actions */ getVisibleActionsCount: function getVisibleActionsCount() { return getVisibleActionsWrapper().childElementCount; }, /** Get the number of hidden secondary actions (in the <PopoverMenu/>, requires it to be open) */ getHiddenActionsCount: function getHiddenActionsCount() { return getHiddenActionsPopoverMenuDriver().menu.itemsLength(); }, /** Get the driver of a specific visible secondary action <Tooltip/> */ getVisibleActionTooltipDriver: getVisibleActionTooltipDriver, /** Get the driver of a specific visible secondary action <Button/> */ getVisibleActionButtonDriver: getVisibleActionButtonDriver, /** Get the driver of the hidden secondary action <PopoverMenu/> */ getHiddenActionsPopoverMenuDriver: getHiddenActionsPopoverMenuDriver, /** Click an a visible secondary action */ clickVisibleAction: function clickVisibleAction(actionIndex) { return getVisibleActionButtonDriver(actionIndex).click(); }, /** Click on the hidden secondary actions <PopoverMenu/> */ clickPopoverMenu: function clickPopoverMenu() { return getHiddenActionsPopoverMenuDriver().click(); }, /** Click on a hidden secondary action (requires the <PopoverMenu/> to be open) */ clickHiddenAction: function clickHiddenAction(actionIndex) { return getHiddenActionsPopoverMenuDriver().menu.clickItemAt(actionIndex); } }, _privateDrivers.INTERNAL_DRIVER_SYMBOL, { /** Whether the primary action placeholder exists */ primaryActionPlaceholderExists: function primaryActionPlaceholderExists() { return !!getPrimaryActionPlaceholder(); } }); }; exports.default = tableActionCellDriverFactory;