UNPKG

reflexy

Version:

Flexbox layout react components

17 lines (16 loc) 1.04 kB
'use client'; import { jsx as _jsx } from "react/jsx-runtime"; import React from 'react'; import ThemeProvider, {} from '@mui/system/ThemeProvider'; import useTheme from '@mui/system/useTheme'; import FlexProviderBase, { FlexContext } from '../FlexProvider'; export {}; function ReflexyThemeProvider(props) { const { defaultUnit, defaultSize, defaultSizes } = React.use(FlexContext); const theme = React.useMemo(() => Object.freeze({ reflexy: { defaultUnit, defaultSize, defaultSizes } }), [defaultSize, defaultSizes, defaultUnit]); return _jsx(ThemeProvider, { theme: theme, ...props }); } export default function FlexProvider({ defaultUnit, defaultSize, defaultSizes, children, ...rest }) { const upperTheme = useTheme(); return (_jsx(FlexProviderBase, { defaultUnit: defaultUnit ?? upperTheme?.reflexy?.defaultUnit, defaultSize: defaultSize ?? upperTheme?.reflexy?.defaultSize, defaultSizes: defaultSizes ?? upperTheme?.reflexy?.defaultSizes, ...rest, children: _jsx(ReflexyThemeProvider, { children: children }) })); }