react-universal-interface
Version:
Universal Children Definition for React Components
35 lines • 1.69 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.divWrapper = void 0;
var tslib_1 = require("tslib");
var React = tslib_1.__importStar(require("react"));
var addClassDecoratorSupport_1 = tslib_1.__importDefault(require("./addClassDecoratorSupport"));
var h = React.createElement;
var noWrap = function (Comp, propName, props, state) {
var _a;
return h(Comp, propName ? tslib_1.__assign((_a = {}, _a[propName] = state, _a), props) : tslib_1.__assign(tslib_1.__assign({}, state), props));
};
exports.divWrapper = function (Comp, propName, props, state) {
return h('div', null, noWrap(Comp, propName, props, state));
};
var createEnhancer = function (Facc, prop, wrapper) {
if (wrapper === void 0) { wrapper = noWrap; }
var enhancer = function (Comp, propName, faccProps) {
if (propName === void 0) { propName = prop; }
if (faccProps === void 0) { faccProps = null; }
var isClassDecoratorMethodCall = typeof Comp === 'string';
if (isClassDecoratorMethodCall) {
return function (Klass) { return enhancer(Klass, Comp || prop, propName); };
}
var Enhanced = function (props) {
return h(Facc, faccProps, function (state) { return wrapper(Comp, propName, props, state); });
};
if (process.env.NODE_ENV !== 'production') {
Enhanced.displayName = (Facc.displayName || Facc.name) + "(" + (Comp.displayName || Comp.name) + ")";
}
return isClassDecoratorMethodCall ? addClassDecoratorSupport_1.default(Enhanced) : Enhanced;
};
return enhancer;
};
exports.default = createEnhancer;
//# sourceMappingURL=createEnhancer.js.map
;