blume 2.0.3 → 2.1.1

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 (607) hide show
  1. package/AGENTS.md +1 -0
  2. package/CHANGELOG.md +142 -0
  3. package/README.md +1 -1
  4. package/dist/cli/{chunk-5f86nr5m.js → chunk-073rdvgb.js} +21 -48
  5. package/dist/cli/{chunk-5f86nr5m.js.map → chunk-073rdvgb.js.map} +4 -5
  6. package/dist/cli/{chunk-ga0pf4aj.js → chunk-0n9xkp3d.js} +12 -3
  7. package/dist/cli/{chunk-ga0pf4aj.js.map → chunk-0n9xkp3d.js.map} +3 -3
  8. package/dist/cli/chunk-150jk7km.js +52 -0
  9. package/dist/cli/chunk-150jk7km.js.map +10 -0
  10. package/dist/cli/{chunk-9t7a85s3.js → chunk-313vnn40.js} +30 -19
  11. package/dist/cli/chunk-313vnn40.js.map +10 -0
  12. package/dist/cli/{chunk-tkacnehg.js → chunk-3v3ffbrj.js} +2 -2
  13. package/dist/cli/{chunk-q58y5e6a.js → chunk-3x6x3pph.js} +46 -24
  14. package/dist/cli/chunk-3x6x3pph.js.map +10 -0
  15. package/dist/cli/{chunk-1d7ve1dm.js → chunk-42t4jxdx.js} +37 -5
  16. package/dist/cli/chunk-42t4jxdx.js.map +12 -0
  17. package/dist/cli/{chunk-8ktnccpt.js → chunk-54ztw1nj.js} +21 -2
  18. package/dist/cli/chunk-54ztw1nj.js.map +10 -0
  19. package/dist/cli/{chunk-hm3vjy5s.js → chunk-5vjtgs6e.js} +28 -10
  20. package/dist/cli/{chunk-hm3vjy5s.js.map → chunk-5vjtgs6e.js.map} +4 -4
  21. package/dist/cli/chunk-66w9j7p6.js +322 -0
  22. package/dist/cli/chunk-66w9j7p6.js.map +14 -0
  23. package/dist/cli/{chunk-2hsdwb9n.js → chunk-7ppf1rva.js} +34 -18
  24. package/dist/cli/chunk-7ppf1rva.js.map +10 -0
  25. package/dist/cli/{chunk-r9rcc4w7.js → chunk-8y2kmjv8.js} +7 -7
  26. package/dist/cli/{chunk-r20tn01b.js → chunk-c1y538kd.js} +8 -2
  27. package/dist/cli/{chunk-r20tn01b.js.map → chunk-c1y538kd.js.map} +3 -3
  28. package/dist/cli/{chunk-2eytanqx.js → chunk-c887fj0s.js} +2 -2
  29. package/dist/cli/{chunk-p3v96n38.js → chunk-cfyg47zg.js} +16 -6
  30. package/dist/cli/chunk-cfyg47zg.js.map +10 -0
  31. package/dist/cli/chunk-cm89scdv.js +443 -0
  32. package/dist/cli/chunk-cm89scdv.js.map +11 -0
  33. package/dist/cli/{chunk-akbpwfxc.js → chunk-dzwehpy7.js} +2 -2
  34. package/dist/cli/{chunk-wrr3j9w9.js → chunk-e6atmn4h.js} +299 -72
  35. package/dist/cli/chunk-e6atmn4h.js.map +36 -0
  36. package/dist/cli/{chunk-tzmab476.js → chunk-e8xw9qkh.js} +8 -6
  37. package/dist/cli/{chunk-tzmab476.js.map → chunk-e8xw9qkh.js.map} +3 -3
  38. package/dist/cli/{chunk-6dsbexzp.js → chunk-e9q7a2ak.js} +17 -15
  39. package/dist/cli/{chunk-6dsbexzp.js.map → chunk-e9q7a2ak.js.map} +2 -2
  40. package/dist/cli/{chunk-pv29h0wf.js → chunk-ehweg4fr.js} +5155 -1249
  41. package/dist/cli/chunk-ehweg4fr.js.map +218 -0
  42. package/dist/cli/{chunk-c8chx29p.js → chunk-ep6nd0rn.js} +390 -318
  43. package/dist/cli/chunk-ep6nd0rn.js.map +36 -0
  44. package/dist/cli/{chunk-p73c0m7w.js → chunk-fdrkhpjy.js} +18 -15
  45. package/dist/cli/{chunk-p73c0m7w.js.map → chunk-fdrkhpjy.js.map} +3 -3
  46. package/dist/cli/{chunk-2z928egk.js → chunk-ft9vfys6.js} +5 -5
  47. package/dist/cli/{chunk-5m5nmvyq.js → chunk-gb420vvz.js} +316 -79
  48. package/dist/cli/chunk-gb420vvz.js.map +17 -0
  49. package/dist/cli/{chunk-vg9r4eb9.js → chunk-hebn0tpx.js} +86 -13
  50. package/dist/cli/chunk-hebn0tpx.js.map +14 -0
  51. package/dist/cli/{chunk-35d4wj9f.js → chunk-htrwgabr.js} +41 -23
  52. package/dist/cli/chunk-htrwgabr.js.map +15 -0
  53. package/dist/cli/{chunk-g4hq16wv.js → chunk-hx3xqnk9.js} +16 -14
  54. package/dist/cli/{chunk-g4hq16wv.js.map → chunk-hx3xqnk9.js.map} +2 -2
  55. package/dist/cli/chunk-j134vrp2.js +65 -0
  56. package/dist/cli/chunk-j134vrp2.js.map +10 -0
  57. package/dist/cli/{chunk-a58773jm.js → chunk-kma9f6sf.js} +2 -2
  58. package/dist/cli/chunk-kwrg63tm.js +31 -0
  59. package/dist/cli/chunk-kwrg63tm.js.map +10 -0
  60. package/dist/cli/{chunk-ey84smr6.js → chunk-mrcccgnh.js} +6 -6
  61. package/dist/cli/{chunk-ey84smr6.js.map → chunk-mrcccgnh.js.map} +1 -1
  62. package/dist/cli/{chunk-yfyb25rh.js → chunk-n0v7m8ry.js} +24 -8
  63. package/dist/cli/chunk-n0v7m8ry.js.map +14 -0
  64. package/dist/cli/{chunk-j85vccga.js → chunk-ncj7w596.js} +576 -367
  65. package/dist/cli/chunk-ncj7w596.js.map +35 -0
  66. package/dist/cli/{chunk-5xvm6tfj.js → chunk-nq1d20w2.js} +17 -15
  67. package/dist/cli/{chunk-5xvm6tfj.js.map → chunk-nq1d20w2.js.map} +2 -2
  68. package/dist/cli/{chunk-pehfxfta.js → chunk-nrns10mj.js} +6 -98
  69. package/dist/cli/chunk-nrns10mj.js.map +10 -0
  70. package/dist/cli/{chunk-crgn1q09.js → chunk-sds923fa.js} +4 -4
  71. package/dist/cli/chunk-t2m5j4pr.js +104 -0
  72. package/dist/cli/chunk-t2m5j4pr.js.map +11 -0
  73. package/dist/cli/{chunk-acanzt5p.js → chunk-tdqhyxfz.js} +6 -6
  74. package/dist/cli/chunk-tphac74f.js +126 -0
  75. package/dist/cli/chunk-tphac74f.js.map +11 -0
  76. package/dist/cli/chunk-w1r4vase.js +18 -0
  77. package/dist/cli/chunk-w1r4vase.js.map +10 -0
  78. package/dist/cli/{chunk-3em5wd2y.js → chunk-zccbjcj0.js} +4 -3
  79. package/dist/cli/{chunk-3em5wd2y.js.map → chunk-zccbjcj0.js.map} +2 -2
  80. package/dist/cli/index.js +31 -20
  81. package/dist/cli/index.js.map +5 -5
  82. package/dist/types/ai/agent-surface.d.ts +8 -7
  83. package/dist/types/ai/ai-catalog.d.ts +7 -0
  84. package/dist/types/ai/ask-context.d.ts +26 -0
  85. package/dist/types/ai/ask.d.ts +271 -58
  86. package/dist/types/ai/component-markdown.d.ts +2 -0
  87. package/dist/types/ai/index.d.ts +2 -2
  88. package/dist/types/ai/openapi-components.d.ts +4 -1
  89. package/dist/types/ai/site-skill.d.ts +26 -0
  90. package/dist/types/ai/skills.d.ts +16 -0
  91. package/dist/types/astro/integration.d.ts +9 -0
  92. package/dist/types/astro/markdown-negotiation.d.ts +3 -0
  93. package/dist/types/astro/pages.d.ts +10 -0
  94. package/dist/types/captcha/hcaptcha.d.ts +27 -0
  95. package/dist/types/captcha/index.d.ts +28 -0
  96. package/dist/types/captcha/schema.d.ts +29 -0
  97. package/dist/types/captcha/turnstile.d.ts +28 -0
  98. package/dist/types/cli/init/scaffold.d.ts +1 -1
  99. package/dist/types/components/content/api-field.d.ts +62 -0
  100. package/dist/types/components/content/api-page.d.ts +100 -0
  101. package/dist/types/components/layout/nav-utils.d.ts +26 -0
  102. package/dist/types/components/openapi/code-samples.d.ts +29 -0
  103. package/dist/types/components/openapi/helpers.d.ts +158 -0
  104. package/dist/types/components/openapi/security.d.ts +95 -0
  105. package/dist/types/components/openapi/snippets.d.ts +60 -0
  106. package/dist/types/consent/ethyca.d.ts +48 -0
  107. package/dist/types/consent/index.d.ts +37 -0
  108. package/dist/types/consent/native.d.ts +28 -0
  109. package/dist/types/consent/osano.d.ts +42 -0
  110. package/dist/types/consent/schema.d.ts +110 -0
  111. package/dist/types/core/changelog-index.d.ts +8 -0
  112. package/dist/types/core/config-input.d.ts +217 -23
  113. package/dist/types/core/data.d.ts +53 -4
  114. package/dist/types/core/footer.d.ts +8 -0
  115. package/dist/types/core/i18n-ui.d.ts +88 -0
  116. package/dist/types/core/includes.d.ts +8 -2
  117. package/dist/types/core/links.d.ts +8 -0
  118. package/dist/types/core/localizable.d.ts +7 -0
  119. package/dist/types/core/page-modes.d.ts +29 -0
  120. package/dist/types/core/probe.d.ts +2 -0
  121. package/dist/types/core/project-graph.d.ts +6 -0
  122. package/dist/types/core/redirect-patterns.d.ts +152 -0
  123. package/dist/types/core/related.d.ts +40 -0
  124. package/dist/types/core/schema.d.ts +670 -56
  125. package/dist/types/core/sources/cache.d.ts +3 -0
  126. package/dist/types/core/sources/contentful-rich-text.d.ts +11 -2
  127. package/dist/types/core/sources/contentful.d.ts +17 -1
  128. package/dist/types/core/sources/lexical.d.ts +5 -0
  129. package/dist/types/core/sources/normalize.d.ts +20 -1
  130. package/dist/types/core/sources/read.d.ts +5 -0
  131. package/dist/types/core/sources/remote.d.ts +37 -10
  132. package/dist/types/core/sources/sanity.d.ts +1 -1
  133. package/dist/types/core/types.d.ts +18 -1
  134. package/dist/types/core/variables.d.ts +42 -0
  135. package/dist/types/deploy/adapter-output.d.ts +2 -1
  136. package/dist/types/deploy/adapters/cloudflare.d.ts +7 -5
  137. package/dist/types/deploy/adapters/node.d.ts +58 -23
  138. package/dist/types/deploy/adapters/registry.d.ts +10 -0
  139. package/dist/types/deploy/adapters/types.d.ts +3 -2
  140. package/dist/types/deploy/node-headers.d.ts +13 -2
  141. package/dist/types/deploy/platforms/cloudflare.d.ts +15 -7
  142. package/dist/types/deploy/platforms/netlify.d.ts +7 -0
  143. package/dist/types/deploy/platforms/node.d.ts +3 -1
  144. package/dist/types/deploy/platforms/types.d.ts +18 -7
  145. package/dist/types/deploy/platforms/vercel.d.ts +26 -1
  146. package/dist/types/deploy/redirects.d.ts +55 -11
  147. package/dist/types/deploy/sitemap.d.ts +2 -1
  148. package/dist/types/deploy/vercel-negotiation.d.ts +51 -21
  149. package/dist/types/markdown/code-title.d.ts +17 -0
  150. package/dist/types/markdown/features.d.ts +3 -2
  151. package/dist/types/narration/build.d.ts +70 -0
  152. package/dist/types/narration/provider.d.ts +26 -0
  153. package/dist/types/narration/script.d.ts +154 -0
  154. package/dist/types/openapi/checks.d.ts +27 -0
  155. package/dist/types/openapi/graphql.d.ts +6 -0
  156. package/dist/types/openapi/model.d.ts +27 -10
  157. package/dist/types/openapi/overlay.d.ts +54 -0
  158. package/dist/types/openapi/parse.d.ts +16 -0
  159. package/dist/types/openapi/references.d.ts +30 -4
  160. package/dist/types/ratelimit/cloudflare.d.ts +39 -0
  161. package/dist/types/ratelimit/index.d.ts +27 -0
  162. package/dist/types/ratelimit/memory.d.ts +36 -0
  163. package/dist/types/ratelimit/schema.d.ts +119 -0
  164. package/dist/types/ratelimit/upstash.d.ts +46 -0
  165. package/dist/types/ratelimit/wrangler.d.ts +23 -0
  166. package/dist/types/reference/asyncapi.d.ts +10 -10
  167. package/dist/types/reference/graphql.d.ts +89 -11
  168. package/dist/types/reference/index.d.ts +1 -1
  169. package/dist/types/reference/openapi.d.ts +33 -12
  170. package/dist/types/reference/options.d.ts +82 -6
  171. package/dist/types/reference/scalar.d.ts +13 -0
  172. package/dist/types/reference/schema.d.ts +144 -36
  173. package/dist/types/search/adapters/registry.d.ts +3 -0
  174. package/dist/types/search/adapters/typesense.d.ts +14 -4
  175. package/dist/types/search/build.d.ts +3 -1
  176. package/dist/types/search/documents.d.ts +12 -1
  177. package/dist/types/search/orama-index.d.ts +13 -9
  178. package/dist/types/search/sync/algolia.d.ts +5 -2
  179. package/dist/types/search/sync/index.d.ts +3 -1
  180. package/dist/types/search/sync/typesense.d.ts +11 -7
  181. package/dist/types/seo/metatags.d.ts +20 -0
  182. package/dist/types/sources/contentful.d.ts +16 -0
  183. package/dist/types/sources/github-releases.d.ts +8 -1
  184. package/dist/types/sources/payload.d.ts +2 -0
  185. package/dist/types/sources/registry.d.ts +54 -0
  186. package/dist/types/sources/shared.d.ts +3 -0
  187. package/dist/types/sources/strapi.d.ts +2 -0
  188. package/docs/01-quickstart.mdx +4 -2
  189. package/docs/02-deployment.mdx +71 -17
  190. package/docs/03-upgrading.mdx +4 -4
  191. package/docs/04-migrating.mdx +1 -1
  192. package/docs/advanced/changelog.mdx +13 -2
  193. package/docs/advanced/skills.mdx +15 -1
  194. package/docs/cli/audit.mdx +51 -8
  195. package/docs/cli/doctor.mdx +5 -1
  196. package/docs/cli/evals.mdx +4 -4
  197. package/docs/cli/index.mdx +1 -0
  198. package/docs/cli/translate.mdx +1 -0
  199. package/docs/cli/validate.mdx +4 -3
  200. package/docs/configuration/analytics.mdx +3 -1
  201. package/docs/configuration/assistant.mdx +194 -38
  202. package/docs/configuration/consent.mdx +100 -0
  203. package/docs/configuration/customization.mdx +8 -6
  204. package/docs/configuration/export.mdx +5 -3
  205. package/docs/configuration/index.mdx +64 -5
  206. package/docs/configuration/meta.ts +3 -0
  207. package/docs/configuration/narration.mdx +119 -0
  208. package/docs/configuration/rate-limiting.mdx +90 -0
  209. package/docs/configuration/search.mdx +63 -12
  210. package/docs/configuration/theming.mdx +3 -1
  211. package/docs/content/components.mdx +108 -2
  212. package/docs/content/frontmatter.mdx +80 -2
  213. package/docs/content/i18n.mdx +39 -4
  214. package/docs/content/includes.mdx +16 -0
  215. package/docs/content/meta.mdx +1 -0
  216. package/docs/content/meta.ts +1 -0
  217. package/docs/content/navigation.mdx +32 -10
  218. package/docs/content/sources/contentful.mdx +35 -0
  219. package/docs/content/sources/custom.mdx +43 -0
  220. package/docs/content/sources/github-releases.mdx +39 -0
  221. package/docs/content/sources/index.mdx +91 -0
  222. package/docs/content/sources/meta.ts +16 -0
  223. package/docs/content/sources/notion.mdx +32 -0
  224. package/docs/content/sources/obsidian.mdx +37 -0
  225. package/docs/content/sources/payload.mdx +31 -0
  226. package/docs/content/sources/remote-mdx.mdx +44 -0
  227. package/docs/content/sources/sanity.mdx +29 -0
  228. package/docs/content/sources/strapi.mdx +32 -0
  229. package/docs/content/syntax.mdx +69 -4
  230. package/docs/content/variables.mdx +41 -0
  231. package/docs/discoverability/agent-discovery.mdx +29 -2
  232. package/docs/discoverability/index.mdx +2 -2
  233. package/docs/discoverability/json-api.mdx +2 -0
  234. package/docs/discoverability/llms-txt.mdx +2 -2
  235. package/docs/discoverability/markdown.mdx +3 -1
  236. package/docs/discoverability/mcp.mdx +4 -0
  237. package/docs/discoverability/metadata.mdx +17 -0
  238. package/docs/discoverability/sitemap-and-robots.mdx +1 -1
  239. package/docs/references/api-pages.mdx +74 -0
  240. package/docs/references/asyncapi.mdx +4 -2
  241. package/docs/references/graphql.mdx +14 -2
  242. package/docs/references/meta.ts +1 -1
  243. package/docs/references/openapi.mdx +148 -7
  244. package/docs/references/scalar.mdx +3 -1
  245. package/package.json +43 -8
  246. package/skills/blume/SKILL.md +3 -0
  247. package/skills/blume-migrate/SKILL.md +6 -6
  248. package/skills/blume-migrate/references/docusaurus.md +7 -7
  249. package/skills/blume-migrate/references/fumadocs.md +17 -13
  250. package/skills/blume-migrate/references/mintlify.md +37 -19
  251. package/skills/blume-migrate/references/nextra.md +10 -7
  252. package/skills/blume-migrate/references/starlight.md +11 -8
  253. package/skills/blume-migrate/scripts/mintlify-codemod.mjs +60 -14
  254. package/skills/blume-write-skill/SKILL.md +82 -0
  255. package/src/ai/agent-readability.ts +2 -1
  256. package/src/ai/agent-surface.ts +9 -7
  257. package/src/ai/ai-catalog.ts +6 -3
  258. package/src/ai/ask-context.ts +103 -20
  259. package/src/ai/ask-data.ts +6 -0
  260. package/src/ai/ask-limits.ts +13 -0
  261. package/src/ai/ask-tools.ts +142 -0
  262. package/src/ai/ask.ts +354 -76
  263. package/src/ai/changelog-markdown.ts +11 -6
  264. package/src/ai/component-markdown.ts +76 -1
  265. package/src/ai/cors.ts +14 -3
  266. package/src/ai/index.ts +12 -0
  267. package/src/ai/llms.ts +6 -2
  268. package/src/ai/markdown.ts +2 -1
  269. package/src/ai/mcp/data.ts +6 -0
  270. package/src/ai/mcp/query.ts +14 -6
  271. package/src/ai/openapi-components.ts +36 -6
  272. package/src/ai/relative-links.ts +4 -38
  273. package/src/ai/site-skill.ts +274 -0
  274. package/src/ai/skills.ts +35 -2
  275. package/src/ai/write-skill.ts +97 -0
  276. package/src/astro/generate.ts +210 -66
  277. package/src/astro/index.ts +1 -0
  278. package/src/astro/integration.ts +42 -4
  279. package/src/astro/markdown-negotiation.ts +3 -0
  280. package/src/astro/module-types.ts +9 -1
  281. package/src/astro/pages.ts +23 -0
  282. package/src/astro/templates.ts +406 -108
  283. package/src/astro/variables.ts +31 -0
  284. package/src/audit/catalog.ts +38 -3
  285. package/src/audit/checks/contrast.ts +183 -0
  286. package/src/audit/checks/i18n.ts +2 -3
  287. package/src/audit/checks/indexability.ts +2 -3
  288. package/src/audit/checks/links.ts +19 -13
  289. package/src/audit/checks/network.ts +110 -6
  290. package/src/audit/checks/redirects.ts +6 -4
  291. package/src/audit/checks/robots.ts +58 -2
  292. package/src/audit/checks/sitemap.ts +2 -3
  293. package/src/audit/redirects.ts +46 -15
  294. package/src/audit/run.ts +5 -0
  295. package/src/audit/types.ts +4 -1
  296. package/src/audit/url.ts +14 -5
  297. package/src/blume-modules.d.ts +12 -1
  298. package/src/captcha/client.ts +152 -0
  299. package/src/captcha/hcaptcha.ts +36 -0
  300. package/src/captcha/index.ts +28 -0
  301. package/src/captcha/schema.ts +32 -0
  302. package/src/captcha/turnstile.ts +38 -0
  303. package/src/captcha/verify.ts +71 -0
  304. package/src/cli/args.ts +51 -0
  305. package/src/cli/build-failure.ts +23 -0
  306. package/src/cli/command-meta.ts +5 -0
  307. package/src/cli/commands/audit.ts +10 -1
  308. package/src/cli/commands/dev.ts +18 -2
  309. package/src/cli/commands/doctor.ts +67 -28
  310. package/src/cli/commands/eval.ts +36 -4
  311. package/src/cli/commands/init.ts +6 -4
  312. package/src/cli/commands/skill.ts +96 -0
  313. package/src/cli/commands/validate.ts +10 -1
  314. package/src/cli/index.ts +5 -0
  315. package/src/cli/init/scaffold.ts +3 -3
  316. package/src/cli/prepare.ts +6 -3
  317. package/src/cli/required-secrets.ts +72 -30
  318. package/src/components/BlumePage.astro +2 -0
  319. package/src/components/content/ApiEndpoint.astro +18 -0
  320. package/src/components/content/ApiField.astro +79 -0
  321. package/src/components/content/ApiPlayground.astro +66 -0
  322. package/src/components/content/ApiRail.astro +19 -0
  323. package/src/components/content/Color.astro +1 -0
  324. package/src/components/content/FileTree.astro +1 -0
  325. package/src/components/content/GithubInfo.astro +1 -0
  326. package/src/components/content/Panel.astro +1 -0
  327. package/src/components/content/ParamField.astro +25 -0
  328. package/src/components/content/RequestExample.astro +17 -0
  329. package/src/components/content/ResponseExample.astro +17 -0
  330. package/src/components/content/ResponseField.astro +32 -0
  331. package/src/components/content/Step.astro +1 -0
  332. package/src/components/content/Tile.astro +1 -0
  333. package/src/components/content/Tooltip.astro +1 -0
  334. package/src/components/content/Tree.astro +1 -0
  335. package/src/components/content/TypeTable.astro +4 -1
  336. package/src/components/content/View.astro +21 -0
  337. package/src/components/content/ViewSwitcher.astro +168 -0
  338. package/src/components/content/api-field.ts +103 -0
  339. package/src/components/content/api-page.ts +248 -0
  340. package/src/components/content/mermaid-element.ts +15 -1
  341. package/src/components/content/view-switcher.ts +71 -0
  342. package/src/components/index.ts +2 -0
  343. package/src/components/islands/Assistant.astro +10 -1
  344. package/src/components/islands/assistant.tsx +104 -14
  345. package/src/components/islands/code-question.ts +62 -0
  346. package/src/components/islands/hooks.ts +136 -21
  347. package/src/components/islands/support-link.ts +68 -0
  348. package/src/components/layout/Analytics.astro +11 -2
  349. package/src/components/layout/Banner.astro +14 -10
  350. package/src/components/layout/Breadcrumbs.astro +6 -2
  351. package/src/components/layout/ConsentBanner.astro +62 -0
  352. package/src/components/layout/ConsentHead.astro +38 -0
  353. package/src/components/layout/Directory.astro +94 -0
  354. package/src/components/layout/DrawerSwitchers.astro +51 -0
  355. package/src/components/layout/Empty.astro +2 -2
  356. package/src/components/layout/Header.astro +122 -80
  357. package/src/components/layout/LanguageSwitcher.astro +48 -15
  358. package/src/components/layout/NarrationPlayer.astro +1085 -0
  359. package/src/components/layout/NavSelector.astro +33 -7
  360. package/src/components/layout/PageActions.astro +139 -24
  361. package/src/components/layout/PageFeedback.astro +54 -49
  362. package/src/components/layout/PageLayout.astro +71 -3
  363. package/src/components/layout/ReferenceLayout.astro +17 -6
  364. package/src/components/layout/RelatedPages.astro +42 -0
  365. package/src/components/layout/RootLayout.astro +318 -47
  366. package/src/components/layout/Search.astro +47 -19
  367. package/src/components/layout/SiteFooter.astro +124 -0
  368. package/src/components/layout/SiteMetatags.astro +16 -0
  369. package/src/components/layout/TableOfContents.astro +24 -17
  370. package/src/components/layout/consent/native.ts +79 -0
  371. package/src/components/layout/consent/types.ts +37 -0
  372. package/src/components/layout/footer-links.ts +53 -0
  373. package/src/components/layout/footer-socials.ts +87 -0
  374. package/src/components/layout/head-scripts.ts +6 -1
  375. package/src/components/layout/locale-redirect.ts +107 -0
  376. package/src/components/layout/nav-utils.ts +83 -0
  377. package/src/components/layout/page-feedback.ts +96 -0
  378. package/src/components/layout/search/algolia.ts +10 -1
  379. package/src/components/layout/search/analytics.ts +126 -0
  380. package/src/components/layout/search/endpoint.ts +48 -5
  381. package/src/components/layout/search/flexsearch.ts +17 -5
  382. package/src/components/layout/search/orama-cloud.ts +26 -14
  383. package/src/components/layout/search/pagefind.ts +114 -5
  384. package/src/components/layout/search/types.ts +32 -0
  385. package/src/components/layout/search/typesense.ts +19 -3
  386. package/src/components/openapi/AsyncApiOperation.astro +14 -7
  387. package/src/components/openapi/Authorization.astro +10 -0
  388. package/src/components/openapi/GraphqlOperation.astro +5 -0
  389. package/src/components/openapi/Operation.astro +184 -13
  390. package/src/components/openapi/ParametersTable.astro +8 -4
  391. package/src/components/openapi/Playground.astro +7 -1
  392. package/src/components/openapi/RequestBody.astro +24 -5
  393. package/src/components/openapi/RequestPanel.astro +59 -7
  394. package/src/components/openapi/Responses.astro +7 -4
  395. package/src/components/openapi/SchemaTable.astro +15 -3
  396. package/src/components/openapi/async-snippets.ts +65 -9
  397. package/src/components/openapi/async.ts +123 -29
  398. package/src/components/openapi/code-samples.ts +97 -0
  399. package/src/components/openapi/graphql-helpers.ts +35 -12
  400. package/src/components/openapi/helpers.ts +36 -2
  401. package/src/components/openapi/message-model.ts +54 -11
  402. package/src/components/openapi/message.ts +14 -4
  403. package/src/components/openapi/operation-model.ts +16 -7
  404. package/src/components/openapi/playground-client.ts +24 -5
  405. package/src/components/openapi/playground-schema.ts +1 -1
  406. package/src/components/openapi/schema-tree.ts +44 -14
  407. package/src/components/openapi/security.ts +16 -3
  408. package/src/components/openapi/snippets.ts +873 -10
  409. package/src/components/openapi/validate-json.ts +4 -3
  410. package/src/components/props.ts +6 -0
  411. package/src/consent/client.ts +95 -0
  412. package/src/consent/clients.ts +19 -0
  413. package/src/consent/ethyca.ts +71 -0
  414. package/src/consent/head.ts +24 -0
  415. package/src/consent/index.ts +37 -0
  416. package/src/consent/init.ts +29 -0
  417. package/src/consent/native.ts +36 -0
  418. package/src/consent/osano.ts +59 -0
  419. package/src/consent/schema.ts +30 -0
  420. package/src/core/builtin-tags.ts +5 -0
  421. package/src/core/changelog-index.ts +31 -1
  422. package/src/core/client-address.ts +19 -0
  423. package/src/core/component-diagnostics.ts +53 -0
  424. package/src/core/component-overrides.ts +32 -0
  425. package/src/core/config-input.ts +225 -23
  426. package/src/core/data.ts +46 -4
  427. package/src/core/diagnostics.ts +8 -2
  428. package/src/core/footer.ts +26 -0
  429. package/src/core/graph.ts +39 -36
  430. package/src/core/i18n-ui.ts +84 -2
  431. package/src/core/includes.ts +21 -4
  432. package/src/core/links.ts +63 -19
  433. package/src/core/localizable.ts +26 -0
  434. package/src/core/navigation.ts +43 -12
  435. package/src/core/page-modes.ts +56 -0
  436. package/src/core/probe.ts +26 -6
  437. package/src/core/project-graph.ts +163 -16
  438. package/src/core/redirect-patterns.ts +520 -0
  439. package/src/core/related.ts +131 -0
  440. package/src/core/schema.ts +339 -66
  441. package/src/core/sources/cache.ts +6 -0
  442. package/src/core/sources/contentful-rich-text.ts +29 -6
  443. package/src/core/sources/contentful.ts +135 -25
  444. package/src/core/sources/filesystem.ts +26 -4
  445. package/src/core/sources/github-releases.ts +12 -1
  446. package/src/core/sources/lexical.ts +15 -10
  447. package/src/core/sources/mdx-remote.ts +62 -10
  448. package/src/core/sources/normalize.ts +228 -41
  449. package/src/core/sources/notion.ts +7 -1
  450. package/src/core/sources/obsidian.ts +16 -3
  451. package/src/core/sources/payload.ts +38 -15
  452. package/src/core/sources/read.ts +8 -3
  453. package/src/core/sources/remote.ts +72 -15
  454. package/src/core/sources/resolve.ts +11 -1
  455. package/src/core/sources/sanity.ts +43 -25
  456. package/src/core/sources/strapi.ts +2 -2
  457. package/src/core/types.ts +19 -1
  458. package/src/core/ui-packs/ar.ts +44 -0
  459. package/src/core/ui-packs/bg.ts +46 -0
  460. package/src/core/ui-packs/bn.ts +44 -0
  461. package/src/core/ui-packs/ca.ts +47 -0
  462. package/src/core/ui-packs/cs.ts +45 -0
  463. package/src/core/ui-packs/da.ts +46 -0
  464. package/src/core/ui-packs/de.ts +47 -0
  465. package/src/core/ui-packs/el.ts +46 -0
  466. package/src/core/ui-packs/es.ts +47 -0
  467. package/src/core/ui-packs/fa.ts +46 -0
  468. package/src/core/ui-packs/fi.ts +46 -0
  469. package/src/core/ui-packs/fr.ts +47 -0
  470. package/src/core/ui-packs/he.ts +44 -0
  471. package/src/core/ui-packs/hi.ts +45 -0
  472. package/src/core/ui-packs/hr.ts +46 -0
  473. package/src/core/ui-packs/hu.ts +45 -0
  474. package/src/core/ui-packs/id.ts +46 -0
  475. package/src/core/ui-packs/it.ts +46 -0
  476. package/src/core/ui-packs/ja.ts +46 -0
  477. package/src/core/ui-packs/ko.ts +45 -0
  478. package/src/core/ui-packs/nl.ts +47 -0
  479. package/src/core/ui-packs/no.ts +45 -0
  480. package/src/core/ui-packs/pl.ts +46 -0
  481. package/src/core/ui-packs/pt-br.ts +47 -0
  482. package/src/core/ui-packs/pt.ts +46 -0
  483. package/src/core/ui-packs/ro.ts +46 -0
  484. package/src/core/ui-packs/ru.ts +46 -0
  485. package/src/core/ui-packs/sk.ts +45 -0
  486. package/src/core/ui-packs/sr.ts +46 -0
  487. package/src/core/ui-packs/sv.ts +45 -0
  488. package/src/core/ui-packs/th.ts +44 -0
  489. package/src/core/ui-packs/tr.ts +46 -0
  490. package/src/core/ui-packs/uk.ts +46 -0
  491. package/src/core/ui-packs/vi.ts +46 -0
  492. package/src/core/ui-packs/zh-tw.ts +44 -0
  493. package/src/core/ui-packs/zh.ts +44 -0
  494. package/src/core/variables.ts +103 -0
  495. package/src/deploy/adapter-output.ts +7 -2
  496. package/src/deploy/adapters/cloudflare.ts +7 -5
  497. package/src/deploy/adapters/node.ts +47 -9
  498. package/src/deploy/adapters/types.ts +7 -3
  499. package/src/deploy/artifacts.ts +79 -9
  500. package/src/deploy/cloudflare-negotiation.ts +35 -5
  501. package/src/deploy/headers.ts +2 -1
  502. package/src/deploy/node-headers.ts +63 -9
  503. package/src/deploy/platforms/cloudflare.ts +45 -9
  504. package/src/deploy/platforms/netlify.ts +35 -2
  505. package/src/deploy/platforms/node.ts +12 -2
  506. package/src/deploy/platforms/types.ts +21 -7
  507. package/src/deploy/platforms/vercel.ts +149 -17
  508. package/src/deploy/redirects.ts +151 -24
  509. package/src/deploy/rss.ts +3 -1
  510. package/src/deploy/sitemap.ts +39 -5
  511. package/src/deploy/vercel-negotiation.ts +326 -102
  512. package/src/eval/agents.ts +18 -1
  513. package/src/eval/prompts.ts +6 -3
  514. package/src/eval/report.ts +34 -13
  515. package/src/eval/run.ts +5 -0
  516. package/src/markdown/api-rail.ts +259 -0
  517. package/src/markdown/code-title.ts +35 -9
  518. package/src/markdown/features.ts +3 -2
  519. package/src/markdown/fence-meta.ts +2 -0
  520. package/src/markdown/include.ts +11 -1
  521. package/src/markdown/index.ts +28 -5
  522. package/src/markdown/math.ts +4 -4
  523. package/src/markdown/relative-links.ts +3 -2
  524. package/src/markdown/variables.ts +56 -0
  525. package/src/markdown/views.ts +82 -0
  526. package/src/narration/build.ts +412 -0
  527. package/src/narration/player.ts +249 -0
  528. package/src/narration/provider.ts +29 -0
  529. package/src/narration/script.ts +592 -0
  530. package/src/og/card.ts +7 -6
  531. package/src/openapi/checks.ts +273 -0
  532. package/src/openapi/graphql-build.ts +21 -0
  533. package/src/openapi/graphql.ts +11 -0
  534. package/src/openapi/model.ts +72 -27
  535. package/src/openapi/overlay.ts +256 -0
  536. package/src/openapi/parse.ts +182 -4
  537. package/src/openapi/references.ts +64 -8
  538. package/src/openapi/render-mdx.ts +5 -1
  539. package/src/openapi/scalar.ts +40 -6
  540. package/src/openapi/source.ts +40 -15
  541. package/src/ratelimit/cloudflare.ts +54 -0
  542. package/src/ratelimit/index.ts +30 -0
  543. package/src/ratelimit/memory.ts +45 -0
  544. package/src/ratelimit/runtime.ts +247 -0
  545. package/src/ratelimit/schema.ts +28 -0
  546. package/src/ratelimit/upstash.ts +60 -0
  547. package/src/ratelimit/wrangler.ts +70 -0
  548. package/src/reference/asyncapi.ts +2 -2
  549. package/src/reference/graphql.ts +20 -3
  550. package/src/reference/index.ts +1 -0
  551. package/src/reference/openapi.ts +21 -7
  552. package/src/reference/options.ts +80 -8
  553. package/src/reference/scalar.ts +33 -8
  554. package/src/registry/eject.ts +23 -5
  555. package/src/registry/registry.ts +7 -0
  556. package/src/search/adapters/locale-scope.ts +30 -0
  557. package/src/search/adapters/typesense.ts +14 -4
  558. package/src/search/build.ts +21 -3
  559. package/src/search/documents.ts +26 -2
  560. package/src/search/orama-index.ts +191 -34
  561. package/src/search/pagefind-ranking.ts +39 -0
  562. package/src/search/source-pages.ts +29 -0
  563. package/src/search/sync/algolia.ts +111 -10
  564. package/src/search/sync/index.ts +52 -13
  565. package/src/search/sync/orama-cloud.ts +3 -0
  566. package/src/search/sync/typesense.ts +76 -26
  567. package/src/seo/metatags.ts +67 -0
  568. package/src/sources/contentful.ts +12 -0
  569. package/src/sources/github-releases.ts +7 -1
  570. package/src/sources/shared.ts +3 -0
  571. package/src/theme/chrome-icons.ts +1 -0
  572. package/src/theme/color.ts +500 -0
  573. package/src/theme/entry.ts +85 -6
  574. package/src/theme/palette.ts +121 -45
  575. package/src/translate/prompts.ts +1 -0
  576. package/src/translate/validate.ts +31 -3
  577. package/src/upgrade/upgrade.ts +4 -171
  578. package/dist/cli/chunk-1d7ve1dm.js.map +0 -12
  579. package/dist/cli/chunk-2hsdwb9n.js.map +0 -10
  580. package/dist/cli/chunk-35d4wj9f.js.map +0 -15
  581. package/dist/cli/chunk-364znk6q.js +0 -75
  582. package/dist/cli/chunk-364znk6q.js.map +0 -11
  583. package/dist/cli/chunk-5m5nmvyq.js.map +0 -13
  584. package/dist/cli/chunk-8ktnccpt.js.map +0 -10
  585. package/dist/cli/chunk-9t7a85s3.js.map +0 -10
  586. package/dist/cli/chunk-b07cmahc.js +0 -145
  587. package/dist/cli/chunk-b07cmahc.js.map +0 -11
  588. package/dist/cli/chunk-c8chx29p.js.map +0 -36
  589. package/dist/cli/chunk-e04dxsz1.js +0 -39
  590. package/dist/cli/chunk-e04dxsz1.js.map +0 -10
  591. package/dist/cli/chunk-j85vccga.js.map +0 -36
  592. package/dist/cli/chunk-p3v96n38.js.map +0 -10
  593. package/dist/cli/chunk-pehfxfta.js.map +0 -10
  594. package/dist/cli/chunk-pv29h0wf.js.map +0 -190
  595. package/dist/cli/chunk-q58y5e6a.js.map +0 -10
  596. package/dist/cli/chunk-vg9r4eb9.js.map +0 -14
  597. package/dist/cli/chunk-wrr3j9w9.js.map +0 -35
  598. package/dist/cli/chunk-yfyb25rh.js.map +0 -14
  599. package/docs/content/sources.mdx +0 -334
  600. /package/dist/cli/{chunk-tkacnehg.js.map → chunk-3v3ffbrj.js.map} +0 -0
  601. /package/dist/cli/{chunk-r9rcc4w7.js.map → chunk-8y2kmjv8.js.map} +0 -0
  602. /package/dist/cli/{chunk-2eytanqx.js.map → chunk-c887fj0s.js.map} +0 -0
  603. /package/dist/cli/{chunk-akbpwfxc.js.map → chunk-dzwehpy7.js.map} +0 -0
  604. /package/dist/cli/{chunk-2z928egk.js.map → chunk-ft9vfys6.js.map} +0 -0
  605. /package/dist/cli/{chunk-a58773jm.js.map → chunk-kma9f6sf.js.map} +0 -0
  606. /package/dist/cli/{chunk-crgn1q09.js.map → chunk-sds923fa.js.map} +0 -0
  607. /package/dist/cli/{chunk-acanzt5p.js.map → chunk-tdqhyxfz.js.map} +0 -0
@@ -26,7 +26,7 @@ export declare const referenceAdapterSchema: z.ZodPipe<z.ZodDiscriminatedUnion<[
26
26
  seoDescriptionSuffix: z.ZodDefault<z.ZodBoolean>;
27
27
  spec: z.ZodString;
28
28
  }, z.core.$strict>>>;
29
- codeSamples: z.ZodDefault<z.ZodArray<z.ZodString>>;
29
+ codeSamples: z.ZodDefault<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodArray<z.ZodString>]>>;
30
30
  playground: z.ZodPipe<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodObject<{
31
31
  enabled: z.ZodDefault<z.ZodBoolean>;
32
32
  proxy: z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
@@ -50,14 +50,14 @@ export declare const referenceAdapterSchema: z.ZodPipe<z.ZodDiscriminatedUnion<[
50
50
  label?: string | undefined;
51
51
  route?: string | undefined;
52
52
  }[];
53
- codeSamples: string[];
53
+ codeSamples: false | string[];
54
54
  playground: {
55
55
  enabled: boolean;
56
56
  proxy: string | boolean;
57
57
  };
58
58
  route: string;
59
59
  spec?: string | undefined;
60
- }, "spec">, {
60
+ }, "spec" | "overlays">, {
61
61
  expandSchemas: boolean;
62
62
  sources: {
63
63
  includeInLlms: boolean;
@@ -68,7 +68,7 @@ export declare const referenceAdapterSchema: z.ZodPipe<z.ZodDiscriminatedUnion<[
68
68
  label?: string | undefined;
69
69
  route?: string | undefined;
70
70
  }[];
71
- codeSamples: string[];
71
+ codeSamples: false | string[];
72
72
  playground: {
73
73
  enabled: boolean;
74
74
  proxy: string | boolean;
@@ -81,6 +81,15 @@ export declare const referenceAdapterSchema: z.ZodPipe<z.ZodDiscriminatedUnion<[
81
81
  }, z.core.$strict>, z.ZodObject<{
82
82
  kind: z.ZodLiteral<"graphql">;
83
83
  options: z.ZodPipe<z.ZodObject<{
84
+ auth: z.ZodOptional<z.ZodObject<{
85
+ method: z.ZodEnum<{
86
+ none: "none";
87
+ key: "key";
88
+ bearer: "bearer";
89
+ basic: "basic";
90
+ }>;
91
+ name: z.ZodOptional<z.ZodString>;
92
+ }, z.core.$strict>>;
84
93
  endpoint: z.ZodOptional<z.ZodString>;
85
94
  sources: z.ZodDefault<z.ZodArray<z.ZodObject<{
86
95
  includeInLlms: z.ZodDefault<z.ZodBoolean>;
@@ -90,9 +99,18 @@ export declare const referenceAdapterSchema: z.ZodPipe<z.ZodDiscriminatedUnion<[
90
99
  route: z.ZodOptional<z.ZodString>;
91
100
  seoDescriptionSuffix: z.ZodDefault<z.ZodBoolean>;
92
101
  spec: z.ZodString;
102
+ auth: z.ZodOptional<z.ZodObject<{
103
+ method: z.ZodEnum<{
104
+ none: "none";
105
+ key: "key";
106
+ bearer: "bearer";
107
+ basic: "basic";
108
+ }>;
109
+ name: z.ZodOptional<z.ZodString>;
110
+ }, z.core.$strict>>;
93
111
  endpoint: z.ZodOptional<z.ZodString>;
94
112
  }, z.core.$strict>>>;
95
- codeSamples: z.ZodDefault<z.ZodArray<z.ZodString>>;
113
+ codeSamples: z.ZodDefault<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodArray<z.ZodString>]>>;
96
114
  playground: z.ZodPipe<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodObject<{
97
115
  enabled: z.ZodDefault<z.ZodBoolean>;
98
116
  proxy: z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
@@ -114,17 +132,25 @@ export declare const referenceAdapterSchema: z.ZodPipe<z.ZodDiscriminatedUnion<[
114
132
  spec: string;
115
133
  label?: string | undefined;
116
134
  route?: string | undefined;
135
+ auth?: {
136
+ method: "none" | "key" | "bearer" | "basic";
137
+ name?: string | undefined;
138
+ } | undefined;
117
139
  endpoint?: string | undefined;
118
140
  }[];
119
- codeSamples: string[];
141
+ codeSamples: false | string[];
120
142
  playground: {
121
143
  enabled: boolean;
122
144
  proxy: string | boolean;
123
145
  };
124
146
  route: string;
147
+ auth?: {
148
+ method: "none" | "key" | "bearer" | "basic";
149
+ name?: string | undefined;
150
+ } | undefined;
125
151
  endpoint?: string | undefined;
126
152
  spec?: string | undefined;
127
- }, "spec">, {
153
+ }, "spec" | "overlays">, {
128
154
  sources: {
129
155
  includeInLlms: boolean;
130
156
  includeInSearch: boolean;
@@ -133,14 +159,22 @@ export declare const referenceAdapterSchema: z.ZodPipe<z.ZodDiscriminatedUnion<[
133
159
  spec: string;
134
160
  label?: string | undefined;
135
161
  route?: string | undefined;
162
+ auth?: {
163
+ method: "none" | "key" | "bearer" | "basic";
164
+ name?: string | undefined;
165
+ } | undefined;
136
166
  endpoint?: string | undefined;
137
167
  }[];
138
- codeSamples: string[];
168
+ codeSamples: false | string[];
139
169
  playground: {
140
170
  enabled: boolean;
141
171
  proxy: string | boolean;
142
172
  };
143
173
  route: string;
174
+ auth?: {
175
+ method: "none" | "key" | "bearer" | "basic";
176
+ name?: string | undefined;
177
+ } | undefined;
144
178
  endpoint?: string | undefined;
145
179
  spec?: string | undefined;
146
180
  }>>;
@@ -150,6 +184,7 @@ export declare const referenceAdapterSchema: z.ZodPipe<z.ZodDiscriminatedUnion<[
150
184
  kind: z.ZodLiteral<"openapi">;
151
185
  options: z.ZodPipe<z.ZodObject<{
152
186
  expandSchemas: z.ZodDefault<z.ZodBoolean>;
187
+ overlays: z.ZodOptional<z.ZodArray<z.ZodString>>;
153
188
  sources: z.ZodDefault<z.ZodArray<z.ZodObject<{
154
189
  includeInLlms: z.ZodDefault<z.ZodBoolean>;
155
190
  includeInSearch: z.ZodDefault<z.ZodBoolean>;
@@ -158,8 +193,9 @@ export declare const referenceAdapterSchema: z.ZodPipe<z.ZodDiscriminatedUnion<[
158
193
  route: z.ZodOptional<z.ZodString>;
159
194
  seoDescriptionSuffix: z.ZodDefault<z.ZodBoolean>;
160
195
  spec: z.ZodString;
196
+ overlays: z.ZodDefault<z.ZodArray<z.ZodString>>;
161
197
  }, z.core.$strict>>>;
162
- codeSamples: z.ZodDefault<z.ZodArray<z.ZodString>>;
198
+ codeSamples: z.ZodDefault<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodArray<z.ZodString>]>>;
163
199
  playground: z.ZodPipe<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodObject<{
164
200
  enabled: z.ZodDefault<z.ZodBoolean>;
165
201
  proxy: z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
@@ -180,17 +216,19 @@ export declare const referenceAdapterSchema: z.ZodPipe<z.ZodDiscriminatedUnion<[
180
216
  noindex: boolean;
181
217
  seoDescriptionSuffix: boolean;
182
218
  spec: string;
219
+ overlays: string[];
183
220
  label?: string | undefined;
184
221
  route?: string | undefined;
185
222
  }[];
186
- codeSamples: string[];
223
+ codeSamples: false | string[];
187
224
  playground: {
188
225
  enabled: boolean;
189
226
  proxy: string | boolean;
190
227
  };
191
228
  route: string;
229
+ overlays?: string[] | undefined;
192
230
  spec?: string | undefined;
193
- }, "spec">, {
231
+ }, "spec" | "overlays">, {
194
232
  expandSchemas: boolean;
195
233
  sources: {
196
234
  includeInLlms: boolean;
@@ -198,15 +236,17 @@ export declare const referenceAdapterSchema: z.ZodPipe<z.ZodDiscriminatedUnion<[
198
236
  noindex: boolean;
199
237
  seoDescriptionSuffix: boolean;
200
238
  spec: string;
239
+ overlays: string[];
201
240
  label?: string | undefined;
202
241
  route?: string | undefined;
203
242
  }[];
204
- codeSamples: string[];
243
+ codeSamples: false | string[];
205
244
  playground: {
206
245
  enabled: boolean;
207
246
  proxy: string | boolean;
208
247
  };
209
248
  route: string;
249
+ overlays?: string[] | undefined;
210
250
  spec?: string | undefined;
211
251
  }>>;
212
252
  requiredSecrets: z.ZodArray<z.ZodString>;
@@ -214,10 +254,12 @@ export declare const referenceAdapterSchema: z.ZodPipe<z.ZodDiscriminatedUnion<[
214
254
  }, z.core.$strict>, z.ZodObject<{
215
255
  kind: z.ZodLiteral<"scalar">;
216
256
  options: z.ZodPipe<z.ZodObject<{
257
+ overlays: z.ZodOptional<z.ZodArray<z.ZodString>>;
217
258
  route: z.ZodDefault<z.ZodString>;
218
259
  sources: z.ZodDefault<z.ZodArray<z.ZodObject<{
219
260
  label: z.ZodOptional<z.ZodString>;
220
261
  noindex: z.ZodDefault<z.ZodBoolean>;
262
+ overlays: z.ZodDefault<z.ZodArray<z.ZodString>>;
221
263
  route: z.ZodOptional<z.ZodString>;
222
264
  spec: z.ZodString;
223
265
  }, z.core.$strict>>>;
@@ -228,10 +270,12 @@ export declare const referenceAdapterSchema: z.ZodPipe<z.ZodDiscriminatedUnion<[
228
270
  route: string;
229
271
  sources: {
230
272
  noindex: boolean;
273
+ overlays: string[];
231
274
  spec: string;
232
275
  label?: string | undefined;
233
276
  route?: string | undefined;
234
277
  }[];
278
+ overlays?: string[] | undefined;
235
279
  spec?: string | undefined;
236
280
  theme?: string | undefined;
237
281
  }>>;
@@ -255,14 +299,14 @@ export declare const referenceAdapterSchema: z.ZodPipe<z.ZodDiscriminatedUnion<[
255
299
  label?: string | undefined;
256
300
  route?: string | undefined;
257
301
  }[];
258
- codeSamples: string[];
302
+ codeSamples: false | string[];
259
303
  playground: {
260
304
  enabled: boolean;
261
305
  proxy: string | boolean;
262
306
  };
263
307
  route: string;
264
308
  spec?: string | undefined;
265
- }, "spec">;
309
+ }, "spec" | "overlays">;
266
310
  requiredSecrets: string[];
267
311
  runtimeDeps: string[];
268
312
  } | {
@@ -276,17 +320,25 @@ export declare const referenceAdapterSchema: z.ZodPipe<z.ZodDiscriminatedUnion<[
276
320
  spec: string;
277
321
  label?: string | undefined;
278
322
  route?: string | undefined;
323
+ auth?: {
324
+ method: "none" | "key" | "bearer" | "basic";
325
+ name?: string | undefined;
326
+ } | undefined;
279
327
  endpoint?: string | undefined;
280
328
  }[];
281
- codeSamples: string[];
329
+ codeSamples: false | string[];
282
330
  playground: {
283
331
  enabled: boolean;
284
332
  proxy: string | boolean;
285
333
  };
286
334
  route: string;
335
+ auth?: {
336
+ method: "none" | "key" | "bearer" | "basic";
337
+ name?: string | undefined;
338
+ } | undefined;
287
339
  endpoint?: string | undefined;
288
340
  spec?: string | undefined;
289
- }, "spec">;
341
+ }, "spec" | "overlays">;
290
342
  requiredSecrets: string[];
291
343
  runtimeDeps: string[];
292
344
  } | {
@@ -299,17 +351,19 @@ export declare const referenceAdapterSchema: z.ZodPipe<z.ZodDiscriminatedUnion<[
299
351
  noindex: boolean;
300
352
  seoDescriptionSuffix: boolean;
301
353
  spec: string;
354
+ overlays: string[];
302
355
  label?: string | undefined;
303
356
  route?: string | undefined;
304
357
  }[];
305
- codeSamples: string[];
358
+ codeSamples: false | string[];
306
359
  playground: {
307
360
  enabled: boolean;
308
361
  proxy: string | boolean;
309
362
  };
310
363
  route: string;
364
+ overlays?: string[] | undefined;
311
365
  spec?: string | undefined;
312
- }, "spec">;
366
+ }, "spec" | "overlays">;
313
367
  requiredSecrets: string[];
314
368
  runtimeDeps: string[];
315
369
  }>>;
@@ -331,7 +385,7 @@ export declare const referenceConfigSchema: z.ZodDefault<z.ZodArray<z.ZodPipe<z.
331
385
  seoDescriptionSuffix: z.ZodDefault<z.ZodBoolean>;
332
386
  spec: z.ZodString;
333
387
  }, z.core.$strict>>>;
334
- codeSamples: z.ZodDefault<z.ZodArray<z.ZodString>>;
388
+ codeSamples: z.ZodDefault<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodArray<z.ZodString>]>>;
335
389
  playground: z.ZodPipe<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodObject<{
336
390
  enabled: z.ZodDefault<z.ZodBoolean>;
337
391
  proxy: z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
@@ -355,14 +409,14 @@ export declare const referenceConfigSchema: z.ZodDefault<z.ZodArray<z.ZodPipe<z.
355
409
  label?: string | undefined;
356
410
  route?: string | undefined;
357
411
  }[];
358
- codeSamples: string[];
412
+ codeSamples: false | string[];
359
413
  playground: {
360
414
  enabled: boolean;
361
415
  proxy: string | boolean;
362
416
  };
363
417
  route: string;
364
418
  spec?: string | undefined;
365
- }, "spec">, {
419
+ }, "spec" | "overlays">, {
366
420
  expandSchemas: boolean;
367
421
  sources: {
368
422
  includeInLlms: boolean;
@@ -373,7 +427,7 @@ export declare const referenceConfigSchema: z.ZodDefault<z.ZodArray<z.ZodPipe<z.
373
427
  label?: string | undefined;
374
428
  route?: string | undefined;
375
429
  }[];
376
- codeSamples: string[];
430
+ codeSamples: false | string[];
377
431
  playground: {
378
432
  enabled: boolean;
379
433
  proxy: string | boolean;
@@ -386,6 +440,15 @@ export declare const referenceConfigSchema: z.ZodDefault<z.ZodArray<z.ZodPipe<z.
386
440
  }, z.core.$strict>, z.ZodObject<{
387
441
  kind: z.ZodLiteral<"graphql">;
388
442
  options: z.ZodPipe<z.ZodObject<{
443
+ auth: z.ZodOptional<z.ZodObject<{
444
+ method: z.ZodEnum<{
445
+ none: "none";
446
+ key: "key";
447
+ bearer: "bearer";
448
+ basic: "basic";
449
+ }>;
450
+ name: z.ZodOptional<z.ZodString>;
451
+ }, z.core.$strict>>;
389
452
  endpoint: z.ZodOptional<z.ZodString>;
390
453
  sources: z.ZodDefault<z.ZodArray<z.ZodObject<{
391
454
  includeInLlms: z.ZodDefault<z.ZodBoolean>;
@@ -395,9 +458,18 @@ export declare const referenceConfigSchema: z.ZodDefault<z.ZodArray<z.ZodPipe<z.
395
458
  route: z.ZodOptional<z.ZodString>;
396
459
  seoDescriptionSuffix: z.ZodDefault<z.ZodBoolean>;
397
460
  spec: z.ZodString;
461
+ auth: z.ZodOptional<z.ZodObject<{
462
+ method: z.ZodEnum<{
463
+ none: "none";
464
+ key: "key";
465
+ bearer: "bearer";
466
+ basic: "basic";
467
+ }>;
468
+ name: z.ZodOptional<z.ZodString>;
469
+ }, z.core.$strict>>;
398
470
  endpoint: z.ZodOptional<z.ZodString>;
399
471
  }, z.core.$strict>>>;
400
- codeSamples: z.ZodDefault<z.ZodArray<z.ZodString>>;
472
+ codeSamples: z.ZodDefault<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodArray<z.ZodString>]>>;
401
473
  playground: z.ZodPipe<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodObject<{
402
474
  enabled: z.ZodDefault<z.ZodBoolean>;
403
475
  proxy: z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
@@ -419,17 +491,25 @@ export declare const referenceConfigSchema: z.ZodDefault<z.ZodArray<z.ZodPipe<z.
419
491
  spec: string;
420
492
  label?: string | undefined;
421
493
  route?: string | undefined;
494
+ auth?: {
495
+ method: "none" | "key" | "bearer" | "basic";
496
+ name?: string | undefined;
497
+ } | undefined;
422
498
  endpoint?: string | undefined;
423
499
  }[];
424
- codeSamples: string[];
500
+ codeSamples: false | string[];
425
501
  playground: {
426
502
  enabled: boolean;
427
503
  proxy: string | boolean;
428
504
  };
429
505
  route: string;
506
+ auth?: {
507
+ method: "none" | "key" | "bearer" | "basic";
508
+ name?: string | undefined;
509
+ } | undefined;
430
510
  endpoint?: string | undefined;
431
511
  spec?: string | undefined;
432
- }, "spec">, {
512
+ }, "spec" | "overlays">, {
433
513
  sources: {
434
514
  includeInLlms: boolean;
435
515
  includeInSearch: boolean;
@@ -438,14 +518,22 @@ export declare const referenceConfigSchema: z.ZodDefault<z.ZodArray<z.ZodPipe<z.
438
518
  spec: string;
439
519
  label?: string | undefined;
440
520
  route?: string | undefined;
521
+ auth?: {
522
+ method: "none" | "key" | "bearer" | "basic";
523
+ name?: string | undefined;
524
+ } | undefined;
441
525
  endpoint?: string | undefined;
442
526
  }[];
443
- codeSamples: string[];
527
+ codeSamples: false | string[];
444
528
  playground: {
445
529
  enabled: boolean;
446
530
  proxy: string | boolean;
447
531
  };
448
532
  route: string;
533
+ auth?: {
534
+ method: "none" | "key" | "bearer" | "basic";
535
+ name?: string | undefined;
536
+ } | undefined;
449
537
  endpoint?: string | undefined;
450
538
  spec?: string | undefined;
451
539
  }>>;
@@ -455,6 +543,7 @@ export declare const referenceConfigSchema: z.ZodDefault<z.ZodArray<z.ZodPipe<z.
455
543
  kind: z.ZodLiteral<"openapi">;
456
544
  options: z.ZodPipe<z.ZodObject<{
457
545
  expandSchemas: z.ZodDefault<z.ZodBoolean>;
546
+ overlays: z.ZodOptional<z.ZodArray<z.ZodString>>;
458
547
  sources: z.ZodDefault<z.ZodArray<z.ZodObject<{
459
548
  includeInLlms: z.ZodDefault<z.ZodBoolean>;
460
549
  includeInSearch: z.ZodDefault<z.ZodBoolean>;
@@ -463,8 +552,9 @@ export declare const referenceConfigSchema: z.ZodDefault<z.ZodArray<z.ZodPipe<z.
463
552
  route: z.ZodOptional<z.ZodString>;
464
553
  seoDescriptionSuffix: z.ZodDefault<z.ZodBoolean>;
465
554
  spec: z.ZodString;
555
+ overlays: z.ZodDefault<z.ZodArray<z.ZodString>>;
466
556
  }, z.core.$strict>>>;
467
- codeSamples: z.ZodDefault<z.ZodArray<z.ZodString>>;
557
+ codeSamples: z.ZodDefault<z.ZodUnion<readonly [z.ZodLiteral<false>, z.ZodArray<z.ZodString>]>>;
468
558
  playground: z.ZodPipe<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodObject<{
469
559
  enabled: z.ZodDefault<z.ZodBoolean>;
470
560
  proxy: z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
@@ -485,17 +575,19 @@ export declare const referenceConfigSchema: z.ZodDefault<z.ZodArray<z.ZodPipe<z.
485
575
  noindex: boolean;
486
576
  seoDescriptionSuffix: boolean;
487
577
  spec: string;
578
+ overlays: string[];
488
579
  label?: string | undefined;
489
580
  route?: string | undefined;
490
581
  }[];
491
- codeSamples: string[];
582
+ codeSamples: false | string[];
492
583
  playground: {
493
584
  enabled: boolean;
494
585
  proxy: string | boolean;
495
586
  };
496
587
  route: string;
588
+ overlays?: string[] | undefined;
497
589
  spec?: string | undefined;
498
- }, "spec">, {
590
+ }, "spec" | "overlays">, {
499
591
  expandSchemas: boolean;
500
592
  sources: {
501
593
  includeInLlms: boolean;
@@ -503,15 +595,17 @@ export declare const referenceConfigSchema: z.ZodDefault<z.ZodArray<z.ZodPipe<z.
503
595
  noindex: boolean;
504
596
  seoDescriptionSuffix: boolean;
505
597
  spec: string;
598
+ overlays: string[];
506
599
  label?: string | undefined;
507
600
  route?: string | undefined;
508
601
  }[];
509
- codeSamples: string[];
602
+ codeSamples: false | string[];
510
603
  playground: {
511
604
  enabled: boolean;
512
605
  proxy: string | boolean;
513
606
  };
514
607
  route: string;
608
+ overlays?: string[] | undefined;
515
609
  spec?: string | undefined;
516
610
  }>>;
517
611
  requiredSecrets: z.ZodArray<z.ZodString>;
@@ -519,10 +613,12 @@ export declare const referenceConfigSchema: z.ZodDefault<z.ZodArray<z.ZodPipe<z.
519
613
  }, z.core.$strict>, z.ZodObject<{
520
614
  kind: z.ZodLiteral<"scalar">;
521
615
  options: z.ZodPipe<z.ZodObject<{
616
+ overlays: z.ZodOptional<z.ZodArray<z.ZodString>>;
522
617
  route: z.ZodDefault<z.ZodString>;
523
618
  sources: z.ZodDefault<z.ZodArray<z.ZodObject<{
524
619
  label: z.ZodOptional<z.ZodString>;
525
620
  noindex: z.ZodDefault<z.ZodBoolean>;
621
+ overlays: z.ZodDefault<z.ZodArray<z.ZodString>>;
526
622
  route: z.ZodOptional<z.ZodString>;
527
623
  spec: z.ZodString;
528
624
  }, z.core.$strict>>>;
@@ -533,10 +629,12 @@ export declare const referenceConfigSchema: z.ZodDefault<z.ZodArray<z.ZodPipe<z.
533
629
  route: string;
534
630
  sources: {
535
631
  noindex: boolean;
632
+ overlays: string[];
536
633
  spec: string;
537
634
  label?: string | undefined;
538
635
  route?: string | undefined;
539
636
  }[];
637
+ overlays?: string[] | undefined;
540
638
  spec?: string | undefined;
541
639
  theme?: string | undefined;
542
640
  }>>;
@@ -560,14 +658,14 @@ export declare const referenceConfigSchema: z.ZodDefault<z.ZodArray<z.ZodPipe<z.
560
658
  label?: string | undefined;
561
659
  route?: string | undefined;
562
660
  }[];
563
- codeSamples: string[];
661
+ codeSamples: false | string[];
564
662
  playground: {
565
663
  enabled: boolean;
566
664
  proxy: string | boolean;
567
665
  };
568
666
  route: string;
569
667
  spec?: string | undefined;
570
- }, "spec">;
668
+ }, "spec" | "overlays">;
571
669
  requiredSecrets: string[];
572
670
  runtimeDeps: string[];
573
671
  } | {
@@ -581,17 +679,25 @@ export declare const referenceConfigSchema: z.ZodDefault<z.ZodArray<z.ZodPipe<z.
581
679
  spec: string;
582
680
  label?: string | undefined;
583
681
  route?: string | undefined;
682
+ auth?: {
683
+ method: "none" | "key" | "bearer" | "basic";
684
+ name?: string | undefined;
685
+ } | undefined;
584
686
  endpoint?: string | undefined;
585
687
  }[];
586
- codeSamples: string[];
688
+ codeSamples: false | string[];
587
689
  playground: {
588
690
  enabled: boolean;
589
691
  proxy: string | boolean;
590
692
  };
591
693
  route: string;
694
+ auth?: {
695
+ method: "none" | "key" | "bearer" | "basic";
696
+ name?: string | undefined;
697
+ } | undefined;
592
698
  endpoint?: string | undefined;
593
699
  spec?: string | undefined;
594
- }, "spec">;
700
+ }, "spec" | "overlays">;
595
701
  requiredSecrets: string[];
596
702
  runtimeDeps: string[];
597
703
  } | {
@@ -604,17 +710,19 @@ export declare const referenceConfigSchema: z.ZodDefault<z.ZodArray<z.ZodPipe<z.
604
710
  noindex: boolean;
605
711
  seoDescriptionSuffix: boolean;
606
712
  spec: string;
713
+ overlays: string[];
607
714
  label?: string | undefined;
608
715
  route?: string | undefined;
609
716
  }[];
610
- codeSamples: string[];
717
+ codeSamples: false | string[];
611
718
  playground: {
612
719
  enabled: boolean;
613
720
  proxy: string | boolean;
614
721
  };
615
722
  route: string;
723
+ overlays?: string[] | undefined;
616
724
  spec?: string | undefined;
617
- }, "spec">;
725
+ }, "spec" | "overlays">;
618
726
  requiredSecrets: string[];
619
727
  runtimeDeps: string[];
620
728
  }>>>>;
@@ -69,6 +69,7 @@ declare const adapterVariants: readonly [z.ZodObject<{
69
69
  apiKey: z.ZodString;
70
70
  collection: z.ZodString;
71
71
  host: z.ZodString;
72
+ locale: z.ZodOptional<z.ZodString>;
72
73
  port: z.ZodOptional<z.ZodNumber>;
73
74
  protocol: z.ZodOptional<z.ZodEnum<{
74
75
  http: "http";
@@ -141,6 +142,7 @@ export declare const resolvedSearchAdapterSchema: z.ZodPipe<z.ZodDiscriminatedUn
141
142
  apiKey: z.ZodString;
142
143
  collection: z.ZodString;
143
144
  host: z.ZodString;
145
+ locale: z.ZodOptional<z.ZodString>;
144
146
  port: z.ZodOptional<z.ZodNumber>;
145
147
  protocol: z.ZodOptional<z.ZodEnum<{
146
148
  http: "http";
@@ -212,6 +214,7 @@ export declare const resolvedSearchAdapterSchema: z.ZodPipe<z.ZodDiscriminatedUn
212
214
  apiKey: string;
213
215
  collection: string;
214
216
  host: string;
217
+ locale?: string | undefined;
215
218
  port?: number | undefined;
216
219
  protocol?: "http" | "https" | undefined;
217
220
  };
@@ -4,14 +4,22 @@ import type { SearchAdapter } from "./types.ts";
4
4
  /**
5
5
  * Connection details for a self-hosted or cloud Typesense node. The browser
6
6
  * queries the collection with the search-only `apiKey`; the build-time sync
7
- * recreates the collection with `TYPESENSE_ADMIN_API_KEY`, which never enters
8
- * the config.
7
+ * rebuilds it with `TYPESENSE_ADMIN_API_KEY`, which never enters the config.
9
8
  */
10
9
  export interface TypesenseNamedOptions {
11
10
  /** The search-only API key (public — it ships to the browser). */
12
11
  apiKey: string;
12
+ /** The alias the sync points at each new collection, and searches read. */
13
13
  collection: string;
14
14
  host: string;
15
+ /**
16
+ * The language Typesense tokenizes the text fields for, as a two-letter
17
+ * code (`ja`, `zh`, `ko`, `th`, …). Typesense's default tokenizer splits on
18
+ * spaces, so text in a script written without them — Chinese, Japanese,
19
+ * Thai — only matches from the start of a run. Omitted, the fields keep
20
+ * that default.
21
+ */
22
+ locale?: string;
15
23
  /** Defaults to 443. */
16
24
  port?: number;
17
25
  /** Defaults to `https`. */
@@ -29,6 +37,7 @@ export declare const typesenseOptionsSchema: z.ZodObject<{
29
37
  apiKey: z.ZodString;
30
38
  collection: z.ZodString;
31
39
  host: z.ZodString;
40
+ locale: z.ZodOptional<z.ZodString>;
32
41
  port: z.ZodOptional<z.ZodNumber>;
33
42
  protocol: z.ZodOptional<z.ZodEnum<{
34
43
  http: "http";
@@ -36,7 +45,8 @@ export declare const typesenseOptionsSchema: z.ZodObject<{
36
45
  }>>;
37
46
  }, z.core.$catchall<z.ZodJSONSchema>>;
38
47
  /**
39
- * Hosted search on Typesense. Each `blume build` drops and recreates the
40
- * collection so deleted or renamed pages don't linger as stale hits.
48
+ * Hosted search on Typesense. Each `blume build` imports into a new
49
+ * collection and swaps the `collection` alias onto it, so deleted or renamed
50
+ * pages don't linger as stale hits and searches never read a partial index.
41
51
  */
42
52
  export declare const typesense: (options: TypesenseOptions) => TypesenseAdapter;
@@ -18,6 +18,8 @@
18
18
  * Pagefind/pagefind#1272; switch back to `writeFiles()` once a release ships
19
19
  * that fix.
20
20
  *
21
- * Returns the number of pages indexed.
21
+ * Returns the number of pages indexed: the index's own count, summed over its
22
+ * languages from `pagefind-entry.json`. `addDirectory`'s `page_count` counts
23
+ * every HTML file it read, including the ones kept out of the index.
22
24
  */
23
25
  export declare const buildSearchIndex: (outDir: string) => Promise<number>;
@@ -23,6 +23,10 @@ export interface SearchDocument {
23
23
  * Filterable through the MCP tools' `filters` input.
24
24
  */
25
25
  facets?: Record<string, string>;
26
+ /** Frontmatter `search.boost`: the page's relevance multiplier, when set. */
27
+ boost?: number;
28
+ /** Frontmatter `search.keywords`: extra terms the page is found by. */
29
+ keywords?: string[];
26
30
  }
27
31
  /**
28
32
  * A record uploaded to a hosted search backend (Algolia, Orama Cloud,
@@ -45,6 +49,13 @@ export interface SearchRecord {
45
49
  version: string;
46
50
  /** Single faceting tag (the first frontmatter tag, when present). */
47
51
  tag?: string;
52
+ /**
53
+ * The page's relevance multiplier, 1 unless `search.boost` sets it: a
54
+ * ranking attribute every record carries, so the backend can sort by it.
55
+ */
56
+ boost: number;
57
+ /** Extra terms the page is found by (`search.keywords`). */
58
+ keywords?: string[];
48
59
  }
49
60
  interface BuildOptions {
50
61
  includeWhenDisabled?: boolean;
@@ -84,7 +95,7 @@ export declare const buildSearchDocuments: (project: BlumeProject, options?: Bui
84
95
  /**
85
96
  * Map per-page search documents to the flat record shape hosted backends
86
97
  * ingest. One record per page, keyed by route; the first tag becomes the
87
- * faceting `tag`.
98
+ * faceting `tag`, and every record carries a `boost` (1 by default).
88
99
  */
89
100
  export declare const toSearchRecords: (documents: SearchDocument[]) => SearchRecord[];
90
101
  export {};