63a9721841
Renders a single CMS entry as a block in isolation — no header, footer, or preview banner. Lets us share a deep link to a single widget (e.g. the live strommix gauge) for embedding or quick previews without exposing the rest of the page. - New BlockRenderer.svelte: switch over `_type` shared with ContentRows. - Generic `getEntryBySlug(collection, slug, options)` in cms.ts so any collection (live_strommix, deadline_banner, image, ...) is fetchable. - Route group `(embed)/+layout@.svelte` resets the layout chain so no Header/Footer/TopBanner inherit. `x-robots-tag: noindex`. - Optional `?preview=<token>` for drafts. Cache: short s-maxage for live, no-store for preview. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
22 lines
424 B
Svelte
22 lines
424 B
Svelte
<script lang="ts">
|
|
import '../../app.css';
|
|
import '$lib/iconify-offline';
|
|
let { children }: { children: import('svelte').Snippet } = $props();
|
|
</script>
|
|
|
|
<div class="embed-root">
|
|
{@render children()}
|
|
</div>
|
|
|
|
<style>
|
|
:global(html), :global(body) {
|
|
margin: 0;
|
|
padding: 0;
|
|
background: transparent;
|
|
}
|
|
.embed-root {
|
|
min-height: 100vh;
|
|
background: var(--color-page-bg, transparent);
|
|
}
|
|
</style>
|