03e84c1f28
Storybook (SvelteKit-Framework, Tailwind v4, MSW, Translation-Decorator): Stories für Atoms/Molecules/Organisms + alle CMS-Blocks. Button-Atom: 5 .btn-*-Varianten (primary/secondary/tertiary/outline/warning), class-Merge-Prop, href→<a>, Loading-Spinner neben Label, rounded-md/font-medium. Alle rohen .btn-*- und Hand-Style-Buttons app-weit aufs Atom migriert. SectionHeader-Molecule (kicker/number/title/subtitle/action) + Integration in 7 CMS-Blocks (post_overview, organisations, organisations_map, searchable_text, image_gallery, youtube_video_gallery, files) via neuem section_header-Schema. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
45 lines
1.1 KiB
TypeScript
45 lines
1.1 KiB
TypeScript
import type { Meta, StoryObj } from '@storybook/sveltekit';
|
|
import SectionHeader from './SectionHeader.svelte';
|
|
|
|
const meta = {
|
|
title: 'Molecules/SectionHeader',
|
|
component: SectionHeader,
|
|
tags: ['autodocs'],
|
|
argTypes: {
|
|
number: { control: 'text' },
|
|
kicker: { control: 'text' },
|
|
title: { control: 'text' },
|
|
subtitle: { control: 'text' },
|
|
actionLabel: { control: 'text' },
|
|
actionHref: { control: 'text' },
|
|
tag: { control: 'select', options: ['h1', 'h2', 'h3'] },
|
|
},
|
|
} satisfies Meta<typeof SectionHeader>;
|
|
|
|
export default meta;
|
|
type Story = StoryObj<typeof meta>;
|
|
|
|
export const MitAktion: Story = {
|
|
args: {
|
|
number: '03',
|
|
kicker: 'Vor Ort',
|
|
title: 'Beteiligte Initiativen',
|
|
subtitle: '13 Bürgerinitiativen im Bündnis — direkt vor Ort ansprechbar.',
|
|
actionLabel: 'Zum Adressbuch',
|
|
actionHref: '/adressbuch',
|
|
},
|
|
};
|
|
|
|
export const OhneAktion: Story = {
|
|
args: { number: '01', kicker: 'Über uns', title: 'Wer sind wir?' },
|
|
};
|
|
|
|
export const OhneNummer: Story = {
|
|
args: {
|
|
kicker: 'Aktuelles',
|
|
title: 'Die letzten Beiträge',
|
|
actionLabel: 'Alle Beiträge',
|
|
actionHref: '/aktuelles',
|
|
},
|
|
};
|