Repository URL to install this package:
|
Version:
1.2.12 ▾
|
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.providesChildContext = exports.isClassComponent = exports.isReactElement = exports.getProps = exports.getType = exports.getChildren = exports.ensureChild = exports.defaultOptions = void 0;
const defaultOptions = {
componentWillUnmount: false
};
exports.defaultOptions = defaultOptions;
const ensureChild = child => child && typeof child.render === 'function' ? ensureChild(child.render()) : child; // Preact puts children directly on element, and React via props
exports.ensureChild = ensureChild;
const getChildren = element => element.props && element.props.children ? element.props.children : element.children ? element.children : undefined; // Preact uses "nodeName", React uses "type"
exports.getChildren = getChildren;
const getType = element => element.type || element.nodeName; // Preact uses "attributes", React uses "props"
exports.getType = getType;
const getProps = element => element.props || element.attributes;
exports.getProps = getProps;
const isReactElement = element => !!getType(element);
exports.isReactElement = isReactElement;
const isClassComponent = Comp => Comp.prototype && (Comp.prototype.render || Comp.prototype.isReactComponent || Comp.prototype.isPureReactComponent);
exports.isClassComponent = isClassComponent;
const providesChildContext = instance => !!instance.getChildContext;
exports.providesChildContext = providesChildContext;