Skip to content
v0.2.10

Toggle

A native button with a persistent pressed state.

Preview

Use Toggle

Toggle is a named export of @flood-md/react. Connect the package once, then import what you use.

First time here? Connect Flood
Example import style
toggle.tsxTSX
"use client";

import { FloodRoot, Toggle } from "@flood-md/react";
import "@flood-md/react/styles.css";

export function Example() {
  return (
    <FloodRoot>
      <Toggle defaultPressed>Bold</Toggle>
    </FloodRoot>
  );
}

Design notes

  • Keep the accessible name stable; Enter/Space toggle pressed. Supports controlled pressed/onPressedChange or defaultPressed.

API reference

PropValuesDefault
variant"solid" | "subtle" | "outline" | "ghost""subtle"
size"2xs" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl""md"
loadingboolean—
pressedboolean—
defaultPressedbooleanfalse
onPressedChange(pressed: boolean) => void—
iconOnlybooleanfalse
Native HTML propsOmit<ButtonHTMLAttributes<HTMLButtonElement>, "aria-pressed" | "type" | "role" | "defaultValue">Forwarded
View TypeScript source