@eclipse-glsp/client 0.9.0-next.d9bed812 → 0.9.0-next.eb280175
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 +2 -1
- package/css/command-palette.css +9 -5
- package/css/decoration.css +3 -2
- package/css/glsp-sprotty.css +16 -7
- package/css/tool-palette.css +44 -27
- package/lib/base/action-dispatcher.d.ts +18 -2
- package/lib/base/action-dispatcher.d.ts.map +1 -1
- package/lib/base/action-dispatcher.js +41 -61
- 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} +4 -6
- 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-actions.js.map +1 -1
- package/lib/base/auto-complete/auto-complete-widget.d.ts +5 -5
- package/lib/base/auto-complete/auto-complete-widget.d.ts.map +1 -1
- package/lib/base/auto-complete/auto-complete-widget.js +121 -152
- 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 +49 -65
- package/lib/base/auto-complete/validation-decorator.js.map +1 -1
- package/lib/base/command-stack.d.ts +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 +13 -3
- package/lib/base/di.config.d.ts.map +1 -1
- package/lib/base/di.config.js +50 -33
- 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-service.d.ts +42 -0
- package/lib/base/editor-context-service.d.ts.map +1 -0
- package/lib/base/editor-context-service.js +109 -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 +19 -39
- package/lib/base/focus-tracker.js.map +1 -1
- package/lib/base/model/model-registry.d.ts +5 -0
- package/lib/base/model/model-registry.d.ts.map +1 -0
- package/lib/base/model/model-registry.js +43 -0
- package/lib/base/model/model-registry.js.map +1 -0
- package/lib/base/model/update-model-command.d.ts +20 -6
- 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 +17 -2
- package/lib/base/model-initialization-constraint.d.ts.map +1 -1
- package/lib/base/model-initialization-constraint.js +34 -54
- 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 +11 -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 +59 -141
- 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 +23 -21
- package/lib/base/types.js.map +1 -1
- package/lib/base/view/view-registry.d.ts +5 -0
- package/lib/base/view/view-registry.d.ts.map +1 -0
- package/lib/base/view/view-registry.js +43 -0
- package/lib/base/view/view-registry.js.map +1 -0
- package/lib/features/change-bounds/model.d.ts +4 -2
- package/lib/features/change-bounds/model.d.ts.map +1 -1
- package/lib/features/change-bounds/model.js +21 -32
- package/lib/features/change-bounds/model.js.map +1 -1
- package/lib/features/change-bounds/movement-restrictor.d.ts +18 -2
- package/lib/features/change-bounds/movement-restrictor.d.ts.map +1 -1
- package/lib/features/change-bounds/movement-restrictor.js +34 -46
- package/lib/features/change-bounds/movement-restrictor.js.map +1 -1
- package/lib/features/change-bounds/snap.d.ts +17 -1
- package/lib/features/change-bounds/snap.d.ts.map +1 -1
- package/lib/features/change-bounds/snap.js +13 -39
- package/lib/features/change-bounds/snap.js.map +1 -1
- package/lib/features/command-palette/command-palette-tool.d.ts +1 -1
- package/lib/features/command-palette/command-palette-tool.d.ts.map +1 -1
- 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.d.ts +2 -2
- 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 +19 -3
- package/lib/features/command-palette/server-command-palette-provider.d.ts.map +1 -1
- package/lib/features/command-palette/server-command-palette-provider.js +31 -36
- package/lib/features/command-palette/server-command-palette-provider.js.map +1 -1
- package/lib/features/context-menu/delete-element-context-menu.d.ts +2 -2
- package/lib/features/context-menu/delete-element-context-menu.d.ts.map +1 -1
- package/lib/features/context-menu/delete-element-context-menu.js +24 -72
- package/lib/features/context-menu/delete-element-context-menu.js.map +1 -1
- package/lib/features/context-menu/di.config.d.ts +2 -2
- package/lib/features/context-menu/di.config.d.ts.map +1 -1
- package/lib/features/context-menu/di.config.js +14 -18
- 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 +2 -2
- 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 +29 -67
- 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 +19 -3
- package/lib/features/context-menu/server-context-menu-provider.d.ts.map +1 -1
- package/lib/features/context-menu/server-context-menu-provider.js +31 -32
- 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 +21 -4
- 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 +2 -2
- 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 +14 -47
- package/lib/features/decoration/decoration-placer.js.map +1 -1
- package/lib/features/decoration/di.config.d.ts +2 -2
- package/lib/features/decoration/di.config.d.ts.map +1 -1
- package/lib/features/decoration/di.config.js +4 -6
- 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.js +7 -7
- package/lib/features/edit-label/di.config.js.map +1 -1
- package/lib/features/edit-label/edit-label-tool.d.ts +2 -2
- 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 +18 -3
- 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 +1 -16
- 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 +2 -2
- package/lib/features/hints/model.js.map +1 -1
- package/lib/features/hints/type-hints.d.ts +21 -49
- package/lib/features/hints/type-hints.d.ts.map +1 -1
- package/lib/features/hints/type-hints.js +83 -142
- package/lib/features/hints/type-hints.js.map +1 -1
- package/lib/features/hover/di.config.d.ts +2 -2
- package/lib/features/hover/di.config.d.ts.map +1 -1
- package/lib/features/hover/di.config.js +8 -8
- package/lib/features/hover/di.config.js.map +1 -1
- package/lib/features/hover/hover.d.ts +18 -2
- package/lib/features/hover/hover.d.ts.map +1 -1
- package/lib/features/hover/hover.js +37 -75
- package/lib/features/hover/hover.js.map +1 -1
- package/lib/features/layout/di.config.d.ts +6 -2
- package/lib/features/layout/di.config.d.ts.map +1 -1
- package/lib/features/layout/di.config.js +47 -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 +26 -10
- package/lib/features/layout/layout-commands.d.ts.map +1 -1
- package/lib/features/layout/layout-commands.js +189 -264
- package/lib/features/layout/layout-commands.js.map +1 -1
- package/lib/features/layout/layout-commands.spec.d.ts +2 -17
- package/lib/features/layout/layout-commands.spec.d.ts.map +1 -1
- package/lib/features/layout/layout-commands.spec.js +124 -117
- 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 +1 -16
- 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.d.ts +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 +3 -2
- package/lib/features/mouse-tool/mouse-tool.d.ts.map +1 -1
- package/lib/features/mouse-tool/mouse-tool.js +74 -217
- package/lib/features/mouse-tool/mouse-tool.js.map +1 -1
- package/lib/features/navigation/di.config.d.ts +1 -16
- 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 -39
- package/lib/features/navigation/navigation-action-handler.d.ts.map +1 -1
- package/lib/features/navigation/navigation-action-handler.js +118 -255
- 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 +2 -17
- package/lib/features/navigation/navigation-target-resolver.spec.d.ts.map +1 -1
- package/lib/features/navigation/navigation-target-resolver.spec.js +27 -26
- package/lib/features/navigation/navigation-target-resolver.spec.js.map +1 -1
- package/lib/features/rank/model.d.ts +2 -2
- package/lib/features/rank/model.d.ts.map +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 +2 -2
- package/lib/features/reconnect/model.d.ts.map +1 -1
- package/lib/features/reconnect/model.js +10 -28
- package/lib/features/reconnect/model.js.map +1 -1
- package/lib/features/save/di.config.d.ts +2 -2
- 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/model.d.ts +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.d.ts +1 -1
- 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 +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.d.ts +2 -2
- 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 +19 -3
- package/lib/features/select/selection-service.d.ts.map +1 -1
- package/lib/features/select/selection-service.js +134 -236
- package/lib/features/select/selection-service.js.map +1 -1
- package/lib/features/select/selection-service.spec.js +96 -138
- package/lib/features/select/selection-service.spec.js.map +1 -1
- package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts +21 -4
- package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/change-bounds-tool-feedback.js +117 -149
- package/lib/features/tool-feedback/change-bounds-tool-feedback.js.map +1 -1
- package/lib/features/tool-feedback/creation-tool-feedback.d.ts +19 -2
- package/lib/features/tool-feedback/creation-tool-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/creation-tool-feedback.js +81 -115
- package/lib/features/tool-feedback/creation-tool-feedback.js.map +1 -1
- package/lib/features/tool-feedback/css-feedback.d.ts +21 -3
- 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 +2 -2
- 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 +21 -4
- package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/edge-edit-tool-feedback.js +160 -204
- package/lib/features/tool-feedback/edge-edit-tool-feedback.js.map +1 -1
- package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts +19 -3
- 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 +18 -2
- package/lib/features/tool-feedback/marquee-tool-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/marquee-tool-feedback.js +44 -86
- 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.js +11 -27
- package/lib/features/tool-feedback/model.js.map +1 -1
- package/lib/features/tool-feedback/view.d.ts +22 -6
- package/lib/features/tool-feedback/view.d.ts.map +1 -1
- package/lib/features/tool-feedback/view.js +30 -51
- package/lib/features/tool-feedback/view.js.map +1 -1
- package/lib/features/tool-palette/di.config.d.ts +2 -2
- 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 +22 -6
- package/lib/features/tool-palette/tool-palette.d.ts.map +1 -1
- package/lib/features/tool-palette/tool-palette.js +225 -291
- package/lib/features/tool-palette/tool-palette.js.map +1 -1
- package/lib/features/tools/base-glsp-tool.d.ts +21 -5
- package/lib/features/tools/base-glsp-tool.d.ts.map +1 -1
- package/lib/features/tools/base-glsp-tool.js +37 -59
- package/lib/features/tools/base-glsp-tool.js.map +1 -1
- package/lib/features/tools/change-bounds-tool.d.ts +26 -9
- package/lib/features/tools/change-bounds-tool.d.ts.map +1 -1
- package/lib/features/tools/change-bounds-tool.js +192 -241
- package/lib/features/tools/change-bounds-tool.js.map +1 -1
- package/lib/features/tools/delete-tool.d.ts +20 -4
- package/lib/features/tools/delete-tool.d.ts.map +1 -1
- package/lib/features/tools/delete-tool.js +71 -104
- package/lib/features/tools/delete-tool.js.map +1 -1
- package/lib/features/tools/di.config.d.ts +1 -16
- package/lib/features/tools/di.config.d.ts.map +1 -1
- package/lib/features/tools/di.config.js +19 -19
- package/lib/features/tools/di.config.js.map +1 -1
- package/lib/features/tools/edge-creation-tool.d.ts +20 -5
- package/lib/features/tools/edge-creation-tool.d.ts.map +1 -1
- package/lib/features/tools/edge-creation-tool.js +64 -89
- package/lib/features/tools/edge-creation-tool.js.map +1 -1
- package/lib/features/tools/edge-edit-tool.d.ts +22 -6
- package/lib/features/tools/edge-edit-tool.d.ts.map +1 -1
- package/lib/features/tools/edge-edit-tool.js +125 -189
- 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/{src/features/undo-redo/model.ts → lib/features/tools/marquee-behavior.spec.d.ts} +3 -12
- 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 +27 -15
- package/lib/features/tools/marquee-mouse-tool.d.ts.map +1 -1
- package/lib/features/tools/marquee-mouse-tool.js +90 -184
- package/lib/features/tools/marquee-mouse-tool.js.map +1 -1
- package/lib/features/tools/marquee-tool.d.ts +18 -2
- 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 +6 -24
- package/lib/features/tools/model.js.map +1 -1
- package/lib/features/tools/node-creation-tool.d.ts +20 -5
- package/lib/features/tools/node-creation-tool.d.ts.map +1 -1
- package/lib/features/tools/node-creation-tool.js +60 -90
- package/lib/features/tools/node-creation-tool.js.map +1 -1
- package/lib/features/tools/view.d.ts +3 -18
- package/lib/features/tools/view.d.ts.map +1 -1
- package/lib/features/tools/view.js +21 -39
- package/lib/features/tools/view.js.map +1 -1
- package/lib/features/validation/di.config.d.ts +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 +3 -3
- package/lib/features/validation/issue-marker.d.ts.map +1 -1
- package/lib/features/validation/issue-marker.js +18 -56
- package/lib/features/validation/issue-marker.js.map +1 -1
- package/lib/features/validation/marker-navigator.d.ts +19 -3
- package/lib/features/validation/marker-navigator.d.ts.map +1 -1
- package/lib/features/validation/marker-navigator.js +131 -164
- package/lib/features/validation/marker-navigator.js.map +1 -1
- package/lib/features/validation/marker-navigator.spec.d.ts +2 -17
- package/lib/features/validation/marker-navigator.spec.d.ts.map +1 -1
- package/lib/features/validation/marker-navigator.spec.js +84 -77
- package/lib/features/validation/marker-navigator.spec.js.map +1 -1
- package/lib/features/validation/validate.d.ts +20 -31
- package/lib/features/validation/validate.d.ts.map +1 -1
- package/lib/features/validation/validate.js +148 -299
- package/lib/features/validation/validate.js.map +1 -1
- package/lib/features/viewport/di.config.d.ts +16 -1
- package/lib/features/viewport/di.config.d.ts.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 +3 -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 +32 -35
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +33 -35
- package/lib/index.js.map +1 -1
- package/lib/lib/model.d.ts +3 -3
- package/lib/lib/model.d.ts.map +1 -1
- package/lib/lib/model.js +11 -27
- package/lib/lib/model.js.map +1 -1
- package/lib/model-source/glsp-diagram-server.d.ts +4 -6
- package/lib/model-source/glsp-diagram-server.d.ts.map +1 -1
- package/lib/model-source/glsp-diagram-server.js +63 -122
- 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 +75 -0
- package/lib/protocol-reexport.js.map +1 -0
- package/lib/utils/argument-utils.d.ts +50 -0
- package/lib/utils/argument-utils.d.ts.map +1 -0
- package/lib/utils/argument-utils.js +110 -0
- package/lib/utils/argument-utils.js.map +1 -0
- package/lib/utils/html-utils.js +2 -2
- package/lib/utils/html-utils.js.map +1 -1
- package/lib/utils/layout-utils.d.ts +4 -3
- 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 +1 -39
- 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 +7 -17
- package/lib/utils/smodel-util.d.ts.map +1 -1
- package/lib/utils/smodel-util.js +18 -67
- 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 +9 -0
- package/lib/views/base-view-module.d.ts.map +1 -0
- package/lib/views/base-view-module.js +59 -0
- package/lib/views/base-view-module.js.map +1 -0
- 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 +27 -0
- package/lib/views/glsp-edge-view.d.ts.map +1 -0
- package/lib/views/glsp-edge-view.js +55 -0
- package/lib/views/glsp-edge-view.js.map +1 -0
- package/lib/{features/model-source-watcher/model-source-changed-action.d.ts → views/index.d.ts} +8 -10
- package/lib/views/index.d.ts.map +1 -0
- package/lib/views/index.js +34 -0
- package/lib/views/index.js.map +1 -0
- package/lib/views/issue-marker-view.d.ts +9 -0
- package/lib/views/issue-marker-view.d.ts.map +1 -0
- package/lib/views/issue-marker-view.js +68 -0
- package/lib/views/issue-marker-view.js.map +1 -0
- package/lib/views/rounded-corner-view.d.ts +13 -0
- package/lib/views/rounded-corner-view.d.ts.map +1 -0
- package/lib/views/rounded-corner-view.js +82 -0
- package/lib/views/rounded-corner-view.js.map +1 -0
- package/lib/views/rounded-corner.d.ts +38 -0
- package/lib/views/rounded-corner.d.ts.map +1 -0
- package/lib/views/rounded-corner.js +62 -0
- package/lib/views/rounded-corner.js.map +1 -0
- package/package.json +24 -32
- package/src/base/action-dispatcher.ts +7 -8
- package/src/base/actions/focus-change-action.ts +2 -2
- package/src/base/{args.ts → argumentable.ts} +3 -4
- package/src/base/auto-complete/auto-complete-actions.ts +2 -2
- package/src/base/auto-complete/auto-complete-widget.ts +66 -48
- package/src/base/auto-complete/validation-decorator.ts +21 -15
- package/src/base/command-stack.ts +4 -7
- package/src/base/container-modules.ts +112 -0
- package/src/base/di.config.ts +44 -27
- package/src/base/drag-aware-mouse-listener.ts +7 -8
- package/src/base/{editor-context.ts → editor-context-service.ts} +13 -40
- package/src/base/focus-tracker.ts +4 -6
- package/src/base/model/model-registry.ts +31 -0
- package/src/base/model/update-model-command.ts +14 -22
- package/src/base/model-initialization-constraint.ts +16 -11
- package/src/base/selection-clearing-mouse-listener.ts +4 -3
- package/src/base/tool-manager/glsp-tool-manager.ts +12 -14
- package/src/base/types.ts +23 -21
- package/src/{features/model-source-watcher/model-source-changed-action.ts → base/view/view-registry.ts} +15 -10
- package/src/features/change-bounds/model.ts +23 -13
- package/src/features/change-bounds/movement-restrictor.ts +28 -18
- package/src/features/change-bounds/snap.ts +6 -5
- package/src/features/command-palette/command-palette-tool.ts +4 -4
- package/src/features/command-palette/di.config.ts +7 -7
- package/src/features/command-palette/server-command-palette-provider.ts +16 -14
- package/src/features/context-menu/delete-element-context-menu.ts +10 -11
- package/src/features/context-menu/di.config.ts +10 -12
- package/src/features/context-menu/selection-service-aware-context-menu-mouse-listener.ts +8 -7
- package/src/features/context-menu/server-context-menu-provider.ts +13 -10
- package/src/features/copy-paste/copy-paste-context-menu.ts +66 -37
- package/src/features/copy-paste/copy-paste-handler.ts +30 -20
- package/src/features/copy-paste/di.config.ts +6 -7
- package/src/features/decoration/decoration-placer.ts +6 -15
- package/src/features/decoration/di.config.ts +4 -6
- package/src/features/edit-label/di.config.ts +5 -5
- package/src/features/edit-label/edit-label-tool.ts +4 -4
- package/src/features/edit-label/edit-label-validator.ts +18 -19
- package/src/features/hints/di.config.ts +6 -7
- package/src/features/hints/model.ts +7 -6
- package/src/features/hints/type-hints.ts +46 -113
- package/src/features/hover/di.config.ts +6 -7
- package/src/features/hover/hover.ts +11 -14
- package/src/features/layout/di.config.ts +32 -6
- package/src/features/layout/freeform-layout.ts +133 -0
- package/src/features/layout/layout-commands.spec.ts +104 -85
- package/src/features/layout/layout-commands.ts +65 -54
- package/src/features/layout/vbox-layout.ts +256 -0
- package/src/features/model-source-watcher/di.config.ts +5 -6
- package/src/features/model-source-watcher/model-source-changed-action-handler.ts +16 -12
- package/src/features/mouse-tool/di.config.ts +4 -4
- package/src/features/mouse-tool/mouse-tool.ts +44 -32
- package/src/features/navigation/di.config.ts +6 -12
- package/src/features/navigation/navigation-action-handler.ts +46 -78
- package/src/features/navigation/navigation-target-resolver.spec.ts +6 -9
- package/src/features/navigation/navigation-target-resolver.ts +16 -94
- package/src/features/rank/model.ts +3 -3
- package/src/features/reconnect/model.ts +9 -11
- package/src/features/save/di.config.ts +4 -5
- package/src/features/save/model.ts +1 -1
- package/src/features/save/{save.ts → save-keylistener.ts} +4 -12
- package/src/features/select/di.config.ts +6 -6
- package/src/features/select/select-feedback-action.ts +6 -8
- package/src/features/select/select-mouse-listener.ts +2 -2
- package/src/features/select/selection-service.spec.ts +25 -19
- package/src/features/select/selection-service.ts +25 -22
- package/src/features/tool-feedback/change-bounds-tool-feedback.ts +56 -39
- package/src/features/tool-feedback/creation-tool-feedback.ts +49 -24
- package/src/features/tool-feedback/css-feedback.ts +16 -13
- package/src/features/tool-feedback/di.config.ts +12 -15
- package/src/features/tool-feedback/edge-edit-tool-feedback.ts +56 -35
- package/src/features/tool-feedback/feedback-action-dispatcher.ts +13 -14
- package/src/features/tool-feedback/marquee-tool-feedback.ts +12 -12
- package/src/features/tool-feedback/model.ts +2 -3
- package/src/features/tool-feedback/view.tsx +20 -13
- package/src/features/tool-palette/di.config.ts +5 -7
- package/src/features/tool-palette/palette-item.ts +5 -7
- package/src/features/tool-palette/tool-palette.ts +118 -110
- package/src/features/tools/base-glsp-tool.ts +12 -12
- package/src/features/tools/change-bounds-tool.ts +83 -53
- package/src/features/tools/delete-tool.ts +23 -20
- package/src/features/tools/di.config.ts +16 -17
- package/src/features/tools/edge-creation-tool.ts +20 -25
- package/src/features/tools/edge-edit-tool.ts +43 -46
- 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 +67 -118
- package/src/features/tools/marquee-tool.ts +6 -6
- package/src/features/tools/model.ts +1 -2
- package/src/features/tools/node-creation-tool.ts +16 -23
- package/src/features/tools/view.tsx +21 -15
- package/src/features/validation/di.config.ts +5 -5
- package/src/features/validation/issue-marker.ts +4 -5
- package/src/features/validation/marker-navigator.spec.ts +38 -33
- package/src/features/validation/marker-navigator.ts +39 -26
- package/src/features/validation/validate.ts +25 -59
- package/src/features/viewport/di.config.ts +4 -4
- package/src/features/viewport/glsp-scroll-mouse-listener.ts +5 -5
- package/src/index.ts +53 -38
- package/src/lib/model.ts +4 -4
- package/src/model-source/glsp-diagram-server.ts +19 -33
- package/src/protocol-reexport.ts +64 -0
- package/src/utils/argument-utils.ts +130 -0
- package/src/utils/layout-utils.ts +19 -11
- package/src/utils/marker.ts +8 -32
- package/src/utils/smodel-util.ts +28 -22
- package/src/utils/viewpoint-util.ts +5 -6
- package/src/views/base-view-module.ts +97 -0
- package/src/views/compartments.tsx +37 -0
- package/src/views/glsp-edge-view.tsx +79 -0
- package/src/views/index.ts +21 -0
- package/src/views/issue-marker-view.tsx +65 -0
- package/src/views/rounded-corner-view.tsx +103 -0
- package/src/views/rounded-corner.ts +87 -0
- 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 -82
- 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 +0 -46
- 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/decoration/view.d.ts +0 -8
- package/lib/features/decoration/view.d.ts.map +0 -1
- package/lib/features/decoration/view.js +0 -80
- package/lib/features/decoration/view.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/src/base/actions/context-actions.ts +0 -43
- package/src/base/actions/edit-mode-action.ts +0 -33
- package/src/base/actions/edit-validation-actions.ts +0 -102
- 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/decoration/view.tsx +0 -54
- package/src/features/hints/request-type-hints-action.ts +0 -36
- package/src/model-source/glsp-server-status.ts +0 -38
- package/src/utils/array-utils.ts +0 -55
|
@@ -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,24 +13,29 @@
|
|
|
13
13
|
*
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
|
-
import { inject, injectable } from "inversify";
|
|
17
16
|
import {
|
|
18
|
-
|
|
17
|
+
Action,
|
|
18
|
+
Args,
|
|
19
19
|
CenterAction,
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
GLSPServerStatusAction,
|
|
21
|
+
isNavigateToExternalTargetAction,
|
|
22
|
+
isNavigateToTargetAction,
|
|
23
|
+
isSetNavigationTargetsAction,
|
|
24
|
+
NavigateToExternalTargetAction,
|
|
25
|
+
NavigateToTargetAction,
|
|
26
|
+
NavigationTarget,
|
|
27
|
+
RequestNavigationTargetsAction,
|
|
24
28
|
SelectAction,
|
|
25
|
-
SelectAllAction
|
|
26
|
-
|
|
27
|
-
|
|
29
|
+
SelectAllAction,
|
|
30
|
+
ServerMessageAction,
|
|
31
|
+
SetResolvedNavigationTargetAction
|
|
32
|
+
} from '@eclipse-glsp/protocol';
|
|
33
|
+
import { inject, injectable } from 'inversify';
|
|
34
|
+
import { ActionHandlerRegistry, IActionDispatcher, IActionHandler, ICommand, ILogger, TYPES } from 'sprotty';
|
|
28
35
|
|
|
29
|
-
import {
|
|
30
|
-
import {
|
|
31
|
-
import {
|
|
32
|
-
import { GLSPServerStatusAction, ServerMessageAction } from "../../model-source/glsp-server-status";
|
|
33
|
-
import { NavigationTarget, NavigationTargetResolver, SetResolvedNavigationTargetAction } from "./navigation-target-resolver";
|
|
36
|
+
import { EditorContextServiceProvider } from '../../base/editor-context-service';
|
|
37
|
+
import { GLSP_TYPES } from '../../base/types';
|
|
38
|
+
import { NavigationTargetResolver } from './navigation-target-resolver';
|
|
34
39
|
|
|
35
40
|
/**
|
|
36
41
|
* Action for triggering a navigation of a certain target type.
|
|
@@ -46,55 +51,11 @@ import { NavigationTarget, NavigationTargetResolver, SetResolvedNavigationTarget
|
|
|
46
51
|
export class NavigateAction implements Action {
|
|
47
52
|
static readonly KIND = 'navigate';
|
|
48
53
|
readonly kind = NavigateAction.KIND;
|
|
49
|
-
constructor(readonly targetTypeId: string, readonly args?: Args) {
|
|
54
|
+
constructor(readonly targetTypeId: string, readonly args?: Args) {}
|
|
50
55
|
}
|
|
51
56
|
|
|
52
57
|
export function isNavigateAction(action: Action): action is NavigateAction {
|
|
53
|
-
return action !== undefined &&
|
|
54
|
-
&& (<NavigateAction>action).targetTypeId !== undefined;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
/** Action that is usually sent to the server to request navigation targets for a navigation type. */
|
|
58
|
-
export class RequestNavigationTargetsAction implements RequestAction<SetNavigationTargetsAction> {
|
|
59
|
-
static readonly KIND = "requestNavigationTargets";
|
|
60
|
-
kind = RequestNavigationTargetsAction.KIND;
|
|
61
|
-
constructor(readonly targetTypeId: string, readonly editorContext: EditorContext,
|
|
62
|
-
readonly requestId: string = generateRequestId()) { }
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
/** Action that is usually sent from the server to the client as a repsonse to a `RequestNavigationTargetsAction`. */
|
|
66
|
-
export class SetNavigationTargetsAction implements ResponseAction {
|
|
67
|
-
static readonly KIND = "setNavigationTargets";
|
|
68
|
-
kind = SetNavigationTargetsAction.KIND;
|
|
69
|
-
constructor(readonly targets: NavigationTarget[], readonly responseId: string = '', readonly args?: Args) { }
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
export function isSetNavigationTargetsAction(action: Action): action is SetNavigationTargetsAction {
|
|
73
|
-
return action !== undefined && (action.kind === SetNavigationTargetsAction.KIND)
|
|
74
|
-
&& (<SetNavigationTargetsAction>action).targets !== undefined;
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
/** Action that triggers the navigation to a particular navigation target, such as element IDs, queries, etc.. */
|
|
78
|
-
export class NavigateToTargetAction implements Action {
|
|
79
|
-
static readonly KIND = 'navigateToTarget';
|
|
80
|
-
readonly kind = NavigateToTargetAction.KIND;
|
|
81
|
-
constructor(readonly target: NavigationTarget) { }
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
export function isNavigateToTargetAction(action: Action): action is NavigateToTargetAction {
|
|
85
|
-
return action !== undefined && (action.kind === NavigateToTargetAction.KIND)
|
|
86
|
-
&& (<NavigateToTargetAction>action).target !== undefined;
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
export class NavigateToExternalTargetAction implements Action {
|
|
90
|
-
static readonly KIND = 'navigateToExternalTarget';
|
|
91
|
-
readonly kind = NavigateToExternalTargetAction.KIND;
|
|
92
|
-
constructor(readonly target: NavigationTarget) { }
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
export function isNavigateToExternalTargetAction(action: Action): action is NavigateToExternalTargetAction {
|
|
96
|
-
return action !== undefined && (action.kind === NavigateToExternalTargetAction.KIND)
|
|
97
|
-
&& (<NavigateToExternalTargetAction>action).target !== undefined;
|
|
58
|
+
return action !== undefined && action.kind === NavigateAction.KIND && (action as NavigateAction).targetTypeId !== undefined;
|
|
98
59
|
}
|
|
99
60
|
|
|
100
61
|
/** Action to trigger the processing of additional navigation arguments.
|
|
@@ -108,12 +69,15 @@ export function isNavigateToExternalTargetAction(action: Action): action is Navi
|
|
|
108
69
|
export class ProcessNavigationArgumentsAction implements Action {
|
|
109
70
|
static readonly KIND = 'processNavigationArguments';
|
|
110
71
|
readonly kind = ProcessNavigationArgumentsAction.KIND;
|
|
111
|
-
constructor(readonly args: Args) {
|
|
72
|
+
constructor(readonly args: Args) {}
|
|
112
73
|
}
|
|
113
74
|
|
|
114
75
|
export function isProcessNavigationArgumentsAction(action: Action): action is ProcessNavigationArgumentsAction {
|
|
115
|
-
return
|
|
116
|
-
|
|
76
|
+
return (
|
|
77
|
+
action !== undefined &&
|
|
78
|
+
action.kind === ProcessNavigationArgumentsAction.KIND &&
|
|
79
|
+
(action as ProcessNavigationArgumentsAction).args !== undefined
|
|
80
|
+
);
|
|
117
81
|
}
|
|
118
82
|
|
|
119
83
|
/**
|
|
@@ -140,7 +104,6 @@ export function isProcessNavigationArgumentsAction(action: Action): action is Pr
|
|
|
140
104
|
*/
|
|
141
105
|
@injectable()
|
|
142
106
|
export class NavigationActionHandler implements IActionHandler {
|
|
143
|
-
|
|
144
107
|
readonly notificationTimeout = 5000;
|
|
145
108
|
|
|
146
109
|
@inject(TYPES.ILogger) protected logger: ILogger;
|
|
@@ -161,15 +124,18 @@ export class NavigationActionHandler implements IActionHandler {
|
|
|
161
124
|
}
|
|
162
125
|
}
|
|
163
126
|
|
|
164
|
-
protected async handleNavigateAction(action: NavigateAction) {
|
|
127
|
+
protected async handleNavigateAction(action: NavigateAction): Promise<void> {
|
|
165
128
|
try {
|
|
166
129
|
const editorContextService = await this.editorContextService();
|
|
167
130
|
const context = editorContextService.get(action.args);
|
|
168
131
|
const response = await this.dispatcher.request(new RequestNavigationTargetsAction(action.targetTypeId, context));
|
|
169
132
|
if (isSetNavigationTargetsAction(response) && response.targets && response.targets.length === 1) {
|
|
170
133
|
if (response.targets.length > 1) {
|
|
171
|
-
this.logger.warn(
|
|
172
|
-
|
|
134
|
+
this.logger.warn(
|
|
135
|
+
this,
|
|
136
|
+
'Processing of multiple targets is not supported yet. ' + 'Only the first is being processed.',
|
|
137
|
+
response.targets
|
|
138
|
+
);
|
|
173
139
|
}
|
|
174
140
|
return this.dispatcher.dispatch(new NavigateToTargetAction(response.targets[0]));
|
|
175
141
|
}
|
|
@@ -179,7 +145,7 @@ export class NavigationActionHandler implements IActionHandler {
|
|
|
179
145
|
}
|
|
180
146
|
}
|
|
181
147
|
|
|
182
|
-
protected async handleNavigateToTarget(action: NavigateToTargetAction) {
|
|
148
|
+
protected async handleNavigateToTarget(action: NavigateToTargetAction): Promise<void> {
|
|
183
149
|
try {
|
|
184
150
|
const resolvedElements = await this.resolveElements(action);
|
|
185
151
|
if (this.containsElementIdsOrArguments(resolvedElements)) {
|
|
@@ -199,7 +165,9 @@ export class NavigationActionHandler implements IActionHandler {
|
|
|
199
165
|
return this.resolver.resolve(action.target);
|
|
200
166
|
}
|
|
201
167
|
|
|
202
|
-
protected containsElementIdsOrArguments(
|
|
168
|
+
protected containsElementIdsOrArguments(
|
|
169
|
+
target: SetResolvedNavigationTargetAction | undefined
|
|
170
|
+
): target is SetResolvedNavigationTargetAction {
|
|
203
171
|
return target !== undefined && (this.containsElementIds(target.elementIds) || this.containsArguments(target.args));
|
|
204
172
|
}
|
|
205
173
|
|
|
@@ -211,7 +179,7 @@ export class NavigationActionHandler implements IActionHandler {
|
|
|
211
179
|
return args !== undefined && args !== undefined && Object.keys(args).length > 0;
|
|
212
180
|
}
|
|
213
181
|
|
|
214
|
-
protected navigateTo(target: SetResolvedNavigationTargetAction) {
|
|
182
|
+
protected navigateTo(target: SetResolvedNavigationTargetAction): void {
|
|
215
183
|
const elementIds = target.elementIds;
|
|
216
184
|
if (!this.containsElementIds(elementIds)) {
|
|
217
185
|
return;
|
|
@@ -219,7 +187,7 @@ export class NavigationActionHandler implements IActionHandler {
|
|
|
219
187
|
this.dispatcher.dispatchAll([new SelectAllAction(false), new SelectAction(elementIds), new CenterAction(elementIds)]);
|
|
220
188
|
}
|
|
221
189
|
|
|
222
|
-
protected handleResolutionArguments(target: SetResolvedNavigationTargetAction) {
|
|
190
|
+
protected handleResolutionArguments(target: SetResolvedNavigationTargetAction): void {
|
|
223
191
|
const args = target.args;
|
|
224
192
|
if (!this.containsArguments(args)) {
|
|
225
193
|
return;
|
|
@@ -231,7 +199,7 @@ export class NavigationActionHandler implements IActionHandler {
|
|
|
231
199
|
return this.dispatcher.dispatch(new NavigateToExternalTargetAction(target));
|
|
232
200
|
}
|
|
233
201
|
|
|
234
|
-
protected processNavigationArguments(args: Args) {
|
|
202
|
+
protected processNavigationArguments(args: Args): void {
|
|
235
203
|
if (args.info && args.info.toString().length > 0) {
|
|
236
204
|
this.notify('INFO', args.info.toString());
|
|
237
205
|
}
|
|
@@ -243,7 +211,7 @@ export class NavigationActionHandler implements IActionHandler {
|
|
|
243
211
|
}
|
|
244
212
|
}
|
|
245
213
|
|
|
246
|
-
protected async handleNavigateToExternalTarget(action: NavigateToExternalTargetAction) {
|
|
214
|
+
protected async handleNavigateToExternalTarget(action: NavigateToExternalTargetAction): Promise<void> {
|
|
247
215
|
const registry = await this.actionHandlerRegistryProvider();
|
|
248
216
|
const handlers = registry.get(NavigateToExternalTargetAction.KIND);
|
|
249
217
|
if (handlers.length === 1) {
|
|
@@ -252,17 +220,17 @@ export class NavigationActionHandler implements IActionHandler {
|
|
|
252
220
|
}
|
|
253
221
|
}
|
|
254
222
|
|
|
255
|
-
protected warnAboutFailedNavigation(msg: string, target?: NavigationTarget) {
|
|
223
|
+
protected warnAboutFailedNavigation(msg: string, target?: NavigationTarget): void {
|
|
256
224
|
const message = `${msg}` + (target ? `: '${target.uri}' (arguments: ${JSON.stringify(target.args)})` : '');
|
|
257
225
|
this.logger.warn(this, msg, target);
|
|
258
226
|
this.notify('WARNING', message);
|
|
259
227
|
}
|
|
260
228
|
|
|
261
|
-
private notify(severity: string, message: string) {
|
|
229
|
+
private notify(severity: string, message: string): void {
|
|
262
230
|
const timeout = this.notificationTimeout;
|
|
263
231
|
this.dispatcher.dispatchAll([
|
|
264
|
-
|
|
265
|
-
|
|
232
|
+
{ kind: GLSPServerStatusAction.KIND, severity, timeout, message } as GLSPServerStatusAction,
|
|
233
|
+
{ kind: ServerMessageAction.KIND, severity, timeout, message } as ServerMessageAction
|
|
266
234
|
]);
|
|
267
235
|
}
|
|
268
236
|
}
|
|
@@ -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,15 +13,13 @@
|
|
|
13
13
|
*
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
|
-
|
|
17
|
-
import
|
|
18
|
-
|
|
19
|
-
import
|
|
20
|
-
|
|
21
|
-
import { NavigationTarget } from "./navigation-target-resolver";
|
|
16
|
+
/* eslint-disable no-unused-expressions */
|
|
17
|
+
import { NavigationTarget } from '@eclipse-glsp/protocol';
|
|
18
|
+
import { expect } from 'chai';
|
|
19
|
+
import 'mocha';
|
|
20
|
+
import 'reflect-metadata';
|
|
22
21
|
|
|
23
22
|
describe('NavigationTarget', () => {
|
|
24
|
-
|
|
25
23
|
it('should be able to set and get element IDs', () => {
|
|
26
24
|
const navigationTarget: NavigationTarget = { uri: 'uri' };
|
|
27
25
|
NavigationTarget.setElementIds(navigationTarget, ['id1', 'id2']);
|
|
@@ -56,5 +54,4 @@ describe('NavigationTarget', () => {
|
|
|
56
54
|
NavigationTarget.setTextPosition(navigationTarget, { line: 1, character: 2 });
|
|
57
55
|
expect(NavigationTarget.hasArguments(navigationTarget)).to.be.true;
|
|
58
56
|
});
|
|
59
|
-
|
|
60
57
|
});
|
|
@@ -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,95 +13,16 @@
|
|
|
13
13
|
*
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
|
-
import {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
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) {
|
|
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[]) {
|
|
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) {
|
|
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
|
-
}
|
|
16
|
+
import {
|
|
17
|
+
isSetResolvedNavigationTargets,
|
|
18
|
+
NavigationTarget,
|
|
19
|
+
ResolveNavigationTargetAction,
|
|
20
|
+
SetResolvedNavigationTargetAction
|
|
21
|
+
} from '@eclipse-glsp/protocol';
|
|
22
|
+
import { inject, injectable } from 'inversify';
|
|
23
|
+
import { IActionDispatcher, ILogger, ResponseAction, TYPES } from 'sprotty';
|
|
24
|
+
import { EditorContextServiceProvider } from '../../base/editor-context-service';
|
|
25
|
+
import { GLSP_TYPES } from '../../base/types';
|
|
105
26
|
|
|
106
27
|
/**
|
|
107
28
|
* Resolves `NavigationTargets` to element ids.
|
|
@@ -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
|
|
@@ -139,8 +62,7 @@ export class NavigationTargetResolver {
|
|
|
139
62
|
return undefined;
|
|
140
63
|
}
|
|
141
64
|
|
|
142
|
-
protected requestResolution(target: NavigationTarget) {
|
|
65
|
+
protected requestResolution(target: NavigationTarget): Promise<ResponseAction> {
|
|
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
|
|
@@ -14,14 +14,14 @@
|
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
16
|
|
|
17
|
-
export const DEFAULT_RANK
|
|
17
|
+
export const DEFAULT_RANK = 0;
|
|
18
18
|
|
|
19
19
|
export interface Ranked {
|
|
20
20
|
rank: number;
|
|
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-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
|
|
@@ -22,39 +22,37 @@ import {
|
|
|
22
22
|
SModelExtension,
|
|
23
23
|
SRoutableElement,
|
|
24
24
|
SRoutingHandle
|
|
25
|
-
} from
|
|
25
|
+
} from 'sprotty';
|
|
26
26
|
|
|
27
|
-
export const reconnectFeature = Symbol(
|
|
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);
|
|
34
33
|
}
|
|
35
34
|
|
|
36
|
-
const ROUTING_HANDLE_SOURCE_INDEX
|
|
35
|
+
const ROUTING_HANDLE_SOURCE_INDEX = -2;
|
|
37
36
|
|
|
38
37
|
export function isReconnectHandle(element: SModelElement | undefined): element is SReconnectHandle {
|
|
39
38
|
return element !== undefined && element instanceof SReconnectHandle;
|
|
40
39
|
}
|
|
41
40
|
|
|
42
|
-
|
|
43
|
-
export function addReconnectHandles(element: SRoutableElement) {
|
|
41
|
+
export function addReconnectHandles(element: SRoutableElement): void {
|
|
44
42
|
removeReconnectHandles(element);
|
|
45
43
|
createReconnectHandle(element, 'source', ROUTING_HANDLE_SOURCE_INDEX);
|
|
46
44
|
createReconnectHandle(element, 'target', element.routingPoints.length);
|
|
47
45
|
}
|
|
48
46
|
|
|
49
|
-
export function removeReconnectHandles(element: SRoutableElement) {
|
|
47
|
+
export function removeReconnectHandles(element: SRoutableElement): void {
|
|
50
48
|
element.removeAll(child => child instanceof SReconnectHandle);
|
|
51
49
|
}
|
|
52
50
|
|
|
53
|
-
export function isSourceRoutingHandle(edge: SRoutableElement, routingHandle: SReconnectHandle) {
|
|
51
|
+
export function isSourceRoutingHandle(edge: SRoutableElement, routingHandle: SReconnectHandle): boolean {
|
|
54
52
|
return routingHandle.pointIndex === ROUTING_HANDLE_SOURCE_INDEX;
|
|
55
53
|
}
|
|
56
54
|
|
|
57
|
-
export function isTargetRoutingHandle(edge: SRoutableElement, routingHandle: SReconnectHandle) {
|
|
55
|
+
export function isTargetRoutingHandle(edge: SRoutableElement, routingHandle: SReconnectHandle): boolean {
|
|
58
56
|
return routingHandle.pointIndex === edge.routingPoints.length;
|
|
59
57
|
}
|
|
60
58
|
|
|
@@ -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
|
|
@@ -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 { ContainerModule } from
|
|
17
|
-
import { TYPES } from
|
|
16
|
+
import { ContainerModule } from 'inversify';
|
|
17
|
+
import { TYPES } from 'sprotty';
|
|
18
18
|
|
|
19
|
-
import { SaveModelKeyboardListener } from
|
|
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;
|
|
@@ -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 { SModelElement, SModelExtension, SModelRoot } from
|
|
16
|
+
import { SModelElement, SModelExtension, SModelRoot } from 'sprotty';
|
|
17
17
|
|
|
18
18
|
export const saveFeature = Symbol.for('saveFeature');
|
|
19
19
|
|
|
@@ -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
|
|
@@ -13,17 +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,
|
|
17
|
-
import {
|
|
18
|
-
|
|
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
|
-
}
|
|
16
|
+
import { Action, SaveModelAction } from '@eclipse-glsp/protocol';
|
|
17
|
+
import { KeyListener, SModelRoot } from 'sprotty';
|
|
18
|
+
import { matchesKeystroke } from 'sprotty/lib/utils/keyboard';
|
|
27
19
|
|
|
28
20
|
export class SaveModelKeyboardListener extends KeyListener {
|
|
29
21
|
keyDown(_element: SModelRoot, event: KeyboardEvent): Action[] {
|
|
@@ -13,13 +13,13 @@
|
|
|
13
13
|
*
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
|
-
import { ContainerModule } from
|
|
17
|
-
import { configureCommand, TYPES } from
|
|
16
|
+
import { ContainerModule } from 'inversify';
|
|
17
|
+
import { configureCommand, TYPES } from 'sprotty';
|
|
18
18
|
|
|
19
|
-
import { GLSP_TYPES } from
|
|
20
|
-
import { SelectAllFeedbackCommand, SelectFeedbackCommand } from
|
|
21
|
-
import { RankedSelectMouseListener } from
|
|
22
|
-
import { SelectAllCommand, SelectCommand, SelectionService } from
|
|
19
|
+
import { GLSP_TYPES } from '../../base/types';
|
|
20
|
+
import { SelectAllFeedbackCommand, SelectFeedbackCommand } from './select-feedback-action';
|
|
21
|
+
import { RankedSelectMouseListener } from './select-mouse-listener';
|
|
22
|
+
import { SelectAllCommand, SelectCommand, SelectionService } from './selection-service';
|
|
23
23
|
|
|
24
24
|
const glspSelectModule = new ContainerModule((bind, _unbind, isBound) => {
|
|
25
25
|
bind(SelectionService).toSelf().inSingletonScope();
|
|
@@ -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
|
|
@@ -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 { inject, injectable } from
|
|
16
|
+
import { inject, injectable } from 'inversify';
|
|
17
17
|
import {
|
|
18
18
|
Command,
|
|
19
19
|
CommandExecutionContext,
|
|
@@ -21,22 +21,21 @@ import {
|
|
|
21
21
|
SelectCommand as SprottySelectCommand,
|
|
22
22
|
SModelRoot,
|
|
23
23
|
TYPES
|
|
24
|
-
} from
|
|
24
|
+
} from 'sprotty';
|
|
25
25
|
|
|
26
26
|
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
|
-
|
|
@@ -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 { SelectMouseListener } from
|
|
16
|
+
import { SelectMouseListener } from 'sprotty';
|
|
17
17
|
|
|
18
|
-
import { DEFAULT_RANK, Ranked } from
|
|
18
|
+
import { DEFAULT_RANK, Ranked } from '../rank/model';
|
|
19
19
|
|
|
20
20
|
/**
|
|
21
21
|
* Ranked select mouse listener that is executed before default mouse listeners when using the RankedMouseTool.
|