wix-style-react
Version:
49 lines (45 loc) • 1.52 kB
JavaScript
import React from 'react';
import ReactDOM from 'react-dom';
import Custom from '../Affix';
import { InputContext } from '../../InputContext';
var customDriverFactory = function customDriverFactory(_ref) {
var element = _ref.element;
return {
isEmpty: function isEmpty() {
return element.children.length === 0;
},
hasChild: function hasChild(style) {
return !!element.querySelector(style);
},
getValue: function getValue() {
return element.textContent;
}
};
};
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.render( /*#__PURE__*/React.createElement("div", {
ref: function ref(r) {
return element = r;
}
}, /*#__PURE__*/React.createElement(InputContext.Provider, {
value: context
}, /*#__PURE__*/React.createElement(Custom, props))), wrapperDiv);
return {
element: element.childNodes[0],
wrapper: wrapperDiv
};
};
var customTestkitFactory = function customTestkitFactory(_ref2) {
var wrapper = _ref2.wrapper,
dataHook = _ref2.dataHook;
var element = wrapper.querySelector("[data-hook='".concat(dataHook, "']"));
return customDriverFactory({
element: element,
wrapper: wrapper
});
};
export { customTestkitFactory, componentFactory, customDriverFactory };