react-combine-provider
Version:
Combine react providers in ease
26 lines (22 loc) • 945 B
JavaScript
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('react')) :
typeof define === 'function' && define.amd ? define(['exports', 'react'], factory) :
(global = global || self, factory(global['react-combine-provider'] = {}, global.React));
}(this, function (exports, React) { 'use strict';
const combineProviders = providers => {
return ({
children
}) => {
return providers.reduce((tree, ProviderOrWithValue) => {
if (Array.isArray(ProviderOrWithValue)) {
const [Provider, value] = ProviderOrWithValue;
return React.createElement(Provider, Object.assign({}, value), tree);
} else {
return React.createElement(ProviderOrWithValue, null, tree);
}
}, children);
};
};
exports.combineProviders = combineProviders;
}));
//# sourceMappingURL=react-combine-provider.umd.development.js.map