@farming-labs/svelte 0.2.70 → 0.2.72

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 (2) hide show
  1. package/dist/server.js +27 -7
  2. package/package.json +2 -2
package/dist/server.js CHANGED
@@ -30,7 +30,7 @@
30
30
  import fs from "node:fs";
31
31
  import path from "node:path";
32
32
  import matter from "gray-matter";
33
- import { applySidebarFolderIndexBehavior, buildDocsAskAIContext, buildDocsAgentDiscoverySpec, buildDocsConfigMap, buildDocsDiagnostics, createDocsStandardsDiscoveryResponse, createDocsMarkdownResponse, createDocsRobotsResponse, createDocsSitemapResponse, createDocsAgentTraceContext, createDocsAgentTraceId, emitDocsAgentTraceEvent, emitDocsAnalyticsEvent, emitDocsTelemetryAgentSurfaceEvent, emitDocsTelemetryProjectEvent, formatDocsAskAIPackageHints, findDocsMarkdownPage, getDocsLlmsTxtMaxCharsIssue, getDocsAgentManifestLinkHeader, getDocsDiscoveryLinkHeader, isDocsAgentDiscoveryRequest, isDocsAgentsRequest, isDocsConfigRequest, isDocsDiagnosticsRequest, isDocsSkillRequest, normalizeDocsRelated, normalizePageAgentFrontmatter, parseDocsAgentFeedbackData, performDocsSearch, renderDocsMarkdownDocument, renderDocsLlmsTxt, renderDocsAgentsDocument, renderDocsSkillDocument, readDocsSitemapManifestFromContentMap, stripGeneratedAgentProvenance, resolveDocsAudienceMdxContent, resolveDocsAgentFeedbackConfig, resolveDocsAgentFeedbackRequest, resolvePageSidebarFolderIndexBehavior, resolveAskAISearchRequestConfig, resolveDocsSearchAudience, resolveSearchRequestConfig, resolveDocsI18n, resolveDocsLlmsTxtRequest, resolveDocsLocale, resolveDocsMarkdownRequest, resolveDocsMetadataBaseUrl, resolveDocsRequestApiRoute, resolveDocsPublishedAgentSkill, resolveDocsStandardsDiscoveryRequest, resolveDocsPath, resolvePageReadingTime, resolveReadingTimeOptions, resolveDocsSitemapPageLastmod, resolveDocsAgentsFormat, resolveDocsSkillFormat, inferDocsTelemetryAgentSurface, renderDocsPageStructuredDataJson, selectDocsLlmsTxtContent, validateDocsAgentFeedbackPayload, } from "@farming-labs/docs";
33
+ import { applySidebarFolderIndexBehavior, buildDocsAskAIContext, buildDocsAgentDiscoverySpec, buildDocsConfigMap, buildDocsDiagnostics, createDocsStandardsDiscoveryResponse, createDocsMarkdownResponse, createDocsRobotsResponse, createDocsSitemapResponse, createDocsAgentTraceContext, createDocsAgentTraceId, emitDocsAgentTraceEvent, emitDocsAnalyticsEvent, emitDocsTelemetryAgentSurfaceEvent, emitDocsTelemetryProjectEvent, formatDocsAskAIPackageHints, findDocsMarkdownPage, getDocsLlmsTxtMaxCharsIssue, getDocsAgentManifestLinkHeader, getDocsDiscoveryLinkHeader, isDocsAgentDiscoveryRequest, isDocsAgentsRequest, isDocsConfigRequest, isDocsDiagnosticsRequest, isDocsSkillRequest, normalizeDocsRelated, normalizePageAgentFrontmatter, parseDocsAgentFeedbackData, performDocsSearch, performDocsSearchWithMetadata, renderDocsMarkdownDocument, renderDocsLlmsTxt, renderDocsAgentsDocument, renderDocsSkillDocument, readDocsSitemapManifestFromContentMap, stripGeneratedAgentProvenance, resolveDocsAudienceMdxContent, resolveDocsAgentFeedbackConfig, resolveDocsAgentFeedbackRequest, resolvePageSidebarFolderIndexBehavior, resolveAskAISearchRequestConfig, resolveDocsSearchAudience, resolveDocsSearchFilters, resolveSearchRequestConfig, resolveDocsI18n, resolveDocsLlmsTxtRequest, resolveDocsLocale, resolveDocsMarkdownRequest, resolveDocsMetadataBaseUrl, resolveDocsRequestApiRoute, resolveDocsPublishedAgentSkill, resolveDocsStandardsDiscoveryRequest, resolveDocsPath, resolvePageReadingTime, resolveReadingTimeOptions, resolveDocsSitemapPageLastmod, resolveDocsAgentsFormat, resolveDocsSkillFormat, inferDocsTelemetryAgentSurface, renderDocsPageStructuredDataJson, selectDocsLlmsTxtContent, validateDocsAgentFeedbackPayload, } from "@farming-labs/docs";
34
34
  import { buildApiReferenceOpenApiDocumentAsync, createDocsCloudAskAIResponse, createDocsMcpHttpHandler, isDocsCloudAskAIProvider, readDocsSitemapManifest, resolveApiReferenceConfig, resolveDocsMcpConfig, resolveConfiguredAgentSkills, serializeDocsIconRegistry, serializeOpenDocsProviders, } from "@farming-labs/docs/server";
35
35
  import { loadDocsNavTree, loadDocsContent, flattenNavTree } from "./content.js";
36
36
  import { renderMarkdown } from "./markdown.js";
@@ -987,23 +987,43 @@ export function createDocsServer(config = {}) {
987
987
  });
988
988
  }
989
989
  const query = event.url.searchParams.get("query")?.trim();
990
+ const audience = resolveDocsSearchAudience(event.url.searchParams.get("audience"));
991
+ const filters = resolveDocsSearchFilters(event.url.searchParams);
992
+ const structured = event.url.searchParams.get("response") === "structured";
990
993
  if (!query) {
991
- return new Response(JSON.stringify([]), {
994
+ const searchResponse = structured
995
+ ? {
996
+ format: "docs-search.v1",
997
+ query: "",
998
+ audience,
999
+ filters,
1000
+ resultCount: 0,
1001
+ results: [],
1002
+ warnings: [],
1003
+ }
1004
+ : [];
1005
+ return new Response(JSON.stringify(searchResponse), {
992
1006
  headers: { "Content-Type": "application/json" },
993
1007
  });
994
1008
  }
995
1009
  const searchStartedAt = Date.now();
996
- const audience = resolveDocsSearchAudience(event.url.searchParams.get("audience"));
997
- const results = await performDocsSearch({
1010
+ const searchOptions = {
998
1011
  pages: getSearchIndex(ctx),
999
1012
  query,
1000
1013
  search: resolveSearchRequestConfig(config.search, event.request.url),
1001
1014
  audience,
1015
+ filters,
1002
1016
  locale: ctx.locale,
1003
1017
  pathname: event.url.searchParams.get("pathname") ?? undefined,
1004
1018
  siteTitle: llmsTitle,
1005
1019
  baseUrl: markdownMetadataBaseUrl || event.url.origin,
1006
- });
1020
+ };
1021
+ const searchResponse = structured
1022
+ ? await performDocsSearchWithMetadata(searchOptions)
1023
+ : await performDocsSearch(searchOptions);
1024
+ const resultCount = Array.isArray(searchResponse)
1025
+ ? searchResponse.length
1026
+ : searchResponse.resultCount;
1007
1027
  await emitDocsAnalyticsEvent(analytics, {
1008
1028
  type: "api_search",
1009
1029
  source: "server",
@@ -1014,12 +1034,12 @@ export function createDocsServer(config = {}) {
1014
1034
  properties: {
1015
1035
  queryLength: query.length,
1016
1036
  audience,
1017
- resultCount: results.length,
1037
+ resultCount,
1018
1038
  pathname: event.url.searchParams.get("pathname") ?? undefined,
1019
1039
  durationMs: Math.max(0, Date.now() - searchStartedAt),
1020
1040
  },
1021
1041
  });
1022
- return new Response(JSON.stringify(results), {
1042
+ return new Response(JSON.stringify(searchResponse), {
1023
1043
  headers: { "Content-Type": "application/json" },
1024
1044
  });
1025
1045
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@farming-labs/svelte",
3
- "version": "0.2.70",
3
+ "version": "0.2.72",
4
4
  "description": "SvelteKit adapter for @farming-labs/docs — content loading and navigation utilities",
5
5
  "keywords": [
6
6
  "docs",
@@ -56,7 +56,7 @@
56
56
  "devDependencies": {
57
57
  "@types/node": "^22.10.0",
58
58
  "typescript": "^5.9.3",
59
- "@farming-labs/docs": "0.2.70"
59
+ "@farming-labs/docs": "0.2.72"
60
60
  },
61
61
  "peerDependencies": {
62
62
  "@farming-labs/docs": "*"