@eclipse-glsp/client 1.1.0-RC07 → 1.1.0-RC09

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.
Files changed (75) hide show
  1. package/lib/base/container-modules.d.ts +1 -1
  2. package/lib/base/container-modules.d.ts.map +1 -1
  3. package/lib/base/container-modules.js +42 -40
  4. package/lib/base/container-modules.js.map +1 -1
  5. package/lib/features/{change-bounds/snap.spec.d.ts → svg-metadata/di.config.d.ts} +5 -3
  6. package/lib/features/svg-metadata/di.config.d.ts.map +1 -0
  7. package/lib/features/svg-metadata/di.config.js +26 -0
  8. package/lib/features/svg-metadata/di.config.js.map +1 -0
  9. package/lib/features/svg-metadata/metadata-placer.d.ts +24 -0
  10. package/lib/features/svg-metadata/metadata-placer.d.ts.map +1 -0
  11. package/lib/features/svg-metadata/metadata-placer.js +63 -0
  12. package/lib/features/svg-metadata/metadata-placer.js.map +1 -0
  13. package/lib/features/tool-feedback/creation-tool-feedback.d.ts +1 -1
  14. package/lib/features/tool-feedback/creation-tool-feedback.js +1 -1
  15. package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts +1 -1
  16. package/lib/features/tool-feedback/edge-edit-tool-feedback.js +1 -1
  17. package/lib/features/tool-palette/tool-palette.d.ts +1 -1
  18. package/lib/features/tool-palette/tool-palette.d.ts.map +1 -1
  19. package/lib/features/tool-palette/tool-palette.js +2 -2
  20. package/lib/features/tool-palette/tool-palette.js.map +1 -1
  21. package/lib/features/validation/validate.d.ts +6 -6
  22. package/lib/features/validation/validate.d.ts.map +1 -1
  23. package/lib/features/validation/validate.js +18 -17
  24. package/lib/features/validation/validate.js.map +1 -1
  25. package/lib/index.d.ts +3 -1
  26. package/lib/index.d.ts.map +1 -1
  27. package/lib/index.js +39 -36
  28. package/lib/index.js.map +1 -1
  29. package/package.json +3 -3
  30. package/src/base/container-modules.ts +3 -1
  31. package/{lib/features/tools/marquee-behavior.spec.d.ts → src/features/svg-metadata/di.config.ts} +12 -3
  32. package/src/features/svg-metadata/metadata-placer.ts +51 -0
  33. package/src/features/tool-feedback/creation-tool-feedback.ts +1 -1
  34. package/src/features/tool-feedback/edge-edit-tool-feedback.ts +1 -1
  35. package/src/features/tool-palette/tool-palette.ts +4 -4
  36. package/src/features/validation/validate.ts +16 -19
  37. package/src/index.ts +4 -1
  38. package/lib/features/bounds/freeform-layout.spec.d.ts +0 -3
  39. package/lib/features/bounds/freeform-layout.spec.d.ts.map +0 -1
  40. package/lib/features/bounds/freeform-layout.spec.js +0 -201
  41. package/lib/features/bounds/freeform-layout.spec.js.map +0 -1
  42. package/lib/features/bounds/hbox-layout.spec.d.ts +0 -3
  43. package/lib/features/bounds/hbox-layout.spec.d.ts.map +0 -1
  44. package/lib/features/bounds/hbox-layout.spec.js +0 -161
  45. package/lib/features/bounds/hbox-layout.spec.js.map +0 -1
  46. package/lib/features/bounds/layouter-test-util.spec.d.ts +0 -33
  47. package/lib/features/bounds/layouter-test-util.spec.d.ts.map +0 -1
  48. package/lib/features/bounds/layouter-test-util.spec.js +0 -96
  49. package/lib/features/bounds/layouter-test-util.spec.js.map +0 -1
  50. package/lib/features/bounds/vbox-layout.spec.d.ts +0 -3
  51. package/lib/features/bounds/vbox-layout.spec.d.ts.map +0 -1
  52. package/lib/features/bounds/vbox-layout.spec.js +0 -161
  53. package/lib/features/bounds/vbox-layout.spec.js.map +0 -1
  54. package/lib/features/change-bounds/snap.spec.d.ts.map +0 -1
  55. package/lib/features/change-bounds/snap.spec.js +0 -82
  56. package/lib/features/change-bounds/snap.spec.js.map +0 -1
  57. package/lib/features/layout/layout-elements-action.spec.d.ts +0 -3
  58. package/lib/features/layout/layout-elements-action.spec.d.ts.map +0 -1
  59. package/lib/features/layout/layout-elements-action.spec.js +0 -325
  60. package/lib/features/layout/layout-elements-action.spec.js.map +0 -1
  61. package/lib/features/navigation/navigation-target-resolver.spec.d.ts +0 -3
  62. package/lib/features/navigation/navigation-target-resolver.spec.d.ts.map +0 -1
  63. package/lib/features/navigation/navigation-target-resolver.spec.js +0 -54
  64. package/lib/features/navigation/navigation-target-resolver.spec.js.map +0 -1
  65. package/lib/features/select/selection-service.spec.d.ts +0 -2
  66. package/lib/features/select/selection-service.spec.d.ts.map +0 -1
  67. package/lib/features/select/selection-service.spec.js +0 -363
  68. package/lib/features/select/selection-service.spec.js.map +0 -1
  69. package/lib/features/tools/marquee-behavior.spec.d.ts.map +0 -1
  70. package/lib/features/tools/marquee-behavior.spec.js +0 -165
  71. package/lib/features/tools/marquee-behavior.spec.js.map +0 -1
  72. package/lib/features/validation/marker-navigator.spec.d.ts +0 -3
  73. package/lib/features/validation/marker-navigator.spec.d.ts.map +0 -1
  74. package/lib/features/validation/marker-navigator.spec.js +0 -169
  75. package/lib/features/validation/marker-navigator.spec.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/lib/index.js CHANGED
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.glspViewportModule = exports.markerNavigatorContextMenuModule = exports.sourceModelWatcherModule = exports.glspDecorationModule = exports.markerNavigatorModule = exports.navigationModule = exports.enableDefaultToolsOnFocusLossModule = exports.toolsModule = exports.glspHoverModule = exports.glspEditLabelModule = exports.layoutModule = exports.glspMouseToolModule = exports.glspSelectModule = exports.copyPasteContextMenuModule = exports.glspServerCopyPasteModule = exports.glspContextMenuModule = exports.glspCommandPaletteModule = exports.modelHintsModule = exports.defaultGLSPModule = exports.toolFeedbackModule = exports.paletteModule = exports.saveModule = exports.validationModule = exports.configureMarqueeTool = exports.configureServerActions = void 0;
17
+ exports.svgMetadataModule = exports.glspViewportModule = exports.markerNavigatorContextMenuModule = exports.sourceModelWatcherModule = exports.glspDecorationModule = exports.markerNavigatorModule = exports.navigationModule = exports.enableDefaultToolsOnFocusLossModule = exports.toolsModule = exports.glspHoverModule = exports.glspEditLabelModule = exports.layoutModule = exports.glspMouseToolModule = exports.glspSelectModule = exports.copyPasteContextMenuModule = exports.glspServerCopyPasteModule = exports.glspContextMenuModule = exports.glspCommandPaletteModule = exports.modelHintsModule = exports.defaultGLSPModule = exports.toolFeedbackModule = exports.paletteModule = exports.saveModule = exports.validationModule = exports.configureMarqueeTool = exports.configureServerActions = void 0;
18
18
  /********************************************************************************
19
19
  * Copyright (c) 2019-2023 EclipseSource and others.
20
20
  *
@@ -41,37 +41,39 @@ Object.defineProperty(exports, "copyPasteContextMenuModule", { enumerable: true,
41
41
  Object.defineProperty(exports, "glspServerCopyPasteModule", { enumerable: true, get: function () { return di_config_4.glspServerCopyPasteModule; } });
42
42
  const di_config_5 = require("./features/decoration/di.config");
43
43
  exports.glspDecorationModule = di_config_5.default;
44
- const di_config_6 = require("./features/edit-label/di.config");
45
- exports.glspEditLabelModule = di_config_6.default;
46
- const di_config_7 = require("./features/hints/di.config");
47
- exports.modelHintsModule = di_config_7.default;
48
- const di_config_8 = require("./features/hover/di.config");
49
- exports.glspHoverModule = di_config_8.default;
50
- const di_config_9 = require("./features/layout/di.config");
51
- exports.layoutModule = di_config_9.default;
52
- const di_config_10 = require("./features/mouse-tool/di.config");
53
- exports.glspMouseToolModule = di_config_10.default;
54
- const di_config_11 = require("./features/navigation/di.config");
55
- exports.navigationModule = di_config_11.default;
56
- const di_config_12 = require("./features/save/di.config");
57
- exports.saveModule = di_config_12.default;
58
- const di_config_13 = require("./features/select/di.config");
59
- exports.glspSelectModule = di_config_13.default;
60
- const di_config_14 = require("./features/source-model-watcher/di.config");
61
- exports.sourceModelWatcherModule = di_config_14.default;
62
- const di_config_15 = require("./features/tool-feedback/di.config");
63
- exports.toolFeedbackModule = di_config_15.default;
64
- const di_config_16 = require("./features/tool-palette/di.config");
65
- exports.paletteModule = di_config_16.default;
66
- const di_config_17 = require("./features/tools/di.config");
67
- Object.defineProperty(exports, "enableDefaultToolsOnFocusLossModule", { enumerable: true, get: function () { return di_config_17.enableDefaultToolsOnFocusLossModule; } });
68
- Object.defineProperty(exports, "toolsModule", { enumerable: true, get: function () { return di_config_17.toolsModule; } });
69
- const di_config_18 = require("./features/validation/di.config");
70
- Object.defineProperty(exports, "markerNavigatorContextMenuModule", { enumerable: true, get: function () { return di_config_18.markerNavigatorContextMenuModule; } });
71
- Object.defineProperty(exports, "markerNavigatorModule", { enumerable: true, get: function () { return di_config_18.markerNavigatorModule; } });
72
- Object.defineProperty(exports, "validationModule", { enumerable: true, get: function () { return di_config_18.validationModule; } });
73
- const di_config_19 = require("./features/viewport/di.config");
74
- exports.glspViewportModule = di_config_19.default;
44
+ const di_config_6 = require("./features/svg-metadata/di.config");
45
+ exports.svgMetadataModule = di_config_6.default;
46
+ const di_config_7 = require("./features/edit-label/di.config");
47
+ exports.glspEditLabelModule = di_config_7.default;
48
+ const di_config_8 = require("./features/hints/di.config");
49
+ exports.modelHintsModule = di_config_8.default;
50
+ const di_config_9 = require("./features/hover/di.config");
51
+ exports.glspHoverModule = di_config_9.default;
52
+ const di_config_10 = require("./features/layout/di.config");
53
+ exports.layoutModule = di_config_10.default;
54
+ const di_config_11 = require("./features/mouse-tool/di.config");
55
+ exports.glspMouseToolModule = di_config_11.default;
56
+ const di_config_12 = require("./features/navigation/di.config");
57
+ exports.navigationModule = di_config_12.default;
58
+ const di_config_13 = require("./features/save/di.config");
59
+ exports.saveModule = di_config_13.default;
60
+ const di_config_14 = require("./features/select/di.config");
61
+ exports.glspSelectModule = di_config_14.default;
62
+ const di_config_15 = require("./features/source-model-watcher/di.config");
63
+ exports.sourceModelWatcherModule = di_config_15.default;
64
+ const di_config_16 = require("./features/tool-feedback/di.config");
65
+ exports.toolFeedbackModule = di_config_16.default;
66
+ const di_config_17 = require("./features/tool-palette/di.config");
67
+ exports.paletteModule = di_config_17.default;
68
+ const di_config_18 = require("./features/tools/di.config");
69
+ Object.defineProperty(exports, "enableDefaultToolsOnFocusLossModule", { enumerable: true, get: function () { return di_config_18.enableDefaultToolsOnFocusLossModule; } });
70
+ Object.defineProperty(exports, "toolsModule", { enumerable: true, get: function () { return di_config_18.toolsModule; } });
71
+ const di_config_19 = require("./features/validation/di.config");
72
+ Object.defineProperty(exports, "markerNavigatorContextMenuModule", { enumerable: true, get: function () { return di_config_19.markerNavigatorContextMenuModule; } });
73
+ Object.defineProperty(exports, "markerNavigatorModule", { enumerable: true, get: function () { return di_config_19.markerNavigatorModule; } });
74
+ Object.defineProperty(exports, "validationModule", { enumerable: true, get: function () { return di_config_19.validationModule; } });
75
+ const di_config_20 = require("./features/viewport/di.config");
76
+ exports.glspViewportModule = di_config_20.default;
75
77
  // ------------------ Base ------------------
76
78
  __exportStar(require("./base/action-dispatcher"), exports);
77
79
  __exportStar(require("./base/actions/focus-change-action"), exports);
@@ -81,8 +83,8 @@ __exportStar(require("./base/auto-complete/auto-complete-widget"), exports);
81
83
  __exportStar(require("./base/auto-complete/validation-decorator"), exports);
82
84
  __exportStar(require("./base/command-stack"), exports);
83
85
  __exportStar(require("./base/container-modules"), exports);
84
- var di_config_20 = require("./base/di.config");
85
- Object.defineProperty(exports, "configureServerActions", { enumerable: true, get: function () { return di_config_20.configureServerActions; } });
86
+ var di_config_21 = require("./base/di.config");
87
+ Object.defineProperty(exports, "configureServerActions", { enumerable: true, get: function () { return di_config_21.configureServerActions; } });
86
88
  __exportStar(require("./base/drag-aware-mouse-listener"), exports);
87
89
  __exportStar(require("./base/editor-context-service"), exports);
88
90
  __exportStar(require("./base/focus-tracker"), exports);
@@ -113,6 +115,7 @@ __exportStar(require("./features/context-menu/server-context-menu-provider"), ex
113
115
  __exportStar(require("./features/copy-paste/copy-paste-context-menu"), exports);
114
116
  __exportStar(require("./features/copy-paste/copy-paste-handler"), exports);
115
117
  __exportStar(require("./features/decoration/decoration-placer"), exports);
118
+ __exportStar(require("./features/svg-metadata/metadata-placer"), exports);
116
119
  __exportStar(require("./features/edit-label/edit-label-tool"), exports);
117
120
  __exportStar(require("./features/edit-label/edit-label-validator"), exports);
118
121
  __exportStar(require("./features/export/glsp-svg-exporter"), exports);
@@ -143,8 +146,8 @@ __exportStar(require("./features/tool-palette/tool-palette"), exports);
143
146
  __exportStar(require("./features/tools/base-glsp-tool"), exports);
144
147
  __exportStar(require("./features/tools/change-bounds-tool"), exports);
145
148
  __exportStar(require("./features/tools/delete-tool"), exports);
146
- var di_config_21 = require("./features/tools/di.config");
147
- Object.defineProperty(exports, "configureMarqueeTool", { enumerable: true, get: function () { return di_config_21.configureMarqueeTool; } });
149
+ var di_config_22 = require("./features/tools/di.config");
150
+ Object.defineProperty(exports, "configureMarqueeTool", { enumerable: true, get: function () { return di_config_22.configureMarqueeTool; } });
148
151
  __exportStar(require("./features/tools/edge-creation-tool"), exports);
149
152
  __exportStar(require("./features/tools/edge-edit-tool"), exports);
150
153
  __exportStar(require("./features/tools/enable-default-tools-on-focus-loss"), exports);
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eclipse-glsp/client",
3
- "version": "1.1.0-RC07",
3
+ "version": "1.1.0-RC09",
4
4
  "description": "A sprotty-based client for GLSP",
5
5
  "keywords": [
6
6
  "eclipse",
@@ -47,7 +47,7 @@
47
47
  "watch": "tsc -w"
48
48
  },
49
49
  "dependencies": {
50
- "@eclipse-glsp/protocol": "1.1.0-RC07",
50
+ "@eclipse-glsp/protocol": "1.1.0-RC09",
51
51
  "autocompleter": "5.1.0",
52
52
  "sprotty": "0.13.0-next.f4445dd.342"
53
53
  },
@@ -57,5 +57,5 @@
57
57
  "publishConfig": {
58
58
  "access": "public"
59
59
  },
60
- "gitHead": "457b217b4d422a9a3eaaadbe93feb353f78559a3"
60
+ "gitHead": "765277249cff41199e8b6e93eaf910fe4835190b"
61
61
  }
@@ -29,6 +29,7 @@ import {
29
29
  routingModule,
30
30
  zorderModule
31
31
  } from 'sprotty';
32
+ import svgMetadataModule from '../features/svg-metadata/di.config';
32
33
  import glspBoundsModule from '../features/bounds/di.config';
33
34
  import glspCommandPaletteModule from '../features/command-palette/di.config';
34
35
  import glspContextMenuModule from '../features/context-menu/di.config';
@@ -83,7 +84,8 @@ export const DEFAULT_MODULES = [
83
84
  toolsModule,
84
85
  enableDefaultToolsOnFocusLossModule,
85
86
  validationModule,
86
- zorderModule
87
+ zorderModule,
88
+ svgMetadataModule
87
89
  ] as const;
88
90
 
89
91
  /**
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2021 EclipseSource and others.
2
+ * Copyright (c) 2023 Business Informatics Group (TU Wien) and others.
3
3
  *
4
4
  * This program and the accompanying materials are made available under the
5
5
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -13,5 +13,14 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
- export {};
17
- //# sourceMappingURL=marquee-behavior.spec.d.ts.map
16
+
17
+ import { ContainerModule } from 'inversify';
18
+ import { TYPES } from '../../base/types';
19
+ import { MetadataPlacer } from './metadata-placer';
20
+
21
+ const svgMetadataModule = new ContainerModule(bind => {
22
+ bind(MetadataPlacer).toSelf().inSingletonScope();
23
+ bind(TYPES.IVNodePostprocessor).toService(MetadataPlacer);
24
+ });
25
+
26
+ export default svgMetadataModule;
@@ -0,0 +1,51 @@
1
+ /********************************************************************************
2
+ * Copyright (c) 2023 Business Informatics Group (TU Wien) 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
+
17
+ import { injectable, inject } from 'inversify';
18
+ import { VNode } from 'snabbdom';
19
+ import { IVNodePostprocessor, SChildElement, SEdge, setAttr, SModelElement, SModelRoot } from 'sprotty';
20
+ import { DOMHelper } from 'sprotty/lib/base/views/dom-helper';
21
+ import { TYPES } from '../../base/types';
22
+
23
+ @injectable()
24
+ export class MetadataPlacer implements IVNodePostprocessor {
25
+ @inject(TYPES.DOMHelper) protected domHelper: DOMHelper;
26
+
27
+ decorate(vnode: VNode, element: SModelElement): VNode {
28
+ if (element instanceof SModelRoot) {
29
+ setAttr(vnode, 'data-svg-metadata-api', true);
30
+ }
31
+
32
+ setAttr(vnode, 'data-svg-metadata-type', element.type);
33
+
34
+ if (element instanceof SChildElement) {
35
+ setAttr(vnode, 'data-svg-metadata-parent-id', this.domHelper.createUniqueDOMElementId(element.parent));
36
+ }
37
+ if (element instanceof SEdge) {
38
+ if (element.source !== undefined) {
39
+ setAttr(vnode, 'data-svg-metadata-edge-source-id', this.domHelper.createUniqueDOMElementId(element.source));
40
+ }
41
+ if (element.target !== undefined) {
42
+ setAttr(vnode, 'data-svg-metadata-edge-target-id', this.domHelper.createUniqueDOMElementId(element.target));
43
+ }
44
+ }
45
+ return vnode;
46
+ }
47
+
48
+ postUpdate(): void {
49
+ // empty
50
+ }
51
+ }
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2019-2022 EclipseSource and others.
2
+ * Copyright (c) 2019-2023 EclipseSource and others.
3
3
  *
4
4
  * This program and the accompanying materials are made available under the
5
5
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2019-2022 EclipseSource and others.
2
+ * Copyright (c) 2019-2023 EclipseSource and others.
3
3
  *
4
4
  * This program and the accompanying materials are made available under the
5
5
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2019-2022 EclipseSource and others.
2
+ * Copyright (c) 2019-2023 EclipseSource and others.
3
3
  *
4
4
  * This program and the accompanying materials are made available under the
5
5
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -13,7 +13,7 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
- import { Action, PaletteItem, RequestContextActions, RequestMarkersAction, SetContextActions } from '@eclipse-glsp/protocol';
16
+ import { Action, MarkersReason, PaletteItem, RequestContextActions, RequestMarkersAction, SetContextActions } from '@eclipse-glsp/protocol';
17
17
  import { inject, injectable, postConstruct } from 'inversify';
18
18
  import {
19
19
  AbstractUIExtension,
@@ -22,8 +22,8 @@ import {
22
22
  IActionHandler,
23
23
  ICommand,
24
24
  IToolManager,
25
- SetUIExtensionVisibilityAction,
26
25
  SModelRoot,
26
+ SetUIExtensionVisibilityAction,
27
27
  TYPES
28
28
  } from 'sprotty';
29
29
  import { codiconCSSClasses } from 'sprotty/lib/utils/codicon';
@@ -222,7 +222,7 @@ export class ToolPalette extends AbstractUIExtension implements IActionHandler,
222
222
  validateActionButton.title = 'Validate model';
223
223
  validateActionButton.onclick = _event => {
224
224
  const modelIds: string[] = [this.modelRootId];
225
- this.actionDispatcher.dispatch(RequestMarkersAction.create(modelIds));
225
+ this.actionDispatcher.dispatch(RequestMarkersAction.create(modelIds, { reason: MarkersReason.BATCH }));
226
226
  };
227
227
  return validateActionButton;
228
228
  }
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2019-2022 EclipseSource and others.
2
+ * Copyright (c) 2019-2023 EclipseSource and others.
3
3
  *
4
4
  * This program and the accompanying materials are made available under the
5
5
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -33,28 +33,25 @@ export class ValidationFeedbackEmitter implements IFeedbackEmitter {
33
33
 
34
34
  @inject(TYPES.IActionDispatcherProvider) protected actionDispatcher: () => Promise<IActionDispatcher>;
35
35
 
36
- private registeredAction: ApplyMarkersAction;
37
-
38
- // eslint-disable-next-line @typescript-eslint/no-empty-function
39
- private constructor() {}
36
+ protected registeredFeedbackByReason: Map<string, ApplyMarkersAction> = new Map();
40
37
 
41
38
  /**
42
39
  * Register the action that should be emitted for visualizing validation feedback.
43
40
  * @param action the action that should be emitted when the model is updated and that will visualize the model validation feedback.
41
+ * @param reason the reason for this validation feedback.
44
42
  */
45
- registerValidationFeedbackAction(action: ApplyMarkersAction): void {
46
- // De-register old action responsible for applying markers and re-applying them when the model is updated
47
- this.feedbackActionDispatcher.deregisterFeedback(this, []);
48
-
49
- // Clear existing markers
50
- if (this.registeredAction !== undefined) {
51
- const deleteMarkersAction = DeleteMarkersAction.create(this.registeredAction.markers);
43
+ registerValidationFeedbackAction(action: ApplyMarkersAction, reason = ''): void {
44
+ // De-register feedback and clear existing markers with the same reason
45
+ const previousFeedbackWithSameReason = this.registeredFeedbackByReason.get(reason);
46
+ if (previousFeedbackWithSameReason) {
47
+ this.feedbackActionDispatcher.deregisterFeedback(this, [previousFeedbackWithSameReason]);
48
+ const deleteMarkersAction = DeleteMarkersAction.create(previousFeedbackWithSameReason.markers);
52
49
  this.actionDispatcher().then(dispatcher => dispatcher.dispatch(deleteMarkersAction));
53
50
  }
54
51
 
55
52
  // Register new action responsible for applying markers and re-applying them when the model is updated
56
- this.feedbackActionDispatcher.registerFeedback(this, [action]);
57
- this.registeredAction = action;
53
+ this.registeredFeedbackByReason.set(reason, action);
54
+ this.feedbackActionDispatcher.registerFeedback(this, [...this.registeredFeedbackByReason.values()]);
58
55
  }
59
56
  }
60
57
 
@@ -80,7 +77,7 @@ export abstract class ExternalMarkerManager {
80
77
  }
81
78
  }
82
79
 
83
- abstract setMarkers(markers: Marker[], sourceUri?: string): void;
80
+ abstract setMarkers(markers: Marker[], reason?: string, sourceUri?: string): void;
84
81
  }
85
82
 
86
83
  @injectable()
@@ -97,14 +94,14 @@ export class SetMarkersActionHandler implements IActionHandler {
97
94
 
98
95
  handle(action: SetMarkersAction): void | Action | ICommand {
99
96
  const markers: Marker[] = action.markers;
100
- this.setMarkers(markers);
97
+ this.setMarkers(markers, action.reason);
101
98
  }
102
99
 
103
- async setMarkers(markers: Marker[]): Promise<void> {
100
+ async setMarkers(markers: Marker[], reason: string | undefined): Promise<void> {
104
101
  const uri = await this.editorContextService.getSourceUri();
105
- this.externalMarkerManager?.setMarkers(markers, uri);
102
+ this.externalMarkerManager?.setMarkers(markers, reason, uri);
106
103
  const applyMarkersAction = ApplyMarkersAction.create(markers);
107
- this.validationFeedbackEmitter.registerValidationFeedbackAction(applyMarkersAction);
104
+ this.validationFeedbackEmitter.registerValidationFeedbackAction(applyMarkersAction, reason);
108
105
  }
109
106
  }
110
107
 
package/src/index.ts CHANGED
@@ -18,6 +18,7 @@ import glspCommandPaletteModule from './features/command-palette/di.config';
18
18
  import glspContextMenuModule from './features/context-menu/di.config';
19
19
  import { copyPasteContextMenuModule, glspServerCopyPasteModule } from './features/copy-paste/di.config';
20
20
  import glspDecorationModule from './features/decoration/di.config';
21
+ import svgMetadataModule from './features/svg-metadata/di.config';
21
22
  import glspEditLabelModule from './features/edit-label/di.config';
22
23
  import modelHintsModule from './features/hints/di.config';
23
24
  import glspHoverModule from './features/hover/di.config';
@@ -73,6 +74,7 @@ export * from './features/context-menu/server-context-menu-provider';
73
74
  export * from './features/copy-paste/copy-paste-context-menu';
74
75
  export * from './features/copy-paste/copy-paste-handler';
75
76
  export * from './features/decoration/decoration-placer';
77
+ export * from './features/svg-metadata/metadata-placer';
76
78
  export * from './features/edit-label/edit-label-tool';
77
79
  export * from './features/edit-label/edit-label-validator';
78
80
  export * from './features/export/glsp-svg-exporter';
@@ -151,5 +153,6 @@ export {
151
153
  glspDecorationModule,
152
154
  sourceModelWatcherModule,
153
155
  markerNavigatorContextMenuModule,
154
- glspViewportModule
156
+ glspViewportModule,
157
+ svgMetadataModule
155
158
  };
@@ -1,3 +0,0 @@
1
- import 'mocha';
2
- import 'reflect-metadata';
3
- //# sourceMappingURL=freeform-layout.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"freeform-layout.spec.d.ts","sourceRoot":"","sources":["../../../src/features/bounds/freeform-layout.spec.ts"],"names":[],"mappings":"AAgBA,OAAO,OAAO,CAAC;AACf,OAAO,kBAAkB,CAAC"}
@@ -1,201 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- /********************************************************************************
4
- * Copyright (c) 2022-2023 STMicroelectronics and others.
5
- *
6
- * This program and the accompanying materials are made available under the
7
- * terms of the Eclipse Public License v. 2.0 which is available at
8
- * http://www.eclipse.org/legal/epl-2.0.
9
- *
10
- * This Source Code may also be made available under the following Secondary
11
- * Licenses when the conditions for such availability set forth in the Eclipse
12
- * Public License v. 2.0 are satisfied: GNU General Public License, version 2
13
- * with the GNU Classpath Exception which is available at
14
- * https://www.gnu.org/software/classpath/license.html.
15
- *
16
- * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
17
- ********************************************************************************/
18
- const chai_1 = require("chai");
19
- require("mocha");
20
- require("reflect-metadata");
21
- const sprotty_1 = require("sprotty");
22
- const layouter_test_util_spec_1 = require("./layouter-test-util.spec");
23
- describe('FreeFormLayouter', () => {
24
- const layoutRegistry = (0, layouter_test_util_spec_1.setupLayoutRegistry)();
25
- const log = new sprotty_1.ConsoleLogger();
26
- const map = new Map();
27
- describe('issue-610', () => {
28
- it('recursive hGrab/vGrab', () => {
29
- /**
30
- * _________________________
31
- * | Category 1 |
32
- * | _______________________ |
33
- * || ||
34
- * || ||
35
- * || ||
36
- * || ||
37
- * ||_______________________||
38
- * | _______________________ |
39
- * ||_left____________right_||
40
- * |_________________________|
41
- *
42
- * This test case checks recursive hGrab/vGrab functionality of nested compartments
43
- * See also issue 610 for details and an example model https://github.com/eclipse-glsp/glsp/issues/610.
44
- */
45
- const model = (0, layouter_test_util_spec_1.gModel)();
46
- const category = (0, layouter_test_util_spec_1.sNode)('category', 'vbox', { width: 410.0, height: 215.0 }, undefined, {
47
- vGrab: false,
48
- hGrab: false,
49
- hAlign: 'center',
50
- prefWidth: 410.0,
51
- prefHeight: 215.0
52
- });
53
- const headerComp = (0, layouter_test_util_spec_1.sComp)('comp:header', 'hbox');
54
- headerComp.children = [(0, layouter_test_util_spec_1.sLabel)('Category 1')];
55
- const childContainer = (0, layouter_test_util_spec_1.sComp)('struct', 'freeform', { hGrab: true, vGrab: true });
56
- const labelContainer = (0, layouter_test_util_spec_1.sComp)('struct', 'hbox', { hGrab: true });
57
- labelContainer.children = [(0, layouter_test_util_spec_1.sLabel)('left text', { hGrab: true }), (0, layouter_test_util_spec_1.sLabel)('right text')];
58
- category.children = [headerComp, childContainer, labelContainer];
59
- model.add(category);
60
- (0, layouter_test_util_spec_1.layout)(layoutRegistry, log, map, model);
61
- // check category
62
- (0, chai_1.expect)(map.get(category).bounds).to.deep.equal({ x: 0, y: 0, width: 410.0, height: 215.0 });
63
- // check header compartment
64
- (0, chai_1.expect)(map.get(category.children[0]).bounds).to.deep.equal({ x: 0, y: 0, width: -1, height: -1 });
65
- // check child freeform compartment
66
- (0, chai_1.expect)(map.get(category.children[1]).bounds).to.deep.equal({ x: 5, y: 5, width: 400.0, height: 205.0 });
67
- // check label compartment
68
- (0, chai_1.expect)(map.get(category.children[2]).bounds).to.deep.equal({ x: 0, y: 0, width: -1, height: -1 });
69
- });
70
- });
71
- describe('issue-694', () => {
72
- it('Structure compartment (hGrab=true, vGrab=true), Left-aligned label (hGrab=true), right-aligned label (hGrab=false)', () => {
73
- /**
74
- * _________________________
75
- * | Category 2 |
76
- * | _______________________ |
77
- * || ||
78
- * || ||
79
- * || Task node ||
80
- * || ||
81
- * ||_______________________||
82
- * | _______________________ |
83
- * ||_left____________right_||
84
- * |_________________________|
85
- */
86
- const model = (0, layouter_test_util_spec_1.gModel)();
87
- const category = (0, layouter_test_util_spec_1.sNode)('category', 'vbox', { width: 500.0, height: 375.0 }, undefined, {
88
- vGrab: false,
89
- hGrab: false,
90
- hAlign: 'center',
91
- prefWidth: 500.0,
92
- prefHeight: 375.0
93
- });
94
- const headerComp = (0, layouter_test_util_spec_1.sComp)('comp:header', 'hbox');
95
- headerComp.children = [(0, layouter_test_util_spec_1.sLabel)('Category 2')];
96
- const childContainer = (0, layouter_test_util_spec_1.sComp)('struct', 'freeform', { hGrab: true, vGrab: true });
97
- const childNode = (0, layouter_test_util_spec_1.sNode)('task', 'hbox', undefined, { x: 170, y: 190 });
98
- childNode.children = [(0, layouter_test_util_spec_1.sLabel)('Task node', undefined, { x: 5.0, y: 5.0 }, { width: 25.0, height: 20.0 })];
99
- childContainer.children = [childNode];
100
- const labelContainer = (0, layouter_test_util_spec_1.sComp)('struct', 'hbox', { hGrab: true });
101
- labelContainer.children = [(0, layouter_test_util_spec_1.sLabel)('left text', { hGrab: true }), (0, layouter_test_util_spec_1.sLabel)('right text')];
102
- category.children = [headerComp, childContainer, labelContainer];
103
- model.add(category);
104
- // layout graph
105
- (0, layouter_test_util_spec_1.layout)(layoutRegistry, log, map, model);
106
- // check category
107
- (0, chai_1.expect)(map.get(category).bounds).to.deep.equal({ x: 0, y: 0, width: 500.0, height: 375.0 });
108
- // check header compartment
109
- (0, chai_1.expect)(map.get(category.children[0]).bounds).to.deep.equal({ x: 0, y: 0, width: -1, height: -1 });
110
- // check child freeform compartment
111
- (0, chai_1.expect)(map.get(category.children[1]).bounds).to.deep.equal({ x: 5.0, y: 5.0, width: 490.0, height: 365.0 });
112
- // check child task node
113
- (0, chai_1.expect)(map.get(category.children[1].children[0]).bounds).to.deep.equal({ x: 170.0, y: 190.0, width: 35.0, height: 30.0 });
114
- // check label compartment
115
- (0, chai_1.expect)(map.get(category.children[2]).bounds).to.deep.equal({ x: 0, y: 0, width: -1, height: -1 });
116
- });
117
- it('Structure compartment (hGrab=true, vGrab=true)', () => {
118
- /**
119
- * _________________________
120
- * | Category 2 |
121
- * | _______________________ |
122
- * || ||
123
- * || Task node ||
124
- * || ||
125
- * || ||
126
- * ||_______________________||
127
- * |_________________________|
128
- */
129
- const model = (0, layouter_test_util_spec_1.gModel)();
130
- const category = (0, layouter_test_util_spec_1.sNode)('category', 'vbox', { width: 500.0, height: 375.0 }, undefined, {
131
- vGrab: false,
132
- hGrab: false,
133
- hAlign: 'center',
134
- prefWidth: 500.0,
135
- prefHeight: 375.0
136
- });
137
- const headerComp = (0, layouter_test_util_spec_1.sComp)('comp:header', 'hbox');
138
- headerComp.children = [(0, layouter_test_util_spec_1.sLabel)('Category 2')];
139
- const childContainer = (0, layouter_test_util_spec_1.sComp)('struct', 'freeform', { hGrab: true, vGrab: true });
140
- const childNode = (0, layouter_test_util_spec_1.sNode)('task', 'hbox', undefined, { x: 55, y: 15 });
141
- childNode.children = [(0, layouter_test_util_spec_1.sLabel)('Task node', undefined, undefined, { width: 50.0, height: 35.0 })];
142
- childContainer.children = [childNode];
143
- category.children = [headerComp, childContainer];
144
- model.add(category);
145
- // layout graph
146
- (0, layouter_test_util_spec_1.layout)(layoutRegistry, log, map, model);
147
- // check category
148
- (0, chai_1.expect)(map.get(category).bounds).to.deep.equal({ x: 0, y: 0, width: 500.0, height: 375.0 });
149
- // check header compartment
150
- (0, chai_1.expect)(map.get(category.children[0]).bounds).to.deep.equal({ x: 0, y: 0, width: -1, height: -1 });
151
- // check child freeform compartment
152
- (0, chai_1.expect)(map.get(category.children[1]).bounds).to.deep.equal({ x: 5.0, y: 5.0, width: 490.0, height: 365.0 });
153
- // check child task node
154
- (0, chai_1.expect)(map.get(category.children[1].children[0]).bounds).to.deep.equal({ x: 55.0, y: 15.0, width: 60.0, height: 45.0 });
155
- });
156
- it('Structure compartment (hGrab=true, vGrab=true, padding*=10)', () => {
157
- /**
158
- * _________________________
159
- * | Category 2 |
160
- * | _______________________ |
161
- * || ||
162
- * || Task node ||
163
- * || ||
164
- * || ||
165
- * ||_______________________||
166
- * |_________________________|
167
- */
168
- const model = (0, layouter_test_util_spec_1.gModel)();
169
- const category = (0, layouter_test_util_spec_1.sNode)('category', 'vbox', { width: 500.0, height: 375.0 }, undefined, {
170
- vGrab: false,
171
- hGrab: false,
172
- hAlign: 'center',
173
- prefWidth: 500.0,
174
- prefHeight: 375.0,
175
- paddingLeft: 10,
176
- paddingRight: 10,
177
- paddingTop: 10,
178
- paddingBottom: 10
179
- });
180
- const headerComp = (0, layouter_test_util_spec_1.sComp)('comp:header', 'hbox');
181
- headerComp.children = [(0, layouter_test_util_spec_1.sLabel)('Category 2')];
182
- const childContainer = (0, layouter_test_util_spec_1.sComp)('struct', 'freeform', { hGrab: true, vGrab: true });
183
- const childNode = (0, layouter_test_util_spec_1.sNode)('task', 'hbox', undefined, { x: 55, y: 15 }, { paddingLeft: 10, paddingRight: 10, paddingTop: 10, paddingBottom: 10 });
184
- childNode.children = [(0, layouter_test_util_spec_1.sLabel)('Task node', undefined, undefined, { width: 50.0, height: 35.0 })];
185
- childContainer.children = [childNode];
186
- category.children = [headerComp, childContainer];
187
- model.add(category);
188
- // layout graph
189
- (0, layouter_test_util_spec_1.layout)(layoutRegistry, log, map, model);
190
- // check category
191
- (0, chai_1.expect)(map.get(category).bounds).to.deep.equal({ x: 0, y: 0, width: 500.0, height: 375.0 });
192
- // check header compartment
193
- (0, chai_1.expect)(map.get(category.children[0]).bounds).to.deep.equal({ x: 0, y: 0, width: -1, height: -1 });
194
- // check child freeform compartment
195
- (0, chai_1.expect)(map.get(category.children[1]).bounds).to.deep.equal({ x: 10.0, y: 10.0, width: 480.0, height: 355.0 });
196
- // check child task node
197
- (0, chai_1.expect)(map.get(category.children[1].children[0]).bounds).to.deep.equal({ x: 55.0, y: 15.0, width: 70.0, height: 55.0 });
198
- });
199
- });
200
- });
201
- //# sourceMappingURL=freeform-layout.spec.js.map