UNPKG

wix-style-react

Version:
64 lines (50 loc) 1.93 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.iconDriverFactory = exports.componentFactory = exports.iconTestkitFactory = void 0; var _react = _interopRequireDefault(require("react")); var _reactDom = _interopRequireDefault(require("react-dom")); var _IconAffix = _interopRequireDefault(require("../IconAffix")); var _InputContext = require("../../InputContext"); var iconDriverFactory = function iconDriverFactory(_ref) { var element = _ref.element; return { isEmpty: function isEmpty() { return element.children.length === 0; }, hasChild: function hasChild(style) { return !!element.querySelector(style); } }; }; exports.iconDriverFactory = iconDriverFactory; var componentFactory = function componentFactory() { var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var context = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; var element; var wrapperDiv = document.createElement('div'); _reactDom["default"].render( /*#__PURE__*/_react["default"].createElement("div", { ref: function ref(r) { return element = r; } }, /*#__PURE__*/_react["default"].createElement(_InputContext.InputContext.Provider, { value: context }, /*#__PURE__*/_react["default"].createElement(_IconAffix["default"], props))), wrapperDiv); return { element: element.childNodes[0], wrapper: wrapperDiv }; }; exports.componentFactory = componentFactory; var iconTestkitFactory = function iconTestkitFactory(_ref2) { var wrapper = _ref2.wrapper, dataHook = _ref2.dataHook; var element = wrapper.querySelector("[data-hook='".concat(dataHook, "']")); return iconDriverFactory({ element: element, wrapper: wrapper }); }; exports.iconTestkitFactory = iconTestkitFactory;