DocsGitHub
Getting Started
  • Overview
  • Design Tokens
Components
  • Accordion
  • Alert
  • Announcement
  • Avatar
  • Badge
  • BigCalendar
  • Breadcrumb
  • Button
  • ButtonGroup
  • Calendar
  • Card
  • Checkbox
  • Chip
  • CloseButton
  • Combobox
  • CommandPalette
  • ContextMenu
  • Currency
  • DatePicker
  • DescriptionList
  • Drawer
  • DropdownMenu
  • EmptyState
  • Field
  • FileUpload
  • FormGrid
  • Hotkey
  • Icon
  • Input
  • Metric
  • Modal
  • MultiSelect
  • NumberInput
  • Pagination
  • Popover
  • ProgressBar
  • Radio
  • Rating
  • SegmentedControl
  • Select
  • SelectionCard
  • Sidebar
  • Skeleton
  • Slider
  • Spinner
  • Stepper
  • Switch
  • Table
  • Tabs
  • Textarea
  • Timeline
  • TimePicker
  • Toast
  • Tooltip
  • TransferList
  • TreeView
  • Wizard
Charts
  • Overview
  • Area Chart
  • Bar Chart
  • Donut Chart
  • Line Chart
  • Pie Chart
  • Stacked Bar Chart

Chip

A compact element for displaying status, labels, or tags.

Default

The default chip is a compact baseline that makes the color and variant families easier to compare later.

Default Chip
tsx
<Chip>Default Chip</Chip>

Installation

tsx
import { Chip } from "madagent";

Colors

Chip styles are easier to scan as two families: the stronger solid treatment and the lighter muted treatment.

Solid

PrimarySuccessWarningErrorNeutralSecondary
tsx
<div style={{ display: "flex", gap: 8, flexWrap: "wrap" }}>
  <Chip color="primary">Primary</Chip>
  <Chip color="success">Success</Chip>
  <Chip color="warning">Warning</Chip>
  <Chip color="error">Error</Chip>
  <Chip color="neutral">Neutral</Chip>
  <Chip color="secondary">Secondary</Chip>
</div>

Muted

PrimarySuccessWarningErrorNeutralSecondary
tsx
<div style={{ display: "flex", gap: 8, flexWrap: "wrap" }}>
  <Chip variant="muted" color="primary">Primary</Chip>
  <Chip variant="muted" color="success">Success</Chip>
  <Chip variant="muted" color="warning">Warning</Chip>
  <Chip variant="muted" color="error">Error</Chip>
  <Chip variant="muted" color="neutral">Neutral</Chip>
  <Chip variant="muted" color="secondary">Secondary</Chip>
</div>

With Icon

FeaturedDismiss
tsx
<div style={{ display: "flex", gap: 8, flexWrap: "wrap" }}>
  <Chip icon={<Star size={12} />}>Featured</Chip>
  <Chip icon={<X size={12} />} iconPosition="right">
    Dismiss
  </Chip>
</div>

Removable

Provide onRemove for selected filters or tokens. The remove affordance is a keyboard-accessible CloseButton with a contextual accessible name.

FinanceOperationsPeople
tsx
<Chip
  variant="muted"
  color="neutral"
  onRemove={() => removeFilter("Finance")}
>
  Finance
</Chip>

API Reference

PropTypeDefaultDescription
variant
"solid""muted"
"solid"Visual style variant
color
"primary""success""warning""error""neutral""secondary"
"primary"Color theme
icon
ReactNode
-Optional icon element
iconPosition
"left""right"
"left"Position of the icon relative to the label
children
ReactNode
-Chip label. If omitted, icon is required
onRemove
(event) => void
-Adds a trailing CloseButton and runs when it is activated
removeLabel
string
-Accessible name for the remove button; recommended for non-text children

RTL Support

Components automatically adapt to right-to-left languages using CSS logical properties.

Preview

بطاقةنجاحتحذيرخطأ

Usage

tsx
<div style={{ display: "flex", gap: 8, flexWrap: "wrap" }}>
  <Chip color="primary">بطاقة</Chip>
  <Chip color="success">نجاح</Chip>
  <Chip color="warning">تحذير</Chip>
  <Chip color="error" icon={<Tag size={14} />}>خطأ</Chip>
</div>