Skip to content

pivotick v3.0.0


pivotick / GraphUI / GraphUI

Interface: GraphUI ​

Defined in: interfaces/GraphUI.ts:114

Properties ​

asyncContent? ​

optional asyncContent: AsyncContentOptions

Defined in: interfaces/GraphUI.ts:253

/**

  • What to show while a content hook's promise is in flight, and if it
  • rejects. Only async hooks ever reach it — see AsyncContentOptions.

busyIndicator? ​

optional busyIndicator: boolean | BusyIndicatorOptions

Defined in: interfaces/GraphUI.ts:247

What the canvas shows while it waits on one of your async hooks (onBeforeEdgeCreate, onBeforeDelete, onBeforeNodeCreate, the edit-commit hooks, onBeforeIngest): a progress cursor and a small spinner, never while a prompt the hook opened through its context is on screen. false shows nothing, for a consumer that draws its own. See BusyIndicatorOptions.

Default ​

ts
true

contextMenu ​

contextMenu: ContextMenu

Defined in: interfaces/GraphUI.ts:129


dock? ​

optional dock: DockOptions

Defined in: interfaces/GraphUI.ts:270

The bottom dock itself — the region the table and any registered DockTab share, rather than what is in it.

UI.table carries the same three settings; those are honoured, and anything set here wins. Declare them here when the table is switched off, since that is the only way to reach the dock a plugin's tab brings with it.


editors ​

editors: Editors

Defined in: interfaces/GraphUI.ts:131


emptyState? ​

optional emptyState: boolean | EmptyStateOptions

Defined in: interfaces/GraphUI.ts:238

What the canvas says while the graph holds no node and no note: a card centred in the canvas, shown and hidden as data comes and goes, so an ingest takes it away and undoing that ingest brings it back.

Left out, or true, it reads "Nothing on the canvas yet". false shows nothing. Declare render to say something of your own. See EmptyStateOptions.

Default ​

ts
true

extraPanels ​

extraPanels: ExtraPanel[]

Defined in: interfaces/GraphUI.ts:127


filter? ​

optional filter: FilterOptions

Defined in: interfaces/GraphUI.ts:207

The filter panel's facets. Omit to derive them by scanning node data (the zero-config default); declare facets to generate the form from your own declaration instead. See FilterOptions.


history? ​

optional history: FeatureToggle

Defined in: interfaces/GraphUI.ts:168

The undo / redo split buttons, their history dropdown and Mod+Z / Mod+Shift+Z.

Only the controls: graph.history goes on recording either way, so a consumer driving undo from its own chrome switches this off and keeps the engine.

Default ​

ts
{ enabled: true }

inspector? ​

optional inspector: FeatureToggle

Defined in: interfaces/GraphUI.ts:174

The inspect-properties modal — the node menu's Inspect Properties entry and the I shortcut.

Default ​

ts
{ enabled: true }

keybindings? ​

optional keybindings: Keybinding[]

Defined in: interfaces/GraphUI.ts:284


legend? ​

optional legend: boolean | LegendOptions | LegendGroupOptions

Defined in: interfaces/GraphUI.ts:218

The canvas legend: a key for the graph's colours that doubles as a filter.

Left out, a legend appears by itself when the graph's colours are explained by a declared render.nodeTypeAccessor — see LegendOptions. false suppresses it, true asks for it without the check, and an object configures it. A graph that encodes several things at once passes LegendGroupOptions instead: one docked card, one section per encoding.


mainHeader ​

mainHeader: MainHeader

Defined in: interfaces/GraphUI.ts:124


minimap? ​

optional minimap: boolean | MinimapOptions

Defined in: interfaces/GraphUI.ts:228

The canvas minimap: an overview of the whole graph with a rectangle showing what is on screen. Click it to recentre the view, drag it to pan.

full mode mounts one for you, opening in collapsed: 'auto' so it folds itself away on a canvas with no corner to spare. false suppresses it; true or an object asks for it in any mode — see MinimapOptions. Passing your own minimap() plugin in plugins also wins over this.


mode ​

mode: GraphUIMode

Defined in: interfaces/GraphUI.ts:115


navigation: Navigation

Defined in: interfaces/GraphUI.ts:130


neighborsPanel ​

neighborsPanel: NeighborsPanel

Defined in: interfaces/GraphUI.ts:126


notes? ​

optional notes: FeatureToggle

Defined in: interfaces/GraphUI.ts:154

Free-floating notes on the canvas: the strip's Notes button and its panel, the Create ▸ Add note tool, the canvas menu's Add Note, and the N / Shift+N shortcuts.

enabled: false takes every one of them away and closes the door behind them: graph.noteManager.addNote refuses, so nothing — not a plugin, not the initial data — puts a note on a canvas that offers no way to read or remove one.

Default ​

ts
{ enabled: true }

notifications? ​

optional notifications: FeatureToggle

Defined in: interfaces/GraphUI.ts:181

Toast notifications. enabled: false silences the corner: every graph.notifier.* call becomes a no-op returning undefined, which is already what a mode with no notification slot returns.

Default ​

ts
{ enabled: true }

physicsFlyout? ​

optional physicsFlyout: FeatureToggle

Defined in: interfaces/GraphUI.ts:194

The Physics rail mode — the flyout holding the simulation sliders and presets. enabled: false takes its rail button and its panel away; whether the simulation runs at all is simulation.enabled's business.

Default ​

ts
{ enabled: true }

pivotMode? ​

optional pivotMode: boolean | "auto"

Defined in: interfaces/GraphUI.ts:283

The Pivot rail mode — where an analyst picks an origin, reads what each registered pivot advertises, narrows it and runs it.

'auto' (the default) ties the rail button to the registry: it appears when the first pivot registers and goes when the last one leaves, so a consumer with no pivots sees no trace of the feature. true keeps it there regardless, for pivots that arrive asynchronously; false never shows it. Never mounted in viewer or static mode.

Default ​

ts
'auto'

propertiesPanel ​

propertiesPanel: PropertiesPanel

Defined in: interfaces/GraphUI.ts:125


optional search: FeatureToggle

Defined in: interfaces/GraphUI.ts:160

Node search: the header's Search button, its picker modal and Shift+J. graph.selectElement and the pickers other features open are untouched.

Default ​

ts
{ enabled: true }

sidebar: SidebarOptions

Defined in: interfaces/GraphUI.ts:123


simplify? ​

optional simplify: SimplifyOptions

Defined in: interfaces/GraphUI.ts:201

Fold nodes that play the same role into one group node, and the Simplify rail mode that switches the rules. Left out, full mode offers the neighbour rule switched off; the other modes show and run nothing unless rules are declared. enabled: false removes the feature.


table? ​

optional table: boolean | TableOptions

Defined in: interfaces/GraphUI.ts:261

The data dock: the graph's nodes and edges as a sortable, selectable grid split off the bottom of the canvas.

full mode offers one by default; false suppresses it entirely, an object configures it. Other modes never mount it. See TableOptions.


theme? ​

optional theme: string

Defined in: interfaces/GraphUI.ts:122

The classname of the theme to force the UI to ignore user's prefered color scheme. Available by default: light and dark. Keep it undefined to use user's prefered color scheme.

Default ​

ts
undefined

tooltip ​

tooltip: Tooltip

Defined in: interfaces/GraphUI.ts:128


topBar? ​

optional topBar: TopBar

Defined in: interfaces/GraphUI.ts:143

The strip along the top of the canvas: the Search / Filter / Notes pills, the host's own TopBar.actions and the undo-redo group. enabled: false removes the strip, the 48px it reserved and the shortcuts its controls own.

Not to be confused with GraphUI.mainHeader, which is how elements are named wherever they are shown. Each pill also has its own switch (GraphUI.search, UI.filter.enabled, GraphUI.notes, GraphUI.history) for taking one away rather than all of them.

Default ​

ts
{ enabled: true }

viewFlyout? ​

optional viewFlyout: FeatureToggle

Defined in: interfaces/GraphUI.ts:187

The View rail mode — the flyout holding the layout, grid and visibility switches. enabled: false takes its rail button and its panel away.

Default ​

ts
{ enabled: true }