Extract layout
This commit is contained in:
parent
86943968d4
commit
343fcd7bc9
2 changed files with 130 additions and 119 deletions
56
src/layouts/layout.astro
Normal file
56
src/layouts/layout.astro
Normal 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>
|
|
@ -3,61 +3,17 @@
|
||||||
* © 2023 Nikita Karamov
|
* © 2023 Nikita Karamov
|
||||||
* Licensed under AGPL v3 or later
|
* Licensed under AGPL v3 or later
|
||||||
*/
|
*/
|
||||||
|
import Layout from "../layouts/layout.astro";
|
||||||
import InstanceSelect from "../components/instance-select.astro";
|
import InstanceSelect from "../components/instance-select.astro";
|
||||||
import { Content as PrivacyNotice } from "./_privacy.md";
|
import { Content as PrivacyNotice } from "./_privacy.md";
|
||||||
import { Content as Licence } from "./_licence.md";
|
import { Content as Licence } from "./_licence.md";
|
||||||
import "../styles/main.scss";
|
|
||||||
|
|
||||||
const searchParameters = new URL(Astro.request.url).searchParams;
|
const searchParameters = new URL(Astro.request.url).searchParams;
|
||||||
const prefilledText = searchParameters.get("text");
|
const prefilledText = searchParameters.get("text");
|
||||||
const prefilledInstance = searchParameters.get("instance");
|
const prefilledInstance = searchParameters.get("instance");
|
||||||
---
|
---
|
||||||
|
|
||||||
<!DOCTYPE html>
|
<Layout title="Share₂Fedi — an instance-agnostic share page for the Fediverse">
|
||||||
<html lang="en">
|
|
||||||
<head>
|
|
||||||
<meta charset="utf-8" />
|
|
||||||
<meta
|
|
||||||
name="viewport"
|
|
||||||
content="width=device-width, initial-scale=1.0"
|
|
||||||
/>
|
|
||||||
<title>
|
|
||||||
Share₂Fedi — 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>
|
|
||||||
<header>
|
<header>
|
||||||
<img
|
<img
|
||||||
src="/logo.svg"
|
src="/logo.svg"
|
||||||
|
@ -95,8 +51,8 @@ const prefilledInstance = searchParameters.get("instance");
|
||||||
<aside>
|
<aside>
|
||||||
<p>
|
<p>
|
||||||
Share₂Fedi is an instance-agnostic share page for
|
Share₂Fedi is an instance-agnostic share page for
|
||||||
<a href="https://en.wikipedia.org/wiki/Fediverse">the Fediverse</a>.
|
<a href="https://en.wikipedia.org/wiki/Fediverse">the Fediverse</a>. With
|
||||||
With it, you can post to various federated platforms from a single page.
|
it, you can post to various federated platforms from a single page.
|
||||||
</p>
|
</p>
|
||||||
<p><b>Supported projects:</b></p>
|
<p><b>Supported projects:</b></p>
|
||||||
<ul>
|
<ul>
|
||||||
|
@ -133,5 +89,4 @@ const prefilledInstance = searchParameters.get("instance");
|
||||||
<PrivacyNotice />
|
<PrivacyNotice />
|
||||||
</details>
|
</details>
|
||||||
</aside>
|
</aside>
|
||||||
</body>
|
</Layout>
|
||||||
</html>
|
|
||||||
|
|
Reference in a new issue