- runtimeConfig.siteCache.allowProxied (NUXT_SITE_CACHE_ALLOW_PROXIED, default
false) lets the shared purge route accept a request that came through a
TLS-terminating proxy; the bearer token is then the only gate
- shared lib, route and spec stay byte-identical across the three layers,
with updated sha256 pins and two new sitePurge specs
- version 0.3.0
- server/lib/siteCachePurge.ts and the route, byte for byte from
vue-faq-layer (sha256 pinned in tests/sitePurge.test.ts)
- runtimeConfig.siteCache.purgeToken (NUXT_SITE_CACHE_PURGE_TOKEN) and the
'/api/__site__/**': { cache: false } route rule
- version 0.2.0
- every refused scheme and spacing renders as text; protocol-relative
URLs are anchors, never site paths or active; rel only for _blank;
active matching rules and same-host absolute URLs; the trail marks
ancestors only
- useMenuApi uses the server base with the forwarded visitor on the
server and the public base in the browser
- typed client and useMenu/useMenuApi (SSR, menu:<code>:<locale> key,
server and public bases, x-forwarded-for forwarded also on cached renders)
- MenuNav and recursive MenuNavItem: WAI disclosure navigation, URL
allowlist with a text fallback, rel on _blank, active link and trail,
mobile toggle, Esc / focus-out / outside pointer / route change closing
- menu tokens and base CSS, README
- node tests (link rules, client, server-rendered NavItem) and a playground
SSR smoke against a fixture API