UNPKG

@vertisanpro/flowbite-react

Version:

Non-Official React components built for Flowbite and Tailwind CSS

21 lines (20 loc) 939 B
'use client'; import { twMerge } from '@vertisanpro/tailwind-merge'; import React from 'react'; import { mergeDeep } from '../../helpers/merge-deep'; import { getTheme } from '../../theme-store'; import { RatingAdvanced } from './RatingAdvanced'; import { RatingContext } from './RatingContext'; import { RatingStar } from './RatingStar'; const RatingComponent = ({ children, className, size = 'sm', theme: customTheme = {}, ...props }) => { const theme = mergeDeep(getTheme().rating, customTheme); return (React.createElement(RatingContext.Provider, { value: { theme, size } }, React.createElement("div", { className: twMerge(theme.root.base, className), ...props }, children))); }; RatingComponent.displayName = 'Rating'; RatingStar.displayName = 'Rating.Star'; RatingAdvanced.displayName = 'Rating.Advanced'; export const Rating = Object.assign(RatingComponent, { Star: RatingStar, Advanced: RatingAdvanced, });