Rechts dient nur zum Verschieben von Knoten bzw. der Ansicht; das
contextmenu-Event wird in der Capture-Phase gestoppt, bevor Drawflow
den Lösch-Button am selektierten Knoten einblendet.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Drop- und Klickkoordinaten über das transformierte precanvas-Rect
umrechnen (berücksichtigt transform-origin in der Canvas-Mitte)
- Greif-Offset in Canvas-Einheiten abziehen, damit der Knoten in jeder
Zoomstufe unter dem Mauszeiger erscheint
- Rechtsklick auf freien Canvas verschiebt jetzt die gesamte Ansicht
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Versionsnummer neben "Workflow Editor" in Klammern und kleinerer Schrift
- tasklist.app-version per Maven-Resource-Filtering (@project.version@) gefüllt
- @Value-Injection in MainView; Anzeige nur bei real gefülltem Wert
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- "Eigenen Typ anlegen" als blauer Primary-Button (wie Export-Button)
- Button und Trenner fest zwischen Standard- und Custom-Typen platziert
- Header vereinfacht: Untertitel entfernt, Titel umbruchfrei
- Start/Abschluss-Beschreibungen ohne "virtuell/nicht exportiert"
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Workflow-Validierung verschärft: jedes Element muss alle vorhandenen Ein- und Ausgänge verbunden haben (Start nur Ausgang, Abschluss nur Eingang)
- Unvollständig verdrahtete Elemente werden im Editor live hellrot markiert
- Fix: tsconfig ignoreDeprecations zurück auf "5.0" (TS 5.7.3 lehnt "6.0" ab -> Vite-Build brach ab)
- MainView: Beschriftungen auf "Workflow" angepasst
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Neue Aufgabentypen: Text-/Zahlen-Liste (fields) und Checkbox-Liste (entries); Export/Import um fields und choices erweitert
- Typ-spezifische Element-Einstellungen in MongoDB (ElementSettingsService/-Document, ElementCollectionProperties)
- Virtuelle Start-/Abschluss-Elemente (nur zur Darstellung, nicht exportiert); keine Einstellungen; Export erzwingt vorhandenes und verdrahtetes Start- und Abschluss-Element
- Node-Editor: nur eine Verbindung je Ausgang (Start des Drags unterbunden)
- Script-Block korrekt aus dem App-JSON gefiltert (Typ 0)
- Fixes: tsconfig ignoreDeprecations 6.0; JDT-Null-Analyse (Method-Referenzen zu Lambdas)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Feste Element-Typen fortlaufend nummeriert (1–8), Script = 0;
Alt-Daten-Mapping im Importer entfernt
- Benutzerdefinierte Typen ab Nummer 1000 über Dialog anlegen
(Basis-Typ-Auswahl + Datenerfassung) und wieder löschen
- Eigene Typen vollständig in MongoDB speichern und beim Start laden
(CustomTypeDocument/-Repository/-Service, eindeutige Typnummer)
- Palette: Trenner und Markierung für benutzerdefinierte Typen,
Papierkorb-Icon zum Löschen, robusterer Textumbruch
- Verbindungslinien im Canvas selektierbar und per Entf löschbar
(korrekter Drawflow-Klassenselektor node_in_node-, Näherungsauswahl)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Verbindungslinien meiden nach Möglichkeit andere Kacheln. Kreuzt die direkte
Kurve eine Kachel (bzw. bei Rückwärtskanten die Quell-/Zielkachel), wird die
Linie über eine freie Spalte seitlich an den Kacheln vorbei umgeleitet und mit
abgerundeten Ecken gezeichnet. Treffererkennung tastet den tatsächlichen
SVG-Pfad ab; die Führung wird bei nodeMoved dynamisch neu berechnet.
- node-editor.js: vertikale Port-Ausrichtung (Ausgang unten -> Eingang oben)
- script-editor.js: horizontale Port-Ausrichtung (Ausgang rechts -> Eingang links)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Neuer "Script"-Blocktyp, dessen Logik (Konstanten, Variablen, Vergleiche,
Wenn/Dann, UND/ODER/NICHT, Ergebnis/Ausgang) in einem eigenen Drawflow-Canvas
zusammengesteckt wird.
- ScriptEditor-Komponente + script-editor.js (eigener Logik-Canvas mit
horizontaler Kurvenführung, Raster-Snapping, Drag&Drop der Operatoren)
- Script-Dialog in MainView: verbundene Eingangselemente werden als Variablen
angeboten, Anzahl der Ausgänge des Knotens richtet sich nach den Ausgang-Knoten
- Knoten-Aktivierung (Zahnrad/Doppelklick) über NodeActivatedEvent und
setNodeOutputs im NodeEditor
- script-Feld in TaskDto + Export des Logik-Graphen im TaskListExporter
- Verbindungen werden beim Wiederöffnen des Dialogs zuverlässig neu gezeichnet
(Neuberechnung nach Stabilisierung des Dialog-Layouts)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>