diff --git a/tDataTypeTemplates/insertSelecetdLNodeType.spec.ts b/tDataTypeTemplates/insertSelecetdLNodeType.spec.ts index 9c11799..f942f10 100644 --- a/tDataTypeTemplates/insertSelecetdLNodeType.spec.ts +++ b/tDataTypeTemplates/insertSelecetdLNodeType.spec.ts @@ -25,16 +25,16 @@ const incompleteAtcc = findElement(incompleteAtccTypes) as XMLDocument; const missingDataTypes = findElement(emptySSD) as XMLDocument; describe("insertLNodeTypeSelection", () => { - it('is insensitive for invalid EnumTypes',()=> { + it('is insensitive for invalid EnumTypes', () => { const data = nsdToJson("LLN0") as LNodeDescription; - insertSelectedLNodeType(incompleteMmxu, invalidSelection, {class:"LLN0", data}); + insertSelectedLNodeType(incompleteMmxu, invalidSelection, { class: "LLN0", data }); }) it("insert MMXU LNodeType including missing sub data", () => { const edits = insertSelectedLNodeType( incompleteMmxu, mmxuSelection, - {class:"MMXU"}, + { class: "MMXU" }, ); expect(edits.length).to.equal(6); @@ -82,7 +82,7 @@ describe("insertLNodeTypeSelection", () => { const edits = insertSelectedLNodeType( imcompleteLtrk, ltrkSelection, - {class:"LTRK", data}, + { class: "LTRK", data }, ); expect(edits.length).to.equal(7); @@ -138,7 +138,7 @@ describe("insertLNodeTypeSelection", () => { const edits = insertSelectedLNodeType( incompleteAtcc, atccSelection, - {class: "ATCC", data}, + { class: "ATCC", data }, ); expect(edits.length).to.equal(5); @@ -181,7 +181,7 @@ describe("insertLNodeTypeSelection", () => { const edits = insertSelectedLNodeType( missingDataTypes, atccSelection, - {class:"ATCC", data}, + { class: "ATCC", desc: 'SomeDesc', data }, ); expect(edits.length).to.equal(19); diff --git a/tDataTypeTemplates/insertSelectedLNodeType.ts b/tDataTypeTemplates/insertSelectedLNodeType.ts index 030d3a1..de2b39a 100644 --- a/tDataTypeTemplates/insertSelectedLNodeType.ts +++ b/tDataTypeTemplates/insertSelectedLNodeType.ts @@ -169,7 +169,7 @@ function data(lnData: any, path: string[]): any { export function insertSelectedLNodeType( doc: XMLDocument, selection: TreeSelection, - logicalnode: {class: string, data?: LNodeDescription}, + logicalnode: { class: string, desc?: string, data?: LNodeDescription }, ): Insert[] { const types = new Set(); const elements: Templates = { @@ -181,6 +181,7 @@ export function insertSelectedLNodeType( const lnData = logicalnode.data ?? nsdToJson(logicalnode.class); const lnClass = logicalnode.class; + const desc = logicalnode.desc ?? null function isUnknownId(id: string): boolean { const alreadyCreate = types.has(id); @@ -206,7 +207,7 @@ export function insertSelectedLNodeType( return id; } - const lnType = createElement(doc, "LNodeType", { lnClass }); + const lnType = createElement(doc, "LNodeType", { lnClass, desc }); function createEnumType(path: string[], sel: TreeSelection): string { const enumData = data(lnData, path).children; @@ -214,9 +215,9 @@ export function insertSelectedLNodeType( const vals: Element[] = []; for (const content of Object.keys(sel)) { - const enumVal = enumData[content]; - if(!enumVal) continue; // check for invalid selection - + const enumVal = enumData[content]; + if (!enumVal) continue; // check for invalid selection + const ord = enumVal.literalVal; const val = createElement(doc, "EnumVal", { ord }); val.textContent = content;