@eclipse-glsp/client 0.10.0-next.6bee8eb.163 → 0.10.0-next.79193da.164

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.
@@ -101,7 +101,7 @@ let SelectionService = class SelectionService {
101
101
  return this.root;
102
102
  }
103
103
  getSelectedElements() {
104
- return (0, smodel_util_1.getMatchingElements)(this.root.index, sprotty_1.isSelectable);
104
+ return (0, smodel_util_1.getElements)(this.root.index, Array.from(this.selectedElementIDs), sprotty_1.isSelectable);
105
105
  }
106
106
  /**
107
107
  * QUERY METHODS
@@ -1 +1 @@
1
- {"version":3,"file":"selection-service.js","sourceRoot":"","sources":["../../../src/features/select/selection-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"selection-service.js","sourceRoot":"","sources":["../../../src/features/select/selection-service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,qDAAoG;AACpG,yCAAsE;AACtE,qCAaiB;AAEjB,4CAA8C;AAC9C,yDAAsD;AAEtD,qEAAgE;AAOhE,IAAa,gBAAgB,GAA7B,MAAa,gBAAgB;IAOzB,YAA6E,qBAA0C,EAAE;QAA5C,uBAAkB,GAAlB,kBAAkB,CAA0B;QALjH,uBAAkB,GAAgB,IAAI,GAAG,EAAE,CAAC;IAKwE,CAAC;IAE7H,QAAQ,CAAC,iBAAoC;QACzC,IAAA,sBAAW,EAAC,IAAI,CAAC,kBAAkB,EAAE,iBAAiB,CAAC,CAAC;IAC5D,CAAC;IAED,UAAU,CAAC,iBAAoC;QAC3C,IAAA,iBAAM,EAAC,IAAI,CAAC,kBAAkB,EAAE,iBAAiB,CAAC,CAAC;IACvD,CAAC;IAED,gBAAgB,CAAC,IAA0B;QACvC,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACvC,CAAC;IAED,eAAe,CAAC,IAA0B,EAAE,MAAgB,EAAE,QAAkB;QAC5E,IAAI,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YACpE,OAAO;SACV;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;QAC3B,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAEhE,cAAc;QACd,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB,8DAA8D;QAC9D,yEAAyE;QACzE,0FAA0F;QAC1F,MAAM,QAAQ,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACnF,MAAM,UAAU,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;QACpI,KAAK,MAAM,EAAE,IAAI,UAAU,EAAE;YACzB,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;SACtC;QACD,KAAK,MAAM,EAAE,IAAI,QAAQ,EAAE;YACvB,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;SACnC;QAED,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;QACjD,2DAA2D;QAC3D,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,kBAAkB,EAAE;YACtC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACvC,IAAI,OAAO,KAAK,SAAS,EAAE;gBACvB,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACnC,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;oBACtD,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;iBAChC;aACJ;SACJ;QAED,uGAAuG;QACvG,MAAM,gBAAgB,GAClB,sBAAsB,CAAC,IAAI,KAAK,IAAI,CAAC,kBAAkB,CAAC,IAAI;YAC5D,CAAC,CAAC,GAAG,sBAAsB,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QACpF,IAAI,gBAAgB,EAAE;YAClB,2FAA2F;YAC3F,IAAI,CAAC,gBAAgB,CAAC,CAAC,IAAI,6CAAoB,CAAC,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC;SAC9G;QAED,MAAM,WAAW,GAAG,QAAQ,KAAK,IAAI,CAAC;QACtC,IAAI,WAAW,IAAI,gBAAgB,EAAE;YACjC,6CAA6C;YAC7C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;SAC5D;IACL,CAAC;IAED,gBAAgB,CAAC,OAAiB;QAC9B,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC5D,CAAC;IAED,eAAe,CAAC,IAAgB,EAAE,kBAA+B;QAC7D,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;IACjH,CAAC;IAED,YAAY;QACR,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IAED,mBAAmB;QACf,OAAO,IAAA,yBAAW,EAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,sBAAY,CAAC,CAAC;IAC3F,CAAC;IAED;;OAEG;IAEH,qBAAqB;QACjB,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACnC,CAAC;IAED,mBAAmB;QACf,OAAO,IAAI,CAAC,kBAAkB,CAAC,IAAI,GAAG,CAAC,CAAC;IAC5C,CAAC;IAED,iBAAiB;QACb,OAAO,IAAI,CAAC,kBAAkB,CAAC,IAAI,KAAK,CAAC,CAAC;IAC9C,CAAC;IAED,gBAAgB;QACZ,OAAO,IAAI,CAAC,kBAAkB,CAAC,IAAI,GAAG,CAAC,CAAC;IAC5C,CAAC;CACJ,CAAA;AAtGiD;IAA7C,IAAA,kBAAM,EAAC,kBAAU,CAAC,yBAAyB,CAAC;;4DAAyD;AAC/E;IAAtB,IAAA,kBAAM,EAAC,eAAK,CAAC,OAAO,CAAC;;gDAA2B;AALxC,gBAAgB;IAD5B,IAAA,sBAAU,GAAE;IAQI,WAAA,IAAA,uBAAW,EAAC,kBAAU,CAAC,iBAAiB,CAAC,CAAA;IAAE,WAAA,IAAA,oBAAQ,GAAE,CAAA;;GAPzD,gBAAgB,CA0G5B;AA1GY,4CAAgB;AA6G7B,IAAa,aAAa,GAA1B,MAAa,aAAc,SAAQ,iBAAO;IAMtC,YACiC,MAAoB,EACL,gBAAkC;QAE9E,KAAK,EAAE,CAAC;QAHqB,WAAM,GAAN,MAAM,CAAc;QACL,qBAAgB,GAAhB,gBAAgB,CAAkB;QALxE,aAAQ,GAAoB,EAAE,CAAC;QAC/B,eAAU,GAAoB,EAAE,CAAC;IAO3C,CAAC;IAED,OAAO,CAAC,OAAgC;QACpC,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;YACzC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACxC,IAAI,OAAO,YAAY,uBAAa,IAAI,IAAA,sBAAY,EAAC,OAAO,CAAC,EAAE;gBAC3D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aAC/B;QACL,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;YAC3C,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACxC,IAAI,OAAO,YAAY,uBAAa,IAAI,IAAA,sBAAY,EAAC,OAAO,CAAC,EAAE;gBAC3D,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aACjC;QACL,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,CAAC,OAAgC;QACjC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC1D,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;QACtE,OAAO,OAAO,CAAC,IAAI,CAAC;IACxB,CAAC;IAED,IAAI,CAAC,OAAgC;QACjC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;QACtE,OAAO,OAAO,CAAC,IAAI,CAAC;IACxB,CAAC;CACJ,CAAA;AA1CmB,kBAAI,GAAG,uBAAoB,CAAC,IAAK,CAAA;AADxC,aAAa;IADzB,IAAA,sBAAU,GAAE;IAQJ,WAAA,IAAA,kBAAM,EAAC,eAAK,CAAC,MAAM,CAAC,CAAA;IACpB,WAAA,IAAA,kBAAM,EAAC,kBAAU,CAAC,gBAAgB,CAAC,CAAA;qCADC,uBAAY;QACa,gBAAgB;GARzE,aAAa,CA2CzB;AA3CY,sCAAa;AA8C1B,IAAa,gBAAgB,GAA7B,MAAa,gBAAiB,SAAQ,iBAAO;IAIzC,YACiC,MAAuB,EACR,gBAAkC;QAE9E,KAAK,EAAE,CAAC;QAHqB,WAAM,GAAN,MAAM,CAAiB;QACR,qBAAgB,GAAhB,gBAAgB,CAAkB;QAJxE,sBAAiB,GAAyB,IAAI,GAAG,EAAmB,CAAC;IAO/E,CAAC;IAED,OAAO,CAAC,OAAgC;QACpC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,CAAC,OAAgC;QACjC,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;QACjC,KAAK,MAAM,aAAa,IAAI,IAAI,CAAC,iBAAiB,EAAE;YAChD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;YAChD,IAAI,OAAO,KAAK,SAAS,IAAI,IAAA,sBAAY,EAAC,OAAO,CAAC,EAAE;gBAChD,OAAO,CAAC,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;aACvC;SACJ;QACD,OAAO,OAAO,CAAC,IAAI,CAAC;IACxB,CAAC;IAED,IAAI,CAAC,OAAgC;QACjC,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAC9D,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YACpB,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;SACxE;aAAM;YACH,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,WAAW,CAAC,CAAC;SACxE;QACD,OAAO,OAAO,CAAC,IAAI,CAAC;IACxB,CAAC;IAES,SAAS,CAAC,OAAuB,EAAE,QAAiB,EAAE,QAAkB;QAC9E,IAAI,IAAA,sBAAY,EAAC,OAAO,CAAC,EAAE;YACvB,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;YACzD,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;SAC7B;QACD,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,QAAQ,EAAE;YAClC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;SAC7C;IACL,CAAC;CACJ,CAAA;AA7CmB,qBAAI,GAAG,0BAAuB,CAAC,IAAK,CAAA;AAD3C,gBAAgB;IAD5B,IAAA,sBAAU,GAAE;IAMJ,WAAA,IAAA,kBAAM,EAAC,eAAK,CAAC,MAAM,CAAC,CAAA;IACpB,WAAA,IAAA,kBAAM,EAAC,kBAAU,CAAC,gBAAgB,CAAC,CAAA;qCADC,0BAAe;QACU,gBAAgB;GANzE,gBAAgB,CA8C5B;AA9CY,4CAAgB"}
@@ -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 { ElementAndRoutingPoints } from '@eclipse-glsp/protocol';
16
+ import { ElementAndRoutingPoints, TypeGuard } from '@eclipse-glsp/protocol';
17
17
  import { BoundsAware, ElementAndBounds, Selectable, SModelElement, SModelElementSchema, SModelIndex, SRoutableElement, SRoutingHandle } from 'sprotty';
18
18
  import { FluentIterable } from 'sprotty/lib/utils/iterable';
19
19
  /**
@@ -46,6 +46,15 @@ export declare function forEachElement<T>(index: SModelIndex<SModelElement>, pre
46
46
  * (correctly casted to also include the additional type of the predicate).
47
47
  */
48
48
  export declare function getMatchingElements<T>(index: SModelIndex<SModelElement>, predicate: ModelFilterPredicate<T>): (SModelElement & T)[];
49
+ /**
50
+ * Invokes the given model index to retrieve the corresponding model elements for the given set of ids. Ids that
51
+ * have no corresponding element in the index will be ignored.
52
+ * @param index THe model index.
53
+ * @param elementsIDs The element ids.
54
+ * @param guard Optional typeguard. If defined only elements that match the guard will be returned.
55
+ * @returns An array of the model elements that correspond to the given ids and filter predicate.
56
+ */
57
+ export declare function getElements<S extends SModelElement>(index: SModelIndex<SModelElement>, elementsIDs: string[], guard?: TypeGuard<S>): S[];
49
58
  /**
50
59
  * Retrieves the amount of currently selected elements in the given {@link SModelIndex}.
51
60
  * @param index The {@link SModelIndex}.
@@ -1 +1 @@
1
- {"version":3,"file":"smodel-util.d.ts","sourceRoot":"","sources":["../../src/utils/smodel-util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"smodel-util.d.ts","sourceRoot":"","sources":["../../src/utils/smodel-util.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getElementTypeId = exports.hasCompatibleType = exports.toElementAndRoutingPoints = exports.toElementAndBounds = exports.isSelectableAndBoundsAware = exports.isRoutingHandle = exports.isRoutable = exports.isNonRoutableSelectedBoundsAware = exports.isNonRoutableSelectedMovableBoundsAware = exports.removeCssClasses = exports.addCssClasses = exports.isNotUndefined = exports.hasSelectedElements = exports.getSelectedElementCount = exports.getMatchingElements = exports.forEachElement = exports.filter = void 0;
3
+ exports.getElementTypeId = exports.hasCompatibleType = exports.toElementAndRoutingPoints = exports.toElementAndBounds = exports.isSelectableAndBoundsAware = exports.isRoutingHandle = exports.isRoutable = exports.isNonRoutableSelectedBoundsAware = exports.isNonRoutableSelectedMovableBoundsAware = exports.removeCssClasses = exports.addCssClasses = exports.isNotUndefined = exports.hasSelectedElements = exports.getSelectedElementCount = exports.getElements = exports.getMatchingElements = exports.forEachElement = exports.filter = void 0;
4
4
  /********************************************************************************
5
5
  * Copyright (c) 2019-2022 EclipseSource and others.
6
6
  *
@@ -51,6 +51,25 @@ function getMatchingElements(index, predicate) {
51
51
  return Array.from(filter(index, predicate));
52
52
  }
53
53
  exports.getMatchingElements = getMatchingElements;
54
+ /**
55
+ * Invokes the given model index to retrieve the corresponding model elements for the given set of ids. Ids that
56
+ * have no corresponding element in the index will be ignored.
57
+ * @param index THe model index.
58
+ * @param elementsIDs The element ids.
59
+ * @param guard Optional typeguard. If defined only elements that match the guard will be returned.
60
+ * @returns An array of the model elements that correspond to the given ids and filter predicate.
61
+ */
62
+ function getElements(index, elementsIDs, guard) {
63
+ // Internal filter function that filters out undefined model elements and runs an optional typeguard check.
64
+ const filterFn = (element) => {
65
+ if (element !== undefined) {
66
+ return guard ? guard(element) : true;
67
+ }
68
+ return false;
69
+ };
70
+ return elementsIDs.map(id => index.getById(id)).filter(filterFn);
71
+ }
72
+ exports.getElements = getElements;
54
73
  /**
55
74
  * Retrieves the amount of currently selected elements in the given {@link SModelIndex}.
56
75
  * @param index The {@link SModelIndex}.
@@ -1 +1 @@
1
- {"version":3,"file":"smodel-util.js","sourceRoot":"","sources":["../../src/utils/smodel-util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"smodel-util.js","sourceRoot":"","sources":["../../src/utils/smodel-util.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": "0.10.0-next.6bee8eb.163+6bee8eb",
3
+ "version": "0.10.0-next.79193da.164+79193da",
4
4
  "description": "A sprotty-based client for GLSP",
5
5
  "license": "(EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0)",
6
6
  "keywords": [
@@ -34,7 +34,7 @@
34
34
  "css"
35
35
  ],
36
36
  "dependencies": {
37
- "@eclipse-glsp/protocol": "0.10.0-next.6bee8eb.163+6bee8eb",
37
+ "@eclipse-glsp/protocol": "0.10.0-next.79193da.164+79193da",
38
38
  "autocompleter": "5.1.0",
39
39
  "sprotty": "0.10.0"
40
40
  },
@@ -56,5 +56,5 @@
56
56
  },
57
57
  "main": "lib/index",
58
58
  "types": "lib/index",
59
- "gitHead": "6bee8ebad7771ab470b4e7299fc8f2c0856b54b5"
59
+ "gitHead": "79193da558670f9e116c4fd0e798feb0970fa681"
60
60
  }
@@ -31,7 +31,7 @@ import {
31
31
  } from 'sprotty';
32
32
  import { SModelRootListener } from '../../base/model/update-model-command';
33
33
  import { GLSP_TYPES } from '../../base/types';
34
- import { getMatchingElements } from '../../utils/smodel-util';
34
+ import { getElements } from '../../utils/smodel-util';
35
35
  import { IFeedbackActionDispatcher } from '../tool-feedback/feedback-action-dispatcher';
36
36
  import { SelectFeedbackAction } from './select-feedback-action';
37
37
 
@@ -124,7 +124,7 @@ export class SelectionService implements SModelRootListener {
124
124
  }
125
125
 
126
126
  getSelectedElements(): Readonly<SModelElement & Selectable>[] {
127
- return getMatchingElements(this.root.index, isSelectable);
127
+ return getElements(this.root.index, Array.from(this.selectedElementIDs), isSelectable);
128
128
  }
129
129
 
130
130
  /**
@@ -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 { distinctAdd, ElementAndRoutingPoints, remove } from '@eclipse-glsp/protocol';
16
+ import { distinctAdd, ElementAndRoutingPoints, remove, TypeGuard } from '@eclipse-glsp/protocol';
17
17
  import {
18
18
  BoundsAware,
19
19
  ElementAndBounds,
@@ -74,6 +74,24 @@ export function getMatchingElements<T>(index: SModelIndex<SModelElement>, predic
74
74
  return Array.from(filter(index, predicate));
75
75
  }
76
76
 
77
+ /**
78
+ * Invokes the given model index to retrieve the corresponding model elements for the given set of ids. Ids that
79
+ * have no corresponding element in the index will be ignored.
80
+ * @param index THe model index.
81
+ * @param elementsIDs The element ids.
82
+ * @param guard Optional typeguard. If defined only elements that match the guard will be returned.
83
+ * @returns An array of the model elements that correspond to the given ids and filter predicate.
84
+ */
85
+ export function getElements<S extends SModelElement>(index: SModelIndex<SModelElement>, elementsIDs: string[], guard?: TypeGuard<S>): S[] {
86
+ // Internal filter function that filters out undefined model elements and runs an optional typeguard check.
87
+ const filterFn = (element?: SModelElement): element is S => {
88
+ if (element !== undefined) {
89
+ return guard ? guard(element) : true;
90
+ }
91
+ return false;
92
+ };
93
+ return elementsIDs.map(id => index.getById(id)).filter(filterFn);
94
+ }
77
95
  /**
78
96
  * Retrieves the amount of currently selected elements in the given {@link SModelIndex}.
79
97
  * @param index The {@link SModelIndex}.