import { isCodeNodeDef } from "../compiler/utils/isCodeNodeDef"; import { nodeNameToFactoryId } from "../compiler/utils/nodeNameToFactoryId"; import { CodeNodeDef } from "../parser/definition/types/CodeNodeDef"; import { NodeDefs } from "../parser/definition/types/NodeDefs"; import { StructureNodeDef } from "../parser/definition/types/StructureNodeDef"; import { convertCodeNodeDefToLegacyOne } from "./convertCodeNodeDefToLegacyOne"; import { convertStructureNodeDefToLegacyOne } from "./convertStructureNodeDefToLegacyOne"; import { SourceNodes } from "./types/SourceNodes"; export function convertNodeDefsToLegacyNodes(nodeDefs: NodeDefs): SourceNodes { let nodes: SourceNodes = {}; for (let nodeName of Object.keys(nodeDefs)) { const node = nodeDefs[nodeName]; const nodeId = nodeNameToFactoryId(nodeName); if (isCodeNodeDef(node)) { const codeNode = node as CodeNodeDef; nodes[nodeId] = convertCodeNodeDefToLegacyOne(nodeId, nodeName, codeNode); } else { const structureNode = node as StructureNodeDef; nodes[nodeId] = convertStructureNodeDefToLegacyOne(nodeId, nodeName, structureNode); } } return nodes; }