summaryrefslogtreecommitdiffstats
path: root/apps/projects/src/app/lib/services/user-service.ts
diff options
context:
space:
mode:
Diffstat (limited to 'apps/projects/src/app/lib/services/user-service.ts')
-rw-r--r--apps/projects/src/app/lib/services/user-service.ts21
1 files changed, 21 insertions, 0 deletions
diff --git a/apps/projects/src/app/lib/services/user-service.ts b/apps/projects/src/app/lib/services/user-service.ts
new file mode 100644
index 0000000..7bffa49
--- /dev/null
+++ b/apps/projects/src/app/lib/services/user-service.ts
@@ -0,0 +1,21 @@
+import {delete_account, logout} from "$shared/lib/api/user";
+import {accounts_base} from "$shared/lib/configuration";
+import {clear_session_data} from "$shared/lib/session";
+import {clear_categories} from "$app/lib/stores/categories";
+import {clear_entries} from "$app/lib/stores/entries";
+import {clear_labels} from "$app/lib/stores/labels";
+
+export async function logout_user(reason: string = "") {
+ await logout();
+ clear_session_data();
+ clear_categories();
+ clear_labels();
+ clear_entries();
+ location.replace(accounts_base("#/login" + (reason ? "?" + reason : "")));
+}
+
+export async function delete_user() {
+ await delete_account();
+ clear_session_data();
+ location.replace(accounts_base("#/login?deleted"));
+}