@eclipse-glsp/client 0.9.0-rc-01 → 0.10.0-next.146a812.165
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/LICENSE +642 -277
- package/README.md +4 -2
- package/css/command-palette.css +9 -5
- package/css/decoration.css +3 -2
- package/css/glsp-sprotty.css +125 -14
- package/css/tool-palette.css +44 -27
- package/lib/base/action-dispatcher.d.ts +19 -3
- package/lib/base/action-dispatcher.d.ts.map +1 -1
- package/lib/base/action-dispatcher.js +47 -65
- package/lib/base/action-dispatcher.js.map +1 -1
- package/lib/base/actions/focus-change-action.d.ts +1 -1
- package/lib/base/actions/focus-change-action.d.ts.map +1 -1
- package/lib/base/actions/focus-change-action.js +4 -5
- package/lib/base/actions/focus-change-action.js.map +1 -1
- package/lib/base/{args.d.ts → argumentable.d.ts} +3 -5
- package/lib/base/argumentable.d.ts.map +1 -0
- package/lib/base/{args.js → argumentable.js} +1 -1
- package/lib/base/argumentable.js.map +1 -0
- package/lib/base/auto-complete/auto-complete-actions.d.ts +1 -1
- package/lib/base/auto-complete/auto-complete-actions.d.ts.map +1 -1
- package/lib/base/auto-complete/auto-complete-widget.d.ts +3 -3
- package/lib/base/auto-complete/auto-complete-widget.d.ts.map +1 -1
- package/lib/base/auto-complete/auto-complete-widget.js +123 -157
- package/lib/base/auto-complete/auto-complete-widget.js.map +1 -1
- package/lib/base/auto-complete/validation-decorator.d.ts +3 -18
- package/lib/base/auto-complete/validation-decorator.d.ts.map +1 -1
- package/lib/base/auto-complete/validation-decorator.js +44 -65
- package/lib/base/auto-complete/validation-decorator.js.map +1 -1
- package/lib/base/command-stack.d.ts.map +1 -1
- package/lib/base/command-stack.js +19 -37
- package/lib/base/command-stack.js.map +1 -1
- package/lib/base/container-modules.d.ts +40 -0
- package/lib/base/container-modules.d.ts.map +1 -0
- package/lib/base/container-modules.js +100 -0
- package/lib/base/container-modules.js.map +1 -0
- package/lib/base/di.config.d.ts +12 -2
- package/lib/base/di.config.d.ts.map +1 -1
- package/lib/base/di.config.js +46 -30
- package/lib/base/di.config.js.map +1 -1
- package/lib/base/drag-aware-mouse-listener.d.ts +3 -2
- package/lib/base/drag-aware-mouse-listener.d.ts.map +1 -1
- package/lib/base/drag-aware-mouse-listener.js +23 -62
- package/lib/base/drag-aware-mouse-listener.js.map +1 -1
- package/lib/base/{editor-context.d.ts → editor-context-service.d.ts} +18 -22
- package/lib/base/editor-context-service.d.ts.map +1 -0
- package/lib/base/editor-context-service.js +110 -0
- package/lib/base/editor-context-service.js.map +1 -0
- package/lib/base/focus-tracker.d.ts +17 -1
- package/lib/base/focus-tracker.d.ts.map +1 -1
- package/lib/base/focus-tracker.js +20 -40
- package/lib/base/focus-tracker.js.map +1 -1
- package/lib/base/model/model-registry.d.ts.map +1 -1
- package/lib/base/model/model-registry.js +11 -29
- package/lib/base/model/model-registry.js.map +1 -1
- package/lib/base/model/update-model-command.d.ts +19 -5
- package/lib/base/model/update-model-command.d.ts.map +1 -1
- package/lib/base/model/update-model-command.js +69 -94
- package/lib/base/model/update-model-command.js.map +1 -1
- package/lib/base/model-initialization-constraint.d.ts +18 -3
- package/lib/base/model-initialization-constraint.d.ts.map +1 -1
- package/lib/base/model-initialization-constraint.js +37 -58
- package/lib/base/model-initialization-constraint.js.map +1 -1
- package/lib/base/selection-clearing-mouse-listener.d.ts.map +1 -1
- package/lib/base/selection-clearing-mouse-listener.js +10 -28
- package/lib/base/selection-clearing-mouse-listener.js.map +1 -1
- package/lib/base/source-uri-aware.js +2 -5
- package/lib/base/source-uri-aware.js.map +1 -1
- package/lib/base/tool-manager/glsp-tool-manager.d.ts +2 -2
- package/lib/base/tool-manager/glsp-tool-manager.d.ts.map +1 -1
- package/lib/base/tool-manager/glsp-tool-manager.js +58 -140
- package/lib/base/tool-manager/glsp-tool-manager.js.map +1 -1
- package/lib/base/types.d.ts +3 -1
- package/lib/base/types.d.ts.map +1 -1
- package/lib/base/types.js +4 -2
- package/lib/base/types.js.map +1 -1
- package/lib/base/view/view-registry.d.ts.map +1 -1
- package/lib/base/view/view-registry.js +11 -29
- package/lib/base/view/view-registry.js.map +1 -1
- package/lib/features/change-bounds/model.d.ts +3 -1
- package/lib/features/change-bounds/model.d.ts.map +1 -1
- package/lib/features/change-bounds/model.js +22 -33
- package/lib/features/change-bounds/model.js.map +1 -1
- package/lib/features/change-bounds/movement-restrictor.d.ts +17 -1
- package/lib/features/change-bounds/movement-restrictor.d.ts.map +1 -1
- package/lib/features/change-bounds/movement-restrictor.js +29 -43
- package/lib/features/change-bounds/movement-restrictor.js.map +1 -1
- package/lib/features/change-bounds/snap.d.ts +58 -1
- package/lib/features/change-bounds/snap.d.ts.map +1 -1
- package/lib/features/change-bounds/snap.js +91 -41
- package/lib/features/change-bounds/snap.js.map +1 -1
- package/{src/features/undo-redo/model.ts → lib/features/change-bounds/snap.spec.d.ts} +3 -12
- package/lib/features/change-bounds/snap.spec.d.ts.map +1 -0
- package/lib/features/change-bounds/snap.spec.js +82 -0
- package/lib/features/change-bounds/snap.spec.js.map +1 -0
- package/lib/features/command-palette/command-palette-tool.js +30 -38
- package/lib/features/command-palette/command-palette-tool.js.map +1 -1
- package/lib/features/command-palette/di.config.js +6 -6
- package/lib/features/command-palette/di.config.js.map +1 -1
- package/lib/features/command-palette/server-command-palette-provider.d.ts +18 -2
- package/lib/features/command-palette/server-command-palette-provider.d.ts.map +1 -1
- package/lib/features/command-palette/server-command-palette-provider.js +28 -33
- 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 -1
- package/lib/features/context-menu/delete-element-context-menu.d.ts.map +1 -1
- package/lib/features/context-menu/delete-element-context-menu.js +20 -68
- 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 -8
- 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 +16 -0
- 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 +61 -71
- 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 +18 -2
- package/lib/features/context-menu/server-context-menu-provider.d.ts.map +1 -1
- package/lib/features/context-menu/server-context-menu-provider.js +30 -31
- package/lib/features/context-menu/server-context-menu-provider.js.map +1 -1
- package/lib/features/copy-paste/copy-paste-context-menu.d.ts +22 -2
- package/lib/features/copy-paste/copy-paste-context-menu.d.ts.map +1 -1
- package/lib/features/copy-paste/copy-paste-context-menu.js +99 -72
- package/lib/features/copy-paste/copy-paste-context-menu.js.map +1 -1
- package/lib/features/copy-paste/copy-paste-handler.d.ts +19 -2
- package/lib/features/copy-paste/copy-paste-handler.d.ts.map +1 -1
- package/lib/features/copy-paste/copy-paste-handler.js +70 -70
- 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 +11 -11
- package/lib/features/copy-paste/di.config.js.map +1 -1
- package/lib/features/decoration/decoration-placer.d.ts +17 -1
- package/lib/features/decoration/decoration-placer.d.ts.map +1 -1
- package/lib/features/decoration/decoration-placer.js +13 -47
- package/lib/features/decoration/decoration-placer.js.map +1 -1
- package/lib/features/decoration/di.config.js +4 -4
- package/lib/features/decoration/di.config.js.map +1 -1
- package/lib/features/edit-label/di.config.js +7 -7
- package/lib/features/edit-label/di.config.js.map +1 -1
- package/lib/features/edit-label/edit-label-tool.js +20 -43
- package/lib/features/edit-label/edit-label-tool.js.map +1 -1
- package/lib/features/edit-label/edit-label-validator.d.ts +16 -1
- package/lib/features/edit-label/edit-label-validator.d.ts.map +1 -1
- package/lib/features/edit-label/edit-label-validator.js +40 -62
- package/lib/features/edit-label/edit-label-validator.js.map +1 -1
- package/lib/features/hints/di.config.d.ts +0 -15
- package/lib/features/hints/di.config.d.ts.map +1 -1
- package/lib/features/hints/di.config.js +9 -9
- package/lib/features/hints/di.config.js.map +1 -1
- package/lib/features/hints/model.d.ts +3 -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-hints.d.ts +17 -45
- package/lib/features/hints/type-hints.d.ts.map +1 -1
- package/lib/features/hints/type-hints.js +81 -140
- 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 +19 -17
- package/lib/features/hover/di.config.js.map +1 -1
- package/lib/features/hover/hover.d.ts +28 -2
- package/lib/features/hover/hover.d.ts.map +1 -1
- package/lib/features/hover/hover.js +56 -76
- 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 +11 -7
- package/lib/features/layout/di.config.js.map +1 -1
- package/lib/features/layout/freeform-layout.d.ts +16 -0
- package/lib/features/layout/freeform-layout.d.ts.map +1 -0
- package/lib/features/layout/freeform-layout.js +107 -0
- package/lib/features/layout/freeform-layout.js.map +1 -0
- package/lib/features/layout/layout-commands.d.ts +19 -3
- package/lib/features/layout/layout-commands.d.ts.map +1 -1
- package/lib/features/layout/layout-commands.js +196 -269
- package/lib/features/layout/layout-commands.js.map +1 -1
- package/lib/features/layout/layout-commands.spec.d.ts +0 -15
- package/lib/features/layout/layout-commands.spec.d.ts.map +1 -1
- package/lib/features/layout/layout-commands.spec.js +101 -95
- package/lib/features/layout/layout-commands.spec.js.map +1 -1
- package/lib/features/layout/vbox-layout.d.ts +25 -0
- package/lib/features/layout/vbox-layout.d.ts.map +1 -0
- package/lib/features/layout/vbox-layout.js +188 -0
- package/lib/features/layout/vbox-layout.js.map +1 -0
- package/lib/features/model-source-watcher/di.config.d.ts +0 -15
- package/lib/features/model-source-watcher/di.config.d.ts.map +1 -1
- package/lib/features/model-source-watcher/di.config.js +7 -7
- package/lib/features/model-source-watcher/di.config.js.map +1 -1
- package/lib/features/model-source-watcher/model-source-changed-action-handler.d.ts +17 -2
- package/lib/features/model-source-watcher/model-source-changed-action-handler.d.ts.map +1 -1
- package/lib/features/model-source-watcher/model-source-changed-action-handler.js +38 -46
- package/lib/features/model-source-watcher/model-source-changed-action-handler.js.map +1 -1
- package/lib/features/mouse-tool/di.config.js +5 -5
- package/lib/features/mouse-tool/di.config.js.map +1 -1
- package/lib/features/mouse-tool/mouse-tool.d.ts +10 -5
- package/lib/features/mouse-tool/mouse-tool.d.ts.map +1 -1
- package/lib/features/mouse-tool/mouse-tool.js +54 -235
- package/lib/features/mouse-tool/mouse-tool.js.map +1 -1
- package/lib/features/navigation/di.config.d.ts +0 -15
- package/lib/features/navigation/di.config.d.ts.map +1 -1
- package/lib/features/navigation/di.config.js +11 -10
- package/lib/features/navigation/di.config.js.map +1 -1
- package/lib/features/navigation/navigation-action-handler.d.ts +19 -38
- package/lib/features/navigation/navigation-action-handler.d.ts.map +1 -1
- package/lib/features/navigation/navigation-action-handler.js +118 -254
- package/lib/features/navigation/navigation-action-handler.js.map +1 -1
- package/lib/features/navigation/navigation-target-resolver.d.ts +18 -40
- package/lib/features/navigation/navigation-target-resolver.d.ts.map +1 -1
- package/lib/features/navigation/navigation-target-resolver.js +46 -188
- package/lib/features/navigation/navigation-target-resolver.js.map +1 -1
- package/lib/features/navigation/navigation-target-resolver.spec.d.ts +0 -15
- package/lib/features/navigation/navigation-target-resolver.spec.d.ts.map +1 -1
- package/lib/features/navigation/navigation-target-resolver.spec.js +27 -27
- package/lib/features/navigation/navigation-target-resolver.spec.js.map +1 -1
- package/lib/features/rank/model.d.ts +1 -1
- package/lib/features/rank/model.js +2 -2
- package/lib/features/rank/model.js.map +1 -1
- package/lib/features/reconnect/model.d.ts +1 -1
- package/lib/features/reconnect/model.d.ts.map +1 -1
- package/lib/features/reconnect/model.js +9 -27
- 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.d.ts.map +1 -1
- package/lib/features/save/di.config.js +6 -6
- package/lib/features/save/di.config.js.map +1 -1
- package/lib/features/save/{save.d.ts → save-keylistener.d.ts} +4 -10
- package/lib/features/save/save-keylistener.d.ts.map +1 -0
- package/lib/features/{undo-redo/model.d.ts → save/save-keylistener.js} +16 -12
- package/lib/features/save/save-keylistener.js.map +1 -0
- package/lib/features/select/di.config.js +11 -11
- package/lib/features/select/di.config.js.map +1 -1
- package/lib/features/select/select-feedback-action.d.ts.map +1 -1
- package/lib/features/select/select-feedback-action.js +45 -71
- package/lib/features/select/select-feedback-action.js.map +1 -1
- package/lib/features/select/select-mouse-listener.js +7 -23
- package/lib/features/select/select-mouse-listener.js.map +1 -1
- package/lib/features/select/selection-service.d.ts +18 -2
- package/lib/features/select/selection-service.d.ts.map +1 -1
- package/lib/features/select/selection-service.js +140 -240
- package/lib/features/select/selection-service.js.map +1 -1
- package/lib/features/select/selection-service.spec.js +111 -154
- package/lib/features/select/selection-service.spec.js.map +1 -1
- package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts +19 -2
- package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/change-bounds-tool-feedback.js +110 -150
- package/lib/features/tool-feedback/change-bounds-tool-feedback.js.map +1 -1
- package/lib/features/tool-feedback/creation-tool-feedback.d.ts +18 -2
- package/lib/features/tool-feedback/creation-tool-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/creation-tool-feedback.js +103 -124
- package/lib/features/tool-feedback/creation-tool-feedback.js.map +1 -1
- package/lib/features/tool-feedback/css-feedback.d.ts +20 -2
- package/lib/features/tool-feedback/css-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/css-feedback.js +37 -81
- 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 +27 -27
- package/lib/features/tool-feedback/di.config.js.map +1 -1
- package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts +24 -5
- package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/edge-edit-tool-feedback.js +185 -239
- package/lib/features/tool-feedback/edge-edit-tool-feedback.js.map +1 -1
- package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts +20 -4
- package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts.map +1 -1
- package/lib/features/tool-feedback/feedback-action-dispatcher.js +35 -72
- package/lib/features/tool-feedback/feedback-action-dispatcher.js.map +1 -1
- package/lib/features/tool-feedback/marquee-tool-feedback.d.ts +17 -1
- package/lib/features/tool-feedback/marquee-tool-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/marquee-tool-feedback.js +41 -84
- package/lib/features/tool-feedback/marquee-tool-feedback.js.map +1 -1
- package/lib/features/tool-feedback/model.d.ts +1 -2
- package/lib/features/tool-feedback/model.d.ts.map +1 -1
- package/lib/features/tool-feedback/model.js +11 -27
- package/lib/features/tool-feedback/model.js.map +1 -1
- package/lib/features/tool-feedback/view.d.ts +21 -5
- package/lib/features/tool-feedback/view.d.ts.map +1 -1
- package/lib/features/tool-feedback/view.js +31 -53
- 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 -6
- package/lib/features/tool-palette/di.config.js.map +1 -1
- package/lib/features/tool-palette/palette-item.d.ts +2 -3
- package/lib/features/tool-palette/palette-item.d.ts.map +1 -1
- package/lib/features/tool-palette/palette-item.js +6 -6
- package/lib/features/tool-palette/palette-item.js.map +1 -1
- package/lib/features/tool-palette/tool-palette.d.ts +19 -3
- package/lib/features/tool-palette/tool-palette.d.ts.map +1 -1
- package/lib/features/tool-palette/tool-palette.js +203 -271
- package/lib/features/tool-palette/tool-palette.js.map +1 -1
- package/lib/features/tools/base-glsp-tool.d.ts +20 -4
- package/lib/features/tools/base-glsp-tool.d.ts.map +1 -1
- package/lib/features/tools/base-glsp-tool.js +39 -61
- package/lib/features/tools/base-glsp-tool.js.map +1 -1
- package/lib/features/tools/change-bounds-tool.d.ts +22 -7
- package/lib/features/tools/change-bounds-tool.d.ts.map +1 -1
- package/lib/features/tools/change-bounds-tool.js +196 -270
- package/lib/features/tools/change-bounds-tool.js.map +1 -1
- package/lib/features/tools/delete-tool.d.ts +17 -1
- package/lib/features/tools/delete-tool.d.ts.map +1 -1
- package/lib/features/tools/delete-tool.js +75 -108
- package/lib/features/tools/delete-tool.js.map +1 -1
- package/lib/features/tools/di.config.d.ts +0 -15
- package/lib/features/tools/di.config.d.ts.map +1 -1
- package/lib/features/tools/di.config.js +20 -20
- package/lib/features/tools/di.config.js.map +1 -1
- package/lib/features/tools/edge-creation-tool.d.ts +17 -2
- package/lib/features/tools/edge-creation-tool.d.ts.map +1 -1
- package/lib/features/tools/edge-creation-tool.js +68 -93
- package/lib/features/tools/edge-creation-tool.js.map +1 -1
- package/lib/features/tools/edge-edit-tool.d.ts +18 -1
- package/lib/features/tools/edge-edit-tool.d.ts.map +1 -1
- package/lib/features/tools/edge-edit-tool.js +129 -195
- package/lib/features/tools/edge-edit-tool.js.map +1 -1
- package/lib/features/tools/marquee-behavior.d.ts +42 -0
- package/lib/features/tools/marquee-behavior.d.ts.map +1 -0
- package/lib/features/tools/marquee-behavior.js +128 -0
- package/lib/features/tools/marquee-behavior.js.map +1 -0
- package/lib/features/{model-source-watcher/model-source-changed-action.d.ts → tools/marquee-behavior.spec.d.ts} +3 -10
- package/lib/features/tools/marquee-behavior.spec.d.ts.map +1 -0
- package/lib/features/tools/marquee-behavior.spec.js +165 -0
- package/lib/features/tools/marquee-behavior.spec.js.map +1 -0
- package/lib/features/tools/marquee-mouse-tool.d.ts +24 -13
- package/lib/features/tools/marquee-mouse-tool.d.ts.map +1 -1
- package/lib/features/tools/marquee-mouse-tool.js +89 -198
- package/lib/features/tools/marquee-mouse-tool.js.map +1 -1
- package/lib/features/tools/marquee-tool.d.ts +17 -1
- package/lib/features/tools/marquee-tool.d.ts.map +1 -1
- package/lib/features/tools/marquee-tool.js +32 -73
- package/lib/features/tools/marquee-tool.js.map +1 -1
- package/lib/features/tools/model.d.ts +1 -1
- package/lib/features/tools/model.d.ts.map +1 -1
- package/lib/features/tools/model.js +5 -23
- package/lib/features/tools/model.js.map +1 -1
- package/lib/features/tools/node-creation-tool.d.ts +17 -2
- package/lib/features/tools/node-creation-tool.d.ts.map +1 -1
- package/lib/features/tools/node-creation-tool.js +63 -93
- 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 +13 -32
- package/lib/features/tools/view.js.map +1 -1
- package/lib/features/validation/di.config.js +12 -12
- package/lib/features/validation/di.config.js.map +1 -1
- package/lib/features/validation/issue-marker.d.ts +2 -2
- package/lib/features/validation/issue-marker.d.ts.map +1 -1
- package/lib/features/validation/issue-marker.js +17 -55
- package/lib/features/validation/issue-marker.js.map +1 -1
- package/lib/features/validation/marker-navigator.d.ts +17 -1
- package/lib/features/validation/marker-navigator.d.ts.map +1 -1
- package/lib/features/validation/marker-navigator.js +134 -167
- package/lib/features/validation/marker-navigator.js.map +1 -1
- package/lib/features/validation/marker-navigator.spec.d.ts +0 -15
- package/lib/features/validation/marker-navigator.spec.d.ts.map +1 -1
- package/lib/features/validation/marker-navigator.spec.js +104 -98
- package/lib/features/validation/marker-navigator.spec.js.map +1 -1
- package/lib/features/validation/validate.d.ts +18 -29
- package/lib/features/validation/validate.d.ts.map +1 -1
- package/lib/features/validation/validate.js +148 -301
- package/lib/features/validation/validate.js.map +1 -1
- package/lib/features/viewport/di.config.js +10 -10
- package/lib/features/viewport/di.config.js.map +1 -1
- package/lib/features/viewport/glsp-scroll-mouse-listener.d.ts +18 -2
- package/lib/features/viewport/glsp-scroll-mouse-listener.d.ts.map +1 -1
- package/lib/features/viewport/glsp-scroll-mouse-listener.js +16 -47
- package/lib/features/viewport/glsp-scroll-mouse-listener.js.map +1 -1
- package/lib/index.d.ts +9 -15
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +36 -37
- package/lib/index.js.map +1 -1
- package/lib/lib/model.d.ts +1 -1
- package/lib/lib/model.d.ts.map +1 -1
- package/lib/lib/model.js +12 -28
- package/lib/lib/model.js.map +1 -1
- package/lib/model-source/glsp-diagram-server.d.ts +3 -5
- package/lib/model-source/glsp-diagram-server.d.ts.map +1 -1
- package/lib/model-source/glsp-diagram-server.js +61 -121
- package/lib/model-source/glsp-diagram-server.js.map +1 -1
- package/lib/protocol-reexport.d.ts +45 -0
- package/lib/protocol-reexport.d.ts.map +1 -0
- package/lib/protocol-reexport.js +80 -0
- package/lib/protocol-reexport.js.map +1 -0
- package/lib/utils/argument-utils.d.ts +3 -3
- package/lib/utils/argument-utils.d.ts.map +1 -1
- package/lib/utils/argument-utils.js +32 -97
- package/lib/utils/argument-utils.js.map +1 -1
- package/lib/utils/html-utils.js +2 -2
- package/lib/utils/html-utils.js.map +1 -1
- package/lib/utils/layout-utils.d.ts +3 -2
- package/lib/utils/layout-utils.d.ts.map +1 -1
- package/lib/utils/layout-utils.js +5 -5
- package/lib/utils/layout-utils.js.map +1 -1
- package/lib/utils/marker.d.ts +0 -38
- package/lib/utils/marker.d.ts.map +1 -1
- package/lib/utils/marker.js +14 -61
- package/lib/utils/marker.js.map +1 -1
- package/lib/utils/smodel-util.d.ts +116 -10
- package/lib/utils/smodel-util.d.ts.map +1 -1
- package/lib/utils/smodel-util.js +131 -75
- package/lib/utils/smodel-util.js.map +1 -1
- package/lib/utils/viewpoint-util.d.ts +3 -2
- package/lib/utils/viewpoint-util.d.ts.map +1 -1
- package/lib/utils/viewpoint-util.js +15 -30
- package/lib/utils/viewpoint-util.js.map +1 -1
- package/lib/views/base-view-module.d.ts +0 -15
- package/lib/views/base-view-module.d.ts.map +1 -1
- package/lib/views/base-view-module.js +28 -28
- package/lib/views/base-view-module.js.map +1 -1
- package/lib/views/compartments.d.ts +6 -0
- package/lib/views/compartments.d.ts.map +1 -0
- package/lib/views/compartments.js +43 -0
- package/lib/views/compartments.js.map +1 -0
- package/lib/views/glsp-edge-view.d.ts +18 -3
- package/lib/views/glsp-edge-view.d.ts.map +1 -1
- package/lib/views/glsp-edge-view.js +32 -77
- package/lib/views/glsp-edge-view.js.map +1 -1
- package/lib/views/index.d.ts +1 -1
- package/lib/views/index.d.ts.map +1 -1
- package/lib/views/index.js +7 -3
- package/lib/views/index.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 +37 -51
- package/lib/views/issue-marker-view.js.map +1 -1
- package/lib/views/rounded-corner-view.d.ts +2 -3
- package/lib/views/rounded-corner-view.d.ts.map +1 -1
- package/lib/views/rounded-corner-view.js +41 -71
- package/lib/views/rounded-corner-view.js.map +1 -1
- package/lib/views/rounded-corner.d.ts +2 -1
- package/lib/views/rounded-corner.d.ts.map +1 -1
- package/lib/views/rounded-corner.js +44 -65
- package/lib/views/rounded-corner.js.map +1 -1
- package/package.json +13 -31
- package/src/base/action-dispatcher.ts +15 -15
- package/src/base/actions/focus-change-action.ts +2 -2
- package/src/base/{args.ts → argumentable.ts} +2 -3
- package/src/base/auto-complete/auto-complete-actions.ts +1 -1
- package/src/base/auto-complete/auto-complete-widget.ts +37 -25
- package/src/base/auto-complete/validation-decorator.ts +12 -11
- package/src/base/command-stack.ts +4 -7
- package/src/base/container-modules.ts +112 -0
- package/src/base/di.config.ts +33 -18
- package/src/base/drag-aware-mouse-listener.ts +6 -7
- package/src/base/{editor-context.ts → editor-context-service.ts} +4 -31
- 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 +9 -17
- package/src/base/model-initialization-constraint.ts +10 -10
- package/src/base/selection-clearing-mouse-listener.ts +1 -1
- package/src/base/tool-manager/glsp-tool-manager.ts +9 -11
- package/src/base/types.ts +4 -2
- package/src/base/view/view-registry.ts +2 -2
- package/src/features/change-bounds/model.ts +17 -7
- package/src/features/change-bounds/movement-restrictor.ts +17 -9
- package/src/features/change-bounds/snap.spec.ts +89 -0
- package/src/features/change-bounds/snap.ts +87 -2
- package/src/features/command-palette/server-command-palette-provider.ts +11 -9
- package/src/features/context-menu/delete-element-context-menu.ts +3 -4
- package/src/features/context-menu/di.config.ts +11 -9
- package/src/features/context-menu/selection-service-aware-context-menu-mouse-listener.ts +41 -11
- package/src/features/context-menu/server-context-menu-provider.ts +10 -7
- package/src/features/copy-paste/copy-paste-context-menu.ts +59 -30
- package/src/features/copy-paste/copy-paste-handler.ts +18 -10
- package/src/features/copy-paste/di.config.ts +2 -3
- package/src/features/decoration/decoration-placer.ts +4 -14
- package/src/features/edit-label/edit-label-validator.ts +11 -12
- package/src/features/hints/di.config.ts +2 -3
- package/src/features/hints/model.ts +4 -3
- package/src/features/hints/type-hints.ts +24 -91
- package/src/features/hover/di.config.ts +4 -3
- package/src/features/hover/hover.ts +27 -8
- package/src/features/layout/di.config.ts +8 -4
- package/src/features/layout/freeform-layout.ts +133 -0
- package/src/features/layout/layout-commands.spec.ts +82 -64
- package/src/features/layout/layout-commands.ts +47 -38
- package/src/features/layout/vbox-layout.ts +260 -0
- package/src/features/model-source-watcher/di.config.ts +3 -4
- package/src/features/model-source-watcher/model-source-changed-action-handler.ts +11 -7
- package/src/features/mouse-tool/mouse-tool.ts +28 -54
- package/src/features/navigation/di.config.ts +4 -10
- package/src/features/navigation/navigation-action-handler.ts +33 -69
- package/src/features/navigation/navigation-target-resolver.spec.ts +3 -7
- package/src/features/navigation/navigation-target-resolver.ts +13 -91
- package/src/features/rank/model.ts +2 -2
- package/src/features/reconnect/model.ts +3 -4
- package/src/features/save/di.config.ts +2 -3
- package/src/features/save/{save.ts → save-keylistener.ts} +4 -12
- package/src/features/select/select-feedback-action.ts +4 -6
- package/src/features/select/selection-service.spec.ts +11 -6
- package/src/features/select/selection-service.ts +18 -13
- package/src/features/tool-feedback/change-bounds-tool-feedback.ts +33 -26
- package/src/features/tool-feedback/creation-tool-feedback.ts +49 -14
- package/src/features/tool-feedback/css-feedback.ts +9 -6
- package/src/features/tool-feedback/di.config.ts +2 -5
- package/src/features/tool-feedback/edge-edit-tool-feedback.ts +78 -68
- package/src/features/tool-feedback/feedback-action-dispatcher.ts +9 -10
- package/src/features/tool-feedback/marquee-tool-feedback.ts +6 -7
- package/src/features/tool-feedback/model.ts +1 -4
- package/src/features/tool-feedback/view.tsx +17 -11
- package/src/features/tool-palette/di.config.ts +2 -4
- package/src/features/tool-palette/palette-item.ts +4 -6
- package/src/features/tool-palette/tool-palette.ts +48 -42
- package/src/features/tools/base-glsp-tool.ts +10 -10
- package/src/features/tools/change-bounds-tool.ts +73 -74
- package/src/features/tools/delete-tool.ts +11 -8
- package/src/features/tools/di.config.ts +2 -3
- package/src/features/tools/edge-creation-tool.ts +7 -12
- package/src/features/tools/edge-edit-tool.ts +19 -26
- package/src/features/tools/marquee-behavior.spec.ts +175 -0
- package/src/features/tools/marquee-behavior.ts +158 -0
- package/src/features/tools/marquee-mouse-tool.ts +48 -139
- package/src/features/tools/marquee-tool.ts +4 -5
- package/src/features/tools/model.ts +2 -2
- package/src/features/tools/node-creation-tool.ts +6 -13
- package/src/features/tools/view.tsx +19 -15
- package/src/features/validation/issue-marker.ts +2 -3
- package/src/features/validation/marker-navigator.spec.ts +18 -14
- package/src/features/validation/marker-navigator.ts +29 -15
- package/src/features/validation/validate.ts +10 -43
- package/src/features/viewport/glsp-scroll-mouse-listener.ts +4 -13
- package/src/index.ts +30 -19
- package/src/lib/model.ts +2 -3
- package/src/model-source/glsp-diagram-server.ts +18 -32
- package/src/protocol-reexport.ts +64 -0
- package/src/utils/argument-utils.ts +14 -11
- package/src/utils/layout-utils.ts +13 -7
- package/src/utils/marker.ts +2 -26
- package/src/utils/smodel-util.ts +140 -38
- package/src/utils/viewpoint-util.ts +4 -4
- package/src/views/base-view-module.ts +1 -2
- package/src/{base/actions/edit-mode-action.ts → views/compartments.tsx} +18 -14
- package/src/views/glsp-edge-view.tsx +25 -18
- package/src/views/index.ts +1 -1
- package/src/views/issue-marker-view.tsx +29 -20
- package/src/views/rounded-corner-view.tsx +40 -28
- package/src/views/rounded-corner.ts +5 -6
- package/lib/base/actions/context-actions.d.ts +0 -36
- package/lib/base/actions/context-actions.d.ts.map +0 -1
- package/lib/base/actions/context-actions.js +0 -51
- package/lib/base/actions/context-actions.js.map +0 -1
- package/lib/base/actions/edit-mode-action.d.ts +0 -13
- package/lib/base/actions/edit-mode-action.d.ts.map +0 -1
- package/lib/base/actions/edit-mode-action.js +0 -56
- package/lib/base/actions/edit-mode-action.js.map +0 -1
- package/lib/base/actions/edit-validation-actions.d.ts +0 -78
- package/lib/base/actions/edit-validation-actions.d.ts.map +0 -1
- package/lib/base/actions/edit-validation-actions.js +0 -83
- package/lib/base/actions/edit-validation-actions.js.map +0 -1
- package/lib/base/actions/protocol-actions.d.ts +0 -41
- package/lib/base/actions/protocol-actions.d.ts.map +0 -1
- package/lib/base/actions/protocol-actions.js +0 -151
- package/lib/base/actions/protocol-actions.js.map +0 -1
- package/lib/base/args.d.ts.map +0 -1
- package/lib/base/args.js.map +0 -1
- package/lib/base/editor-context.d.ts.map +0 -1
- package/lib/base/editor-context.js +0 -174
- package/lib/base/editor-context.js.map +0 -1
- package/lib/base/operations/operation.d.ts +0 -135
- package/lib/base/operations/operation.d.ts.map +0 -1
- package/lib/base/operations/operation.js +0 -231
- package/lib/base/operations/operation.js.map +0 -1
- package/lib/features/copy-paste/copy-paste-actions.d.ts +0 -50
- package/lib/features/copy-paste/copy-paste-actions.d.ts.map +0 -1
- package/lib/features/copy-paste/copy-paste-actions.js +0 -68
- package/lib/features/copy-paste/copy-paste-actions.js.map +0 -1
- package/lib/features/hints/request-type-hints-action.d.ts +0 -32
- package/lib/features/hints/request-type-hints-action.d.ts.map +0 -1
- package/lib/features/hints/request-type-hints-action.js +0 -30
- package/lib/features/hints/request-type-hints-action.js.map +0 -1
- package/lib/features/model-source-watcher/model-source-changed-action.d.ts.map +0 -1
- package/lib/features/model-source-watcher/model-source-changed-action.js +0 -17
- package/lib/features/model-source-watcher/model-source-changed-action.js.map +0 -1
- package/lib/features/save/save.d.ts.map +0 -1
- package/lib/features/save/save.js +0 -62
- package/lib/features/save/save.js.map +0 -1
- package/lib/features/undo-redo/model.d.ts.map +0 -1
- package/lib/features/undo-redo/model.js +0 -22
- package/lib/features/undo-redo/model.js.map +0 -1
- package/lib/model-source/glsp-server-status.d.ts +0 -30
- package/lib/model-source/glsp-server-status.d.ts.map +0 -1
- package/lib/model-source/glsp-server-status.js +0 -61
- package/lib/model-source/glsp-server-status.js.map +0 -1
- package/lib/utils/array-utils.d.ts +0 -28
- package/lib/utils/array-utils.d.ts.map +0 -1
- package/lib/utils/array-utils.js +0 -61
- package/lib/utils/array-utils.js.map +0 -1
- package/lib/views/default-types.d.ts +0 -37
- package/lib/views/default-types.d.ts.map +0 -1
- package/lib/views/default-types.js +0 -47
- package/lib/views/default-types.js.map +0 -1
- package/src/base/actions/context-actions.ts +0 -43
- package/src/base/actions/edit-validation-actions.ts +0 -103
- package/src/base/actions/protocol-actions.ts +0 -82
- package/src/base/operations/operation.ts +0 -178
- package/src/features/copy-paste/copy-paste-actions.ts +0 -60
- package/src/features/hints/request-type-hints-action.ts +0 -36
- package/src/features/model-source-watcher/model-source-changed-action.ts +0 -26
- package/src/model-source/glsp-server-status.ts +0 -38
- package/src/utils/array-utils.ts +0 -55
- package/src/views/default-types.ts +0 -48
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/********************************************************************************
|
|
2
|
-
* Copyright (c) 2020 EclipseSource and others.
|
|
2
|
+
* Copyright (c) 2020-2021 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,96 +13,17 @@
|
|
|
13
13
|
*
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
|
+
import {
|
|
17
|
+
isSetResolvedNavigationTargets,
|
|
18
|
+
NavigationTarget,
|
|
19
|
+
ResolveNavigationTargetAction,
|
|
20
|
+
SetResolvedNavigationTargetAction
|
|
21
|
+
} from '@eclipse-glsp/protocol';
|
|
16
22
|
import { inject, injectable } from 'inversify';
|
|
17
|
-
import {
|
|
18
|
-
|
|
19
|
-
import { Args } from '../../base/args';
|
|
20
|
-
import { EditorContextServiceProvider } from '../../base/editor-context';
|
|
23
|
+
import { IActionDispatcher, ILogger, ResponseAction, TYPES } from 'sprotty';
|
|
24
|
+
import { EditorContextServiceProvider } from '../../base/editor-context-service';
|
|
21
25
|
import { GLSP_TYPES } from '../../base/types';
|
|
22
26
|
|
|
23
|
-
export interface NavigationTarget {
|
|
24
|
-
uri: string;
|
|
25
|
-
label?: string;
|
|
26
|
-
args?: Args;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
export namespace NavigationTarget {
|
|
30
|
-
|
|
31
|
-
export const ELEMENT_IDS = 'elementIds';
|
|
32
|
-
export const ELEMENT_IDS_SEPARATOR = '&';
|
|
33
|
-
export const TEXT_LINE = 'line';
|
|
34
|
-
export const TEXT_COLUMN = 'column';
|
|
35
|
-
|
|
36
|
-
export function hasArguments(target: NavigationTarget): boolean {
|
|
37
|
-
return target.args !== undefined && Object.keys(target.args).length > 0;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
export function addArgument(target: NavigationTarget, key: string, value: string | number | boolean): void {
|
|
41
|
-
if (target.args === undefined) {
|
|
42
|
-
target.args = {};
|
|
43
|
-
}
|
|
44
|
-
target.args[key] = value;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
export function getElementIds(target: NavigationTarget): string[] {
|
|
48
|
-
if (target.args === undefined || target.args[NavigationTarget.ELEMENT_IDS] === undefined) {
|
|
49
|
-
return [];
|
|
50
|
-
}
|
|
51
|
-
const elementIdsValue = target.args[NavigationTarget.ELEMENT_IDS].toString();
|
|
52
|
-
return elementIdsValue.split(NavigationTarget.ELEMENT_IDS_SEPARATOR);
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
export function setElementIds(target: NavigationTarget, elementIds: string[]): string {
|
|
56
|
-
if (target.args === undefined) {
|
|
57
|
-
target.args = {};
|
|
58
|
-
}
|
|
59
|
-
return target.args[NavigationTarget.ELEMENT_IDS] = elementIds.join(NavigationTarget.ELEMENT_IDS_SEPARATOR);
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
export function setTextPosition(target: NavigationTarget, position: TextPosition | undefined): void {
|
|
63
|
-
if (position) {
|
|
64
|
-
if (target.args === undefined) {
|
|
65
|
-
target.args = {};
|
|
66
|
-
}
|
|
67
|
-
target.args[NavigationTarget.TEXT_LINE] = position.line;
|
|
68
|
-
target.args[NavigationTarget.TEXT_COLUMN] = position.character;
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
export function getTextPosition(target: NavigationTarget): TextPosition | undefined {
|
|
73
|
-
if (target.args === undefined
|
|
74
|
-
|| target.args[NavigationTarget.TEXT_LINE] === undefined
|
|
75
|
-
|| target.args[NavigationTarget.TEXT_COLUMN] === undefined) {
|
|
76
|
-
return undefined;
|
|
77
|
-
}
|
|
78
|
-
return {
|
|
79
|
-
line: Number(target.args[NavigationTarget.TEXT_LINE]),
|
|
80
|
-
character: Number(target.args[NavigationTarget.TEXT_COLUMN])
|
|
81
|
-
};
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
export interface TextPosition {
|
|
86
|
-
line: number;
|
|
87
|
-
character: number;
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
export class ResolveNavigationTargetAction implements RequestAction<SetResolvedNavigationTargetAction> {
|
|
91
|
-
static readonly KIND = 'resolveNavigationTarget';
|
|
92
|
-
kind = ResolveNavigationTargetAction.KIND;
|
|
93
|
-
constructor(readonly navigationTarget: NavigationTarget, public readonly requestId: string = generateRequestId()) { }
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
export class SetResolvedNavigationTargetAction implements ResponseAction {
|
|
97
|
-
static readonly KIND = 'setResolvedNavigationTarget';
|
|
98
|
-
kind = SetResolvedNavigationTargetAction.KIND;
|
|
99
|
-
constructor(readonly elementIds: string[] = [], readonly args?: Args, readonly responseId: string = '') { }
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
export function isSetResolvedNavigationTargets(action: Action): action is SetResolvedNavigationTargetAction {
|
|
103
|
-
return action !== undefined && (action.kind === SetResolvedNavigationTargetAction.KIND);
|
|
104
|
-
}
|
|
105
|
-
|
|
106
27
|
/**
|
|
107
28
|
* Resolves `NavigationTargets` to element ids.
|
|
108
29
|
*
|
|
@@ -111,7 +32,6 @@ export function isSetResolvedNavigationTargets(action: Action): action is SetRes
|
|
|
111
32
|
*/
|
|
112
33
|
@injectable()
|
|
113
34
|
export class NavigationTargetResolver {
|
|
114
|
-
|
|
115
35
|
@inject(GLSP_TYPES.IEditorContextServiceProvider) protected editorContextService: EditorContextServiceProvider;
|
|
116
36
|
@inject(TYPES.IActionDispatcher) protected dispatcher: IActionDispatcher;
|
|
117
37
|
@inject(TYPES.ILogger) protected readonly logger: ILogger;
|
|
@@ -122,7 +42,10 @@ export class NavigationTargetResolver {
|
|
|
122
42
|
return this.resolveWithSourceUri(sourceUri, navigationTarget);
|
|
123
43
|
}
|
|
124
44
|
|
|
125
|
-
async resolveWithSourceUri(
|
|
45
|
+
async resolveWithSourceUri(
|
|
46
|
+
sourceUri: string | undefined,
|
|
47
|
+
target: NavigationTarget
|
|
48
|
+
): Promise<SetResolvedNavigationTargetAction | undefined> {
|
|
126
49
|
const targetUri = decodeURIComponent(target.uri);
|
|
127
50
|
if (sourceUri && sourceUri !== targetUri && `file://${sourceUri}` !== targetUri) {
|
|
128
51
|
// different URI, so we can't resolve it locally
|
|
@@ -143,4 +66,3 @@ export class NavigationTargetResolver {
|
|
|
143
66
|
return this.dispatcher.request(new ResolveNavigationTargetAction(target));
|
|
144
67
|
}
|
|
145
68
|
}
|
|
146
|
-
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/********************************************************************************
|
|
2
|
-
* Copyright (c) 2019 EclipseSource and others.
|
|
2
|
+
* Copyright (c) 2019-2021 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
|
|
@@ -21,7 +21,7 @@ export interface Ranked {
|
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
export function isRanked(arg: any): arg is Ranked {
|
|
24
|
-
return arg !== undefined && arg.rank !== undefined && typeof
|
|
24
|
+
return arg !== undefined && arg.rank !== undefined && typeof arg.rank === 'number';
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
export function getRank(arg: any): number {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/********************************************************************************
|
|
2
|
-
* Copyright (c) 2019 EclipseSource and others.
|
|
2
|
+
* Copyright (c) 2019-2022 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
|
|
@@ -26,8 +26,7 @@ import {
|
|
|
26
26
|
|
|
27
27
|
export const reconnectFeature = Symbol('reconnectFeature');
|
|
28
28
|
|
|
29
|
-
export interface Reconnectable extends SModelExtension {
|
|
30
|
-
}
|
|
29
|
+
export interface Reconnectable extends SModelExtension {}
|
|
31
30
|
|
|
32
31
|
export function isReconnectable(element: SModelElement): element is SRoutableElement & Reconnectable {
|
|
33
32
|
return element instanceof SRoutableElement && element.hasFeature(reconnectFeature);
|
|
@@ -70,7 +69,7 @@ export function createReconnectHandle(edge: SRoutableElement, kind: RoutingHandl
|
|
|
70
69
|
}
|
|
71
70
|
|
|
72
71
|
export class SReconnectHandle extends SRoutingHandle {
|
|
73
|
-
hasFeature(feature: symbol): boolean {
|
|
72
|
+
override hasFeature(feature: symbol): boolean {
|
|
74
73
|
return feature !== selectFeature && super.hasFeature(feature);
|
|
75
74
|
}
|
|
76
75
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/********************************************************************************
|
|
2
|
-
* Copyright (c) 2019 EclipseSource and others.
|
|
2
|
+
* Copyright (c) 2019-2021 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,7 +16,7 @@
|
|
|
16
16
|
import { ContainerModule } from 'inversify';
|
|
17
17
|
import { TYPES } from 'sprotty';
|
|
18
18
|
|
|
19
|
-
import { SaveModelKeyboardListener } from './save';
|
|
19
|
+
import { SaveModelKeyboardListener } from './save-keylistener';
|
|
20
20
|
|
|
21
21
|
/**
|
|
22
22
|
* This module is not required the diagram is deployed in Theia with the `GLSPDiagramWidget`
|
|
@@ -24,7 +24,6 @@ import { SaveModelKeyboardListener } from './save';
|
|
|
24
24
|
*/
|
|
25
25
|
const saveModule = new ContainerModule(bind => {
|
|
26
26
|
bind(TYPES.KeyListener).to(SaveModelKeyboardListener);
|
|
27
|
-
|
|
28
27
|
});
|
|
29
28
|
|
|
30
29
|
export default saveModule;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/********************************************************************************
|
|
2
|
-
* Copyright (c) 2019 EclipseSource and others.
|
|
2
|
+
* Copyright (c) 2019-2022 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,12 @@
|
|
|
13
13
|
*
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
|
-
import { Action,
|
|
16
|
+
import { Action, SaveModelAction } from '@eclipse-glsp/protocol';
|
|
17
|
+
import { KeyListener, SModelRoot } from 'sprotty';
|
|
17
18
|
import { matchesKeystroke } from 'sprotty/lib/utils/keyboard';
|
|
18
19
|
|
|
19
|
-
export class SaveModelAction implements Action {
|
|
20
|
-
static readonly KIND = 'saveModel';
|
|
21
|
-
constructor(public readonly fileUri?: string, public readonly kind: string = SaveModelAction.KIND) { }
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
export function isSaveModelAction(action: Action): action is SaveModelAction {
|
|
25
|
-
return action.kind === SaveModelAction.KIND;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
20
|
export class SaveModelKeyboardListener extends KeyListener {
|
|
29
|
-
keyDown(_element: SModelRoot, event: KeyboardEvent): Action[] {
|
|
21
|
+
override keyDown(_element: SModelRoot, event: KeyboardEvent): Action[] {
|
|
30
22
|
if (matchesKeystroke(event, 'KeyS', 'ctrlCmd')) {
|
|
31
23
|
return [new SaveModelAction()];
|
|
32
24
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/********************************************************************************
|
|
2
|
-
* Copyright (c) 2019-
|
|
2
|
+
* Copyright (c) 2019-2021 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
|
|
@@ -27,16 +27,15 @@ export class SelectFeedbackAction {
|
|
|
27
27
|
constructor(
|
|
28
28
|
public readonly selectedElementsIDs: string[] = [],
|
|
29
29
|
public readonly deselectedElementsIDs: string[] = [],
|
|
30
|
-
public readonly kind: string = SelectFeedbackCommand.KIND
|
|
31
|
-
}
|
|
30
|
+
public readonly kind: string = SelectFeedbackCommand.KIND
|
|
31
|
+
) {}
|
|
32
32
|
}
|
|
33
33
|
|
|
34
34
|
export class SelectAllFeedbackAction {
|
|
35
35
|
/**
|
|
36
36
|
* If `select` is true, all elements are selected, othewise they are deselected.
|
|
37
37
|
*/
|
|
38
|
-
constructor(public readonly select: boolean = true, public readonly kind: string = SelectFeedbackCommand.KIND) {
|
|
39
|
-
}
|
|
38
|
+
constructor(public readonly select: boolean = true, public readonly kind: string = SelectFeedbackCommand.KIND) {}
|
|
40
39
|
}
|
|
41
40
|
|
|
42
41
|
@injectable()
|
|
@@ -84,4 +83,3 @@ export class SelectAllFeedbackCommand extends Command {
|
|
|
84
83
|
return this.sprottySelectAllCommand.redo(context);
|
|
85
84
|
}
|
|
86
85
|
}
|
|
87
|
-
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/********************************************************************************
|
|
2
|
-
* Copyright (c) 2020 EclipseSource and others.
|
|
2
|
+
* Copyright (c) 2020-2021 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,10 +14,10 @@
|
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
16
|
/* eslint-disable import/no-deprecated,no-unused-expressions */
|
|
17
|
+
import { Action } from '@eclipse-glsp/protocol';
|
|
17
18
|
import { AssertionError, expect } from 'chai';
|
|
18
19
|
import { Container, injectable } from 'inversify';
|
|
19
|
-
import {
|
|
20
|
-
|
|
20
|
+
import { defaultModule, SGraphFactory, SModelElementSchema, SModelRoot, TYPES } from 'sprotty';
|
|
21
21
|
import { GLSP_TYPES } from '../../base/types';
|
|
22
22
|
import { IFeedbackActionDispatcher, IFeedbackEmitter } from '../tool-feedback/feedback-action-dispatcher';
|
|
23
23
|
import { SelectFeedbackAction } from './select-feedback-action';
|
|
@@ -25,7 +25,7 @@ import { SelectionListener, SelectionService } from './selection-service';
|
|
|
25
25
|
|
|
26
26
|
@injectable()
|
|
27
27
|
class MockFeedbackActionDispatcher implements IFeedbackActionDispatcher {
|
|
28
|
-
protected feedbackEmitters: Map<IFeedbackEmitter, Action[]> = new Map;
|
|
28
|
+
protected feedbackEmitters: Map<IFeedbackEmitter, Action[]> = new Map();
|
|
29
29
|
|
|
30
30
|
registerFeedback(feedbackEmitter: IFeedbackEmitter, actions: Action[]): void {
|
|
31
31
|
this.feedbackEmitters.set(feedbackEmitter, actions);
|
|
@@ -43,7 +43,7 @@ class MockFeedbackActionDispatcher implements IFeedbackActionDispatcher {
|
|
|
43
43
|
|
|
44
44
|
getSingleFeedbackAction(): SelectFeedbackAction | undefined {
|
|
45
45
|
const actions = this.getRegisteredFeedback();
|
|
46
|
-
return actions.length === 1 ? actions[0] as SelectFeedbackAction : undefined;
|
|
46
|
+
return actions.length === 1 ? (actions[0] as SelectFeedbackAction) : undefined;
|
|
47
47
|
}
|
|
48
48
|
}
|
|
49
49
|
|
|
@@ -363,7 +363,12 @@ describe('SelectionService', () => {
|
|
|
363
363
|
}
|
|
364
364
|
}
|
|
365
365
|
|
|
366
|
-
function assertListener(
|
|
366
|
+
function assertListener(
|
|
367
|
+
listener: MockSelectionListener,
|
|
368
|
+
expectedRoot: SModelRoot | undefined,
|
|
369
|
+
expectedSelection: string[],
|
|
370
|
+
expectedCalled: number
|
|
371
|
+
): void {
|
|
367
372
|
expect(listener.getRoot()).to.equal(expectedRoot);
|
|
368
373
|
expect(listener.getSelectedElements()).to.have.lengthOf(expectedSelection.length);
|
|
369
374
|
expect(listener.getSelectedElements()).to.have.ordered.members(expectedSelection);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/********************************************************************************
|
|
2
|
-
* Copyright (c) 2019-
|
|
2
|
+
* Copyright (c) 2019-2022 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,15 @@
|
|
|
13
13
|
*
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
|
+
import { Action, distinctAdd, remove, SelectAction, SelectAllAction } from '@eclipse-glsp/protocol';
|
|
16
17
|
import { inject, injectable, multiInject, optional } from 'inversify';
|
|
17
18
|
import {
|
|
18
|
-
Action,
|
|
19
19
|
Command,
|
|
20
20
|
CommandExecutionContext,
|
|
21
21
|
ILogger,
|
|
22
22
|
isSelectable,
|
|
23
|
-
isSelected,
|
|
24
23
|
SChildElement,
|
|
25
|
-
|
|
26
|
-
SelectAllAction,
|
|
24
|
+
Selectable,
|
|
27
25
|
SelectAllCommand as SprottySelectAllCommand,
|
|
28
26
|
SelectCommand as SprottySelectCommand,
|
|
29
27
|
SModelElement,
|
|
@@ -31,10 +29,9 @@ import {
|
|
|
31
29
|
SParentElement,
|
|
32
30
|
TYPES
|
|
33
31
|
} from 'sprotty';
|
|
34
|
-
|
|
35
32
|
import { SModelRootListener } from '../../base/model/update-model-command';
|
|
36
33
|
import { GLSP_TYPES } from '../../base/types';
|
|
37
|
-
import {
|
|
34
|
+
import { getElements } from '../../utils/smodel-util';
|
|
38
35
|
import { IFeedbackActionDispatcher } from '../tool-feedback/feedback-action-dispatcher';
|
|
39
36
|
import { SelectFeedbackAction } from './select-feedback-action';
|
|
40
37
|
|
|
@@ -50,7 +47,7 @@ export class SelectionService implements SModelRootListener {
|
|
|
50
47
|
@inject(GLSP_TYPES.IFeedbackActionDispatcher) protected feedbackDispatcher: IFeedbackActionDispatcher;
|
|
51
48
|
@inject(TYPES.ILogger) protected logger: ILogger;
|
|
52
49
|
|
|
53
|
-
constructor(@multiInject(GLSP_TYPES.SelectionListener) @optional() protected selectionListeners: SelectionListener[] = []) {
|
|
50
|
+
constructor(@multiInject(GLSP_TYPES.SelectionListener) @optional() protected selectionListeners: SelectionListener[] = []) {}
|
|
54
51
|
|
|
55
52
|
register(selectionListener: SelectionListener): void {
|
|
56
53
|
distinctAdd(this.selectionListeners, selectionListener);
|
|
@@ -99,7 +96,9 @@ export class SelectionService implements SModelRootListener {
|
|
|
99
96
|
}
|
|
100
97
|
|
|
101
98
|
// only send out changes if there actually are changes, i.e., the root or the selected elements changed
|
|
102
|
-
const selectionChanged =
|
|
99
|
+
const selectionChanged =
|
|
100
|
+
prevSelectedElementIDs.size !== this.selectedElementIDs.size ||
|
|
101
|
+
![...prevSelectedElementIDs].every(value => this.selectedElementIDs.has(value));
|
|
103
102
|
if (selectionChanged) {
|
|
104
103
|
// aggregate to feedback action handling all elements as only the last feedback is restored
|
|
105
104
|
this.dispatchFeedback([new SelectFeedbackAction([...this.selectedElementIDs], [...deselectedElementIDs])]);
|
|
@@ -124,8 +123,8 @@ export class SelectionService implements SModelRootListener {
|
|
|
124
123
|
return this.root;
|
|
125
124
|
}
|
|
126
125
|
|
|
127
|
-
getSelectedElements(): Readonly<SModelElement>[] {
|
|
128
|
-
return
|
|
126
|
+
getSelectedElements(): Readonly<SModelElement & Selectable>[] {
|
|
127
|
+
return getElements(this.root.index, Array.from(this.selectedElementIDs), isSelectable);
|
|
129
128
|
}
|
|
130
129
|
|
|
131
130
|
/**
|
|
@@ -156,7 +155,10 @@ export class SelectCommand extends Command {
|
|
|
156
155
|
protected selected: SModelElement[] = [];
|
|
157
156
|
protected deselected: SModelElement[] = [];
|
|
158
157
|
|
|
159
|
-
constructor(
|
|
158
|
+
constructor(
|
|
159
|
+
@inject(TYPES.Action) public action: SelectAction,
|
|
160
|
+
@inject(GLSP_TYPES.SelectionService) public selectionService: SelectionService
|
|
161
|
+
) {
|
|
160
162
|
super();
|
|
161
163
|
}
|
|
162
164
|
|
|
@@ -197,7 +199,10 @@ export class SelectAllCommand extends Command {
|
|
|
197
199
|
static readonly KIND = SprottySelectAllCommand.KIND;
|
|
198
200
|
protected previousSelection: Map<string, boolean> = new Map<string, boolean>();
|
|
199
201
|
|
|
200
|
-
constructor(
|
|
202
|
+
constructor(
|
|
203
|
+
@inject(TYPES.Action) public action: SelectAllAction,
|
|
204
|
+
@inject(GLSP_TYPES.SelectionService) public selectionService: SelectionService
|
|
205
|
+
) {
|
|
201
206
|
super();
|
|
202
207
|
}
|
|
203
208
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/********************************************************************************
|
|
2
|
-
* Copyright (c) 2019 EclipseSource and others.
|
|
2
|
+
* Copyright (c) 2019-2022 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,10 +13,10 @@
|
|
|
13
13
|
*
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
|
+
import { Action, Point } from '@eclipse-glsp/protocol';
|
|
16
17
|
import { inject, injectable } from 'inversify';
|
|
17
|
-
import { VNode } from 'snabbdom
|
|
18
|
+
import { VNode } from 'snabbdom';
|
|
18
19
|
import {
|
|
19
|
-
Action,
|
|
20
20
|
CommandExecutionContext,
|
|
21
21
|
CommandReturn,
|
|
22
22
|
ElementMove,
|
|
@@ -26,24 +26,24 @@ import {
|
|
|
26
26
|
isViewport,
|
|
27
27
|
MouseListener,
|
|
28
28
|
MoveAction,
|
|
29
|
-
|
|
29
|
+
SChildElement,
|
|
30
30
|
SModelElement,
|
|
31
31
|
SModelRoot,
|
|
32
32
|
TYPES
|
|
33
33
|
} from 'sprotty';
|
|
34
|
-
|
|
35
|
-
import { isNotUndefined } from '../../utils/smodel-util';
|
|
34
|
+
import { forEachElement, isNotUndefined } from '../../utils/smodel-util';
|
|
36
35
|
import { addResizeHandles, isResizable, removeResizeHandles, SResizeHandle } from '../change-bounds/model';
|
|
37
36
|
import { createMovementRestrictionFeedback, removeMovementRestrictionFeedback } from '../change-bounds/movement-restrictor';
|
|
37
|
+
import { CursorCSS, cursorFeedbackAction } from '../tool-feedback/css-feedback';
|
|
38
38
|
import { ChangeBoundsTool } from '../tools/change-bounds-tool';
|
|
39
39
|
import { FeedbackCommand } from './model';
|
|
40
40
|
|
|
41
41
|
export class ShowChangeBoundsToolResizeFeedbackAction implements Action {
|
|
42
|
-
constructor(readonly elementId?: string, public readonly kind: string = ShowChangeBoundsToolResizeFeedbackCommand.KIND) {
|
|
42
|
+
constructor(readonly elementId?: string, public readonly kind: string = ShowChangeBoundsToolResizeFeedbackCommand.KIND) {}
|
|
43
43
|
}
|
|
44
44
|
|
|
45
45
|
export class HideChangeBoundsToolResizeFeedbackAction implements Action {
|
|
46
|
-
constructor(public readonly kind: string = HideChangeBoundsToolResizeFeedbackCommand.KIND) {
|
|
46
|
+
constructor(public readonly kind: string = HideChangeBoundsToolResizeFeedbackCommand.KIND) {}
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
@injectable()
|
|
@@ -54,10 +54,8 @@ export class ShowChangeBoundsToolResizeFeedbackCommand extends FeedbackCommand {
|
|
|
54
54
|
|
|
55
55
|
execute(context: CommandExecutionContext): CommandReturn {
|
|
56
56
|
const index = context.root.index;
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
.filter(isResizable)
|
|
60
|
-
.forEach(removeResizeHandles);
|
|
57
|
+
|
|
58
|
+
forEachElement(index, isResizable, removeResizeHandles);
|
|
61
59
|
|
|
62
60
|
if (isNotUndefined(this.action.elementId)) {
|
|
63
61
|
const resizeElement = index.getById(this.action.elementId);
|
|
@@ -77,10 +75,7 @@ export class HideChangeBoundsToolResizeFeedbackCommand extends FeedbackCommand {
|
|
|
77
75
|
|
|
78
76
|
execute(context: CommandExecutionContext): CommandReturn {
|
|
79
77
|
const index = context.root.index;
|
|
80
|
-
index
|
|
81
|
-
.all()
|
|
82
|
-
.filter(isResizable)
|
|
83
|
-
.forEach(removeResizeHandles);
|
|
78
|
+
forEachElement(index, isResizable, removeResizeHandles);
|
|
84
79
|
return context.root;
|
|
85
80
|
}
|
|
86
81
|
}
|
|
@@ -101,7 +96,7 @@ export class FeedbackMoveMouseListener extends MouseListener {
|
|
|
101
96
|
super();
|
|
102
97
|
}
|
|
103
98
|
|
|
104
|
-
mouseDown(target: SModelElement, event: MouseEvent): Action[] {
|
|
99
|
+
override mouseDown(target: SModelElement, event: MouseEvent): Action[] {
|
|
105
100
|
if (event.button === 0 && !(target instanceof SResizeHandle)) {
|
|
106
101
|
const moveable = findParentByFeature(target, isMoveable);
|
|
107
102
|
if (moveable !== undefined) {
|
|
@@ -114,7 +109,7 @@ export class FeedbackMoveMouseListener extends MouseListener {
|
|
|
114
109
|
return [];
|
|
115
110
|
}
|
|
116
111
|
|
|
117
|
-
mouseMove(target: SModelElement, event: MouseEvent): Action[] {
|
|
112
|
+
override mouseMove(target: SModelElement, event: MouseEvent): Action[] {
|
|
118
113
|
const result: Action[] = [];
|
|
119
114
|
if (event.buttons === 0) {
|
|
120
115
|
this.mouseUp(target, event);
|
|
@@ -126,15 +121,17 @@ export class FeedbackMoveMouseListener extends MouseListener {
|
|
|
126
121
|
const moveAction = this.getElementMoves(target, event, false);
|
|
127
122
|
if (moveAction) {
|
|
128
123
|
result.push(moveAction);
|
|
124
|
+
result.push(cursorFeedbackAction(CursorCSS.MOVE));
|
|
129
125
|
}
|
|
130
126
|
}
|
|
131
127
|
return result;
|
|
132
128
|
}
|
|
133
129
|
|
|
134
130
|
protected collectStartPositions(root: SModelRoot): void {
|
|
135
|
-
root.index
|
|
136
|
-
|
|
137
|
-
|
|
131
|
+
const selectedElements = root.index.all().filter(element => isSelectable(element) && element.selected);
|
|
132
|
+
const elementsSet = new Set(selectedElements);
|
|
133
|
+
selectedElements
|
|
134
|
+
.filter(element => !this.isChildOfSelected(elementsSet, element))
|
|
138
135
|
.forEach(element => {
|
|
139
136
|
if (isMoveable(element)) {
|
|
140
137
|
this.elementId2startPos.set(element.id, element.position);
|
|
@@ -142,6 +139,16 @@ export class FeedbackMoveMouseListener extends MouseListener {
|
|
|
142
139
|
});
|
|
143
140
|
}
|
|
144
141
|
|
|
142
|
+
protected isChildOfSelected(selectedElements: Set<SModelElement>, element: SModelElement): boolean {
|
|
143
|
+
while (element instanceof SChildElement) {
|
|
144
|
+
element = element.parent;
|
|
145
|
+
if (selectedElements.has(element)) {
|
|
146
|
+
return true;
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
return false;
|
|
150
|
+
}
|
|
151
|
+
|
|
145
152
|
protected getElementMoves(target: SModelElement, event: MouseEvent, isFinished: boolean): MoveAction | undefined {
|
|
146
153
|
if (!this.startDragPosition) {
|
|
147
154
|
return undefined;
|
|
@@ -213,14 +220,14 @@ export class FeedbackMoveMouseListener extends MouseListener {
|
|
|
213
220
|
}
|
|
214
221
|
}
|
|
215
222
|
|
|
216
|
-
mouseEnter(target: SModelElement, event: MouseEvent): Action[] {
|
|
217
|
-
if (target instanceof SModelRoot && event.buttons === 0) {
|
|
223
|
+
override mouseEnter(target: SModelElement, event: MouseEvent): Action[] {
|
|
224
|
+
if (target instanceof SModelRoot && event.buttons === 0 && !this.startDragPosition) {
|
|
218
225
|
this.mouseUp(target, event);
|
|
219
226
|
}
|
|
220
227
|
return [];
|
|
221
228
|
}
|
|
222
229
|
|
|
223
|
-
mouseUp(target: SModelElement, event: MouseEvent): Action[] {
|
|
230
|
+
override mouseUp(target: SModelElement, event: MouseEvent): Action[] {
|
|
224
231
|
const result: Action[] = [];
|
|
225
232
|
if (this.startDragPosition) {
|
|
226
233
|
const moveAction = this.getElementMoves(target, event, true);
|
|
@@ -230,7 +237,7 @@ export class FeedbackMoveMouseListener extends MouseListener {
|
|
|
230
237
|
if (this.tool.movementRestrictor) {
|
|
231
238
|
this.tool.deregisterFeedback([removeMovementRestrictionFeedback(target, this.tool.movementRestrictor)], this);
|
|
232
239
|
}
|
|
233
|
-
|
|
240
|
+
result.push(cursorFeedbackAction(CursorCSS.DEFAULT));
|
|
234
241
|
}
|
|
235
242
|
this.hasDragged = false;
|
|
236
243
|
this.startDragPosition = undefined;
|
|
@@ -238,7 +245,7 @@ export class FeedbackMoveMouseListener extends MouseListener {
|
|
|
238
245
|
return result;
|
|
239
246
|
}
|
|
240
247
|
|
|
241
|
-
decorate(vnode: VNode, _element: SModelElement): VNode {
|
|
248
|
+
override decorate(vnode: VNode, _element: SModelElement): VNode {
|
|
242
249
|
return vnode;
|
|
243
250
|
}
|
|
244
251
|
}
|