This commit is contained in:
Ismail Ali
2025-06-26 22:55:26 +02:00
parent 8b3280da0a
commit 137839da98
15 changed files with 3604 additions and 44 deletions

View File

@@ -6,6 +6,6 @@ NEXT_PUBLIC_USE_MOCK_BACKEND_LOOP_START=false
NEXT_PUBLIC_EXPORT_STATIC=false
NEXT_PUBLIC_USE_CGI=false
# App-Versionsnummer
NEXT_PUBLIC_APP_VERSION=1.6.451
NEXT_PUBLIC_APP_VERSION=1.6.482
NEXT_PUBLIC_CPL_MODE=json # json (Entwicklungsumgebung) oder jsSimulatedProd (CPL ->CGI-Interface-Simulator) oder production (CPL-> CGI-Interface Platzhalter)

View File

@@ -5,5 +5,5 @@ NEXT_PUBLIC_CPL_API_PATH=/CPL
NEXT_PUBLIC_EXPORT_STATIC=true
NEXT_PUBLIC_USE_CGI=true
# App-Versionsnummer
NEXT_PUBLIC_APP_VERSION=1.6.451
NEXT_PUBLIC_APP_VERSION=1.6.482
NEXT_PUBLIC_CPL_MODE=production

6
.eslintrc.json Normal file
View File

@@ -0,0 +1,6 @@
{
"extends": [
"next/core-web-vitals",
"next/typescript"
]
}

View File

@@ -1,6 +1,7 @@
#!/bin/sh
echo "🔄 Version wird automatisch erhöht (bumpVersion.ts)..."
npx husky add .husky/pre-commit "npm run check"
# 1. Version erhöhen
npx ts-node scripts/bumpVersion.ts || exit 1

View File

@@ -1,3 +1,303 @@
## [1.6.482] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.481] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.480] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.479] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.478] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.477] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.476] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.475] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.474] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.473] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.472] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.470] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.469] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.468] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.467] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.466] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.465] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.464] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.463] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.462] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.461] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.460] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.459] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.458] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.457] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.456] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.455] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.454] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.453] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.452] 2025-06-26
- feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
---
## [1.6.451] 2025-06-26
- feat: zeige die neuesten 20 Meldungen in Last20MessagesTable

View File

@@ -1,4 +1,9 @@
"use client";
type AnalogInput = {
id: number;
label: string;
unit: string;
};
import React, { useEffect } from "react";
import { Line } from "react-chartjs-2";
import { getColor } from "@/utils/colors";
@@ -38,7 +43,7 @@ export default function AnalogInputsChart({
}) {
const selectedInput = useSelector(
(state: RootState) => state.selectedAnalogInput
);
) as unknown as AnalogInput | null;
const dispatch = useDispatch<AppDispatch>();
const { data } = useSelector(

View File

@@ -1,16 +1,5 @@
"use client"; // /components/main/analogInputs/AnalogInputsTable.tsx
export type AnalogInput = {
id: number;
value: number;
label: string;
unit?: string; // Make unit optional if it may not exist
offset: number;
factor: number;
loggerInterval: number;
weighting: number;
};
import type { AnalogInput } from "@/types/analogInput";
import React, { useEffect } from "react";
import { useDispatch, useSelector } from "react-redux";
import { RootState, AppDispatch } from "@/redux/store";

View File

@@ -3,7 +3,7 @@ import React, { useState, useEffect, useRef, useMemo } from "react";
import { useSelector } from "react-redux";
import KueModal from "./modals/SettingsModalWrapper";
import "bootstrap-icons/font/bootstrap-icons.css"; // Import Bootstrap Icons
import { Kue705FOProps } from "../../../../types/components/Kue705FOProps";
import { Kue705FOProps } from "../../../../types/Kue705FOProps";
import ChartSwitcher from "./Charts/ChartSwitcher";
//-------Redux Toolkit--------
import { RootState } from "../../../../redux/store";

View File

@@ -20,7 +20,7 @@
"AE 8"
],
"win_analogInputsOffset": [
10.99,
10.988,
0,
0,
0,
@@ -30,7 +30,7 @@
0
],
"win_analogInputsFactor": [
11.993,
11.988,
1,
1,
1,
@@ -40,7 +40,7 @@
1
],
"win_analogInputsUnits": [
"mA",
"V",
"V",
"V",
"V",
@@ -50,7 +50,7 @@
"mA"
],
"win_analogInputsLoggerIntervall": [
8,
7,
10,
10,
10,

3230
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
{
"name": "cpl-v4",
"version": "1.6.451",
"version": "1.6.482",
"private": true,
"scripts": {
"dev": "next dev",
@@ -8,6 +8,8 @@
"build": "npm run clean && cross-env EXPORT_STATIC=true next build",
"postbuild": "copy LICENSE_ICONIFY.txt out\\LICENSE_ICONIFY.txt",
"start": "next start",
"typecheck": "tsc --noEmit",
"check": "npm run lint && npm run typecheck",
"lint": "next lint",
"test": "jest",
"prepare": "husky install",
@@ -67,6 +69,8 @@
"@types/testing-library__react": "^10.2.0",
"cross-env": "^7.0.3",
"cypress": "^14.0.0",
"eslint": "8.57.1",
"eslint-config-next": "15.3.4",
"husky": "^8.0.0",
"identity-obj-proxy": "^3.0.0",
"jest": "^29.7.0",

View File

@@ -1,15 +1,6 @@
// Redux Slice: redux/slices/analogInputsSlice.ts
import { createSlice, PayloadAction, createAsyncThunk } from "@reduxjs/toolkit";
export interface AnalogInput {
id: number | null;
value: number | null;
label: string;
uW: boolean;
uG: boolean;
oW: boolean;
oG: boolean;
}
import type { AnalogInput } from "@/types/analogInput";
export interface AnalogInputsState {
[key: string]: AnalogInput;

View File

@@ -1,22 +1,41 @@
{
"compilerOptions": {
"target": "esnext",
"module": "esnext", // Wichtig: modernes Modul-System
"moduleResolution": "node", // Damit Aliase zuverlässig aufgelöst werden
"target": "es2020",
"module": "esnext",
"moduleResolution": "node",
"jsx": "preserve",
// 🧠 Strict Mode aktiviert alle strengen Prüfungen
"strict": true,
"noImplicitAny": true,
"strictNullChecks": true,
"strictFunctionTypes": true,
"strictBindCallApply": true,
"alwaysStrict": true,
// 🧼 Weitere gute Optionen
"forceConsistentCasingInFileNames": true,
"noFallthroughCasesInSwitch": true,
// 🔧 Build-Verhalten
"noEmit": true,
"incremental": true,
"isolatedModules": true,
"skipLibCheck": true,
// 📦 Module/Import
"esModuleInterop": true,
"resolveJsonModule": true,
"isolatedModules": true,
"allowSyntheticDefaultImports": true,
"noEmit": true,
"skipLibCheck": true,
"types": ["cypress", "node"],
"lib": ["dom", "dom.iterable", "esnext"],
"allowJs": true,
"incremental": true,
// 👉 Wichtig: Basis & Pfade setzen
// 🌐 IDE-Typen
"types": ["cypress", "node"],
// 📚 Unterstützte Bibliotheken
"lib": ["dom", "dom.iterable", "es2020"],
// ✨ Pfade/Aliase
"baseUrl": ".",
"paths": {
"@/*": ["./*"],
@@ -32,7 +51,7 @@
".", // Projekt-Root
"**/*.ts",
"**/*.tsx",
"types/global.d.ts" // falls du globale Typen nutzt
"types/global.d.ts"
],
"exclude": ["node_modules", ".next", "out"]

19
types/analogInput.ts Normal file
View File

@@ -0,0 +1,19 @@
// types/analogInput.ts
export interface AnalogInput {
id: number;
label: string;
unit?: string;
value: number;
// Schwellenwerte (Statusflags)
isUnderWarning?: boolean;
isUnderLimit?: boolean;
isOverWarning?: boolean;
isOverLimit?: boolean;
// Erweiterbar für spätere Charts
offset?: number;
factor?: number;
loggerInterval?: number;
weighting?: number;
}