diff --git a/public/classic_theme.png b/public/classic_theme.png new file mode 100644 index 0000000..a52677d Binary files /dev/null and b/public/classic_theme.png differ diff --git a/src/components/catalog/InstalledThemes.svelte b/src/components/catalog/InstalledThemes.svelte new file mode 100644 index 0000000..ac03dea --- /dev/null +++ b/src/components/catalog/InstalledThemes.svelte @@ -0,0 +1,144 @@ + + +{#await assetPromise} + Loading assets... +{:then assets} + + + {#each Object.entries(assets) as [key, asset]} + + +
+
install(asset, key)}> + Theme +
+
+
{asset.title}
+
+
delete_theme(key)} + > + + + +
+ + + + + +
+
+
+ {/each} + + +
reset_theme()} + > +
+ Theme +
+
+ Classic Nebula +
+
+{:catch someError} + System error: {someError.message}. +{/await} diff --git a/src/pages/[lang]/settings/appearance.astro b/src/pages/[lang]/settings/appearance.astro index 23e12b4..0452645 100644 --- a/src/pages/[lang]/settings/appearance.astro +++ b/src/pages/[lang]/settings/appearance.astro @@ -7,6 +7,7 @@ import ThemeCard from "../../../components/settings/ThemeCard.astro"; import { Icon } from "astro-icon/components"; import fortnite from "../../../assets/fortnite.jpg"; import ClassicNebula from "../../../assets/classic_theme.png"; +import InstalledThemes from "../../../components/catalog/InstalledThemes.svelte"; const lang = getLangFromUrl(Astro.url); const t = useTranslations(lang); export function getStaticPaths() { @@ -25,27 +26,20 @@ export const prerender = true; title="Theme" subtitle="Choose a theme so your eyes don't hate us." > -
-
- -
-
-
- -
-
- Get more themes in the Nebula Catalog! +
+
+ +
+
+ +
+
+ Get more themes in the Nebula Catalog! +
+
-