pivotick / tableColumns
Variable: tableColumns
consttableColumns:object
Defined in: ui/elements/Table/TableColumns.ts:100
The library's graph-aware columns — the ones no generic grid could compute, because they are about an element's place in the graph rather than its data.
Compose them into UI.table.columns, cloning to adjust:
import { Pivotick, tableColumns } from 'pivotick'
UI: { table: { columns: [
tableColumns.label,
{ ...tableColumns.degree, label: 'Links' },
tableColumns.visibility,
] } }label and the edge source / target columns are resolved against the graph when the dock builds them, so they read the same names the rest of the UI shows. Give a column your own accessor to take that over. Their headings are written in the graph's language (GraphOptions.i18n) unless you give one a label of your own.
Type Declaration
children
children:
TableColumn<Node>
How many nodes a cluster holds directly — 0 for a leaf.
Nothing else in the UI says how big a cluster is: not the label, not the tooltip, not the sidebar. Without this the only way to find out is to expand it, which is the exact "read the value instead of hunting for it" the dock exists for.
Direct children, not the whole subtree, so it matches the structure a nested cluster's own row then reports one level down.
cluster
cluster:
TableColumn<Node>
The clusters a nested node sits inside, outermost first — empty for a node of the root graph. The flat nested mode's answer to "where is this row from", since flat rows carry no structure of their own.
degree
degree:
TableColumn<Node>
Total edges touching the node.
degreeIn
degreeIn:
TableColumn<Node>
Edges pointing at the node.
degreeOut
degreeOut:
TableColumn<Node>
Edges leaving the node.
group
group:
TableColumn<Node>
The group graph.simplify put a node in, by its label; empty for a node in none.
label
label:
TableColumn<Node>
The element's display name, as the rest of the UI resolves it.
pinned
pinned:
TableColumn<Node>
Whether the node is pinned in place.
source
source:
TableColumn<Edge>
An edge's origin, by display name.
target
target:
TableColumn<Edge>
An edge's destination, by display name.
visibility
visibility:
TableColumn<Node>
Whether the element is on the canvas, and if not, why — for a node, filtered by the filter panel or excluded by hand; for an edge, filtered when its layer is off or endpoint when an end of it has left. The dock lists hidden elements rather than hiding them, so this is how you tell them apart.
Narrow and fixed-width: it leads the derived column set as a status gutter, so it should not eat the room the name needs.