import { useEffect, useMemo, useState } from 'react' import { createFileRoute, Link } from '@tanstack/react-router' import { ApiReferenceReact } from '@scalar/api-reference-react' // @scalar/api-reference-react@0.9.47's entry does NOT import its own stylesheet // (and doesn't inject it at runtime), so we must ship it ourselves or the // reference renders unstyled. Load it as a route-scoped (same pattern as // the root app.css), so it's present for SSR + the client-side Vue mount. import scalarCss from '@scalar/api-reference-react/style.css?url' import BrandMark from '@/components/BrandMark' import Wordmark from '@/components/Wordmark' export const Route = createFileRoute('/api/')({ component: ApiReference, head: () => ({ meta: [ { title: 'punktfunk — Management API reference' }, { name: 'description', content: 'Interactive reference for the punktfunk host management REST API (OpenAPI).', }, ], links: [{ rel: 'stylesheet', href: scalarCss }], }), }) // The full punktfunk theme rolled out onto Scalar — the same dark-violet (and // light-lavender) product chrome as the docs/management console. // // IMPORTANT: Scalar toggles `.light-mode` / `.dark-mode` on `document.body`, // and it renders our `customCss` *before* its own built-in theme preset in the // SAME