Pular para o conteúdo
duxt

Esquema e componentes

O esquema em que um histórico dividido renderiza, e os dois componentes MDC de que as suas páginas são feitas.

O tipo changelog escreve páginas Markdown comuns cujos corpos são dois componentes MDC, renderizados dentro de um esquema próprio. Os três estão documentados porque fazem parte da superfície pública — um consumidor pode substituir qualquer um deles — não porque uma página tenha de ser escrita à mão.

O esquema changelog

Ligado apenas à granularidade split; um registo plano é uma página de documentação comum e renderiza no enquadramento da documentação.

Difere de docs em dois pontos, e ambos seguem do que as páginas são. A barra lateral é a lista de versões em vez de uma árvore de prosa — a mesma navegação, a mesma coleção, porque uma secção gerada é uma coleção comum e as suas páginas são as versões. E a coluna de leitura está limitada a uma medida: uma nota de versão é prosa, e prosa composta ao longo de toda a janela é ilegível. A coluna de conteúdos fica, listando os grupos.

Substitua-o por um ficheiro seu no mesmo caminho:

app/layouts/changelog.vue

ChangelogReleases

A cronologia da vista geral: cada versão, a mais recente primeiro, filtrável pelo que mudou. Escrito na página de índice da secção.

PropTipoNotas
releasesarrayCada uma com version, date, to e os seus groups

Os groups de uma versão trazem apenas um name e um count — as entradas não estão aqui, porque cada versão tem uma página própria e repetir os seus pontos meteria o histórico inteiro duas vezes no índice de pesquisa, no llms-full.txt e no feed.

As fichas de filtro são construídas a partir dos nomes que o próprio ficheiro usou. Sem nada selecionado a página mostra tudo, que é também o que o servidor renderiza: um filtro é a escolha de um leitor, portanto a página tem de estar completa antes de alguém fazer uma — caso contrário o rastreador e o leitor cuja hidratação ainda não chegou recebem cada um um registo filtrado que ninguém pediu.

ChangelogGroup

Um grupo de uma versão — «Features», «Bug Fixes», o que o ficheiro dissesse.

PropTipoNotas
namestringO título próprio do ficheiro, literal
countnumberQuantas entradas o grupo lista

As entradas chegam no slot, como o Markdown em que foram escritas — assim a pesquisa indexa-as, o llms-full.txt leva-as e o botão de cópia entrega a um modelo prosa em vez de uma chamada de componente. Só o nome e o número, de que o emblema e os filtros precisam como dados, viajam como props.

A cor ao lado do nome é uma pista e nunca um significado: um nome que a lista de pistas não conhece recebe na mesma uma cor própria e estável, que é o que torna o mesmo tipo de alteração percorrível numa página de quarenta versões em qualquer idioma.

Substituir um

Como para qualquer outro componente que a camada traz: ganha um ficheiro no mesmo caminho no site consumidor.

app/components/content/ChangelogGroup.vue

As props acima são o contrato, e o nome do esquema também. Uma mudança de nome aqui é uma alteração incompatível da camada.

Sem título próprio

Nenhum dos dois componentes abre com um <h1>. O enquadramento da documentação desenha o cabeçalho — navegação estrutural, título, o botão de cópia ao lado — para toda a página gerada cujo corpo não abre com um título, e uma página de versão quer exatamente isso: um título e um rasto como qualquer página escrita.

Esta página foi útil?