UNPKG

@nex-ui/react

Version:

🎉 A beautiful, modern, and reliable React component library.

31 lines (28 loc) • 879 B
import { useMemo } from 'react'; import { defineSlotRecipe, defineRecipe } from '@nex-ui/system'; import { useNexUI } from '../provider/Context.mjs'; const useStyles = ({ name, ownerState, recipe })=>{ const { components } = useNexUI(); const styleOverrides = components?.[name]?.styleOverrides; const extendedRecipe = useMemo(()=>{ const slotRecipe = recipe; if (slotRecipe.__slotRecipe) { // @ts-ignore return defineSlotRecipe({ extend: slotRecipe, ...styleOverrides }); } return defineRecipe({ // @ts-ignore extend: recipe, ...styleOverrides }); }, [ recipe, styleOverrides ]); // @ts-ignore return extendedRecipe(extendedRecipe.splitVariantProps(ownerState)); }; export { useStyles };