ReScript Shadcn
Get started
  • Installation
Components
  • Accordion
  • Alert
  • AlertDialog
  • AspectRatio
  • Attachment
  • Avatar
  • Badge
  • Breadcrumb
  • Bubble
  • Button
  • ButtonGroup
  • Calendar
  • Card
  • Carousel
  • Chart
  • Checkbox
  • Collapsible
  • Combobox
  • Command
  • ContextMenu
  • DataTable
  • DatePicker
  • Dialog
  • Direction
  • Drawer
  • DropdownMenu
  • Empty
  • Field
  • HoverCard
  • Input
  • InputGroup
  • InputOtp
  • Item
  • Kbd
  • Label
  • Marker
  • Menubar
  • Message
  • MessageScroller
  • NativeSelect
  • NavigationMenu
  • Pagination
  • Popover
  • Progress
  • RadioGroup
  • Resizable
  • ScrollArea
  • Select
  • Separator
  • Sheet
  • Sidebar
  • Skeleton
  • Slider
  • Sonner
  • Spinner
  • Switch
  • Table
  • Tabs
  • Textarea
  • Toast
  • Toggle
  • ToggleGroup
  • Tooltip
  • Typography

Toggle Group

A set of two-state buttons that can be toggled on or off.

Installation#

npx shadcn@latest add @rescript-shadcn/ToggleGroup

Usage#

<ToggleGroup multiple=false>
  <ToggleGroup.Item value="a"> {"A"->React.string} </ToggleGroup.Item>
  <ToggleGroup.Item value="b"> {"B"->React.string} </ToggleGroup.Item>
  <ToggleGroup.Item value="c"> {"C"->React.string} </ToggleGroup.Item>
</ToggleGroup>

Examples#

Outline#

Use variant=Outline for an outline style.

Size#

Use the size prop to change the size of the toggle group.

Spacing#

Use spacing to add spacing between toggle group items.

Vertical#

Use orientation="vertical" for vertical toggle groups.

Disabled#

Custom#

A custom toggle group example.

Use font-normal to set the font weight.

API Reference#

See the Base UI Toggle Group documentation.

@@directive("'use client'")

@react.component
@react.component
let make = () =>
  <ToggleGroup variant=Outline multiple=true>
@react.component
let make = () =>
  <ToggleGroup variant=Outline defaultValue={["all"]}>
@react.component
let make = () =>
  <div className="flex flex-col gap-4">
@react.component
let make = () =>
  <ToggleGroup size=ToggleGroup.Size.Sm defaultValue={["top"]} variant=Outline spacing=2.>
@react.component
let make = () =>
  <ToggleGroup
@react.component
let make = () =>
  <ToggleGroup disabled={true}>