From 426eeddd2fb52c196fbb61dcc64223e18c52262c Mon Sep 17 00:00:00 2001
From: Jannis Adamek <jannis.adamek@gmail.com>
Date: Sun, 10 Mar 2024 23:32:23 +0000
Subject: [PATCH] Fix frontend build problems.

---
 .../map_planning/layers/plant/PlantsLayer.tsx |  9 ++++++++-
 .../map_planning/layers/plant/actions.ts      |  1 -
 .../plant/components/Planting/Planting.tsx    |  2 +-
 .../components/PlantingAttributeEditForm.tsx  |  2 +-
 .../map_planning/store/MapStoreTypes.ts       |  3 ++-
 .../map_planning/store/TrackedMapStore.ts     | 19 -------------------
 6 files changed, 12 insertions(+), 24 deletions(-)

diff --git a/frontend/src/features/map_planning/layers/plant/PlantsLayer.tsx b/frontend/src/features/map_planning/layers/plant/PlantsLayer.tsx
index b5bfb4ed0..2e476eb74 100644
--- a/frontend/src/features/map_planning/layers/plant/PlantsLayer.tsx
+++ b/frontend/src/features/map_planning/layers/plant/PlantsLayer.tsx
@@ -3,7 +3,14 @@ import { KonvaEventListener, KonvaEventObject, Node } from 'konva/lib/Node';
 import { useCallback, useEffect, useRef } from 'react';
 import { Layer } from 'react-konva';
 import * as uuid from 'uuid';
-import { LayerType, PlantingDto, PlantsSummaryDto, SeedDto } from '@/api_types/definitions';
+import {
+  LayerType,
+  MovePlantActionPayload,
+  PlantingDto,
+  PlantsSummaryDto,
+  SeedDto,
+  TransformPlantActionPayload,
+} from '@/api_types/definitions';
 import IconButton from '@/components/Button/IconButton';
 import {
   KEYBINDINGS_SCOPE_PLANTS_LAYER,
diff --git a/frontend/src/features/map_planning/layers/plant/actions.ts b/frontend/src/features/map_planning/layers/plant/actions.ts
index c2e01337b..3317ddcde 100644
--- a/frontend/src/features/map_planning/layers/plant/actions.ts
+++ b/frontend/src/features/map_planning/layers/plant/actions.ts
@@ -33,7 +33,6 @@ export class CreatePlantAction
     return this._ids;
   }
 
-  // TODO: Sollte hier beim constructor nicht NewPlantingDto verwendet werden?
   constructor(private readonly _data: PlantingDto[], public actionId = v4()) {
     this._ids = _data.map(({ id }) => id);
   }
diff --git a/frontend/src/features/map_planning/layers/plant/components/Planting/Planting.tsx b/frontend/src/features/map_planning/layers/plant/components/Planting/Planting.tsx
index a35e86939..c48deb4dc 100644
--- a/frontend/src/features/map_planning/layers/plant/components/Planting/Planting.tsx
+++ b/frontend/src/features/map_planning/layers/plant/components/Planting/Planting.tsx
@@ -8,7 +8,7 @@ import { PlantLabel } from '../PlantLabel';
 import { usePlanting } from './hooks';
 import { placeTooltip } from './utils';
 
-export type PlantingElementProps = {
+export type PlantingProps = {
   planting: PlantingDto;
 };
 
diff --git a/frontend/src/features/map_planning/layers/plant/components/PlantingAttributeEditForm.tsx b/frontend/src/features/map_planning/layers/plant/components/PlantingAttributeEditForm.tsx
index fab29d647..895090fea 100644
--- a/frontend/src/features/map_planning/layers/plant/components/PlantingAttributeEditForm.tsx
+++ b/frontend/src/features/map_planning/layers/plant/components/PlantingAttributeEditForm.tsx
@@ -45,7 +45,7 @@ export type SinglePlantingAttributeFormProps = EditPlantingAttributesProps & {
   planting: PlantingDto;
 };
 
-export type EditMultiplePlantingsProps = EditPlantingAttributesProps & {
+export type MultiplePlantingsAttributeFormProps = EditPlantingAttributesProps & {
   plantings: PlantingDto[];
 };
 
diff --git a/frontend/src/features/map_planning/store/MapStoreTypes.ts b/frontend/src/features/map_planning/store/MapStoreTypes.ts
index be667ceae..7d6a56b7e 100644
--- a/frontend/src/features/map_planning/store/MapStoreTypes.ts
+++ b/frontend/src/features/map_planning/store/MapStoreTypes.ts
@@ -12,6 +12,7 @@ import {
 import { FrontendOnlyLayerType } from '@/features/map_planning/layers/_frontend_only';
 import { PolygonGeometry } from '@/features/map_planning/types/PolygonTypes';
 import { convertToDateString } from '../utils/date-utils';
+import { TransformerStore } from './transformer/TransformerStore';
 
 import Vector2d = Konva.Vector2d;
 
@@ -171,7 +172,7 @@ export interface UntrackedMapSlice {
   ) => void;
   lastActions: LastAction[];
   selectPlantForPlanting: (plant: PlantForPlanting | null) => void;
-  selectPlantings: (plantings: PlantingDto[] | null) => void;
+  selectPlantings: (plantings: PlantingDto[] | null, transformerStore?: TransformerStore) => void;
   toggleShowPlantLabel: () => void;
   baseLayerActivateMeasurement: () => void;
   baseLayerDeactivateMeasurement: () => void;
diff --git a/frontend/src/features/map_planning/store/TrackedMapStore.ts b/frontend/src/features/map_planning/store/TrackedMapStore.ts
index 666663ac8..4e0f6d59e 100644
--- a/frontend/src/features/map_planning/store/TrackedMapStore.ts
+++ b/frontend/src/features/map_planning/store/TrackedMapStore.ts
@@ -21,25 +21,6 @@ export const createTrackedMapSlice: StateCreator<
     undo: () => undo(set, get),
     redo: () => redo(set, get),
     __applyRemoteAction: (action: Action<unknown, unknown>) => applyAction(action, set, get),
-    setSingleNodeInTransformer: (node: Node) => {
-      get().transformer?.current?.nodes([node]);
-    },
-    addNodeToTransformer: (node: Node) => {
-      const currentNodes = get().transformer.current?.nodes() ?? [];
-      if (!currentNodes.includes(node)) {
-        get().transformer?.current?.nodes([...currentNodes, node]);
-      }
-    },
-    removeNodeFromTransformer: (node: Node) => {
-      const currentNodes = get().transformer.current?.nodes() ?? [];
-      const nodeToRemove = currentNodes.indexOf(node);
-
-      if (nodeToRemove !== -1) {
-        const newNodes = currentNodes.slice();
-        newNodes.splice(nodeToRemove, 1);
-        get().transformer.current?.nodes(newNodes);
-      }
-    },
     initPlantLayer: (plants: PlantingDto[]) => {
       set((state) => ({
         ...state,