import type { Meta, StoryObj } from '@storybook/nextjs-vite'; import { MingoOnboardingCardSkeleton, MingoOnboardingListSkeleton, } from '../components/chat/mingo-onboarding-card-skeleton'; const meta: Meta = { title: 'Chat/MingoOnboardingCardSkeleton', component: MingoOnboardingListSkeleton, parameters: { layout: 'centered', docs: { description: { component: 'Loading-state placeholder for the empty-state onboarding list (Figma node `7363:205938`). Mirrors `MingoOnboardingCard`s outer markup pixel-for-pixel — same `p-[var(--spacing-system-s)]` cell, `bg-ods-card` surface, `border-b` divider, `size-4` icon slot, `text-h6`-tall title/description bars, and `h-7` outline-chip placeholders. The list variant wraps N rows in the same `rounded-md border overflow-hidden` shell the live empty-state uses.', }, }, }, decorators: [ Story => (
), ], }; export default meta; type Story = StoryObj; // ============================================================================= // List (default) — drop-in replacement for the resolved card stack // ============================================================================= export const Default: Story = { args: { rows: 6, }, }; export const FewRows: Story = { args: { rows: 3, }, }; export const ManyRows: Story = { args: { rows: 13, }, }; // ============================================================================= // Single row — useful when integrating into custom containers // ============================================================================= export const SingleRowDefault: Story = { render: () => (
), }; export const SingleRowOneLine: Story = { render: () => (
), }; export const SingleRowNoChips: Story = { render: () => (
), }; export const SingleRowCustomWidths: Story = { render: () => (
), };