@mantine/core
Version:
React components library focused on usability, accessibility and developer experience
61 lines (58 loc) • 1.35 kB
JavaScript
'use client';
import 'react';
import '@mantine/hooks';
import { useMantineClassNamesPrefix } from '../../MantineProvider/Mantine.context.mjs';
import '../../MantineProvider/default-theme.mjs';
import '../../MantineProvider/MantineProvider.mjs';
import { useMantineTheme } from '../../MantineProvider/MantineThemeProvider/MantineThemeProvider.mjs';
import { getClassName } from './get-class-name/get-class-name.mjs';
import { getStyle } from './get-style/get-style.mjs';
function useStyles({
name,
classes,
props,
stylesCtx,
className,
style,
rootSelector = "root",
unstyled,
classNames,
styles,
vars,
varsResolver
}) {
const theme = useMantineTheme();
const classNamesPrefix = useMantineClassNamesPrefix();
const themeName = (Array.isArray(name) ? name : [name]).filter((n) => n);
return (selector, options) => ({
className: getClassName({
theme,
options,
themeName,
selector,
classNamesPrefix,
classNames,
classes,
unstyled,
className,
rootSelector,
props,
stylesCtx
}),
style: getStyle({
theme,
themeName,
selector,
options,
props,
stylesCtx,
rootSelector,
styles,
style,
vars,
varsResolver
})
});
}
export { useStyles };
//# sourceMappingURL=use-styles.mjs.map