UNPKG

wix-style-react

Version:
51 lines (43 loc) 1.74 kB
import _toArray from "@babel/runtime/helpers/toArray"; import _slicedToArray from "@babel/runtime/helpers/slicedToArray"; import { dataHooks } from './constants'; var selector = function selector(element) { return function (hook) { return element.querySelectorAll("[data-hook=\"".concat(hook, "\"]")); }; }; export default (function (_ref) { var element = _ref.element; var byHook = selector(element); return { exists: function exists() { return !!element; }, /** return number of lines rendered */ getNumLines: function getNumLines() { return byHook(dataHooks.line).length; }, /** return boolean representing whether given spacing is rendered */ hasSpacing: function hasSpacing(spacing) { return element.getAttribute('data-spacing') === spacing; }, /** return boolean representing whether given list of sizes is rendered */ hasSizes: function hasSizes(sizes) { var _Array$from$reduce = Array.from(byHook(dataHooks.chunk)).reduce(function (_ref2, chunkElement) { var _ref3 = _slicedToArray(_ref2, 2), result = _ref3[0], _ref3$ = _toArray(_ref3[1]), expectedSize = _ref3$[0], restSizes = _ref3$.slice(1); return [result.concat(chunkElement.getAttribute('data-size') === expectedSize), restSizes]; }, [[], sizes]), _Array$from$reduce2 = _slicedToArray(_Array$from$reduce, 1), assertions = _Array$from$reduce2[0]; return assertions.every(Boolean); }, /** return boolean representing whether given alignment is rendered */ hasAlignment: function hasAlignment(alignment) { return element.getAttribute('data-alignment') === alignment; } }; });