@docsector/docsector-reader 4.1.0 → 4.3.0

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.
Files changed (27) hide show
  1. package/README.md +16 -6
  2. package/bin/docsector.js +1 -1
  3. package/docsector.config.js +15 -0
  4. package/package.json +1 -1
  5. package/public/.well-known/agent-skills/docsector-documentation-authoring/SKILL.md +118 -0
  6. package/public/.well-known/agent-skills/docsector-documentation-authoring/references/authoring-patterns.md +98 -0
  7. package/public/.well-known/agent-skills/docsector-documentation-authoring/references/block-catalog.md +321 -0
  8. package/public/.well-known/agent-skills/docsector-documentation-authoring/references/mcp-webmcp.md +90 -0
  9. package/public/.well-known/agent-skills/docsector-documentation-authoring/references/page-structure.md +101 -0
  10. package/public/api/manual/http-client.json +91 -0
  11. package/public/quasar-api/QSeparator.json +39 -0
  12. package/src/components/DBlockApi.vue +634 -0
  13. package/src/components/DBlockApiEntry.js +623 -0
  14. package/src/components/DBlockCodeExample.vue +22 -0
  15. package/src/components/DBlockSourceCode.vue +2 -4
  16. package/src/components/DMenu.vue +70 -25
  17. package/src/components/DPageTokens.vue +8 -0
  18. package/src/components/api-block-model.js +326 -0
  19. package/src/components/page-section-tokens.js +53 -1
  20. package/src/components/source-code-lines.js +17 -0
  21. package/src/pages/manual/basic/agent-skills.overview.en-US.md +77 -0
  22. package/src/pages/manual/basic/agent-skills.overview.pt-BR.md +77 -0
  23. package/src/pages/manual/content/blocks/api-reference.overview.en-US.md +40 -0
  24. package/src/pages/manual/content/blocks/api-reference.overview.pt-BR.md +40 -0
  25. package/src/pages/manual/content/blocks/api-reference.showcase.en-US.md +33 -0
  26. package/src/pages/manual/content/blocks/api-reference.showcase.pt-BR.md +33 -0
  27. package/src/pages/manual.index.js +57 -0
@@ -0,0 +1,77 @@
1
+ ## Visão Geral
2
+
3
+ O Docsector Reader publica uma skill de autoria para agentes de IA que precisam entender como a documentação Docsector funciona.
4
+
5
+ A skill é um arquivo `SKILL.md` com referências complementares. Ela explica as convenções de Markdown do Docsector, todos os blocos documentados, estrutura de páginas, caminhos de assets, padrões de autoria, busca via MCP e ferramentas WebMCP no navegador.
6
+
7
+ ## URLs Públicas
8
+
9
+ A skill embutida é publicada como artefato estático:
10
+
11
+ ```text
12
+ /.well-known/agent-skills/docsector-documentation-authoring/SKILL.md
13
+ ```
14
+
15
+ O índice de descoberta aponta os agentes para o mesmo arquivo e inclui um digest SHA-256:
16
+
17
+ ```text
18
+ /.well-known/agent-skills/index.json
19
+ ```
20
+
21
+ ## O Que a Skill Contém
22
+
23
+ <d-block-quick-links title="Referências da skill">
24
+ <d-block-quick-link
25
+ title="SKILL.md"
26
+ description="O fluxo compacto que os agentes carregam primeiro"
27
+ href="/.well-known/agent-skills/docsector-documentation-authoring/SKILL.md"
28
+ />
29
+ <d-block-quick-link
30
+ title="Catálogo de blocos"
31
+ description="Todos os blocos Docsector, sintaxe e orientação de uso"
32
+ href="/.well-known/agent-skills/docsector-documentation-authoring/references/block-catalog.md"
33
+ />
34
+ <d-block-quick-link
35
+ title="Estrutura de páginas"
36
+ description="Arquivos de página, locales, assets, exemplos e convenções de API JSON"
37
+ href="/.well-known/agent-skills/docsector-documentation-authoring/references/page-structure.md"
38
+ />
39
+ <d-block-quick-link
40
+ title="MCP e WebMCP"
41
+ description="Como agentes podem buscar, ler, navegar e copiar docs ao vivo"
42
+ href="/.well-known/agent-skills/docsector-documentation-authoring/references/mcp-webmcp.md"
43
+ />
44
+ </d-block-quick-links>
45
+
46
+ ## Cópias Local e Publicada
47
+
48
+ O Docsector mantém duas cópias sincronizadas da mesma skill:
49
+
50
+ - `.github/skills/docsector-documentation-authoring/` para assistentes locais do repositório, como o GitHub Copilot no VS Code.
51
+ - `public/.well-known/agent-skills/docsector-documentation-authoring/` para o site de documentação gerado.
52
+
53
+ Durante o build, o Docsector copia o artefato público para `dist/spa/.well-known/agent-skills/` e gera o índice de descoberta.
54
+
55
+ ## Como Agentes Devem Usar
56
+
57
+ Agentes devem carregar primeiro o `SKILL.md` e abrir os arquivos de referência apenas quando a tarefa precisar de mais detalhes.
58
+
59
+ Para exemplos atuais de páginas, agentes podem combinar a skill com as ferramentas MCP do Docsector:
60
+
61
+ ```text
62
+ search_docsector
63
+ get_page_docsector
64
+ ```
65
+
66
+ Agentes no navegador também podem usar ferramentas WebMCP quando `navigator.modelContext` estiver disponível:
67
+
68
+ - `docs.search_docs`
69
+ - `docs.get_page`
70
+ - `docs.navigate_to`
71
+ - `docs.copy_current_page`
72
+
73
+ ## Quando Publicar Sua Própria Skill
74
+
75
+ Publique uma skill específica do projeto quando sua documentação tiver regras de domínio que não são cobertas pela skill de autoria embutida do Docsector.
76
+
77
+ Use a configuração `agentSkills` do Docsector para expor a skill por `/.well-known/agent-skills/index.json`, e mantenha o artefato em `public/.well-known/agent-skills/...` quando quiser que o Docsector calcule o digest automaticamente.
@@ -0,0 +1,40 @@
1
+ ## Overview
2
+
3
+ API Reference blocks render a JSON document that follows the existing Quasar API schema directly inside Markdown.
4
+
5
+ This keeps the viewer compatible with Quasar-style API files while still allowing non-Vue APIs to reuse the same section model for props, methods, events, values, arguments, and config shapes.
6
+
7
+ The block is authored with the custom Markdown element `<d-block-api>`.
8
+
9
+ ## Markdown Syntax
10
+
11
+ ```html
12
+ <d-block-api src="/quasar-api/QSeparator.json" />
13
+
14
+ <d-block-api
15
+ src="/api/manual/http-client.json"
16
+ title="HTTP Client API"
17
+ page-link="true"
18
+ />
19
+ ```
20
+
21
+ ## Attributes
22
+
23
+ | Attribute | Purpose |
24
+ |-----------|---------|
25
+ | `src` | Same-origin JSON path to fetch in the browser |
26
+ | `title` | Optional header override shown above the API card |
27
+ | `page-link` | Shows the Docs button when the JSON has `meta.docsUrl` |
28
+
29
+ ## JSON Source Model
30
+
31
+ - The first implementation follows the same delivery model as Quasar Docs: the JSON file is served as a public asset and fetched on demand.
32
+ - No Docsector-specific schema is required. If your file already follows the Quasar API structure, it can be rendered as-is.
33
+ - Non-Vue APIs can still use the same shape by filling the sections they need, such as `props`, `methods`, `events`, `value`, `arg`, or `quasarConfOptions`.
34
+
35
+ ## Notes
36
+
37
+ - `props` are grouped into subtabs when more than one `category` is present.
38
+ - Entries marked with `internal: true` are hidden from the rendered block.
39
+ - The current version expects same-origin JSON assets so the browser can fetch them without CORS workarounds.
40
+ - If the JSON exposes `meta.docsUrl`, `page-link="true"` can surface a Docs button without changing the schema.
@@ -0,0 +1,40 @@
1
+ ## Visão geral
2
+
3
+ Os blocos de Referência de API renderizam um documento JSON que segue o schema de API já existente do Quasar diretamente dentro do Markdown.
4
+
5
+ Isso mantém o viewer compatível com arquivos de API no estilo do Quasar e ainda permite que APIs não-Vue reutilizem o mesmo modelo de seções para props, methods, events, values, arguments e estruturas de configuração.
6
+
7
+ O bloco é escrito com o elemento Markdown customizado `<d-block-api>`.
8
+
9
+ ## Sintaxe Markdown
10
+
11
+ ```html
12
+ <d-block-api src="/quasar-api/QSeparator.json" />
13
+
14
+ <d-block-api
15
+ src="/api/manual/http-client.json"
16
+ title="HTTP Client API"
17
+ page-link="true"
18
+ />
19
+ ```
20
+
21
+ ## Atributos
22
+
23
+ | Atributo | Finalidade |
24
+ |----------|------------|
25
+ | `src` | Caminho same-origin do JSON a ser buscado no navegador |
26
+ | `title` | Sobrescreve opcionalmente o título exibido acima do card |
27
+ | `page-link` | Exibe o botão Docs quando o JSON possui `meta.docsUrl` |
28
+
29
+ ## Modelo da Fonte JSON
30
+
31
+ - A primeira implementação segue o mesmo modelo de entrega do Quasar Docs: o arquivo JSON é servido como asset público e carregado sob demanda.
32
+ - Nenhum schema específico do Docsector é exigido. Se o arquivo já seguir a estrutura de API do Quasar, ele pode ser renderizado sem alterações.
33
+ - APIs não-Vue ainda podem usar a mesma forma preenchendo apenas as seções necessárias, como `props`, `methods`, `events`, `value`, `arg` ou `quasarConfOptions`.
34
+
35
+ ## Notas
36
+
37
+ - `props` são agrupadas em subtabs quando mais de uma `category` está presente.
38
+ - Entradas marcadas com `internal: true` são ocultadas do bloco renderizado.
39
+ - A versão atual espera assets JSON same-origin para que o navegador faça o fetch sem workarounds de CORS.
40
+ - Se o JSON expuser `meta.docsUrl`, `page-link="true"` pode exibir um botão Docs sem alterar o schema.
@@ -0,0 +1,33 @@
1
+ ## Showcase
2
+
3
+ ### Quasar JSON Without Refactoring
4
+
5
+ This example renders a real Quasar API JSON file copied into `public/quasar-api/`.
6
+
7
+ <d-block-api src="/quasar-api/QSeparator.json" />
8
+
9
+ ### Generic SDK JSON With the Same Schema
10
+
11
+ This example uses the same section model for a non-Vue HTTP client and also enables the optional Docs button.
12
+
13
+ <d-block-api src="/api/manual/http-client.json" title="HTTP Client API" page-link="true" />
14
+
15
+ ## Authoring Syntax
16
+
17
+ ```html
18
+ <d-block-api src="/quasar-api/QSeparator.json" />
19
+
20
+ <d-block-api
21
+ src="/api/manual/http-client.json"
22
+ title="HTTP Client API"
23
+ page-link="true"
24
+ />
25
+ ```
26
+
27
+ ## Features Visible Above
28
+
29
+ - **Quasar JSON compatibility** with a real file served from `public/quasar-api/`
30
+ - **Generic API support** without introducing a new schema
31
+ - **Local filter** across names and descriptions inside the loaded API sections
32
+ - **Grouped props subtabs** when multiple categories exist in the JSON
33
+ - **Optional Docs link** when `meta.docsUrl` is present and `page-link="true"` is used
@@ -0,0 +1,33 @@
1
+ ## Showcase
2
+
3
+ ### JSON do Quasar Sem Refatoração
4
+
5
+ Este exemplo renderiza um arquivo JSON de API real do Quasar copiado para `public/quasar-api/`.
6
+
7
+ <d-block-api src="/quasar-api/QSeparator.json" />
8
+
9
+ ### JSON de SDK Genérico Com o Mesmo Schema
10
+
11
+ Este exemplo usa o mesmo modelo de seções para um cliente HTTP não-Vue e também ativa o botão opcional de Docs.
12
+
13
+ <d-block-api src="/api/manual/http-client.json" title="HTTP Client API" page-link="true" />
14
+
15
+ ## Sintaxe de Autoria
16
+
17
+ ```html
18
+ <d-block-api src="/quasar-api/QSeparator.json" />
19
+
20
+ <d-block-api
21
+ src="/api/manual/http-client.json"
22
+ title="HTTP Client API"
23
+ page-link="true"
24
+ />
25
+ ```
26
+
27
+ ## Recursos Visíveis Acima
28
+
29
+ - **Compatibilidade com JSON do Quasar** usando um arquivo real servido de `public/quasar-api/`
30
+ - **Suporte a APIs genéricas** sem introduzir um novo schema
31
+ - **Filtro local** por nomes e descrições dentro das seções carregadas
32
+ - **Subtabs agrupadas em props** quando múltiplas categorias existem no JSON
33
+ - **Link opcional para Docs** quando `meta.docsUrl` está presente e `page-link="true"` é usado
@@ -265,6 +265,35 @@ export default {
265
265
  }
266
266
  },
267
267
 
268
+ '/basic/agent-skills': {
269
+ config: {
270
+ icon: 'psychology',
271
+ status: 'new',
272
+ version: 'v4.3.0',
273
+ meta: {
274
+ description: {
275
+ 'en-US': 'Agent Skills — Documentation of Docsector Reader',
276
+ 'pt-BR': 'Skills de Agentes — Documentacao do Docsector Reader'
277
+ }
278
+ },
279
+ book: 'manual',
280
+ menu: {},
281
+ subpages: {
282
+ showcase: false
283
+ }
284
+ },
285
+ data: {
286
+ 'en-US': { title: 'Agent Skills' },
287
+ 'pt-BR': { title: 'Skills de Agentes' }
288
+ },
289
+ metadata: {
290
+ tags: {
291
+ 'en-US': 'agent skills skill md authoring blocks references mcp webmcp ai discovery well-known copilot',
292
+ 'pt-BR': 'skills agentes skill md autoria blocos referências mcp webmcp ia descoberta well-known copilot'
293
+ }
294
+ }
295
+ },
296
+
268
297
  // =========================================================================
269
298
  // Content
270
299
  // =========================================================================
@@ -879,6 +908,34 @@ export default {
879
908
  }
880
909
  },
881
910
 
911
+ '/content/blocks/api-reference': {
912
+ config: {
913
+ icon: 'api',
914
+ status: 'new',
915
+ meta: {
916
+ description: {
917
+ 'en-US': 'API Reference Block — Documentation of Docsector Reader',
918
+ 'pt-BR': 'Bloco de Referência de API — Documentacao do Docsector Reader'
919
+ }
920
+ },
921
+ book: 'manual',
922
+ menu: {},
923
+ subpages: {
924
+ showcase: true
925
+ }
926
+ },
927
+ data: {
928
+ 'en-US': { title: 'API Reference' },
929
+ 'pt-BR': { title: 'Referência de API' }
930
+ },
931
+ metadata: {
932
+ tags: {
933
+ 'en-US': 'api json quasar reference props methods events docs metadata custom block',
934
+ 'pt-BR': 'api json quasar referência props métodos eventos docs metadados bloco customizado'
935
+ }
936
+ }
937
+ },
938
+
882
939
  '/content/structures': {
883
940
  config: null,
884
941
  data: {