12 KiB
12 KiB
📄 CHANGELOG
Alle bedeutenden Änderungen an diesem Projekt werden in dieser Datei dokumentiert.
[1.1.100] – 2025-05-19
Added
- ✅ Vollständige Redux-Dokumentation erstellt:
- Alle aktiven Redux-Slices als
.md-Dateien dokumentiert - Struktur:
docs/frontend/redux/slices/ - API-Funktionen in
docs/frontend/redux/api/fromWebService/
- Alle aktiven Redux-Slices als
- 🌐 Neue Markdown-Dateien u. a. für:
poiTypesSlice,urlParameterSlice,zoomTriggerSlicegisStationsStaticSlice,gisSystemStaticSlice, ...polylineLayerVisibleSlice,polylineContextMenuSlice, ...
- Jede Datei enthält:
- Initialzustand, Aktionen, Beispielverwendung, Pfadreferenz
Changed
README.md: Hinweis auf neue Dokumentationsstruktur ergänztCHANGELOG.md: Neuer Abschnitt für Version 1.1.100 eingefügt
[1.1.98] – 2025-05-19
Changed
- Setup-Dateien (
node-v20.12.1-x64.msi,nssm.exe,ChromeStandaloneSetup64.exe) aus dem Repository entfernt - Stattdessen Verlinkung in
README.mdzu SharePoint-Ordner für interne Tool-Downloads eingefügt - Projektstruktur aufgeräumt – Installationsdateien blähen Git-Verlauf nicht mehr auf
- Hinweis in
README.mdzu Projektorganisation, Tool-Voraussetzungen und Linkstrategie ergänzt
[1.1.97] – 2025-05-19
Changed
- Recoil vollständig aus dem Projekt entfernt:
_app.js:RecoilRootentferntpackage.json:recoildeinstalliertpackage-lock.json: Recoil-Abhängigkeiten entfernt
- Projekt verwendet ausschließlich Redux mit
@reduxjs/toolkit README.mdaktualisiert:- Hinweis entfernt, dass Recoil verwendet wird
- Abschnitt hinzugefügt, warum Redux bevorzugt wird (Übersicht, SSR-Fähigkeit bei Next.js)
DataSheet.mdüberarbeitet: Recoil entfernt, Redux-Einsatz dokumentiertWiki.mdals veraltet markiert, da alle Dokumentationen in/docs/konsolidiert sind
Removed
recoilauspackage.jsonundnode_modules- Erwähnungen von Recoil in Projekt-Dokumentation
[1.1.95] – 2025-05-19
Changed
- Letzter Recoil-Hook in
useMarkerLayers.jsentfernt:useRecoilValue(mapLayersState)ersetzt durchuseSelector(selectMapLayersState)
- Redux-Selektor
selectMapLayersState()ausmapLayersSlice.jsverwendet - Projekt ist jetzt vollständig Recoil-frei und nur noch Redux-basiert
[1.1.94] – 2025-05-19
Changed
useCreateAndSetDevices.jsvollständig von Recoil auf Redux umgestellt:useRecoilState(polylineEventsDisabledState)entfernt- Stattdessen Zugriff über
useSelector(state => state.polylineEventsDisabled.disabled)
- Redux-Slice
polylineEventsDisabledSlice.jsfinal integriert - Rückgabe von
setPolylineEventsDisabledentfernt, da Zustand nun global über Redux verwaltet wird
[1.1.93] – 2025-05-19
Changed
- Letzte Recoil-Reste entfernt:
AddPoiModalWindow.jsnutztdispatch(incrementTrigger())stattuseSetRecoilState(...)
- Vollständige Migration zu Redux abgeschlossen für
poiReadFromDbTriggerSlice mapLayersVisibilityinAddPoiModalWindow.jskorrekt viauseSelector(...)aus Redux gelesen
Removed
- Recoil vollständig aus Projekt entfernt
[1.1.91] – 2025-05-19
Changed
- Recoil-Atoms
selectedPoiStateundcurrentPoiStatevollständig durch Redux ersetzt - Neue Redux-Slices:
selectedPoiSlice– verwaltet aktuell ausgewählten POIcurrentPoiSlice– verwaltet POI zur Anzeige im Bearbeitungsdialog
PoiUpdateModal.jsumgestellt aufuseSelector(...)für beide Zuständestore.jsumselectedPoiReducerundcurrentPoiReducererweitert
Removed
useRecoilValue(currentPoiState)unduseRecoilValue(selectedPoiState)ausPoiUpdateModal.js
[1.1.90] – 2025-05-19
Changed
- Redux-Slice
urlParameterSlice: Standardwerte fürmapIdunduserIdentferntmapIdunduserIdstarten jetzt mitnullstatt"10"/"484"
[1.1.89] – 2025-05-19
Changed
- Recoil-Atoms
mapIdStateunduserIdStateentfernt - Stattdessen: Umstellung auf Redux-Slice
urlParameterSlice MapComponent.jsverwendet jetzt:useSelector(...)fürmapIdunduserIddispatch(setMapId(...)),dispatch(setUserId(...))inuseEffect
- Redux-Store erweitert um
urlParameterReducer
Removed
- Recoil-Import
useRecoilState(mapIdState / userIdState)entfernt ausMapComponent.js
[1.1.88] – 2025-05-19
Changed
- Recoil-Atom
zoomTriggerStatevollständig durch ReduxzoomTriggerSliceersetzt - Betroffene Komponenten:
MapComponent.js– liestzoomTriggeraus ReduxuseSelector(...)DataSheet.js– verwendetdispatch(incrementZoomTrigger())bei Icon-Klick
- Redux-Store erweitert um
zoomTriggerReducer
Removed
- Entfernt:
useRecoilState(zoomTriggerState)inDataSheet.js - Entfernt:
useRecoilValue(zoomTriggerState)inMapComponent.js
[1.1.86] – 2025-05-17
Changed
- Recoil-State
selectedAreaStatevollständig entfernt - Umstellung auf Redux:
selectedAreaSlice.js→ zentrale Steuerung des Bereichs (Area)DataSheet.js– setztsetSelectedArea(...)über ReduxMapComponent.js– liestselectedAreaaus Redux und zentriert Karte
[1.1.85] – 2025-05-17
Changed
- Recoil-Atom
readPoiMarkersStorevollständig durch Redux-Slice ersetzt - Betroffene Komponenten:
index.js– verwendetuseSelectorunddispatch(setPoiMarkers(...))stattuseRecoilStateAddPOIModal.js– entfernt Recoil, nutzt jetzt ReduxsetPoiMarkers(...)(optional)
- Redux-Store aktualisiert:
- Slice
readPoiMarkersStoreSliceeingebunden
- Slice
Added
- Redux-Slice
readPoiMarkersStoreSlice.jsmit Actions:setPoiMarkers(data)clearPoiMarkers()
[1.1.84] – 2025-05-17
Changed
- Recoil-Atom
polylineEventsDisabledStateentfernt - Migration zu Redux-Slice
polylineEventsDisabledSliceabgeschlossen - Betroffene Komponenten und Funktionen:
MapComponent.js–useSelector(state => state.polylineEventsDisabled.disabled)verwendetinitializeMap.js– Callback-Funktion(value) => dispatch(setDisabled(value))übergebenuseCreateAndSetDevices.js– Verwendung vonuseRecoilStateentfernt (ToDo: an Redux anpassen)
Added
- Neue Redux Actions:
setDisabled,toggleDisabledinpolylineEventsDisabledSlice.js
ToDo
useCreateAndSetDevices.jsnutzt nochuseRecoilState, muss ggf. refaktoriert werden
[1.1.83] – 2025-05-17
Changed
poiReadFromDbTriggerAtomdurch ReduxpoiReadFromDbTriggerSliceersetzt- Alle Komponenten migriert:
index.js– nutzt jetztuseSelectorfür TriggerAddPoiModalWindow.js– verwendetdispatch(incrementTrigger())AddPOIModal.js– entfernt Recoil, setzt Trigger mit ReduxMapComponent.js– liest Trigger-Zustand via Redux statt Recoil
Removed
- Entfernt: alle
useSetRecoilState(...)unduseRecoilValue(...)fürpoiReadFromDbTriggerAtom
Added
- Neue Redux Actions:
incrementTrigger,resetTriggerinpoiReadFromDbTriggerSlice.js
[1.1.82] – 2025-05-17
Changed
- Recoil-Zustand
poiLayerVisibleStatevollständig durch ReduxpoiLayerVisibleSliceersetzt - Betroffene Komponenten:
useMapComponentState.js– Zugriff viauseSelectorstattuseRecoilValueMapComponent.js– Zugriff aufpoiLayerVisibleüber ReduxDataSheet.js–useRecoilStateentfernt,dispatch(setVisible(...))integriert
- Redux-Store (
store.js) erweitert umpoiLayerVisibleReducer
Removed
- Recoil-Atom
poiLayerVisibleStateentfernt
Added
- Neue Redux Actions:
setVisible,toggleVisibleinpoiLayerVisibleSlice.js
[1.1.78] – 2025-05-17
Changed
fetchGisStatusStations.js:- feste URL-Variable
NEXT_PUBLIC_SERVER_URLentfernt - stattdessen dynamische URL-Berechnung per
NEXT_PUBLIC_API_PORT_MODE - Zugriff auf Webservice
GisStationsStatusDistrictfunktioniert jetzt ohne.env.local
- feste URL-Variable
Added
- Dokumentation ergänzt:
docs/frontend/services/api/fetchGisStatusStations.md
[1.1.77] – 2025-05-17
Changed
pages/api/[...path].js:- feste Umgebungsvariable
NEXT_PUBLIC_SERVER_URLentfernt - dynamische Proxy-Zieladresse per
NEXT_PUBLIC_API_PORT_MODEdefiniert (dev vs. prod) - Konfiguration via
http-proxy-middlewarevereinfacht
- feste Umgebungsvariable
Added
- Dokumentation erstellt:
docs/server/pages/api/apiProxy.md
[1.1.76] – 2025-05-17
Changed
config.jsangepasst:- Entfernt:
NEXT_PUBLIC_SERVER_URLaus.env.local - Dynamische Berechnung von
serverURLanhandwindow.location+NEXT_PUBLIC_API_PORT_MODE - Zugriff auf Webservices funktioniert jetzt automatisch abhängig von Entwicklungs-/Produktionsumgebung
- Entfernt:
Added
- Dokumentation ergänzt:
docs/frontend/config/config.md
[1.1.75] – 2025-05-17
Changed
setupPolylines.jsundcreateAndSetDevices.jsüberarbeitet:- Entfernt:
NEXT_PUBLIC_BASE_URLaus.env.local - Dynamische Linkerstellung basierend auf
window.location+NEXT_PUBLIC_API_PORT_MODE - Kontextsensitive Menüeinträge öffnen jetzt
/talas5/cpl.aspx?...unabhängig von der Umgebung
- Entfernt:
Added
- Dokumentation hinzugefügt:
docs/frontend/utils/polylines/setupPolylines.mddocs/frontend/utils/devices/createAndSetDevices.md
[1.1.74] – 2025-05-17
Added
- Übersichtsdokumentation für Webservices erstellt:
docs/frontend/redux/api/fromWebService/README.md- beschreibt Zweck, Parameterstruktur, und alle dokumentierten API-Dateien
[1.1.73] – 2025-05-17
Changed
fetchGisStationsStatusDistrict.jsvereinheitlicht:- zentrale API-Port-Logik über
.env.local(NEXT_PUBLIC_API_PORT_MODE) - URL-Parameter
idMapundidUserwerden dynamisch aus?m=...&u=...extrahiert - Webservice-Aufruf wird korrekt über
GisStationsStatusDistrictaufgebaut
- zentrale API-Port-Logik über
Added
- Dokumentation ergänzt:
docs/frontend/redux/api/fromWebService/fetchGisStationsStatusDistrict.md
[1.1.72] – 2025-05-17
Changed
fetchGisStationsStaticDistrict.jsaktualisiert:- zentrale Steuerung der API-Port-Logik über
.env.local(NEXT_PUBLIC_API_PORT_MODE) - Übergabe von
idMapundidUserüber URL-Parameter?m=...&u=... - Webservice-Endpunkt dynamisch zusammengesetzt
- zentrale Steuerung der API-Port-Logik über
Added
- Dokumentation erstellt:
docs/frontend/redux/api/fromWebService/fetchGisStationsStaticDistrict.md
[1.1.71] – 2025-05-17
Changed
fetchGisStationsStatic.jsaktualisiert:- zentrale Steuerung der API-Port-Logik über
.env.local→NEXT_PUBLIC_API_PORT_MODE - Map-ID (
idMap) wird direkt aus der URL gelesen (?m=...) - Fehlerbehandlung und Content-Type-Prüfung eingebaut
- zentrale Steuerung der API-Port-Logik über
Added
- Dokumentation hinzugefügt:
docs/frontend/redux/api/fromWebService/fetchGisStationsStatic.md
[1.1.70] – 2025-05-17
Changed
fetchGisSystemStatic.jsumgestellt auf zentrale Port-Logik überNEXT_PUBLIC_API_PORT_MODEfetchGisStationsMeasurements.jsebenfalls angepasst mit gleicher URL-/Port-Strategie- Beide Funktionen lesen
idMapundidUsernun direkt aus der URL (?m=...&u=...)
Added
- Neue Dokumentation:
docs/frontend/redux/api/fromWebService/fetchGisSystemStatic.mddocs/frontend/redux/api/fromWebService/fetchGisStationsMeasurements.md
- Struktur-/Pfadhinweis jeweils am Ende der Markdown-Dateien ergänzt
[1.1.68] – 2025-05-15
Changed
- Verweis auf
NEXT_PUBLIC_API_PORT_3000entfernt - API-URL wird nun dynamisch per
window.location.hostname:3000gesetzt .env.localbereinigt: keine API-URL mehr nötig- Betroffene Dateien:
useFetchPoiData.jspoiTypesSlice.js
[1.1.65] – 2025-05-15
Changed
idMapundidUserwerden nicht mehr aus.env.localgelesen, sondern ausschließlich über die URL übergeben (z. B. von TALAS.web).- Entfernt: Fallback-Variablen
NEXT_PUBLIC_DEFAULT_ID_MAPundNEXT_PUBLIC_DEFAULT_ID_USER. - Dokumentation in
docs/redux/api/fromWebService.mdentsprechend angepasst.
[1.1.64] – 2025-05-15
Added
- Erste Dokumentation der Webservice-Endpunkte in
docs/api/webservices.md. - Projektstruktur in
docs/vorbereitet für spätere Erweiterung.