Skip to content

refactor: solid account settings (@fehmer)#8090

Merged
Miodec merged 37 commits into
masterfrom
feature/solid-account-settings
Jun 26, 2026
Merged

refactor: solid account settings (@fehmer)#8090
Miodec merged 37 commits into
masterfrom
feature/solid-account-settings

Conversation

@fehmer

@fehmer fehmer commented Jun 12, 2026

Copy link
Copy Markdown
Member

No description provided.

@monkeytypegeorge monkeytypegeorge added the frontend User interface or web stuff label Jun 12, 2026
@fehmer fehmer marked this pull request as ready for review June 14, 2026 11:58
@fehmer fehmer added the force-ci Force CI to run on draft PRs label Jun 14, 2026
@github-actions github-actions Bot added the waiting for review Pull requests that require a review before continuing label Jun 14, 2026
@fehmer fehmer marked this pull request as draft June 14, 2026 11:58
@github-actions github-actions Bot removed the waiting for review Pull requests that require a review before continuing label Jun 14, 2026
@Miodec Miodec requested a review from Copilot June 14, 2026 15:32
@github-actions github-actions Bot added the waiting for review Pull requests that require a review before continuing label Jun 14, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Refactors Account Settings frontend from legacy DOM/page code to SolidJS components + URL-param driven tab state, and centralizes the Setting UI component for reuse.

Changes:

  • Replace legacy /account-settings page implementation with Solid AccountSettingsPage + per-tab components + states/account-settings URL syncing.
  • Introduce collections/ape-keys (tanstack/solid-db) and new Ape Keys tab UI.
  • Refactor shared Setting component into components/common/Setting and update Settings page/custom settings to import it.

Reviewed changes

Copilot reviewed 48 out of 48 changed files in this pull request and generated 11 comments.

Show a summary per file
File Description
frontend/src/ts/states/leaderboard-selection.ts Rename URL-param reader for clarity (readLeaderboardGetParameters).
frontend/src/ts/states/account-settings.ts New Solid state for account settings tabs + URL param sync + ape key denial state.
frontend/src/ts/pages/account-settings.ts Deleted legacy account-settings page controller.
frontend/src/ts/controllers/page-controller.ts Route accountSettings via solidPage + hook URL params into new state.
frontend/src/ts/components/ui/table/DataTable.tsx Attempt to improve table reactivity by memoizing data/table + adjust default row id.
frontend/src/ts/components/pages/settings/SettingsPage.tsx Switch Setting import to shared common component.
frontend/src/ts/components/pages/settings/Setting.tsx Deleted old Settings-only Setting component.
frontend/src/ts/components/pages/settings/custom-setting/Theme.tsx Switch Setting import to common component.
frontend/src/ts/components/pages/settings/custom-setting/Tags.tsx Switch Setting import to common component.
frontend/src/ts/components/pages/settings/custom-setting/SoundVolume.tsx Switch Setting import to common component.
frontend/src/ts/components/pages/settings/custom-setting/Presets.tsx Switch Setting import to common component.
frontend/src/ts/components/pages/settings/custom-setting/PaceCaret.tsx Switch Setting import to common component.
frontend/src/ts/components/pages/settings/custom-setting/MinSpeed.tsx Switch Setting import to common component.
frontend/src/ts/components/pages/settings/custom-setting/MinBurst.tsx Switch Setting import to common component.
frontend/src/ts/components/pages/settings/custom-setting/MinAcc.tsx Switch Setting import to common component.
frontend/src/ts/components/pages/settings/custom-setting/MaxLineWidth.tsx Switch Setting import to common component.
frontend/src/ts/components/pages/settings/custom-setting/Layout.tsx Switch Setting import to common component.
frontend/src/ts/components/pages/settings/custom-setting/Language.tsx Switch Setting import to common component.
frontend/src/ts/components/pages/settings/custom-setting/KeymapSize.tsx Switch Setting import to common component.
frontend/src/ts/components/pages/settings/custom-setting/KeymapLayout.tsx Switch Setting import to common component.
frontend/src/ts/components/pages/settings/custom-setting/ImportExport.tsx Switch Setting import to common component.
frontend/src/ts/components/pages/settings/custom-setting/Funbox.tsx Switch Setting import to common component.
frontend/src/ts/components/pages/settings/custom-setting/FontFamily.tsx Switch Setting import to common component.
frontend/src/ts/components/pages/settings/custom-setting/CustomPolyglot.tsx Switch Setting import to common component.
frontend/src/ts/components/pages/settings/custom-setting/CustomLayoutfluid.tsx Switch Setting import to common component.
frontend/src/ts/components/pages/settings/custom-setting/CustomBackgroundFilters.tsx Switch Setting import to common component.
frontend/src/ts/components/pages/settings/custom-setting/CustomBackground.tsx Switch Setting import to common component.
frontend/src/ts/components/pages/settings/custom-setting/AutoSwitchTheme.tsx Switch Setting import to common component.
frontend/src/ts/components/pages/settings/custom-setting/AnimationFpsLimit.tsx Switch Setting import to common component.
frontend/src/ts/components/pages/connections/PendingRequests.tsx Stop cloning data array at call site (relies on DataTable behavior).
frontend/src/ts/components/pages/account-settings/utils.tsx New Section wrapper around common Setting.
frontend/src/ts/components/pages/account-settings/DangerZoneTab.tsx New Solid Danger Zone tab UI.
frontend/src/ts/components/pages/account-settings/BlockedUsersTab.tsx New Solid Blocked Users tab UI.
frontend/src/ts/components/pages/account-settings/AuthenticationTab.tsx New Solid Authentication tab UI.
frontend/src/ts/components/pages/account-settings/ApeKeysTab.tsx New Solid Ape Keys tab UI (uses new collection + DataTable).
frontend/src/ts/components/pages/account-settings/AccountTab.tsx New Solid Account tab UI (Discord link + other actions).
frontend/src/ts/components/pages/account-settings/AccountSettingsPage.tsx New Solid Account Settings page layout + sidebar tab switching.
frontend/src/ts/components/mount.tsx Register new account settings page component for mounting.
frontend/src/ts/components/modals/account-settings/UpdateNameModal.tsx Adjust snapshot source + remove reload-after behavior.
frontend/src/ts/components/modals/account-settings/RemoveAuthMethodModal.tsx Remove callback/reload-after behavior.
frontend/src/ts/components/modals/account-settings/AddPasswordAuthModal.tsx Delegate password-provider add flow to addAuthProvider.
frontend/src/ts/components/common/Setting.tsx New shared Setting component (moved from settings page folder).
frontend/src/ts/collections/ape-keys.ts New Solid DB collection + optimistic actions for Ape Keys.
frontend/src/ts/auth.tsx Add reactive auth-method helpers + refactor provider linking + icon metadata.
frontend/src/styles/index.scss Remove legacy account-settings stylesheet import.
frontend/src/styles/account-settings.scss Deleted legacy account-settings SCSS.
frontend/src/index.html Replace <load ...account-settings.html> with mountpoint for Solid page.
frontend/src/html/pages/account-settings.html Deleted legacy account-settings HTML page.
Comments suppressed due to low confidence (1)

frontend/src/ts/components/pages/account-settings/BlockedUsersTab.tsx:27

  • TSX syntax error: JSX fragments must be passed as expressions (with {}), e.g. description={<></>}.

Comment thread frontend/src/ts/components/pages/account-settings/AccountTab.tsx Outdated
Comment thread frontend/src/ts/components/pages/account-settings/AccountSettingsPage.tsx Outdated
Comment thread frontend/src/ts/components/pages/account-settings/utils.tsx
Comment thread frontend/src/ts/components/ui/table/DataTable.tsx
Comment thread frontend/src/ts/components/ui/table/DataTable.tsx
Comment thread frontend/src/ts/auth.tsx Outdated
Comment thread frontend/src/ts/auth.tsx
Comment thread frontend/src/ts/auth.tsx Outdated
Comment thread frontend/src/ts/collections/ape-keys.ts Outdated
Comment thread frontend/src/ts/components/modals/account-settings/UpdateNameModal.tsx Outdated
@github-actions github-actions Bot removed the waiting for review Pull requests that require a review before continuing label Jun 14, 2026
@fehmer fehmer marked this pull request as ready for review June 14, 2026 18:05
@github-actions github-actions Bot added the waiting for review Pull requests that require a review before continuing label Jun 14, 2026
@fehmer fehmer removed the force-ci Force CI to run on draft PRs label Jun 19, 2026
@Miodec Miodec requested a review from Copilot June 19, 2026 15:07

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 53 out of 53 changed files in this pull request and generated 9 comments.

Comment thread frontend/src/ts/components/modals/account-settings/UpdateNameModal.tsx Outdated
Comment thread frontend/src/ts/auth.tsx
Comment thread frontend/src/ts/auth.tsx
Comment thread frontend/src/ts/auth.tsx
Comment thread frontend/src/ts/components/pages/account-settings/ApeKeysTab.tsx
Comment thread frontend/src/ts/components/pages/account-settings/ApeKeysTab.tsx
Comment thread frontend/src/ts/components/pages/account-settings/ApeKeysTab.tsx
@github-actions github-actions Bot removed the waiting for review Pull requests that require a review before continuing label Jun 19, 2026
@fehmer fehmer added the waiting for review Pull requests that require a review before continuing label Jun 26, 2026
@Miodec Miodec merged commit 28db631 into master Jun 26, 2026
15 checks passed
@Miodec Miodec deleted the feature/solid-account-settings branch June 26, 2026 08:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

frontend User interface or web stuff waiting for review Pull requests that require a review before continuing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants