wix-style-react
Version:
192 lines (154 loc) • 5.73 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.toggleButtonDriverFactory = void 0;
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
var _buttonNextUni = require("wix-ui-core/dist/src/components/button-next/button-next.uni.driver");
var _TooltipUni = require("../Tooltip/Tooltip.uni.driver");
var _unidriver = require("../../test/utils/unidriver");
var _constants = require("./constants");
var toggleButtonDriverFactory = function toggleButtonDriverFactory(base, body) {
var tooltipBaseElement = (0, _unidriver.findByHook)(base, _constants.dataHooks.tooltip);
var tooltipDriver = (0, _TooltipUni.tooltipDriverFactory)(tooltipBaseElement, body);
var buttonDriver = (0, _buttonNextUni.buttonNextDriverFactory)(base);
function getLabelPlacement() {
return _getLabelPlacement.apply(this, arguments);
}
function _getLabelPlacement() {
_getLabelPlacement = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4() {
return _regenerator["default"].wrap(function _callee4$(_context4) {
while (1) {
switch (_context4.prev = _context4.next) {
case 0:
return _context4.abrupt("return", (0, _unidriver.getDataAttributeValue)(base, _constants.dataAttr.placement));
case 1:
case "end":
return _context4.stop();
}
}
}, _callee4);
}));
return _getLabelPlacement.apply(this, arguments);
}
function getTooltipText() {
return tooltipDriver.getTooltipText();
} // Not using Omit so that AutoDocs will generate properly
return {
/**
* Checks whether ToggleButton exist
* @returns {Promise<boolean>}
*/
exists: buttonDriver.exists,
/**
* Gets the ToggleButton element
* @returns {Promise<any>}
*/
element: buttonDriver.element,
/**
* Clicks on the element
* @returns {Promise<void>}
*/
click: buttonDriver.click,
/**
* Checks whether ToggleButton is disabled
* @returns {Promise<boolean>}
*/
isButtonDisabled: buttonDriver.isButtonDisabled,
/**
* Gets the ToggleButton skin
* @returns {Promise<string | null>}
*/
getSkin: function () {
var _getSkin = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
return _regenerator["default"].wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return (0, _unidriver.getDataAttributeValue)(base, _constants.dataAttr.skin);
case 2:
return _context.abrupt("return", _context.sent);
case 3:
case "end":
return _context.stop();
}
}
}, _callee);
}));
function getSkin() {
return _getSkin.apply(this, arguments);
}
return getSkin;
}(),
/**
* Checks whether ToggleButton is selected
* @returns {Promise<boolean>}
*/
isButtonSelected: function () {
var _isButtonSelected = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
return _regenerator["default"].wrap(function _callee2$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return (0, _unidriver.getDataAttributeValue)(base, _constants.dataAttr.selected);
case 2:
_context2.t0 = _context2.sent;
return _context2.abrupt("return", _context2.t0 === 'true');
case 4:
case "end":
return _context2.stop();
}
}
}, _callee2);
}));
function isButtonSelected() {
return _isButtonSelected.apply(this, arguments);
}
return isButtonSelected;
}(),
/**
* Gets the ToggleButton label placement
* @returns {Promise<string>}
*/
getLabelPlacement: getLabelPlacement,
/**
* Gets the ToggleButton label placement value
* @returns {Promise<string>}
*/
getLabelValue: function () {
var _getLabelValue = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
var placement;
return _regenerator["default"].wrap(function _callee3$(_context3) {
while (1) {
switch (_context3.prev = _context3.next) {
case 0:
_context3.next = 2;
return getLabelPlacement();
case 2:
placement = _context3.sent;
if (!(placement === 'tooltip')) {
_context3.next = 5;
break;
}
return _context3.abrupt("return", getTooltipText());
case 5:
return _context3.abrupt("return", (0, _unidriver.findByHook)(base, _constants.dataHooks.label).text());
case 6:
case "end":
return _context3.stop();
}
}
}, _callee3);
}));
function getLabelValue() {
return _getLabelValue.apply(this, arguments);
}
return getLabelValue;
}()
};
};
exports.toggleButtonDriverFactory = toggleButtonDriverFactory;