Skip to main content

Fullscreen

Apresentação

O componente Fullscreen é responsável por criar containers que podem ocupar toda a tela do dispositivo. Ele é ideal para criar experiências imersivas, modais em tela cheia, visualizadores de mídia e interfaces que precisam de foco total do usuário.

Quando usar

  • Para criar visualizadores de imagens
  • Para exibir vídeos em tela cheia
  • Para criar modais imersivos
  • Para exibir apresentações
  • Para criar interfaces de jogo
  • Para mostrar dashboards em tela cheia
  • Para exibir mapas interativos
  • Para criar experiências de realidade virtual

Forma básica de uso

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

// Fullscreen básico
<Fullscreen enabled>
<View>Conteúdo em tela cheia</View>
</Fullscreen>

// Fullscreen desabilitado
<Fullscreen enabled={false}>
<View>Conteúdo normal</View>
</Fullscreen>

// Fullscreen com classes personalizadas
<Fullscreen
enabled
className="bg-black text-white"
>
<View className="p-8">
<Text render="h1">Visualizador de Imagem</Text>
<Image src="/imagem.jpg" alt="Imagem" />
</View>
</Fullscreen>

// Fullscreen responsivo
<Fullscreen enabled className="p-4 md:p-8">
<View>
<Text render="h2">Conteúdo Responsivo</Text>
<Text>Texto que se adapta ao tamanho da tela</Text>
</View>
</Fullscreen>

// Fullscreen com identificador
<Fullscreen id="visualizador" enabled>
<View>Visualizador de Conteúdo</View>
</Fullscreen>

// Fullscreen com layout flexível
<Fullscreen
enabled
display="flex"
flexDirection="column"
alignItems="center"
justifyContent="center"
>
<View>Conteúdo centralizado</View>
</Fullscreen>

// Fullscreen para vídeo
<Fullscreen enabled className="bg-black">
<Video
source="/video.mp4"
controls
className="w-full h-full object-contain"
/>
</Fullscreen>

// Fullscreen para apresentação
<Fullscreen enabled className="bg-gray-900 text-white">
<View className="flex flex-col h-full">
<View className="p-4 border-b">
<Text render="h1">Apresentação</Text>
</View>
<View className="flex-1 p-8">
<Text>Conteúdo da apresentação</Text>
</View>
</View>
</Fullscreen>

// Fullscreen com controles
<Fullscreen enabled>
<View className="relative h-full">
<View className="absolute top-4 right-4">
<Button className="btn-sm">Fechar</Button>
</View>
<View className="h-full flex items-center justify-center">
<Text>Conteúdo principal</Text>
</View>
</View>
</Fullscreen>

Propriedades

PropriedadeTipoDescrição
childrenReactNodeConteúdo do fullscreen
enabledbooleanHabilita/desabilita o modo tela cheia (padrão: false)
classNamestringClasses CSS adicionais
idstringIdentificador único do componente

Heranças

O componente Fullscreen 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 posicionamento fixo quando habilitado
  • Quando enabled é true, ocupa toda a tela (top-0, bottom-0, left-0, right-0)
  • Usa z-index alto (z-50) para ficar acima de outros elementos
  • Mantém a semântica HTML apropriada
  • É 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 tamanhos de conteúdo
  • Pode ser combinado com outros componentes
  • Ideal para experiências imersivas
  • Suporta classes CSS
  • Pode ser usado para visualizadores de mídia
  • Funciona bem com diferentes tipos de conteúdo
  • Facilita a criação de interfaces em tela cheia