@eclipse-glsp/client 2.1.1 → 2.2.0-next.326

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 (192) hide show
  1. package/css/ghost-element.css +3 -1
  2. package/css/glsp-sprotty.css +4 -5
  3. package/lib/base/action-dispatcher.d.ts +3 -2
  4. package/lib/base/action-dispatcher.d.ts.map +1 -1
  5. package/lib/base/action-dispatcher.js +17 -2
  6. package/lib/base/action-dispatcher.js.map +1 -1
  7. package/lib/base/action-dispatcher.spec.js +2 -2
  8. package/lib/base/action-dispatcher.spec.js.map +1 -1
  9. package/lib/base/action-handler-registry.d.ts +6 -2
  10. package/lib/base/action-handler-registry.d.ts.map +1 -1
  11. package/lib/base/action-handler-registry.js +31 -3
  12. package/lib/base/action-handler-registry.js.map +1 -1
  13. package/lib/base/command-stack.d.ts +8 -16
  14. package/lib/base/command-stack.d.ts.map +1 -1
  15. package/lib/base/command-stack.js +15 -14
  16. package/lib/base/command-stack.js.map +1 -1
  17. package/lib/base/default.module.d.ts +1 -1
  18. package/lib/base/default.module.d.ts.map +1 -1
  19. package/lib/base/default.module.js +16 -3
  20. package/lib/base/default.module.js.map +1 -1
  21. package/lib/base/editor-context-service.d.ts +44 -3
  22. package/lib/base/editor-context-service.d.ts.map +1 -1
  23. package/lib/base/editor-context-service.js +36 -13
  24. package/lib/base/editor-context-service.js.map +1 -1
  25. package/lib/base/feedback/feedback-action-dispatcher.d.ts +28 -1
  26. package/lib/base/feedback/feedback-action-dispatcher.d.ts.map +1 -1
  27. package/lib/base/feedback/feedback-action-dispatcher.js +27 -2
  28. package/lib/base/feedback/feedback-action-dispatcher.js.map +1 -1
  29. package/lib/base/feedback/feedback-command.d.ts +9 -4
  30. package/lib/base/feedback/feedback-command.d.ts.map +1 -1
  31. package/lib/base/feedback/feedback-command.js +14 -3
  32. package/lib/base/feedback/feedback-command.js.map +1 -1
  33. package/lib/base/feedback/index.d.ts +2 -1
  34. package/lib/base/feedback/index.d.ts.map +1 -1
  35. package/lib/base/feedback/index.js +2 -1
  36. package/lib/base/feedback/index.js.map +1 -1
  37. package/lib/base/feedback/set-model-command.d.ts +25 -0
  38. package/lib/base/feedback/set-model-command.d.ts.map +1 -0
  39. package/lib/base/feedback/set-model-command.js +65 -0
  40. package/lib/base/feedback/set-model-command.js.map +1 -0
  41. package/lib/base/feedback/update-model-command.d.ts +17 -6
  42. package/lib/base/feedback/update-model-command.d.ts.map +1 -1
  43. package/lib/base/feedback/update-model-command.js +9 -29
  44. package/lib/base/feedback/update-model-command.js.map +1 -1
  45. package/lib/base/index.d.ts +2 -1
  46. package/lib/base/index.d.ts.map +1 -1
  47. package/lib/base/index.js +2 -1
  48. package/lib/base/index.js.map +1 -1
  49. package/lib/base/model/diagram-loader.d.ts +12 -7
  50. package/lib/base/model/diagram-loader.d.ts.map +1 -1
  51. package/lib/base/model/diagram-loader.js +10 -17
  52. package/lib/base/model/diagram-loader.js.map +1 -1
  53. package/lib/base/model/glsp-model-source.d.ts +1 -1
  54. package/lib/base/model/glsp-model-source.js +1 -1
  55. package/lib/base/ranked.d.ts +11 -1
  56. package/lib/base/ranked.d.ts.map +1 -1
  57. package/lib/base/ranked.js +7 -1
  58. package/lib/base/ranked.js.map +1 -1
  59. package/lib/base/selection-service.d.ts +9 -8
  60. package/lib/base/selection-service.d.ts.map +1 -1
  61. package/lib/base/selection-service.js +11 -14
  62. package/lib/base/selection-service.js.map +1 -1
  63. package/lib/base/selection-service.spec.js +5 -1
  64. package/lib/base/selection-service.spec.js.map +1 -1
  65. package/lib/base/tool-manager/tool-manager.d.ts +10 -8
  66. package/lib/base/tool-manager/tool-manager.d.ts.map +1 -1
  67. package/lib/base/tool-manager/tool-manager.js +25 -22
  68. package/lib/base/tool-manager/tool-manager.js.map +1 -1
  69. package/lib/base/ui-extension-registry.d.ts +23 -0
  70. package/lib/base/ui-extension-registry.d.ts.map +1 -0
  71. package/lib/base/ui-extension-registry.js +51 -0
  72. package/lib/base/ui-extension-registry.js.map +1 -0
  73. package/lib/base/view/key-tool.d.ts +21 -2
  74. package/lib/base/view/key-tool.d.ts.map +1 -1
  75. package/lib/base/view/key-tool.js +21 -3
  76. package/lib/base/view/key-tool.js.map +1 -1
  77. package/lib/base/view/mouse-tool.d.ts +20 -3
  78. package/lib/base/view/mouse-tool.d.ts.map +1 -1
  79. package/lib/base/view/mouse-tool.js +9 -5
  80. package/lib/base/view/mouse-tool.js.map +1 -1
  81. package/lib/default-modules.d.ts.map +1 -1
  82. package/lib/default-modules.js +2 -1
  83. package/lib/default-modules.js.map +1 -1
  84. package/lib/features/bounds/glsp-hidden-bounds-updater.d.ts +6 -4
  85. package/lib/features/bounds/glsp-hidden-bounds-updater.d.ts.map +1 -1
  86. package/lib/features/bounds/glsp-hidden-bounds-updater.js +20 -3
  87. package/lib/features/bounds/glsp-hidden-bounds-updater.js.map +1 -1
  88. package/lib/features/bounds/local-bounds.d.ts +8 -4
  89. package/lib/features/bounds/local-bounds.d.ts.map +1 -1
  90. package/lib/features/bounds/local-bounds.js +9 -5
  91. package/lib/features/bounds/local-bounds.js.map +1 -1
  92. package/lib/features/bounds/set-bounds-feedback-command.d.ts +2 -2
  93. package/lib/features/bounds/set-bounds-feedback-command.d.ts.map +1 -1
  94. package/lib/features/bounds/set-bounds-feedback-command.js +5 -3
  95. package/lib/features/bounds/set-bounds-feedback-command.js.map +1 -1
  96. package/lib/features/change-bounds/position-snapper.d.ts +1 -1
  97. package/lib/features/change-bounds/position-snapper.js +1 -1
  98. package/lib/features/command-palette/command-palette-module.d.ts.map +1 -1
  99. package/lib/features/command-palette/command-palette-module.js +2 -1
  100. package/lib/features/command-palette/command-palette-module.js.map +1 -1
  101. package/lib/features/command-palette/command-palette.d.ts +21 -0
  102. package/lib/features/command-palette/command-palette.d.ts.map +1 -0
  103. package/lib/features/command-palette/command-palette.js +46 -0
  104. package/lib/features/command-palette/command-palette.js.map +1 -0
  105. package/lib/features/command-palette/index.d.ts +1 -0
  106. package/lib/features/command-palette/index.d.ts.map +1 -1
  107. package/lib/features/command-palette/index.js +1 -0
  108. package/lib/features/command-palette/index.js.map +1 -1
  109. package/lib/features/element-template/add-template-element.d.ts +1 -1
  110. package/lib/features/element-template/add-template-element.d.ts.map +1 -1
  111. package/lib/features/element-template/add-template-element.js +6 -5
  112. package/lib/features/element-template/add-template-element.js.map +1 -1
  113. package/lib/features/helper-lines/helper-line-feedback.d.ts +1 -1
  114. package/lib/features/helper-lines/helper-line-feedback.d.ts.map +1 -1
  115. package/lib/features/helper-lines/helper-line-feedback.js +9 -3
  116. package/lib/features/helper-lines/helper-line-feedback.js.map +1 -1
  117. package/lib/features/helper-lines/helper-line-manager-default.d.ts +1 -1
  118. package/lib/features/helper-lines/helper-line-manager-default.js +1 -1
  119. package/lib/features/helper-lines/helper-line-manager.d.ts +1 -1
  120. package/lib/features/hints/type-hint-provider.d.ts +17 -2
  121. package/lib/features/hints/type-hint-provider.d.ts.map +1 -1
  122. package/lib/features/hints/type-hint-provider.js +13 -13
  123. package/lib/features/hints/type-hint-provider.js.map +1 -1
  124. package/lib/features/label-edit-ui/label-edit-ui-module.d.ts +18 -0
  125. package/lib/features/label-edit-ui/label-edit-ui-module.d.ts.map +1 -0
  126. package/lib/features/label-edit-ui/label-edit-ui-module.js +27 -0
  127. package/lib/features/label-edit-ui/label-edit-ui-module.js.map +1 -0
  128. package/lib/features/label-edit-ui/label-edit-ui.d.ts +21 -0
  129. package/lib/features/label-edit-ui/label-edit-ui.d.ts.map +1 -0
  130. package/lib/features/label-edit-ui/label-edit-ui.js +46 -0
  131. package/lib/features/label-edit-ui/label-edit-ui.js.map +1 -0
  132. package/lib/features/navigation/navigation-action-handler.d.ts +15 -0
  133. package/lib/features/navigation/navigation-action-handler.d.ts.map +1 -1
  134. package/lib/features/navigation/navigation-action-handler.js +2 -2
  135. package/lib/features/navigation/navigation-action-handler.js.map +1 -1
  136. package/lib/features/tools/change-bounds/change-bounds-tool-feedback.d.ts +1 -1
  137. package/lib/features/tools/change-bounds/change-bounds-tool-feedback.js +1 -1
  138. package/lib/features/tools/marquee-selection/marquee-behavior.spec.d.ts +1 -1
  139. package/lib/features/tools/marquee-selection/marquee-behavior.spec.js +1 -1
  140. package/lib/features/validation/validate.d.ts +20 -2
  141. package/lib/features/validation/validate.d.ts.map +1 -1
  142. package/lib/features/validation/validate.js +14 -11
  143. package/lib/features/validation/validate.js.map +1 -1
  144. package/lib/utils/gmodel-util.d.ts +2 -1
  145. package/lib/utils/gmodel-util.d.ts.map +1 -1
  146. package/lib/utils/gmodel-util.js +15 -5
  147. package/lib/utils/gmodel-util.js.map +1 -1
  148. package/lib/utils/html-utils.js +1 -1
  149. package/package.json +7 -6
  150. package/src/base/action-dispatcher.spec.ts +5 -4
  151. package/src/base/action-dispatcher.ts +20 -4
  152. package/src/base/action-handler-registry.ts +24 -3
  153. package/src/base/command-stack.ts +17 -29
  154. package/src/base/default.module.ts +22 -4
  155. package/src/base/editor-context-service.ts +61 -16
  156. package/src/base/feedback/feedback-action-dispatcher.ts +50 -2
  157. package/src/base/feedback/feedback-command.ts +16 -5
  158. package/src/base/feedback/index.ts +3 -1
  159. package/src/base/feedback/set-model-command.ts +45 -0
  160. package/src/base/feedback/update-model-command.ts +9 -46
  161. package/src/base/index.ts +2 -1
  162. package/src/base/model/diagram-loader.ts +21 -14
  163. package/src/base/model/glsp-model-source.ts +1 -1
  164. package/src/base/ranked.ts +15 -1
  165. package/src/base/selection-service.spec.ts +8 -2
  166. package/src/base/selection-service.ts +22 -21
  167. package/src/base/tool-manager/tool-manager.ts +27 -23
  168. package/src/base/ui-extension-registry.ts +33 -0
  169. package/src/base/view/key-tool.ts +16 -4
  170. package/src/base/view/mouse-tool.ts +23 -6
  171. package/src/default-modules.ts +1 -1
  172. package/src/features/bounds/glsp-hidden-bounds-updater.ts +27 -5
  173. package/src/features/bounds/local-bounds.ts +24 -7
  174. package/src/features/bounds/set-bounds-feedback-command.ts +5 -3
  175. package/src/features/change-bounds/position-snapper.ts +1 -1
  176. package/src/features/command-palette/command-palette-module.ts +3 -2
  177. package/src/features/command-palette/command-palette.ts +34 -0
  178. package/src/features/command-palette/index.ts +1 -0
  179. package/src/features/element-template/add-template-element.ts +6 -5
  180. package/src/features/helper-lines/helper-line-feedback.ts +9 -3
  181. package/src/features/helper-lines/helper-line-manager-default.ts +1 -1
  182. package/src/features/helper-lines/helper-line-manager.ts +1 -1
  183. package/src/features/hints/type-hint-provider.ts +6 -6
  184. package/src/features/label-edit-ui/label-edit-ui-module.ts +24 -0
  185. package/src/features/label-edit-ui/label-edit-ui.ts +33 -0
  186. package/src/features/navigation/navigation-action-handler.ts +2 -2
  187. package/src/features/tools/change-bounds/change-bounds-tool-feedback.ts +1 -1
  188. package/src/features/tools/marquee-selection/marquee-behavior.spec.ts +1 -1
  189. package/src/features/validation/validate.ts +19 -12
  190. package/src/utils/gmodel-util.ts +16 -5
  191. package/src/utils/html-utils.ts +1 -1
  192. package/lib/tsconfig.tsbuildinfo +0 -1
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  /********************************************************************************
3
- * Copyright (c) 2019-2023 EclipseSource and others.
3
+ * Copyright (c) 2019-2024 EclipseSource and others.
4
4
  *
5
5
  * This program and the accompanying materials are made available under the
6
6
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -23,31 +23,29 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
23
23
  var __metadata = (this && this.__metadata) || function (k, v) {
24
24
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
25
25
  };
26
- var __param = (this && this.__param) || function (paramIndex, decorator) {
27
- return function (target, key) { decorator(target, key, paramIndex); }
28
- };
29
26
  Object.defineProperty(exports, "__esModule", { value: true });
30
27
  exports.DefaultToolsEnablingKeyListener = exports.ToolManagerActionHandler = exports.ToolManager = void 0;
31
- const inversify_1 = require("inversify");
32
28
  const sprotty_1 = require("@eclipse-glsp/sprotty");
29
+ const inversify_1 = require("inversify");
30
+ const editor_context_service_1 = require("../editor-context-service");
31
+ const ranked_1 = require("../ranked");
33
32
  const tool_1 = require("./tool");
34
33
  /**
35
34
  * The default {@link IToolManager} implementation. Allows
36
35
  * registration of tools via Dependency Injection.
37
36
  */
38
37
  let ToolManager = class ToolManager {
39
- constructor(tools = [], defaultTools, contextServiceProvider) {
40
- this.tools = tools;
41
- this.defaultTools = defaultTools;
42
- this.contextServiceProvider = contextServiceProvider;
38
+ constructor() {
43
39
  this.actives = [];
44
- this.registerTools(...this.tools);
45
- this.registerDefaultTools(...this.defaultTools);
40
+ this.tools = [];
41
+ this.defaultTools = [];
42
+ }
43
+ preLoadDiagram() {
44
+ const tools = this.lazyInjector.getAll(sprotty_1.TYPES.ITool);
45
+ const defaultTools = this.lazyInjector.getAll(sprotty_1.TYPES.IDefaultTool);
46
+ this.registerTools(...tools);
47
+ this.registerDefaultTools(...defaultTools);
46
48
  this.enableDefaultTools();
47
- this.contextServiceProvider().then(editorContext => {
48
- editorContext.onEditModeChanged(change => this.editModeChanged(change.newValue, change.oldValue));
49
- this.editorContext = editorContext;
50
- });
51
49
  }
52
50
  get managedTools() {
53
51
  return this.defaultTools.concat(this.tools);
@@ -55,6 +53,9 @@ let ToolManager = class ToolManager {
55
53
  get activeTools() {
56
54
  return this.actives;
57
55
  }
56
+ get rank() {
57
+ return ranked_1.Ranked.DEFAULT_RANK - 100;
58
+ }
58
59
  registerDefaultTools(...tools) {
59
60
  (0, sprotty_1.distinctAdd)(this.defaultTools, ...tools);
60
61
  }
@@ -101,14 +102,16 @@ let ToolManager = class ToolManager {
101
102
  }
102
103
  };
103
104
  exports.ToolManager = ToolManager;
105
+ __decorate([
106
+ (0, inversify_1.inject)(editor_context_service_1.EditorContextService),
107
+ __metadata("design:type", editor_context_service_1.EditorContextService)
108
+ ], ToolManager.prototype, "editorContext", void 0);
109
+ __decorate([
110
+ (0, inversify_1.inject)(sprotty_1.LazyInjector),
111
+ __metadata("design:type", Object)
112
+ ], ToolManager.prototype, "lazyInjector", void 0);
104
113
  exports.ToolManager = ToolManager = __decorate([
105
- (0, inversify_1.injectable)(),
106
- __param(0, (0, inversify_1.multiInject)(sprotty_1.TYPES.ITool)),
107
- __param(0, (0, inversify_1.optional)()),
108
- __param(1, (0, inversify_1.multiInject)(sprotty_1.TYPES.IDefaultTool)),
109
- __param(1, (0, inversify_1.optional)()),
110
- __param(2, (0, inversify_1.inject)(sprotty_1.TYPES.IEditorContextServiceProvider)),
111
- __metadata("design:paramtypes", [Array, Array, Function])
114
+ (0, inversify_1.injectable)()
112
115
  ], ToolManager);
113
116
  let ToolManagerActionHandler = class ToolManagerActionHandler {
114
117
  handle(action) {
@@ -1 +1 @@
1
- {"version":3,"file":"tool-manager.js","sourceRoot":"","sources":["../../../src/base/tool-manager/tool-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-manager.js","sourceRoot":"","sources":["../../../src/base/tool-manager/tool-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ /********************************************************************************
2
+ * Copyright (c) 2024 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 { IUIExtension, LazyInjector, MaybePromise, UIExtensionRegistry } from '@eclipse-glsp/sprotty';
17
+ import { IDiagramStartup } from './model';
18
+ export declare class GLSPUIExtensionRegistry extends UIExtensionRegistry implements IDiagramStartup {
19
+ protected lazyInjector: LazyInjector;
20
+ constructor(extensions?: IUIExtension[]);
21
+ preLoadDiagram(): MaybePromise<void>;
22
+ }
23
+ //# sourceMappingURL=ui-extension-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ui-extension-registry.d.ts","sourceRoot":"","sources":["../../src/base/ui-extension-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAS,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE7G,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C,qBACa,uBAAwB,SAAQ,mBAAoB,YAAW,eAAe;IAEvF,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;gBAEb,UAAU,GAAE,YAAY,EAAO;IAIvD,cAAc,IAAI,YAAY,CAAC,IAAI,CAAC;CAGvC"}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ /********************************************************************************
3
+ * Copyright (c) 2024 EclipseSource and others.
4
+ *
5
+ * This program and the accompanying materials are made available under the
6
+ * terms of the Eclipse Public License v. 2.0 which is available at
7
+ * http://www.eclipse.org/legal/epl-2.0.
8
+ *
9
+ * This Source Code may also be made available under the following Secondary
10
+ * Licenses when the conditions for such availability set forth in the Eclipse
11
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ * with the GNU Classpath Exception which is available at
13
+ * https://www.gnu.org/software/classpath/license.html.
14
+ *
15
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
16
+ ********************************************************************************/
17
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
18
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
19
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
20
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
21
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
22
+ };
23
+ var __metadata = (this && this.__metadata) || function (k, v) {
24
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
25
+ };
26
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
27
+ return function (target, key) { decorator(target, key, paramIndex); }
28
+ };
29
+ Object.defineProperty(exports, "__esModule", { value: true });
30
+ exports.GLSPUIExtensionRegistry = void 0;
31
+ const sprotty_1 = require("@eclipse-glsp/sprotty");
32
+ const inversify_1 = require("inversify");
33
+ let GLSPUIExtensionRegistry = class GLSPUIExtensionRegistry extends sprotty_1.UIExtensionRegistry {
34
+ constructor(extensions = []) {
35
+ super(extensions);
36
+ }
37
+ preLoadDiagram() {
38
+ this.lazyInjector.getAll(sprotty_1.TYPES.IUIExtension).forEach(extension => this.register(extension.id(), extension));
39
+ }
40
+ };
41
+ exports.GLSPUIExtensionRegistry = GLSPUIExtensionRegistry;
42
+ __decorate([
43
+ (0, inversify_1.inject)(sprotty_1.LazyInjector),
44
+ __metadata("design:type", Object)
45
+ ], GLSPUIExtensionRegistry.prototype, "lazyInjector", void 0);
46
+ exports.GLSPUIExtensionRegistry = GLSPUIExtensionRegistry = __decorate([
47
+ (0, inversify_1.injectable)(),
48
+ __param(0, (0, inversify_1.optional)()),
49
+ __metadata("design:paramtypes", [Array])
50
+ ], GLSPUIExtensionRegistry);
51
+ //# sourceMappingURL=ui-extension-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ui-extension-registry.js","sourceRoot":"","sources":["../../src/base/ui-extension-registry.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;;;;AAElF,mDAA6G;AAC7G,yCAAyD;AAIlD,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,6BAAmB;IAI5D,YAAwB,aAA6B,EAAE;QACnD,KAAK,CAAC,UAAU,CAAC,CAAC;IACtB,CAAC;IAED,cAAc;QACV,IAAI,CAAC,YAAY,CAAC,MAAM,CAAe,eAAK,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC;IAC9H,CAAC;CACJ,CAAA;AAXY,0DAAuB;AAEtB;IADT,IAAA,kBAAM,EAAC,sBAAY,CAAC;;6DACgB;kCAF5B,uBAAuB;IADnC,IAAA,sBAAU,GAAE;IAKI,WAAA,IAAA,oBAAQ,GAAE,CAAA;;GAJd,uBAAuB,CAWnC"}
@@ -1,5 +1,24 @@
1
- import { Disposable, KeyListener, KeyTool } from '@eclipse-glsp/sprotty';
2
- export declare class GLSPKeyTool extends KeyTool {
1
+ /********************************************************************************
2
+ * Copyright (c) 2023-2024 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 { Disposable, KeyListener, KeyTool, LazyInjector, MaybePromise } from '@eclipse-glsp/sprotty';
17
+ import { IDiagramStartup } from '../model';
18
+ export declare class GLSPKeyTool extends KeyTool implements IDiagramStartup {
19
+ protected lazyInjector: LazyInjector;
20
+ constructor(keyListeners?: KeyListener[]);
3
21
  registerListener(keyListener: KeyListener): Disposable;
22
+ preLoadDiagram(): MaybePromise<void>;
4
23
  }
5
24
  //# sourceMappingURL=key-tool.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"key-tool.d.ts","sourceRoot":"","sources":["../../../src/base/view/key-tool.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEzE,qBACa,WAAY,SAAQ,OAAO;IACpC,gBAAgB,CAAC,WAAW,EAAE,WAAW,GAAG,UAAU;CAIzD"}
1
+ {"version":3,"file":"key-tool.d.ts","sourceRoot":"","sources":["../../../src/base/view/key-tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAS,MAAM,uBAAuB,CAAC;AAE5G,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,qBACa,WAAY,SAAQ,OAAQ,YAAW,eAAe;IAE/D,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;gBAEb,YAAY,GAAE,WAAW,EAAO;IAIxD,gBAAgB,CAAC,WAAW,EAAE,WAAW,GAAG,UAAU;IAKtD,cAAc,IAAI,YAAY,CAAC,IAAI,CAAC;CAGvC"}
@@ -5,10 +5,16 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
8
14
  Object.defineProperty(exports, "__esModule", { value: true });
9
15
  exports.GLSPKeyTool = void 0;
10
16
  /********************************************************************************
11
- * Copyright (c) 2023 EclipseSource and others.
17
+ * Copyright (c) 2023-2024 EclipseSource and others.
12
18
  *
13
19
  * This program and the accompanying materials are made available under the
14
20
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -22,16 +28,28 @@ exports.GLSPKeyTool = void 0;
22
28
  *
23
29
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
24
30
  ********************************************************************************/
25
- const inversify_1 = require("inversify");
26
31
  const sprotty_1 = require("@eclipse-glsp/sprotty");
32
+ const inversify_1 = require("inversify");
27
33
  let GLSPKeyTool = class GLSPKeyTool extends sprotty_1.KeyTool {
34
+ constructor(keyListeners = []) {
35
+ super(keyListeners);
36
+ }
28
37
  registerListener(keyListener) {
29
38
  super.register(keyListener);
30
39
  return sprotty_1.Disposable.create(() => this.deregister(keyListener));
31
40
  }
41
+ preLoadDiagram() {
42
+ this.lazyInjector.getAll(sprotty_1.TYPES.KeyListener).forEach(listener => this.register(listener));
43
+ }
32
44
  };
33
45
  exports.GLSPKeyTool = GLSPKeyTool;
46
+ __decorate([
47
+ (0, inversify_1.inject)(sprotty_1.LazyInjector),
48
+ __metadata("design:type", Object)
49
+ ], GLSPKeyTool.prototype, "lazyInjector", void 0);
34
50
  exports.GLSPKeyTool = GLSPKeyTool = __decorate([
35
- (0, inversify_1.injectable)()
51
+ (0, inversify_1.injectable)(),
52
+ __param(0, (0, inversify_1.optional)()),
53
+ __metadata("design:paramtypes", [Array])
36
54
  ], GLSPKeyTool);
37
55
  //# sourceMappingURL=key-tool.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"key-tool.js","sourceRoot":"","sources":["../../../src/base/view/key-tool.ts"],"names":[],"mappings":";;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,yCAAuC;AACvC,mDAAyE;AAGlE,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,iBAAO;IACpC,gBAAgB,CAAC,WAAwB;QACrC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC5B,OAAO,oBAAU,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC;IACjE,CAAC;CACJ,CAAA;AALY,kCAAW;sBAAX,WAAW;IADvB,IAAA,sBAAU,GAAE;GACA,WAAW,CAKvB"}
1
+ {"version":3,"file":"key-tool.js","sourceRoot":"","sources":["../../../src/base/view/key-tool.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,mDAA4G;AAC5G,yCAAyD;AAIlD,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,iBAAO;IAIpC,YAAwB,eAA8B,EAAE;QACpD,KAAK,CAAC,YAAY,CAAC,CAAC;IACxB,CAAC;IAED,gBAAgB,CAAC,WAAwB;QACrC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC5B,OAAO,oBAAU,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,cAAc;QACV,IAAI,CAAC,YAAY,CAAC,MAAM,CAAc,eAAK,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1G,CAAC;CACJ,CAAA;AAhBY,kCAAW;AAEV;IADT,IAAA,kBAAM,EAAC,sBAAY,CAAC;;iDACgB;sBAF5B,WAAW;IADvB,IAAA,sBAAU,GAAE;IAKI,WAAA,IAAA,oBAAQ,GAAE,CAAA;;GAJd,WAAW,CAgBvB"}
@@ -1,13 +1,30 @@
1
- import { Disposable, MouseListener, MouseTool, GModelElement, GModelRoot } from '@eclipse-glsp/sprotty';
1
+ /********************************************************************************
2
+ * Copyright (c) 2019-2024 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 { Disposable, GModelElement, GModelRoot, LazyInjector, MaybePromise, MouseListener, MouseTool } from '@eclipse-glsp/sprotty';
17
+ import { IDiagramStartup } from '../model';
2
18
  /**
3
19
  * Custom helper type to declare the explicit mouse listener methods
4
20
  * of {@link MouseListener} i.e. omitting the `decorate` method.
5
21
  */
6
22
  type MouseListenerMethods = keyof Omit<MouseListener, 'decorate'>;
7
- export declare class GLSPMouseTool extends MouseTool {
8
- protected mouseListeners: MouseListener[];
23
+ export declare class GLSPMouseTool extends MouseTool implements IDiagramStartup {
24
+ protected lazyInjector: LazyInjector;
9
25
  protected rankedMouseListeners: Map<number, MouseListener[]>;
10
26
  constructor(mouseListeners?: MouseListener[]);
27
+ preLoadDiagram(): MaybePromise<void>;
11
28
  register(mouseListener: MouseListener): void;
12
29
  registerListener(mouseListener: MouseListener): Disposable;
13
30
  deregister(mouseListener: MouseListener): void;
@@ -1 +1 @@
1
- {"version":3,"file":"mouse-tool.d.ts","sourceRoot":"","sources":["../../../src/base/view/mouse-tool.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAU,UAAU,EAAE,aAAa,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,EAAS,MAAM,uBAAuB,CAAC;AAGvH;;;GAGG;AACH,KAAK,oBAAoB,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;AAElE,qBACa,aAAc,SAAQ,SAAS;cAGqC,cAAc,EAAE,aAAa,EAAE;IAF5G,SAAS,CAAC,oBAAoB,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;gBAEgB,cAAc,GAAE,aAAa,EAAO;IAKxG,QAAQ,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI;IAKrD,gBAAgB,CAAC,aAAa,EAAE,aAAa,GAAG,UAAU;IAKjD,UAAU,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI;cAKpC,WAAW,CAAC,CAAC,SAAS,oBAAoB,EAAE,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI;cASzG,qBAAqB,CAAC,CAAC,SAAS,oBAAoB,EAChE,OAAO,EAAE,aAAa,EACtB,UAAU,EAAE,CAAC,EACb,KAAK,EAAE,UAAU,GAClB,OAAO,CAAC,IAAI,CAAC;cAMA,eAAe,CAAC,CAAC,SAAS,oBAAoB,EAC1D,cAAc,EAAE,aAAa,EAAE,EAC/B,UAAU,EAAE,CAAC,EACb,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,UAAU,GAClB,OAAO,CAAC,IAAI,CAAC;CAenB"}
1
+ {"version":3,"file":"mouse-tool.d.ts","sourceRoot":"","sources":["../../../src/base/view/mouse-tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAEH,UAAU,EACV,aAAa,EACb,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,SAAS,EAEZ,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAG3C;;;GAGG;AACH,KAAK,oBAAoB,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;AAElE,qBACa,aAAc,SAAQ,SAAU,YAAW,eAAe;IAEnE,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;IAErC,SAAS,CAAC,oBAAoB,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;gBAErC,cAAc,GAAE,aAAa,EAAO;IAI5D,cAAc,IAAI,YAAY,CAAC,IAAI,CAAC;IAI3B,QAAQ,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI;IAKrD,gBAAgB,CAAC,aAAa,EAAE,aAAa,GAAG,UAAU;IAKjD,UAAU,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI;cAKpC,WAAW,CAAC,CAAC,SAAS,oBAAoB,EAAE,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI;cASzG,qBAAqB,CAAC,CAAC,SAAS,oBAAoB,EAChE,OAAO,EAAE,aAAa,EACtB,UAAU,EAAE,CAAC,EACb,KAAK,EAAE,UAAU,GAClB,OAAO,CAAC,IAAI,CAAC;cAMA,eAAe,CAAC,CAAC,SAAS,oBAAoB,EAC1D,cAAc,EAAE,aAAa,EAAE,EAC/B,UAAU,EAAE,CAAC,EACb,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,UAAU,GAClB,OAAO,CAAC,IAAI,CAAC;CAenB"}
@@ -14,7 +14,7 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.GLSPMouseTool = void 0;
16
16
  /********************************************************************************
17
- * Copyright (c) 2019-2023 EclipseSource and others.
17
+ * Copyright (c) 2019-2024 EclipseSource and others.
18
18
  *
19
19
  * This program and the accompanying materials are made available under the
20
20
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -28,14 +28,15 @@ exports.GLSPMouseTool = void 0;
28
28
  *
29
29
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
30
30
  ********************************************************************************/
31
- const inversify_1 = require("inversify");
32
31
  const sprotty_1 = require("@eclipse-glsp/sprotty");
32
+ const inversify_1 = require("inversify");
33
33
  const ranked_1 = require("../ranked");
34
34
  let GLSPMouseTool = class GLSPMouseTool extends sprotty_1.MouseTool {
35
35
  constructor(mouseListeners = []) {
36
36
  super(mouseListeners);
37
- this.mouseListeners = mouseListeners;
38
- this.rankedMouseListeners = groupBy(mouseListeners, listener => ranked_1.Ranked.getRank(listener));
37
+ }
38
+ preLoadDiagram() {
39
+ this.lazyInjector.getAll(sprotty_1.TYPES.MouseListener).forEach(listener => this.register(listener));
39
40
  }
40
41
  register(mouseListener) {
41
42
  super.register(mouseListener);
@@ -80,9 +81,12 @@ let GLSPMouseTool = class GLSPMouseTool extends sprotty_1.MouseTool {
80
81
  }
81
82
  };
82
83
  exports.GLSPMouseTool = GLSPMouseTool;
84
+ __decorate([
85
+ (0, inversify_1.inject)(sprotty_1.LazyInjector),
86
+ __metadata("design:type", Object)
87
+ ], GLSPMouseTool.prototype, "lazyInjector", void 0);
83
88
  exports.GLSPMouseTool = GLSPMouseTool = __decorate([
84
89
  (0, inversify_1.injectable)(),
85
- __param(0, (0, inversify_1.multiInject)(sprotty_1.TYPES.MouseListener)),
86
90
  __param(0, (0, inversify_1.optional)()),
87
91
  __metadata("design:paramtypes", [Array])
88
92
  ], GLSPMouseTool);
@@ -1 +1 @@
1
- {"version":3,"file":"mouse-tool.js","sourceRoot":"","sources":["../../../src/base/view/mouse-tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mouse-tool.js","sourceRoot":"","sources":["../../../src/base/view/mouse-tool.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"default-modules.d.ts","sourceRoot":"","sources":["../src/default-modules.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EACH,cAAc,EACd,sBAAsB,EACtB,aAAa,EAEb,aAAa,EAWhB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AA6B9D,eAAO,MAAM,eAAe,sjBAsClB,CAAC;AAEX;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,eAAe,GAAG,aAAa,CAElF;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACnC,OAAO,EAAE,cAAc,EACvB,cAAc,EAAE,eAAe,EAC/B,aAAa,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,GACvC,IAAI,CAQN;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,SAAS,EAAE,GAAG,uBAAuB,EAAE,sBAAsB,GAAG,SAAS,CAY9H"}
1
+ {"version":3,"file":"default-modules.d.ts","sourceRoot":"","sources":["../src/default-modules.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EACH,cAAc,EACd,sBAAsB,EACtB,aAAa,EAEb,aAAa,EAUhB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AA8B9D,eAAO,MAAM,eAAe,sjBAsClB,CAAC;AAEX;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,eAAe,GAAG,aAAa,CAElF;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACnC,OAAO,EAAE,cAAc,EACvB,cAAc,EAAE,eAAe,EAC/B,aAAa,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,GACvC,IAAI,CAQN;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,SAAS,EAAE,GAAG,uBAAuB,EAAE,sBAAsB,GAAG,SAAS,CAY9H"}
@@ -45,6 +45,7 @@ const node_creation_module_1 = require("./features/tools/node-creation/node-crea
45
45
  const tool_focus_loss_module_1 = require("./features/tools/tool-focus-loss-module");
46
46
  const validation_modules_1 = require("./features/validation/validation-modules");
47
47
  const viewport_modules_1 = require("./features/viewport/viewport-modules");
48
+ const label_edit_ui_module_1 = require("./features/label-edit-ui/label-edit-ui-module");
48
49
  exports.DEFAULT_MODULES = [
49
50
  default_module_1.defaultModule,
50
51
  sprotty_1.buttonModule,
@@ -62,7 +63,7 @@ exports.DEFAULT_MODULES = [
62
63
  select_module_1.selectModule,
63
64
  copy_paste_modules_1.copyPasteModule,
64
65
  viewport_modules_1.viewportModule,
65
- sprotty_1.labelEditUiModule,
66
+ label_edit_ui_module_1.labelEditUiModule,
66
67
  layout_module_1.layoutModule,
67
68
  validation_modules_1.markerNavigatorModule,
68
69
  type_hints_module_1.typeHintsModule,
@@ -1 +1 @@
1
- {"version":3,"file":"default-modules.js","sourceRoot":"","sources":["../src/default-modules.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;AAElF,mDAgB+B;AAE/B,0DAAsD;AAEtD,mEAA+D;AAC/D,8FAAyF;AACzF,qFAAgF;AAChF,iFAA2E;AAC3E,+EAA2E;AAC3E,iGAA4F;AAC5F,qEAAgE;AAChE,0EAAqE;AACrE,gEAA4D;AAC5D,+EAA0E;AAC1E,mEAA+D;AAC/D,+EAA2E;AAC3E,sEAAkE;AAClE,mEAA+D;AAC/D,6GAAuG;AACvG,mEAA+D;AAC/D,qFAAgF;AAChF,qFAAgF;AAChF,wGAAkG;AAClG,yFAAoF;AACpF,gGAA8F;AAC9F,kFAAiF;AACjF,0GAAyG;AACzG,8FAA6F;AAC7F,oFAA8E;AAC9E,iFAAmG;AACnG,2EAAsE;AAEzD,QAAA,eAAe,GAAG;IAC3B,8BAAa;IACb,sBAAY;IACZ,gCAAsB;IACtB,0BAAgB;IAChB,sBAAY;IACZ,6BAAY;IACZ,oBAAU;IACV,4BAAY;IACZ,6CAAoB;IACpB,uCAAiB;IACjB,oCAAgB;IAChB,mCAAe;IACf,0BAAW;IACX,4BAAY;IACZ,oCAAe;IACf,iCAAc;IACd,2BAAiB;IACjB,4BAAY;IACZ,0CAAqB;IACrB,mCAAe;IACf,2BAAiB;IACjB,sDAAwB;IACxB,oCAAgB;IAChB,8BAAa;IACb,uCAAiB;IACjB,8CAAsB;IACtB,qCAAkB;IAClB,yCAAkB;IAClB,+CAAqB;IACrB,6CAAsB;IACtB,kDAAsB;IACtB,qDAA0B;IAC1B,4CAAmB;IACnB,qCAAgB;IAChB,sBAAY;IACZ,uCAAiB;IACjB,4BAAY;CACN,CAAC;AAEX;;;;;;GAMG;AACH,SAAgB,0BAA0B,CAAC,OAAwB;IAC/D,OAAO,IAAI,uBAAa,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,uBAAuB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC;AACrI,CAAC;AAFD,gEAEC;AAED;;;;;;;GAOG;AACH,SAAgB,uBAAuB,CACnC,OAAuB,EACvB,cAA+B,EAC/B,aAAsC;IAEtC,IAAA,gCAAsB,EAAC,OAAO,kBAC1B,OAAO,EAAE,cAAc,CAAC,QAAQ,EAChC,SAAS,EAAE,cAAc,CAAC,QAAQ,GAAG,SAAS,EAC9C,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,IAC9B,aAAa,EAClB,CAAC;IACH,OAAO,CAAC,IAAI,CAAC,eAAK,CAAC,eAAe,CAAC,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;AACxE,CAAC;AAZD,0DAYC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,SAAgB,0BAA0B,CAAC,SAAoB,EAAE,GAAG,uBAA+C;IAC/G,MAAM,OAAO,GAAG,IAAA,uCAA6B,EAAC,GAAG,uBAAe,EAAE,GAAG,uBAAuB,CAAC,CAAC;IAC9F,oHAAoH;IACpH,4BAA4B;IAC5B,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC/B,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,WAAW,YAAY,uBAAa,IAAI,WAAW,CAAC,SAAS,KAAK,8BAAa,CAAC,SAAS,CAAC,EAAE;QAC9G,MAAM,IAAI,KAAK,CACX,4HAA4H,CAC/H,CAAC;KACL;IACD,SAAS,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;IAC3B,OAAO,SAAS,CAAC;AACrB,CAAC;AAZD,gEAYC"}
1
+ {"version":3,"file":"default-modules.js","sourceRoot":"","sources":["../src/default-modules.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;AAElF,mDAe+B;AAE/B,0DAAsD;AAEtD,mEAA+D;AAC/D,8FAAyF;AACzF,qFAAgF;AAChF,iFAA2E;AAC3E,+EAA2E;AAC3E,iGAA4F;AAC5F,qEAAgE;AAChE,0EAAqE;AACrE,gEAA4D;AAC5D,+EAA0E;AAC1E,mEAA+D;AAC/D,+EAA2E;AAC3E,sEAAkE;AAClE,mEAA+D;AAC/D,6GAAuG;AACvG,mEAA+D;AAC/D,qFAAgF;AAChF,qFAAgF;AAChF,wGAAkG;AAClG,yFAAoF;AACpF,gGAA8F;AAC9F,kFAAiF;AACjF,0GAAyG;AACzG,8FAA6F;AAC7F,oFAA8E;AAC9E,iFAAmG;AACnG,2EAAsE;AACtE,wFAAkF;AAErE,QAAA,eAAe,GAAG;IAC3B,8BAAa;IACb,sBAAY;IACZ,gCAAsB;IACtB,0BAAgB;IAChB,sBAAY;IACZ,6BAAY;IACZ,oBAAU;IACV,4BAAY;IACZ,6CAAoB;IACpB,uCAAiB;IACjB,oCAAgB;IAChB,mCAAe;IACf,0BAAW;IACX,4BAAY;IACZ,oCAAe;IACf,iCAAc;IACd,wCAAiB;IACjB,4BAAY;IACZ,0CAAqB;IACrB,mCAAe;IACf,2BAAiB;IACjB,sDAAwB;IACxB,oCAAgB;IAChB,8BAAa;IACb,uCAAiB;IACjB,8CAAsB;IACtB,qCAAkB;IAClB,yCAAkB;IAClB,+CAAqB;IACrB,6CAAsB;IACtB,kDAAsB;IACtB,qDAA0B;IAC1B,4CAAmB;IACnB,qCAAgB;IAChB,sBAAY;IACZ,uCAAiB;IACjB,4BAAY;CACN,CAAC;AAEX;;;;;;GAMG;AACH,SAAgB,0BAA0B,CAAC,OAAwB;IAC/D,OAAO,IAAI,uBAAa,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,uBAAuB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC;AACrI,CAAC;AAFD,gEAEC;AAED;;;;;;;GAOG;AACH,SAAgB,uBAAuB,CACnC,OAAuB,EACvB,cAA+B,EAC/B,aAAsC;IAEtC,IAAA,gCAAsB,EAAC,OAAO,kBAC1B,OAAO,EAAE,cAAc,CAAC,QAAQ,EAChC,SAAS,EAAE,cAAc,CAAC,QAAQ,GAAG,SAAS,EAC9C,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,IAC9B,aAAa,EAClB,CAAC;IACH,OAAO,CAAC,IAAI,CAAC,eAAK,CAAC,eAAe,CAAC,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;AACxE,CAAC;AAZD,0DAYC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,SAAgB,0BAA0B,CAAC,SAAoB,EAAE,GAAG,uBAA+C;IAC/G,MAAM,OAAO,GAAG,IAAA,uCAA6B,EAAC,GAAG,uBAAe,EAAE,GAAG,uBAAuB,CAAC,CAAC;IAC9F,oHAAoH;IACpH,4BAA4B;IAC5B,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC/B,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,WAAW,YAAY,uBAAa,IAAI,WAAW,CAAC,SAAS,KAAK,8BAAa,CAAC,SAAS,CAAC,EAAE;QAC9G,MAAM,IAAI,KAAK,CACX,4HAA4H,CAC/H,CAAC;KACL;IACD,SAAS,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;IAC3B,OAAO,SAAS,CAAC;AACrB,CAAC;AAZD,gEAYC"}
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2022-2023 EclipseSource and others.
2
+ * Copyright (c) 2022-2024 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,8 +13,9 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
- import { Action, ComputedBoundsAction, EdgeRouterRegistry, ElementAndRoutingPoints, GModelElement, GRoutableElement, HiddenBoundsUpdater } from '@eclipse-glsp/sprotty';
16
+ import { Action, BoundsData, ComputedBoundsAction, EdgeRouterRegistry, ElementAndRoutingPoints, GModelElement, HiddenBoundsUpdater, ModelIndexImpl } from '@eclipse-glsp/sprotty';
17
17
  import { VNode } from 'snabbdom';
18
+ import { BoundsAwareModelElement } from '../../utils/gmodel-util';
18
19
  /**
19
20
  * Grabs the bounds from hidden SVG DOM elements, applies layouts, collects routes and fires {@link ComputedBoundsAction}s.
20
21
  *
@@ -23,10 +24,11 @@ import { VNode } from 'snabbdom';
23
24
  export declare class GLSPHiddenBoundsUpdater extends HiddenBoundsUpdater {
24
25
  protected readonly edgeRouterRegistry?: EdgeRouterRegistry;
25
26
  protected element2route: ElementAndRoutingPoints[];
26
- protected edges: GRoutableElement[];
27
- protected nodes: VNode[];
27
+ protected getElement2BoundsData(): Map<BoundsAwareModelElement, BoundsData>;
28
28
  decorate(vnode: VNode, element: GModelElement): VNode;
29
29
  postUpdate(cause?: Action): void;
30
+ protected focusOnElements(elementIDs: string[]): void;
31
+ protected expandElementId(id: string, index: ModelIndexImpl, elementIDs: string[]): string[];
30
32
  protected captureActions(call: () => void): Action[];
31
33
  protected enhanceAction(action: ComputedBoundsAction, cause?: Action): ComputedBoundsAction;
32
34
  }
@@ -1 +1 @@
1
- {"version":3,"file":"glsp-hidden-bounds-updater.d.ts","sourceRoot":"","sources":["../../../src/features/bounds/glsp-hidden-bounds-updater.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EACH,MAAM,EACN,oBAAoB,EAEpB,kBAAkB,EAClB,uBAAuB,EACvB,aAAa,EACb,gBAAgB,EAChB,mBAAmB,EAItB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAIjC;;;;GAIG;AACH,qBACa,uBAAwB,SAAQ,mBAAmB;IACpB,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IAEnG,SAAS,CAAC,aAAa,EAAE,uBAAuB,EAAE,CAAM;IACxD,SAAS,CAAC,KAAK,EAAE,gBAAgB,EAAE,CAAM;IACzC,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,CAAM;IAErB,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,GAAG,KAAK;IAQrD,UAAU,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAQzC,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,IAAI,GAAG,MAAM,EAAE;IAYpD,SAAS,CAAC,aAAa,CAAC,MAAM,EAAE,oBAAoB,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,oBAAoB;CAO9F"}
1
+ {"version":3,"file":"glsp-hidden-bounds-updater.d.ts","sourceRoot":"","sources":["../../../src/features/bounds/glsp-hidden-bounds-updater.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EACH,MAAM,EACN,UAAU,EACV,oBAAoB,EAEpB,kBAAkB,EAClB,uBAAuB,EACvB,aAAa,EACb,mBAAmB,EAEnB,cAAc,EAGjB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,uBAAuB,EAAqD,MAAM,yBAAyB,CAAC;AAGrH;;;;GAIG;AACH,qBACa,uBAAwB,SAAQ,mBAAmB;IACpB,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IAEnG,SAAS,CAAC,aAAa,EAAE,uBAAuB,EAAE,CAAM;IAExD,SAAS,CAAC,qBAAqB,IAAI,GAAG,CAAC,uBAAuB,EAAE,UAAU,CAAC;IAIlE,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,GAAG,KAAK;IAQrD,UAAU,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAWzC,SAAS,CAAC,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI;IAYrD,SAAS,CAAC,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE;IAI5F,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,IAAI,GAAG,MAAM,EAAE;IAYpD,SAAS,CAAC,aAAa,CAAC,MAAM,EAAE,oBAAoB,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,oBAAoB;CAO9F"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  /********************************************************************************
3
- * Copyright (c) 2022-2023 EclipseSource and others.
3
+ * Copyright (c) 2022-2024 EclipseSource and others.
4
4
  *
5
5
  * This program and the accompanying materials are made available under the
6
6
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -38,8 +38,9 @@ let GLSPHiddenBoundsUpdater = class GLSPHiddenBoundsUpdater extends sprotty_1.Hi
38
38
  constructor() {
39
39
  super(...arguments);
40
40
  this.element2route = [];
41
- this.edges = [];
42
- this.nodes = [];
41
+ }
42
+ getElement2BoundsData() {
43
+ return this['element2boundsData'];
43
44
  }
44
45
  decorate(vnode, element) {
45
46
  super.decorate(vnode, element);
@@ -49,12 +50,28 @@ let GLSPHiddenBoundsUpdater = class GLSPHiddenBoundsUpdater extends sprotty_1.Hi
49
50
  return vnode;
50
51
  }
51
52
  postUpdate(cause) {
53
+ if (local_bounds_1.LocalRequestBoundsAction.is(cause) && cause.elementIDs) {
54
+ this.focusOnElements(cause.elementIDs);
55
+ }
52
56
  const actions = this.captureActions(() => super.postUpdate(cause));
53
57
  actions
54
58
  .filter(action => sprotty_1.ComputedBoundsAction.is(action))
55
59
  .forEach(action => this.actionDispatcher.dispatch(this.enhanceAction(action, cause)));
56
60
  this.element2route = [];
57
61
  }
62
+ focusOnElements(elementIDs) {
63
+ const data = this.getElement2BoundsData();
64
+ if (data.size > 0) {
65
+ // expand given IDs to their descendent element IDs as we need their bounding boxes as well
66
+ const index = [...data.keys()][0].index;
67
+ const relevantIds = new Set(elementIDs.flatMap(elementId => this.expandElementId(elementId, index, elementIDs)));
68
+ // ensure we only keep the bounds of the elements we are interested in
69
+ data.forEach((_bounds, element) => !relevantIds.has(element.id) && data.delete(element));
70
+ }
71
+ }
72
+ expandElementId(id, index, elementIDs) {
73
+ return (0, gmodel_util_1.getDescendantIds)(index.getById(id));
74
+ }
58
75
  captureActions(call) {
59
76
  const capturingActionDispatcher = new CapturingActionDispatcher();
60
77
  const actualActionDispatcher = this.actionDispatcher;
@@ -1 +1 @@
1
- {"version":3,"file":"glsp-hidden-bounds-updater.js","sourceRoot":"","sources":["../../../src/features/bounds/glsp-hidden-bounds-updater.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;AAElF,mDAY+B;AAC/B,yCAAyD;AAEzD,yDAA0E;AAC1E,iDAAqF;AAErF;;;;GAIG;AAEI,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,6BAAmB;IAAzD;;QAGO,kBAAa,GAA8B,EAAE,CAAC;QAC9C,UAAK,GAAuB,EAAE,CAAC;QAC/B,UAAK,GAAY,EAAE,CAAC;IAqClC,CAAC;IAnCY,QAAQ,CAAC,KAAY,EAAE,OAAsB;QAClD,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC/B,IAAI,IAAA,wBAAU,EAAC,OAAO,CAAC,EAAE;YACrB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAA,iCAAmB,EAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;SAClF;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAEQ,UAAU,CAAC,KAAc;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;QACnE,OAAO;aACF,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,8BAAoB,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;aACjD,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,MAA8B,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QAClH,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;IAC5B,CAAC;IAES,cAAc,CAAC,IAAgB;QACrC,MAAM,yBAAyB,GAAG,IAAI,yBAAyB,EAAE,CAAC;QAClE,MAAM,sBAAsB,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACrD,IAAI,CAAC,gBAAgB,GAAG,yBAAyB,CAAC;QAClD,IAAI;YACA,IAAI,EAAE,CAAC;YACP,OAAO,yBAAyB,CAAC,OAAO,CAAC;SAC5C;gBAAS;YACN,IAAI,CAAC,gBAAgB,GAAG,sBAAsB,CAAC;SAClD;IACL,CAAC;IAES,aAAa,CAAC,MAA4B,EAAE,KAAc;QAChE,IAAI,uCAAwB,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE;YACpC,wCAAyB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAC1C;QACD,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC;QACjF,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ,CAAA;AA1CY,0DAAuB;AAC2B;IAA1D,IAAA,kBAAM,EAAC,4BAAkB,CAAC;IAAE,IAAA,oBAAQ,GAAE;8BAAyC,4BAAkB;mEAAC;kCAD1F,uBAAuB;IADnC,IAAA,sBAAU,GAAE;GACA,uBAAuB,CA0CnC;AAED,MAAM,yBAAyB;IAA/B;QACa,YAAO,GAAa,EAAE,CAAC;IAcpC,CAAC;IAZG,KAAK,CAAC,QAAQ,CAAC,MAAc;QACzB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAiB;QAC/B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,OAAO,CAA6B,MAA0B;QAChE,sCAAsC;QACtC,OAAO,IAAI,kBAAQ,EAAO,CAAC,OAAO,CAAC;IACvC,CAAC;CACJ"}
1
+ {"version":3,"file":"glsp-hidden-bounds-updater.js","sourceRoot":"","sources":["../../../src/features/bounds/glsp-hidden-bounds-updater.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2023 EclipseSource and others.
2
+ * Copyright (c) 2023-2024 EclipseSource and others.
3
3
  *
4
4
  * This program and the accompanying materials are made available under the
5
5
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -13,10 +13,14 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
- import { Action, ActionDispatcher, Command, CommandExecutionContext, CommandResult, CommandReturn, ComputedBoundsAction, ComputedBoundsApplicator, GModelRoot, RequestBoundsAction, ViewerOptions } from '@eclipse-glsp/sprotty';
16
+ import { Action, ActionDispatcher, Command, CommandExecutionContext, CommandResult, CommandReturn, ComputedBoundsAction, ComputedBoundsApplicator, GModelRoot, GModelRootSchema, RequestBoundsAction, ViewerOptions } from '@eclipse-glsp/sprotty';
17
+ export interface LocalRequestBoundsAction extends RequestBoundsAction {
18
+ elementIDs?: string[];
19
+ }
17
20
  export declare namespace LocalRequestBoundsAction {
18
- function is(object: unknown): object is RequestBoundsAction;
19
- function fromCommand(context: CommandExecutionContext, actionDispatcher: ActionDispatcher, cause?: Action): CommandResult;
21
+ function is(object: unknown): object is LocalRequestBoundsAction;
22
+ function create(newRoot: GModelRootSchema, elementIDs?: string[]): LocalRequestBoundsAction;
23
+ function fromCommand({ root }: CommandExecutionContext, actionDispatcher: ActionDispatcher, cause?: Action, elementIDs?: string[]): CommandResult;
20
24
  }
21
25
  export declare namespace LocalComputedBoundsAction {
22
26
  function is(object: unknown): object is RequestBoundsAction;
@@ -1 +1 @@
1
- {"version":3,"file":"local-bounds.d.ts","sourceRoot":"","sources":["../../../src/features/bounds/local-bounds.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EACH,MAAM,EACN,gBAAgB,EAChB,OAAO,EACP,uBAAuB,EACvB,aAAa,EACb,aAAa,EACb,oBAAoB,EACpB,wBAAwB,EACxB,UAAU,EAEV,mBAAmB,EAEnB,aAAa,EAChB,MAAM,uBAAuB,CAAC;AAI/B,yBAAiB,wBAAwB,CAAC;IACtC,SAAgB,EAAE,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,mBAAmB,CAEjE;IAED,SAAgB,WAAW,CAAC,OAAO,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,aAAa,CAQ/H;CACJ;AAED,yBAAiB,yBAAyB,CAAC;IACvC,SAAgB,EAAE,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,mBAAmB,CAEjE;IAED,SAAgB,IAAI,CAAC,MAAM,EAAE,oBAAoB,GAAG,oBAAoB,CAIvE;CACJ;AAED,qBACa,0BAA2B,SAAQ,OAAO;IAMjB,QAAQ,CAAC,MAAM,EAAE,oBAAoB;IALvE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAA6B;IAEvB,SAAS,CAAC,QAAQ,CAAC,wBAAwB,EAAE,wBAAwB,CAAC;IAC3E,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;gBAElC,MAAM,EAAE,oBAAoB;IAI9D,OAAO,CAAC,OAAO,EAAE,uBAAuB,GAAG,UAAU,GAAG,aAAa;IAiBrE,IAAI,CAAC,OAAO,EAAE,uBAAuB,GAAG,aAAa;IAIrD,IAAI,CAAC,OAAO,EAAE,uBAAuB,GAAG,aAAa;CAGjE"}
1
+ {"version":3,"file":"local-bounds.d.ts","sourceRoot":"","sources":["../../../src/features/bounds/local-bounds.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EACH,MAAM,EACN,gBAAgB,EAChB,OAAO,EACP,uBAAuB,EACvB,aAAa,EACb,aAAa,EACb,oBAAoB,EACpB,wBAAwB,EACxB,UAAU,EACV,gBAAgB,EAChB,mBAAmB,EAEnB,aAAa,EAEhB,MAAM,uBAAuB,CAAC;AAI/B,MAAM,WAAW,wBAAyB,SAAQ,mBAAmB;IACjE,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,yBAAiB,wBAAwB,CAAC;IACtC,SAAgB,EAAE,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,wBAAwB,CAEtE;IAED,SAAgB,MAAM,CAAC,OAAO,EAAE,gBAAgB,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,wBAAwB,CAKjG;IAED,SAAgB,WAAW,CACvB,EAAE,IAAI,EAAE,EAAE,uBAAuB,EACjC,gBAAgB,EAAE,gBAAgB,EAClC,KAAK,CAAC,EAAE,MAAM,EACd,UAAU,CAAC,EAAE,MAAM,EAAE,GACtB,aAAa,CAQf;CACJ;AAED,yBAAiB,yBAAyB,CAAC;IACvC,SAAgB,EAAE,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,mBAAmB,CAEjE;IAED,SAAgB,IAAI,CAAC,MAAM,EAAE,oBAAoB,GAAG,oBAAoB,CAIvE;CACJ;AAED,qBACa,0BAA2B,SAAQ,OAAO;IAMjB,QAAQ,CAAC,MAAM,EAAE,oBAAoB;IALvE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAA6B;IAEvB,SAAS,CAAC,QAAQ,CAAC,wBAAwB,EAAE,wBAAwB,CAAC;IAC3E,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;gBAElC,MAAM,EAAE,oBAAoB;IAI9D,OAAO,CAAC,OAAO,EAAE,uBAAuB,GAAG,UAAU,GAAG,aAAa;IAiBrE,IAAI,CAAC,OAAO,EAAE,uBAAuB,GAAG,aAAa;IAIrD,IAAI,CAAC,OAAO,EAAE,uBAAuB,GAAG,aAAa;CAGjE"}
@@ -14,7 +14,7 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.LocalComputedBoundsCommand = exports.LocalComputedBoundsAction = exports.LocalRequestBoundsAction = void 0;
16
16
  /********************************************************************************
17
- * Copyright (c) 2023 EclipseSource and others.
17
+ * Copyright (c) 2023-2024 EclipseSource and others.
18
18
  *
19
19
  * This program and the accompanying materials are made available under the
20
20
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -34,14 +34,18 @@ const glsp_model_source_1 = require("../../base/model/glsp-model-source");
34
34
  var LocalRequestBoundsAction;
35
35
  (function (LocalRequestBoundsAction) {
36
36
  function is(object) {
37
- return sprotty_1.RequestBoundsAction.is(object) && !glsp_model_source_1.ServerAction.is(object);
37
+ return sprotty_1.RequestBoundsAction.is(object) && !glsp_model_source_1.ServerAction.is(object) && (0, sprotty_1.hasArrayProp)(object, 'elementIDs', true);
38
38
  }
39
39
  LocalRequestBoundsAction.is = is;
40
- function fromCommand(context, actionDispatcher, cause) {
40
+ function create(newRoot, elementIDs) {
41
+ return Object.assign(Object.assign({}, sprotty_1.RequestBoundsAction.create(newRoot)), { elementIDs });
42
+ }
43
+ LocalRequestBoundsAction.create = create;
44
+ function fromCommand({ root }, actionDispatcher, cause, elementIDs) {
41
45
  // do not modify the main model (modelChanged = false) but request local bounds calculation on hidden model
42
- actionDispatcher.dispatch(sprotty_1.RequestBoundsAction.create(context.root));
46
+ actionDispatcher.dispatch(LocalRequestBoundsAction.create(root, elementIDs));
43
47
  return {
44
- model: context.root,
48
+ model: root,
45
49
  modelChanged: false,
46
50
  cause
47
51
  };
@@ -1 +1 @@
1
- {"version":3,"file":"local-bounds.js","sourceRoot":"","sources":["../../../src/features/bounds/local-bounds.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,mDAc+B;AAC/B,yCAA+C;AAC/C,0EAAkE;AAElE,IAAiB,wBAAwB,CAcxC;AAdD,WAAiB,wBAAwB;IACrC,SAAgB,EAAE,CAAC,MAAe;QAC9B,OAAO,6BAAmB,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,gCAAY,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;IACtE,CAAC;IAFe,2BAAE,KAEjB,CAAA;IAED,SAAgB,WAAW,CAAC,OAAgC,EAAE,gBAAkC,EAAE,KAAc;QAC5G,2GAA2G;QAC3G,gBAAgB,CAAC,QAAQ,CAAC,6BAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,IAAmC,CAAC,CAAC,CAAC;QACnG,OAAO;YACH,KAAK,EAAE,OAAO,CAAC,IAAI;YACnB,YAAY,EAAE,KAAK;YACnB,KAAK;SACR,CAAC;IACN,CAAC;IARe,oCAAW,cAQ1B,CAAA;AACL,CAAC,EAdgB,wBAAwB,wCAAxB,wBAAwB,QAcxC;AAED,IAAiB,yBAAyB,CAUzC;AAVD,WAAiB,yBAAyB;IACtC,SAAgB,EAAE,CAAC,MAAe;QAC9B,OAAO,8BAAoB,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,gCAAY,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;IACtE,CAAC;IAFe,4BAAE,KAEjB,CAAA;IAED,SAAgB,IAAI,CAAC,MAA4B;QAC7C,0HAA0H;QAC1H,gCAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1B,OAAO,MAAM,CAAC;IAClB,CAAC;IAJe,8BAAI,OAInB,CAAA;AACL,CAAC,EAVgB,yBAAyB,yCAAzB,yBAAyB,QAUzC;AAGM,IAAM,0BAA0B,GAAhC,MAAM,0BAA2B,SAAQ,iBAAO;IAMnD,YAA2C,MAA4B;QACnE,KAAK,EAAE,CAAC;QAD+B,WAAM,GAAN,MAAM,CAAsB;IAEvE,CAAC;IAEQ,OAAO,CAAC,OAAgC;QAC7C,IAAI,yBAAyB,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YAC3C,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,iBAAiB,EAAE;gBACvC,OAAO,OAAO,CAAC,IAAI,CAAC;aACvB;YACD,gGAAgG;YAChG,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,OAAO,CAAC,IAAmC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9F,OAAO,OAAO,CAAC,IAAI,CAAC;SACvB;QAED,uGAAuG;QACvG,OAAO;YACH,KAAK,EAAE,OAAO,CAAC,IAAI;YACnB,YAAY,EAAE,KAAK;SACtB,CAAC;IACN,CAAC;IAEQ,IAAI,CAAC,OAAgC;QAC1C,OAAO,OAAO,CAAC,IAAI,CAAC;IACxB,CAAC;IAEQ,IAAI,CAAC,OAAgC;QAC1C,OAAO,OAAO,CAAC,IAAI,CAAC;IACxB,CAAC;;AAjCQ,gEAA0B;AACnB,+BAAI,GAAW,8BAAoB,CAAC,IAAI,AAApC,CAAqC;AAEJ;IAApD,IAAA,kBAAM,EAAC,kCAAwB,CAAC;8BAA8C,kCAAwB;4EAAC;AACxD;IAA/C,IAAA,kBAAM,EAAC,eAAK,CAAC,aAAa,CAAC;;iEAAiD;qCAJpE,0BAA0B;IADtC,IAAA,sBAAU,GAAE;IAOI,WAAA,IAAA,kBAAM,EAAC,eAAK,CAAC,MAAM,CAAC,CAAA;;GANxB,0BAA0B,CAkCtC"}
1
+ {"version":3,"file":"local-bounds.js","sourceRoot":"","sources":["../../../src/features/bounds/local-bounds.ts"],"names":[],"mappings":"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"}