blume 2.1.0 → 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.
- package/CHANGELOG.md +94 -0
- package/dist/cli/{chunk-5cg2rzgf.js → chunk-073rdvgb.js} +19 -48
- package/dist/cli/{chunk-5cg2rzgf.js.map → chunk-073rdvgb.js.map} +4 -5
- package/dist/cli/{chunk-ga0pf4aj.js → chunk-0n9xkp3d.js} +12 -3
- package/dist/cli/{chunk-ga0pf4aj.js.map → chunk-0n9xkp3d.js.map} +3 -3
- package/dist/cli/chunk-150jk7km.js +52 -0
- package/dist/cli/chunk-150jk7km.js.map +10 -0
- package/dist/cli/{chunk-rekqz4qg.js → chunk-313vnn40.js} +16 -15
- package/dist/cli/chunk-313vnn40.js.map +10 -0
- package/dist/cli/{chunk-gp84za0h.js → chunk-3v3ffbrj.js} +2 -2
- package/dist/cli/{chunk-9xr4dgee.js → chunk-3x6x3pph.js} +29 -16
- package/dist/cli/chunk-3x6x3pph.js.map +10 -0
- package/dist/cli/{chunk-0gz36akr.js → chunk-42t4jxdx.js} +21 -5
- package/dist/cli/chunk-42t4jxdx.js.map +12 -0
- package/dist/cli/{chunk-ta27feev.js → chunk-54ztw1nj.js} +21 -2
- package/dist/cli/chunk-54ztw1nj.js.map +10 -0
- package/dist/cli/{chunk-jnwj5kjj.js → chunk-5vjtgs6e.js} +20 -7
- package/dist/cli/{chunk-jnwj5kjj.js.map → chunk-5vjtgs6e.js.map} +3 -3
- package/dist/cli/chunk-66w9j7p6.js +322 -0
- package/dist/cli/chunk-66w9j7p6.js.map +14 -0
- package/dist/cli/{chunk-nd1821sk.js → chunk-7ppf1rva.js} +32 -18
- package/dist/cli/chunk-7ppf1rva.js.map +10 -0
- package/dist/cli/{chunk-p804f3pe.js → chunk-8y2kmjv8.js} +6 -6
- package/dist/cli/{chunk-2f7n4qzt.js → chunk-c1y538kd.js} +1 -1
- package/dist/cli/{chunk-1n228xqb.js → chunk-c887fj0s.js} +2 -2
- package/dist/cli/{chunk-y5h4r2y0.js → chunk-cfyg47zg.js} +15 -5
- package/dist/cli/chunk-cfyg47zg.js.map +10 -0
- package/dist/cli/{chunk-cmtcnh9f.js → chunk-dzwehpy7.js} +2 -2
- package/dist/cli/{chunk-h2a48yhd.js → chunk-e6atmn4h.js} +119 -15
- package/dist/cli/{chunk-h2a48yhd.js.map → chunk-e6atmn4h.js.map} +10 -10
- package/dist/cli/{chunk-5ffywsmb.js → chunk-e8xw9qkh.js} +8 -6
- package/dist/cli/{chunk-5ffywsmb.js.map → chunk-e8xw9qkh.js.map} +3 -3
- package/dist/cli/{chunk-ntv4qrt7.js → chunk-e9q7a2ak.js} +14 -14
- package/dist/cli/{chunk-xkz5xbtv.js → chunk-ehweg4fr.js} +2366 -1114
- package/dist/cli/chunk-ehweg4fr.js.map +218 -0
- package/dist/cli/{chunk-zf748avv.js → chunk-ep6nd0rn.js} +176 -281
- package/dist/cli/{chunk-zf748avv.js.map → chunk-ep6nd0rn.js.map} +11 -12
- package/dist/cli/{chunk-yxmk4pec.js → chunk-fdrkhpjy.js} +16 -15
- package/dist/cli/{chunk-yxmk4pec.js.map → chunk-fdrkhpjy.js.map} +3 -3
- package/dist/cli/{chunk-5wj2qwn2.js → chunk-ft9vfys6.js} +4 -4
- package/dist/cli/{chunk-4h8z9vv5.js → chunk-gb420vvz.js} +89 -46
- package/dist/cli/chunk-gb420vvz.js.map +17 -0
- package/dist/cli/{chunk-713mngdq.js → chunk-hebn0tpx.js} +76 -10
- package/dist/cli/chunk-hebn0tpx.js.map +14 -0
- package/dist/cli/{chunk-2n4ps1b3.js → chunk-htrwgabr.js} +40 -22
- package/dist/cli/chunk-htrwgabr.js.map +15 -0
- package/dist/cli/{chunk-zhvd6adm.js → chunk-hx3xqnk9.js} +13 -13
- package/dist/cli/chunk-j134vrp2.js +65 -0
- package/dist/cli/chunk-j134vrp2.js.map +10 -0
- package/dist/cli/{chunk-y4ykbark.js → chunk-kma9f6sf.js} +2 -2
- package/dist/cli/{chunk-py62fewh.js → chunk-mrcccgnh.js} +3 -3
- package/dist/cli/{chunk-2f3ndkpw.js → chunk-n0v7m8ry.js} +3 -3
- package/dist/cli/{chunk-43zcf4gz.js → chunk-ncj7w596.js} +522 -353
- package/dist/cli/chunk-ncj7w596.js.map +35 -0
- package/dist/cli/{chunk-9geymqns.js → chunk-nq1d20w2.js} +14 -14
- package/dist/cli/{chunk-g2z9x01v.js → chunk-nrns10mj.js} +3 -3
- package/dist/cli/{chunk-e7vvk5ya.js → chunk-sds923fa.js} +3 -3
- package/dist/cli/{chunk-cy5bm0j0.js → chunk-t2m5j4pr.js} +2 -2
- package/dist/cli/{chunk-cy5bm0j0.js.map → chunk-t2m5j4pr.js.map} +1 -1
- package/dist/cli/{chunk-yj17vs39.js → chunk-tdqhyxfz.js} +5 -5
- package/dist/cli/{chunk-q3wxxq39.js → chunk-tphac74f.js} +5 -5
- package/dist/cli/{chunk-6bm0xpgd.js → chunk-w1r4vase.js} +2 -2
- package/dist/cli/index.js +24 -19
- package/dist/cli/index.js.map +3 -3
- package/dist/types/ai/ask-context.d.ts +6 -2
- package/dist/types/ai/component-markdown.d.ts +2 -0
- package/dist/types/ai/openapi-components.d.ts +4 -1
- package/dist/types/astro/integration.d.ts +5 -4
- package/dist/types/astro/markdown-negotiation.d.ts +3 -0
- package/dist/types/astro/pages.d.ts +10 -0
- package/dist/types/cli/init/scaffold.d.ts +1 -1
- package/dist/types/components/content/api-field.d.ts +4 -1
- package/dist/types/components/content/api-page.d.ts +6 -1
- package/dist/types/components/openapi/code-samples.d.ts +29 -0
- package/dist/types/components/openapi/helpers.d.ts +22 -1
- package/dist/types/components/openapi/security.d.ts +10 -0
- package/dist/types/components/openapi/snippets.d.ts +60 -0
- package/dist/types/core/changelog-index.d.ts +8 -0
- package/dist/types/core/config-input.d.ts +30 -3
- package/dist/types/core/data.d.ts +4 -0
- package/dist/types/core/i18n-ui.d.ts +2 -0
- package/dist/types/core/links.d.ts +8 -0
- package/dist/types/core/probe.d.ts +2 -0
- package/dist/types/core/project-graph.d.ts +6 -0
- package/dist/types/core/redirect-patterns.d.ts +11 -3
- package/dist/types/core/schema.d.ts +119 -0
- package/dist/types/core/sources/cache.d.ts +3 -0
- package/dist/types/core/sources/contentful-rich-text.d.ts +11 -2
- package/dist/types/core/sources/contentful.d.ts +17 -1
- package/dist/types/core/sources/lexical.d.ts +5 -0
- package/dist/types/core/sources/normalize.d.ts +20 -1
- package/dist/types/core/sources/remote.d.ts +37 -10
- package/dist/types/core/sources/sanity.d.ts +1 -1
- package/dist/types/core/types.d.ts +17 -0
- package/dist/types/deploy/adapter-output.d.ts +2 -1
- package/dist/types/deploy/adapters/cloudflare.d.ts +7 -5
- package/dist/types/deploy/adapters/node.d.ts +58 -23
- package/dist/types/deploy/adapters/registry.d.ts +10 -0
- package/dist/types/deploy/adapters/types.d.ts +3 -2
- package/dist/types/deploy/platforms/cloudflare.d.ts +10 -7
- package/dist/types/deploy/platforms/node.d.ts +3 -1
- package/dist/types/deploy/platforms/types.d.ts +18 -7
- package/dist/types/deploy/platforms/vercel.d.ts +20 -1
- package/dist/types/deploy/redirects.d.ts +17 -1
- package/dist/types/deploy/sitemap.d.ts +2 -1
- package/dist/types/deploy/vercel-negotiation.d.ts +42 -21
- package/dist/types/openapi/checks.d.ts +27 -0
- package/dist/types/openapi/graphql.d.ts +6 -0
- package/dist/types/openapi/model.d.ts +15 -4
- package/dist/types/openapi/parse.d.ts +3 -0
- package/dist/types/openapi/references.d.ts +16 -0
- package/dist/types/ratelimit/index.d.ts +1 -1
- package/dist/types/ratelimit/schema.d.ts +8 -0
- package/dist/types/ratelimit/upstash.d.ts +39 -14
- package/dist/types/reference/graphql.d.ts +76 -1
- package/dist/types/reference/index.d.ts +1 -1
- package/dist/types/reference/openapi.d.ts +2 -2
- package/dist/types/reference/options.d.ts +37 -1
- package/dist/types/reference/schema.d.ts +84 -0
- package/dist/types/search/adapters/registry.d.ts +3 -0
- package/dist/types/search/adapters/typesense.d.ts +14 -4
- package/dist/types/search/build.d.ts +3 -1
- package/dist/types/search/orama-index.d.ts +9 -9
- package/dist/types/search/sync/algolia.d.ts +5 -2
- package/dist/types/search/sync/index.d.ts +3 -1
- package/dist/types/search/sync/typesense.d.ts +11 -7
- package/dist/types/sources/contentful.d.ts +16 -0
- package/dist/types/sources/github-releases.d.ts +8 -1
- package/dist/types/sources/payload.d.ts +2 -0
- package/dist/types/sources/registry.d.ts +54 -0
- package/dist/types/sources/shared.d.ts +3 -0
- package/dist/types/sources/strapi.d.ts +2 -0
- package/docs/01-quickstart.mdx +4 -2
- package/docs/02-deployment.mdx +31 -13
- package/docs/advanced/changelog.mdx +11 -0
- package/docs/advanced/skills.mdx +1 -1
- package/docs/cli/audit.mdx +30 -7
- package/docs/cli/doctor.mdx +5 -1
- package/docs/cli/evals.mdx +4 -4
- package/docs/cli/translate.mdx +1 -0
- package/docs/cli/validate.mdx +4 -3
- package/docs/configuration/analytics.mdx +1 -1
- package/docs/configuration/assistant.mdx +6 -2
- package/docs/configuration/customization.mdx +4 -2
- package/docs/configuration/export.mdx +5 -3
- package/docs/configuration/index.mdx +3 -2
- package/docs/configuration/rate-limiting.mdx +23 -2
- package/docs/configuration/search.mdx +37 -14
- package/docs/content/components.mdx +2 -2
- package/docs/content/frontmatter.mdx +5 -3
- package/docs/content/i18n.mdx +2 -2
- package/docs/content/includes.mdx +1 -1
- package/docs/content/navigation.mdx +4 -4
- package/docs/content/sources/contentful.mdx +7 -4
- package/docs/content/sources/custom.mdx +7 -3
- package/docs/content/sources/github-releases.mdx +10 -2
- package/docs/content/sources/index.mdx +3 -3
- package/docs/content/sources/notion.mdx +1 -1
- package/docs/content/sources/obsidian.mdx +1 -1
- package/docs/content/sources/payload.mdx +3 -2
- package/docs/content/sources/remote-mdx.mdx +4 -0
- package/docs/content/sources/sanity.mdx +2 -2
- package/docs/content/sources/strapi.mdx +3 -2
- package/docs/content/syntax.mdx +2 -2
- package/docs/discoverability/agent-discovery.mdx +1 -1
- package/docs/discoverability/index.mdx +1 -1
- package/docs/discoverability/json-api.mdx +2 -0
- package/docs/discoverability/llms-txt.mdx +1 -1
- package/docs/discoverability/markdown.mdx +3 -1
- package/docs/discoverability/mcp.mdx +4 -0
- package/docs/discoverability/sitemap-and-robots.mdx +1 -1
- package/docs/references/api-pages.mdx +1 -1
- package/docs/references/asyncapi.mdx +3 -1
- package/docs/references/graphql.mdx +13 -1
- package/docs/references/openapi.mdx +50 -8
- package/package.json +9 -9
- package/skills/blume-migrate/SKILL.md +1 -1
- package/skills/blume-migrate/references/docusaurus.md +4 -4
- package/skills/blume-migrate/references/fumadocs.md +17 -13
- package/skills/blume-migrate/references/nextra.md +8 -5
- package/skills/blume-migrate/references/starlight.md +9 -7
- package/src/ai/ask-context.ts +33 -3
- package/src/ai/ask-limits.ts +13 -0
- package/src/ai/changelog-markdown.ts +11 -6
- package/src/ai/component-markdown.ts +1 -1
- package/src/ai/cors.ts +12 -3
- package/src/ai/mcp/query.ts +14 -6
- package/src/ai/openapi-components.ts +28 -4
- package/src/ai/relative-links.ts +4 -38
- package/src/astro/generate.ts +78 -48
- package/src/astro/integration.ts +16 -13
- package/src/astro/markdown-negotiation.ts +3 -0
- package/src/astro/module-types.ts +3 -1
- package/src/astro/pages.ts +23 -0
- package/src/astro/templates.ts +125 -80
- package/src/audit/catalog.ts +19 -3
- package/src/audit/checks/links.ts +14 -1
- package/src/audit/checks/network.ts +110 -6
- package/src/audit/checks/redirects.ts +6 -4
- package/src/audit/checks/robots.ts +58 -2
- package/src/audit/run.ts +3 -0
- package/src/audit/types.ts +2 -0
- package/src/audit/url.ts +14 -5
- package/src/blume-modules.d.ts +5 -1
- package/src/cli/args.ts +51 -0
- package/src/cli/build-failure.ts +23 -0
- package/src/cli/commands/audit.ts +10 -1
- package/src/cli/commands/dev.ts +18 -2
- package/src/cli/commands/doctor.ts +45 -12
- package/src/cli/commands/eval.ts +36 -4
- package/src/cli/commands/init.ts +6 -4
- package/src/cli/commands/validate.ts +10 -1
- package/src/cli/init/scaffold.ts +3 -3
- package/src/cli/prepare.ts +6 -3
- package/src/cli/required-secrets.ts +1 -1
- package/src/components/content/ApiPlayground.astro +6 -2
- package/src/components/content/api-field.ts +4 -1
- package/src/components/content/api-page.ts +31 -7
- package/src/components/content/mermaid-element.ts +15 -1
- package/src/components/islands/hooks.ts +27 -1
- package/src/components/layout/PageActions.astro +139 -24
- package/src/components/layout/RootLayout.astro +10 -2
- package/src/components/layout/Search.astro +17 -3
- package/src/components/layout/TableOfContents.astro +24 -17
- package/src/components/layout/head-scripts.ts +6 -1
- package/src/components/layout/search/algolia.ts +10 -1
- package/src/components/layout/search/analytics.ts +42 -14
- package/src/components/layout/search/endpoint.ts +48 -5
- package/src/components/layout/search/pagefind.ts +114 -5
- package/src/components/layout/search/types.ts +12 -0
- package/src/components/layout/search/typesense.ts +18 -6
- package/src/components/openapi/AsyncApiOperation.astro +14 -7
- package/src/components/openapi/Authorization.astro +10 -0
- package/src/components/openapi/GraphqlOperation.astro +5 -0
- package/src/components/openapi/Operation.astro +24 -1
- package/src/components/openapi/ParametersTable.astro +8 -4
- package/src/components/openapi/Playground.astro +7 -1
- package/src/components/openapi/RequestBody.astro +19 -2
- package/src/components/openapi/Responses.astro +1 -0
- package/src/components/openapi/SchemaTable.astro +15 -3
- package/src/components/openapi/async-snippets.ts +61 -5
- package/src/components/openapi/async.ts +123 -29
- package/src/components/openapi/graphql-helpers.ts +35 -12
- package/src/components/openapi/helpers.ts +36 -2
- package/src/components/openapi/message-model.ts +54 -11
- package/src/components/openapi/message.ts +14 -4
- package/src/components/openapi/operation-model.ts +16 -7
- package/src/components/openapi/playground-client.ts +24 -5
- package/src/components/openapi/playground-schema.ts +1 -1
- package/src/components/openapi/schema-tree.ts +44 -14
- package/src/components/openapi/security.ts +10 -0
- package/src/components/openapi/snippets.ts +5 -3
- package/src/components/openapi/validate-json.ts +4 -3
- package/src/core/changelog-index.ts +31 -1
- package/src/core/component-diagnostics.ts +53 -0
- package/src/core/component-overrides.ts +32 -0
- package/src/core/config-input.ts +31 -3
- package/src/core/data.ts +2 -0
- package/src/core/diagnostics.ts +5 -0
- package/src/core/i18n-ui.ts +2 -0
- package/src/core/includes.ts +1 -1
- package/src/core/links.ts +47 -17
- package/src/core/probe.ts +26 -6
- package/src/core/project-graph.ts +59 -18
- package/src/core/redirect-patterns.ts +36 -7
- package/src/core/schema.ts +21 -2
- package/src/core/sources/cache.ts +6 -0
- package/src/core/sources/contentful-rich-text.ts +29 -6
- package/src/core/sources/contentful.ts +135 -25
- package/src/core/sources/filesystem.ts +26 -4
- package/src/core/sources/github-releases.ts +12 -1
- package/src/core/sources/lexical.ts +15 -10
- package/src/core/sources/mdx-remote.ts +62 -10
- package/src/core/sources/normalize.ts +227 -41
- package/src/core/sources/notion.ts +7 -1
- package/src/core/sources/obsidian.ts +16 -3
- package/src/core/sources/payload.ts +38 -15
- package/src/core/sources/remote.ts +72 -15
- package/src/core/sources/resolve.ts +11 -1
- package/src/core/sources/sanity.ts +43 -25
- package/src/core/sources/strapi.ts +2 -2
- package/src/core/types.ts +18 -0
- package/src/core/ui-packs/ar.ts +1 -0
- package/src/core/ui-packs/bg.ts +1 -0
- package/src/core/ui-packs/bn.ts +1 -0
- package/src/core/ui-packs/ca.ts +1 -0
- package/src/core/ui-packs/cs.ts +1 -0
- package/src/core/ui-packs/da.ts +1 -0
- package/src/core/ui-packs/de.ts +1 -0
- package/src/core/ui-packs/el.ts +1 -0
- package/src/core/ui-packs/es.ts +1 -0
- package/src/core/ui-packs/fa.ts +1 -0
- package/src/core/ui-packs/fi.ts +1 -0
- package/src/core/ui-packs/fr.ts +1 -0
- package/src/core/ui-packs/he.ts +1 -0
- package/src/core/ui-packs/hi.ts +1 -0
- package/src/core/ui-packs/hr.ts +1 -0
- package/src/core/ui-packs/hu.ts +1 -0
- package/src/core/ui-packs/id.ts +1 -0
- package/src/core/ui-packs/it.ts +1 -0
- package/src/core/ui-packs/ja.ts +1 -0
- package/src/core/ui-packs/ko.ts +1 -0
- package/src/core/ui-packs/nl.ts +1 -0
- package/src/core/ui-packs/no.ts +1 -0
- package/src/core/ui-packs/pl.ts +1 -0
- package/src/core/ui-packs/pt-br.ts +1 -0
- package/src/core/ui-packs/pt.ts +1 -0
- package/src/core/ui-packs/ro.ts +1 -0
- package/src/core/ui-packs/ru.ts +1 -0
- package/src/core/ui-packs/sk.ts +1 -0
- package/src/core/ui-packs/sr.ts +1 -0
- package/src/core/ui-packs/sv.ts +1 -0
- package/src/core/ui-packs/th.ts +1 -0
- package/src/core/ui-packs/tr.ts +1 -0
- package/src/core/ui-packs/uk.ts +1 -0
- package/src/core/ui-packs/vi.ts +1 -0
- package/src/core/ui-packs/zh-tw.ts +1 -0
- package/src/core/ui-packs/zh.ts +1 -0
- package/src/deploy/adapter-output.ts +7 -2
- package/src/deploy/adapters/cloudflare.ts +7 -5
- package/src/deploy/adapters/node.ts +47 -9
- package/src/deploy/adapters/types.ts +7 -3
- package/src/deploy/artifacts.ts +2 -1
- package/src/deploy/platforms/cloudflare.ts +13 -9
- package/src/deploy/platforms/netlify.ts +2 -1
- package/src/deploy/platforms/node.ts +12 -2
- package/src/deploy/platforms/types.ts +21 -7
- package/src/deploy/platforms/vercel.ts +113 -16
- package/src/deploy/redirects.ts +66 -6
- package/src/deploy/rss.ts +3 -1
- package/src/deploy/sitemap.ts +39 -5
- package/src/deploy/vercel-negotiation.ts +290 -102
- package/src/eval/agents.ts +18 -1
- package/src/eval/prompts.ts +6 -3
- package/src/eval/report.ts +34 -13
- package/src/eval/run.ts +5 -0
- package/src/markdown/relative-links.ts +3 -2
- package/src/openapi/checks.ts +273 -0
- package/src/openapi/graphql-build.ts +21 -0
- package/src/openapi/graphql.ts +11 -0
- package/src/openapi/model.ts +15 -3
- package/src/openapi/parse.ts +127 -2
- package/src/openapi/references.ts +43 -3
- package/src/openapi/source.ts +39 -14
- package/src/ratelimit/index.ts +1 -1
- package/src/ratelimit/runtime.ts +37 -19
- package/src/ratelimit/upstash.ts +40 -10
- package/src/reference/graphql.ts +15 -1
- package/src/reference/index.ts +1 -0
- package/src/reference/openapi.ts +2 -2
- package/src/reference/options.ts +29 -1
- package/src/registry/eject.ts +3 -1
- package/src/search/adapters/locale-scope.ts +30 -0
- package/src/search/adapters/typesense.ts +14 -4
- package/src/search/build.ts +21 -3
- package/src/search/orama-index.ts +163 -31
- package/src/search/source-pages.ts +29 -0
- package/src/search/sync/algolia.ts +99 -9
- package/src/search/sync/index.ts +52 -13
- package/src/search/sync/typesense.ts +72 -27
- package/src/sources/contentful.ts +12 -0
- package/src/sources/github-releases.ts +7 -1
- package/src/sources/shared.ts +3 -0
- package/src/theme/entry.ts +29 -3
- package/src/translate/validate.ts +23 -1
- package/dist/cli/chunk-0gz36akr.js.map +0 -12
- package/dist/cli/chunk-2n4ps1b3.js.map +0 -15
- package/dist/cli/chunk-43zcf4gz.js.map +0 -36
- package/dist/cli/chunk-4ejxbzee.js +0 -39
- package/dist/cli/chunk-4ejxbzee.js.map +0 -10
- package/dist/cli/chunk-4h8z9vv5.js.map +0 -16
- package/dist/cli/chunk-713mngdq.js.map +0 -14
- package/dist/cli/chunk-9xr4dgee.js.map +0 -10
- package/dist/cli/chunk-amrb6hgh.js +0 -145
- package/dist/cli/chunk-amrb6hgh.js.map +0 -11
- package/dist/cli/chunk-nd1821sk.js.map +0 -10
- package/dist/cli/chunk-rekqz4qg.js.map +0 -10
- package/dist/cli/chunk-ta27feev.js.map +0 -10
- package/dist/cli/chunk-xkz5xbtv.js.map +0 -213
- package/dist/cli/chunk-y5h4r2y0.js.map +0 -10
- /package/dist/cli/{chunk-gp84za0h.js.map → chunk-3v3ffbrj.js.map} +0 -0
- /package/dist/cli/{chunk-p804f3pe.js.map → chunk-8y2kmjv8.js.map} +0 -0
- /package/dist/cli/{chunk-2f7n4qzt.js.map → chunk-c1y538kd.js.map} +0 -0
- /package/dist/cli/{chunk-1n228xqb.js.map → chunk-c887fj0s.js.map} +0 -0
- /package/dist/cli/{chunk-cmtcnh9f.js.map → chunk-dzwehpy7.js.map} +0 -0
- /package/dist/cli/{chunk-ntv4qrt7.js.map → chunk-e9q7a2ak.js.map} +0 -0
- /package/dist/cli/{chunk-5wj2qwn2.js.map → chunk-ft9vfys6.js.map} +0 -0
- /package/dist/cli/{chunk-zhvd6adm.js.map → chunk-hx3xqnk9.js.map} +0 -0
- /package/dist/cli/{chunk-y4ykbark.js.map → chunk-kma9f6sf.js.map} +0 -0
- /package/dist/cli/{chunk-py62fewh.js.map → chunk-mrcccgnh.js.map} +0 -0
- /package/dist/cli/{chunk-2f3ndkpw.js.map → chunk-n0v7m8ry.js.map} +0 -0
- /package/dist/cli/{chunk-9geymqns.js.map → chunk-nq1d20w2.js.map} +0 -0
- /package/dist/cli/{chunk-g2z9x01v.js.map → chunk-nrns10mj.js.map} +0 -0
- /package/dist/cli/{chunk-e7vvk5ya.js.map → chunk-sds923fa.js.map} +0 -0
- /package/dist/cli/{chunk-yj17vs39.js.map → chunk-tdqhyxfz.js.map} +0 -0
- /package/dist/cli/{chunk-q3wxxq39.js.map → chunk-tphac74f.js.map} +0 -0
- /package/dist/cli/{chunk-6bm0xpgd.js.map → chunk-w1r4vase.js.map} +0 -0
|
@@ -29,6 +29,16 @@ export interface OgCustomRoute {
|
|
|
29
29
|
export declare const hasGeneratedChangelog: (project: BlumeProject, userPages: {
|
|
30
30
|
pattern: string;
|
|
31
31
|
}[]) => boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Every route a navigation entry (a tab, selector item, featured link, header
|
|
34
|
+
* action, or CTA) may point at: content routes, custom `.astro` pages, the
|
|
35
|
+
* generated changelog, and reference routes (so a tab an author points at one
|
|
36
|
+
* still validates). `generateRuntime` and `blume doctor` both check
|
|
37
|
+
* `validateNavTargets` against it, so they flag the same entries.
|
|
38
|
+
*/
|
|
39
|
+
export declare const navTargetRoutes: (project: BlumeProject, userPages: {
|
|
40
|
+
pattern: string;
|
|
41
|
+
}[]) => Set<string>;
|
|
32
42
|
/**
|
|
33
43
|
* Pick the custom-page routes that should get a generated Open Graph card, with
|
|
34
44
|
* the card's slug and text. OG is otherwise content-route only, so a custom page
|
|
@@ -126,7 +126,7 @@ export interface PlanEnvironment {
|
|
|
126
126
|
* What the project still needs from a workspace it sits in, when `init` left
|
|
127
127
|
* that workspace's config alone: a place in a pnpm workspace's `packages`
|
|
128
128
|
* (pnpm skips a folder it doesn't list), pnpm's approval for esbuild's build
|
|
129
|
-
* script (pnpm
|
|
129
|
+
* script (pnpm 11 and later fail the install without it), or Yarn Berry's
|
|
130
130
|
* `node_modules` linker. Undefined when the workspace already has it, or the
|
|
131
131
|
* project doesn't sit in one.
|
|
132
132
|
*/
|
|
@@ -32,7 +32,10 @@ export interface ParamFieldProps extends FieldProps {
|
|
|
32
32
|
/** The name, for a field with no location attribute. */
|
|
33
33
|
name?: string;
|
|
34
34
|
path?: string;
|
|
35
|
-
/**
|
|
35
|
+
/**
|
|
36
|
+
* An example value: the one the playground and request samples start
|
|
37
|
+
* with, not an input's placeholder hint (see `fieldSchema`).
|
|
38
|
+
*/
|
|
36
39
|
placeholder?: string;
|
|
37
40
|
query?: string;
|
|
38
41
|
}
|
|
@@ -74,10 +74,15 @@ export declare const endpointTarget: (target: string, server?: string) => Endpoi
|
|
|
74
74
|
export declare const fieldSchema: (field: EndpointField) => SchemaLike;
|
|
75
75
|
/** The path, query, and header fields as OpenAPI parameters. */
|
|
76
76
|
export declare const endpointParameters: (fields: EndpointField[]) => ParameterLike[];
|
|
77
|
-
/**
|
|
77
|
+
/**
|
|
78
|
+
* The body fields as a JSON request body, or `undefined` when there are none.
|
|
79
|
+
* Its example, which the playground and samples start from, holds only the
|
|
80
|
+
* {@link sentFields}.
|
|
81
|
+
*/
|
|
78
82
|
export declare const endpointBody: (fields: EndpointField[]) => {
|
|
79
83
|
content: {
|
|
80
84
|
"application/json": {
|
|
85
|
+
example: import("../openapi/helpers.ts").SpecValue;
|
|
81
86
|
schema: SchemaLike;
|
|
82
87
|
};
|
|
83
88
|
};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Hand-written code samples from a spec: the `x-codeSamples` extension on an
|
|
3
|
+
* operation (Redocly's, which Mintlify, Speakeasy, and Stainless write too),
|
|
4
|
+
* or its older spelling `x-code-samples`. Each entry names a `lang`, holds
|
|
5
|
+
* the `source`, and may carry a `label`. They render as their own tabs ahead
|
|
6
|
+
* of the generated samples and, being fixed text, the playground leaves them
|
|
7
|
+
* as written.
|
|
8
|
+
*/
|
|
9
|
+
/** One hand-written sample, ready to render as a tab. */
|
|
10
|
+
export interface CustomCodeSample {
|
|
11
|
+
/** A stable, unique tab key. */
|
|
12
|
+
key: string;
|
|
13
|
+
/** The tab label: the entry's own, else the language's name. */
|
|
14
|
+
label: string;
|
|
15
|
+
/** The Shiki language to highlight `source` with. */
|
|
16
|
+
lang: string;
|
|
17
|
+
source: string;
|
|
18
|
+
}
|
|
19
|
+
/** The two places an operation keeps them. */
|
|
20
|
+
export interface CodeSamplesCarrier {
|
|
21
|
+
"x-code-samples"?: unknown;
|
|
22
|
+
"x-codeSamples"?: unknown;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* The operation's hand-written samples, with a unique tab label each. A label
|
|
26
|
+
* two samples share gains its language (`List plants · JavaScript`), and one
|
|
27
|
+
* that still repeats gains a number. Malformed entries are skipped.
|
|
28
|
+
*/
|
|
29
|
+
export declare const customCodeSamples: (operation: CodeSamplesCarrier) => CustomCodeSample[];
|
|
@@ -73,13 +73,34 @@ export declare const resolveComponentRef: <T extends {
|
|
|
73
73
|
export declare const mergeParameters: (pathParameters: ParameterLike[] | undefined, operationParameters: ParameterLike[] | undefined, components?: ComponentsLike) => ParameterLike[];
|
|
74
74
|
/** The display name of a `$ref`, e.g. `#/components/schemas/Pet` -> `Pet`. */
|
|
75
75
|
export declare const refName: (ref: string) => string;
|
|
76
|
-
/**
|
|
76
|
+
/**
|
|
77
|
+
* The one member of an `allOf` that only wraps it: `allOf: [{ $ref }]` beside
|
|
78
|
+
* a `description`, `readOnly`, or `default`, which is how drf-spectacular and
|
|
79
|
+
* other generators attach keywords a 3.0 `$ref` can't carry. `undefined` for
|
|
80
|
+
* a real composition: several members, or properties or branches of its own.
|
|
81
|
+
*/
|
|
82
|
+
export declare const soleAllOfMember: (schema: SchemaLike) => SchemaLike | undefined;
|
|
83
|
+
/**
|
|
84
|
+
* Resolve one level of `$ref` against the document's component schemas. A
|
|
85
|
+
* single-member `allOf` wrapper resolves like its member, with the wrapper's
|
|
86
|
+
* own keywords on top: its `description` is about this field.
|
|
87
|
+
*/
|
|
77
88
|
export declare const resolveSchema: (schemas: Record<string, SchemaLike>, schema?: SchemaLike) => SchemaLike;
|
|
89
|
+
/**
|
|
90
|
+
* A parameter's description: its own, else its schema's (resolved one `$ref`
|
|
91
|
+
* level), which is where generators like Elysia and oRPC write it.
|
|
92
|
+
*/
|
|
93
|
+
export declare const parameterDescription: (param: {
|
|
94
|
+
description?: string;
|
|
95
|
+
schema?: SchemaLike;
|
|
96
|
+
}, schemas: Record<string, SchemaLike>) => string | undefined;
|
|
78
97
|
/**
|
|
79
98
|
* A short, human-readable type label for a schema row. `$ref`s label by name
|
|
80
99
|
* (`Pet`, `Pet[]`) without resolving — which also means circular refs through
|
|
81
100
|
* array items can't recurse forever. A `null` member stays out of a union's
|
|
82
101
|
* label: rows mark it with {@link isNullable}, as they do `type: [T, "null"]`.
|
|
102
|
+
* A single-member `allOf` wrapper labels as its member; a real composition is
|
|
103
|
+
* an `object`.
|
|
83
104
|
*/
|
|
84
105
|
export declare const typeLabel: (schema: SchemaLike) => string;
|
|
85
106
|
/**
|
|
@@ -29,6 +29,11 @@ export interface ResolvedScheme {
|
|
|
29
29
|
/** The scheme object; undefined when the requirement names an unknown one. */
|
|
30
30
|
scheme?: SecuritySchemeLike;
|
|
31
31
|
scopes: string[];
|
|
32
|
+
/**
|
|
33
|
+
* AsyncAPI: the servers that declare this scheme, set only when the
|
|
34
|
+
* channel's servers don't all declare the same ones.
|
|
35
|
+
*/
|
|
36
|
+
servers?: string[];
|
|
32
37
|
}
|
|
33
38
|
/** The security state one operation renders. */
|
|
34
39
|
export interface OperationSecurity {
|
|
@@ -36,6 +41,11 @@ export interface OperationSecurity {
|
|
|
36
41
|
alternatives: ResolvedScheme[][];
|
|
37
42
|
/** True when an empty requirement also allows unauthenticated calls. */
|
|
38
43
|
optional: boolean;
|
|
44
|
+
/**
|
|
45
|
+
* AsyncAPI: the servers that declare no security while others do, so the
|
|
46
|
+
* schemes apply on the other servers only.
|
|
47
|
+
*/
|
|
48
|
+
unauthenticatedServers?: string[];
|
|
39
49
|
}
|
|
40
50
|
/**
|
|
41
51
|
* The requirement list an operation actually enforces: its own `security` when
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Code-sample generation for an operation. Deliberately dependency-free: the
|
|
3
|
+
* playground client renders samples live in the browser, so this module must
|
|
4
|
+
* stay out of the server-only dependency graph (no helpers.ts, no
|
|
5
|
+
* openapi-sampler). Requests are assembled once by `buildRequest` in
|
|
6
|
+
* `request.ts`; the builders here only render a finished `RequestSample` as
|
|
7
|
+
* simple, copy-pasteable starter code — not an exhaustive SDK.
|
|
8
|
+
*/
|
|
9
|
+
export interface RequestSample {
|
|
10
|
+
method: string;
|
|
11
|
+
url: string;
|
|
12
|
+
headers: Record<string, string>;
|
|
13
|
+
/**
|
|
14
|
+
* The request body as sent, when the operation takes one: JSON text,
|
|
15
|
+
* form-urlencoded pairs, or a raw media type's text.
|
|
16
|
+
*/
|
|
17
|
+
body?: string;
|
|
18
|
+
bodyValue?: unknown;
|
|
19
|
+
/**
|
|
20
|
+
* A `multipart/form-data` body's parts as `[name, value]` pairs, set
|
|
21
|
+
* instead of `body`. The request carries no Content-Type of its own for
|
|
22
|
+
* them: the client writes one with the parts' boundary.
|
|
23
|
+
*/
|
|
24
|
+
formData?: [string, string][];
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Whether fetch refuses to send `method` (an upper-case HTTP method). TRACE is
|
|
28
|
+
* one of the Fetch standard's forbidden methods, and the only one an OpenAPI
|
|
29
|
+
* spec can declare: browsers and Node's fetch alike throw a TypeError before
|
|
30
|
+
* any request goes out.
|
|
31
|
+
*/
|
|
32
|
+
export declare const fetchRefusesMethod: (method: string) => boolean;
|
|
33
|
+
/** A code-sample language: config id -> label, Shiki lang, and builder. */
|
|
34
|
+
export interface SampleLanguage {
|
|
35
|
+
id: string;
|
|
36
|
+
label: string;
|
|
37
|
+
lang: string;
|
|
38
|
+
build: (sample: RequestSample) => string;
|
|
39
|
+
}
|
|
40
|
+
/** Every id `codeSamples` accepts for a generated sample. */
|
|
41
|
+
export declare const SAMPLE_LANGUAGE_IDS: string[];
|
|
42
|
+
/** A configured id or alias, as the id it names (lowercased). */
|
|
43
|
+
export declare const sampleLanguageId: (raw: string) => string;
|
|
44
|
+
/** A language's display name and the Shiki language that highlights it. */
|
|
45
|
+
export interface SampleLanguageInfo {
|
|
46
|
+
label: string;
|
|
47
|
+
lang: string;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* The display name and Shiki language of a language id or alias, or `null`
|
|
51
|
+
* when Blume doesn't generate that language.
|
|
52
|
+
*/
|
|
53
|
+
export declare const sampleLanguageInfo: (raw: string) => SampleLanguageInfo | null;
|
|
54
|
+
/** `openapi()`'s default `codeSamples`, which hand-written endpoint pages always use. */
|
|
55
|
+
export declare const DEFAULT_SAMPLE_LANGUAGES: string[];
|
|
56
|
+
/**
|
|
57
|
+
* The sample languages to render, resolved from config ids (unknown ids
|
|
58
|
+
* dropped), in order. `false` and an empty list both render none.
|
|
59
|
+
*/
|
|
60
|
+
export declare const sampleLanguages: (ids: string[] | false) => SampleLanguage[];
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { UIStrings } from "./i18n-ui.ts";
|
|
1
2
|
import type { ResolvedConfig } from "./schema.ts";
|
|
2
3
|
import type { PageRecord } from "./types.ts";
|
|
3
4
|
/** Where the changelog timeline index is served. */
|
|
@@ -11,3 +12,10 @@ export declare const CHANGELOG_INDEX_ROUTE = "/changelog";
|
|
|
11
12
|
* `/changelog` tab at the index rather than its newest entry.
|
|
12
13
|
*/
|
|
13
14
|
export declare const hasChangelogIndex: (pages: Pick<PageRecord, "contentType" | "meta">[], config: ResolvedConfig) => boolean;
|
|
15
|
+
/**
|
|
16
|
+
* A locale's UI strings with the index's title and description taken from
|
|
17
|
+
* the `changelog` config where it sets them (a string, or a per-locale map
|
|
18
|
+
* resolved like a header label), so every surface that reads the
|
|
19
|
+
* `changelog` strings (the page, its OG card, its Markdown mirror) agrees.
|
|
20
|
+
*/
|
|
21
|
+
export declare const withChangelogIndexText: (config: ResolvedConfig, ui: UIStrings, locale?: string) => UIStrings;
|
|
@@ -126,6 +126,18 @@ export interface FooterConfig {
|
|
|
126
126
|
*/
|
|
127
127
|
socials?: Partial<Record<FooterSocial, string>>;
|
|
128
128
|
}
|
|
129
|
+
/**
|
|
130
|
+
* The generated `/changelog` index's heading and description. Each is a
|
|
131
|
+
* string, or a map of locale code to text; the index renders in the default
|
|
132
|
+
* locale. Unset, they're the `changelog` UI strings (`Changelog` in English),
|
|
133
|
+
* which `i18n.ui` translates.
|
|
134
|
+
*/
|
|
135
|
+
export interface ChangelogConfig {
|
|
136
|
+
/** The index's description, below its heading and in its meta description. */
|
|
137
|
+
description?: LocalizableLabel;
|
|
138
|
+
/** The index's heading, page title, and OG card title. */
|
|
139
|
+
title?: LocalizableLabel;
|
|
140
|
+
}
|
|
129
141
|
/**
|
|
130
142
|
* Where content lives and how it's discovered. `root`/`include`/`exclude` are
|
|
131
143
|
* zero-config shorthand for a single `filesystem()` source; set `sources` to
|
|
@@ -441,6 +453,16 @@ export interface SearchPopularLink {
|
|
|
441
453
|
export type SearchProviderConfig = AnySearchAdapter | false;
|
|
442
454
|
/** The object form of `search`: the adapter plus adapter-independent settings. */
|
|
443
455
|
export interface SearchOptions {
|
|
456
|
+
/** What search reports to the configured analytics providers. */
|
|
457
|
+
analytics?: {
|
|
458
|
+
/**
|
|
459
|
+
* Send each query's text with the `search` and `search_select` events.
|
|
460
|
+
* Defaults to `true`. `false` sends the query's length (`queryChars`)
|
|
461
|
+
* instead, and the text rides only the `blume:track` DOM event, for a
|
|
462
|
+
* site to forward on its own terms.
|
|
463
|
+
*/
|
|
464
|
+
queries?: boolean;
|
|
465
|
+
};
|
|
444
466
|
/** Indexing behavior. */
|
|
445
467
|
indexing?: {
|
|
446
468
|
/**
|
|
@@ -463,7 +485,7 @@ export interface SearchOptions {
|
|
|
463
485
|
/**
|
|
464
486
|
* Search configuration. Pass an adapter directly (`search: algolia({…})`, or
|
|
465
487
|
* `false`) as shorthand for the object form, which also carries `popular`
|
|
466
|
-
* links and `indexing` settings.
|
|
488
|
+
* links and `indexing` and `analytics` settings.
|
|
467
489
|
*/
|
|
468
490
|
export type SearchConfig = SearchProviderConfig | SearchOptions;
|
|
469
491
|
/** An empty-state prompt shown before the first question to the assistant. */
|
|
@@ -1177,8 +1199,8 @@ export interface MarkdownConfig {
|
|
|
1177
1199
|
export interface ReactConfig {
|
|
1178
1200
|
/**
|
|
1179
1201
|
* Auto-memoize React components/hooks with the React Compiler
|
|
1180
|
-
* (`
|
|
1181
|
-
* set to `false` to skip the compiler
|
|
1202
|
+
* (`oxc-transform-react`). On by default whenever React is enabled;
|
|
1203
|
+
* set to `false` to skip the compiler pass. Defaults to `true`.
|
|
1182
1204
|
*/
|
|
1183
1205
|
compiler?: boolean;
|
|
1184
1206
|
}
|
|
@@ -1341,6 +1363,11 @@ export interface BlumeConfig {
|
|
|
1341
1363
|
* compose: with both set, a page lands at `{deployment.base}/{basePath}/page`.
|
|
1342
1364
|
*/
|
|
1343
1365
|
basePath?: string;
|
|
1366
|
+
/**
|
|
1367
|
+
* The generated `/changelog` index's title and description, each a string
|
|
1368
|
+
* or a per-locale map. Unset, they're the `changelog` UI strings.
|
|
1369
|
+
*/
|
|
1370
|
+
changelog?: ChangelogConfig;
|
|
1344
1371
|
/**
|
|
1345
1372
|
* Ask readers before analytics runs, with an adapter from `blume/consent`:
|
|
1346
1373
|
* `native()` for Blume's own banner, or a hosted consent manager
|
|
@@ -264,6 +264,10 @@ export interface BlumeDataConfig {
|
|
|
264
264
|
/** Repository URL for header/edit links, or `null`. */
|
|
265
265
|
repoUrl: string | null;
|
|
266
266
|
search: {
|
|
267
|
+
/** `search.analytics`: whether the dialog's events carry each query's text. */
|
|
268
|
+
analytics: {
|
|
269
|
+
queries: boolean;
|
|
270
|
+
};
|
|
267
271
|
enabled: boolean;
|
|
268
272
|
/** Resolved empty-state links; empty when unset (Search falls back to sidebar). */
|
|
269
273
|
popular: {
|
|
@@ -56,6 +56,7 @@ declare const uiStringsObject: z.ZodObject<{
|
|
|
56
56
|
}, z.core.$strip>>;
|
|
57
57
|
changelog: z.ZodPrefault<z.ZodObject<{
|
|
58
58
|
description: z.ZodDefault<z.ZodString>;
|
|
59
|
+
empty: z.ZodDefault<z.ZodString>;
|
|
59
60
|
title: z.ZodDefault<z.ZodString>;
|
|
60
61
|
}, z.core.$strip>>;
|
|
61
62
|
consent: z.ZodPrefault<z.ZodObject<{
|
|
@@ -227,6 +228,7 @@ export declare const uiStringsSchema: z.ZodPrefault<z.ZodObject<{
|
|
|
227
228
|
}, z.core.$strip>>;
|
|
228
229
|
changelog: z.ZodPrefault<z.ZodObject<{
|
|
229
230
|
description: z.ZodDefault<z.ZodString>;
|
|
231
|
+
empty: z.ZodDefault<z.ZodString>;
|
|
230
232
|
title: z.ZodDefault<z.ZodString>;
|
|
231
233
|
}, z.core.$strip>>;
|
|
232
234
|
consent: z.ZodPrefault<z.ZodObject<{
|
|
@@ -58,6 +58,12 @@ export interface FileRouteIndex {
|
|
|
58
58
|
* into the reader's locale onto the fallback copy.
|
|
59
59
|
*/
|
|
60
60
|
byDefaultNavPath: Map<string, string>;
|
|
61
|
+
/**
|
|
62
|
+
* A staged page's entry id (`<source>/<ref>`) → its route. A remote
|
|
63
|
+
* source's files have no path on disk, so a file link between two of them
|
|
64
|
+
* (`./02-errors.mdx`) resolves by entry id, as the rendered link does.
|
|
65
|
+
*/
|
|
66
|
+
byEntryId: Map<string, string>;
|
|
61
67
|
}
|
|
62
68
|
/** The linking side of a file link: where the page's source lives. */
|
|
63
69
|
export interface FileLinkBase {
|
|
@@ -90,6 +96,8 @@ export declare const validateLinks: (graph: ContentGraph, options: {
|
|
|
90
96
|
i18n?: LocaleRouting | null;
|
|
91
97
|
publicDir: string | null;
|
|
92
98
|
checkExternal?: boolean;
|
|
99
|
+
/** External URLs not to request (`--ignore`). Internal links are always checked. */
|
|
100
|
+
ignore?: (url: string) => boolean;
|
|
93
101
|
/** Configured redirects; their `from` paths count as valid link targets. */
|
|
94
102
|
redirects?: {
|
|
95
103
|
from: string;
|
|
@@ -7,6 +7,8 @@ export interface ProbeResult {
|
|
|
7
7
|
status?: number;
|
|
8
8
|
timedOut?: boolean;
|
|
9
9
|
error?: string;
|
|
10
|
+
/** The system error code behind a request that got no response (`ENOTFOUND`). */
|
|
11
|
+
code?: string;
|
|
10
12
|
/** Whether the request was redirected before landing on `status`. */
|
|
11
13
|
redirected?: boolean;
|
|
12
14
|
/** The URL finally landed on, after following redirects. */
|
|
@@ -48,4 +48,10 @@ export declare const scanProject: (root: string, options?: {
|
|
|
48
48
|
overrides?: ConfigOverrides;
|
|
49
49
|
/** Relocate the generated runtime (e.g. `.blume-verify` for isolation). */
|
|
50
50
|
runtimeDir?: string;
|
|
51
|
+
/**
|
|
52
|
+
* Called with the resolved config before any source loads, so a command
|
|
53
|
+
* can report an unset secret ahead of a fetch that fails without it: a
|
|
54
|
+
* source that can't load fails the scan, and nothing after it runs.
|
|
55
|
+
*/
|
|
56
|
+
beforeSources?: (config: ResolvedConfig) => void;
|
|
51
57
|
}) => Promise<BlumeProject>;
|
|
@@ -115,11 +115,19 @@ export type CompiledRedirect = [
|
|
|
115
115
|
];
|
|
116
116
|
/**
|
|
117
117
|
* The pattern redirects among `redirects`, compiled for the server wrappers
|
|
118
|
-
* and
|
|
119
|
-
* percent-encoded as the header needs; a capture is encoded when
|
|
120
|
-
* (see {@link fillLocation}).
|
|
118
|
+
* and Vercel's routing config, in the order to try them. The `Location`
|
|
119
|
+
* template is percent-encoded as the header needs; a capture is encoded when
|
|
120
|
+
* it's filled (see {@link fillLocation}).
|
|
121
121
|
*/
|
|
122
122
|
export declare const compileRedirects: (redirects: readonly RedirectEnds[]) => CompiledRedirect[];
|
|
123
|
+
/**
|
|
124
|
+
* Every redirect among `redirects` compiled, exact paths first: a pattern as
|
|
125
|
+
* {@link compileRedirects} compiles it, an exact path as a rule matching
|
|
126
|
+
* just that path, a trailing slash optional. What the dev server answers
|
|
127
|
+
* with, where Astro's own handler would send an exact redirect to a page
|
|
128
|
+
* served by `[...slug]` as a `301` whatever its status.
|
|
129
|
+
*/
|
|
130
|
+
export declare const compileEveryRedirect: (redirects: readonly RedirectEnds[]) => CompiledRedirect[];
|
|
123
131
|
/** A captured value, encoded for a `Location` header that must not grow a query or fragment. */
|
|
124
132
|
export declare const encodeCapture: (value: string) => string;
|
|
125
133
|
/** A `Location` template with its `$n` references filled from `match`. */
|