function isComponentClass(Component) {
	// return Component.prototype instanceof React.Component
	// `React.memo()` returns `.prototype === undefined` for some reason.
	return Component.prototype && Component.prototype.isReactComponent
}
/**
 * Checks if the argument is a `React.Component` class.
 * https://overreacted.io/how-does-react-tell-a-class-from-a-function/
 * @param  {any}  Component
 * @return {object} [result] Returns `undefined` if it's not a `React.Component`. Returns an empty object if it's a `React.Component` (`.isReactComponent` is an empty object).
 */
Checks if the argument is a `React.Component` class.
Checks if the argument is a ` React . Component ` class .
function isComponentClass(Component) {
	return Component.prototype && Component.prototype.isReactComponent
}
function isComponentClass ( Component ) { return Component . prototype && Component . prototype . isReactComponent }
Checks if the argument is a `React.Component` class.
Checks if the argument is a ` React . Component ` class .
// return Component.prototype instanceof React.Component // `React.memo()` returns `.prototype === undefined` for some reason.