'use client'; import { useState } from 'react'; import { BarChart3, Bell, Calendar, Code2, CreditCard, FileText, Globe, Mail, Settings, Shield, User, } from 'lucide-react'; import { Badge } from '@kit/ui/badge'; import { Button } from '@kit/ui/button'; import { Card, CardContent, CardDescription, CardHeader, CardTitle, } from '@kit/ui/card'; import { Input } from '@kit/ui/input'; import { Label } from '@kit/ui/label'; import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from '@kit/ui/select'; import { Switch } from '@kit/ui/switch'; import { Tabs, TabsContent, TabsList, TabsTrigger } from '@kit/ui/tabs'; import { Textarea } from '@kit/ui/textarea'; import { generateImportStatement, generatePropsString, } from '../lib/story-utils'; import { ComponentStoryLayout } from './story-layout'; interface TabsControlsProps { defaultValue: string; orientation: 'horizontal' | 'vertical'; variant: 'default' | 'pills' | 'underline'; size: 'sm' | 'default' | 'lg'; fullWidth: boolean; className: string; onDefaultValueChange: (value: string) => void; onOrientationChange: (orientation: 'horizontal' | 'vertical') => void; onVariantChange: (variant: 'default' | 'pills' | 'underline') => void; onSizeChange: (size: 'sm' | 'default' | 'lg') => void; onFullWidthChange: (fullWidth: boolean) => void; onClassNameChange: (className: string) => void; } const variantClasses = { default: '', pills: '[&>div]:bg-background [&>div]:border [&>div]:rounded-lg [&>div]:p-1 [&_button]:rounded-md [&_button[data-state=active]]:bg-primary [&_button[data-state=active]]:text-primary-foreground', underline: '[&>div]:bg-transparent [&>div]:border-b [&>div]:rounded-none [&_button]:rounded-none [&_button]:border-b-2 [&_button]:border-transparent [&_button[data-state=active]]:border-primary [&_button[data-state=active]]:bg-transparent', }; const sizeClasses = { sm: '[&_button]:h-8 [&_button]:px-2 [&_button]:text-sm', default: '[&_button]:h-10 [&_button]:px-3', lg: '[&_button]:h-12 [&_button]:px-4 [&_button]:text-lg', }; function TabsPlayground({ defaultValue, orientation, variant, size, fullWidth, className, }: TabsControlsProps) { return ( Overview Settings Billing
Dashboard Overview Get insights into your application performance and usage.

Total Users

12,345

+12% from last month

Active Sessions

1,234

+5% from last week
Application Settings Configure your application preferences and behavior.

Receive notifications about important events

Billing Information Manage your subscription and payment details.

Pro Plan

$29/month

Active
); } const examples = [ { title: 'Profile Settings', description: 'User profile management with multiple settings sections', component: () => { return ( Profile Settings Manage your profile information and preferences Profile Security Notifications Preferences