mirror of
https://github.com/revanced/revanced-website.git
synced 2025-05-24 18:42:19 +02:00
feat: footer
This commit is contained in:
parent
c811a50806
commit
f37b0c9b41
@ -111,6 +111,8 @@ const mockTeamMembers: Models.BackendTeamMember[] = [
|
|||||||
];
|
];
|
||||||
|
|
||||||
const mockAbout: Models.BackendAbout = {
|
const mockAbout: Models.BackendAbout = {
|
||||||
|
about:
|
||||||
|
"ReVanced was born out of Vanced's discontinuation and it is our goal to continue the legacy of what Vanced left behind. Thanks to ReVanced Patcher, it's possible to create long-lasting patches for nearly any Android app. ReVanced's patching system is designed to allow patches to work on new versions of the apps automatically with bare minimum maintenance.",
|
||||||
contact: {
|
contact: {
|
||||||
email: 'contact@revanced.app'
|
email: 'contact@revanced.app'
|
||||||
},
|
},
|
||||||
|
1
src/lib/api/models.d.ts
vendored
1
src/lib/api/models.d.ts
vendored
@ -97,6 +97,7 @@ type BackendAboutDonations = {
|
|||||||
wallets: BackendAboutWallet[];
|
wallets: BackendAboutWallet[];
|
||||||
};
|
};
|
||||||
export type BackendAbout = {
|
export type BackendAbout = {
|
||||||
|
about: string;
|
||||||
contact: BackendAboutContact;
|
contact: BackendAboutContact;
|
||||||
donations: BackendAboutDonations;
|
donations: BackendAboutDonations;
|
||||||
socials: BackendAboutUrl[];
|
socials: BackendAboutUrl[];
|
||||||
|
15
src/lib/components/molecules/FooterSection.svelte
Normal file
15
src/lib/components/molecules/FooterSection.svelte
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
<script lang="ts">
|
||||||
|
import type { Snippet } from 'svelte';
|
||||||
|
|
||||||
|
type Props = { title: string; children: Snippet };
|
||||||
|
let { title, children }: Props = $props();
|
||||||
|
|
||||||
|
let expanded: boolean = $state(false);
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<div class="desktop-only">
|
||||||
|
<span>{title}</span>
|
||||||
|
<ul>
|
||||||
|
{@render children()}
|
||||||
|
</ul>
|
||||||
|
</div>
|
@ -3,17 +3,52 @@
|
|||||||
|
|
||||||
import DmcaBadge from '$components/atoms/DmcaBadge.svelte';
|
import DmcaBadge from '$components/atoms/DmcaBadge.svelte';
|
||||||
import SquigglyDivider from '$components/atoms/SquigglyDivider.svelte';
|
import SquigglyDivider from '$components/atoms/SquigglyDivider.svelte';
|
||||||
|
import FooterSection from '$components/molecules/FooterSection.svelte';
|
||||||
|
import Button from '$components/atoms/Button.svelte';
|
||||||
|
|
||||||
|
import api from '$api';
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<SquigglyDivider />
|
||||||
<footer>
|
<footer>
|
||||||
<SquigglyDivider />
|
|
||||||
|
|
||||||
<div class="footer-top">
|
<div class="footer-top">
|
||||||
<section class="main-content"></section>
|
<section class="main-content">
|
||||||
<section class="links-container"></section>
|
<img src="/logo.svg" class="logo-image" alt="ReVanced Logo" />
|
||||||
|
{#await api.general.getAbout() then data}
|
||||||
|
<div>
|
||||||
|
<p>{data.about}</p>
|
||||||
|
</div>
|
||||||
|
{/await}
|
||||||
|
</section>
|
||||||
|
<section class="links-container">
|
||||||
|
<FooterSection title="Pages">
|
||||||
|
<li><Button type="text" href="/">Home</Button></li>
|
||||||
|
<li><Button type="text" href="/download">Download</Button></li>
|
||||||
|
<li><Button type="text" href="/patches">Patches</Button></li>
|
||||||
|
<li><Button type="text" href="/contributors">Contributors</Button></li>
|
||||||
|
<li><Button type="text" href="/donate">Donate</Button></li>
|
||||||
|
</FooterSection>
|
||||||
|
|
||||||
|
{#await api.general.getAbout() then data}
|
||||||
|
<FooterSection title="Socials">
|
||||||
|
{#each data.socials as { name, url }}
|
||||||
|
<li>
|
||||||
|
<Button type="text" href={url} target="_blank">{name}</Button>
|
||||||
|
</li>
|
||||||
|
{/each}
|
||||||
|
</FooterSection>
|
||||||
|
{/await}
|
||||||
|
</section>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="footer-bottom"></div>
|
<div class="footer-bottom">
|
||||||
|
<div id="logo-name"><span>Re</span>Vanced</div>
|
||||||
|
<a href="/donate"><div>Donate</div></a>
|
||||||
|
|
||||||
<DmcaBadge guid={RV_DMCA_GUID} />
|
{#await api.general.getAbout() then data}
|
||||||
|
<Button type="text" href="mailto:{data.contact.email}">Email</Button>
|
||||||
|
{/await}
|
||||||
|
|
||||||
|
<DmcaBadge guid={RV_DMCA_GUID} />
|
||||||
|
</div>
|
||||||
</footer>
|
</footer>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user