Repository URL to install this package:
|
Version:
1.2.13 ▾
|
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.asStateless = exports.fromClassToRender = fromClassToRender;
exports.default = void 0;
var _exotic = require("exotic");
function fromClassToRender(Target) {
const render = Target.prototype.render;
if ((0, _exotic.isFunction)(render)) {
throw new Error('missing render function ' + Target.name);
} // args in the method
const arity = render.length; // already is functional
if (arity > 0) {
return render;
} // take in arguments
// put on function
// apply the function as the thisArg to the class
function statelessWrapper(props, context) {
const thisArg = {
props,
context
};
return render.call(thisArg, props, context);
}
return statelessWrapper; // if (process.env.NODE_ENV !== 'production') {
// statelessWrapper.displayName =
// }
}
var _default = fromClassToRender;
exports.default = _default;