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 @@ + + + + + \ 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 @@ + + + + + \ 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 @@ + + + + + \ 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 @@ + + + + + \ 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 @@ + + + + + \ 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 @@ + + + + + \ 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 @@ + + + + + \ 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 @@ + + + + + \ 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 @@ + + + + + \ 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 }