import type { Meta, StoryObj } from '@storybook/react'; import { Card, CardHeader, CardFooter, CardTitle, CardDescription, CardContent, CardAction, } from './card'; import { Button } from '../button'; import { Input } from '../input'; import { Label } from '../label'; import { Badge } from '../badge'; import { Avatar, AvatarFallback } from '../avatar'; import { Separator } from '../separator'; import { Bell, DollarSign, Download, ExternalLink, MoreHorizontal, Projector, Settings as SettingsIcon, Users, } from 'lucide-react'; import React from 'react'; const meta: Meta = { title: 'UI/Card', component: Card, render: args => , decorators: [ Story => (
), ], }; export default meta; type Story = StoryObj; // ─── Estrutura básica ───────────────────────────────────────────────────────── export const Default: Story = { render: args => ( Detalhes do Projeto Gerencie as configurações do seu workspace.

Este workspace contém todos os assets e documentações do projeto Xertica UI.

), }; // ─── Com CardAction ─────────────────────────────────────────────────────────── export const WithAction: Story = { render: () => ( Notificações Gerencie suas preferências de alerta. {[ { label: 'Deploy concluído', desc: 'Produção atualizada', badge: 'Sucesso', v: 'success' as const, }, { label: 'Revisão pendente', desc: 'PR #42 aguarda você', badge: 'Info', v: 'info' as const, }, { label: 'Erro detectado', desc: 'Auth service — 503', badge: 'Erro', v: 'destructive' as const, }, ].map(item => (

{item.label}

{item.desc}

{item.badge}
))}
), }; // ─── Stats ──────────────────────────────────────────────────────────────────── export const Stats: Story = { render: () => (
Receita Total

R$ 45.231

+20.1% vs mês anterior

Assinantes

+2.350

+180.1% vs mês anterior

Projetos Ativos

12.234

+19% vs mês anterior

), }; // ─── Formulário ─────────────────────────────────────────────────────────────── export const Form: Story = { render: () => ( Acesso à Conta Insira suas credenciais para acessar a plataforma.
), }; // ─── Perfil / Team Member ───────────────────────────────────────────────────── export const TeamMember: Story = { render: () => (
{[ { name: 'Ana Souza', role: 'Frontend Engineer', initials: 'AS', projects: 12, status: 'Online' as const, sv: 'success' as const, }, { name: 'Bruno Lima', role: 'Design System', initials: 'BL', projects: 8, status: 'Ausente' as const, sv: 'warning' as const, }, { name: 'Carla Rocha', role: 'Product Designer', initials: 'CR', projects: 15, status: 'Ocupada' as const, sv: 'destructive' as const, }, ].map(member => ( {member.initials}

{member.name}

{member.role}

{member.status}

{member.projects} projetos

))}
), }; // ─── Configurações ──────────────────────────────────────────────────────────── export const SettingsCard: Story = { render: () => ( Preferências da Conta Ajuste as configurações do seu perfil e segurança. {[ { label: 'Notificações por email', desc: 'Receba alertas de deploy e reviews', active: true, }, { label: 'Autenticação 2FA', desc: 'Camada extra de segurança', active: true }, { label: 'Modo escuro automático', desc: 'Segue o sistema operacional', active: false }, { label: 'API pública', desc: 'Permite acesso externo via token', active: false }, ].map((item, i, arr) => (

{item.label}

{item.desc}

{item.active ? 'Ativo' : 'Inativo'}
{i < arr.length - 1 && }
))}
), };