2024-08-17 19:29:10 +02:00
|
|
|
<script lang="ts">
|
|
|
|
|
const { title, logoType, logo, mainContent, articles, footerAdditionalText } = $props<{
|
|
|
|
|
title: string;
|
|
|
|
|
logoType: "text" | "image";
|
|
|
|
|
logo: string;
|
|
|
|
|
mainContent: string;
|
|
|
|
|
articles: any[];
|
|
|
|
|
footerAdditionalText: string;
|
|
|
|
|
}>();
|
|
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
<svelte:head>
|
|
|
|
|
<head>
|
2024-08-18 19:18:32 +02:00
|
|
|
<meta charset="UTF-8" />
|
|
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
2024-08-18 20:12:27 +02:00
|
|
|
<link
|
|
|
|
|
rel="stylesheet"
|
|
|
|
|
media="(prefers-color-scheme: light)"
|
|
|
|
|
href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.10.0/styles/github.min.css"
|
|
|
|
|
integrity="sha512-0aPQyyeZrWj9sCA46UlmWgKOP0mUipLQ6OZXu8l4IcAmD2u31EPEy9VcIMvl7SoAaKe8bLXZhYoMaE/in+gcgA=="
|
|
|
|
|
crossorigin="anonymous"
|
|
|
|
|
referrerpolicy="no-referrer"
|
|
|
|
|
/>
|
|
|
|
|
<link
|
|
|
|
|
rel="stylesheet"
|
|
|
|
|
media="(prefers-color-scheme: dark)"
|
|
|
|
|
href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.10.0/styles/github-dark.min.css"
|
|
|
|
|
integrity="sha512-rO+olRTkcf304DQBxSWxln8JXCzTHlKnIdnMUwYvQa9/Jd4cQaNkItIUj6Z4nvW1dqK0SKXLbn9h4KwZTNtAyw=="
|
|
|
|
|
crossorigin="anonymous"
|
|
|
|
|
referrerpolicy="no-referrer"
|
|
|
|
|
/>
|
2024-08-17 19:29:10 +02:00
|
|
|
<title>{title}</title>
|
2024-08-17 20:21:23 +02:00
|
|
|
<link rel="stylesheet" href="./styles.css" />
|
2024-08-17 19:29:10 +02:00
|
|
|
</head>
|
|
|
|
|
</svelte:head>
|
|
|
|
|
|
|
|
|
|
<nav>
|
2024-08-18 18:17:59 +02:00
|
|
|
<div class="container">
|
2024-08-18 20:12:27 +02:00
|
|
|
<a href="../">
|
|
|
|
|
{#if logoType === "text"}
|
|
|
|
|
<p>
|
|
|
|
|
<strong>{logo}</strong>
|
|
|
|
|
</p>
|
|
|
|
|
{:else}
|
|
|
|
|
<img src={logo} alt="" />
|
|
|
|
|
{/if}
|
|
|
|
|
</a>
|
2024-08-18 18:17:59 +02:00
|
|
|
</div>
|
2024-08-17 19:29:10 +02:00
|
|
|
</nav>
|
|
|
|
|
|
|
|
|
|
<header>
|
2024-08-18 18:17:59 +02:00
|
|
|
<div class="container">
|
|
|
|
|
<h1>{title}</h1>
|
|
|
|
|
</div>
|
2024-08-17 19:29:10 +02:00
|
|
|
</header>
|
|
|
|
|
|
|
|
|
|
<main>
|
2024-08-18 18:17:59 +02:00
|
|
|
<div class="container">
|
2024-08-17 19:29:10 +02:00
|
|
|
{@html mainContent}
|
2024-08-18 18:17:59 +02:00
|
|
|
{#if articles.length > 0}
|
2024-08-18 20:12:27 +02:00
|
|
|
<section class="articles">
|
2024-08-18 18:17:59 +02:00
|
|
|
<h2>Articles</h2>
|
2024-08-17 19:29:10 +02:00
|
|
|
|
2024-08-18 20:12:27 +02:00
|
|
|
<ul>
|
|
|
|
|
{#each articles as article}
|
|
|
|
|
{@const articleFileName = article.title.toLowerCase().split(" ").join("-")}
|
|
|
|
|
<li>
|
|
|
|
|
<p>{article.publication_date}</p>
|
|
|
|
|
<h3>
|
|
|
|
|
<a href="./articles/{articleFileName}.html">{article.title}</a>
|
|
|
|
|
</h3>
|
|
|
|
|
{#if article.meta_description}
|
|
|
|
|
<p>{article.meta_description}</p>
|
|
|
|
|
{/if}
|
|
|
|
|
</li>
|
|
|
|
|
{/each}
|
|
|
|
|
</ul>
|
2024-08-18 18:17:59 +02:00
|
|
|
</section>
|
|
|
|
|
{/if}
|
|
|
|
|
</div>
|
2024-08-17 19:29:10 +02:00
|
|
|
</main>
|
|
|
|
|
|
|
|
|
|
<footer>
|
2024-08-18 18:17:59 +02:00
|
|
|
<div class="container">
|
|
|
|
|
{footerAdditionalText}
|
|
|
|
|
</div>
|
2024-08-17 19:29:10 +02:00
|
|
|
</footer>
|