Installation
Add Component
Copy the code snippet below into you components folder.
Integrate Recipe
Integrate this recipe in to your Panda config.
Usage
Shortcuts
The RatingGroup component also provides a set of shortcuts for common use cases.
RatingControl
This component renders the number of rating items specified in the count prop.
This works:
This might be more concise, if you don't need to customize the rating icons:
Examples
Sizes
Use the size prop to change the size of the rating component.
Controlled
Use the value and onValueChange prop to control the rating value.
ReadOnly
Use the readOnly prop to make the rating component read-only.
Custom Icon
Use the icon prop to pass a custom icon to the rating component. This will override the default star icon.
Label
Render the RatingGroup.Label component to provide a human-readable label for the rating component.
Half Star
Use the allowHalf prop to allow half-star ratings.
Colors
Use the colorPalette prop to change the color of the rating.
Closed Component
Here's how to setup the Rating for a closed component composition.
So that you can use it like this:
Props
Root
| Prop | Default | Type | 
|---|---|---|
| size | 'md' | 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 
| count | 5 | numberThe total number of ratings. | 
| allowHalf | booleanWhether to allow half stars. | |
| asChild | booleanUse the provided child element as the default rendered element, combining their props and behavior. | |
| autoFocus | booleanWhether to autofocus the rating. | |
| defaultValue | numberThe initial value of the rating when rendered. Use when you don't need to control the value of the rating. | |
| disabled | booleanWhether the rating is disabled. | |
| form | stringThe associate form of the underlying input element. | |
| id | stringThe unique identifier of the machine. | |
| ids | Partial<{
  root: string
  label: string
  hiddenInput: string
  control: string
  item: (id: string) => string
}>The ids of the elements in the rating. Useful for composition. | |
| name | stringThe name attribute of the rating element (used in forms). | |
| onHoverChange | (details: HoverChangeDetails) => voidFunction to be called when the rating value is hovered. | |
| onValueChange | (details: ValueChangeDetails) => voidFunction to be called when the rating value changes. | |
| readOnly | booleanWhether the rating is readonly. | |
| required | booleanWhether the rating is required. | |
| translations | IntlTranslationsSpecifies the localized strings that identifies the accessibility elements and their states | |
| value | numberThe controlled value of the rating | 
Item
| Prop | Default | Type | 
|---|---|---|
| index* | number | |
| asChild | booleanUse the provided child element as the default rendered element, combining their props and behavior. |