@hlang-org/editor-core
Headless core of the Lumen editor for hlang: graph model, reversible commands, validation, diagnostics, and IGraph serialization. No React, no DOM. Version 0.1.1, 124 exports.
Classes
AddNodeCommand
Defined in: packages/editor-core/src/commands/commands.ts:22
Add a node. Undo removes it (and — trivially — nothing else yet).
Implements
Constructors
Constructor
new AddNodeCommand(node): AddNodeCommand;Defined in: packages/editor-core/src/commands/commands.ts:25
Parameters
| Parameter | Type |
|---|---|
node | EditorNode |
Returns
Properties
| Property | Modifier | Type | Default value | Defined in |
|---|---|---|---|---|
kind | readonly | "addNode" | 'addNode' | packages/editor-core/src/commands/commands.ts:23 |
label | readonly | "Add Node" | 'Add Node' | packages/editor-core/src/commands/commands.ts:24 |
Methods
execute()
execute(ctx): void;Defined in: packages/editor-core/src/commands/commands.ts:26
Parameters
| Parameter | Type |
|---|---|
ctx | CommandContext |
Returns
void
Implementation of
undo()
undo(ctx): void;Defined in: packages/editor-core/src/commands/commands.ts:30
Parameters
| Parameter | Type |
|---|---|
ctx | CommandContext |
Returns
void
Implementation of
CommandContextProvider
Defined in: packages/editor-core/src/services/context-provider.ts:12
Supplies the context commands run against. Injected to avoid a cycle.
Implements
Constructors
Constructor
new CommandContextProvider(
model,
validator,
bus,
viewState
): CommandContextProvider;Defined in: packages/editor-core/src/services/context-provider.ts:13
Parameters
| Parameter | Type |
|---|---|
model | IGraphModel |
validator | IConnectionValidator |
bus | IEventBus |
viewState | IViewStateService |
Returns
Methods
getContext()
getContext(): CommandContext;Defined in: packages/editor-core/src/services/context-provider.ts:20
Returns
Implementation of
ICommandContextProvider.getContext
CommandService
Defined in: packages/editor-core/src/services/command-service.ts:28
Implements
Constructors
Constructor
new CommandService(provider, history): CommandService;Defined in: packages/editor-core/src/services/command-service.ts:29
Parameters
| Parameter | Type |
|---|---|
provider | ICommandContextProvider |
history | IHistoryService |
Returns
Methods
execute()
execute<R>(command): CommandResult<R>;Defined in: packages/editor-core/src/services/command-service.ts:34
Type Parameters
Parameters
| Parameter | Type |
|---|---|
command | IEditorCommand<R> |
Returns
Implementation of
CommandValidationError
Defined in: packages/editor-core/src/services/command-service.ts:21
Thrown by a command to reject a mutation with a validation reason.
Extends
Error
Constructors
Constructor
new CommandValidationError(result): CommandValidationError;Defined in: packages/editor-core/src/services/command-service.ts:22
Parameters
| Parameter | Type |
|---|---|
result | ValidationResult |
Returns
Overrides
Error.constructor
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
result | readonly | ValidationResult | packages/editor-core/src/services/command-service.ts:22 |
ConnectCommand
Defined in: packages/editor-core/src/commands/commands.ts:74
Connect two endpoints (validated). Undo removes the created edge.
Implements
Constructors
Constructor
new ConnectCommand(
edgeId,
source,
target
): ConnectCommand;Defined in: packages/editor-core/src/commands/commands.ts:77
Parameters
Returns
Properties
| Property | Modifier | Type | Default value | Defined in |
|---|---|---|---|---|
kind | readonly | "connect" | 'connect' | packages/editor-core/src/commands/commands.ts:75 |
label | readonly | "Connect Nodes" | 'Connect Nodes' | packages/editor-core/src/commands/commands.ts:76 |
Methods
execute()
execute(ctx): void;Defined in: packages/editor-core/src/commands/commands.ts:82
Parameters
| Parameter | Type |
|---|---|
ctx | CommandContext |
Returns
void
Implementation of
undo()
undo(ctx): void;Defined in: packages/editor-core/src/commands/commands.ts:95
Parameters
| Parameter | Type |
|---|---|
ctx | CommandContext |
Returns
void
Implementation of
ConnectionValidator
Defined in: packages/editor-core/src/services/connection-validator.ts:43
Implements
Constructors
Constructor
new ConnectionValidator(): ConnectionValidator;Returns
Methods
canLink()
canLink(sourcePort, targetPort): ValidationResult;Defined in: packages/editor-core/src/services/connection-validator.ts:83
Decide whether two ports COULD be linked, based only on the ports
themselves (direction + DTO compatibility) — independent of any graph
model. Used by design-time affordances such as "which node types can
complete this dangling connection?", where the candidate node does not
exist yet. This is the model-free subset of validate's rules;
validate additionally enforces node existence, self-connection, and
duplicate-edge rules that only make sense against a concrete graph.
Parameters
| Parameter | Type |
|---|---|
sourcePort | PortDescriptor |
targetPort | PortDescriptor |
Returns
Implementation of
validate()
validate(
source,
target,
model
): ValidationResult;Defined in: packages/editor-core/src/services/connection-validator.ts:44
Decide whether an edge from source (O) to target (I) is legal.
Parameters
| Parameter | Type |
|---|---|
source | Endpoint |
target | Endpoint |
model | IGraphModel |
Returns
Implementation of
CountingIdGenerator
Defined in: packages/editor-core/src/services/id-generator.ts:24
Implements
Constructors
Constructor
new CountingIdGenerator(nodePrefix?, edgePrefix?): CountingIdGenerator;Defined in: packages/editor-core/src/services/id-generator.ts:28
Parameters
| Parameter | Type | Default value |
|---|---|---|
nodePrefix? | string | 'node' |
edgePrefix? | string | 'edge' |
Returns
Methods
nextEdgeId()
nextEdgeId(): string;Defined in: packages/editor-core/src/services/id-generator.ts:38
Returns
string
Implementation of
nextNodeId()
nextNodeId(): string;Defined in: packages/editor-core/src/services/id-generator.ts:33
Returns
string
Implementation of
reserve()
reserve(ids): void;Defined in: packages/editor-core/src/services/id-generator.ts:43
Reserve ids already present in the graph so future ids never collide. Call
after importing a graph whose ids were minted elsewhere (e.g. serialization).
Ids that don't match this generator's <prefix>-<n> scheme are ignored.
Parameters
| Parameter | Type |
|---|---|
ids | Iterable<string> |
Returns
void
Implementation of
DiagnosticsService
Defined in: packages/editor-core/src/services/diagnostics-service.ts:36
Implements
Constructors
Constructor
new DiagnosticsService(
model,
bus,
validator,
registry
): DiagnosticsService;Defined in: packages/editor-core/src/services/diagnostics-service.ts:43
Parameters
| Parameter | Type |
|---|---|
model | IGraphModel |
bus | IEventBus |
validator | IConnectionValidator |
registry | INodeRegistry |
Returns
Accessors
version
Get Signature
get version(): number;Defined in: packages/editor-core/src/services/diagnostics-service.ts:59
Monotonic change signal, bumped on every graph change that may affect
diagnostics (recompute itself is lazy — see getDiagnostics). Reactive
readers use it as a cheap "something changed" token.
Returns
number
Monotonic change signal, bumped on every graph change that may affect
diagnostics (recompute itself is lazy — see getDiagnostics). Reactive
readers use it as a cheap "something changed" token.
Implementation of
Methods
dispose()
dispose(): void;Defined in: packages/editor-core/src/services/diagnostics-service.ts:80
Returns
void
getDiagnostics()
getDiagnostics(): readonly Diagnostic[];Defined in: packages/editor-core/src/services/diagnostics-service.ts:63
Current diagnostics for the whole graph, recomputed on structural change.
Returns
readonly Diagnostic[]
Implementation of
IDiagnosticsService.getDiagnostics
onChanged()
onChanged(listener): IDisposable;Defined in: packages/editor-core/src/services/diagnostics-service.ts:71
Subscribe to "diagnostics changed"; returns a disposer.
Parameters
| Parameter | Type |
|---|---|
listener | () => void |
Returns
Implementation of
DisconnectCommand
Defined in: packages/editor-core/src/commands/commands.ts:102
Remove an edge; undo restores it.
Implements
Constructors
Constructor
new DisconnectCommand(edgeId): DisconnectCommand;Defined in: packages/editor-core/src/commands/commands.ts:106
Parameters
| Parameter | Type |
|---|---|
edgeId | string |
Returns
Properties
| Property | Modifier | Type | Default value | Defined in |
|---|---|---|---|---|
kind | readonly | "disconnect" | 'disconnect' | packages/editor-core/src/commands/commands.ts:103 |
label | readonly | "Disconnect" | 'Disconnect' | packages/editor-core/src/commands/commands.ts:104 |
Methods
execute()
execute(ctx): void;Defined in: packages/editor-core/src/commands/commands.ts:107
Parameters
| Parameter | Type |
|---|---|
ctx | CommandContext |
Returns
void
Implementation of
undo()
undo(ctx): void;Defined in: packages/editor-core/src/commands/commands.ts:120
Parameters
| Parameter | Type |
|---|---|
ctx | CommandContext |
Returns
void
Implementation of
EventBus
Defined in: packages/editor-core/src/services/event-bus.ts:15
Implements
Constructors
Constructor
new EventBus(): EventBus;Returns
Methods
emit()
emit(event): void;Defined in: packages/editor-core/src/services/event-bus.ts:18
Parameters
| Parameter | Type |
|---|---|
event | EditorEvent |
Returns
void
Implementation of
on()
on<K>(kind, listener): IDisposable;Defined in: packages/editor-core/src/services/event-bus.ts:29
Type Parameters
| Type Parameter |
|---|
K extends | "nodeAdded" | "nodeRemoved" | "nodeChanged" | "edgeAdded" | "edgeRemoved" | "selectionChanged" | "viewStateChanged" | "historyChanged" |
Parameters
| Parameter | Type |
|---|---|
kind | K |
listener | (event) => void |
Returns
Implementation of
ExecutionService
Defined in: packages/editor-core/src/services/execution-service.ts:36
Implements
Constructors
Constructor
new ExecutionService(serialization, runner): ExecutionService;Defined in: packages/editor-core/src/services/execution-service.ts:37
Parameters
| Parameter | Type |
|---|---|
serialization | ISerializationService |
runner | IGraphRunner |
Returns
Methods
run()
run(model): IExecutionHandle;Defined in: packages/editor-core/src/services/execution-service.ts:42
Serialize the current model and run it.
Parameters
| Parameter | Type |
|---|---|
model | IGraphModel |
Returns
Implementation of
GraphModel
Defined in: packages/editor-core/src/services/graph-model.ts:20
Implements
Constructors
Constructor
new GraphModel(): GraphModel;Returns
Methods
addEdge()
addEdge(edge): void;Defined in: packages/editor-core/src/services/graph-model.ts:73
Parameters
| Parameter | Type |
|---|---|
edge | EditorEdge |
Returns
void
Implementation of
addNode()
addNode(node): void;Defined in: packages/editor-core/src/services/graph-model.ts:40
Parameters
| Parameter | Type |
|---|---|
node | EditorNode |
Returns
void
Implementation of
getEdge()
getEdge(id): EditorEdge | undefined;Defined in: packages/editor-core/src/services/graph-model.ts:28
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
EditorEdge | undefined
Implementation of
getEdges()
getEdges(): readonly EditorEdge[];Defined in: packages/editor-core/src/services/graph-model.ts:36
Returns
readonly EditorEdge[]
Implementation of
getNode()
getNode(id): EditorNode | undefined;Defined in: packages/editor-core/src/services/graph-model.ts:24
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
EditorNode | undefined
Implementation of
getNodes()
getNodes(): readonly EditorNode[];Defined in: packages/editor-core/src/services/graph-model.ts:32
Returns
readonly EditorNode[]
Implementation of
incidentEdges()
incidentEdges(nodeId): readonly EditorEdge[];Defined in: packages/editor-core/src/services/graph-model.ts:93
All edges touching nodeId on either endpoint.
Parameters
| Parameter | Type |
|---|---|
nodeId | string |
Returns
readonly EditorEdge[]
Implementation of
removeEdge()
removeEdge(id): void;Defined in: packages/editor-core/src/services/graph-model.ts:86
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
void
Implementation of
removeNode()
removeNode(id): void;Defined in: packages/editor-core/src/services/graph-model.ts:47
Remove a node and cascade-remove its incident edges.
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
void
Implementation of
restore()
restore(snapshot): void;Defined in: packages/editor-core/src/services/graph-model.ts:110
Parameters
| Parameter | Type |
|---|---|
snapshot | GraphSnapshot |
Returns
void
Implementation of
snapshot()
snapshot(): GraphSnapshot;Defined in: packages/editor-core/src/services/graph-model.ts:103
Returns
Implementation of
updateNodeName()
updateNodeName(id, name): void;Defined in: packages/editor-core/src/services/graph-model.ts:68
Parameters
| Parameter | Type |
|---|---|
id | string |
name | string |
Returns
void
Implementation of
updateNodeParams()
updateNodeParams(id, params): void;Defined in: packages/editor-core/src/services/graph-model.ts:58
Parameters
| Parameter | Type |
|---|---|
id | string |
params | ParamBag |
Returns
void
Implementation of
updateNodePosition()
updateNodePosition(id, position): void;Defined in: packages/editor-core/src/services/graph-model.ts:63
Parameters
| Parameter | Type |
|---|---|
id | string |
position | Point |
Returns
void
Implementation of
IGraphModel.updateNodePosition
GraphTopology
Defined in: packages/editor-core/src/services/graph-topology.ts:78
Constructors
Constructor
new GraphTopology(): GraphTopology;Returns
Methods
addEdge()
addEdge(edge): void;Defined in: packages/editor-core/src/services/graph-topology.ts:150
Parameters
| Parameter | Type |
|---|---|
edge | EditorEdge |
Returns
void
addNode()
addNode(node): void;Defined in: packages/editor-core/src/services/graph-topology.ts:113
Parameters
| Parameter | Type |
|---|---|
node | EditorNode |
Returns
void
componentOf()
componentOf(id): string | undefined;Defined in: packages/editor-core/src/services/graph-topology.ts:225
The component id (representative) a node belongs to, or undefined.
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
string | undefined
components()
components(): readonly TopologyComponent[];Defined in: packages/editor-core/src/services/graph-topology.ts:205
All weakly-connected components.
Returns
readonly TopologyComponent[]
extractInterface()
extractInterface(nodeIds): SubgraphInterface;Defined in: packages/editor-core/src/services/graph-topology.ts:244
The outward-facing interface of the subgraph induced by nodeIds: the
ports on member nodes whose connections cross the subgraph boundary. These
are exactly the I/O ports the subgraph would expose if collapsed into one
composite node — the basis for hlang's subgraph<->node isomorphism.
Complexity: O(E_incident) — only edges touching a member node are examined. Deterministic order: inputs then outputs, each in edge-insertion order, de-duplicated by (nodeId, portId) since a port may cross the boundary on more than one edge (fan-in / fan-out).
Parameters
| Parameter | Type |
|---|---|
nodeIds | ReadonlySet<string> |
Returns
lint()
lint(): readonly LintDiagnostic[];Defined in: packages/editor-core/src/services/graph-topology.ts:293
Edit-time diagnostics over the current topology (single pass).
Returns
readonly LintDiagnostic[]
removeEdge()
removeEdge(id): void;Defined in: packages/editor-core/src/services/graph-topology.ts:171
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
void
removeNode()
removeNode(id): void;Defined in: packages/editor-core/src/services/graph-topology.ts:124
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
void
reset()
reset(nodes, edges): void;Defined in: packages/editor-core/src/services/graph-topology.ts:184
Replace the entire topology from a node/edge snapshot (bulk load).
Parameters
| Parameter | Type |
|---|---|
nodes | readonly EditorNode[] |
edges | readonly EditorEdge[] |
Returns
void
GroupModel
Defined in: packages/editor-core/src/services/group-model.ts:60
Constructors
Constructor
new GroupModel(): GroupModel;Returns
Methods
addMember()
addMember(id, nodeId): void;Defined in: packages/editor-core/src/services/group-model.ts:112
Parameters
| Parameter | Type |
|---|---|
id | string |
nodeId | string |
Returns
void
childGroups()
childGroups(parentId): readonly EditorGroup[];Defined in: packages/editor-core/src/services/group-model.ts:104
Parameters
| Parameter | Type |
|---|---|
parentId | string |
Returns
readonly EditorGroup[]
createGroup()
createGroup(input): string;Defined in: packages/editor-core/src/services/group-model.ts:69
Parameters
| Parameter | Type |
|---|---|
input | CreateGroupInput |
Returns
string
forgetNode()
forgetNode(nodeId): void;Defined in: packages/editor-core/src/services/group-model.ts:135
Remove a node from every group (call when the node leaves the graph).
Parameters
| Parameter | Type |
|---|---|
nodeId | string |
Returns
void
fromJSON()
fromJSON(sidecar): void;Defined in: packages/editor-core/src/services/group-model.ts:153
Parameters
| Parameter | Type |
|---|---|
sidecar | GroupSidecar |
Returns
void
getGroup()
getGroup(id): EditorGroup | undefined;Defined in: packages/editor-core/src/services/group-model.ts:92
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
EditorGroup | undefined
groupsContaining()
groupsContaining(nodeId): readonly EditorGroup[];Defined in: packages/editor-core/src/services/group-model.ts:108
Parameters
| Parameter | Type |
|---|---|
nodeId | string |
Returns
readonly EditorGroup[]
listGroups()
listGroups(): readonly EditorGroup[];Defined in: packages/editor-core/src/services/group-model.ts:96
Returns
readonly EditorGroup[]
removeGroup()
removeGroup(id): void;Defined in: packages/editor-core/src/services/group-model.ts:82
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
void
removeMember()
removeMember(id, nodeId): void;Defined in: packages/editor-core/src/services/group-model.ts:116
Parameters
| Parameter | Type |
|---|---|
id | string |
nodeId | string |
Returns
void
rename()
rename(id, name): void;Defined in: packages/editor-core/src/services/group-model.ts:120
Parameters
| Parameter | Type |
|---|---|
id | string |
name | string |
Returns
void
setCollapsed()
setCollapsed(id, collapsed): void;Defined in: packages/editor-core/src/services/group-model.ts:127
Parameters
| Parameter | Type |
|---|---|
id | string |
collapsed | boolean |
Returns
void
toJSON()
toJSON(): GroupSidecar;Defined in: packages/editor-core/src/services/group-model.ts:141
Returns
topLevelGroups()
topLevelGroups(): readonly EditorGroup[];Defined in: packages/editor-core/src/services/group-model.ts:100
Returns
readonly EditorGroup[]
HistoryService
Defined in: packages/editor-core/src/services/history-service.ts:47
Implements
Constructors
Constructor
new HistoryService(provider, bus): HistoryService;Defined in: packages/editor-core/src/services/history-service.ts:54
Parameters
| Parameter | Type |
|---|---|
provider | ICommandContextProvider |
bus | IEventBus |
Returns
Methods
canRedo()
canRedo(): boolean;Defined in: packages/editor-core/src/services/history-service.ts:63
Returns
boolean
Implementation of
canUndo()
canUndo(): boolean;Defined in: packages/editor-core/src/services/history-service.ts:59
Returns
boolean
Implementation of
clear()
clear(): void;Defined in: packages/editor-core/src/services/history-service.ts:118
Returns
void
Implementation of
push()
push(command): void;Defined in: packages/editor-core/src/services/history-service.ts:67
Parameters
| Parameter | Type |
|---|---|
command | IEditorCommand |
Returns
void
Implementation of
redo()
redo(): void;Defined in: packages/editor-core/src/services/history-service.ts:87
Returns
void
Implementation of
transact()
transact(label, fn): void;Defined in: packages/editor-core/src/services/history-service.ts:97
Group multiple commands executed in fn into one undo entry.
Parameters
| Parameter | Type |
|---|---|
label | string |
fn | () => void |
Returns
void
Implementation of
undo()
undo(): void;Defined in: packages/editor-core/src/services/history-service.ts:77
Returns
void
Implementation of
InstantiationService
Defined in: packages/editor-core/src/di/instantiation-service.ts:16
Constructors
Constructor
new InstantiationService(services): InstantiationService;Defined in: packages/editor-core/src/di/instantiation-service.ts:17
Parameters
| Parameter | Type |
|---|---|
services | ServiceCollection |
Returns
Methods
createInstance()
createInstance<T>(ctor, ...rest): T;Defined in: packages/editor-core/src/di/instantiation-service.ts:31
Instantiate ctor, injecting decorated dependencies and appending any
rest positional arguments after the injected ones.
Type Parameters
Parameters
| Parameter | Type |
|---|---|
ctor | Newable<T> |
...rest | readonly unknown[] |
Returns
T
Throws
if a declared dependency is not registered, or if the decorated parameter indices are not the leading, contiguous parameters.
get()
get<T>(id): T;Defined in: packages/editor-core/src/di/instantiation-service.ts:20
Resolve a service directly from the backing collection.
Type Parameters
Parameters
| Parameter | Type |
|---|---|
id | ServiceIdentifier<T> |
Returns
T
InterpreterGraphRunner
Defined in: packages/editor-core/src/services/interpreter-runner.ts:16
Runs an IGraph. Abstracts @hlang-org/interpreter.interpret so the core
does not construct runtime objects directly and tests can inject a fake.
Implements
Constructors
Constructor
new InterpreterGraphRunner(registry, createFlow): InterpreterGraphRunner;Defined in: packages/editor-core/src/services/interpreter-runner.ts:17
Parameters
| Parameter | Type |
|---|---|
registry | INodeRegistry |
createFlow | FlowFactory |
Returns
Methods
run()
run(graph): IExecutionHandle;Defined in: packages/editor-core/src/services/interpreter-runner.ts:22
Parameters
| Parameter | Type |
|---|---|
graph | IGraph |
Returns
Implementation of
MoveNodeCommand
Defined in: packages/editor-core/src/commands/commands.ts:130
Move a node; captures the previous position for undo.
Implements
Constructors
Constructor
new MoveNodeCommand(nodeId, next): MoveNodeCommand;Defined in: packages/editor-core/src/commands/commands.ts:134
Parameters
| Parameter | Type |
|---|---|
nodeId | string |
next | Point |
Returns
Properties
| Property | Modifier | Type | Default value | Defined in |
|---|---|---|---|---|
kind | readonly | "moveNode" | 'moveNode' | packages/editor-core/src/commands/commands.ts:131 |
label | readonly | "Move Node" | 'Move Node' | packages/editor-core/src/commands/commands.ts:132 |
Methods
execute()
execute(ctx): void;Defined in: packages/editor-core/src/commands/commands.ts:138
Parameters
| Parameter | Type |
|---|---|
ctx | CommandContext |
Returns
void
Implementation of
undo()
undo(ctx): void;Defined in: packages/editor-core/src/commands/commands.ts:151
Parameters
| Parameter | Type |
|---|---|
ctx | CommandContext |
Returns
void
Implementation of
NodeRegistry
Defined in: packages/editor-core/src/services/node-registry.ts:13
Implements
Constructors
Constructor
new NodeRegistry(ids): NodeRegistry;Defined in: packages/editor-core/src/services/node-registry.ts:16
Parameters
| Parameter | Type |
|---|---|
ids | IIdGenerator |
Returns
Methods
createNode()
createNode(code, position): EditorNode;Defined in: packages/editor-core/src/services/node-registry.ts:34
Create a node instance from a descriptor's defaults at position.
Parameters
| Parameter | Type |
|---|---|
code | string |
position | Point |
Returns
Implementation of
get()
get(code): NodeDescriptor | undefined;Defined in: packages/editor-core/src/services/node-registry.ts:22
Parameters
| Parameter | Type |
|---|---|
code | string |
Returns
NodeDescriptor | undefined
Implementation of
list()
list(filter?): readonly NodeDescriptor[];Defined in: packages/editor-core/src/services/node-registry.ts:26
Parameters
| Parameter | Type |
|---|---|
filter? | { group?: string; } |
filter.group? | string |
Returns
readonly NodeDescriptor[]
Implementation of
register()
register(descriptor): void;Defined in: packages/editor-core/src/services/node-registry.ts:18
Parameters
| Parameter | Type |
|---|---|
descriptor | NodeDescriptor |
Returns
void
Implementation of
RemoveNodeCommand
Defined in: packages/editor-core/src/commands/commands.ts:37
Remove a node and its incident edges; undo restores the whole subgraph.
Implements
Constructors
Constructor
new RemoveNodeCommand(nodeId): RemoveNodeCommand;Defined in: packages/editor-core/src/commands/commands.ts:42
Parameters
| Parameter | Type |
|---|---|
nodeId | string |
Returns
Properties
| Property | Modifier | Type | Default value | Defined in |
|---|---|---|---|---|
kind | readonly | "removeNode" | 'removeNode' | packages/editor-core/src/commands/commands.ts:38 |
label | readonly | "Remove Node" | 'Remove Node' | packages/editor-core/src/commands/commands.ts:39 |
Methods
execute()
execute(ctx): void;Defined in: packages/editor-core/src/commands/commands.ts:43
Parameters
| Parameter | Type |
|---|---|
ctx | CommandContext |
Returns
void
Implementation of
undo()
undo(ctx): void;Defined in: packages/editor-core/src/commands/commands.ts:60
Parameters
| Parameter | Type |
|---|---|
ctx | CommandContext |
Returns
void
Implementation of
RenameNodeCommand
Defined in: packages/editor-core/src/commands/commands.ts:192
Rename a node (top-level name); captures the previous name for undo.
Implements
Constructors
Constructor
new RenameNodeCommand(nodeId, next): RenameNodeCommand;Defined in: packages/editor-core/src/commands/commands.ts:196
Parameters
| Parameter | Type |
|---|---|
nodeId | string |
next | string |
Returns
Properties
| Property | Modifier | Type | Default value | Defined in |
|---|---|---|---|---|
kind | readonly | "renameNode" | 'renameNode' | packages/editor-core/src/commands/commands.ts:193 |
label | readonly | "Rename Node" | 'Rename Node' | packages/editor-core/src/commands/commands.ts:194 |
Methods
execute()
execute(ctx): void;Defined in: packages/editor-core/src/commands/commands.ts:200
Parameters
| Parameter | Type |
|---|---|
ctx | CommandContext |
Returns
void
Implementation of
undo()
undo(ctx): void;Defined in: packages/editor-core/src/commands/commands.ts:213
Parameters
| Parameter | Type |
|---|---|
ctx | CommandContext |
Returns
void
Implementation of
SelectionService
Defined in: packages/editor-core/src/services/selection-service.ts:12
Implements
Constructors
Constructor
new SelectionService(bus): SelectionService;Defined in: packages/editor-core/src/services/selection-service.ts:16
Parameters
| Parameter | Type |
|---|---|
bus | IEventBus |
Returns
Methods
clear()
clear(): void;Defined in: packages/editor-core/src/services/selection-service.ts:40
Returns
void
Implementation of
getSelectedEdges()
getSelectedEdges(): ReadonlySet<string>;Defined in: packages/editor-core/src/services/selection-service.ts:22
Returns
ReadonlySet<string>
Implementation of
ISelectionService.getSelectedEdges
getSelectedNodes()
getSelectedNodes(): ReadonlySet<string>;Defined in: packages/editor-core/src/services/selection-service.ts:18
Returns
ReadonlySet<string>
Implementation of
ISelectionService.getSelectedNodes
isSelected()
isSelected(id): boolean;Defined in: packages/editor-core/src/services/selection-service.ts:36
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
boolean
Implementation of
selectEdges()
selectEdges(ids, mode): void;Defined in: packages/editor-core/src/services/selection-service.ts:31
Parameters
| Parameter | Type |
|---|---|
ids | readonly string[] |
mode | SelectionMode |
Returns
void
Implementation of
selectNodes()
selectNodes(ids, mode): void;Defined in: packages/editor-core/src/services/selection-service.ts:26
Parameters
| Parameter | Type |
|---|---|
ids | readonly string[] |
mode | SelectionMode |
Returns
void
Implementation of
SerializationService
Defined in: packages/editor-core/src/services/serialization-service.ts:25
Implements
Constructors
Constructor
new SerializationService(): SerializationService;Returns
Methods
fromIGraph()
fromIGraph(graph): GraphSnapshot;Defined in: packages/editor-core/src/services/serialization-service.ts:32
Import an IGraph into a graph snapshot (to load into the model).
Parameters
| Parameter | Type |
|---|---|
graph | IGraph |
Returns
Implementation of
ISerializationService.fromIGraph
toIGraph()
toIGraph(model): IGraph;Defined in: packages/editor-core/src/services/serialization-service.ts:26
Export the model to hlang's IGraph (for interpret/compile).
Parameters
| Parameter | Type |
|---|---|
model | IGraphModel |
Returns
IGraph
Implementation of
ISerializationService.toIGraph
ServiceCollection
Defined in: packages/editor-core/src/di/service-collection.ts:16
Constructors
Constructor
new ServiceCollection(): ServiceCollection;Returns
Methods
get()
get<T>(id): T;Defined in: packages/editor-core/src/di/service-collection.ts:34
Resolve the instance bound to id.
Type Parameters
Parameters
| Parameter | Type |
|---|---|
id | ServiceIdentifier<T> |
Returns
T
Throws
if no instance is registered.
has()
has(id): boolean;Defined in: packages/editor-core/src/di/service-collection.ts:26
Whether an instance is bound to id.
Parameters
| Parameter | Type |
|---|---|
id | ServiceIdentifier<unknown> |
Returns
boolean
set()
set<T>(id, instance): this;Defined in: packages/editor-core/src/di/service-collection.ts:20
Register (or replace) the instance bound to id.
Type Parameters
Parameters
| Parameter | Type |
|---|---|
id | ServiceIdentifier<T> |
instance | T |
Returns
this
tryGet()
tryGet<T>(id): T | undefined;Defined in: packages/editor-core/src/di/service-collection.ts:43
Resolve the instance bound to id, or undefined if unregistered.
Type Parameters
Parameters
| Parameter | Type |
|---|---|
id | ServiceIdentifier<T> |
Returns
T | undefined
SetHiddenCommand
Defined in: packages/editor-core/src/commands/commands.ts:234
Set a node's hidden view flag; undo restores the prior value. The flag lives
in the (non-serialized) view-state service, but the toggle is a command so it
participates in undo/redo — a user who hides the wrong layer expects ⌘Z.
Implements
Constructors
Constructor
new SetHiddenCommand(nodeId, next): SetHiddenCommand;Defined in: packages/editor-core/src/commands/commands.ts:238
Parameters
| Parameter | Type |
|---|---|
nodeId | string |
next | boolean |
Returns
Properties
| Property | Modifier | Type | Default value | Defined in |
|---|---|---|---|---|
kind | readonly | "setHidden" | 'setHidden' | packages/editor-core/src/commands/commands.ts:235 |
label | readonly | "Toggle Visibility" | 'Toggle Visibility' | packages/editor-core/src/commands/commands.ts:236 |
Methods
execute()
execute(ctx): void;Defined in: packages/editor-core/src/commands/commands.ts:242
Parameters
| Parameter | Type |
|---|---|
ctx | CommandContext |
Returns
void
Implementation of
undo()
undo(ctx): void;Defined in: packages/editor-core/src/commands/commands.ts:246
Parameters
| Parameter | Type |
|---|---|
ctx | CommandContext |
Returns
void
Implementation of
SetLockedCommand
Defined in: packages/editor-core/src/commands/commands.ts:252
Set a node's locked view flag; undo restores the prior value.
Implements
Constructors
Constructor
new SetLockedCommand(nodeId, next): SetLockedCommand;Defined in: packages/editor-core/src/commands/commands.ts:256
Parameters
| Parameter | Type |
|---|---|
nodeId | string |
next | boolean |
Returns
Properties
| Property | Modifier | Type | Default value | Defined in |
|---|---|---|---|---|
kind | readonly | "setLocked" | 'setLocked' | packages/editor-core/src/commands/commands.ts:253 |
label | readonly | "Toggle Lock" | 'Toggle Lock' | packages/editor-core/src/commands/commands.ts:254 |
Methods
execute()
execute(ctx): void;Defined in: packages/editor-core/src/commands/commands.ts:260
Parameters
| Parameter | Type |
|---|---|
ctx | CommandContext |
Returns
void
Implementation of
undo()
undo(ctx): void;Defined in: packages/editor-core/src/commands/commands.ts:264
Parameters
| Parameter | Type |
|---|---|
ctx | CommandContext |
Returns
void
Implementation of
TopologyIndex
Defined in: packages/editor-core/src/services/topology-index.ts:18
Constructors
Constructor
new TopologyIndex(model, bus): TopologyIndex;Defined in: packages/editor-core/src/services/topology-index.ts:25
Parameters
| Parameter | Type |
|---|---|
model | IGraphModel |
bus | IEventBus |
Returns
Accessors
topology
Get Signature
get topology(): GraphTopology;Defined in: packages/editor-core/src/services/topology-index.ts:51
The maintained topology (query components / componentOf / lint on it).
Returns
version
Get Signature
get version(): number;Defined in: packages/editor-core/src/services/topology-index.ts:56
Monotonic version, bumped on every change — a cheap reactive snapshot.
Returns
number
Methods
dispose()
dispose(): void;Defined in: packages/editor-core/src/services/topology-index.ts:76
Returns
void
onChanged()
onChanged(listener): IDisposable;Defined in: packages/editor-core/src/services/topology-index.ts:67
Subscribe to "topology changed" (debounced by the caller if desired).
Parameters
| Parameter | Type |
|---|---|
listener | () => void |
Returns
reindex()
reindex(): void;Defined in: packages/editor-core/src/services/topology-index.ts:61
Rebuild the whole index from the current model (after a bulk load/reset).
Returns
void
UpdateParamsCommand
Defined in: packages/editor-core/src/commands/commands.ts:161
Update a node's params; captures the previous params for undo.
Implements
Constructors
Constructor
new UpdateParamsCommand(nodeId, next): UpdateParamsCommand;Defined in: packages/editor-core/src/commands/commands.ts:165
Parameters
| Parameter | Type |
|---|---|
nodeId | string |
next | ParamBag |
Returns
Properties
| Property | Modifier | Type | Default value | Defined in |
|---|---|---|---|---|
kind | readonly | "updateParams" | 'updateParams' | packages/editor-core/src/commands/commands.ts:162 |
label | readonly | "Update Parameters" | 'Update Parameters' | packages/editor-core/src/commands/commands.ts:163 |
Methods
execute()
execute(ctx): void;Defined in: packages/editor-core/src/commands/commands.ts:169
Parameters
| Parameter | Type |
|---|---|
ctx | CommandContext |
Returns
void
Implementation of
undo()
undo(ctx): void;Defined in: packages/editor-core/src/commands/commands.ts:182
Parameters
| Parameter | Type |
|---|---|
ctx | CommandContext |
Returns
void
Implementation of
ViewStateService
Defined in: packages/editor-core/src/services/view-state-service.ts:18
Per-node, editor-only view flags (hidden, locked). Never serialized into
IGraph; a presentation concern mirrored into the canvas by the binding layer.
Implements
Constructors
Constructor
new ViewStateService(bus): ViewStateService;Defined in: packages/editor-core/src/services/view-state-service.ts:22
Parameters
| Parameter | Type |
|---|---|
bus | IEventBus |
Returns
Methods
clear()
clear(): void;Defined in: packages/editor-core/src/services/view-state-service.ts:52
Returns
void
Implementation of
getHiddenNodes()
getHiddenNodes(): ReadonlySet<string>;Defined in: packages/editor-core/src/services/view-state-service.ts:24
Returns
ReadonlySet<string>
Implementation of
IViewStateService.getHiddenNodes
getLockedNodes()
getLockedNodes(): ReadonlySet<string>;Defined in: packages/editor-core/src/services/view-state-service.ts:28
Returns
ReadonlySet<string>
Implementation of
IViewStateService.getLockedNodes
isHidden()
isHidden(id): boolean;Defined in: packages/editor-core/src/services/view-state-service.ts:32
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
boolean
Implementation of
isLocked()
isLocked(id): boolean;Defined in: packages/editor-core/src/services/view-state-service.ts:36
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
boolean
Implementation of
setHidden()
setHidden(id, hidden): void;Defined in: packages/editor-core/src/services/view-state-service.ts:40
Parameters
| Parameter | Type |
|---|---|
id | string |
hidden | boolean |
Returns
void
Implementation of
setLocked()
setLocked(id, locked): void;Defined in: packages/editor-core/src/services/view-state-service.ts:46
Parameters
| Parameter | Type |
|---|---|
id | string |
locked | boolean |
Returns
void
Implementation of
Interfaces
CloneOffset
Defined in: packages/editor-core/src/services/clone-nodes.ts:19
A canvas-space offset applied to every clone (keeps a paste visually offset).
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
dx | readonly | number | packages/editor-core/src/services/clone-nodes.ts:20 |
dy | readonly | number | packages/editor-core/src/services/clone-nodes.ts:21 |
CloneResult
Defined in: packages/editor-core/src/services/clone-nodes.ts:25
The result of cloning: new nodes, remapped internal edges, and the id map.
Properties
| Property | Modifier | Type | Description | Defined in |
|---|---|---|---|---|
edges | readonly | readonly EditorEdge[] | - | packages/editor-core/src/services/clone-nodes.ts:27 |
idMap | readonly | ReadonlyMap<string, string> | Maps each source node id to its clone's fresh id. | packages/editor-core/src/services/clone-nodes.ts:29 |
nodes | readonly | readonly EditorNode[] | - | packages/editor-core/src/services/clone-nodes.ts:26 |
CommandContext
Defined in: packages/editor-core/src/services/interfaces.ts:204
Context handed to a command's execute/undo.
Properties
| Property | Modifier | Type | Description | Defined in |
|---|---|---|---|---|
bus | readonly | IEventBus | - | packages/editor-core/src/services/interfaces.ts:207 |
model | readonly | IGraphModel | - | packages/editor-core/src/services/interfaces.ts:205 |
validator | readonly | IConnectionValidator | - | packages/editor-core/src/services/interfaces.ts:206 |
viewState | readonly | IViewStateService | Per-node view flags (hidden/locked); mutated by view-state commands. | packages/editor-core/src/services/interfaces.ts:209 |
CommandResult
Defined in: packages/editor-core/src/services/interfaces.ts:220
Type Parameters
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
error? | readonly | ValidationResult | packages/editor-core/src/services/interfaces.ts:223 |
ok | readonly | boolean | packages/editor-core/src/services/interfaces.ts:221 |
value? | readonly | R | packages/editor-core/src/services/interfaces.ts:222 |
CreateEditorCoreOptions
Defined in: packages/editor-core/src/editor.ts:70
Options for assembling an editor core.
Properties
| Property | Modifier | Type | Description | Defined in |
|---|---|---|---|---|
graphRunner? | readonly | IGraphRunner | Supply a graph runner (e.g. an InterpreterGraphRunner) to enable the execution service. Omitted when the editor is used purely for authoring. | packages/editor-core/src/editor.ts:77 |
idGenerator? | readonly | IIdGenerator | Override the id generation strategy (e.g. for deterministic tests). | packages/editor-core/src/editor.ts:72 |
CreateGroupInput
Defined in: packages/editor-core/src/services/group-model.ts:35
Inputs to create a group.
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
members | readonly | readonly string[] | packages/editor-core/src/services/group-model.ts:37 |
name | readonly | string | packages/editor-core/src/services/group-model.ts:36 |
parentGroupId? | readonly | string | packages/editor-core/src/services/group-model.ts:38 |
DataType
Defined in: packages/editor-core/src/model/types.ts:50
The design-time data type carried by a port, derived from portInfo[].dto.
Used for connection compatibility checks. Opaque original data is unknown.
Properties
| Property | Modifier | Type | Description | Defined in |
|---|---|---|---|---|
kind | readonly | "intrinsic" | "interface" | "reference" | "unknown" | Broad category of the type. | packages/editor-core/src/model/types.ts:54 |
name | readonly | string | Type name, e.g. "DTO_Input" | "string". | packages/editor-core/src/model/types.ts:52 |
raw? | readonly | unknown | The original, opaque dto payload — preserved but never dereferenced. | packages/editor-core/src/model/types.ts:56 |
Diagnostic
Defined in: packages/editor-core/src/services/interfaces.ts:175
Properties
| Property | Modifier | Type | Description | Defined in |
|---|---|---|---|---|
code | readonly | DiagnosticCode | - | packages/editor-core/src/services/interfaces.ts:178 |
edgeId? | readonly | string | - | packages/editor-core/src/services/interfaces.ts:182 |
id | readonly | string | Stable id for keying (code + target). | packages/editor-core/src/services/interfaces.ts:177 |
message | readonly | string | - | packages/editor-core/src/services/interfaces.ts:180 |
nodeId? | readonly | string | - | packages/editor-core/src/services/interfaces.ts:181 |
severity | readonly | DiagnosticSeverity | - | packages/editor-core/src/services/interfaces.ts:179 |
EditorCore
Defined in: packages/editor-core/src/editor.ts:48
The assembled editor: the DI container plus its resolved core services.
Properties
EditorEdge
Defined in: packages/editor-core/src/model/types.ts:139
A directed edge. source MUST be an O port and target an I port — this
maps to IGraph's { Output: source, Input: target } and the runtime's
source.O(id).connect(target.I(id)).
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
id | readonly | string | packages/editor-core/src/model/types.ts:140 |
source | readonly | Endpoint | packages/editor-core/src/model/types.ts:141 |
target | readonly | Endpoint | packages/editor-core/src/model/types.ts:142 |
EditorGroup
Defined in: packages/editor-core/src/services/group-model.ts:25
An explicit group of nodes. members is a set of node ids.
Properties
| Property | Modifier | Type | Description | Defined in |
|---|---|---|---|---|
collapsed | readonly | boolean | - | packages/editor-core/src/services/group-model.ts:29 |
id | readonly | string | - | packages/editor-core/src/services/group-model.ts:26 |
members | readonly | ReadonlySet<string> | - | packages/editor-core/src/services/group-model.ts:28 |
name | readonly | string | - | packages/editor-core/src/services/group-model.ts:27 |
parentGroupId? | readonly | string | When set, this group is nested inside another (fractal composition). | packages/editor-core/src/services/group-model.ts:31 |
EditorNode
Defined in: packages/editor-core/src/model/types.ts:116
A node instance placed on the canvas.
Properties
| Property | Modifier | Type | Description | Defined in |
|---|---|---|---|---|
code | readonly | string | - | packages/editor-core/src/model/types.ts:118 |
id | readonly | string | - | packages/editor-core/src/model/types.ts:117 |
kind | readonly | NodeKind | - | packages/editor-core/src/model/types.ts:119 |
name | readonly | string | - | packages/editor-core/src/model/types.ts:120 |
params | readonly | ParamBag | - | packages/editor-core/src/model/types.ts:122 |
ports | readonly | readonly PortDescriptor[] | - | packages/editor-core/src/model/types.ts:123 |
position | readonly | Point | - | packages/editor-core/src/model/types.ts:121 |
raw? | readonly | Readonly<Record<string, unknown>> | Lossless pass-through of unmodeled IGraph fields for round-tripping. | packages/editor-core/src/model/types.ts:125 |
Endpoint
Defined in: packages/editor-core/src/model/types.ts:129
One endpoint of an edge: a specific port on a specific node.
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
nodeId | readonly | string | packages/editor-core/src/model/types.ts:130 |
portId | readonly | string | packages/editor-core/src/model/types.ts:131 |
GraphSnapshot
Defined in: packages/editor-core/src/model/types.ts:146
An immutable snapshot of the whole graph, for history and import/reset.
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
edges | readonly | readonly EditorEdge[] | packages/editor-core/src/model/types.ts:148 |
nodes | readonly | readonly EditorNode[] | packages/editor-core/src/model/types.ts:147 |
GroupedLayoutOptions
Defined in: packages/editor-core/src/services/grouped-layout.ts:27
Properties
| Property | Modifier | Type | Description | Defined in |
|---|---|---|---|---|
gap? | readonly | number | Gap between packed group blocks. | packages/editor-core/src/services/grouped-layout.ts:32 |
nodeH? | readonly | number | - | packages/editor-core/src/services/grouped-layout.ts:30 |
nodeW? | readonly | number | Node box size used for internal layout gaps + block extents. | packages/editor-core/src/services/grouped-layout.ts:29 |
GroupSidecar
Defined in: packages/editor-core/src/services/group-model.ts:42
The serializable sidecar payload (never merged into IGraph).
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
groups | readonly | readonly object[] | packages/editor-core/src/services/group-model.ts:43 |
ICommandContextProvider
Defined in: packages/editor-core/src/services/history-service.ts:18
Supplies the context commands run against. Injected to avoid a cycle.
Methods
getContext()
getContext(): CommandContext;Defined in: packages/editor-core/src/services/history-service.ts:19
Returns
ICommandService
Defined in: packages/editor-core/src/services/interfaces.ts:226
Methods
execute()
execute<R>(command): CommandResult<R>;Defined in: packages/editor-core/src/services/interfaces.ts:227
Type Parameters
Parameters
| Parameter | Type |
|---|---|
command | IEditorCommand<R> |
Returns
IConnectionValidator
Defined in: packages/editor-core/src/services/interfaces.ts:92
Methods
canLink()
canLink(sourcePort, targetPort): ValidationResult;Defined in: packages/editor-core/src/services/interfaces.ts:104
Decide whether two ports COULD be linked, based only on the ports
themselves (direction + DTO compatibility) — independent of any graph
model. Used by design-time affordances such as "which node types can
complete this dangling connection?", where the candidate node does not
exist yet. This is the model-free subset of validate's rules;
validate additionally enforces node existence, self-connection, and
duplicate-edge rules that only make sense against a concrete graph.
Parameters
| Parameter | Type |
|---|---|
sourcePort | PortDescriptor |
targetPort | PortDescriptor |
Returns
validate()
validate(
source,
target,
model
): ValidationResult;Defined in: packages/editor-core/src/services/interfaces.ts:94
Decide whether an edge from source (O) to target (I) is legal.
Parameters
| Parameter | Type |
|---|---|
source | Endpoint |
target | Endpoint |
model | IGraphModel |
Returns
IDiagnosticsService
Defined in: packages/editor-core/src/services/interfaces.ts:185
Properties
| Property | Modifier | Type | Description | Defined in |
|---|---|---|---|---|
version | readonly | number | Monotonic change signal, bumped on every graph change that may affect diagnostics (recompute itself is lazy — see getDiagnostics). Reactive readers use it as a cheap "something changed" token. | packages/editor-core/src/services/interfaces.ts:195 |
Methods
getDiagnostics()
getDiagnostics(): readonly Diagnostic[];Defined in: packages/editor-core/src/services/interfaces.ts:187
Current diagnostics for the whole graph, recomputed on structural change.
Returns
readonly Diagnostic[]
onChanged()
onChanged(listener): IDisposable;Defined in: packages/editor-core/src/services/interfaces.ts:189
Subscribe to "diagnostics changed"; returns a disposer.
Parameters
| Parameter | Type |
|---|---|
listener | () => void |
Returns
IDisposable
Defined in: packages/editor-core/src/services/interfaces.ts:33
A cancellable subscription.
Extended by
Methods
dispose()
dispose(): void;Defined in: packages/editor-core/src/services/interfaces.ts:34
Returns
void
IEditorCommand
Defined in: packages/editor-core/src/services/interfaces.ts:213
A reversible editor command.
Type Parameters
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
kind | readonly | string | packages/editor-core/src/services/interfaces.ts:214 |
label | readonly | string | packages/editor-core/src/services/interfaces.ts:215 |
Methods
execute()
execute(ctx): R;Defined in: packages/editor-core/src/services/interfaces.ts:216
Parameters
| Parameter | Type |
|---|---|
ctx | CommandContext |
Returns
R
undo()
undo(ctx): void;Defined in: packages/editor-core/src/services/interfaces.ts:217
Parameters
| Parameter | Type |
|---|---|
ctx | CommandContext |
Returns
void
IEventBus
Defined in: packages/editor-core/src/services/interfaces.ts:55
Methods
emit()
emit(event): void;Defined in: packages/editor-core/src/services/interfaces.ts:56
Parameters
| Parameter | Type |
|---|---|
event | EditorEvent |
Returns
void
on()
on<K>(kind, listener): IDisposable;Defined in: packages/editor-core/src/services/interfaces.ts:57
Type Parameters
| Type Parameter |
|---|
K extends | "nodeAdded" | "nodeRemoved" | "nodeChanged" | "edgeAdded" | "edgeRemoved" | "selectionChanged" | "viewStateChanged" | "historyChanged" |
Parameters
| Parameter | Type |
|---|---|
kind | K |
listener | (event) => void |
Returns
IExecutionHandle
Defined in: packages/editor-core/src/services/execution-service.ts:15
A handle to a running execution.
Extends
Methods
dispose()
dispose(): void;Defined in: packages/editor-core/src/services/interfaces.ts:34
Returns
void
Inherited from
onActivity()
onActivity(listener): IDisposable;Defined in: packages/editor-core/src/services/execution-service.ts:18
Subscribe to node output-port emissions — the "living stream" signal.
Parameters
| Parameter | Type |
|---|---|
listener | (event) => void |
Returns
onError()
onError(listener): IDisposable;Defined in: packages/editor-core/src/services/execution-service.ts:16
Parameters
| Parameter | Type |
|---|---|
listener | (event) => void |
Returns
IExecutionService
Defined in: packages/editor-core/src/services/execution-service.ts:30
Methods
run()
run(model): IExecutionHandle;Defined in: packages/editor-core/src/services/execution-service.ts:32
Serialize the current model and run it.
Parameters
| Parameter | Type |
|---|---|
model | IGraphModel |
Returns
IGraphModel
Defined in: packages/editor-core/src/services/interfaces.ts:68
Methods
addEdge()
addEdge(edge): void;Defined in: packages/editor-core/src/services/interfaces.ts:79
Parameters
| Parameter | Type |
|---|---|
edge | EditorEdge |
Returns
void
addNode()
addNode(node): void;Defined in: packages/editor-core/src/services/interfaces.ts:73
Parameters
| Parameter | Type |
|---|---|
node | EditorNode |
Returns
void
getEdge()
getEdge(id): EditorEdge | undefined;Defined in: packages/editor-core/src/services/interfaces.ts:70
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
EditorEdge | undefined
getEdges()
getEdges(): readonly EditorEdge[];Defined in: packages/editor-core/src/services/interfaces.ts:72
Returns
readonly EditorEdge[]
getNode()
getNode(id): EditorNode | undefined;Defined in: packages/editor-core/src/services/interfaces.ts:69
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
EditorNode | undefined
getNodes()
getNodes(): readonly EditorNode[];Defined in: packages/editor-core/src/services/interfaces.ts:71
Returns
readonly EditorNode[]
incidentEdges()
incidentEdges(nodeId): readonly EditorEdge[];Defined in: packages/editor-core/src/services/interfaces.ts:82
All edges touching nodeId on either endpoint.
Parameters
| Parameter | Type |
|---|---|
nodeId | string |
Returns
readonly EditorEdge[]
removeEdge()
removeEdge(id): void;Defined in: packages/editor-core/src/services/interfaces.ts:80
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
void
removeNode()
removeNode(id): void;Defined in: packages/editor-core/src/services/interfaces.ts:75
Remove a node and cascade-remove its incident edges.
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
void
restore()
restore(snapshot): void;Defined in: packages/editor-core/src/services/interfaces.ts:84
Parameters
| Parameter | Type |
|---|---|
snapshot | GraphSnapshot |
Returns
void
snapshot()
snapshot(): GraphSnapshot;Defined in: packages/editor-core/src/services/interfaces.ts:83
Returns
updateNodeName()
updateNodeName(id, name): void;Defined in: packages/editor-core/src/services/interfaces.ts:78
Parameters
| Parameter | Type |
|---|---|
id | string |
name | string |
Returns
void
updateNodeParams()
updateNodeParams(id, params): void;Defined in: packages/editor-core/src/services/interfaces.ts:76
Parameters
| Parameter | Type |
|---|---|
id | string |
params | ParamBag |
Returns
void
updateNodePosition()
updateNodePosition(id, position): void;Defined in: packages/editor-core/src/services/interfaces.ts:77
Parameters
| Parameter | Type |
|---|---|
id | string |
position | Point |
Returns
void
IGraphRunner
Defined in: packages/editor-core/src/services/execution-service.ts:25
Runs an IGraph. Abstracts @hlang-org/interpreter.interpret so the core
does not construct runtime objects directly and tests can inject a fake.
Methods
run()
run(graph): IExecutionHandle;Defined in: packages/editor-core/src/services/execution-service.ts:26
Parameters
| Parameter | Type |
|---|---|
graph | IGraph |
Returns
IHistoryService
Defined in: packages/editor-core/src/services/interfaces.ts:231
Methods
canRedo()
canRedo(): boolean;Defined in: packages/editor-core/src/services/interfaces.ts:233
Returns
boolean
canUndo()
canUndo(): boolean;Defined in: packages/editor-core/src/services/interfaces.ts:232
Returns
boolean
clear()
clear(): void;Defined in: packages/editor-core/src/services/interfaces.ts:239
Returns
void
push()
push(command): void;Defined in: packages/editor-core/src/services/interfaces.ts:234
Parameters
| Parameter | Type |
|---|---|
command | IEditorCommand |
Returns
void
redo()
redo(): void;Defined in: packages/editor-core/src/services/interfaces.ts:236
Returns
void
transact()
transact(label, fn): void;Defined in: packages/editor-core/src/services/interfaces.ts:238
Group multiple commands executed in fn into one undo entry.
Parameters
| Parameter | Type |
|---|---|
label | string |
fn | () => void |
Returns
void
undo()
undo(): void;Defined in: packages/editor-core/src/services/interfaces.ts:235
Returns
void
IIdGenerator
Defined in: packages/editor-core/src/services/id-generator.ts:12
Methods
nextEdgeId()
nextEdgeId(): string;Defined in: packages/editor-core/src/services/id-generator.ts:14
Returns
string
nextNodeId()
nextNodeId(): string;Defined in: packages/editor-core/src/services/id-generator.ts:13
Returns
string
reserve()
reserve(ids): void;Defined in: packages/editor-core/src/services/id-generator.ts:20
Reserve ids already present in the graph so future ids never collide. Call
after importing a graph whose ids were minted elsewhere (e.g. serialization).
Ids that don't match this generator's <prefix>-<n> scheme are ignored.
Parameters
| Parameter | Type |
|---|---|
ids | Iterable<string> |
Returns
void
INodeActivityEvent
Defined in: packages/interpreter/lib/index.d.ts:148
A node emitting on one of its output ports during execution — the signal behind the editor's "living stream" visuals. Fires each time a node pushes a message on a non-error output port.
Properties
INodeErrorEvent
Defined in: packages/interpreter/lib/index.d.ts:137
An error surfaced from a node's @node/error port during execution.
Properties
INodeRegistry
Defined in: packages/editor-core/src/services/interfaces.ts:112
Methods
createNode()
createNode(code, position): EditorNode;Defined in: packages/editor-core/src/services/interfaces.ts:117
Create a node instance from a descriptor's defaults at position.
Parameters
| Parameter | Type |
|---|---|
code | string |
position | Point |
Returns
get()
get(code): NodeDescriptor | undefined;Defined in: packages/editor-core/src/services/interfaces.ts:114
Parameters
| Parameter | Type |
|---|---|
code | string |
Returns
NodeDescriptor | undefined
list()
list(filter?): readonly NodeDescriptor[];Defined in: packages/editor-core/src/services/interfaces.ts:115
Parameters
| Parameter | Type |
|---|---|
filter? | { group?: string; } |
filter.group? | string |
Returns
readonly NodeDescriptor[]
register()
register(descriptor): void;Defined in: packages/editor-core/src/services/interfaces.ts:113
Parameters
| Parameter | Type |
|---|---|
descriptor | NodeDescriptor |
Returns
void
InsertPlan
Defined in: packages/editor-core/src/services/reroute.ts:36
Properties
| Property | Modifier | Type | Description | Defined in |
|---|---|---|---|---|
sourceEdge | readonly | EditorEdge | A.O → N. | packages/editor-core/src/services/reroute.ts:38 |
targetEdge | readonly | EditorEdge | N. | packages/editor-core/src/services/reroute.ts:40 |
IParamObject
Defined in: packages/editor-core/src/model/types.ts:40
Indexable
[key: string]: ParamValueISelectionService
Defined in: packages/editor-core/src/services/interfaces.ts:127
Methods
clear()
clear(): void;Defined in: packages/editor-core/src/services/interfaces.ts:133
Returns
void
getSelectedEdges()
getSelectedEdges(): ReadonlySet<string>;Defined in: packages/editor-core/src/services/interfaces.ts:129
Returns
ReadonlySet<string>
getSelectedNodes()
getSelectedNodes(): ReadonlySet<string>;Defined in: packages/editor-core/src/services/interfaces.ts:128
Returns
ReadonlySet<string>
isSelected()
isSelected(id): boolean;Defined in: packages/editor-core/src/services/interfaces.ts:132
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
boolean
selectEdges()
selectEdges(ids, mode): void;Defined in: packages/editor-core/src/services/interfaces.ts:131
Parameters
| Parameter | Type |
|---|---|
ids | readonly string[] |
mode | SelectionMode |
Returns
void
selectNodes()
selectNodes(ids, mode): void;Defined in: packages/editor-core/src/services/interfaces.ts:130
Parameters
| Parameter | Type |
|---|---|
ids | readonly string[] |
mode | SelectionMode |
Returns
void
ISerializationService
Defined in: packages/editor-core/src/services/serialization-interface.ts:16
Methods
fromIGraph()
fromIGraph(graph): GraphSnapshot;Defined in: packages/editor-core/src/services/serialization-interface.ts:20
Import an IGraph into a graph snapshot (to load into the model).
Parameters
| Parameter | Type |
|---|---|
graph | IGraph |
Returns
toIGraph()
toIGraph(model): IGraph;Defined in: packages/editor-core/src/services/serialization-interface.ts:18
Export the model to hlang's IGraph (for interpret/compile).
Parameters
| Parameter | Type |
|---|---|
model | IGraphModel |
Returns
IGraph
IServiceDependency
Defined in: packages/editor-core/src/di/types.ts:15
Records one injected dependency on a target constructor.
Properties
| Property | Modifier | Type | Description | Defined in |
|---|---|---|---|---|
id | readonly | ServiceIdentifier<unknown> | The service identifier to inject. | packages/editor-core/src/di/types.ts:17 |
index | readonly | number | Position of the decorated constructor parameter. | packages/editor-core/src/di/types.ts:19 |
IViewStateService
Defined in: packages/editor-core/src/services/interfaces.ts:145
Per-node, editor-only view flags (hidden, locked). Never serialized into
IGraph; a presentation concern mirrored into the canvas by the binding layer.
Methods
clear()
clear(): void;Defined in: packages/editor-core/src/services/interfaces.ts:152
Returns
void
getHiddenNodes()
getHiddenNodes(): ReadonlySet<string>;Defined in: packages/editor-core/src/services/interfaces.ts:146
Returns
ReadonlySet<string>
getLockedNodes()
getLockedNodes(): ReadonlySet<string>;Defined in: packages/editor-core/src/services/interfaces.ts:147
Returns
ReadonlySet<string>
isHidden()
isHidden(id): boolean;Defined in: packages/editor-core/src/services/interfaces.ts:148
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
boolean
isLocked()
isLocked(id): boolean;Defined in: packages/editor-core/src/services/interfaces.ts:149
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
boolean
setHidden()
setHidden(id, hidden): void;Defined in: packages/editor-core/src/services/interfaces.ts:150
Parameters
| Parameter | Type |
|---|---|
id | string |
hidden | boolean |
Returns
void
setLocked()
setLocked(id, locked): void;Defined in: packages/editor-core/src/services/interfaces.ts:151
Parameters
| Parameter | Type |
|---|---|
id | string |
locked | boolean |
Returns
void
LayoutEdge
Defined in: packages/editor-core/src/services/layered-layout.ts:20
A directed edge for layout (source -> target).
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
from | readonly | string | packages/editor-core/src/services/layered-layout.ts:21 |
to | readonly | string | packages/editor-core/src/services/layered-layout.ts:22 |
LayoutGroup
Defined in: packages/editor-core/src/services/grouped-layout.ts:22
A group for layout purposes: an id and its member set.
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
id | readonly | string | packages/editor-core/src/services/grouped-layout.ts:23 |
members | readonly | ReadonlySet<string> | packages/editor-core/src/services/grouped-layout.ts:24 |
LayoutOptions
Defined in: packages/editor-core/src/services/layered-layout.ts:25
Properties
| Property | Modifier | Type | Description | Defined in |
|---|---|---|---|---|
direction? | readonly | "LR" | "TB" | Flow direction: 'LR' lays layers left→right (default); 'TB' lays them top→bottom. Group-aware layout picks per group so a chain reads wide and a fan reads tall — the diagram stops looking like uniform horizontal bars. | packages/editor-core/src/services/layered-layout.ts:35 |
sweeps? | readonly | number | Ordering-improvement sweeps (crossing reduction). Default 4. | packages/editor-core/src/services/layered-layout.ts:29 |
xGap? | readonly | number | - | packages/editor-core/src/services/layered-layout.ts:26 |
yGap? | readonly | number | - | packages/editor-core/src/services/layered-layout.ts:27 |
LayoutPoint
Defined in: packages/editor-core/src/services/layered-layout.ts:38
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
x | readonly | number | packages/editor-core/src/services/layered-layout.ts:39 |
y | readonly | number | packages/editor-core/src/services/layered-layout.ts:40 |
LintDiagnostic
Defined in: packages/editor-core/src/services/graph-topology.ts:66
An edit-time lint diagnostic anchored to a node.
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
code | readonly | LintCode | packages/editor-core/src/services/graph-topology.ts:67 |
message | readonly | string | packages/editor-core/src/services/graph-topology.ts:70 |
nodeId | readonly | string | packages/editor-core/src/services/graph-topology.ts:68 |
severity | readonly | "error" | "warning" | packages/editor-core/src/services/graph-topology.ts:69 |
NodeDescriptor
Defined in: packages/editor-core/src/model/types.ts:93
A design-time node descriptor: the palette/registry entry for a code.
The runtime-side twin (a constructor) lives in @hlang-org/interpreter.
Properties
| Property | Modifier | Type | Description | Defined in |
|---|---|---|---|---|
code | readonly | string | Registry key; resolved (after camelization) to a runtime node class. | packages/editor-core/src/model/types.ts:95 |
defaultParams | readonly | ParamBag | Default parameter values applied when creating a node. | packages/editor-core/src/model/types.ts:105 |
displayName | readonly | string | Human-readable display name for the palette. | packages/editor-core/src/model/types.ts:99 |
editorResource? | readonly | object | Optional custom-editor resources for this node type. | packages/editor-core/src/model/types.ts:109 |
editorResource.scriptHref | readonly | string | - | packages/editor-core/src/model/types.ts:111 |
editorResource.styleHref | readonly | string | - | packages/editor-core/src/model/types.ts:110 |
group | readonly | string | Grouping code for palette organization (maps to groupCode). | packages/editor-core/src/model/types.ts:101 |
kind | readonly | NodeKind | Node kind. | packages/editor-core/src/model/types.ts:97 |
ports | readonly | readonly PortDescriptor[] | All ports, including @node/error for R and T. | packages/editor-core/src/model/types.ts:103 |
runtimeResource | readonly | string | npm coordinate of the runtime implementation. | packages/editor-core/src/model/types.ts:107 |
Point
Defined in: packages/editor-core/src/model/types.ts:27
A point on the canvas.
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
x | readonly | number | packages/editor-core/src/model/types.ts:28 |
y | readonly | number | packages/editor-core/src/model/types.ts:29 |
PortDescriptor
Defined in: packages/editor-core/src/model/types.ts:60
A single port on a node.
Properties
| Property | Modifier | Type | Description | Defined in |
|---|---|---|---|---|
dataType | readonly | DataType | Design-time data type for compatibility checks. | packages/editor-core/src/model/types.ts:68 |
direction | readonly | PortDirection | Stream direction: input (I) or output (O). | packages/editor-core/src/model/types.ts:64 |
id | readonly | string | Port name, used as the connection port id. | packages/editor-core/src/model/types.ts:62 |
isError | readonly | boolean | Whether this is the @node/error port. | packages/editor-core/src/model/types.ts:70 |
name | readonly | string | Human-readable display name. | packages/editor-core/src/model/types.ts:66 |
stream? | readonly | "live" | "value" | How the port's RxJS stream behaves, for visual distinction (nodes.io's trigger-vs-param idea): - 'live' — a hot/continuous stream (default; hlang ports are streams). - 'value' — emits only when its value changes. Optional and additive; consumers default to 'live' when absent. | packages/editor-core/src/model/types.ts:78 |
ServiceIdentifier()
Defined in: packages/editor-core/src/di/types.ts:26
A service token. Callable as a parameter decorator; carries the service type
T for type-safe resolution. The type phantom is never read at runtime.
Type Parameters
ServiceIdentifier(
target,
propertyKey,
parameterIndex
): void;Defined in: packages/editor-core/src/di/types.ts:27
A service token. Callable as a parameter decorator; carries the service type
T for type-safe resolution. The type phantom is never read at runtime.
Parameters
| Parameter | Type |
|---|---|
target | object |
propertyKey | string | undefined |
parameterIndex | number |
Returns
void
Properties
| Property | Modifier | Type | Description | Defined in |
|---|---|---|---|---|
serviceName | readonly | string | Unique service name (for diagnostics and identity). | packages/editor-core/src/di/types.ts:31 |
type | readonly | T | Phantom marker for the service type. | packages/editor-core/src/di/types.ts:29 |
SubgraphInterface
Defined in: packages/editor-core/src/services/graph-topology.ts:39
The outward-facing interface of a subgraph: the ports on its boundary. This is what the subgraph would expose if collapsed into a single composite node — the technical basis for hlang's subgraph<->node isomorphism.
inputs: I ports on member nodes fed from OUTSIDE the subgraph (or, optionally, with no feed at all — "open" inputs).outputs: O ports on member nodes consumed OUTSIDE the subgraph (or open).
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
inputs | readonly | readonly Endpoint[] | packages/editor-core/src/services/graph-topology.ts:40 |
outputs | readonly | readonly Endpoint[] | packages/editor-core/src/services/graph-topology.ts:41 |
TopologyComponent
Defined in: packages/editor-core/src/services/graph-topology.ts:25
A weakly-connected component: one "living subgraph".
Properties
| Property | Modifier | Type | Description | Defined in |
|---|---|---|---|---|
id | readonly | string | Stable representative id for this component (a member node id). | packages/editor-core/src/services/graph-topology.ts:27 |
nodeIds | readonly | ReadonlySet<string> | - | packages/editor-core/src/services/graph-topology.ts:28 |
ValidationResult
Defined in: packages/editor-core/src/services/interfaces.ts:24
Result of a validation check.
Properties
| Property | Modifier | Type | Description | Defined in |
|---|---|---|---|---|
message? | readonly | string | Human-readable message when ok is false. | packages/editor-core/src/services/interfaces.ts:29 |
ok | readonly | boolean | - | packages/editor-core/src/services/interfaces.ts:25 |
reason? | readonly | string | Machine-readable reason code when ok is false. | packages/editor-core/src/services/interfaces.ts:27 |
Type Aliases
DiagnosticCode
type DiagnosticCode =
| "dead-source"
| "dangling-input"
| "sink-no-upstream"
| "bad-connection"
| "type-mismatch"
| "no-source-root"
| "unregistered-code";Defined in: packages/editor-core/src/services/interfaces.ts:166
Edit-time diagnostic codes. error = the runtime would actually throw;
warning = predictive (runtime tolerates but the node does nothing).
DiagnosticSeverity
type DiagnosticSeverity = "error" | "warning";Defined in: packages/editor-core/src/services/interfaces.ts:160
EdgeId
type EdgeId = string;Defined in: packages/editor-core/src/model/types.ts:12
EditorEvent
type EditorEvent =
| {
kind: "nodeAdded";
node: EditorNode;
}
| {
kind: "nodeRemoved";
nodeId: NodeId;
}
| {
kind: "nodeChanged";
node: EditorNode;
}
| {
edge: EditorEdge;
kind: "edgeAdded";
}
| {
edgeId: EdgeId;
kind: "edgeRemoved";
}
| {
kind: "selectionChanged";
}
| {
kind: "viewStateChanged";
}
| {
kind: "historyChanged";
};Defined in: packages/editor-core/src/services/interfaces.ts:42
Discriminated union of editor events emitted on the bus.
EditorEventKind
type EditorEventKind = EditorEvent["kind"];Defined in: packages/editor-core/src/services/interfaces.ts:52
EventOfKind
type EventOfKind<K> = Extract<EditorEvent, {
kind: K;
}>;Defined in: packages/editor-core/src/services/interfaces.ts:53
Type Parameters
| Type Parameter |
|---|
K extends EditorEventKind |
GroupId
type GroupId = string;Defined in: packages/editor-core/src/services/group-model.ts:22
LintCode
type LintCode = "dangling-input" | "sink-no-upstream" | "dead-source";Defined in: packages/editor-core/src/services/graph-topology.ts:63
An edit-time diagnostic code.
Newable
type Newable<T> = new (...args) => T;Defined in: packages/editor-core/src/di/types.ts:38
A constructor that the instantiation service can build. Its declared dependencies are read from the static metadata attached by decorators.
Type Parameters
Parameters
| Parameter | Type |
|---|---|
...args | never[] |
Returns
T
NodeId
type NodeId = string;Defined in: packages/editor-core/src/model/types.ts:11
Stable identifiers. Branded only nominally via naming, kept as strings.
NodeKind
type NodeKind = "R" | "T" | "W";Defined in: packages/ir/lib/index.d.ts:11
The three hlang node kinds: Readable (source), Transform, Writable (sink).
ParamBag
type ParamBag = Readonly<Record<string, ParamValue>>;Defined in: packages/editor-core/src/model/types.ts:44
A bag of node parameters (the user-facing config under bizData.params).
ParamValue
type ParamValue =
| string
| number
| boolean
| null
| readonly ParamValue[]
| IParamObject;Defined in: packages/editor-core/src/model/types.ts:33
Serializable parameter values (mirrors the IGraph param shape).
PortDirection
type PortDirection = "I" | "O";Defined in: packages/editor-core/src/model/types.ts:21
Stream direction of a port, matching the runtime's STREAM_TYPE.
PortId
type PortId = string;Defined in: packages/editor-core/src/model/types.ts:14
A port's name, e.g. "Input" | "Output" | "@node/error".
SelectionMode
type SelectionMode = "replace" | "add" | "toggle";Defined in: packages/editor-core/src/services/interfaces.ts:125
Variables
ERROR_PORT_NAME
const ERROR_PORT_NAME: "@node/error" = "@node/error";Defined in: packages/ir/lib/index.d.ts:13
The output port every Readable and Transform node exposes for errors.
ICommandContextProvider
ICommandContextProvider: ServiceIdentifier<ICommandContextProvider>;Defined in: packages/editor-core/src/services/history-service.ts:18
ICommandService
ICommandService: ServiceIdentifier<ICommandService>;Defined in: packages/editor-core/src/services/interfaces.ts:226
IConnectionValidator
IConnectionValidator: ServiceIdentifier<IConnectionValidator>;Defined in: packages/editor-core/src/services/interfaces.ts:92
IDiagnosticsService
IDiagnosticsService: ServiceIdentifier<IDiagnosticsService>;Defined in: packages/editor-core/src/services/interfaces.ts:185
IEventBus
IEventBus: ServiceIdentifier<IEventBus>;Defined in: packages/editor-core/src/services/interfaces.ts:55
IExecutionService
IExecutionService: ServiceIdentifier<IExecutionService>;Defined in: packages/editor-core/src/services/execution-service.ts:30
IGraphModel
IGraphModel: ServiceIdentifier<IGraphModel>;Defined in: packages/editor-core/src/services/interfaces.ts:68
IGraphRunner
IGraphRunner: ServiceIdentifier<IGraphRunner>;Defined in: packages/editor-core/src/services/execution-service.ts:25
IHistoryService
IHistoryService: ServiceIdentifier<IHistoryService>;Defined in: packages/editor-core/src/services/interfaces.ts:231
IIdGenerator
IIdGenerator: ServiceIdentifier<IIdGenerator>;Defined in: packages/editor-core/src/services/id-generator.ts:12
INodeRegistry
INodeRegistry: ServiceIdentifier<INodeRegistry>;Defined in: packages/editor-core/src/services/interfaces.ts:112
ISelectionService
ISelectionService: ServiceIdentifier<ISelectionService>;Defined in: packages/editor-core/src/services/interfaces.ts:127
ISerializationService
ISerializationService: ServiceIdentifier<ISerializationService>;Defined in: packages/editor-core/src/services/serialization-interface.ts:16
IViewStateService
IViewStateService: ServiceIdentifier<IViewStateService>;Defined in: packages/editor-core/src/services/interfaces.ts:145
Functions
classifyInterface()
function classifyInterface(iface): NodeKind;Defined in: packages/editor-core/src/services/graph-topology.ts:50
Classify a subgraph's interface into an hlang node kind, realizing the subgraph<->node isomorphism: a group with only outward outputs behaves like a source (R), only inputs like a sink (W), and both like a transform (T). An empty interface (fully self-contained) is treated as a T by convention.
Parameters
| Parameter | Type |
|---|---|
iface | SubgraphInterface |
Returns
cloneNodesWithEdges()
function cloneNodesWithEdges(
nodes,
edges,
idGenerator,
offset
): CloneResult;Defined in: packages/editor-core/src/services/clone-nodes.ts:32
Parameters
| Parameter | Type |
|---|---|
nodes | readonly EditorNode[] |
edges | readonly EditorEdge[] |
idGenerator | IIdGenerator |
offset | CloneOffset |
Returns
createDecorator()
function createDecorator<T>(serviceName): ServiceIdentifier<T>;Defined in: packages/editor-core/src/di/decorator.ts:62
Create a new service identifier. The returned value is both a token (for registration/resolution) and a parameter decorator (for dependency declaration). Service names must be unique.
Type Parameters
Parameters
| Parameter | Type |
|---|---|
serviceName | string |
Returns
createEditorCore()
function createEditorCore(options?): EditorCore;Defined in: packages/editor-core/src/editor.ts:81
Assemble a fully wired editor core.
Parameters
| Parameter | Type |
|---|---|
options? | CreateEditorCoreOptions |
Returns
distanceToSegment()
function distanceToSegment(
p,
a,
b
): number;Defined in: packages/editor-core/src/services/reroute.ts:25
Shortest distance from p to the line SEGMENT a–b (not the infinite line):
the projection is clamped to the segment, so points beyond an endpoint measure
to that endpoint. Used to hit-test "is a dropped node on this edge?" — a
segment, not a midpoint, so long edges are matched along their whole length.
A degenerate (zero-length) segment reduces to the distance to the point.
Parameters
Returns
number
getServiceDependencies()
function getServiceDependencies(ctor): readonly IServiceDependency[];Defined in: packages/editor-core/src/di/decorator.ts:29
Read the ordered dependency list declared on a constructor via decorators. Returns an empty array when the constructor declares no injected params.
Parameters
| Parameter | Type |
|---|---|
ctor | unknown |
Returns
readonly IServiceDependency[]
layoutGrouped()
function layoutGrouped(
nodeIds,
edges,
groups,
options?
): Map<string, LayoutPoint>;Defined in: packages/editor-core/src/services/grouped-layout.ts:39
Parameters
| Parameter | Type |
|---|---|
nodeIds | readonly string[] |
edges | readonly LayoutEdge[] |
groups | readonly LayoutGroup[] |
options? | GroupedLayoutOptions |
Returns
Map<string, LayoutPoint>
layoutLayered()
function layoutLayered(
nodeIds,
edges,
options?
): Map<string, LayoutPoint>;Defined in: packages/editor-core/src/services/layered-layout.ts:47
Parameters
| Parameter | Type |
|---|---|
nodeIds | readonly string[] |
edges | readonly LayoutEdge[] |
options? | LayoutOptions |
Returns
Map<string, LayoutPoint>
planInsertOnEdge()
function planInsertOnEdge(
node,
edge,
model,
validator,
idGenerator
): InsertPlan | null;Defined in: packages/editor-core/src/services/reroute.ts:43
Parameters
| Parameter | Type |
|---|---|
node | EditorNode |
edge | EditorEdge |
model | IGraphModel |
validator | IConnectionValidator |
idGenerator | IIdGenerator |
Returns
InsertPlan | null
References
ICommandContextProviderType
Renames and re-exports ICommandContextProvider
IExecutionServiceType
Renames and re-exports IExecutionService
IGraphRunnerType
Renames and re-exports IGraphRunner
IIdGeneratorType
Renames and re-exports IIdGenerator
ISerializationServiceType
Renames and re-exports ISerializationService
Generated by TypeDoc from packages/editor-core/src at build time.