@eclipse-glsp/client 0.9.0-next.d9bed812 → 0.9.0-next.eb280175
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +642 -277
- package/README.md +2 -1
- package/css/command-palette.css +9 -5
- package/css/decoration.css +3 -2
- package/css/glsp-sprotty.css +16 -7
- package/css/tool-palette.css +44 -27
- package/lib/base/action-dispatcher.d.ts +18 -2
- package/lib/base/action-dispatcher.d.ts.map +1 -1
- package/lib/base/action-dispatcher.js +41 -61
- package/lib/base/action-dispatcher.js.map +1 -1
- package/lib/base/actions/focus-change-action.d.ts +1 -1
- package/lib/base/actions/focus-change-action.d.ts.map +1 -1
- package/lib/base/actions/focus-change-action.js +4 -5
- package/lib/base/actions/focus-change-action.js.map +1 -1
- package/lib/base/{args.d.ts → argumentable.d.ts} +4 -6
- package/lib/base/argumentable.d.ts.map +1 -0
- package/lib/base/{args.js → argumentable.js} +1 -1
- package/lib/base/argumentable.js.map +1 -0
- package/lib/base/auto-complete/auto-complete-actions.d.ts +1 -1
- package/lib/base/auto-complete/auto-complete-actions.d.ts.map +1 -1
- package/lib/base/auto-complete/auto-complete-actions.js.map +1 -1
- package/lib/base/auto-complete/auto-complete-widget.d.ts +5 -5
- package/lib/base/auto-complete/auto-complete-widget.d.ts.map +1 -1
- package/lib/base/auto-complete/auto-complete-widget.js +121 -152
- package/lib/base/auto-complete/auto-complete-widget.js.map +1 -1
- package/lib/base/auto-complete/validation-decorator.d.ts +3 -18
- package/lib/base/auto-complete/validation-decorator.d.ts.map +1 -1
- package/lib/base/auto-complete/validation-decorator.js +49 -65
- package/lib/base/auto-complete/validation-decorator.js.map +1 -1
- package/lib/base/command-stack.d.ts +1 -1
- package/lib/base/command-stack.d.ts.map +1 -1
- package/lib/base/command-stack.js +19 -37
- package/lib/base/command-stack.js.map +1 -1
- package/lib/base/container-modules.d.ts +40 -0
- package/lib/base/container-modules.d.ts.map +1 -0
- package/lib/base/container-modules.js +100 -0
- package/lib/base/container-modules.js.map +1 -0
- package/lib/base/di.config.d.ts +13 -3
- package/lib/base/di.config.d.ts.map +1 -1
- package/lib/base/di.config.js +50 -33
- package/lib/base/di.config.js.map +1 -1
- package/lib/base/drag-aware-mouse-listener.d.ts +3 -2
- package/lib/base/drag-aware-mouse-listener.d.ts.map +1 -1
- package/lib/base/drag-aware-mouse-listener.js +23 -62
- package/lib/base/drag-aware-mouse-listener.js.map +1 -1
- package/lib/base/editor-context-service.d.ts +42 -0
- package/lib/base/editor-context-service.d.ts.map +1 -0
- package/lib/base/editor-context-service.js +109 -0
- package/lib/base/editor-context-service.js.map +1 -0
- package/lib/base/focus-tracker.d.ts +17 -1
- package/lib/base/focus-tracker.d.ts.map +1 -1
- package/lib/base/focus-tracker.js +19 -39
- package/lib/base/focus-tracker.js.map +1 -1
- package/lib/base/model/model-registry.d.ts +5 -0
- package/lib/base/model/model-registry.d.ts.map +1 -0
- package/lib/base/model/model-registry.js +43 -0
- package/lib/base/model/model-registry.js.map +1 -0
- package/lib/base/model/update-model-command.d.ts +20 -6
- package/lib/base/model/update-model-command.d.ts.map +1 -1
- package/lib/base/model/update-model-command.js +69 -94
- package/lib/base/model/update-model-command.js.map +1 -1
- package/lib/base/model-initialization-constraint.d.ts +17 -2
- package/lib/base/model-initialization-constraint.d.ts.map +1 -1
- package/lib/base/model-initialization-constraint.js +34 -54
- package/lib/base/model-initialization-constraint.js.map +1 -1
- package/lib/base/selection-clearing-mouse-listener.d.ts +1 -1
- package/lib/base/selection-clearing-mouse-listener.d.ts.map +1 -1
- package/lib/base/selection-clearing-mouse-listener.js +11 -28
- package/lib/base/selection-clearing-mouse-listener.js.map +1 -1
- package/lib/base/source-uri-aware.js +2 -5
- package/lib/base/source-uri-aware.js.map +1 -1
- package/lib/base/tool-manager/glsp-tool-manager.d.ts +2 -2
- package/lib/base/tool-manager/glsp-tool-manager.d.ts.map +1 -1
- package/lib/base/tool-manager/glsp-tool-manager.js +59 -141
- package/lib/base/tool-manager/glsp-tool-manager.js.map +1 -1
- package/lib/base/types.d.ts +3 -1
- package/lib/base/types.d.ts.map +1 -1
- package/lib/base/types.js +23 -21
- package/lib/base/types.js.map +1 -1
- package/lib/base/view/view-registry.d.ts +5 -0
- package/lib/base/view/view-registry.d.ts.map +1 -0
- package/lib/base/view/view-registry.js +43 -0
- package/lib/base/view/view-registry.js.map +1 -0
- package/lib/features/change-bounds/model.d.ts +4 -2
- package/lib/features/change-bounds/model.d.ts.map +1 -1
- package/lib/features/change-bounds/model.js +21 -32
- package/lib/features/change-bounds/model.js.map +1 -1
- package/lib/features/change-bounds/movement-restrictor.d.ts +18 -2
- package/lib/features/change-bounds/movement-restrictor.d.ts.map +1 -1
- package/lib/features/change-bounds/movement-restrictor.js +34 -46
- package/lib/features/change-bounds/movement-restrictor.js.map +1 -1
- package/lib/features/change-bounds/snap.d.ts +17 -1
- package/lib/features/change-bounds/snap.d.ts.map +1 -1
- package/lib/features/change-bounds/snap.js +13 -39
- package/lib/features/change-bounds/snap.js.map +1 -1
- package/lib/features/command-palette/command-palette-tool.d.ts +1 -1
- package/lib/features/command-palette/command-palette-tool.d.ts.map +1 -1
- package/lib/features/command-palette/command-palette-tool.js +30 -38
- package/lib/features/command-palette/command-palette-tool.js.map +1 -1
- package/lib/features/command-palette/di.config.d.ts +2 -2
- package/lib/features/command-palette/di.config.js +6 -6
- package/lib/features/command-palette/di.config.js.map +1 -1
- package/lib/features/command-palette/server-command-palette-provider.d.ts +19 -3
- package/lib/features/command-palette/server-command-palette-provider.d.ts.map +1 -1
- package/lib/features/command-palette/server-command-palette-provider.js +31 -36
- package/lib/features/command-palette/server-command-palette-provider.js.map +1 -1
- package/lib/features/context-menu/delete-element-context-menu.d.ts +2 -2
- package/lib/features/context-menu/delete-element-context-menu.d.ts.map +1 -1
- package/lib/features/context-menu/delete-element-context-menu.js +24 -72
- package/lib/features/context-menu/delete-element-context-menu.js.map +1 -1
- package/lib/features/context-menu/di.config.d.ts +2 -2
- package/lib/features/context-menu/di.config.d.ts.map +1 -1
- package/lib/features/context-menu/di.config.js +14 -18
- package/lib/features/context-menu/di.config.js.map +1 -1
- package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.d.ts +2 -2
- package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.d.ts.map +1 -1
- package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js +29 -67
- package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js.map +1 -1
- package/lib/features/context-menu/server-context-menu-provider.d.ts +19 -3
- package/lib/features/context-menu/server-context-menu-provider.d.ts.map +1 -1
- package/lib/features/context-menu/server-context-menu-provider.js +31 -32
- package/lib/features/context-menu/server-context-menu-provider.js.map +1 -1
- package/lib/features/copy-paste/copy-paste-context-menu.d.ts +22 -2
- package/lib/features/copy-paste/copy-paste-context-menu.d.ts.map +1 -1
- package/lib/features/copy-paste/copy-paste-context-menu.js +99 -72
- package/lib/features/copy-paste/copy-paste-context-menu.js.map +1 -1
- package/lib/features/copy-paste/copy-paste-handler.d.ts +21 -4
- package/lib/features/copy-paste/copy-paste-handler.d.ts.map +1 -1
- package/lib/features/copy-paste/copy-paste-handler.js +70 -70
- package/lib/features/copy-paste/copy-paste-handler.js.map +1 -1
- package/lib/features/copy-paste/di.config.d.ts +2 -2
- package/lib/features/copy-paste/di.config.d.ts.map +1 -1
- package/lib/features/copy-paste/di.config.js +11 -11
- package/lib/features/copy-paste/di.config.js.map +1 -1
- package/lib/features/decoration/decoration-placer.d.ts +17 -1
- package/lib/features/decoration/decoration-placer.d.ts.map +1 -1
- package/lib/features/decoration/decoration-placer.js +14 -47
- package/lib/features/decoration/decoration-placer.js.map +1 -1
- package/lib/features/decoration/di.config.d.ts +2 -2
- package/lib/features/decoration/di.config.d.ts.map +1 -1
- package/lib/features/decoration/di.config.js +4 -6
- package/lib/features/decoration/di.config.js.map +1 -1
- package/lib/features/edit-label/di.config.d.ts +1 -1
- package/lib/features/edit-label/di.config.js +7 -7
- package/lib/features/edit-label/di.config.js.map +1 -1
- package/lib/features/edit-label/edit-label-tool.d.ts +2 -2
- package/lib/features/edit-label/edit-label-tool.js +20 -43
- package/lib/features/edit-label/edit-label-tool.js.map +1 -1
- package/lib/features/edit-label/edit-label-validator.d.ts +18 -3
- package/lib/features/edit-label/edit-label-validator.d.ts.map +1 -1
- package/lib/features/edit-label/edit-label-validator.js +40 -62
- package/lib/features/edit-label/edit-label-validator.js.map +1 -1
- package/lib/features/hints/di.config.d.ts +1 -16
- package/lib/features/hints/di.config.d.ts.map +1 -1
- package/lib/features/hints/di.config.js +9 -9
- package/lib/features/hints/di.config.js.map +1 -1
- package/lib/features/hints/model.d.ts +3 -2
- package/lib/features/hints/model.d.ts.map +1 -1
- package/lib/features/hints/model.js +2 -2
- package/lib/features/hints/model.js.map +1 -1
- package/lib/features/hints/type-hints.d.ts +21 -49
- package/lib/features/hints/type-hints.d.ts.map +1 -1
- package/lib/features/hints/type-hints.js +83 -142
- package/lib/features/hints/type-hints.js.map +1 -1
- package/lib/features/hover/di.config.d.ts +2 -2
- package/lib/features/hover/di.config.d.ts.map +1 -1
- package/lib/features/hover/di.config.js +8 -8
- package/lib/features/hover/di.config.js.map +1 -1
- package/lib/features/hover/hover.d.ts +18 -2
- package/lib/features/hover/hover.d.ts.map +1 -1
- package/lib/features/hover/hover.js +37 -75
- package/lib/features/hover/hover.js.map +1 -1
- package/lib/features/layout/di.config.d.ts +6 -2
- package/lib/features/layout/di.config.d.ts.map +1 -1
- package/lib/features/layout/di.config.js +47 -7
- package/lib/features/layout/di.config.js.map +1 -1
- package/lib/features/layout/freeform-layout.d.ts +16 -0
- package/lib/features/layout/freeform-layout.d.ts.map +1 -0
- package/lib/features/layout/freeform-layout.js +107 -0
- package/lib/features/layout/freeform-layout.js.map +1 -0
- package/lib/features/layout/layout-commands.d.ts +26 -10
- package/lib/features/layout/layout-commands.d.ts.map +1 -1
- package/lib/features/layout/layout-commands.js +189 -264
- package/lib/features/layout/layout-commands.js.map +1 -1
- package/lib/features/layout/layout-commands.spec.d.ts +2 -17
- package/lib/features/layout/layout-commands.spec.d.ts.map +1 -1
- package/lib/features/layout/layout-commands.spec.js +124 -117
- package/lib/features/layout/layout-commands.spec.js.map +1 -1
- package/lib/features/layout/vbox-layout.d.ts +25 -0
- package/lib/features/layout/vbox-layout.d.ts.map +1 -0
- package/lib/features/layout/vbox-layout.js +188 -0
- package/lib/features/layout/vbox-layout.js.map +1 -0
- package/lib/features/model-source-watcher/di.config.d.ts +1 -16
- package/lib/features/model-source-watcher/di.config.d.ts.map +1 -1
- package/lib/features/model-source-watcher/di.config.js +7 -7
- package/lib/features/model-source-watcher/di.config.js.map +1 -1
- package/lib/features/model-source-watcher/model-source-changed-action-handler.d.ts +17 -2
- package/lib/features/model-source-watcher/model-source-changed-action-handler.d.ts.map +1 -1
- package/lib/features/model-source-watcher/model-source-changed-action-handler.js +38 -46
- package/lib/features/model-source-watcher/model-source-changed-action-handler.js.map +1 -1
- package/lib/features/mouse-tool/di.config.d.ts +1 -1
- package/lib/features/mouse-tool/di.config.js +5 -5
- package/lib/features/mouse-tool/di.config.js.map +1 -1
- package/lib/features/mouse-tool/mouse-tool.d.ts +3 -2
- package/lib/features/mouse-tool/mouse-tool.d.ts.map +1 -1
- package/lib/features/mouse-tool/mouse-tool.js +74 -217
- package/lib/features/mouse-tool/mouse-tool.js.map +1 -1
- package/lib/features/navigation/di.config.d.ts +1 -16
- package/lib/features/navigation/di.config.d.ts.map +1 -1
- package/lib/features/navigation/di.config.js +11 -10
- package/lib/features/navigation/di.config.js.map +1 -1
- package/lib/features/navigation/navigation-action-handler.d.ts +19 -39
- package/lib/features/navigation/navigation-action-handler.d.ts.map +1 -1
- package/lib/features/navigation/navigation-action-handler.js +118 -255
- package/lib/features/navigation/navigation-action-handler.js.map +1 -1
- package/lib/features/navigation/navigation-target-resolver.d.ts +18 -40
- package/lib/features/navigation/navigation-target-resolver.d.ts.map +1 -1
- package/lib/features/navigation/navigation-target-resolver.js +46 -188
- package/lib/features/navigation/navigation-target-resolver.js.map +1 -1
- package/lib/features/navigation/navigation-target-resolver.spec.d.ts +2 -17
- package/lib/features/navigation/navigation-target-resolver.spec.d.ts.map +1 -1
- package/lib/features/navigation/navigation-target-resolver.spec.js +27 -26
- package/lib/features/navigation/navigation-target-resolver.spec.js.map +1 -1
- package/lib/features/rank/model.d.ts +2 -2
- package/lib/features/rank/model.d.ts.map +1 -1
- package/lib/features/rank/model.js +2 -2
- package/lib/features/rank/model.js.map +1 -1
- package/lib/features/reconnect/model.d.ts +2 -2
- package/lib/features/reconnect/model.d.ts.map +1 -1
- package/lib/features/reconnect/model.js +10 -28
- package/lib/features/reconnect/model.js.map +1 -1
- package/lib/features/save/di.config.d.ts +2 -2
- package/lib/features/save/di.config.d.ts.map +1 -1
- package/lib/features/save/di.config.js +6 -6
- package/lib/features/save/di.config.js.map +1 -1
- package/lib/features/save/model.d.ts +1 -1
- package/lib/features/save/{save.d.ts → save-keylistener.d.ts} +4 -10
- package/lib/features/save/save-keylistener.d.ts.map +1 -0
- package/lib/features/{undo-redo/model.d.ts → save/save-keylistener.js} +16 -12
- package/lib/features/save/save-keylistener.js.map +1 -0
- package/lib/features/select/di.config.d.ts +1 -1
- package/lib/features/select/di.config.js +11 -11
- package/lib/features/select/di.config.js.map +1 -1
- package/lib/features/select/select-feedback-action.d.ts +1 -1
- package/lib/features/select/select-feedback-action.d.ts.map +1 -1
- package/lib/features/select/select-feedback-action.js +45 -71
- package/lib/features/select/select-feedback-action.js.map +1 -1
- package/lib/features/select/select-mouse-listener.d.ts +2 -2
- package/lib/features/select/select-mouse-listener.js +7 -23
- package/lib/features/select/select-mouse-listener.js.map +1 -1
- package/lib/features/select/selection-service.d.ts +19 -3
- package/lib/features/select/selection-service.d.ts.map +1 -1
- package/lib/features/select/selection-service.js +134 -236
- package/lib/features/select/selection-service.js.map +1 -1
- package/lib/features/select/selection-service.spec.js +96 -138
- package/lib/features/select/selection-service.spec.js.map +1 -1
- package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts +21 -4
- package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/change-bounds-tool-feedback.js +117 -149
- package/lib/features/tool-feedback/change-bounds-tool-feedback.js.map +1 -1
- package/lib/features/tool-feedback/creation-tool-feedback.d.ts +19 -2
- package/lib/features/tool-feedback/creation-tool-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/creation-tool-feedback.js +81 -115
- package/lib/features/tool-feedback/creation-tool-feedback.js.map +1 -1
- package/lib/features/tool-feedback/css-feedback.d.ts +21 -3
- package/lib/features/tool-feedback/css-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/css-feedback.js +37 -81
- package/lib/features/tool-feedback/css-feedback.js.map +1 -1
- package/lib/features/tool-feedback/di.config.d.ts +2 -2
- package/lib/features/tool-feedback/di.config.d.ts.map +1 -1
- package/lib/features/tool-feedback/di.config.js +27 -27
- package/lib/features/tool-feedback/di.config.js.map +1 -1
- package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts +21 -4
- package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/edge-edit-tool-feedback.js +160 -204
- package/lib/features/tool-feedback/edge-edit-tool-feedback.js.map +1 -1
- package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts +19 -3
- package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts.map +1 -1
- package/lib/features/tool-feedback/feedback-action-dispatcher.js +35 -72
- package/lib/features/tool-feedback/feedback-action-dispatcher.js.map +1 -1
- package/lib/features/tool-feedback/marquee-tool-feedback.d.ts +18 -2
- package/lib/features/tool-feedback/marquee-tool-feedback.d.ts.map +1 -1
- package/lib/features/tool-feedback/marquee-tool-feedback.js +44 -86
- package/lib/features/tool-feedback/marquee-tool-feedback.js.map +1 -1
- package/lib/features/tool-feedback/model.d.ts +2 -2
- package/lib/features/tool-feedback/model.js +11 -27
- package/lib/features/tool-feedback/model.js.map +1 -1
- package/lib/features/tool-feedback/view.d.ts +22 -6
- package/lib/features/tool-feedback/view.d.ts.map +1 -1
- package/lib/features/tool-feedback/view.js +30 -51
- package/lib/features/tool-feedback/view.js.map +1 -1
- package/lib/features/tool-palette/di.config.d.ts +2 -2
- package/lib/features/tool-palette/di.config.d.ts.map +1 -1
- package/lib/features/tool-palette/di.config.js +6 -6
- package/lib/features/tool-palette/di.config.js.map +1 -1
- package/lib/features/tool-palette/palette-item.d.ts +2 -3
- package/lib/features/tool-palette/palette-item.d.ts.map +1 -1
- package/lib/features/tool-palette/palette-item.js +6 -6
- package/lib/features/tool-palette/palette-item.js.map +1 -1
- package/lib/features/tool-palette/tool-palette.d.ts +22 -6
- package/lib/features/tool-palette/tool-palette.d.ts.map +1 -1
- package/lib/features/tool-palette/tool-palette.js +225 -291
- package/lib/features/tool-palette/tool-palette.js.map +1 -1
- package/lib/features/tools/base-glsp-tool.d.ts +21 -5
- package/lib/features/tools/base-glsp-tool.d.ts.map +1 -1
- package/lib/features/tools/base-glsp-tool.js +37 -59
- package/lib/features/tools/base-glsp-tool.js.map +1 -1
- package/lib/features/tools/change-bounds-tool.d.ts +26 -9
- package/lib/features/tools/change-bounds-tool.d.ts.map +1 -1
- package/lib/features/tools/change-bounds-tool.js +192 -241
- package/lib/features/tools/change-bounds-tool.js.map +1 -1
- package/lib/features/tools/delete-tool.d.ts +20 -4
- package/lib/features/tools/delete-tool.d.ts.map +1 -1
- package/lib/features/tools/delete-tool.js +71 -104
- package/lib/features/tools/delete-tool.js.map +1 -1
- package/lib/features/tools/di.config.d.ts +1 -16
- package/lib/features/tools/di.config.d.ts.map +1 -1
- package/lib/features/tools/di.config.js +19 -19
- package/lib/features/tools/di.config.js.map +1 -1
- package/lib/features/tools/edge-creation-tool.d.ts +20 -5
- package/lib/features/tools/edge-creation-tool.d.ts.map +1 -1
- package/lib/features/tools/edge-creation-tool.js +64 -89
- package/lib/features/tools/edge-creation-tool.js.map +1 -1
- package/lib/features/tools/edge-edit-tool.d.ts +22 -6
- package/lib/features/tools/edge-edit-tool.d.ts.map +1 -1
- package/lib/features/tools/edge-edit-tool.js +125 -189
- package/lib/features/tools/edge-edit-tool.js.map +1 -1
- package/lib/features/tools/marquee-behavior.d.ts +42 -0
- package/lib/features/tools/marquee-behavior.d.ts.map +1 -0
- package/lib/features/tools/marquee-behavior.js +128 -0
- package/lib/features/tools/marquee-behavior.js.map +1 -0
- package/{src/features/undo-redo/model.ts → lib/features/tools/marquee-behavior.spec.d.ts} +3 -12
- package/lib/features/tools/marquee-behavior.spec.d.ts.map +1 -0
- package/lib/features/tools/marquee-behavior.spec.js +165 -0
- package/lib/features/tools/marquee-behavior.spec.js.map +1 -0
- package/lib/features/tools/marquee-mouse-tool.d.ts +27 -15
- package/lib/features/tools/marquee-mouse-tool.d.ts.map +1 -1
- package/lib/features/tools/marquee-mouse-tool.js +90 -184
- package/lib/features/tools/marquee-mouse-tool.js.map +1 -1
- package/lib/features/tools/marquee-tool.d.ts +18 -2
- package/lib/features/tools/marquee-tool.d.ts.map +1 -1
- package/lib/features/tools/marquee-tool.js +32 -73
- package/lib/features/tools/marquee-tool.js.map +1 -1
- package/lib/features/tools/model.d.ts +1 -1
- package/lib/features/tools/model.d.ts.map +1 -1
- package/lib/features/tools/model.js +6 -24
- package/lib/features/tools/model.js.map +1 -1
- package/lib/features/tools/node-creation-tool.d.ts +20 -5
- package/lib/features/tools/node-creation-tool.d.ts.map +1 -1
- package/lib/features/tools/node-creation-tool.js +60 -90
- package/lib/features/tools/node-creation-tool.js.map +1 -1
- package/lib/features/tools/view.d.ts +3 -18
- package/lib/features/tools/view.d.ts.map +1 -1
- package/lib/features/tools/view.js +21 -39
- package/lib/features/tools/view.js.map +1 -1
- package/lib/features/validation/di.config.d.ts +1 -1
- package/lib/features/validation/di.config.js +12 -12
- package/lib/features/validation/di.config.js.map +1 -1
- package/lib/features/validation/issue-marker.d.ts +3 -3
- package/lib/features/validation/issue-marker.d.ts.map +1 -1
- package/lib/features/validation/issue-marker.js +18 -56
- package/lib/features/validation/issue-marker.js.map +1 -1
- package/lib/features/validation/marker-navigator.d.ts +19 -3
- package/lib/features/validation/marker-navigator.d.ts.map +1 -1
- package/lib/features/validation/marker-navigator.js +131 -164
- package/lib/features/validation/marker-navigator.js.map +1 -1
- package/lib/features/validation/marker-navigator.spec.d.ts +2 -17
- package/lib/features/validation/marker-navigator.spec.d.ts.map +1 -1
- package/lib/features/validation/marker-navigator.spec.js +84 -77
- package/lib/features/validation/marker-navigator.spec.js.map +1 -1
- package/lib/features/validation/validate.d.ts +20 -31
- package/lib/features/validation/validate.d.ts.map +1 -1
- package/lib/features/validation/validate.js +148 -299
- package/lib/features/validation/validate.js.map +1 -1
- package/lib/features/viewport/di.config.d.ts +16 -1
- package/lib/features/viewport/di.config.d.ts.map +1 -1
- package/lib/features/viewport/di.config.js +10 -10
- package/lib/features/viewport/di.config.js.map +1 -1
- package/lib/features/viewport/glsp-scroll-mouse-listener.d.ts +3 -2
- package/lib/features/viewport/glsp-scroll-mouse-listener.d.ts.map +1 -1
- package/lib/features/viewport/glsp-scroll-mouse-listener.js +16 -47
- package/lib/features/viewport/glsp-scroll-mouse-listener.js.map +1 -1
- package/lib/index.d.ts +32 -35
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +33 -35
- package/lib/index.js.map +1 -1
- package/lib/lib/model.d.ts +3 -3
- package/lib/lib/model.d.ts.map +1 -1
- package/lib/lib/model.js +11 -27
- package/lib/lib/model.js.map +1 -1
- package/lib/model-source/glsp-diagram-server.d.ts +4 -6
- package/lib/model-source/glsp-diagram-server.d.ts.map +1 -1
- package/lib/model-source/glsp-diagram-server.js +63 -122
- package/lib/model-source/glsp-diagram-server.js.map +1 -1
- package/lib/protocol-reexport.d.ts +45 -0
- package/lib/protocol-reexport.d.ts.map +1 -0
- package/lib/protocol-reexport.js +75 -0
- package/lib/protocol-reexport.js.map +1 -0
- package/lib/utils/argument-utils.d.ts +50 -0
- package/lib/utils/argument-utils.d.ts.map +1 -0
- package/lib/utils/argument-utils.js +110 -0
- package/lib/utils/argument-utils.js.map +1 -0
- package/lib/utils/html-utils.js +2 -2
- package/lib/utils/html-utils.js.map +1 -1
- package/lib/utils/layout-utils.d.ts +4 -3
- package/lib/utils/layout-utils.d.ts.map +1 -1
- package/lib/utils/layout-utils.js +5 -5
- package/lib/utils/layout-utils.js.map +1 -1
- package/lib/utils/marker.d.ts +1 -39
- package/lib/utils/marker.d.ts.map +1 -1
- package/lib/utils/marker.js +14 -61
- package/lib/utils/marker.js.map +1 -1
- package/lib/utils/smodel-util.d.ts +7 -17
- package/lib/utils/smodel-util.d.ts.map +1 -1
- package/lib/utils/smodel-util.js +18 -67
- package/lib/utils/smodel-util.js.map +1 -1
- package/lib/utils/viewpoint-util.d.ts +3 -2
- package/lib/utils/viewpoint-util.d.ts.map +1 -1
- package/lib/utils/viewpoint-util.js +15 -30
- package/lib/utils/viewpoint-util.js.map +1 -1
- package/lib/views/base-view-module.d.ts +9 -0
- package/lib/views/base-view-module.d.ts.map +1 -0
- package/lib/views/base-view-module.js +59 -0
- package/lib/views/base-view-module.js.map +1 -0
- package/lib/views/compartments.d.ts +6 -0
- package/lib/views/compartments.d.ts.map +1 -0
- package/lib/views/compartments.js +43 -0
- package/lib/views/compartments.js.map +1 -0
- package/lib/views/glsp-edge-view.d.ts +27 -0
- package/lib/views/glsp-edge-view.d.ts.map +1 -0
- package/lib/views/glsp-edge-view.js +55 -0
- package/lib/views/glsp-edge-view.js.map +1 -0
- package/lib/{features/model-source-watcher/model-source-changed-action.d.ts → views/index.d.ts} +8 -10
- package/lib/views/index.d.ts.map +1 -0
- package/lib/views/index.js +34 -0
- package/lib/views/index.js.map +1 -0
- package/lib/views/issue-marker-view.d.ts +9 -0
- package/lib/views/issue-marker-view.d.ts.map +1 -0
- package/lib/views/issue-marker-view.js +68 -0
- package/lib/views/issue-marker-view.js.map +1 -0
- package/lib/views/rounded-corner-view.d.ts +13 -0
- package/lib/views/rounded-corner-view.d.ts.map +1 -0
- package/lib/views/rounded-corner-view.js +82 -0
- package/lib/views/rounded-corner-view.js.map +1 -0
- package/lib/views/rounded-corner.d.ts +38 -0
- package/lib/views/rounded-corner.d.ts.map +1 -0
- package/lib/views/rounded-corner.js +62 -0
- package/lib/views/rounded-corner.js.map +1 -0
- package/package.json +24 -32
- package/src/base/action-dispatcher.ts +7 -8
- package/src/base/actions/focus-change-action.ts +2 -2
- package/src/base/{args.ts → argumentable.ts} +3 -4
- package/src/base/auto-complete/auto-complete-actions.ts +2 -2
- package/src/base/auto-complete/auto-complete-widget.ts +66 -48
- package/src/base/auto-complete/validation-decorator.ts +21 -15
- package/src/base/command-stack.ts +4 -7
- package/src/base/container-modules.ts +112 -0
- package/src/base/di.config.ts +44 -27
- package/src/base/drag-aware-mouse-listener.ts +7 -8
- package/src/base/{editor-context.ts → editor-context-service.ts} +13 -40
- package/src/base/focus-tracker.ts +4 -6
- package/src/base/model/model-registry.ts +31 -0
- package/src/base/model/update-model-command.ts +14 -22
- package/src/base/model-initialization-constraint.ts +16 -11
- package/src/base/selection-clearing-mouse-listener.ts +4 -3
- package/src/base/tool-manager/glsp-tool-manager.ts +12 -14
- package/src/base/types.ts +23 -21
- package/src/{features/model-source-watcher/model-source-changed-action.ts → base/view/view-registry.ts} +15 -10
- package/src/features/change-bounds/model.ts +23 -13
- package/src/features/change-bounds/movement-restrictor.ts +28 -18
- package/src/features/change-bounds/snap.ts +6 -5
- package/src/features/command-palette/command-palette-tool.ts +4 -4
- package/src/features/command-palette/di.config.ts +7 -7
- package/src/features/command-palette/server-command-palette-provider.ts +16 -14
- package/src/features/context-menu/delete-element-context-menu.ts +10 -11
- package/src/features/context-menu/di.config.ts +10 -12
- package/src/features/context-menu/selection-service-aware-context-menu-mouse-listener.ts +8 -7
- package/src/features/context-menu/server-context-menu-provider.ts +13 -10
- package/src/features/copy-paste/copy-paste-context-menu.ts +66 -37
- package/src/features/copy-paste/copy-paste-handler.ts +30 -20
- package/src/features/copy-paste/di.config.ts +6 -7
- package/src/features/decoration/decoration-placer.ts +6 -15
- package/src/features/decoration/di.config.ts +4 -6
- package/src/features/edit-label/di.config.ts +5 -5
- package/src/features/edit-label/edit-label-tool.ts +4 -4
- package/src/features/edit-label/edit-label-validator.ts +18 -19
- package/src/features/hints/di.config.ts +6 -7
- package/src/features/hints/model.ts +7 -6
- package/src/features/hints/type-hints.ts +46 -113
- package/src/features/hover/di.config.ts +6 -7
- package/src/features/hover/hover.ts +11 -14
- package/src/features/layout/di.config.ts +32 -6
- package/src/features/layout/freeform-layout.ts +133 -0
- package/src/features/layout/layout-commands.spec.ts +104 -85
- package/src/features/layout/layout-commands.ts +65 -54
- package/src/features/layout/vbox-layout.ts +256 -0
- package/src/features/model-source-watcher/di.config.ts +5 -6
- package/src/features/model-source-watcher/model-source-changed-action-handler.ts +16 -12
- package/src/features/mouse-tool/di.config.ts +4 -4
- package/src/features/mouse-tool/mouse-tool.ts +44 -32
- package/src/features/navigation/di.config.ts +6 -12
- package/src/features/navigation/navigation-action-handler.ts +46 -78
- package/src/features/navigation/navigation-target-resolver.spec.ts +6 -9
- package/src/features/navigation/navigation-target-resolver.ts +16 -94
- package/src/features/rank/model.ts +3 -3
- package/src/features/reconnect/model.ts +9 -11
- package/src/features/save/di.config.ts +4 -5
- package/src/features/save/model.ts +1 -1
- package/src/features/save/{save.ts → save-keylistener.ts} +4 -12
- package/src/features/select/di.config.ts +6 -6
- package/src/features/select/select-feedback-action.ts +6 -8
- package/src/features/select/select-mouse-listener.ts +2 -2
- package/src/features/select/selection-service.spec.ts +25 -19
- package/src/features/select/selection-service.ts +25 -22
- package/src/features/tool-feedback/change-bounds-tool-feedback.ts +56 -39
- package/src/features/tool-feedback/creation-tool-feedback.ts +49 -24
- package/src/features/tool-feedback/css-feedback.ts +16 -13
- package/src/features/tool-feedback/di.config.ts +12 -15
- package/src/features/tool-feedback/edge-edit-tool-feedback.ts +56 -35
- package/src/features/tool-feedback/feedback-action-dispatcher.ts +13 -14
- package/src/features/tool-feedback/marquee-tool-feedback.ts +12 -12
- package/src/features/tool-feedback/model.ts +2 -3
- package/src/features/tool-feedback/view.tsx +20 -13
- package/src/features/tool-palette/di.config.ts +5 -7
- package/src/features/tool-palette/palette-item.ts +5 -7
- package/src/features/tool-palette/tool-palette.ts +118 -110
- package/src/features/tools/base-glsp-tool.ts +12 -12
- package/src/features/tools/change-bounds-tool.ts +83 -53
- package/src/features/tools/delete-tool.ts +23 -20
- package/src/features/tools/di.config.ts +16 -17
- package/src/features/tools/edge-creation-tool.ts +20 -25
- package/src/features/tools/edge-edit-tool.ts +43 -46
- package/src/features/tools/marquee-behavior.spec.ts +175 -0
- package/src/features/tools/marquee-behavior.ts +158 -0
- package/src/features/tools/marquee-mouse-tool.ts +67 -118
- package/src/features/tools/marquee-tool.ts +6 -6
- package/src/features/tools/model.ts +1 -2
- package/src/features/tools/node-creation-tool.ts +16 -23
- package/src/features/tools/view.tsx +21 -15
- package/src/features/validation/di.config.ts +5 -5
- package/src/features/validation/issue-marker.ts +4 -5
- package/src/features/validation/marker-navigator.spec.ts +38 -33
- package/src/features/validation/marker-navigator.ts +39 -26
- package/src/features/validation/validate.ts +25 -59
- package/src/features/viewport/di.config.ts +4 -4
- package/src/features/viewport/glsp-scroll-mouse-listener.ts +5 -5
- package/src/index.ts +53 -38
- package/src/lib/model.ts +4 -4
- package/src/model-source/glsp-diagram-server.ts +19 -33
- package/src/protocol-reexport.ts +64 -0
- package/src/utils/argument-utils.ts +130 -0
- package/src/utils/layout-utils.ts +19 -11
- package/src/utils/marker.ts +8 -32
- package/src/utils/smodel-util.ts +28 -22
- package/src/utils/viewpoint-util.ts +5 -6
- package/src/views/base-view-module.ts +97 -0
- package/src/views/compartments.tsx +37 -0
- package/src/views/glsp-edge-view.tsx +79 -0
- package/src/views/index.ts +21 -0
- package/src/views/issue-marker-view.tsx +65 -0
- package/src/views/rounded-corner-view.tsx +103 -0
- package/src/views/rounded-corner.ts +87 -0
- package/lib/base/actions/context-actions.d.ts +0 -36
- package/lib/base/actions/context-actions.d.ts.map +0 -1
- package/lib/base/actions/context-actions.js +0 -51
- package/lib/base/actions/context-actions.js.map +0 -1
- package/lib/base/actions/edit-mode-action.d.ts +0 -13
- package/lib/base/actions/edit-mode-action.d.ts.map +0 -1
- package/lib/base/actions/edit-mode-action.js +0 -56
- package/lib/base/actions/edit-mode-action.js.map +0 -1
- package/lib/base/actions/edit-validation-actions.d.ts +0 -78
- package/lib/base/actions/edit-validation-actions.d.ts.map +0 -1
- package/lib/base/actions/edit-validation-actions.js +0 -82
- package/lib/base/actions/edit-validation-actions.js.map +0 -1
- package/lib/base/actions/protocol-actions.d.ts +0 -41
- package/lib/base/actions/protocol-actions.d.ts.map +0 -1
- package/lib/base/actions/protocol-actions.js +0 -151
- package/lib/base/actions/protocol-actions.js.map +0 -1
- package/lib/base/args.d.ts.map +0 -1
- package/lib/base/args.js.map +0 -1
- package/lib/base/editor-context.d.ts +0 -46
- package/lib/base/editor-context.d.ts.map +0 -1
- package/lib/base/editor-context.js +0 -174
- package/lib/base/editor-context.js.map +0 -1
- package/lib/base/operations/operation.d.ts +0 -135
- package/lib/base/operations/operation.d.ts.map +0 -1
- package/lib/base/operations/operation.js +0 -231
- package/lib/base/operations/operation.js.map +0 -1
- package/lib/features/copy-paste/copy-paste-actions.d.ts +0 -50
- package/lib/features/copy-paste/copy-paste-actions.d.ts.map +0 -1
- package/lib/features/copy-paste/copy-paste-actions.js +0 -68
- package/lib/features/copy-paste/copy-paste-actions.js.map +0 -1
- package/lib/features/decoration/view.d.ts +0 -8
- package/lib/features/decoration/view.d.ts.map +0 -1
- package/lib/features/decoration/view.js +0 -80
- package/lib/features/decoration/view.js.map +0 -1
- package/lib/features/hints/request-type-hints-action.d.ts +0 -32
- package/lib/features/hints/request-type-hints-action.d.ts.map +0 -1
- package/lib/features/hints/request-type-hints-action.js +0 -30
- package/lib/features/hints/request-type-hints-action.js.map +0 -1
- package/lib/features/model-source-watcher/model-source-changed-action.d.ts.map +0 -1
- package/lib/features/model-source-watcher/model-source-changed-action.js +0 -17
- package/lib/features/model-source-watcher/model-source-changed-action.js.map +0 -1
- package/lib/features/save/save.d.ts.map +0 -1
- package/lib/features/save/save.js +0 -62
- package/lib/features/save/save.js.map +0 -1
- package/lib/features/undo-redo/model.d.ts.map +0 -1
- package/lib/features/undo-redo/model.js +0 -22
- package/lib/features/undo-redo/model.js.map +0 -1
- package/lib/model-source/glsp-server-status.d.ts +0 -30
- package/lib/model-source/glsp-server-status.d.ts.map +0 -1
- package/lib/model-source/glsp-server-status.js +0 -61
- package/lib/model-source/glsp-server-status.js.map +0 -1
- package/lib/utils/array-utils.d.ts +0 -28
- package/lib/utils/array-utils.d.ts.map +0 -1
- package/lib/utils/array-utils.js +0 -61
- package/lib/utils/array-utils.js.map +0 -1
- package/src/base/actions/context-actions.ts +0 -43
- package/src/base/actions/edit-mode-action.ts +0 -33
- package/src/base/actions/edit-validation-actions.ts +0 -102
- package/src/base/actions/protocol-actions.ts +0 -82
- package/src/base/operations/operation.ts +0 -178
- package/src/features/copy-paste/copy-paste-actions.ts +0 -60
- package/src/features/decoration/view.tsx +0 -54
- package/src/features/hints/request-type-hints-action.ts +0 -36
- package/src/model-source/glsp-server-status.ts +0 -38
- package/src/utils/array-utils.ts +0 -55
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (c) 2021 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 { DefaultTypes } from '@eclipse-glsp/protocol';
|
|
17
|
+
import { ContainerModule, interfaces } from 'inversify';
|
|
18
|
+
import {
|
|
19
|
+
CircularNode,
|
|
20
|
+
CircularNodeView,
|
|
21
|
+
configureModelElement,
|
|
22
|
+
DiamondNode,
|
|
23
|
+
DiamondNodeView,
|
|
24
|
+
ExpandButtonView,
|
|
25
|
+
ForeignObjectElement,
|
|
26
|
+
ForeignObjectView,
|
|
27
|
+
HtmlRoot,
|
|
28
|
+
HtmlRootView,
|
|
29
|
+
PreRenderedElement,
|
|
30
|
+
PreRenderedView,
|
|
31
|
+
RectangularNode,
|
|
32
|
+
RectangularNodeView,
|
|
33
|
+
SButton,
|
|
34
|
+
SCompartment,
|
|
35
|
+
SCompartmentView,
|
|
36
|
+
SEdge,
|
|
37
|
+
SGraphView,
|
|
38
|
+
ShapedPreRenderedElement,
|
|
39
|
+
SIssueMarker,
|
|
40
|
+
SLabel,
|
|
41
|
+
SLabelView,
|
|
42
|
+
SNode,
|
|
43
|
+
SPort,
|
|
44
|
+
SRoutingHandle,
|
|
45
|
+
SRoutingHandleView,
|
|
46
|
+
SvgViewportView,
|
|
47
|
+
ViewportRootElement
|
|
48
|
+
} from 'sprotty';
|
|
49
|
+
import { GLSPGraph } from '../lib/model';
|
|
50
|
+
import { GEdgeView } from './glsp-edge-view';
|
|
51
|
+
import { GIssueMarkerView } from './issue-marker-view';
|
|
52
|
+
import { RoundedCornerNodeView } from './rounded-corner-view';
|
|
53
|
+
|
|
54
|
+
interface ContainerContext {
|
|
55
|
+
bind: interfaces.Bind;
|
|
56
|
+
isBound: interfaces.IsBound;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
const baseViewModule = new ContainerModule((bind, unbind, isBound, rebind) => {
|
|
60
|
+
const context = { bind, unbind, isBound, rebind };
|
|
61
|
+
configureDefaultModelElements(context);
|
|
62
|
+
});
|
|
63
|
+
|
|
64
|
+
export function configureDefaultModelElements(context: ContainerContext): void {
|
|
65
|
+
// HTML elements
|
|
66
|
+
configureModelElement(context, DefaultTypes.HTML, HtmlRoot, HtmlRootView);
|
|
67
|
+
|
|
68
|
+
// generic elements
|
|
69
|
+
configureModelElement(context, DefaultTypes.FOREIGN_OBJECT, ForeignObjectElement, ForeignObjectView);
|
|
70
|
+
configureModelElement(context, DefaultTypes.PRE_RENDERED, PreRenderedElement, PreRenderedView);
|
|
71
|
+
configureModelElement(context, DefaultTypes.SHAPE_PRE_RENDERED, ShapedPreRenderedElement, PreRenderedView);
|
|
72
|
+
|
|
73
|
+
// SVG elements
|
|
74
|
+
configureModelElement(context, DefaultTypes.SVG, ViewportRootElement, SvgViewportView);
|
|
75
|
+
|
|
76
|
+
// graph elements
|
|
77
|
+
configureModelElement(context, DefaultTypes.GRAPH, GLSPGraph, SGraphView);
|
|
78
|
+
configureModelElement(context, DefaultTypes.NODE, SNode, RoundedCornerNodeView);
|
|
79
|
+
configureModelElement(context, DefaultTypes.COMPARTMENT, SCompartment, SCompartmentView);
|
|
80
|
+
configureModelElement(context, DefaultTypes.COMPARTMENT_HEADER, SCompartment, SCompartmentView);
|
|
81
|
+
configureModelElement(context, DefaultTypes.EDGE, SEdge, GEdgeView);
|
|
82
|
+
configureModelElement(context, DefaultTypes.PORT, SPort, RectangularNodeView);
|
|
83
|
+
configureModelElement(context, DefaultTypes.ROUTING_POINT, SRoutingHandle, SRoutingHandleView);
|
|
84
|
+
configureModelElement(context, DefaultTypes.VOLATILE_ROUTING_POINT, SRoutingHandle, SRoutingHandleView);
|
|
85
|
+
configureModelElement(context, DefaultTypes.LABEL, SLabel, SLabelView);
|
|
86
|
+
|
|
87
|
+
// UI elements
|
|
88
|
+
configureModelElement(context, DefaultTypes.BUTTON_EXPAND, SButton, ExpandButtonView);
|
|
89
|
+
configureModelElement(context, DefaultTypes.ISSUE_MARKER, SIssueMarker, GIssueMarkerView);
|
|
90
|
+
|
|
91
|
+
// shapes
|
|
92
|
+
configureModelElement(context, DefaultTypes.NODE_CIRCLE, CircularNode, CircularNodeView);
|
|
93
|
+
configureModelElement(context, DefaultTypes.NODE_DIAMOND, DiamondNode, DiamondNodeView);
|
|
94
|
+
configureModelElement(context, DefaultTypes.NODE_RECTANGLE, RectangularNode, RectangularNodeView);
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
export default baseViewModule;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (c) 2021 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 { injectable } from 'inversify';
|
|
17
|
+
import { VNode } from 'snabbdom';
|
|
18
|
+
import { BoundsAware, RenderingContext, SChildElement, SCompartment, ShapeView, svg } from 'sprotty/lib';
|
|
19
|
+
|
|
20
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
21
|
+
const JSX = { createElement: svg };
|
|
22
|
+
|
|
23
|
+
@injectable()
|
|
24
|
+
export class StructureCompartmentView extends ShapeView {
|
|
25
|
+
render(model: Readonly<SCompartment & SChildElement & BoundsAware>, context: RenderingContext): VNode | undefined {
|
|
26
|
+
if (!this.isVisible(model, context)) {
|
|
27
|
+
return undefined;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
return (
|
|
31
|
+
<g>
|
|
32
|
+
<rect class-sprotty-comp={true} class-debug={true} x='0' y='0' width={model.size.width} height={model.size.height}></rect>
|
|
33
|
+
{context.renderChildren(model)}
|
|
34
|
+
</g>
|
|
35
|
+
);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (c) 2021 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 { Point } from '@eclipse-glsp/protocol';
|
|
17
|
+
import { injectable } from 'inversify';
|
|
18
|
+
import { Classes, VNode } from 'snabbdom';
|
|
19
|
+
import { PolylineEdgeView, RenderingContext, SEdge, svg } from 'sprotty';
|
|
20
|
+
import { EdgePadding } from '../utils/argument-utils';
|
|
21
|
+
|
|
22
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
23
|
+
const JSX = { createElement: svg };
|
|
24
|
+
|
|
25
|
+
@injectable()
|
|
26
|
+
export class GEdgeView extends PolylineEdgeView {
|
|
27
|
+
render(edge: Readonly<SEdge>, context: RenderingContext): VNode {
|
|
28
|
+
const router = this.edgeRouterRegistry.get(edge.routerKind);
|
|
29
|
+
const route = router.route(edge);
|
|
30
|
+
if (route.length === 0) {
|
|
31
|
+
return this.renderDanglingEdge('Cannot compute route', edge, context);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
return (
|
|
35
|
+
<g class-sprotty-edge={true} class-mouseover={edge.hoverFeedback} {...this.addtionalClasses(edge, context)}>
|
|
36
|
+
{this.renderLine(edge, route, context)}
|
|
37
|
+
{this.renderAdditionals(edge, route, context)}
|
|
38
|
+
{context.renderChildren(edge, { route })}
|
|
39
|
+
</g>
|
|
40
|
+
);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
protected addtionalClasses(_edge: Readonly<SEdge>, _context: RenderingContext): Classes {
|
|
44
|
+
return {};
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
protected renderLine(_edge: SEdge, segments: Point[], _context: RenderingContext): VNode {
|
|
48
|
+
return <path d={this.createPathForSegments(segments)} />;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
protected renderAdditionals(edge: SEdge, segments: Point[], _context: RenderingContext): VNode[] {
|
|
52
|
+
// for additional padding we draw another transparent path with larger stroke width
|
|
53
|
+
const edgePadding = EdgePadding.from(edge);
|
|
54
|
+
return edgePadding ? [this.renderMouseHandle(segments, edgePadding)] : [];
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
protected renderMouseHandle(segments: Point[], padding: number): VNode {
|
|
58
|
+
return (
|
|
59
|
+
<path
|
|
60
|
+
class-mouse-handle
|
|
61
|
+
d={this.createPathForSegments(segments)}
|
|
62
|
+
style-stroke-width={padding * 2}
|
|
63
|
+
style-stroke='transparent'
|
|
64
|
+
style-stroke-dasharray='none'
|
|
65
|
+
style-stroke-dashoffset='0'
|
|
66
|
+
/>
|
|
67
|
+
);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
protected createPathForSegments(segments: Point[]): string {
|
|
71
|
+
const firstPoint = segments[0];
|
|
72
|
+
let path = `M ${firstPoint.x},${firstPoint.y}`;
|
|
73
|
+
for (let i = 1; i < segments.length; i++) {
|
|
74
|
+
const p = segments[i];
|
|
75
|
+
path += ` L ${p.x},${p.y}`;
|
|
76
|
+
}
|
|
77
|
+
return path;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (c) 2021 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 * from './base-view-module';
|
|
17
|
+
export * from './compartments';
|
|
18
|
+
export * from './glsp-edge-view';
|
|
19
|
+
export * from './issue-marker-view';
|
|
20
|
+
export * from './rounded-corner';
|
|
21
|
+
export * from './rounded-corner-view';
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (c) 2020-2021 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
|
+
/* eslint-disable max-len */
|
|
17
|
+
import { injectable } from 'inversify';
|
|
18
|
+
import { VNode } from 'snabbdom';
|
|
19
|
+
import { IssueMarkerView, RenderingContext, setClass, SIssueMarker, SIssueSeverity, svg } from 'sprotty';
|
|
20
|
+
|
|
21
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
22
|
+
const JSX = { createElement: svg };
|
|
23
|
+
|
|
24
|
+
@injectable()
|
|
25
|
+
export class GIssueMarkerView extends IssueMarkerView {
|
|
26
|
+
render(marker: SIssueMarker, _context: RenderingContext): VNode {
|
|
27
|
+
const maxSeverity = super.getMaxSeverity(marker);
|
|
28
|
+
const group = (
|
|
29
|
+
<g class-sprotty-issue={true}>
|
|
30
|
+
<g>
|
|
31
|
+
{this.getGlspIssueMarkerBackground(maxSeverity)}
|
|
32
|
+
<path d={this.getGlspIssueMarkerPath(maxSeverity)} />
|
|
33
|
+
</g>
|
|
34
|
+
</g>
|
|
35
|
+
);
|
|
36
|
+
setClass(group, 'sprotty-' + maxSeverity, true);
|
|
37
|
+
return group;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
protected getGlspIssueMarkerBackground(severity: SIssueSeverity): VNode {
|
|
41
|
+
switch (severity) {
|
|
42
|
+
case 'warning':
|
|
43
|
+
return <polygon class-sprotty-issue-background={true} points='8 2, 15.9 14.9, 0.2 14.9' />;
|
|
44
|
+
case 'error':
|
|
45
|
+
case 'info':
|
|
46
|
+
return <circle class-sprotty-issue-background={true} r={this.radius} cx={this.radius} cy={this.radius} />;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
protected get radius(): number {
|
|
51
|
+
return 8; // var(--theia-icon-size)=16px => 16/2=8
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
protected getGlspIssueMarkerPath(severity: SIssueSeverity): string {
|
|
55
|
+
switch (severity) {
|
|
56
|
+
// paths used here are svg versions of codicons, resized to var(--theia-icon-size) 16px
|
|
57
|
+
case 'error': // 'codicon-error'
|
|
58
|
+
return 'm 8.8527788,0.00699568 c 1.8523692,0.115773 3.5889642,1.04195762 4.8624692,2.31546152 1.505048,1.620823 2.31546,3.5889653 2.31546,5.9044268 0,1.852369 -0.694637,3.588965 -1.852367,5.094015 -1.157733,1.389277 -2.778554,2.431235 -4.6309235,2.778554 C 7.6950478,16.446772 5.8426784,16.215226 4.2218552,15.289042 2.6010319,14.362857 1.3275281,12.97358 0.63288942,11.236984 -0.06174907,9.5003878 -0.17752216,7.5322456 0.4013433,5.7956494 0.98020876,3.9432802 2.0221665,2.4382302 3.6429898,1.3962725 5.14804,0.35431486 7.0004094,-0.10877742 8.8527788,0.00699568 Z M 9.4316445,14.941722 c 1.5050505,-0.347319 2.8943275,-1.15773 3.9362845,-2.431234 0.926185,-1.273504 1.50505,-2.778554 1.389277,-4.3993771 0,-1.8523692 -0.69464,-3.7047384 -1.968142,-4.9782422 C 11.631331,1.9751379 10.242054,1.2804995 8.6212324,1.1647264 7.1161824,1.0489533 5.4953592,1.3962725 4.2218552,2.3224572 2.9483511,3.2486418 2.0221665,4.5221456 1.5590742,6.1429686 c -0.4630923,1.50505 -0.4630923,3.1258731 0.2315462,4.6309234 0.6946384,1.50505 1.7365963,2.66278 3.1258734,3.473192 1.3892769,0.810411 3.0101002,1.041958 4.5151507,0.694638 z M 8.042367,7.5322456 10.82092,4.6379187 11.631331,5.4483302 8.8527788,8.3426571 11.631331,11.236984 10.82092,12.047395 8.042367,9.1530686 5.2638128,12.047395 4.4534013,11.236984 7.2319555,8.3426571 4.4534013,5.4483302 5.2638128,4.6379187 Z';
|
|
59
|
+
case 'warning': // 'codicon-warning'
|
|
60
|
+
return 'M 7.5587159,0.61312771 H 8.565869 L 16.050847,14.644601 15.54727,15.491525 H 0.55442396 L 0.05084746,14.644601 Z M 8.0622924,2.0780776 1.5157974,14.347033 H 14.585897 Z M 8.7776,13.202541 V 12.058049 H 7.3469848 v 1.144492 z M 7.3469848,10.913557 V 6.3355883 H 8.7776 v 4.5779687 z';
|
|
61
|
+
case 'info': // 'codicon-info'
|
|
62
|
+
return 'M 8.7624795,0.01729008 A 7.8878137,7.8878137 0 0 1 13.625085,2.3592747 8.1894066,8.1894066 0 0 1 14.158672,13.251418 7.9458123,7.9458123 0 0 1 4.2061071,15.26977 8.1198082,8.1198082 0 0 1 0.58699265,11.209866 8.259005,8.259005 0 0 1 0.32019895,5.7463948 8.1198082,8.1198082 0 0 1 3.533323,1.3500986 7.8878137,7.8878137 0 0 1 8.7624795,0.01729008 Z M 9.3099868,14.921778 A 6.8322386,6.8322386 0 0 0 13.265493,12.520635 7.0410337,7.0410337 0 0 0 12.801504,3.1712556 6.7510406,6.7510406 0 0 0 4.1829077,2.3128758 7.029434,7.029434 0 0 0 4.762894,14.248994 6.7394408,6.7394408 0 0 0 9.3099868,14.921778 Z M 7.3786322,5.7811939 H 8.8285979 V 4.6212213 H 7.3786322 Z M 8.8285979,6.9411665 V 11.581057 H 7.3786322 V 6.9411665 Z';
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (c) 2021 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 { injectable } from 'inversify';
|
|
17
|
+
import { Classes, VNode } from 'snabbdom';
|
|
18
|
+
import { Hoverable, RectangularNodeView, RenderingContext, Selectable, SNode, SPort, SShapeElement, svg } from 'sprotty';
|
|
19
|
+
|
|
20
|
+
import { CornerRadius } from '../utils/argument-utils';
|
|
21
|
+
import { RoundedCornerWrapper } from './rounded-corner';
|
|
22
|
+
|
|
23
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
24
|
+
const JSX = { createElement: svg };
|
|
25
|
+
|
|
26
|
+
@injectable()
|
|
27
|
+
export class RoundedCornerNodeView extends RectangularNodeView {
|
|
28
|
+
render(node: Readonly<SShapeElement & Hoverable & Selectable>, context: RenderingContext): VNode | undefined {
|
|
29
|
+
const cornerRadius = CornerRadius.from(node);
|
|
30
|
+
if (!cornerRadius) {
|
|
31
|
+
return this.renderWithoutRadius(node, context);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
const wrapper = new RoundedCornerWrapper(node, cornerRadius);
|
|
35
|
+
return (
|
|
36
|
+
<g class-node={true}>
|
|
37
|
+
<defs>
|
|
38
|
+
<clipPath id={toClipPathId(node)}>
|
|
39
|
+
<path d={this.renderPath(wrapper, context, this.getClipPathInsets() || 0)}></path>
|
|
40
|
+
</clipPath>
|
|
41
|
+
</defs>
|
|
42
|
+
{this.renderPathNode(wrapper, context)}
|
|
43
|
+
{context.renderChildren(node)}
|
|
44
|
+
</g>
|
|
45
|
+
);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
protected renderWithoutRadius(node: Readonly<SShapeElement & Hoverable & Selectable>, context: RenderingContext): VNode | undefined {
|
|
49
|
+
return super.render(node, context);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
protected getClipPathInsets(): number | undefined {
|
|
53
|
+
return 2;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
protected renderPathNode(wrapper: Readonly<RoundedCornerWrapper>, context: RenderingContext): VNode {
|
|
57
|
+
return (
|
|
58
|
+
<path
|
|
59
|
+
d={this.renderPath(wrapper, context, 0)}
|
|
60
|
+
class-sprotty-node={wrapper.element instanceof SNode}
|
|
61
|
+
class-sprotty-port={wrapper.element instanceof SPort}
|
|
62
|
+
class-mouseover={wrapper.element.hoverFeedback}
|
|
63
|
+
class-selected={wrapper.element.selected}
|
|
64
|
+
{...this.additionalClasses(wrapper.element, context)}
|
|
65
|
+
/>
|
|
66
|
+
);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
protected additionalClasses(_node: Readonly<SShapeElement & Hoverable & Selectable>, _context: RenderingContext): Classes {
|
|
70
|
+
return {};
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
protected renderPath(wrapper: Readonly<RoundedCornerWrapper>, _context: RenderingContext, inset: number): string {
|
|
74
|
+
// Calcualte length of straight line segments
|
|
75
|
+
const topLineLength = Math.max(0, wrapper.size.width - wrapper.cornerRadius.topLeft - wrapper.cornerRadius.topRight);
|
|
76
|
+
const rightLineLength = Math.max(0, wrapper.size.height - wrapper.cornerRadius.topRight - wrapper.cornerRadius.bottomRight);
|
|
77
|
+
const bottomLineLength = Math.max(0, wrapper.size.width - wrapper.cornerRadius.bottomLeft - wrapper.cornerRadius.bottomRight);
|
|
78
|
+
|
|
79
|
+
const path =
|
|
80
|
+
`M${0 + inset},${0 + wrapper.topLeftCorner.radiusY}` +
|
|
81
|
+
`q${0},${-(wrapper.topLeftCorner.radiusY - inset)} ${wrapper.topLeftCorner.radiusX - inset},${-(
|
|
82
|
+
wrapper.topLeftCorner.radiusY - inset
|
|
83
|
+
)}` +
|
|
84
|
+
`h${topLineLength}` +
|
|
85
|
+
`q${wrapper.topRightCorner.radiusX - inset},0 ${wrapper.topRightCorner.radiusX - inset},${
|
|
86
|
+
wrapper.topRightCorner.radiusY - inset
|
|
87
|
+
}` +
|
|
88
|
+
`v${rightLineLength}` +
|
|
89
|
+
`q0,${wrapper.bottomRightCorner.radiusY - inset} ${-(wrapper.bottomRightCorner.radiusX - inset)},${
|
|
90
|
+
wrapper.bottomRightCorner.radiusY - inset
|
|
91
|
+
}` +
|
|
92
|
+
`h${-bottomLineLength}` +
|
|
93
|
+
`q${-(wrapper.bottomLeftCorner.radiusX - inset)},0 ${-(wrapper.bottomLeftCorner.radiusX - inset)},${-(
|
|
94
|
+
wrapper.bottomLeftCorner.radiusY - inset
|
|
95
|
+
)}` +
|
|
96
|
+
'z ';
|
|
97
|
+
return path;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
export function toClipPathId(node: Readonly<SShapeElement & Hoverable & Selectable>): string {
|
|
102
|
+
return `${node.id}_clip_path`;
|
|
103
|
+
}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (c) 2021 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 { Dimension } from '@eclipse-glsp/protocol';
|
|
17
|
+
import { Hoverable, Selectable, SShapeElement } from 'sprotty';
|
|
18
|
+
import { CornerRadius } from '../utils/argument-utils';
|
|
19
|
+
|
|
20
|
+
export interface RoundedCorner {
|
|
21
|
+
radiusX: number;
|
|
22
|
+
radiusY: number;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export class RoundedCornerWrapper {
|
|
26
|
+
protected _topLeftCorner: RoundedCorner;
|
|
27
|
+
protected _topRightCorner: RoundedCorner;
|
|
28
|
+
protected _bottomRightCorner: RoundedCorner;
|
|
29
|
+
protected _bottomLeftCorner: RoundedCorner;
|
|
30
|
+
|
|
31
|
+
constructor(public readonly element: SShapeElement & Hoverable & Selectable, public readonly cornerRadius: CornerRadius) {}
|
|
32
|
+
|
|
33
|
+
get size(): Dimension {
|
|
34
|
+
return this.element.size;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
get topLeftCorner(): RoundedCorner {
|
|
38
|
+
if (!this._topLeftCorner) {
|
|
39
|
+
this._topLeftCorner = {
|
|
40
|
+
radiusX: scaledRadius(this.cornerRadius.topLeft, this.element.size.width / 2),
|
|
41
|
+
radiusY: scaledRadius(this.cornerRadius.topLeft, this.element.size.height / 2)
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
return this._topLeftCorner;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
get topRightCorner(): RoundedCorner {
|
|
48
|
+
if (!this._topRightCorner) {
|
|
49
|
+
this._topRightCorner = {
|
|
50
|
+
radiusX: scaledRadius(this.cornerRadius.topRight, this.element.size.width / 2),
|
|
51
|
+
radiusY: scaledRadius(this.cornerRadius.topRight, this.element.size.height / 2)
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
return this._topRightCorner;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
get bottomRightCorner(): RoundedCorner {
|
|
58
|
+
if (!this._bottomRightCorner) {
|
|
59
|
+
this._bottomRightCorner = {
|
|
60
|
+
radiusX: scaledRadius(this.cornerRadius.bottomRight, this.element.size.width / 2),
|
|
61
|
+
radiusY: scaledRadius(this.cornerRadius.bottomRight, this.element.size.height / 2)
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
return this._bottomRightCorner;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
get bottomLeftCorner(): RoundedCorner {
|
|
68
|
+
if (!this._bottomLeftCorner) {
|
|
69
|
+
this._bottomLeftCorner = {
|
|
70
|
+
radiusX: scaledRadius(this.cornerRadius.bottomLeft, this.element.size.width / 2),
|
|
71
|
+
radiusY: scaledRadius(this.cornerRadius.bottomLeft, this.element.size.height / 2)
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
return this._bottomLeftCorner;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
/*
|
|
79
|
+
* Scales the radius if necessary. (Percentual downscaling if the radius is bigger then the maximal allowed length)
|
|
80
|
+
*/
|
|
81
|
+
export function scaledRadius(radius: number, maximalLength: number): number {
|
|
82
|
+
if (radius <= maximalLength) {
|
|
83
|
+
return radius;
|
|
84
|
+
} else {
|
|
85
|
+
return radius * (maximalLength / radius);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
/********************************************************************************
|
|
2
|
-
* Copyright (c) 2019 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, LabeledAction, RequestAction, ResponseAction } from "sprotty";
|
|
17
|
-
import { Args } from "../args";
|
|
18
|
-
import { EditorContext } from "../editor-context";
|
|
19
|
-
export declare class RequestContextActions implements RequestAction<SetContextActions> {
|
|
20
|
-
readonly contextId: string;
|
|
21
|
-
readonly editorContext: EditorContext;
|
|
22
|
-
readonly requestId: string;
|
|
23
|
-
readonly kind: string;
|
|
24
|
-
static readonly KIND = "requestContextActions";
|
|
25
|
-
constructor(contextId: string, editorContext: EditorContext, requestId?: string, kind?: string);
|
|
26
|
-
}
|
|
27
|
-
export declare class SetContextActions implements ResponseAction {
|
|
28
|
-
readonly actions: LabeledAction[];
|
|
29
|
-
readonly responseId: string;
|
|
30
|
-
readonly args?: Args | undefined;
|
|
31
|
-
readonly kind: string;
|
|
32
|
-
static readonly KIND = "setContextActions";
|
|
33
|
-
constructor(actions: LabeledAction[], responseId?: string, args?: Args | undefined, kind?: string);
|
|
34
|
-
}
|
|
35
|
-
export declare function isSetContextActionsAction(action: Action): action is SetContextActions;
|
|
36
|
-
//# sourceMappingURL=context-actions.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"context-actions.d.ts","sourceRoot":"","sources":["../../../src/base/actions/context-actions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,MAAM,EAAqB,aAAa,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAElG,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD,qBAAa,qBAAsB,YAAW,aAAa,CAAC,iBAAiB,CAAC;aAGtD,SAAS,EAAE,MAAM;aACjB,aAAa,EAAE,aAAa;aAC5B,SAAS,EAAE,MAAM;aACjB,IAAI,EAAE,MAAM;IALhC,MAAM,CAAC,QAAQ,CAAC,IAAI,2BAA2B;gBAE3B,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,aAAa,EAC5B,SAAS,GAAE,MAA4B,EACvC,IAAI,GAAE,MAAmC;CAChE;AAED,qBAAa,iBAAkB,YAAW,cAAc;aAGhC,OAAO,EAAE,aAAa,EAAE;aACxB,UAAU,EAAE,MAAM;aAClB,IAAI,CAAC;aACL,IAAI,EAAE,MAAM;IALhC,MAAM,CAAC,QAAQ,CAAC,IAAI,uBAAuB;gBAEvB,OAAO,EAAE,aAAa,EAAE,EACxB,UAAU,GAAE,MAAW,EACvB,IAAI,CAAC,kBAAM,EACX,IAAI,GAAE,MAA+B;CAE5D;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,IAAI,iBAAiB,CAGrF"}
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isSetContextActionsAction = exports.SetContextActions = exports.RequestContextActions = void 0;
|
|
4
|
-
/********************************************************************************
|
|
5
|
-
* Copyright (c) 2019 EclipseSource and others.
|
|
6
|
-
*
|
|
7
|
-
* This program and the accompanying materials are made available under the
|
|
8
|
-
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
9
|
-
* http://www.eclipse.org/legal/epl-2.0.
|
|
10
|
-
*
|
|
11
|
-
* This Source Code may also be made available under the following Secondary
|
|
12
|
-
* Licenses when the conditions for such availability set forth in the Eclipse
|
|
13
|
-
* Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
14
|
-
* with the GNU Classpath Exception which is available at
|
|
15
|
-
* https://www.gnu.org/software/classpath/license.html.
|
|
16
|
-
*
|
|
17
|
-
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
18
|
-
********************************************************************************/
|
|
19
|
-
var sprotty_1 = require("sprotty");
|
|
20
|
-
var RequestContextActions = /** @class */ (function () {
|
|
21
|
-
function RequestContextActions(contextId, editorContext, requestId, kind) {
|
|
22
|
-
if (requestId === void 0) { requestId = sprotty_1.generateRequestId(); }
|
|
23
|
-
if (kind === void 0) { kind = RequestContextActions.KIND; }
|
|
24
|
-
this.contextId = contextId;
|
|
25
|
-
this.editorContext = editorContext;
|
|
26
|
-
this.requestId = requestId;
|
|
27
|
-
this.kind = kind;
|
|
28
|
-
}
|
|
29
|
-
RequestContextActions.KIND = "requestContextActions";
|
|
30
|
-
return RequestContextActions;
|
|
31
|
-
}());
|
|
32
|
-
exports.RequestContextActions = RequestContextActions;
|
|
33
|
-
var SetContextActions = /** @class */ (function () {
|
|
34
|
-
function SetContextActions(actions, responseId, args, kind) {
|
|
35
|
-
if (responseId === void 0) { responseId = ''; }
|
|
36
|
-
if (kind === void 0) { kind = SetContextActions.KIND; }
|
|
37
|
-
this.actions = actions;
|
|
38
|
-
this.responseId = responseId;
|
|
39
|
-
this.args = args;
|
|
40
|
-
this.kind = kind;
|
|
41
|
-
}
|
|
42
|
-
SetContextActions.KIND = "setContextActions";
|
|
43
|
-
return SetContextActions;
|
|
44
|
-
}());
|
|
45
|
-
exports.SetContextActions = SetContextActions;
|
|
46
|
-
function isSetContextActionsAction(action) {
|
|
47
|
-
return action !== undefined && (action.kind === SetContextActions.KIND)
|
|
48
|
-
&& action.actions !== undefined;
|
|
49
|
-
}
|
|
50
|
-
exports.isSetContextActionsAction = isSetContextActionsAction;
|
|
51
|
-
//# sourceMappingURL=context-actions.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"context-actions.js","sourceRoot":"","sources":["../../../src/base/actions/context-actions.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,mCAAkG;AAKlG;IAEI,+BACoB,SAAiB,EACjB,aAA4B,EAC5B,SAAuC,EACvC,IAAyC;QADzC,0BAAA,EAAA,YAAoB,2BAAiB,EAAE;QACvC,qBAAA,EAAA,OAAe,qBAAqB,CAAC,IAAI;QAHzC,cAAS,GAAT,SAAS,CAAQ;QACjB,kBAAa,GAAb,aAAa,CAAe;QAC5B,cAAS,GAAT,SAAS,CAA8B;QACvC,SAAI,GAAJ,IAAI,CAAqC;IAAI,CAAC;IALlD,0BAAI,GAAG,uBAAuB,CAAC;IAMnD,4BAAC;CAAA,AAPD,IAOC;AAPY,sDAAqB;AASlC;IAEI,2BACoB,OAAwB,EACxB,UAAuB,EACvB,IAAW,EACX,IAAqC;QAFrC,2BAAA,EAAA,eAAuB;QAEvB,qBAAA,EAAA,OAAe,iBAAiB,CAAC,IAAI;QAHrC,YAAO,GAAP,OAAO,CAAiB;QACxB,eAAU,GAAV,UAAU,CAAa;QACvB,SAAI,GAAJ,IAAI,CAAO;QACX,SAAI,GAAJ,IAAI,CAAiC;IACzD,CAAC;IANe,sBAAI,GAAG,mBAAmB,CAAC;IAO/C,wBAAC;CAAA,AARD,IAQC;AARY,8CAAiB;AAU9B,SAAgB,yBAAyB,CAAC,MAAc;IACpD,OAAO,MAAM,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,iBAAiB,CAAC,IAAI,CAAC;WAC5C,MAAO,CAAC,OAAO,KAAK,SAAS,CAAC;AAC7D,CAAC;AAHD,8DAGC"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { Action } from "sprotty";
|
|
2
|
-
export declare class SetEditModeAction implements Action {
|
|
3
|
-
readonly editMode: string;
|
|
4
|
-
readonly kind: string;
|
|
5
|
-
static readonly KIND = "setEditMode";
|
|
6
|
-
constructor(editMode?: string, kind?: string);
|
|
7
|
-
}
|
|
8
|
-
export declare function isSetEditModeAction(action: Action): action is SetEditModeAction;
|
|
9
|
-
export declare namespace EditMode {
|
|
10
|
-
const READONLY: string;
|
|
11
|
-
const EDITABLE: string;
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=edit-mode-action.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"edit-mode-action.d.ts","sourceRoot":"","sources":["../../../src/base/actions/edit-mode-action.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC,qBACa,iBAAkB,YAAW,MAAM;aAEhB,QAAQ,EAAE,MAAM;aAAsC,IAAI,EAAE,MAAM;IAD9F,MAAM,CAAC,QAAQ,CAAC,IAAI,iBAAiB;gBACT,QAAQ,GAAE,MAA0B,EAAkB,IAAI,GAAE,MAA+B;CAC1H;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,IAAI,iBAAiB,CAG/E;AAED,yBAAiB,QAAQ,CAAC;IACf,MAAM,QAAQ,EAAE,MAAmB,CAAC;IACpC,MAAM,QAAQ,EAAE,MAAmB,CAAC;CAC9C"}
|