editor-core

@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
TypeScript
new AddNodeCommand(node): AddNodeCommand;

Defined in: packages/editor-core/src/commands/commands.ts:25

Parameters
ParameterType
nodeEditorNode
Returns

AddNodeCommand

Properties

PropertyModifierTypeDefault valueDefined in
kindreadonly"addNode"'addNode'packages/editor-core/src/commands/commands.ts:23
labelreadonly"Add Node"'Add Node'packages/editor-core/src/commands/commands.ts:24

Methods

execute()
TypeScript
execute(ctx): void;

Defined in: packages/editor-core/src/commands/commands.ts:26

Parameters
ParameterType
ctxCommandContext
Returns

void

Implementation of

IEditorCommand.execute

undo()
TypeScript
undo(ctx): void;

Defined in: packages/editor-core/src/commands/commands.ts:30

Parameters
ParameterType
ctxCommandContext
Returns

void

Implementation of

IEditorCommand.undo


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
TypeScript
new CommandContextProvider(
   model, 
   validator, 
   bus, 
   viewState
): CommandContextProvider;

Defined in: packages/editor-core/src/services/context-provider.ts:13

Parameters
ParameterType
modelIGraphModel
validatorIConnectionValidator
busIEventBus
viewStateIViewStateService
Returns

CommandContextProvider

Methods

getContext()
TypeScript
getContext(): CommandContext;

Defined in: packages/editor-core/src/services/context-provider.ts:20

Returns

CommandContext

Implementation of

ICommandContextProvider.getContext


CommandService

Defined in: packages/editor-core/src/services/command-service.ts:28

Implements

Constructors

Constructor
TypeScript
new CommandService(provider, history): CommandService;

Defined in: packages/editor-core/src/services/command-service.ts:29

Parameters
ParameterType
providerICommandContextProvider
historyIHistoryService
Returns

CommandService

Methods

execute()
TypeScript
execute<R>(command): CommandResult<R>;

Defined in: packages/editor-core/src/services/command-service.ts:34

Type Parameters
Type Parameter
R
Parameters
ParameterType
commandIEditorCommand<R>
Returns

CommandResult<R>

Implementation of

ICommandService.execute


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
TypeScript
new CommandValidationError(result): CommandValidationError;

Defined in: packages/editor-core/src/services/command-service.ts:22

Parameters
ParameterType
resultValidationResult
Returns

CommandValidationError

Overrides

Error.constructor

Properties


ConnectCommand

Defined in: packages/editor-core/src/commands/commands.ts:74

Connect two endpoints (validated). Undo removes the created edge.

Implements

Constructors

Constructor
TypeScript
new ConnectCommand(
   edgeId, 
   source, 
   target
): ConnectCommand;

Defined in: packages/editor-core/src/commands/commands.ts:77

Parameters
ParameterType
edgeIdstring
sourceEndpoint
targetEndpoint
Returns

ConnectCommand

Properties

PropertyModifierTypeDefault valueDefined in
kindreadonly"connect"'connect'packages/editor-core/src/commands/commands.ts:75
labelreadonly"Connect Nodes"'Connect Nodes'packages/editor-core/src/commands/commands.ts:76

Methods

execute()
TypeScript
execute(ctx): void;

Defined in: packages/editor-core/src/commands/commands.ts:82

Parameters
ParameterType
ctxCommandContext
Returns

void

Implementation of

IEditorCommand.execute

undo()
TypeScript
undo(ctx): void;

Defined in: packages/editor-core/src/commands/commands.ts:95

Parameters
ParameterType
ctxCommandContext
Returns

void

Implementation of

IEditorCommand.undo


ConnectionValidator

Defined in: packages/editor-core/src/services/connection-validator.ts:43

Implements

Constructors

Constructor
TypeScript
new ConnectionValidator(): ConnectionValidator;
Returns

ConnectionValidator

Methods

TypeScript
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
ParameterType
sourcePortPortDescriptor
targetPortPortDescriptor
Returns

ValidationResult

Implementation of

IConnectionValidator.canLink

validate()
TypeScript
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
ParameterType
sourceEndpoint
targetEndpoint
modelIGraphModel
Returns

ValidationResult

Implementation of

IConnectionValidator.validate


CountingIdGenerator

Defined in: packages/editor-core/src/services/id-generator.ts:24

Implements

Constructors

Constructor
TypeScript
new CountingIdGenerator(nodePrefix?, edgePrefix?): CountingIdGenerator;

Defined in: packages/editor-core/src/services/id-generator.ts:28

Parameters
ParameterTypeDefault value
nodePrefix?string'node'
edgePrefix?string'edge'
Returns

CountingIdGenerator

Methods

nextEdgeId()
TypeScript
nextEdgeId(): string;

Defined in: packages/editor-core/src/services/id-generator.ts:38

Returns

string

Implementation of

IIdGenerator.nextEdgeId

nextNodeId()
TypeScript
nextNodeId(): string;

Defined in: packages/editor-core/src/services/id-generator.ts:33

Returns

string

Implementation of

IIdGenerator.nextNodeId

reserve()
TypeScript
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
ParameterType
idsIterable<string>
Returns

void

Implementation of

IIdGenerator.reserve


DiagnosticsService

Defined in: packages/editor-core/src/services/diagnostics-service.ts:36

Implements

Constructors

Constructor
TypeScript
new DiagnosticsService(
   model, 
   bus, 
   validator, 
   registry
): DiagnosticsService;

Defined in: packages/editor-core/src/services/diagnostics-service.ts:43

Parameters
ParameterType
modelIGraphModel
busIEventBus
validatorIConnectionValidator
registryINodeRegistry
Returns

DiagnosticsService

Accessors

version
Get Signature
TypeScript
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

IDiagnosticsService.version

Methods

dispose()
TypeScript
dispose(): void;

Defined in: packages/editor-core/src/services/diagnostics-service.ts:80

Returns

void

getDiagnostics()
TypeScript
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()
TypeScript
onChanged(listener): IDisposable;

Defined in: packages/editor-core/src/services/diagnostics-service.ts:71

Subscribe to "diagnostics changed"; returns a disposer.

Parameters
ParameterType
listener() => void
Returns

IDisposable

Implementation of

IDiagnosticsService.onChanged


DisconnectCommand

Defined in: packages/editor-core/src/commands/commands.ts:102

Remove an edge; undo restores it.

Implements

Constructors

Constructor
TypeScript
new DisconnectCommand(edgeId): DisconnectCommand;

Defined in: packages/editor-core/src/commands/commands.ts:106

Parameters
ParameterType
edgeIdstring
Returns

DisconnectCommand

Properties

PropertyModifierTypeDefault valueDefined in
kindreadonly"disconnect"'disconnect'packages/editor-core/src/commands/commands.ts:103
labelreadonly"Disconnect"'Disconnect'packages/editor-core/src/commands/commands.ts:104

Methods

execute()
TypeScript
execute(ctx): void;

Defined in: packages/editor-core/src/commands/commands.ts:107

Parameters
ParameterType
ctxCommandContext
Returns

void

Implementation of

IEditorCommand.execute

undo()
TypeScript
undo(ctx): void;

Defined in: packages/editor-core/src/commands/commands.ts:120

Parameters
ParameterType
ctxCommandContext
Returns

void

Implementation of

IEditorCommand.undo


EventBus

Defined in: packages/editor-core/src/services/event-bus.ts:15

Implements

Constructors

Constructor
TypeScript
new EventBus(): EventBus;
Returns

EventBus

Methods

emit()
TypeScript
emit(event): void;

Defined in: packages/editor-core/src/services/event-bus.ts:18

Parameters
ParameterType
eventEditorEvent
Returns

void

Implementation of

IEventBus.emit

on()
TypeScript
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
ParameterType
kindK
listener(event) => void
Returns

IDisposable

Implementation of

IEventBus.on


ExecutionService

Defined in: packages/editor-core/src/services/execution-service.ts:36

Implements

Constructors

Constructor
TypeScript
new ExecutionService(serialization, runner): ExecutionService;

Defined in: packages/editor-core/src/services/execution-service.ts:37

Parameters
ParameterType
serializationISerializationService
runnerIGraphRunner
Returns

ExecutionService

Methods

run()
TypeScript
run(model): IExecutionHandle;

Defined in: packages/editor-core/src/services/execution-service.ts:42

Serialize the current model and run it.

Parameters
ParameterType
modelIGraphModel
Returns

IExecutionHandle

Implementation of

IExecutionService.run


GraphModel

Defined in: packages/editor-core/src/services/graph-model.ts:20

Implements

Constructors

Constructor
TypeScript
new GraphModel(): GraphModel;
Returns

GraphModel

Methods

addEdge()
TypeScript
addEdge(edge): void;

Defined in: packages/editor-core/src/services/graph-model.ts:73

Parameters
ParameterType
edgeEditorEdge
Returns

void

Implementation of

IGraphModel.addEdge

addNode()
TypeScript
addNode(node): void;

Defined in: packages/editor-core/src/services/graph-model.ts:40

Parameters
ParameterType
nodeEditorNode
Returns

void

Implementation of

IGraphModel.addNode

getEdge()
TypeScript
getEdge(id): EditorEdge | undefined;

Defined in: packages/editor-core/src/services/graph-model.ts:28

Parameters
ParameterType
idstring
Returns

EditorEdge | undefined

Implementation of

IGraphModel.getEdge

getEdges()
TypeScript
getEdges(): readonly EditorEdge[];

Defined in: packages/editor-core/src/services/graph-model.ts:36

Returns

readonly EditorEdge[]

Implementation of

IGraphModel.getEdges

getNode()
TypeScript
getNode(id): EditorNode | undefined;

Defined in: packages/editor-core/src/services/graph-model.ts:24

Parameters
ParameterType
idstring
Returns

EditorNode | undefined

Implementation of

IGraphModel.getNode

getNodes()
TypeScript
getNodes(): readonly EditorNode[];

Defined in: packages/editor-core/src/services/graph-model.ts:32

Returns

readonly EditorNode[]

Implementation of

IGraphModel.getNodes

incidentEdges()
TypeScript
incidentEdges(nodeId): readonly EditorEdge[];

Defined in: packages/editor-core/src/services/graph-model.ts:93

All edges touching nodeId on either endpoint.

Parameters
ParameterType
nodeIdstring
Returns

readonly EditorEdge[]

Implementation of

IGraphModel.incidentEdges

removeEdge()
TypeScript
removeEdge(id): void;

Defined in: packages/editor-core/src/services/graph-model.ts:86

Parameters
ParameterType
idstring
Returns

void

Implementation of

IGraphModel.removeEdge

removeNode()
TypeScript
removeNode(id): void;

Defined in: packages/editor-core/src/services/graph-model.ts:47

Remove a node and cascade-remove its incident edges.

Parameters
ParameterType
idstring
Returns

void

Implementation of

IGraphModel.removeNode

restore()
TypeScript
restore(snapshot): void;

Defined in: packages/editor-core/src/services/graph-model.ts:110

Parameters
ParameterType
snapshotGraphSnapshot
Returns

void

Implementation of

IGraphModel.restore

snapshot()
TypeScript
snapshot(): GraphSnapshot;

Defined in: packages/editor-core/src/services/graph-model.ts:103

Returns

GraphSnapshot

Implementation of

IGraphModel.snapshot

updateNodeName()
TypeScript
updateNodeName(id, name): void;

Defined in: packages/editor-core/src/services/graph-model.ts:68

Parameters
ParameterType
idstring
namestring
Returns

void

Implementation of

IGraphModel.updateNodeName

updateNodeParams()
TypeScript
updateNodeParams(id, params): void;

Defined in: packages/editor-core/src/services/graph-model.ts:58

Parameters
ParameterType
idstring
paramsParamBag
Returns

void

Implementation of

IGraphModel.updateNodeParams

updateNodePosition()
TypeScript
updateNodePosition(id, position): void;

Defined in: packages/editor-core/src/services/graph-model.ts:63

Parameters
ParameterType
idstring
positionPoint
Returns

void

Implementation of

IGraphModel.updateNodePosition


GraphTopology

Defined in: packages/editor-core/src/services/graph-topology.ts:78

Constructors

Constructor
TypeScript
new GraphTopology(): GraphTopology;
Returns

GraphTopology

Methods

addEdge()
TypeScript
addEdge(edge): void;

Defined in: packages/editor-core/src/services/graph-topology.ts:150

Parameters
ParameterType
edgeEditorEdge
Returns

void

addNode()
TypeScript
addNode(node): void;

Defined in: packages/editor-core/src/services/graph-topology.ts:113

Parameters
ParameterType
nodeEditorNode
Returns

void

componentOf()
TypeScript
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
ParameterType
idstring
Returns

string | undefined

components()
TypeScript
components(): readonly TopologyComponent[];

Defined in: packages/editor-core/src/services/graph-topology.ts:205

All weakly-connected components.

Returns

readonly TopologyComponent[]

extractInterface()
TypeScript
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
ParameterType
nodeIdsReadonlySet<string>
Returns

SubgraphInterface

lint()
TypeScript
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()
TypeScript
removeEdge(id): void;

Defined in: packages/editor-core/src/services/graph-topology.ts:171

Parameters
ParameterType
idstring
Returns

void

removeNode()
TypeScript
removeNode(id): void;

Defined in: packages/editor-core/src/services/graph-topology.ts:124

Parameters
ParameterType
idstring
Returns

void

reset()
TypeScript
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
ParameterType
nodesreadonly EditorNode[]
edgesreadonly EditorEdge[]
Returns

void


GroupModel

Defined in: packages/editor-core/src/services/group-model.ts:60

Constructors

Constructor
TypeScript
new GroupModel(): GroupModel;
Returns

GroupModel

Methods

addMember()
TypeScript
addMember(id, nodeId): void;

Defined in: packages/editor-core/src/services/group-model.ts:112

Parameters
ParameterType
idstring
nodeIdstring
Returns

void

childGroups()
TypeScript
childGroups(parentId): readonly EditorGroup[];

Defined in: packages/editor-core/src/services/group-model.ts:104

Parameters
ParameterType
parentIdstring
Returns

readonly EditorGroup[]

createGroup()
TypeScript
createGroup(input): string;

Defined in: packages/editor-core/src/services/group-model.ts:69

Parameters
ParameterType
inputCreateGroupInput
Returns

string

forgetNode()
TypeScript
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
ParameterType
nodeIdstring
Returns

void

fromJSON()
TypeScript
fromJSON(sidecar): void;

Defined in: packages/editor-core/src/services/group-model.ts:153

Parameters
ParameterType
sidecarGroupSidecar
Returns

void

getGroup()
TypeScript
getGroup(id): EditorGroup | undefined;

Defined in: packages/editor-core/src/services/group-model.ts:92

Parameters
ParameterType
idstring
Returns

EditorGroup | undefined

groupsContaining()
TypeScript
groupsContaining(nodeId): readonly EditorGroup[];

Defined in: packages/editor-core/src/services/group-model.ts:108

Parameters
ParameterType
nodeIdstring
Returns

readonly EditorGroup[]

listGroups()
TypeScript
listGroups(): readonly EditorGroup[];

Defined in: packages/editor-core/src/services/group-model.ts:96

Returns

readonly EditorGroup[]

removeGroup()
TypeScript
removeGroup(id): void;

Defined in: packages/editor-core/src/services/group-model.ts:82

Parameters
ParameterType
idstring
Returns

void

removeMember()
TypeScript
removeMember(id, nodeId): void;

Defined in: packages/editor-core/src/services/group-model.ts:116

Parameters
ParameterType
idstring
nodeIdstring
Returns

void

rename()
TypeScript
rename(id, name): void;

Defined in: packages/editor-core/src/services/group-model.ts:120

Parameters
ParameterType
idstring
namestring
Returns

void

setCollapsed()
TypeScript
setCollapsed(id, collapsed): void;

Defined in: packages/editor-core/src/services/group-model.ts:127

Parameters
ParameterType
idstring
collapsedboolean
Returns

void

toJSON()
TypeScript
toJSON(): GroupSidecar;

Defined in: packages/editor-core/src/services/group-model.ts:141

Returns

GroupSidecar

topLevelGroups()
TypeScript
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
TypeScript
new HistoryService(provider, bus): HistoryService;

Defined in: packages/editor-core/src/services/history-service.ts:54

Parameters
ParameterType
providerICommandContextProvider
busIEventBus
Returns

HistoryService

Methods

canRedo()
TypeScript
canRedo(): boolean;

Defined in: packages/editor-core/src/services/history-service.ts:63

Returns

boolean

Implementation of

IHistoryService.canRedo

canUndo()
TypeScript
canUndo(): boolean;

Defined in: packages/editor-core/src/services/history-service.ts:59

Returns

boolean

Implementation of

IHistoryService.canUndo

clear()
TypeScript
clear(): void;

Defined in: packages/editor-core/src/services/history-service.ts:118

Returns

void

Implementation of

IHistoryService.clear

push()
TypeScript
push(command): void;

Defined in: packages/editor-core/src/services/history-service.ts:67

Parameters
ParameterType
commandIEditorCommand
Returns

void

Implementation of

IHistoryService.push

redo()
TypeScript
redo(): void;

Defined in: packages/editor-core/src/services/history-service.ts:87

Returns

void

Implementation of

IHistoryService.redo

transact()
TypeScript
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
ParameterType
labelstring
fn() => void
Returns

void

Implementation of

IHistoryService.transact

undo()
TypeScript
undo(): void;

Defined in: packages/editor-core/src/services/history-service.ts:77

Returns

void

Implementation of

IHistoryService.undo


InstantiationService

Defined in: packages/editor-core/src/di/instantiation-service.ts:16

Constructors

Constructor
TypeScript
new InstantiationService(services): InstantiationService;

Defined in: packages/editor-core/src/di/instantiation-service.ts:17

Parameters
ParameterType
servicesServiceCollection
Returns

InstantiationService

Methods

createInstance()
TypeScript
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
Type Parameter
T
Parameters
ParameterType
ctorNewable<T>
...restreadonly unknown[]
Returns

T

Throws

if a declared dependency is not registered, or if the decorated parameter indices are not the leading, contiguous parameters.

get()
TypeScript
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
Type Parameter
T
Parameters
ParameterType
idServiceIdentifier<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
TypeScript
new InterpreterGraphRunner(registry, createFlow): InterpreterGraphRunner;

Defined in: packages/editor-core/src/services/interpreter-runner.ts:17

Parameters
ParameterType
registryINodeRegistry
createFlowFlowFactory
Returns

InterpreterGraphRunner

Methods

run()
TypeScript
run(graph): IExecutionHandle;

Defined in: packages/editor-core/src/services/interpreter-runner.ts:22

Parameters
ParameterType
graphIGraph
Returns

IExecutionHandle

Implementation of

IGraphRunner.run


MoveNodeCommand

Defined in: packages/editor-core/src/commands/commands.ts:130

Move a node; captures the previous position for undo.

Implements

Constructors

Constructor
TypeScript
new MoveNodeCommand(nodeId, next): MoveNodeCommand;

Defined in: packages/editor-core/src/commands/commands.ts:134

Parameters
ParameterType
nodeIdstring
nextPoint
Returns

MoveNodeCommand

Properties

PropertyModifierTypeDefault valueDefined in
kindreadonly"moveNode"'moveNode'packages/editor-core/src/commands/commands.ts:131
labelreadonly"Move Node"'Move Node'packages/editor-core/src/commands/commands.ts:132

Methods

execute()
TypeScript
execute(ctx): void;

Defined in: packages/editor-core/src/commands/commands.ts:138

Parameters
ParameterType
ctxCommandContext
Returns

void

Implementation of

IEditorCommand.execute

undo()
TypeScript
undo(ctx): void;

Defined in: packages/editor-core/src/commands/commands.ts:151

Parameters
ParameterType
ctxCommandContext
Returns

void

Implementation of

IEditorCommand.undo


NodeRegistry

Defined in: packages/editor-core/src/services/node-registry.ts:13

Implements

Constructors

Constructor
TypeScript
new NodeRegistry(ids): NodeRegistry;

Defined in: packages/editor-core/src/services/node-registry.ts:16

Parameters
ParameterType
idsIIdGenerator
Returns

NodeRegistry

Methods

createNode()
TypeScript
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
ParameterType
codestring
positionPoint
Returns

EditorNode

Implementation of

INodeRegistry.createNode

get()
TypeScript
get(code): NodeDescriptor | undefined;

Defined in: packages/editor-core/src/services/node-registry.ts:22

Parameters
ParameterType
codestring
Returns

NodeDescriptor | undefined

Implementation of

INodeRegistry.get

list()
TypeScript
list(filter?): readonly NodeDescriptor[];

Defined in: packages/editor-core/src/services/node-registry.ts:26

Parameters
ParameterType
filter?{ group?: string; }
filter.group?string
Returns

readonly NodeDescriptor[]

Implementation of

INodeRegistry.list

register()
TypeScript
register(descriptor): void;

Defined in: packages/editor-core/src/services/node-registry.ts:18

Parameters
ParameterType
descriptorNodeDescriptor
Returns

void

Implementation of

INodeRegistry.register


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
TypeScript
new RemoveNodeCommand(nodeId): RemoveNodeCommand;

Defined in: packages/editor-core/src/commands/commands.ts:42

Parameters
ParameterType
nodeIdstring
Returns

RemoveNodeCommand

Properties

PropertyModifierTypeDefault valueDefined in
kindreadonly"removeNode"'removeNode'packages/editor-core/src/commands/commands.ts:38
labelreadonly"Remove Node"'Remove Node'packages/editor-core/src/commands/commands.ts:39

Methods

execute()
TypeScript
execute(ctx): void;

Defined in: packages/editor-core/src/commands/commands.ts:43

Parameters
ParameterType
ctxCommandContext
Returns

void

Implementation of

IEditorCommand.execute

undo()
TypeScript
undo(ctx): void;

Defined in: packages/editor-core/src/commands/commands.ts:60

Parameters
ParameterType
ctxCommandContext
Returns

void

Implementation of

IEditorCommand.undo


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
TypeScript
new RenameNodeCommand(nodeId, next): RenameNodeCommand;

Defined in: packages/editor-core/src/commands/commands.ts:196

Parameters
ParameterType
nodeIdstring
nextstring
Returns

RenameNodeCommand

Properties

PropertyModifierTypeDefault valueDefined in
kindreadonly"renameNode"'renameNode'packages/editor-core/src/commands/commands.ts:193
labelreadonly"Rename Node"'Rename Node'packages/editor-core/src/commands/commands.ts:194

Methods

execute()
TypeScript
execute(ctx): void;

Defined in: packages/editor-core/src/commands/commands.ts:200

Parameters
ParameterType
ctxCommandContext
Returns

void

Implementation of

IEditorCommand.execute

undo()
TypeScript
undo(ctx): void;

Defined in: packages/editor-core/src/commands/commands.ts:213

Parameters
ParameterType
ctxCommandContext
Returns

void

Implementation of

IEditorCommand.undo


SelectionService

Defined in: packages/editor-core/src/services/selection-service.ts:12

Implements

Constructors

Constructor
TypeScript
new SelectionService(bus): SelectionService;

Defined in: packages/editor-core/src/services/selection-service.ts:16

Parameters
ParameterType
busIEventBus
Returns

SelectionService

Methods

clear()
TypeScript
clear(): void;

Defined in: packages/editor-core/src/services/selection-service.ts:40

Returns

void

Implementation of

ISelectionService.clear

getSelectedEdges()
TypeScript
getSelectedEdges(): ReadonlySet<string>;

Defined in: packages/editor-core/src/services/selection-service.ts:22

Returns

ReadonlySet<string>

Implementation of

ISelectionService.getSelectedEdges

getSelectedNodes()
TypeScript
getSelectedNodes(): ReadonlySet<string>;

Defined in: packages/editor-core/src/services/selection-service.ts:18

Returns

ReadonlySet<string>

Implementation of

ISelectionService.getSelectedNodes

isSelected()
TypeScript
isSelected(id): boolean;

Defined in: packages/editor-core/src/services/selection-service.ts:36

Parameters
ParameterType
idstring
Returns

boolean

Implementation of

ISelectionService.isSelected

selectEdges()
TypeScript
selectEdges(ids, mode): void;

Defined in: packages/editor-core/src/services/selection-service.ts:31

Parameters
ParameterType
idsreadonly string[]
modeSelectionMode
Returns

void

Implementation of

ISelectionService.selectEdges

selectNodes()
TypeScript
selectNodes(ids, mode): void;

Defined in: packages/editor-core/src/services/selection-service.ts:26

Parameters
ParameterType
idsreadonly string[]
modeSelectionMode
Returns

void

Implementation of

ISelectionService.selectNodes


SerializationService

Defined in: packages/editor-core/src/services/serialization-service.ts:25

Implements

Constructors

Constructor
TypeScript
new SerializationService(): SerializationService;
Returns

SerializationService

Methods

fromIGraph()
TypeScript
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
ParameterType
graphIGraph
Returns

GraphSnapshot

Implementation of

ISerializationService.fromIGraph

toIGraph()
TypeScript
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
ParameterType
modelIGraphModel
Returns

IGraph

Implementation of

ISerializationService.toIGraph


ServiceCollection

Defined in: packages/editor-core/src/di/service-collection.ts:16

Constructors

Constructor
TypeScript
new ServiceCollection(): ServiceCollection;
Returns

ServiceCollection

Methods

get()
TypeScript
get<T>(id): T;

Defined in: packages/editor-core/src/di/service-collection.ts:34

Resolve the instance bound to id.

Type Parameters
Type Parameter
T
Parameters
ParameterType
idServiceIdentifier<T>
Returns

T

Throws

if no instance is registered.

has()
TypeScript
has(id): boolean;

Defined in: packages/editor-core/src/di/service-collection.ts:26

Whether an instance is bound to id.

Parameters
ParameterType
idServiceIdentifier<unknown>
Returns

boolean

set()
TypeScript
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
Type Parameter
T
Parameters
ParameterType
idServiceIdentifier<T>
instanceT
Returns

this

tryGet()
TypeScript
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
Type Parameter
T
Parameters
ParameterType
idServiceIdentifier<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
TypeScript
new SetHiddenCommand(nodeId, next): SetHiddenCommand;

Defined in: packages/editor-core/src/commands/commands.ts:238

Parameters
ParameterType
nodeIdstring
nextboolean
Returns

SetHiddenCommand

Properties

PropertyModifierTypeDefault valueDefined in
kindreadonly"setHidden"'setHidden'packages/editor-core/src/commands/commands.ts:235
labelreadonly"Toggle Visibility"'Toggle Visibility'packages/editor-core/src/commands/commands.ts:236

Methods

execute()
TypeScript
execute(ctx): void;

Defined in: packages/editor-core/src/commands/commands.ts:242

Parameters
ParameterType
ctxCommandContext
Returns

void

Implementation of

IEditorCommand.execute

undo()
TypeScript
undo(ctx): void;

Defined in: packages/editor-core/src/commands/commands.ts:246

Parameters
ParameterType
ctxCommandContext
Returns

void

Implementation of

IEditorCommand.undo


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
TypeScript
new SetLockedCommand(nodeId, next): SetLockedCommand;

Defined in: packages/editor-core/src/commands/commands.ts:256

Parameters
ParameterType
nodeIdstring
nextboolean
Returns

SetLockedCommand

Properties

PropertyModifierTypeDefault valueDefined in
kindreadonly"setLocked"'setLocked'packages/editor-core/src/commands/commands.ts:253
labelreadonly"Toggle Lock"'Toggle Lock'packages/editor-core/src/commands/commands.ts:254

Methods

execute()
TypeScript
execute(ctx): void;

Defined in: packages/editor-core/src/commands/commands.ts:260

Parameters
ParameterType
ctxCommandContext
Returns

void

Implementation of

IEditorCommand.execute

undo()
TypeScript
undo(ctx): void;

Defined in: packages/editor-core/src/commands/commands.ts:264

Parameters
ParameterType
ctxCommandContext
Returns

void

Implementation of

IEditorCommand.undo


TopologyIndex

Defined in: packages/editor-core/src/services/topology-index.ts:18

Constructors

Constructor
TypeScript
new TopologyIndex(model, bus): TopologyIndex;

Defined in: packages/editor-core/src/services/topology-index.ts:25

Parameters
ParameterType
modelIGraphModel
busIEventBus
Returns

TopologyIndex

Accessors

topology
Get Signature
TypeScript
get topology(): GraphTopology;

Defined in: packages/editor-core/src/services/topology-index.ts:51

The maintained topology (query components / componentOf / lint on it).

Returns

GraphTopology

version
Get Signature
TypeScript
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()
TypeScript
dispose(): void;

Defined in: packages/editor-core/src/services/topology-index.ts:76

Returns

void

onChanged()
TypeScript
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
ParameterType
listener() => void
Returns

IDisposable

reindex()
TypeScript
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
TypeScript
new UpdateParamsCommand(nodeId, next): UpdateParamsCommand;

Defined in: packages/editor-core/src/commands/commands.ts:165

Parameters
ParameterType
nodeIdstring
nextParamBag
Returns

UpdateParamsCommand

Properties

PropertyModifierTypeDefault valueDefined in
kindreadonly"updateParams"'updateParams'packages/editor-core/src/commands/commands.ts:162
labelreadonly"Update Parameters"'Update Parameters'packages/editor-core/src/commands/commands.ts:163

Methods

execute()
TypeScript
execute(ctx): void;

Defined in: packages/editor-core/src/commands/commands.ts:169

Parameters
ParameterType
ctxCommandContext
Returns

void

Implementation of

IEditorCommand.execute

undo()
TypeScript
undo(ctx): void;

Defined in: packages/editor-core/src/commands/commands.ts:182

Parameters
ParameterType
ctxCommandContext
Returns

void

Implementation of

IEditorCommand.undo


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
TypeScript
new ViewStateService(bus): ViewStateService;

Defined in: packages/editor-core/src/services/view-state-service.ts:22

Parameters
ParameterType
busIEventBus
Returns

ViewStateService

Methods

clear()
TypeScript
clear(): void;

Defined in: packages/editor-core/src/services/view-state-service.ts:52

Returns

void

Implementation of

IViewStateService.clear

getHiddenNodes()
TypeScript
getHiddenNodes(): ReadonlySet<string>;

Defined in: packages/editor-core/src/services/view-state-service.ts:24

Returns

ReadonlySet<string>

Implementation of

IViewStateService.getHiddenNodes

getLockedNodes()
TypeScript
getLockedNodes(): ReadonlySet<string>;

Defined in: packages/editor-core/src/services/view-state-service.ts:28

Returns

ReadonlySet<string>

Implementation of

IViewStateService.getLockedNodes

isHidden()
TypeScript
isHidden(id): boolean;

Defined in: packages/editor-core/src/services/view-state-service.ts:32

Parameters
ParameterType
idstring
Returns

boolean

Implementation of

IViewStateService.isHidden

isLocked()
TypeScript
isLocked(id): boolean;

Defined in: packages/editor-core/src/services/view-state-service.ts:36

Parameters
ParameterType
idstring
Returns

boolean

Implementation of

IViewStateService.isLocked

setHidden()
TypeScript
setHidden(id, hidden): void;

Defined in: packages/editor-core/src/services/view-state-service.ts:40

Parameters
ParameterType
idstring
hiddenboolean
Returns

void

Implementation of

IViewStateService.setHidden

setLocked()
TypeScript
setLocked(id, locked): void;

Defined in: packages/editor-core/src/services/view-state-service.ts:46

Parameters
ParameterType
idstring
lockedboolean
Returns

void

Implementation of

IViewStateService.setLocked

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


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

PropertyModifierTypeDescriptionDefined in
edgesreadonlyreadonly EditorEdge[]-packages/editor-core/src/services/clone-nodes.ts:27
idMapreadonlyReadonlyMap<string, string>Maps each source node id to its clone's fresh id.packages/editor-core/src/services/clone-nodes.ts:29
nodesreadonlyreadonly 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

PropertyModifierTypeDescriptionDefined in
busreadonlyIEventBus-packages/editor-core/src/services/interfaces.ts:207
modelreadonlyIGraphModel-packages/editor-core/src/services/interfaces.ts:205
validatorreadonlyIConnectionValidator-packages/editor-core/src/services/interfaces.ts:206
viewStatereadonlyIViewStateServicePer-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

Type Parameter
R

Properties


CreateEditorCoreOptions

Defined in: packages/editor-core/src/editor.ts:70

Options for assembling an editor core.

Properties

PropertyModifierTypeDescriptionDefined in
graphRunner?readonlyIGraphRunnerSupply 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?readonlyIIdGeneratorOverride 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

PropertyModifierTypeDefined in
membersreadonlyreadonly string[]packages/editor-core/src/services/group-model.ts:37
namereadonlystringpackages/editor-core/src/services/group-model.ts:36
parentGroupId?readonlystringpackages/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

PropertyModifierTypeDescriptionDefined in
kindreadonly"intrinsic" | "interface" | "reference" | "unknown"Broad category of the type.packages/editor-core/src/model/types.ts:54
namereadonlystringType name, e.g. "DTO_Input" | "string".packages/editor-core/src/model/types.ts:52
raw?readonlyunknownThe 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


EditorCore

Defined in: packages/editor-core/src/editor.ts:48

The assembled editor: the DI container plus its resolved core services.

Properties

PropertyModifierTypeDescriptionDefined in
commandsreadonlyICommandService-packages/editor-core/src/editor.ts:52
diagnosticsreadonlyIDiagnosticsServiceEdit-time semantic diagnostics (reuses validator + topology); not IGraph.packages/editor-core/src/editor.ts:58
eventsreadonlyIEventBus-packages/editor-core/src/editor.ts:62
execution?readonlyIExecutionServicePresent only when a graph runner was supplied.packages/editor-core/src/editor.ts:66
historyreadonlyIHistoryService-packages/editor-core/src/editor.ts:53
idGeneratorreadonlyIIdGeneratorThe id generation strategy, exposed so consumers avoid container lookups.packages/editor-core/src/editor.ts:64
instantiationreadonlyInstantiationService-packages/editor-core/src/editor.ts:50
modelreadonlyIGraphModel-packages/editor-core/src/editor.ts:51
registryreadonlyINodeRegistry-packages/editor-core/src/editor.ts:59
selectionreadonlyISelectionService-packages/editor-core/src/editor.ts:54
serializationreadonlyISerializationService-packages/editor-core/src/editor.ts:60
servicesreadonlyServiceCollection-packages/editor-core/src/editor.ts:49
validatorreadonlyIConnectionValidator-packages/editor-core/src/editor.ts:61
viewStatereadonlyIViewStateServicePer-node view flags (hidden/locked); reflected into the canvas, not IGraph.packages/editor-core/src/editor.ts:56

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


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

PropertyModifierTypeDescriptionDefined in
collapsedreadonlyboolean-packages/editor-core/src/services/group-model.ts:29
idreadonlystring-packages/editor-core/src/services/group-model.ts:26
membersreadonlyReadonlySet<string>-packages/editor-core/src/services/group-model.ts:28
namereadonlystring-packages/editor-core/src/services/group-model.ts:27
parentGroupId?readonlystringWhen 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

PropertyModifierTypeDescriptionDefined in
codereadonlystring-packages/editor-core/src/model/types.ts:118
idreadonlystring-packages/editor-core/src/model/types.ts:117
kindreadonlyNodeKind-packages/editor-core/src/model/types.ts:119
namereadonlystring-packages/editor-core/src/model/types.ts:120
paramsreadonlyParamBag-packages/editor-core/src/model/types.ts:122
portsreadonlyreadonly PortDescriptor[]-packages/editor-core/src/model/types.ts:123
positionreadonlyPoint-packages/editor-core/src/model/types.ts:121
raw?readonlyReadonly<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

PropertyModifierTypeDefined in
nodeIdreadonlystringpackages/editor-core/src/model/types.ts:130
portIdreadonlystringpackages/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

PropertyModifierTypeDefined in
edgesreadonlyreadonly EditorEdge[]packages/editor-core/src/model/types.ts:148
nodesreadonlyreadonly EditorNode[]packages/editor-core/src/model/types.ts:147

GroupedLayoutOptions

Defined in: packages/editor-core/src/services/grouped-layout.ts:27

Properties

PropertyModifierTypeDescriptionDefined in
gap?readonlynumberGap between packed group blocks.packages/editor-core/src/services/grouped-layout.ts:32
nodeH?readonlynumber-packages/editor-core/src/services/grouped-layout.ts:30
nodeW?readonlynumberNode 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

PropertyModifierTypeDefined in
groupsreadonlyreadonly 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()
TypeScript
getContext(): CommandContext;

Defined in: packages/editor-core/src/services/history-service.ts:19

Returns

CommandContext


ICommandService

Defined in: packages/editor-core/src/services/interfaces.ts:226

Methods

execute()
TypeScript
execute<R>(command): CommandResult<R>;

Defined in: packages/editor-core/src/services/interfaces.ts:227

Type Parameters
Type Parameter
R
Parameters
ParameterType
commandIEditorCommand<R>
Returns

CommandResult<R>


IConnectionValidator

Defined in: packages/editor-core/src/services/interfaces.ts:92

Methods

TypeScript
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
ParameterType
sourcePortPortDescriptor
targetPortPortDescriptor
Returns

ValidationResult

validate()
TypeScript
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
ParameterType
sourceEndpoint
targetEndpoint
modelIGraphModel
Returns

ValidationResult


IDiagnosticsService

Defined in: packages/editor-core/src/services/interfaces.ts:185

Properties

PropertyModifierTypeDescriptionDefined in
versionreadonlynumberMonotonic 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()
TypeScript
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()
TypeScript
onChanged(listener): IDisposable;

Defined in: packages/editor-core/src/services/interfaces.ts:189

Subscribe to "diagnostics changed"; returns a disposer.

Parameters
ParameterType
listener() => void
Returns

IDisposable


IDisposable

Defined in: packages/editor-core/src/services/interfaces.ts:33

A cancellable subscription.

Extended by

Methods

dispose()
TypeScript
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

Type ParameterDefault type
Rvoid

Properties

PropertyModifierTypeDefined in
kindreadonlystringpackages/editor-core/src/services/interfaces.ts:214
labelreadonlystringpackages/editor-core/src/services/interfaces.ts:215

Methods

execute()
TypeScript
execute(ctx): R;

Defined in: packages/editor-core/src/services/interfaces.ts:216

Parameters
ParameterType
ctxCommandContext
Returns

R

undo()
TypeScript
undo(ctx): void;

Defined in: packages/editor-core/src/services/interfaces.ts:217

Parameters
ParameterType
ctxCommandContext
Returns

void


IEventBus

Defined in: packages/editor-core/src/services/interfaces.ts:55

Methods

emit()
TypeScript
emit(event): void;

Defined in: packages/editor-core/src/services/interfaces.ts:56

Parameters
ParameterType
eventEditorEvent
Returns

void

on()
TypeScript
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
ParameterType
kindK
listener(event) => void
Returns

IDisposable


IExecutionHandle

Defined in: packages/editor-core/src/services/execution-service.ts:15

A handle to a running execution.

Extends

Methods

dispose()
TypeScript
dispose(): void;

Defined in: packages/editor-core/src/services/interfaces.ts:34

Returns

void

Inherited from

IDisposable.dispose

onActivity()
TypeScript
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
ParameterType
listener(event) => void
Returns

IDisposable

onError()
TypeScript
onError(listener): IDisposable;

Defined in: packages/editor-core/src/services/execution-service.ts:16

Parameters
ParameterType
listener(event) => void
Returns

IDisposable


IExecutionService

Defined in: packages/editor-core/src/services/execution-service.ts:30

Methods

run()
TypeScript
run(model): IExecutionHandle;

Defined in: packages/editor-core/src/services/execution-service.ts:32

Serialize the current model and run it.

Parameters
ParameterType
modelIGraphModel
Returns

IExecutionHandle


IGraphModel

Defined in: packages/editor-core/src/services/interfaces.ts:68

Methods

addEdge()
TypeScript
addEdge(edge): void;

Defined in: packages/editor-core/src/services/interfaces.ts:79

Parameters
ParameterType
edgeEditorEdge
Returns

void

addNode()
TypeScript
addNode(node): void;

Defined in: packages/editor-core/src/services/interfaces.ts:73

Parameters
ParameterType
nodeEditorNode
Returns

void

getEdge()
TypeScript
getEdge(id): EditorEdge | undefined;

Defined in: packages/editor-core/src/services/interfaces.ts:70

Parameters
ParameterType
idstring
Returns

EditorEdge | undefined

getEdges()
TypeScript
getEdges(): readonly EditorEdge[];

Defined in: packages/editor-core/src/services/interfaces.ts:72

Returns

readonly EditorEdge[]

getNode()
TypeScript
getNode(id): EditorNode | undefined;

Defined in: packages/editor-core/src/services/interfaces.ts:69

Parameters
ParameterType
idstring
Returns

EditorNode | undefined

getNodes()
TypeScript
getNodes(): readonly EditorNode[];

Defined in: packages/editor-core/src/services/interfaces.ts:71

Returns

readonly EditorNode[]

incidentEdges()
TypeScript
incidentEdges(nodeId): readonly EditorEdge[];

Defined in: packages/editor-core/src/services/interfaces.ts:82

All edges touching nodeId on either endpoint.

Parameters
ParameterType
nodeIdstring
Returns

readonly EditorEdge[]

removeEdge()
TypeScript
removeEdge(id): void;

Defined in: packages/editor-core/src/services/interfaces.ts:80

Parameters
ParameterType
idstring
Returns

void

removeNode()
TypeScript
removeNode(id): void;

Defined in: packages/editor-core/src/services/interfaces.ts:75

Remove a node and cascade-remove its incident edges.

Parameters
ParameterType
idstring
Returns

void

restore()
TypeScript
restore(snapshot): void;

Defined in: packages/editor-core/src/services/interfaces.ts:84

Parameters
ParameterType
snapshotGraphSnapshot
Returns

void

snapshot()
TypeScript
snapshot(): GraphSnapshot;

Defined in: packages/editor-core/src/services/interfaces.ts:83

Returns

GraphSnapshot

updateNodeName()
TypeScript
updateNodeName(id, name): void;

Defined in: packages/editor-core/src/services/interfaces.ts:78

Parameters
ParameterType
idstring
namestring
Returns

void

updateNodeParams()
TypeScript
updateNodeParams(id, params): void;

Defined in: packages/editor-core/src/services/interfaces.ts:76

Parameters
ParameterType
idstring
paramsParamBag
Returns

void

updateNodePosition()
TypeScript
updateNodePosition(id, position): void;

Defined in: packages/editor-core/src/services/interfaces.ts:77

Parameters
ParameterType
idstring
positionPoint
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()
TypeScript
run(graph): IExecutionHandle;

Defined in: packages/editor-core/src/services/execution-service.ts:26

Parameters
ParameterType
graphIGraph
Returns

IExecutionHandle


IHistoryService

Defined in: packages/editor-core/src/services/interfaces.ts:231

Methods

canRedo()
TypeScript
canRedo(): boolean;

Defined in: packages/editor-core/src/services/interfaces.ts:233

Returns

boolean

canUndo()
TypeScript
canUndo(): boolean;

Defined in: packages/editor-core/src/services/interfaces.ts:232

Returns

boolean

clear()
TypeScript
clear(): void;

Defined in: packages/editor-core/src/services/interfaces.ts:239

Returns

void

push()
TypeScript
push(command): void;

Defined in: packages/editor-core/src/services/interfaces.ts:234

Parameters
ParameterType
commandIEditorCommand
Returns

void

redo()
TypeScript
redo(): void;

Defined in: packages/editor-core/src/services/interfaces.ts:236

Returns

void

transact()
TypeScript
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
ParameterType
labelstring
fn() => void
Returns

void

undo()
TypeScript
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()
TypeScript
nextEdgeId(): string;

Defined in: packages/editor-core/src/services/id-generator.ts:14

Returns

string

nextNodeId()
TypeScript
nextNodeId(): string;

Defined in: packages/editor-core/src/services/id-generator.ts:13

Returns

string

reserve()
TypeScript
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
ParameterType
idsIterable<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

PropertyModifierTypeDescriptionDefined in
nodeIdreadonlystringStable nodeId from the graph.packages/interpreter/lib/index.d.ts:150
portIdreadonlystringThe output port name the message was sent on.packages/interpreter/lib/index.d.ts:152

INodeErrorEvent

Defined in: packages/interpreter/lib/index.d.ts:137

An error surfaced from a node's @node/error port during execution.

Properties

PropertyModifierTypeDescriptionDefined in
errorreadonlyunknownThe error payload the node sent on its error port.packages/interpreter/lib/index.d.ts:141
nodeIdreadonlystringStable nodeId from the graph.packages/interpreter/lib/index.d.ts:139

INodeRegistry

Defined in: packages/editor-core/src/services/interfaces.ts:112

Methods

createNode()
TypeScript
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
ParameterType
codestring
positionPoint
Returns

EditorNode

get()
TypeScript
get(code): NodeDescriptor | undefined;

Defined in: packages/editor-core/src/services/interfaces.ts:114

Parameters
ParameterType
codestring
Returns

NodeDescriptor | undefined

list()
TypeScript
list(filter?): readonly NodeDescriptor[];

Defined in: packages/editor-core/src/services/interfaces.ts:115

Parameters
ParameterType
filter?{ group?: string; }
filter.group?string
Returns

readonly NodeDescriptor[]

register()
TypeScript
register(descriptor): void;

Defined in: packages/editor-core/src/services/interfaces.ts:113

Parameters
ParameterType
descriptorNodeDescriptor
Returns

void


InsertPlan

Defined in: packages/editor-core/src/services/reroute.ts:36

Properties

PropertyModifierTypeDescriptionDefined in
sourceEdgereadonlyEditorEdgeA.O → N.packages/editor-core/src/services/reroute.ts:38
targetEdgereadonlyEditorEdgeN. → B.Ipackages/editor-core/src/services/reroute.ts:40

IParamObject

Defined in: packages/editor-core/src/model/types.ts:40

Indexable

TypeScript
[key: string]: ParamValue

ISelectionService

Defined in: packages/editor-core/src/services/interfaces.ts:127

Methods

clear()
TypeScript
clear(): void;

Defined in: packages/editor-core/src/services/interfaces.ts:133

Returns

void

getSelectedEdges()
TypeScript
getSelectedEdges(): ReadonlySet<string>;

Defined in: packages/editor-core/src/services/interfaces.ts:129

Returns

ReadonlySet<string>

getSelectedNodes()
TypeScript
getSelectedNodes(): ReadonlySet<string>;

Defined in: packages/editor-core/src/services/interfaces.ts:128

Returns

ReadonlySet<string>

isSelected()
TypeScript
isSelected(id): boolean;

Defined in: packages/editor-core/src/services/interfaces.ts:132

Parameters
ParameterType
idstring
Returns

boolean

selectEdges()
TypeScript
selectEdges(ids, mode): void;

Defined in: packages/editor-core/src/services/interfaces.ts:131

Parameters
ParameterType
idsreadonly string[]
modeSelectionMode
Returns

void

selectNodes()
TypeScript
selectNodes(ids, mode): void;

Defined in: packages/editor-core/src/services/interfaces.ts:130

Parameters
ParameterType
idsreadonly string[]
modeSelectionMode
Returns

void


ISerializationService

Defined in: packages/editor-core/src/services/serialization-interface.ts:16

Methods

fromIGraph()
TypeScript
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
ParameterType
graphIGraph
Returns

GraphSnapshot

toIGraph()
TypeScript
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
ParameterType
modelIGraphModel
Returns

IGraph


IServiceDependency

Defined in: packages/editor-core/src/di/types.ts:15

Records one injected dependency on a target constructor.

Properties

PropertyModifierTypeDescriptionDefined in
idreadonlyServiceIdentifier<unknown>The service identifier to inject.packages/editor-core/src/di/types.ts:17
indexreadonlynumberPosition 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()
TypeScript
clear(): void;

Defined in: packages/editor-core/src/services/interfaces.ts:152

Returns

void

getHiddenNodes()
TypeScript
getHiddenNodes(): ReadonlySet<string>;

Defined in: packages/editor-core/src/services/interfaces.ts:146

Returns

ReadonlySet<string>

getLockedNodes()
TypeScript
getLockedNodes(): ReadonlySet<string>;

Defined in: packages/editor-core/src/services/interfaces.ts:147

Returns

ReadonlySet<string>

isHidden()
TypeScript
isHidden(id): boolean;

Defined in: packages/editor-core/src/services/interfaces.ts:148

Parameters
ParameterType
idstring
Returns

boolean

isLocked()
TypeScript
isLocked(id): boolean;

Defined in: packages/editor-core/src/services/interfaces.ts:149

Parameters
ParameterType
idstring
Returns

boolean

setHidden()
TypeScript
setHidden(id, hidden): void;

Defined in: packages/editor-core/src/services/interfaces.ts:150

Parameters
ParameterType
idstring
hiddenboolean
Returns

void

setLocked()
TypeScript
setLocked(id, locked): void;

Defined in: packages/editor-core/src/services/interfaces.ts:151

Parameters
ParameterType
idstring
lockedboolean
Returns

void


LayoutEdge

Defined in: packages/editor-core/src/services/layered-layout.ts:20

A directed edge for layout (source -> target).

Properties


LayoutGroup

Defined in: packages/editor-core/src/services/grouped-layout.ts:22

A group for layout purposes: an id and its member set.

Properties

PropertyModifierTypeDefined in
idreadonlystringpackages/editor-core/src/services/grouped-layout.ts:23
membersreadonlyReadonlySet<string>packages/editor-core/src/services/grouped-layout.ts:24

LayoutOptions

Defined in: packages/editor-core/src/services/layered-layout.ts:25

Properties

PropertyModifierTypeDescriptionDefined 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?readonlynumberOrdering-improvement sweeps (crossing reduction). Default 4.packages/editor-core/src/services/layered-layout.ts:29
xGap?readonlynumber-packages/editor-core/src/services/layered-layout.ts:26
yGap?readonlynumber-packages/editor-core/src/services/layered-layout.ts:27

LayoutPoint

Defined in: packages/editor-core/src/services/layered-layout.ts:38

Properties


LintDiagnostic

Defined in: packages/editor-core/src/services/graph-topology.ts:66

An edit-time lint diagnostic anchored to a node.

Properties


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

PropertyModifierTypeDescriptionDefined in
codereadonlystringRegistry key; resolved (after camelization) to a runtime node class.packages/editor-core/src/model/types.ts:95
defaultParamsreadonlyParamBagDefault parameter values applied when creating a node.packages/editor-core/src/model/types.ts:105
displayNamereadonlystringHuman-readable display name for the palette.packages/editor-core/src/model/types.ts:99
editorResource?readonlyobjectOptional custom-editor resources for this node type.packages/editor-core/src/model/types.ts:109
editorResource.scriptHrefreadonlystring-packages/editor-core/src/model/types.ts:111
editorResource.styleHrefreadonlystring-packages/editor-core/src/model/types.ts:110
groupreadonlystringGrouping code for palette organization (maps to groupCode).packages/editor-core/src/model/types.ts:101
kindreadonlyNodeKindNode kind.packages/editor-core/src/model/types.ts:97
portsreadonlyreadonly PortDescriptor[]All ports, including @node/error for R and T.packages/editor-core/src/model/types.ts:103
runtimeResourcereadonlystringnpm 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

PropertyModifierTypeDefined in
xreadonlynumberpackages/editor-core/src/model/types.ts:28
yreadonlynumberpackages/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

PropertyModifierTypeDescriptionDefined in
dataTypereadonlyDataTypeDesign-time data type for compatibility checks.packages/editor-core/src/model/types.ts:68
directionreadonlyPortDirectionStream direction: input (I) or output (O).packages/editor-core/src/model/types.ts:64
idreadonlystringPort name, used as the connection port id.packages/editor-core/src/model/types.ts:62
isErrorreadonlybooleanWhether this is the @node/error port.packages/editor-core/src/model/types.ts:70
namereadonlystringHuman-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

Type Parameter
T
TypeScript
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

ParameterType
targetobject
propertyKeystring | undefined
parameterIndexnumber

Returns

void

Properties

PropertyModifierTypeDescriptionDefined in
serviceNamereadonlystringUnique service name (for diagnostics and identity).packages/editor-core/src/di/types.ts:31
typereadonlyTPhantom 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

PropertyModifierTypeDefined in
inputsreadonlyreadonly Endpoint[]packages/editor-core/src/services/graph-topology.ts:40
outputsreadonlyreadonly 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

PropertyModifierTypeDescriptionDefined in
idreadonlystringStable representative id for this component (a member node id).packages/editor-core/src/services/graph-topology.ts:27
nodeIdsreadonlyReadonlySet<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

PropertyModifierTypeDescriptionDefined in
message?readonlystringHuman-readable message when ok is false.packages/editor-core/src/services/interfaces.ts:29
okreadonlyboolean-packages/editor-core/src/services/interfaces.ts:25
reason?readonlystringMachine-readable reason code when ok is false.packages/editor-core/src/services/interfaces.ts:27

Type Aliases

DiagnosticCode

TypeScript
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

TypeScript
type DiagnosticSeverity = "error" | "warning";

Defined in: packages/editor-core/src/services/interfaces.ts:160


EdgeId

TypeScript
type EdgeId = string;

Defined in: packages/editor-core/src/model/types.ts:12


EditorEvent

TypeScript
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

TypeScript
type EditorEventKind = EditorEvent["kind"];

Defined in: packages/editor-core/src/services/interfaces.ts:52


EventOfKind

TypeScript
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

TypeScript
type GroupId = string;

Defined in: packages/editor-core/src/services/group-model.ts:22


LintCode

TypeScript
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

TypeScript
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

Type Parameter
T

Parameters

ParameterType
...argsnever[]

Returns

T


NodeId

TypeScript
type NodeId = string;

Defined in: packages/editor-core/src/model/types.ts:11

Stable identifiers. Branded only nominally via naming, kept as strings.


NodeKind

TypeScript
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

TypeScript
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

TypeScript
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

TypeScript
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

TypeScript
type PortId = string;

Defined in: packages/editor-core/src/model/types.ts:14

A port's name, e.g. "Input" | "Output" | "@node/error".


SelectionMode

TypeScript
type SelectionMode = "replace" | "add" | "toggle";

Defined in: packages/editor-core/src/services/interfaces.ts:125

Variables

ERROR_PORT_NAME

TypeScript
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

TypeScript
ICommandContextProvider: ServiceIdentifier<ICommandContextProvider>;

Defined in: packages/editor-core/src/services/history-service.ts:18


ICommandService

TypeScript
ICommandService: ServiceIdentifier<ICommandService>;

Defined in: packages/editor-core/src/services/interfaces.ts:226


IConnectionValidator

TypeScript
IConnectionValidator: ServiceIdentifier<IConnectionValidator>;

Defined in: packages/editor-core/src/services/interfaces.ts:92


IDiagnosticsService

TypeScript
IDiagnosticsService: ServiceIdentifier<IDiagnosticsService>;

Defined in: packages/editor-core/src/services/interfaces.ts:185


IEventBus

TypeScript
IEventBus: ServiceIdentifier<IEventBus>;

Defined in: packages/editor-core/src/services/interfaces.ts:55


IExecutionService

TypeScript
IExecutionService: ServiceIdentifier<IExecutionService>;

Defined in: packages/editor-core/src/services/execution-service.ts:30


IGraphModel

TypeScript
IGraphModel: ServiceIdentifier<IGraphModel>;

Defined in: packages/editor-core/src/services/interfaces.ts:68


IGraphRunner

TypeScript
IGraphRunner: ServiceIdentifier<IGraphRunner>;

Defined in: packages/editor-core/src/services/execution-service.ts:25


IHistoryService

TypeScript
IHistoryService: ServiceIdentifier<IHistoryService>;

Defined in: packages/editor-core/src/services/interfaces.ts:231


IIdGenerator

TypeScript
IIdGenerator: ServiceIdentifier<IIdGenerator>;

Defined in: packages/editor-core/src/services/id-generator.ts:12


INodeRegistry

TypeScript
INodeRegistry: ServiceIdentifier<INodeRegistry>;

Defined in: packages/editor-core/src/services/interfaces.ts:112


ISelectionService

TypeScript
ISelectionService: ServiceIdentifier<ISelectionService>;

Defined in: packages/editor-core/src/services/interfaces.ts:127


ISerializationService

TypeScript
ISerializationService: ServiceIdentifier<ISerializationService>;

Defined in: packages/editor-core/src/services/serialization-interface.ts:16


IViewStateService

TypeScript
IViewStateService: ServiceIdentifier<IViewStateService>;

Defined in: packages/editor-core/src/services/interfaces.ts:145

Functions

classifyInterface()

TypeScript
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

ParameterType
ifaceSubgraphInterface

Returns

NodeKind


cloneNodesWithEdges()

TypeScript
function cloneNodesWithEdges(
   nodes, 
   edges, 
   idGenerator, 
   offset
): CloneResult;

Defined in: packages/editor-core/src/services/clone-nodes.ts:32

Parameters

ParameterType
nodesreadonly EditorNode[]
edgesreadonly EditorEdge[]
idGeneratorIIdGenerator
offsetCloneOffset

Returns

CloneResult


createDecorator()

TypeScript
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

Type Parameter
T

Parameters

ParameterType
serviceNamestring

Returns

ServiceIdentifier<T>


createEditorCore()

TypeScript
function createEditorCore(options?): EditorCore;

Defined in: packages/editor-core/src/editor.ts:81

Assemble a fully wired editor core.

Parameters

ParameterType
options?CreateEditorCoreOptions

Returns

EditorCore


distanceToSegment()

TypeScript
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

ParameterType
pPoint
aPoint
bPoint

Returns

number


getServiceDependencies()

TypeScript
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

ParameterType
ctorunknown

Returns

readonly IServiceDependency[]


layoutGrouped()

TypeScript
function layoutGrouped(
   nodeIds, 
   edges, 
   groups, 
   options?
): Map<string, LayoutPoint>;

Defined in: packages/editor-core/src/services/grouped-layout.ts:39

Parameters

ParameterType
nodeIdsreadonly string[]
edgesreadonly LayoutEdge[]
groupsreadonly LayoutGroup[]
options?GroupedLayoutOptions

Returns

Map<string, LayoutPoint>


layoutLayered()

TypeScript
function layoutLayered(
   nodeIds, 
   edges, 
   options?
): Map<string, LayoutPoint>;

Defined in: packages/editor-core/src/services/layered-layout.ts:47

Parameters

ParameterType
nodeIdsreadonly string[]
edgesreadonly LayoutEdge[]
options?LayoutOptions

Returns

Map<string, LayoutPoint>


planInsertOnEdge()

TypeScript
function planInsertOnEdge(
   node, 
   edge, 
   model, 
   validator, 
   idGenerator
): InsertPlan | null;

Defined in: packages/editor-core/src/services/reroute.ts:43

Parameters

ParameterType
nodeEditorNode
edgeEditorEdge
modelIGraphModel
validatorIConnectionValidator
idGeneratorIIdGenerator

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.