@eclipse-glsp/client 0.10.0-next.ca17587.154 → 1.1.0-RC01
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/decoration.css +5 -1
- package/css/glsp-sprotty.css +149 -8
- package/css/tool-palette.css +2 -2
- 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 +10 -9
- 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 +15 -4
- package/lib/base/editor-context-service.d.ts.map +1 -1
- package/lib/base/editor-context-service.js +31 -19
- 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 +15 -8
- package/lib/base/model/update-model-command.d.ts.map +1 -1
- package/lib/base/model/update-model-command.js +43 -53
- 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 +146 -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 +60 -4
- package/lib/features/change-bounds/snap.d.ts.map +1 -1
- package/lib/features/change-bounds/snap.js +96 -9
- 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 +34 -4
- 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 +37 -31
- 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 -5
- package/lib/features/hover/hover.d.ts.map +1 -1
- package/lib/features/hover/hover.js +44 -19
- 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 +12 -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 +201 -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/layouter.d.ts +37 -0
- package/lib/features/layout/layouter.d.ts.map +1 -0
- package/lib/features/layout/layouter.js +131 -0
- package/lib/features/layout/layouter.js.map +1 -0
- package/lib/features/layout/tests/freeform-layout.spec.d.ts +3 -0
- package/lib/features/layout/tests/freeform-layout.spec.d.ts.map +1 -0
- package/lib/features/layout/tests/freeform-layout.spec.js +201 -0
- package/lib/features/layout/tests/freeform-layout.spec.js.map +1 -0
- package/lib/features/layout/tests/hbox-layout.spec.d.ts +3 -0
- package/lib/features/layout/tests/hbox-layout.spec.d.ts.map +1 -0
- package/lib/features/layout/tests/hbox-layout.spec.js +161 -0
- package/lib/features/layout/tests/hbox-layout.spec.js.map +1 -0
- package/lib/features/layout/tests/layouter-test-util.d.ts +34 -0
- package/lib/features/layout/tests/layouter-test-util.d.ts.map +1 -0
- package/lib/features/layout/tests/layouter-test-util.js +96 -0
- package/lib/features/layout/tests/layouter-test-util.js.map +1 -0
- package/lib/features/layout/tests/vbox-layout.spec.d.ts +3 -0
- package/lib/features/layout/tests/vbox-layout.spec.d.ts.map +1 -0
- package/lib/features/layout/tests/vbox-layout.spec.js +161 -0
- package/lib/features/layout/tests/vbox-layout.spec.js.map +1 -0
- package/lib/features/layout/vbox-layout.d.ts +18 -2
- package/lib/features/layout/vbox-layout.d.ts.map +1 -1
- package/lib/features/layout/vbox-layout.js +26 -13
- package/lib/features/layout/vbox-layout.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 -6
- package/lib/features/mouse-tool/mouse-tool.d.ts.map +1 -1
- package/lib/features/mouse-tool/mouse-tool.js +10 -48
- 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 +8 -9
- 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 +4 -2
- package/lib/features/select/select-mouse-listener.d.ts.map +1 -1
- package/lib/features/select/select-mouse-listener.js +63 -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/source-model-watcher/di.config.d.ts +4 -0
- package/lib/features/{model-source-watcher → source-model-watcher}/di.config.d.ts.map +1 -1
- package/lib/features/{model-source-watcher → source-model-watcher}/di.config.js +4 -4
- package/lib/features/source-model-watcher/di.config.js.map +1 -0
- package/lib/features/{model-source-watcher/model-source-changed-action-handler.d.ts → source-model-watcher/source-model-changed-action-handler.d.ts} +10 -10
- package/lib/features/source-model-watcher/source-model-changed-action-handler.d.ts.map +1 -0
- package/lib/features/{model-source-watcher/model-source-changed-action-handler.js → source-model-watcher/source-model-changed-action-handler.js} +28 -28
- package/lib/features/source-model-watcher/source-model-changed-action-handler.js.map +1 -0
- 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/issue-marker.d.ts +11 -5
- package/lib/features/validation/issue-marker.d.ts.map +1 -1
- package/lib/features/validation/issue-marker.js +25 -5
- package/lib/features/validation/issue-marker.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 +17 -30
- package/lib/features/validation/validate.d.ts.map +1 -1
- package/lib/features/validation/validate.js +66 -91
- 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 +10 -11
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +26 -22
- 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 +301 -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/glsp-projection-view.d.ts +30 -0
- package/lib/views/glsp-projection-view.d.ts.map +1 -0
- package/lib/views/glsp-projection-view.js +148 -0
- package/lib/views/glsp-projection-view.js.map +1 -0
- package/lib/views/index.d.ts +1 -0
- package/lib/views/index.d.ts.map +1 -1
- package/lib/views/index.js +7 -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 +10 -19
- 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 +6 -5
- 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 +32 -12
- 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 +54 -41
- 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 +99 -12
- 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 +51 -29
- 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 +48 -28
- package/src/features/layout/di.config.ts +17 -7
- package/src/features/layout/freeform-layout.ts +6 -15
- package/src/features/layout/hbox-layout.ts +273 -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/layouter.ts +137 -0
- package/src/features/layout/tests/freeform-layout.spec.ts +216 -0
- package/src/features/layout/tests/hbox-layout.spec.ts +171 -0
- package/src/features/layout/tests/layouter-test-util.ts +122 -0
- package/src/features/layout/tests/vbox-layout.spec.ts +171 -0
- package/src/features/layout/vbox-layout.ts +41 -24
- package/src/features/mouse-tool/di.config.ts +3 -4
- package/src/features/mouse-tool/mouse-tool.ts +18 -57
- 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 +8 -13
- 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 +82 -3
- package/src/features/select/selection-service.spec.ts +12 -9
- package/src/features/select/selection-service.ts +52 -60
- package/src/features/{model-source-watcher → source-model-watcher}/di.config.ts +5 -5
- package/src/features/{model-source-watcher/model-source-changed-action-handler.ts → source-model-watcher/source-model-changed-action-handler.ts} +17 -22
- 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/issue-marker.ts +34 -12
- 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 +62 -90
- package/src/features/viewport/di.config.ts +1 -2
- package/src/features/viewport/glsp-scroll-mouse-listener.ts +5 -5
- package/src/index.ts +12 -12
- package/src/lib/model.ts +4 -4
- package/src/model-source/glsp-diagram-server.ts +15 -15
- package/src/sprotty-reexport.ts +288 -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/glsp-projection-view.tsx +173 -0
- package/src/views/index.ts +2 -0
- 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/model-source-watcher/di.config.d.ts +0 -4
- package/lib/features/model-source-watcher/di.config.js.map +0 -1
- package/lib/features/model-source-watcher/model-source-changed-action-handler.d.ts.map +0 -1
- package/lib/features/model-source-watcher/model-source-changed-action-handler.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
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (c) 2019-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
|
+
import { Action, ElementAndBounds, Writable } from '@eclipse-glsp/protocol';
|
|
17
|
+
import { ElementMove, IActionDispatcher, IActionHandler, ICommand, SModelElement } from 'sprotty';
|
|
18
|
+
import { BoundsAwareModelElement } from '../../utils/smodel-util';
|
|
19
|
+
import { IMovementRestrictor } from '../change-bounds/movement-restrictor';
|
|
20
|
+
import { SelectionService } from '../select/selection-service';
|
|
21
|
+
/**
|
|
22
|
+
* Used to specify the desired resize dimension for a {@link ResizeElementsCommand}.
|
|
23
|
+
*/
|
|
24
|
+
export declare enum ResizeDimension {
|
|
25
|
+
Width = 0,
|
|
26
|
+
Height = 1,
|
|
27
|
+
Width_And_Height = 2
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* A function that computes a single number from a set of given numbers
|
|
31
|
+
* i.e. it reduces the given numbers to one single number.
|
|
32
|
+
* Mainly used by the {@link ResizeElementsCommand} to reduce the given dimensions to a target dimension value.
|
|
33
|
+
*/
|
|
34
|
+
export declare type ReduceFunction = (...values: number[]) => number;
|
|
35
|
+
export declare namespace ReduceFunction {
|
|
36
|
+
/**
|
|
37
|
+
* Returns the minimal value of the given numbers.
|
|
38
|
+
* @param values Numbers to be evaluated.
|
|
39
|
+
* @returns The reduced number.
|
|
40
|
+
*/
|
|
41
|
+
function min(...values: number[]): number;
|
|
42
|
+
/**
|
|
43
|
+
* Returns the maximal value of the given numbers.
|
|
44
|
+
* @param values Numbers to be evaluated.
|
|
45
|
+
* @returns The reduced number.
|
|
46
|
+
*/
|
|
47
|
+
function max(...values: number[]): number;
|
|
48
|
+
/**
|
|
49
|
+
* Computes the average of the given numbers.
|
|
50
|
+
* @param values Numbers to be evaluated.
|
|
51
|
+
*/
|
|
52
|
+
function avg(...values: number[]): number;
|
|
53
|
+
/**
|
|
54
|
+
* Returns the last value of the given numbers.
|
|
55
|
+
* @param values Numbers to be evaluated.
|
|
56
|
+
* @returns The reduced number.
|
|
57
|
+
*/
|
|
58
|
+
function first(...values: number[]): number;
|
|
59
|
+
/**
|
|
60
|
+
* Returns the minimal value of the given numbers.
|
|
61
|
+
* @param values Numbers to be evaluated.
|
|
62
|
+
* @returns The reduced number.
|
|
63
|
+
*/
|
|
64
|
+
function last(...values: number[]): number;
|
|
65
|
+
/**
|
|
66
|
+
* Returns the reduce function that corresponds to the given {@link ReduceFunctionType}.
|
|
67
|
+
* @param type The reduce function kind.
|
|
68
|
+
* @returns The corresponding reduce function.
|
|
69
|
+
*/
|
|
70
|
+
function get(type: ReduceFunctionType): ReduceFunction;
|
|
71
|
+
}
|
|
72
|
+
/** Union type of all {@link ReduceFunction} keys. */
|
|
73
|
+
export declare type ReduceFunctionType = Exclude<keyof typeof ReduceFunction, 'get'>;
|
|
74
|
+
export interface ResizeElementsAction extends Action {
|
|
75
|
+
kind: typeof ResizeElementsAction.KIND;
|
|
76
|
+
/**
|
|
77
|
+
* IDs of the elements that should be resized. If no IDs are given, the selected elements will be resized.
|
|
78
|
+
*/
|
|
79
|
+
elementIds: string[];
|
|
80
|
+
/**
|
|
81
|
+
* Resize dimension. The default is {@link ResizeDimension.Width}.
|
|
82
|
+
*/
|
|
83
|
+
dimension: ResizeDimension;
|
|
84
|
+
/**
|
|
85
|
+
* Type of the {@link ReduceFunction} that should be used to reduce the dimension to a target dimension value
|
|
86
|
+
*/
|
|
87
|
+
reduceFunction: ReduceFunctionType;
|
|
88
|
+
}
|
|
89
|
+
export declare namespace ResizeElementsAction {
|
|
90
|
+
const KIND = "resizeElementAction";
|
|
91
|
+
function is(object: any): object is ResizeElementsAction;
|
|
92
|
+
function create(options: {
|
|
93
|
+
elementIds?: string[];
|
|
94
|
+
dimension?: ResizeDimension;
|
|
95
|
+
reduceFunction: ReduceFunctionType;
|
|
96
|
+
}): ResizeElementsAction;
|
|
97
|
+
}
|
|
98
|
+
export declare abstract class LayoutElementsActionHandler implements IActionHandler {
|
|
99
|
+
protected actionDispatcher: IActionDispatcher;
|
|
100
|
+
protected selectionService: SelectionService;
|
|
101
|
+
protected movementRestrictor?: IMovementRestrictor;
|
|
102
|
+
abstract handle(action: Action): void | Action | ICommand;
|
|
103
|
+
getSelectedElements(selection: {
|
|
104
|
+
elementIds: string[];
|
|
105
|
+
}): BoundsAwareModelElement[];
|
|
106
|
+
protected abstract isActionElement(element: SModelElement): element is BoundsAwareModelElement;
|
|
107
|
+
dispatchAction(action: Action): void;
|
|
108
|
+
dispatchActions(actions: Action[]): void;
|
|
109
|
+
}
|
|
110
|
+
export declare class ResizeElementsActionHandler extends LayoutElementsActionHandler {
|
|
111
|
+
handle(action: ResizeElementsAction): void;
|
|
112
|
+
resizeWidth(elements: BoundsAwareModelElement[], reduceFn: ReduceFunction): void;
|
|
113
|
+
resizeHeight(elements: BoundsAwareModelElement[], reduceFn: ReduceFunction): void;
|
|
114
|
+
resizeWidthAndHeight(elements: BoundsAwareModelElement[], reduceFn: ReduceFunction): void;
|
|
115
|
+
dispatchResizeActions(elements: BoundsAwareModelElement[], change: (element: BoundsAwareModelElement, bounds: Writable<ElementAndBounds>) => void): void;
|
|
116
|
+
createElementAndBounds(element: BoundsAwareModelElement, change: (_element: BoundsAwareModelElement, _bounds: Writable<ElementAndBounds>) => void): Writable<ElementAndBounds> | undefined;
|
|
117
|
+
protected isActionElement(element: SModelElement): element is BoundsAwareModelElement;
|
|
118
|
+
}
|
|
119
|
+
export declare enum Alignment {
|
|
120
|
+
Left = 0,
|
|
121
|
+
Center = 1,
|
|
122
|
+
Right = 2,
|
|
123
|
+
Top = 3,
|
|
124
|
+
Middle = 4,
|
|
125
|
+
Bottom = 5
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* A function that retrieves a specific (sub)-selection of elements from a given set of elements.
|
|
129
|
+
* Mainly used by the {@link AlignElementsActionHandler}.
|
|
130
|
+
*/
|
|
131
|
+
export declare type SelectFunction = (elements: BoundsAwareModelElement[]) => BoundsAwareModelElement[];
|
|
132
|
+
export declare namespace SelectFunction {
|
|
133
|
+
/**
|
|
134
|
+
* Select all elements from the given set of elements.
|
|
135
|
+
* @param elements The set of elements.
|
|
136
|
+
* @returns All elements.
|
|
137
|
+
*/
|
|
138
|
+
function all(elements: BoundsAwareModelElement[]): BoundsAwareModelElement[];
|
|
139
|
+
/**
|
|
140
|
+
* Select the first element from a given set of elements.
|
|
141
|
+
* @param elements The elements.
|
|
142
|
+
* @returns An array containing the first element of the given elements.
|
|
143
|
+
*/
|
|
144
|
+
function first(elements: BoundsAwareModelElement[]): BoundsAwareModelElement[];
|
|
145
|
+
/**
|
|
146
|
+
* Select the last element from a given set of elements.
|
|
147
|
+
* @param elements The elements.
|
|
148
|
+
* @returns An array containing the last element of the given elements.
|
|
149
|
+
*/
|
|
150
|
+
function last(elements: BoundsAwareModelElement[]): BoundsAwareModelElement[];
|
|
151
|
+
/**
|
|
152
|
+
* Returns the select function that corresponds to the given {@link SelectFunctionType}.
|
|
153
|
+
* @param type The select function type.
|
|
154
|
+
* @returns The corresponding select function.
|
|
155
|
+
*/
|
|
156
|
+
function get(kind: SelectFunctionType): SelectFunction;
|
|
157
|
+
}
|
|
158
|
+
/** Union type of all {@link SelectFunction} keys. */
|
|
159
|
+
export declare type SelectFunctionType = Exclude<keyof typeof SelectFunction, 'get'>;
|
|
160
|
+
export interface AlignElementsAction extends Action {
|
|
161
|
+
kind: typeof AlignElementsAction.KIND;
|
|
162
|
+
/**
|
|
163
|
+
* IDs of the elements that should be aligned. If no IDs are given, the selected elements will be aligned.
|
|
164
|
+
*/
|
|
165
|
+
elementIds: string[];
|
|
166
|
+
/**
|
|
167
|
+
* Alignment direction. The default is {@link Alignment.Left}
|
|
168
|
+
*/
|
|
169
|
+
alignment: Alignment;
|
|
170
|
+
/**
|
|
171
|
+
* Function to selected elements that are considered during alignment calculation.
|
|
172
|
+
* The default value is {@link Select.all}.
|
|
173
|
+
*/
|
|
174
|
+
selectFunction: SelectFunctionType;
|
|
175
|
+
}
|
|
176
|
+
export declare namespace AlignElementsAction {
|
|
177
|
+
const KIND = "alignElements";
|
|
178
|
+
function is(object: any): object is AlignElementsAction;
|
|
179
|
+
function create(options?: {
|
|
180
|
+
elementIds?: string[];
|
|
181
|
+
alignment?: Alignment;
|
|
182
|
+
selectionFunction?: SelectFunctionType;
|
|
183
|
+
}): AlignElementsAction;
|
|
184
|
+
}
|
|
185
|
+
export declare class AlignElementsActionHandler extends LayoutElementsActionHandler {
|
|
186
|
+
handle(action: AlignElementsAction): void;
|
|
187
|
+
alignLeft(elements: BoundsAwareModelElement[]): void;
|
|
188
|
+
alignCenter(elements: BoundsAwareModelElement[]): void;
|
|
189
|
+
alignRight(elements: BoundsAwareModelElement[]): void;
|
|
190
|
+
alignTop(elements: BoundsAwareModelElement[]): void;
|
|
191
|
+
alignMiddle(elements: BoundsAwareModelElement[]): void;
|
|
192
|
+
alignBottom(elements: BoundsAwareModelElement[]): void;
|
|
193
|
+
dispatchAlignActions(elements: BoundsAwareModelElement[], change: (element: BoundsAwareModelElement, move: Writable<ElementMove>) => void): void;
|
|
194
|
+
createElementMove(element: BoundsAwareModelElement, change: (_element: BoundsAwareModelElement, _move: Writable<ElementMove>) => void): Writable<ElementMove> | undefined;
|
|
195
|
+
createElementAndBounds(element: BoundsAwareModelElement, move: ElementMove): ElementAndBounds;
|
|
196
|
+
protected isActionElement(element: SModelElement): element is BoundsAwareModelElement;
|
|
197
|
+
}
|
|
198
|
+
//# sourceMappingURL=layout-elements-action.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"layout-elements-action.d.ts","sourceRoot":"","sources":["../../../src/features/layout/layout-elements-action.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,391 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.AlignElementsActionHandler = exports.AlignElementsAction = exports.SelectFunction = exports.Alignment = exports.ResizeElementsActionHandler = exports.LayoutElementsActionHandler = exports.ResizeElementsAction = exports.ReduceFunction = exports.ResizeDimension = void 0;
|
|
13
|
+
/********************************************************************************
|
|
14
|
+
* Copyright (c) 2019-2022 EclipseSource and others.
|
|
15
|
+
*
|
|
16
|
+
* This program and the accompanying materials are made available under the
|
|
17
|
+
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
18
|
+
* http://www.eclipse.org/legal/epl-2.0.
|
|
19
|
+
*
|
|
20
|
+
* This Source Code may also be made available under the following Secondary
|
|
21
|
+
* Licenses when the conditions for such availability set forth in the Eclipse
|
|
22
|
+
* Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
23
|
+
* with the GNU Classpath Exception which is available at
|
|
24
|
+
* https://www.gnu.org/software/classpath/license.html.
|
|
25
|
+
*
|
|
26
|
+
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
27
|
+
********************************************************************************/
|
|
28
|
+
const protocol_1 = require("@eclipse-glsp/protocol");
|
|
29
|
+
const inversify_1 = require("inversify");
|
|
30
|
+
const sprotty_1 = require("sprotty");
|
|
31
|
+
const types_1 = require("../../base/types");
|
|
32
|
+
const layout_utils_1 = require("../../utils/layout-utils");
|
|
33
|
+
const smodel_util_1 = require("../../utils/smodel-util");
|
|
34
|
+
const model_1 = require("../change-bounds/model");
|
|
35
|
+
const selection_service_1 = require("../select/selection-service");
|
|
36
|
+
/**
|
|
37
|
+
* Used to specify the desired resize dimension for a {@link ResizeElementsCommand}.
|
|
38
|
+
*/
|
|
39
|
+
// eslint-disable-next-line no-shadow
|
|
40
|
+
var ResizeDimension;
|
|
41
|
+
(function (ResizeDimension) {
|
|
42
|
+
ResizeDimension[ResizeDimension["Width"] = 0] = "Width";
|
|
43
|
+
ResizeDimension[ResizeDimension["Height"] = 1] = "Height";
|
|
44
|
+
ResizeDimension[ResizeDimension["Width_And_Height"] = 2] = "Width_And_Height";
|
|
45
|
+
})(ResizeDimension = exports.ResizeDimension || (exports.ResizeDimension = {}));
|
|
46
|
+
var ReduceFunction;
|
|
47
|
+
(function (ReduceFunction) {
|
|
48
|
+
/**
|
|
49
|
+
* Returns the minimal value of the given numbers.
|
|
50
|
+
* @param values Numbers to be evaluated.
|
|
51
|
+
* @returns The reduced number.
|
|
52
|
+
*/
|
|
53
|
+
function min(...values) {
|
|
54
|
+
return Math.min(...values);
|
|
55
|
+
}
|
|
56
|
+
ReduceFunction.min = min;
|
|
57
|
+
/**
|
|
58
|
+
* Returns the maximal value of the given numbers.
|
|
59
|
+
* @param values Numbers to be evaluated.
|
|
60
|
+
* @returns The reduced number.
|
|
61
|
+
*/
|
|
62
|
+
function max(...values) {
|
|
63
|
+
return Math.max(...values);
|
|
64
|
+
}
|
|
65
|
+
ReduceFunction.max = max;
|
|
66
|
+
/**
|
|
67
|
+
* Computes the average of the given numbers.
|
|
68
|
+
* @param values Numbers to be evaluated.
|
|
69
|
+
*/
|
|
70
|
+
function avg(...values) {
|
|
71
|
+
return values.reduce((a, b) => a + b, 0) / values.length;
|
|
72
|
+
}
|
|
73
|
+
ReduceFunction.avg = avg;
|
|
74
|
+
/**
|
|
75
|
+
* Returns the last value of the given numbers.
|
|
76
|
+
* @param values Numbers to be evaluated.
|
|
77
|
+
* @returns The reduced number.
|
|
78
|
+
*/
|
|
79
|
+
function first(...values) {
|
|
80
|
+
return values[0];
|
|
81
|
+
}
|
|
82
|
+
ReduceFunction.first = first;
|
|
83
|
+
/**
|
|
84
|
+
* Returns the minimal value of the given numbers.
|
|
85
|
+
* @param values Numbers to be evaluated.
|
|
86
|
+
* @returns The reduced number.
|
|
87
|
+
*/
|
|
88
|
+
function last(...values) {
|
|
89
|
+
return values[values.length - 1];
|
|
90
|
+
}
|
|
91
|
+
ReduceFunction.last = last;
|
|
92
|
+
/**
|
|
93
|
+
* Returns the reduce function that corresponds to the given {@link ReduceFunctionType}.
|
|
94
|
+
* @param type The reduce function kind.
|
|
95
|
+
* @returns The corresponding reduce function.
|
|
96
|
+
*/
|
|
97
|
+
function get(type) {
|
|
98
|
+
return ReduceFunction[type];
|
|
99
|
+
}
|
|
100
|
+
ReduceFunction.get = get;
|
|
101
|
+
})(ReduceFunction = exports.ReduceFunction || (exports.ReduceFunction = {}));
|
|
102
|
+
var ResizeElementsAction;
|
|
103
|
+
(function (ResizeElementsAction) {
|
|
104
|
+
ResizeElementsAction.KIND = 'resizeElementAction';
|
|
105
|
+
function is(object) {
|
|
106
|
+
return (protocol_1.Action.hasKind(object, ResizeElementsAction.KIND) &&
|
|
107
|
+
(0, protocol_1.hasArrayProp)(object, 'elementIds') &&
|
|
108
|
+
(0, protocol_1.hasNumberProp)(object, 'dimension') &&
|
|
109
|
+
(0, protocol_1.hasStringProp)(object, 'reduceFunction'));
|
|
110
|
+
}
|
|
111
|
+
ResizeElementsAction.is = is;
|
|
112
|
+
function create(options) {
|
|
113
|
+
return Object.assign({ kind: ResizeElementsAction.KIND, dimension: ResizeDimension.Width, elementIds: [] }, options);
|
|
114
|
+
}
|
|
115
|
+
ResizeElementsAction.create = create;
|
|
116
|
+
})(ResizeElementsAction = exports.ResizeElementsAction || (exports.ResizeElementsAction = {}));
|
|
117
|
+
let LayoutElementsActionHandler = class LayoutElementsActionHandler {
|
|
118
|
+
getSelectedElements(selection) {
|
|
119
|
+
const index = this.selectionService.getModelRoot().index;
|
|
120
|
+
const selectedElements = selection.elementIds.length > 0 ? selection.elementIds : this.selectionService.getSelectedElementIDs();
|
|
121
|
+
return (0, smodel_util_1.getElements)(index, selectedElements, this.isActionElement);
|
|
122
|
+
}
|
|
123
|
+
dispatchAction(action) {
|
|
124
|
+
this.actionDispatcher.dispatch(action);
|
|
125
|
+
}
|
|
126
|
+
dispatchActions(actions) {
|
|
127
|
+
this.actionDispatcher.dispatchAll(actions);
|
|
128
|
+
}
|
|
129
|
+
};
|
|
130
|
+
__decorate([
|
|
131
|
+
(0, inversify_1.inject)(types_1.TYPES.IActionDispatcher),
|
|
132
|
+
__metadata("design:type", Object)
|
|
133
|
+
], LayoutElementsActionHandler.prototype, "actionDispatcher", void 0);
|
|
134
|
+
__decorate([
|
|
135
|
+
(0, inversify_1.inject)(types_1.TYPES.SelectionService),
|
|
136
|
+
__metadata("design:type", selection_service_1.SelectionService)
|
|
137
|
+
], LayoutElementsActionHandler.prototype, "selectionService", void 0);
|
|
138
|
+
__decorate([
|
|
139
|
+
(0, inversify_1.inject)(types_1.TYPES.IMovementRestrictor),
|
|
140
|
+
(0, inversify_1.optional)(),
|
|
141
|
+
__metadata("design:type", Object)
|
|
142
|
+
], LayoutElementsActionHandler.prototype, "movementRestrictor", void 0);
|
|
143
|
+
LayoutElementsActionHandler = __decorate([
|
|
144
|
+
(0, inversify_1.injectable)()
|
|
145
|
+
], LayoutElementsActionHandler);
|
|
146
|
+
exports.LayoutElementsActionHandler = LayoutElementsActionHandler;
|
|
147
|
+
let ResizeElementsActionHandler = class ResizeElementsActionHandler extends LayoutElementsActionHandler {
|
|
148
|
+
handle(action) {
|
|
149
|
+
const elements = this.getSelectedElements(action);
|
|
150
|
+
if (elements.length > 1) {
|
|
151
|
+
const reduceFn = ReduceFunction.get(action.reduceFunction);
|
|
152
|
+
switch (action.dimension) {
|
|
153
|
+
case ResizeDimension.Width:
|
|
154
|
+
return this.resizeWidth(elements, reduceFn);
|
|
155
|
+
case ResizeDimension.Height:
|
|
156
|
+
return this.resizeHeight(elements, reduceFn);
|
|
157
|
+
case ResizeDimension.Width_And_Height:
|
|
158
|
+
return this.resizeWidthAndHeight(elements, reduceFn);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
resizeWidth(elements, reduceFn) {
|
|
163
|
+
const targetWidth = reduceFn(...elements.map(element => element.bounds.width));
|
|
164
|
+
this.dispatchResizeActions(elements, (element, bounds) => {
|
|
165
|
+
// resize around center (horizontal)
|
|
166
|
+
const halfDiffWidth = 0.5 * (targetWidth - element.bounds.width);
|
|
167
|
+
bounds.newPosition.x = element.bounds.x - halfDiffWidth;
|
|
168
|
+
bounds.newSize.width = targetWidth;
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
resizeHeight(elements, reduceFn) {
|
|
172
|
+
const targetHeight = reduceFn(...elements.map(element => element.bounds.height));
|
|
173
|
+
this.dispatchResizeActions(elements, (element, bounds) => {
|
|
174
|
+
// resize around middle (vertical)
|
|
175
|
+
const halfDiffHeight = 0.5 * (targetHeight - element.bounds.height);
|
|
176
|
+
bounds.newPosition.y = element.bounds.y - halfDiffHeight;
|
|
177
|
+
bounds.newSize.height = targetHeight;
|
|
178
|
+
});
|
|
179
|
+
}
|
|
180
|
+
resizeWidthAndHeight(elements, reduceFn) {
|
|
181
|
+
const targetWidth = reduceFn(...elements.map(element => element.bounds.width));
|
|
182
|
+
const targetHeight = reduceFn(...elements.map(element => element.bounds.height));
|
|
183
|
+
this.dispatchResizeActions(elements, (element, bounds) => {
|
|
184
|
+
// resize around center and middle (horizontal & vertical)
|
|
185
|
+
const halfDiffWidth = 0.5 * (targetWidth - element.bounds.width);
|
|
186
|
+
const halfDiffHeight = 0.5 * (targetHeight - element.bounds.height);
|
|
187
|
+
bounds.newPosition = { x: element.bounds.x - halfDiffWidth, y: element.bounds.y - halfDiffHeight };
|
|
188
|
+
bounds.newSize = { width: targetWidth, height: targetHeight };
|
|
189
|
+
});
|
|
190
|
+
}
|
|
191
|
+
dispatchResizeActions(elements, change) {
|
|
192
|
+
const elementAndBounds = []; // client- and server-side resize
|
|
193
|
+
elements.forEach(element => {
|
|
194
|
+
const elementChange = this.createElementAndBounds(element, change);
|
|
195
|
+
if (elementChange) {
|
|
196
|
+
// simply skip invalid changes
|
|
197
|
+
elementAndBounds.push(elementChange);
|
|
198
|
+
}
|
|
199
|
+
});
|
|
200
|
+
this.dispatchActions([protocol_1.SetBoundsAction.create(elementAndBounds), protocol_1.ChangeBoundsOperation.create(elementAndBounds)]);
|
|
201
|
+
}
|
|
202
|
+
createElementAndBounds(element, change) {
|
|
203
|
+
const bounds = {
|
|
204
|
+
elementId: element.id,
|
|
205
|
+
newPosition: {
|
|
206
|
+
x: element.bounds.x,
|
|
207
|
+
y: element.bounds.y
|
|
208
|
+
},
|
|
209
|
+
newSize: {
|
|
210
|
+
width: element.bounds.width,
|
|
211
|
+
height: element.bounds.height
|
|
212
|
+
}
|
|
213
|
+
};
|
|
214
|
+
change(element, bounds);
|
|
215
|
+
return (0, layout_utils_1.toValidElementAndBounds)(element, bounds, this.movementRestrictor);
|
|
216
|
+
}
|
|
217
|
+
isActionElement(element) {
|
|
218
|
+
return (0, model_1.isResizable)(element);
|
|
219
|
+
}
|
|
220
|
+
};
|
|
221
|
+
ResizeElementsActionHandler = __decorate([
|
|
222
|
+
(0, inversify_1.injectable)()
|
|
223
|
+
], ResizeElementsActionHandler);
|
|
224
|
+
exports.ResizeElementsActionHandler = ResizeElementsActionHandler;
|
|
225
|
+
// eslint-disable-next-line no-shadow
|
|
226
|
+
var Alignment;
|
|
227
|
+
(function (Alignment) {
|
|
228
|
+
Alignment[Alignment["Left"] = 0] = "Left";
|
|
229
|
+
Alignment[Alignment["Center"] = 1] = "Center";
|
|
230
|
+
Alignment[Alignment["Right"] = 2] = "Right";
|
|
231
|
+
Alignment[Alignment["Top"] = 3] = "Top";
|
|
232
|
+
Alignment[Alignment["Middle"] = 4] = "Middle";
|
|
233
|
+
Alignment[Alignment["Bottom"] = 5] = "Bottom";
|
|
234
|
+
})(Alignment = exports.Alignment || (exports.Alignment = {}));
|
|
235
|
+
var SelectFunction;
|
|
236
|
+
(function (SelectFunction) {
|
|
237
|
+
/**
|
|
238
|
+
* Select all elements from the given set of elements.
|
|
239
|
+
* @param elements The set of elements.
|
|
240
|
+
* @returns All elements.
|
|
241
|
+
*/
|
|
242
|
+
function all(elements) {
|
|
243
|
+
return elements;
|
|
244
|
+
}
|
|
245
|
+
SelectFunction.all = all;
|
|
246
|
+
/**
|
|
247
|
+
* Select the first element from a given set of elements.
|
|
248
|
+
* @param elements The elements.
|
|
249
|
+
* @returns An array containing the first element of the given elements.
|
|
250
|
+
*/
|
|
251
|
+
function first(elements) {
|
|
252
|
+
return [elements[0]];
|
|
253
|
+
}
|
|
254
|
+
SelectFunction.first = first;
|
|
255
|
+
/**
|
|
256
|
+
* Select the last element from a given set of elements.
|
|
257
|
+
* @param elements The elements.
|
|
258
|
+
* @returns An array containing the last element of the given elements.
|
|
259
|
+
*/
|
|
260
|
+
function last(elements) {
|
|
261
|
+
return [elements[elements.length - 1]];
|
|
262
|
+
}
|
|
263
|
+
SelectFunction.last = last;
|
|
264
|
+
/**
|
|
265
|
+
* Returns the select function that corresponds to the given {@link SelectFunctionType}.
|
|
266
|
+
* @param type The select function type.
|
|
267
|
+
* @returns The corresponding select function.
|
|
268
|
+
*/
|
|
269
|
+
function get(kind) {
|
|
270
|
+
return SelectFunction[kind];
|
|
271
|
+
}
|
|
272
|
+
SelectFunction.get = get;
|
|
273
|
+
})(SelectFunction = exports.SelectFunction || (exports.SelectFunction = {}));
|
|
274
|
+
var AlignElementsAction;
|
|
275
|
+
(function (AlignElementsAction) {
|
|
276
|
+
AlignElementsAction.KIND = 'alignElements';
|
|
277
|
+
function is(object) {
|
|
278
|
+
return (protocol_1.Action.hasKind(object, AlignElementsAction.KIND) &&
|
|
279
|
+
(0, protocol_1.hasArrayProp)(object, 'elementIds') &&
|
|
280
|
+
(0, protocol_1.hasNumberProp)(object, 'alignment') &&
|
|
281
|
+
(0, protocol_1.hasStringProp)(object, 'selectFunction'));
|
|
282
|
+
}
|
|
283
|
+
AlignElementsAction.is = is;
|
|
284
|
+
function create(options = {}) {
|
|
285
|
+
return Object.assign({ kind: AlignElementsAction.KIND, elementIds: [], alignment: Alignment.Left, selectFunction: 'all' }, options);
|
|
286
|
+
}
|
|
287
|
+
AlignElementsAction.create = create;
|
|
288
|
+
})(AlignElementsAction = exports.AlignElementsAction || (exports.AlignElementsAction = {}));
|
|
289
|
+
let AlignElementsActionHandler = class AlignElementsActionHandler extends LayoutElementsActionHandler {
|
|
290
|
+
handle(action) {
|
|
291
|
+
const elements = this.getSelectedElements(action);
|
|
292
|
+
const selectFn = SelectFunction.get(action.selectFunction);
|
|
293
|
+
const calculatedElements = selectFn(elements);
|
|
294
|
+
if (elements.length > 1) {
|
|
295
|
+
switch (action.alignment) {
|
|
296
|
+
case Alignment.Left:
|
|
297
|
+
return this.alignLeft(calculatedElements);
|
|
298
|
+
case Alignment.Center:
|
|
299
|
+
return this.alignCenter(calculatedElements);
|
|
300
|
+
case Alignment.Right:
|
|
301
|
+
return this.alignRight(calculatedElements);
|
|
302
|
+
case Alignment.Top:
|
|
303
|
+
return this.alignTop(calculatedElements);
|
|
304
|
+
case Alignment.Middle:
|
|
305
|
+
return this.alignMiddle(calculatedElements);
|
|
306
|
+
case Alignment.Bottom:
|
|
307
|
+
return this.alignBottom(calculatedElements);
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
alignLeft(elements) {
|
|
312
|
+
const minX = elements.map(element => element.bounds.x).reduce((a, b) => Math.min(a, b));
|
|
313
|
+
this.dispatchAlignActions(elements, (_, move) => (move.toPosition.x = minX));
|
|
314
|
+
}
|
|
315
|
+
alignCenter(elements) {
|
|
316
|
+
const minX = elements.map(element => element.bounds.x).reduce((a, b) => Math.min(a, b));
|
|
317
|
+
const maxX = elements.map(element => element.bounds.x + element.bounds.width).reduce((a, b) => Math.max(a, b));
|
|
318
|
+
const diffX = maxX - minX;
|
|
319
|
+
const centerX = minX + 0.5 * diffX;
|
|
320
|
+
this.dispatchAlignActions(elements, (element, move) => (move.toPosition.x = centerX - 0.5 * element.bounds.width));
|
|
321
|
+
}
|
|
322
|
+
alignRight(elements) {
|
|
323
|
+
const maxX = elements.map(element => element.bounds.x + element.bounds.width).reduce((a, b) => Math.max(a, b));
|
|
324
|
+
this.dispatchAlignActions(elements, (element, move) => (move.toPosition.x = maxX - element.bounds.width));
|
|
325
|
+
}
|
|
326
|
+
alignTop(elements) {
|
|
327
|
+
const minY = elements.map(element => element.bounds.y).reduce((a, b) => Math.min(a, b));
|
|
328
|
+
this.dispatchAlignActions(elements, (_, move) => (move.toPosition.y = minY));
|
|
329
|
+
}
|
|
330
|
+
alignMiddle(elements) {
|
|
331
|
+
const minY = elements.map(element => element.bounds.y).reduce((a, b) => Math.min(a, b));
|
|
332
|
+
const maxY = elements.map(element => element.bounds.y + element.bounds.height).reduce((a, b) => Math.max(a, b));
|
|
333
|
+
const diffY = maxY - minY;
|
|
334
|
+
const middleY = minY + 0.5 * diffY;
|
|
335
|
+
this.dispatchAlignActions(elements, (element, move) => (move.toPosition.y = middleY - 0.5 * element.bounds.height));
|
|
336
|
+
}
|
|
337
|
+
alignBottom(elements) {
|
|
338
|
+
const maxY = elements.map(element => element.bounds.y + element.bounds.height).reduce((a, b) => Math.max(a, b));
|
|
339
|
+
this.dispatchAlignActions(elements, (element, move) => (move.toPosition.y = maxY - element.bounds.height));
|
|
340
|
+
}
|
|
341
|
+
dispatchAlignActions(elements, change) {
|
|
342
|
+
const moves = []; // client-side move
|
|
343
|
+
const elementAndBounds = []; // server-side move
|
|
344
|
+
elements.forEach(element => {
|
|
345
|
+
const move = this.createElementMove(element, change);
|
|
346
|
+
if (move) {
|
|
347
|
+
// simply skip invalid changes
|
|
348
|
+
moves.push(move);
|
|
349
|
+
const elementAndBound = this.createElementAndBounds(element, move);
|
|
350
|
+
elementAndBounds.push(elementAndBound);
|
|
351
|
+
}
|
|
352
|
+
});
|
|
353
|
+
this.dispatchActions([sprotty_1.MoveAction.create(moves), protocol_1.ChangeBoundsOperation.create(elementAndBounds)]);
|
|
354
|
+
}
|
|
355
|
+
createElementMove(element, change) {
|
|
356
|
+
const move = {
|
|
357
|
+
elementId: element.id,
|
|
358
|
+
fromPosition: {
|
|
359
|
+
x: element.bounds.x,
|
|
360
|
+
y: element.bounds.y
|
|
361
|
+
},
|
|
362
|
+
toPosition: {
|
|
363
|
+
x: element.bounds.x,
|
|
364
|
+
y: element.bounds.y
|
|
365
|
+
}
|
|
366
|
+
};
|
|
367
|
+
change(element, move);
|
|
368
|
+
return (0, layout_utils_1.toValidElementMove)(element, move, this.movementRestrictor);
|
|
369
|
+
}
|
|
370
|
+
createElementAndBounds(element, move) {
|
|
371
|
+
return {
|
|
372
|
+
elementId: element.id,
|
|
373
|
+
newPosition: {
|
|
374
|
+
x: move.toPosition.x,
|
|
375
|
+
y: move.toPosition.y
|
|
376
|
+
},
|
|
377
|
+
newSize: {
|
|
378
|
+
width: element.bounds.width,
|
|
379
|
+
height: element.bounds.height
|
|
380
|
+
}
|
|
381
|
+
};
|
|
382
|
+
}
|
|
383
|
+
isActionElement(element) {
|
|
384
|
+
return (0, model_1.isBoundsAwareMoveable)(element);
|
|
385
|
+
}
|
|
386
|
+
};
|
|
387
|
+
AlignElementsActionHandler = __decorate([
|
|
388
|
+
(0, inversify_1.injectable)()
|
|
389
|
+
], AlignElementsActionHandler);
|
|
390
|
+
exports.AlignElementsActionHandler = AlignElementsActionHandler;
|
|
391
|
+
//# sourceMappingURL=layout-elements-action.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"layout-elements-action.js","sourceRoot":"","sources":["../../../src/features/layout/layout-elements-action.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"layout-elements-action.spec.d.ts","sourceRoot":"","sources":["../../../src/features/layout/layout-elements-action.spec.ts"],"names":[],"mappings":"AA2BA,OAAO,OAAO,CAAC;AACf,OAAO,kBAAkB,CAAC"}
|