copyEp()

in ui/src/app/connect/dialog/edit-event-property/edit-event-property.component.ts [99:146]


    copyEp(ep: EventPropertyUnion) {
        if (ep instanceof EventPropertyPrimitive) {
            const result = EventPropertyPrimitive.fromData(
                ep as EventPropertyPrimitive,
                new EventPropertyPrimitive(),
            );

            result.measurementUnit = ep.measurementUnit;
            if (ep.additionalMetadata) {
                result.additionalMetadata.fromMeasurementUnit =
                    ep.additionalMetadata.fromMeasurementUnit || undefined;
                result.additionalMetadata.toMeasurementUnit =
                    ep.additionalMetadata.toMeasurementUnit || undefined;

                result.additionalMetadata.correctionValue =
                    ep.additionalMetadata.correctionValue || undefined;
                result.additionalMetadata.operator =
                    ep.additionalMetadata.operator || undefined;

                result.additionalMetadata.mode = ep.additionalMetadata.mode;
                result.additionalMetadata.formatString =
                    ep.additionalMetadata.formatString;
                result.additionalMetadata.multiplier =
                    ep.additionalMetadata.multiplier;

                result.additionalMetadata.regex =
                    ep.additionalMetadata.regex || undefined;
                result.additionalMetadata.replaceWith =
                    ep.additionalMetadata.replaceWith || undefined;
                result.additionalMetadata.replaceAll =
                    ep.additionalMetadata.replaceAll || undefined;
            }

            (result as any).staticValue = (ep as any).staticValue;

            return result;
        } else if (ep instanceof EventPropertyNested) {
            return EventPropertyNested.fromData(
                ep as EventPropertyNested,
                new EventPropertyNested(),
            );
        } else {
            return EventPropertyList.fromData(
                ep as EventPropertyList,
                new EventPropertyList(),
            );
        }
    }