From d5e6ba4df4f90390bc88eca58df3e91df3d00ccf Mon Sep 17 00:00:00 2001
From: rhenck <richard.henck@iqb.hu-berlin.de>
Date: Tue, 29 Mar 2022 18:00:47 +0200
Subject: [PATCH] Fix sanatization of old grid coordinates

gridColumnStart to gridColumn, for example.
---
 .../common/util/unit-definition-sanitizer.ts  | 33 +++++++++++--------
 1 file changed, 20 insertions(+), 13 deletions(-)

diff --git a/projects/common/util/unit-definition-sanitizer.ts b/projects/common/util/unit-definition-sanitizer.ts
index 5564fb8c9..5b3240337 100644
--- a/projects/common/util/unit-definition-sanitizer.ts
+++ b/projects/common/util/unit-definition-sanitizer.ts
@@ -109,20 +109,27 @@ export abstract class UnitDefinitionSanitizer {
   }
 
   private static getPositionProps(element: Record<string, any>): PositionProperties {
-    if (element.position !== undefined) {
-      if (element.position?.gridColumnStart !== undefined) {
-        return {
-          ...element.position,
-          gridColumn: element.position.gridColumnStart,
-          gridColumnRange: element.position.gridColumnEnd - element.position.gridColumnStart,
-          gridRow: element.position.gridRowStart,
-          gridRowRange: element.position.gridRowEnd - element.position.gridRowStart
-        };
-      }
-      return element.position as PositionProperties;
+    if (element.position) {
+      return {
+        ...element.position,
+        gridColumn: element.position.gridColumn !== undefined ?
+          element.position.gridColumn : element.position.gridColumnStart,
+        gridColumnRange: element.position.gridColumnEnd - element.position.gridColumnStart,
+        gridRow: element.position.gridRow !== undefined ?
+          element.position.gridRow : element.position.gridRowStart,
+        gridRowRange: element.position.gridRowEnd - element.position.gridRowStart
+      };
     }
-    if (element.positionProps !== undefined) {
-      return element.positionProps as PositionProperties;
+    if (element.positionProps) {
+      return {
+        ...element.positionProps,
+        gridColumn: element.positionProps.gridColumn !== undefined ?
+          element.positionProps.gridColumn : element.positionProps.gridColumnStart,
+        gridColumnRange: element.positionProps.gridColumnEnd - element.positionProps.gridColumnStart,
+        gridRow: element.positionProps.gridRow !== undefined ?
+          element.positionProps.gridRow : element.positionProps.gridRowStart,
+        gridRowRange: element.positionProps.gridRowEnd - element.positionProps.gridRowStart
+      };
     }
     return element as unknown as PositionProperties;
   }
-- 
GitLab