From 8c70bbe74da740e1a252a6a2060c46960d6b3ac8 Mon Sep 17 00:00:00 2001 From: syuilo Date: Fri, 5 May 2023 08:47:02 +0900 Subject: :art: --- .../frontend/src/pages/settings/account-info.vue | 158 --------------------- .../frontend/src/pages/settings/account-stats.vue | 146 +++++++++++++++++++ .../frontend/src/pages/settings/delete-account.vue | 52 ------- packages/frontend/src/pages/settings/other.vue | 84 +++++++++-- packages/frontend/src/router.ts | 10 +- 5 files changed, 220 insertions(+), 230 deletions(-) delete mode 100644 packages/frontend/src/pages/settings/account-info.vue create mode 100644 packages/frontend/src/pages/settings/account-stats.vue delete mode 100644 packages/frontend/src/pages/settings/delete-account.vue diff --git a/packages/frontend/src/pages/settings/account-info.vue b/packages/frontend/src/pages/settings/account-info.vue deleted file mode 100644 index 584808b0b4..0000000000 --- a/packages/frontend/src/pages/settings/account-info.vue +++ /dev/null @@ -1,158 +0,0 @@ - - - diff --git a/packages/frontend/src/pages/settings/account-stats.vue b/packages/frontend/src/pages/settings/account-stats.vue new file mode 100644 index 0000000000..a0f1541b40 --- /dev/null +++ b/packages/frontend/src/pages/settings/account-stats.vue @@ -0,0 +1,146 @@ + + + diff --git a/packages/frontend/src/pages/settings/delete-account.vue b/packages/frontend/src/pages/settings/delete-account.vue deleted file mode 100644 index c6e79165c5..0000000000 --- a/packages/frontend/src/pages/settings/delete-account.vue +++ /dev/null @@ -1,52 +0,0 @@ - - - diff --git a/packages/frontend/src/pages/settings/other.vue b/packages/frontend/src/pages/settings/other.vue index 05394b9187..dd80dd737b 100644 --- a/packages/frontend/src/pages/settings/other.vue +++ b/packages/frontend/src/pages/settings/other.vue @@ -11,21 +11,50 @@ -->
- {{ i18n.ts.accountInfo }} + + + + +
+ + + + + + + + + + + {{ i18n.ts.statistics }} +
+
+ {{ i18n.ts.registry }} - {{ i18n.ts.closeAccount }} -
- - - + + + -
- - - -
-
+
+ {{ i18n.ts._accountDelete.mayTakeTime }} + {{ i18n.ts._accountDelete.sendEmail }} + {{ i18n.ts._accountDelete.requestAccountDelete }} + {{ i18n.ts._accountDelete.inProgress }} +
+
+ + + + + +
+ + + +
+
+ @@ -34,9 +63,12 @@ import { computed, watch } from 'vue'; import MkSwitch from '@/components/MkSwitch.vue'; import FormLink from '@/components/form/link.vue'; import MkFolder from '@/components/MkFolder.vue'; +import FormInfo from '@/components/MkInfo.vue'; +import MkKeyValue from '@/components/MkKeyValue.vue'; +import MkButton from '@/components/MkButton.vue'; import * as os from '@/os'; import { defaultStore } from '@/store'; -import { $i } from '@/account'; +import { signout, $i } from '@/account'; import { i18n } from '@/i18n'; import { definePageMetadata } from '@/scripts/page-metadata'; import { unisonReload } from '@/scripts/unison-reload'; @@ -52,6 +84,32 @@ function onChangeInjectFeaturedNote(v) { }); } +async function deleteAccount() { + { + const { canceled } = await os.confirm({ + type: 'warning', + text: i18n.ts.deleteAccountConfirm, + }); + if (canceled) return; + } + + const { canceled, result: password } = await os.inputText({ + title: i18n.ts.password, + type: 'password', + }); + if (canceled) return; + + await os.apiWithDialog('i/delete-account', { + password: password, + }); + + await os.alert({ + title: i18n.ts._accountDelete.started, + }); + + await signout(); +} + async function reloadAsk() { const { canceled } = await os.confirm({ type: 'info', diff --git a/packages/frontend/src/router.ts b/packages/frontend/src/router.ts index fa19682f32..e46c1eeb77 100644 --- a/packages/frontend/src/router.ts +++ b/packages/frontend/src/router.ts @@ -164,7 +164,7 @@ export const routes = [{ }, { path: '/migration', name: 'migration', - component: page(() => import('./pages/settings/migration.vue')) + component: page(() => import('./pages/settings/migration.vue')), }, { path: '/custom-css', name: 'general', @@ -174,13 +174,9 @@ export const routes = [{ name: 'profile', component: page(() => import('./pages/settings/accounts.vue')), }, { - path: '/account-info', + path: '/account-stats', name: 'other', - component: page(() => import('./pages/settings/account-info.vue')), - }, { - path: '/delete-account', - name: 'other', - component: page(() => import('./pages/settings/delete-account.vue')), + component: page(() => import('./pages/settings/account-stats.vue')), }, { path: '/other', name: 'other', -- cgit v1.3.1-freya