From 1363445388ac9d8ca8233c33858c0a42fa240521 Mon Sep 17 00:00:00 2001 From: ISA Date: Fri, 2 May 2025 07:57:22 +0200 Subject: [PATCH] =?UTF-8?q?refactor:=20Modal-=20und=20Widget-Komponenten?= =?UTF-8?q?=20umbenannt=20f=C3=BCr=20bessere=20Lesbarkeit=20und=20Trennung?= =?UTF-8?q?=20von=20Seite=20und=20UI-Logik?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SERVICE/digitaleAusgaengeMockData.js | 2 +- ...alOutputs.tsx => DigitalOutputsWidget.tsx} | 4 +-- ...utputModal.tsx => DigitalOutputsModal.tsx} | 27 +++++++------------ config/webVersion.ts | 2 +- pages/digitalOutputs.tsx | 6 ++--- 5 files changed, 16 insertions(+), 25 deletions(-) rename components/main/einausgaenge/{DigitalOutputs.tsx => DigitalOutputsWidget.tsx} (96%) rename components/main/einausgaenge/modals/{OutputModal.tsx => DigitalOutputsModal.tsx} (83%) diff --git a/apiMockData/SERVICE/digitaleAusgaengeMockData.js b/apiMockData/SERVICE/digitaleAusgaengeMockData.js index ddb9b9b..5b00803 100644 --- a/apiMockData/SERVICE/digitaleAusgaengeMockData.js +++ b/apiMockData/SERVICE/digitaleAusgaengeMockData.js @@ -1,2 +1,2 @@ -win_da_state = [1, 0, 1, 0]; +win_da_state = [0, 0, 1, 0]; win_da_bezeichnung = ["Ausgang1", "Ausgang2", "Ausgang3", "Ausgang4"]; diff --git a/components/main/einausgaenge/DigitalOutputs.tsx b/components/main/einausgaenge/DigitalOutputsWidget.tsx similarity index 96% rename from components/main/einausgaenge/DigitalOutputs.tsx rename to components/main/einausgaenge/DigitalOutputsWidget.tsx index 3508d43..1a9a14d 100644 --- a/components/main/einausgaenge/DigitalOutputs.tsx +++ b/components/main/einausgaenge/DigitalOutputsWidget.tsx @@ -1,5 +1,5 @@ "use client"; -// /components/main/einausgaenge/DigitalOutputs.tsx +// /components/main/einausgaenge/DigitalOutputsWidget.tsx import React from "react"; import { useSelector, useDispatch } from "react-redux"; import { RootState, AppDispatch } from "../../../redux/store"; @@ -9,7 +9,7 @@ import outputIcon from "@iconify/icons-mdi/output"; import switchIcon from "@iconify/icons-ion/switch"; import { setDigitalOutputs } from "../../../redux/slices/digitalOutputsSlice"; -export default function DigitalOutputs({ openOutputModal }) { +export default function DigitalOutputsWidget({ openOutputModal }) { const dispatch = useDispatch(); const digitalOutputs = useSelector( (state: RootState) => state.digitalOutputsSlice.outputs diff --git a/components/main/einausgaenge/modals/OutputModal.tsx b/components/main/einausgaenge/modals/DigitalOutputsModal.tsx similarity index 83% rename from components/main/einausgaenge/modals/OutputModal.tsx rename to components/main/einausgaenge/modals/DigitalOutputsModal.tsx index bd3a66d..dbd0f6f 100644 --- a/components/main/einausgaenge/modals/OutputModal.tsx +++ b/components/main/einausgaenge/modals/DigitalOutputsModal.tsx @@ -1,9 +1,9 @@ -"use client"; // /components/main/einausgaenge/modals/OutputModal.tsx +"use client"; // /components/main/einausgaenge/modals/DigitalOutputsModal.tsx import React, { useState, useEffect } from "react"; import { useSelector } from "react-redux"; import { RootState } from "../../../../redux/store"; -export default function OutputModal({ +export default function DigitalOutputsModal({ selectedOutput, closeOutputModal, isOpen, @@ -39,7 +39,9 @@ export default function OutputModal({ setErrorMsg(""); const updatedOutputs = allOutputs.map((output) => - output.id === selectedOutput.id ? { ...output, label, status } : output + output.id === selectedOutput.id + ? { ...output, label: label.trim(), status } + : output ); try { @@ -53,7 +55,10 @@ export default function OutputModal({ const err = await res.json(); setErrorMsg(err?.error || "Fehler beim Speichern."); } else { - console.log("✅ Änderungen gespeichert"); + console.log( + "✅ Status & Label gespeichert für Ausgang", + selectedOutput.id + ); closeOutputModal(); } } catch (err) { @@ -93,20 +98,6 @@ export default function OutputModal({ -
- - setTimer(parseInt(e.target.value))} - className="w-full border border-gray-300 rounded px-3 py-2" - placeholder="z. B. 5 für 5 Sekunden" - /> -
- {errorMsg &&

{errorMsg}

}
diff --git a/config/webVersion.ts b/config/webVersion.ts index 997a161..7544093 100644 --- a/config/webVersion.ts +++ b/config/webVersion.ts @@ -6,5 +6,5 @@ 2: Patch oder Hotfix (Bugfixes oder kleine Änderungen). */ -const webVersion = "1.6.335"; +const webVersion = "1.6.336"; export default webVersion; diff --git a/pages/digitalOutputs.tsx b/pages/digitalOutputs.tsx index 73deb99..97a7e80 100644 --- a/pages/digitalOutputs.tsx +++ b/pages/digitalOutputs.tsx @@ -3,12 +3,12 @@ import React, { useEffect, useState } from "react"; import { useDispatch, useSelector } from "react-redux"; import { AppDispatch, RootState } from "../redux/store"; -import OutputModal from "../components/main/einausgaenge/modals/OutputModal"; +import DigitalOutputsModal from "../components/main/einausgaenge/modals/DigitalOutputsModal"; import { fetchDigitaleEingaengeThunk } from "../redux/thunks/fetchDigitaleEingaengeThunk"; import { fetchDigitalOutputsThunk } from "../redux/thunks/fetchDigitalOutputsThunk"; -import DigitalOutputs from "../components/main/einausgaenge/DigitalOutputs"; +import DigitalOutputs from "../components/main/einausgaenge/DigitalOutputsWidget"; const EinAusgaenge: React.FC = () => { const dispatch = useDispatch(); @@ -50,7 +50,7 @@ const EinAusgaenge: React.FC = () => {
{/* ✅ Modal aktiv einbinden */} -