@gitpagedocs/cli 0.0.10 → 0.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,9 +1,14 @@
1
1
  import { practicalPt } from "./practical-pt.mjs";
2
2
  import { operationsPt } from "./operations-pt.mjs";
3
+ import { overviewsPt } from "./overviews-pt.mjs";
4
+ import { CONTENT_BLOCKS_DOCS } from "./content-blocks.mjs";
5
+ import { PARENT_MENU_JSON } from "./configuration-examples.mjs";
3
6
 
4
7
  export const docsPt = {
5
8
  ...practicalPt,
6
9
  ...operationsPt,
10
+ ...overviewsPt,
11
+ contentBlocks: CONTENT_BLOCKS_DOCS.pt,
7
12
  pdf: `# Documentos PDF
8
13
 
9
14
  PDF é um tipo de conteúdo próprio, junto com Markdown, HTML, código-fonte, vídeo e áudio. A prévia usa o visualizador nativo de PDF do navegador. As ações de baixar e abrir em nova aba são configuráveis de forma independente.
@@ -33,11 +38,11 @@ Adicione este bloco dentro de \`site\` em \`gitpagedocs/config.json\`:
33
38
 
34
39
  A precedência das ações é \`rota.pdf.<flag>\` > \`site.pdf.<flag>\` > \`true\`. Um \`true\` explícito na rota habilita aquela ação mesmo quando o padrão do site é \`false\`; \`site.pdf.enabled: false\` continua desabilitando todos os PDFs. Sem caminho para o idioma selecionado, o PDF fica indisponível; não há fallback automático de idioma.
35
40
 
36
- As ações PDF usam ícones por padrão. Configure \`site.icons.PdfDownload\` (\`FiDownload\`) e \`site.icons.PdfOpenInNewTab\` (\`FiExternalLink\`) individualmente com \`reactIcon\`, \`tag\`, \`size\`, \`colorDark\` e \`colorLight\`. Por exemplo, \`"PdfDownload": { "reactIcon": false }\` exibe texto no download enquanto a nova aba continua com ícone. A aparência não altera as opções de habilitação acima.
41
+ As ações PDF usam ícones por padrão. Configure \`site.icons.PdfDownload\` (\`LuDownload\`) e \`site.icons.PdfOpenInNewTab\` (\`LuExternalLink\`) individualmente com \`reactIcon\`, \`tag\`, \`size\`, \`colorDark\` e \`colorLight\`. Por exemplo, \`"PdfDownload": { "reactIcon": false }\` exibe texto no download enquanto a nova aba continua com ícone. A aparência não altera as opções de habilitação acima.
37
42
 
38
43
  ## Exemplo de rota e menu
39
44
 
40
- Em \`gitpagedocs/docs/versions/0.0.10/config.json\`, mantenha as listas de rotas e menus no nível principal:
45
+ Em \`gitpagedocs/docs/versions/0.0.11/config.json\`, mantenha as listas de rotas e menus no nível principal:
41
46
 
42
47
  \`\`\`json
43
48
  {
@@ -46,9 +51,9 @@ Em \`gitpagedocs/docs/versions/0.0.10/config.json\`, mantenha as listas de rotas
46
51
  "title": { "en": "Project guide (English)", "pt": "Guia do projeto (inglês)", "es": "Guía del proyecto (inglés)" },
47
52
  "pdf": {
48
53
  "pathPdf": {
49
- "en": "gitpagedocs/docs/versions/0.0.10/en/gitpagedocs-project-guide.pdf",
50
- "pt": "gitpagedocs/docs/versions/0.0.10/en/gitpagedocs-project-guide.pdf",
51
- "es": "gitpagedocs/docs/versions/0.0.10/en/gitpagedocs-project-guide.pdf"
54
+ "en": "gitpagedocs/docs/versions/0.0.11/en/gitpagedocs-project-guide.pdf",
55
+ "pt": "gitpagedocs/docs/versions/0.0.11/en/gitpagedocs-project-guide.pdf",
56
+ "es": "gitpagedocs/docs/versions/0.0.11/en/gitpagedocs-project-guide.pdf"
52
57
  },
53
58
  "previewEnabled": true,
54
59
  "downloadEnabled": true,
@@ -86,15 +91,15 @@ O botão de nova aba abre o Blob PDF validado em vez de navegar para a URL raw d
86
91
  `,
87
92
  index: `# Git Page Docs
88
93
 
89
- Git Page Docs e um runtime de documentacao multi-idioma para repositorios que possuem a pasta \`gitpagedocs/\`.
94
+ Git Page Docs é um runtime de documentação multi-idioma para repositórios que possuem a pasta \`gitpagedocs/\`.
90
95
 
91
96
  ## O que este projeto entrega
92
97
 
93
- - Renderizacao markdown em varios idiomas (\`en\`, \`pt\`, \`es\`)
94
- - Roteamento por versao (\`/v/:versao\`)
98
+ - Renderização markdown em varios idiomas (\`en\`, \`pt\`, \`es\`)
99
+ - Roteamento por versão (\`/v/:versao\`)
95
100
  - Sistema de temas por templates JSON
96
- - Execucao local e em GitHub Pages
97
- - Busca de repositorio + renderizacao remota opcional
101
+ - Execução local e em GitHub Pages
102
+ - Busca de repositório + renderização remota opcional
98
103
 
99
104
  ## Contrato de pastas
100
105
 
@@ -107,14 +112,14 @@ O runtime espera esta estrutura:
107
112
  - \`gitpagelayouts/layoutsConfig.json\`
108
113
  - \`gitpagelayouts/templates/*.json\`
109
114
 
110
- ## Navegacao rapida
115
+ ## Navegação rápida
111
116
 
112
117
  - Abra **Primeiros passos** para setup local.
113
- - Abra **Configuracao** para detalhes completos do \`config.json\`.
114
- - Abra **Publicacao** para comportamento local/producao/GitHub Pages.
115
- - Abra **Arquitetura** para mapa de codigo e fluxo de dados.
118
+ - Abra **Configuração** para detalhes completos do \`config.json\`.
119
+ - Abra **Publicação** para comportamento local/produção/GitHub Pages.
120
+ - Abra **Arquitetura** para mapa de código e fluxo de dados.
116
121
  - Abra **Temas e layouts** para autoria de templates.
117
- - Abra **Rotas autorizadas** para configurar chave, papeis e autenticacao externa.
122
+ - Abra **Rotas autorizadas** para configurar chave, papeis e autenticação externa.
118
123
  - Abra **FAQ** para troubleshooting.
119
124
 
120
125
  ## Referências detalhadas
@@ -122,6 +127,7 @@ O runtime espera esta estrutura:
122
127
  - **Referência da CLI**: instalação, todos os comandos e flags de compatibilidade.
123
128
  - **Servidor MCP**: cliente, 20 tools, 7 resources e configuração de provedores.
124
129
  - **Navegação e submenus**: árvores recursivas, URLs e sobrescritas dos breadcrumbs.
130
+ - **Blocos de conteúdo ordenados**: repita e ordene Markdown, HTML, vídeo, áudio e PDF na mesma página; posicione títulos e descrições configurados independentemente.
125
131
  - **Modo foco**: copiar/baixar Markdown e navegar por seção/documento.
126
132
  - **Acessibilidade e narração**: vozes do navegador, controles e interação com mídias.
127
133
  - **Documentos PDF**: prévia nativa, download/nova aba e o guia incluído em inglês.
@@ -181,59 +187,59 @@ O repositório fixa o pnpm em \`packageManager\`. \`pnpm dev\` ativa a busca de
181
187
 
182
188
  Use Configuração para idiomas, ícones, navegação, foco e narração; Funcionalidades para CLI e MCP; Temas e layouts para tokens visuais; Perguntas frequentes para diagnóstico.
183
189
  `,
184
- projectOverview: `# Visao geral do projeto
190
+ projectOverview: `# Visão geral do projeto
185
191
 
186
- Git Page Docs e um monorepo pnpm + turborepo que transforma a pasta \`gitpagedocs/\` de um repositorio em um site de documentacao multilinguagem e versionado — com assistente de IA integrado e um servidor MCP (Model Context Protocol).
192
+ Git Page Docs é um monorepo pnpm + turborepo que transforma a pasta \`gitpagedocs/\` de um repositório em um site de documentação multilinguagem e versionado — com assistente de IA integrado e um servidor MCP (Model Context Protocol).
187
193
 
188
194
  ## Pacotes do monorepo
189
195
 
190
196
  - **frontend/** — visualizador Next.js 15 (App Router, React 19), exportado estaticamente para o GitHub Pages.
191
197
  - **cli/** — o pacote npm publicado \`@gitpagedocs/cli\` (\`npm install -g @gitpagedocs/cli\`): gera a estrutura de docs, documenta com IA, configura o Pages e roda o servidor MCP.
192
- - **tools/** — \`@gitpagedocs/tools\`, o nucleo de logica compartilhado: sistema de IA com 14 provedores, cofre de credenciais criptografado, loader de config, caches e logger.
198
+ - **tools/** — \`@gitpagedocs/tools\`, o núcleo de lógica compartilhado: sistema de IA com 14 provedores, cofre de credenciais criptografado, loader de config, caches e logger.
193
199
  - **mcp/** — \`@gitpagedocs/mcp\`, servidor Model Context Protocol (20 ferramentas + 7 recursos).
194
- - **gitpagedocs/** — o contrato do usuario: \`config.json\`, docs versionados e layouts.
200
+ - **gitpagedocs/** — o contrato do usuário: \`config.json\`, docs versionados e layouts.
195
201
 
196
202
  ## Stack
197
203
 
198
- - Next.js 15 (App Router) + React 19 + TypeScript; exportacao estatica para GitHub Pages
204
+ - Next.js 15 (App Router) + React 19 + TypeScript; exportação estática para GitHub Pages
199
205
  - gray-matter + marked para Markdown; react-icons
200
206
  - pnpm workspaces + turborepo; Vitest + Playwright; ESLint
201
207
 
202
208
  ## Destaques
203
209
 
204
- - Multilinguagem (\`en\`, \`pt\`, \`es\`) e rotas por versao (\`/v/:version\`)
210
+ - Multilinguagem (\`en\`, \`pt\`, \`es\`) e rotas por versão (\`/v/:version\`)
205
211
  - Sistema de IA com 14 provedores (OpenAI, Anthropic, Gemini, Ollama, Mistral, DeepSeek, Cohere, Groq, xAI e mais) com streaming
206
212
  - Chaves de IA **criptografadas em repouso** (AES-256-GCM) atras de uma senha local — nunca em texto puro
207
213
  - **Drawer de chat de IA** nos docs + um **console \`/ai\`** dedicado
208
- - Sistema de 64 temas (variantes escuras e claras); execucao local e no GitHub Pages
214
+ - Sistema de 64 temas (variantes escuras e claras); execução local e no GitHub Pages
209
215
  `,
210
216
  functionalities: `# Funcionalidades
211
217
 
212
- Referencia completa de opcoes da CLI, chaves de configuracao e recursos do runtime.
218
+ Referência completa de opções da CLI, chaves de configuração e recursos do runtime.
213
219
 
214
220
  ## Linha de comando
215
221
 
216
222
  Consulte **Referência da CLI** para comandos, flags, exemplos e compatibilidade. Consulte **Servidor MCP** para integração com editores.
217
223
 
218
- ## Tipos de conteudo
224
+ ## Tipos de conteúdo
219
225
 
220
- | Tipo | Chave config | Descricao |
226
+ | Tipo | Chave config | Descrição |
221
227
  |------|--------------|-----------|
222
228
  | Markdown | \`routes-md\` | Arquivos .md com \`path\` por idioma |
223
229
  | HTML | \`routes-html\` | \`path\` local ou \`url\` externa |
224
- | Video | \`routes-video\` | \`video.pathVideo\`, \`video.videoType\` |
225
- | Audio | \`routes-audio\` | \`audio.pathAudio\`, \`audio.audioType\` |
230
+ | Vídeo | \`routes-video\` | \`video.pathVideo\`, \`video.videoType\` |
231
+ | Áudio | \`routes-audio\` | \`audio.pathAudio\`, \`audio.audioType\` |
226
232
  | PDF | \`routes-pdf\` | \`pdf.pathPdf\` por idioma; prévia nativa e download |
227
233
 
228
- ## Visualizador de codigo fonte
234
+ ## Visualizador de código fonte
229
235
 
230
- O config da versao pode renderizar um container **Codigo fonte** via \`routes-source-viewer\` e \`menus-header-source-viewer\`. O viewer le a arvore do repositorio no GitHub em tempo de execucao e aplica o tema atual da documentacao.
236
+ O config da versão pode renderizar um container **Código fonte** via \`routes-source-viewer\` e \`menus-header-source-viewer\`. O viewer lê a árvore do repositório no GitHub em tempo de execução e aplica o tema atual da documentação.
231
237
 
232
- - Arvore do repositorio a partir de \`source-viewer-path\`; a branch padrao e \`main\`
233
- - Navegacao por pastas e filtro de arquivos
234
- - Listagem de diretorios no estilo GitHub
235
- - Renderizacao de codigo com numeros de linha
236
- - Alternancia preview/codigo para Markdown, incluindo \`README.md\`
238
+ - Árvore do repositório a partir de \`source-viewer-path\`; a branch padrão é \`main\`
239
+ - Navegação por pastas e filtro de arquivos
240
+ - Listagem de diretórios no estilo GitHub
241
+ - Renderização de código com números de linha
242
+ - Alternância preview/código para Markdown, incluindo \`README.md\`
237
243
  - Pastas recolhiveis na lateral
238
244
 
239
245
  ## Chaves de config (site)
@@ -243,67 +249,67 @@ O config da versao pode renderizar um container **Codigo fonte** via \`routes-so
243
249
  - \`ProjectLink\`, \`layoutsConfigPathOficial\`, \`layoutsConfigPath\`
244
250
  - Idiomas: \`site.languages\` (liga/desliga cada um); textos da UI: \`gitpagedocs/langs/<lang>.json\`
245
251
 
246
- ## Reproducao de midia (um som por vez)
252
+ ## Reprodução de midia (um som por vez)
247
253
 
248
- \`site.mediaExclusivePlayback\` (padrao \`true\`): dar play num video de rota pausa o radio e as trilhas de audio, e dar play no radio ou numa trilha de audio pausa o video. Funciona com YouTube e Vimeo (pelas APIs dos players), arquivos nativos (\`mp4\`, \`webm\`, …) e qualquer outro embed.
254
+ \`site.mediaExclusivePlayback\` (padrão \`true\`): dar play num vídeo de rota pausa o rádio e as trilhas de áudio, e dar play no rádio ou numa trilha de áudio pausa o vídeo. Funciona com YouTube e Vimeo (pelas APIs dos players), arquivos nativos (\`mp4\`, \`webm\`, …) e qualquer outro embed.
249
255
 
250
- Para mostrar um video sem som enquanto o radio ou uma trilha de audio o explica, use \`"muted": true\` no objeto \`video\` da rota: o video roda so a imagem e fica fora da regra. \`"mediaExclusivePlayback": false\` desliga a regra no site inteiro.
256
+ Para mostrar um vídeo sem som enquanto o rádio ou uma trilha de áudio o explica, use \`"muted": true\` no objeto \`video\` da rota: o vídeo roda só a imagem e fica fora da regra. \`"mediaExclusivePlayback": false\` desliga a regra no site inteiro.
251
257
 
252
- ## Variaveis de ambiente
258
+ ## Variáveis de ambiente
253
259
 
254
- - \`GITPAGEDOCS_REPOSITORY_SEARCH\` – busca de repositorio (local)
260
+ - \`GITPAGEDOCS_REPOSITORY_SEARCH\` – busca de repositório (local)
255
261
  - \`GITHUB_ACTIONS\` – modo build GitHub Pages
256
262
 
257
263
  ## Assistente de IA
258
264
 
259
- Os docs trazem um assistente de IA em duas superficies: um **chat drawer** dentro dos docs (botao de chat de IA na barra lateral, ativado por \`site.AiChatEnabled\`) e uma pagina **console \`/ai\`** dedicada.
265
+ Os docs trazem um assistente de IA em duas superfícies: um **chat drawer** dentro dos docs (botão de chat de IA na barra lateral, ativado por \`site.AiChatEnabled\`) e uma página **console \`/ai\`** dedicada.
260
266
 
261
- - **14 provedores** em um unico core compartilhado: OpenAI, Anthropic, Gemini, OpenRouter, Ollama, Azure OpenAI, Mistral, DeepSeek, Cohere, Groq, xAI, Together, Fireworks, Perplexity.
262
- - **Escolha de modelo** — a partir do catalogo de cada provedor (\`gitpagedocs models <provedor>\`); um id de modelo salvo que o provedor aposentou e trocado pelo padrao do provedor automaticamente.
267
+ - **14 provedores** em um único core compartilhado: OpenAI, Anthropic, Gemini, OpenRouter, Ollama, Azure OpenAI, Mistral, DeepSeek, Cohere, Groq, xAI, Together, Fireworks, Perplexity.
268
+ - **Escolha de modelo** — a partir do catálogo de cada provedor (\`gitpagedocs models <provedor>\`); um id de modelo salvo que o provedor aposentou é trocado pelo padrão do provedor automaticamente.
263
269
  - **Criptografia em repouso** — sua chave de API e selada com AES-256-GCM atras de uma **senha local** e nunca fica em texto puro nem em logs.
264
- - **Bloqueio por inatividade** — o chat drawer se bloqueia sozinho apos \`site.AiChatAutoLockSeconds\` segundos sem uso (padrao 30, \`0\` desativa): um modal centralizado com contagem regressiva, no seu idioma, permite cancelar ou bloquear agora, e desbloquear pede a senha de novo.
265
- - **Provedores resilientes** — erros transitorios do provedor sao repetidos (3 tentativas) e uma falha final vira uma mensagem simples terminando em "Tente novamente!".
266
- - **Geracao de documentacao com IA** — \`gitpagedocs ai\` varre os caminhos escolhidos e escreve markdown multilingue (pt/en/es); reutilizavel via \`.gitpagedocsconfig\`, cuja chave de API fica selada no cofre criptografado \`.gitpagedocsvault\` (a senha do cofre e pedida em toda execucao). \`gitpagedocs chat\` leva o mesmo assistente ao terminal.
270
+ - **Bloqueio por inatividade** — o chat drawer se bloqueia sozinho após \`site.AiChatAutoLockSeconds\` segundos sem uso (padrão 30, \`0\` desativa): um modal centralizado com contagem regressiva, no seu idioma, permite cancelar ou bloquear agora, e desbloquear pede a senha de novo.
271
+ - **Provedores resilientes** — erros transitórios do provedor são repetidos (3 tentativas) e uma falha final vira uma mensagem simples terminando em "Tente novamente!".
272
+ - **Geração de documentação com IA** — \`gitpagedocs ai\` varre os caminhos escolhidos e escreve markdown multilíngue (pt/en/es); reutilizável via \`.gitpagedocsconfig\`, cuja chave de API fica selada no cofre criptografado \`.gitpagedocsvault\` (a senha do cofre é pedida em toda execução). \`gitpagedocs chat\` leva o mesmo assistente ao terminal.
267
273
 
268
274
  ## Servidor MCP
269
275
 
270
- \`gitpagedocs mcp start\` sobe um servidor Model Context Protocol (stdio) expondo **20 tools** (sistema de arquivos, IA, geracao/analise de docs) e **7 resources** (\`project://structure|docs|config|repository|readme|ai/providers|ai/models\`) para editores e agentes de IA.
276
+ \`gitpagedocs mcp start\` sobe um servidor Model Context Protocol (stdio) expondo **20 tools** (sistema de arquivos, IA, geração/análise de docs) e **7 resources** (\`project://structure|docs|config|repository|readme|ai/providers|ai/models\`) para editores e agentes de IA.
271
277
  `,
272
- configuration: `# Configuracao
278
+ configuration: `# Configuração
273
279
 
274
- A configuracao de runtime fica em \`gitpagedocs/config.json\`. Os textos da UI ficam ao lado, um arquivo por idioma.
280
+ A configuração de runtime fica em \`gitpagedocs/config.json\`. Os textos da UI ficam ao lado, um arquivo por idioma.
275
281
 
276
282
  ## Idiomas (\`site.languages\` + \`langs/\`)
277
283
 
278
- - \`site.languages\` em \`gitpagedocs/config.json\` liga (\`true\`) ou desliga (\`false\`) cada idioma, na ordem do menu: \`{ "languages": { "en": true, "pt": true, "es": false } }\`. Um idioma em \`false\` some do seletor de idiomas e seus textos nao sao carregados, mesmo que os docs existam.
279
- - \`gitpagedocs/langs/<lang>.json\` guarda os textos daquele idioma: \`langmenu\` (cabecalho, busca, visualizador de codigo, player de audio, chat de IA e acesso aos docs) e \`translations\` (\`notFound\`, \`navigation\`, \`footer\`).
284
+ - \`site.languages\` em \`gitpagedocs/config.json\` liga (\`true\`) ou desliga (\`false\`) cada idioma, na ordem do menu: \`{ "languages": { "en": true, "pt": true, "es": false } }\`. Um idioma em \`false\` some do seletor de idiomas e seus textos não são carregados, mesmo que os docs existam.
285
+ - \`gitpagedocs/langs/<lang>.json\` guarda os textos daquele idioma: \`langmenu\` (cabeçalho, busca, visualizador de código, player de áudio, chat de IA e acesso aos docs) e \`translations\` (\`notFound\`, \`navigation\`, \`footer\`).
280
286
  - Para adicionar um idioma, crie \`langs/<lang>.json\` e inclua \`"<lang>": true\` em \`site.languages\`.
281
- - Arquivos \`config.json\` antigos que ainda trazem \`site.langmenu\` / \`translations\` inline continuam funcionando; quando os dois existem, os arquivos de \`langs/\` prevalecem e qualquer chave ausente e preenchida a partir da versao atual.
287
+ - Arquivos \`config.json\` antigos que ainda trazem \`site.langmenu\` / \`translations\` inline continuam funcionando; quando os dois existem, os arquivos de \`langs/\` prevalecem e qualquer chave ausente é preenchida a partir da versão atual.
282
288
 
283
- ## Secao \`site\`
289
+ ## Seção \`site\`
284
290
 
285
291
  Principais chaves:
286
292
 
287
- - \`name\`: titulo do projeto no UI
288
- - \`defaultLanguage\`: idioma padrao
293
+ - \`name\`: título do projeto no UI
294
+ - \`defaultLanguage\`: idioma padrão
289
295
  - \`HideThemeSelector\`: esconde/mostra seletor de tema
290
296
  - \`ThemeDefault\`: id do tema inicial
291
297
  - \`ThemeModeDefault\`: modo inicial (\`light\` ou \`dark\`)
292
- - \`ProjectLink\`: URL de repositorio para acoes no cabecalho
293
- - \`docsVersion\`: versao inicial selecionada
298
+ - \`ProjectLink\`: URL de repositório para acoes no cabeçalho
299
+ - \`docsVersion\`: versão inicial selecionada
294
300
  - \`ActiveNavigation\`: habilita a navegação rápida e o atalho Ctrl+K
295
301
  - \`FocusMode\`: habilita modo foco/leitura
296
- - \`icons\`: icones do cabecalho. \`icons.defaults\` guarda o que todos compartilham (\`reactIcon\`, \`colorDark\`, \`colorLight\`, \`size\`, \`imgDark\`, \`imgLight\`, \`imgWidth\`, \`imgHeight\`) e cada icone define seu \`tag\` e o que muda (\`null\` remove um campo). As chaves planas abaixo continuam valendo e vencem quando as duas formas existem.
297
- - \`IconImageMenuHeaderImgWidth\`, \`IconImageMenuHeaderImgHeight\`: tamanho do icone principal
298
- - \`IconImageMenuHeaderLightImg\`, \`IconImageMenuHeaderDarkImg\`: icone principal (light/dark)
299
- - \`IconProjectLinkImgWidth\`, \`IconProjectLinkImgHeight\`: tamanho do icone link do projeto
300
- - \`IconProjectLinkLightImg\`, \`IconProjectLinkDarkImg\`: icone link do projeto
301
- - \`IconVersionLinksImgWidth\`, \`IconVersionLinksImgHeight\`: tamanho do icone links de versao
302
- - \`IconVersionLinksLightImg\`, \`IconVersionLinksDarkImg\`: icone links de versao
303
- - \`IconInfoHeaderMenuImgWidth\`, \`IconInfoHeaderMenuImgHeight\`: tamanho do icone info
304
- - \`IconInfoHeaderMenuLightImg\`, \`IconInfoHeaderMenuDarkImg\`: icone info
305
- - \`IconPreviewProjectLinkImgWidth\`, \`IconPreviewProjectLinkImgHeight\`: tamanho do icone preview
306
- - \`IconPreviewProjectLinkLightImg\`, \`IconPreviewProjectLinkDarkImg\`: icone preview
302
+ - \`icons\`: ícones do cabeçalho. \`icons.defaults\` guarda o que todos compartilham (\`reactIcon\`, \`colorDark\`, \`colorLight\`, \`size\`, \`imgDark\`, \`imgLight\`, \`imgWidth\`, \`imgHeight\`) e cada ícone define seu \`tag\` e o que muda (\`null\` remove um campo). As chaves planas abaixo continuam valendo e vencem quando as duas formas existem.
303
+ - \`IconImageMenuHeaderImgWidth\`, \`IconImageMenuHeaderImgHeight\`: tamanho do ícone principal
304
+ - \`IconImageMenuHeaderLightImg\`, \`IconImageMenuHeaderDarkImg\`: ícone principal (light/dark)
305
+ - \`IconProjectLinkImgWidth\`, \`IconProjectLinkImgHeight\`: tamanho do ícone link do projeto
306
+ - \`IconProjectLinkLightImg\`, \`IconProjectLinkDarkImg\`: ícone link do projeto
307
+ - \`IconVersionLinksImgWidth\`, \`IconVersionLinksImgHeight\`: tamanho do ícone links de versão
308
+ - \`IconVersionLinksLightImg\`, \`IconVersionLinksDarkImg\`: ícone links de versão
309
+ - \`IconInfoHeaderMenuImgWidth\`, \`IconInfoHeaderMenuImgHeight\`: tamanho do ícone info
310
+ - \`IconInfoHeaderMenuLightImg\`, \`IconInfoHeaderMenuDarkImg\`: ícone info
311
+ - \`IconPreviewProjectLinkImgWidth\`, \`IconPreviewProjectLinkImgHeight\`: tamanho do ícone preview
312
+ - \`IconPreviewProjectLinkLightImg\`, \`IconPreviewProjectLinkDarkImg\`: ícone preview
307
313
  - \`layoutsConfigPath\`: fallback remoto para layouts
308
314
  - \`rendering\`: URL canonica publicada
309
315
 
@@ -316,35 +322,35 @@ Em \`gitpagedocs/config.json\`, estas entradas de \`site.icons\` configuram idio
316
322
  "site": {
317
323
  "icons": {
318
324
  "LanguageSelector": {
319
- "reactIcon": true, "tag": "FiGlobe", "size": "22px",
325
+ "reactIcon": true, "tag": "SiGoogletranslate", "size": "22px",
320
326
  "colorDark": "currentColor", "colorLight": "currentColor"
321
327
  },
322
328
  "ThemeSelector": {
323
- "reactIcon": true, "tag": "BsSunFill", "size": "22px",
329
+ "reactIcon": true, "tag": "LuPencil", "size": "22px",
324
330
  "colorDark": "currentColor", "colorLight": "currentColor"
325
331
  },
326
332
  "FocusMode": {
327
- "reactIcon": true, "tag": "MdFullscreen", "size": "22px",
333
+ "reactIcon": true, "tag": "LuBookOpen", "size": "22px",
328
334
  "colorDark": "currentColor", "colorLight": "currentColor"
329
335
  },
330
336
  "QuickNavigation": {
331
- "reactIcon": true, "tag": "FiSearch", "size": "22px",
337
+ "reactIcon": true, "tag": "LuSearch", "size": "22px",
332
338
  "colorDark": "currentColor", "colorLight": "currentColor"
333
339
  },
334
340
  "PdfDownload": {
335
- "reactIcon": true, "tag": "FiDownload", "size": "22px",
341
+ "reactIcon": true, "tag": "LuDownload", "size": "22px",
336
342
  "colorDark": "currentColor", "colorLight": "currentColor"
337
343
  },
338
344
  "PdfOpenInNewTab": {
339
- "reactIcon": true, "tag": "FiExternalLink", "size": "22px",
345
+ "reactIcon": true, "tag": "LuExternalLink", "size": "22px",
340
346
  "colorDark": "currentColor", "colorLight": "currentColor"
341
347
  },
342
348
  "DocumentPrevious": {
343
- "reactIcon": true, "tag": "FiChevronLeft", "size": "22px",
349
+ "reactIcon": true, "tag": "LuChevronLeft", "size": "22px",
344
350
  "colorDark": "currentColor", "colorLight": "currentColor"
345
351
  },
346
352
  "DocumentNext": {
347
- "reactIcon": true, "tag": "FiChevronRight", "size": "22px",
353
+ "reactIcon": true, "tag": "LuChevronRight", "size": "22px",
348
354
  "colorDark": "currentColor", "colorLight": "currentColor"
349
355
  }
350
356
  }
@@ -356,66 +362,66 @@ Cada controle é independente: \`reactIcon: true\` mostra o ícone (padrão); \`
356
362
 
357
363
  Configs compactos podem mover valores comuns para \`site.icons.defaults\`; campos omitidos herdam esses defaults. Defina \`reactIcon: false\` em uma entrada específica para substituir o ícone padrão por texto.
358
364
 
359
- ## Secao \`VersionControl\`
365
+ ## Seção \`VersionControl\`
360
366
 
361
367
  \`VersionControl.versions\` define:
362
368
 
363
- - \`id\`: identificador da versao
364
- - \`path\`: caminho do config da versao
369
+ - \`id\`: identificador da versão
370
+ - \`path\`: caminho do config da versão
365
371
  - links opcionais (\`ProjectLink\`, \`branch\`, \`release\`, \`commit\`)
366
372
  - metadados opcionais do source viewer (\`source-viewer\`, \`source-viewer-path\`)
367
373
 
368
- ## Navegacao e rotas
374
+ ## Navegação e rotas
369
375
 
370
376
  - \`routes\`: caminhos markdown por idioma (legado)
371
377
  - \`menus-header\`: menu hierarquico
372
- - \`translations\`: labels de UI para not-found e navegacao
378
+ - \`translations\`: labels de UI para not-found e navegação
373
379
 
374
- ## Autorizacao (config de versao)
380
+ ## Autorização (config de versão)
375
381
 
376
- - \`auth\`: configuracoes globais de autorizacao para a versao
382
+ - \`auth\`: configurações globais de autorização para a versão
377
383
  - \`auth.accessKeys\`: mapa de chaves usado por \`authorization.accessKeyId\`
378
384
  - \`auth.rolesStorageKey\`: chave de localStorage para bootstrap de papeis
379
385
  - \`auth.providers\`: adaptadores de provedor (\`authjs\`, \`clerk\`, \`firebase\`, \`jwt\`)
380
386
 
381
- ## Tipos de conteudo (config de versao)
387
+ ## Tipos de conteúdo (config de versão)
382
388
 
383
- Configs de versao suportam multiplos tipos:
389
+ Configs de versão suportam múltiplos tipos:
384
390
 
385
391
  - \`routes-md\`: Rotas markdown com \`title\`, \`description\` (centralizados via \`titlePosition\`, \`descriptionPosition\`)
386
- - \`routes-source-viewer\`: Containers de codigo fonte com \`source-viewer: true\` e \`source-viewer-path\`
387
- - \`routes-html\`: Caminhos de paginas HTML por idioma
388
- - \`routes-video\`: Config de video com \`video.videoType\` (youtube, vimeo, mp4, etc.) e \`video.pathVideo\`
389
- - \`routes-audio\`: Config de audio com \`audio.audioType\` (youtube, mp3, etc.) e \`audio.pathAudio\`
392
+ - \`routes-source-viewer\`: Containers de código fonte com \`source-viewer: true\` e \`source-viewer-path\`
393
+ - \`routes-html\`: Caminhos de páginas HTML por idioma
394
+ - \`routes-video\`: Config de vídeo com \`video.videoType\` (youtube, vimeo, mp4, etc.) e \`video.pathVideo\`
395
+ - \`routes-audio\`: Config de áudio com \`audio.audioType\` (youtube, mp3, etc.) e \`audio.pathAudio\`
390
396
  - \`routes-pdf\`: PDF com \`pdf.pathPdf\` por idioma; consulte Documentos PDF.
391
- - \`authorization\` (md/html/video): guarda de acesso por chave, papeis e autenticacao externa
397
+ - \`authorization\` (md/html/vídeo): guarda de acesso por chave, papeis e autenticação externa
392
398
  - \`menus-header-md\`, \`menus-header-source-viewer\`, \`menus-header-html\`, \`menus-header-video\`, \`menus-header-audio\`, \`menus-header-pdf\`: menus por tipo
393
- - \`hierarchyPage\`: ordem dos containers na pagina \`{ md: 0, "source-viewer": 1, html: 2, video: 3, audio: 4, pdf: 5 }\`
394
- - \`hierarchyMenu\`: ordem das secoes do menu \`{ md: 0, "source-viewer": 1, html: 2, video: 3, audio: 4, pdf: 5 }\`
399
+ - \`hierarchyPage\`: ordem dos containers na página \`{ md: 0, "source-viewer": 1, html: 2, video: 3, audio: 4, pdf: 5 }\`
400
+ - \`hierarchyMenu\`: ordem das seções do menu \`{ md: 0, "source-viewer": 1, html: 2, video: 3, audio: 4, pdf: 5 }\`
395
401
 
396
402
  Cada rota pode incluir \`title\`, \`description\` (por idioma), \`titleCss\`, \`titlePosition: "center"\`, \`descriptionPosition: "center"\`, \`titleIsVisible\`, \`descriptionIsVisible\`.
397
403
 
398
- Configuracoes que todas as rotas compartilham ficam uma unica vez em \`routeDefaults\`, no topo do config da versao; cada rota guarda so os proprios valores, e um valor escrito na rota vence o \`routeDefaults\`.
404
+ Configurações que todas as rotas compartilham ficam uma única vez em \`routeDefaults\`, no topo do config da versão; cada rota guarda só os próprios valores, e um valor escrito na rota vence o \`routeDefaults\`.
399
405
 
400
- ## Variaveis por rota (blockLink, container, url, browseAll)
406
+ ## Variáveis por rota (blockLink, container, url, browseAll)
401
407
 
402
- Opcoes por rota em \`routes-md\`, \`routes-html\` e \`routes-video\`:
408
+ Opções por rota em \`routes-md\`, \`routes-html\` e \`routes-video\`:
403
409
 
404
- - **\`blockLink\`** (padrao: true) – Para HTML: se true, links abrem em nova aba (\`target="_blank"\`); se false, no proprio contexto.
405
- - **\`container\`** – \`"full"\` = altura automatica; numero (ex: \`500\`) = altura fixa em px com overflow auto. Aplica-se a md, html e video.
406
- - **\`url\`** – Apenas em \`routes-html\`: \`Record<LanguageCode, string>\` com URLs externas. Quando definido, o iframe usa \`src={url}\` em vez de HTML local via \`srcDoc\`. Rotas com \`url\` nao geram arquivos HTML locais.
407
- - **\`browseAll\`** (padrao: false) – Se true, o container mostra botoes Anterior/Proximo para navegar entre todos os itens daquele tipo.
410
+ - **\`blockLink\`** (padrão: true) – Para HTML: se true, links abrem em nova aba (\`target="_blank"\`); se false, no próprio contexto.
411
+ - **\`container\`** – \`"full"\` = altura automática; numero (ex: \`500\`) = altura fixa em px com overflow auto. Aplica-se a md, html e vídeo.
412
+ - **\`url\`** – Apenas em \`routes-html\`: \`Record<LanguageCode, string>\` com URLs externas. Quando definido, o iframe usa \`src={url}\` em vez de HTML local via \`srcDoc\`. Rotas com \`url\` não geram arquivos HTML locais.
413
+ - **\`browseAll\`** (padrão: false) – Se true, o container mostra botões Anterior/Próximo para navegar entre todos os itens daquele tipo.
408
414
 
409
- ## Tipos de conteudo: path vs url (HTML)
415
+ ## Tipos de conteúdo: path vs url (HTML)
410
416
 
411
417
  - **Markdown (\`routes-md\`)**: usa \`path\` apontando para arquivos \`.md\` locais.
412
- - **HTML (\`routes-html\`)**: usa \`path\` para arquivos HTML locais (sem extensao .html no config) ou \`url\` para URLs externas. Com \`url\`, o iframe carrega a pagina externa; nenhum arquivo local e gerado.
413
- - **Video (\`routes-video\`)**: usa \`video.pathVideo\` e \`video.videoType\` (youtube, vimeo, mp4, etc.).
418
+ - **HTML (\`routes-html\`)**: usa \`path\` para arquivos HTML locais (sem extensão .html no config) ou \`url\` para URLs externas. Com \`url\`, o iframe carrega a página externa; nenhum arquivo local é gerado.
419
+ - **Vídeo (\`routes-video\`)**: usa \`video.pathVideo\` e \`video.videoType\` (youtube, vimeo, mp4, etc.).
414
420
 
415
- ## Variaveis de ambiente
421
+ ## Variáveis de ambiente
416
422
 
417
423
  - \`GITPAGEDOCS_REPOSITORY_SEARCH\`: ativa/desativa busca remota localmente
418
- - \`GITHUB_ACTIONS\`: ativa comportamento especifico de GitHub Pages
424
+ - \`GITHUB_ACTIONS\`: ativa comportamento específico de GitHub Pages
419
425
 
420
426
  ## Comportamento do site e padrões
421
427
 
@@ -491,7 +497,7 @@ Em um checkout do runtime com dependências instaladas, \`node cli/index.mjs --h
491
497
 
492
498
  ## Releases npm para mantenedores
493
499
 
494
- O monorepo publica \`@gitpagedocs/tools\`, \`@gitpagedocs/mcp\` e \`@gitpagedocs/cli\`; raiz e frontend são privados. O \`npm-publish.yml\` atual roda em pushes para \`main\` e ignora uma versão da CLI já publicada. Usa o secret \`NPM_TOKEN\` do repositório e publica workspaces na ordem de dependência. Criar somente uma release no GitHub não é seu gatilho.
500
+ O monorepo pública \`@gitpagedocs/tools\`, \`@gitpagedocs/mcp\` e \`@gitpagedocs/cli\`; raiz e frontend são privados. O \`npm-publish.yml\` atual roda em pushes para \`main\` e ignora uma versão da CLI já publicada. Usa o secret \`NPM_TOKEN\` do repositório e pública workspaces na ordem de dependência. Criar somente uma release no GitHub não é seu gatilho.
495
501
 
496
502
  Sincronize versões e dependências internas, regenere docs/baselines, execute typecheck, lint, testes, smoke, build e Playwright e revise antes do push. Confirme as três versões no npm e o resultado do Pages. A CLI de configuração ignora \`prebuilt/\`; essa pasta não é exigida pelo workflow de publicação.
497
503
  `,
@@ -502,34 +508,34 @@ O projeto e organizado por fronteiras de feature e responsabilidades do runtime.
502
508
  ## Pacotes
503
509
 
504
510
  - **frontend/** — visualizador Next.js (Feature-Sliced: app / widgets / features / entities / shared); export estatico.
505
- - **cli/** — o bin publicado \`gitpagedocs\` (hexagonal) + \`cli/ai/\` (CLI de documentacao com IA).
511
+ - **cli/** — o bin publicado \`gitpagedocs\` (hexagonal) + \`cli/ai/\` (CLI de documentação com IA).
506
512
  - **tools/** — \`@gitpagedocs/tools\`: ai/ security/ crypto/ cache/ config/ logger/ errors/ filesystem/ documentation/ i18n/ ports/.
507
513
  - **mcp/** — \`@gitpagedocs/mcp\`: ferramentas + recursos MCP que delegam ao tools/.
508
514
 
509
515
  ## Modulos principais (frontend)
510
516
 
511
- - \`frontend/src/app/[[...repo]]/page.tsx\` — parser de rota, generateStaticParams, selecao de shell.
512
- - \`frontend/src/entities/docs/api/load-docs-data.ts\` — config local/remota, versao, parse markdown, layouts + temas.
513
- - \`frontend/src/widgets/docs-shell/docs-shell.tsx\` — UI, estado idioma/versao/tema, sync de URL, montagem do chat de IA.
517
+ - \`frontend/src/app/[[...repo]]/page.tsx\` — parser de rota, generateStaticParams, seleção de shell.
518
+ - \`frontend/src/entities/docs/api/load-docs-data.ts\` — config local/remota, versão, parse markdown, layouts + temas.
519
+ - \`frontend/src/widgets/docs-shell/docs-shell.tsx\` — UI, estado idioma/versão/tema, sync de URL, montagem do chat de IA.
514
520
 
515
- ## Seguranca: credenciais de IA criptografadas
521
+ ## Segurança: credenciais de IA criptografadas
516
522
 
517
- O console \`/ai\` e o chat drawer exigem uma senha local que deriva (PBKDF2) uma chave AES-256-GCM; as chaves ficam criptografadas no \`localStorage\` e so sao descriptografadas durante a sessao (\`@gitpagedocs/tools/security\`). O drawer se bloqueia sozinho apos \`site.AiChatAutoLockSeconds\` segundos sem uso (padrao 30; \`0\` desativa): um modal centralizado com contagem regressiva, no idioma selecionado, permite cancelar ou bloquear agora, e voltar exige a senha de novo. Na CLI, a chave de \`.gitpagedocsconfig\` fica selada no cofre criptografado \`.gitpagedocsvault\` e a senha do cofre e pedida em toda execucao.
523
+ O console \`/ai\` e o chat drawer exigem uma senha local que deriva (PBKDF2) uma chave AES-256-GCM; as chaves ficam criptografadas no \`localStorage\` e só são descriptografadas durante a sessão (\`@gitpagedocs/tools/security\`). O drawer se bloqueia sozinho após \`site.AiChatAutoLockSeconds\` segundos sem uso (padrão 30; \`0\` desativa): um modal centralizado com contagem regressiva, no idioma selecionado, permite cancelar ou bloquear agora, e voltar exige a senha de novo. Na CLI, a chave de \`.gitpagedocsconfig\` fica selada no cofre criptografado \`.gitpagedocsvault\` e a senha do cofre é pedida em toda execução.
518
524
 
519
525
  ## Fluxo de dados
520
526
 
521
527
  1. A rota chega (\`/owner/repo/v/x.y.z\` ou equivalente local)
522
528
  2. O config e resolvido (local ou remoto)
523
- 3. Config de versao sobrescreve rotas/menus base
529
+ 3. Config de versão sobrescreve rotas/menus base
524
530
  4. Markdown e carregado e convertido para HTML
525
531
  5. Template de layout e resolvido e aplicado em CSS vars
526
- 6. Shell renderiza conteudo e controles
532
+ 6. Shell renderiza conteúdo e controles
527
533
 
528
534
  ## Pontos de resiliencia
529
535
 
530
536
  - fallback de carga para layouts/templates
531
537
  - carregamento de markdown por idioma com fallback de erro
532
- - sincronizacao de linguagem/versao/tema via localStorage
538
+ - sincronização de linguagem/versão/tema via localStorage
533
539
  `,
534
540
  githubIssuesProjects: `# GitHub Issues e Projects
535
541
 
@@ -547,7 +553,7 @@ Conceitos basicos de Git para iniciantes.
547
553
 
548
554
  ## Comandos essenciais
549
555
 
550
- - \`git init\` - iniciar repositorio
556
+ - \`git init\` - iniciar repositório
551
557
  - \`git add\` - preparar alteracoes
552
558
  - \`git commit\` - registrar commit
553
559
  - \`git push\` - enviar para remoto
@@ -556,21 +562,21 @@ Conceitos basicos de Git para iniciantes.
556
562
 
557
563
  Proteja rotas por chave de acesso, papeis obrigatorios e provedores externos.
558
564
 
559
- ## Local do config de versao
565
+ ## Local do config de versão
560
566
 
561
567
  Configure em:
562
568
 
563
569
  - \`gitpagedocs/docs/versions/<versao>/config.json\`
564
570
 
565
- ## Secao global auth
571
+ ## Seção global auth
566
572
 
567
- Use \`auth\` no topo do config de versao:
573
+ Use \`auth\` no topo do config de versão:
568
574
 
569
575
  - \`accessKeys\`: mapa de ids de chave para segredo esperado
570
576
  - \`rolesStorageKey\`: chave de localStorage para bootstrap de papeis
571
577
  - \`providers\`: lista de provedores externos (\`authjs\`, \`clerk\`, \`firebase\`, \`jwt\`)
572
578
 
573
- ## Autorizacao por rota
579
+ ## Autorização por rota
574
580
 
575
581
  Dentro de cada rota (\`routes-md\`, \`routes-html\`, \`routes-video\`):
576
582
 
@@ -608,7 +614,7 @@ Adaptadores suportados:
608
614
  `,
609
615
  themes: `# Temas e layouts
610
616
 
611
- Temas sao templates JSON mapeados por \`layoutsConfig.json\`.
617
+ Temas são templates JSON mapeados por \`layoutsConfig.json\`.
612
618
 
613
619
  ## Arquivos
614
620
 
@@ -629,15 +635,15 @@ Cada template normalmente contem:
629
635
 
630
636
  ## Comportamento em runtime
631
637
 
632
- - tema ativo vem de config/usuario
633
- - toggle light/dark resolve o tema pareado por referencia
634
- - variaveis CSS sao geradas dos tokens do template
638
+ - tema ativo vem de config/usuário
639
+ - toggle light/dark resolve o tema pareado por referência
640
+ - variáveis CSS são geradas dos tokens do template
635
641
 
636
642
  ## Boas praticas
637
643
 
638
644
  - mantenha contraste acessivel
639
645
  - padronize escala de espaco e borda
640
- - ofereca variantes dark e light quando possivel
646
+ - ofereca variantes dark e light quando possível
641
647
 
642
648
  ## Escolher e personalizar
643
649
 
@@ -772,47 +778,47 @@ A etapa de geração envia o conteúdo selecionado do projeto ao provedor config
772
778
 
773
779
  ## Comandos da CLI
774
780
 
775
- | Comando | Descricao |
781
+ | Comando | Descrição |
776
782
  |---------|------------|
777
783
  | \`npx @gitpagedocs/cli\` | Gera config e docs em \`gitpagedocs/\` |
778
- | \`npx @gitpagedocs/cli --layoutconfig\` | Tambem gera layouts/templates locais em \`gitpagelayouts/\` |
784
+ | \`npx @gitpagedocs/cli --layoutconfig\` | Também gera layouts/templates locais em \`gitpagelayouts/\` |
779
785
  | \`npx @gitpagedocs/cli --home\` | Distribuicao standalone (\`gitpagedocshome/\`) |
780
786
  | \`npx @gitpagedocs/cli --push --owner X --repo Y\` | Configura workflow, commit, push |
781
- | \`npx @gitpagedocs/cli --interactive\` / \`-i\` | Modo interativo com prompts (padrao em um terminal) |
782
- | \`npx @gitpagedocs/cli --no-interactive\` / \`--yes\` / \`-y\` | Nunca pergunta; usa flags e padroes |
783
- | \`gitpagedocs ai\` | Gerador interativo de documentacao com IA |
784
- | \`gitpagedocs chat [pergunta]\` | Chat de IA com streaming no terminal (REPL em TTY; resposta unica com pergunta ou stdin) |
785
- | \`gitpagedocs provider [id]\` / \`models [provider]\` | Lista provedores de IA / modelos do catalogo |
786
- | \`gitpagedocs document[:repo\\|:file\\|:folder]\` | Gera documentacao com IA |
787
+ | \`npx @gitpagedocs/cli --interactive\` / \`-i\` | Modo interativo com prompts (padrão em um terminal) |
788
+ | \`npx @gitpagedocs/cli --no-interactive\` / \`--yes\` / \`-y\` | Nunca pergunta; usa flags e padrões |
789
+ | \`gitpagedocs ai\` | Gerador interativo de documentação com IA |
790
+ | \`gitpagedocs chat [pergunta]\` | Chat de IA com streaming no terminal (REPL em TTY; resposta única com pergunta ou stdin) |
791
+ | \`gitpagedocs provider [id]\` / \`models [provider]\` | Lista provedores de IA / modelos do catálogo |
792
+ | \`gitpagedocs document[:repo\\|:file\\|:folder]\` | Gera documentação com IA |
787
793
  | \`gitpagedocs deploy\` / \`pages [actions\\|deploy]\` | Configura GitHub Pages via Actions + push |
788
794
  | \`gitpagedocs docs\` | Atualiza as regioes gerenciadas de README/CONTRIBUTING/SECURITY |
789
- | \`gitpagedocs password\` | Define a senha de acesso a documentacao (chave publica em \`site.docsAccess\`) |
795
+ | \`gitpagedocs password\` | Define a senha de acesso a documentação (chave pública em \`site.docsAccess\`) |
790
796
  | \`gitpagedocs config\` / \`config clear\` | Mostra a config resolvida / apaga a config salva e o cofre de chaves |
791
- | \`gitpagedocs doctor\` / \`version\` / \`update\` | Diagnostico / versao / verificacao de atualizacao no registro |
797
+ | \`gitpagedocs doctor\` / \`version\` / \`update\` | Diagnóstico / versão / verificação de atualização no registro |
792
798
  | \`gitpagedocs mcp start\` | Inicia o servidor MCP via stdio |
793
799
 
794
800
  Instale globalmente com \`npm install -g @gitpagedocs/cli\` ou rode sem instalar com \`npx @gitpagedocs/cli\`.
795
801
 
796
- ## Opcoes da CLI
802
+ ## Opções da CLI
797
803
 
798
- | Opcao | Descricao |
804
+ | Opção | Descrição |
799
805
  |-------|-----------|
800
806
  | \`--owner <user>\` | Owner do GitHub |
801
- | \`--repo <repo>\` | Repositorio GitHub |
807
+ | \`--repo <repo>\` | Repositório GitHub |
802
808
  | \`--path <subpath>\` | Subcaminho dos docs (ex: \`docs\`); sem ele, base path = nome do repo para CSS/JS em project sites |
803
- | \`--output <dir>\` | Diretorio de saida (padrao: \`gitpagedocs\`) |
804
- | \`--search <true-or-false>\` | Habilita/desabilita busca de repositorio (\`--home\`) |
809
+ | \`--output <dir>\` | Diretório de saída (padrão: \`gitpagedocs\`) |
810
+ | \`--search <true-or-false>\` | Habilita/desabilita busca de repositório (\`--home\`) |
805
811
  | \`--layoutconfig\` | Gera layouts locais em \`gitpagelayouts/\` |
806
- | \`--layouts-dir <dir>\` | Pasta dos layouts locais (padrao: \`gitpagelayouts\`) |
812
+ | \`--layouts-dir <dir>\` | Pasta dos layouts locais (padrão: \`gitpagelayouts\`) |
807
813
  | \`--push\` | Cria workflow, commit de artefatos, push |
808
814
  | \`--pages-actions\` | Apenas muda a fonte do GitHub Pages para GitHub Actions (igual a \`pages actions\`) |
809
815
  | \`--home\` | Gera \`gitpagedocshome/\` (estatico + .env + Dockerfile) |
810
816
 
811
- ## Saida gerada
817
+ ## Saída gerada
812
818
 
813
819
  - \`gitpagedocs/config.json\` – config raiz
814
- - \`gitpagedocs/icon.svg\` – icone padrao
815
- - \`gitpagedocs/docs/versions/<ver>/config.json\` – rotas por versao
820
+ - \`gitpagedocs/icon.svg\` – ícone padrão
821
+ - \`gitpagedocs/docs/versions/<ver>/config.json\` – rotas por versão
816
822
  - \`gitpagedocs/docs/versions/<ver>/{en,pt,es}/*.md\` – docs em markdown
817
823
  - \`gitpagelayouts/\` – apenas com \`--layoutconfig\` (pasta configuravel com \`--layouts-dir\`)
818
824
 
@@ -857,7 +863,7 @@ Rotas definem o conteúdo; menus definem como o leitor o encontra. Configure-os
857
863
 
858
864
  Cada entrada de \`menus-header-md\` tem \`id\` e objetos \`pt\`, \`en\`, \`es\` com \`title\` e \`path-click\` opcional. Adicione \`submenus\` com novas entradas para aninhar a árvore. O objeto de um idioma também aceita \`submenus\` localizados com título/caminho. Use uma forma de maneira consistente para não listar o mesmo filho duas vezes.
859
865
 
860
- Grupos sem \`path-click\` organizam os filhos. Para um destino Markdown, use seu caminho localizado real de \`routes-md[].path\`. O alias \`page:<id>\` é registrado por rotas source-viewer, vídeo, áudio e PDF; não o use em uma página somente Markdown. O exemplo usa a versão \`0.0.8\`: troque esse trecho pela versão editada e crie os três arquivos chapter.
866
+ Grupos sem \`path-click\` organizam os filhos. Para o destino de uma rota Markdown, use seu caminho localizado real de \`routes-md[].path\`. Rotas source-viewer, vídeo, áudio, PDF e composições explícitas em \`pages\` registram \`page:<id>\`; uma rota Markdown simples usa o caminho do arquivo. O exemplo usa a versão \`0.0.8\`: troque esse trecho pela versão editada e crie os três arquivos chapter.
861
867
 
862
868
  \`\`\`json
863
869
  {
@@ -925,6 +931,14 @@ Grupos sem \`path-click\` organizam os filhos. Para um destino Markdown, use seu
925
931
 
926
932
  ## Comportamento do aninhamento
927
933
 
934
+ Um pai pode ser documento e grupo ao mesmo tempo. Mantenha seu \`path-click\` localizado junto com \`submenus\`: o título abre a página Markdown e a seta separada expande ou recolhe os filhos. O scaffold inclui visões gerais úteis para os oito grupos pais. Os ancestrais dos breadcrumbs apontam para esses documentos; o destino atual continua marcado como atual. Um grupo sem caminho ainda organiza filhos, mas não possui destino para abrir.
935
+
936
+ O trecho abaixo usa as rotas Markdown 31, 32 e 13 já presentes no scaffold. Combine-o com \`menus-header-md\` e preserve as definições correspondentes em \`routes-md\` e seus arquivos:
937
+
938
+ \`\`\`json
939
+ ${PARENT_MENU_JSON}
940
+ \`\`\`
941
+
928
942
  \`site.nestedMenusEnabled: true\` exibe menus recursivos expansíveis. Você pode acrescentar \`submenus\` em qualquer nó: não há limite fixo de profundidade na aplicação. A configuração deve ser finita e adequada à memória do navegador e à usabilidade. Com \`false\`, os destinos aparecem em uma lista plana; as páginas aninhadas não são removidas.
929
943
 
930
944
  A árvore atende à navegação lateral, aos rótulos de busca, à expansão dos pais e à trilha de navegação. Mantenha IDs estáveis e sem ambiguidade; destinos protegidos seguem as regras de autorização da página. A mesma estrutura vale para \`menus-header-source-viewer\`, \`menus-header-html\`, \`menus-header-video\`, \`menus-header-audio\` e \`menus-header-pdf\`. \`hierarchyMenu\` ordena as seções por tipo; \`hierarchyPage\` ordena os containers que compartilham o ID da página.
@@ -939,7 +953,7 @@ A árvore atende à navegação lateral, aos rótulos de busca, à expansão dos
939
953
 
940
954
  URLs versionadas usam \`/v/<version>/\`; \`?lang=pt\` escolhe o idioma e \`?id=101\` escolhe a página. \`?name=chapter\` seleciona o slug do documento. Mantenha \`VersionControl.versions[].path\` apontando para o config da versão correspondente. \`site.ActiveNavigation\` ativa a navegação rápida e seu atalho Ctrl+K. Os controles anterior/próximo do rodapé seguem os destinos disponíveis no menu; a navegação entre documentos no modo foco possui opção própria. Consulte Modo foco para os controles de seção e documento.
941
955
 
942
- Os botões Voltar/Próximo do rodapé usam \`site.icons.DocumentPrevious\` (\`FiChevronLeft\`) e \`site.icons.DocumentNext\` (\`FiChevronRight\`) por padrão. Defina \`reactIcon: false\` em qualquer entrada para exibir seu texto traduzido; cada entrada também aceita \`tag\`, \`size\`, \`colorDark\` e \`colorLight\`. A aparência não muda a navegação: o rodapé aparece quando há mais de um destino disponível no menu, e a direção indisponível continua desabilitada nas extremidades.
956
+ Os botões Voltar/Próximo do rodapé usam \`site.icons.DocumentPrevious\` (\`LuChevronLeft\`) e \`site.icons.DocumentNext\` (\`LuChevronRight\`) por padrão. Defina \`reactIcon: false\` em qualquer entrada para exibir seu texto traduzido; cada entrada também aceita \`tag\`, \`size\`, \`colorDark\` e \`colorLight\`. A aparência não muda a navegação: o rodapé aparece quando há mais de um destino disponível no menu, e a direção indisponível continua desabilitada nas extremidades.
943
957
 
944
958
  Teste um menu novo pela lateral, por URL direta e em cada idioma habilitado; confirme que o destino existe e é permitido para o leitor atual.
945
959
  `,
@@ -978,6 +992,8 @@ Cada opção tem padrão \`true\`; \`false\` oculta a ação ou o grupo de naveg
978
992
 
979
993
  ## Copiar e baixar
980
994
 
995
+ Em uma página composta, o foco lê os blocos Markdown autorizados em ordem, incluindo repetições. Copiar/baixar reúne essas fontes e usa \`page-<id>.md\`; as ações individuais dos blocos mantêm os nomes originais. Consulte Blocos de conteúdo ordenados para o contrato completo.
996
+
981
997
  Copiar e baixar usam o **Markdown original inteiro no idioma selecionado**, incluindo seções que não estão visíveis no momento. Não exportam o HTML renderizado nem apenas a seção atual.
982
998
 
983
999
  O download conserva o nome-base Markdown do \`path\` localizado da rota; quando indisponível, o nome do arquivo é \`document.md\`. A área de transferência segue as permissões e regras de contexto seguro do navegador. Se a cópia falhar, use o download e confira o erro exibido.
@@ -1049,33 +1065,33 @@ Consulte a [referência da Web Speech API](https://developer.mozilla.org/en-US/d
1049
1065
  `,
1050
1066
  faq: `# FAQ
1051
1067
 
1052
- ## Por que repositorios remotos nao abrem localmente?
1068
+ ## Por que repositórios remotos não abrem localmente?
1053
1069
 
1054
1070
  Verifique:
1055
1071
 
1056
1072
  - \`GITPAGEDOCS_REPOSITORY_SEARCH=true\` no \`.env\`
1057
- - repositorio alvo contem \`gitpagedocs/config.json\`
1058
- - paths markdown do repositorio batem com seu config de rotas
1073
+ - repositório alvo contem \`gitpagedocs/config.json\`
1074
+ - paths markdown do repositório batem com seu config de rotas
1059
1075
 
1060
- ## Por que rota de versao mostra conteudo errado?
1076
+ ## Por que rota de versão mostra conteúdo errado?
1061
1077
 
1062
1078
  Verifique:
1063
1079
 
1064
1080
  - \`VersionControl.versions[*].path\` em \`gitpagedocs/config.json\`
1065
- - config da versao possui \`routes\` e \`menus-header\` validos
1081
+ - config da versão possui \`routes\` e \`menus-header\` válidos
1066
1082
  - markdown existe para cada idioma
1067
1083
 
1068
- ## Por que tema nao aplica corretamente?
1084
+ ## Por que tema não aplica corretamente?
1069
1085
 
1070
1086
  Verifique:
1071
1087
 
1072
- - \`layoutsConfig.json\` referencia templates validos
1073
- - ids de template sao unicos
1088
+ - \`layoutsConfig.json\` referência templates válidos
1089
+ - ids de template são únicos
1074
1090
  - tema selecionado existe no mapa de temas carregados
1075
1091
 
1076
1092
  ## Por que GitHub Pages pode se comportar diferente do local?
1077
1093
 
1078
- Porque o build de GitHub Pages habilita pagina inicial de busca e comportamento especifico de exportacao.
1094
+ Porque o build de GitHub Pages habilita página inicial de busca e comportamento específico de exportação.
1079
1095
 
1080
1096
  ## Por que o ícone ainda mostra texto?
1081
1097