graph representation rewritten using elkjs
This commit is contained in:
@@ -4,6 +4,12 @@ export type BehaviourResourcePin = {
|
||||
resource: Resource;
|
||||
}
|
||||
|
||||
export type BehaviourSocket = {
|
||||
type: 'input' | 'output';
|
||||
index: number; // within its type
|
||||
resource: Resource;
|
||||
}
|
||||
|
||||
export type BehaviourLink = {
|
||||
target: Behaviour['id'],
|
||||
resource: Resource;
|
||||
@@ -26,6 +32,7 @@ export type BehaviourOutputs = {
|
||||
|
||||
export type BehaviourDisplayInfo = {
|
||||
storages: Record<string, Resources>;
|
||||
sockets: BehaviourSocket[];
|
||||
links: BehaviourLink[];
|
||||
}
|
||||
|
||||
@@ -80,6 +87,18 @@ export class Converter extends Behaviour {
|
||||
return {
|
||||
storages: {},
|
||||
links: this.inputs.pins.map((input) => input.link),
|
||||
sockets: [
|
||||
...this.inputs.pins.map((input, index) => ({
|
||||
type: 'input',
|
||||
index,
|
||||
resource: input.resource,
|
||||
} satisfies BehaviourSocket)),
|
||||
...this.outputs.pins.map((output, index) => ({
|
||||
type: 'output',
|
||||
index,
|
||||
resource: output.resource,
|
||||
} satisfies BehaviourSocket)),
|
||||
],
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user