update
This commit is contained in:
parent
8da3c92291
commit
023d521fef
11 changed files with 64 additions and 51 deletions
7
.gitignore
vendored
7
.gitignore
vendored
|
@ -16,3 +16,10 @@ pnpm-debug.log*
|
||||||
|
|
||||||
# macOS-specific files
|
# macOS-specific files
|
||||||
.DS_Store
|
.DS_Store
|
||||||
|
|
||||||
|
# translates (not needed)
|
||||||
|
/src/pages/ru/*
|
||||||
|
/src/pages/en/*
|
||||||
|
/src/pages/es/*
|
||||||
|
/src/pages/fr/*
|
||||||
|
/src/pages/jp/*
|
|
@ -1,5 +1,4 @@
|
||||||
/** @type {import('astro-i18next').AstroI18nextConfig} */
|
/** @type {import('astro-i18next').AstroI18nextConfig} */
|
||||||
export default {
|
export default {
|
||||||
defaultLocale: "en",
|
|
||||||
locales: ["en", "jp"],
|
locales: ["en", "jp"],
|
||||||
};
|
};
|
|
@ -1,29 +1,28 @@
|
||||||
import { defineConfig } from 'astro/config';
|
import { defineConfig, envField } from 'astro/config';
|
||||||
import node from "@astrojs/node";
|
import node from "@astrojs/node";
|
||||||
import partytown from "@astrojs/partytown";
|
import partytown from "@astrojs/partytown";
|
||||||
import sitemap from "@astrojs/sitemap";
|
import sitemap from "@astrojs/sitemap";
|
||||||
import robotsTxt from "astro-robots-txt";
|
import robotsTxt from "astro-robots-txt";
|
||||||
import vue from "@astrojs/vue";
|
import vue from "@astrojs/vue";
|
||||||
import matomo from "astro-matomo";
|
import matomo from "astro-matomo";
|
||||||
|
|
||||||
import astroI18next from "astro-i18next";
|
import astroI18next from "astro-i18next";
|
||||||
|
|
||||||
export default defineConfig({
|
export default defineConfig({
|
||||||
|
// Use Server-Side Rendering
|
||||||
output: "server",
|
output: "server",
|
||||||
adapter: node({
|
adapter: node({
|
||||||
mode: "standalone"
|
mode: "standalone"
|
||||||
}),
|
}),
|
||||||
|
// Security
|
||||||
security: {
|
security: {
|
||||||
checkOrigin: true
|
checkOrigin: true
|
||||||
},
|
},
|
||||||
|
// Server Options
|
||||||
server: {
|
server: {
|
||||||
port: 6003,
|
port: 6003,
|
||||||
host: true
|
host: true
|
||||||
},
|
},
|
||||||
devToolbar: {enabled: false},
|
// Integrations and Plugins
|
||||||
experimental: {
|
|
||||||
actions: true,
|
|
||||||
},
|
|
||||||
integrations: [
|
integrations: [
|
||||||
astroI18next(),
|
astroI18next(),
|
||||||
partytown(),
|
partytown(),
|
||||||
|
@ -41,5 +40,11 @@ export default defineConfig({
|
||||||
disableCookies: true,
|
disableCookies: true,
|
||||||
debug: false,
|
debug: false,
|
||||||
})
|
})
|
||||||
]
|
],
|
||||||
|
// Others
|
||||||
|
devToolbar: {enabled: false},
|
||||||
|
experimental: {
|
||||||
|
actions: true,
|
||||||
|
directRenderScript: true,
|
||||||
|
},
|
||||||
});
|
});
|
BIN
bun.lockb
BIN
bun.lockb
Binary file not shown.
|
@ -22,6 +22,7 @@
|
||||||
"@astrojs/react": "^3.6.0",
|
"@astrojs/react": "^3.6.0",
|
||||||
"@astrojs/sitemap": "^3.1.6",
|
"@astrojs/sitemap": "^3.1.6",
|
||||||
"@astrojs/vue": "^4.5.0",
|
"@astrojs/vue": "^4.5.0",
|
||||||
|
"@fontsource-variable/roboto-flex": "^5.0.15",
|
||||||
"@iconoir/vue": "^7.7.0",
|
"@iconoir/vue": "^7.7.0",
|
||||||
"@innologica/vue-dropdown-menu": "^0.1.4",
|
"@innologica/vue-dropdown-menu": "^0.1.4",
|
||||||
"@shoelace-style/shoelace": "^2.15.1",
|
"@shoelace-style/shoelace": "^2.15.1",
|
||||||
|
|
|
@ -44,27 +44,30 @@ if (Astro.url.pathname.startsWith('/watch')) {
|
||||||
<a href=""><List/> {t('dropdown.Instances')}</a>
|
<a href=""><List/> {t('dropdown.Instances')}</a>
|
||||||
|
|
||||||
<p>{t('dropdown.Hub')}</p>
|
<p>{t('dropdown.Hub')}</p>
|
||||||
<a href=""><ViewGrid/> {t('dropdown.Apps')}</a>
|
<a data-astro-prefetch href=""><ViewGrid/> {t('dropdown.Apps')}</a>
|
||||||
<a href=""><Arcade/> {t('dropdown.Games')}</a>
|
<a data-astro-prefetch href=""><Arcade/> {t('dropdown.Games')}</a>
|
||||||
|
|
||||||
|
<!-- Only show this if the end-user is watching a video -->
|
||||||
|
{WatchPage ?
|
||||||
<p>{t('dropdown.Openin')}</p>
|
<p>{t('dropdown.Openin')}</p>
|
||||||
<a href=""><CircleSpark/> {t('dropdown.LiteMode')}</a>
|
<a href=""><CircleSpark/> {t('dropdown.LiteMode')}</a>
|
||||||
<a href=""><Youtube/> {t('dropdown.YouTube')}</a>
|
<a href=""><Youtube/> {t('dropdown.YouTube')}</a>
|
||||||
<a href=""><OpenNewWindow/> {t('dropdown.Invidious')}</a>
|
<a href=""><OpenNewWindow/> {t('dropdown.Invidious')}</a>
|
||||||
<a href=""><OpenNewWindow/> {t('dropdown.Pipe')}</a>
|
<a href=""><OpenNewWindow/> {t('dropdown.Pipe')}</a>
|
||||||
|
:
|
||||||
|
null
|
||||||
|
}
|
||||||
|
|
||||||
<p>{t('dropdown.Other')}</p>
|
<p>{t('dropdown.Other')}</p>
|
||||||
<a href=""><InfoCircle/> {t('dropdown.About')}</a>
|
<a data-astro-prefetch href="/about/"><InfoCircle/> {t('dropdown.About')}</a>
|
||||||
<a href=""><PrivacyPolicy/> {t('dropdown.Privacy')}</a>
|
<a data-astro-prefetch href=""><PrivacyPolicy/> {t('dropdown.Privacy')}</a>
|
||||||
<a href=""><Code/> {t('dropdown.SourceCode')}</a>
|
<a data-astro-prefetch href=""><Code/> {t('dropdown.SourceCode')}</a>
|
||||||
</div>
|
</div>
|
||||||
<div id="language" class="header-dropdown">
|
<div id="language" class="header-dropdown">
|
||||||
<p>Language</p>
|
<p>{t('dropdown.Language')}</p>
|
||||||
<a onclick="ToggleHeaderDropdown(); ToggleHeaderLanguageDropdown()"><NavArrowLeft/> Go Back</a>
|
<a onclick="ToggleHeaderDropdown(); ToggleHeaderLanguageDropdown()"><NavArrowLeft/> {t("dropdown.GoBack")}</a>
|
||||||
<a href="/api/language/en/">English</a>
|
<a href="/api/language/en/">English</a>
|
||||||
<a href="">Spanish</a>
|
<a href="/api/language/jp/">日本語</a>
|
||||||
<a href="">Russian</a>
|
|
||||||
<a href="/api/language/jp/">Japanese</a>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script is:inline>
|
<script is:inline>
|
||||||
|
|
|
@ -13,7 +13,7 @@ import Poke from '@assets/poke-text.svg'
|
||||||
|
|
||||||
// Icons
|
// Icons
|
||||||
import {
|
import {
|
||||||
Server,
|
LogIn,
|
||||||
Gamepad,
|
Gamepad,
|
||||||
Settings,
|
Settings,
|
||||||
Search,
|
Search,
|
||||||
|
@ -24,7 +24,7 @@ import {
|
||||||
<header>
|
<header>
|
||||||
<div class="header-content">
|
<div class="header-content">
|
||||||
<div class="header-start">
|
<div class="header-start">
|
||||||
<a href={'/' + i18next.language + '/'}><Image src={Poke} alt="Poke Logo" height={24} /></a>
|
<a href={'/'}><Image src={Poke} alt="Poke Logo" height={24} /></a>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-center">
|
<div class="header-center">
|
||||||
<form>
|
<form>
|
||||||
|
@ -62,9 +62,22 @@ header {
|
||||||
color: white;
|
color: white;
|
||||||
background: black;
|
background: black;
|
||||||
border: 2px #333 solid;
|
border: 2px #333 solid;
|
||||||
border-right: 0px;
|
border-right-color: transparent;
|
||||||
|
border-right-width: 0px;
|
||||||
border-radius: 3rem 0px 0px 3rem;
|
border-radius: 3rem 0px 0px 3rem;
|
||||||
padding: 6px 12px;
|
padding: 6px 12px;
|
||||||
|
width: 160px;
|
||||||
|
transition: width 0.6s, border 0.3s, transform 0.2s;
|
||||||
|
&:focus {
|
||||||
|
border-radius: 4px;
|
||||||
|
transform: scale(1.2);
|
||||||
|
width: 260px;
|
||||||
|
border-width: 1px;
|
||||||
|
border-right-color: #333;
|
||||||
|
border-right-width: 1px;
|
||||||
|
font-size: 12px;
|
||||||
|
transition: width 0.6s, border 0.3s, transform 0.2s;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
button {
|
button {
|
||||||
color: white;
|
color: white;
|
||||||
|
@ -84,19 +97,6 @@ header {
|
||||||
.header-end {
|
.header-end {
|
||||||
display: flex;
|
display: flex;
|
||||||
gap: 6px;
|
gap: 6px;
|
||||||
a {
|
|
||||||
color: white;
|
|
||||||
border-radius: 6px;
|
|
||||||
aspect-ratio: 1;
|
|
||||||
padding: 4px 6px;
|
|
||||||
&:hover {
|
|
||||||
background: rgba(255,255,255,0.1);
|
|
||||||
}
|
|
||||||
svg {
|
|
||||||
width: 18px;
|
|
||||||
pointer-events: none;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
6
src/pages/about.astro
Normal file
6
src/pages/about.astro
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
---
|
||||||
|
// Layout
|
||||||
|
import Layout from "@layouts/Default.astro";
|
||||||
|
---
|
||||||
|
|
||||||
|
<Layout Title="Poke" Description="▶▶ Poke - The privacy app of your dreams!"></Layout>
|
|
@ -1,11 +1,7 @@
|
||||||
---
|
---
|
||||||
import { changeLanguage } from "i18next";
|
|
||||||
|
|
||||||
changeLanguage("en");
|
|
||||||
|
|
||||||
Astro.cookies.set("Language", "EN", {
|
Astro.cookies.set("Language", "EN", {
|
||||||
path: "/",
|
path: "/",
|
||||||
sameSite: 'strict'
|
sameSite: "strict"
|
||||||
});
|
});
|
||||||
return Astro.redirect("/");
|
return Astro.redirect("/");
|
||||||
---
|
---
|
||||||
|
|
|
@ -1,11 +1,7 @@
|
||||||
---
|
---
|
||||||
import { changeLanguage } from "i18next";
|
|
||||||
|
|
||||||
changeLanguage("jp");
|
|
||||||
|
|
||||||
Astro.cookies.set("Language", "JP", {
|
Astro.cookies.set("Language", "JP", {
|
||||||
path: "/",
|
path: "/",
|
||||||
sameSite: 'strict'
|
sameSite: "strict"
|
||||||
});
|
});
|
||||||
return Astro.redirect("/");
|
return Astro.redirect("/");
|
||||||
---
|
---
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
---
|
---
|
||||||
import Layout from '@layouts/Default.astro'
|
import Layout from "@layouts/Default.astro";
|
||||||
---
|
---
|
||||||
|
|
||||||
<Layout Title="Poke" Description="▶▶ Poke - The privacy app of your dreams!"></Layout>
|
<Layout Title="Poke" Description="▶▶ Poke - The privacy app of your dreams!"></Layout>
|
Reference in a new issue