Grid List
A grid-based list component for displaying items in a structured layout with optional interactivity.
Anatomy
<script>
import {
GridList,
GridListRoot,
GridListHeader,
GridListItem,
GridListCell,
} from "@saas-ui/svelte/components/grid-list";
</script>
<GridList.Root interactive>
<GridList.Header>
<GridList.Cell>Name</GridList.Cell>
<GridList.Cell>Status</GridList.Cell>
</GridList.Header>
<GridList.Item>
<GridList.Cell>Item 1</GridList.Cell>
<GridList.Cell>Active</GridList.Cell>
</GridList.Item>
</GridList.Root>Examples
Basic Accessibility
GridList with interactive items.
<GridList.Root interactive>
<GridList.Item>
<GridList.Cell width="8">
<Checkbox.Root aria-label="Select Sarah Johnson" />
</GridList.Cell>
<GridList.Cell flex="1">
<Text class="font-medium">Sarah Johnson</Text>
<Text size="sm" class="text-fg-muted">sarah@company.com</Text>
</GridList.Cell>
<GridList.Cell shrink>
<Tag>Admin</Tag>
</GridList.Cell>
</GridList.Item>
<GridList.Item>
<GridList.Cell width="8">
<Checkbox.Root aria-label="Select Michael Chen" />
</GridList.Cell>
<GridList.Cell flex="1">
<Text class="font-medium">Michael Chen</Text>
<Text size="sm" class="text-fg-muted">michael@company.com</Text>
</GridList.Cell>
<GridList.Cell shrink>
<Tag>Member</Tag>
</GridList.Cell>
</GridList.Item>
<GridList.Item>
<GridList.Cell width="8">
<Checkbox.Root aria-label="Select Emma Rodriguez" />
</GridList.Cell>
<GridList.Cell flex="1">
<Text class="font-medium">Emma Rodriguez</Text>
<Text size="sm" class="text-fg-muted">emma@company.com</Text>
</GridList.Cell>
<GridList.Cell shrink>
<Tag>Member</Tag>
</GridList.Cell>
</GridList.Item>
</GridList.Root> With Header Accessibility
GridList with a GridList.Header section.
<GridList.Root interactive>
<GridList.Header>Users</GridList.Header>
<GridList.Item>
<GridList.Cell width="8">
<Checkbox.Root aria-label="Select Sarah Johnson" />
</GridList.Cell>
<GridList.Cell flex="1">
<Text class="font-medium">Sarah Johnson</Text>
<Text size="sm" class="text-fg-muted">sarah@company.com</Text>
</GridList.Cell>
<GridList.Cell shrink>
<Tag>Admin</Tag>
</GridList.Cell>
</GridList.Item>
<GridList.Item>
<GridList.Cell width="8">
<Checkbox.Root aria-label="Select Michael Chen" />
</GridList.Cell>
<GridList.Cell flex="1">
<Text class="font-medium">Michael Chen</Text>
<Text size="sm" class="text-fg-muted">michael@company.com</Text>
</GridList.Cell>
<GridList.Cell shrink>
<Tag>Member</Tag>
</GridList.Cell>
</GridList.Item>
<GridList.Item>
<GridList.Cell width="8">
<Checkbox.Root aria-label="Select Emma Rodriguez" />
</GridList.Cell>
<GridList.Cell flex="1">
<Text class="font-medium">Emma Rodriguez</Text>
<Text size="sm" class="text-fg-muted">emma@company.com</Text>
</GridList.Cell>
<GridList.Cell shrink>
<Tag>Member</Tag>
</GridList.Cell>
</GridList.Item>
</GridList.Root>Props
| Prop | Type | Default | Description |
|---|---|---|---|
interactive | boolean | false | Whether the grid list items are interactive. |
class | text | - | Additional CSS classes to apply. |