diff --git a/src/models/MetaPort.ts b/src/models/MetaPort.ts index c65174b..6dcfe0f 100644 --- a/src/models/MetaPort.ts +++ b/src/models/MetaPort.ts @@ -34,4 +34,12 @@ export class MetaPort { getType(): string { return this.type; } + + serialise(): any { + return { + 'id': this.getId(), + 'name': this.getName(), + 'type': this.getType(), + }; + } } diff --git a/src/react-diagrams/MetaNodeModel.ts b/src/react-diagrams/MetaNodeModel.ts index cb2276d..2cf5c59 100644 --- a/src/react-diagrams/MetaNodeModel.ts +++ b/src/react-diagrams/MetaNodeModel.ts @@ -71,6 +71,15 @@ export class MetaNodeModel extends NodeModel { return this.getOptions()[label]; } + setLoggable(loggable: string, value: any, triggerUpdate?: boolean | undefined) { + // TODO: we need to move this away from meta-diagram but I don't really have time to think about this atm + // @ts-ignore + this.options['Loggables'][loggable] = value; + if (triggerUpdate) { + this.flagUpdate(CallbackTypes.OPTIONS_UPDATED); + } + } + getId(): string[] { return [...this.getOption('id')]; } @@ -107,7 +116,11 @@ export class MetaNodeModel extends NodeModel { }); return { ...super.serialize(), - ...additionalParams, + 'name': this.getOption('name'), + 'graphPath': this.getOption('graphPath'), + 'class_inputs': { + ...additionalParams, + } }; } }