import { playgroundParameters } from "@charcuterie/storybook-config/story-parameters" import type { Meta, StoryObj } from "@storybook/react" import { toStoryChoice } from "../argTypes.storyHelpers.ts" import { Header } from "../Header/Header.tsx" import { Main } from "../Main/Main.tsx" import { Shell } from "../Shell/Shell.tsx" import { HeaderSchemeToggle, PageContent, RailDetail, RailNavigation, } from "../shell.storyHelpers.tsx" import { Rail } from "./Rail.tsx" const meta = { title: "Components/Layout/Rail", component: Rail, parameters: { layout: "fullscreen" }, argTypes: { landmark: toStoryChoice([ "complementary", "navigation", ] as const), side: toStoryChoice(["start", "end"] as const), }, args: { landmark: "complementary", side: "start", }, } satisfies Meta export default meta type Story = StoryObj /** * The sections column. `landmark="navigation"` because that is * what it is, and `label` because a rail nobody can name is a * rail an agent cannot scope to — `getByRole("navigation", { * name: "Sections" })` is what distinguishes its "Settings" link * from the header's "Settings" button. */ export const Playground: Story = { parameters: playgroundParameters, args: { label: "Sections", landmark: "navigation", }, render: (railProps) => (
} heading="Comic Ingest" />
), } /** * Both sides at once, and both kinds of landmark: a `