@farming-labs/docs 0.1.114 → 0.1.116
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.
- package/dist/{agent-4ROJmQ9i.mjs → agent-D8DpCgt_.mjs} +3 -3
- package/dist/{agent-BK7q65dn.mjs → agent-Dt6kdGqw.mjs} +16 -6
- package/dist/{agents-BrhVZkvs.mjs → agents-XyolXdXp.mjs} +1 -1
- package/dist/cli/index.mjs +10 -10
- package/dist/{dev-cvGfM7qo.mjs → dev-FC6Fh7nT.mjs} +1 -1
- package/dist/{doctor-C7wo-qbz.mjs → doctor-Cey7sqh9.mjs} +5 -4
- package/dist/index.d.mts +6 -5
- package/dist/index.mjs +2 -2
- package/dist/{init-CCDM1jpD.mjs → init-BgzyLAay.mjs} +1 -1
- package/dist/{mcp-Cv95rruE.mjs → mcp-aGYzIAb_.mjs} +2 -1
- package/dist/mcp.d.mts +21 -2
- package/dist/mcp.mjs +228 -2
- package/dist/{robots-DuDAetXn.mjs → robots-Byj0knC3.mjs} +2 -2
- package/dist/{robots-DDrj6Cpo.mjs → robots-tohhTNbU.mjs} +1 -1
- package/dist/{search-DjVbXEmb.d.mts → search-DYPyHTz_.d.mts} +1 -1
- package/dist/server.d.mts +4 -4
- package/dist/{templates-BpSkUico.mjs → templates-CkL3bEE5.mjs} +4 -4
- package/dist/{types-Zk0mIMGI.d.mts → types-qqx8SjH4.d.mts} +2 -0
- package/package.json +1 -1
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import "./reading-time-DNLXwuqA.mjs";
|
|
2
2
|
import "./search-BL7o2rXk.mjs";
|
|
3
|
-
import "./agent-
|
|
4
|
-
import "./robots-
|
|
3
|
+
import "./agent-Dt6kdGqw.mjs";
|
|
4
|
+
import "./robots-tohhTNbU.mjs";
|
|
5
5
|
import "./sitemap-server-DdHzJorR.mjs";
|
|
6
6
|
import "./config-Cio3byUJ.mjs";
|
|
7
|
-
import { a as readPageTokenBudget, i as printAgentCompactHelp, n as inspectAgentCompactionState, o as scanDocsPageTargets, r as parseAgentCompactArgs, t as compactAgentDocs } from "./agents-
|
|
7
|
+
import { a as readPageTokenBudget, i as printAgentCompactHelp, n as inspectAgentCompactionState, o as scanDocsPageTargets, r as parseAgentCompactArgs, t as compactAgentDocs } from "./agents-XyolXdXp.mjs";
|
|
8
8
|
|
|
9
9
|
export { compactAgentDocs, parseAgentCompactArgs, printAgentCompactHelp };
|
|
@@ -296,6 +296,14 @@ function deriveLlmsTxtSectionFullRoute(route) {
|
|
|
296
296
|
if (normalized.endsWith("/llms.txt")) return `${normalized.slice(0, -9)}/llms-full.txt`;
|
|
297
297
|
return joinDocsPublicRoute(normalized, "llms-full.txt");
|
|
298
298
|
}
|
|
299
|
+
function resolveDocsBaseLlmsTxtRoute(basePath) {
|
|
300
|
+
if (!basePath) return null;
|
|
301
|
+
return joinDocsPublicRoute(normalizeDocsPathSegment(basePath) || "docs", "llms.txt");
|
|
302
|
+
}
|
|
303
|
+
function resolveDocsBaseLlmsFullTxtRoute(basePath) {
|
|
304
|
+
const route = resolveDocsBaseLlmsTxtRoute(basePath);
|
|
305
|
+
return route ? deriveLlmsTxtSectionFullRoute(route) : null;
|
|
306
|
+
}
|
|
299
307
|
function normalizeLlmsTxtMaxChars(value, fallback) {
|
|
300
308
|
const mode = value?.mode ?? fallback?.mode ?? "warn";
|
|
301
309
|
const chars = value?.chars ?? fallback?.chars ?? DEFAULT_LLMS_TXT_MAX_CHARS;
|
|
@@ -343,7 +351,7 @@ function matchesDocsLlmsTxtSection(pageUrl, section) {
|
|
|
343
351
|
return pathname === normalized;
|
|
344
352
|
});
|
|
345
353
|
}
|
|
346
|
-
function resolveDocsLlmsTxtRequest(url, llms) {
|
|
354
|
+
function resolveDocsLlmsTxtRequest(url, llms, basePath) {
|
|
347
355
|
const pathname = normalizeDocsUrlPath(url.pathname);
|
|
348
356
|
const sections = resolveDocsLlmsTxtSections(llms);
|
|
349
357
|
for (const section of sections) {
|
|
@@ -372,7 +380,9 @@ function resolveDocsLlmsTxtRequest(url, llms) {
|
|
|
372
380
|
};
|
|
373
381
|
}
|
|
374
382
|
if (pathname === DEFAULT_LLMS_TXT_ROUTE || pathname === DEFAULT_LLMS_TXT_WELL_KNOWN_ROUTE) return { format: "llms" };
|
|
383
|
+
if (pathname === resolveDocsBaseLlmsTxtRoute(basePath)) return { format: "llms" };
|
|
375
384
|
if (pathname === DEFAULT_LLMS_FULL_TXT_ROUTE || pathname === DEFAULT_LLMS_FULL_TXT_WELL_KNOWN_ROUTE) return { format: "llms-full" };
|
|
385
|
+
if (pathname === resolveDocsBaseLlmsFullTxtRoute(basePath)) return { format: "llms-full" };
|
|
376
386
|
return null;
|
|
377
387
|
}
|
|
378
388
|
function renderLlmsTxtPageList(pages, baseUrl) {
|
|
@@ -598,13 +608,13 @@ function resolveDocsAgentsFormat(url) {
|
|
|
598
608
|
function isDocsPublicGetRequest(entry, url, request, options = {}) {
|
|
599
609
|
const pathname = normalizeDocsUrlPath(url.pathname);
|
|
600
610
|
if (pathname === DEFAULT_DOCS_API_ROUTE || pathname === DEFAULT_MCP_ROUTE) return false;
|
|
601
|
-
return isDocsAgentDiscoveryRequest(url) || isDocsAgentsRequest(url) || isDocsSkillRequest(url) || pathname === DEFAULT_AGENT_DISCOVERY_ROBOTS_TXT_ROUTE && isRobotsDiscoveryEnabled(options.robots) || resolveDocsLlmsTxtRequest(url, options.llms) !== null || resolveDocsSitemapRequest(url, options.sitemap) !== null || resolveDocsMarkdownRequest(entry, url, request) !== null;
|
|
611
|
+
return isDocsAgentDiscoveryRequest(url) || isDocsAgentsRequest(url) || isDocsSkillRequest(url) || pathname === DEFAULT_AGENT_DISCOVERY_ROBOTS_TXT_ROUTE && isRobotsDiscoveryEnabled(options.robots) || resolveDocsLlmsTxtRequest(url, options.llms, entry) !== null || resolveDocsSitemapRequest(url, options.sitemap) !== null || resolveDocsMarkdownRequest(entry, url, request) !== null;
|
|
602
612
|
}
|
|
603
|
-
function isDocsLlmsTxtPublicRequest(url, llms) {
|
|
604
|
-
return normalizeDocsUrlPath(url.pathname) !== DEFAULT_DOCS_API_ROUTE && resolveDocsLlmsTxtRequest(url, llms) !== null;
|
|
613
|
+
function isDocsLlmsTxtPublicRequest(url, llms, basePath) {
|
|
614
|
+
return normalizeDocsUrlPath(url.pathname) !== DEFAULT_DOCS_API_ROUTE && resolveDocsLlmsTxtRequest(url, llms, basePath) !== null;
|
|
605
615
|
}
|
|
606
|
-
function resolveDocsLlmsTxtFormat(url) {
|
|
607
|
-
return resolveDocsLlmsTxtRequest(url)?.format ?? null;
|
|
616
|
+
function resolveDocsLlmsTxtFormat(url, basePath) {
|
|
617
|
+
return resolveDocsLlmsTxtRequest(url, void 0, basePath)?.format ?? null;
|
|
608
618
|
}
|
|
609
619
|
function resolveDocsMarkdownRequest(entry, url, request) {
|
|
610
620
|
const pathname = normalizeDocsUrlPath(url.pathname);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { _ as parseGeneratedAgentDocument, h as hashGeneratedAgentContent, m as GENERATED_AGENT_PROVENANCE_VERSION, v as serializeGeneratedAgentDocument } from "./search-BL7o2rXk.mjs";
|
|
2
|
-
import { E as findDocsMarkdownPage, K as resolveDocsAgentFeedbackConfig, U as renderDocsMarkdownDocument, V as renderDocsAgentsDocument, a as DEFAULT_AGENT_MD_ROUTE, n as DEFAULT_AGENTS_MD_WELL_KNOWN_ROUTE, o as DEFAULT_AGENT_MD_WELL_KNOWN_ROUTE, t as DEFAULT_AGENTS_MD_ROUTE, y as DEFAULT_OPENAPI_SCHEMA_ROUTE } from "./agent-
|
|
2
|
+
import { E as findDocsMarkdownPage, K as resolveDocsAgentFeedbackConfig, U as renderDocsMarkdownDocument, V as renderDocsAgentsDocument, a as DEFAULT_AGENT_MD_ROUTE, n as DEFAULT_AGENTS_MD_WELL_KNOWN_ROUTE, o as DEFAULT_AGENT_MD_WELL_KNOWN_ROUTE, t as DEFAULT_AGENTS_MD_ROUTE, y as DEFAULT_OPENAPI_SCHEMA_ROUTE } from "./agent-Dt6kdGqw.mjs";
|
|
3
3
|
import "./index.mjs";
|
|
4
4
|
import { S as resolveApiReferenceConfig } from "./sitemap-server-DdHzJorR.mjs";
|
|
5
5
|
import { createFilesystemDocsMcpSource, resolveDocsMcpConfig } from "./mcp.mjs";
|
package/dist/cli/index.mjs
CHANGED
|
@@ -77,16 +77,16 @@ async function main() {
|
|
|
77
77
|
searchApiKey: typeof flags["search-api-key"] === "string" ? flags["search-api-key"] : void 0
|
|
78
78
|
};
|
|
79
79
|
if (!parsedCommand.command || parsedCommand.command === "init") {
|
|
80
|
-
const { init } = await import("../init-
|
|
80
|
+
const { init } = await import("../init-BgzyLAay.mjs");
|
|
81
81
|
await init(initOptions);
|
|
82
82
|
} else if (parsedCommand.command === "dev") {
|
|
83
|
-
const { dev } = await import("../dev-
|
|
83
|
+
const { dev } = await import("../dev-FC6Fh7nT.mjs");
|
|
84
84
|
await dev(devOptions);
|
|
85
85
|
} else if (parsedCommand.command === "mcp") {
|
|
86
|
-
const { runMcp } = await import("../mcp-
|
|
86
|
+
const { runMcp } = await import("../mcp-aGYzIAb_.mjs");
|
|
87
87
|
await runMcp(mcpOptions);
|
|
88
88
|
} else if (parsedCommand.command === "agent" && subcommand === "compact") {
|
|
89
|
-
const { compactAgentDocs, parseAgentCompactArgs, printAgentCompactHelp } = await import("../agent-
|
|
89
|
+
const { compactAgentDocs, parseAgentCompactArgs, printAgentCompactHelp } = await import("../agent-D8DpCgt_.mjs");
|
|
90
90
|
const agentCompactOptions = parseAgentCompactArgs(args.slice(2));
|
|
91
91
|
if (agentCompactOptions.help) {
|
|
92
92
|
printAgentCompactHelp();
|
|
@@ -96,11 +96,11 @@ async function main() {
|
|
|
96
96
|
} else if (parsedCommand.command === "agent") {
|
|
97
97
|
console.error(pc.red(`Unknown agent subcommand: ${subcommand ?? "(missing)"}`));
|
|
98
98
|
console.error();
|
|
99
|
-
const { printAgentCompactHelp } = await import("../agent-
|
|
99
|
+
const { printAgentCompactHelp } = await import("../agent-D8DpCgt_.mjs");
|
|
100
100
|
printAgentCompactHelp();
|
|
101
101
|
process.exit(1);
|
|
102
102
|
} else if (parsedCommand.command === "agents" && subcommand === "generate") {
|
|
103
|
-
const { generateAgents, parseAgentsGenerateArgs, printAgentsGenerateHelp } = await import("../agents-
|
|
103
|
+
const { generateAgents, parseAgentsGenerateArgs, printAgentsGenerateHelp } = await import("../agents-XyolXdXp.mjs");
|
|
104
104
|
const agentsOptions = parseAgentsGenerateArgs(args.slice(2));
|
|
105
105
|
if (agentsOptions.help) {
|
|
106
106
|
printAgentsGenerateHelp();
|
|
@@ -110,11 +110,11 @@ async function main() {
|
|
|
110
110
|
} else if (parsedCommand.command === "agents") {
|
|
111
111
|
console.error(pc.red(`Unknown agents subcommand: ${subcommand ?? "(missing)"}`));
|
|
112
112
|
console.error();
|
|
113
|
-
const { printAgentsGenerateHelp } = await import("../agents-
|
|
113
|
+
const { printAgentsGenerateHelp } = await import("../agents-XyolXdXp.mjs");
|
|
114
114
|
printAgentsGenerateHelp();
|
|
115
115
|
process.exit(1);
|
|
116
116
|
} else if (parsedCommand.command === "doctor") {
|
|
117
|
-
const { parseDoctorArgs, printDoctorHelp, runDoctor } = await import("../doctor-
|
|
117
|
+
const { parseDoctorArgs, printDoctorHelp, runDoctor } = await import("../doctor-Cey7sqh9.mjs");
|
|
118
118
|
const doctorOptions = parseDoctorArgs(args.slice(1));
|
|
119
119
|
if (doctorOptions.help) {
|
|
120
120
|
printDoctorHelp();
|
|
@@ -144,7 +144,7 @@ async function main() {
|
|
|
144
144
|
printSitemapGenerateHelp();
|
|
145
145
|
process.exit(1);
|
|
146
146
|
} else if (parsedCommand.command === "robots" && subcommand === "generate") {
|
|
147
|
-
const { generateRobots, parseRobotsGenerateArgs, printRobotsGenerateHelp } = await import("../robots-
|
|
147
|
+
const { generateRobots, parseRobotsGenerateArgs, printRobotsGenerateHelp } = await import("../robots-Byj0knC3.mjs");
|
|
148
148
|
const robotsOptions = parseRobotsGenerateArgs(args.slice(2));
|
|
149
149
|
if (robotsOptions.help) {
|
|
150
150
|
printRobotsGenerateHelp();
|
|
@@ -154,7 +154,7 @@ async function main() {
|
|
|
154
154
|
} else if (parsedCommand.command === "robots") {
|
|
155
155
|
console.error(pc.red(`Unknown robots subcommand: ${subcommand ?? "(missing)"}`));
|
|
156
156
|
console.error();
|
|
157
|
-
const { printRobotsGenerateHelp } = await import("../robots-
|
|
157
|
+
const { printRobotsGenerateHelp } = await import("../robots-Byj0knC3.mjs");
|
|
158
158
|
printRobotsGenerateHelp();
|
|
159
159
|
process.exit(1);
|
|
160
160
|
} else if (parsedCommand.command === "downgrade") {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { i as detectPackageManagerFromLockfile } from "./utils-TPe8H1P-.mjs";
|
|
2
|
-
import { K as rootLayoutTemplate, W as postcssConfigTemplate, g as docsLayoutTemplate, v as globalCssTemplate, yt as tsconfigTemplate } from "./templates-
|
|
2
|
+
import { K as rootLayoutTemplate, W as postcssConfigTemplate, g as docsLayoutTemplate, v as globalCssTemplate, yt as tsconfigTemplate } from "./templates-CkL3bEE5.mjs";
|
|
3
3
|
import fs from "node:fs";
|
|
4
4
|
import path from "node:path";
|
|
5
5
|
import pc from "picocolors";
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import "./reading-time-DNLXwuqA.mjs";
|
|
2
2
|
import "./search-BL7o2rXk.mjs";
|
|
3
3
|
import { i as DEFAULT_SITEMAP_XML_ROUTE, n as DEFAULT_SITEMAP_MD_ROUTE, r as DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, u as resolveDocsSitemapConfig } from "./sitemap-CnqcTdQg.mjs";
|
|
4
|
-
import { T as buildDocsMcpEndpointCandidates, b as DEFAULT_SKILL_MD_ROUTE, c as DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, d as DEFAULT_LLMS_FULL_TXT_ROUTE, g as DEFAULT_MCP_PUBLIC_ROUTE, i as DEFAULT_AGENT_FEEDBACK_ROUTE, l as DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, m as DEFAULT_LLMS_TXT_ROUTE, n as DEFAULT_AGENTS_MD_WELL_KNOWN_ROUTE, t as DEFAULT_AGENTS_MD_ROUTE, v as DEFAULT_MCP_WELL_KNOWN_ROUTE, x as DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE } from "./agent-
|
|
5
|
-
import { a as analyzeDocsRobotsTxt, n as DEFAULT_ROBOTS_TXT_ROUTE, u as resolveDocsRobotsConfig } from "./robots-
|
|
4
|
+
import { T as buildDocsMcpEndpointCandidates, b as DEFAULT_SKILL_MD_ROUTE, c as DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, d as DEFAULT_LLMS_FULL_TXT_ROUTE, g as DEFAULT_MCP_PUBLIC_ROUTE, i as DEFAULT_AGENT_FEEDBACK_ROUTE, l as DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, m as DEFAULT_LLMS_TXT_ROUTE, n as DEFAULT_AGENTS_MD_WELL_KNOWN_ROUTE, t as DEFAULT_AGENTS_MD_ROUTE, v as DEFAULT_MCP_WELL_KNOWN_ROUTE, x as DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE } from "./agent-Dt6kdGqw.mjs";
|
|
5
|
+
import { a as analyzeDocsRobotsTxt, n as DEFAULT_ROBOTS_TXT_ROUTE, u as resolveDocsRobotsConfig } from "./robots-tohhTNbU.mjs";
|
|
6
6
|
import "./sitemap-server-DdHzJorR.mjs";
|
|
7
7
|
import { createFilesystemDocsMcpSource, resolveDocsMcpConfig } from "./mcp.mjs";
|
|
8
8
|
import "./server.mjs";
|
|
9
9
|
import { a as loadProjectEnv, c as readNavTitle, d as readTopLevelStringProperty, f as resolveDocsConfigPath, i as loadDocsConfigModule, o as readBooleanProperty, p as resolveDocsContentDir, r as extractTopLevelConfigObject, t as extractNestedObjectLiteral } from "./config-Cio3byUJ.mjs";
|
|
10
10
|
import { t as detectFramework } from "./utils-TPe8H1P-.mjs";
|
|
11
|
-
import { n as inspectAgentCompactionState, o as scanDocsPageTargets } from "./agents-
|
|
11
|
+
import { n as inspectAgentCompactionState, o as scanDocsPageTargets } from "./agents-XyolXdXp.mjs";
|
|
12
12
|
import { existsSync, lstatSync, readFileSync, readdirSync } from "node:fs";
|
|
13
13
|
import path from "node:path";
|
|
14
14
|
import { LATEST_PROTOCOL_VERSION } from "@modelcontextprotocol/sdk/types.js";
|
|
@@ -955,7 +955,8 @@ async function probeMcpRoute(baseUrl, route) {
|
|
|
955
955
|
"list_pages",
|
|
956
956
|
"get_navigation",
|
|
957
957
|
"search_docs",
|
|
958
|
-
"read_page"
|
|
958
|
+
"read_page",
|
|
959
|
+
"get_code_examples"
|
|
959
960
|
].filter((tool) => !toolNames.includes(tool));
|
|
960
961
|
if (missingTools.length > 0) return {
|
|
961
962
|
ok: false,
|
package/dist/index.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { $ as DocsSearchResultType, A as DocsConfig, At as SidebarFolderNode, B as DocsObservabilityEventInput, C as DocsAskAIActionData, Ct as PageSidebarFrontmatter, D as DocsAskAIFeedbackMessage, Dt as SidebarComponentProps, E as DocsAskAIFeedbackData, Et as ResolvedDocsRelatedLink, F as DocsMcpToolsConfig, Ft as ThemeToggleConfig, G as DocsSearchAdapterContext, H as DocsRobotsConfig, I as DocsMetadata, It as TypesenseDocsSearchConfig, J as DocsSearchConfig, K as DocsSearchAdapterFactory, L as DocsNav, Lt as TypographyConfig, M as DocsFeedbackValue, Mt as SidebarPageNode, N as DocsI18nConfig, Nt as SidebarTree, O as DocsAskAIFeedbackValue, Ot as SidebarConfig, P as DocsMcpConfig, Pt as SimpleDocsSearchConfig, Q as DocsSearchResult, R as DocsObservabilityConfig, Rt as UIConfig, S as DocsAnalyticsSource, St as PageOpenGraph, T as DocsAskAIFeedbackConfig, Tt as ReadingTimeConfig, U as DocsRobotsRule, V as DocsRelatedItem, W as DocsSearchAdapter, X as DocsSearchEmbeddingsConfig, Y as DocsSearchDocument, Z as DocsSearchQuery, _ as DocsAnalyticsConfig, _t as OpenDocsTarget, a as ApiReferenceRenderer, at as GithubConfig, b as DocsAnalyticsEventType, bt as PageActionsConfig, c as ChangelogFrontmatter, ct as LlmsTxtMaxCharsConfig, d as CustomDocsSearchConfig, dt as McpDocsSearchConfig, et as DocsSearchSourcePage, f as DocsAgentFeedbackContext, ft as OGConfig, g as DocsAgentTraceStatus, gt as OpenDocsProviderId, h as DocsAgentTraceEventType, ht as OpenDocsProviderConfig, i as ApiReferenceConfig, it as FontStyle, j as DocsFeedbackData, jt as SidebarNode, k as DocsAskAIMcpConfig, kt as SidebarFolderIndexBehavior, l as CodeBlockCopyData, lt as LlmsTxtMaxCharsMode, m as DocsAgentTraceEventInput, mt as OpenDocsProvider, n as AgentFeedbackConfig, nt as DocsTheme, o as BreadcrumbConfig, ot as LastUpdatedConfig, p as DocsAgentFeedbackData, pt as OpenDocsConfig, q as DocsSearchChunkingConfig, r as AlgoliaDocsSearchConfig, rt as FeedbackConfig, s as ChangelogConfig, st as LlmsTxtConfig, t as AIConfig, tt as DocsSitemapConfig, u as CopyMarkdownConfig, ut as LlmsTxtSectionConfig, v as DocsAnalyticsEvent, vt as OpenGraphImage, w as DocsAskAIActionType, wt as PageTwitter, x as DocsAnalyticsInput, xt as PageFrontmatter, y as DocsAnalyticsEventInput, yt as OrderingItem, z as DocsObservabilityEvent } from "./types-
|
|
2
|
-
import { $ as emitDocsAgentTraceEvent, A as toDocsSitemapMarkdownUrl, C as createDocsSitemapResponse, D as resolveDocsSitemapConfig, E as renderDocsSitemapXml, F as PromptAction, I as PromptProviderChoice, J as DocsAgentTraceContext, L as SerializeOpenDocsProviderOptions, O as resolveDocsSitemapPageLastmod, Q as createDocsAgentTraceId, R as SerializedOpenDocsProvider, S as buildDocsSitemapManifest, T as renderDocsSitemapMarkdown, X as ResolvedDocsObservabilityConfig, Y as ResolvedDocsAnalyticsConfig, Z as createDocsAgentTraceContext, _ as DocsSitemapFormat, a as createMcpSearchAdapter, at as createDocsCloudAnalytics, b as DocsSitemapPageInput, c as formatDocsAskAIPackageHints, d as resolveAskAISearchRequestConfig, et as emitDocsAnalyticsEvent, f as resolveSearchRequestConfig, g as DEFAULT_SITEMAP_XML_ROUTE, h as DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, i as createCustomSearchAdapter, it as DocsCloudAnalyticsOptions, k as resolveDocsSitemapRequest, l as inferDocsAskAIPackageHints, m as DEFAULT_SITEMAP_MD_ROUTE, n as buildDocsSearchDocuments, nt as resolveDocsAnalyticsConfig, o as createSimpleSearchAdapter, p as DEFAULT_SITEMAP_MANIFEST_PATH, q as DOCS_AGENT_TRACE_EVENT_TYPES, r as createAlgoliaSearchAdapter, rt as resolveDocsObservabilityConfig, s as createTypesenseSearchAdapter, t as buildDocsAskAIContext, tt as emitDocsObservabilityEvent, u as performDocsSearch, v as DocsSitemapManifest, w as readDocsSitemapManifestFromContentMap, x as DocsSitemapResolvedConfig, y as DocsSitemapManifestPage } from "./search-
|
|
1
|
+
import { $ as DocsSearchResultType, A as DocsConfig, At as SidebarFolderNode, B as DocsObservabilityEventInput, C as DocsAskAIActionData, Ct as PageSidebarFrontmatter, D as DocsAskAIFeedbackMessage, Dt as SidebarComponentProps, E as DocsAskAIFeedbackData, Et as ResolvedDocsRelatedLink, F as DocsMcpToolsConfig, Ft as ThemeToggleConfig, G as DocsSearchAdapterContext, H as DocsRobotsConfig, I as DocsMetadata, It as TypesenseDocsSearchConfig, J as DocsSearchConfig, K as DocsSearchAdapterFactory, L as DocsNav, Lt as TypographyConfig, M as DocsFeedbackValue, Mt as SidebarPageNode, N as DocsI18nConfig, Nt as SidebarTree, O as DocsAskAIFeedbackValue, Ot as SidebarConfig, P as DocsMcpConfig, Pt as SimpleDocsSearchConfig, Q as DocsSearchResult, R as DocsObservabilityConfig, Rt as UIConfig, S as DocsAnalyticsSource, St as PageOpenGraph, T as DocsAskAIFeedbackConfig, Tt as ReadingTimeConfig, U as DocsRobotsRule, V as DocsRelatedItem, W as DocsSearchAdapter, X as DocsSearchEmbeddingsConfig, Y as DocsSearchDocument, Z as DocsSearchQuery, _ as DocsAnalyticsConfig, _t as OpenDocsTarget, a as ApiReferenceRenderer, at as GithubConfig, b as DocsAnalyticsEventType, bt as PageActionsConfig, c as ChangelogFrontmatter, ct as LlmsTxtMaxCharsConfig, d as CustomDocsSearchConfig, dt as McpDocsSearchConfig, et as DocsSearchSourcePage, f as DocsAgentFeedbackContext, ft as OGConfig, g as DocsAgentTraceStatus, gt as OpenDocsProviderId, h as DocsAgentTraceEventType, ht as OpenDocsProviderConfig, i as ApiReferenceConfig, it as FontStyle, j as DocsFeedbackData, jt as SidebarNode, k as DocsAskAIMcpConfig, kt as SidebarFolderIndexBehavior, l as CodeBlockCopyData, lt as LlmsTxtMaxCharsMode, m as DocsAgentTraceEventInput, mt as OpenDocsProvider, n as AgentFeedbackConfig, nt as DocsTheme, o as BreadcrumbConfig, ot as LastUpdatedConfig, p as DocsAgentFeedbackData, pt as OpenDocsConfig, q as DocsSearchChunkingConfig, r as AlgoliaDocsSearchConfig, rt as FeedbackConfig, s as ChangelogConfig, st as LlmsTxtConfig, t as AIConfig, tt as DocsSitemapConfig, u as CopyMarkdownConfig, ut as LlmsTxtSectionConfig, v as DocsAnalyticsEvent, vt as OpenGraphImage, w as DocsAskAIActionType, wt as PageTwitter, x as DocsAnalyticsInput, xt as PageFrontmatter, y as DocsAnalyticsEventInput, yt as OrderingItem, z as DocsObservabilityEvent } from "./types-qqx8SjH4.mjs";
|
|
2
|
+
import { $ as emitDocsAgentTraceEvent, A as toDocsSitemapMarkdownUrl, C as createDocsSitemapResponse, D as resolveDocsSitemapConfig, E as renderDocsSitemapXml, F as PromptAction, I as PromptProviderChoice, J as DocsAgentTraceContext, L as SerializeOpenDocsProviderOptions, O as resolveDocsSitemapPageLastmod, Q as createDocsAgentTraceId, R as SerializedOpenDocsProvider, S as buildDocsSitemapManifest, T as renderDocsSitemapMarkdown, X as ResolvedDocsObservabilityConfig, Y as ResolvedDocsAnalyticsConfig, Z as createDocsAgentTraceContext, _ as DocsSitemapFormat, a as createMcpSearchAdapter, at as createDocsCloudAnalytics, b as DocsSitemapPageInput, c as formatDocsAskAIPackageHints, d as resolveAskAISearchRequestConfig, et as emitDocsAnalyticsEvent, f as resolveSearchRequestConfig, g as DEFAULT_SITEMAP_XML_ROUTE, h as DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, i as createCustomSearchAdapter, it as DocsCloudAnalyticsOptions, k as resolveDocsSitemapRequest, l as inferDocsAskAIPackageHints, m as DEFAULT_SITEMAP_MD_ROUTE, n as buildDocsSearchDocuments, nt as resolveDocsAnalyticsConfig, o as createSimpleSearchAdapter, p as DEFAULT_SITEMAP_MANIFEST_PATH, q as DOCS_AGENT_TRACE_EVENT_TYPES, r as createAlgoliaSearchAdapter, rt as resolveDocsObservabilityConfig, s as createTypesenseSearchAdapter, t as buildDocsAskAIContext, tt as emitDocsObservabilityEvent, u as performDocsSearch, v as DocsSitemapManifest, w as readDocsSitemapManifestFromContentMap, x as DocsSitemapResolvedConfig, y as DocsSitemapManifestPage } from "./search-DYPyHTz_.mjs";
|
|
3
3
|
import { DocsMcpPage, DocsMcpResolvedConfig } from "./mcp.mjs";
|
|
4
4
|
|
|
5
5
|
//#region src/define-docs.d.ts
|
|
@@ -400,7 +400,7 @@ declare function resolveDocsMarkdownCanonicalUrl({
|
|
|
400
400
|
declare function getDocsMarkdownCanonicalLinkHeader(options: DocsMarkdownCanonicalUrlOptions): string;
|
|
401
401
|
declare function resolveDocsLlmsTxtSections(llms?: boolean | DocsLlmsDiscoveryConfig | LlmsTxtConfig): DocsLlmsTxtResolvedSection[];
|
|
402
402
|
declare function matchesDocsLlmsTxtSection(pageUrl: string, section: DocsLlmsTxtResolvedSection): boolean;
|
|
403
|
-
declare function resolveDocsLlmsTxtRequest(url: URL, llms?: boolean | DocsLlmsDiscoveryConfig | LlmsTxtConfig): DocsLlmsTxtRequest | null;
|
|
403
|
+
declare function resolveDocsLlmsTxtRequest(url: URL, llms?: boolean | DocsLlmsDiscoveryConfig | LlmsTxtConfig, basePath?: string): DocsLlmsTxtRequest | null;
|
|
404
404
|
declare function renderDocsLlmsTxt(pages: DocsLlmsTxtPageInput[], options?: DocsLlmsDiscoveryConfig): DocsLlmsTxtGeneratedContent;
|
|
405
405
|
declare function selectDocsLlmsTxtContent(content: DocsLlmsTxtGeneratedContent, request: DocsLlmsTxtRequest): DocsLlmsTxtSelectedContent | null;
|
|
406
406
|
declare function getDocsLlmsTxtMaxCharsIssue(label: string, content: string, maxChars: DocsLlmsTxtResolvedMaxChars): DocsLlmsTxtMaxCharsIssue | null;
|
|
@@ -416,8 +416,8 @@ declare function isDocsPublicGetRequest(entry: string, url: URL, request: Reques
|
|
|
416
416
|
llms?: boolean | DocsLlmsDiscoveryConfig | LlmsTxtConfig;
|
|
417
417
|
robots?: boolean | DocsRobotsConfig;
|
|
418
418
|
}): boolean;
|
|
419
|
-
declare function isDocsLlmsTxtPublicRequest(url: URL, llms?: boolean | DocsLlmsDiscoveryConfig | LlmsTxtConfig): boolean;
|
|
420
|
-
declare function resolveDocsLlmsTxtFormat(url: URL): "llms" | "llms-full" | null;
|
|
419
|
+
declare function isDocsLlmsTxtPublicRequest(url: URL, llms?: boolean | DocsLlmsDiscoveryConfig | LlmsTxtConfig, basePath?: string): boolean;
|
|
420
|
+
declare function resolveDocsLlmsTxtFormat(url: URL, basePath?: string): "llms" | "llms-full" | null;
|
|
421
421
|
declare function resolveDocsMarkdownRequest(entry: string, url: URL, request: Request): {
|
|
422
422
|
requestedPath: string;
|
|
423
423
|
} | null;
|
|
@@ -601,6 +601,7 @@ declare function buildDocsAgentDiscoverySpec({
|
|
|
601
601
|
readPage: boolean;
|
|
602
602
|
searchDocs: boolean;
|
|
603
603
|
getNavigation: boolean;
|
|
604
|
+
getCodeExamples: boolean;
|
|
604
605
|
};
|
|
605
606
|
};
|
|
606
607
|
feedback: {
|
package/dist/index.mjs
CHANGED
|
@@ -2,7 +2,7 @@ import { _ as extendTheme, a as resolveReadingTimeOptions, b as defineDocs, c as
|
|
|
2
2
|
import { A as resolveDocsAnalyticsConfig, C as resolveSidebarFolderIndexBehaviorForPath, D as emitDocsAgentTraceEvent, E as createDocsAgentTraceId, M as createDocsCloudAnalytics, O as emitDocsAnalyticsEvent, S as resolveSidebarFolderIndexBehavior, T as createDocsAgentTraceContext, _ as parseGeneratedAgentDocument, a as createMcpSearchAdapter, b as applySidebarFolderIndexBehavior, c as formatDocsAskAIPackageHints, d as resolveAskAISearchRequestConfig, f as resolveSearchRequestConfig, g as normalizeGeneratedAgentContent, h as hashGeneratedAgentContent, i as createCustomSearchAdapter, j as resolveDocsObservabilityConfig, k as emitDocsObservabilityEvent, l as inferDocsAskAIPackageHints, m as GENERATED_AGENT_PROVENANCE_VERSION, n as buildDocsSearchDocuments, o as createSimpleSearchAdapter, p as GENERATED_AGENT_PROVENANCE_MARKER, r as createAlgoliaSearchAdapter, s as createTypesenseSearchAdapter, t as buildDocsAskAIContext, u as performDocsSearch, v as serializeGeneratedAgentDocument, w as DOCS_AGENT_TRACE_EVENT_TYPES, x as resolvePageSidebarFolderIndexBehavior, y as stripGeneratedAgentProvenance } from "./search-BL7o2rXk.mjs";
|
|
3
3
|
import { n as renderDocsRelatedMarkdownLines, t as normalizeDocsRelated } from "./related-BNj_NdHq.mjs";
|
|
4
4
|
import { a as buildDocsSitemapManifest, c as renderDocsSitemapMarkdown, d as resolveDocsSitemapPageLastmod, f as resolveDocsSitemapRequest, i as DEFAULT_SITEMAP_XML_ROUTE, l as renderDocsSitemapXml, n as DEFAULT_SITEMAP_MD_ROUTE, o as createDocsSitemapResponse, p as toDocsSitemapMarkdownUrl, r as DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, s as readDocsSitemapManifestFromContentMap, t as DEFAULT_SITEMAP_MANIFEST_PATH, u as resolveDocsSitemapConfig } from "./sitemap-CnqcTdQg.mjs";
|
|
5
|
-
import { $ as resolveDocsMarkdownCanonicalUrl, A as hasDocsMarkdownSignatureAgent, B as parseDocsAgentFeedbackData, C as buildDocsAgentDiscoverySpec, D as getDocsLlmsTxtMaxCharsIssue, E as findDocsMarkdownPage, F as isDocsPublicGetRequest, G as renderDocsSkillDocument, H as renderDocsLlmsTxt, I as isDocsSkillRequest, J as resolveDocsAgentMdxContent, K as resolveDocsAgentFeedbackConfig, L as matchesDocsLlmsTxtSection, M as isDocsAgentsRequest, N as isDocsLlmsTxtPublicRequest, O as getDocsMarkdownCanonicalLinkHeader, P as isDocsMcpRequest, Q as resolveDocsLlmsTxtSections, R as normalizeDocsPathSegment, S as DOCS_MARKDOWN_SIGNATURE_AGENT_HEADER, T as buildDocsMcpEndpointCandidates, U as renderDocsMarkdownDocument, V as renderDocsAgentsDocument, W as renderDocsMarkdownNotFound, X as resolveDocsLlmsTxtFormat, Y as resolveDocsAgentsFormat, Z as resolveDocsLlmsTxtRequest, _ as DEFAULT_MCP_ROUTE, a as DEFAULT_AGENT_MD_ROUTE, at as validateDocsAgentFeedbackPayload, b as DEFAULT_SKILL_MD_ROUTE, c as DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, d as DEFAULT_LLMS_FULL_TXT_ROUTE, et as resolveDocsMarkdownRequest, f as DEFAULT_LLMS_FULL_TXT_WELL_KNOWN_ROUTE, g as DEFAULT_MCP_PUBLIC_ROUTE, h as DEFAULT_LLMS_TXT_WELL_KNOWN_ROUTE, i as DEFAULT_AGENT_FEEDBACK_ROUTE, it as toDocsMarkdownUrl, j as isDocsAgentDiscoveryRequest, k as getDocsMarkdownVaryHeader, l as DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, m as DEFAULT_LLMS_TXT_ROUTE, n as DEFAULT_AGENTS_MD_WELL_KNOWN_ROUTE, nt as resolveDocsSkillFormat, o as DEFAULT_AGENT_MD_WELL_KNOWN_ROUTE, p as DEFAULT_LLMS_TXT_MAX_CHARS, q as resolveDocsAgentFeedbackRequest, r as DEFAULT_AGENT_FEEDBACK_PAYLOAD_SCHEMA, rt as selectDocsLlmsTxtContent, s as DEFAULT_AGENT_SPEC_ROUTE, t as DEFAULT_AGENTS_MD_ROUTE, tt as resolveDocsOpenApiDiscoveryConfig, u as DEFAULT_DOCS_API_ROUTE, v as DEFAULT_MCP_WELL_KNOWN_ROUTE, w as buildDocsAgentFeedbackSchema, x as DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE, y as DEFAULT_OPENAPI_SCHEMA_ROUTE, z as normalizeDocsUrlPath } from "./agent-
|
|
6
|
-
import { a as analyzeDocsRobotsTxt, c as renderDocsRobotsGeneratedBlock, d as resolveDocsRobotsRequest, f as upsertDocsRobotsGeneratedBlock, i as DOCS_ROBOTS_GENERATED_BLOCK_START, l as renderDocsRobotsTxt, n as DEFAULT_ROBOTS_TXT_ROUTE, o as createDocsRobotsResponse, r as DOCS_ROBOTS_GENERATED_BLOCK_END, s as getDocsRobotsAllowRoutes, t as DEFAULT_DOCS_AI_ROBOTS_USER_AGENTS, u as resolveDocsRobotsConfig } from "./robots-
|
|
5
|
+
import { $ as resolveDocsMarkdownCanonicalUrl, A as hasDocsMarkdownSignatureAgent, B as parseDocsAgentFeedbackData, C as buildDocsAgentDiscoverySpec, D as getDocsLlmsTxtMaxCharsIssue, E as findDocsMarkdownPage, F as isDocsPublicGetRequest, G as renderDocsSkillDocument, H as renderDocsLlmsTxt, I as isDocsSkillRequest, J as resolveDocsAgentMdxContent, K as resolveDocsAgentFeedbackConfig, L as matchesDocsLlmsTxtSection, M as isDocsAgentsRequest, N as isDocsLlmsTxtPublicRequest, O as getDocsMarkdownCanonicalLinkHeader, P as isDocsMcpRequest, Q as resolveDocsLlmsTxtSections, R as normalizeDocsPathSegment, S as DOCS_MARKDOWN_SIGNATURE_AGENT_HEADER, T as buildDocsMcpEndpointCandidates, U as renderDocsMarkdownDocument, V as renderDocsAgentsDocument, W as renderDocsMarkdownNotFound, X as resolveDocsLlmsTxtFormat, Y as resolveDocsAgentsFormat, Z as resolveDocsLlmsTxtRequest, _ as DEFAULT_MCP_ROUTE, a as DEFAULT_AGENT_MD_ROUTE, at as validateDocsAgentFeedbackPayload, b as DEFAULT_SKILL_MD_ROUTE, c as DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, d as DEFAULT_LLMS_FULL_TXT_ROUTE, et as resolveDocsMarkdownRequest, f as DEFAULT_LLMS_FULL_TXT_WELL_KNOWN_ROUTE, g as DEFAULT_MCP_PUBLIC_ROUTE, h as DEFAULT_LLMS_TXT_WELL_KNOWN_ROUTE, i as DEFAULT_AGENT_FEEDBACK_ROUTE, it as toDocsMarkdownUrl, j as isDocsAgentDiscoveryRequest, k as getDocsMarkdownVaryHeader, l as DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, m as DEFAULT_LLMS_TXT_ROUTE, n as DEFAULT_AGENTS_MD_WELL_KNOWN_ROUTE, nt as resolveDocsSkillFormat, o as DEFAULT_AGENT_MD_WELL_KNOWN_ROUTE, p as DEFAULT_LLMS_TXT_MAX_CHARS, q as resolveDocsAgentFeedbackRequest, r as DEFAULT_AGENT_FEEDBACK_PAYLOAD_SCHEMA, rt as selectDocsLlmsTxtContent, s as DEFAULT_AGENT_SPEC_ROUTE, t as DEFAULT_AGENTS_MD_ROUTE, tt as resolveDocsOpenApiDiscoveryConfig, u as DEFAULT_DOCS_API_ROUTE, v as DEFAULT_MCP_WELL_KNOWN_ROUTE, w as buildDocsAgentFeedbackSchema, x as DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE, y as DEFAULT_OPENAPI_SCHEMA_ROUTE, z as normalizeDocsUrlPath } from "./agent-Dt6kdGqw.mjs";
|
|
6
|
+
import { a as analyzeDocsRobotsTxt, c as renderDocsRobotsGeneratedBlock, d as resolveDocsRobotsRequest, f as upsertDocsRobotsGeneratedBlock, i as DOCS_ROBOTS_GENERATED_BLOCK_START, l as renderDocsRobotsTxt, n as DEFAULT_ROBOTS_TXT_ROUTE, o as createDocsRobotsResponse, r as DOCS_ROBOTS_GENERATED_BLOCK_END, s as getDocsRobotsAllowRoutes, t as DEFAULT_DOCS_AI_ROBOTS_USER_AGENTS, u as resolveDocsRobotsConfig } from "./robots-tohhTNbU.mjs";
|
|
7
7
|
|
|
8
8
|
export { DEFAULT_AGENTS_MD_ROUTE, DEFAULT_AGENTS_MD_WELL_KNOWN_ROUTE, DEFAULT_AGENT_FEEDBACK_PAYLOAD_SCHEMA, DEFAULT_AGENT_FEEDBACK_ROUTE, DEFAULT_AGENT_MD_ROUTE, DEFAULT_AGENT_MD_WELL_KNOWN_ROUTE, DEFAULT_AGENT_SPEC_ROUTE, DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, DEFAULT_DOCS_AI_ROBOTS_USER_AGENTS, DEFAULT_DOCS_API_ROUTE, DEFAULT_LLMS_FULL_TXT_ROUTE, DEFAULT_LLMS_FULL_TXT_WELL_KNOWN_ROUTE, DEFAULT_LLMS_TXT_MAX_CHARS, DEFAULT_LLMS_TXT_ROUTE, DEFAULT_LLMS_TXT_WELL_KNOWN_ROUTE, DEFAULT_MCP_PUBLIC_ROUTE, DEFAULT_MCP_ROUTE, DEFAULT_MCP_WELL_KNOWN_ROUTE, DEFAULT_OPENAPI_SCHEMA_ROUTE, DEFAULT_ROBOTS_TXT_ROUTE, DEFAULT_SITEMAP_MANIFEST_PATH, DEFAULT_SITEMAP_MD_ROUTE, DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, DEFAULT_SITEMAP_XML_ROUTE, DEFAULT_SKILL_MD_ROUTE, DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE, DOCS_AGENT_TRACE_EVENT_TYPES, DOCS_MARKDOWN_SIGNATURE_AGENT_HEADER, DOCS_ROBOTS_GENERATED_BLOCK_END, DOCS_ROBOTS_GENERATED_BLOCK_START, GENERATED_AGENT_PROVENANCE_MARKER, GENERATED_AGENT_PROVENANCE_VERSION, analyzeDocsRobotsTxt, applySidebarFolderIndexBehavior, buildDocsAgentDiscoverySpec, buildDocsAgentFeedbackSchema, buildDocsAskAIContext, buildDocsMcpEndpointCandidates, buildDocsPageStructuredData, buildDocsSearchDocuments, buildDocsSitemapManifest, buildPageOpenGraph, buildPageTwitter, createAlgoliaSearchAdapter, createCustomSearchAdapter, createDocsAgentTraceContext, createDocsAgentTraceId, createDocsCloudAnalytics, createDocsRobotsResponse, createDocsSitemapResponse, createMcpSearchAdapter, createSimpleSearchAdapter, createTheme, createTypesenseSearchAdapter, deepMerge, defineDocs, emitDocsAgentTraceEvent, emitDocsAnalyticsEvent, emitDocsObservabilityEvent, estimateReadingTimeMinutes, extendTheme, findDocsMarkdownPage, formatDocsAskAIPackageHints, getDocsLlmsTxtMaxCharsIssue, getDocsMarkdownCanonicalLinkHeader, getDocsMarkdownVaryHeader, getDocsRobotsAllowRoutes, hasDocsMarkdownSignatureAgent, hashGeneratedAgentContent, inferDocsAskAIPackageHints, isDocsAgentDiscoveryRequest, isDocsAgentsRequest, isDocsLlmsTxtPublicRequest, isDocsMcpRequest, isDocsPublicGetRequest, isDocsSkillRequest, matchesDocsLlmsTxtSection, normalizeDocsPathSegment, normalizeDocsRelated, normalizeDocsUrlPath, normalizeGeneratedAgentContent, parseDocsAgentFeedbackData, parseGeneratedAgentDocument, performDocsSearch, readDocsSitemapManifestFromContentMap, renderDocsAgentsDocument, renderDocsLlmsTxt, renderDocsMarkdownDocument, renderDocsMarkdownNotFound, renderDocsPageStructuredDataJson, renderDocsRelatedMarkdownLines, renderDocsRobotsGeneratedBlock, renderDocsRobotsTxt, renderDocsSitemapMarkdown, renderDocsSitemapXml, renderDocsSkillDocument, resolveAskAISearchRequestConfig, resolveChangelogConfig, resolveDocsAgentFeedbackConfig, resolveDocsAgentFeedbackRequest, resolveDocsAgentMdxContent, resolveDocsAgentsFormat, resolveDocsAnalyticsConfig, resolveDocsI18n, resolveDocsLlmsTxtFormat, resolveDocsLlmsTxtRequest, resolveDocsLlmsTxtSections, resolveDocsLocale, resolveDocsMarkdownCanonicalUrl, resolveDocsMarkdownRequest, resolveDocsMetadataBaseUrl, resolveDocsObservabilityConfig, resolveDocsOpenApiDiscoveryConfig, resolveDocsPath, resolveDocsRobotsConfig, resolveDocsRobotsRequest, resolveDocsSitemapConfig, resolveDocsSitemapPageLastmod, resolveDocsSitemapRequest, resolveDocsSkillFormat, resolveOGImage, resolvePageReadingTime, resolvePageSidebarFolderIndexBehavior, resolveReadingTimeFromContent, resolveReadingTimeFromSource, resolveReadingTimeOptions, resolveSearchRequestConfig, resolveSidebarFolderIndexBehavior, resolveSidebarFolderIndexBehaviorForPath, resolveTitle, selectDocsLlmsTxtContent, serializeGeneratedAgentDocument, stripGeneratedAgentProvenance, toDocsMarkdownUrl, toDocsSitemapMarkdownUrl, upsertDocsRobotsGeneratedBlock, validateDocsAgentFeedbackPayload };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { a as devInstallCommand, c as fileExists, d as spawnAndWaitFor, f as writeFileSafe, i as detectPackageManagerFromLockfile, l as installCommand, n as detectGlobalCssFiles, o as exec, r as detectNextAppDir, t as detectFramework, u as readFileSafe } from "./utils-TPe8H1P-.mjs";
|
|
2
|
-
import { $ as svelteDocsPublicHookTemplate, A as nextConfigMergedTemplate, B as nuxtServerApiDocsRouteTemplate, C as injectRootProviderIntoLayout, D as injectTanstackVitePlugins, E as injectTanstackRootProviderIntoRoute, F as nuxtDocsConfigTemplate, G as quickstartPageTemplate, H as nuxtServerDocsPublicMiddlewareTemplate, I as nuxtDocsPageTemplate, J as svelteDocsApiRouteTemplate, K as rootLayoutTemplate, L as nuxtGlobalCssTemplate, M as nextLocaleDocPageTemplate, N as nextLocalizedPageTemplate, O as installationPageTemplate, P as nuxtConfigTemplate, Q as svelteDocsPageTemplate, R as nuxtInstallationPageTemplate, S as injectNuxtCssImport, T as injectSvelteDocsPublicHook, U as nuxtWelcomePageTemplate, V as nuxtServerApiReferenceRouteTemplate, W as postcssConfigTemplate, X as svelteDocsLayoutServerTemplate, Y as svelteDocsConfigTemplate, Z as svelteDocsLayoutTemplate, _ as getAstroAdapterPkg, _t as tanstackViteConfigTemplate, a as astroDocsIndexTemplate, at as svelteWelcomePageTemplate, b as injectAstroDocsMiddleware, bt as welcomePageTemplate, c as astroDocsServerTemplate, ct as tanstackDocsCatchAllRouteTemplate, d as astroQuickstartPageTemplate, dt as tanstackDocsIndexRouteTemplate, et as svelteDocsServerTemplate, f as astroWelcomePageTemplate, ft as tanstackDocsPublicRouteTemplate, g as docsLayoutTemplate, gt as tanstackRootRouteTemplate, h as docsConfigTemplate, ht as tanstackQuickstartPageTemplate, i as astroDocsConfigTemplate, it as svelteRootLayoutTemplate, j as nextConfigTemplate, k as nextApiReferencePageTemplate, l as astroGlobalCssTemplate, lt as tanstackDocsConfigTemplate, m as customThemeTsTemplate, mt as tanstackInstallationPageTemplate, n as astroApiRouteTemplate, nt as svelteInstallationPageTemplate, o as astroDocsMiddlewareTemplate, ot as tanstackApiDocsRouteTemplate, p as customThemeCssTemplate, pt as tanstackDocsServerTemplate, q as svelteApiReferenceRouteTemplate, r as astroConfigTemplate, rt as svelteQuickstartPageTemplate, s as astroDocsPageTemplate, st as tanstackApiReferenceRouteTemplate, t as astroApiReferenceRouteTemplate, tt as svelteGlobalCssTemplate, u as astroInstallationPageTemplate, ut as tanstackDocsFunctionsTemplate, v as globalCssTemplate, vt as tanstackWelcomePageTemplate, w as injectSvelteCssImport, x as injectCssImport, y as injectAstroCssImport, yt as tsconfigTemplate, z as nuxtQuickstartPageTemplate } from "./templates-
|
|
2
|
+
import { $ as svelteDocsPublicHookTemplate, A as nextConfigMergedTemplate, B as nuxtServerApiDocsRouteTemplate, C as injectRootProviderIntoLayout, D as injectTanstackVitePlugins, E as injectTanstackRootProviderIntoRoute, F as nuxtDocsConfigTemplate, G as quickstartPageTemplate, H as nuxtServerDocsPublicMiddlewareTemplate, I as nuxtDocsPageTemplate, J as svelteDocsApiRouteTemplate, K as rootLayoutTemplate, L as nuxtGlobalCssTemplate, M as nextLocaleDocPageTemplate, N as nextLocalizedPageTemplate, O as installationPageTemplate, P as nuxtConfigTemplate, Q as svelteDocsPageTemplate, R as nuxtInstallationPageTemplate, S as injectNuxtCssImport, T as injectSvelteDocsPublicHook, U as nuxtWelcomePageTemplate, V as nuxtServerApiReferenceRouteTemplate, W as postcssConfigTemplate, X as svelteDocsLayoutServerTemplate, Y as svelteDocsConfigTemplate, Z as svelteDocsLayoutTemplate, _ as getAstroAdapterPkg, _t as tanstackViteConfigTemplate, a as astroDocsIndexTemplate, at as svelteWelcomePageTemplate, b as injectAstroDocsMiddleware, bt as welcomePageTemplate, c as astroDocsServerTemplate, ct as tanstackDocsCatchAllRouteTemplate, d as astroQuickstartPageTemplate, dt as tanstackDocsIndexRouteTemplate, et as svelteDocsServerTemplate, f as astroWelcomePageTemplate, ft as tanstackDocsPublicRouteTemplate, g as docsLayoutTemplate, gt as tanstackRootRouteTemplate, h as docsConfigTemplate, ht as tanstackQuickstartPageTemplate, i as astroDocsConfigTemplate, it as svelteRootLayoutTemplate, j as nextConfigTemplate, k as nextApiReferencePageTemplate, l as astroGlobalCssTemplate, lt as tanstackDocsConfigTemplate, m as customThemeTsTemplate, mt as tanstackInstallationPageTemplate, n as astroApiRouteTemplate, nt as svelteInstallationPageTemplate, o as astroDocsMiddlewareTemplate, ot as tanstackApiDocsRouteTemplate, p as customThemeCssTemplate, pt as tanstackDocsServerTemplate, q as svelteApiReferenceRouteTemplate, r as astroConfigTemplate, rt as svelteQuickstartPageTemplate, s as astroDocsPageTemplate, st as tanstackApiReferenceRouteTemplate, t as astroApiReferenceRouteTemplate, tt as svelteGlobalCssTemplate, u as astroInstallationPageTemplate, ut as tanstackDocsFunctionsTemplate, v as globalCssTemplate, vt as tanstackWelcomePageTemplate, w as injectSvelteCssImport, x as injectCssImport, y as injectAstroCssImport, yt as tsconfigTemplate, z as nuxtQuickstartPageTemplate } from "./templates-CkL3bEE5.mjs";
|
|
3
3
|
import fs from "node:fs";
|
|
4
4
|
import path from "node:path";
|
|
5
5
|
import pc from "picocolors";
|
|
@@ -38,7 +38,8 @@ function readMcpConfig(content) {
|
|
|
38
38
|
listPages: readBooleanProperty(block, "listPages"),
|
|
39
39
|
readPage: readBooleanProperty(block, "readPage"),
|
|
40
40
|
searchDocs: readBooleanProperty(block, "searchDocs"),
|
|
41
|
-
getNavigation: readBooleanProperty(block, "getNavigation")
|
|
41
|
+
getNavigation: readBooleanProperty(block, "getNavigation"),
|
|
42
|
+
getCodeExamples: readBooleanProperty(block, "getCodeExamples")
|
|
42
43
|
}
|
|
43
44
|
};
|
|
44
45
|
}
|
package/dist/mcp.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { J as DocsSearchConfig, P as DocsMcpConfig, R as DocsObservabilityConfig, _ as DocsAnalyticsConfig, et as DocsSearchSourcePage, yt as OrderingItem } from "./types-
|
|
1
|
+
import { J as DocsSearchConfig, P as DocsMcpConfig, R as DocsObservabilityConfig, _ as DocsAnalyticsConfig, et as DocsSearchSourcePage, yt as OrderingItem } from "./types-qqx8SjH4.mjs";
|
|
2
2
|
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
3
3
|
|
|
4
4
|
//#region src/mcp.d.ts
|
|
@@ -18,6 +18,24 @@ interface DocsMcpPage {
|
|
|
18
18
|
agentFallbackContent?: string;
|
|
19
19
|
agentFallbackRawContent?: string;
|
|
20
20
|
}
|
|
21
|
+
interface DocsMcpCodeExample {
|
|
22
|
+
id: string;
|
|
23
|
+
page: {
|
|
24
|
+
slug: string;
|
|
25
|
+
url: string;
|
|
26
|
+
title: string;
|
|
27
|
+
description?: string;
|
|
28
|
+
sourcePath?: string;
|
|
29
|
+
lastModified?: string;
|
|
30
|
+
};
|
|
31
|
+
language?: string;
|
|
32
|
+
title?: string;
|
|
33
|
+
framework?: string;
|
|
34
|
+
packageManager?: string;
|
|
35
|
+
runnable: boolean;
|
|
36
|
+
meta: Record<string, string | boolean>;
|
|
37
|
+
code: string;
|
|
38
|
+
}
|
|
21
39
|
interface DocsMcpPageNode {
|
|
22
40
|
type: "page";
|
|
23
41
|
name: string;
|
|
@@ -53,6 +71,7 @@ interface DocsMcpResolvedConfig {
|
|
|
53
71
|
readPage: boolean;
|
|
54
72
|
searchDocs: boolean;
|
|
55
73
|
getNavigation: boolean;
|
|
74
|
+
getCodeExamples: boolean;
|
|
56
75
|
};
|
|
57
76
|
}
|
|
58
77
|
interface DocsMcpHttpHandlers {
|
|
@@ -93,4 +112,4 @@ declare function createDocsMcpServer(options: CreateDocsMcpServerOptions): Promi
|
|
|
93
112
|
declare function createDocsMcpHttpHandler(options: CreateDocsMcpServerOptions): DocsMcpHttpHandlers;
|
|
94
113
|
declare function runDocsMcpStdio(options: CreateDocsMcpServerOptions): Promise<void>;
|
|
95
114
|
//#endregion
|
|
96
|
-
export { DocsMcpFolderNode, DocsMcpHttpHandlers, DocsMcpNavigationNode, DocsMcpNavigationTree, DocsMcpPage, DocsMcpPageNode, DocsMcpResolvedConfig, DocsMcpSource, createDocsMcpHttpHandler, createDocsMcpServer, createFilesystemDocsMcpSource, normalizeDocsMcpRoute, resolveDocsMcpConfig, runDocsMcpStdio };
|
|
115
|
+
export { DocsMcpCodeExample, DocsMcpFolderNode, DocsMcpHttpHandlers, DocsMcpNavigationNode, DocsMcpNavigationTree, DocsMcpPage, DocsMcpPageNode, DocsMcpResolvedConfig, DocsMcpSource, createDocsMcpHttpHandler, createDocsMcpServer, createFilesystemDocsMcpSource, normalizeDocsMcpRoute, resolveDocsMcpConfig, runDocsMcpStdio };
|
package/dist/mcp.mjs
CHANGED
|
@@ -24,6 +24,16 @@ const readPageInputSchema = z.object({
|
|
|
24
24
|
});
|
|
25
25
|
const listPagesInputSchema = z.object({ locale: z.string().min(1).optional() });
|
|
26
26
|
const getNavigationInputSchema = z.object({ locale: z.string().min(1).optional() });
|
|
27
|
+
const getCodeExamplesInputSchema = z.object({
|
|
28
|
+
query: z.string().trim().min(1).optional(),
|
|
29
|
+
path: z.string().min(1).optional(),
|
|
30
|
+
framework: z.string().trim().min(1).optional(),
|
|
31
|
+
packageManager: z.string().trim().min(1).optional(),
|
|
32
|
+
language: z.string().trim().min(1).optional(),
|
|
33
|
+
runnable: z.boolean().optional(),
|
|
34
|
+
limit: z.number().int().min(1).max(50).optional(),
|
|
35
|
+
locale: z.string().min(1).optional()
|
|
36
|
+
});
|
|
27
37
|
function normalizeDocsMcpRoute(route) {
|
|
28
38
|
if (!route || route.trim().length === 0) return DEFAULT_MCP_ROUTE;
|
|
29
39
|
const normalized = `/${route}`.replace(/\/+/g, "/");
|
|
@@ -39,7 +49,8 @@ function resolveDocsMcpConfig(mcp, defaults = {}) {
|
|
|
39
49
|
listPages: true,
|
|
40
50
|
readPage: true,
|
|
41
51
|
searchDocs: true,
|
|
42
|
-
getNavigation: true
|
|
52
|
+
getNavigation: true,
|
|
53
|
+
getCodeExamples: true
|
|
43
54
|
}
|
|
44
55
|
};
|
|
45
56
|
const config = mcp && typeof mcp === "object" ? mcp : {};
|
|
@@ -52,7 +63,8 @@ function resolveDocsMcpConfig(mcp, defaults = {}) {
|
|
|
52
63
|
listPages: config.tools?.listPages ?? true,
|
|
53
64
|
readPage: config.tools?.readPage ?? true,
|
|
54
65
|
searchDocs: config.tools?.searchDocs ?? true,
|
|
55
|
-
getNavigation: config.tools?.getNavigation ?? true
|
|
66
|
+
getNavigation: config.tools?.getNavigation ?? true,
|
|
67
|
+
getCodeExamples: config.tools?.getCodeExamples ?? true
|
|
56
68
|
}
|
|
57
69
|
};
|
|
58
70
|
}
|
|
@@ -350,6 +362,103 @@ async function createDocsMcpServer(options) {
|
|
|
350
362
|
throw error;
|
|
351
363
|
}
|
|
352
364
|
});
|
|
365
|
+
if (resolved.tools.getCodeExamples) server.registerTool("get_code_examples", {
|
|
366
|
+
title: "Get docs code examples",
|
|
367
|
+
description: "Return fenced code examples from the docs with parsed metadata such as title, framework, packageManager, and runnable.",
|
|
368
|
+
inputSchema: getCodeExamplesInputSchema,
|
|
369
|
+
annotations: { readOnlyHint: true }
|
|
370
|
+
}, async ({ query, path: requestedPath, framework, packageManager, language, runnable, limit, locale }) => {
|
|
371
|
+
const startedAt = nowMs();
|
|
372
|
+
const resolvedLimit = limit ?? 25;
|
|
373
|
+
const trace = createDocsAgentTraceContext("mcp.tool.get_code_examples");
|
|
374
|
+
const callSpanId = createDocsAgentTraceId("span");
|
|
375
|
+
await emitDocsAgentTraceEvent(options.observability, {
|
|
376
|
+
type: "tool.call",
|
|
377
|
+
source: "mcp",
|
|
378
|
+
traceId: trace.traceId,
|
|
379
|
+
spanId: callSpanId,
|
|
380
|
+
name: "get_code_examples",
|
|
381
|
+
startedAt: trace.startedAt,
|
|
382
|
+
status: "started",
|
|
383
|
+
locale,
|
|
384
|
+
inputPreview: {
|
|
385
|
+
queryLength: query?.length,
|
|
386
|
+
path: requestedPath,
|
|
387
|
+
framework,
|
|
388
|
+
packageManager,
|
|
389
|
+
language,
|
|
390
|
+
runnable,
|
|
391
|
+
limit: resolvedLimit
|
|
392
|
+
},
|
|
393
|
+
metadata: { tool: "get_code_examples" }
|
|
394
|
+
});
|
|
395
|
+
try {
|
|
396
|
+
const pages = dedupePages(await options.source.getPages(locale));
|
|
397
|
+
const matchedPage = requestedPath ? findDocsPage(pages, requestedPath, options.source.entry) : null;
|
|
398
|
+
const examples = filterDocsCodeExamples((requestedPath ? matchedPage ? [matchedPage] : [] : pages).flatMap((page) => extractDocsMcpCodeExamples(page)), {
|
|
399
|
+
query,
|
|
400
|
+
framework,
|
|
401
|
+
packageManager,
|
|
402
|
+
language,
|
|
403
|
+
runnable,
|
|
404
|
+
limit: resolvedLimit
|
|
405
|
+
});
|
|
406
|
+
const elapsed = durationMs(startedAt);
|
|
407
|
+
await emitDocsAnalyticsEvent(options.analytics, {
|
|
408
|
+
type: "mcp_tool",
|
|
409
|
+
source: "mcp",
|
|
410
|
+
locale,
|
|
411
|
+
input: query ? { query } : void 0,
|
|
412
|
+
properties: {
|
|
413
|
+
tool: "get_code_examples",
|
|
414
|
+
queryLength: query?.length,
|
|
415
|
+
path: requestedPath,
|
|
416
|
+
framework,
|
|
417
|
+
packageManager,
|
|
418
|
+
language,
|
|
419
|
+
runnable,
|
|
420
|
+
limit: resolvedLimit,
|
|
421
|
+
resultCount: examples.length,
|
|
422
|
+
durationMs: elapsed
|
|
423
|
+
}
|
|
424
|
+
});
|
|
425
|
+
await emitDocsAgentTraceEvent(options.observability, {
|
|
426
|
+
type: "tool.result",
|
|
427
|
+
source: "mcp",
|
|
428
|
+
traceId: trace.traceId,
|
|
429
|
+
parentSpanId: callSpanId,
|
|
430
|
+
name: "get_code_examples",
|
|
431
|
+
startedAt: trace.startedAt,
|
|
432
|
+
endedAt: (/* @__PURE__ */ new Date()).toISOString(),
|
|
433
|
+
durationMs: elapsed,
|
|
434
|
+
status: "success",
|
|
435
|
+
locale,
|
|
436
|
+
outputPreview: { resultCount: examples.length },
|
|
437
|
+
metadata: { tool: "get_code_examples" }
|
|
438
|
+
});
|
|
439
|
+
return { content: [{
|
|
440
|
+
type: "text",
|
|
441
|
+
text: JSON.stringify({ examples }, null, 2)
|
|
442
|
+
}] };
|
|
443
|
+
} catch (error) {
|
|
444
|
+
const elapsed = durationMs(startedAt);
|
|
445
|
+
await emitDocsAgentTraceEvent(options.observability, {
|
|
446
|
+
type: "tool.error",
|
|
447
|
+
source: "mcp",
|
|
448
|
+
traceId: trace.traceId,
|
|
449
|
+
parentSpanId: callSpanId,
|
|
450
|
+
name: "get_code_examples",
|
|
451
|
+
startedAt: trace.startedAt,
|
|
452
|
+
endedAt: (/* @__PURE__ */ new Date()).toISOString(),
|
|
453
|
+
durationMs: elapsed,
|
|
454
|
+
status: "error",
|
|
455
|
+
locale,
|
|
456
|
+
outputPreview: { message: error instanceof Error ? error.message : "Unknown error" },
|
|
457
|
+
metadata: { tool: "get_code_examples" }
|
|
458
|
+
});
|
|
459
|
+
throw error;
|
|
460
|
+
}
|
|
461
|
+
});
|
|
353
462
|
if (resolved.tools.readPage) server.registerTool("read_page", {
|
|
354
463
|
title: "Read a docs page",
|
|
355
464
|
description: "Read a documentation page by slug or URL path.",
|
|
@@ -905,6 +1014,123 @@ function toPageSummaries(pages) {
|
|
|
905
1014
|
icon: page.icon
|
|
906
1015
|
}));
|
|
907
1016
|
}
|
|
1017
|
+
function extractDocsMcpCodeExamples(page) {
|
|
1018
|
+
const source = page.agentRawContent ?? page.agentFallbackRawContent ?? page.rawContent;
|
|
1019
|
+
if (!source) return [];
|
|
1020
|
+
const examples = [];
|
|
1021
|
+
const lines = source.split("\n");
|
|
1022
|
+
let index = 0;
|
|
1023
|
+
let openFence = null;
|
|
1024
|
+
for (const line of lines) {
|
|
1025
|
+
const trimmed = line.trim();
|
|
1026
|
+
if (!openFence) {
|
|
1027
|
+
const openMatch = trimmed.match(/^(`{3,}|~{3,})(.*)$/);
|
|
1028
|
+
if (!openMatch) continue;
|
|
1029
|
+
openFence = {
|
|
1030
|
+
marker: openMatch[1],
|
|
1031
|
+
info: openMatch[2]?.trim() ?? "",
|
|
1032
|
+
code: []
|
|
1033
|
+
};
|
|
1034
|
+
continue;
|
|
1035
|
+
}
|
|
1036
|
+
if (isClosingFence(trimmed, openFence.marker)) {
|
|
1037
|
+
const parsed = parseCodeFenceInfo(openFence.info);
|
|
1038
|
+
const meta = parsed.meta;
|
|
1039
|
+
const title = readStringMeta(meta, "title");
|
|
1040
|
+
const framework = readStringMeta(meta, "framework");
|
|
1041
|
+
const packageManager = readStringMeta(meta, "packageManager");
|
|
1042
|
+
const runnable = readBooleanMeta(meta, "runnable") ?? false;
|
|
1043
|
+
index += 1;
|
|
1044
|
+
examples.push({
|
|
1045
|
+
id: `${page.url}#code-${index}`,
|
|
1046
|
+
page: {
|
|
1047
|
+
slug: page.slug,
|
|
1048
|
+
url: page.url,
|
|
1049
|
+
title: page.title,
|
|
1050
|
+
description: page.description,
|
|
1051
|
+
sourcePath: page.sourcePath,
|
|
1052
|
+
lastModified: page.lastModified
|
|
1053
|
+
},
|
|
1054
|
+
language: parsed.language,
|
|
1055
|
+
title,
|
|
1056
|
+
framework,
|
|
1057
|
+
packageManager,
|
|
1058
|
+
runnable,
|
|
1059
|
+
meta,
|
|
1060
|
+
code: openFence.code.join("\n")
|
|
1061
|
+
});
|
|
1062
|
+
openFence = null;
|
|
1063
|
+
continue;
|
|
1064
|
+
}
|
|
1065
|
+
openFence.code.push(line);
|
|
1066
|
+
}
|
|
1067
|
+
return examples;
|
|
1068
|
+
}
|
|
1069
|
+
function filterDocsCodeExamples(examples, filters) {
|
|
1070
|
+
const query = filters.query?.toLowerCase();
|
|
1071
|
+
const framework = filters.framework?.toLowerCase();
|
|
1072
|
+
const packageManager = filters.packageManager?.toLowerCase();
|
|
1073
|
+
const language = filters.language?.toLowerCase();
|
|
1074
|
+
return examples.filter((example) => {
|
|
1075
|
+
if (framework && example.framework?.toLowerCase() !== framework) return false;
|
|
1076
|
+
if (packageManager && example.packageManager?.toLowerCase() !== packageManager) return false;
|
|
1077
|
+
if (language && example.language?.toLowerCase() !== language) return false;
|
|
1078
|
+
if (filters.runnable !== void 0 && example.runnable !== filters.runnable) return false;
|
|
1079
|
+
if (!query) return true;
|
|
1080
|
+
return getCodeExampleSearchText(example).toLowerCase().includes(query);
|
|
1081
|
+
}).slice(0, filters.limit);
|
|
1082
|
+
}
|
|
1083
|
+
function isClosingFence(trimmedLine, marker) {
|
|
1084
|
+
if (!trimmedLine.startsWith(marker)) return false;
|
|
1085
|
+
return trimmedLine.slice(marker.length).trim().length === 0;
|
|
1086
|
+
}
|
|
1087
|
+
function parseCodeFenceInfo(info) {
|
|
1088
|
+
const trimmed = info.trim();
|
|
1089
|
+
if (!trimmed) return { meta: {} };
|
|
1090
|
+
const firstToken = trimmed.match(/^(\S+)/)?.[1] ?? "";
|
|
1091
|
+
const language = firstToken && !firstToken.includes("=") ? firstToken : void 0;
|
|
1092
|
+
const attributeSource = language ? trimmed.slice(firstToken.length).trim() : trimmed;
|
|
1093
|
+
const meta = {};
|
|
1094
|
+
const attributePattern = /([A-Za-z_:][\w:.-]*)(?:=(?:"([^"]*)"|'([^']*)'|([^\s"']+)))?/g;
|
|
1095
|
+
let match;
|
|
1096
|
+
while (match = attributePattern.exec(attributeSource)) {
|
|
1097
|
+
const key = match[1];
|
|
1098
|
+
meta[key] = match[2] ?? match[3] ?? match[4] ?? true;
|
|
1099
|
+
}
|
|
1100
|
+
return {
|
|
1101
|
+
language,
|
|
1102
|
+
meta
|
|
1103
|
+
};
|
|
1104
|
+
}
|
|
1105
|
+
function readStringMeta(meta, key) {
|
|
1106
|
+
const value = meta[key];
|
|
1107
|
+
return typeof value === "string" && value.trim().length > 0 ? value : void 0;
|
|
1108
|
+
}
|
|
1109
|
+
function readBooleanMeta(meta, key) {
|
|
1110
|
+
const value = meta[key];
|
|
1111
|
+
if (typeof value === "boolean") return value;
|
|
1112
|
+
if (typeof value !== "string") return void 0;
|
|
1113
|
+
const normalized = value.trim().toLowerCase();
|
|
1114
|
+
if (!normalized || normalized === "true" || normalized === "1" || normalized === "yes") return true;
|
|
1115
|
+
if (normalized === "false" || normalized === "0" || normalized === "no") return false;
|
|
1116
|
+
return true;
|
|
1117
|
+
}
|
|
1118
|
+
function getCodeExampleSearchText(example) {
|
|
1119
|
+
return [
|
|
1120
|
+
example.id,
|
|
1121
|
+
example.page.slug,
|
|
1122
|
+
example.page.url,
|
|
1123
|
+
example.page.title,
|
|
1124
|
+
example.page.description,
|
|
1125
|
+
example.page.sourcePath,
|
|
1126
|
+
example.language,
|
|
1127
|
+
example.title,
|
|
1128
|
+
example.framework,
|
|
1129
|
+
example.packageManager,
|
|
1130
|
+
...Object.entries(example.meta).map(([key, value]) => `${key} ${String(value)}`),
|
|
1131
|
+
example.code
|
|
1132
|
+
].filter((value) => typeof value === "string").join("\n");
|
|
1133
|
+
}
|
|
908
1134
|
function findDocsPage(pages, requestedPath, entry) {
|
|
909
1135
|
const normalizedRequest = normalizeRequestedPath(requestedPath, entry);
|
|
910
1136
|
for (const page of pages) if (normalizeUrlPath(page.url) === normalizedRequest) return page;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import "./agent-
|
|
2
|
-
import { c as renderDocsRobotsGeneratedBlock, f as upsertDocsRobotsGeneratedBlock, i as DOCS_ROBOTS_GENERATED_BLOCK_START, r as DOCS_ROBOTS_GENERATED_BLOCK_END, u as resolveDocsRobotsConfig } from "./robots-
|
|
1
|
+
import "./agent-Dt6kdGqw.mjs";
|
|
2
|
+
import { c as renderDocsRobotsGeneratedBlock, f as upsertDocsRobotsGeneratedBlock, i as DOCS_ROBOTS_GENERATED_BLOCK_START, r as DOCS_ROBOTS_GENERATED_BLOCK_END, u as resolveDocsRobotsConfig } from "./robots-tohhTNbU.mjs";
|
|
3
3
|
import { d as readTopLevelStringProperty, f as resolveDocsConfigPath, i as loadDocsConfigModule, o as readBooleanProperty, t as extractNestedObjectLiteral, u as readStringProperty } from "./config-Cio3byUJ.mjs";
|
|
4
4
|
import { t as detectFramework } from "./utils-TPe8H1P-.mjs";
|
|
5
5
|
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { u as resolveDocsSitemapConfig } from "./sitemap-CnqcTdQg.mjs";
|
|
2
|
-
import { R as normalizeDocsPathSegment, a as DEFAULT_AGENT_MD_ROUTE, b as DEFAULT_SKILL_MD_ROUTE, c as DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, d as DEFAULT_LLMS_FULL_TXT_ROUTE, f as DEFAULT_LLMS_FULL_TXT_WELL_KNOWN_ROUTE, g as DEFAULT_MCP_PUBLIC_ROUTE, h as DEFAULT_LLMS_TXT_WELL_KNOWN_ROUTE, l as DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, m as DEFAULT_LLMS_TXT_ROUTE, n as DEFAULT_AGENTS_MD_WELL_KNOWN_ROUTE, o as DEFAULT_AGENT_MD_WELL_KNOWN_ROUTE, t as DEFAULT_AGENTS_MD_ROUTE, v as DEFAULT_MCP_WELL_KNOWN_ROUTE, x as DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE } from "./agent-
|
|
2
|
+
import { R as normalizeDocsPathSegment, a as DEFAULT_AGENT_MD_ROUTE, b as DEFAULT_SKILL_MD_ROUTE, c as DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, d as DEFAULT_LLMS_FULL_TXT_ROUTE, f as DEFAULT_LLMS_FULL_TXT_WELL_KNOWN_ROUTE, g as DEFAULT_MCP_PUBLIC_ROUTE, h as DEFAULT_LLMS_TXT_WELL_KNOWN_ROUTE, l as DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, m as DEFAULT_LLMS_TXT_ROUTE, n as DEFAULT_AGENTS_MD_WELL_KNOWN_ROUTE, o as DEFAULT_AGENT_MD_WELL_KNOWN_ROUTE, t as DEFAULT_AGENTS_MD_ROUTE, v as DEFAULT_MCP_WELL_KNOWN_ROUTE, x as DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE } from "./agent-Dt6kdGqw.mjs";
|
|
3
3
|
|
|
4
4
|
//#region src/robots.ts
|
|
5
5
|
const DEFAULT_ROBOTS_TXT_ROUTE = "/robots.txt";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { B as DocsObservabilityEventInput, Et as ResolvedDocsRelatedLink, It as TypesenseDocsSearchConfig, J as DocsSearchConfig, K as DocsSearchAdapterFactory, Q as DocsSearchResult, R as DocsObservabilityConfig, W as DocsSearchAdapter, Y as DocsSearchDocument, _ as DocsAnalyticsConfig, _t as OpenDocsTarget, d as CustomDocsSearchConfig, dt as McpDocsSearchConfig, et as DocsSearchSourcePage, k as DocsAskAIMcpConfig, m as DocsAgentTraceEventInput, mt as OpenDocsProvider, q as DocsSearchChunkingConfig, r as AlgoliaDocsSearchConfig, tt as DocsSitemapConfig, v as DocsAnalyticsEvent, y as DocsAnalyticsEventInput, z as DocsObservabilityEvent } from "./types-
|
|
1
|
+
import { B as DocsObservabilityEventInput, Et as ResolvedDocsRelatedLink, It as TypesenseDocsSearchConfig, J as DocsSearchConfig, K as DocsSearchAdapterFactory, Q as DocsSearchResult, R as DocsObservabilityConfig, W as DocsSearchAdapter, Y as DocsSearchDocument, _ as DocsAnalyticsConfig, _t as OpenDocsTarget, d as CustomDocsSearchConfig, dt as McpDocsSearchConfig, et as DocsSearchSourcePage, k as DocsAskAIMcpConfig, m as DocsAgentTraceEventInput, mt as OpenDocsProvider, q as DocsSearchChunkingConfig, r as AlgoliaDocsSearchConfig, tt as DocsSitemapConfig, v as DocsAnalyticsEvent, y as DocsAnalyticsEventInput, z as DocsObservabilityEvent } from "./types-qqx8SjH4.mjs";
|
|
2
2
|
|
|
3
3
|
//#region src/cloud-analytics.d.ts
|
|
4
4
|
interface DocsCloudAnalyticsOptions {
|
package/dist/server.d.mts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { A as DocsConfig, B as DocsObservabilityEventInput, D as DocsAskAIFeedbackMessage, E as DocsAskAIFeedbackData, G as DocsSearchAdapterContext, J as DocsSearchConfig, K as DocsSearchAdapterFactory, O as DocsAskAIFeedbackValue, Q as DocsSearchResult, R as DocsObservabilityConfig, T as DocsAskAIFeedbackConfig, W as DocsSearchAdapter, Y as DocsSearchDocument, Z as DocsSearchQuery, _ as DocsAnalyticsConfig, a as ApiReferenceRenderer, dt as McpDocsSearchConfig, et as DocsSearchSourcePage, g as DocsAgentTraceStatus, h as DocsAgentTraceEventType, k as DocsAskAIMcpConfig, m as DocsAgentTraceEventInput, tt as DocsSitemapConfig, v as DocsAnalyticsEvent, y as DocsAnalyticsEventInput, z as DocsObservabilityEvent } from "./types-
|
|
2
|
-
import { $ as emitDocsAgentTraceEvent, A as toDocsSitemapMarkdownUrl, B as parsePromptStringArray, C as createDocsSitemapResponse, D as resolveDocsSitemapConfig, E as renderDocsSitemapXml, F as PromptAction, G as serializeOpenDocsProvider, H as sanitizePromptText, I as PromptProviderChoice, J as DocsAgentTraceContext, K as serializeOpenDocsProviders, L as SerializeOpenDocsProviderOptions, M as DEFAULT_OPEN_DOCS_PROVIDER_IDS, N as DEFAULT_OPEN_DOCS_TARGET, O as resolveDocsSitemapPageLastmod, P as DEFAULT_PROMPT_PROVIDER_TEMPLATES, Q as createDocsAgentTraceId, R as SerializedOpenDocsProvider, S as buildDocsSitemapManifest, T as renderDocsSitemapMarkdown, U as serializeDocsIcon, V as resolvePromptProviderChoices, W as serializeDocsIconRegistry, X as ResolvedDocsObservabilityConfig, Y as ResolvedDocsAnalyticsConfig, Z as createDocsAgentTraceContext, _ as DocsSitemapFormat, a as createMcpSearchAdapter, at as createDocsCloudAnalytics, b as DocsSitemapPageInput, c as formatDocsAskAIPackageHints, d as resolveAskAISearchRequestConfig, et as emitDocsAnalyticsEvent, f as resolveSearchRequestConfig, g as DEFAULT_SITEMAP_XML_ROUTE, h as DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, i as createCustomSearchAdapter, it as DocsCloudAnalyticsOptions, j as DEFAULT_OPEN_DOCS_PROMPT, k as resolveDocsSitemapRequest, l as inferDocsAskAIPackageHints, m as DEFAULT_SITEMAP_MD_ROUTE, n as buildDocsSearchDocuments, nt as resolveDocsAnalyticsConfig, o as createSimpleSearchAdapter, p as DEFAULT_SITEMAP_MANIFEST_PATH, q as DOCS_AGENT_TRACE_EVENT_TYPES, r as createAlgoliaSearchAdapter, rt as resolveDocsObservabilityConfig, s as createTypesenseSearchAdapter, t as buildDocsAskAIContext, tt as emitDocsObservabilityEvent, u as performDocsSearch, v as DocsSitemapManifest, w as readDocsSitemapManifestFromContentMap, x as DocsSitemapResolvedConfig, y as DocsSitemapManifestPage, z as normalizePromptProviderName } from "./search-
|
|
3
|
-
import { DocsMcpHttpHandlers, DocsMcpNavigationNode, DocsMcpNavigationTree, DocsMcpPage, DocsMcpResolvedConfig, DocsMcpSource, createDocsMcpHttpHandler, createDocsMcpServer, createFilesystemDocsMcpSource, normalizeDocsMcpRoute, resolveDocsMcpConfig, runDocsMcpStdio } from "./mcp.mjs";
|
|
1
|
+
import { A as DocsConfig, B as DocsObservabilityEventInput, D as DocsAskAIFeedbackMessage, E as DocsAskAIFeedbackData, G as DocsSearchAdapterContext, J as DocsSearchConfig, K as DocsSearchAdapterFactory, O as DocsAskAIFeedbackValue, Q as DocsSearchResult, R as DocsObservabilityConfig, T as DocsAskAIFeedbackConfig, W as DocsSearchAdapter, Y as DocsSearchDocument, Z as DocsSearchQuery, _ as DocsAnalyticsConfig, a as ApiReferenceRenderer, dt as McpDocsSearchConfig, et as DocsSearchSourcePage, g as DocsAgentTraceStatus, h as DocsAgentTraceEventType, k as DocsAskAIMcpConfig, m as DocsAgentTraceEventInput, tt as DocsSitemapConfig, v as DocsAnalyticsEvent, y as DocsAnalyticsEventInput, z as DocsObservabilityEvent } from "./types-qqx8SjH4.mjs";
|
|
2
|
+
import { $ as emitDocsAgentTraceEvent, A as toDocsSitemapMarkdownUrl, B as parsePromptStringArray, C as createDocsSitemapResponse, D as resolveDocsSitemapConfig, E as renderDocsSitemapXml, F as PromptAction, G as serializeOpenDocsProvider, H as sanitizePromptText, I as PromptProviderChoice, J as DocsAgentTraceContext, K as serializeOpenDocsProviders, L as SerializeOpenDocsProviderOptions, M as DEFAULT_OPEN_DOCS_PROVIDER_IDS, N as DEFAULT_OPEN_DOCS_TARGET, O as resolveDocsSitemapPageLastmod, P as DEFAULT_PROMPT_PROVIDER_TEMPLATES, Q as createDocsAgentTraceId, R as SerializedOpenDocsProvider, S as buildDocsSitemapManifest, T as renderDocsSitemapMarkdown, U as serializeDocsIcon, V as resolvePromptProviderChoices, W as serializeDocsIconRegistry, X as ResolvedDocsObservabilityConfig, Y as ResolvedDocsAnalyticsConfig, Z as createDocsAgentTraceContext, _ as DocsSitemapFormat, a as createMcpSearchAdapter, at as createDocsCloudAnalytics, b as DocsSitemapPageInput, c as formatDocsAskAIPackageHints, d as resolveAskAISearchRequestConfig, et as emitDocsAnalyticsEvent, f as resolveSearchRequestConfig, g as DEFAULT_SITEMAP_XML_ROUTE, h as DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, i as createCustomSearchAdapter, it as DocsCloudAnalyticsOptions, j as DEFAULT_OPEN_DOCS_PROMPT, k as resolveDocsSitemapRequest, l as inferDocsAskAIPackageHints, m as DEFAULT_SITEMAP_MD_ROUTE, n as buildDocsSearchDocuments, nt as resolveDocsAnalyticsConfig, o as createSimpleSearchAdapter, p as DEFAULT_SITEMAP_MANIFEST_PATH, q as DOCS_AGENT_TRACE_EVENT_TYPES, r as createAlgoliaSearchAdapter, rt as resolveDocsObservabilityConfig, s as createTypesenseSearchAdapter, t as buildDocsAskAIContext, tt as emitDocsObservabilityEvent, u as performDocsSearch, v as DocsSitemapManifest, w as readDocsSitemapManifestFromContentMap, x as DocsSitemapResolvedConfig, y as DocsSitemapManifestPage, z as normalizePromptProviderName } from "./search-DYPyHTz_.mjs";
|
|
3
|
+
import { DocsMcpCodeExample, DocsMcpHttpHandlers, DocsMcpNavigationNode, DocsMcpNavigationTree, DocsMcpPage, DocsMcpResolvedConfig, DocsMcpSource, createDocsMcpHttpHandler, createDocsMcpServer, createFilesystemDocsMcpSource, normalizeDocsMcpRoute, resolveDocsMcpConfig, runDocsMcpStdio } from "./mcp.mjs";
|
|
4
4
|
|
|
5
5
|
//#region src/api-reference.d.ts
|
|
6
6
|
type HttpMethod = "GET" | "POST" | "PUT" | "PATCH" | "DELETE" | "OPTIONS" | "HEAD";
|
|
@@ -55,4 +55,4 @@ declare function buildApiReferenceHtmlDocumentAsync(config: DocsConfig, options:
|
|
|
55
55
|
//#region src/sitemap-server.d.ts
|
|
56
56
|
declare function readDocsSitemapManifest(rootDir: string, sitemap?: boolean | DocsSitemapConfig): DocsSitemapManifest | null;
|
|
57
57
|
//#endregion
|
|
58
|
-
export { type ApiReferenceFramework, type ApiReferenceOpenApiDiscovery, type ApiReferenceRenderer, type ApiReferenceRoute, DEFAULT_API_REFERENCE_OPENAPI_ROUTE, DEFAULT_OPEN_DOCS_PROMPT, DEFAULT_OPEN_DOCS_PROVIDER_IDS, DEFAULT_OPEN_DOCS_TARGET, DEFAULT_PROMPT_PROVIDER_TEMPLATES, DEFAULT_SITEMAP_MANIFEST_PATH, DEFAULT_SITEMAP_MD_ROUTE, DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, DEFAULT_SITEMAP_XML_ROUTE, DOCS_AGENT_TRACE_EVENT_TYPES, type DocsAgentTraceContext, type DocsAgentTraceEventInput, type DocsAgentTraceEventType, type DocsAgentTraceStatus, type DocsAnalyticsConfig, type DocsAnalyticsEvent, type DocsAnalyticsEventInput, type DocsAskAIFeedbackConfig, type DocsAskAIFeedbackData, type DocsAskAIFeedbackMessage, type DocsAskAIFeedbackValue, type DocsAskAIMcpConfig, type DocsCloudAnalyticsOptions, type DocsMcpHttpHandlers, type DocsMcpNavigationNode, type DocsMcpNavigationTree, type DocsMcpPage, type DocsMcpResolvedConfig, type DocsMcpSource, type DocsObservabilityConfig, type DocsObservabilityEvent, type DocsObservabilityEventInput, type DocsSearchAdapter, type DocsSearchAdapterContext, type DocsSearchAdapterFactory, type DocsSearchConfig, type DocsSearchDocument, type DocsSearchQuery, type DocsSearchResult, type DocsSearchSourcePage, type DocsSitemapFormat, type DocsSitemapManifest, type DocsSitemapManifestPage, type DocsSitemapPageInput, type DocsSitemapResolvedConfig, type McpDocsSearchConfig, type PromptAction, type PromptProviderChoice, type ResolvedApiReferenceConfig, type ResolvedDocsAnalyticsConfig, type ResolvedDocsObservabilityConfig, type SerializeOpenDocsProviderOptions, type SerializedOpenDocsProvider, buildApiReferenceHtmlDocument, buildApiReferenceHtmlDocumentAsync, buildApiReferenceOpenApiDocument, buildApiReferenceOpenApiDocumentAsync, buildApiReferencePageTitle, buildApiReferenceScalarCss, buildDocsAskAIContext, buildDocsSearchDocuments, buildDocsSitemapManifest, createAlgoliaSearchAdapter, createCustomSearchAdapter, createDocsAgentTraceContext, createDocsAgentTraceId, createDocsCloudAnalytics, createDocsMcpHttpHandler, createDocsMcpServer, createDocsSitemapResponse, createFilesystemDocsMcpSource, createMcpSearchAdapter, createSimpleSearchAdapter, createTypesenseSearchAdapter, emitDocsAgentTraceEvent, emitDocsAnalyticsEvent, emitDocsObservabilityEvent, formatDocsAskAIPackageHints, inferDocsAskAIPackageHints, isApiReferenceOpenApiRequest, normalizeDocsMcpRoute, normalizePromptProviderName, parsePromptStringArray, performDocsSearch, readDocsSitemapManifest, readDocsSitemapManifestFromContentMap, renderDocsSitemapMarkdown, renderDocsSitemapXml, resolveApiReferenceConfig, resolveApiReferenceOpenApiDiscovery, resolveApiReferenceRenderer, resolveAskAISearchRequestConfig, resolveDocsAnalyticsConfig, resolveDocsMcpConfig, resolveDocsObservabilityConfig, resolveDocsSitemapConfig, resolveDocsSitemapPageLastmod, resolveDocsSitemapRequest, resolvePromptProviderChoices, resolveSearchRequestConfig, runDocsMcpStdio, sanitizePromptText, serializeDocsIcon, serializeDocsIconRegistry, serializeOpenDocsProvider, serializeOpenDocsProviders, toDocsSitemapMarkdownUrl };
|
|
58
|
+
export { type ApiReferenceFramework, type ApiReferenceOpenApiDiscovery, type ApiReferenceRenderer, type ApiReferenceRoute, DEFAULT_API_REFERENCE_OPENAPI_ROUTE, DEFAULT_OPEN_DOCS_PROMPT, DEFAULT_OPEN_DOCS_PROVIDER_IDS, DEFAULT_OPEN_DOCS_TARGET, DEFAULT_PROMPT_PROVIDER_TEMPLATES, DEFAULT_SITEMAP_MANIFEST_PATH, DEFAULT_SITEMAP_MD_ROUTE, DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, DEFAULT_SITEMAP_XML_ROUTE, DOCS_AGENT_TRACE_EVENT_TYPES, type DocsAgentTraceContext, type DocsAgentTraceEventInput, type DocsAgentTraceEventType, type DocsAgentTraceStatus, type DocsAnalyticsConfig, type DocsAnalyticsEvent, type DocsAnalyticsEventInput, type DocsAskAIFeedbackConfig, type DocsAskAIFeedbackData, type DocsAskAIFeedbackMessage, type DocsAskAIFeedbackValue, type DocsAskAIMcpConfig, type DocsCloudAnalyticsOptions, type DocsMcpCodeExample, type DocsMcpHttpHandlers, type DocsMcpNavigationNode, type DocsMcpNavigationTree, type DocsMcpPage, type DocsMcpResolvedConfig, type DocsMcpSource, type DocsObservabilityConfig, type DocsObservabilityEvent, type DocsObservabilityEventInput, type DocsSearchAdapter, type DocsSearchAdapterContext, type DocsSearchAdapterFactory, type DocsSearchConfig, type DocsSearchDocument, type DocsSearchQuery, type DocsSearchResult, type DocsSearchSourcePage, type DocsSitemapFormat, type DocsSitemapManifest, type DocsSitemapManifestPage, type DocsSitemapPageInput, type DocsSitemapResolvedConfig, type McpDocsSearchConfig, type PromptAction, type PromptProviderChoice, type ResolvedApiReferenceConfig, type ResolvedDocsAnalyticsConfig, type ResolvedDocsObservabilityConfig, type SerializeOpenDocsProviderOptions, type SerializedOpenDocsProvider, buildApiReferenceHtmlDocument, buildApiReferenceHtmlDocumentAsync, buildApiReferenceOpenApiDocument, buildApiReferenceOpenApiDocumentAsync, buildApiReferencePageTitle, buildApiReferenceScalarCss, buildDocsAskAIContext, buildDocsSearchDocuments, buildDocsSitemapManifest, createAlgoliaSearchAdapter, createCustomSearchAdapter, createDocsAgentTraceContext, createDocsAgentTraceId, createDocsCloudAnalytics, createDocsMcpHttpHandler, createDocsMcpServer, createDocsSitemapResponse, createFilesystemDocsMcpSource, createMcpSearchAdapter, createSimpleSearchAdapter, createTypesenseSearchAdapter, emitDocsAgentTraceEvent, emitDocsAnalyticsEvent, emitDocsObservabilityEvent, formatDocsAskAIPackageHints, inferDocsAskAIPackageHints, isApiReferenceOpenApiRequest, normalizeDocsMcpRoute, normalizePromptProviderName, parsePromptStringArray, performDocsSearch, readDocsSitemapManifest, readDocsSitemapManifestFromContentMap, renderDocsSitemapMarkdown, renderDocsSitemapXml, resolveApiReferenceConfig, resolveApiReferenceOpenApiDiscovery, resolveApiReferenceRenderer, resolveAskAISearchRequestConfig, resolveDocsAnalyticsConfig, resolveDocsMcpConfig, resolveDocsObservabilityConfig, resolveDocsSitemapConfig, resolveDocsSitemapPageLastmod, resolveDocsSitemapRequest, resolvePromptProviderChoices, resolveSearchRequestConfig, runDocsMcpStdio, sanitizePromptText, serializeDocsIcon, serializeDocsIconRegistry, serializeOpenDocsProvider, serializeOpenDocsProviders, toDocsSitemapMarkdownUrl };
|
|
@@ -1349,7 +1349,7 @@ export const handle: Handle = async ({ event, resolve }) => {
|
|
|
1349
1349
|
});
|
|
1350
1350
|
}
|
|
1351
1351
|
|
|
1352
|
-
if ((method === "GET" || method === "HEAD") && isDocsLlmsTxtPublicRequest(event.url, config.llmsTxt)) {
|
|
1352
|
+
if ((method === "GET" || method === "HEAD") && isDocsLlmsTxtPublicRequest(event.url, config.llmsTxt, docsEntry)) {
|
|
1353
1353
|
const nativeResponse = await resolve(event);
|
|
1354
1354
|
if (nativeResponse.status !== 404) return nativeResponse;
|
|
1355
1355
|
}
|
|
@@ -1402,7 +1402,7 @@ const docsPublicHandle: Handle = async ({ event, resolve }) => {
|
|
|
1402
1402
|
});
|
|
1403
1403
|
}
|
|
1404
1404
|
|
|
1405
|
-
if ((method === "GET" || method === "HEAD") && isDocsLlmsTxtPublicRequest(event.url, docsConfig.llmsTxt)) {
|
|
1405
|
+
if ((method === "GET" || method === "HEAD") && isDocsLlmsTxtPublicRequest(event.url, docsConfig.llmsTxt, docsEntry)) {
|
|
1406
1406
|
const nativeResponse = await resolve(event);
|
|
1407
1407
|
if (nativeResponse.status !== 404) return nativeResponse;
|
|
1408
1408
|
}
|
|
@@ -1823,7 +1823,7 @@ export const onRequest: MiddlewareHandler = async (context, next) => {
|
|
|
1823
1823
|
});
|
|
1824
1824
|
}
|
|
1825
1825
|
|
|
1826
|
-
if ((method === "GET" || method === "HEAD") && isDocsLlmsTxtPublicRequest(context.url, config.llmsTxt)) {
|
|
1826
|
+
if ((method === "GET" || method === "HEAD") && isDocsLlmsTxtPublicRequest(context.url, config.llmsTxt, docsEntry)) {
|
|
1827
1827
|
const nativeResponse = await next();
|
|
1828
1828
|
if (nativeResponse.status !== 404) return nativeResponse;
|
|
1829
1829
|
}
|
|
@@ -1876,7 +1876,7 @@ const docsPublicMiddleware: MiddlewareHandler = async (context, next) => {
|
|
|
1876
1876
|
});
|
|
1877
1877
|
}
|
|
1878
1878
|
|
|
1879
|
-
if ((method === "GET" || method === "HEAD") && isDocsLlmsTxtPublicRequest(context.url, docsConfig.llmsTxt)) {
|
|
1879
|
+
if ((method === "GET" || method === "HEAD") && isDocsLlmsTxtPublicRequest(context.url, docsConfig.llmsTxt, docsEntry)) {
|
|
1880
1880
|
const nativeResponse = await next();
|
|
1881
1881
|
if (nativeResponse.status !== 404) return nativeResponse;
|
|
1882
1882
|
}
|
|
@@ -987,6 +987,8 @@ interface DocsMcpToolsConfig {
|
|
|
987
987
|
searchDocs?: boolean;
|
|
988
988
|
/** Expose a `get_navigation` tool for the docs tree. */
|
|
989
989
|
getNavigation?: boolean;
|
|
990
|
+
/** Expose a `get_code_examples` tool for fenced code blocks and their metadata. */
|
|
991
|
+
getCodeExamples?: boolean;
|
|
990
992
|
}
|
|
991
993
|
/**
|
|
992
994
|
* Built-in MCP server configuration.
|