@eclipse-glsp/client 0.9.0 → 0.10.0-next.17bfb07.173
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/css/glsp-sprotty.css +110 -8
- package/lib/base/action-dispatcher.d.ts +4 -3
- package/lib/base/action-dispatcher.d.ts.map +1 -1
- package/lib/base/action-dispatcher.js +22 -12
- package/lib/base/action-dispatcher.js.map +1 -1
- package/lib/base/actions/focus-change-action.d.ts +16 -7
- package/lib/base/actions/focus-change-action.d.ts.map +1 -1
- package/lib/base/actions/focus-change-action.js +31 -12
- package/lib/base/actions/focus-change-action.js.map +1 -1
- package/lib/base/actions/sprotty-actions.d.ts +7 -0
- package/lib/base/actions/sprotty-actions.d.ts.map +1 -0
- package/lib/{features/tool-palette/palette-item.js → base/actions/sprotty-actions.js} +4 -20
- package/lib/base/actions/sprotty-actions.js.map +1 -0
- package/lib/base/auto-complete/auto-complete-actions.d.ts +5 -3
- package/lib/base/auto-complete/auto-complete-actions.d.ts.map +1 -1
- package/lib/base/auto-complete/auto-complete-actions.js +24 -5
- package/lib/base/auto-complete/auto-complete-actions.js.map +1 -1
- package/lib/base/auto-complete/auto-complete-widget.d.ts +9 -2
- package/lib/base/auto-complete/auto-complete-widget.d.ts.map +1 -1
- package/lib/base/auto-complete/auto-complete-widget.js +16 -9
- package/lib/base/auto-complete/auto-complete-widget.js.map +1 -1
- package/lib/base/auto-complete/validation-decorator.js +2 -2
- 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 +6 -5
- package/lib/base/command-stack.js.map +1 -1
- package/lib/base/container-modules.d.ts.map +1 -1
- package/lib/base/container-modules.js +2 -1
- package/lib/base/container-modules.js.map +1 -1
- package/lib/base/di.config.d.ts +1 -1
- package/lib/base/di.config.d.ts.map +1 -1
- package/lib/base/di.config.js +13 -14
- package/lib/base/di.config.js.map +1 -1
- package/lib/base/drag-aware-mouse-listener.d.ts +1 -1
- package/lib/base/drag-aware-mouse-listener.d.ts.map +1 -1
- package/lib/base/drag-aware-mouse-listener.js.map +1 -1
- package/lib/base/editor-context-service.d.ts +18 -5
- package/lib/base/editor-context-service.d.ts.map +1 -1
- package/lib/base/editor-context-service.js +39 -22
- package/lib/base/editor-context-service.js.map +1 -1
- package/lib/base/focus-tracker.d.ts +1 -1
- package/lib/base/focus-tracker.d.ts.map +1 -1
- package/lib/base/focus-tracker.js +4 -4
- 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 +2 -2
- package/lib/base/model/model-registry.js.map +1 -1
- package/lib/base/model/update-model-command.d.ts +1 -1
- package/lib/base/model/update-model-command.d.ts.map +1 -1
- package/lib/base/model/update-model-command.js +15 -15
- package/lib/base/model/update-model-command.js.map +1 -1
- package/lib/base/model-initialization-constraint.d.ts +4 -5
- package/lib/base/model-initialization-constraint.d.ts.map +1 -1
- package/lib/base/model-initialization-constraint.js +11 -13
- 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 +1 -1
- package/lib/base/selection-clearing-mouse-listener.js.map +1 -1
- package/lib/base/source-uri-aware.d.ts +2 -17
- package/lib/base/source-uri-aware.d.ts.map +1 -1
- package/lib/base/source-uri-aware.js +4 -6
- package/lib/base/source-uri-aware.js.map +1 -1
- package/lib/base/tool-manager/glsp-tool-manager.d.ts +1 -1
- package/lib/base/tool-manager/glsp-tool-manager.d.ts.map +1 -1
- package/lib/base/tool-manager/glsp-tool-manager.js +10 -10
- package/lib/base/tool-manager/glsp-tool-manager.js.map +1 -1
- package/lib/base/tool-manager/tool-actions.d.ts +14 -0
- package/lib/base/tool-manager/tool-actions.d.ts.map +1 -0
- package/lib/base/tool-manager/tool-actions.js +25 -0
- package/lib/base/tool-manager/tool-actions.js.map +1 -0
- package/lib/base/types.d.ts +144 -20
- package/lib/base/types.d.ts.map +1 -1
- package/lib/base/types.js +14 -26
- 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 +2 -2
- package/lib/base/view/view-registry.js.map +1 -1
- package/lib/features/change-bounds/model.d.ts +1 -1
- package/lib/features/change-bounds/model.d.ts.map +1 -1
- package/lib/features/change-bounds/model.js +3 -3
- package/lib/features/change-bounds/model.js.map +1 -1
- package/lib/features/change-bounds/movement-restrictor.d.ts +37 -7
- package/lib/features/change-bounds/movement-restrictor.d.ts.map +1 -1
- package/lib/features/change-bounds/movement-restrictor.js +55 -40
- package/lib/features/change-bounds/movement-restrictor.js.map +1 -1
- package/lib/features/change-bounds/snap.d.ts +42 -2
- package/lib/features/change-bounds/snap.d.ts.map +1 -1
- package/lib/features/change-bounds/snap.js +78 -2
- package/lib/features/change-bounds/snap.js.map +1 -1
- package/lib/features/change-bounds/snap.spec.d.ts +17 -0
- 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 +3 -3
- 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.d.ts.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 +1 -1
- package/lib/features/command-palette/server-command-palette-provider.d.ts.map +1 -1
- package/lib/features/command-palette/server-command-palette-provider.js +13 -10
- package/lib/features/command-palette/server-command-palette-provider.js.map +1 -1
- package/lib/features/context-menu/delete-element-context-menu.d.ts +17 -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 +4 -4
- 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 -7
- 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 +33 -1
- 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 +41 -28
- package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js.map +1 -1
- package/lib/features/context-menu/server-context-menu-provider.d.ts +1 -1
- package/lib/features/context-menu/server-context-menu-provider.d.ts.map +1 -1
- package/lib/features/context-menu/server-context-menu-provider.js +8 -7
- package/lib/features/context-menu/server-context-menu-provider.js.map +1 -1
- package/lib/features/copy-paste/copy-paste-context-menu.d.ts +12 -15
- package/lib/features/copy-paste/copy-paste-context-menu.d.ts.map +1 -1
- package/lib/features/copy-paste/copy-paste-context-menu.js +26 -33
- package/lib/features/copy-paste/copy-paste-context-menu.js.map +1 -1
- package/lib/features/copy-paste/copy-paste-handler.d.ts +1 -1
- package/lib/features/copy-paste/copy-paste-handler.d.ts.map +1 -1
- package/lib/features/copy-paste/copy-paste-handler.js +10 -11
- 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 +5 -7
- package/lib/features/copy-paste/di.config.js.map +1 -1
- package/lib/features/decoration/decoration-placer.d.ts +1 -1
- package/lib/features/decoration/decoration-placer.d.ts.map +1 -1
- package/lib/features/decoration/decoration-placer.js +19 -3
- 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 -4
- package/lib/features/decoration/di.config.js.map +1 -1
- package/lib/features/edit-label/di.config.d.ts +1 -1
- package/lib/features/edit-label/di.config.d.ts.map +1 -1
- package/lib/features/edit-label/di.config.js +5 -5
- package/lib/features/edit-label/di.config.js.map +1 -1
- package/lib/features/edit-label/edit-label-tool.d.ts.map +1 -1
- package/lib/features/edit-label/edit-label-tool.js +2 -2
- package/lib/features/edit-label/edit-label-tool.js.map +1 -1
- package/lib/features/edit-label/edit-label-validator.d.ts +4 -6
- package/lib/features/edit-label/edit-label-validator.d.ts.map +1 -1
- package/lib/features/edit-label/edit-label-validator.js +11 -13
- package/lib/features/edit-label/edit-label-validator.js.map +1 -1
- package/lib/features/hints/di.config.js +4 -4
- package/lib/features/hints/di.config.js.map +1 -1
- package/lib/features/hints/type-hints.d.ts +15 -5
- package/lib/features/hints/type-hints.d.ts.map +1 -1
- package/lib/features/hints/type-hints.js +29 -26
- 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 +14 -10
- package/lib/features/hover/di.config.js.map +1 -1
- package/lib/features/hover/hover.d.ts +16 -4
- package/lib/features/hover/hover.d.ts.map +1 -1
- package/lib/features/hover/hover.js +42 -4
- package/lib/features/hover/hover.js.map +1 -1
- package/lib/features/layout/di.config.d.ts +3 -3
- 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 +17 -1
- package/lib/features/layout/freeform-layout.d.ts.map +1 -1
- package/lib/features/layout/freeform-layout.js +4 -4
- package/lib/features/layout/freeform-layout.js.map +1 -1
- package/lib/features/layout/hbox-layout.d.ts +41 -0
- package/lib/features/layout/hbox-layout.d.ts.map +1 -0
- package/lib/features/layout/hbox-layout.js +189 -0
- package/lib/features/layout/hbox-layout.js.map +1 -0
- package/lib/features/layout/layout-elements-action.d.ts +198 -0
- package/lib/features/layout/layout-elements-action.d.ts.map +1 -0
- package/lib/features/layout/layout-elements-action.js +391 -0
- package/lib/features/layout/layout-elements-action.js.map +1 -0
- package/lib/features/layout/layout-elements-action.spec.d.ts +3 -0
- package/lib/features/layout/layout-elements-action.spec.d.ts.map +1 -0
- package/lib/features/layout/{layout-commands.spec.js → layout-elements-action.spec.js} +81 -62
- package/lib/features/layout/layout-elements-action.spec.js.map +1 -0
- package/lib/features/layout/vbox-layout.d.ts +17 -1
- package/lib/features/layout/vbox-layout.d.ts.map +1 -1
- package/lib/features/layout/vbox-layout.js +9 -8
- package/lib/features/layout/vbox-layout.js.map +1 -1
- package/lib/features/model-source-watcher/di.config.js +1 -1
- 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 +1 -1
- 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 +11 -11
- 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.d.ts.map +1 -1
- package/lib/features/mouse-tool/di.config.js +2 -2
- package/lib/features/mouse-tool/di.config.js.map +1 -1
- package/lib/features/mouse-tool/mouse-tool.d.ts +9 -5
- package/lib/features/mouse-tool/mouse-tool.d.ts.map +1 -1
- package/lib/features/mouse-tool/mouse-tool.js +11 -53
- package/lib/features/mouse-tool/mouse-tool.js.map +1 -1
- package/lib/features/navigation/di.config.js +4 -4
- package/lib/features/navigation/di.config.js.map +1 -1
- package/lib/features/navigation/navigation-action-handler.d.ts +31 -16
- package/lib/features/navigation/navigation-action-handler.d.ts.map +1 -1
- package/lib/features/navigation/navigation-action-handler.js +52 -68
- package/lib/features/navigation/navigation-action-handler.js.map +1 -1
- package/lib/features/navigation/navigation-target-resolver.d.ts +3 -3
- package/lib/features/navigation/navigation-target-resolver.d.ts.map +1 -1
- package/lib/features/navigation/navigation-target-resolver.js +9 -10
- package/lib/features/navigation/navigation-target-resolver.js.map +1 -1
- package/lib/features/navigation/navigation-target-resolver.spec.js +12 -12
- package/lib/features/navigation/navigation-target-resolver.spec.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 +1 -1
- 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 +3 -3
- package/lib/features/save/di.config.js.map +1 -1
- package/lib/features/save/save-keylistener.d.ts +1 -1
- package/lib/features/save/save-keylistener.d.ts.map +1 -1
- package/lib/features/save/save-keylistener.js +3 -3
- package/lib/features/save/save-keylistener.js.map +1 -1
- package/lib/features/select/di.config.d.ts +1 -1
- package/lib/features/select/di.config.d.ts.map +1 -1
- package/lib/features/select/di.config.js +7 -8
- package/lib/features/select/di.config.js.map +1 -1
- package/lib/features/select/select-feedback-action.d.ts +26 -22
- package/lib/features/select/select-feedback-action.d.ts.map +1 -1
- package/lib/features/select/select-feedback-action.js +19 -46
- package/lib/features/select/select-feedback-action.js.map +1 -1
- package/lib/features/select/select-mouse-listener.d.ts +1 -1
- package/lib/features/select/select-mouse-listener.d.ts.map +1 -1
- package/lib/features/select/select-mouse-listener.js +1 -1
- package/lib/features/select/select-mouse-listener.js.map +1 -1
- package/lib/features/select/selection-service.d.ts +14 -5
- package/lib/features/select/selection-service.d.ts.map +1 -1
- package/lib/features/select/selection-service.js +55 -64
- package/lib/features/select/selection-service.js.map +1 -1
- package/lib/features/select/selection-service.spec.js +28 -25
- package/lib/features/select/selection-service.spec.js.map +1 -1
- package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts +17 -9
- package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/change-bounds-tool-feedback.js +68 -38
- package/lib/features/tool-feedback/change-bounds-tool-feedback.js.map +1 -1
- package/lib/features/tool-feedback/creation-tool-feedback.d.ts +24 -12
- package/lib/features/tool-feedback/creation-tool-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/creation-tool-feedback.js +88 -35
- package/lib/features/tool-feedback/creation-tool-feedback.js.map +1 -1
- package/lib/features/tool-feedback/css-feedback.d.ts +17 -10
- package/lib/features/tool-feedback/css-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/css-feedback.js +42 -38
- 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 +18 -18
- package/lib/features/tool-feedback/di.config.js.map +1 -1
- package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts +45 -22
- package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/edge-edit-tool-feedback.js +147 -114
- package/lib/features/tool-feedback/edge-edit-tool-feedback.js.map +1 -1
- package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts +2 -2
- package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts.map +1 -1
- package/lib/features/tool-feedback/feedback-action-dispatcher.js +4 -4
- package/lib/features/tool-feedback/feedback-action-dispatcher.js.map +1 -1
- package/lib/features/tool-feedback/marquee-tool-feedback.d.ts +21 -10
- package/lib/features/tool-feedback/marquee-tool-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/marquee-tool-feedback.js +44 -18
- 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 +1 -1
- package/lib/features/tool-feedback/model.js.map +1 -1
- package/lib/features/tool-feedback/view.d.ts +1 -1
- package/lib/features/tool-feedback/view.d.ts.map +1 -1
- package/lib/features/tool-feedback/view.js +22 -5
- 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 +5 -4
- package/lib/features/tool-palette/di.config.js.map +1 -1
- package/lib/features/tool-palette/tool-palette.d.ts +10 -7
- package/lib/features/tool-palette/tool-palette.d.ts.map +1 -1
- package/lib/features/tool-palette/tool-palette.js +39 -32
- package/lib/features/tool-palette/tool-palette.js.map +1 -1
- package/lib/features/tools/base-glsp-tool.d.ts +3 -3
- package/lib/features/tools/base-glsp-tool.d.ts.map +1 -1
- package/lib/features/tools/base-glsp-tool.js +11 -11
- package/lib/features/tools/base-glsp-tool.js.map +1 -1
- package/lib/features/tools/change-bounds-tool.d.ts +7 -9
- package/lib/features/tools/change-bounds-tool.d.ts.map +1 -1
- package/lib/features/tools/change-bounds-tool.js +48 -71
- package/lib/features/tools/change-bounds-tool.js.map +1 -1
- package/lib/features/tools/delete-tool.d.ts +1 -1
- package/lib/features/tools/delete-tool.d.ts.map +1 -1
- package/lib/features/tools/delete-tool.js +17 -17
- package/lib/features/tools/delete-tool.js.map +1 -1
- package/lib/features/tools/di.config.d.ts +9 -2
- package/lib/features/tools/di.config.d.ts.map +1 -1
- package/lib/features/tools/di.config.js +26 -15
- package/lib/features/tools/di.config.js.map +1 -1
- package/lib/features/tools/edge-creation-tool.d.ts +1 -1
- package/lib/features/tools/edge-creation-tool.d.ts.map +1 -1
- package/lib/features/tools/edge-creation-tool.js +28 -21
- package/lib/features/tools/edge-creation-tool.js.map +1 -1
- package/lib/features/tools/edge-edit-tool.d.ts +3 -2
- package/lib/features/tools/edge-edit-tool.d.ts.map +1 -1
- package/lib/features/tools/edge-edit-tool.js +41 -36
- package/lib/features/tools/edge-edit-tool.js.map +1 -1
- package/lib/features/{tool-palette/palette-item.d.ts → tools/enable-default-tools-on-focus-loss.d.ts} +11 -11
- package/lib/features/tools/enable-default-tools-on-focus-loss.d.ts.map +1 -0
- package/lib/features/tools/enable-default-tools-on-focus-loss.js +29 -0
- package/lib/features/tools/enable-default-tools-on-focus-loss.js.map +1 -0
- package/lib/features/tools/marquee-behavior.d.ts +1 -1
- package/lib/features/tools/marquee-behavior.js +2 -2
- package/lib/features/tools/marquee-behavior.js.map +1 -1
- package/lib/features/tools/marquee-behavior.spec.js +63 -63
- package/lib/features/tools/marquee-behavior.spec.js.map +1 -1
- package/lib/features/tools/marquee-mouse-tool.d.ts +1 -1
- package/lib/features/tools/marquee-mouse-tool.d.ts.map +1 -1
- package/lib/features/tools/marquee-mouse-tool.js +20 -20
- package/lib/features/tools/marquee-mouse-tool.js.map +1 -1
- package/lib/features/tools/marquee-tool.d.ts +1 -1
- package/lib/features/tools/marquee-tool.d.ts.map +1 -1
- package/lib/features/tools/marquee-tool.js +4 -4
- package/lib/features/tools/marquee-tool.js.map +1 -1
- package/lib/features/tools/model.d.ts +3 -2
- package/lib/features/tools/model.d.ts.map +1 -1
- package/lib/features/tools/model.js +0 -15
- package/lib/features/tools/model.js.map +1 -1
- package/lib/features/tools/node-creation-tool.d.ts +1 -1
- package/lib/features/tools/node-creation-tool.d.ts.map +1 -1
- package/lib/features/tools/node-creation-tool.js +17 -17
- package/lib/features/tools/node-creation-tool.js.map +1 -1
- package/lib/features/tools/view.d.ts.map +1 -1
- package/lib/features/tools/view.js +2 -2
- package/lib/features/tools/view.js.map +1 -1
- package/lib/features/validation/di.config.d.ts +0 -15
- package/lib/features/validation/di.config.d.ts.map +1 -1
- package/lib/features/validation/di.config.js +9 -7
- package/lib/features/validation/di.config.js.map +1 -1
- package/lib/features/validation/marker-navigator.d.ts +27 -25
- package/lib/features/validation/marker-navigator.d.ts.map +1 -1
- package/lib/features/validation/marker-navigator.js +64 -91
- package/lib/features/validation/marker-navigator.js.map +1 -1
- package/lib/features/validation/marker-navigator.spec.d.ts.map +1 -1
- package/lib/features/validation/marker-navigator.spec.js +23 -37
- package/lib/features/validation/marker-navigator.spec.js.map +1 -1
- package/lib/features/validation/validate.d.ts +16 -30
- package/lib/features/validation/validate.d.ts.map +1 -1
- package/lib/features/validation/validate.js +61 -92
- package/lib/features/validation/validate.js.map +1 -1
- package/lib/features/viewport/di.config.d.ts +1 -1
- package/lib/features/viewport/di.config.d.ts.map +1 -1
- package/lib/features/viewport/di.config.js +7 -7
- package/lib/features/viewport/di.config.js.map +1 -1
- package/lib/features/viewport/glsp-scroll-mouse-listener.d.ts +1 -1
- package/lib/features/viewport/glsp-scroll-mouse-listener.d.ts.map +1 -1
- package/lib/features/viewport/glsp-scroll-mouse-listener.js +3 -3
- package/lib/features/viewport/glsp-scroll-mouse-listener.js.map +1 -1
- package/lib/index.d.ts +8 -9
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +15 -11
- package/lib/index.js.map +1 -1
- package/lib/lib/model.d.ts +3 -2
- package/lib/lib/model.d.ts.map +1 -1
- package/lib/lib/model.js +3 -18
- package/lib/lib/model.js.map +1 -1
- package/lib/model-source/glsp-diagram-server.d.ts +6 -6
- package/lib/model-source/glsp-diagram-server.d.ts.map +1 -1
- package/lib/model-source/glsp-diagram-server.js +8 -7
- package/lib/model-source/glsp-diagram-server.js.map +1 -1
- package/lib/sprotty-reexport.d.ts +174 -0
- package/lib/sprotty-reexport.d.ts.map +1 -0
- package/lib/sprotty-reexport.js +299 -0
- package/lib/sprotty-reexport.js.map +1 -0
- package/lib/utils/argument-utils.js +5 -5
- package/lib/utils/argument-utils.js.map +1 -1
- package/lib/utils/layout-utils.d.ts +6 -22
- package/lib/utils/layout-utils.d.ts.map +1 -1
- package/lib/utils/layout-utils.js +1 -1
- package/lib/utils/layout-utils.js.map +1 -1
- package/lib/utils/smodel-util.d.ts +117 -11
- package/lib/utils/smodel-util.d.ts.map +1 -1
- package/lib/utils/smodel-util.js +142 -37
- package/lib/utils/smodel-util.js.map +1 -1
- package/lib/utils/viewpoint-util.d.ts +3 -3
- package/lib/utils/viewpoint-util.d.ts.map +1 -1
- package/lib/utils/viewpoint-util.js +19 -3
- package/lib/utils/viewpoint-util.js.map +1 -1
- package/lib/views/base-view-module.d.ts.map +1 -1
- package/lib/views/base-view-module.js +21 -19
- package/lib/views/base-view-module.js.map +1 -1
- package/lib/views/compartments.js +2 -2
- package/lib/views/compartments.js.map +1 -1
- package/lib/views/glsp-edge-view.d.ts +1 -1
- package/lib/views/glsp-edge-view.d.ts.map +1 -1
- package/lib/views/glsp-edge-view.js +1 -1
- package/lib/views/glsp-edge-view.js.map +1 -1
- package/lib/views/index.js +6 -2
- package/lib/views/index.js.map +1 -1
- package/lib/views/issue-marker-view.d.ts.map +1 -1
- package/lib/views/issue-marker-view.js +3 -3
- package/lib/views/issue-marker-view.js.map +1 -1
- package/lib/views/rounded-corner-view.d.ts.map +1 -1
- package/lib/views/rounded-corner-view.js +2 -2
- package/lib/views/rounded-corner-view.js.map +1 -1
- package/package.json +8 -18
- package/src/base/action-dispatcher.ts +26 -16
- package/src/base/actions/focus-change-action.ts +25 -8
- package/src/base/actions/sprotty-actions.ts +26 -0
- package/src/base/auto-complete/auto-complete-actions.ts +7 -5
- package/src/base/auto-complete/auto-complete-widget.ts +15 -13
- package/src/base/command-stack.ts +7 -6
- package/src/base/container-modules.ts +4 -3
- package/src/base/di.config.ts +4 -5
- package/src/base/drag-aware-mouse-listener.ts +4 -4
- package/src/base/editor-context-service.ts +38 -16
- package/src/base/focus-tracker.ts +5 -4
- package/src/base/model/model-registry.ts +2 -2
- package/src/base/model/update-model-command.ts +9 -10
- package/src/base/model-initialization-constraint.ts +9 -11
- package/src/base/selection-clearing-mouse-listener.ts +1 -1
- package/src/base/source-uri-aware.ts +5 -4
- package/src/base/tool-manager/glsp-tool-manager.ts +9 -9
- package/src/base/tool-manager/tool-actions.ts +37 -0
- package/src/base/types.ts +31 -24
- package/src/base/view/view-registry.ts +2 -2
- package/src/features/change-bounds/model.ts +5 -5
- package/src/features/change-bounds/movement-restrictor.ts +74 -44
- package/src/features/change-bounds/snap.spec.ts +89 -0
- package/src/features/change-bounds/snap.ts +86 -3
- package/src/features/command-palette/di.config.ts +5 -7
- package/src/features/command-palette/server-command-palette-provider.ts +9 -8
- package/src/features/context-menu/delete-element-context-menu.ts +6 -6
- package/src/features/context-menu/di.config.ts +3 -2
- package/src/features/context-menu/selection-service-aware-context-menu-mouse-listener.ts +45 -17
- package/src/features/context-menu/server-context-menu-provider.ts +7 -6
- package/src/features/copy-paste/copy-paste-context-menu.ts +30 -23
- package/src/features/copy-paste/copy-paste-handler.ts +6 -6
- package/src/features/copy-paste/di.config.ts +7 -15
- package/src/features/decoration/decoration-placer.ts +4 -4
- package/src/features/decoration/di.config.ts +3 -5
- package/src/features/edit-label/di.config.ts +4 -5
- package/src/features/edit-label/edit-label-tool.ts +1 -2
- package/src/features/edit-label/edit-label-validator.ts +6 -10
- package/src/features/hints/di.config.ts +3 -3
- package/src/features/hints/type-hints.ts +33 -18
- package/src/features/hover/di.config.ts +8 -2
- package/src/features/hover/hover.ts +53 -11
- package/src/features/layout/di.config.ts +11 -7
- package/src/features/layout/freeform-layout.ts +6 -15
- package/src/features/layout/hbox-layout.ts +256 -0
- package/src/features/layout/{layout-commands.spec.ts → layout-elements-action.spec.ts} +89 -65
- package/src/features/layout/layout-elements-action.ts +486 -0
- package/src/features/layout/vbox-layout.ts +20 -20
- package/src/features/model-source-watcher/model-source-changed-action-handler.ts +7 -12
- package/src/features/mouse-tool/di.config.ts +3 -4
- package/src/features/mouse-tool/mouse-tool.ts +18 -59
- package/src/features/navigation/navigation-action-handler.ts +76 -42
- package/src/features/navigation/navigation-target-resolver.spec.ts +3 -3
- package/src/features/navigation/navigation-target-resolver.ts +9 -14
- package/src/features/reconnect/model.ts +2 -2
- package/src/features/save/di.config.ts +2 -3
- package/src/features/save/save-keylistener.ts +3 -3
- package/src/features/select/di.config.ts +6 -8
- package/src/features/select/select-feedback-action.ts +18 -46
- package/src/features/select/select-mouse-listener.ts +1 -2
- package/src/features/select/selection-service.spec.ts +12 -9
- package/src/features/select/selection-service.ts +52 -60
- package/src/features/tool-feedback/change-bounds-tool-feedback.ts +52 -22
- package/src/features/tool-feedback/creation-tool-feedback.ts +79 -30
- package/src/features/tool-feedback/css-feedback.ts +40 -37
- package/src/features/tool-feedback/di.config.ts +4 -5
- package/src/features/tool-feedback/edge-edit-tool-feedback.ts +140 -88
- package/src/features/tool-feedback/feedback-action-dispatcher.ts +4 -3
- package/src/features/tool-feedback/marquee-tool-feedback.ts +38 -13
- package/src/features/tool-feedback/model.ts +1 -3
- package/src/features/tool-feedback/view.tsx +3 -3
- package/src/features/tool-palette/di.config.ts +3 -2
- package/src/features/tool-palette/tool-palette.ts +35 -19
- package/src/features/tools/base-glsp-tool.ts +11 -11
- package/src/features/tools/change-bounds-tool.ts +37 -67
- package/src/features/tools/delete-tool.ts +9 -9
- package/src/features/tools/di.config.ts +23 -12
- package/src/features/tools/edge-creation-tool.ts +21 -12
- package/src/features/tools/edge-edit-tool.ts +25 -21
- package/src/features/tools/enable-default-tools-on-focus-loss.ts +33 -0
- package/src/features/tools/marquee-behavior.ts +2 -2
- package/src/features/tools/marquee-mouse-tool.ts +13 -14
- package/src/features/tools/marquee-tool.ts +3 -3
- package/src/features/tools/model.ts +4 -3
- package/src/features/tools/node-creation-tool.ts +8 -8
- package/src/features/tools/view.tsx +2 -3
- package/src/features/validation/di.config.ts +13 -11
- package/src/features/validation/marker-navigator.spec.ts +4 -2
- package/src/features/validation/marker-navigator.ts +67 -82
- package/src/features/validation/validate.ts +57 -91
- package/src/features/viewport/di.config.ts +1 -2
- package/src/features/viewport/glsp-scroll-mouse-listener.ts +5 -5
- package/src/index.ts +9 -9
- package/src/lib/model.ts +4 -4
- package/src/model-source/glsp-diagram-server.ts +15 -15
- package/src/sprotty-reexport.ts +283 -0
- package/src/utils/layout-utils.ts +9 -29
- package/src/utils/smodel-util.ts +139 -43
- package/src/utils/viewpoint-util.ts +5 -14
- package/src/views/base-view-module.ts +5 -1
- package/src/views/compartments.tsx +1 -1
- package/src/views/glsp-edge-view.tsx +4 -4
- package/src/views/issue-marker-view.tsx +2 -2
- package/src/views/rounded-corner-view.tsx +2 -3
- package/lib/features/layout/layout-commands.d.ts +0 -153
- package/lib/features/layout/layout-commands.d.ts.map +0 -1
- package/lib/features/layout/layout-commands.js +0 -412
- package/lib/features/layout/layout-commands.js.map +0 -1
- package/lib/features/layout/layout-commands.spec.d.ts +0 -3
- package/lib/features/layout/layout-commands.spec.d.ts.map +0 -1
- package/lib/features/layout/layout-commands.spec.js.map +0 -1
- package/lib/features/tool-palette/palette-item.d.ts.map +0 -1
- package/lib/features/tool-palette/palette-item.js.map +0 -1
- package/lib/protocol-reexport.d.ts +0 -45
- package/lib/protocol-reexport.d.ts.map +0 -1
- package/lib/protocol-reexport.js +0 -75
- package/lib/protocol-reexport.js.map +0 -1
- package/src/features/layout/layout-commands.ts +0 -424
- package/src/features/tool-palette/palette-item.ts +0 -38
- package/src/protocol-reexport.ts +0 -64
package/lib/base/types.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.GLSP_TYPES = void 0;
|
|
3
|
+
exports.GLSP_TYPES = exports.TYPES = void 0;
|
|
4
4
|
/********************************************************************************
|
|
5
|
-
* Copyright (c) 2019-
|
|
5
|
+
* Copyright (c) 2019-2022 EclipseSource and others.
|
|
6
6
|
*
|
|
7
7
|
* This program and the accompanying materials are made available under the
|
|
8
8
|
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
@@ -16,28 +16,16 @@ exports.GLSP_TYPES = void 0;
|
|
|
16
16
|
*
|
|
17
17
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
18
18
|
********************************************************************************/
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
IContextMenuService: Symbol.for('IContextMenuService'),
|
|
32
|
-
IContextMenuServiceProvider: Symbol.for('IContextMenuServiceProvider'),
|
|
33
|
-
IContextMenuProviderRegistry: Symbol.for('IContextMenuProviderRegistry'),
|
|
34
|
-
IContextMenuProvider: Symbol.for('IContextMenuProvider'),
|
|
35
|
-
ICopyPasteHandler: Symbol.for('ICopyPasteHandler'),
|
|
36
|
-
IGLSPToolManager: Symbol.for('IGLSPToolManager'),
|
|
37
|
-
ITool: Symbol.for('ITool'),
|
|
38
|
-
IDefaultTool: Symbol.for('IDefaultTool'),
|
|
39
|
-
IEditModeListener: Symbol.for('IEditModeListener'),
|
|
40
|
-
LayoutRegistration: Symbol.for('LayoutRegistration'),
|
|
41
|
-
IMarqueeBehavior: Symbol.for('IMarqueeBehavior')
|
|
42
|
-
};
|
|
19
|
+
const sprotty_1 = require("sprotty");
|
|
20
|
+
/**
|
|
21
|
+
* Reexport of the TYPES namespace of sprotty augments with additional GLSP specific service
|
|
22
|
+
* identifiers.
|
|
23
|
+
*/
|
|
24
|
+
exports.TYPES = Object.assign(Object.assign({}, sprotty_1.TYPES), { IAsyncClipboardService: Symbol('IAsyncClipboardService'), IEditorContextServiceProvider: Symbol('IEditorContextProvider'), IFeedbackActionDispatcher: Symbol('IFeedbackActionDispatcher'), IToolFactory: Symbol('Factory<Tool>'), ITypeHintProvider: Symbol('ITypeHintProvider'), IMovementRestrictor: Symbol('IMovementRestrictor'), SelectionService: Symbol('SelectionService'), SelectionListener: Symbol('SelectionListener'), SModelRootListener: Symbol('SModelRootListener'), MouseTool: Symbol('MouseTool'), IContextMenuProvider: Symbol('IContextMenuProvider'), ICopyPasteHandler: Symbol('ICopyPasteHandler'), ITool: Symbol('ITool'), IDefaultTool: Symbol('IDefaultTool'), IEditModeListener: Symbol('IEditModeListener'), IMarqueeBehavior: Symbol('IMarqueeBehavior') });
|
|
25
|
+
/**
|
|
26
|
+
* Keep a reexport under the old deprecated namespace to avoid hard API breaks.
|
|
27
|
+
* This gives adopters a grace period but all deprecated API will be removed before the 1.0.0 release.
|
|
28
|
+
* @deprecated Please use `TYPES` from `@eclipse-glsp/client` instead
|
|
29
|
+
*/
|
|
30
|
+
exports.GLSP_TYPES = exports.TYPES;
|
|
43
31
|
//# sourceMappingURL=types.js.map
|
package/lib/base/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/base/types.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;kFAckF;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/base/types.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,qCAAgD;AAChD;;;GAGG;AACU,QAAA,KAAK,mCACX,eAAY,KACf,sBAAsB,EAAE,MAAM,CAAC,wBAAwB,CAAC,EACxD,6BAA6B,EAAE,MAAM,CAAC,wBAAwB,CAAC,EAC/D,yBAAyB,EAAE,MAAM,CAAC,2BAA2B,CAAC,EAC9D,YAAY,EAAE,MAAM,CAAC,eAAe,CAAC,EACrC,iBAAiB,EAAE,MAAM,CAAC,mBAAmB,CAAC,EAC9C,mBAAmB,EAAE,MAAM,CAAC,qBAAqB,CAAC,EAClD,gBAAgB,EAAE,MAAM,CAAC,kBAAkB,CAAC,EAC5C,iBAAiB,EAAE,MAAM,CAAC,mBAAmB,CAAC,EAC9C,kBAAkB,EAAE,MAAM,CAAC,oBAAoB,CAAC,EAChD,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC,EAC9B,oBAAoB,EAAE,MAAM,CAAC,sBAAsB,CAAC,EACpD,iBAAiB,EAAE,MAAM,CAAC,mBAAmB,CAAC,EAC9C,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,EACtB,YAAY,EAAE,MAAM,CAAC,cAAc,CAAC,EACpC,iBAAiB,EAAE,MAAM,CAAC,mBAAmB,CAAC,EAC9C,gBAAgB,EAAE,MAAM,CAAC,kBAAkB,CAAC,IAC9C;AAEF;;;;GAIG;AACU,QAAA,UAAU,GAAG,aAAK,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view-registry.d.ts","sourceRoot":"","sources":["../../../src/base/view/view-registry.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE9C,qBACa,gBAAiB,SAAQ,YAAY;
|
|
1
|
+
{"version":3,"file":"view-registry.d.ts","sourceRoot":"","sources":["../../../src/base/view/view-registry.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE9C,qBACa,gBAAiB,SAAQ,YAAY;IACrC,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,GAAG,IAAI;CAUxD"}
|
|
@@ -8,7 +8,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.GLSPViewRegistry = void 0;
|
|
10
10
|
/********************************************************************************
|
|
11
|
-
* Copyright (c) 2021 EclipseSource and others.
|
|
11
|
+
* Copyright (c) 2021-2022 EclipseSource and others.
|
|
12
12
|
*
|
|
13
13
|
* This program and the accompanying materials are made available under the
|
|
14
14
|
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
@@ -37,7 +37,7 @@ let GLSPViewRegistry = class GLSPViewRegistry extends sprotty_1.ViewRegistry {
|
|
|
37
37
|
}
|
|
38
38
|
};
|
|
39
39
|
GLSPViewRegistry = __decorate([
|
|
40
|
-
inversify_1.injectable()
|
|
40
|
+
(0, inversify_1.injectable)()
|
|
41
41
|
], GLSPViewRegistry);
|
|
42
42
|
exports.GLSPViewRegistry = GLSPViewRegistry;
|
|
43
43
|
//# sourceMappingURL=view-registry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view-registry.js","sourceRoot":"","sources":["../../../src/base/view/view-registry.ts"],"names":[],"mappings":";;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,yCAAuC;AACvC,qCAA8C;AAG9C,IAAa,gBAAgB,GAA7B,MAAa,gBAAiB,SAAQ,sBAAY;
|
|
1
|
+
{"version":3,"file":"view-registry.js","sourceRoot":"","sources":["../../../src/base/view/view-registry.ts"],"names":[],"mappings":";;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,yCAAuC;AACvC,qCAA8C;AAG9C,IAAa,gBAAgB,GAA7B,MAAa,gBAAiB,SAAQ,sBAAY;IACrC,QAAQ,CAAC,GAAW,EAAE,QAAe;QAC1C,IAAI,GAAG,KAAK,SAAS,EAAE;YACnB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;SACvC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;YAClB,yCAAyC;YACzC,OAAO,CAAC,GAAG,CAAC,2BAA2B,GAAG,wBAAwB,CAAC,CAAC;SACvE;QACD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACrC,CAAC;CACJ,CAAA;AAXY,gBAAgB;IAD5B,IAAA,sBAAU,GAAE;GACA,gBAAgB,CAW5B;AAXY,4CAAgB"}
|
|
@@ -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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../src/features/change-bounds/model.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EACH,WAAW,EACX,SAAS,EAKT,UAAU,EACV,aAAa,EACb,UAAU,EACV,aAAa,EACb,cAAc,EACjB,MAAM,SAAS,CAAC;AAEjB,eAAO,MAAM,aAAa,eAA0B,CAAC;AAErD,MAAM,WAAW,SAAU,SAAQ,WAAW,EAAE,UAAU;CAAG;AAE7D,wBAAgB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,IAAI,cAAc,GAAG,SAAS,CAEzF;AAGD,oBAAY,oBAAoB;IAC5B,OAAO,aAAa;IACpB,QAAQ,cAAc;IACtB,UAAU,gBAAgB;IAC1B,WAAW,iBAAiB;CAC/B;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,IAAI,aAAa,GAAG,UAAU,GAAG,WAAW,CAEjH;AAED,qBAAa,aAAc,SAAQ,aAAc,YAAW,SAAS;
|
|
1
|
+
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../src/features/change-bounds/model.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EACH,WAAW,EACX,SAAS,EAKT,UAAU,EACV,aAAa,EACb,UAAU,EACV,aAAa,EACb,cAAc,EACjB,MAAM,SAAS,CAAC;AAEjB,eAAO,MAAM,aAAa,eAA0B,CAAC;AAErD,MAAM,WAAW,SAAU,SAAQ,WAAW,EAAE,UAAU;CAAG;AAE7D,wBAAgB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,IAAI,cAAc,GAAG,SAAS,CAEzF;AAGD,oBAAY,oBAAoB;IAC5B,OAAO,aAAa;IACpB,QAAQ,cAAc;IACtB,UAAU,gBAAgB;IAC1B,WAAW,iBAAiB;CAC/B;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,IAAI,aAAa,GAAG,UAAU,GAAG,WAAW,CAEjH;AAED,qBAAa,aAAc,SAAQ,aAAc,YAAW,SAAS;IAI7D,QAAQ,CAAC,QAAQ,CAAC;aACA,IAAI,EAAE,MAAM;IAC9B,QAAQ,CAAC,aAAa,EAAE,OAAO;IALnC,MAAM,CAAC,QAAQ,CAAC,IAAI,mBAAmB;gBAG1B,QAAQ,CAAC,kCAAsB,EACtB,IAAI,GAAE,MAA2B,EAC1C,aAAa,GAAE,OAAe;IAKlC,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAI7C,YAAY,IAAI,OAAO;IAIvB,YAAY,IAAI,OAAO;CAG1B;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAM9D;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAEjE"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.removeResizeHandles = exports.addResizeHandles = exports.SResizeHandle = exports.isBoundsAwareMoveable = exports.ResizeHandleLocation = exports.isResizable = exports.resizeFeature = void 0;
|
|
4
4
|
/********************************************************************************
|
|
5
|
-
* Copyright (c) 2019-
|
|
5
|
+
* Copyright (c) 2019-2022 EclipseSource and others.
|
|
6
6
|
*
|
|
7
7
|
* This program and the accompanying materials are made available under the
|
|
8
8
|
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
@@ -19,7 +19,7 @@ exports.removeResizeHandles = exports.addResizeHandles = exports.SResizeHandle =
|
|
|
19
19
|
const sprotty_1 = require("sprotty");
|
|
20
20
|
exports.resizeFeature = Symbol('resizeFeature');
|
|
21
21
|
function isResizable(element) {
|
|
22
|
-
return sprotty_1.isBoundsAware(element) && sprotty_1.isSelectable(element) && element instanceof sprotty_1.SParentElement && element.hasFeature(exports.resizeFeature);
|
|
22
|
+
return (0, sprotty_1.isBoundsAware)(element) && (0, sprotty_1.isSelectable)(element) && element instanceof sprotty_1.SParentElement && element.hasFeature(exports.resizeFeature);
|
|
23
23
|
}
|
|
24
24
|
exports.isResizable = isResizable;
|
|
25
25
|
// eslint-disable-next-line no-shadow
|
|
@@ -31,7 +31,7 @@ var ResizeHandleLocation;
|
|
|
31
31
|
ResizeHandleLocation["BottomRight"] = "bottom-right";
|
|
32
32
|
})(ResizeHandleLocation = exports.ResizeHandleLocation || (exports.ResizeHandleLocation = {}));
|
|
33
33
|
function isBoundsAwareMoveable(element) {
|
|
34
|
-
return sprotty_1.isMoveable(element) && sprotty_1.isBoundsAware(element);
|
|
34
|
+
return (0, sprotty_1.isMoveable)(element) && (0, sprotty_1.isBoundsAware)(element);
|
|
35
35
|
}
|
|
36
36
|
exports.isBoundsAwareMoveable = isBoundsAwareMoveable;
|
|
37
37
|
class SResizeHandle extends sprotty_1.SChildElement {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/features/change-bounds/model.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,qCAYiB;AAEJ,QAAA,aAAa,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;AAIrD,SAAgB,WAAW,CAAC,OAAsB;IAC9C,OAAO,uBAAa,
|
|
1
|
+
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/features/change-bounds/model.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,qCAYiB;AAEJ,QAAA,aAAa,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;AAIrD,SAAgB,WAAW,CAAC,OAAsB;IAC9C,OAAO,IAAA,uBAAa,EAAC,OAAO,CAAC,IAAI,IAAA,sBAAY,EAAC,OAAO,CAAC,IAAI,OAAO,YAAY,wBAAc,IAAI,OAAO,CAAC,UAAU,CAAC,qBAAa,CAAC,CAAC;AACrI,CAAC;AAFD,kCAEC;AAED,qCAAqC;AACrC,IAAY,oBAKX;AALD,WAAY,oBAAoB;IAC5B,4CAAoB,CAAA;IACpB,8CAAsB,CAAA;IACtB,kDAA0B,CAAA;IAC1B,oDAA4B,CAAA;AAChC,CAAC,EALW,oBAAoB,GAApB,4BAAoB,KAApB,4BAAoB,QAK/B;AAED,SAAgB,qBAAqB,CAAC,OAAsB;IACxD,OAAO,IAAA,oBAAU,EAAC,OAAO,CAAC,IAAI,IAAA,uBAAa,EAAC,OAAO,CAAC,CAAC;AACzD,CAAC;AAFD,sDAEC;AAED,MAAa,aAAc,SAAQ,uBAAa;IAG5C,YACa,QAA+B,EACtB,OAAe,aAAa,CAAC,IAAI,EAC1C,gBAAyB,KAAK;QAEvC,KAAK,EAAE,CAAC;QAJC,aAAQ,GAAR,QAAQ,CAAuB;QACtB,SAAI,GAAJ,IAAI,CAA6B;QAC1C,kBAAa,GAAb,aAAa,CAAiB;IAG3C,CAAC;IAEQ,UAAU,CAAC,OAAe;QAC/B,OAAO,OAAO,KAAK,8BAAoB,CAAC;IAC5C,CAAC;IAED,YAAY;QACR,OAAO,IAAI,CAAC,QAAQ,KAAK,oBAAoB,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,KAAK,oBAAoB,CAAC,WAAW,CAAC;IAChH,CAAC;IAED,YAAY;QACR,OAAO,IAAI,CAAC,QAAQ,KAAK,oBAAoB,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,KAAK,oBAAoB,CAAC,UAAU,CAAC;IAChH,CAAC;;AArBL,sCAsBC;AArBmB,kBAAI,GAAG,eAAe,CAAC;AAuB3C,SAAgB,gBAAgB,CAAC,OAAuB;IACpD,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC7B,OAAO,CAAC,GAAG,CAAC,IAAI,aAAa,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,IAAI,aAAa,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC9D,OAAO,CAAC,GAAG,CAAC,IAAI,aAAa,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC;IAChE,OAAO,CAAC,GAAG,CAAC,IAAI,aAAa,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,CAAC;AACrE,CAAC;AAND,4CAMC;AAED,SAAgB,mBAAmB,CAAC,OAAuB;IACvD,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,YAAY,aAAa,CAAC,CAAC;AAC/D,CAAC;AAFD,kDAEC"}
|
|
@@ -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
|
|
@@ -16,15 +16,45 @@
|
|
|
16
16
|
import { Point } from '@eclipse-glsp/protocol';
|
|
17
17
|
import { BoundsAware, SModelElement } from 'sprotty';
|
|
18
18
|
import { ModifyCSSFeedbackAction } from '../tool-feedback/css-feedback';
|
|
19
|
+
/**
|
|
20
|
+
* A `MovementRestrictor` is an optional service that can be used by tools to validate
|
|
21
|
+
* whether a certain move operation (e.g. `ChangeBoundsOperation`) in the diagram is valid.
|
|
22
|
+
*/
|
|
19
23
|
export interface IMovementRestrictor {
|
|
20
|
-
|
|
24
|
+
/**
|
|
25
|
+
* Validate whether moving the given element to a new given location is allowed.
|
|
26
|
+
* @param element The element that should be moved.
|
|
27
|
+
* @param newLocation The new location of the element.
|
|
28
|
+
* @returns `true` if the the element is movable and moving to the given location is allowed, `false` otherwise.
|
|
29
|
+
* Should also return `false` if the newLocation is `undefined`:
|
|
30
|
+
*/
|
|
31
|
+
validate(element: SModelElement, newLocation?: Point): boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Feedback css-classes. Can be applied to elements that did fail the validation.
|
|
34
|
+
*/
|
|
21
35
|
cssClasses?: string[];
|
|
22
36
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
37
|
+
/**
|
|
38
|
+
* A `IMovementRestrictor` that checks for overlapping elements. Move operations
|
|
39
|
+
* are only valid if the element does not collide with another element after moving.
|
|
40
|
+
*/
|
|
41
|
+
export declare class NoOverlapMovementRestrictor implements IMovementRestrictor {
|
|
26
42
|
cssClasses: string[];
|
|
27
|
-
validate(
|
|
43
|
+
validate(element: SModelElement, newLocation?: Point): boolean;
|
|
44
|
+
protected areOverlapping(element1: SModelElement & BoundsAware, element2: SModelElement & BoundsAware): boolean;
|
|
28
45
|
}
|
|
29
|
-
|
|
46
|
+
/**
|
|
47
|
+
* Utility function to create an action that applies the given {@link IMovementRestrictor.cssClasses} to the given element.
|
|
48
|
+
* @param element The element on which the css classes should be applied.
|
|
49
|
+
* @param movementRestrictor The movement restrictor whose cssClasses should be applied.
|
|
50
|
+
* @returns The corresponding {@link ModifyCSSFeedbackAction}
|
|
51
|
+
*/
|
|
52
|
+
export declare function createMovementRestrictionFeedback(element: SModelElement, movementRestrictor: IMovementRestrictor): ModifyCSSFeedbackAction;
|
|
53
|
+
/**
|
|
54
|
+
* Utility function to create an action that removes the given {@link IMovementRestrictor.cssClasses} from the given element.
|
|
55
|
+
* @param element The element from which the css classes should be removed.
|
|
56
|
+
* @param movementRestrictor The movement restrictor whose cssClasses should be removed.
|
|
57
|
+
* @returns The corresponding {@link ModifyCSSFeedbackAction}
|
|
58
|
+
*/
|
|
59
|
+
export declare function removeMovementRestrictionFeedback(element: SModelElement, movementRestrictor: IMovementRestrictor): ModifyCSSFeedbackAction;
|
|
30
60
|
//# sourceMappingURL=movement-restrictor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"movement-restrictor.d.ts","sourceRoot":"","sources":["../../../src/features/change-bounds/movement-restrictor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAE/C,OAAO,EAAE,WAAW,EAAE,aAAa,EAAyB,MAAM,SAAS,CAAC;AAE5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAGxE,MAAM,WAAW,mBAAmB;IAChC,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"movement-restrictor.d.ts","sourceRoot":"","sources":["../../../src/features/change-bounds/movement-restrictor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAE/C,OAAO,EAAE,WAAW,EAAE,aAAa,EAAyB,MAAM,SAAS,CAAC;AAE5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAGxE;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAChC;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,EAAE,aAAa,EAAE,WAAW,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC;IAC/D;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED;;;GAGG;AACH,qBACa,2BAA4B,YAAW,mBAAmB;IACnE,UAAU,WAA4B;IAEtC,QAAQ,CAAC,OAAO,EAAE,aAAa,EAAE,WAAW,CAAC,EAAE,KAAK,GAAG,OAAO;IAsB9D,SAAS,CAAC,cAAc,CAAC,QAAQ,EAAE,aAAa,GAAG,WAAW,EAAE,QAAQ,EAAE,aAAa,GAAG,WAAW,GAAG,OAAO;CAoBlH;AAED;;;;;GAKG;AACH,wBAAgB,iCAAiC,CAC7C,OAAO,EAAE,aAAa,EACtB,kBAAkB,EAAE,mBAAmB,GACxC,uBAAuB,CAMzB;AAED;;;;;GAKG;AACH,wBAAgB,iCAAiC,CAC7C,OAAO,EAAE,aAAa,EACtB,kBAAkB,EAAE,mBAAmB,GACxC,uBAAuB,CAOzB"}
|
|
@@ -6,34 +6,22 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
7
|
};
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.
|
|
9
|
+
exports.removeMovementRestrictionFeedback = exports.createMovementRestrictionFeedback = exports.NoOverlapMovementRestrictor = void 0;
|
|
10
10
|
const inversify_1 = require("inversify");
|
|
11
11
|
const sprotty_1 = require("sprotty");
|
|
12
12
|
const viewpoint_util_1 = require("../../utils/viewpoint-util");
|
|
13
13
|
const css_feedback_1 = require("../tool-feedback/css-feedback");
|
|
14
14
|
const model_1 = require("./model");
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
return new css_feedback_1.ModifyCSSFeedbackAction(elements, movementRestrictor.cssClasses);
|
|
21
|
-
}
|
|
22
|
-
exports.createMovementRestrictionFeedback = createMovementRestrictionFeedback;
|
|
23
|
-
function removeMovementRestrictionFeedback(element, movementRestrictor) {
|
|
24
|
-
const elements = [element];
|
|
25
|
-
if (element instanceof sprotty_1.SParentElement) {
|
|
26
|
-
element.children.filter(child => child instanceof model_1.SResizeHandle).forEach(e => elements.push(e));
|
|
27
|
-
}
|
|
28
|
-
return new css_feedback_1.ModifyCSSFeedbackAction(elements, undefined, movementRestrictor.cssClasses);
|
|
29
|
-
}
|
|
30
|
-
exports.removeMovementRestrictionFeedback = removeMovementRestrictionFeedback;
|
|
31
|
-
let NoOverlapMovmentRestrictor = class NoOverlapMovmentRestrictor {
|
|
15
|
+
/**
|
|
16
|
+
* A `IMovementRestrictor` that checks for overlapping elements. Move operations
|
|
17
|
+
* are only valid if the element does not collide with another element after moving.
|
|
18
|
+
*/
|
|
19
|
+
let NoOverlapMovementRestrictor = class NoOverlapMovementRestrictor {
|
|
32
20
|
constructor() {
|
|
33
21
|
this.cssClasses = ['movement-not-allowed'];
|
|
34
22
|
}
|
|
35
|
-
validate(
|
|
36
|
-
if (!model_1.isBoundsAwareMoveable(element)) {
|
|
23
|
+
validate(element, newLocation) {
|
|
24
|
+
if (!(0, model_1.isBoundsAwareMoveable)(element) || !newLocation) {
|
|
37
25
|
return false;
|
|
38
26
|
}
|
|
39
27
|
// Create ghost element at the newLocation
|
|
@@ -49,29 +37,56 @@ let NoOverlapMovmentRestrictor = class NoOverlapMovmentRestrictor {
|
|
|
49
37
|
return !Array.from(element.root.index
|
|
50
38
|
.all()
|
|
51
39
|
.filter(e => e.id !== ghostElement.id && e !== ghostElement.root && e instanceof sprotty_1.SNode)
|
|
52
|
-
.map(e => e)).some(e => areOverlapping(e, ghostElement));
|
|
40
|
+
.map(e => e)).some(e => this.areOverlapping(e, ghostElement));
|
|
41
|
+
}
|
|
42
|
+
areOverlapping(element1, element2) {
|
|
43
|
+
const b1 = (0, viewpoint_util_1.toAbsoluteBounds)(element1);
|
|
44
|
+
const b2 = (0, viewpoint_util_1.toAbsoluteBounds)(element2);
|
|
45
|
+
const r1TopLeft = b1;
|
|
46
|
+
const r1BottomRight = { x: b1.x + b1.width, y: b1.y + b1.height };
|
|
47
|
+
const r2TopLeft = b2;
|
|
48
|
+
const r2BottomRight = { x: b2.x + b2.width, y: b2.y + b2.height };
|
|
49
|
+
// If one rectangle is on left side of other
|
|
50
|
+
if (r1TopLeft.x > r2BottomRight.x || r2TopLeft.x > r1BottomRight.x) {
|
|
51
|
+
return false;
|
|
52
|
+
}
|
|
53
|
+
// If one rectangle is above other
|
|
54
|
+
if (r1BottomRight.y < r2TopLeft.y || r2BottomRight.y < r1TopLeft.y) {
|
|
55
|
+
return false;
|
|
56
|
+
}
|
|
57
|
+
return true;
|
|
53
58
|
}
|
|
54
59
|
};
|
|
55
|
-
|
|
56
|
-
inversify_1.injectable()
|
|
57
|
-
],
|
|
58
|
-
exports.
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
if (
|
|
68
|
-
|
|
60
|
+
NoOverlapMovementRestrictor = __decorate([
|
|
61
|
+
(0, inversify_1.injectable)()
|
|
62
|
+
], NoOverlapMovementRestrictor);
|
|
63
|
+
exports.NoOverlapMovementRestrictor = NoOverlapMovementRestrictor;
|
|
64
|
+
/**
|
|
65
|
+
* Utility function to create an action that applies the given {@link IMovementRestrictor.cssClasses} to the given element.
|
|
66
|
+
* @param element The element on which the css classes should be applied.
|
|
67
|
+
* @param movementRestrictor The movement restrictor whose cssClasses should be applied.
|
|
68
|
+
* @returns The corresponding {@link ModifyCSSFeedbackAction}
|
|
69
|
+
*/
|
|
70
|
+
function createMovementRestrictionFeedback(element, movementRestrictor) {
|
|
71
|
+
const elements = [element];
|
|
72
|
+
if (element instanceof sprotty_1.SParentElement) {
|
|
73
|
+
element.children.filter(child => child instanceof model_1.SResizeHandle).forEach(e => elements.push(e));
|
|
69
74
|
}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
75
|
+
return css_feedback_1.ModifyCSSFeedbackAction.create({ elements, add: movementRestrictor.cssClasses });
|
|
76
|
+
}
|
|
77
|
+
exports.createMovementRestrictionFeedback = createMovementRestrictionFeedback;
|
|
78
|
+
/**
|
|
79
|
+
* Utility function to create an action that removes the given {@link IMovementRestrictor.cssClasses} from the given element.
|
|
80
|
+
* @param element The element from which the css classes should be removed.
|
|
81
|
+
* @param movementRestrictor The movement restrictor whose cssClasses should be removed.
|
|
82
|
+
* @returns The corresponding {@link ModifyCSSFeedbackAction}
|
|
83
|
+
*/
|
|
84
|
+
function removeMovementRestrictionFeedback(element, movementRestrictor) {
|
|
85
|
+
const elements = [element];
|
|
86
|
+
if (element instanceof sprotty_1.SParentElement) {
|
|
87
|
+
element.children.filter(child => child instanceof model_1.SResizeHandle).forEach(e => elements.push(e));
|
|
73
88
|
}
|
|
74
|
-
return
|
|
89
|
+
return css_feedback_1.ModifyCSSFeedbackAction.create({ elements, remove: movementRestrictor.cssClasses });
|
|
75
90
|
}
|
|
76
|
-
exports.
|
|
91
|
+
exports.removeMovementRestrictionFeedback = removeMovementRestrictionFeedback;
|
|
77
92
|
//# sourceMappingURL=movement-restrictor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"movement-restrictor.js","sourceRoot":"","sources":["../../../src/features/change-bounds/movement-restrictor.ts"],"names":[],"mappings":";;;;;;;;;AAgBA,yCAAuC;AACvC,qCAA4E;AAC5E,+DAA8D;AAC9D,gEAAwE;AACxE,mCAA+D;
|
|
1
|
+
{"version":3,"file":"movement-restrictor.js","sourceRoot":"","sources":["../../../src/features/change-bounds/movement-restrictor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/********************************************************************************
|
|
2
|
-
* Copyright (c) 2020-
|
|
2
|
+
* Copyright (c) 2020-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,11 +13,51 @@
|
|
|
13
13
|
*
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
|
-
import { Point } from '@eclipse-glsp/protocol';
|
|
16
|
+
import { Point, Writable } from '@eclipse-glsp/protocol';
|
|
17
17
|
import { ISnapper, SModelElement } from 'sprotty';
|
|
18
18
|
export declare class GridSnapper implements ISnapper {
|
|
19
19
|
get gridX(): number;
|
|
20
20
|
get gridY(): number;
|
|
21
21
|
snap(position: Point, element: SModelElement): Point;
|
|
22
22
|
}
|
|
23
|
+
/**
|
|
24
|
+
* This class can be used to calculate the current position, when an element is
|
|
25
|
+
* moved. This includes node movements, node resizing (resize handle movement)
|
|
26
|
+
* or edge routing-point movements.
|
|
27
|
+
*
|
|
28
|
+
* You can initialize a this class with a optional {@link ISnapper}. If a
|
|
29
|
+
* snapper is present, the positions will be snapped to the defined grid.
|
|
30
|
+
*/
|
|
31
|
+
export declare class PointPositionUpdater {
|
|
32
|
+
protected snapper?: ISnapper | undefined;
|
|
33
|
+
protected lastDragPosition?: Point;
|
|
34
|
+
protected positionDelta: Writable<Point>;
|
|
35
|
+
constructor(snapper?: ISnapper | undefined);
|
|
36
|
+
/**
|
|
37
|
+
* Init the position with the {@link Point} of your mouse cursor.
|
|
38
|
+
* This method is normally called in the `mouseDown` event.
|
|
39
|
+
* @param mousePosition current mouse position e.g `{x: event.pageX, y: event.pageY }`
|
|
40
|
+
*/
|
|
41
|
+
updateLastDragPosition(mousePosition: Point): void;
|
|
42
|
+
/**
|
|
43
|
+
* Check if the mouse is currently not in a drag mode.
|
|
44
|
+
* @returns true if the last drag position is undefined
|
|
45
|
+
*/
|
|
46
|
+
isLastDragPositionUndefined(): boolean;
|
|
47
|
+
/**
|
|
48
|
+
* Reset the updater for new movements.
|
|
49
|
+
* This method is normally called in the `mouseUp` event.
|
|
50
|
+
*/
|
|
51
|
+
resetPosition(): void;
|
|
52
|
+
/**
|
|
53
|
+
* Calculate the current position of your movement.
|
|
54
|
+
* This method is normally called in the `mouseMove` event.
|
|
55
|
+
* @param target node which is moved around
|
|
56
|
+
* @param mousePosition current mouse position e.g `{x: event.pageX, y: event.pageY }`
|
|
57
|
+
* @param isSnapEnabled if a snapper is defined you can disable it, e.g when a specific key is pressed `!event.altKey`
|
|
58
|
+
* @returns current position or undefined if updater has no last drag position initialized
|
|
59
|
+
*/
|
|
60
|
+
updatePosition(target: SModelElement, mousePosition: Point, isSnapEnabled: boolean): Point | undefined;
|
|
61
|
+
protected snap(position: Point, element: SModelElement, isSnap: boolean): Point;
|
|
62
|
+
}
|
|
23
63
|
//# sourceMappingURL=snap.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snap.d.ts","sourceRoot":"","sources":["../../../src/features/change-bounds/snap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"snap.d.ts","sourceRoot":"","sources":["../../../src/features/change-bounds/snap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEzD,OAAO,EAAuB,QAAQ,EAAc,aAAa,EAAE,MAAM,SAAS,CAAC;AAEnF,qBACa,WAAY,YAAW,QAAQ;IACxC,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,GAAG,KAAK;CAMvD;AAED;;;;;;;GAOG;AACH,qBAAa,oBAAoB;IAIjB,SAAS,CAAC,OAAO,CAAC;IAH9B,SAAS,CAAC,gBAAgB,CAAC,EAAE,KAAK,CAAC;IACnC,SAAS,CAAC,aAAa,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAkB;gBAEpC,OAAO,CAAC,sBAAU;IAExC;;;;OAIG;IACI,sBAAsB,CAAC,aAAa,EAAE,KAAK,GAAG,IAAI;IAIzD;;;OAGG;IACI,2BAA2B,IAAI,OAAO;IAI7C;;;OAGG;IACI,aAAa,IAAI,IAAI;IAK5B;;;;;;;OAOG;IACI,cAAc,CAAC,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,GAAG,KAAK,GAAG,SAAS;IA8B7G,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,GAAG,KAAK;CAGlF"}
|
|
@@ -6,8 +6,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
7
|
};
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.GridSnapper = void 0;
|
|
9
|
+
exports.PointPositionUpdater = exports.GridSnapper = void 0;
|
|
10
10
|
const inversify_1 = require("inversify");
|
|
11
|
+
const sprotty_1 = require("sprotty");
|
|
11
12
|
let GridSnapper = class GridSnapper {
|
|
12
13
|
get gridX() {
|
|
13
14
|
return 10;
|
|
@@ -23,7 +24,82 @@ let GridSnapper = class GridSnapper {
|
|
|
23
24
|
}
|
|
24
25
|
};
|
|
25
26
|
GridSnapper = __decorate([
|
|
26
|
-
inversify_1.injectable()
|
|
27
|
+
(0, inversify_1.injectable)()
|
|
27
28
|
], GridSnapper);
|
|
28
29
|
exports.GridSnapper = GridSnapper;
|
|
30
|
+
/**
|
|
31
|
+
* This class can be used to calculate the current position, when an element is
|
|
32
|
+
* moved. This includes node movements, node resizing (resize handle movement)
|
|
33
|
+
* or edge routing-point movements.
|
|
34
|
+
*
|
|
35
|
+
* You can initialize a this class with a optional {@link ISnapper}. If a
|
|
36
|
+
* snapper is present, the positions will be snapped to the defined grid.
|
|
37
|
+
*/
|
|
38
|
+
class PointPositionUpdater {
|
|
39
|
+
constructor(snapper) {
|
|
40
|
+
this.snapper = snapper;
|
|
41
|
+
this.positionDelta = { x: 0, y: 0 };
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Init the position with the {@link Point} of your mouse cursor.
|
|
45
|
+
* This method is normally called in the `mouseDown` event.
|
|
46
|
+
* @param mousePosition current mouse position e.g `{x: event.pageX, y: event.pageY }`
|
|
47
|
+
*/
|
|
48
|
+
updateLastDragPosition(mousePosition) {
|
|
49
|
+
this.lastDragPosition = mousePosition;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Check if the mouse is currently not in a drag mode.
|
|
53
|
+
* @returns true if the last drag position is undefined
|
|
54
|
+
*/
|
|
55
|
+
isLastDragPositionUndefined() {
|
|
56
|
+
return this.lastDragPosition === undefined;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Reset the updater for new movements.
|
|
60
|
+
* This method is normally called in the `mouseUp` event.
|
|
61
|
+
*/
|
|
62
|
+
resetPosition() {
|
|
63
|
+
this.lastDragPosition = undefined;
|
|
64
|
+
this.positionDelta = { x: 0, y: 0 };
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Calculate the current position of your movement.
|
|
68
|
+
* This method is normally called in the `mouseMove` event.
|
|
69
|
+
* @param target node which is moved around
|
|
70
|
+
* @param mousePosition current mouse position e.g `{x: event.pageX, y: event.pageY }`
|
|
71
|
+
* @param isSnapEnabled if a snapper is defined you can disable it, e.g when a specific key is pressed `!event.altKey`
|
|
72
|
+
* @returns current position or undefined if updater has no last drag position initialized
|
|
73
|
+
*/
|
|
74
|
+
updatePosition(target, mousePosition, isSnapEnabled) {
|
|
75
|
+
var _a;
|
|
76
|
+
if (this.lastDragPosition) {
|
|
77
|
+
const newDragPosition = mousePosition;
|
|
78
|
+
const viewport = (0, sprotty_1.findParentByFeature)(target, sprotty_1.isViewport);
|
|
79
|
+
const zoom = (_a = viewport === null || viewport === void 0 ? void 0 : viewport.zoom) !== null && _a !== void 0 ? _a : 1;
|
|
80
|
+
const dx = (mousePosition.x - this.lastDragPosition.x) / zoom;
|
|
81
|
+
const dy = (mousePosition.y - this.lastDragPosition.y) / zoom;
|
|
82
|
+
const deltaToLastPosition = { x: dx, y: dy };
|
|
83
|
+
this.lastDragPosition = newDragPosition;
|
|
84
|
+
// update position delta with latest delta
|
|
85
|
+
this.positionDelta.x += deltaToLastPosition.x;
|
|
86
|
+
this.positionDelta.y += deltaToLastPosition.y;
|
|
87
|
+
// snap our delta and only send update if the position actually changes
|
|
88
|
+
// otherwise accumulate delta until we do snap to an update
|
|
89
|
+
const positionUpdate = this.snap(this.positionDelta, target, isSnapEnabled);
|
|
90
|
+
if (positionUpdate.x === 0 && positionUpdate.y === 0) {
|
|
91
|
+
return undefined;
|
|
92
|
+
}
|
|
93
|
+
// we update our position so we update our delta by the snapped position
|
|
94
|
+
this.positionDelta.x -= positionUpdate.x;
|
|
95
|
+
this.positionDelta.y -= positionUpdate.y;
|
|
96
|
+
return positionUpdate;
|
|
97
|
+
}
|
|
98
|
+
return undefined;
|
|
99
|
+
}
|
|
100
|
+
snap(position, element, isSnap) {
|
|
101
|
+
return isSnap && this.snapper ? this.snapper.snap(position, element) : { x: position.x, y: position.y };
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
exports.PointPositionUpdater = PointPositionUpdater;
|
|
29
105
|
//# sourceMappingURL=snap.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snap.js","sourceRoot":"","sources":["../../../src/features/change-bounds/snap.ts"],"names":[],"mappings":";;;;;;;;;AAgBA,yCAAuC;
|
|
1
|
+
{"version":3,"file":"snap.js","sourceRoot":"","sources":["../../../src/features/change-bounds/snap.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (c) 2022 EclipseSource and others.
|
|
3
|
+
*
|
|
4
|
+
* This program and the accompanying materials are made available under the
|
|
5
|
+
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
6
|
+
* http://www.eclipse.org/legal/epl-2.0.
|
|
7
|
+
*
|
|
8
|
+
* This Source Code may also be made available under the following Secondary
|
|
9
|
+
* Licenses when the conditions for such availability set forth in the Eclipse
|
|
10
|
+
* Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
11
|
+
* with the GNU Classpath Exception which is available at
|
|
12
|
+
* https://www.gnu.org/software/classpath/license.html.
|
|
13
|
+
*
|
|
14
|
+
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
|
+
********************************************************************************/
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=snap.spec.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"snap.spec.d.ts","sourceRoot":"","sources":["../../../src/features/change-bounds/snap.spec.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF"}
|