Watch
0
0
Fork
You've already forked hyperhive
0
hyperhive/frontend/packages/swarm-ui/src/pages
Repository files (latest commit first)
Filename Latest commit message Latest commit date
iris 601068f1eb swarm-ui/agents: split the page, extract FilterableView per mara's follow-up
Three more asks from the same review thread:

- "agentspage is now giant and deserves a split" - AgentsPage.tsx was
  1047 lines. Split into AgentTypes.ts (AgentRow and friends),
  WantedMenu.tsx, AgentCard.tsx (+ its own CSS), leaving AgentsPage.tsx
  as state/actions/columns/the render tree - 649 lines, and every piece
  it composes is now independently readable.

- "what about the component that represents filtered data ... that the
  card view and table can both use?" - extracted FilterableView
  (ui/filterable-view/): takes columns/rows/rowKey/storageKey/view/
  renderCard, builds its filter bar from *every* filterable column (not
  a hand-picked subset - the old AgentFilterBar only showed 4 of the
  agent columns' 6 filterable fields, an accidental gap the table's own
  popovers didn't have), and renders either the card list or Table.
  AgentsPage now just tells it which view to show; the view toggle
  itself stays page-side since it's Panel-header chrome, not filtering.
  Disclosed side effect: card view's filter bar now also covers
  message/config-PR (text filters), matching table view exactly instead
  of a narrower subset.

- CSS audit: AgentsPage.css now holds only what's genuinely page-specific
  (the view toggle, the detail-panel field grid) - everything else moved
  to its owning component's own colocated CSS.

FilterableView gets a /components demo (view toggle + filter bar + both
render modes, same day per the design guide). Verified: AgentsPage
still renders the same (real screenshot), and the demo's own table
toggle produces a real Table with the same rows.
2026-09-11 22:30:41 +02:00
..
AgentCard.css swarm-ui/agents: split the page, extract FilterableView per mara's follow-up 2026-09-11 22:30:41 +02:00
AgentCard.tsx swarm-ui/agents: split the page, extract FilterableView per mara's follow-up 2026-09-11 22:30:41 +02:00
AgentsPage.css swarm-ui/agents: split the page, extract FilterableView per mara's follow-up 2026-09-11 22:30:41 +02:00
AgentsPage.tsx swarm-ui/agents: split the page, extract FilterableView per mara's follow-up 2026-09-11 22:30:41 +02:00
AgentTypes.ts swarm-ui/agents: split the page, extract FilterableView per mara's follow-up 2026-09-11 22:30:41 +02:00
ComponentsPage.css Add Badge + Dropdown Preact components, demo on swarm-ui /components 2026-08-28 13:21:49 +02:00
ComponentsPage.tsx swarm-ui/agents: split the page, extract FilterableView per mara's follow-up 2026-09-11 22:30:41 +02:00
CreateAgentForm.css swarm-ui: move agent creation into the agents page as a dialog 2026-08-24 00:28:34 +02:00
CreateAgentForm.tsx treefmt: apply prettier 2026-09-02 15:25:07 +02:00
HivesPage.tsx swarm-ui: use multiselect for every enum-shaped table filter 2026-09-10 21:09:09 +02:00
IssueReportPage.css swarm-ui: persist table filters, add reset button, multi-select, negate 2026-09-09 23:31:24 +02:00
IssueReportPage.tsx swarm-ui: use multiselect for every enum-shaped table filter 2026-09-10 21:09:09 +02:00
JobsPage.css extract build-queue rollup as a shared Preact component 2026-08-16 22:08:38 +02:00
JobsPage.tsx treefmt: apply prettier 2026-09-02 15:25:07 +02:00
LinkMatrixAccountForm.css swarm-ui: link a matrix account to an agent 2026-09-08 15:54:01 +02:00
LinkMatrixAccountForm.tsx matrix accounts: server-side password login for swarm-controller 2026-09-09 01:36:52 +02:00
WantedMenu.tsx swarm-ui/agents: split the page, extract FilterableView per mara's follow-up 2026-09-11 22:30:41 +02:00