swarm-ui: add the custom issue-report page
New /issues route: a sortable, filterable table over open issues across
every repo that has one -- repo picker (default: no filter, every repo
combined), hide-blocked toggle, and a label multi-select, consuming
swarm-controller's GET /api/repos + GET /api/issue-report / GET
/api/repos/{org}/{repo}/issue-report (see hyperhive#3831 for the row
shape). blocked and depended_on_by_count arrive pre-resolved per row --
this page does no dependency-graph walking of its own, just sort/filter
over what it's given. Default sort is depended_on_by_count descending,
matching mara's framing of the report's headline ordering.
Widened Table's TableColumn.header from string to ComponentChildren so
a column can carry a real clickable sort-toggle button instead of
forking a second table primitive for this one page.
This commit is contained in:
parent
5aef2d1afc
commit
e815c7cb5c
5 changed files with 338 additions and 1 deletions
|
|
@ -14,7 +14,11 @@ import './Table.css';
|
|||
|
||||
export interface TableColumn<T> {
|
||||
key: string;
|
||||
header: string;
|
||||
// `ComponentChildren`, not `string` — a plain string still satisfies
|
||||
// this and renders identically, but a caller that wants a clickable
|
||||
// sortable header (the issue-report page's own column-header buttons)
|
||||
// can pass real markup instead of forking a second table primitive.
|
||||
header: ComponentChildren;
|
||||
render: (row: T) => ComponentChildren;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue