UNPKG

wix-style-react

Version:
264 lines (216 loc) • 8.58 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.thumbnailDriverFactory = void 0; var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator")); var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator")); var _unidriver = require("../../test/utils/unidriver"); var _TextUni = require("../Text/Text.uni.driver"); var _constants = require("./constants"); function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } var thumbnailDriverFactory = function thumbnailDriverFactory(base) { var byHook = function byHook(hook) { return base.$("[data-hook*=\"".concat(hook, "\"]")); }; var getThumbnailWrapper = function getThumbnailWrapper() { return byHook(_constants.dataHooks.thumbnailWrapper); }; var getStyle = /*#__PURE__*/function () { var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(element, rule) { return _regenerator["default"].wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: _context.next = 2; return element.attr('style'); case 2: return _context.abrupt("return", _context.sent.match(new RegExp("".concat(rule, ": (.*?);")))[1]); case 3: case "end": return _context.stop(); } } }, _callee); })); return function getStyle(_x, _x2) { return _ref.apply(this, arguments); }; }(); return _objectSpread(_objectSpread({}, (0, _unidriver.baseUniDriverFactory)(base)), {}, { /** * Gets thumbnail title * @returns {Promise<string>} */ getTitle: function () { var _getTitle = (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.t0 = _TextUni.textUniDriverFactory; _context2.next = 3; return byHook(_constants.dataHooks.thumbnailTitle); case 3: _context2.t1 = _context2.sent; _context2.next = 6; return (0, _context2.t0)(_context2.t1); case 6: return _context2.abrupt("return", _context2.sent.getText()); case 7: case "end": return _context2.stop(); } } }, _callee2); })); function getTitle() { return _getTitle.apply(this, arguments); } return getTitle; }(), /** * Gets thumbnail description * @returns {Promise<string>} */ getDescription: function getDescription() { return byHook(_constants.dataHooks.thumbnailDescription).text(); }, /** * Gets selected icon driver * @returns {Promise<UniDriver>} */ getSelectedIcon: function getSelectedIcon() { return byHook(_constants.dataHooks.thumbnailSelectedIcon); }, /** * Gets background image driver * @returns {Promise<UniDriver>} */ getBackgroundImage: function getBackgroundImage() { return byHook(_constants.dataHooks.thumbnailBackgroundImage); }, /** * Checks whether Thumbnail is selected * @returns {Promise<boolean>} */ isSelected: function () { var _isSelected = (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 getThumbnailWrapper().attr('data-selected'); case 2: _context3.t0 = _context3.sent; return _context3.abrupt("return", _context3.t0 === 'true'); case 4: case "end": return _context3.stop(); } } }, _callee3); })); function isSelected() { return _isSelected.apply(this, arguments); } return isSelected; }(), /** * Checks whether Thumbnail is disabled * @returns {Promise<boolean>} */ isDisabled: function () { var _isDisabled = (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 getThumbnailWrapper().attr('data-disabled'); case 2: _context4.t0 = _context4.sent; return _context4.abrupt("return", _context4.t0 === 'true'); case 4: case "end": return _context4.stop(); } } }, _callee4); })); function isDisabled() { return _isDisabled.apply(this, arguments); } return isDisabled; }(), /** * Gets thumbnail image driver * @returns {Promise<UniDriver>} */ getImage: function getImage() { return byHook(_constants.dataHooks.thumbnailImage); }, /** * Gets thumbnail width, if it's set through `width` prop * @returns {Promise<string>} */ getWidth: function () { var _getWidth = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5() { return _regenerator["default"].wrap(function _callee5$(_context5) { while (1) { switch (_context5.prev = _context5.next) { case 0: _context5.next = 2; return getStyle(base, 'width'); case 2: return _context5.abrupt("return", _context5.sent); case 3: case "end": return _context5.stop(); } } }, _callee5); })); function getWidth() { return _getWidth.apply(this, arguments); } return getWidth; }(), /** * Gets thumbnail height, if it's set through `height` prop * @returns {Promise<string>} * */ getHeight: function () { var _getHeight = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6() { return _regenerator["default"].wrap(function _callee6$(_context6) { while (1) { switch (_context6.prev = _context6.next) { case 0: _context6.t0 = getStyle; _context6.next = 3; return getThumbnailWrapper(); case 3: _context6.t1 = _context6.sent; _context6.next = 6; return (0, _context6.t0)(_context6.t1, 'height'); case 6: return _context6.abrupt("return", _context6.sent); case 7: case "end": return _context6.stop(); } } }, _callee6); })); function getHeight() { return _getHeight.apply(this, arguments); } return getHeight; }() }); }; exports.thumbnailDriverFactory = thumbnailDriverFactory;