diff --git a/src/components/SettingsNav.astro b/src/components/SettingsNav.astro new file mode 100644 index 0000000..cb8313c --- /dev/null +++ b/src/components/SettingsNav.astro @@ -0,0 +1,20 @@ +--- +import { Icon } from "astro-icon/components"; +import type { SettingsProps as Props } from "@utils/types.ts"; + +const { active } = Astro.props; +--- +
+ + Proxy + + + Appearance + + + Credits + + + Social Links + +
diff --git a/src/layouts/SettingsLayout.astro b/src/layouts/SettingsLayout.astro new file mode 100644 index 0000000..6bb88b9 --- /dev/null +++ b/src/layouts/SettingsLayout.astro @@ -0,0 +1,16 @@ +--- +import Layout from "@layouts/Layout.astro"; +import SettingsNav from "@components/SettingsNav.astro"; +import type { SettingsProps as Props } from "@utils/types.ts"; + +//I love prop drilling +const { active } = Astro.props; +--- + +
+
+ +
+ +
+
diff --git a/src/pages/[...settings]/appearance.astro b/src/pages/[...settings]/appearance.astro new file mode 100644 index 0000000..b4dc9ab --- /dev/null +++ b/src/pages/[...settings]/appearance.astro @@ -0,0 +1,5 @@ +--- +import SettingsLayout from "@layouts/SettingsLayout.astro"; +--- + + diff --git a/src/pages/[...settings]/credits.astro b/src/pages/[...settings]/credits.astro new file mode 100644 index 0000000..3da2a1a --- /dev/null +++ b/src/pages/[...settings]/credits.astro @@ -0,0 +1,5 @@ +--- +import SettingsLayout from "@layouts/SettingsLayout.astro"; +--- + + diff --git a/src/pages/[...settings]/links.astro b/src/pages/[...settings]/links.astro new file mode 100644 index 0000000..e7b681e --- /dev/null +++ b/src/pages/[...settings]/links.astro @@ -0,0 +1,5 @@ +--- +import SettingsLayout from "@layouts/SettingsLayout.astro"; +--- + + diff --git a/src/pages/[...settings]/proxy.astro b/src/pages/[...settings]/proxy.astro new file mode 100644 index 0000000..1bd8028 --- /dev/null +++ b/src/pages/[...settings]/proxy.astro @@ -0,0 +1,7 @@ +--- +import SettingsLayout from "@layouts/SettingsLayout.astro"; +--- + +
+
+
diff --git a/src/pages/settings.astro b/src/pages/settings.astro deleted file mode 100644 index 9497300..0000000 --- a/src/pages/settings.astro +++ /dev/null @@ -1,5 +0,0 @@ ---- -import Layout from "@layouts/Layout.astro"; ---- - - diff --git a/src/utils/types.ts b/src/utils/types.ts new file mode 100644 index 0000000..6f7d76c --- /dev/null +++ b/src/utils/types.ts @@ -0,0 +1,7 @@ +import type { Props } from "astro"; + +interface SettingsProps extends Props { + active: 'appearance' | 'credits' | 'links' | 'proxy'; +} + +export type { SettingsProps };