blume 1.7.3 → 2.0.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/AGENTS.md +19 -0
- package/CHANGELOG.md +245 -0
- package/README.md +34 -21
- package/dist/cli/{chunk-vacwm2hv.js → chunk-27g6wdth.js} +2 -2
- package/dist/cli/{chunk-ps4m1xh4.js → chunk-2hn4b8z7.js} +513 -550
- package/dist/cli/chunk-2hn4b8z7.js.map +12 -0
- package/dist/cli/chunk-5shv93fd.js +39 -0
- package/dist/cli/chunk-5shv93fd.js.map +10 -0
- package/dist/cli/chunk-6crbhc3x.js +361 -0
- package/dist/cli/chunk-6crbhc3x.js.map +14 -0
- package/dist/cli/{chunk-8cjtbafj.js → chunk-6hsn950k.js} +109 -383
- package/dist/cli/chunk-6hsn950k.js.map +10 -0
- package/dist/cli/chunk-6vm74dry.js +148 -0
- package/dist/cli/chunk-6vm74dry.js.map +10 -0
- package/dist/cli/{chunk-yg63d42r.js → chunk-79jhk4py.js} +87 -58
- package/dist/cli/chunk-79jhk4py.js.map +35 -0
- package/dist/cli/chunk-82bbrxdn.js +51 -0
- package/dist/cli/chunk-82bbrxdn.js.map +10 -0
- package/dist/cli/chunk-abh8yjkn.js +31 -0
- package/dist/cli/chunk-abh8yjkn.js.map +10 -0
- package/dist/cli/chunk-ah61y8py.js +75 -0
- package/dist/cli/chunk-ah61y8py.js.map +11 -0
- package/dist/cli/{chunk-dwgcp5sm.js → chunk-ce574jw2.js} +1 -1
- package/dist/cli/chunk-ch6g3ar0.js +102 -0
- package/dist/cli/chunk-ch6g3ar0.js.map +10 -0
- package/dist/cli/chunk-dh8cwk36.js +279 -0
- package/dist/cli/chunk-dh8cwk36.js.map +10 -0
- package/dist/cli/{chunk-rqy0s5wh.js → chunk-epjnccmv.js} +17 -16
- package/dist/cli/{chunk-rqy0s5wh.js.map → chunk-epjnccmv.js.map} +3 -3
- package/dist/cli/chunk-f2z5v128.js +97 -0
- package/dist/cli/chunk-f2z5v128.js.map +10 -0
- package/dist/cli/{chunk-2z47ypj8.js → chunk-fa25z98p.js} +16 -3
- package/dist/cli/chunk-fa25z98p.js.map +11 -0
- package/dist/cli/{chunk-1jefwnfs.js → chunk-fs23ddbb.js} +1076 -2592
- package/dist/cli/chunk-fs23ddbb.js.map +35 -0
- package/dist/cli/{chunk-e7f42gdj.js → chunk-fxypxtvm.js} +2 -2
- package/dist/cli/{chunk-bvwwhd84.js → chunk-fz5wtpmh.js} +15 -15
- package/dist/cli/{chunk-bvwwhd84.js.map → chunk-fz5wtpmh.js.map} +1 -1
- package/dist/cli/chunk-hdpx1tax.js +91 -0
- package/dist/cli/chunk-hdpx1tax.js.map +10 -0
- package/dist/cli/{chunk-ct47dqpx.js → chunk-jts8mvcz.js} +67 -7
- package/dist/cli/{chunk-2mzebbbz.js.map → chunk-jts8mvcz.js.map} +6 -4
- package/dist/cli/{chunk-ahnw3kxw.js → chunk-jwyddg7y.js} +27 -22
- package/dist/cli/chunk-jwyddg7y.js.map +15 -0
- package/dist/cli/{chunk-cjtn640a.js → chunk-kdp5q7ke.js} +43 -20
- package/dist/cli/chunk-kdp5q7ke.js.map +10 -0
- package/dist/cli/{chunk-5g0w1e2c.js → chunk-kpf8rrjc.js} +28 -16
- package/dist/cli/{chunk-5g0w1e2c.js.map → chunk-kpf8rrjc.js.map} +4 -4
- package/dist/cli/chunk-m3vmjgmq.js +133 -0
- package/dist/cli/chunk-m3vmjgmq.js.map +10 -0
- package/dist/cli/{chunk-b27xqwn9.js → chunk-mb2919y2.js} +9 -5
- package/dist/cli/chunk-mb2919y2.js.map +10 -0
- package/dist/cli/{chunk-5qk08vmp.js → chunk-q5163e60.js} +133 -54
- package/dist/cli/chunk-q5163e60.js.map +11 -0
- package/dist/cli/chunk-qkqwkpte.js +12437 -0
- package/dist/cli/chunk-qkqwkpte.js.map +182 -0
- package/dist/cli/{chunk-4x36ddpw.js → chunk-qs4q5p4e.js} +81 -87
- package/dist/cli/chunk-qs4q5p4e.js.map +10 -0
- package/dist/cli/{chunk-0xjyb285.js → chunk-qwsrynx5.js} +15 -5
- package/dist/cli/{chunk-0xjyb285.js.map → chunk-qwsrynx5.js.map} +4 -4
- package/dist/cli/chunk-s1p84fyh.js +261 -0
- package/dist/cli/chunk-s1p84fyh.js.map +10 -0
- package/dist/cli/chunk-s6jhgk0q.js +176 -0
- package/dist/cli/chunk-s6jhgk0q.js.map +11 -0
- package/dist/cli/chunk-vtk4a6dg.js +374 -0
- package/dist/cli/chunk-vtk4a6dg.js.map +10 -0
- package/dist/cli/{chunk-k79xp7av.js → chunk-wgm7m9qk.js} +230 -700
- package/dist/cli/chunk-wgm7m9qk.js.map +36 -0
- package/dist/cli/chunk-wm7js3j9.js +145 -0
- package/dist/cli/chunk-wm7js3j9.js.map +11 -0
- package/dist/cli/chunk-yt5n7ppj.js +79 -0
- package/dist/cli/chunk-yt5n7ppj.js.map +10 -0
- package/dist/cli/{chunk-3r45185y.js → chunk-yw7dm696.js} +9 -11
- package/dist/cli/{chunk-3r45185y.js.map → chunk-yw7dm696.js.map} +3 -3
- package/dist/cli/{chunk-nn13znc2.js → chunk-zxcczpyx.js} +1 -1
- package/dist/cli/chunk-zxh4d9vy.js +122 -0
- package/dist/cli/chunk-zxh4d9vy.js.map +11 -0
- package/dist/cli/index.js +214 -57
- package/dist/cli/index.js.map +8 -7
- package/dist/types/ai/agent-readability.d.ts +52 -0
- package/dist/types/ai/ai-catalog.d.ts +42 -0
- package/dist/types/ai/api/paths.d.ts +17 -0
- package/dist/types/ai/api-catalog.d.ts +18 -0
- package/dist/types/ai/ask-context.d.ts +7 -7
- package/dist/types/ai/ask.d.ts +368 -0
- package/dist/types/ai/changelog-markdown.d.ts +2 -0
- package/dist/types/ai/component-markdown.d.ts +2 -2
- package/dist/types/ai/index.d.ts +24 -0
- package/dist/types/ai/link-headers.d.ts +24 -0
- package/dist/types/ai/llms.d.ts +25 -0
- package/dist/types/ai/markdown.d.ts +45 -0
- package/dist/types/ai/mcp/discovery.d.ts +68 -0
- package/dist/types/ai/mcp/tools.d.ts +16 -0
- package/dist/types/ai/openapi-components.d.ts +43 -0
- package/dist/types/ai/relative-links.d.ts +26 -0
- package/dist/types/ai/serializers.d.ts +15 -0
- package/dist/types/ai/skills.d.ts +42 -0
- package/dist/types/ai/tar.d.ts +25 -0
- package/dist/types/ai/visibility.d.ts +17 -0
- package/dist/types/ai/web-bot-auth.d.ts +16 -0
- package/dist/types/analytics/adobe.d.ts +35 -0
- package/dist/types/analytics/amplitude.d.ts +50 -0
- package/dist/types/analytics/clarity.d.ts +31 -0
- package/dist/types/analytics/clearbit.d.ts +29 -0
- package/dist/types/analytics/cloudflare.d.ts +41 -0
- package/dist/types/analytics/fathom.d.ts +41 -0
- package/dist/types/analytics/google-analytics.d.ts +44 -0
- package/dist/types/analytics/google-tag-manager.d.ts +40 -0
- package/dist/types/analytics/head.d.ts +30 -0
- package/dist/types/analytics/heap.d.ts +40 -0
- package/dist/types/analytics/hightouch.d.ts +44 -0
- package/dist/types/analytics/hotjar.d.ts +33 -0
- package/dist/types/analytics/index.d.ts +61 -0
- package/dist/types/analytics/inline.d.ts +17 -0
- package/dist/types/analytics/logrocket.d.ts +44 -0
- package/dist/types/analytics/mixpanel.d.ts +67 -0
- package/dist/types/analytics/pirsch.d.ts +42 -0
- package/dist/types/analytics/plausible.d.ts +56 -0
- package/dist/types/analytics/posthog.d.ts +45 -0
- package/dist/types/analytics/schema.d.ts +320 -0
- package/dist/types/analytics/script.d.ts +46 -0
- package/dist/types/analytics/segment.d.ts +50 -0
- package/dist/types/analytics/vercel.d.ts +48 -0
- package/dist/types/astro/integration.d.ts +76 -0
- package/dist/types/astro/markdown-negotiation.d.ts +23 -0
- package/dist/types/astro/module-types.d.ts +14 -0
- package/dist/types/astro/pages.d.ts +44 -0
- package/dist/types/cli/env.d.ts +12 -0
- package/dist/types/cli/init/scaffold.d.ts +154 -0
- package/dist/types/components/layout/nav-utils.d.ts +11 -0
- package/dist/types/core/adapter.d.ts +47 -0
- package/dist/types/core/api-name.d.ts +7 -0
- package/dist/types/core/changelog-index.d.ts +13 -0
- package/dist/types/core/config-input.d.ts +197 -526
- package/dist/types/core/config.d.ts +61 -35
- package/dist/types/core/content-assets.d.ts +76 -0
- package/dist/types/core/custom-pages.d.ts +33 -0
- package/dist/types/core/data.d.ts +30 -15
- package/dist/types/core/define-components.d.ts +12 -9
- package/dist/types/core/deployment-env.d.ts +6 -11
- package/dist/types/core/frontmatter.d.ts +10 -0
- package/dist/types/core/graph.d.ts +18 -0
- package/dist/types/core/heading-markers.d.ts +54 -0
- package/dist/types/core/i18n-ui.d.ts +12 -10
- package/dist/types/core/i18n.d.ts +87 -0
- package/dist/types/core/includes.d.ts +138 -0
- package/dist/types/core/last-modified.d.ts +47 -0
- package/dist/types/core/links.d.ts +95 -0
- package/dist/types/core/locale-links.d.ts +60 -0
- package/dist/types/core/manifest.d.ts +17 -0
- package/dist/types/core/meta.d.ts +38 -0
- package/dist/types/core/nav-diagnostics.d.ts +26 -0
- package/dist/types/core/navigation.d.ts +6 -0
- package/dist/types/core/node-require.d.ts +19 -0
- package/dist/types/core/package-json.d.ts +13 -0
- package/dist/types/core/probe.d.ts +42 -0
- package/dist/types/core/project-graph.d.ts +51 -0
- package/dist/types/core/project.d.ts +2 -0
- package/dist/types/core/safe-href.d.ts +2 -0
- package/dist/types/core/safe-links.d.ts +26 -0
- package/dist/types/core/schema.d.ts +2284 -454
- package/dist/types/core/site-url.d.ts +16 -0
- package/dist/types/core/sources/assets.d.ts +36 -0
- package/dist/types/core/sources/cache.d.ts +37 -0
- package/dist/types/core/sources/collection.d.ts +28 -0
- package/dist/types/core/sources/contentful-rich-text.d.ts +31 -0
- package/dist/types/core/sources/contentful.d.ts +40 -0
- package/dist/types/core/sources/filesystem.d.ts +24 -0
- package/dist/types/core/sources/github-releases.d.ts +31 -0
- package/dist/types/core/sources/json.d.ts +30 -0
- package/dist/types/core/sources/lexical.d.ts +19 -0
- package/dist/types/core/sources/lower.d.ts +75 -0
- package/dist/types/core/sources/mdx-remote.d.ts +28 -0
- package/dist/types/core/sources/normalize.d.ts +147 -0
- package/dist/types/core/sources/notion.d.ts +131 -0
- package/dist/types/core/sources/obsidian.d.ts +46 -0
- package/dist/types/core/sources/payload.d.ts +39 -0
- package/dist/types/core/sources/portable-text.d.ts +42 -0
- package/dist/types/core/sources/read.d.ts +23 -0
- package/dist/types/core/sources/remote.d.ts +74 -0
- package/dist/types/core/sources/resolve.d.ts +19 -0
- package/dist/types/core/sources/sanity.d.ts +43 -0
- package/dist/types/core/sources/strapi-blocks.d.ts +12 -0
- package/dist/types/core/sources/strapi.d.ts +33 -0
- package/dist/types/core/sources/types.d.ts +7 -0
- package/dist/types/core/sources/watch.d.ts +45 -0
- package/dist/types/core/text-width.d.ts +11 -0
- package/dist/types/core/types.d.ts +15 -1
- package/dist/types/core/unrecognized-keys.d.ts +7 -0
- package/dist/types/core/versions.d.ts +72 -0
- package/dist/types/core/yaml.d.ts +9 -0
- package/dist/types/deploy/adapter-output.d.ts +45 -0
- package/dist/types/deploy/adapters/cloudflare.d.ts +40 -0
- package/dist/types/deploy/adapters/index.d.ts +29 -0
- package/dist/types/deploy/adapters/netlify.d.ts +37 -0
- package/dist/types/deploy/adapters/node.d.ts +37 -0
- package/dist/types/deploy/adapters/registry.d.ts +133 -0
- package/dist/types/deploy/adapters/types.d.ts +71 -0
- package/dist/types/deploy/adapters/vercel.d.ts +38 -0
- package/dist/types/deploy/artifacts.d.ts +65 -0
- package/dist/types/deploy/cloudflare-negotiation.d.ts +196 -0
- package/dist/types/deploy/function-bundle.d.ts +80 -0
- package/dist/types/deploy/headers.d.ts +50 -0
- package/dist/types/deploy/node-headers.d.ts +42 -0
- package/dist/types/deploy/platforms/cloudflare.d.ts +40 -0
- package/dist/types/deploy/platforms/index.d.ts +18 -0
- package/dist/types/deploy/platforms/netlify.d.ts +13 -0
- package/dist/types/deploy/platforms/node.d.ts +11 -0
- package/dist/types/deploy/platforms/paths.d.ts +27 -0
- package/dist/types/deploy/platforms/static.d.ts +10 -0
- package/dist/types/deploy/platforms/types.d.ts +104 -0
- package/dist/types/deploy/platforms/vercel.d.ts +32 -0
- package/dist/types/deploy/redirects.d.ts +53 -0
- package/dist/types/deploy/robots.d.ts +8 -0
- package/dist/types/deploy/rss.d.ts +31 -0
- package/dist/types/deploy/sitemap.d.ts +21 -0
- package/dist/types/deploy/vercel-negotiation.d.ts +109 -0
- package/dist/types/markdown/code-title.d.ts +32 -0
- package/dist/types/markdown/fence-meta.d.ts +23 -0
- package/dist/types/markdown/themes.d.ts +3 -3
- package/dist/types/openapi/asyncapi.d.ts +129 -0
- package/dist/types/openapi/graphql-build.d.ts +8 -0
- package/dist/types/openapi/graphql.d.ts +122 -0
- package/dist/types/openapi/model.d.ts +158 -0
- package/dist/types/openapi/parse.d.ts +57 -0
- package/dist/types/openapi/references.d.ts +37 -25
- package/dist/types/openapi/render-mdx.d.ts +33 -0
- package/dist/types/openapi/sentence.d.ts +7 -0
- package/dist/types/openapi/signature.d.ts +10 -0
- package/dist/types/openapi/source.d.ts +22 -0
- package/dist/types/openapi/spec-dependency-error.d.ts +10 -0
- package/dist/types/reference/asyncapi.d.ts +166 -0
- package/dist/types/reference/graphql.d.ts +181 -0
- package/dist/types/reference/index.d.ts +32 -0
- package/dist/types/reference/openapi.d.ts +165 -0
- package/dist/types/reference/options.d.ts +157 -0
- package/dist/types/reference/scalar.d.ts +136 -0
- package/dist/types/reference/schema.d.ts +630 -0
- package/dist/types/search/adapters/algolia.d.ts +32 -0
- package/dist/types/search/adapters/flexsearch.d.ts +12 -0
- package/dist/types/search/adapters/index.d.ts +31 -0
- package/dist/types/search/adapters/mixedbread.d.ts +22 -0
- package/dist/types/search/adapters/orama-cloud.d.ts +33 -0
- package/dist/types/search/adapters/orama.d.ts +13 -0
- package/dist/types/search/adapters/pagefind.d.ts +12 -0
- package/dist/types/search/adapters/registry.d.ts +228 -0
- package/dist/types/search/adapters/types.d.ts +34 -0
- package/dist/types/search/adapters/typesense.d.ts +42 -0
- package/dist/types/search/build.d.ts +23 -0
- package/dist/types/search/documents.d.ts +90 -0
- package/dist/types/search/facets.d.ts +3 -0
- package/dist/types/search/orama-index.d.ts +1 -1
- package/dist/types/search/sync/algolia.d.ts +14 -0
- package/dist/types/search/sync/index.d.ts +14 -0
- package/dist/types/search/sync/orama-cloud.d.ts +10 -0
- package/dist/types/search/sync/typesense.d.ts +14 -0
- package/dist/types/sources/contentful.d.ts +68 -0
- package/dist/types/sources/custom.d.ts +20 -0
- package/dist/types/sources/filesystem.d.ts +42 -0
- package/dist/types/sources/github-releases.d.ts +46 -0
- package/dist/types/sources/index.d.ts +48 -0
- package/dist/types/sources/mdx-remote.d.ts +63 -0
- package/dist/types/sources/notion.d.ts +65 -0
- package/dist/types/sources/obsidian.d.ts +34 -0
- package/dist/types/sources/payload.d.ts +68 -0
- package/dist/types/sources/registry.d.ts +1414 -0
- package/dist/types/sources/sanity.d.ts +69 -0
- package/dist/types/sources/shared.d.ts +46 -0
- package/dist/types/sources/strapi.d.ts +66 -0
- package/dist/types/theme/icon-kind.d.ts +11 -0
- package/dist/types/theme/icons.d.ts +20 -0
- package/docs/01-quickstart.mdx +18 -18
- package/docs/02-deployment.mdx +52 -28
- package/docs/03-upgrading.mdx +364 -0
- package/docs/04-migrating.mdx +58 -0
- package/docs/08-faq.mdx +5 -5
- package/docs/advanced/blog.mdx +13 -6
- package/docs/advanced/changelog.mdx +23 -35
- package/docs/advanced/custom-pages.mdx +22 -10
- package/docs/advanced/meta.ts +1 -8
- package/docs/advanced/skills.mdx +8 -0
- package/docs/cli/audit.mdx +646 -0
- package/docs/cli/doctor.mdx +29 -0
- package/docs/{reference/eval.mdx → cli/evals.mdx} +12 -11
- package/docs/cli/index.mdx +105 -0
- package/docs/cli/meta.ts +7 -0
- package/docs/{reference → cli}/translate.mdx +9 -9
- package/docs/cli/validate.mdx +41 -0
- package/docs/cli/version.mdx +40 -0
- package/docs/configuration/analytics.mdx +350 -59
- package/docs/configuration/assistant.mdx +357 -0
- package/docs/configuration/customization.mdx +16 -10
- package/docs/configuration/index.mdx +50 -31
- package/docs/configuration/meta.ts +1 -1
- package/docs/configuration/search.mdx +76 -55
- package/docs/configuration/theming.mdx +24 -15
- package/docs/content/components.mdx +21 -5
- package/docs/{reference → content}/frontmatter.mdx +35 -1
- package/docs/content/i18n.mdx +9 -7
- package/docs/content/includes.mdx +2 -4
- package/docs/content/index.mdx +1 -1
- package/docs/content/islands.mdx +11 -6
- package/docs/content/meta.mdx +1 -1
- package/docs/content/meta.ts +1 -0
- package/docs/content/navigation.mdx +9 -7
- package/docs/content/sources.mdx +145 -50
- package/docs/content/syntax.mdx +16 -12
- package/docs/content/versioning.mdx +3 -3
- package/docs/discoverability/agent-discovery.mdx +12 -12
- package/docs/discoverability/index.mdx +4 -4
- package/docs/discoverability/json-api.mdx +4 -4
- package/docs/discoverability/llms-txt.mdx +6 -6
- package/docs/discoverability/markdown.mdx +4 -4
- package/docs/discoverability/mcp.mdx +11 -11
- package/docs/discoverability/sitemap-and-robots.mdx +3 -3
- package/docs/index.mdx +4 -4
- package/docs/references/asyncapi.mdx +59 -0
- package/docs/{advanced → references}/graphql.mdx +45 -32
- package/docs/{reference → references}/meta.ts +2 -2
- package/docs/references/openapi.mdx +171 -0
- package/docs/references/scalar.mdx +64 -0
- package/package.json +42 -8
- package/skills/blume/SKILL.md +23 -10
- package/skills/blume-migrate/SKILL.md +22 -21
- package/skills/blume-migrate/assets/oxfmt@0.67.0.patch +49 -0
- package/skills/blume-migrate/references/docusaurus.md +5 -4
- package/skills/blume-migrate/references/fumadocs.md +4 -4
- package/skills/blume-migrate/references/mintlify.md +23 -8
- package/skills/blume-migrate/references/monorepo.md +6 -6
- package/skills/blume-migrate/references/starlight.md +4 -4
- package/src/ai/agent-readability.ts +25 -26
- package/src/ai/ai-catalog.ts +50 -32
- package/src/ai/api/handlers.ts +46 -11
- package/src/ai/api/paths.ts +1 -1
- package/src/ai/api-catalog.ts +8 -8
- package/src/ai/ask-context.ts +7 -7
- package/src/ai/ask-data.ts +3 -3
- package/src/ai/ask.ts +637 -100
- package/src/ai/changelog-markdown.ts +91 -0
- package/src/ai/component-markdown.ts +328 -12
- package/src/ai/cors.ts +3 -3
- package/src/ai/index.ts +45 -0
- package/src/ai/link-headers.ts +7 -6
- package/src/ai/llms.ts +20 -15
- package/src/ai/markdown.ts +35 -5
- package/src/ai/mcp/data.ts +9 -5
- package/src/ai/openapi-components.ts +5 -2
- package/src/ai/relative-links.ts +170 -0
- package/src/ai/serializers.ts +3 -3
- package/src/ai/skills.ts +1 -1
- package/src/ai/visibility.ts +1 -1
- package/src/ai/web-bot-auth.ts +2 -2
- package/src/analytics/adobe.ts +46 -0
- package/src/analytics/amplitude.ts +79 -0
- package/src/analytics/clarity.ts +46 -0
- package/src/analytics/clearbit.ts +47 -0
- package/src/analytics/cloudflare.ts +67 -0
- package/src/analytics/fathom.ts +64 -0
- package/src/analytics/google-analytics.ts +84 -0
- package/src/analytics/google-tag-manager.ts +61 -0
- package/src/analytics/head.ts +130 -0
- package/src/analytics/heap.ts +65 -0
- package/src/analytics/hightouch.ts +77 -0
- package/src/analytics/hotjar.ts +47 -0
- package/src/analytics/index.ts +71 -0
- package/src/analytics/inline.ts +21 -0
- package/src/analytics/logrocket.ts +71 -0
- package/src/analytics/mixpanel.ts +92 -0
- package/src/analytics/pirsch.ts +66 -0
- package/src/analytics/plausible.ts +83 -0
- package/src/analytics/posthog.ts +78 -0
- package/src/analytics/schema.ts +60 -0
- package/src/analytics/script.ts +60 -0
- package/src/analytics/segment.ts +85 -0
- package/src/analytics/vercel.ts +50 -0
- package/src/astro/adapter-root.ts +7 -9
- package/src/astro/component-slots.ts +131 -91
- package/src/astro/generate.ts +129 -361
- package/src/astro/integration.ts +2 -6
- package/src/astro/module-types.ts +1 -1
- package/src/astro/pages.ts +13 -101
- package/src/astro/render-deps.ts +379 -0
- package/src/astro/runtime-deps.ts +201 -0
- package/src/astro/templates.ts +575 -562
- package/src/audit/agent.ts +24 -0
- package/src/audit/catalog.ts +2 -2
- package/src/audit/checks/assets.ts +2 -2
- package/src/audit/checks/dns-aid.ts +1 -1
- package/src/audit/checks/duplicates.ts +3 -1
- package/src/audit/checks/i18n.ts +1 -1
- package/src/audit/checks/indexability.ts +7 -7
- package/src/audit/checks/links.ts +2 -2
- package/src/audit/checks/llms.ts +6 -6
- package/src/audit/checks/network.ts +3 -3
- package/src/audit/checks/og-image.ts +2 -2
- package/src/audit/checks/robots.ts +1 -1
- package/src/audit/checks/sitemap.ts +2 -2
- package/src/audit/checks/social.ts +1 -1
- package/src/audit/run.ts +4 -3
- package/src/audit/terms.ts +31 -0
- package/src/audit/url.ts +13 -13
- package/src/blume-modules.d.ts +2 -2
- package/src/cli/command-meta.ts +10 -0
- package/src/cli/commands/audit.ts +40 -21
- package/src/cli/commands/build.ts +71 -316
- package/src/cli/commands/check.ts +1 -0
- package/src/cli/commands/dev.ts +40 -1
- package/src/cli/commands/doctor.ts +92 -14
- package/src/cli/commands/eject.ts +44 -7
- package/src/cli/commands/eval.ts +5 -5
- package/src/cli/commands/init.ts +161 -41
- package/src/cli/commands/migrate.ts +121 -0
- package/src/cli/commands/preview.ts +7 -1
- package/src/cli/commands/translate.ts +5 -5
- package/src/cli/commands/upgrade.ts +141 -0
- package/src/cli/commands/version.ts +57 -44
- package/src/cli/eject-scripts.ts +121 -6
- package/src/cli/index.ts +11 -1
- package/src/cli/init/install.ts +70 -0
- package/src/cli/init/questions.ts +7 -0
- package/src/cli/init/scaffold.ts +459 -75
- package/src/cli/lazy-command.ts +37 -1
- package/src/cli/prepare.ts +40 -6
- package/src/cli/required-secrets.ts +39 -12
- package/src/cli/unknown-flags.ts +266 -0
- package/src/cli/yarn-pnp.ts +52 -0
- package/src/components/content/AccordionItem.astro +7 -1
- package/src/components/content/Card.astro +4 -3
- package/src/components/content/ColorItem.astro +22 -4
- package/src/components/content/GithubInfo.astro +2 -2
- package/src/components/content/Prompt.astro +25 -25
- package/src/components/content/Tabs.astro +3 -1
- package/src/components/content/Tile.astro +2 -3
- package/src/components/content/Tooltip.astro +57 -9
- package/src/components/content/content-strings.ts +34 -0
- package/src/components/content/diff.ts +1 -1
- package/src/components/content/mermaid-element.ts +13 -2
- package/src/components/content/prompt-markdown.ts +292 -0
- package/src/components/content/tooltip-id.ts +41 -0
- package/src/components/copy-feedback.ts +1 -1
- package/src/components/islands/{AskAI.astro → Assistant.astro} +10 -10
- package/src/components/islands/{ask-ai.tsx → assistant.tsx} +23 -23
- package/src/components/islands/hooks.ts +36 -11
- package/src/components/layout/Analytics.astro +21 -79
- package/src/components/layout/Banner.astro +3 -1
- package/src/components/layout/DiscoveryLinks.astro +69 -0
- package/src/components/layout/Header.astro +93 -30
- package/src/components/layout/LanguageSwitcher.astro +4 -1
- package/src/components/layout/Logo.astro +23 -2
- package/src/components/layout/NavSelector.astro +13 -2
- package/src/components/layout/NavTree.astro +12 -3
- package/src/components/layout/NavTreeScript.astro +17 -3
- package/src/components/layout/PageActions.astro +3 -3
- package/src/components/layout/PageFeedback.astro +11 -1
- package/src/components/layout/PageLayout.astro +58 -11
- package/src/components/layout/Pagination.astro +7 -7
- package/src/components/layout/ReferenceLayout.astro +22 -13
- package/src/components/layout/RootLayout.astro +75 -72
- package/src/components/layout/Search.astro +43 -19
- package/src/components/layout/WebMcp.astro +1 -1
- package/src/components/layout/analytics-client.ts +73 -16
- package/src/components/layout/drawer-inert.ts +113 -15
- package/src/components/layout/dropdown-clamp.ts +105 -0
- package/src/components/layout/head-scripts.ts +15 -6
- package/src/components/layout/nav-utils.ts +17 -0
- package/src/components/layout/search/algolia.ts +8 -8
- package/src/components/layout/search/orama-cloud.ts +9 -7
- package/src/components/layout/search/typesense.ts +11 -17
- package/src/components/openapi/MessageComposer.astro +2 -2
- package/src/components/openapi/Playground.astro +2 -2
- package/src/components/openapi/description.ts +2 -2
- package/src/components/openapi/playground-client.ts +79 -10
- package/src/core/changelog-index.ts +24 -0
- package/src/core/code-fences.ts +1 -1
- package/src/core/component-overrides.ts +399 -154
- package/src/core/config-input.ts +201 -566
- package/src/core/config.ts +131 -42
- package/src/core/custom-pages.ts +105 -0
- package/src/core/data.ts +34 -15
- package/src/core/define-components.ts +12 -9
- package/src/core/deployment-env.ts +18 -74
- package/src/core/diagnostics.ts +14 -7
- package/src/core/graph.ts +69 -25
- package/src/core/i18n-ui.ts +41 -11
- package/src/core/i18n.ts +17 -0
- package/src/core/includes.ts +156 -38
- package/src/core/last-modified.ts +6 -11
- package/src/core/links.ts +166 -2
- package/src/core/manifest.ts +10 -3
- package/src/core/navigation.ts +115 -16
- package/src/core/new-tab.ts +35 -0
- package/src/core/node-require.ts +21 -0
- package/src/core/project-graph.ts +42 -26
- package/src/core/project.ts +9 -4
- package/src/core/request-body.ts +61 -0
- package/src/core/safe-href.ts +28 -0
- package/src/core/safe-links.ts +68 -0
- package/src/core/schema.ts +528 -745
- package/src/core/server-features.ts +10 -11
- package/src/core/sources/assets.ts +47 -11
- package/src/core/sources/collection.ts +67 -0
- package/src/core/sources/contentful-rich-text.ts +285 -0
- package/src/core/sources/contentful.ts +173 -0
- package/src/core/sources/github-releases.ts +51 -1
- package/src/core/sources/json.ts +71 -0
- package/src/core/sources/lexical.ts +195 -0
- package/src/core/sources/lower.ts +226 -0
- package/src/core/sources/normalize.ts +52 -2
- package/src/core/sources/notion.ts +39 -28
- package/src/core/sources/payload.ts +135 -0
- package/src/core/sources/portable-text.ts +11 -16
- package/src/core/sources/remote.ts +226 -0
- package/src/core/sources/resolve.ts +104 -166
- package/src/core/sources/sanity.ts +16 -49
- package/src/core/sources/strapi-blocks.ts +124 -0
- package/src/core/sources/strapi.ts +191 -0
- package/src/core/sources/types.ts +12 -1
- package/src/core/types.ts +15 -1
- package/src/core/ui-packs/ar.ts +10 -7
- package/src/core/ui-packs/bg.ts +10 -7
- package/src/core/ui-packs/bn.ts +10 -7
- package/src/core/ui-packs/ca.ts +7 -6
- package/src/core/ui-packs/cs.ts +10 -7
- package/src/core/ui-packs/da.ts +10 -7
- package/src/core/ui-packs/de.ts +10 -7
- package/src/core/ui-packs/el.ts +7 -6
- package/src/core/ui-packs/es.ts +7 -6
- package/src/core/ui-packs/fa.ts +10 -7
- package/src/core/ui-packs/fi.ts +10 -7
- package/src/core/ui-packs/fr.ts +7 -6
- package/src/core/ui-packs/he.ts +10 -7
- package/src/core/ui-packs/hi.ts +10 -7
- package/src/core/ui-packs/hr.ts +10 -7
- package/src/core/ui-packs/hu.ts +10 -7
- package/src/core/ui-packs/id.ts +10 -7
- package/src/core/ui-packs/it.ts +7 -6
- package/src/core/ui-packs/ja.ts +7 -6
- package/src/core/ui-packs/ko.ts +7 -6
- package/src/core/ui-packs/nl.ts +10 -7
- package/src/core/ui-packs/no.ts +10 -7
- package/src/core/ui-packs/pl.ts +10 -7
- package/src/core/ui-packs/pt-br.ts +7 -6
- package/src/core/ui-packs/pt.ts +7 -6
- package/src/core/ui-packs/ro.ts +10 -7
- package/src/core/ui-packs/ru.ts +10 -7
- package/src/core/ui-packs/sk.ts +10 -7
- package/src/core/ui-packs/sr.ts +10 -7
- package/src/core/ui-packs/sv.ts +10 -7
- package/src/core/ui-packs/th.ts +7 -6
- package/src/core/ui-packs/tr.ts +10 -7
- package/src/core/ui-packs/uk.ts +10 -7
- package/src/core/ui-packs/vi.ts +7 -6
- package/src/core/ui-packs/zh-tw.ts +7 -6
- package/src/core/ui-packs/zh.ts +7 -6
- package/src/core/unrecognized-keys.ts +10 -0
- package/src/core/version-cut.ts +116 -8
- package/src/deploy/adapter-output.ts +57 -97
- package/src/deploy/adapters/cloudflare.ts +39 -0
- package/src/deploy/adapters/index.ts +41 -0
- package/src/deploy/adapters/netlify.ts +34 -0
- package/src/deploy/adapters/node.ts +34 -0
- package/src/deploy/adapters/registry.ts +127 -0
- package/src/deploy/adapters/types.ts +92 -0
- package/src/deploy/adapters/vercel.ts +35 -0
- package/src/deploy/artifacts.ts +55 -27
- package/src/deploy/cloudflare-negotiation.ts +179 -100
- package/src/deploy/function-bundle.ts +18 -3
- package/src/deploy/headers.ts +124 -23
- package/src/deploy/node-headers.ts +198 -0
- package/src/deploy/platforms/cloudflare.ts +312 -0
- package/src/deploy/platforms/index.ts +67 -0
- package/src/deploy/platforms/netlify.ts +52 -0
- package/src/deploy/platforms/node.ts +40 -0
- package/src/deploy/platforms/paths.ts +42 -0
- package/src/deploy/platforms/static.ts +29 -0
- package/src/deploy/platforms/types.ts +112 -0
- package/src/deploy/platforms/vercel.ts +193 -0
- package/src/deploy/redirects.ts +30 -18
- package/src/deploy/robots.ts +3 -3
- package/src/deploy/rss.ts +2 -2
- package/src/deploy/sitemap.ts +2 -2
- package/src/deploy/vercel-negotiation.ts +2 -2
- package/src/eval/agents.ts +32 -1
- package/src/eval/findings.ts +19 -11
- package/src/eval/report.ts +10 -2
- package/src/markdown/external-links.ts +65 -0
- package/src/markdown/include.ts +45 -27
- package/src/markdown/index.ts +34 -9
- package/src/markdown/inline-code.ts +12 -6
- package/src/markdown/relative-links.ts +324 -0
- package/src/markdown/themes.ts +3 -3
- package/src/migrate/migrate.ts +149 -0
- package/src/openapi/parse.ts +64 -16
- package/src/openapi/proxy.ts +62 -10
- package/src/openapi/references.ts +147 -147
- package/src/openapi/render-mdx.ts +32 -10
- package/src/openapi/scalar.ts +15 -13
- package/src/openapi/sentence.ts +14 -0
- package/src/openapi/source.ts +37 -21
- package/src/openapi/spec-dependency-error.ts +15 -0
- package/src/reference/asyncapi.ts +83 -0
- package/src/reference/graphql.ts +89 -0
- package/src/reference/index.ts +40 -0
- package/src/reference/openapi.ts +83 -0
- package/src/reference/options.ts +201 -0
- package/src/reference/scalar.ts +136 -0
- package/src/reference/schema.ts +88 -0
- package/src/registry/eject.ts +109 -53
- package/src/search/adapters/algolia.ts +46 -0
- package/src/search/adapters/flexsearch.ts +29 -0
- package/src/search/adapters/index.ts +39 -0
- package/src/search/adapters/mixedbread.ts +39 -0
- package/src/search/adapters/orama-cloud.ts +51 -0
- package/src/search/adapters/orama.ts +24 -0
- package/src/search/adapters/pagefind.ts +27 -0
- package/src/search/adapters/registry.ts +131 -0
- package/src/search/adapters/types.ts +46 -0
- package/src/search/adapters/typesense.ts +57 -0
- package/src/search/build.ts +8 -4
- package/src/search/documents.ts +8 -2
- package/src/search/orama-index.ts +1 -1
- package/src/search/sync/algolia.ts +12 -11
- package/src/search/sync/index.ts +35 -20
- package/src/search/sync/orama-cloud.ts +12 -9
- package/src/search/sync/typesense.ts +15 -13
- package/src/sources/contentful.ts +63 -0
- package/src/sources/custom.ts +38 -0
- package/src/sources/filesystem.ts +51 -0
- package/src/sources/github-releases.ts +52 -0
- package/src/sources/index.ts +60 -0
- package/src/sources/mdx-remote.ts +76 -0
- package/src/sources/notion.ts +63 -0
- package/src/sources/obsidian.ts +38 -0
- package/src/sources/payload.ts +60 -0
- package/src/sources/registry.ts +182 -0
- package/src/sources/sanity.ts +66 -0
- package/src/sources/shared.ts +52 -0
- package/src/sources/strapi.ts +58 -0
- package/src/theme/entry.ts +24 -2
- package/src/translate/report.ts +40 -7
- package/src/upgrade/upgrade.ts +499 -0
- package/dist/cli/chunk-0qymqwzz.js +0 -164
- package/dist/cli/chunk-0qymqwzz.js.map +0 -15
- package/dist/cli/chunk-1jefwnfs.js.map +0 -48
- package/dist/cli/chunk-2mzebbbz.js +0 -69
- package/dist/cli/chunk-2z47ypj8.js.map +0 -11
- package/dist/cli/chunk-4x36ddpw.js.map +0 -11
- package/dist/cli/chunk-5093q3n7.js +0 -68
- package/dist/cli/chunk-5093q3n7.js.map +0 -10
- package/dist/cli/chunk-5qk08vmp.js.map +0 -11
- package/dist/cli/chunk-7s8hm3b6.js +0 -5347
- package/dist/cli/chunk-7s8hm3b6.js.map +0 -58
- package/dist/cli/chunk-8cjtbafj.js.map +0 -13
- package/dist/cli/chunk-97r59kpr.js +0 -381
- package/dist/cli/chunk-97r59kpr.js.map +0 -12
- package/dist/cli/chunk-ahnw3kxw.js.map +0 -15
- package/dist/cli/chunk-b27xqwn9.js.map +0 -10
- package/dist/cli/chunk-bf6bt1xt.js +0 -185
- package/dist/cli/chunk-bf6bt1xt.js.map +0 -11
- package/dist/cli/chunk-cjtn640a.js.map +0 -10
- package/dist/cli/chunk-ct47dqpx.js.map +0 -11
- package/dist/cli/chunk-esphfr8p.js +0 -107
- package/dist/cli/chunk-esphfr8p.js.map +0 -11
- package/dist/cli/chunk-ex56aa81.js +0 -1016
- package/dist/cli/chunk-ex56aa81.js.map +0 -13
- package/dist/cli/chunk-garjf5z9.js +0 -30
- package/dist/cli/chunk-garjf5z9.js.map +0 -10
- package/dist/cli/chunk-js7saxwm.js +0 -1045
- package/dist/cli/chunk-js7saxwm.js.map +0 -22
- package/dist/cli/chunk-k79xp7av.js.map +0 -39
- package/dist/cli/chunk-ps4m1xh4.js.map +0 -15
- package/dist/cli/chunk-q4rae3bg.js +0 -60
- package/dist/cli/chunk-q4rae3bg.js.map +0 -10
- package/dist/cli/chunk-rz9jmfhz.js +0 -108
- package/dist/cli/chunk-rz9jmfhz.js.map +0 -10
- package/dist/cli/chunk-vh9w1sgp.js +0 -73
- package/dist/cli/chunk-vh9w1sgp.js.map +0 -10
- package/dist/cli/chunk-vrfp10qk.js +0 -81
- package/dist/cli/chunk-vrfp10qk.js.map +0 -10
- package/dist/cli/chunk-yg63d42r.js.map +0 -34
- package/docs/advanced/api-reference.mdx +0 -240
- package/docs/configuration/ask-ai.mdx +0 -256
- package/docs/reference/cli.mdx +0 -197
- package/skills/blume-migrate/assets/oxfmt@0.55.0.patch +0 -20
- package/src/components/content/changelog-element.ts +0 -69
- package/src/search/providers.ts +0 -91
- /package/dist/cli/{chunk-vacwm2hv.js.map → chunk-27g6wdth.js.map} +0 -0
- /package/dist/cli/{chunk-dwgcp5sm.js.map → chunk-ce574jw2.js.map} +0 -0
- /package/dist/cli/{chunk-e7f42gdj.js.map → chunk-fxypxtvm.js.map} +0 -0
- /package/dist/cli/{chunk-nn13znc2.js.map → chunk-zxcczpyx.js.map} +0 -0
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { JsonValue } from "../core/adapter.ts";
|
|
2
|
+
/**
|
|
3
|
+
* JSON for an inline `<script>` body. `JSON.stringify` leaves `<` alone, so a
|
|
4
|
+
* value like `</script>` would end the script element early; escape it the way
|
|
5
|
+
* the layouts do for their JSON.
|
|
6
|
+
*/
|
|
7
|
+
export declare const inlineJson: (value: JsonValue) => string;
|
|
8
|
+
/**
|
|
9
|
+
* A snippet that re-sends a pageview on every client-router navigation, for a
|
|
10
|
+
* provider whose loader only counts real page loads. Keyed off
|
|
11
|
+
* `astro:page-load` with a path-plus-query guard held in `window[slot]`, so the
|
|
12
|
+
* initial load (which the loader already counted) and same-page hash moves
|
|
13
|
+
* aren't double-counted, while a query-only navigation (`?tab=a` → `?tab=b`)
|
|
14
|
+
* still is. Each adapter passes its own slot: two adapters sharing one would
|
|
15
|
+
* see the second always match the first's update and never fire.
|
|
16
|
+
*/
|
|
17
|
+
export declare const spaPageviews: (slot: string, capture: string) => string;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import type { AdapterDescriptor, JsonValue } from "../core/adapter.ts";
|
|
3
|
+
import type { HeadScript } from "./head.ts";
|
|
4
|
+
/** The SDK script LogRocket's install snippet loads. */
|
|
5
|
+
export declare const LOGROCKET_SCRIPT_SRC = "https://cdn.logrocket.io/LogRocket.min.js";
|
|
6
|
+
/** The options {@link logrocket} maps itself. */
|
|
7
|
+
export interface LogrocketNamedOptions {
|
|
8
|
+
/** App ID (`org/app`), from the project's settings. */
|
|
9
|
+
id: string;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Options for {@link logrocket}: the app ID plus any other `LogRocket.init`
|
|
13
|
+
* option, forwarded verbatim (`release`, `console`, `network`, `dom`, …). JSON
|
|
14
|
+
* values only; a sanitizer function can't travel through config — call
|
|
15
|
+
* `LogRocket.init` yourself from a `script()` adapter for those.
|
|
16
|
+
*/
|
|
17
|
+
export type LogrocketOptions = LogrocketNamedOptions & {
|
|
18
|
+
[option: string]: JsonValue;
|
|
19
|
+
};
|
|
20
|
+
export declare const logrocketOptionsSchema: z.ZodObject<{
|
|
21
|
+
id: z.ZodString;
|
|
22
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
23
|
+
export type LogrocketAdapter = AdapterDescriptor<"logrocket", LogrocketOptions>;
|
|
24
|
+
export declare const logrocketAdapterSchema: z.ZodObject<{
|
|
25
|
+
kind: z.ZodLiteral<"logrocket">;
|
|
26
|
+
options: z.ZodObject<{
|
|
27
|
+
id: z.ZodString;
|
|
28
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
29
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
30
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
31
|
+
}, z.core.$strict>;
|
|
32
|
+
/**
|
|
33
|
+
* LogRocket session replay. The app ID is public — it's what the SDK reports
|
|
34
|
+
* under.
|
|
35
|
+
*/
|
|
36
|
+
export declare const logrocket: (options: LogrocketOptions) => LogrocketAdapter;
|
|
37
|
+
/**
|
|
38
|
+
* The two tags from the install snippet: the SDK (synchronous, so
|
|
39
|
+
* `window.LogRocket` exists for the next tag) and the guarded `init` call,
|
|
40
|
+
* with `id` mapped and everything else forwarded to `init` verbatim; the
|
|
41
|
+
* options object is left off when there is nothing to pass, as the snippet
|
|
42
|
+
* prints it. A session spans client-router navigations on its own.
|
|
43
|
+
*/
|
|
44
|
+
export declare const logrocketHead: (options: LogrocketOptions) => HeadScript[];
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import type { AdapterDescriptor, JsonValue } from "../core/adapter.ts";
|
|
3
|
+
import type { HeadScript } from "./head.ts";
|
|
4
|
+
/** Mixpanel's data residency regions and the ingestion host each one uses. */
|
|
5
|
+
export declare const MIXPANEL_REGION_HOSTS: {
|
|
6
|
+
readonly eu: "https://api-eu.mixpanel.com";
|
|
7
|
+
readonly in: "https://api-in.mixpanel.com";
|
|
8
|
+
readonly us: "https://api.mixpanel.com";
|
|
9
|
+
};
|
|
10
|
+
export type MixpanelRegion = keyof typeof MIXPANEL_REGION_HOSTS;
|
|
11
|
+
/** The options {@link mixpanel} maps itself. */
|
|
12
|
+
export interface MixpanelNamedOptions {
|
|
13
|
+
/** Data residency region of the project. Defaults to US. */
|
|
14
|
+
region?: MixpanelRegion;
|
|
15
|
+
/** Project token. */
|
|
16
|
+
token: string;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Options for {@link mixpanel}: the named options plus any other
|
|
20
|
+
* `mixpanel.init` option, forwarded verbatim (`persistence`, `autocapture`,
|
|
21
|
+
* `record_sessions_percent`, `debug`, …). JSON values only.
|
|
22
|
+
*/
|
|
23
|
+
export type MixpanelOptions = MixpanelNamedOptions & {
|
|
24
|
+
[option: string]: JsonValue;
|
|
25
|
+
};
|
|
26
|
+
export declare const mixpanelOptionsSchema: z.ZodObject<{
|
|
27
|
+
region: z.ZodOptional<z.ZodEnum<{
|
|
28
|
+
in: "in";
|
|
29
|
+
eu: "eu";
|
|
30
|
+
us: "us";
|
|
31
|
+
}>>;
|
|
32
|
+
token: z.ZodString;
|
|
33
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
34
|
+
export type MixpanelAdapter = AdapterDescriptor<"mixpanel", MixpanelOptions>;
|
|
35
|
+
export declare const mixpanelAdapterSchema: z.ZodObject<{
|
|
36
|
+
kind: z.ZodLiteral<"mixpanel">;
|
|
37
|
+
options: z.ZodObject<{
|
|
38
|
+
region: z.ZodOptional<z.ZodEnum<{
|
|
39
|
+
in: "in";
|
|
40
|
+
eu: "eu";
|
|
41
|
+
us: "us";
|
|
42
|
+
}>>;
|
|
43
|
+
token: z.ZodString;
|
|
44
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
45
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
46
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
47
|
+
}, z.core.$strict>;
|
|
48
|
+
/**
|
|
49
|
+
* Mixpanel product analytics. The project token is public — it's what every
|
|
50
|
+
* browser event carries.
|
|
51
|
+
*/
|
|
52
|
+
export declare const mixpanel: (options: MixpanelOptions) => MixpanelAdapter;
|
|
53
|
+
/**
|
|
54
|
+
* The init options `mixpanel()` starts from. The library counts one pageview
|
|
55
|
+
* per real page load with `track_pageview: true`; this mode has it track each
|
|
56
|
+
* path-or-query change too, so client-router navigations count without any
|
|
57
|
+
* extra hook. A passthrough option overrides it.
|
|
58
|
+
*/
|
|
59
|
+
export declare const MIXPANEL_DEFAULT_INIT: {
|
|
60
|
+
track_pageview: string;
|
|
61
|
+
};
|
|
62
|
+
/**
|
|
63
|
+
* The loader plus `mixpanel.init` with `token` mapped and `region` mapped to
|
|
64
|
+
* `api_host` (the US host when unset); everything else lands in the init
|
|
65
|
+
* options verbatim, after the mapped host so a raw `api_host` still wins.
|
|
66
|
+
*/
|
|
67
|
+
export declare const mixpanelHead: (options: MixpanelOptions) => HeadScript[];
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import type { AdapterDescriptor } from "../core/adapter.ts";
|
|
3
|
+
import type { HeadScript } from "./head.ts";
|
|
4
|
+
/** The script Pirsch's dashboard snippet loads. */
|
|
5
|
+
export declare const PIRSCH_SCRIPT_SRC = "https://api.pirsch.io/pa.js";
|
|
6
|
+
/** The options {@link pirsch} maps itself. */
|
|
7
|
+
export interface PirschNamedOptions {
|
|
8
|
+
/** Identification code, from Settings → Developer → Identification Code. */
|
|
9
|
+
code: string;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Options for {@link pirsch}: the identification code plus any other script
|
|
13
|
+
* setting, forwarded as a `data-` attribute on the tag (`dev` → `data-dev`,
|
|
14
|
+
* `exclude`, `include`, `domain`, `endpoint`, …).
|
|
15
|
+
*/
|
|
16
|
+
export type PirschOptions = PirschNamedOptions & {
|
|
17
|
+
[setting: string]: string;
|
|
18
|
+
};
|
|
19
|
+
export declare const pirschOptionsSchema: z.ZodObject<{
|
|
20
|
+
code: z.ZodString;
|
|
21
|
+
}, z.core.$catchall<z.ZodString>>;
|
|
22
|
+
export type PirschAdapter = AdapterDescriptor<"pirsch", PirschOptions>;
|
|
23
|
+
export declare const pirschAdapterSchema: z.ZodObject<{
|
|
24
|
+
kind: z.ZodLiteral<"pirsch">;
|
|
25
|
+
options: z.ZodObject<{
|
|
26
|
+
code: z.ZodString;
|
|
27
|
+
}, z.core.$catchall<z.ZodString>>;
|
|
28
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
29
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
30
|
+
}, z.core.$strict>;
|
|
31
|
+
/**
|
|
32
|
+
* Pirsch Analytics. The identification code is public — it's in the tag on
|
|
33
|
+
* every page.
|
|
34
|
+
*/
|
|
35
|
+
export declare const pirsch: (options: PirschOptions) => PirschAdapter;
|
|
36
|
+
/**
|
|
37
|
+
* The deferred tag from the dashboard, with `code` as `data-code`, every other
|
|
38
|
+
* option as its own `data-` attribute, and the `pianjs` id the script finds
|
|
39
|
+
* itself by. Pirsch's script tracks history changes on its own, so
|
|
40
|
+
* client-router navigations need no extra hook.
|
|
41
|
+
*/
|
|
42
|
+
export declare const pirschHead: (options: PirschOptions) => HeadScript[];
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import type { AdapterDescriptor } from "../core/adapter.ts";
|
|
3
|
+
import type { HeadScript } from "./head.ts";
|
|
4
|
+
/** Plausible Cloud, the origin `plausible()` loads the script from when `host` is unset. */
|
|
5
|
+
export declare const PLAUSIBLE_DEFAULT_HOST = "https://plausible.io";
|
|
6
|
+
/** The options {@link plausible} maps itself. */
|
|
7
|
+
export interface PlausibleNamedOptions {
|
|
8
|
+
/** The site's domain as added in Plausible, e.g. `docs.example.com`. */
|
|
9
|
+
domain: string;
|
|
10
|
+
/**
|
|
11
|
+
* Origin of a self-hosted (or proxied) Plausible instance, e.g.
|
|
12
|
+
* `https://plausible.example.com`. Defaults to Plausible Cloud.
|
|
13
|
+
*/
|
|
14
|
+
host?: string;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Options for {@link plausible}: the named options plus any other script
|
|
18
|
+
* setting, forwarded as a `data-` attribute on the tag (`api` → `data-api`,
|
|
19
|
+
* `"exclude"`, `"include"`, …).
|
|
20
|
+
*/
|
|
21
|
+
export type PlausibleOptions = PlausibleNamedOptions & {
|
|
22
|
+
[setting: string]: string;
|
|
23
|
+
};
|
|
24
|
+
export declare const plausibleOptionsSchema: z.ZodObject<{
|
|
25
|
+
domain: z.ZodString;
|
|
26
|
+
host: z.ZodOptional<z.ZodString>;
|
|
27
|
+
}, z.core.$catchall<z.ZodString>>;
|
|
28
|
+
export type PlausibleAdapter = AdapterDescriptor<"plausible", PlausibleOptions>;
|
|
29
|
+
export declare const plausibleAdapterSchema: z.ZodObject<{
|
|
30
|
+
kind: z.ZodLiteral<"plausible">;
|
|
31
|
+
options: z.ZodObject<{
|
|
32
|
+
domain: z.ZodString;
|
|
33
|
+
host: z.ZodOptional<z.ZodString>;
|
|
34
|
+
}, z.core.$catchall<z.ZodString>>;
|
|
35
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
36
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
37
|
+
}, z.core.$strict>;
|
|
38
|
+
/**
|
|
39
|
+
* Plausible Analytics. Nothing here is secret: the tag names the site and
|
|
40
|
+
* where to send events.
|
|
41
|
+
*/
|
|
42
|
+
export declare const plausible: (options: PlausibleOptions) => PlausibleAdapter;
|
|
43
|
+
/**
|
|
44
|
+
* The queue stub from Plausible's custom-events guide: `plausible()` calls
|
|
45
|
+
* made before the deferred script lands are buffered on `plausible.q` and
|
|
46
|
+
* replayed once it loads, so an early `track()` isn't lost.
|
|
47
|
+
*/
|
|
48
|
+
export declare const PLAUSIBLE_QUEUE = "window.plausible=window.plausible||function(){(window.plausible.q=window.plausible.q||[]).push(arguments)}";
|
|
49
|
+
/**
|
|
50
|
+
* The deferred tag from the site's install instructions, with `domain` as
|
|
51
|
+
* `data-domain`, `host` as the script origin, and every other option as its
|
|
52
|
+
* own `data-` attribute, followed by the custom-event queue stub. Plausible's
|
|
53
|
+
* script tracks history changes on its own, so client-router navigations
|
|
54
|
+
* need no extra hook.
|
|
55
|
+
*/
|
|
56
|
+
export declare const plausibleHead: (options: PlausibleOptions) => HeadScript[];
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import type { AdapterDescriptor, JsonValue } from "../core/adapter.ts";
|
|
3
|
+
import type { HeadScript } from "./head.ts";
|
|
4
|
+
/** PostHog Cloud US, the ingestion host `posthog()` uses when `host` is unset. */
|
|
5
|
+
export declare const POSTHOG_DEFAULT_HOST = "https://us.i.posthog.com";
|
|
6
|
+
/** The options {@link posthog} maps itself. */
|
|
7
|
+
export interface PosthogNamedOptions {
|
|
8
|
+
/** API host (for self-hosted / EU). Defaults to PostHog Cloud US. */
|
|
9
|
+
host?: string;
|
|
10
|
+
/** Project API key. */
|
|
11
|
+
key: string;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Options for {@link posthog}: the named options plus any other `posthog.init`
|
|
15
|
+
* option, forwarded verbatim (`persistence`, `capture_pageview`,
|
|
16
|
+
* `autocapture`, …). JSON values only.
|
|
17
|
+
*/
|
|
18
|
+
export type PosthogOptions = PosthogNamedOptions & {
|
|
19
|
+
[option: string]: JsonValue;
|
|
20
|
+
};
|
|
21
|
+
export declare const posthogOptionsSchema: z.ZodObject<{
|
|
22
|
+
host: z.ZodOptional<z.ZodString>;
|
|
23
|
+
key: z.ZodString;
|
|
24
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
25
|
+
export type PosthogAdapter = AdapterDescriptor<"posthog", PosthogOptions>;
|
|
26
|
+
export declare const posthogAdapterSchema: z.ZodObject<{
|
|
27
|
+
kind: z.ZodLiteral<"posthog">;
|
|
28
|
+
options: z.ZodObject<{
|
|
29
|
+
host: z.ZodOptional<z.ZodString>;
|
|
30
|
+
key: z.ZodString;
|
|
31
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
32
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
33
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
34
|
+
}, z.core.$strict>;
|
|
35
|
+
/**
|
|
36
|
+
* PostHog product analytics. The project API key is public and write-only, so
|
|
37
|
+
* it is safe to ship to the browser.
|
|
38
|
+
*/
|
|
39
|
+
export declare const posthog: (options: PosthogOptions) => PosthogAdapter;
|
|
40
|
+
/**
|
|
41
|
+
* The inline loader-plus-init snippet. `key` and `host` are the options Blume
|
|
42
|
+
* maps (`host` becomes `api_host`); everything else lands in `posthog.init`'s
|
|
43
|
+
* options verbatim, after the mapped host so a raw `api_host` still wins.
|
|
44
|
+
*/
|
|
45
|
+
export declare const posthogHead: (options: PosthogOptions) => HeadScript[];
|
|
@@ -0,0 +1,320 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
/** One configured analytics adapter, as its factory returned it. */
|
|
3
|
+
export declare const analyticsAdapterSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
4
|
+
kind: z.ZodLiteral<"adobe">;
|
|
5
|
+
options: z.ZodObject<{
|
|
6
|
+
url: z.ZodString;
|
|
7
|
+
}, z.core.$strict>;
|
|
8
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
9
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
10
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
11
|
+
kind: z.ZodLiteral<"amplitude">;
|
|
12
|
+
options: z.ZodObject<{
|
|
13
|
+
key: z.ZodString;
|
|
14
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
15
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
16
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
17
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
18
|
+
kind: z.ZodLiteral<"clarity">;
|
|
19
|
+
options: z.ZodObject<{
|
|
20
|
+
id: z.ZodString;
|
|
21
|
+
}, z.core.$strict>;
|
|
22
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
23
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
24
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
25
|
+
kind: z.ZodLiteral<"clearbit">;
|
|
26
|
+
options: z.ZodObject<{
|
|
27
|
+
key: z.ZodString;
|
|
28
|
+
}, z.core.$strict>;
|
|
29
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
30
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
31
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
32
|
+
kind: z.ZodLiteral<"cloudflare">;
|
|
33
|
+
options: z.ZodObject<{
|
|
34
|
+
token: z.ZodString;
|
|
35
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
36
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
37
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
38
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
39
|
+
kind: z.ZodLiteral<"fathom">;
|
|
40
|
+
options: z.ZodObject<{
|
|
41
|
+
site: z.ZodString;
|
|
42
|
+
}, z.core.$catchall<z.ZodString>>;
|
|
43
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
44
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
45
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
46
|
+
kind: z.ZodLiteral<"google-analytics">;
|
|
47
|
+
options: z.ZodObject<{
|
|
48
|
+
id: z.ZodString;
|
|
49
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
50
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
51
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
52
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
53
|
+
kind: z.ZodLiteral<"google-tag-manager">;
|
|
54
|
+
options: z.ZodObject<{
|
|
55
|
+
dataLayer: z.ZodOptional<z.ZodString>;
|
|
56
|
+
id: z.ZodString;
|
|
57
|
+
}, z.core.$strict>;
|
|
58
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
59
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
60
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
61
|
+
kind: z.ZodLiteral<"heap">;
|
|
62
|
+
options: z.ZodObject<{
|
|
63
|
+
id: z.ZodString;
|
|
64
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
65
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
66
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
67
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
68
|
+
kind: z.ZodLiteral<"hightouch">;
|
|
69
|
+
options: z.ZodObject<{
|
|
70
|
+
host: z.ZodOptional<z.ZodString>;
|
|
71
|
+
key: z.ZodString;
|
|
72
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
73
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
74
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
75
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
76
|
+
kind: z.ZodLiteral<"hotjar">;
|
|
77
|
+
options: z.ZodObject<{
|
|
78
|
+
id: z.ZodNumber;
|
|
79
|
+
version: z.ZodOptional<z.ZodNumber>;
|
|
80
|
+
}, z.core.$strict>;
|
|
81
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
82
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
83
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
84
|
+
kind: z.ZodLiteral<"logrocket">;
|
|
85
|
+
options: z.ZodObject<{
|
|
86
|
+
id: z.ZodString;
|
|
87
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
88
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
89
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
90
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
91
|
+
kind: z.ZodLiteral<"mixpanel">;
|
|
92
|
+
options: z.ZodObject<{
|
|
93
|
+
region: z.ZodOptional<z.ZodEnum<{
|
|
94
|
+
in: "in";
|
|
95
|
+
eu: "eu";
|
|
96
|
+
us: "us";
|
|
97
|
+
}>>;
|
|
98
|
+
token: z.ZodString;
|
|
99
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
100
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
101
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
102
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
103
|
+
kind: z.ZodLiteral<"pirsch">;
|
|
104
|
+
options: z.ZodObject<{
|
|
105
|
+
code: z.ZodString;
|
|
106
|
+
}, z.core.$catchall<z.ZodString>>;
|
|
107
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
108
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
109
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
110
|
+
kind: z.ZodLiteral<"plausible">;
|
|
111
|
+
options: z.ZodObject<{
|
|
112
|
+
domain: z.ZodString;
|
|
113
|
+
host: z.ZodOptional<z.ZodString>;
|
|
114
|
+
}, z.core.$catchall<z.ZodString>>;
|
|
115
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
116
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
117
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
118
|
+
kind: z.ZodLiteral<"posthog">;
|
|
119
|
+
options: z.ZodObject<{
|
|
120
|
+
host: z.ZodOptional<z.ZodString>;
|
|
121
|
+
key: z.ZodString;
|
|
122
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
123
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
124
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
125
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
126
|
+
kind: z.ZodLiteral<"script">;
|
|
127
|
+
options: z.ZodObject<{
|
|
128
|
+
attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
129
|
+
content: z.ZodOptional<z.ZodString>;
|
|
130
|
+
src: z.ZodOptional<z.ZodString>;
|
|
131
|
+
strategy: z.ZodOptional<z.ZodEnum<{
|
|
132
|
+
defer: "defer";
|
|
133
|
+
async: "async";
|
|
134
|
+
}>>;
|
|
135
|
+
}, z.core.$strict>;
|
|
136
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
137
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
138
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
139
|
+
kind: z.ZodLiteral<"segment">;
|
|
140
|
+
options: z.ZodObject<{
|
|
141
|
+
cdn: z.ZodOptional<z.ZodString>;
|
|
142
|
+
key: z.ZodString;
|
|
143
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
144
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
145
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
146
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
147
|
+
kind: z.ZodLiteral<"vercel">;
|
|
148
|
+
options: z.ZodObject<{
|
|
149
|
+
debug: z.ZodOptional<z.ZodBoolean>;
|
|
150
|
+
mode: z.ZodOptional<z.ZodEnum<{
|
|
151
|
+
auto: "auto";
|
|
152
|
+
development: "development";
|
|
153
|
+
production: "production";
|
|
154
|
+
}>>;
|
|
155
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
156
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
157
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
158
|
+
}, z.core.$strict>], "kind">;
|
|
159
|
+
export type AnalyticsAdapter = z.output<typeof analyticsAdapterSchema>;
|
|
160
|
+
/**
|
|
161
|
+
* `blume.config.analytics`: the adapters to emit, in order. Unset means none.
|
|
162
|
+
* A non-array (the pre-adapter object form, say) fails with the list hint;
|
|
163
|
+
* element errors keep their own messages.
|
|
164
|
+
*/
|
|
165
|
+
export declare const analyticsConfigSchema: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
166
|
+
kind: z.ZodLiteral<"adobe">;
|
|
167
|
+
options: z.ZodObject<{
|
|
168
|
+
url: z.ZodString;
|
|
169
|
+
}, z.core.$strict>;
|
|
170
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
171
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
172
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
173
|
+
kind: z.ZodLiteral<"amplitude">;
|
|
174
|
+
options: z.ZodObject<{
|
|
175
|
+
key: z.ZodString;
|
|
176
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
177
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
178
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
179
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
180
|
+
kind: z.ZodLiteral<"clarity">;
|
|
181
|
+
options: z.ZodObject<{
|
|
182
|
+
id: z.ZodString;
|
|
183
|
+
}, z.core.$strict>;
|
|
184
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
185
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
186
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
187
|
+
kind: z.ZodLiteral<"clearbit">;
|
|
188
|
+
options: z.ZodObject<{
|
|
189
|
+
key: z.ZodString;
|
|
190
|
+
}, z.core.$strict>;
|
|
191
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
192
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
193
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
194
|
+
kind: z.ZodLiteral<"cloudflare">;
|
|
195
|
+
options: z.ZodObject<{
|
|
196
|
+
token: z.ZodString;
|
|
197
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
198
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
199
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
200
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
201
|
+
kind: z.ZodLiteral<"fathom">;
|
|
202
|
+
options: z.ZodObject<{
|
|
203
|
+
site: z.ZodString;
|
|
204
|
+
}, z.core.$catchall<z.ZodString>>;
|
|
205
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
206
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
207
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
208
|
+
kind: z.ZodLiteral<"google-analytics">;
|
|
209
|
+
options: z.ZodObject<{
|
|
210
|
+
id: z.ZodString;
|
|
211
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
212
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
213
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
214
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
215
|
+
kind: z.ZodLiteral<"google-tag-manager">;
|
|
216
|
+
options: z.ZodObject<{
|
|
217
|
+
dataLayer: z.ZodOptional<z.ZodString>;
|
|
218
|
+
id: z.ZodString;
|
|
219
|
+
}, z.core.$strict>;
|
|
220
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
221
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
222
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
223
|
+
kind: z.ZodLiteral<"heap">;
|
|
224
|
+
options: z.ZodObject<{
|
|
225
|
+
id: z.ZodString;
|
|
226
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
227
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
228
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
229
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
230
|
+
kind: z.ZodLiteral<"hightouch">;
|
|
231
|
+
options: z.ZodObject<{
|
|
232
|
+
host: z.ZodOptional<z.ZodString>;
|
|
233
|
+
key: z.ZodString;
|
|
234
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
235
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
236
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
237
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
238
|
+
kind: z.ZodLiteral<"hotjar">;
|
|
239
|
+
options: z.ZodObject<{
|
|
240
|
+
id: z.ZodNumber;
|
|
241
|
+
version: z.ZodOptional<z.ZodNumber>;
|
|
242
|
+
}, z.core.$strict>;
|
|
243
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
244
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
245
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
246
|
+
kind: z.ZodLiteral<"logrocket">;
|
|
247
|
+
options: z.ZodObject<{
|
|
248
|
+
id: z.ZodString;
|
|
249
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
250
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
251
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
252
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
253
|
+
kind: z.ZodLiteral<"mixpanel">;
|
|
254
|
+
options: z.ZodObject<{
|
|
255
|
+
region: z.ZodOptional<z.ZodEnum<{
|
|
256
|
+
in: "in";
|
|
257
|
+
eu: "eu";
|
|
258
|
+
us: "us";
|
|
259
|
+
}>>;
|
|
260
|
+
token: z.ZodString;
|
|
261
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
262
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
263
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
264
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
265
|
+
kind: z.ZodLiteral<"pirsch">;
|
|
266
|
+
options: z.ZodObject<{
|
|
267
|
+
code: z.ZodString;
|
|
268
|
+
}, z.core.$catchall<z.ZodString>>;
|
|
269
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
270
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
271
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
272
|
+
kind: z.ZodLiteral<"plausible">;
|
|
273
|
+
options: z.ZodObject<{
|
|
274
|
+
domain: z.ZodString;
|
|
275
|
+
host: z.ZodOptional<z.ZodString>;
|
|
276
|
+
}, z.core.$catchall<z.ZodString>>;
|
|
277
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
278
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
279
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
280
|
+
kind: z.ZodLiteral<"posthog">;
|
|
281
|
+
options: z.ZodObject<{
|
|
282
|
+
host: z.ZodOptional<z.ZodString>;
|
|
283
|
+
key: z.ZodString;
|
|
284
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
285
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
286
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
287
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
288
|
+
kind: z.ZodLiteral<"script">;
|
|
289
|
+
options: z.ZodObject<{
|
|
290
|
+
attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
291
|
+
content: z.ZodOptional<z.ZodString>;
|
|
292
|
+
src: z.ZodOptional<z.ZodString>;
|
|
293
|
+
strategy: z.ZodOptional<z.ZodEnum<{
|
|
294
|
+
defer: "defer";
|
|
295
|
+
async: "async";
|
|
296
|
+
}>>;
|
|
297
|
+
}, z.core.$strict>;
|
|
298
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
299
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
300
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
301
|
+
kind: z.ZodLiteral<"segment">;
|
|
302
|
+
options: z.ZodObject<{
|
|
303
|
+
cdn: z.ZodOptional<z.ZodString>;
|
|
304
|
+
key: z.ZodString;
|
|
305
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
306
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
307
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
308
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
309
|
+
kind: z.ZodLiteral<"vercel">;
|
|
310
|
+
options: z.ZodObject<{
|
|
311
|
+
debug: z.ZodOptional<z.ZodBoolean>;
|
|
312
|
+
mode: z.ZodOptional<z.ZodEnum<{
|
|
313
|
+
auto: "auto";
|
|
314
|
+
development: "development";
|
|
315
|
+
production: "production";
|
|
316
|
+
}>>;
|
|
317
|
+
}, z.core.$catchall<z.ZodJSONSchema>>;
|
|
318
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
319
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
320
|
+
}, z.core.$strict>], "kind">>>;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import type { AdapterDescriptor } from "../core/adapter.ts";
|
|
3
|
+
import type { HeadScript } from "./head.ts";
|
|
4
|
+
/** Options for {@link script}; set exactly one of `src` or `content`. */
|
|
5
|
+
export interface ScriptOptions {
|
|
6
|
+
/** Extra attributes spread onto the `<script>` (e.g. `data-domain`, `id`). */
|
|
7
|
+
attributes?: Record<string, string>;
|
|
8
|
+
/** Inline script body. Mutually exclusive with `src`. */
|
|
9
|
+
content?: string;
|
|
10
|
+
/** External script URL. Mutually exclusive with `content`. */
|
|
11
|
+
src?: string;
|
|
12
|
+
/** Load strategy for an external script. */
|
|
13
|
+
strategy?: "async" | "defer";
|
|
14
|
+
}
|
|
15
|
+
export declare const scriptOptionsSchema: z.ZodObject<{
|
|
16
|
+
attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
17
|
+
content: z.ZodOptional<z.ZodString>;
|
|
18
|
+
src: z.ZodOptional<z.ZodString>;
|
|
19
|
+
strategy: z.ZodOptional<z.ZodEnum<{
|
|
20
|
+
defer: "defer";
|
|
21
|
+
async: "async";
|
|
22
|
+
}>>;
|
|
23
|
+
}, z.core.$strict>;
|
|
24
|
+
export type ScriptAdapter = AdapterDescriptor<"script", ScriptOptions>;
|
|
25
|
+
export declare const scriptAdapterSchema: z.ZodObject<{
|
|
26
|
+
kind: z.ZodLiteral<"script">;
|
|
27
|
+
options: z.ZodObject<{
|
|
28
|
+
attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
29
|
+
content: z.ZodOptional<z.ZodString>;
|
|
30
|
+
src: z.ZodOptional<z.ZodString>;
|
|
31
|
+
strategy: z.ZodOptional<z.ZodEnum<{
|
|
32
|
+
defer: "defer";
|
|
33
|
+
async: "async";
|
|
34
|
+
}>>;
|
|
35
|
+
}, z.core.$strict>;
|
|
36
|
+
requiredSecrets: z.ZodArray<z.ZodString>;
|
|
37
|
+
runtimeDeps: z.ZodArray<z.ZodString>;
|
|
38
|
+
}, z.core.$strict>;
|
|
39
|
+
/**
|
|
40
|
+
* Any other provider (Plausible, Fathom, GA, Umami, …) as one `<script>` tag:
|
|
41
|
+
* external via `src`, inline via `content`. `attributes` is the verbatim
|
|
42
|
+
* passthrough here — every entry lands on the tag as-is.
|
|
43
|
+
*/
|
|
44
|
+
export declare const script: (options: ScriptOptions) => ScriptAdapter;
|
|
45
|
+
/** The tag. Explicit `src`/`strategy` win over a same-named spread attribute. */
|
|
46
|
+
export declare const scriptHead: (options: ScriptOptions) => HeadScript[];
|