From a5609af13efcdf245c228ac1a9306498bc4c06bd Mon Sep 17 00:00:00 2001 From: Jan Loewe <jan.loewe@ptb.de> Date: Tue, 14 Feb 2023 13:56:59 +0100 Subject: [PATCH] feat(equipmentClassType): allow multiple use --- src/DCC.ts | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/DCC.ts b/src/DCC.ts index 1449c94..6269ee5 100644 --- a/src/DCC.ts +++ b/src/DCC.ts @@ -227,7 +227,7 @@ export class PerformanceLocationType extends DCCXMLElement { * Contains one or more item elements. */ export class ItemListType extends DCCXMLElement { name?: TextType; - equipmentClass?: EquipmentClassType; + equipmentClass?: EquipmentClassType[]; description?: RichContentType; owner?: ContactType; identifications?: IdentificationListType; @@ -236,7 +236,7 @@ export class ItemListType extends DCCXMLElement { constructor(el: Partial<ItemListType> = {}) { super(el); if (el.name) this.name = new TextType(el.name); - if (el.equipmentClass) this.equipmentClass = new EquipmentClassType(el.equipmentClass); + if (el.equipmentClass) this.equipmentClass = ensureArray(el.equipmentClass).map((x) => new EquipmentClassType(x)); if (el.description) this.description = new RichContentType(el.description); if (el.owner) this.owner = new ContactType(el.owner); if (el.identifications) this.identifications = new IdentificationListType(el.identifications); @@ -417,7 +417,7 @@ export class RichContentType extends DCCXMLElement { /** List of measuring equipment and instruments */ export class MeasuringEquipmentListType extends DCCXMLElement { name?: TextType; - equipmentClass?: EquipmentClassType; + equipmentClass?: EquipmentClassType[]; description?: RichContentType; owner?: ContactType; identifications?: IdentificationListType; @@ -426,7 +426,7 @@ export class MeasuringEquipmentListType extends DCCXMLElement { constructor(el: Partial<MeasuringEquipmentListType> = {}) { super(el); if (el.name) this.name = new TextType(el.name); - if (el.equipmentClass) this.equipmentClass = new EquipmentClassType(el.equipmentClass); + if (el.equipmentClass) this.equipmentClass = ensureArray(el.equipmentClass).map((x) => new EquipmentClassType(x)); if (el.description) this.description = new RichContentType(el.description); if (el.owner) this.owner = new ContactType(el.owner); if (el.identifications) this.identifications = new IdentificationListType(el.identifications); @@ -463,7 +463,7 @@ export class MeasuringEquipmentType extends DCCXMLElement { _attr: IIdAndRefTypeAttributes; name: TextType; - equipmentClass?: EquipmentClassType; + equipmentClass?: EquipmentClassType[]; description?: RichContentType; certificate?: HashType; manufacturer?: ContactNotStrictType; @@ -474,7 +474,7 @@ export class MeasuringEquipmentType extends DCCXMLElement { constructor(el: Partial<MeasuringEquipmentType> = {}) { super(el); this.name = new TextType(el.name); - if (el.equipmentClass) this.equipmentClass = new EquipmentClassType(el.equipmentClass); + if (el.equipmentClass) this.equipmentClass = ensureArray(el.equipmentClass).map((x) => new EquipmentClassType(x)); if (el.description) this.description = new RichContentType(el.description); if (el.certificate) this.certificate = new HashType(el.certificate); if (el.manufacturer) this.manufacturer = new ContactNotStrictType(el.manufacturer); @@ -703,7 +703,7 @@ export class ItemType extends DCCXMLElement { _attr: IIdAttributes; name: TextType; - equipmentClass?: EquipmentClassType; + equipmentClass?: EquipmentClassType[]; description?: RichContentType; installedSoftwares?: SoftwareListType; manufacturer: ContactNotStrictType; @@ -714,7 +714,7 @@ export class ItemType extends DCCXMLElement { constructor(el: Partial<ItemType> = {}) { super(el); this.name = new TextType(el.name); - if (el.equipmentClass) this.equipmentClass = new EquipmentClassType(el.equipmentClass); + if (el.equipmentClass) this.equipmentClass = ensureArray(el.equipmentClass).map((x) => new EquipmentClassType(x)); if (el.description) this.description = new RichContentType(el.description); if (el.installedSoftwares) this.installedSoftwares = new SoftwareListType(el.installedSoftwares); this.manufacturer = new ContactNotStrictType(el.manufacturer); -- GitLab