diff --git a/components/Button.vue b/components/Button.vue
new file mode 100644
index 0000000..db8bb8e
--- /dev/null
+++ b/components/Button.vue
@@ -0,0 +1,44 @@
+
+
+ {{ props.text }}
+
+
+
+
+
+
\ No newline at end of file
diff --git a/components/Settings/AppSettings/Appearance.vue b/components/Settings/AppSettings/Appearance.vue
new file mode 100644
index 0000000..135c0a1
--- /dev/null
+++ b/components/Settings/AppSettings/Appearance.vue
@@ -0,0 +1,14 @@
+
+
+
hi
+ TEST
+ TEST
+
+
+
+
+
+
\ No newline at end of file
diff --git a/components/Settings/AppSettings/Keybinds.vue b/components/Settings/AppSettings/Keybinds.vue
new file mode 100644
index 0000000..ea54137
--- /dev/null
+++ b/components/Settings/AppSettings/Keybinds.vue
@@ -0,0 +1,12 @@
+
+
+
Keybinds (TBA)
+
+
+
+
+
+
\ No newline at end of file
diff --git a/components/Settings/AppSettings/Language.vue b/components/Settings/AppSettings/Language.vue
new file mode 100644
index 0000000..b1c3a8a
--- /dev/null
+++ b/components/Settings/AppSettings/Language.vue
@@ -0,0 +1,12 @@
+
+
+
Language (TBA)
+
+
+
+
+
+
\ No newline at end of file
diff --git a/components/Settings/AppSettings/Notifications.vue b/components/Settings/AppSettings/Notifications.vue
new file mode 100644
index 0000000..2e6de9c
--- /dev/null
+++ b/components/Settings/AppSettings/Notifications.vue
@@ -0,0 +1,12 @@
+
+
+
Notifications (TBA)
+
+
+
+
+
+
\ No newline at end of file
diff --git a/components/Settings/UserSettings/Account.vue b/components/Settings/UserSettings/Account.vue
new file mode 100644
index 0000000..0fe5013
--- /dev/null
+++ b/components/Settings/UserSettings/Account.vue
@@ -0,0 +1,155 @@
+
+
+
My Account
+
+
+
+
AVATAR
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Password (and eventually authenticator)
+
+
+
Account Deletion
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/components/Settings/UserSettings/Connections.vue b/components/Settings/UserSettings/Connections.vue
new file mode 100644
index 0000000..97190ec
--- /dev/null
+++ b/components/Settings/UserSettings/Connections.vue
@@ -0,0 +1,12 @@
+
+
+
Connections (TBA)
+
+
+
+
+
+
\ No newline at end of file
diff --git a/components/Settings/UserSettings/Devices.vue b/components/Settings/UserSettings/Devices.vue
new file mode 100644
index 0000000..7006a12
--- /dev/null
+++ b/components/Settings/UserSettings/Devices.vue
@@ -0,0 +1,12 @@
+
+
+
Devices (TBA)
+
+
+
+
+
+
\ No newline at end of file
diff --git a/components/Settings/UserSettings/Privacy.vue b/components/Settings/UserSettings/Privacy.vue
new file mode 100644
index 0000000..0f1387d
--- /dev/null
+++ b/components/Settings/UserSettings/Privacy.vue
@@ -0,0 +1,13 @@
+
+
+
Privacy (TBA)
+
+
+
+
+
+
\ No newline at end of file
diff --git a/components/UserPopup.vue b/components/UserPopup.vue
new file mode 100644
index 0000000..092e7d5
--- /dev/null
+++ b/components/UserPopup.vue
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/composables/auth.ts b/composables/auth.ts
index 19ac694..0ac2e8b 100644
--- a/composables/auth.ts
+++ b/composables/auth.ts
@@ -75,7 +75,7 @@ export const useAuth = () => {
async function fetchUser() {
if (!accessToken.value) return;
console.log("fetchuser access token:", accessToken.value);
- const res = await fetchWithApi("/users/me") as UserResponse;
+ const res = await fetchWithApi("/me") as UserResponse;
user.value = res;
return user.value;
}
@@ -88,6 +88,20 @@ export const useAuth = () => {
return user.value;
}
+
+ // as in email the password link
+ async function resetPassword() {
+ // ...
+ }
+
+ async function disableAccount() {
+ // ...
+ }
+
+ async function deleteAccount() {
+ // ...
+ }
+
return {
accessToken,
register,
diff --git a/pages/settings.vue b/pages/settings.vue
new file mode 100644
index 0000000..5db18fe
--- /dev/null
+++ b/pages/settings.vue
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/public/favicon.ico b/public/favicon.ico
index 18993ad..b3d28fa 100644
Binary files a/public/favicon.ico and b/public/favicon.ico differ
diff --git a/types/interfaces.ts b/types/interfaces.ts
index 1aba1bc..e451a4b 100644
--- a/types/interfaces.ts
+++ b/types/interfaces.ts
@@ -58,6 +58,8 @@ export interface UserResponse {
username: string,
display_name: string | null,
avatar: string | null,
+ pronouns: string | null,
+ about: string | null,
email?: string,
email_verified?: boolean
}