wix-style-react
Version:
150 lines (123 loc) • 4.44 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.segmentedToggleDriverFactory = void 0;
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
var segmentedToggleDriverFactory = function segmentedToggleDriverFactory(base) {
var findChild = function findChild(hook) {
if (typeof hook === 'string') {
return base.$("[data-hook=\"".concat(hook, "\"]"));
}
return base.$("[data-click=\"segmented-toggle-".concat(hook, "\"]"));
};
return {
/**
* Selects child by given number (selection begins with 1) or dataHook
* @param {string | number} hook Hook name or index
* @returns { Promise<void>}
*/
selectChild: function () {
var _selectChild = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(hook) {
return _regenerator["default"].wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
return _context.abrupt("return", findChild(hook).click());
case 1:
case "end":
return _context.stop();
}
}
}, _callee);
}));
function selectChild(_x) {
return _selectChild.apply(this, arguments);
}
return selectChild;
}(),
/**
* Returns true if child is selected by given number (selection begins with 1) or dataHook
* @param {string | number} hook Hook name or index
* @returns { Promise<void>}
*/
isSelected: function () {
var _isSelected = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(hook) {
return _regenerator["default"].wrap(function _callee2$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return findChild(hook).attr('aria-selected');
case 2:
_context2.t0 = _context2.sent;
return _context2.abrupt("return", _context2.t0 === 'true');
case 4:
case "end":
return _context2.stop();
}
}
}, _callee2);
}));
function isSelected(_x2) {
return _isSelected.apply(this, arguments);
}
return isSelected;
}(),
/**
* Checks whether element is in the DOM
* @returns { Promise<boolean>}
*/
exists: function () {
var _exists = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
return _regenerator["default"].wrap(function _callee3$(_context3) {
while (1) {
switch (_context3.prev = _context3.next) {
case 0:
_context3.next = 2;
return base.exists();
case 2:
return _context3.abrupt("return", _context3.sent);
case 3:
case "end":
return _context3.stop();
}
}
}, _callee3);
}));
function exists() {
return _exists.apply(this, arguments);
}
return exists;
}(),
/**
* Gets the actual element
* @returns { Promise<any>}
*/
element: function () {
var _element = (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:
_context4.next = 2;
return base.getNative();
case 2:
return _context4.abrupt("return", _context4.sent);
case 3:
case "end":
return _context4.stop();
}
}
}, _callee4);
}));
function element() {
return _element.apply(this, arguments);
}
return element;
}() // eslint-disable-line no-restricted-properties
};
};
exports.segmentedToggleDriverFactory = segmentedToggleDriverFactory;