[Cleanup] Reroute and serialisation (#767)

- Fixes root cause of minor in-memory-only corruption when deleting
reroutes from output slots
  - Already automatically corrected via serialisation
- If `reroutes` or `links` are empty arrays, removes them from newer
object-based serialised output entirely
- Minor refactors
- Removes unused code
- Fixes some serialisation types
- Adds `ReadonlyLinkNetwork` interface
This commit is contained in:
filtered
2025-03-14 01:40:12 +11:00
committed by GitHub
parent bcaeccfc45
commit 2e9f877bbd
5 changed files with 22 additions and 20 deletions

View File

@@ -37,7 +37,7 @@ export interface SerialisableGraph {
nodes?: ISerialisedNode[]
links?: SerialisableLLink[]
reroutes?: SerialisableReroute[]
extra?: Record<any, any>
extra?: Dictionary<unknown>
}
export type ISerialisableNodeInput = Omit<INodeInputSlot, "_layoutElement" | "widget"> & {
@@ -86,7 +86,9 @@ export interface ISerialisedGraph {
groups: ISerialisedGroup[]
config: LGraphConfig
version: typeof LiteGraph.VERSION
extra?: Record<string, unknown>
extra?: Dictionary<unknown> & {
reroutes?: SerialisableReroute[]
}
}
/** Serialised LGraphGroup */