2.11.1 (2026-05-18)
- ci: switch to actions/upload-pages-artifact for GitHub Pages (c222d06)
2.11.0 (2026-05-18)
- add port ordering algorithm to minimize crossings (143a7a7)
- display origin-destination matrix (403b23b)
- display origin-destination matrix (09a43cd)
- Drag drop reroute multi sections (#633) (0f9e567)
- editor-main-view: add asymmetric trainrun filter (6335012)
- editor-main-view: add asymmetry arrow filter (d31174d)
- editor-main-view: add backward travel time filter (e7f7cee)
- editor-main-view: display backward travel time (9775e66)
- editor-main-view: introduce asymmetry arrow (c820912)
- integrate new port ordering into UI (#635) (87cf7cb)
- models: add helpers to Port and Transition (a395aed)
- perlenkette: add asymmetry support (f8cace1)
- services: add asymmetry support to propagateTrainrunSectionTime() (37c1ee5)
- traffic-side: add traffic side configuration in editor properties (0287cc7)
- traffic-side: update netzgrafik dto (efca965)
- traffic-side: update traffic side in views (336c4bc)
- view: add symmetry switches to section tab in trainrun dialog (6a0cdff)
- view: hide note borders when no mouse over (7609754)
- 260 feature request align selected nodes all at once (#390) (af03ac9)
- 334 bug archived read mode allows to move nodes but not persisted (#336) (6275ae1)
- 346 bug importing 3rd party json misses detecting non stop transitions (#347) (9d71b4a)
- 350 bug delete node or trainrunsections cause low performance (#351) (72f8599)
- Add checks to ensure the trainrun section remains valid in edge cases. (#793) (b62bb93)
- Add extra check for MultiNodeMoving trainrun section (#769) (5466655)
- add missing event emitter to node service when duplicating node (d855e65)
- add missing source arrival in TrainrunSectionViewObject.generateKey() (8fad923)
- adding strict null checks for app/data-structures directory (#657) (b5e3dbb)
- address XSS vulnerability with note text (27ba35c)
- aemit operations for position transformation service (#400) (a7dae9e)
- After pusblishing the netzgrafik-editor under the host of OpenRailAssocation there should no longer the old github url in the repo. (#737) (c3997e6)
- Bug
saveSvgAsPngexports incorrectly when Windows display scaling ≠ 100% fixed (#563) (6b0dfe8) - build broken! (#371) (04f9a2f)
- changed filtering oder and add cull for notes (#429) (b863cda)
- check strict null from temporary config file instead of package.json (3fce925)
- check was missing - the filtering should only be reset when a filter is active and the filtering is not temporary switched off (#451) (1551417)
- Check/correct missing transition after combine two trainruns (#767) (5a5e766)
- Clicking in the background in the Pearl view triggers stop editing (#566) (6a9de5c)
- compute leftToRight per trainrun in Streckengrafik (#749) (f8469fa)
- compute OD matrix for a full day (#922) (6939bdd)
- compute OD matrix for a full day (#922) (6939bdd)
- compute OD matrix for a full day (#922) (f6e5f7e)
- correct connections->transfers naming for O/D matrix (#365) (454c201)
- CSV base data export (#343) (2d75f2d)
- documentation for 3rd party import (#367) (53ee469)
- drop duplicate frequency in TrainrunSectionViewObject.generateKey() (233b0f1)
- drop extraneous "browser" directory in dist/ (abd6127)
- drop favicon from standalone index.html (d25f281)
- emit single operation in setTimeStructureToTrainrunSections() (7d85bee)
- emit trainrun create after creating its sections when duplicating (58d202e)
- emit trainrun create after creating its sections when duplicating (31115a9)
- ensure both trainruns have endNodes at "pin" (#862) (766463c)
- Ensure the SVG container uses the full - space (#612) (616b8d2)
- Entering a negative value causes incorrect departure/arrival times (#780) (85fce12)
- Firefox rendering issue fixed – styling slightly changed (#548) (d939b84)
- fix metadata operation (232f2a1)
- fix O/D Matrix for trainrun 0 (#337) (28a6d3a)
- fix traffic side in editor view (6ac83d6)
- fix trains going back in OD matrix (#395) (173986c)
- for downwards propagation the translation key was wrong (#630) (46c293c)
- Graphical Timetable (Streckengrafik) – Section Track Estimator Not Working for Train with direction changes (#614) (a623d3f)
- handle potential null values in app/view/themes directory (1dfb0ac)
- Highlight entire trainrun when hovering a trainrun section line (#534) (7785dea)
- i18n: fix missing symmetry translation identifier (04982f9)
- i18n: zoom out german typo (158555f)
- if the ctrl + mouse wheel lets scale the netzgrafik or multi-selected nodes (local scale) (#376) (de55afe)
- If there is in the data a epsilon issue, we just remove it at latest point to ensure the export and rendering looks good (#622) (6e81f56)
- implemented in such a way the ux expert proposed (#991) (0cc1c9d)
- import 3rd party performance (#373) (5b0ecdc)
- improve guard initializeWithCurrentNote when note is not yet available (37a8852)
- Incorrect Handling of One-Way Train Runs in Track Data Assignment (#518) (844d351)
- issue fixed (#380) (0bbff36)
- issue fixed and two other methods refactored to same code structure as the getTrainrunFrequency method (f60e928)
- issue fixed and two other methods refactored to same code structure as the getTrainrunFrequency method (#383) (e864528)
- Issue fixed. Styling is now in scss no longer in the typescript (#627) (93c0d27)
- issue_template: url in pr, issue and bug report template (0be456d)
- json-files: missing asymmetry, port-ordering and traffic-side migrations (7d94c0a)
- just in case the update is faster then the deletion (close window) (35d79c2)
- Lock symbol (svg) background rendering issue pearls view (#704) (8c766e1)
- Mouse cursor issue fixed (#662) (4ca8377)
- multi-nodes scaling ctrl + mouse wheel (#386) (f393f4a)
- Multiply filter change event (signal) triggers when filter panel gets shown (#610) (177e0ab)
- Odd times for freq > 60 will be italic rendering in the trainrun-section-card.component (#865) (15ebe4a)
- One way train run arrows are drawn outside of lines when moving node (#591) (ef671ff)
- operation: emit trainrun update on time propagation (01d40b8)
- Performance - only render trainrunSection and transition element - which are required (#444) (4d2ba01)
- performance issue fixed (part 2) (#354) (c8eb613)
- performance opt / refactored (#356) (f939df6)
- Perlenkette Connection Time display precision fixed (#863) (9bc89e4)
- perlenkette: do not display asymmetry arrow when trainrun is one-way (23fdd95)
- Problem fixed and refactored some part. This refactoring fixes a… (#594) (9acf684)
- problem solved - design addapted to the left / right side-bar (#639) (30fb09a)
- Release-please no with Trusted Publisher NPM (#728) (42978ce)
- remove undoService.pushCurrentVersion - call … (#445) (8ba733d)
- Reported issue fixed due of wrong halteZeit (stopping time logic) (#949) (758dfd4)
- Reported minus/plus button issue resolved (#864) (5eed8d2)
- reset main view after netzgrafikDto import (c0e2d02)
- Reset state (subject) when closing the Editor/..View (#647) (fda7342)
- Resource deletion when node gets deleted (#523) (5d15e60)
- revert the order change (emit only at the very end) (b8c7612)
- Roadmap link (#512) (27e98ea)
- Scale netzgrafik does not include notes (#616) (240471b)
- Select all nodes/notes with
ctrl + ano longer ignores active filters (#766) (8684f4d) - service: fix travelTimeOffset for asymmetric trainruns (7d35c86)
- service: temporary fix for symmetry reset (c54de5d)
- Simplified third-party JSON import (no port alignment/path precalculation required) (#341) (d7d1776)
- simplify OD matrices processing (performance) (7d18cd5)
- simplify OD matrices processing (performance) (e9d2e55)
- spin-buttons issue resolved (#996) (2a1da54)
- streckengrafik: add missing translation key (1fd41e5)
- streckengrafik: bottom options overflow (1cdf83f)
- streckengrafik: correct arrival time for right-to-left ONE_WAY trains (#786) (#787) (6f48b7d)
- streckengrafik: fix turnaround time for asymmetric trainruns (f9eb470)
- streckengrafik: use proper node for ONE_WAY extremity detection (#764) (402b5ae)
- Swap the O/D data (#856) (049fdb5)
- synch prosemirror-model versions in ngx-editor dependencies (c4cf303)
- The migration of the third-party import was not correctly performed during the one-way feature implementation. (#620) (70b46e3)
- The performance gets improved for big Netzgrafik (#427) (bb00a4d)
- There was an issue introduced during refactoring. The problem occurs when the user drags too quickly from left to right: the mouse suddenly leaves the dialog window and loses the drag content. This causes the dragging to get stuck and results in poor UX. (#642) (5408a97)
- toggle temporay disable (#455) (bdede87)
- traffic side: fix unwanted overwrite (f12257d)
- Trainrun deselection leaves single trainrun section marked/selected (#682) (86f7120)
- trainrun: allows to change direction of cyclic one way trainrun (a32cacc)
- trainrun: validate that travel time respect timePrecision (b777e25)
- typo 'Serivce' -> 'Service' (#392) (1d6b811)
- update some npm packages (#511) (b5caa7d)
- updateTrainrunCategory, updateTrainrunTimeCategory and … (#457) (ee9a0b7)
- use getDto() in NGE events instead of models (5b59eee)
- use HashLocationStrategy for standalone mode (e8a155a)
- view: apply border-radius change only to checkbox and not radio buttons (161e035)
- view: hide one-way arrow around hidden nodes (731f030)
- warn users when having unsymmetric times (#359) (9923567)
- We have to close the sbb-editor-node-detail-view before deleting the node. Just change the call-order. (f0f6d7b)
- While combining two trainruns the first trainrun will "survive" and the second one will be deleted. If the trainrun which will be deleted consists of more than one trainrun segment (connected paths) the reported issue will be generated. (Test added) (c55388b)
2.10.19 (2026-03-11)
2.10.18 (2026-03-03)
- adding strict null checks for app/data-structures directory (#657) (b5e3dbb)
- Odd times for freq > 60 will be italic rendering in the trainrun-section-card.component (#865) (15ebe4a)
- Perlenkette Connection Time display precision fixed (#863) (9bc89e4)
- Reported minus/plus button issue resolved (#864) (5eed8d2)
2.10.17 (2026-02-25)
2.10.16 (2026-02-24)
- i18n: zoom out german typo (158555f)
- trainrun: allows to change direction of cyclic one way trainrun (a32cacc)
- trainrun: validate that travel time respect timePrecision (b777e25)
2.10.15 (2026-02-17)
- synch prosemirror-model versions in ngx-editor dependencies (c4cf303)
2.10.14 (2026-01-30)
2.10.13 (2026-01-27)
2.10.12 (2026-01-27)
- Add extra check for MultiNodeMoving trainrun section (#769) (5466655)
- streckengrafik: correct arrival time for right-to-left ONE_WAY trains (#786) (#787) (6f48b7d)
- streckengrafik: use proper node for ONE_WAY extremity detection (#764) (402b5ae)
2.10.11 (2026-01-20)
- Check/correct missing transition after combine two trainruns (#767) (5a5e766)
- issue_template: url in pr, issue and bug report template (0be456d)
- Select all nodes/notes with
ctrl + ano longer ignores active filters (#766) (8684f4d)
2.10.10 (2026-01-19)
- streckengrafik: add missing translation key (1fd41e5)
- streckengrafik: bottom options overflow (1cdf83f)
2.10.9 (2026-01-19)
- compute leftToRight per trainrun in Streckengrafik (#749) (f8469fa)
- emit single operation in setTimeStructureToTrainrunSections() (7d85bee)
2.10.8 (2026-01-08)
- After pusblishing the netzgrafik-editor under the host of OpenRailAssocation there should no longer the old github url in the repo. (#737) (c3997e6)
2.10.7 (2026-01-07)
- emit trainrun create after creating its sections when duplicating (58d202e)
2.10.6 (2026-01-06)
2.10.5 (2026-01-05)
- add missing source arrival in TrainrunSectionViewObject.generateKey() (8fad923)
- drop duplicate frequency in TrainrunSectionViewObject.generateKey() (233b0f1)
2.10.4 (2025-12-22)
- check strict null from temporary config file instead of package.json (3fce925)
- handle potential null values in app/view/themes directory (1dfb0ac)
2.10.3 (2025-12-21)
- Lock symbol (svg) background rendering issue pearls view (#704) (8c766e1)
- use getDto() in NGE events instead of models (5b59eee)
2.10.2 (2025-12-11)
2.10.1 (2025-12-05)
2.10.0 (2025-11-27)
- Display origin-destination matrix (403b23b, 09a43cd)
- Simplified OD matrix processing for better performance (7d18cd5, e9d2e55)
- O/D Matrix container now dynamic (full width/height) (#611)
- O/D Matrix variant switching corrected (#632)
- Dark mode O/D Matrix tooltip CSS fixed (#626)
- Removed epsilon issues in data to ensure clean export and rendering (#622)
- Ensure SVG container uses full space (#612)
- Section Track Estimator now works for trains with direction changes (#614)
- Performance optimisation implemented (#553)
- Sidebar design adapted for left/right layout (#639)
- Highlight entire trainrun when hovering a trainrun section line (#534)
- Scale netzgrafik does not include notes (#616)
- Correct handling of one-way train runs in track data assignment (#517) (844d351)
- Combine two one-way train runs no longer leads to mixed-up directions (#525)
- One-way train run arrows alignment fixed when moving nodes (#591) (ef671ff)
- Incorrect train shown in one-way subview after deselection/reselection fixed (#593)
- Wrong origin-destination matrix calculation for one-way train runs fixed (#520)
- Replace ⋮ by ⟷ for one-way components (#555)
- Migration of third-party import corrected during one-way feature implementation (#620)
- Refactoring fixes for one-way train run handling (#594)
- Clicking the background now correctly stops editing (#565, #566)
- Missing German/French/English translation for backward propagation fixed (#629)
- Wrong translation key for downward propagation fixed (#630)
- Fixed
saveSvgAsPngexport issue when Windows display scaling ≠ 100% (#563) - Export features (PNG/SVG) corrected (#470)
- Firefox rendering issue fixed – styling slightly adjusted (#548)
- Added missing event emitter to node service when duplicating a node (d855e65)
- Resource deletion when node is removed (#523)
- Close node detail view before deleting node (f0f6d7b)
- Drag-and-drop reroute for multiple sections (#633)
- Split/Fuse trainrun sections with node / remove node (#638)
- Reset state when closing the Editor view (#647)
- Fixed deletion error when removing node from side view (#544)
- Fixed deletion order issue (close window faster than update) (35d79c2)
- Improved guard
initializeWithCurrentNotewhen note is not yet available (37a8852) - Styling moved from TypeScript to SCSS (#627)
- Updated roadmap link (#512)
- Updated npm packages (#511)
- Fixed drag issue when moving too quickly across dialog window (#642)
- Reverted order change (emit only at the very end) (b8c7612)
- Multiple filter change events no longer trigger when filter panel is shown (#610)
- Long trainrun names no longer break close button in dialog (#646)
2.9.29 (2025-05-13)
2.9.28 (2025-05-12)
2.9.27 (2025-05-12)
- check was missing - the filtering should only be reset when a filter is active and the filtering is not temporary switched off (#451) (1551417)
2.9.26 (2025-05-09)
- Performance - only render trainrunSection and transition element - which are required (#444) (4d2ba01)
2.9.25 (2025-05-08)
2.9.24 (2025-04-09)
- reset main view after netzgrafikDto import (c0e2d02)
2.9.23 (2025-04-03)
2.9.22 (2025-04-01)
2.9.21 (2025-01-28)
2.9.20 (2025-01-15)
2.9.19 (2024-12-18)
2.9.18 (2024-12-17)
2.9.17 (2024-12-12)
2.9.16 (2024-12-12)
- issue fixed and two other methods refactored to same code structure as the getTrainrunFrequency method (#383) (e864528)
2.9.15 (2024-12-11)
2.9.14 (2024-12-11)
- if the ctrl + mouse wheel lets scale the netzgrafik or multi-selected nodes (local scale) (#376) (de55afe)
2.9.13 (2024-12-10)
2.9.12 (2024-12-05)
2.9.11 (2024-11-28)
- correct connections->transfers naming for O/D matrix (#365) (454c201)
- documentation for 3rd party import (#367) (53ee469)
2.9.10 (2024-11-22)
2.9.9 (2024-11-14)
2.9.8 (2024-11-14)
2.9.7 (2024-11-14)
2.9.6 (2024-11-13)
2.9.5 (2024-11-11)
- CSV base data export (#343) (2d75f2d)
- Simplified third-party JSON import (no port alignment/path precalculation required) (#341) (d7d1776)
2.9.4 (2024-11-06)
2.9.3 (2024-11-05)
2.9.2 (2024-11-04)
- While combining two trainruns the first trainrun will "survive" and the second one will be deleted. If the trainrun which will be deleted consists of more than one trainrun segment (connected paths) the reported issue will be generated. (Test added) (c55388b)
2.9.1 (2024-10-28)
2.9.0 (2024-10-24)
- migrate originDestination connectionPenalty to netzgrafikDto (#314) (ce3f90d)
- optimize originDestination graph (#316) (83895a1)
2.8.0 (2024-10-10)
2.7.17 (2024-10-03)
2.7.16 (2024-09-26)
2.7.15 (2024-09-19)
- doc: Split_Combine_Trainruns.md grammar (#293) (ae64d44)
- doc: STANDALONE.md grammar (#292) (22f4f87)
- doc: USERMANUAL.md spelling grammar punctuation (#294) (6a402c8)
2.7.14 (2024-09-16)
- doc: DATA_MODEL_JSON.md, spelling (#276) (f504f0d)
- doc: Graphic_Timetable.md, spelling, grammar (#277) (853b80f)
2.7.13 (2024-08-29)
2.7.12 (2024-08-29)
- Technical improvement: replace hard-coded styles with CSS class for sbb-icon-sidebar-container. This improves maintainability and reusability of styles. (#273) (b505d03)
2.7.11 (2024-08-28)
2.7.10 (2024-08-26)
2.7.9 (2024-08-26)
2.7.8 (2024-08-24)
2.7.7 (2024-08-20)
- Long email addresses cause incorrect formatting of the left sidebar change history (#243) (dd0fda5)
- Viewport Not Centering on Bounding Box When Reloading/Opening Netzgrafik (#244) (9e5e2fd)
- Translation is not working for variant when archived (#249) (e313580)
- The menubar has a visual "thick" separator in between variant/project name and the filter symbol (#252) (3496d0a)
2.7.6 (2024-08-19)
2.7.5 (2024-08-08)
- add AppComponent inputs/outputs (#166) (9d2c6ee)
- introduce standalone mode (#162) (cc4c56b)
- pr-template: add pull request template (89b4d61)
- publish package on NPM (#172) (1692d55)
- align theme color picker with buttons (#198) (e3a8798)
- disable environment header in standalone mode (#230) (e25887e)
- disable links section in node sidebar (2554094)
- disable notes in filter sidebar in standalone mode (#211) (df335ef)
- enable output hashing by default (#174) (8ac67b8)
- issue I. + typo (#72) (deb7cd1)
- use light theme for sbb-esta (#176) (89aaae0)
2.7.4 (2024-08-08)
2.7.3 (2024-08-06)
- add AppComponent inputs/outputs (#166) (9d2c6ee)
- introduce standalone mode (#162) (cc4c56b)
- pr-template: add pull request template (89b4d61)
- publish package on NPM (#172) (1692d55)
- align theme color picker with buttons (#198) (e3a8798)
- disable links section in node sidebar (2554094)
- disable notes in filter sidebar in standalone mode (#211) (df335ef)
- enable output hashing by default (#174) (8ac67b8)
- issue I. + typo (#72) (deb7cd1)
- use light theme for sbb-esta (#176) (89aaae0)
2.7.2 (2024-08-06)
2.7.2 (2024-08-06)
- add AppComponent inputs/outputs (#166) (9d2c6ee)
- introduce standalone mode (#162) (cc4c56b)
- pr-template: add pull request template (89b4d61)
- publish package on NPM (#172) (1692d55)
- align theme color picker with buttons (#198) (e3a8798)
- enable output hashing by default (#174) (8ac67b8)
- issue I. + typo (#72) (deb7cd1)
- use light theme for sbb-esta (#176) (89aaae0)
- release 2.5.0 (00e6836)
2.6.0 (2024-07-22)
- add AppComponent inputs/outputs (#166) (9d2c6ee)
- introduce standalone mode (#162) (cc4c56b)
- publish package on NPM (#172) (1692d55)
2.5.0 (2024-04-22)
- pr-template: add pull request template (89b4d61)
- release 2.5.0 (00e6836)
2.5.0 (2024-04-22)
- pr-template: add pull request template (89b4d61)
- release 2.5.0 (00e6836)
2.5.0 (2024-04-15)
- pr-template: add pull request template (89b4d61)