Skip to content

Profiles

A profile is a function that updates the registry with the nodes and value types that are available in the system. The profile usually also includes the Abstractions that are required for the nodes to work as parameters.

The official profiles are available in the @kiberon-labs/behave-graph package.

import {
DefaultLogger,
DummyScene,
ManualLifecycleEventEmitter,
Registry,
registerCoreProfile,
registerSceneProfile
} from '@kiberon-labs/behave-graph';
const registry = new Registry();
const logger = new DefaultLogger();
const lifecycleEventEmitter = new ManualLifecycleEventEmitter();
const scene = new DummyScene();
registerCoreProfile(registry, logger, lifecycleEventEmitter);
registerSceneProfile(registry, scene);
import { Registry, ILogger } from '@kiberon-labs/behave-graph';
const registerMyProfile = (registry: Registry, logger: ILogger) => {
const { nodes, values } = registry;
// Register nodes
nodes.register(MyNodeDescription);
nodes.register(MyNodeWithDependenciesDescription(logger));
// Register value types
values.register(MyValueTypeDescription);
return registry;
};