@eclipse-glsp/client 2.3.0-next.322 → 2.3.0-next.366
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/css/change-bounds.css +40 -0
- package/css/command-palette.css +6 -2
- package/{lib/base/focus/index.d.ts → css/debug.css} +11 -4
- package/css/ghost-element.css +7 -0
- package/css/glsp-sprotty.css +42 -9
- package/css/grid.css +27 -0
- package/css/helper-lines.css +3 -3
- package/css/key-shortcut.css +6 -2
- package/css/keyboard-tool-palette.css +3 -7
- package/css/keyboard.css +3 -1
- package/css/tool-palette.css +30 -22
- package/lib/base/action-dispatcher.d.ts +15 -3
- package/lib/base/action-dispatcher.d.ts.map +1 -1
- package/lib/base/action-dispatcher.js +35 -1
- package/lib/base/action-dispatcher.js.map +1 -1
- package/lib/base/action-handler-registry.d.ts +4 -9
- package/lib/base/action-handler-registry.d.ts.map +1 -1
- package/lib/base/action-handler-registry.js +21 -31
- package/lib/base/action-handler-registry.js.map +1 -1
- package/lib/base/args-feature.js.map +1 -1
- package/lib/base/auto-complete/auto-complete-widget.d.ts +1 -1
- package/lib/base/auto-complete/auto-complete-widget.js +2 -2
- package/lib/base/auto-complete/auto-complete-widget.js.map +1 -1
- package/lib/base/auto-complete/base-autocomplete-palette.d.ts +4 -3
- package/lib/base/auto-complete/base-autocomplete-palette.d.ts.map +1 -1
- package/lib/base/auto-complete/base-autocomplete-palette.js +4 -3
- package/lib/base/auto-complete/base-autocomplete-palette.js.map +1 -1
- package/lib/base/auto-complete/validation-decorator.js.map +1 -1
- package/lib/base/command-stack.d.ts +8 -16
- package/lib/base/command-stack.d.ts.map +1 -1
- package/lib/base/command-stack.js +20 -18
- package/lib/base/command-stack.js.map +1 -1
- package/lib/base/default.module.d.ts.map +1 -1
- package/lib/base/default.module.js +23 -9
- package/lib/base/default.module.js.map +1 -1
- package/lib/base/drag-aware-mouse-listener.d.ts +9 -3
- package/lib/base/drag-aware-mouse-listener.d.ts.map +1 -1
- package/lib/base/drag-aware-mouse-listener.js +24 -3
- package/lib/base/drag-aware-mouse-listener.js.map +1 -1
- package/lib/base/editor-context-service.d.ts +44 -3
- package/lib/base/editor-context-service.d.ts.map +1 -1
- package/lib/base/editor-context-service.js +36 -13
- package/lib/base/editor-context-service.js.map +1 -1
- package/lib/base/feedback/css-feedback.d.ts +11 -2
- package/lib/base/feedback/css-feedback.d.ts.map +1 -1
- package/lib/base/feedback/css-feedback.js +14 -2
- package/lib/base/feedback/css-feedback.js.map +1 -1
- package/lib/base/feedback/feedback-action-dispatcher-default.d.ts +34 -0
- package/lib/base/feedback/feedback-action-dispatcher-default.d.ts.map +1 -0
- package/lib/base/feedback/feedback-action-dispatcher-default.js +120 -0
- package/lib/base/feedback/feedback-action-dispatcher-default.js.map +1 -0
- package/lib/base/feedback/feedback-action-dispatcher.d.ts +14 -17
- package/lib/base/feedback/feedback-action-dispatcher.d.ts.map +1 -1
- package/lib/base/feedback/feedback-action-dispatcher.js +11 -87
- package/lib/base/feedback/feedback-action-dispatcher.js.map +1 -1
- package/lib/base/feedback/feedback-emitter.d.ts +74 -0
- package/lib/base/feedback/feedback-emitter.d.ts.map +1 -0
- package/lib/base/feedback/feedback-emitter.js +127 -0
- package/lib/base/feedback/feedback-emitter.js.map +1 -0
- package/lib/base/focus/focus-tracker.js.map +1 -1
- package/lib/base/model/diagram-loader.d.ts +12 -7
- package/lib/base/model/diagram-loader.d.ts.map +1 -1
- package/lib/base/model/diagram-loader.js +16 -18
- package/lib/base/model/diagram-loader.js.map +1 -1
- package/lib/base/model/glsp-model-source.js.map +1 -1
- package/lib/base/model/model-initialization-constraint.js.map +1 -1
- package/lib/base/model/model-registry.d.ts +1 -1
- package/lib/base/model/model-registry.d.ts.map +1 -1
- package/lib/base/model/model-registry.js +4 -2
- package/lib/base/model/model-registry.js.map +1 -1
- package/lib/base/mouse-position-tracker.d.ts +25 -0
- package/lib/base/mouse-position-tracker.d.ts.map +1 -0
- package/lib/base/mouse-position-tracker.js +61 -0
- package/lib/base/mouse-position-tracker.js.map +1 -0
- package/lib/base/selection-clearing-mouse-listener.js.map +1 -1
- package/lib/base/selection-service.d.ts +10 -8
- package/lib/base/selection-service.d.ts.map +1 -1
- package/lib/base/selection-service.js +10 -13
- package/lib/base/selection-service.js.map +1 -1
- package/lib/base/tool-manager/tool-manager.d.ts +15 -9
- package/lib/base/tool-manager/tool-manager.d.ts.map +1 -1
- package/lib/base/tool-manager/tool-manager.js +35 -23
- package/lib/base/tool-manager/tool-manager.js.map +1 -1
- package/lib/base/{model/index.d.ts → ui-extension/ui-extension-registry.d.ts} +9 -6
- package/lib/base/ui-extension/ui-extension-registry.d.ts.map +1 -0
- package/lib/base/ui-extension/ui-extension-registry.js +51 -0
- package/lib/base/ui-extension/ui-extension-registry.js.map +1 -0
- package/lib/base/ui-extension/ui-extension.d.ts +39 -0
- package/lib/base/ui-extension/ui-extension.d.ts.map +1 -0
- package/lib/base/ui-extension/ui-extension.js +120 -0
- package/lib/base/ui-extension/ui-extension.js.map +1 -0
- package/lib/base/view/key-tool.d.ts +21 -2
- package/lib/base/view/key-tool.d.ts.map +1 -1
- package/lib/base/view/key-tool.js +21 -3
- package/lib/base/view/key-tool.js.map +1 -1
- package/lib/base/view/mouse-tool.d.ts +20 -3
- package/lib/base/view/mouse-tool.d.ts.map +1 -1
- package/lib/base/view/mouse-tool.js +9 -5
- package/lib/base/view/mouse-tool.js.map +1 -1
- package/lib/base/view/view-registry.js.map +1 -1
- package/lib/default-modules.d.ts +4 -3
- package/lib/default-modules.d.ts.map +1 -1
- package/lib/default-modules.js +7 -5
- package/lib/default-modules.js.map +1 -1
- package/lib/features/accessibility/accessibility-module.d.ts +1 -1
- package/lib/features/accessibility/accessibility-module.d.ts.map +1 -1
- package/lib/features/accessibility/accessibility-module.js +10 -8
- package/lib/features/accessibility/accessibility-module.js.map +1 -1
- package/lib/features/accessibility/edge-autocomplete/edge-autocomplete-palette.js.map +1 -1
- package/lib/features/accessibility/edge-autocomplete/edge-autocomplete-tool.js.map +1 -1
- package/lib/features/accessibility/element-navigation/diagram-navigation-tool.js.map +1 -1
- package/lib/features/accessibility/element-navigation/element-navigation-module.d.ts +6 -4
- package/lib/features/accessibility/element-navigation/element-navigation-module.d.ts.map +1 -1
- package/lib/features/accessibility/element-navigation/element-navigation-module.js +8 -8
- package/lib/features/accessibility/element-navigation/element-navigation-module.js.map +1 -1
- package/lib/features/accessibility/element-navigation/left-right-top-bottom-navigator.js.map +1 -1
- package/lib/features/accessibility/element-navigation/local-element-navigator.d.ts +4 -4
- package/lib/features/accessibility/element-navigation/local-element-navigator.d.ts.map +1 -1
- package/lib/features/accessibility/element-navigation/local-element-navigator.js +1 -1
- package/lib/features/accessibility/element-navigation/local-element-navigator.js.map +1 -1
- package/lib/features/accessibility/element-navigation/position-navigator.js.map +1 -1
- package/lib/features/accessibility/focus-tracker/focus-tracker-module.d.ts +6 -4
- package/lib/features/accessibility/focus-tracker/focus-tracker-module.d.ts.map +1 -1
- package/lib/features/accessibility/focus-tracker/focus-tracker-module.js +6 -6
- package/lib/features/accessibility/focus-tracker/focus-tracker-module.js.map +1 -1
- package/lib/features/accessibility/focus-tracker/focus-tracker-tool.js.map +1 -1
- package/lib/features/accessibility/global-keylistener-tool.js.map +1 -1
- package/lib/features/accessibility/key-shortcut/accessible-key-shortcut-tool.js.map +1 -1
- package/lib/features/accessibility/key-shortcut/accessible-key-shortcut.d.ts +4 -3
- package/lib/features/accessibility/key-shortcut/accessible-key-shortcut.d.ts.map +1 -1
- package/lib/features/accessibility/key-shortcut/accessible-key-shortcut.js +4 -3
- package/lib/features/accessibility/key-shortcut/accessible-key-shortcut.js.map +1 -1
- package/lib/features/accessibility/key-shortcut/{di.config.d.ts → shortcut-help-module.d.ts} +7 -5
- package/lib/features/accessibility/key-shortcut/shortcut-help-module.d.ts.map +1 -0
- package/lib/features/accessibility/key-shortcut/{di.config.js → shortcut-help-module.js} +6 -6
- package/lib/features/accessibility/key-shortcut/shortcut-help-module.js.map +1 -0
- package/lib/features/accessibility/keyboard-grid/keyboard-grid.d.ts +4 -3
- package/lib/features/accessibility/keyboard-grid/keyboard-grid.d.ts.map +1 -1
- package/lib/features/accessibility/keyboard-grid/keyboard-grid.js +5 -4
- package/lib/features/accessibility/keyboard-grid/keyboard-grid.js.map +1 -1
- package/lib/features/accessibility/keyboard-grid/keyboard-node-grid.js.map +1 -1
- package/lib/features/accessibility/keyboard-pointer/keyboard-pointer-listener.d.ts +1 -1
- package/lib/features/accessibility/keyboard-pointer/keyboard-pointer-listener.d.ts.map +1 -1
- package/lib/features/accessibility/keyboard-pointer/keyboard-pointer-listener.js +1 -1
- package/lib/features/accessibility/keyboard-pointer/keyboard-pointer-listener.js.map +1 -1
- package/lib/features/accessibility/keyboard-pointer/keyboard-pointer-module.d.ts +2 -2
- package/lib/features/accessibility/keyboard-pointer/keyboard-pointer-module.d.ts.map +1 -1
- package/lib/features/accessibility/keyboard-pointer/keyboard-pointer-module.js +8 -8
- package/lib/features/accessibility/keyboard-pointer/keyboard-pointer-module.js.map +1 -1
- package/lib/features/accessibility/keyboard-pointer/keyboard-pointer.d.ts +19 -3
- package/lib/features/accessibility/keyboard-pointer/keyboard-pointer.d.ts.map +1 -1
- package/lib/features/accessibility/keyboard-pointer/keyboard-pointer.js +7 -6
- package/lib/features/accessibility/keyboard-pointer/keyboard-pointer.js.map +1 -1
- package/lib/features/accessibility/keyboard-tool-palette/keyboard-tool-palette-module.d.ts +1 -1
- package/lib/features/accessibility/keyboard-tool-palette/keyboard-tool-palette-module.d.ts.map +1 -1
- package/lib/features/accessibility/keyboard-tool-palette/keyboard-tool-palette-module.js +2 -2
- package/lib/features/accessibility/keyboard-tool-palette/keyboard-tool-palette-module.js.map +1 -1
- package/lib/features/accessibility/keyboard-tool-palette/keyboard-tool-palette.d.ts +1 -1
- package/lib/features/accessibility/keyboard-tool-palette/keyboard-tool-palette.d.ts.map +1 -1
- package/lib/features/accessibility/keyboard-tool-palette/keyboard-tool-palette.js +22 -8
- package/lib/features/accessibility/keyboard-tool-palette/keyboard-tool-palette.js.map +1 -1
- package/lib/features/accessibility/move-zoom/move-handler.d.ts +5 -3
- package/lib/features/accessibility/move-zoom/move-handler.d.ts.map +1 -1
- package/lib/features/accessibility/move-zoom/move-handler.js +12 -6
- package/lib/features/accessibility/move-zoom/move-handler.js.map +1 -1
- package/lib/features/accessibility/move-zoom/move-zoom-module.d.ts +1 -1
- package/lib/features/accessibility/move-zoom/move-zoom-module.d.ts.map +1 -1
- package/lib/features/accessibility/move-zoom/move-zoom-module.js +2 -2
- package/lib/features/accessibility/move-zoom/move-zoom-module.js.map +1 -1
- package/lib/features/accessibility/move-zoom/zoom-handler.js.map +1 -1
- package/lib/features/accessibility/resize-key-tool/resize-key-handler.d.ts +7 -7
- package/lib/features/accessibility/resize-key-tool/resize-key-handler.d.ts.map +1 -1
- package/lib/features/accessibility/resize-key-tool/resize-key-handler.js +23 -11
- package/lib/features/accessibility/resize-key-tool/resize-key-handler.js.map +1 -1
- package/lib/features/accessibility/resize-key-tool/resize-key-module.d.ts +1 -1
- package/lib/features/accessibility/resize-key-tool/resize-key-module.d.ts.map +1 -1
- package/lib/features/accessibility/resize-key-tool/resize-key-module.js +2 -2
- package/lib/features/accessibility/resize-key-tool/resize-key-module.js.map +1 -1
- package/lib/features/accessibility/resize-key-tool/resize-key-tool.js.map +1 -1
- package/lib/features/accessibility/search/search-palette-module.d.ts +1 -1
- package/lib/features/accessibility/search/search-palette-module.d.ts.map +1 -1
- package/lib/features/accessibility/search/search-palette-module.js +2 -2
- package/lib/features/accessibility/search/search-palette-module.js.map +1 -1
- package/lib/features/accessibility/search/search-palette.js.map +1 -1
- package/lib/features/accessibility/search/search-tool.js.map +1 -1
- package/lib/features/accessibility/toast/toast-module.d.ts +6 -4
- package/lib/features/accessibility/toast/toast-module.d.ts.map +1 -1
- package/lib/features/accessibility/toast/toast-module.js +5 -5
- package/lib/features/accessibility/toast/toast-module.js.map +1 -1
- package/lib/features/accessibility/toast/toast-tool.d.ts +5 -4
- package/lib/features/accessibility/toast/toast-tool.d.ts.map +1 -1
- package/lib/features/accessibility/toast/toast-tool.js +4 -3
- package/lib/features/accessibility/toast/toast-tool.js.map +1 -1
- package/lib/features/accessibility/view-key-tools/deselect-key-tool.d.ts +2 -2
- package/lib/features/accessibility/view-key-tools/deselect-key-tool.d.ts.map +1 -1
- package/lib/features/accessibility/view-key-tools/deselect-key-tool.js +3 -3
- package/lib/features/accessibility/view-key-tools/deselect-key-tool.js.map +1 -1
- package/lib/features/accessibility/view-key-tools/movement-key-tool.d.ts +8 -7
- package/lib/features/accessibility/view-key-tools/movement-key-tool.d.ts.map +1 -1
- package/lib/features/accessibility/view-key-tools/movement-key-tool.js +27 -15
- package/lib/features/accessibility/view-key-tools/movement-key-tool.js.map +1 -1
- package/lib/features/accessibility/view-key-tools/view-key-tools-module.d.ts +1 -1
- package/lib/features/accessibility/view-key-tools/view-key-tools-module.d.ts.map +1 -1
- package/lib/features/accessibility/view-key-tools/view-key-tools-module.js +4 -2
- package/lib/features/accessibility/view-key-tools/view-key-tools-module.js.map +1 -1
- package/lib/features/accessibility/view-key-tools/zoom-key-tool.js.map +1 -1
- package/lib/features/bounds/bounds-module.d.ts +1 -1
- package/lib/features/bounds/bounds-module.d.ts.map +1 -1
- package/lib/features/bounds/bounds-module.js +4 -2
- package/lib/features/bounds/bounds-module.js.map +1 -1
- package/lib/features/bounds/freeform-layout.d.ts +17 -1
- package/lib/features/bounds/freeform-layout.d.ts.map +1 -1
- package/lib/features/bounds/freeform-layout.js +15 -6
- package/lib/features/bounds/freeform-layout.js.map +1 -1
- package/lib/features/bounds/glsp-hidden-bounds-updater.d.ts +5 -4
- package/lib/features/bounds/glsp-hidden-bounds-updater.d.ts.map +1 -1
- package/lib/features/bounds/glsp-hidden-bounds-updater.js +51 -39
- package/lib/features/bounds/glsp-hidden-bounds-updater.js.map +1 -1
- package/lib/features/bounds/hbox-layout.d.ts +18 -2
- package/lib/features/bounds/hbox-layout.d.ts.map +1 -1
- package/lib/features/bounds/hbox-layout.js +15 -6
- package/lib/features/bounds/hbox-layout.js.map +1 -1
- package/lib/features/bounds/layout-data.d.ts +27 -0
- package/lib/features/bounds/layout-data.d.ts.map +1 -0
- package/lib/features/bounds/layout-data.js +48 -0
- package/lib/features/bounds/layout-data.js.map +1 -0
- package/lib/features/bounds/layouter.js.map +1 -1
- package/lib/features/bounds/local-bounds.d.ts +3 -1
- package/lib/features/bounds/local-bounds.d.ts.map +1 -1
- package/lib/features/bounds/local-bounds.js +14 -0
- package/lib/features/bounds/local-bounds.js.map +1 -1
- package/lib/features/bounds/set-bounds-feedback-command.d.ts.map +1 -1
- package/lib/features/bounds/set-bounds-feedback-command.js +2 -2
- package/lib/features/bounds/set-bounds-feedback-command.js.map +1 -1
- package/lib/features/bounds/vbox-layout.d.ts +18 -2
- package/lib/features/bounds/vbox-layout.d.ts.map +1 -1
- package/lib/features/bounds/vbox-layout.js +15 -6
- package/lib/features/bounds/vbox-layout.js.map +1 -1
- package/lib/features/change-bounds/model.d.ts +35 -12
- package/lib/features/change-bounds/model.d.ts.map +1 -1
- package/lib/features/change-bounds/model.js +142 -15
- package/lib/features/change-bounds/model.js.map +1 -1
- package/lib/features/change-bounds/movement-restrictor.d.ts +20 -2
- package/lib/features/change-bounds/movement-restrictor.d.ts.map +1 -1
- package/lib/features/change-bounds/movement-restrictor.js +20 -29
- package/lib/features/change-bounds/movement-restrictor.js.map +1 -1
- package/lib/features/change-bounds/point-position-updater.d.ts +4 -1
- package/lib/features/change-bounds/point-position-updater.d.ts.map +1 -1
- package/lib/features/change-bounds/point-position-updater.js +8 -3
- package/lib/features/change-bounds/point-position-updater.js.map +1 -1
- package/lib/features/change-bounds/position-snapper.d.ts +4 -0
- package/lib/features/change-bounds/position-snapper.d.ts.map +1 -1
- package/lib/features/change-bounds/position-snapper.js +4 -0
- package/lib/features/change-bounds/position-snapper.js.map +1 -1
- package/lib/features/change-bounds/snap.d.ts +6 -21
- package/lib/features/change-bounds/snap.d.ts.map +1 -1
- package/lib/features/change-bounds/snap.js +5 -35
- package/lib/features/change-bounds/snap.js.map +1 -1
- package/lib/features/change-bounds/tracker.d.ts +32 -0
- package/lib/features/change-bounds/tracker.d.ts.map +1 -0
- package/lib/features/change-bounds/tracker.js +60 -0
- package/lib/features/change-bounds/tracker.js.map +1 -0
- package/lib/features/command-palette/command-palette-module.d.ts +1 -1
- package/lib/features/command-palette/command-palette-module.d.ts.map +1 -1
- package/lib/features/command-palette/command-palette-module.js +4 -3
- package/lib/features/command-palette/command-palette-module.js.map +1 -1
- package/{src/base/feedback/index.ts → lib/features/command-palette/command-palette.d.ts} +7 -7
- package/lib/features/command-palette/command-palette.d.ts.map +1 -0
- package/lib/features/command-palette/command-palette.js +47 -0
- package/lib/features/command-palette/command-palette.js.map +1 -0
- package/lib/features/command-palette/server-command-palette-provider.js.map +1 -1
- package/lib/features/context-menu/context-menu-module.d.ts +1 -1
- package/lib/features/context-menu/context-menu-module.d.ts.map +1 -1
- package/lib/features/context-menu/context-menu-module.js +2 -2
- package/lib/features/context-menu/context-menu-module.js.map +1 -1
- package/lib/features/context-menu/glsp-context-menu-mouse-listener.d.ts +1 -1
- package/lib/features/context-menu/glsp-context-menu-mouse-listener.js +2 -2
- package/lib/features/context-menu/glsp-context-menu-mouse-listener.js.map +1 -1
- package/lib/features/context-menu/server-context-menu-provider.js.map +1 -1
- package/lib/features/copy-paste/copy-paste-context-menu.js.map +1 -1
- package/lib/features/copy-paste/copy-paste-handler.js.map +1 -1
- package/lib/features/copy-paste/copy-paste-modules.d.ts +1 -1
- package/lib/features/copy-paste/copy-paste-modules.d.ts.map +1 -1
- package/lib/features/copy-paste/copy-paste-modules.js +6 -3
- package/lib/features/copy-paste/copy-paste-modules.js.map +1 -1
- package/lib/features/copy-paste/copy-paste-standalone.d.ts +1 -1
- package/lib/features/copy-paste/copy-paste-standalone.d.ts.map +1 -1
- package/lib/features/copy-paste/copy-paste-standalone.js +1 -4
- package/lib/features/copy-paste/copy-paste-standalone.js.map +1 -1
- package/lib/features/debug/debug-bounds-decorator.d.ts +39 -0
- package/lib/features/debug/debug-bounds-decorator.d.ts.map +1 -0
- package/lib/features/debug/debug-bounds-decorator.js +155 -0
- package/lib/features/debug/debug-bounds-decorator.js.map +1 -0
- package/lib/features/debug/debug-manager.d.ts +30 -0
- package/lib/features/debug/debug-manager.d.ts.map +1 -0
- package/lib/features/debug/debug-manager.js +74 -0
- package/lib/features/debug/debug-manager.js.map +1 -0
- package/lib/features/debug/debug-model.d.ts +37 -0
- package/lib/features/debug/debug-model.d.ts.map +1 -0
- package/lib/features/debug/debug-model.js +73 -0
- package/lib/features/debug/debug-model.js.map +1 -0
- package/lib/features/{accessibility/focus-tracker/index.d.ts → debug/debug-module.d.ts} +5 -4
- package/lib/features/debug/debug-module.d.ts.map +1 -0
- package/lib/features/debug/debug-module.js +31 -0
- package/lib/features/debug/debug-module.js.map +1 -0
- package/lib/features/decoration/decoration-module.d.ts +1 -1
- package/lib/features/decoration/decoration-module.d.ts.map +1 -1
- package/lib/features/decoration/decoration-module.js +2 -2
- package/lib/features/decoration/decoration-module.js.map +1 -1
- package/lib/features/decoration/decoration-placer.js.map +1 -1
- package/lib/features/element-template/add-template-element.js.map +1 -1
- package/lib/features/element-template/element-template-module.d.ts +1 -1
- package/lib/features/element-template/element-template-module.d.ts.map +1 -1
- package/lib/features/element-template/element-template-module.js +2 -2
- package/lib/features/element-template/element-template-module.js.map +1 -1
- package/lib/features/element-template/mouse-tracking-element-position-listener.d.ts +22 -19
- package/lib/features/element-template/mouse-tracking-element-position-listener.d.ts.map +1 -1
- package/lib/features/element-template/mouse-tracking-element-position-listener.js +53 -69
- package/lib/features/element-template/mouse-tracking-element-position-listener.js.map +1 -1
- package/lib/features/element-template/remove-template-element.js.map +1 -1
- package/lib/features/export/export-modules.d.ts +1 -1
- package/lib/features/export/export-modules.d.ts.map +1 -1
- package/lib/features/export/export-modules.js +3 -3
- package/lib/features/export/export-modules.js.map +1 -1
- package/lib/features/export/glsp-svg-exporter.d.ts +24 -2
- package/lib/features/export/glsp-svg-exporter.d.ts.map +1 -1
- package/lib/features/export/glsp-svg-exporter.js +75 -17
- package/lib/features/export/glsp-svg-exporter.js.map +1 -1
- package/lib/features/grid/grid-manager.d.ts +33 -0
- package/lib/features/grid/grid-manager.d.ts.map +1 -0
- package/lib/features/grid/grid-manager.js +76 -0
- package/lib/features/grid/grid-manager.js.map +1 -0
- package/lib/features/grid/grid-model.d.ts +37 -0
- package/lib/features/grid/grid-model.d.ts.map +1 -0
- package/lib/features/grid/grid-model.js +73 -0
- package/lib/features/grid/grid-model.js.map +1 -0
- package/lib/features/grid/grid-module.d.ts +19 -0
- package/lib/features/grid/grid-module.d.ts.map +1 -0
- package/lib/features/grid/grid-module.js +32 -0
- package/lib/features/grid/grid-module.js.map +1 -0
- package/lib/features/grid/grid-snapper.d.ts +45 -0
- package/lib/features/grid/grid-snapper.d.ts.map +1 -0
- package/lib/features/grid/grid-snapper.js +83 -0
- package/lib/features/grid/grid-snapper.js.map +1 -0
- package/lib/{base/feedback/index.d.ts → features/grid/grid-style.d.ts} +10 -7
- package/lib/features/grid/grid-style.d.ts.map +1 -0
- package/lib/features/grid/grid-style.js +28 -0
- package/lib/features/grid/grid-style.js.map +1 -0
- package/lib/{base/tool-manager/index.d.ts → features/grid/grid.d.ts} +4 -4
- package/lib/features/grid/grid.d.ts.map +1 -0
- package/lib/features/grid/grid.js +3 -0
- package/lib/features/grid/grid.js.map +1 -0
- package/lib/features/helper-lines/helper-line-feedback.d.ts +2 -2
- package/lib/features/helper-lines/helper-line-feedback.d.ts.map +1 -1
- package/lib/features/helper-lines/helper-line-feedback.js +46 -43
- package/lib/features/helper-lines/helper-line-feedback.js.map +1 -1
- package/lib/features/helper-lines/helper-line-manager-default.d.ts +22 -4
- package/lib/features/helper-lines/helper-line-manager-default.d.ts.map +1 -1
- package/lib/features/helper-lines/helper-line-manager-default.js +87 -17
- package/lib/features/helper-lines/helper-line-manager-default.js.map +1 -1
- package/lib/features/helper-lines/helper-line-manager.d.ts +10 -2
- package/lib/features/helper-lines/helper-line-manager.d.ts.map +1 -1
- package/lib/features/helper-lines/helper-line-module.d.ts +1 -1
- package/lib/features/helper-lines/helper-line-module.d.ts.map +1 -1
- package/lib/features/helper-lines/helper-line-module.js +2 -2
- package/lib/features/helper-lines/helper-line-module.js.map +1 -1
- package/lib/features/helper-lines/model.d.ts +4 -10
- package/lib/features/helper-lines/model.d.ts.map +1 -1
- package/lib/features/helper-lines/model.js +11 -29
- package/lib/features/helper-lines/model.js.map +1 -1
- package/lib/features/helper-lines/view.d.ts +2 -1
- package/lib/features/helper-lines/view.d.ts.map +1 -1
- package/lib/features/helper-lines/view.js +6 -7
- package/lib/features/helper-lines/view.js.map +1 -1
- package/lib/features/hints/model.d.ts +6 -2
- package/lib/features/hints/model.d.ts.map +1 -1
- package/lib/features/hints/model.js.map +1 -1
- package/lib/features/hints/type-hint-provider.d.ts +3 -0
- package/lib/features/hints/type-hint-provider.d.ts.map +1 -1
- package/lib/features/hints/type-hint-provider.js +10 -1
- package/lib/features/hints/type-hint-provider.js.map +1 -1
- package/lib/features/hints/type-hints-module.d.ts +1 -1
- package/lib/features/hints/type-hints-module.d.ts.map +1 -1
- package/lib/features/hints/type-hints-module.js +2 -2
- package/lib/features/hints/type-hints-module.js.map +1 -1
- package/lib/features/hover/hover-module.d.ts +1 -1
- package/lib/features/hover/hover-module.d.ts.map +1 -1
- package/lib/features/hover/hover-module.js +2 -2
- package/lib/features/hover/hover-module.js.map +1 -1
- package/lib/features/hover/hover.js.map +1 -1
- package/lib/features/label-edit/edit-label-validator.js.map +1 -1
- package/lib/features/label-edit/label-edit-module.d.ts +1 -1
- package/lib/features/label-edit/label-edit-module.d.ts.map +1 -1
- package/lib/features/label-edit/label-edit-module.js +2 -2
- package/lib/features/label-edit/label-edit-module.js.map +1 -1
- package/lib/{base/view/index.d.ts → features/label-edit-ui/label-edit-ui-module.d.ts} +4 -5
- package/lib/features/label-edit-ui/label-edit-ui-module.d.ts.map +1 -0
- package/lib/features/{reconnect/index.js → label-edit-ui/label-edit-ui-module.js} +11 -17
- package/lib/features/label-edit-ui/label-edit-ui-module.js.map +1 -0
- package/lib/{base/auto-complete/index.d.ts → features/label-edit-ui/label-edit-ui.d.ts} +7 -7
- package/lib/features/label-edit-ui/label-edit-ui.d.ts.map +1 -0
- package/lib/features/label-edit-ui/label-edit-ui.js +48 -0
- package/lib/features/label-edit-ui/label-edit-ui.js.map +1 -0
- package/lib/features/layout/layout-elements-action.d.ts +16 -1
- package/lib/features/layout/layout-elements-action.d.ts.map +1 -1
- package/lib/features/layout/layout-elements-action.js +8 -7
- package/lib/features/layout/layout-elements-action.js.map +1 -1
- package/lib/features/layout/layout-module.d.ts +1 -1
- package/lib/features/layout/layout-module.d.ts.map +1 -1
- package/lib/features/layout/layout-module.js +2 -2
- package/lib/features/layout/layout-module.js.map +1 -1
- package/lib/features/navigation/navigation-action-handler.d.ts +15 -0
- package/lib/features/navigation/navigation-action-handler.d.ts.map +1 -1
- package/lib/features/navigation/navigation-action-handler.js +2 -2
- package/lib/features/navigation/navigation-action-handler.js.map +1 -1
- package/lib/features/navigation/navigation-module.d.ts +1 -1
- package/lib/features/navigation/navigation-module.d.ts.map +1 -1
- package/lib/features/navigation/navigation-module.js +2 -2
- package/lib/features/navigation/navigation-module.js.map +1 -1
- package/lib/features/navigation/navigation-target-resolver.js.map +1 -1
- package/lib/features/reconnect/model.js.map +1 -1
- package/lib/features/routing/edge-router.d.ts +34 -0
- package/lib/features/routing/edge-router.d.ts.map +1 -0
- package/lib/features/routing/edge-router.js +153 -0
- package/lib/features/routing/edge-router.js.map +1 -0
- package/lib/features/routing/routing-module.d.ts +1 -1
- package/lib/features/routing/routing-module.d.ts.map +1 -1
- package/lib/features/routing/routing-module.js +6 -6
- package/lib/features/routing/routing-module.js.map +1 -1
- package/lib/features/save/save-keylistener.js.map +1 -1
- package/lib/features/save/save-module.d.ts +1 -1
- package/lib/features/save/save-module.d.ts.map +1 -1
- package/lib/features/save/save-module.js +2 -2
- package/lib/features/save/save-module.js.map +1 -1
- package/lib/features/select/select-module.d.ts +1 -1
- package/lib/features/select/select-module.d.ts.map +1 -1
- package/lib/features/select/select-module.js +3 -3
- package/lib/features/select/select-module.js.map +1 -1
- package/lib/features/select/select-mouse-listener.d.ts +8 -4
- package/lib/features/select/select-mouse-listener.d.ts.map +1 -1
- package/lib/features/select/select-mouse-listener.js +31 -3
- package/lib/features/select/select-mouse-listener.js.map +1 -1
- package/lib/features/source-model-watcher/source-model-changed-action-handler.js.map +1 -1
- package/lib/features/source-model-watcher/source-model-watcher-module.d.ts +1 -1
- package/lib/features/source-model-watcher/source-model-watcher-module.d.ts.map +1 -1
- package/lib/features/source-model-watcher/source-model-watcher-module.js +2 -2
- package/lib/features/source-model-watcher/source-model-watcher-module.js.map +1 -1
- package/lib/features/status/status-module.d.ts +1 -1
- package/lib/features/status/status-module.d.ts.map +1 -1
- package/lib/features/status/status-module.js +2 -2
- package/lib/features/status/status-module.js.map +1 -1
- package/lib/features/status/status-overlay.d.ts +18 -2
- package/lib/features/status/status-overlay.d.ts.map +1 -1
- package/lib/features/status/status-overlay.js +4 -3
- package/lib/features/status/status-overlay.js.map +1 -1
- package/lib/features/svg-metadata/metadata-placer.js.map +1 -1
- package/lib/features/svg-metadata/svg-metadata-module.d.ts +1 -1
- package/lib/features/svg-metadata/svg-metadata-module.d.ts.map +1 -1
- package/lib/features/svg-metadata/svg-metadata-module.js +2 -2
- package/lib/features/svg-metadata/svg-metadata-module.js.map +1 -1
- package/lib/features/tool-palette/tool-palette-module.d.ts +1 -1
- package/lib/features/tool-palette/tool-palette-module.d.ts.map +1 -1
- package/lib/features/tool-palette/tool-palette-module.js +2 -2
- package/lib/features/tool-palette/tool-palette-module.js.map +1 -1
- package/lib/features/tool-palette/tool-palette.d.ts +11 -3
- package/lib/features/tool-palette/tool-palette.d.ts.map +1 -1
- package/lib/features/tool-palette/tool-palette.js +83 -4
- package/lib/features/tool-palette/tool-palette.js.map +1 -1
- package/lib/features/tools/base-tools.d.ts +46 -18
- package/lib/features/tools/base-tools.d.ts.map +1 -1
- package/lib/features/tools/base-tools.js +10 -23
- package/lib/features/tools/base-tools.js.map +1 -1
- package/lib/features/tools/change-bounds/change-bounds-manager.d.ts +50 -0
- package/lib/features/tools/change-bounds/change-bounds-manager.d.ts.map +1 -0
- package/lib/features/tools/change-bounds/change-bounds-manager.js +170 -0
- package/lib/features/tools/change-bounds/change-bounds-manager.js.map +1 -0
- package/lib/features/tools/change-bounds/change-bounds-tool-feedback.d.ts +7 -35
- package/lib/features/tools/change-bounds/change-bounds-tool-feedback.d.ts.map +1 -1
- package/lib/features/tools/change-bounds/change-bounds-tool-feedback.js +12 -207
- package/lib/features/tools/change-bounds/change-bounds-tool-feedback.js.map +1 -1
- package/lib/features/tools/change-bounds/change-bounds-tool-module.d.ts +2 -1
- package/lib/features/tools/change-bounds/change-bounds-tool-module.d.ts.map +1 -1
- package/lib/features/tools/change-bounds/change-bounds-tool-module.js +6 -3
- package/lib/features/tools/change-bounds/change-bounds-tool-module.js.map +1 -1
- package/lib/features/tools/change-bounds/change-bounds-tool-move-feedback.d.ts +58 -0
- package/lib/features/tools/change-bounds/change-bounds-tool-move-feedback.d.ts.map +1 -0
- package/lib/features/tools/change-bounds/change-bounds-tool-move-feedback.js +173 -0
- package/lib/features/tools/change-bounds/change-bounds-tool-move-feedback.js.map +1 -0
- package/lib/features/tools/change-bounds/change-bounds-tool.d.ts +34 -31
- package/lib/features/tools/change-bounds/change-bounds-tool.d.ts.map +1 -1
- package/lib/features/tools/change-bounds/change-bounds-tool.js +146 -219
- package/lib/features/tools/change-bounds/change-bounds-tool.js.map +1 -1
- package/lib/features/tools/change-bounds/change-bounds-tracker.d.ts +143 -0
- package/lib/features/tools/change-bounds/change-bounds-tracker.d.ts.map +1 -0
- package/lib/features/tools/change-bounds/change-bounds-tracker.js +319 -0
- package/lib/features/tools/change-bounds/change-bounds-tracker.js.map +1 -0
- package/lib/features/tools/change-bounds/view.d.ts +9 -5
- package/lib/features/tools/change-bounds/view.d.ts.map +1 -1
- package/lib/features/tools/change-bounds/view.js +14 -26
- package/lib/features/tools/change-bounds/view.js.map +1 -1
- package/lib/features/tools/deletion/delete-tool.d.ts +16 -1
- package/lib/features/tools/deletion/delete-tool.d.ts.map +1 -1
- package/lib/features/tools/deletion/delete-tool.js +6 -3
- package/lib/features/tools/deletion/delete-tool.js.map +1 -1
- package/lib/features/tools/deletion/deletion-tool-module.d.ts +1 -1
- package/lib/features/tools/deletion/deletion-tool-module.d.ts.map +1 -1
- package/lib/features/tools/deletion/deletion-tool-module.js +2 -2
- package/lib/features/tools/deletion/deletion-tool-module.js.map +1 -1
- package/lib/features/tools/edge-creation/dangling-edge-feedback.d.ts +17 -1
- package/lib/features/tools/edge-creation/dangling-edge-feedback.d.ts.map +1 -1
- package/lib/features/tools/edge-creation/dangling-edge-feedback.js +4 -2
- package/lib/features/tools/edge-creation/dangling-edge-feedback.js.map +1 -1
- package/lib/features/tools/edge-creation/edege-creation-module.d.ts +1 -1
- package/lib/features/tools/edge-creation/edege-creation-module.d.ts.map +1 -1
- package/lib/features/tools/edge-creation/edege-creation-module.js +2 -2
- package/lib/features/tools/edge-creation/edege-creation-module.js.map +1 -1
- package/lib/features/tools/edge-creation/edge-creation-tool-feedback.d.ts +4 -2
- package/lib/features/tools/edge-creation/edge-creation-tool-feedback.d.ts.map +1 -1
- package/lib/features/tools/edge-creation/edge-creation-tool-feedback.js +5 -8
- package/lib/features/tools/edge-creation/edge-creation-tool-feedback.js.map +1 -1
- package/lib/features/tools/edge-creation/edge-creation-tool.d.ts +40 -5
- package/lib/features/tools/edge-creation/edge-creation-tool.d.ts.map +1 -1
- package/lib/features/tools/edge-creation/edge-creation-tool.js +70 -36
- package/lib/features/tools/edge-creation/edge-creation-tool.js.map +1 -1
- package/lib/features/tools/edge-creation/view.d.ts +17 -1
- package/lib/features/tools/edge-creation/view.d.ts.map +1 -1
- package/lib/features/tools/edge-creation/view.js +4 -5
- package/lib/features/tools/edge-creation/view.js.map +1 -1
- package/lib/features/tools/edge-edit/edge-edit-module.d.ts +1 -1
- package/lib/features/tools/edge-edit/edge-edit-module.d.ts.map +1 -1
- package/lib/features/tools/edge-edit/edge-edit-module.js +2 -2
- package/lib/features/tools/edge-edit/edge-edit-module.js.map +1 -1
- package/lib/features/tools/edge-edit/edge-edit-tool-feedback.d.ts +17 -13
- package/lib/features/tools/edge-edit/edge-edit-tool-feedback.d.ts.map +1 -1
- package/lib/features/tools/edge-edit/edge-edit-tool-feedback.js +49 -62
- package/lib/features/tools/edge-edit/edge-edit-tool-feedback.js.map +1 -1
- package/lib/features/tools/edge-edit/edge-edit-tool.d.ts +8 -7
- package/lib/features/tools/edge-edit/edge-edit-tool.d.ts.map +1 -1
- package/lib/features/tools/edge-edit/edge-edit-tool.js +35 -50
- package/lib/features/tools/edge-edit/edge-edit-tool.js.map +1 -1
- package/lib/features/tools/marquee-selection/marquee-behavior.d.ts +16 -4
- package/lib/features/tools/marquee-selection/marquee-behavior.d.ts.map +1 -1
- package/lib/features/tools/marquee-selection/marquee-behavior.js +62 -10
- package/lib/features/tools/marquee-selection/marquee-behavior.js.map +1 -1
- package/lib/features/tools/marquee-selection/marquee-mouse-tool.d.ts +11 -11
- package/lib/features/tools/marquee-selection/marquee-mouse-tool.d.ts.map +1 -1
- package/lib/features/tools/marquee-selection/marquee-mouse-tool.js +24 -48
- package/lib/features/tools/marquee-selection/marquee-mouse-tool.js.map +1 -1
- package/lib/features/tools/marquee-selection/marquee-selection-module.d.ts +1 -1
- package/lib/features/tools/marquee-selection/marquee-selection-module.d.ts.map +1 -1
- package/lib/features/tools/marquee-selection/marquee-selection-module.js +4 -2
- package/lib/features/tools/marquee-selection/marquee-selection-module.js.map +1 -1
- package/lib/features/tools/marquee-selection/marquee-tool-feedback.js.map +1 -1
- package/lib/features/tools/marquee-selection/marquee-tool.js.map +1 -1
- package/lib/features/tools/marquee-selection/view.d.ts +17 -1
- package/lib/features/tools/marquee-selection/view.d.ts.map +1 -1
- package/lib/features/tools/marquee-selection/view.js +5 -6
- package/lib/features/tools/marquee-selection/view.js.map +1 -1
- package/lib/features/tools/node-creation/container-manager.d.ts +42 -0
- package/lib/features/tools/node-creation/container-manager.d.ts.map +1 -0
- package/lib/features/tools/node-creation/container-manager.js +73 -0
- package/lib/features/tools/node-creation/container-manager.js.map +1 -0
- package/lib/features/tools/node-creation/insert-indicator.d.ts +30 -0
- package/lib/features/tools/node-creation/insert-indicator.d.ts.map +1 -0
- package/lib/features/tools/node-creation/insert-indicator.js +40 -0
- package/lib/features/tools/node-creation/insert-indicator.js.map +1 -0
- package/lib/features/tools/node-creation/node-creation-module.d.ts +1 -1
- package/lib/features/tools/node-creation/node-creation-module.d.ts.map +1 -1
- package/lib/features/tools/node-creation/node-creation-module.js +10 -2
- package/lib/features/tools/node-creation/node-creation-module.js.map +1 -1
- package/lib/features/tools/node-creation/node-creation-tool.d.ts +46 -14
- package/lib/features/tools/node-creation/node-creation-tool.d.ts.map +1 -1
- package/lib/features/tools/node-creation/node-creation-tool.js +123 -65
- package/lib/features/tools/node-creation/node-creation-tool.js.map +1 -1
- package/lib/features/tools/node-creation/node-creation-views.d.ts +26 -0
- package/lib/features/tools/node-creation/node-creation-views.d.ts.map +1 -0
- package/lib/features/tools/node-creation/node-creation-views.js +59 -0
- package/lib/features/tools/node-creation/node-creation-views.js.map +1 -0
- package/lib/features/tools/tool-focus-loss-module.d.ts +15 -0
- package/lib/features/tools/tool-focus-loss-module.d.ts.map +1 -1
- package/lib/features/tools/tool-focus-loss-module.js +3 -3
- package/lib/features/tools/tool-focus-loss-module.js.map +1 -1
- package/lib/features/undo-redo/undo-redo-key-listener.js.map +1 -1
- package/lib/features/undo-redo/undo-redo-module.d.ts +3 -3
- package/lib/features/undo-redo/undo-redo-module.d.ts.map +1 -1
- package/lib/features/undo-redo/undo-redo-module.js +3 -4
- package/lib/features/undo-redo/undo-redo-module.js.map +1 -1
- package/lib/features/validation/issue-marker.d.ts +3 -3
- package/lib/features/validation/issue-marker.d.ts.map +1 -1
- package/lib/features/validation/issue-marker.js +6 -4
- package/lib/features/validation/issue-marker.js.map +1 -1
- package/lib/features/validation/marker-navigator.d.ts +8 -7
- package/lib/features/validation/marker-navigator.d.ts.map +1 -1
- package/lib/features/validation/marker-navigator.js +1 -1
- package/lib/features/validation/marker-navigator.js.map +1 -1
- package/lib/features/validation/validate.d.ts +3 -6
- package/lib/features/validation/validate.d.ts.map +1 -1
- package/lib/features/validation/validate.js +5 -17
- package/lib/features/validation/validate.js.map +1 -1
- package/lib/features/validation/validation-modules.d.ts +1 -1
- package/lib/features/validation/validation-modules.d.ts.map +1 -1
- package/lib/features/validation/validation-modules.js +4 -4
- package/lib/features/validation/validation-modules.js.map +1 -1
- package/lib/features/viewport/glsp-scroll-mouse-listener.js.map +1 -1
- package/lib/features/viewport/origin-viewport.d.ts +36 -0
- package/lib/features/viewport/origin-viewport.d.ts.map +1 -0
- package/lib/features/viewport/origin-viewport.js +75 -0
- package/lib/features/viewport/origin-viewport.js.map +1 -0
- package/lib/features/viewport/reposition.d.ts +2 -2
- package/lib/features/viewport/reposition.d.ts.map +1 -1
- package/lib/features/viewport/reposition.js +11 -14
- package/lib/features/viewport/reposition.js.map +1 -1
- package/lib/features/viewport/viewport-handler.d.ts +6 -4
- package/lib/features/viewport/viewport-handler.d.ts.map +1 -1
- package/lib/features/viewport/viewport-handler.js +13 -8
- package/lib/features/viewport/viewport-handler.js.map +1 -1
- package/lib/features/viewport/viewport-modules.d.ts +1 -1
- package/lib/features/viewport/viewport-modules.d.ts.map +1 -1
- package/lib/features/viewport/viewport-modules.js +7 -5
- package/lib/features/viewport/viewport-modules.js.map +1 -1
- package/lib/index.d.ts +224 -5
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +224 -5
- package/lib/index.js.map +1 -1
- package/lib/model.js.map +1 -1
- package/lib/standalone-modules.d.ts +2 -2
- package/lib/standalone-modules.d.ts.map +1 -1
- package/lib/standalone-modules.js +2 -2
- package/lib/standalone-modules.js.map +1 -1
- package/lib/utils/argument-utils.js.map +1 -1
- package/lib/utils/geometry-util.d.ts +43 -23
- package/lib/utils/geometry-util.d.ts.map +1 -1
- package/lib/utils/geometry-util.js +43 -84
- package/lib/utils/geometry-util.js.map +1 -1
- package/lib/utils/gmodel-util.d.ts +49 -3
- package/lib/utils/gmodel-util.d.ts.map +1 -1
- package/lib/utils/gmodel-util.js +68 -17
- package/lib/utils/gmodel-util.js.map +1 -1
- package/lib/utils/html-utils.js.map +1 -1
- package/lib/utils/layout-utils.d.ts +10 -8
- package/lib/utils/layout-utils.d.ts.map +1 -1
- package/lib/utils/layout-utils.js +7 -5
- package/lib/utils/layout-utils.js.map +1 -1
- package/lib/utils/marker.js.map +1 -1
- package/lib/utils/viewpoint-util.d.ts +5 -5
- package/lib/utils/viewpoint-util.d.ts.map +1 -1
- package/lib/utils/viewpoint-util.js +11 -21
- package/lib/utils/viewpoint-util.js.map +1 -1
- package/lib/views/base-view-module.d.ts +1 -1
- package/lib/views/base-view-module.d.ts.map +1 -1
- package/lib/views/base-view-module.js +5 -4
- package/lib/views/base-view-module.js.map +1 -1
- package/lib/views/compartments.d.ts +17 -1
- package/lib/views/compartments.d.ts.map +1 -1
- package/lib/views/compartments.js +5 -6
- package/lib/views/compartments.js.map +1 -1
- package/lib/views/gedge-view.d.ts +2 -1
- package/lib/views/gedge-view.d.ts.map +1 -1
- package/lib/views/gedge-view.js +5 -6
- package/lib/views/gedge-view.js.map +1 -1
- package/lib/views/ggraph-view.d.ts +25 -0
- package/lib/views/ggraph-view.d.ts.map +1 -0
- package/lib/views/ggraph-view.js +68 -0
- package/lib/views/ggraph-view.js.map +1 -0
- package/lib/views/glsp-projection-view.d.ts +7 -2
- package/lib/views/glsp-projection-view.d.ts.map +1 -1
- package/lib/views/glsp-projection-view.js +52 -68
- package/lib/views/glsp-projection-view.js.map +1 -1
- package/lib/views/issue-marker-view.d.ts +2 -1
- package/lib/views/issue-marker-view.d.ts.map +1 -1
- package/lib/views/issue-marker-view.js +7 -8
- package/lib/views/issue-marker-view.js.map +1 -1
- package/lib/views/rounded-corner-view.d.ts +17 -1
- package/lib/views/rounded-corner-view.d.ts.map +1 -1
- package/lib/views/rounded-corner-view.js +8 -9
- package/lib/views/rounded-corner-view.js.map +1 -1
- package/lib/views/rounded-corner.d.ts +1 -1
- package/lib/views/rounded-corner.d.ts.map +1 -1
- package/lib/views/rounded-corner.js.map +1 -1
- package/package.json +11 -5
- package/src/base/action-dispatcher.spec.ts +5 -4
- package/src/base/action-dispatcher.ts +44 -4
- package/src/base/action-handler-registry.ts +19 -37
- package/src/base/auto-complete/auto-complete-widget.ts +2 -2
- package/src/base/auto-complete/base-autocomplete-palette.ts +4 -3
- package/src/base/command-stack.ts +23 -33
- package/src/base/default.module.ts +87 -65
- package/src/base/drag-aware-mouse-listener.ts +33 -3
- package/src/base/editor-context-service.ts +61 -16
- package/src/base/feedback/css-feedback.ts +14 -2
- package/src/base/feedback/feedback-action-dispatcher-default.ts +119 -0
- package/src/base/feedback/feedback-action-dispatcher.ts +21 -90
- package/src/base/feedback/feedback-emitter.spec.ts +176 -0
- package/src/base/feedback/feedback-emitter.ts +134 -0
- package/src/base/model/diagram-loader.ts +26 -15
- package/src/base/model/model-registry.ts +6 -2
- package/src/base/mouse-position-tracker.ts +48 -0
- package/src/base/selection-service.spec.ts +5 -0
- package/src/base/selection-service.ts +23 -23
- package/src/base/tool-manager/tool-manager.ts +43 -25
- package/src/base/ui-extension/ui-extension-registry.ts +33 -0
- package/src/base/ui-extension/ui-extension.ts +119 -0
- package/src/base/view/key-tool.ts +16 -4
- package/src/base/view/mouse-tool.ts +23 -6
- package/src/default-modules.spec.ts +56 -0
- package/src/default-modules.ts +8 -5
- package/src/features/accessibility/accessibility-module.ts +25 -20
- package/src/features/accessibility/element-navigation/element-navigation-module.ts +17 -10
- package/src/features/accessibility/element-navigation/local-element-navigator.ts +5 -5
- package/src/features/accessibility/focus-tracker/focus-tracker-module.ts +14 -7
- package/src/features/accessibility/key-shortcut/accessible-key-shortcut.ts +4 -3
- package/src/features/accessibility/key-shortcut/{di.config.ts → shortcut-help-module.ts} +14 -7
- package/src/features/accessibility/keyboard-grid/keyboard-grid.ts +10 -10
- package/src/features/accessibility/keyboard-pointer/keyboard-pointer-listener.ts +5 -2
- package/src/features/accessibility/keyboard-pointer/keyboard-pointer-module.ts +19 -16
- package/src/features/accessibility/keyboard-pointer/keyboard-pointer.ts +7 -14
- package/src/features/accessibility/keyboard-tool-palette/keyboard-tool-palette-module.ts +8 -5
- package/src/features/accessibility/keyboard-tool-palette/keyboard-tool-palette.ts +25 -8
- package/src/features/accessibility/move-zoom/move-handler.ts +12 -7
- package/src/features/accessibility/move-zoom/move-zoom-module.ts +8 -5
- package/src/features/accessibility/resize-key-tool/resize-key-handler.ts +20 -16
- package/src/features/accessibility/resize-key-tool/resize-key-module.ts +8 -5
- package/src/features/accessibility/search/search-palette-module.ts +8 -5
- package/src/features/accessibility/toast/toast-module.ts +14 -7
- package/src/features/accessibility/toast/toast-tool.ts +6 -5
- package/src/features/accessibility/view-key-tools/deselect-key-tool.ts +8 -8
- package/src/features/accessibility/view-key-tools/movement-key-tool.ts +24 -17
- package/src/features/accessibility/view-key-tools/view-key-tools-module.ts +11 -6
- package/src/features/bounds/bounds-module.ts +21 -16
- package/src/features/bounds/freeform-layout.ts +17 -7
- package/src/features/bounds/glsp-hidden-bounds-updater.ts +63 -46
- package/src/features/bounds/hbox-layout.ts +19 -10
- package/src/features/bounds/layout-data.ts +48 -0
- package/src/features/bounds/local-bounds.ts +20 -4
- package/src/features/bounds/set-bounds-feedback-command.ts +1 -1
- package/src/features/bounds/vbox-layout.ts +19 -11
- package/src/features/change-bounds/model.ts +162 -20
- package/src/features/change-bounds/movement-restrictor.ts +27 -33
- package/src/features/change-bounds/{snap.spec.ts → point-position-updater.spec.ts} +4 -13
- package/src/features/change-bounds/point-position-updater.ts +7 -1
- package/src/features/change-bounds/position-snapper.ts +4 -0
- package/src/features/change-bounds/snap.ts +6 -23
- package/src/features/change-bounds/tracker.ts +63 -0
- package/src/features/command-palette/command-palette-module.ts +12 -8
- package/src/features/command-palette/command-palette.ts +35 -0
- package/src/features/context-menu/context-menu-module.ts +17 -14
- package/src/features/context-menu/glsp-context-menu-mouse-listener.ts +2 -2
- package/src/features/copy-paste/copy-paste-modules.ts +12 -6
- package/src/features/copy-paste/copy-paste-standalone.ts +1 -4
- package/src/features/debug/debug-bounds-decorator.tsx +178 -0
- package/src/features/debug/debug-manager.ts +59 -0
- package/src/features/debug/debug-model.ts +63 -0
- package/src/features/debug/debug-module.ts +35 -0
- package/src/features/decoration/decoration-module.ts +7 -4
- package/src/features/element-template/element-template-module.ts +9 -6
- package/src/features/element-template/mouse-tracking-element-position-listener.ts +77 -72
- package/src/features/export/export-modules.ts +11 -8
- package/src/features/export/glsp-svg-exporter.ts +89 -19
- package/src/features/grid/grid-manager.ts +63 -0
- package/src/features/grid/grid-model.ts +62 -0
- package/src/features/grid/grid-module.ts +37 -0
- package/src/features/grid/grid-snapper.spec.ts +30 -0
- package/src/features/grid/grid-snapper.ts +59 -0
- package/{lib/features/routing/glsp-manhattan-edge-router.d.ts → src/features/grid/grid-style.ts} +9 -5
- package/src/{base/tool-manager/index.ts → features/grid/grid.ts} +4 -3
- package/src/features/helper-lines/helper-line-feedback.ts +53 -59
- package/src/features/helper-lines/helper-line-manager-default.ts +108 -18
- package/src/features/helper-lines/helper-line-manager.ts +11 -2
- package/src/features/helper-lines/helper-line-module.ts +17 -14
- package/src/features/helper-lines/model.ts +7 -26
- package/src/features/helper-lines/view.tsx +2 -4
- package/src/features/hints/model.ts +7 -2
- package/src/features/hints/type-hint-provider.spec.ts +6 -3
- package/src/features/hints/type-hint-provider.ts +9 -2
- package/src/features/hints/type-hints-module.ts +11 -8
- package/src/features/hover/hover-module.ts +29 -26
- package/src/features/label-edit/label-edit-module.ts +10 -7
- package/{lib/base/index.d.ts → src/features/label-edit-ui/label-edit-ui-module.ts} +13 -18
- package/src/features/label-edit-ui/label-edit-ui.ts +35 -0
- package/src/features/layout/layout-elements-action.ts +11 -8
- package/src/features/layout/layout-module.ts +9 -6
- package/src/features/navigation/navigation-action-handler.ts +2 -2
- package/src/features/navigation/navigation-module.ts +12 -9
- package/src/features/routing/edge-router.ts +171 -0
- package/src/features/routing/routing-module.ts +23 -22
- package/src/features/save/save-module.ts +7 -4
- package/src/features/select/select-module.ts +12 -9
- package/src/features/select/select-mouse-listener.ts +19 -4
- package/src/features/source-model-watcher/source-model-watcher-module.ts +7 -4
- package/src/features/status/status-module.ts +10 -7
- package/src/features/status/status-overlay.ts +4 -3
- package/src/features/svg-metadata/svg-metadata-module.ts +8 -5
- package/src/features/tool-palette/tool-palette-module.ts +11 -8
- package/src/features/tool-palette/tool-palette.ts +82 -6
- package/src/features/tools/base-tools.ts +45 -26
- package/src/features/tools/change-bounds/change-bounds-manager.ts +203 -0
- package/src/features/tools/change-bounds/change-bounds-tool-feedback.ts +18 -230
- package/src/features/tools/change-bounds/change-bounds-tool-module.ts +16 -10
- package/src/features/tools/change-bounds/change-bounds-tool-move-feedback.ts +204 -0
- package/src/features/tools/change-bounds/change-bounds-tool.ts +173 -285
- package/src/features/tools/change-bounds/change-bounds-tracker.ts +477 -0
- package/src/features/tools/change-bounds/view.tsx +15 -21
- package/src/features/tools/deletion/delete-tool.ts +7 -7
- package/src/features/tools/deletion/deletion-tool-module.ts +9 -6
- package/src/features/tools/edge-creation/dangling-edge-feedback.ts +8 -5
- package/src/features/tools/edge-creation/edege-creation-module.ts +10 -7
- package/src/features/tools/edge-creation/edge-creation-tool-feedback.ts +14 -11
- package/src/features/tools/edge-creation/edge-creation-tool.ts +86 -42
- package/src/features/tools/edge-creation/view.tsx +3 -5
- package/src/features/tools/edge-edit/edge-edit-module.ts +15 -12
- package/src/features/tools/edge-edit/edge-edit-tool-feedback.ts +62 -66
- package/src/features/tools/edge-edit/edge-edit-tool.ts +50 -53
- package/src/features/tools/marquee-selection/marquee-behavior.spec.ts +3 -2
- package/src/features/tools/marquee-selection/marquee-behavior.ts +67 -9
- package/src/features/tools/marquee-selection/marquee-mouse-tool.ts +33 -70
- package/src/features/tools/marquee-selection/marquee-selection-module.ts +14 -9
- package/src/features/tools/marquee-selection/view.tsx +3 -5
- package/src/features/tools/node-creation/container-manager.ts +78 -0
- package/src/features/tools/node-creation/insert-indicator.ts +41 -0
- package/src/features/tools/node-creation/node-creation-module.ts +18 -3
- package/src/features/tools/node-creation/node-creation-tool.ts +161 -68
- package/src/features/tools/node-creation/node-creation-views.tsx +46 -0
- package/src/features/tools/tool-focus-loss-module.ts +8 -5
- package/src/features/undo-redo/undo-redo-module.ts +8 -6
- package/src/features/validation/issue-marker.ts +7 -6
- package/src/features/validation/marker-navigator.ts +7 -9
- package/src/features/validation/validate.ts +6 -21
- package/src/features/validation/validation-modules.ts +20 -14
- package/src/features/viewport/origin-viewport.ts +68 -0
- package/src/features/viewport/reposition.ts +12 -15
- package/src/features/viewport/viewport-handler.ts +13 -7
- package/src/features/viewport/viewport-modules.ts +24 -19
- package/src/index.ts +224 -5
- package/src/standalone-modules.ts +13 -10
- package/src/utils/geometry-util.ts +46 -65
- package/src/utils/gmodel-util.ts +89 -7
- package/src/utils/layout-utils.ts +14 -21
- package/src/utils/viewpoint-util.ts +14 -26
- package/src/views/base-view-module.ts +11 -8
- package/src/views/compartments.tsx +3 -5
- package/src/views/gedge-view.tsx +3 -5
- package/src/views/ggraph-view.tsx +53 -0
- package/src/views/glsp-projection-view.tsx +42 -72
- package/src/views/issue-marker-view.tsx +2 -4
- package/src/views/rounded-corner-view.tsx +3 -5
- package/src/views/rounded-corner.ts +5 -2
- package/lib/base/action-dispatcher.spec.d.ts +0 -2
- package/lib/base/action-dispatcher.spec.d.ts.map +0 -1
- package/lib/base/action-dispatcher.spec.js +0 -78
- package/lib/base/action-dispatcher.spec.js.map +0 -1
- package/lib/base/auto-complete/index.d.ts.map +0 -1
- package/lib/base/auto-complete/index.js +0 -37
- package/lib/base/auto-complete/index.js.map +0 -1
- package/lib/base/feedback/index.d.ts.map +0 -1
- package/lib/base/feedback/index.js +0 -37
- package/lib/base/feedback/index.js.map +0 -1
- package/lib/base/focus/index.d.ts.map +0 -1
- package/lib/base/focus/index.js +0 -34
- package/lib/base/focus/index.js.map +0 -1
- package/lib/base/index.d.ts.map +0 -1
- package/lib/base/index.js +0 -48
- package/lib/base/index.js.map +0 -1
- package/lib/base/model/index.d.ts.map +0 -1
- package/lib/base/model/index.js +0 -36
- package/lib/base/model/index.js.map +0 -1
- package/lib/base/model/model-initialization-constraint.spec.d.ts +0 -2
- package/lib/base/model/model-initialization-constraint.spec.d.ts.map +0 -1
- package/lib/base/model/model-initialization-constraint.spec.js +0 -97
- package/lib/base/model/model-initialization-constraint.spec.js.map +0 -1
- package/lib/base/selection-service.spec.d.ts +0 -2
- package/lib/base/selection-service.spec.d.ts.map +0 -1
- package/lib/base/selection-service.spec.js +0 -287
- package/lib/base/selection-service.spec.js.map +0 -1
- package/lib/base/tool-manager/index.d.ts.map +0 -1
- package/lib/base/tool-manager/index.js +0 -34
- package/lib/base/tool-manager/index.js.map +0 -1
- package/lib/base/view/index.d.ts.map +0 -1
- package/lib/base/view/index.js +0 -35
- package/lib/base/view/index.js.map +0 -1
- package/lib/features/accessibility/edge-autocomplete/index.d.ts +0 -20
- package/lib/features/accessibility/edge-autocomplete/index.d.ts.map +0 -1
- package/lib/features/accessibility/edge-autocomplete/index.js +0 -36
- package/lib/features/accessibility/edge-autocomplete/index.js.map +0 -1
- package/lib/features/accessibility/element-navigation/index.d.ts +0 -22
- package/lib/features/accessibility/element-navigation/index.d.ts.map +0 -1
- package/lib/features/accessibility/element-navigation/index.js +0 -38
- package/lib/features/accessibility/element-navigation/index.js.map +0 -1
- package/lib/features/accessibility/focus-tracker/index.d.ts.map +0 -1
- package/lib/features/accessibility/focus-tracker/index.js +0 -34
- package/lib/features/accessibility/focus-tracker/index.js.map +0 -1
- package/lib/features/accessibility/index.d.ts +0 -31
- package/lib/features/accessibility/index.d.ts.map +0 -1
- package/lib/features/accessibility/index.js +0 -47
- package/lib/features/accessibility/index.js.map +0 -1
- package/lib/features/accessibility/key-shortcut/di.config.d.ts.map +0 -1
- package/lib/features/accessibility/key-shortcut/di.config.js.map +0 -1
- package/lib/features/accessibility/key-shortcut/index.d.ts +0 -19
- package/lib/features/accessibility/key-shortcut/index.d.ts.map +0 -1
- package/lib/features/accessibility/key-shortcut/index.js +0 -35
- package/lib/features/accessibility/key-shortcut/index.js.map +0 -1
- package/lib/features/accessibility/keyboard-grid/index.d.ts +0 -21
- package/lib/features/accessibility/keyboard-grid/index.d.ts.map +0 -1
- package/lib/features/accessibility/keyboard-grid/index.js +0 -37
- package/lib/features/accessibility/keyboard-grid/index.js.map +0 -1
- package/lib/features/accessibility/keyboard-pointer/index.d.ts +0 -22
- package/lib/features/accessibility/keyboard-pointer/index.d.ts.map +0 -1
- package/lib/features/accessibility/keyboard-pointer/index.js +0 -38
- package/lib/features/accessibility/keyboard-pointer/index.js.map +0 -1
- package/lib/features/accessibility/keyboard-tool-palette/index.d.ts +0 -18
- package/lib/features/accessibility/keyboard-tool-palette/index.d.ts.map +0 -1
- package/lib/features/accessibility/keyboard-tool-palette/index.js +0 -34
- package/lib/features/accessibility/keyboard-tool-palette/index.js.map +0 -1
- package/lib/features/accessibility/move-zoom/index.d.ts +0 -19
- package/lib/features/accessibility/move-zoom/index.d.ts.map +0 -1
- package/lib/features/accessibility/move-zoom/index.js +0 -35
- package/lib/features/accessibility/move-zoom/index.js.map +0 -1
- package/lib/features/accessibility/resize-key-tool/index.d.ts +0 -19
- package/lib/features/accessibility/resize-key-tool/index.d.ts.map +0 -1
- package/lib/features/accessibility/resize-key-tool/index.js +0 -35
- package/lib/features/accessibility/resize-key-tool/index.js.map +0 -1
- package/lib/features/accessibility/search/index.d.ts +0 -19
- package/lib/features/accessibility/search/index.d.ts.map +0 -1
- package/lib/features/accessibility/search/index.js +0 -35
- package/lib/features/accessibility/search/index.js.map +0 -1
- package/lib/features/accessibility/toast/index.d.ts +0 -19
- package/lib/features/accessibility/toast/index.d.ts.map +0 -1
- package/lib/features/accessibility/toast/index.js +0 -35
- package/lib/features/accessibility/toast/index.js.map +0 -1
- package/lib/features/accessibility/view-key-tools/index.d.ts +0 -20
- package/lib/features/accessibility/view-key-tools/index.d.ts.map +0 -1
- package/lib/features/accessibility/view-key-tools/index.js +0 -36
- package/lib/features/accessibility/view-key-tools/index.js.map +0 -1
- package/lib/features/bounds/freeform-layout.spec.d.ts +0 -3
- package/lib/features/bounds/freeform-layout.spec.d.ts.map +0 -1
- package/lib/features/bounds/freeform-layout.spec.js +0 -201
- package/lib/features/bounds/freeform-layout.spec.js.map +0 -1
- package/lib/features/bounds/hbox-layout.spec.d.ts +0 -3
- package/lib/features/bounds/hbox-layout.spec.d.ts.map +0 -1
- package/lib/features/bounds/hbox-layout.spec.js +0 -160
- package/lib/features/bounds/hbox-layout.spec.js.map +0 -1
- package/lib/features/bounds/index.d.ts +0 -24
- package/lib/features/bounds/index.d.ts.map +0 -1
- package/lib/features/bounds/index.js +0 -40
- package/lib/features/bounds/index.js.map +0 -1
- package/lib/features/bounds/layouter-test-util.spec.d.ts +0 -32
- package/lib/features/bounds/layouter-test-util.spec.d.ts.map +0 -1
- package/lib/features/bounds/layouter-test-util.spec.js +0 -96
- package/lib/features/bounds/layouter-test-util.spec.js.map +0 -1
- package/lib/features/bounds/vbox-layout.spec.d.ts +0 -3
- package/lib/features/bounds/vbox-layout.spec.d.ts.map +0 -1
- package/lib/features/bounds/vbox-layout.spec.js +0 -160
- package/lib/features/bounds/vbox-layout.spec.js.map +0 -1
- package/lib/features/change-bounds/index.d.ts +0 -21
- package/lib/features/change-bounds/index.d.ts.map +0 -1
- package/lib/features/change-bounds/index.js +0 -37
- package/lib/features/change-bounds/index.js.map +0 -1
- package/lib/features/change-bounds/snap.spec.d.ts +0 -17
- package/lib/features/change-bounds/snap.spec.d.ts.map +0 -1
- package/lib/features/change-bounds/snap.spec.js +0 -83
- package/lib/features/change-bounds/snap.spec.js.map +0 -1
- package/lib/features/command-palette/index.d.ts +0 -19
- package/lib/features/command-palette/index.d.ts.map +0 -1
- package/lib/features/command-palette/index.js +0 -35
- package/lib/features/command-palette/index.js.map +0 -1
- package/lib/features/context-menu/index.d.ts +0 -20
- package/lib/features/context-menu/index.d.ts.map +0 -1
- package/lib/features/context-menu/index.js +0 -36
- package/lib/features/context-menu/index.js.map +0 -1
- package/lib/features/copy-paste/index.d.ts +0 -20
- package/lib/features/copy-paste/index.d.ts.map +0 -1
- package/lib/features/copy-paste/index.js +0 -36
- package/lib/features/copy-paste/index.js.map +0 -1
- package/lib/features/decoration/index.d.ts +0 -18
- package/lib/features/decoration/index.d.ts.map +0 -1
- package/lib/features/decoration/index.js +0 -34
- package/lib/features/decoration/index.js.map +0 -1
- package/lib/features/element-template/index.d.ts +0 -20
- package/lib/features/element-template/index.d.ts.map +0 -1
- package/lib/features/element-template/index.js +0 -36
- package/lib/features/element-template/index.js.map +0 -1
- package/lib/features/export/index.d.ts +0 -19
- package/lib/features/export/index.d.ts.map +0 -1
- package/lib/features/export/index.js +0 -35
- package/lib/features/export/index.js.map +0 -1
- package/lib/features/helper-lines/index.d.ts +0 -22
- package/lib/features/helper-lines/index.d.ts.map +0 -1
- package/lib/features/helper-lines/index.js +0 -38
- package/lib/features/helper-lines/index.js.map +0 -1
- package/lib/features/hints/index.d.ts +0 -19
- package/lib/features/hints/index.d.ts.map +0 -1
- package/lib/features/hints/index.js +0 -35
- package/lib/features/hints/index.js.map +0 -1
- package/lib/features/hints/type-hint-provider.spec.d.ts +0 -2
- package/lib/features/hints/type-hint-provider.spec.d.ts.map +0 -1
- package/lib/features/hints/type-hint-provider.spec.js +0 -333
- package/lib/features/hints/type-hint-provider.spec.js.map +0 -1
- package/lib/features/hover/index.d.ts +0 -18
- package/lib/features/hover/index.d.ts.map +0 -1
- package/lib/features/hover/index.js +0 -34
- package/lib/features/hover/index.js.map +0 -1
- package/lib/features/index.d.ts +0 -43
- package/lib/features/index.d.ts.map +0 -1
- package/lib/features/index.js +0 -59
- package/lib/features/index.js.map +0 -1
- package/lib/features/label-edit/index.d.ts +0 -19
- package/lib/features/label-edit/index.d.ts.map +0 -1
- package/lib/features/label-edit/index.js +0 -35
- package/lib/features/label-edit/index.js.map +0 -1
- package/lib/features/layout/index.d.ts +0 -18
- package/lib/features/layout/index.d.ts.map +0 -1
- package/lib/features/layout/index.js +0 -34
- package/lib/features/layout/index.js.map +0 -1
- package/lib/features/layout/layout-elements-action.spec.d.ts +0 -3
- package/lib/features/layout/layout-elements-action.spec.d.ts.map +0 -1
- package/lib/features/layout/layout-elements-action.spec.js +0 -329
- package/lib/features/layout/layout-elements-action.spec.js.map +0 -1
- package/lib/features/navigation/index.d.ts +0 -19
- package/lib/features/navigation/index.d.ts.map +0 -1
- package/lib/features/navigation/index.js +0 -35
- package/lib/features/navigation/index.js.map +0 -1
- package/lib/features/navigation/navigation-target-resolver.spec.d.ts +0 -3
- package/lib/features/navigation/navigation-target-resolver.spec.d.ts.map +0 -1
- package/lib/features/navigation/navigation-target-resolver.spec.js +0 -53
- package/lib/features/navigation/navigation-target-resolver.spec.js.map +0 -1
- package/lib/features/reconnect/index.d.ts +0 -17
- package/lib/features/reconnect/index.d.ts.map +0 -1
- package/lib/features/reconnect/index.js.map +0 -1
- package/lib/features/routing/glsp-manhattan-edge-router.d.ts.map +0 -1
- package/lib/features/routing/glsp-manhattan-edge-router.js +0 -68
- package/lib/features/routing/glsp-manhattan-edge-router.js.map +0 -1
- package/lib/features/routing/index.d.ts +0 -18
- package/lib/features/routing/index.d.ts.map +0 -1
- package/lib/features/routing/index.js +0 -34
- package/lib/features/routing/index.js.map +0 -1
- package/lib/features/save/index.d.ts +0 -18
- package/lib/features/save/index.d.ts.map +0 -1
- package/lib/features/save/index.js +0 -34
- package/lib/features/save/index.js.map +0 -1
- package/lib/features/select/index.d.ts +0 -19
- package/lib/features/select/index.d.ts.map +0 -1
- package/lib/features/select/index.js +0 -35
- package/lib/features/select/index.js.map +0 -1
- package/lib/features/source-model-watcher/index.d.ts +0 -18
- package/lib/features/source-model-watcher/index.d.ts.map +0 -1
- package/lib/features/source-model-watcher/index.js +0 -34
- package/lib/features/source-model-watcher/index.js.map +0 -1
- package/lib/features/status/index.d.ts +0 -18
- package/lib/features/status/index.d.ts.map +0 -1
- package/lib/features/status/index.js +0 -34
- package/lib/features/status/index.js.map +0 -1
- package/lib/features/svg-metadata/index.d.ts +0 -18
- package/lib/features/svg-metadata/index.d.ts.map +0 -1
- package/lib/features/svg-metadata/index.js +0 -34
- package/lib/features/svg-metadata/index.js.map +0 -1
- package/lib/features/tool-palette/index.d.ts +0 -18
- package/lib/features/tool-palette/index.d.ts.map +0 -1
- package/lib/features/tool-palette/index.js +0 -34
- package/lib/features/tool-palette/index.js.map +0 -1
- package/lib/features/tools/change-bounds/index.d.ts +0 -20
- package/lib/features/tools/change-bounds/index.d.ts.map +0 -1
- package/lib/features/tools/change-bounds/index.js +0 -36
- package/lib/features/tools/change-bounds/index.js.map +0 -1
- package/lib/features/tools/deletion/index.d.ts +0 -18
- package/lib/features/tools/deletion/index.d.ts.map +0 -1
- package/lib/features/tools/deletion/index.js +0 -34
- package/lib/features/tools/deletion/index.js.map +0 -1
- package/lib/features/tools/edge-creation/index.d.ts +0 -21
- package/lib/features/tools/edge-creation/index.d.ts.map +0 -1
- package/lib/features/tools/edge-creation/index.js +0 -37
- package/lib/features/tools/edge-creation/index.js.map +0 -1
- package/lib/features/tools/edge-edit/index.d.ts +0 -19
- package/lib/features/tools/edge-edit/index.d.ts.map +0 -1
- package/lib/features/tools/edge-edit/index.js +0 -35
- package/lib/features/tools/edge-edit/index.js.map +0 -1
- package/lib/features/tools/index.d.ts +0 -24
- package/lib/features/tools/index.d.ts.map +0 -1
- package/lib/features/tools/index.js +0 -40
- package/lib/features/tools/index.js.map +0 -1
- package/lib/features/tools/marquee-selection/index.d.ts +0 -23
- package/lib/features/tools/marquee-selection/index.d.ts.map +0 -1
- package/lib/features/tools/marquee-selection/index.js +0 -39
- package/lib/features/tools/marquee-selection/index.js.map +0 -1
- package/lib/features/tools/marquee-selection/marquee-behavior.spec.d.ts +0 -17
- package/lib/features/tools/marquee-selection/marquee-behavior.spec.d.ts.map +0 -1
- package/lib/features/tools/marquee-selection/marquee-behavior.spec.js +0 -165
- package/lib/features/tools/marquee-selection/marquee-behavior.spec.js.map +0 -1
- package/lib/features/tools/node-creation/index.d.ts +0 -18
- package/lib/features/tools/node-creation/index.d.ts.map +0 -1
- package/lib/features/tools/node-creation/index.js +0 -34
- package/lib/features/tools/node-creation/index.js.map +0 -1
- package/lib/features/undo-redo/index.d.ts +0 -18
- package/lib/features/undo-redo/index.d.ts.map +0 -1
- package/lib/features/undo-redo/index.js +0 -34
- package/lib/features/undo-redo/index.js.map +0 -1
- package/lib/features/validation/index.d.ts +0 -20
- package/lib/features/validation/index.d.ts.map +0 -1
- package/lib/features/validation/index.js +0 -36
- package/lib/features/validation/index.js.map +0 -1
- package/lib/features/validation/marker-navigator.spec.d.ts +0 -3
- package/lib/features/validation/marker-navigator.spec.d.ts.map +0 -1
- package/lib/features/validation/marker-navigator.spec.js +0 -166
- package/lib/features/validation/marker-navigator.spec.js.map +0 -1
- package/lib/features/viewport/index.d.ts +0 -20
- package/lib/features/viewport/index.d.ts.map +0 -1
- package/lib/features/viewport/index.js +0 -36
- package/lib/features/viewport/index.js.map +0 -1
- package/lib/utils/contribution-provider.d.ts +0 -27
- package/lib/utils/contribution-provider.d.ts.map +0 -1
- package/lib/utils/contribution-provider.js +0 -56
- package/lib/utils/contribution-provider.js.map +0 -1
- package/lib/utils/gmodel-util.spec.d.ts +0 -2
- package/lib/utils/gmodel-util.spec.d.ts.map +0 -1
- package/lib/utils/gmodel-util.spec.js +0 -186
- package/lib/utils/gmodel-util.spec.js.map +0 -1
- package/lib/utils/index.d.ts +0 -23
- package/lib/utils/index.d.ts.map +0 -1
- package/lib/utils/index.js +0 -39
- package/lib/utils/index.js.map +0 -1
- package/lib/views/index.d.ts +0 -23
- package/lib/views/index.d.ts.map +0 -1
- package/lib/views/index.js +0 -39
- package/lib/views/index.js.map +0 -1
- package/src/base/auto-complete/index.ts +0 -20
- package/src/base/focus/index.ts +0 -17
- package/src/base/index.ts +0 -31
- package/src/base/model/index.ts +0 -19
- package/src/base/view/index.ts +0 -18
- package/src/features/accessibility/edge-autocomplete/index.ts +0 -19
- package/src/features/accessibility/element-navigation/index.ts +0 -21
- package/src/features/accessibility/focus-tracker/index.ts +0 -17
- package/src/features/accessibility/index.ts +0 -30
- package/src/features/accessibility/key-shortcut/index.ts +0 -18
- package/src/features/accessibility/keyboard-grid/index.ts +0 -20
- package/src/features/accessibility/keyboard-pointer/index.ts +0 -21
- package/src/features/accessibility/keyboard-tool-palette/index.ts +0 -17
- package/src/features/accessibility/move-zoom/index.ts +0 -18
- package/src/features/accessibility/resize-key-tool/index.ts +0 -18
- package/src/features/accessibility/search/index.ts +0 -18
- package/src/features/accessibility/toast/index.ts +0 -18
- package/src/features/accessibility/view-key-tools/index.ts +0 -19
- package/src/features/bounds/index.ts +0 -23
- package/src/features/change-bounds/index.ts +0 -20
- package/src/features/command-palette/index.ts +0 -18
- package/src/features/context-menu/index.ts +0 -19
- package/src/features/copy-paste/index.ts +0 -19
- package/src/features/decoration/index.ts +0 -17
- package/src/features/element-template/index.ts +0 -19
- package/src/features/export/index.ts +0 -18
- package/src/features/helper-lines/index.ts +0 -21
- package/src/features/hints/index.ts +0 -18
- package/src/features/hover/index.ts +0 -17
- package/src/features/index.ts +0 -42
- package/src/features/label-edit/index.ts +0 -18
- package/src/features/layout/index.ts +0 -17
- package/src/features/navigation/index.ts +0 -18
- package/src/features/reconnect/index.ts +0 -16
- package/src/features/routing/glsp-manhattan-edge-router.ts +0 -59
- package/src/features/routing/index.ts +0 -17
- package/src/features/save/index.ts +0 -17
- package/src/features/select/index.ts +0 -18
- package/src/features/source-model-watcher/index.ts +0 -17
- package/src/features/status/index.ts +0 -17
- package/src/features/svg-metadata/index.ts +0 -17
- package/src/features/tool-palette/index.ts +0 -17
- package/src/features/tools/change-bounds/index.ts +0 -19
- package/src/features/tools/deletion/index.ts +0 -17
- package/src/features/tools/edge-creation/index.ts +0 -20
- package/src/features/tools/edge-edit/index.ts +0 -18
- package/src/features/tools/index.ts +0 -23
- package/src/features/tools/marquee-selection/index.ts +0 -22
- package/src/features/tools/node-creation/index.ts +0 -17
- package/src/features/undo-redo/index.ts +0 -17
- package/src/features/validation/index.ts +0 -19
- package/src/features/viewport/index.ts +0 -19
- package/src/utils/contribution-provider.ts +0 -65
- package/src/utils/index.ts +0 -22
- package/src/views/index.ts +0 -22
|
@@ -0,0 +1,477 @@
|
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (c) 2024 EclipseSource and others.
|
|
3
|
+
*
|
|
4
|
+
* This program and the accompanying materials are made available under the
|
|
5
|
+
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
6
|
+
* http://www.eclipse.org/legal/epl-2.0.
|
|
7
|
+
*
|
|
8
|
+
* This Source Code may also be made available under the following Secondary
|
|
9
|
+
* Licenses when the conditions for such availability set forth in the Eclipse
|
|
10
|
+
* Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
11
|
+
* with the GNU Classpath Exception which is available at
|
|
12
|
+
* https://www.gnu.org/software/classpath/license.html.
|
|
13
|
+
*
|
|
14
|
+
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
|
+
********************************************************************************/
|
|
16
|
+
|
|
17
|
+
import {
|
|
18
|
+
Bounds,
|
|
19
|
+
Dimension,
|
|
20
|
+
GModelElement,
|
|
21
|
+
GRoutingHandle,
|
|
22
|
+
Locateable,
|
|
23
|
+
Movement,
|
|
24
|
+
Point,
|
|
25
|
+
ResolvedElementMove,
|
|
26
|
+
TypeGuard,
|
|
27
|
+
Vector,
|
|
28
|
+
Writable,
|
|
29
|
+
hasBooleanProp,
|
|
30
|
+
hasObjectProp,
|
|
31
|
+
isBoundsAware,
|
|
32
|
+
isMoveable
|
|
33
|
+
} from '@eclipse-glsp/sprotty';
|
|
34
|
+
import { BoundsAwareModelElement, MoveableElement, ResizableModelElement, getElements } from '../../../utils/gmodel-util';
|
|
35
|
+
import { GResizeHandle, ResizeHandleLocation } from '../../change-bounds/model';
|
|
36
|
+
import { DiagramMovementCalculator } from '../../change-bounds/tracker';
|
|
37
|
+
import { ChangeBoundsManager } from './change-bounds-manager';
|
|
38
|
+
|
|
39
|
+
export interface ElementTrackingOptions {
|
|
40
|
+
/** Snap position. Default: true. */
|
|
41
|
+
snap: boolean | MouseEvent | KeyboardEvent | any;
|
|
42
|
+
/** Restrict position. Default: true */
|
|
43
|
+
restrict: boolean | MouseEvent | KeyboardEvent | any;
|
|
44
|
+
/** Validate operation. Default: true */
|
|
45
|
+
validate: boolean;
|
|
46
|
+
|
|
47
|
+
/** Skip operations that do not trigger change. Default: true */
|
|
48
|
+
skipStatic: boolean;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export interface MoveOptions extends ElementTrackingOptions {
|
|
52
|
+
/** Skip operations are invalid. Default: false */
|
|
53
|
+
skipInvalid: boolean;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export const DEFAULT_MOVE_OPTIONS: MoveOptions = {
|
|
57
|
+
snap: true,
|
|
58
|
+
restrict: true,
|
|
59
|
+
validate: true,
|
|
60
|
+
|
|
61
|
+
skipStatic: true,
|
|
62
|
+
skipInvalid: false
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
export type MoveableElements =
|
|
66
|
+
| MoveableElement[]
|
|
67
|
+
| {
|
|
68
|
+
ctx: GModelElement;
|
|
69
|
+
elementIDs: string[];
|
|
70
|
+
guard?: TypeGuard<MoveableElement>;
|
|
71
|
+
};
|
|
72
|
+
|
|
73
|
+
export interface TrackedElementMove extends ResolvedElementMove {
|
|
74
|
+
moveVector: Vector;
|
|
75
|
+
sourceVector: Vector;
|
|
76
|
+
valid: boolean;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
export namespace TrackedElementMove {
|
|
80
|
+
export function is(obj: any): obj is TrackedElementMove {
|
|
81
|
+
return (
|
|
82
|
+
hasObjectProp(obj, 'element') &&
|
|
83
|
+
hasObjectProp(obj, 'fromPosition') &&
|
|
84
|
+
hasObjectProp(obj, 'toPosition') &&
|
|
85
|
+
hasBooleanProp(obj, 'valid')
|
|
86
|
+
);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
export type TypedElementMove<T extends MoveableElement> = TrackedElementMove & { element: T };
|
|
91
|
+
|
|
92
|
+
export interface TrackedMove extends Movement {
|
|
93
|
+
elementMoves: TrackedElementMove[];
|
|
94
|
+
valid: boolean;
|
|
95
|
+
options: MoveOptions;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
export namespace TrackedMove {
|
|
99
|
+
export function is(obj: any): obj is TrackedMove {
|
|
100
|
+
return Movement.is(obj) && hasBooleanProp(obj, 'valid');
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
export interface ResizeOptions extends ElementTrackingOptions {
|
|
105
|
+
/** Skip resizes that do not actually change the dimension of the element. Default: true. */
|
|
106
|
+
skipStatic: boolean;
|
|
107
|
+
|
|
108
|
+
/** Perform symmetric resize on the opposite side. Default: false. */
|
|
109
|
+
symmetric: boolean | MouseEvent | KeyboardEvent | any;
|
|
110
|
+
|
|
111
|
+
/**
|
|
112
|
+
* Avoids resizes smaller than the minimum size which will result in invalid sizes.
|
|
113
|
+
* Please note that the snapping will be applied before the constraining so an element may still be resized to an unsnapped size.
|
|
114
|
+
*
|
|
115
|
+
* Default: true.
|
|
116
|
+
*/
|
|
117
|
+
constrainResize: boolean;
|
|
118
|
+
|
|
119
|
+
/** Skip resizes that produce an invalid size. Default: false. */
|
|
120
|
+
skipInvalidSize: boolean;
|
|
121
|
+
|
|
122
|
+
/** Skip resizes that produce an invalid move. Default: false. */
|
|
123
|
+
skipInvalidMove: boolean;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
export const DEFAULT_RESIZE_OPTIONS: ResizeOptions = {
|
|
127
|
+
snap: true,
|
|
128
|
+
restrict: true,
|
|
129
|
+
validate: true,
|
|
130
|
+
symmetric: true,
|
|
131
|
+
|
|
132
|
+
constrainResize: true,
|
|
133
|
+
|
|
134
|
+
skipStatic: true,
|
|
135
|
+
skipInvalidSize: false,
|
|
136
|
+
skipInvalidMove: false
|
|
137
|
+
};
|
|
138
|
+
|
|
139
|
+
export interface TrackedHandleMove extends TypedElementMove<MoveableResizeHandle> {}
|
|
140
|
+
|
|
141
|
+
export interface TrackedElementResize {
|
|
142
|
+
element: BoundsAwareModelElement;
|
|
143
|
+
fromBounds: Bounds;
|
|
144
|
+
toBounds: Bounds;
|
|
145
|
+
valid: {
|
|
146
|
+
size: boolean;
|
|
147
|
+
move: boolean;
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
export namespace TrackedElementResize {
|
|
152
|
+
export function is(obj: any): obj is TrackedElementResize {
|
|
153
|
+
return (
|
|
154
|
+
isBoundsAware(obj.element) && hasObjectProp(obj, 'fromBounds') && hasObjectProp(obj, 'toBounds') && hasObjectProp(obj, 'valid')
|
|
155
|
+
);
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
export interface TrackedResize extends Movement {
|
|
160
|
+
handleMove: TrackedHandleMove;
|
|
161
|
+
elementResizes: TrackedElementResize[];
|
|
162
|
+
valid: {
|
|
163
|
+
size: boolean;
|
|
164
|
+
move: boolean;
|
|
165
|
+
};
|
|
166
|
+
options: ResizeOptions;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
export class ChangeBoundsTracker {
|
|
170
|
+
protected diagramMovement: DiagramMovementCalculator;
|
|
171
|
+
|
|
172
|
+
constructor(readonly manager: ChangeBoundsManager) {
|
|
173
|
+
this.diagramMovement = new DiagramMovementCalculator(manager.positionTracker);
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
startTracking(): this {
|
|
177
|
+
this.diagramMovement.init();
|
|
178
|
+
return this;
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
updateTrackingPosition(param: Vector | Movement | TrackedMove): void {
|
|
182
|
+
const update = TrackedMove.is(param) ? Vector.max(...param.elementMoves.map(move => move.moveVector)) : param;
|
|
183
|
+
this.diagramMovement.updatePosition(update);
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
isTracking(): boolean {
|
|
187
|
+
return this.diagramMovement.hasPosition;
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
stopTracking(): this {
|
|
191
|
+
this.diagramMovement.dispose();
|
|
192
|
+
return this;
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
//
|
|
196
|
+
// MOVE
|
|
197
|
+
//
|
|
198
|
+
|
|
199
|
+
moveElements(elements: MoveableElements, opts?: Partial<MoveOptions>): TrackedMove {
|
|
200
|
+
const options = this.resolveMoveOptions(opts);
|
|
201
|
+
const update = this.calculateDiagramMovement();
|
|
202
|
+
const move: TrackedMove = { ...update, elementMoves: [], valid: true, options };
|
|
203
|
+
|
|
204
|
+
if (Vector.isZero(update.vector) && options.skipStatic) {
|
|
205
|
+
// no movement detected so elements won't be moved, exit early
|
|
206
|
+
return move;
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
// calculate move for each element
|
|
210
|
+
const elementsToMove = this.getMoveableElements(elements, options);
|
|
211
|
+
for (const element of elementsToMove) {
|
|
212
|
+
const elementMove = this.calculateElementMove(element, update.vector, options);
|
|
213
|
+
if (!this.skipElementMove(elementMove, options)) {
|
|
214
|
+
move.elementMoves.push(elementMove);
|
|
215
|
+
move.valid &&= elementMove.valid;
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
return move;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
protected resolveMoveOptions(opts?: Partial<MoveOptions>): MoveOptions {
|
|
222
|
+
return {
|
|
223
|
+
...DEFAULT_MOVE_OPTIONS,
|
|
224
|
+
...opts,
|
|
225
|
+
snap: this.manager.usePositionSnap(opts?.snap ?? DEFAULT_MOVE_OPTIONS.snap),
|
|
226
|
+
restrict: this.manager.useMovementRestriction(opts?.restrict ?? DEFAULT_MOVE_OPTIONS.restrict)
|
|
227
|
+
};
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
protected calculateDiagramMovement(): Movement {
|
|
231
|
+
return this.diagramMovement.calculateMoveToCurrent();
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
protected getMoveableElements(elements: MoveableElements, options: MoveOptions): MoveableElement[] {
|
|
235
|
+
return Array.isArray(elements) ? elements : getElements(elements.ctx.index, elements.elementIDs, elements.guard ?? isMoveable);
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
protected skipElementMove(elementMove: TrackedElementMove, options: MoveOptions): boolean {
|
|
239
|
+
return (options.skipInvalid && !elementMove.valid) || (options.skipStatic && Vector.isZero(elementMove.moveVector));
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
protected calculateElementMove<T extends MoveableElement>(element: T, vector: Vector, options: MoveOptions): TypedElementMove<T> {
|
|
243
|
+
const fromPosition = element.position;
|
|
244
|
+
const toPosition = Point.add(fromPosition, vector);
|
|
245
|
+
const move: TypedElementMove<T> = { element, fromPosition, toPosition, valid: true, moveVector: vector, sourceVector: vector };
|
|
246
|
+
|
|
247
|
+
if (options.snap) {
|
|
248
|
+
move.toPosition = this.snapPosition(move, options);
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
if (options.restrict) {
|
|
252
|
+
move.toPosition = this.restrictMovement(move, options);
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
if (options.validate) {
|
|
256
|
+
move.valid = this.validateElementMove(move, options);
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
move.moveVector = Point.vector(move.fromPosition, move.toPosition);
|
|
260
|
+
return move;
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
protected snapPosition(elementMove: TrackedElementMove, opts: MoveOptions): Point {
|
|
264
|
+
return this.manager.snapPosition(elementMove.element, elementMove.toPosition);
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
protected restrictMovement(elementMove: TrackedElementMove, opts: MoveOptions): Point {
|
|
268
|
+
const movement = Point.move(elementMove.fromPosition, elementMove.toPosition);
|
|
269
|
+
return this.manager.restrictMovement(elementMove.element, movement).to;
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
protected validateElementMove(elementMove: TrackedElementMove, opts: MoveOptions): boolean {
|
|
273
|
+
return this.manager.hasValidPosition(elementMove.element, elementMove.toPosition);
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
//
|
|
277
|
+
// RESIZE
|
|
278
|
+
//
|
|
279
|
+
|
|
280
|
+
resizeElements(handle: GResizeHandle, opts?: Partial<ResizeOptions>): TrackedResize {
|
|
281
|
+
const options = this.resolveResizeOptions(opts);
|
|
282
|
+
const update = this.calculateDiagramMovement();
|
|
283
|
+
const handleMove = this.calculateHandleMove(new MoveableResizeHandle(handle), update.vector, options);
|
|
284
|
+
const resize: TrackedResize = { ...update, valid: { move: true, size: true }, options, handleMove, elementResizes: [] };
|
|
285
|
+
if (Vector.isZero(handleMove.moveVector) && options.skipStatic) {
|
|
286
|
+
// no movement detected so elements won't be moved, exit early
|
|
287
|
+
return resize;
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
// calculate resize for each element (typically only one element is resized at a time but customizations are possible)
|
|
291
|
+
const elementsToResize = this.getResizableElements(handle, options);
|
|
292
|
+
for (const element of elementsToResize) {
|
|
293
|
+
const elementResize = this.calculateElementResize(element, handleMove, options);
|
|
294
|
+
if (!this.skipElementResize(elementResize, options)) {
|
|
295
|
+
resize.elementResizes.push(elementResize);
|
|
296
|
+
resize.valid.move = resize.valid.move && elementResize.valid.move;
|
|
297
|
+
resize.valid.size = resize.valid.size && elementResize.valid.size;
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
return resize;
|
|
301
|
+
}
|
|
302
|
+
|
|
303
|
+
protected resolveResizeOptions(opts?: Partial<ResizeOptions>): ResizeOptions {
|
|
304
|
+
return {
|
|
305
|
+
...DEFAULT_RESIZE_OPTIONS,
|
|
306
|
+
...opts,
|
|
307
|
+
snap: this.manager.usePositionSnap(opts?.snap ?? DEFAULT_RESIZE_OPTIONS.snap),
|
|
308
|
+
restrict: this.manager.useMovementRestriction(opts?.restrict ?? DEFAULT_RESIZE_OPTIONS.restrict),
|
|
309
|
+
symmetric: this.manager.useSymmetricResize(opts?.symmetric ?? DEFAULT_RESIZE_OPTIONS.symmetric)
|
|
310
|
+
};
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
protected calculateHandleMove(handle: MoveableResizeHandle, diagramMovement: Vector, opts?: Partial<ResizeOptions>): TrackedHandleMove {
|
|
314
|
+
const moveOptions = this.resolveMoveOptions({ ...opts, validate: false });
|
|
315
|
+
return this.calculateElementMove(handle, diagramMovement, moveOptions);
|
|
316
|
+
}
|
|
317
|
+
|
|
318
|
+
protected getResizableElements(handle: GResizeHandle, options: ResizeOptions): ResizableModelElement[] {
|
|
319
|
+
return [handle.parent];
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
protected skipElementResize(elementResize: TrackedElementResize, options: ResizeOptions): boolean {
|
|
323
|
+
return (
|
|
324
|
+
(options.skipInvalidMove && !elementResize.valid.move) ||
|
|
325
|
+
(options.skipInvalidSize && !elementResize.valid.size) ||
|
|
326
|
+
(options.skipStatic && Dimension.equals(elementResize.fromBounds, elementResize.toBounds))
|
|
327
|
+
);
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
protected calculateElementResize(
|
|
331
|
+
element: ResizableModelElement,
|
|
332
|
+
handleMove: TrackedHandleMove,
|
|
333
|
+
options: ResizeOptions
|
|
334
|
+
): TrackedElementResize {
|
|
335
|
+
const fromBounds = element.bounds;
|
|
336
|
+
const toBounds = this.calculateElementBounds(element, handleMove, options);
|
|
337
|
+
const resize: TrackedElementResize = { element, fromBounds, toBounds, valid: { size: true, move: true } };
|
|
338
|
+
|
|
339
|
+
if (options.validate) {
|
|
340
|
+
resize.valid.size = this.manager.hasValidSize(resize.element, resize.toBounds);
|
|
341
|
+
resize.valid.move = handleMove.valid && this.manager.hasValidPosition(resize.element, resize.toBounds);
|
|
342
|
+
}
|
|
343
|
+
|
|
344
|
+
return resize;
|
|
345
|
+
}
|
|
346
|
+
|
|
347
|
+
protected calculateElementBounds(element: ResizableModelElement, handleMove: TrackedHandleMove, options: ResizeOptions): Bounds {
|
|
348
|
+
let toBounds = this.calculateBounds(element.bounds, handleMove);
|
|
349
|
+
if (options.symmetric) {
|
|
350
|
+
const symmetricHandleMove = this.calculateSymmetricHandleMove(handleMove, options);
|
|
351
|
+
toBounds = this.calculateBounds(toBounds, symmetricHandleMove);
|
|
352
|
+
}
|
|
353
|
+
if (!options.constrainResize || this.manager.hasValidSize(element, toBounds)) {
|
|
354
|
+
return toBounds;
|
|
355
|
+
}
|
|
356
|
+
|
|
357
|
+
// we need to adjust to the minimum size but it is not enough to simply set the size
|
|
358
|
+
// we need to make sure that the element is still at the expected position
|
|
359
|
+
// we therefore constrain the movement vector to actually avoid going below the minimum size
|
|
360
|
+
const minimum = this.manager.getMinimumSize(element);
|
|
361
|
+
handleMove.moveVector = this.constrainResizeVector(element.bounds, handleMove, minimum);
|
|
362
|
+
if (options.symmetric) {
|
|
363
|
+
// if we have symmetric resize we want to distribute the constrained movement vector to both sides
|
|
364
|
+
// but only for the dimension that was actually resized beyond the minimum
|
|
365
|
+
handleMove.moveVector.x = element.bounds.width > minimum.width ? handleMove.moveVector.x / 2 : handleMove.moveVector.x;
|
|
366
|
+
handleMove.moveVector.y = element.bounds.height > minimum.height ? handleMove.moveVector.y / 2 : handleMove.moveVector.y;
|
|
367
|
+
}
|
|
368
|
+
toBounds = this.calculateBounds(element.bounds, handleMove);
|
|
369
|
+
if (options.symmetric) {
|
|
370
|
+
// since we already distributed the available movement vector, we do not want to snap the symmetric handle move
|
|
371
|
+
const symmetricHandleMove = this.calculateSymmetricHandleMove(handleMove, { ...options, snap: false });
|
|
372
|
+
toBounds = this.calculateBounds(toBounds, symmetricHandleMove);
|
|
373
|
+
}
|
|
374
|
+
return toBounds;
|
|
375
|
+
}
|
|
376
|
+
|
|
377
|
+
protected calculateSymmetricHandleMove(handleMove: TrackedHandleMove, options: ResizeOptions): TrackedHandleMove {
|
|
378
|
+
const moveOptions = this.resolveMoveOptions({ ...options, validate: false, restrict: false });
|
|
379
|
+
return this.calculateElementMove(handleMove.element.opposite(), Vector.reverse(handleMove.moveVector), moveOptions);
|
|
380
|
+
}
|
|
381
|
+
|
|
382
|
+
protected calculateBounds(src: Readonly<Bounds>, handleMove?: TrackedHandleMove): Bounds {
|
|
383
|
+
if (!handleMove || Vector.isZero(handleMove.moveVector)) {
|
|
384
|
+
return src;
|
|
385
|
+
}
|
|
386
|
+
return this.doCalculateBounds(src, handleMove.moveVector, handleMove.element.location);
|
|
387
|
+
}
|
|
388
|
+
|
|
389
|
+
protected doCalculateBounds(src: Readonly<Bounds>, vector: Vector, location: ResizeHandleLocation): Bounds {
|
|
390
|
+
switch (location) {
|
|
391
|
+
case ResizeHandleLocation.TopLeft:
|
|
392
|
+
return { x: src.x + vector.x, y: src.y + vector.y, width: src.width - vector.x, height: src.height - vector.y };
|
|
393
|
+
case ResizeHandleLocation.Top:
|
|
394
|
+
return { ...src, y: src.y + vector.y, height: src.height - vector.y };
|
|
395
|
+
case ResizeHandleLocation.TopRight:
|
|
396
|
+
return { ...src, y: src.y + vector.y, width: src.width + vector.x, height: src.height - vector.y };
|
|
397
|
+
case ResizeHandleLocation.Right:
|
|
398
|
+
return { ...src, width: src.width + vector.x };
|
|
399
|
+
case ResizeHandleLocation.BottomRight:
|
|
400
|
+
return { ...src, width: src.width + vector.x, height: src.height + vector.y };
|
|
401
|
+
case ResizeHandleLocation.Bottom:
|
|
402
|
+
return { ...src, height: src.height + vector.y };
|
|
403
|
+
case ResizeHandleLocation.BottomLeft:
|
|
404
|
+
return { ...src, x: src.x + vector.x, width: src.width - vector.x, height: src.height + vector.y };
|
|
405
|
+
case ResizeHandleLocation.Left:
|
|
406
|
+
return { ...src, x: src.x + vector.x, width: src.width - vector.x };
|
|
407
|
+
}
|
|
408
|
+
}
|
|
409
|
+
|
|
410
|
+
protected constrainResizeVector(src: Readonly<Bounds>, handleMove: TrackedHandleMove, minimum: Dimension): Vector {
|
|
411
|
+
const vector = handleMove.moveVector as Writable<Vector>;
|
|
412
|
+
switch (handleMove.element.location) {
|
|
413
|
+
case ResizeHandleLocation.TopLeft:
|
|
414
|
+
vector.x = src.width - vector.x < minimum.width ? src.width - minimum.width : vector.x;
|
|
415
|
+
vector.y = src.height - vector.y < minimum.height ? src.height - minimum.height : vector.y;
|
|
416
|
+
break;
|
|
417
|
+
case ResizeHandleLocation.Top:
|
|
418
|
+
vector.y = src.height - vector.y < minimum.height ? src.height - minimum.height : vector.y;
|
|
419
|
+
break;
|
|
420
|
+
case ResizeHandleLocation.TopRight:
|
|
421
|
+
vector.x = src.width + vector.x < minimum.width ? minimum.width - src.width : vector.x;
|
|
422
|
+
vector.y = src.height - vector.y < minimum.height ? src.height - minimum.height : vector.y;
|
|
423
|
+
break;
|
|
424
|
+
case ResizeHandleLocation.Right:
|
|
425
|
+
vector.x = src.width + vector.x < minimum.width ? minimum.width - src.width : vector.x;
|
|
426
|
+
break;
|
|
427
|
+
case ResizeHandleLocation.BottomRight:
|
|
428
|
+
vector.x = src.width + vector.x < minimum.width ? minimum.width - src.width : vector.x;
|
|
429
|
+
vector.y = src.height + vector.y < minimum.height ? minimum.height - src.height : vector.y;
|
|
430
|
+
break;
|
|
431
|
+
case ResizeHandleLocation.Bottom:
|
|
432
|
+
vector.y = src.height + vector.y < minimum.height ? minimum.height - src.height : vector.y;
|
|
433
|
+
break;
|
|
434
|
+
case ResizeHandleLocation.BottomLeft:
|
|
435
|
+
vector.x = src.width - vector.x < minimum.width ? src.width - minimum.width : vector.x;
|
|
436
|
+
vector.y = src.height + vector.y < minimum.height ? minimum.height - src.height : vector.y;
|
|
437
|
+
break;
|
|
438
|
+
case ResizeHandleLocation.Left:
|
|
439
|
+
vector.x = src.width - vector.x < minimum.width ? src.width - minimum.width : vector.x;
|
|
440
|
+
break;
|
|
441
|
+
}
|
|
442
|
+
return vector;
|
|
443
|
+
}
|
|
444
|
+
|
|
445
|
+
dispose(): void {
|
|
446
|
+
this.stopTracking();
|
|
447
|
+
}
|
|
448
|
+
}
|
|
449
|
+
|
|
450
|
+
export class MoveableResizeHandle extends GResizeHandle implements Locateable {
|
|
451
|
+
constructor(
|
|
452
|
+
protected handle: GResizeHandle,
|
|
453
|
+
override location: ResizeHandleLocation = handle.location,
|
|
454
|
+
readonly position = GResizeHandle.getHandlePosition(handle.parent, location)
|
|
455
|
+
) {
|
|
456
|
+
super(location, handle.type, handle.hoverFeedback);
|
|
457
|
+
this.id = handle.id;
|
|
458
|
+
// this only acts as a wrapper so we do not actually add this to the parent but still want the parent reference
|
|
459
|
+
(this as any).parent = handle.parent;
|
|
460
|
+
}
|
|
461
|
+
|
|
462
|
+
opposite(): MoveableResizeHandle {
|
|
463
|
+
return new MoveableResizeHandle(this.handle, ResizeHandleLocation.opposite(this.location));
|
|
464
|
+
}
|
|
465
|
+
}
|
|
466
|
+
|
|
467
|
+
export class MoveableRoutingHandle extends GRoutingHandle implements Locateable {
|
|
468
|
+
constructor(
|
|
469
|
+
protected handle: GRoutingHandle,
|
|
470
|
+
readonly position: Point
|
|
471
|
+
) {
|
|
472
|
+
super();
|
|
473
|
+
this.id = handle.id;
|
|
474
|
+
// this only acts as a wrapper so we do not actually add this to the parent but still want the parent reference
|
|
475
|
+
(this as any).parent = handle.parent;
|
|
476
|
+
}
|
|
477
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/********************************************************************************
|
|
2
|
-
* Copyright (c) 2019-
|
|
2
|
+
* Copyright (c) 2019-2024 EclipseSource and others.
|
|
3
3
|
*
|
|
4
4
|
* This program and the accompanying materials are made available under the
|
|
5
5
|
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
@@ -13,17 +13,18 @@
|
|
|
13
13
|
*
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
|
+
/** @jsx svg */
|
|
16
17
|
import { IView, Point, RenderingContext, setAttr, svg } from '@eclipse-glsp/sprotty';
|
|
17
18
|
import { injectable } from 'inversify';
|
|
18
19
|
import { VNode } from 'snabbdom';
|
|
19
|
-
import {
|
|
20
|
-
|
|
21
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
22
|
-
const JSX = { createElement: svg };
|
|
20
|
+
import { GResizeHandle } from '../../change-bounds/model';
|
|
23
21
|
|
|
24
22
|
@injectable()
|
|
25
|
-
export class
|
|
26
|
-
render(handle:
|
|
23
|
+
export class GResizeHandleView implements IView {
|
|
24
|
+
render(handle: GResizeHandle, context: RenderingContext): VNode | undefined {
|
|
25
|
+
if (context.targetKind === 'hidden') {
|
|
26
|
+
return undefined;
|
|
27
|
+
}
|
|
27
28
|
const position = this.getPosition(handle);
|
|
28
29
|
if (position !== undefined) {
|
|
29
30
|
const node = (
|
|
@@ -42,23 +43,16 @@ export class SResizeHandleView implements IView {
|
|
|
42
43
|
return <g />;
|
|
43
44
|
}
|
|
44
45
|
|
|
45
|
-
protected getPosition(handle:
|
|
46
|
-
|
|
47
|
-
if (isResizable(parent)) {
|
|
48
|
-
if (handle.location === ResizeHandleLocation.TopLeft) {
|
|
49
|
-
return { x: 0, y: 0 };
|
|
50
|
-
} else if (handle.location === ResizeHandleLocation.TopRight) {
|
|
51
|
-
return { x: parent.bounds.width, y: 0 };
|
|
52
|
-
} else if (handle.location === ResizeHandleLocation.BottomLeft) {
|
|
53
|
-
return { x: 0, y: parent.bounds.height };
|
|
54
|
-
} else if (handle.location === ResizeHandleLocation.BottomRight) {
|
|
55
|
-
return { x: parent.bounds.width, y: parent.bounds.height };
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
return undefined;
|
|
46
|
+
protected getPosition(handle: GResizeHandle): Point | undefined {
|
|
47
|
+
return Point.subtract(GResizeHandle.getHandlePosition(handle), handle.parent.bounds);
|
|
59
48
|
}
|
|
60
49
|
|
|
61
50
|
getRadius(): number {
|
|
62
51
|
return 7;
|
|
63
52
|
}
|
|
64
53
|
}
|
|
54
|
+
|
|
55
|
+
export {
|
|
56
|
+
/** @deprecated Use {@link GResizeHandleView} instead */
|
|
57
|
+
GResizeHandleView as SResizeHandleView
|
|
58
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/********************************************************************************
|
|
2
|
-
* Copyright (c) 2019-
|
|
2
|
+
* Copyright (c) 2019-2024 EclipseSource and others.
|
|
3
3
|
*
|
|
4
4
|
* This program and the accompanying materials are made available under the
|
|
5
5
|
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
@@ -13,20 +13,20 @@
|
|
|
13
13
|
*
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
|
-
import { inject, injectable } from 'inversify';
|
|
17
16
|
import {
|
|
18
17
|
Action,
|
|
19
18
|
DeleteElementOperation,
|
|
19
|
+
GModelElement,
|
|
20
20
|
KeyListener,
|
|
21
21
|
KeyTool,
|
|
22
22
|
MouseListener,
|
|
23
|
-
GModelElement,
|
|
24
23
|
findParentByFeature,
|
|
25
24
|
isCtrlOrCmd,
|
|
26
25
|
isDeletable,
|
|
27
26
|
isSelectable,
|
|
28
27
|
matchesKeystroke
|
|
29
28
|
} from '@eclipse-glsp/sprotty';
|
|
29
|
+
import { inject, injectable } from 'inversify';
|
|
30
30
|
import { CursorCSS, cursorFeedbackAction } from '../../../base/feedback/css-feedback';
|
|
31
31
|
import { EnableDefaultToolsAction, Tool } from '../../../base/tool-manager/tool';
|
|
32
32
|
import { BaseEditTool } from '../base-tools';
|
|
@@ -89,10 +89,10 @@ export class MouseDeleteTool extends BaseEditTool {
|
|
|
89
89
|
}
|
|
90
90
|
|
|
91
91
|
enable(): void {
|
|
92
|
-
this.
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
);
|
|
92
|
+
const cursorFeedback = this.createFeedbackEmitter()
|
|
93
|
+
.add(cursorFeedbackAction(CursorCSS.ELEMENT_DELETION), cursorFeedbackAction())
|
|
94
|
+
.submit();
|
|
95
|
+
this.toDisposeOnDisable.push(this.mouseTool.registerListener(this.deleteToolMouseListener), cursorFeedback);
|
|
96
96
|
}
|
|
97
97
|
}
|
|
98
98
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/********************************************************************************
|
|
2
|
-
* Copyright (c) 2019-
|
|
2
|
+
* Copyright (c) 2019-2024 EclipseSource and others.
|
|
3
3
|
*
|
|
4
4
|
* This program and the accompanying materials are made available under the
|
|
5
5
|
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
@@ -16,8 +16,11 @@
|
|
|
16
16
|
import { FeatureModule, TYPES, bindAsService } from '@eclipse-glsp/sprotty';
|
|
17
17
|
import { DelKeyDeleteTool, MouseDeleteTool } from './delete-tool';
|
|
18
18
|
|
|
19
|
-
export const deletionToolModule = new FeatureModule(
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
19
|
+
export const deletionToolModule = new FeatureModule(
|
|
20
|
+
(bind, unbind, isBound, rebind) => {
|
|
21
|
+
const context = { bind, unbind, isBound, rebind };
|
|
22
|
+
bindAsService(context, TYPES.IDefaultTool, DelKeyDeleteTool);
|
|
23
|
+
bindAsService(context, TYPES.ITool, MouseDeleteTool);
|
|
24
|
+
},
|
|
25
|
+
{ featureId: Symbol('deletionTool') }
|
|
26
|
+
);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/********************************************************************************
|
|
2
|
-
* Copyright (c) 2019-
|
|
2
|
+
* Copyright (c) 2019-2024 EclipseSource and others.
|
|
3
3
|
*
|
|
4
4
|
* This program and the accompanying materials are made available under the
|
|
5
5
|
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
@@ -13,24 +13,26 @@
|
|
|
13
13
|
*
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
|
-
import { inject, injectable } from 'inversify';
|
|
17
16
|
import {
|
|
18
17
|
Action,
|
|
19
18
|
BindingContext,
|
|
20
19
|
CommandExecutionContext,
|
|
21
20
|
CommandReturn,
|
|
22
21
|
GChildElement,
|
|
22
|
+
GDanglingAnchor,
|
|
23
|
+
GEdgeSchema,
|
|
23
24
|
GModelRoot,
|
|
24
25
|
GRoutableElement,
|
|
25
26
|
TYPES,
|
|
26
27
|
configureCommand,
|
|
27
28
|
configureView,
|
|
29
|
+
deletableFeature,
|
|
28
30
|
findParentByFeature,
|
|
29
31
|
isBoundsAware,
|
|
30
|
-
isConnectable
|
|
31
|
-
GDanglingAnchor,
|
|
32
|
-
GEdgeSchema
|
|
32
|
+
isConnectable
|
|
33
33
|
} from '@eclipse-glsp/sprotty';
|
|
34
|
+
import { inject, injectable } from 'inversify';
|
|
35
|
+
import { feedbackFeature } from '../../../base/feedback/feedback-action-dispatcher';
|
|
34
36
|
import { FeedbackCommand } from '../../../base/feedback/feedback-command';
|
|
35
37
|
import { isRoutable } from '../../../utils/gmodel-util';
|
|
36
38
|
import { toAbsolutePosition } from '../../../utils/viewpoint-util';
|
|
@@ -103,6 +105,7 @@ export class RemoveFeedbackEdgeCommand extends FeedbackCommand {
|
|
|
103
105
|
}
|
|
104
106
|
|
|
105
107
|
export class FeedbackEdgeEnd extends GDanglingAnchor {
|
|
108
|
+
static override readonly DEFAULT_FEATURES = [deletableFeature, feedbackFeature];
|
|
106
109
|
static readonly TYPE = 'feedback-edge-end';
|
|
107
110
|
constructor(
|
|
108
111
|
readonly sourceId: string,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/********************************************************************************
|
|
2
|
-
* Copyright (c) 2019-
|
|
2
|
+
* Copyright (c) 2019-2024 EclipseSource and others.
|
|
3
3
|
*
|
|
4
4
|
* This program and the accompanying materials are made available under the
|
|
5
5
|
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
@@ -17,9 +17,12 @@ import { FeatureModule, TYPES, TriggerEdgeCreationAction, bindAsService, configu
|
|
|
17
17
|
import { configureDanglingFeedbackEdge } from './dangling-edge-feedback';
|
|
18
18
|
import { EdgeCreationTool } from './edge-creation-tool';
|
|
19
19
|
|
|
20
|
-
export const edgeCreationToolModule = new FeatureModule(
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
20
|
+
export const edgeCreationToolModule = new FeatureModule(
|
|
21
|
+
(bind, unbind, isBound, rebind) => {
|
|
22
|
+
const context = { bind, unbind, isBound, rebind };
|
|
23
|
+
bindAsService(context, TYPES.ITool, EdgeCreationTool);
|
|
24
|
+
configureActionHandler(context, TriggerEdgeCreationAction.KIND, EdgeCreationTool);
|
|
25
|
+
configureDanglingFeedbackEdge(context);
|
|
26
|
+
},
|
|
27
|
+
{ featureId: Symbol('edgeCreationTool') }
|
|
28
|
+
);
|