Pular para o conteúdo
Filters

    Referência de Substituição

    Você pode substituir os componentes padrões do Starlight fornecendo o caminho do componente a ser substituido no campo components nas configurações do Starlight. Esta página lista todos os componentes disponíveis para substituição e links do GitHub para a implementação padrão.

    Leia mais em Guia de Substituição.

    Todos os componentes podem acessar o objeto padrão Astro.props que contém informações sobre a página em que se encontra.

    Para tipar seus componentes personalizados, importe o tipo Props do Starlight:

    src/components/Customizado.astro
    ---
    import type { Props } from '@astrojs/starlight/props';
    const { hasSidebar } = Astro.props;
    // ^ tipo: boolean
    ---

    Assim você terá autocomplete e tipos quando acessar Astro.props.

    O Starlight passará os seguintes props aos seus componentes personalizados.

    Tipos: 'ltr' | 'rtl'

    Direção de escrita da página.

    Tipos: string

    Etiqueta BCP-47 do local da página atual, ex: en, zh-CN, ou pt-BR.

    Tipos: string | undefined

    O caminho base de onde o idioma é servido. undefined para slugs do locale raiz.

    Tipos: string

    O slug da página atual, gerado a partir do nome do arquivo.

    Tipos: string

    ID único para a página, baseado no nome do arquivo.

    Tipos: true | undefined

    Será true se a página não tiver tradução no idioma atual e estiver utilizando conteúdo de fallback do local raiz. Usado apenas em site multilíngues.

    Tipos: { dir: 'ltr' | 'rtl'; lang: string }

    Metadados do local do conteúdo da página. Pode ser diferente do local atual quando a página estiver utilizando conteúdo de fallback.

    A entrada da coleção de conteúdo do Astro para a página atual. Inclui valores do frontmatter para a página atual em entry.data.

    entry: {
    data: {
    title: string;
    description: string | undefined;
    // etc.
    }
    }

    Leia mais sobre as propriedades desse objeto na referência de Coleção de Conteúdo Astro

    Tipos: SidebarEntry[]

    Entradas de navegação da barra lateral na página.

    Tipos: boolean

    Se a barra lateral será ou não exibida na página.

    Tipos: { prev?: Link; next?: Link }

    Links para a próxima página e a anterior na barra lateral, se ativado.

    Tipos: { minHeadingLevel: number; maxHeadingLevel: number; items: TocItem[] } | undefined

    Sumário da página, se ativado.

    Tipos: { depth: number; slug: string; text: string }[]

    Arranjo de todos os títulos Markdown extraídos da página atual. Utilize toc em vez disso se você deseja construir um componente de sumário que respeita as configurações do Starlight.

    Tipos: Date | undefined

    Objeto Date JavaScript que representa quando a página foi atualizada pela última vez, se ativado.

    Tipos: URL | undefined

    Objeto URL para o endereço onde a página poderá ser editada, se ativado.

    Tipos: Record<string, string>

    Um objeto contendo as strings da UI localizados para a página atual. Veja o guia “Traduza a UI do Starlight” para uma lista de todas as chaves disponíveis.


    Estes componentes são renderizados dentro do <head> de cada página. Deve-se apenas incluir elementos permitidos dentro do <head>

    Componente padrão: Head.astro

    Componente renderizado dentro do <head> de cada página. Contém tags importantes como <title>, e <meta charset="utf-8">.

    Substitua esse componente em último caso. Se possível, dê preferência as opções head de configuração do Starlight.

    Componente padrão: ThemeProvider.astro

    Componente renderizado dentro do <head> que configura o suporte para o tema claro/escuro. A implementação padrão embute um script e um <template> utilizado pelo script em <ThemeSelect />.


    Componente padrão: SkipLink.astro

    Para acessibilidade, esse componente é renderizado como primeiro elemento do <body>, é um link para o conteúdo principal da página atual. A implementação padrão fica invisível até o usuário focar nela utilizando a tecla Tab no teclado.


    Estes componentes são responsáveis por dispor os componentes do Starlight e gerenciar a visualização através dos breakpoints. Substituí-los gera uma complexidade significativa. Se possível, prefira substituir componentes mais específicos.

    Componente padrão: PageFrame.astro

    Componente de layout que amarra a maioria do conteúdo da página. A implementação padrão monta o layout header–sidebar–main. Nele há slots nomeados header e sidebar, além do slot padrão para o conteúdo principal. Também renderiza o <MobileMenuToggle /> para dar suporte ao abrir/fechar a barra lateral em viewports menores (mobile).

    Componente padrão: MobileMenuToggle.astro

    Componente renderizado dentro do <PageFrame>, responsável por abrir ou fechar a barra lateral em viewports menores (mobile).

    Componente padrão: TwoColumnContent.astro

    Componente de layout que amarra a coluna central e a barra da direita (sumário). A implementação padrão alterna o layout entre uma coluna, em viewport estreitas; e duas colunas, em viewports maiores.


    Estes componentes renderizam a barra de navegação superior do Starlight

    Componente padrão: Header.astro

    O componente Header é exibido no início de cada página. A implementação padrão exibe <SiteTitle />, <Search />, <SocialIcons />, <ThemeSelect />, e <LanguageSelect />.

    Componente padrão: SiteTitle.astro

    Componente renderizado no início do Header que exibe o título do site. A implementação padrão inclui a lógica para renderizar os logos definidos nas configurações do Starlight.

    Componente padrão: Search.astro

    Componente utilizado para renderizar a interface de busca. A implementação padrão inclui o botão no cabeçalho e o código para exibir o modal de busca quando for clicado e carregar a interface do Pagefind.

    Quando pagefind está desabilitado, o componente de busca padrão não será renderizado. No entanto, se você substituir Search, seu componente customizado sempre será renderizado mesmo que a opção pagefind em sua configuração seja false. Isso lhe permite adicionar UI para provedores de busca alternativos ao desabilitar o Pagefind.

    Componente padrão: SocialIcons.astro

    Componente renderizado no cabeçalho da página, incluindo links das mídias sociais. A implementação padrão utiliza a opção social nas configurações do Starlight para renderizar os links e ícones.

    Componente padrão: ThemeSelect.astro

    Componente renderizado no cabeçalho da página que permite aos usuários selecionar o tema preferido.

    Componente padrão: LanguageSelect.astro

    Componente renderizado no cabeçalho da página que permite escolher o idioma.


    A barra lateral do Starlight inclue a navegação principal do site. Em telas menores fica invisível, podendo ser exibido via botão de dropdown.

    Componente padrão: Sidebar.astro

    Componente que contém a navegação global, renderizado ao lado do conteúdo da página. A implementação padrão exibe a barra lateral em viewports largas o suficiente e escondido sob um menu dropdown em viewports estreitas (mobile). Também renderiza o <MobileMenuFooter /> que exibe itens adicionais dentro do menu mobile.

    Componente padrão: MobileMenuFooter.astro

    Componente renderizado no final do menu dropdown mobile. A implementação padrão renderiza <ThemeSelect /> e <LanguageSelect />.


    A barra lateral do Starlight é responsável por exibir o sumário delineando os subtítulos da página atual. Em viewports estreitas, fica sob um menu dropdown fixo.

    Componente padrão: PageSidebar.astro

    Componente renderizado ao lado do conteúdo da página principal para exibir o sumário. A implementação padrão renderiza <TableOfContents /> e <MobileTableOfContents />.

    Componente padrão: TableOfContents.astro

    Componente que renderiza o sumário da página atual em viewports largas.

    Componente padrão: MobileTableOfContents.astro

    Componente que renderiza o sumário da página atual em viewports estreitas (mobile).


    Componentes renderizados na coluna central da página.

    Componente padrão: Banner.astro

    Componente banner renderizado no início de cada página. A implementação padrão utiliza o valor do frontmatter banner para decidir se renderiza o banner ou não.

    Componente padrão: ContentPanel.astro

    Componente de layout que amarra as seções da coluna central.

    Componente padrão: PageTitle.astro

    Componente contendo o elemento <h1> da página atual.

    Certifique-se de adicionar id="_top" ao elemento <h1> assim como implementação padrão.

    Componente padrão: FallbackContentNotice.astro

    Aviso exibido aos visitantes da página quando a tradução para o idioma atual não estiver disponível. Apenas utilizado em site multilíngue.

    Componente padrão: Hero.astro

    Componente renderizado no início da página quando hero tiver configurado no frontmatter. A implementação padrão exibe um título grande, tagline, links de chamada de ação, e opcionalmente, uma imagem junto.

    Componente padrão: MarkdownContent.astro

    Componente renderizado ao redor do conteúdo principal de cada página. A implementação padrão adiciona estilos para o conteúdo Markdown.

    O estilo dos conteúdos Markdown também é disponibilizado em @astrojs/starlight/style/markdown.css e limitados ao o escopo da classe de CSS .sl-markdown-content.


    Estes componentes são renderizados no final da coluna de conteúdo principal da página.

    Componente padrão: Footer.astro

    Componente do rodapé exibido no final de cada página. A implementação padrão exibe <LastUpdated />, <Pagination />, e <EditLink />.

    Componente padrão: LastUpdated.astro

    Componente renderizado no rodapé da página que a data de última atualização.

    Componente padrão: EditLink.astro

    Componente renderizado no rodapé da página que exibe o link de onde a página poderá ser editada.

    Componente padrão: Pagination.astro

    Componente renderizado no rodapé da página que exibe setas de navegação entre a próxima página e a anterior.