Pular para o conteúdo
UI

Card Week

Componente de card flexível, pensado para exibir conteúdo semanal.

Exemplos

Básico

Card simples, sem tag e sem progresso circular.

  1. Aprender

  2. Introdução

Intensivo R+ 2025
Semana 1
Clínica médica
Estimado 1h

Com tag

Use a prop tag no CardWeekBreadcrumb para exibir uma tag. Você também pode usar a prop tagIcon para adicionar um ícone à tag.

  1. Aprender

  2. Introdução

Prioridade
Última revisão há 0 dias
Semana 1
Clínica médica
Estimado 2h

Com progresso circular

Use o CardWeekProgressCircle para exibir um indicador de progresso circular no cabeçalho.

  1. Aprender

  2. Introdução

Prioridade
Última revisão há 0 dias
Semana 1
75%
na última revisão
Clínica médica
Estimado 5h

Título longo com progresso circular

O título fica ao lado do progresso circular e é limitado a 2 linhas. Quando o texto é truncado, o hover mostra o título completo num tooltip.

  1. Revisão

Prioridade
Última revisão há 105 dias
Alojamento conjunto e testes de triagem neonatal nos primeiros dias de vida
-
Primeira revisão
Pediatria
Estimado 5h

Status

Use as props done, postponed ou skipped no CardWeek para indicar o status de conclusão do card. O título ganha o efeito de riscado, a descrição fica esmaecida e o indicador de status muda conforme o caso.

  1. Aprender

  2. Introdução

Prioridade
Última revisão há 0 dias
Semana 1 - Concluída
Clínica médica
Estimado 0h
Concluído
  1. Aprender

  2. Introdução

Prioridade
Última revisão há 3 dias
Semana 2 - Adiada
Clínica médica
Estimado 0h
Adiado
  1. Aprender

  2. Introdução

Prioridade
Última revisão há 7 dias
Semana 3 - Pulada
Clínica médica
Estimado 0h
Pulado

API

Estrutura do CardWeek

ComponenteDescriçãoUso
CardWeekContainer raiz com borda e cantos arredondadosEnvolve todo o conteúdo do card
CardWeekBreadcrumbContainer do breadcrumb com fundo esmaecidoEnvolve os componentes de Breadcrumb (BreadcrumbItem, BreadcrumbSeparator etc.)
CardWeekContainerContainer de conteúdo com padding e gapEnvolve Header, Content, Tags e Footer com espaçamento consistente
CardWeekHeaderSeção de cabeçalho com layout flex em uma linha para título, descrição e progressoContém título, descrição e o progresso circular opcional (ao lado do título, alinhado ao topo)
CardWeekTitleElemento de título em semibold, limitado a 2 linhas, com tooltip mostrando o texto completo quando truncado (riscado quando done/postponed/skipped)Título principal do card
CardWeekDescriptionTexto de descrição (gray-foreground), esmaecido (gray-foreground-muted) quando done/postponed/skippedTexto secundário acima do título
CardWeekTagsContainer para as tags, com flex wrapEnvolve componentes Tag
CardWeekProgressBarra de progresso linearMostra o progresso de conclusão no rodapé, entre o status e as ações
CardWeekProgressCircleIndicador de progresso circularMostra a porcentagem de conclusão no cabeçalho
CardWeekContentContainer para os elementos de status, com layout flexEnvolve o CardWeekText e o CardWeekStatus
CardWeekTextElemento de texto com ícone de tempo opcionalExibe o texto, com ícone de tempo quando a prop isTime é true
CardWeekStatusBadge de status que mostra o estado de conclusãoExibe automaticamente "Concluído", "Adiado" ou "Pulado", conforme o estado do card
CardWeekFooterSeção de rodapé com margin-top automáticaContém conteúdo, progresso e ações
CardWeekActionsContainer de ações com os botões alinhados ao fimBotões ou elementos interativos

CardWeek

PropriedadeTipoPadrãoDescrição
donebooleanfalseMarca o card como concluído. Aplica riscado no título e mostra o status "Concluído".
postponedbooleanfalseMarca o card como adiado. Aplica riscado no título e mostra o status "Adiado".
skippedbooleanfalseMarca o card como pulado. Aplica riscado no título e mostra o status "Pulado".
classNamestring-Classes CSS adicionais para o container do card.
...propsReact.ComponentProps<"div">-Aceita todas as props nativas de div.

CardWeekBreadcrumb

PropriedadeTipoPadrãoDescrição
tagstring-Texto opcional da tag, exibido no fim do breadcrumb.
tagIconReact.ReactElement-Ícone opcional exibido dentro da tag.
childrenReact.ReactNode-Itens da trilha (BreadcrumbItem e BreadcrumbSeparator). A trilha é uma lista simples, sem landmark de navegação; não use BreadcrumbPage, que é anunciado como link indisponível.
classNamestring-Classes CSS adicionais para o container do breadcrumb.
...propsReact.ComponentProps<"div">-Aceita todas as props nativas de div.

CardWeekContainer

PropriedadeTipoPadrãoDescrição
childrenReact.ReactNode-Conteúdo do card (componentes Header, Content, Tags e Footer).
classNamestring-Classes CSS adicionais para o container.
...propsReact.ComponentProps<"div">-Aceita todas as props nativas de div.

CardWeekHeader

PropriedadeTipoPadrãoDescrição
childrenReact.ReactNode-Conteúdo do cabeçalho (título, descrição, progresso).
classNamestring-Classes CSS adicionais. Use border-b para adicionar uma borda inferior com padding automático.
...propsReact.ComponentProps<"div">-Aceita todas as props nativas de div.

CardWeekTitle

PropriedadeTipoPadrãoDescrição
childrenReact.ReactNode-Texto do título. Limitado a 2 linhas; quando truncado, o conteúdo completo aparece num tooltip no hover.
classNamestring-Classes CSS adicionais para o elemento de título. Use line-clamp-none para desativar o truncamento.
...propsReact.ComponentProps<"div">-Aceita todas as props nativas de div.

CardWeekDescription

PropriedadeTipoPadrãoDescrição
childrenReact.ReactNode-Texto da descrição.
classNamestring-Classes CSS adicionais para o elemento de descrição.
...propsReact.ComponentProps<"div">-Aceita todas as props nativas de div.

CardWeekTags

PropriedadeTipoPadrãoDescrição
childrenReact.ReactNode-Componentes Tag a exibir.
classNamestring-Classes CSS adicionais para o container de tags.
...propsReact.ComponentProps<"div">-Aceita todas as props nativas de div.

CardWeekProgress

Barra de progresso linear exibida no rodapé, entre o status e as ações.

PropriedadeTipoPadrãoDescrição
valuenumber0Porcentagem do progresso (0 a 100). Vira 100 (com o indicador verde) quando o CardWeek pai está done.
classNamestring-Classes CSS adicionais para a div que envolve o conteúdo.
...propsProgressProps-Aceita todas as props do componente Progress.

CardWeekProgressCircle

Indicador de progresso circular exibido no cabeçalho.

PropriedadeTipoPadrãoDescrição
valuenumber | string-Obrigatório. Porcentagem do progresso (0 a 100). Uma string é renderizada como está, sem o sufixo %, e deixa o indicador vazio.
labelstring-Texto opcional exibido abaixo da porcentagem.
sizenumber104Tamanho do círculo de progresso, em pixels.
strokeWidthnumber2Espessura do traço do progresso.
indicatorClassNamestring-Classes CSS adicionais para o indicador de progresso.
trackClassNamestring-Classes CSS adicionais para o trilho do progresso.
valueClassNamestring-Classes CSS adicionais para o texto do valor.
labelClassNamestring-Classes CSS adicionais para o texto do label.
classNamestring-Classes CSS adicionais para a div que envolve o círculo (ela mantém o tamanho e alinha o círculo ao fim do cabeçalho), não para o círculo em si.
...propsProgressCircleProps-Aceita todas as props do componente ProgressCircle.

CardWeekContent

Container para os elementos de texto e status no rodapé.

PropriedadeTipoPadrãoDescrição
childrenReact.ReactNode-Conteúdo a exibir (CardWeekText e CardWeekStatus).
classNamestring-Classes CSS adicionais para o container de conteúdo.
...propsReact.ComponentProps<"div">-Aceita todas as props nativas de div.

CardWeekFooter

PropriedadeTipoPadrãoDescrição
childrenReact.ReactNode-Conteúdo do rodapé (status, ações).
classNamestring-Classes CSS adicionais para o rodapé.
...propsReact.ComponentProps<"div">-Aceita todas as props nativas de div.

CardWeekText

Elemento de texto com ícone de tempo opcional.

PropriedadeTipoPadrãoDescrição
isTimebooleanfalseQuando true, exibe um ícone de tempo antes do conteúdo e aplica a cor secondary-foreground.
childrenReact.ReactNode-Texto a exibir.
classNamestring-Classes CSS adicionais para o container de texto.
...propsReact.ComponentProps<"div">-Aceita todas as props nativas de div.

CardWeekStatus

Badge de status que exibe automaticamente o estado de conclusão com base nas props do CardWeek pai. Retorna null se nenhum status estiver definido.

PropriedadeTipoPadrãoDescrição
classNamestring-Classes CSS adicionais para o badge de status.
...propsReact.ComponentProps<"div">-Aceita todas as props nativas de div.

Comportamento do status:

  • Quando done é true no CardWeek: mostra "Concluído" com badge verde
  • Quando postponed é true no CardWeek: mostra "Adiado" com badge amarelo
  • Quando skipped é true no CardWeek: mostra "Pulado" com badge amarelo
  • Quando nenhum está definido: retorna null (não renderiza nada)

CardWeekActions

PropriedadeTipoPadrãoDescrição
childrenReact.ReactNode-Botões de ação ou elementos interativos.
classNamestring-Classes CSS adicionais para o container de ações.
...propsReact.ComponentProps<"div">-Aceita todas as props nativas de div.