Extract layout

This commit is contained in:
Nikita Karamov 2023-03-27 19:17:35 +02:00
parent 86943968d4
commit 343fcd7bc9
No known key found for this signature in database
GPG key ID: 41D6F71EE78E77CD
2 changed files with 130 additions and 119 deletions

56
src/layouts/layout.astro Normal file
View file

@ -0,0 +1,56 @@
---
/*!
* © 2023 Nikita Karamov
* Licensed under AGPL v3 or later
*/
import "../styles/main.scss";
const { title } = Astro.props;
---
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta
name="viewport"
content="width=device-width, initial-scale=1.0"
/>
<title>{title}</title>
<meta
name="description"
content="Share₂Fedi is a share page for Mastodon, Pleroma, Misskey, and others. Type in your post text and the instance URL and click Publish!"
/>
<link
rel="canonical"
href={Astro.url}
/>
<link
rel="icon"
href="/favicon.ico"
sizes="any"
/>
<link
rel="icon"
href="/icon.svg"
type="image/svg+xml"
/>
<link
rel="apple-touch-icon"
href="/apple-touch-icon.png"
/>
<link
rel="manifest"
href="/site.webmanifest"
/>
<meta
name="generator"
content="{Astro.generator}"
/>
</head>
<body>
<slot />
</body>
</html>

View file

@ -3,61 +3,17 @@
* © 2023 Nikita Karamov
* Licensed under AGPL v3 or later
*/
import Layout from "../layouts/layout.astro";
import InstanceSelect from "../components/instance-select.astro";
import { Content as PrivacyNotice } from "./_privacy.md";
import { Content as Licence } from "./_licence.md";
import "../styles/main.scss";
const searchParameters = new URL(Astro.request.url).searchParams;
const prefilledText = searchParameters.get("text");
const prefilledInstance = searchParameters.get("instance");
---
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta
name="viewport"
content="width=device-width, initial-scale=1.0"
/>
<title>
Share₂Fedi &mdash; an instance-agnostic share page for the Fediverse
</title>
<meta
name="description"
content="Share₂Fedi is a share page for Mastodon, Pleroma, Misskey, and others. Type in your post text and the instance URL and click Publish!"
/>
<link
rel="canonical"
href="https://s2f.kytta.dev/"
/>
<link
rel="icon"
href="/favicon.ico"
sizes="any"
/>
<link
rel="icon"
href="/icon.svg"
type="image/svg+xml"
/>
<link
rel="apple-touch-icon"
href="/apple-touch-icon.png"
/>
<link
rel="manifest"
href="/site.webmanifest"
/>
<meta
name="generator"
content="{Astro.generator}"
/>
</head>
<body>
<Layout title="Share₂Fedi — an instance-agnostic share page for the Fediverse">
<header>
<img
src="/logo.svg"
@ -95,8 +51,8 @@ const prefilledInstance = searchParameters.get("instance");
<aside>
<p>
Share₂Fedi is an instance-agnostic share page for
<a href="https://en.wikipedia.org/wiki/Fediverse">the Fediverse</a>.
With it, you can post to various federated platforms from a single page.
<a href="https://en.wikipedia.org/wiki/Fediverse">the Fediverse</a>. With
it, you can post to various federated platforms from a single page.
</p>
<p><b>Supported projects:</b></p>
<ul>
@ -133,5 +89,4 @@ const prefilledInstance = searchParameters.get("instance");
<PrivacyNotice />
</details>
</aside>
</body>
</html>
</Layout>