Logos DX
    Preparing search index...

    Function composeProviders

    • Composes multiple React providers into a single wrapper component, eliminating deeply nested provider trees.

      Accepts bare providers (children-only) or [Provider, props] tuples for providers that need configuration. Providers are nested in the order given — first entry becomes the outermost wrapper.

      import { compose } from '@logosdx/react';
      
      // Without compose — the pyramid of doom:
      <AppObserver>
          <ApiFetch>
              <AppStorage>
                  <AppLocale>
                      <App />
                  </AppLocale>
              </AppStorage>
          </ApiFetch>
      </AppObserver>
      
      // With compose:
      const Providers = compose(
          AppObserver,
          ApiFetch,
          AppStorage,
          AppLocale,
      );
      
      <Providers>
          <App />
      </Providers>
      
      // With props for providers that need configuration:
      const Providers = compose(
          AppObserver,
          [ThemeProvider, { theme: 'dark' }],
          ApiFetch,
      );
      

      Parameters

      • ...providers: ProviderEntry[]

        Provider components or [Provider, props] tuples

      Returns (props: ProviderProps) => ReactNode

      A single component that nests all providers around its children