From 28db631f22937dfe1af120ddb1fc2dbb0991c24d Mon Sep 17 00:00:00 2001 From: Christian Fehmer Date: Fri, 26 Jun 2026 10:29:39 +0200 Subject: [PATCH] refactor: solid account settings (@fehmer) (#8090) Co-authored-by: Miodec --- frontend/src/html/pages/account-settings.html | 285 ----------------- frontend/src/index.html | 4 +- frontend/src/styles/account-settings.scss | 195 ------------ frontend/src/styles/index.scss | 2 +- frontend/src/styles/media-queries-blue.scss | 15 - frontend/src/styles/media-queries-green.scss | 14 - frontend/src/styles/media-queries-yellow.scss | 18 -- frontend/src/ts/auth.tsx | 141 ++++++++- frontend/src/ts/collections/ape-keys.ts | 200 ++++++++++++ frontend/src/ts/components/common/Setting.tsx | 132 ++++++++ .../account-settings/AddPasswordAuthModal.tsx | 50 +-- .../RemoveAuthMethodModal.tsx | 9 - .../account-settings/UnlinkDiscordModal.tsx | 6 +- .../account-settings/UpdateNameModal.tsx | 13 +- frontend/src/ts/components/mount.tsx | 4 +- .../account-settings/AccountSettingsPage.tsx | 57 ++++ .../pages/account-settings/AccountTab.tsx | 180 +++++++++++ .../pages/account-settings/ApeKeysTab.tsx | 209 +++++++++++++ .../account-settings/AuthenticationTab.tsx | 118 +++++++ .../{BlockedUsers.tsx => BlockedUsersTab.tsx} | 16 +- .../pages/account-settings/DangerZoneTab.tsx | 54 ++++ .../pages/account-settings/utils.tsx | 30 ++ .../pages/connections/PendingRequests.tsx | 2 +- .../ts/components/pages/settings/Setting.tsx | 84 ----- .../pages/settings/SettingsPage.tsx | 2 +- .../custom-setting/AnimationFpsLimit.tsx | 2 +- .../custom-setting/AutoSwitchTheme.tsx | 2 +- .../custom-setting/CustomBackground.tsx | 2 +- .../CustomBackgroundFilters.tsx | 2 +- .../custom-setting/CustomLayoutfluid.tsx | 2 +- .../custom-setting/CustomPolyglot.tsx | 2 +- .../settings/custom-setting/FontFamily.tsx | 2 +- .../pages/settings/custom-setting/Funbox.tsx | 2 +- .../settings/custom-setting/ImportExport.tsx | 2 +- .../settings/custom-setting/KeymapLayout.tsx | 2 +- .../settings/custom-setting/KeymapSize.tsx | 2 +- .../settings/custom-setting/Language.tsx | 2 +- .../pages/settings/custom-setting/Layout.tsx | 2 +- .../settings/custom-setting/MaxLineWidth.tsx | 2 +- .../pages/settings/custom-setting/MinAcc.tsx | 2 +- .../settings/custom-setting/MinBurst.tsx | 2 +- .../settings/custom-setting/MinSpeed.tsx | 2 +- .../settings/custom-setting/PaceCaret.tsx | 2 +- .../pages/settings/custom-setting/Presets.tsx | 2 +- .../settings/custom-setting/SoundVolume.tsx | 2 +- .../pages/settings/custom-setting/Tags.tsx | 2 +- .../pages/settings/custom-setting/Theme.tsx | 2 +- .../src/ts/components/ui/table/DataTable.tsx | 153 ++++----- .../src/ts/controllers/page-controller.ts | 16 +- .../account-settings/ape-key-table.ts | 245 --------------- frontend/src/ts/pages/account-settings.ts | 294 ------------------ frontend/src/ts/states/account-settings.ts | 68 ++++ .../src/ts/states/leaderboard-selection.ts | 2 +- 53 files changed, 1318 insertions(+), 1344 deletions(-) delete mode 100644 frontend/src/html/pages/account-settings.html delete mode 100644 frontend/src/styles/account-settings.scss create mode 100644 frontend/src/ts/collections/ape-keys.ts create mode 100644 frontend/src/ts/components/common/Setting.tsx create mode 100644 frontend/src/ts/components/pages/account-settings/AccountSettingsPage.tsx create mode 100644 frontend/src/ts/components/pages/account-settings/AccountTab.tsx create mode 100644 frontend/src/ts/components/pages/account-settings/ApeKeysTab.tsx create mode 100644 frontend/src/ts/components/pages/account-settings/AuthenticationTab.tsx rename frontend/src/ts/components/pages/account-settings/{BlockedUsers.tsx => BlockedUsersTab.tsx} (90%) create mode 100644 frontend/src/ts/components/pages/account-settings/DangerZoneTab.tsx create mode 100644 frontend/src/ts/components/pages/account-settings/utils.tsx delete mode 100644 frontend/src/ts/components/pages/settings/Setting.tsx delete mode 100644 frontend/src/ts/elements/account-settings/ape-key-table.ts delete mode 100644 frontend/src/ts/pages/account-settings.ts diff --git a/frontend/src/html/pages/account-settings.html b/frontend/src/html/pages/account-settings.html deleted file mode 100644 index f809e0eac9cd..000000000000 --- a/frontend/src/html/pages/account-settings.html +++ /dev/null @@ -1,285 +0,0 @@ - diff --git a/frontend/src/index.html b/frontend/src/index.html index 1cd091b68f42..e462f01e88d2 100644 --- a/frontend/src/index.html +++ b/frontend/src/index.html @@ -61,7 +61,9 @@ - + + ); +} + +function DeepLinkButton(props: { key: string }) { + return ( +