UNPKG

@acrool/react-providers

Version:

This is a compose providers avoid nesting for React Function

26 lines (25 loc) 559 B
import { createElement as n, Fragment as u } from "react"; const a = (r) => "Comp" in r, P = (r, e) => ({ Comp: r, props: e }), f = (r, e = "ComposedProviders") => (c) => { const d = [...r, c].reverse(); function t(s) { return d.reduce( (i, o) => { if (a(o)) { const { Comp: m, props: p } = o; return n(m, p, i); } return n(o, s, i); }, n(u, null, s.children) ); } return t.displayName = e, t; }; export { a as checkIsProviderObj, f as default, P as providerWithProps };