Files
ta1sph.info/src/pages/[legal].astro
T
suphicakir df9c40847d feat: add about, contact with map, legal pages and 404
- About page with identity cards and equipment lists (about.json)
- Contact page: station info, obfuscated e-mail, lazy Leaflet/OSM map
  with antenna tower marker and dark-mode tiles
- Privacy, license and disclaimer pages from a legal collection
- QRT-themed 404 page
- LICENSE (MIT) and LICENSE-CONTENT (CC BY-SA 4.0 legal code)
- Shared PageHeader and CodeCopy components

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 01:59:45 +03:00

37 lines
1.3 KiB
Plaintext

---
// /gizlilik/, /lisans/, /sorumluluk-reddi/ from src/content/legal/*.md
import type { GetStaticPaths } from 'astro';
import { getCollection, render } from 'astro:content';
import CodeCopy from '../components/CodeCopy.astro';
import Container from '../components/Container.astro';
import PageHeader from '../components/PageHeader.astro';
import BaseLayout from '../layouts/BaseLayout.astro';
import { pages } from '../lib/data';
import { formatDate, isoDay } from '../lib/dates';
export const getStaticPaths = (async () => {
const docs = await getCollection('legal');
return docs.map((doc) => ({ params: { legal: doc.id }, props: { doc } }));
}) satisfies GetStaticPaths;
const { doc } = Astro.props;
const { Content } = await render(doc);
---
<BaseLayout title={doc.data.title} description={doc.data.description}>
<PageHeader eyebrow={pages.legal.eyebrow} title={doc.data.title}>
<p class="text-sm font-semibold">
{pages.legal.updated}:{' '}
<time datetime={isoDay(doc.data.updated)}>{formatDate(doc.data.updated)}</time>
</p>
</PageHeader>
<Container class="max-w-[52rem] py-14 md:py-20">
<div class="prose article-prose md:prose-lg max-w-[72ch]">
<CodeCopy>
<Content />
</CodeCopy>
</div>
<p class="border-line text-fg-muted mt-12 border-t pt-6 text-sm">{pages.legal.notice}</p>
</Container>
</BaseLayout>