import React from 'react'; import type { Meta, StoryObj } from '@storybook/react-vite'; import { DaisyTabs } from './DaisyTabs'; const meta: Meta = { title: 'daisy/DaisyTabs', component: DaisyTabs.Composite, parameters: { layout: 'centered', }, tags: ['autodocs'], }; export default meta; type Story = StoryObj; const basicTabs = [ { key: 'tab1', label: 'Tab 1', content: (

Content for Tab 1

This is the first tab content.

), }, { key: 'tab2', label: 'Tab 2', content: (

Content for Tab 2

This is the second tab content.

), }, { key: 'tab3', label: 'Tab 3', content: (

Content for Tab 3

This is the third tab content.

), }, ]; const tabsWithIcons = [ { key: 'home', label: 'Home', icon: '🏠', content: (

Home Dashboard

Welcome to your dashboard!

), }, { key: 'settings', label: 'Settings', icon: '⚙️', content: (

Settings

Configure your preferences here.

), }, { key: 'profile', label: 'Profile', icon: '👤', content: (

User Profile

Manage your profile information.

), }, ]; export const Basic: Story = { args: { tabs: basicTabs, defaultValue: 'tab1', }, }; export const WithIcons: Story = { args: { tabs: tabsWithIcons, defaultValue: 'home', }, }; export const Boxed: Story = { args: { tabs: basicTabs, variant: 'boxed', defaultValue: 'tab1', }, }; export const Bordered: Story = { args: { tabs: basicTabs, variant: 'bordered', defaultValue: 'tab1', }, }; export const Lifted: Story = { args: { tabs: basicTabs, variant: 'lifted', title: 'Page Title', defaultValue: 'tab1', }, }; export const LiftedWithAction: Story = { args: { tabs: basicTabs, variant: 'lifted', title: 'Project Dashboard', action: , defaultValue: 'tab1', }, }; export const Small: Story = { args: { tabs: basicTabs, size: 'sm', variant: 'bordered', defaultValue: 'tab1', }, }; export const Large: Story = { args: { tabs: tabsWithIcons, size: 'lg', variant: 'boxed', defaultValue: 'home', }, }; export const ManualComposition: Story = { render: () => ( Manual Tab 1 Manual Tab 2 Manual Tab 3

Manually Composed Tab 1

This tab was composed manually using individual components.

Manually Composed Tab 2

Full control over the tab structure and styling.

Manually Composed Tab 3

Perfect for complex layouts and custom content.

), };