Skip to main content

Hero

Apresentação

O componente Hero é responsável por criar seções de destaque que ocupam uma área significativa da tela, geralmente usadas para apresentar o conteúdo principal de uma página. Ele suporta imagens de fundo com overlay e oferece uma estrutura flexível para conteúdo de destaque.

Quando usar

  • Para seções de destaque de páginas
  • Para apresentação de produtos principais
  • Para banners promocionais
  • Para páginas de landing
  • Para apresentação de serviços
  • Para seções de boas-vindas
  • Para destaque de campanhas
  • Para apresentação de marcas

Forma básica de uso

import { Hero, View, Text, Button, Image } from 'eitri-luminus';

// Hero básico
<Hero>
<Hero.Content>
<Text as="h1">Título Principal</Text>
<Text>Descrição do conteúdo</Text>
</Hero.Content>
</Hero>

// Hero com imagem de fundo
<Hero overlaySrc="/imagem-fundo.jpg">
<Hero.Content>
<Text as="h1">Bem-vindo</Text>
<Text>Descrição com imagem de fundo</Text>
</Hero.Content>
</Hero>

// Hero com overlay personalizado
<Hero
overlaySrc="/banner.jpg"
overlayClassName="bg-opacity-80"
>
<Hero.Content>
<Text as="h1">Produto em Destaque</Text>
<Text>Descrição do produto</Text>
</Hero.Content>
</Hero>

// Hero com classes personalizadas
<Hero className="hero-lg">
<Hero.Content className="text-center">
<Text as="h1">Serviços</Text>
<Text>Nossos serviços em destaque</Text>
</Hero.Content>
</Hero>

// Hero para landing page
<Hero overlaySrc="/hero-landing.jpg">
<Hero.Content className="text-white">
<Text as="h1">Transforme sua ideia em realidade</Text>
<Text>Descrição da solução</Text>
<Button variant="primary">Começar</Button>
</Hero.Content>
</Hero>

// Hero com id personalizado
<Hero id="hero-principal" overlaySrc="/imagem.jpg">
<Hero.Content>
<Text as="h1">Conteúdo Principal</Text>
<Text>Descrição detalhada</Text>
</Hero.Content>
</Hero>

// Hero para apresentação de marca
<Hero
overlaySrc="/brand-bg.jpg"
overlayClassName="bg-opacity-70"
>
<Hero.Content className="text-center">
<Text as="h1">Nossa Marca</Text>
<Text>História e valores</Text>
</Hero.Content>
</Hero>

// Hero com conteúdo complexo
<Hero overlaySrc="/complex-bg.jpg">
<Hero.Content>
<View className="grid grid-cols-1 md:grid-cols-2 gap-8">
<View>
<Text as="h1">Título Principal</Text>
<Text>Descrição detalhada</Text>
</View>
<View>
<Image src="/featured-image.jpg" alt="Imagem" />
</View>
</View>
</Hero.Content>
</Hero>

// Hero para promoção
<Hero
overlaySrc="/promo-bg.jpg"
className="hero-promo"
>
<Hero.Content className="text-white">
<Text as="h1">Promoção Especial</Text>
<Text>Descontos imperdíveis</Text>
<View className="flex gap-4">
<Button variant="primary">Ver Ofertas</Button>
<Button variant="outline">Saiba Mais</Button>
</View>
</Hero.Content>
</Hero>

// Hero com overlay sem imagem
<Hero overlayClassName="bg-black bg-opacity-50">
<Hero.Content>
<Text as="h1">Conteúdo Simples</Text>
<Text>Sem imagem de fundo</Text>
</Hero.Content>
</Hero>

// Hero responsivo
<Hero
overlaySrc="/responsive-bg.jpg"
className="hero-sm md:hero-lg"
>
<Hero.Content className="text-center md:text-left">
<Text as="h1">Conteúdo Responsivo</Text>
<Text>Adapta-se a diferentes telas</Text>
</Hero.Content>
</Hero>

Propriedades

PropriedadeTipoDescrição
childrenReactNodeConteúdo do hero (Hero.Content)
overlaySrcstringURL da imagem de fundo
overlayClassNamestringClasses CSS para o overlay
classNamestringClasses CSS adicionais
idstringIdentificador único do componente

Hero.Content

PropriedadeTipoDescrição
childrenReactNodeConteúdo do hero content
classNamestringClasses CSS adicionais
idstringIdentificador único do componente

Heranças

O componente Hero herda todas as propriedades comuns da biblioteca através da interface CommonProps, que inclui:

  • Propriedades de estilo (margin, padding, etc)
  • Propriedades de layout (flex, grid, etc)
  • Propriedades de posicionamento
  • Propriedades de acessibilidade
  • Propriedades de identificação (id, data-e)

Observações

  • O componente usa a classe 'hero' para estilização base
  • Hero.Content usa a classe 'hero-content'
  • Suporta imagens de fundo com overlay
  • É responsivo por padrão
  • Pode ser estilizado com classes do Tailwind
  • Suporta propriedades de layout flexíveis
  • Mantém a acessibilidade por padrão
  • Pode ser usado em qualquer contexto de layout
  • Suporta diferentes tipos de conteúdo
  • Pode ser combinado com outros componentes
  • Ideal para seções de destaque
  • Suporta estilos inline e classes CSS
  • Pode ser usado para diferentes tipos de apresentação
  • Funciona bem com landing pages
  • Facilita a criação de banners
  • Suporta overlays personalizados
  • Interface flexível e adaptável
  • Ideal para conteúdo principal