Rating Filter

Rating

About this component

Rating Filter

Star rows for minimum-rating filtering in the familiar n-and-up pattern. Clicking the active row clears the selection.

Usage

The import and the props worth knowing about, in one place.

import { FilterRating } from "@/components/beste/component/filter-rating";

<FilterRating
  label="Rating"
  defaultValue="4"
  onChange={(value) => console.log("minimum rating:", value)} // null when cleared
  options={[
    { label: "4 & up", value: "4" },
    { label: "3 & up", value: "3" },
  ]}
/>

Keyboard and gestures

Every one of these is in the component already. They are listed because a props table cannot mention a gesture, so nothing else on this page can tell you they exist.

Arrow keysMove through the options. A radio group is one tab stop, so the arrows are how you get around inside it.
SpaceTake the focused option.

Props

Read from the component's own type, so this cannot drift from what it accepts.

PropTypeDefaultDescription
labelstring—Optional group heading rendered above the rows
optionsFilterRatingOption[]—
valuestring | null—Controlled selection; omit to let the component manage its own state
defaultValuestring—Initial selection when uncontrolled
allowClearboolean—Clicking the active row clears the selection (default true)
onChange(value: string | null) => void—
classNamestring—

More Filter components

View all Filter

Gender

Size

Fit

32
14
21