Skip to content

Tabbed online accounts with character and party columns - #952

Open
eduardosmaniotto wants to merge 1 commit into
MUnique:masterfrom
eduardosmaniotto:feature/logged-in-tabs
Open

Tabbed online accounts with character and party columns#952
eduardosmaniotto wants to merge 1 commit into
MUnique:masterfrom
eduardosmaniotto:feature/logged-in-tabs

Conversation

@eduardosmaniotto

Copy link
Copy Markdown
Contributor

Reworks the /logged-in (Online accounts) page:

  • Three tabs under the existing header: Players (default), Off-level Players (only when the /offlevel command plugin is active), Bot Players (only when the bot feature plugin is active).
  • New Character column on all tabs. Resolves via in-process game contexts; falls back to in distributed deployments.
  • New Party column: badge showing party master + member count, with a deterministic per-party color so members are visually grouped. Ordering is partied-first → master → account → character, so party members stay contiguous.
  • Bots tab is read-only (no Stop button: bots are tracked inside the private BotManager, so DisconnectAccountAsync cannot stop them cleanly — that would leave stale entries behind).

How

  • LoggedInAccount / OfflineAccount extended with CharacterName, PartyMaster, PartySize; new BotAccount + BotAccountService following the existing IDataService<T> pattern.
  • Shared OnlineAccountOrdering.OrderPartyGrouped<T>() over IPartyGroupedAccount instead of triplicated sort logic.
  • Shared PartyBadge.razor component instead of string-built HTML.
  • Cleanup: short type names, named PlayerInfo record instead of tuple, dead bot filter in OfflineAccountService replaced with an explanatory comment.
players-tab offlevel-players bot-players

…lumns

Split the logged-in page into Players / Off-level Players / Bot Players
tabs, gated on the offlevel and bot plugin states. Add selected-character
and party columns with party-grouped ordering shared across all three
tables, and cover the ordering and distributed fallbacks with tests.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant