Description List
Term and details pairs: an account, a deployment.
- Name
- robin
- Region
- eu-west
- Domain
- robin.sproutboat.app
- Status
- Live
const items = [
{ id: "name", term: "Name", details: "robin" },
{ id: "region", term: "Region", details: "eu-west" },
{ id: "domain", term: "Domain", details: "robin.sproutboat.app", mono: true },
{
id: "status",
term: "Status",
details: (
<Badge tone="success" dot live>
Live
</Badge>
),
},
];
<DescriptionList items={items} />Props
layout
Installation
npx shadcn@latest add https://sproutboat.com/ikada/r/description-list.jsonThe CLI writes components/ikada/description-list.tsx and merges the ikada theme into your CSS. Or take it from the package: import { DescriptionList } from "@sproutboat/ikada";
Usage
import { DescriptionList } from "@/components/ikada/description-list";
const items = [
{ id: "name", term: "Name", details: "robin" },
{ id: "region", term: "Region", details: "eu-west" },
{ id: "domain", term: "Domain", details: "robin.sproutboat.app", mono: true },
{
id: "status",
term: "Status",
details: (
<Badge tone="success" dot live>
Live
</Badge>
),
},
];
<DescriptionList items={items} />Examples
- Name
- robin
- Region
- eu-west
- Domain
- robin.sproutboat.app
- Status
- Live
const items = [
{ id: "name", term: "Name", details: "robin" },
{ id: "region", term: "Region", details: "eu-west" },
{ id: "domain", term: "Domain", details: "robin.sproutboat.app", mono: true },
{
id: "status",
term: "Status",
details: (
<Badge tone="success" dot live>
Live
</Badge>
),
},
];
<DescriptionList items={items} />- Name
- robin
- Region
- eu-west
- Domain
- robin.sproutboat.app
- Status
- Live
const items = [
{ id: "name", term: "Name", details: "robin" },
{ id: "region", term: "Region", details: "eu-west" },
{ id: "domain", term: "Domain", details: "robin.sproutboat.app", mono: true },
{
id: "status",
term: "Status",
details: (
<Badge tone="success" dot live>
Live
</Badge>
),
},
];
<DescriptionList items={items} layout="stacked" />Props
| Prop | Type | Description |
|---|---|---|
| itemsrequired | readonly DescriptionItem[] | Term and details pairs, in order, each with a stable id. |
| layout | "inline" | "stacked" | `stacked` puts each term above its details; `inline` puts them side by side from 32rem up. Default `inline`. |
Also takes every prop of Omit<ComponentProps<"dl">, "children">.