Skip to content

refactor: solid connections (@fehmer)#8018

Open
fehmer wants to merge 20 commits into
masterfrom
feature/solid-connections
Open

refactor: solid connections (@fehmer)#8018
fehmer wants to merge 20 commits into
masterfrom
feature/solid-connections

Conversation

@fehmer

@fehmer fehmer commented May 27, 2026

Copy link
Copy Markdown
Member

No description provided.

@fehmer fehmer added the force-ci Force CI to run on draft PRs label May 27, 2026
@monkeytypegeorge monkeytypegeorge added the frontend User interface or web stuff label May 27, 2026
@Miodec Miodec requested a review from Copilot June 8, 2026 15:59
@github-actions github-actions Bot added the waiting for review Pull requests that require a review before continuing label Jun 8, 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

Refactor connections/friends UX to Solid + TanStack collections/queries, removing legacy friends/blocked-users DOM logic and snapshot-stored connections.

Changes:

  • Add collections/connections (tanstack/solid-db) + queries/friends (solid-query) as new data sources.
  • Replace legacy friends page + blocked users table with Solid DataTable pages/components mounted via <mount>.
  • Move shared “age” formatting into utils/date-and-time.ts and update friend indicators to use the new collection.

Reviewed changes

Copilot reviewed 28 out of 28 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
frontend/src/ts/utils/date-and-time.ts Add shared formatAge() helper for connections UI timestamps.
frontend/src/ts/queries/friends.ts New Solid Query options + invalidation for friends list.
frontend/src/ts/pages/friends.ts Remove legacy friends page implementation.
frontend/src/ts/pages/account-settings.ts Stop legacy blocked-users table wiring in tab updates.
frontend/src/ts/elements/account-settings/blocked-user-table.ts Remove legacy blocked-users table implementation.
frontend/src/ts/db.ts Remove snapshot-level connections + legacy friend/connection helpers.
frontend/src/ts/controllers/page-controller.ts Route friends page through solidPage() + connections loading/invalidation.
frontend/src/ts/constants/default-snapshot.ts Drop connections from snapshot type/default.
frontend/src/ts/components/pages/profile/UserDetails.tsx Switch “add friend”/friend badge logic to connections collection.
frontend/src/ts/components/pages/leaderboard/Table.tsx Use connections collection for “isFriend” rendering.
frontend/src/ts/components/pages/connections/PendingRequests.tsx New Solid pending-requests table + actions (accept/reject/block).
frontend/src/ts/components/pages/connections/FriendsPage.tsx New Solid friends page wrapper (pending + list).
frontend/src/ts/components/pages/connections/FriendsList.tsx New Solid friends list table + add/remove flows.
frontend/src/ts/components/pages/account-settings/BlockedUsers.tsx New Solid blocked-users table + unblock flow.
frontend/src/ts/components/mount.tsx Register new mountable components (friends page, blocked users).
frontend/src/ts/components/layout/header/Nav.tsx Pending-requests bubble driven by connections live query.
frontend/src/ts/components/common/UserBadge.tsx Prevent badge text wrapping via whitespace-nowrap.
frontend/src/ts/collections/connections.ts New connections collection, live queries, optimistic actions, invalidation hooks.
frontend/src/styles/media-queries-purple.scss Remove legacy friends/blocked-users responsive overrides.
frontend/src/styles/media-queries-green.scss Remove legacy friends responsive overrides.
frontend/src/styles/media-queries-brown.scss Remove legacy friends/blocked-users responsive overrides.
frontend/src/styles/media-queries-blue.scss Remove legacy friends responsive overrides.
frontend/src/styles/index.scss Stop importing removed legacy friends.scss.
frontend/src/styles/friends.scss Remove legacy friends page stylesheet.
frontend/src/styles/account-settings.scss Remove legacy blocked-users tab table styling.
frontend/src/index.html Inline friends page mountpoint instead of loading legacy HTML partial.
frontend/src/html/pages/friends.html Remove legacy friends HTML partial.
frontend/src/html/pages/account-settings.html Replace blocked-users HTML with Solid mountpoint.

Comment thread frontend/src/ts/utils/date-and-time.ts Outdated
Comment thread frontend/src/ts/components/pages/connections/FriendsList.tsx
Comment thread frontend/src/ts/components/pages/profile/UserDetails.tsx
@github-actions

github-actions Bot commented Jun 8, 2026

Copy link
Copy Markdown
Contributor

Continuous integration check(s) failed. Please review the failing check's logs and make the necessary changes.

@github-actions github-actions Bot added waiting for update Pull requests or issues that require changes/comments before continuing and removed waiting for review Pull requests that require a review before continuing labels Jun 8, 2026
@github-actions github-actions Bot removed the waiting for update Pull requests or issues that require changes/comments before continuing label Jun 8, 2026
@fehmer fehmer marked this pull request as ready for review June 9, 2026 12:18
@github-actions github-actions Bot added the waiting for review Pull requests that require a review before continuing label Jun 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

force-ci Force CI to run on draft PRs 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.

3 participants