mirror of https://git.lenooby09.tech/LeNooby09/social-app.git
1import React from 'react'
2import {Provider as ShellLayoutProvder} from './shell-layout'
3import {Provider as DrawerOpenProvider} from './drawer-open'
4import {Provider as DrawerSwipableProvider} from './drawer-swipe-disabled'
5import {Provider as MinimalModeProvider} from './minimal-mode'
6import {Provider as ColorModeProvider} from './color-mode'
7import {Provider as OnboardingProvider} from './onboarding'
8import {Provider as ComposerProvider} from './composer'
9import {Provider as TickEveryMinuteProvider} from './tick-every-minute'
10
11export {useIsDrawerOpen, useSetDrawerOpen} from './drawer-open'
12export {
13 useIsDrawerSwipeDisabled,
14 useSetDrawerSwipeDisabled,
15} from './drawer-swipe-disabled'
16export {useMinimalShellMode, useSetMinimalShellMode} from './minimal-mode'
17export {useThemePrefs, useSetThemePrefs} from './color-mode'
18export {useOnboardingState, useOnboardingDispatch} from './onboarding'
19export {useComposerState, useComposerControls} from './composer'
20export {useTickEveryMinute} from './tick-every-minute'
21
22export function Provider({children}: React.PropsWithChildren<{}>) {
23 return (
24 <ShellLayoutProvder>
25 <DrawerOpenProvider>
26 <DrawerSwipableProvider>
27 <MinimalModeProvider>
28 <ColorModeProvider>
29 <OnboardingProvider>
30 <ComposerProvider>
31 <TickEveryMinuteProvider>{children}</TickEveryMinuteProvider>
32 </ComposerProvider>
33 </OnboardingProvider>
34 </ColorModeProvider>
35 </MinimalModeProvider>
36 </DrawerSwipableProvider>
37 </DrawerOpenProvider>
38 </ShellLayoutProvder>
39 )
40}