r = (Query, props, ...children) => {
  if (typeof Query === 'function' && Query.isComponent) {
    return new Query(children).setProps(props || {});
  }

  if (typeof Query === 'function') {
    const propsWithChildren = props || {};
    propsWithChildren.children = children;
    return Query(propsWithChildren);
  }

  const element = Object(_utils_getElementFromQuery__WEBPACK_IMPORTED_MODULE_1__["default"])(Query);

  if (props !== null) Object(_setAttributes__WEBPACK_IMPORTED_MODULE_0__["default"])(element, props);
  Object(_appendChildren__WEBPACK_IMPORTED_MODULE_2__["default"])(element, children);

  return element;
}
@param {*} query
@param {object} props
@param {...*} children
@returns {(HTMLElement|Component)}