Line

ui/client/features/pages-editor/domain/PropFlowGeometry

Cockpit client (features), v0.9. Source: ui/client/features/pages-editor/domain/PropFlowGeometry.tsx.

Type Aliases#

GeometryOptions#

GeometryOptions = object

Defined in: ui/client/features/pages-editor/domain/PropFlowGeometry.tsx:47

Properties#

measureText?

optional measureText?: MeasureText

Defined in: ui/client/features/pages-editor/domain/PropFlowGeometry.tsx:47

showValues?

optional showValues?: boolean

Defined in: ui/client/features/pages-editor/domain/PropFlowGeometry.tsx:47


MeasureText#

MeasureText = (label) => number

Defined in: ui/client/features/pages-editor/domain/PropFlowGeometry.tsx:43

Raw text width in px for label (no padding/minimum — those are this module's own concern, applied on top in pillWidth).

Parameters#

label

string

Returns#

number


NodeLayout#

NodeLayout = object

Defined in: ui/client/features/pages-editor/domain/PropFlowGeometry.tsx:101

Properties#

label

label: string

Defined in: ui/client/features/pages-editor/domain/PropFlowGeometry.tsx:106

node

node: PagesEditorNode

Defined in: ui/client/features/pages-editor/domain/PropFlowGeometry.tsx:102

outgoing

outgoing: PillPosition[]

Defined in: ui/client/features/pages-editor/domain/PropFlowGeometry.tsx:108

received

received: PillPosition[]

Defined in: ui/client/features/pages-editor/domain/PropFlowGeometry.tsx:107

width

width: number

Defined in: ui/client/features/pages-editor/domain/PropFlowGeometry.tsx:105

x

x: number

Defined in: ui/client/features/pages-editor/domain/PropFlowGeometry.tsx:103

y

y: number

Defined in: ui/client/features/pages-editor/domain/PropFlowGeometry.tsx:104


PillPosition#

PillPosition = object

Defined in: ui/client/features/pages-editor/domain/PropFlowGeometry.tsx:99

Properties#

label

label: string

Defined in: ui/client/features/pages-editor/domain/PropFlowGeometry.tsx:99

name

name: string

Defined in: ui/client/features/pages-editor/domain/PropFlowGeometry.tsx:99

x

x: number

Defined in: ui/client/features/pages-editor/domain/PropFlowGeometry.tsx:99

y

y: number

Defined in: ui/client/features/pages-editor/domain/PropFlowGeometry.tsx:99

Functions#

layoutPillHierarchy()#

layoutPillHierarchy(roots, options?): Map<string, NodeLayout>

Defined in: ui/client/features/pages-editor/domain/PropFlowGeometry.tsx:155

Lays out every node in the tree into a pill hierarchy: one row of "outgoing" pills per parent, one row of "received" pills per child, one level of depth apart — each slot's reserved width comes from subtreeWidths above, its actual pill content from groupWidth, instead of #55's fixed node-box size.

Parameters#

roots

PagesEditorNode[]

options?

GeometryOptions = {}

Returns#

Map<string, NodeLayout>


namedProps()#

namedProps(node): string[]

Defined in: ui/client/features/pages-editor/domain/PropFlowGeometry.tsx:54

Parameters#

node

PagesEditorNode

Returns#

string[]