UNPKG

@mantine/core

Version:

React components library focused on usability, accessibility and developer experience

20 lines (17 loc) 791 B
import { useMemo } from 'react'; import { createUseStyles } from 'react-jss'; import { mergeClassNames } from './utils/merge-class-names/merge-class-names.js'; function createMemoStyles(styles) { const useStyles = createUseStyles(styles); return function useMemoStyles(args, classNames, name) { const validArgs = typeof args === "object" && args !== null; const dependencies = validArgs ? Object.keys(args).filter((key) => key !== "theme").map((key) => args[key]) : []; if (validArgs && "theme" in args) { dependencies.push(args.theme.colorScheme); } const stylesProps = useMemo(() => args, dependencies); return mergeClassNames(useStyles(stylesProps), classNames, name); }; } export { createMemoStyles }; //# sourceMappingURL=create-memo-styles.js.map