@eclipse-glsp/client 1.1.0-next.c8b4f65.194 → 1.1.0-next.cab84ec.250
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/README.md +1 -1
- package/{lib/features/tools/marquee-behavior.spec.d.ts → css/autocomplete-palette.css} +8 -3
- package/css/decoration.css +1 -1
- package/css/glsp-sprotty.css +34 -19
- package/lib/base/action-dispatcher.d.ts +1 -17
- package/lib/base/action-dispatcher.d.ts.map +1 -1
- package/lib/base/action-dispatcher.js +6 -7
- package/lib/base/action-dispatcher.js.map +1 -1
- package/lib/base/actions/focus-change-action.d.ts +2 -2
- package/lib/base/actions/focus-change-action.d.ts.map +1 -1
- package/lib/base/actions/focus-change-action.js +3 -3
- package/lib/base/actions/focus-change-action.js.map +1 -1
- package/lib/base/argumentable.d.ts +2 -3
- package/lib/base/argumentable.d.ts.map +1 -1
- package/lib/base/argumentable.js.map +1 -1
- package/lib/base/auto-complete/auto-complete-actions.d.ts +2 -2
- package/lib/base/auto-complete/auto-complete-actions.d.ts.map +1 -1
- package/lib/base/auto-complete/auto-complete-actions.js +3 -3
- package/lib/base/auto-complete/auto-complete-actions.js.map +1 -1
- package/lib/base/auto-complete/auto-complete-widget.d.ts +11 -6
- package/lib/base/auto-complete/auto-complete-widget.d.ts.map +1 -1
- package/lib/base/auto-complete/auto-complete-widget.js +35 -34
- package/lib/base/auto-complete/auto-complete-widget.js.map +1 -1
- package/lib/base/auto-complete/validation-decorator.d.ts +16 -1
- package/lib/base/auto-complete/validation-decorator.d.ts.map +1 -1
- package/lib/base/auto-complete/validation-decorator.js +6 -7
- package/lib/base/auto-complete/validation-decorator.js.map +1 -1
- package/lib/base/command-stack.d.ts +1 -2
- package/lib/base/command-stack.d.ts.map +1 -1
- package/lib/base/command-stack.js +7 -16
- package/lib/base/command-stack.js.map +1 -1
- package/lib/base/container-modules.d.ts +32 -2
- package/lib/base/container-modules.d.ts.map +1 -1
- package/lib/base/container-modules.js +84 -50
- package/lib/base/container-modules.js.map +1 -1
- package/lib/base/di.config.d.ts +2 -2
- package/lib/base/di.config.d.ts.map +1 -1
- package/lib/base/di.config.js +15 -17
- package/lib/base/di.config.js.map +1 -1
- package/lib/base/drag-aware-mouse-listener.d.ts +2 -3
- package/lib/base/drag-aware-mouse-listener.d.ts.map +1 -1
- package/lib/base/drag-aware-mouse-listener.js +17 -2
- package/lib/base/drag-aware-mouse-listener.js.map +1 -1
- package/lib/base/editor-context-service.d.ts +4 -20
- package/lib/base/editor-context-service.d.ts.map +1 -1
- package/lib/base/editor-context-service.js +13 -15
- package/lib/base/editor-context-service.js.map +1 -1
- package/lib/base/focus-tracker.d.ts +1 -17
- package/lib/base/focus-tracker.d.ts.map +1 -1
- package/lib/base/focus-tracker.js +17 -2
- package/lib/base/focus-tracker.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 +3 -3
- package/lib/base/model/model-registry.js.map +1 -1
- package/lib/base/model/update-model-command.d.ts +1 -17
- package/lib/base/model/update-model-command.d.ts.map +1 -1
- package/lib/base/model/update-model-command.js +12 -14
- package/lib/base/model/update-model-command.js.map +1 -1
- package/lib/base/model-initialization-constraint.d.ts +1 -16
- package/lib/base/model-initialization-constraint.d.ts.map +1 -1
- package/lib/base/model-initialization-constraint.js +5 -6
- package/lib/base/model-initialization-constraint.js.map +1 -1
- package/lib/base/selection-clearing-mouse-listener.d.ts +1 -1
- package/lib/base/selection-clearing-mouse-listener.d.ts.map +1 -1
- package/lib/base/selection-clearing-mouse-listener.js +3 -3
- package/lib/base/selection-clearing-mouse-listener.js.map +1 -1
- package/lib/base/source-uri-aware.js +3 -3
- package/lib/base/source-uri-aware.js.map +1 -1
- package/lib/base/tool-manager/glsp-tool-manager.d.ts +5 -6
- package/lib/base/tool-manager/glsp-tool-manager.d.ts.map +1 -1
- package/lib/base/tool-manager/glsp-tool-manager.js +24 -19
- package/lib/base/tool-manager/glsp-tool-manager.js.map +1 -1
- package/lib/base/view/view-registry.d.ts +1 -1
- package/lib/base/view/view-registry.d.ts.map +1 -1
- package/lib/base/view/view-registry.js +3 -3
- package/lib/base/view/view-registry.js.map +1 -1
- package/lib/{base/actions/sprotty-actions.js → features/accessibility/di.config.d.ts} +7 -7
- package/lib/features/accessibility/di.config.d.ts.map +1 -0
- package/lib/features/accessibility/di.config.js +34 -0
- package/lib/features/accessibility/di.config.js.map +1 -0
- package/lib/features/accessibility/move-zoom/di.config.d.ts +23 -0
- package/lib/features/accessibility/move-zoom/di.config.d.ts.map +1 -0
- package/lib/features/accessibility/move-zoom/di.config.js +41 -0
- package/lib/features/accessibility/move-zoom/di.config.js.map +1 -0
- package/lib/features/accessibility/move-zoom/move-handler.d.ts +80 -0
- package/lib/features/accessibility/move-zoom/move-handler.d.ts.map +1 -0
- package/lib/features/accessibility/move-zoom/move-handler.js +171 -0
- package/lib/features/accessibility/move-zoom/move-handler.js.map +1 -0
- package/lib/features/accessibility/move-zoom/zoom-handler.d.ts +73 -0
- package/lib/features/accessibility/move-zoom/zoom-handler.d.ts.map +1 -0
- package/lib/features/accessibility/move-zoom/zoom-handler.js +157 -0
- package/lib/features/accessibility/move-zoom/zoom-handler.js.map +1 -0
- package/lib/features/accessibility/resize-key-tool/di.config.d.ts +23 -0
- package/lib/features/accessibility/resize-key-tool/di.config.d.ts.map +1 -0
- package/lib/features/accessibility/resize-key-tool/di.config.js +36 -0
- package/lib/features/accessibility/resize-key-tool/di.config.js.map +1 -0
- package/lib/features/accessibility/resize-key-tool/resize-key-handler.d.ts +54 -0
- package/lib/features/accessibility/resize-key-tool/resize-key-handler.d.ts.map +1 -0
- package/lib/features/accessibility/resize-key-tool/resize-key-handler.js +124 -0
- package/lib/features/accessibility/resize-key-tool/resize-key-handler.js.map +1 -0
- package/lib/features/accessibility/resize-key-tool/resize-key-tool.d.ts +43 -0
- package/lib/features/accessibility/resize-key-tool/resize-key-tool.d.ts.map +1 -0
- package/lib/features/accessibility/resize-key-tool/resize-key-tool.js +126 -0
- package/lib/features/accessibility/resize-key-tool/resize-key-tool.js.map +1 -0
- package/lib/features/accessibility/search/di.config.d.ts +20 -0
- package/lib/features/accessibility/search/di.config.d.ts.map +1 -0
- package/lib/features/accessibility/search/di.config.js +32 -0
- package/lib/features/accessibility/search/di.config.js.map +1 -0
- package/lib/features/accessibility/search/search-palette.d.ts +46 -0
- package/lib/features/accessibility/search/search-palette.d.ts.map +1 -0
- package/lib/features/accessibility/search/search-palette.js +162 -0
- package/lib/features/accessibility/search/search-palette.js.map +1 -0
- package/lib/features/accessibility/search/search-tool.d.ts +29 -0
- package/lib/features/accessibility/search/search-tool.d.ts.map +1 -0
- package/lib/features/accessibility/search/search-tool.js +73 -0
- package/lib/features/accessibility/search/search-tool.js.map +1 -0
- package/lib/features/accessibility/view-key-tools/deselect-key-tool.d.ts +34 -0
- package/lib/features/accessibility/view-key-tools/deselect-key-tool.d.ts.map +1 -0
- package/lib/features/accessibility/view-key-tools/deselect-key-tool.js +86 -0
- package/lib/features/accessibility/view-key-tools/deselect-key-tool.js.map +1 -0
- package/lib/features/accessibility/view-key-tools/di.config.d.ts +20 -0
- package/lib/features/accessibility/view-key-tools/di.config.d.ts.map +1 -0
- package/lib/features/accessibility/view-key-tools/di.config.js +34 -0
- package/lib/features/accessibility/view-key-tools/di.config.js.map +1 -0
- package/lib/features/accessibility/view-key-tools/movement-key-tool.d.ts +48 -0
- package/lib/features/accessibility/view-key-tools/movement-key-tool.d.ts.map +1 -0
- package/lib/features/accessibility/view-key-tools/movement-key-tool.js +130 -0
- package/lib/features/accessibility/view-key-tools/movement-key-tool.js.map +1 -0
- package/lib/features/accessibility/view-key-tools/zoom-key-tool.d.ts +42 -0
- package/lib/features/accessibility/view-key-tools/zoom-key-tool.d.ts.map +1 -0
- package/lib/features/accessibility/view-key-tools/zoom-key-tool.js +107 -0
- package/lib/features/accessibility/view-key-tools/zoom-key-tool.js.map +1 -0
- package/lib/features/autocomplete-palette/autocomplete-suggestion-providers.d.ts +35 -0
- package/lib/features/autocomplete-palette/autocomplete-suggestion-providers.d.ts.map +1 -0
- package/lib/features/{change-bounds/snap.spec.d.ts → autocomplete-palette/autocomplete-suggestion-providers.js} +4 -3
- package/lib/features/autocomplete-palette/autocomplete-suggestion-providers.js.map +1 -0
- package/lib/features/autocomplete-palette/base-autocomplete-palette.d.ts +40 -0
- package/lib/features/autocomplete-palette/base-autocomplete-palette.d.ts.map +1 -0
- package/lib/features/autocomplete-palette/base-autocomplete-palette.js +82 -0
- package/lib/features/autocomplete-palette/base-autocomplete-palette.js.map +1 -0
- package/lib/features/bounds/di.config.d.ts +19 -0
- package/lib/features/bounds/di.config.d.ts.map +1 -0
- package/lib/features/bounds/di.config.js +37 -0
- package/lib/features/bounds/di.config.js.map +1 -0
- package/lib/features/bounds/freeform-layout.d.ts +14 -0
- package/lib/features/bounds/freeform-layout.d.ts.map +1 -0
- package/lib/features/{layout → bounds}/freeform-layout.js +5 -6
- package/lib/features/bounds/freeform-layout.js.map +1 -0
- package/lib/features/bounds/glsp-hidden-bounds-updater.d.ts +33 -0
- package/lib/features/bounds/glsp-hidden-bounds-updater.d.ts.map +1 -0
- package/lib/features/bounds/glsp-hidden-bounds-updater.js +98 -0
- package/lib/features/bounds/glsp-hidden-bounds-updater.js.map +1 -0
- package/lib/features/{layout → bounds}/hbox-layout.d.ts +1 -17
- package/lib/features/bounds/hbox-layout.d.ts.map +1 -0
- package/lib/features/{layout → bounds}/hbox-layout.js +10 -11
- package/lib/features/bounds/hbox-layout.js.map +1 -0
- package/lib/features/bounds/layouter.d.ts +21 -0
- package/lib/features/bounds/layouter.d.ts.map +1 -0
- package/lib/features/{layout → bounds}/layouter.js +9 -10
- package/lib/features/bounds/layouter.js.map +1 -0
- package/lib/features/{layout → bounds}/vbox-layout.d.ts +1 -17
- package/lib/features/bounds/vbox-layout.d.ts.map +1 -0
- package/lib/features/{layout → bounds}/vbox-layout.js +10 -11
- package/lib/features/bounds/vbox-layout.js.map +1 -0
- package/lib/features/change-bounds/model.d.ts +2 -2
- package/lib/features/change-bounds/model.d.ts.map +1 -1
- package/lib/features/change-bounds/model.js +7 -7
- package/lib/features/change-bounds/model.js.map +1 -1
- package/lib/features/change-bounds/movement-restrictor.d.ts +1 -17
- package/lib/features/change-bounds/movement-restrictor.d.ts.map +1 -1
- package/lib/features/change-bounds/movement-restrictor.js +19 -4
- package/lib/features/change-bounds/movement-restrictor.js.map +1 -1
- package/lib/features/change-bounds/snap.d.ts +1 -17
- package/lib/features/change-bounds/snap.d.ts.map +1 -1
- package/lib/features/change-bounds/snap.js +17 -2
- package/lib/features/change-bounds/snap.js.map +1 -1
- package/lib/features/command-palette/command-palette-tool.d.ts +2 -2
- package/lib/features/command-palette/command-palette-tool.d.ts.map +1 -1
- package/lib/features/command-palette/command-palette-tool.js +7 -7
- package/lib/features/command-palette/command-palette-tool.js.map +1 -1
- package/lib/features/command-palette/di.config.d.ts +1 -1
- package/lib/features/command-palette/di.config.d.ts.map +1 -1
- package/lib/features/command-palette/di.config.js +6 -9
- package/lib/features/command-palette/di.config.js.map +1 -1
- package/lib/features/command-palette/server-command-palette-provider.d.ts +1 -17
- package/lib/features/command-palette/server-command-palette-provider.d.ts.map +1 -1
- package/lib/features/command-palette/server-command-palette-provider.js +5 -6
- package/lib/features/command-palette/server-command-palette-provider.js.map +1 -1
- package/lib/features/context-menu/delete-element-context-menu.d.ts +1 -17
- package/lib/features/context-menu/delete-element-context-menu.d.ts.map +1 -1
- package/lib/features/context-menu/delete-element-context-menu.js +4 -5
- package/lib/features/context-menu/delete-element-context-menu.js.map +1 -1
- package/lib/features/context-menu/di.config.d.ts +1 -1
- package/lib/features/context-menu/di.config.d.ts.map +1 -1
- package/lib/features/context-menu/di.config.js +8 -9
- package/lib/features/context-menu/di.config.js.map +1 -1
- package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.d.ts +1 -17
- package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.d.ts.map +1 -1
- package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js +21 -7
- package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js.map +1 -1
- package/lib/features/context-menu/server-context-menu-provider.d.ts +1 -17
- package/lib/features/context-menu/server-context-menu-provider.d.ts.map +1 -1
- package/lib/features/context-menu/server-context-menu-provider.js +6 -8
- package/lib/features/context-menu/server-context-menu-provider.js.map +1 -1
- package/lib/features/copy-paste/copy-paste-context-menu.d.ts +1 -17
- package/lib/features/copy-paste/copy-paste-context-menu.d.ts.map +1 -1
- package/lib/features/copy-paste/copy-paste-context-menu.js +7 -9
- package/lib/features/copy-paste/copy-paste-context-menu.js.map +1 -1
- package/lib/features/copy-paste/copy-paste-handler.d.ts +4 -20
- package/lib/features/copy-paste/copy-paste-handler.d.ts.map +1 -1
- package/lib/features/copy-paste/copy-paste-handler.js +14 -16
- package/lib/features/copy-paste/copy-paste-handler.js.map +1 -1
- package/lib/features/copy-paste/di.config.d.ts +1 -1
- package/lib/features/copy-paste/di.config.d.ts.map +1 -1
- package/lib/features/copy-paste/di.config.js +6 -7
- package/lib/features/copy-paste/di.config.js.map +1 -1
- package/lib/features/decoration/decoration-placer.d.ts +1 -17
- package/lib/features/decoration/decoration-placer.d.ts.map +1 -1
- package/lib/features/decoration/decoration-placer.js +6 -7
- package/lib/features/decoration/decoration-placer.js.map +1 -1
- package/lib/features/decoration/di.config.d.ts +1 -1
- package/lib/features/decoration/di.config.d.ts.map +1 -1
- package/lib/features/decoration/di.config.js +4 -5
- package/lib/features/decoration/di.config.js.map +1 -1
- package/lib/features/edit-label/di.config.d.ts +1 -1
- package/lib/features/edit-label/di.config.d.ts.map +1 -1
- package/lib/features/edit-label/di.config.js +6 -7
- package/lib/features/edit-label/di.config.js.map +1 -1
- package/lib/features/edit-label/edit-label-tool.d.ts +1 -1
- package/lib/features/edit-label/edit-label-tool.d.ts.map +1 -1
- package/lib/features/edit-label/edit-label-tool.js +4 -4
- package/lib/features/edit-label/edit-label-tool.js.map +1 -1
- package/lib/features/edit-label/edit-label-validator.d.ts +1 -17
- package/lib/features/edit-label/edit-label-validator.d.ts.map +1 -1
- package/lib/features/edit-label/edit-label-validator.js +7 -8
- package/lib/features/edit-label/edit-label-validator.js.map +1 -1
- package/lib/features/export/di.config.d.ts +19 -0
- package/lib/features/export/di.config.d.ts.map +1 -0
- package/lib/features/export/di.config.js +29 -0
- package/lib/features/export/di.config.js.map +1 -0
- package/lib/features/export/glsp-svg-exporter.d.ts +1 -17
- package/lib/features/export/glsp-svg-exporter.d.ts.map +1 -1
- package/lib/features/export/glsp-svg-exporter.js +19 -5
- package/lib/features/export/glsp-svg-exporter.js.map +1 -1
- package/lib/features/hints/di.config.d.ts +15 -0
- package/lib/features/hints/di.config.d.ts.map +1 -1
- package/lib/features/hints/di.config.js +5 -7
- package/lib/features/hints/di.config.js.map +1 -1
- package/lib/features/hints/model.d.ts +2 -3
- package/lib/features/hints/model.d.ts.map +1 -1
- package/lib/features/hints/model.js.map +1 -1
- package/lib/features/hints/type-hints.d.ts +1 -17
- package/lib/features/hints/type-hints.d.ts.map +1 -1
- package/lib/features/hints/type-hints.js +14 -16
- package/lib/features/hints/type-hints.js.map +1 -1
- package/lib/features/hover/di.config.d.ts +1 -1
- package/lib/features/hover/di.config.d.ts.map +1 -1
- package/lib/features/hover/di.config.js +20 -22
- package/lib/features/hover/di.config.js.map +1 -1
- package/lib/features/hover/hover.d.ts +1 -17
- package/lib/features/hover/hover.d.ts.map +1 -1
- package/lib/features/hover/hover.js +9 -11
- package/lib/features/hover/hover.js.map +1 -1
- package/lib/features/layout/di.config.d.ts +1 -1
- package/lib/features/layout/di.config.d.ts.map +1 -1
- package/lib/features/layout/di.config.js +4 -12
- package/lib/features/layout/di.config.js.map +1 -1
- package/lib/features/layout/layout-elements-action.d.ts +5 -21
- package/lib/features/layout/layout-elements-action.d.ts.map +1 -1
- package/lib/features/layout/layout-elements-action.js +15 -19
- package/lib/features/layout/layout-elements-action.js.map +1 -1
- package/lib/features/mouse-tool/di.config.d.ts +1 -1
- package/lib/features/mouse-tool/di.config.d.ts.map +1 -1
- package/lib/features/mouse-tool/di.config.js +4 -5
- package/lib/features/mouse-tool/di.config.js.map +1 -1
- package/lib/features/mouse-tool/mouse-tool.d.ts +2 -2
- package/lib/features/mouse-tool/mouse-tool.d.ts.map +1 -1
- package/lib/features/mouse-tool/mouse-tool.js +5 -7
- package/lib/features/mouse-tool/mouse-tool.js.map +1 -1
- package/lib/features/navigation/di.config.d.ts +17 -1
- package/lib/features/navigation/di.config.d.ts.map +1 -1
- package/lib/features/navigation/di.config.js +8 -9
- package/lib/features/navigation/di.config.js.map +1 -1
- package/lib/features/navigation/navigation-action-handler.d.ts +2 -18
- package/lib/features/navigation/navigation-action-handler.d.ts.map +1 -1
- package/lib/features/navigation/navigation-action-handler.js +21 -22
- package/lib/features/navigation/navigation-action-handler.js.map +1 -1
- package/lib/features/navigation/navigation-target-resolver.d.ts +1 -17
- package/lib/features/navigation/navigation-target-resolver.d.ts.map +1 -1
- package/lib/features/navigation/navigation-target-resolver.js +9 -10
- package/lib/features/navigation/navigation-target-resolver.js.map +1 -1
- package/lib/features/reconnect/model.d.ts +2 -2
- package/lib/features/reconnect/model.d.ts.map +1 -1
- package/lib/features/reconnect/model.js +7 -7
- package/lib/features/reconnect/model.js.map +1 -1
- package/lib/features/save/di.config.d.ts +1 -1
- package/lib/features/save/di.config.js +3 -3
- package/lib/features/save/di.config.js.map +1 -1
- package/lib/features/save/model.d.ts +2 -2
- package/lib/features/save/model.d.ts.map +1 -1
- package/lib/features/save/save-keylistener.d.ts +2 -3
- package/lib/features/save/save-keylistener.d.ts.map +1 -1
- package/lib/features/save/save-keylistener.js +5 -7
- package/lib/features/save/save-keylistener.js.map +1 -1
- package/lib/features/select/di.config.d.ts +1 -1
- package/lib/features/select/di.config.d.ts.map +1 -1
- package/lib/features/select/di.config.js +9 -10
- package/lib/features/select/di.config.js.map +1 -1
- package/lib/features/select/select-feedback-action.d.ts +1 -17
- package/lib/features/select/select-feedback-action.d.ts.map +1 -1
- package/lib/features/select/select-feedback-action.js +7 -9
- package/lib/features/select/select-feedback-action.js.map +1 -1
- package/lib/features/select/select-mouse-listener.d.ts +3 -4
- package/lib/features/select/select-mouse-listener.d.ts.map +1 -1
- package/lib/features/select/select-mouse-listener.js +23 -25
- package/lib/features/select/select-mouse-listener.js.map +1 -1
- package/lib/features/select/selection-service.d.ts +1 -17
- package/lib/features/select/selection-service.d.ts.map +1 -1
- package/lib/features/select/selection-service.js +20 -22
- package/lib/features/select/selection-service.js.map +1 -1
- package/lib/features/source-model-watcher/di.config.d.ts +15 -0
- package/lib/features/source-model-watcher/di.config.d.ts.map +1 -1
- package/lib/features/source-model-watcher/di.config.js +3 -4
- package/lib/features/source-model-watcher/di.config.js.map +1 -1
- package/lib/features/source-model-watcher/source-model-changed-action-handler.d.ts +1 -17
- package/lib/features/source-model-watcher/source-model-changed-action-handler.d.ts.map +1 -1
- package/lib/features/source-model-watcher/source-model-changed-action-handler.js +7 -8
- package/lib/features/source-model-watcher/source-model-changed-action-handler.js.map +1 -1
- package/lib/features/svg-metadata/di.config.d.ts +19 -0
- package/lib/features/svg-metadata/di.config.d.ts.map +1 -0
- package/lib/features/svg-metadata/di.config.js +26 -0
- package/lib/features/svg-metadata/di.config.js.map +1 -0
- package/{src/base/actions/sprotty-actions.ts → lib/features/svg-metadata/metadata-placer.d.ts} +8 -11
- package/lib/features/svg-metadata/metadata-placer.d.ts.map +1 -0
- package/lib/features/svg-metadata/metadata-placer.js +61 -0
- package/lib/features/svg-metadata/metadata-placer.js.map +1 -0
- package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts +2 -18
- package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/change-bounds-tool-feedback.js +17 -18
- package/lib/features/tool-feedback/change-bounds-tool-feedback.js.map +1 -1
- package/lib/features/tool-feedback/creation-tool-feedback.d.ts +5 -21
- package/lib/features/tool-feedback/creation-tool-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/creation-tool-feedback.js +27 -32
- package/lib/features/tool-feedback/creation-tool-feedback.js.map +1 -1
- package/lib/features/tool-feedback/css-feedback.d.ts +1 -17
- package/lib/features/tool-feedback/css-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/css-feedback.js +4 -6
- package/lib/features/tool-feedback/css-feedback.js.map +1 -1
- package/lib/features/tool-feedback/di.config.d.ts +1 -1
- package/lib/features/tool-feedback/di.config.d.ts.map +1 -1
- package/lib/features/tool-feedback/di.config.js +21 -21
- package/lib/features/tool-feedback/di.config.js.map +1 -1
- package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts +2 -19
- package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/edge-edit-tool-feedback.js +29 -36
- package/lib/features/tool-feedback/edge-edit-tool-feedback.js.map +1 -1
- package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts +1 -17
- package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts.map +1 -1
- package/lib/features/tool-feedback/feedback-action-dispatcher.js +18 -3
- package/lib/features/tool-feedback/feedback-action-dispatcher.js.map +1 -1
- package/lib/features/tool-feedback/marquee-tool-feedback.d.ts +1 -17
- package/lib/features/tool-feedback/marquee-tool-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/marquee-tool-feedback.js +7 -8
- package/lib/features/tool-feedback/marquee-tool-feedback.js.map +1 -1
- package/lib/features/tool-feedback/model.d.ts +2 -2
- package/lib/features/tool-feedback/model.d.ts.map +1 -1
- package/lib/features/tool-feedback/model.js +3 -3
- package/lib/features/tool-feedback/model.js.map +1 -1
- package/lib/features/tool-feedback/view.d.ts +1 -17
- package/lib/features/tool-feedback/view.d.ts.map +1 -1
- package/lib/features/tool-feedback/view.js +5 -6
- package/lib/features/tool-feedback/view.js.map +1 -1
- package/lib/features/tool-palette/di.config.d.ts +1 -1
- package/lib/features/tool-palette/di.config.d.ts.map +1 -1
- package/lib/features/tool-palette/di.config.js +6 -8
- package/lib/features/tool-palette/di.config.js.map +1 -1
- package/lib/features/tool-palette/tool-palette.d.ts +1 -17
- package/lib/features/tool-palette/tool-palette.d.ts.map +1 -1
- package/lib/features/tool-palette/tool-palette.js +20 -23
- package/lib/features/tool-palette/tool-palette.js.map +1 -1
- package/lib/features/tools/base-glsp-tool.d.ts +1 -17
- package/lib/features/tools/base-glsp-tool.d.ts.map +1 -1
- package/lib/features/tools/base-glsp-tool.js +21 -7
- package/lib/features/tools/base-glsp-tool.js.map +1 -1
- package/lib/features/tools/change-bounds-tool.d.ts +1 -17
- package/lib/features/tools/change-bounds-tool.d.ts.map +1 -1
- package/lib/features/tools/change-bounds-tool.js +27 -29
- package/lib/features/tools/change-bounds-tool.js.map +1 -1
- package/lib/features/tools/delete-tool.d.ts +1 -17
- package/lib/features/tools/delete-tool.d.ts.map +1 -1
- package/lib/features/tools/delete-tool.js +15 -18
- package/lib/features/tools/delete-tool.js.map +1 -1
- package/lib/features/tools/di.config.d.ts +18 -5
- package/lib/features/tools/di.config.d.ts.map +1 -1
- package/lib/features/tools/di.config.js +19 -22
- package/lib/features/tools/di.config.js.map +1 -1
- package/lib/features/tools/edge-creation-tool.d.ts +1 -17
- package/lib/features/tools/edge-creation-tool.d.ts.map +1 -1
- package/lib/features/tools/edge-creation-tool.js +14 -15
- package/lib/features/tools/edge-creation-tool.js.map +1 -1
- package/lib/features/tools/edge-edit-tool.d.ts +1 -17
- package/lib/features/tools/edge-edit-tool.d.ts.map +1 -1
- package/lib/features/tools/edge-edit-tool.js +18 -20
- package/lib/features/tools/edge-edit-tool.js.map +1 -1
- package/lib/features/tools/enable-default-tools-on-focus-loss.d.ts +1 -17
- package/lib/features/tools/enable-default-tools-on-focus-loss.d.ts.map +1 -1
- package/lib/features/tools/enable-default-tools-on-focus-loss.js +17 -2
- package/lib/features/tools/enable-default-tools-on-focus-loss.js.map +1 -1
- package/lib/features/tools/glsp-manhattan-edge-router.d.ts +20 -0
- package/lib/features/tools/glsp-manhattan-edge-router.d.ts.map +1 -0
- package/lib/features/tools/glsp-manhattan-edge-router.js +68 -0
- package/lib/features/tools/glsp-manhattan-edge-router.js.map +1 -0
- package/lib/features/tools/marquee-behavior.d.ts +2 -2
- package/lib/features/tools/marquee-behavior.d.ts.map +1 -1
- package/lib/features/tools/marquee-behavior.js +4 -4
- package/lib/features/tools/marquee-behavior.js.map +1 -1
- package/lib/features/tools/marquee-mouse-tool.d.ts +1 -18
- package/lib/features/tools/marquee-mouse-tool.d.ts.map +1 -1
- package/lib/features/tools/marquee-mouse-tool.js +15 -18
- package/lib/features/tools/marquee-mouse-tool.js.map +1 -1
- package/lib/features/tools/marquee-tool.d.ts +1 -17
- package/lib/features/tools/marquee-tool.d.ts.map +1 -1
- package/lib/features/tools/marquee-tool.js +20 -5
- package/lib/features/tools/marquee-tool.js.map +1 -1
- package/lib/features/tools/model.d.ts +2 -3
- package/lib/features/tools/model.d.ts.map +1 -1
- package/lib/features/tools/model.js +18 -3
- package/lib/features/tools/model.js.map +1 -1
- package/lib/features/tools/node-creation-tool.d.ts +1 -17
- package/lib/features/tools/node-creation-tool.d.ts.map +1 -1
- package/lib/features/tools/node-creation-tool.js +10 -11
- package/lib/features/tools/node-creation-tool.js.map +1 -1
- package/lib/features/tools/view.d.ts +1 -1
- package/lib/features/tools/view.d.ts.map +1 -1
- package/lib/features/tools/view.js +4 -4
- package/lib/features/tools/view.js.map +1 -1
- package/lib/features/validation/di.config.d.ts +15 -0
- package/lib/features/validation/di.config.d.ts.map +1 -1
- package/lib/features/validation/di.config.js +9 -11
- package/lib/features/validation/di.config.js.map +1 -1
- package/lib/features/validation/issue-marker.d.ts +2 -3
- package/lib/features/validation/issue-marker.d.ts.map +1 -1
- package/lib/features/validation/issue-marker.js +9 -10
- package/lib/features/validation/issue-marker.js.map +1 -1
- package/lib/features/validation/marker-navigator.d.ts +2 -18
- package/lib/features/validation/marker-navigator.d.ts.map +1 -1
- package/lib/features/validation/marker-navigator.js +17 -20
- package/lib/features/validation/marker-navigator.js.map +1 -1
- package/lib/features/validation/validate.d.ts +6 -22
- package/lib/features/validation/validate.d.ts.map +1 -1
- package/lib/features/validation/validate.js +28 -29
- package/lib/features/validation/validate.js.map +1 -1
- package/lib/features/viewport/di.config.d.ts +1 -1
- package/lib/features/viewport/di.config.d.ts.map +1 -1
- package/lib/features/viewport/di.config.js +12 -12
- package/lib/features/viewport/di.config.js.map +1 -1
- package/lib/features/viewport/glsp-scroll-mouse-listener.d.ts +1 -17
- package/lib/features/viewport/glsp-scroll-mouse-listener.d.ts.map +1 -1
- package/lib/features/viewport/glsp-scroll-mouse-listener.js +19 -4
- package/lib/features/viewport/glsp-scroll-mouse-listener.js.map +1 -1
- package/lib/{base/tool-manager/tool-actions.d.ts → glsp-sprotty/augmented-actions.d.ts} +7 -2
- package/lib/glsp-sprotty/augmented-actions.d.ts.map +1 -0
- package/lib/{base/tool-manager/tool-actions.js → glsp-sprotty/augmented-actions.js} +6 -2
- package/lib/glsp-sprotty/augmented-actions.js.map +1 -0
- package/lib/{sprotty-reexport.d.ts → glsp-sprotty/index.d.ts} +36 -20
- package/lib/glsp-sprotty/index.d.ts.map +1 -0
- package/lib/{sprotty-reexport.js → glsp-sprotty/index.js} +84 -42
- package/lib/glsp-sprotty/index.js.map +1 -0
- package/lib/glsp-sprotty/types.d.ts.map +1 -0
- package/lib/{base → glsp-sprotty}/types.js +2 -1
- package/lib/glsp-sprotty/types.js.map +1 -0
- package/lib/index.d.ts +39 -7
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +91 -46
- package/lib/index.js.map +1 -1
- package/lib/lib/model.d.ts +6 -3
- package/lib/lib/model.d.ts.map +1 -1
- package/lib/lib/model.js +50 -4
- package/lib/lib/model.js.map +1 -1
- package/lib/model-source/glsp-diagram-server.d.ts +1 -17
- package/lib/model-source/glsp-diagram-server.d.ts.map +1 -1
- package/lib/model-source/glsp-diagram-server.js +10 -11
- package/lib/model-source/glsp-diagram-server.js.map +1 -1
- package/lib/utils/argument-utils.d.ts +2 -2
- package/lib/utils/argument-utils.d.ts.map +1 -1
- package/lib/utils/argument-utils.js +1 -1
- package/lib/utils/argument-utils.js.map +1 -1
- package/lib/utils/html-utils.d.ts +1 -1
- package/lib/utils/html-utils.js +1 -1
- package/lib/utils/layout-utils.d.ts +2 -3
- package/lib/utils/layout-utils.d.ts.map +1 -1
- package/lib/utils/layout-utils.js.map +1 -1
- package/lib/utils/marker.d.ts +16 -1
- package/lib/utils/marker.d.ts.map +1 -1
- package/lib/utils/marker.js +6 -7
- package/lib/utils/marker.js.map +1 -1
- package/lib/utils/smodel-util.d.ts +28 -9
- package/lib/utils/smodel-util.d.ts.map +1 -1
- package/lib/utils/smodel-util.js +50 -18
- package/lib/utils/smodel-util.js.map +1 -1
- package/lib/utils/viewpoint-util.d.ts +2 -3
- package/lib/utils/viewpoint-util.d.ts.map +1 -1
- package/lib/utils/viewpoint-util.js +5 -6
- package/lib/utils/viewpoint-util.js.map +1 -1
- package/lib/views/base-view-module.d.ts +18 -6
- package/lib/views/base-view-module.d.ts.map +1 -1
- package/lib/views/base-view-module.js +22 -23
- package/lib/views/base-view-module.js.map +1 -1
- package/lib/views/compartments.d.ts +1 -1
- package/lib/views/compartments.d.ts.map +1 -1
- package/lib/views/compartments.js +4 -4
- package/lib/views/compartments.js.map +1 -1
- package/lib/views/glsp-edge-view.d.ts +2 -18
- package/lib/views/glsp-edge-view.d.ts.map +1 -1
- package/lib/views/glsp-edge-view.js +20 -5
- package/lib/views/glsp-edge-view.js.map +1 -1
- package/lib/views/glsp-projection-view.d.ts +2 -4
- package/lib/views/glsp-projection-view.d.ts.map +1 -1
- package/lib/views/glsp-projection-view.js +11 -9
- package/lib/views/glsp-projection-view.js.map +1 -1
- package/lib/views/index.d.ts +1 -1
- package/lib/views/index.js +1 -1
- package/lib/views/issue-marker-view.d.ts +1 -1
- package/lib/views/issue-marker-view.d.ts.map +1 -1
- package/lib/views/issue-marker-view.js +5 -5
- package/lib/views/issue-marker-view.js.map +1 -1
- package/lib/views/rounded-corner-view.d.ts +1 -1
- package/lib/views/rounded-corner-view.d.ts.map +1 -1
- package/lib/views/rounded-corner-view.js +6 -6
- package/lib/views/rounded-corner-view.js.map +1 -1
- package/lib/views/rounded-corner.d.ts +2 -3
- package/lib/views/rounded-corner.d.ts.map +1 -1
- package/lib/views/rounded-corner.js +1 -1
- package/lib/views/rounded-corner.js.map +1 -1
- package/package.json +25 -23
- package/src/base/action-dispatcher.ts +2 -3
- package/src/base/actions/focus-change-action.ts +2 -2
- package/src/base/argumentable.ts +2 -3
- package/src/base/auto-complete/auto-complete-actions.ts +2 -2
- package/src/base/auto-complete/auto-complete-widget.ts +35 -14
- package/src/base/auto-complete/validation-decorator.ts +2 -3
- package/src/base/command-stack.ts +13 -11
- package/src/base/container-modules.ts +46 -12
- package/src/base/di.config.ts +19 -10
- package/src/base/drag-aware-mouse-listener.ts +2 -3
- package/src/base/editor-context-service.ts +19 -7
- package/src/base/focus-tracker.ts +2 -4
- package/src/base/model/model-registry.ts +2 -2
- package/src/base/model/update-model-command.ts +8 -5
- package/src/base/model-initialization-constraint.ts +2 -3
- package/src/base/selection-clearing-mouse-listener.ts +2 -2
- package/src/base/source-uri-aware.ts +2 -2
- package/src/base/tool-manager/glsp-tool-manager.ts +15 -14
- package/src/base/view/view-registry.ts +2 -2
- package/src/features/accessibility/README.md +65 -0
- package/src/features/accessibility/di.config.ts +32 -0
- package/src/features/accessibility/move-zoom/di.config.ts +42 -0
- package/src/features/accessibility/move-zoom/move-handler.ts +209 -0
- package/src/features/accessibility/move-zoom/zoom-handler.ts +182 -0
- package/src/features/accessibility/resize-key-tool/di.config.ts +35 -0
- package/src/features/accessibility/resize-key-tool/resize-key-handler.ts +129 -0
- package/src/features/accessibility/resize-key-tool/resize-key-tool.ts +106 -0
- package/src/features/accessibility/search/di.config.ts +30 -0
- package/src/features/accessibility/search/search-palette.ts +193 -0
- package/src/features/accessibility/search/search-tool.ts +59 -0
- package/src/features/accessibility/view-key-tools/deselect-key-tool.ts +88 -0
- package/src/features/accessibility/view-key-tools/di.config.ts +32 -0
- package/src/features/accessibility/view-key-tools/movement-key-tool.ts +113 -0
- package/src/features/accessibility/view-key-tools/zoom-key-tool.ts +92 -0
- package/src/features/autocomplete-palette/autocomplete-suggestion-providers.ts +37 -0
- package/src/features/autocomplete-palette/base-autocomplete-palette.ts +87 -0
- package/src/features/bounds/di.config.ts +49 -0
- package/src/features/{layout/tests → bounds}/freeform-layout.spec.ts +3 -3
- package/src/features/{layout → bounds}/freeform-layout.ts +14 -6
- package/src/features/bounds/glsp-hidden-bounds-updater.ts +96 -0
- package/src/features/{layout/tests → bounds}/hbox-layout.spec.ts +3 -4
- package/src/features/{layout → bounds}/hbox-layout.ts +9 -7
- package/src/features/{layout/tests/layouter-test-util.ts → bounds/layouter-test-util.spec.ts} +12 -11
- package/src/features/{layout → bounds}/layouter.ts +7 -7
- package/src/features/{layout/tests → bounds}/vbox-layout.spec.ts +3 -4
- package/src/features/{layout → bounds}/vbox-layout.ts +8 -6
- package/src/features/change-bounds/model.ts +2 -2
- package/src/features/change-bounds/movement-restrictor.ts +3 -4
- package/src/features/change-bounds/snap.spec.ts +2 -2
- package/src/features/change-bounds/snap.ts +2 -3
- package/src/features/command-palette/command-palette-tool.ts +4 -4
- package/src/features/command-palette/di.config.ts +6 -9
- package/src/features/command-palette/server-command-palette-provider.ts +11 -4
- package/src/features/context-menu/delete-element-context-menu.ts +2 -4
- package/src/features/context-menu/di.config.ts +4 -5
- package/src/features/context-menu/selection-service-aware-context-menu-mouse-listener.ts +2 -4
- package/src/features/context-menu/server-context-menu-provider.ts +12 -4
- package/src/features/copy-paste/copy-paste-context-menu.ts +15 -4
- package/src/features/copy-paste/copy-paste-handler.ts +18 -16
- package/src/features/copy-paste/di.config.ts +2 -3
- package/src/features/decoration/decoration-placer.ts +2 -3
- package/src/features/decoration/di.config.ts +4 -5
- package/src/features/edit-label/di.config.ts +3 -4
- package/src/features/edit-label/edit-label-tool.ts +2 -2
- package/src/features/edit-label/edit-label-validator.ts +9 -6
- package/src/features/export/di.config.ts +28 -0
- package/src/features/export/glsp-svg-exporter.ts +9 -9
- package/src/features/hints/di.config.ts +2 -4
- package/src/features/hints/model.ts +2 -3
- package/src/features/hints/type-hints.ts +13 -9
- package/src/features/hover/di.config.ts +13 -12
- package/src/features/hover/hover.ts +14 -8
- package/src/features/layout/di.config.ts +2 -11
- package/src/features/layout/layout-elements-action.spec.ts +13 -15
- package/src/features/layout/layout-elements-action.ts +13 -10
- package/src/features/mouse-tool/di.config.ts +2 -3
- package/src/features/mouse-tool/mouse-tool.ts +2 -4
- package/src/features/navigation/di.config.ts +5 -4
- package/src/features/navigation/navigation-action-handler.ts +13 -9
- package/src/features/navigation/navigation-target-resolver.spec.ts +2 -3
- package/src/features/navigation/navigation-target-resolver.ts +10 -4
- package/src/features/reconnect/model.ts +2 -2
- package/src/features/save/di.config.ts +3 -3
- package/src/features/save/model.ts +2 -2
- package/src/features/save/save-keylistener.ts +2 -4
- package/src/features/select/di.config.ts +8 -9
- package/src/features/select/select-feedback-action.ts +11 -4
- package/src/features/select/select-mouse-listener.ts +11 -10
- package/src/features/select/selection-service.spec.ts +4 -8
- package/src/features/select/selection-service.ts +14 -9
- package/src/features/source-model-watcher/di.config.ts +2 -3
- package/src/features/source-model-watcher/source-model-changed-action-handler.ts +11 -4
- package/src/features/svg-metadata/di.config.ts +26 -0
- package/src/features/svg-metadata/metadata-placer.ts +49 -0
- package/src/features/tool-feedback/change-bounds-tool-feedback.ts +13 -11
- package/src/features/tool-feedback/creation-tool-feedback.ts +30 -21
- package/src/features/tool-feedback/css-feedback.ts +2 -5
- package/src/features/tool-feedback/di.config.ts +20 -20
- package/src/features/tool-feedback/edge-edit-tool-feedback.ts +14 -19
- package/src/features/tool-feedback/feedback-action-dispatcher.ts +2 -4
- package/src/features/tool-feedback/marquee-tool-feedback.ts +6 -4
- package/src/features/tool-feedback/model.ts +2 -2
- package/src/features/tool-feedback/view.tsx +2 -3
- package/src/features/tool-palette/di.config.ts +4 -6
- package/src/features/tool-palette/tool-palette.ts +13 -8
- package/src/features/tools/base-glsp-tool.ts +2 -4
- package/src/features/tools/change-bounds-tool.ts +21 -23
- package/src/features/tools/delete-tool.ts +10 -9
- package/src/features/tools/di.config.ts +29 -22
- package/src/features/tools/edge-creation-tool.ts +9 -7
- package/src/features/tools/edge-edit-tool.ts +13 -11
- package/src/features/tools/enable-default-tools-on-focus-loss.ts +2 -3
- package/src/features/tools/glsp-manhattan-edge-router.ts +59 -0
- package/src/features/tools/marquee-behavior.ts +2 -3
- package/src/features/tools/marquee-mouse-tool.ts +9 -8
- package/src/features/tools/marquee-tool.ts +2 -3
- package/src/features/tools/model.ts +2 -3
- package/src/features/tools/node-creation-tool.ts +8 -6
- package/src/features/tools/view.tsx +2 -2
- package/src/features/validation/di.config.ts +5 -7
- package/src/features/validation/issue-marker.ts +13 -3
- package/src/features/validation/marker-navigator.spec.ts +7 -8
- package/src/features/validation/marker-navigator.ts +16 -11
- package/src/features/validation/validate.ts +32 -23
- package/src/features/viewport/di.config.ts +14 -12
- package/src/features/viewport/glsp-scroll-mouse-listener.ts +10 -3
- package/src/{base/tool-manager/tool-actions.ts → glsp-sprotty/augmented-actions.ts} +14 -3
- package/src/{sprotty-reexport.ts → glsp-sprotty/index.ts} +102 -46
- package/src/{base → glsp-sprotty}/types.ts +2 -1
- package/src/index.ts +53 -8
- package/src/lib/model.ts +45 -3
- package/src/model-source/glsp-diagram-server.ts +10 -5
- package/src/utils/argument-utils.ts +2 -2
- package/src/utils/html-utils.ts +1 -1
- package/src/utils/layout-utils.ts +2 -3
- package/src/utils/marker.ts +2 -3
- package/src/utils/smodel-util.ts +56 -14
- package/src/utils/viewpoint-util.ts +13 -3
- package/src/views/base-view-module.ts +11 -15
- package/src/views/compartments.tsx +2 -2
- package/src/views/glsp-edge-view.tsx +4 -5
- package/src/views/glsp-projection-view.tsx +6 -5
- package/src/views/index.ts +1 -2
- package/src/views/issue-marker-view.tsx +2 -2
- package/src/views/rounded-corner-view.tsx +3 -3
- package/src/views/rounded-corner.ts +3 -4
- package/lib/base/actions/sprotty-actions.d.ts +0 -7
- package/lib/base/actions/sprotty-actions.d.ts.map +0 -1
- package/lib/base/actions/sprotty-actions.js.map +0 -1
- package/lib/base/tool-manager/tool-actions.d.ts.map +0 -1
- package/lib/base/tool-manager/tool-actions.js.map +0 -1
- package/lib/base/types.d.ts.map +0 -1
- package/lib/base/types.js.map +0 -1
- package/lib/features/change-bounds/snap.spec.d.ts.map +0 -1
- package/lib/features/change-bounds/snap.spec.js +0 -82
- package/lib/features/change-bounds/snap.spec.js.map +0 -1
- package/lib/features/layout/freeform-layout.d.ts +0 -32
- package/lib/features/layout/freeform-layout.d.ts.map +0 -1
- package/lib/features/layout/freeform-layout.js.map +0 -1
- package/lib/features/layout/hbox-layout.d.ts.map +0 -1
- package/lib/features/layout/hbox-layout.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 -325
- package/lib/features/layout/layout-elements-action.spec.js.map +0 -1
- package/lib/features/layout/layouter.d.ts +0 -37
- package/lib/features/layout/layouter.d.ts.map +0 -1
- package/lib/features/layout/layouter.js.map +0 -1
- package/lib/features/layout/tests/freeform-layout.spec.d.ts +0 -3
- package/lib/features/layout/tests/freeform-layout.spec.d.ts.map +0 -1
- package/lib/features/layout/tests/freeform-layout.spec.js +0 -201
- package/lib/features/layout/tests/freeform-layout.spec.js.map +0 -1
- package/lib/features/layout/tests/hbox-layout.spec.d.ts +0 -3
- package/lib/features/layout/tests/hbox-layout.spec.d.ts.map +0 -1
- package/lib/features/layout/tests/hbox-layout.spec.js +0 -161
- package/lib/features/layout/tests/hbox-layout.spec.js.map +0 -1
- package/lib/features/layout/tests/layouter-test-util.d.ts +0 -34
- package/lib/features/layout/tests/layouter-test-util.d.ts.map +0 -1
- package/lib/features/layout/tests/layouter-test-util.js +0 -96
- package/lib/features/layout/tests/layouter-test-util.js.map +0 -1
- package/lib/features/layout/tests/vbox-layout.spec.d.ts +0 -3
- package/lib/features/layout/tests/vbox-layout.spec.d.ts.map +0 -1
- package/lib/features/layout/tests/vbox-layout.spec.js +0 -161
- package/lib/features/layout/tests/vbox-layout.spec.js.map +0 -1
- package/lib/features/layout/vbox-layout.d.ts.map +0 -1
- package/lib/features/layout/vbox-layout.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 -54
- package/lib/features/navigation/navigation-target-resolver.spec.js.map +0 -1
- package/lib/features/select/selection-service.spec.d.ts +0 -2
- package/lib/features/select/selection-service.spec.d.ts.map +0 -1
- package/lib/features/select/selection-service.spec.js +0 -347
- package/lib/features/select/selection-service.spec.js.map +0 -1
- package/lib/features/tools/marquee-behavior.spec.d.ts.map +0 -1
- package/lib/features/tools/marquee-behavior.spec.js +0 -165
- package/lib/features/tools/marquee-behavior.spec.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 -169
- package/lib/features/validation/marker-navigator.spec.js.map +0 -1
- package/lib/sprotty-reexport.d.ts.map +0 -1
- package/lib/sprotty-reexport.js.map +0 -1
- /package/lib/{base → glsp-sprotty}/types.d.ts +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/********************************************************************************
|
|
2
|
-
* Copyright (c) 2019-
|
|
2
|
+
* Copyright (c) 2019-2023 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,9 +13,9 @@
|
|
|
13
13
|
*
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
|
-
import { Action, SetModelAction, toTypeGuard, UpdateModelAction } from '@eclipse-glsp/protocol';
|
|
17
16
|
import { inject, injectable, multiInject, optional } from 'inversify';
|
|
18
17
|
import {
|
|
18
|
+
Action,
|
|
19
19
|
ActionHandlerRegistry,
|
|
20
20
|
Animation,
|
|
21
21
|
Command,
|
|
@@ -26,12 +26,15 @@ import {
|
|
|
26
26
|
ILogger,
|
|
27
27
|
MorphEdgesAnimation,
|
|
28
28
|
SModelRoot,
|
|
29
|
+
SetModelAction,
|
|
30
|
+
TYPES,
|
|
29
31
|
UpdateAnimationData,
|
|
30
|
-
|
|
31
|
-
|
|
32
|
+
UpdateModelAction,
|
|
33
|
+
UpdateModelCommand,
|
|
34
|
+
toTypeGuard
|
|
35
|
+
} from '~glsp-sprotty';
|
|
32
36
|
import { IFeedbackActionDispatcher } from '../../features/tool-feedback/feedback-action-dispatcher';
|
|
33
37
|
import { FeedbackCommand } from '../../features/tool-feedback/model';
|
|
34
|
-
import { TYPES } from '../types';
|
|
35
38
|
|
|
36
39
|
/**
|
|
37
40
|
* ActionHandler that transforms a {@link SetModelAction} into an {@link UpdateModelAction} that can be handled
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/********************************************************************************
|
|
2
|
-
* Copyright (c) 2020-
|
|
2
|
+
* Copyright (c) 2020-2023 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,9 +13,8 @@
|
|
|
13
13
|
*
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
|
-
import { Action, Deferred, SetModelAction, UpdateModelAction } from '@eclipse-glsp/protocol';
|
|
17
16
|
import { injectable } from 'inversify';
|
|
18
|
-
import { InitializeCanvasBoundsAction } from 'sprotty';
|
|
17
|
+
import { Action, Deferred, InitializeCanvasBoundsAction, SetModelAction, UpdateModelAction } from '~glsp-sprotty';
|
|
19
18
|
|
|
20
19
|
/**
|
|
21
20
|
* The constraint defining when the initialization of the GLSP model is completed.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/********************************************************************************
|
|
2
|
-
* Copyright (c) 2020 EclipseSource and others.
|
|
2
|
+
* Copyright (c) 2020-2023 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
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
16
|
import { injectable } from 'inversify';
|
|
17
|
-
import { MouseListener, SModelElement } from 'sprotty';
|
|
17
|
+
import { MouseListener, SModelElement } from '~glsp-sprotty';
|
|
18
18
|
|
|
19
19
|
/**
|
|
20
20
|
* A mouse listener that clears the document selection on click
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/********************************************************************************
|
|
2
|
-
* Copyright (c) 2020-
|
|
2
|
+
* Copyright (c) 2020-2023 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,7 +13,7 @@
|
|
|
13
13
|
*
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
|
-
import { AnyObject, hasStringProp } from '
|
|
16
|
+
import { AnyObject, hasStringProp } from '~glsp-sprotty';
|
|
17
17
|
export interface SourceUriAware {
|
|
18
18
|
sourceURI: string;
|
|
19
19
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/********************************************************************************
|
|
2
|
-
* Copyright (c) 2020-
|
|
2
|
+
* Copyright (c) 2020-2023 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,19 +13,12 @@
|
|
|
13
13
|
*
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
|
-
import { distinctAdd, EditMode } from '@eclipse-glsp/protocol';
|
|
17
16
|
import { inject, injectable, multiInject, optional, postConstruct } from 'inversify';
|
|
18
|
-
import { Tool, ToolManager } from 'sprotty';
|
|
17
|
+
import { AnyObject, EditMode, TYPES, Tool, ToolManager, distinctAdd, hasBooleanProp, hasFunctionProp, hasStringProp } from '~glsp-sprotty';
|
|
19
18
|
import { EditModeListener, EditorContextService, EditorContextServiceProvider } from '../editor-context-service';
|
|
20
|
-
import { TYPES } from '../types';
|
|
21
|
-
|
|
22
|
-
export interface IGLSPToolManager extends ToolManager {
|
|
23
|
-
/* Disables all actives tools and activates only default tool with non-edit function*/
|
|
24
|
-
disableEditTools(): void;
|
|
25
|
-
}
|
|
26
19
|
|
|
27
20
|
@injectable()
|
|
28
|
-
export class GLSPToolManager extends ToolManager implements
|
|
21
|
+
export class GLSPToolManager extends ToolManager implements EditModeListener {
|
|
29
22
|
protected editorContext?: EditorContextService;
|
|
30
23
|
|
|
31
24
|
@multiInject(TYPES.ITool) @optional() override tools: Tool[];
|
|
@@ -59,7 +52,7 @@ export class GLSPToolManager extends ToolManager implements IGLSPToolManager, Ed
|
|
|
59
52
|
this.disableActiveTools();
|
|
60
53
|
let tools = toolIds.map(id => this.tool(id));
|
|
61
54
|
if (this.editorContext && this.editorContext.isReadonly) {
|
|
62
|
-
tools = tools.filter(tool => tool && (!
|
|
55
|
+
tools = tools.filter(tool => tool && (!GLSPTool.is(tool) || tool.isEditTool === false));
|
|
63
56
|
}
|
|
64
57
|
tools.forEach(tool => {
|
|
65
58
|
if (tool !== undefined) {
|
|
@@ -71,7 +64,7 @@ export class GLSPToolManager extends ToolManager implements IGLSPToolManager, Ed
|
|
|
71
64
|
|
|
72
65
|
disableEditTools(): void {
|
|
73
66
|
this.disableActiveTools();
|
|
74
|
-
this.enable(this.defaultTools.filter(tool => !
|
|
67
|
+
this.enable(this.defaultTools.filter(tool => !GLSPTool.is(tool) || tool.isEditTool === false).map(tool => tool.id));
|
|
75
68
|
}
|
|
76
69
|
|
|
77
70
|
editModeChanged(oldValue: string, newValue: string): void {
|
|
@@ -90,6 +83,14 @@ export interface GLSPTool extends Tool {
|
|
|
90
83
|
isEditTool: boolean;
|
|
91
84
|
}
|
|
92
85
|
|
|
93
|
-
export
|
|
94
|
-
|
|
86
|
+
export namespace GLSPTool {
|
|
87
|
+
export function is(object: unknown): object is GLSPTool {
|
|
88
|
+
return (
|
|
89
|
+
AnyObject.is(object) &&
|
|
90
|
+
hasStringProp(object, 'id') &&
|
|
91
|
+
hasFunctionProp(object, 'enable') &&
|
|
92
|
+
hasFunctionProp(object, 'disable') &&
|
|
93
|
+
hasBooleanProp(object, 'isEditTool')
|
|
94
|
+
);
|
|
95
|
+
}
|
|
95
96
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/********************************************************************************
|
|
2
|
-
* Copyright (c)
|
|
2
|
+
* Copyright (c) 2019-2023 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
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
16
|
import { injectable } from 'inversify';
|
|
17
|
-
import { IView, ViewRegistry } from 'sprotty';
|
|
17
|
+
import { IView, ViewRegistry } from '~glsp-sprotty';
|
|
18
18
|
|
|
19
19
|
@injectable()
|
|
20
20
|
export class GLSPViewRegistry extends ViewRegistry {
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
# Keyboard-Only: Accessibility Features
|
|
2
|
+
|
|
3
|
+
The features presented in the following are introduced for disability-aware conceptual modeling and allow basic user model interactions to be performed only with the keyboard.
|
|
4
|
+
|
|
5
|
+
## Getting started
|
|
6
|
+
|
|
7
|
+
In order to activate and use all of the currently provided keyboard only accessibility features, the module `glspAccessibilityModule` needs to be in use.
|
|
8
|
+
To activate and use only specific accessibility features, the respective module (see list below) needs to be in use.
|
|
9
|
+
|
|
10
|
+
## Features
|
|
11
|
+
|
|
12
|
+
Below is a list of the keyboard only accessibility features:<br>
|
|
13
|
+
|
|
14
|
+
| Feature | Description | Shortcut | Module |
|
|
15
|
+
| ------- | :----------------------------------------------------------------------------------------------: | :-----------------------------------------------------------------------------------------------: | :-----------------------: |
|
|
16
|
+
| Search | Search for elements or edges using labels, types, etc. <br> with respective diagram highlighting | <kbd>CTRL</kbd>+<kbd>F</kbd> | `glspSearchPaletteModule` |
|
|
17
|
+
| Move | Move elements, edges or viewport into the directions | <kbd>←</kbd> \|\| <kbd>↑</kbd> \|\| <kbd>→</kbd> \|\| <kbd>↓</kbd> | `glspMoveZoomModule` |
|
|
18
|
+
| Zoom | Zoom in or out gradually to elements or viewport or reset to default zoom level. | <kbd>+</kbd> \|\| <kbd>-</kbd> \|\| <kbd>CTRL</kbd>+<kbd>0</kbd> | `glspMoveZoomModule` |
|
|
19
|
+
| Resize | Increase or decrease element sizes gradually or reset to default element size. | <kbd>ALT</kbd>+<kbd>A</kbd> then <kbd>+</kbd> \|\| <kbd>-</kbd> \|\| <kbd>CTRL</kbd>+<kbd>0</kbd> | `glspResizeKeyModule` |
|
|
20
|
+
|
|
21
|
+
## Usage
|
|
22
|
+
|
|
23
|
+
#### Search
|
|
24
|
+
|
|
25
|
+
The search palette allows to search labelled elements or edges that have a labelled node as source or target. The result set will be highlighted accordingly, to also be able to visually distinguish between the searched and the remaining parts of the given diagram.
|
|
26
|
+
|
|
27
|
+
#### Read / Select via Search
|
|
28
|
+
|
|
29
|
+
1. <kbd>CTRL</kbd> + <kbd>F</kbd>: Open the search palette
|
|
30
|
+
2. In the palette's input field enter either the **type** or the **label** of nodes or edges. The arrow keys can be used to navigate in the search result list.
|
|
31
|
+
3. <kbd>ENTER</kbd>: Select the node or edge that is highlighted in the search result list.
|
|
32
|
+
|
|
33
|
+
### Model Exploration
|
|
34
|
+
|
|
35
|
+
#### Move
|
|
36
|
+
|
|
37
|
+
The move functionality can be used to move parts of the model, such as selected nodes or edges or the whole viewport in all directions.
|
|
38
|
+
|
|
39
|
+
##### Steps
|
|
40
|
+
|
|
41
|
+
1. Select one or multiple elements or the viewport.
|
|
42
|
+
2. Use arrow keys (<kbd>←</kbd> || <kbd>↑</kbd> || <kbd>→</kbd> || <kbd>↓</kbd>) to move element(s) or viewport to the desired location.
|
|
43
|
+
|
|
44
|
+
#### Zoom
|
|
45
|
+
|
|
46
|
+
This zoom functionality can be used to gradually adapt the zoom level of one element, a set of elements or the
|
|
47
|
+
viewport.
|
|
48
|
+
|
|
49
|
+
#### Steps
|
|
50
|
+
|
|
51
|
+
1. Select one or multiple elements or the viewport.
|
|
52
|
+
2. Use <kbd>+</kbd> or <kbd>-</kbd> to zoom in or out gradually.
|
|
53
|
+
3. <kbd>CTRL</kbd>+<kbd>0</kbd>: Set the zoom level to default.
|
|
54
|
+
|
|
55
|
+
### Resize element
|
|
56
|
+
|
|
57
|
+
The resize functionality helps to set the size of the nodes, by either increasing or decreasing the size of the nodes’ shape gradually.
|
|
58
|
+
|
|
59
|
+
#### Steps
|
|
60
|
+
|
|
61
|
+
1. Select one or multiple elements.
|
|
62
|
+
2. <kbd>ALT</kbd>+<kbd>A</kbd>: Activate the resize mode.
|
|
63
|
+
3. <kbd>+</kbd> or <kbd>-</kbd> to increase or decrease the size of the element(s) gradually.
|
|
64
|
+
4. <kbd>CTRL</kbd>+<kbd>0</kbd>: Set the size of the element(s) to default.
|
|
65
|
+
5. <kbd>ESC</kbd>: Deactivate the resize mode.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (c) 2023 Business Informatics Group (TU Wien) 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 { ContainerModule } from 'inversify';
|
|
18
|
+
import { configureMoveZoom } from './move-zoom/di.config';
|
|
19
|
+
import { configureResizeTools } from './resize-key-tool/di.config';
|
|
20
|
+
import { configureSearchPaletteModule } from './search/di.config';
|
|
21
|
+
import { configureViewKeyTools } from './view-key-tools/di.config';
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Enables the accessibility tools for a keyboard-only-usage
|
|
25
|
+
*/
|
|
26
|
+
export const glspAccessibilityModule = new ContainerModule((bind, unbind, isBound, rebind) => {
|
|
27
|
+
const context = { bind, unbind, isBound, rebind };
|
|
28
|
+
configureResizeTools(context);
|
|
29
|
+
configureViewKeyTools(context);
|
|
30
|
+
configureMoveZoom(context);
|
|
31
|
+
configureSearchPaletteModule(context);
|
|
32
|
+
});
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (c) 2023 Business Informatics Group (TU Wien) 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 { ContainerModule } from 'inversify';
|
|
18
|
+
import { BindingContext, configureActionHandler } from '~glsp-sprotty';
|
|
19
|
+
import { MoveElementAction, MoveElementHandler, MoveViewportAction, MoveViewportHandler } from './move-handler';
|
|
20
|
+
import { ZoomElementAction, ZoomElementHandler, ZoomViewportAction, ZoomViewportHandler } from './zoom-handler';
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Handles move and zoom actions.
|
|
24
|
+
*/
|
|
25
|
+
export const glspMoveZoomModule = new ContainerModule((bind, unbind, isBound, rebind) => {
|
|
26
|
+
const context = { bind, unbind, isBound, rebind };
|
|
27
|
+
configureMoveZoom(context);
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
export function configureMoveZoom(context: BindingContext): void {
|
|
31
|
+
context.bind(MoveViewportHandler).toSelf().inSingletonScope();
|
|
32
|
+
context.bind(MoveElementHandler).toSelf().inSingletonScope();
|
|
33
|
+
|
|
34
|
+
context.bind(ZoomViewportHandler).toSelf().inSingletonScope();
|
|
35
|
+
context.bind(ZoomElementHandler).toSelf().inSingletonScope();
|
|
36
|
+
|
|
37
|
+
configureActionHandler(context, MoveViewportAction.KIND, MoveViewportHandler);
|
|
38
|
+
configureActionHandler(context, MoveElementAction.KIND, MoveElementHandler);
|
|
39
|
+
|
|
40
|
+
configureActionHandler(context, ZoomViewportAction.KIND, ZoomViewportHandler);
|
|
41
|
+
configureActionHandler(context, ZoomElementAction.KIND, ZoomElementHandler);
|
|
42
|
+
}
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (c) 2023 Business Informatics Group (TU Wien) 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 { inject, injectable } from 'inversify';
|
|
18
|
+
import { throttle } from 'lodash';
|
|
19
|
+
import {
|
|
20
|
+
Action,
|
|
21
|
+
ChangeBoundsOperation,
|
|
22
|
+
IActionDispatcher,
|
|
23
|
+
IActionHandler,
|
|
24
|
+
ICommand,
|
|
25
|
+
Point,
|
|
26
|
+
SModelRoot,
|
|
27
|
+
SetViewportAction,
|
|
28
|
+
TYPES,
|
|
29
|
+
Viewport,
|
|
30
|
+
findParentByFeature,
|
|
31
|
+
isViewport
|
|
32
|
+
} from '~glsp-sprotty';
|
|
33
|
+
import { EditorContextService } from '../../../base/editor-context-service';
|
|
34
|
+
import { SelectableBoundsAware, getElements, isSelectableAndBoundsAware } from '../../../utils/smodel-util';
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Action for triggering moving of the viewport.
|
|
38
|
+
*/
|
|
39
|
+
export interface MoveViewportAction extends Action {
|
|
40
|
+
kind: typeof MoveViewportAction.KIND;
|
|
41
|
+
/**
|
|
42
|
+
* used to specify the amount to be moved in the x-axis
|
|
43
|
+
*/
|
|
44
|
+
moveX: number;
|
|
45
|
+
/**
|
|
46
|
+
* used to specify the amount to be moved in the y-axis
|
|
47
|
+
*/
|
|
48
|
+
moveY: number;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export namespace MoveViewportAction {
|
|
52
|
+
export const KIND = 'moveViewportAction';
|
|
53
|
+
|
|
54
|
+
export function is(object: any): object is MoveViewportAction {
|
|
55
|
+
return Action.hasKind(object, KIND);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
export function create(moveX: number, moveY: number): MoveViewportAction {
|
|
59
|
+
return { kind: KIND, moveX, moveY };
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Action for triggering moving of elements.
|
|
65
|
+
*/
|
|
66
|
+
export interface MoveElementAction extends Action {
|
|
67
|
+
kind: typeof MoveElementAction.KIND;
|
|
68
|
+
/**
|
|
69
|
+
* used to specify the elements to be zoomed in/out
|
|
70
|
+
*/
|
|
71
|
+
elementIds: string[];
|
|
72
|
+
/**
|
|
73
|
+
* used to specify the amount to be moved in the x-axis
|
|
74
|
+
*/
|
|
75
|
+
moveX: number;
|
|
76
|
+
/**
|
|
77
|
+
* used to specify the amount to be moved in the y-axis
|
|
78
|
+
*/
|
|
79
|
+
moveY: number;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
export namespace MoveElementAction {
|
|
83
|
+
export const KIND = 'moveElementAction';
|
|
84
|
+
|
|
85
|
+
export function is(object: any): object is MoveElementAction {
|
|
86
|
+
return Action.hasKind(object, KIND);
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
export function create(elementIds: string[], moveX: number, moveY: number): MoveElementAction {
|
|
90
|
+
return { kind: KIND, elementIds, moveX, moveY };
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
/* The MoveViewportHandler class is an implementation of the IActionHandler interface that handles
|
|
95
|
+
moving of the viewport. */
|
|
96
|
+
@injectable()
|
|
97
|
+
export class MoveViewportHandler implements IActionHandler {
|
|
98
|
+
@inject(EditorContextService)
|
|
99
|
+
protected editorContextService: EditorContextService;
|
|
100
|
+
|
|
101
|
+
@inject(TYPES.IActionDispatcher) protected dispatcher: IActionDispatcher;
|
|
102
|
+
protected readonly throttledHandleViewportMove = throttle((action: MoveViewportAction) => this.handleMoveViewport(action), 150);
|
|
103
|
+
|
|
104
|
+
handle(action: Action): void | Action | ICommand {
|
|
105
|
+
if (MoveViewportAction.is(action)) {
|
|
106
|
+
this.throttledHandleViewportMove(action);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
handleMoveViewport(action: MoveViewportAction): void {
|
|
111
|
+
const viewport = findParentByFeature(this.editorContextService.modelRoot, isViewport);
|
|
112
|
+
if (!viewport) {
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
this.dispatcher.dispatch(this.moveViewport(viewport, action.moveX, action.moveY));
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
protected moveViewport(viewport: SModelRoot & Viewport, offsetX: number, offSetY: number): SetViewportAction {
|
|
119
|
+
const newViewport: Viewport = {
|
|
120
|
+
scroll: {
|
|
121
|
+
x: viewport.scroll.x + offsetX,
|
|
122
|
+
y: viewport.scroll.y + offSetY
|
|
123
|
+
},
|
|
124
|
+
zoom: viewport.zoom
|
|
125
|
+
};
|
|
126
|
+
|
|
127
|
+
return SetViewportAction.create(viewport.id, newViewport, { animate: true });
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
/* The MoveElementHandler class is an implementation of the IActionHandler interface that handles
|
|
132
|
+
moving elements. */
|
|
133
|
+
@injectable()
|
|
134
|
+
export class MoveElementHandler implements IActionHandler {
|
|
135
|
+
@inject(EditorContextService)
|
|
136
|
+
protected editorContextService: EditorContextService;
|
|
137
|
+
@inject(TYPES.IActionDispatcher) protected dispatcher: IActionDispatcher;
|
|
138
|
+
protected readonly throttledHandleElementMove = throttle((action: MoveElementAction) => this.handleMoveElement(action), 150);
|
|
139
|
+
|
|
140
|
+
handle(action: Action): void | Action | ICommand {
|
|
141
|
+
if (MoveElementAction.is(action)) {
|
|
142
|
+
this.throttledHandleElementMove(action);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
handleMoveElement(action: MoveElementAction): void {
|
|
147
|
+
const viewport = findParentByFeature(this.editorContextService.modelRoot, isViewport);
|
|
148
|
+
if (!viewport) {
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
const elements = getElements(this.editorContextService.modelRoot.index, action.elementIds, isSelectableAndBoundsAware);
|
|
153
|
+
|
|
154
|
+
this.dispatcher.dispatchAll(this.move(viewport, elements, action.moveX, action.moveY));
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
protected getBounds(element: SelectableBoundsAware, offSetX: number, offSetY: number): Point {
|
|
158
|
+
return { x: element.bounds.x + offSetX, y: element.bounds.y + offSetY };
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
protected adaptViewport(
|
|
162
|
+
viewport: SModelRoot & Viewport,
|
|
163
|
+
newPoint: Point,
|
|
164
|
+
moveX: number,
|
|
165
|
+
moveY: number
|
|
166
|
+
): MoveViewportAction | undefined {
|
|
167
|
+
if (
|
|
168
|
+
newPoint.x < viewport.scroll.x ||
|
|
169
|
+
newPoint.x > viewport.scroll.x + viewport.canvasBounds.width ||
|
|
170
|
+
newPoint.y < viewport.scroll.y ||
|
|
171
|
+
newPoint.y > viewport.scroll.y + viewport.canvasBounds.height
|
|
172
|
+
) {
|
|
173
|
+
return MoveViewportAction.create(moveX, moveY);
|
|
174
|
+
}
|
|
175
|
+
return;
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
protected moveElement(element: SelectableBoundsAware, offSetX: number, offSetY: number): ChangeBoundsOperation {
|
|
179
|
+
return ChangeBoundsOperation.create([
|
|
180
|
+
{
|
|
181
|
+
elementId: element.id,
|
|
182
|
+
newSize: {
|
|
183
|
+
width: element.bounds.width,
|
|
184
|
+
height: element.bounds.height
|
|
185
|
+
},
|
|
186
|
+
newPosition: {
|
|
187
|
+
x: element.bounds.x + offSetX,
|
|
188
|
+
y: element.bounds.y + offSetY
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
]);
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
protected move(viewport: SModelRoot & Viewport, selectedElements: SelectableBoundsAware[], deltaX: number, deltaY: number): Action[] {
|
|
195
|
+
const results: Action[] = [];
|
|
196
|
+
|
|
197
|
+
if (selectedElements.length !== 0) {
|
|
198
|
+
selectedElements.forEach(currentElement => {
|
|
199
|
+
results.push(this.moveElement(currentElement, deltaX, deltaY));
|
|
200
|
+
const newPosition = this.getBounds(currentElement, deltaX, deltaY);
|
|
201
|
+
const viewportAction = this.adaptViewport(viewport, newPosition, deltaX, deltaY);
|
|
202
|
+
if (viewportAction) {
|
|
203
|
+
results.push(viewportAction);
|
|
204
|
+
}
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
return results;
|
|
208
|
+
}
|
|
209
|
+
}
|