@wix/design-system
Version:
@wix/design-system
41 lines (40 loc) • 2.3 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports.default = void 0;
var _toArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toArray"));
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
var _constants = require("./constants");
var _deprecationTestkitLog = _interopRequireDefault(require("../utils/deprecationTestkitLog"));
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
var selector = element => hook => element.querySelectorAll("[data-hook=\"".concat(hook, "\"]"));
var _default = _ref => {
var element = _ref.element;
(0, _deprecationTestkitLog.default)('skeletonTestkitFactory legacy testkit is deprecated and will be removed in next major release. Please use the SkeletonTestkit unidriver testkit instead.');
var byHook = selector(element);
return {
exists: () => !!element,
/** return number of lines rendered */
getNumLines: () => byHook(_constants.dataHooks.line).length,
/** return boolean representing whether given spacing is rendered */
hasSpacing: spacing => element.getAttribute('data-spacing') === spacing,
/** return boolean representing whether given list of sizes is rendered */
hasSizes: sizes => {
var _Array$from$reduce = Array.from(byHook(_constants.dataHooks.chunk)).reduce((_ref2, chunkElement) => {
var _ref3 = (0, _slicedToArray2.default)(_ref2, 2),
result = _ref3[0],
_ref3$ = (0, _toArray2.default)(_ref3[1]),
expectedSize = _ref3$[0],
restSizes = _arrayLikeToArray(_ref3$).slice(1);
return [result.concat(chunkElement.getAttribute('data-size') === expectedSize), restSizes];
}, [[], sizes]),
_Array$from$reduce2 = (0, _slicedToArray2.default)(_Array$from$reduce, 1),
assertions = _Array$from$reduce2[0];
return assertions.every(Boolean);
},
/** return boolean representing whether given alignment is rendered */
hasAlignment: alignment => element.getAttribute('data-alignment') === alignment
};
};
exports.default = _default;
//# sourceMappingURL=Skeleton.driver.js.map