@eclipse-glsp/client 0.10.0-next.385713d.170 → 0.10.0-next.4268ced.175

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 (98) hide show
  1. package/lib/base/container-modules.js.map +1 -1
  2. package/lib/base/editor-context-service.d.ts +2 -3
  3. package/lib/base/editor-context-service.d.ts.map +1 -1
  4. package/lib/base/editor-context-service.js +11 -12
  5. package/lib/base/editor-context-service.js.map +1 -1
  6. package/lib/base/source-uri-aware.d.ts +2 -17
  7. package/lib/base/source-uri-aware.d.ts.map +1 -1
  8. package/lib/base/source-uri-aware.js +4 -6
  9. package/lib/base/source-uri-aware.js.map +1 -1
  10. package/lib/features/change-bounds/movement-restrictor.d.ts +36 -6
  11. package/lib/features/change-bounds/movement-restrictor.d.ts.map +1 -1
  12. package/lib/features/change-bounds/movement-restrictor.js +54 -39
  13. package/lib/features/change-bounds/movement-restrictor.js.map +1 -1
  14. package/lib/features/change-bounds/snap.d.ts +20 -5
  15. package/lib/features/change-bounds/snap.d.ts.map +1 -1
  16. package/lib/features/change-bounds/snap.js +19 -8
  17. package/lib/features/change-bounds/snap.js.map +1 -1
  18. package/lib/features/layout/di.config.d.ts +2 -2
  19. package/lib/features/layout/di.config.d.ts.map +1 -1
  20. package/lib/features/layout/di.config.js +7 -5
  21. package/lib/features/layout/di.config.js.map +1 -1
  22. package/lib/features/layout/{layout-commands.d.ts → layout-elements-action.d.ts} +75 -57
  23. package/lib/features/layout/layout-elements-action.d.ts.map +1 -0
  24. package/lib/features/layout/{layout-commands.js → layout-elements-action.js} +153 -197
  25. package/lib/features/layout/layout-elements-action.js.map +1 -0
  26. package/lib/features/layout/layout-elements-action.spec.d.ts +3 -0
  27. package/lib/features/layout/layout-elements-action.spec.d.ts.map +1 -0
  28. package/lib/features/layout/{layout-commands.spec.js → layout-elements-action.spec.js} +63 -56
  29. package/lib/features/layout/layout-elements-action.spec.js.map +1 -0
  30. package/lib/features/select/selection-service.d.ts +12 -3
  31. package/lib/features/select/selection-service.d.ts.map +1 -1
  32. package/lib/features/select/selection-service.js +31 -45
  33. package/lib/features/select/selection-service.js.map +1 -1
  34. package/lib/features/select/selection-service.spec.js +1 -1
  35. package/lib/features/select/selection-service.spec.js.map +1 -1
  36. package/lib/features/tool-feedback/change-bounds-tool-feedback.js +1 -1
  37. package/lib/features/tool-feedback/change-bounds-tool-feedback.js.map +1 -1
  38. package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts +3 -2
  39. package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts.map +1 -1
  40. package/lib/features/tool-feedback/edge-edit-tool-feedback.js +13 -6
  41. package/lib/features/tool-feedback/edge-edit-tool-feedback.js.map +1 -1
  42. package/lib/features/validation/di.config.d.ts +0 -15
  43. package/lib/features/validation/di.config.d.ts.map +1 -1
  44. package/lib/features/validation/di.config.js +6 -4
  45. package/lib/features/validation/di.config.js.map +1 -1
  46. package/lib/features/validation/marker-navigator.d.ts +11 -17
  47. package/lib/features/validation/marker-navigator.d.ts.map +1 -1
  48. package/lib/features/validation/marker-navigator.js +32 -61
  49. package/lib/features/validation/marker-navigator.js.map +1 -1
  50. package/lib/features/validation/validate.d.ts +8 -19
  51. package/lib/features/validation/validate.d.ts.map +1 -1
  52. package/lib/features/validation/validate.js +23 -52
  53. package/lib/features/validation/validate.js.map +1 -1
  54. package/lib/index.d.ts +3 -3
  55. package/lib/index.d.ts.map +1 -1
  56. package/lib/index.js +3 -3
  57. package/lib/index.js.map +1 -1
  58. package/lib/lib/model.d.ts +1 -1
  59. package/lib/lib/model.d.ts.map +1 -1
  60. package/lib/lib/model.js +3 -3
  61. package/lib/lib/model.js.map +1 -1
  62. package/lib/model-source/glsp-diagram-server.d.ts +1 -1
  63. package/lib/model-source/glsp-diagram-server.d.ts.map +1 -1
  64. package/lib/model-source/glsp-diagram-server.js +1 -1
  65. package/lib/model-source/glsp-diagram-server.js.map +1 -1
  66. package/lib/utils/layout-utils.d.ts +4 -20
  67. package/lib/utils/layout-utils.d.ts.map +1 -1
  68. package/lib/utils/layout-utils.js +1 -1
  69. package/lib/utils/layout-utils.js.map +1 -1
  70. package/lib/views/base-view-module.d.ts.map +1 -1
  71. package/lib/views/base-view-module.js +3 -1
  72. package/lib/views/base-view-module.js.map +1 -1
  73. package/package.json +3 -3
  74. package/src/base/container-modules.ts +2 -2
  75. package/src/base/editor-context-service.ts +15 -7
  76. package/src/base/source-uri-aware.ts +5 -4
  77. package/src/features/change-bounds/movement-restrictor.ts +73 -43
  78. package/src/features/change-bounds/snap.ts +15 -12
  79. package/src/features/layout/di.config.ts +8 -6
  80. package/src/features/layout/{layout-commands.spec.ts → layout-elements-action.spec.ts} +56 -48
  81. package/src/features/layout/{layout-commands.ts → layout-elements-action.ts} +195 -207
  82. package/src/features/select/selection-service.spec.ts +1 -1
  83. package/src/features/select/selection-service.ts +37 -50
  84. package/src/features/tool-feedback/change-bounds-tool-feedback.ts +1 -1
  85. package/src/features/tool-feedback/edge-edit-tool-feedback.ts +14 -6
  86. package/src/features/validation/di.config.ts +10 -7
  87. package/src/features/validation/marker-navigator.ts +29 -66
  88. package/src/features/validation/validate.ts +30 -67
  89. package/src/index.ts +3 -3
  90. package/src/lib/model.ts +1 -1
  91. package/src/model-source/glsp-diagram-server.ts +1 -1
  92. package/src/utils/layout-utils.ts +7 -27
  93. package/src/views/base-view-module.ts +5 -1
  94. package/lib/features/layout/layout-commands.d.ts.map +0 -1
  95. package/lib/features/layout/layout-commands.js.map +0 -1
  96. package/lib/features/layout/layout-commands.spec.d.ts +0 -3
  97. package/lib/features/layout/layout-commands.spec.d.ts.map +0 -1
  98. package/lib/features/layout/layout-commands.spec.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"container-modules.js","sourceRoot":"","sources":["../../src/base/container-modules.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;AAElF,yCAAuD;AACvD,qCAciB;AACjB,qEAA6E;AAC7E,kEAAuE;AACvE,gEAA6E;AAC7E,gEAAoE;AACpE,gEAAmE;AACnE,2DAA2D;AAC3D,2DAA0D;AAC1D,4DAAgE;AAChE,0EAAkF;AAClF,iEAAmE;AACnE,iEAAoE;AACpE,6DAA4D;AAC5D,oEAAqE;AACrE,mEAAmE;AACnE,4DAA+F;AAC/F,iEAA2F;AAC3F,+DAAgE;AAChE,4CAA4C;AAE/B,QAAA,eAAe,GAAG;IAC3B,uBAAa;IACb,oBAAiB;IACjB,sBAAY;IACZ,sBAAY;IACZ,gCAAsB;IACtB,0BAAgB;IAChB,sBAAY;IACZ,sBAAY;IACZ,oBAAU;IACV,mBAAwB;IACxB,mBAAqB;IACrB,mBAAoB;IACpB,mBAAmB;IACnB,mBAAe;IACf,oBAAmB;IACnB,oBAAgB;IAChB,qCAAyB;IACzB,oBAAkB;IAClB,2BAAiB;IACjB,mBAAoB;IACpB,kCAAqB;IACrB,mBAAgB;IAChB,2BAAiB;IACjB,mBAAwB;IACxB,6BAAgB;IAChB,oBAAU;IACV,oBAAiB;IACjB,uBAAa;IACb,oBAAkB;IAClB,wBAAW;IACX,gDAAmC;IACnC,6BAAgB;IAChB,sBAAY;CACf,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,SAAgB,qBAAqB,CAAC,GAAG,OAA0B;IAC/D,MAAM,SAAS,GAAG,IAAI,qBAAS,EAAE,CAAC;IAClC,SAAS,CAAC,IAAI,CAAC,GAAG,uBAAe,EAAE,GAAG,OAAO,CAAC,CAAC;IAC/C,OAAO,SAAS,CAAC;AACrB,CAAC;AAJD,sDAIC"}
1
+ {"version":3,"file":"container-modules.js","sourceRoot":"","sources":["../../src/base/container-modules.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;AAElF,yCAAuD;AACvD,qCAciB;AACjB,qEAA6E;AAC7E,kEAAuE;AACvE,gEAA6E;AAC7E,gEAAoE;AACpE,gEAAmE;AACnE,2DAA2D;AAC3D,2DAA0D;AAC1D,4DAAwD;AACxD,0EAAkF;AAClF,iEAAmE;AACnE,iEAAoE;AACpE,6DAA4D;AAC5D,oEAAqE;AACrE,mEAAmE;AACnE,4DAA+F;AAC/F,iEAA2F;AAC3F,+DAAgE;AAChE,4CAA4C;AAE/B,QAAA,eAAe,GAAG;IAC3B,uBAAa;IACb,oBAAiB;IACjB,sBAAY;IACZ,sBAAY;IACZ,gCAAsB;IACtB,0BAAgB;IAChB,sBAAY;IACZ,sBAAY;IACZ,oBAAU;IACV,mBAAwB;IACxB,mBAAqB;IACrB,mBAAoB;IACpB,mBAAmB;IACnB,mBAAe;IACf,oBAAmB;IACnB,oBAAgB;IAChB,qCAAyB;IACzB,oBAAkB;IAClB,2BAAiB;IACjB,mBAAY;IACZ,kCAAqB;IACrB,mBAAgB;IAChB,2BAAiB;IACjB,mBAAwB;IACxB,6BAAgB;IAChB,oBAAU;IACV,oBAAiB;IACjB,uBAAa;IACb,oBAAkB;IAClB,wBAAW;IACX,gDAAmC;IACnC,6BAAgB;IAChB,sBAAY;CACf,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,SAAgB,qBAAqB,CAAC,GAAG,OAA0B;IAC/D,MAAM,SAAS,GAAG,IAAI,qBAAS,EAAE,CAAC;IAClC,SAAS,CAAC,IAAI,CAAC,GAAG,uBAAe,EAAE,GAAG,OAAO,CAAC,CAAC;IAC/C,OAAO,SAAS,CAAC;AACrB,CAAC;AAJD,sDAIC"}
@@ -32,12 +32,11 @@ export interface EditModeListener {
32
32
  * position, etc.).
33
33
  */
34
34
  export declare class EditorContextService implements IActionHandler {
35
- protected editModeListeners: EditModeListener[];
36
35
  protected selectionService: SelectionService;
37
36
  protected mousePositionTracker: MousePositionTracker;
38
- protected modelSource: () => Promise<ModelSource>;
37
+ protected editModeListeners: EditModeListener[];
38
+ protected modelSourceProvider: () => Promise<ModelSource>;
39
39
  protected _editMode: string;
40
- constructor(editModeListeners?: EditModeListener[]);
41
40
  register(editModeListener: EditModeListener): void;
42
41
  deregister(editModeListener: EditModeListener): void;
43
42
  get(args?: Args): EditorContext;
@@ -1 +1 @@
1
- {"version":3,"file":"editor-context-service.d.ts","sourceRoot":"","sources":["../../src/base/editor-context-service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,MAAM,EAAE,IAAI,EAAyB,aAAa,EAA6B,MAAM,wBAAwB,CAAC;AAEvH,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,oBAAoB,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACvG,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AAIxE,MAAM,WAAW,gBAAgB;IAC7B,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7D;AAED;;;;;;;;;;;GAWG;AACH,qBACa,oBAAqB,YAAW,cAAc;IAMO,SAAS,CAAC,iBAAiB,EAAE,gBAAgB,EAAE;IAL7E,SAAS,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAC/C,SAAS,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IAChD,SAAS,CAAC,WAAW,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC;IACrF,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;gBAE4C,iBAAiB,GAAE,gBAAgB,EAAO;IAElH,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,IAAI;IAIlD,UAAU,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,IAAI;IAIpD,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,GAAG,aAAa;IAQ/B,gBAAgB,CAAC,kBAAkB,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,aAAa;IAQ1E,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAQ5B,SAAS,CAAC,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIpD,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAQjD,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,IAAI,SAAS,IAAI,QAAQ,CAAC,UAAU,CAAC,CAEpC;IAED,IAAI,gBAAgB,IAAI,QAAQ,CAAC,aAAa,CAAC,EAAE,CAEhD;IAED,IAAI,UAAU,IAAI,OAAO,CAExB;CACJ;AAED,oBAAY,4BAA4B,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,CAAC"}
1
+ {"version":3,"file":"editor-context-service.d.ts","sourceRoot":"","sources":["../../src/base/editor-context-service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,MAAM,EAAE,IAAI,EAAyB,aAAa,EAA6B,MAAM,wBAAwB,CAAC;AAEvH,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,oBAAoB,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACvG,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AAIxE,MAAM,WAAW,gBAAgB;IAC7B,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7D;AAED;;;;;;;;;;;GAWG;AACH,qBACa,oBAAqB,YAAW,cAAc;IAEvD,SAAS,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAG7C,SAAS,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IAIrD,SAAS,CAAC,iBAAiB,EAAE,gBAAgB,EAAE,CAAM;IAGrD,SAAS,CAAC,mBAAmB,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC;IAE1D,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;IAE5B,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,IAAI;IAIlD,UAAU,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,IAAI;IAIpD,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,GAAG,aAAa;IAQ/B,gBAAgB,CAAC,kBAAkB,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,aAAa;IAQ1E,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAQ5B,SAAS,CAAC,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIpD,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAQjD,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,IAAI,SAAS,IAAI,QAAQ,CAAC,UAAU,CAAC,CAEpC;IAED,IAAI,gBAAgB,IAAI,QAAQ,CAAC,aAAa,CAAC,EAAE,CAEhD;IAED,IAAI,UAAU,IAAI,OAAO,CAExB;CACJ;AAED,oBAAY,4BAA4B,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,CAAC"}
@@ -8,9 +8,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
- var __param = (this && this.__param) || function (paramIndex, decorator) {
12
- return function (target, key) { decorator(target, key, paramIndex); }
13
- };
14
11
  Object.defineProperty(exports, "__esModule", { value: true });
15
12
  exports.EditorContextService = void 0;
16
13
  /********************************************************************************
@@ -47,8 +44,8 @@ const types_1 = require("./types");
47
44
  * position, etc.).
48
45
  */
49
46
  let EditorContextService = class EditorContextService {
50
- constructor(editModeListeners = []) {
51
- this.editModeListeners = editModeListeners;
47
+ constructor() {
48
+ this.editModeListeners = [];
52
49
  }
53
50
  register(editModeListener) {
54
51
  (0, protocol_1.distinctAdd)(this.editModeListeners, editModeListener);
@@ -81,9 +78,9 @@ let EditorContextService = class EditorContextService {
81
78
  this.editModeListeners.forEach(listener => listener.editModeChanged(oldValue, this.editMode));
82
79
  }
83
80
  async getSourceUri() {
84
- const modelSource = await this.modelSource();
81
+ const modelSource = await this.modelSourceProvider();
85
82
  if ((0, source_uri_aware_1.isSourceUriAware)(modelSource)) {
86
- return modelSource.getSourceURI();
83
+ return modelSource.sourceURI;
87
84
  }
88
85
  return undefined;
89
86
  }
@@ -108,15 +105,17 @@ __decorate([
108
105
  (0, inversify_1.inject)(sprotty_1.MousePositionTracker),
109
106
  __metadata("design:type", sprotty_1.MousePositionTracker)
110
107
  ], EditorContextService.prototype, "mousePositionTracker", void 0);
108
+ __decorate([
109
+ (0, inversify_1.multiInject)(types_1.TYPES.IEditModeListener),
110
+ (0, inversify_1.optional)(),
111
+ __metadata("design:type", Array)
112
+ ], EditorContextService.prototype, "editModeListeners", void 0);
111
113
  __decorate([
112
114
  (0, inversify_1.inject)(types_1.TYPES.ModelSourceProvider),
113
115
  __metadata("design:type", Function)
114
- ], EditorContextService.prototype, "modelSource", void 0);
116
+ ], EditorContextService.prototype, "modelSourceProvider", void 0);
115
117
  EditorContextService = __decorate([
116
- (0, inversify_1.injectable)(),
117
- __param(0, (0, inversify_1.multiInject)(types_1.TYPES.IEditModeListener)),
118
- __param(0, (0, inversify_1.optional)()),
119
- __metadata("design:paramtypes", [Array])
118
+ (0, inversify_1.injectable)()
120
119
  ], EditorContextService);
121
120
  exports.EditorContextService = EditorContextService;
122
121
  //# sourceMappingURL=editor-context-service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"editor-context-service.js","sourceRoot":"","sources":["../../src/base/editor-context-service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,qDAAuH;AACvH,yCAAsE;AACtE,qCAAuG;AACvG,4EAAwE;AACxE,yDAAsD;AACtD,mCAAgC;AAMhC;;;;;;;;;;;GAWG;AAEH,IAAa,oBAAoB,GAAjC,MAAa,oBAAoB;IAM7B,YAAwE,oBAAwC,EAAE;QAA1C,sBAAiB,GAAjB,iBAAiB,CAAyB;IAAG,CAAC;IAEtH,QAAQ,CAAC,gBAAkC;QACvC,IAAA,sBAAW,EAAC,IAAI,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;IAC1D,CAAC;IAED,UAAU,CAAC,gBAAkC;QACzC,IAAA,iBAAM,EAAC,IAAI,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;IACrD,CAAC;IAED,GAAG,CAAC,IAAW;QACX,OAAO;YACH,kBAAkB,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,EAAE,CAAC;YAC7E,iBAAiB,EAAE,IAAI,CAAC,oBAAoB,CAAC,qBAAqB;YAClE,IAAI;SACP,CAAC;IACN,CAAC;IAED,gBAAgB,CAAC,kBAA4B,EAAE,IAAW;QACtD,OAAO;YACH,kBAAkB;YAClB,iBAAiB,EAAE,IAAI,CAAC,oBAAoB,CAAC,qBAAqB;YAClE,IAAI;SACP,CAAC;IACN,CAAC;IAED,MAAM,CAAC,MAAc;QACjB,IAAI,4BAAiB,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE;YAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;YAChC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC;YACjC,IAAI,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC;SAC3C;IACL,CAAC;IAES,wBAAwB,CAAC,QAAgB;QAC/C,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAClG,CAAC;IAED,KAAK,CAAC,YAAY;QACd,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC7C,IAAI,IAAA,mCAAgB,EAAC,WAAW,CAAC,EAAE;YAC/B,OAAO,WAAW,CAAC,YAAY,EAAE,CAAC;SACrC;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;IAChD,CAAC;IAED,IAAI,gBAAgB;QAChB,OAAO,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,CAAC;IACvD,CAAC;IAED,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,QAAQ,KAAK,mBAAQ,CAAC,QAAQ,CAAC;IAC/C,CAAC;CACJ,CAAA;AAlEmC;IAA/B,IAAA,kBAAM,EAAC,aAAK,CAAC,gBAAgB,CAAC;8BAA6B,oCAAgB;8DAAC;AAC/C;IAA7B,IAAA,kBAAM,EAAC,8BAAoB,CAAC;8BAAiC,8BAAoB;kEAAC;AAChD;IAAlC,IAAA,kBAAM,EAAC,aAAK,CAAC,mBAAmB,CAAC;;yDAAmD;AAH5E,oBAAoB;IADhC,IAAA,sBAAU,GAAE;IAOI,WAAA,IAAA,uBAAW,EAAC,aAAK,CAAC,iBAAiB,CAAC,CAAA;IAAE,WAAA,IAAA,oBAAQ,GAAE,CAAA;;GANpD,oBAAoB,CAmEhC;AAnEY,oDAAoB"}
1
+ {"version":3,"file":"editor-context-service.js","sourceRoot":"","sources":["../../src/base/editor-context-service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,qDAAuH;AACvH,yCAAsE;AACtE,qCAAuG;AACvG,4EAAwE;AACxE,yDAAsD;AACtD,mCAAgC;AAMhC;;;;;;;;;;;GAWG;AAEH,IAAa,oBAAoB,GAAjC,MAAa,oBAAoB;IAAjC;QASc,sBAAiB,GAAuB,EAAE,CAAC;IAkEzD,CAAC;IA3DG,QAAQ,CAAC,gBAAkC;QACvC,IAAA,sBAAW,EAAC,IAAI,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;IAC1D,CAAC;IAED,UAAU,CAAC,gBAAkC;QACzC,IAAA,iBAAM,EAAC,IAAI,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;IACrD,CAAC;IAED,GAAG,CAAC,IAAW;QACX,OAAO;YACH,kBAAkB,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,EAAE,CAAC;YAC7E,iBAAiB,EAAE,IAAI,CAAC,oBAAoB,CAAC,qBAAqB;YAClE,IAAI;SACP,CAAC;IACN,CAAC;IAED,gBAAgB,CAAC,kBAA4B,EAAE,IAAW;QACtD,OAAO;YACH,kBAAkB;YAClB,iBAAiB,EAAE,IAAI,CAAC,oBAAoB,CAAC,qBAAqB;YAClE,IAAI;SACP,CAAC;IACN,CAAC;IAED,MAAM,CAAC,MAAc;QACjB,IAAI,4BAAiB,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE;YAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;YAChC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC;YACjC,IAAI,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC;SAC3C;IACL,CAAC;IAES,wBAAwB,CAAC,QAAgB;QAC/C,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAClG,CAAC;IAED,KAAK,CAAC,YAAY;QACd,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACrD,IAAI,IAAA,mCAAgB,EAAC,WAAW,CAAC,EAAE;YAC/B,OAAO,WAAW,CAAC,SAAS,CAAC;SAChC;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;IAChD,CAAC;IAED,IAAI,gBAAgB;QAChB,OAAO,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,CAAC;IACvD,CAAC;IAED,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,QAAQ,KAAK,mBAAQ,CAAC,QAAQ,CAAC;IAC/C,CAAC;CACJ,CAAA;AAzEG;IADC,IAAA,kBAAM,EAAC,aAAK,CAAC,gBAAgB,CAAC;8BACH,oCAAgB;8DAAC;AAG7C;IADC,IAAA,kBAAM,EAAC,8BAAoB,CAAC;8BACG,8BAAoB;kEAAC;AAIrD;IAFC,IAAA,uBAAW,EAAC,aAAK,CAAC,iBAAiB,CAAC;IACpC,IAAA,oBAAQ,GAAE;;+DAC0C;AAGrD;IADC,IAAA,kBAAM,EAAC,aAAK,CAAC,mBAAmB,CAAC;;iEACwB;AAZjD,oBAAoB;IADhC,IAAA,sBAAU,GAAE;GACA,oBAAoB,CA2EhC;AA3EY,oDAAoB"}
@@ -1,20 +1,5 @@
1
- /********************************************************************************
2
- * Copyright (c) 2020 EclipseSource and others.
3
- *
4
- * This program and the accompanying materials are made available under the
5
- * terms of the Eclipse Public License v. 2.0 which is available at
6
- * http://www.eclipse.org/legal/epl-2.0.
7
- *
8
- * This Source Code may also be made available under the following Secondary
9
- * Licenses when the conditions for such availability set forth in the Eclipse
10
- * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
- * with the GNU Classpath Exception which is available at
12
- * https://www.gnu.org/software/classpath/license.html.
13
- *
14
- * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
- ********************************************************************************/
16
- export declare abstract class SourceUriAware {
17
- abstract getSourceURI(): string;
1
+ export interface SourceUriAware {
2
+ sourceURI: string;
18
3
  }
19
4
  export declare function isSourceUriAware(obj: any): obj is SourceUriAware;
20
5
  //# sourceMappingURL=source-uri-aware.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"source-uri-aware.d.ts","sourceRoot":"","sources":["../../src/base/source-uri-aware.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,8BAAsB,cAAc;IAChC,QAAQ,CAAC,YAAY,IAAI,MAAM;CAClC;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,cAAc,CAEhE"}
1
+ {"version":3,"file":"source-uri-aware.d.ts","sourceRoot":"","sources":["../../src/base/source-uri-aware.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,cAAc;IAC3B,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,cAAc,CAEhE"}
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isSourceUriAware = exports.SourceUriAware = void 0;
3
+ exports.isSourceUriAware = void 0;
4
4
  /********************************************************************************
5
- * Copyright (c) 2020 EclipseSource and others.
5
+ * Copyright (c) 2020-2022 EclipseSource and others.
6
6
  *
7
7
  * This program and the accompanying materials are made available under the
8
8
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -16,11 +16,9 @@ exports.isSourceUriAware = exports.SourceUriAware = void 0;
16
16
  *
17
17
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
18
18
  ********************************************************************************/
19
- class SourceUriAware {
20
- }
21
- exports.SourceUriAware = SourceUriAware;
19
+ const protocol_1 = require("@eclipse-glsp/protocol");
22
20
  function isSourceUriAware(obj) {
23
- return obj !== undefined && typeof obj.getSourceURI === 'function';
21
+ return protocol_1.AnyObject.is(obj) && (0, protocol_1.hasStringProp)(obj, 'sourceURI');
24
22
  }
25
23
  exports.isSourceUriAware = isSourceUriAware;
26
24
  //# sourceMappingURL=source-uri-aware.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"source-uri-aware.js","sourceRoot":"","sources":["../../src/base/source-uri-aware.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,MAAsB,cAAc;CAEnC;AAFD,wCAEC;AAED,SAAgB,gBAAgB,CAAC,GAAQ;IACrC,OAAO,GAAG,KAAK,SAAS,IAAI,OAAO,GAAG,CAAC,YAAY,KAAK,UAAU,CAAC;AACvE,CAAC;AAFD,4CAEC"}
1
+ {"version":3,"file":"source-uri-aware.js","sourceRoot":"","sources":["../../src/base/source-uri-aware.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,qDAAkE;AAKlE,SAAgB,gBAAgB,CAAC,GAAQ;IACrC,OAAO,oBAAS,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,IAAA,wBAAa,EAAC,GAAG,EAAE,WAAW,CAAC,CAAC;AAChE,CAAC;AAFD,4CAEC"}
@@ -16,15 +16,45 @@
16
16
  import { Point } from '@eclipse-glsp/protocol';
17
17
  import { BoundsAware, SModelElement } from 'sprotty';
18
18
  import { ModifyCSSFeedbackAction } from '../tool-feedback/css-feedback';
19
+ /**
20
+ * A `MovementRestrictor` is an optional service that can be used by tools to validate
21
+ * whether a certain move operation (e.g. `ChangeBoundsOperation`) in the diagram is valid.
22
+ */
19
23
  export interface IMovementRestrictor {
20
- validate(newLocation: Point, element: SModelElement): boolean;
24
+ /**
25
+ * Validate whether moving the given element to a new given location is allowed.
26
+ * @param element The element that should be moved.
27
+ * @param newLocation The new location of the element.
28
+ * @returns `true` if the the element is movable and moving to the given location is allowed, `false` otherwise.
29
+ * Should also return `false` if the newLocation is `undefined`:
30
+ */
31
+ validate(element: SModelElement, newLocation?: Point): boolean;
32
+ /**
33
+ * Feedback css-classes. Can be applied to elements that did fail the validation.
34
+ */
21
35
  cssClasses?: string[];
22
36
  }
23
- export declare function createMovementRestrictionFeedback(element: SModelElement, movementRestrictor: IMovementRestrictor): ModifyCSSFeedbackAction;
24
- export declare function removeMovementRestrictionFeedback(element: SModelElement, movementRestrictor: IMovementRestrictor): ModifyCSSFeedbackAction;
25
- export declare class NoOverlapMovmentRestrictor implements IMovementRestrictor {
37
+ /**
38
+ * A `IMovementRestrictor` that checks for overlapping elements. Move operations
39
+ * are only valid if the element does not collide with another element after moving.
40
+ */
41
+ export declare class NoOverlapMovementRestrictor implements IMovementRestrictor {
26
42
  cssClasses: string[];
27
- validate(newLocation: Point, element: SModelElement): boolean;
43
+ validate(element: SModelElement, newLocation?: Point): boolean;
44
+ protected areOverlapping(element1: SModelElement & BoundsAware, element2: SModelElement & BoundsAware): boolean;
28
45
  }
29
- export declare function areOverlapping(element1: SModelElement & BoundsAware, element2: SModelElement & BoundsAware): boolean;
46
+ /**
47
+ * Utility function to create an action that applies the given {@link IMovementRestrictor.cssClasses} to the given element.
48
+ * @param element The element on which the css classes should be applied.
49
+ * @param movementRestrictor The movement restrictor whose cssClasses should be applied.
50
+ * @returns The corresponding {@link ModifyCSSFeedbackAction}
51
+ */
52
+ export declare function createMovementRestrictionFeedback(element: SModelElement, movementRestrictor: IMovementRestrictor): ModifyCSSFeedbackAction;
53
+ /**
54
+ * Utility function to create an action that removes the given {@link IMovementRestrictor.cssClasses} from the given element.
55
+ * @param element The element from which the css classes should be removed.
56
+ * @param movementRestrictor The movement restrictor whose cssClasses should be removed.
57
+ * @returns The corresponding {@link ModifyCSSFeedbackAction}
58
+ */
59
+ export declare function removeMovementRestrictionFeedback(element: SModelElement, movementRestrictor: IMovementRestrictor): ModifyCSSFeedbackAction;
30
60
  //# sourceMappingURL=movement-restrictor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"movement-restrictor.d.ts","sourceRoot":"","sources":["../../../src/features/change-bounds/movement-restrictor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAE/C,OAAO,EAAE,WAAW,EAAE,aAAa,EAAyB,MAAM,SAAS,CAAC;AAE5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAGxE,MAAM,WAAW,mBAAmB;IAChC,QAAQ,CAAC,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC;IAC9D,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,wBAAgB,iCAAiC,CAC7C,OAAO,EAAE,aAAa,EACtB,kBAAkB,EAAE,mBAAmB,GACxC,uBAAuB,CAMzB;AAED,wBAAgB,iCAAiC,CAC7C,OAAO,EAAE,aAAa,EACtB,kBAAkB,EAAE,mBAAmB,GACxC,uBAAuB,CAOzB;AAED,qBACa,0BAA2B,YAAW,mBAAmB;IAClE,UAAU,WAA4B;IAEtC,QAAQ,CAAC,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO;CAqBhE;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,aAAa,GAAG,WAAW,EAAE,QAAQ,EAAE,aAAa,GAAG,WAAW,GAAG,OAAO,CAmBpH"}
1
+ {"version":3,"file":"movement-restrictor.d.ts","sourceRoot":"","sources":["../../../src/features/change-bounds/movement-restrictor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAE/C,OAAO,EAAE,WAAW,EAAE,aAAa,EAAyB,MAAM,SAAS,CAAC;AAE5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAGxE;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAChC;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,EAAE,aAAa,EAAE,WAAW,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC;IAC/D;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED;;;GAGG;AACH,qBACa,2BAA4B,YAAW,mBAAmB;IACnE,UAAU,WAA4B;IAEtC,QAAQ,CAAC,OAAO,EAAE,aAAa,EAAE,WAAW,CAAC,EAAE,KAAK,GAAG,OAAO;IAsB9D,SAAS,CAAC,cAAc,CAAC,QAAQ,EAAE,aAAa,GAAG,WAAW,EAAE,QAAQ,EAAE,aAAa,GAAG,WAAW,GAAG,OAAO;CAoBlH;AAED;;;;;GAKG;AACH,wBAAgB,iCAAiC,CAC7C,OAAO,EAAE,aAAa,EACtB,kBAAkB,EAAE,mBAAmB,GACxC,uBAAuB,CAMzB;AAED;;;;;GAKG;AACH,wBAAgB,iCAAiC,CAC7C,OAAO,EAAE,aAAa,EACtB,kBAAkB,EAAE,mBAAmB,GACxC,uBAAuB,CAOzB"}
@@ -6,34 +6,22 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.areOverlapping = exports.NoOverlapMovmentRestrictor = exports.removeMovementRestrictionFeedback = exports.createMovementRestrictionFeedback = void 0;
9
+ exports.removeMovementRestrictionFeedback = exports.createMovementRestrictionFeedback = exports.NoOverlapMovementRestrictor = void 0;
10
10
  const inversify_1 = require("inversify");
11
11
  const sprotty_1 = require("sprotty");
12
12
  const viewpoint_util_1 = require("../../utils/viewpoint-util");
13
13
  const css_feedback_1 = require("../tool-feedback/css-feedback");
14
14
  const model_1 = require("./model");
15
- function createMovementRestrictionFeedback(element, movementRestrictor) {
16
- const elements = [element];
17
- if (element instanceof sprotty_1.SParentElement) {
18
- element.children.filter(child => child instanceof model_1.SResizeHandle).forEach(e => elements.push(e));
19
- }
20
- return css_feedback_1.ModifyCSSFeedbackAction.create({ elements, add: movementRestrictor.cssClasses });
21
- }
22
- exports.createMovementRestrictionFeedback = createMovementRestrictionFeedback;
23
- function removeMovementRestrictionFeedback(element, movementRestrictor) {
24
- const elements = [element];
25
- if (element instanceof sprotty_1.SParentElement) {
26
- element.children.filter(child => child instanceof model_1.SResizeHandle).forEach(e => elements.push(e));
27
- }
28
- return css_feedback_1.ModifyCSSFeedbackAction.create({ elements, remove: movementRestrictor.cssClasses });
29
- }
30
- exports.removeMovementRestrictionFeedback = removeMovementRestrictionFeedback;
31
- let NoOverlapMovmentRestrictor = class NoOverlapMovmentRestrictor {
15
+ /**
16
+ * A `IMovementRestrictor` that checks for overlapping elements. Move operations
17
+ * are only valid if the element does not collide with another element after moving.
18
+ */
19
+ let NoOverlapMovementRestrictor = class NoOverlapMovementRestrictor {
32
20
  constructor() {
33
21
  this.cssClasses = ['movement-not-allowed'];
34
22
  }
35
- validate(newLocation, element) {
36
- if (!(0, model_1.isBoundsAwareMoveable)(element)) {
23
+ validate(element, newLocation) {
24
+ if (!(0, model_1.isBoundsAwareMoveable)(element) || !newLocation) {
37
25
  return false;
38
26
  }
39
27
  // Create ghost element at the newLocation
@@ -49,29 +37,56 @@ let NoOverlapMovmentRestrictor = class NoOverlapMovmentRestrictor {
49
37
  return !Array.from(element.root.index
50
38
  .all()
51
39
  .filter(e => e.id !== ghostElement.id && e !== ghostElement.root && e instanceof sprotty_1.SNode)
52
- .map(e => e)).some(e => areOverlapping(e, ghostElement));
40
+ .map(e => e)).some(e => this.areOverlapping(e, ghostElement));
41
+ }
42
+ areOverlapping(element1, element2) {
43
+ const b1 = (0, viewpoint_util_1.toAbsoluteBounds)(element1);
44
+ const b2 = (0, viewpoint_util_1.toAbsoluteBounds)(element2);
45
+ const r1TopLeft = b1;
46
+ const r1BottomRight = { x: b1.x + b1.width, y: b1.y + b1.height };
47
+ const r2TopLeft = b2;
48
+ const r2BottomRight = { x: b2.x + b2.width, y: b2.y + b2.height };
49
+ // If one rectangle is on left side of other
50
+ if (r1TopLeft.x > r2BottomRight.x || r2TopLeft.x > r1BottomRight.x) {
51
+ return false;
52
+ }
53
+ // If one rectangle is above other
54
+ if (r1BottomRight.y < r2TopLeft.y || r2BottomRight.y < r1TopLeft.y) {
55
+ return false;
56
+ }
57
+ return true;
53
58
  }
54
59
  };
55
- NoOverlapMovmentRestrictor = __decorate([
60
+ NoOverlapMovementRestrictor = __decorate([
56
61
  (0, inversify_1.injectable)()
57
- ], NoOverlapMovmentRestrictor);
58
- exports.NoOverlapMovmentRestrictor = NoOverlapMovmentRestrictor;
59
- function areOverlapping(element1, element2) {
60
- const b1 = (0, viewpoint_util_1.toAbsoluteBounds)(element1);
61
- const b2 = (0, viewpoint_util_1.toAbsoluteBounds)(element2);
62
- const r1TopLeft = b1;
63
- const r1BottomRight = { x: b1.x + b1.width, y: b1.y + b1.height };
64
- const r2TopLeft = b2;
65
- const r2BottomRight = { x: b2.x + b2.width, y: b2.y + b2.height };
66
- // If one rectangle is on left side of other
67
- if (r1TopLeft.x > r2BottomRight.x || r2TopLeft.x > r1BottomRight.x) {
68
- return false;
62
+ ], NoOverlapMovementRestrictor);
63
+ exports.NoOverlapMovementRestrictor = NoOverlapMovementRestrictor;
64
+ /**
65
+ * Utility function to create an action that applies the given {@link IMovementRestrictor.cssClasses} to the given element.
66
+ * @param element The element on which the css classes should be applied.
67
+ * @param movementRestrictor The movement restrictor whose cssClasses should be applied.
68
+ * @returns The corresponding {@link ModifyCSSFeedbackAction}
69
+ */
70
+ function createMovementRestrictionFeedback(element, movementRestrictor) {
71
+ const elements = [element];
72
+ if (element instanceof sprotty_1.SParentElement) {
73
+ element.children.filter(child => child instanceof model_1.SResizeHandle).forEach(e => elements.push(e));
69
74
  }
70
- // If one rectangle is above other
71
- if (r1BottomRight.y < r2TopLeft.y || r2BottomRight.y < r1TopLeft.y) {
72
- return false;
75
+ return css_feedback_1.ModifyCSSFeedbackAction.create({ elements, add: movementRestrictor.cssClasses });
76
+ }
77
+ exports.createMovementRestrictionFeedback = createMovementRestrictionFeedback;
78
+ /**
79
+ * Utility function to create an action that removes the given {@link IMovementRestrictor.cssClasses} from the given element.
80
+ * @param element The element from which the css classes should be removed.
81
+ * @param movementRestrictor The movement restrictor whose cssClasses should be removed.
82
+ * @returns The corresponding {@link ModifyCSSFeedbackAction}
83
+ */
84
+ function removeMovementRestrictionFeedback(element, movementRestrictor) {
85
+ const elements = [element];
86
+ if (element instanceof sprotty_1.SParentElement) {
87
+ element.children.filter(child => child instanceof model_1.SResizeHandle).forEach(e => elements.push(e));
73
88
  }
74
- return true;
89
+ return css_feedback_1.ModifyCSSFeedbackAction.create({ elements, remove: movementRestrictor.cssClasses });
75
90
  }
76
- exports.areOverlapping = areOverlapping;
91
+ exports.removeMovementRestrictionFeedback = removeMovementRestrictionFeedback;
77
92
  //# sourceMappingURL=movement-restrictor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"movement-restrictor.js","sourceRoot":"","sources":["../../../src/features/change-bounds/movement-restrictor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"movement-restrictor.js","sourceRoot":"","sources":["../../../src/features/change-bounds/movement-restrictor.ts"],"names":[],"mappings":"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"}
@@ -13,12 +13,27 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
- import { Point } from '@eclipse-glsp/protocol';
16
+ import { Point, Writable } from '@eclipse-glsp/protocol';
17
17
  import { ISnapper, SModelElement } from 'sprotty';
18
- import { WriteablePoint } from '../../utils/layout-utils';
18
+ /**
19
+ * A {@link ISnapper} implementation that snaps all elements onto a fixed gride size.
20
+ * The default grid size is 10x10 pixel.
21
+ * To configure a custom grid size bind the `TYPES.ISnapper` service identifier
22
+ * to constant value, e.g:
23
+ *
24
+ * ```ts
25
+ * bind(TYPES.ISnapper).toConstantValue(new GridSnapper({x:25 ,y:25 }));
26
+ * ```
27
+ */
19
28
  export declare class GridSnapper implements ISnapper {
20
- get gridX(): number;
21
- get gridY(): number;
29
+ grid: {
30
+ x: number;
31
+ y: number;
32
+ };
33
+ constructor(grid?: {
34
+ x: number;
35
+ y: number;
36
+ });
22
37
  snap(position: Point, element: SModelElement): Point;
23
38
  }
24
39
  /**
@@ -32,7 +47,7 @@ export declare class GridSnapper implements ISnapper {
32
47
  export declare class PointPositionUpdater {
33
48
  protected snapper?: ISnapper | undefined;
34
49
  protected lastDragPosition?: Point;
35
- protected positionDelta: WriteablePoint;
50
+ protected positionDelta: Writable<Point>;
36
51
  constructor(snapper?: ISnapper | undefined);
37
52
  /**
38
53
  * Init the position with the {@link Point} of your mouse cursor.
@@ -1 +1 @@
1
- {"version":3,"file":"snap.d.ts","sourceRoot":"","sources":["../../../src/features/change-bounds/snap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAE/C,OAAO,EAAuB,QAAQ,EAAc,aAAa,EAAE,MAAM,SAAS,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,qBACa,WAAY,YAAW,QAAQ;IACxC,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,GAAG,KAAK;CAMvD;AAED;;;;;;;GAOG;AACH,qBAAa,oBAAoB;IAIjB,SAAS,CAAC,OAAO,CAAC;IAH9B,SAAS,CAAC,gBAAgB,CAAC,EAAE,KAAK,CAAC;IACnC,SAAS,CAAC,aAAa,EAAE,cAAc,CAAkB;gBAEnC,OAAO,CAAC,sBAAU;IAExC;;;;OAIG;IACI,sBAAsB,CAAC,aAAa,EAAE,KAAK,GAAG,IAAI;IAIzD;;;OAGG;IACI,2BAA2B,IAAI,OAAO;IAI7C;;;OAGG;IACI,aAAa,IAAI,IAAI;IAK5B;;;;;;;OAOG;IACI,cAAc,CAAC,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,GAAG,KAAK,GAAG,SAAS;IA8B7G,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,GAAG,KAAK;CAGlF"}
1
+ {"version":3,"file":"snap.d.ts","sourceRoot":"","sources":["../../../src/features/change-bounds/snap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEzD,OAAO,EAAuB,QAAQ,EAAc,aAAa,EAAE,MAAM,SAAS,CAAC;AAEnF;;;;;;;;;GASG;AACH,qBACa,WAAY,YAAW,QAAQ;IACrB,IAAI,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE;gBAA9B,IAAI,GAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAqB;IAEpE,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,GAAG,KAAK;CAMvD;AAED;;;;;;;GAOG;AACH,qBAAa,oBAAoB;IAIjB,SAAS,CAAC,OAAO,CAAC;IAH9B,SAAS,CAAC,gBAAgB,CAAC,EAAE,KAAK,CAAC;IACnC,SAAS,CAAC,aAAa,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAkB;gBAEpC,OAAO,CAAC,sBAAU;IAExC;;;;OAIG;IACI,sBAAsB,CAAC,aAAa,EAAE,KAAK,GAAG,IAAI;IAIzD;;;OAGG;IACI,2BAA2B,IAAI,OAAO;IAI7C;;;OAGG;IACI,aAAa,IAAI,IAAI;IAK5B;;;;;;;OAOG;IACI,cAAc,CAAC,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,GAAG,KAAK,GAAG,SAAS;IA8B7G,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,GAAG,KAAK;CAGlF"}
@@ -5,26 +5,37 @@ 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
+ };
8
11
  Object.defineProperty(exports, "__esModule", { value: true });
9
12
  exports.PointPositionUpdater = exports.GridSnapper = void 0;
10
13
  const inversify_1 = require("inversify");
11
14
  const sprotty_1 = require("sprotty");
15
+ /**
16
+ * A {@link ISnapper} implementation that snaps all elements onto a fixed gride size.
17
+ * The default grid size is 10x10 pixel.
18
+ * To configure a custom grid size bind the `TYPES.ISnapper` service identifier
19
+ * to constant value, e.g:
20
+ *
21
+ * ```ts
22
+ * bind(TYPES.ISnapper).toConstantValue(new GridSnapper({x:25 ,y:25 }));
23
+ * ```
24
+ */
12
25
  let GridSnapper = class GridSnapper {
13
- get gridX() {
14
- return 10;
15
- }
16
- get gridY() {
17
- return 10;
26
+ constructor(grid = { x: 10, y: 10 }) {
27
+ this.grid = grid;
18
28
  }
19
29
  snap(position, element) {
20
30
  return {
21
- x: Math.round(position.x / this.gridX) * this.gridX,
22
- y: Math.round(position.y / this.gridY) * this.gridY
31
+ x: Math.round(position.x / this.grid.x) * this.grid.x,
32
+ y: Math.round(position.y / this.grid.y) * this.grid.y
23
33
  };
24
34
  }
25
35
  };
26
36
  GridSnapper = __decorate([
27
- (0, inversify_1.injectable)()
37
+ (0, inversify_1.injectable)(),
38
+ __metadata("design:paramtypes", [Object])
28
39
  ], GridSnapper);
29
40
  exports.GridSnapper = GridSnapper;
30
41
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"snap.js","sourceRoot":"","sources":["../../../src/features/change-bounds/snap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"snap.js","sourceRoot":"","sources":["../../../src/features/change-bounds/snap.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,6 @@
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
16
  import { ContainerModule } from 'inversify';
17
- declare const layoutCommandsModule: ContainerModule;
18
- export default layoutCommandsModule;
17
+ declare const layoutModule: ContainerModule;
18
+ export default layoutModule;
19
19
  //# sourceMappingURL=di.config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"di.config.d.ts","sourceRoot":"","sources":["../../../src/features/layout/di.config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAO5C,QAAA,MAAM,oBAAoB,iBAOxB,CAAC;AAEH,eAAe,oBAAoB,CAAC"}
1
+ {"version":3,"file":"di.config.d.ts","sourceRoot":"","sources":["../../../src/features/layout/di.config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAQ5C,QAAA,MAAM,YAAY,iBAQhB,CAAC;AAEH,eAAe,YAAY,CAAC"}
@@ -17,16 +17,18 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  ********************************************************************************/
18
18
  const inversify_1 = require("inversify");
19
19
  const sprotty_1 = require("sprotty");
20
+ const __1 = require("../..");
20
21
  const freeform_layout_1 = require("./freeform-layout");
21
22
  const hbox_layout_1 = require("./hbox-layout");
22
- const layout_commands_1 = require("./layout-commands");
23
+ const layout_elements_action_1 = require("./layout-elements-action");
23
24
  const vbox_layout_1 = require("./vbox-layout");
24
- const layoutCommandsModule = new inversify_1.ContainerModule((bind, _unbind, isBound, rebind) => {
25
- (0, sprotty_1.configureCommand)({ bind, isBound }, layout_commands_1.ResizeElementsCommand);
26
- (0, sprotty_1.configureCommand)({ bind, isBound }, layout_commands_1.AlignElementsCommand);
25
+ const layoutModule = new inversify_1.ContainerModule((bind, _unbind, isBound, rebind) => {
26
+ const context = { bind, isBound };
27
+ (0, sprotty_1.configureActionHandler)(context, layout_elements_action_1.ResizeElementsAction.KIND, layout_elements_action_1.ResizeElementsActionHandler);
28
+ (0, sprotty_1.configureActionHandler)(context, layout_elements_action_1.AlignElementsAction.KIND, __1.AlignElementsActionHandler);
27
29
  rebind(sprotty_1.VBoxLayouter).to(vbox_layout_1.VBoxLayouterExt);
28
30
  rebind(sprotty_1.HBoxLayouter).to(hbox_layout_1.HBoxLayouterExt);
29
31
  (0, sprotty_1.configureLayout)({ bind, isBound }, freeform_layout_1.FreeFormLayouter.KIND, freeform_layout_1.FreeFormLayouter);
30
32
  });
31
- exports.default = layoutCommandsModule;
33
+ exports.default = layoutModule;
32
34
  //# sourceMappingURL=di.config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"di.config.js","sourceRoot":"","sources":["../../../src/features/layout/di.config.ts"],"names":[],"mappings":";;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,yCAA4C;AAC5C,qCAAwF;AACxF,uDAAqD;AACrD,+CAAgD;AAChD,uDAAgF;AAChF,+CAAgD;AAEhD,MAAM,oBAAoB,GAAG,IAAI,2BAAe,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;IAChF,IAAA,0BAAgB,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,uCAAqB,CAAC,CAAC;IAC3D,IAAA,0BAAgB,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,sCAAoB,CAAC,CAAC;IAE1D,MAAM,CAAC,sBAAY,CAAC,CAAC,EAAE,CAAC,6BAAe,CAAC,CAAC;IACzC,MAAM,CAAC,sBAAY,CAAC,CAAC,EAAE,CAAC,6BAAe,CAAC,CAAC;IACzC,IAAA,yBAAe,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,kCAAgB,CAAC,IAAI,EAAE,kCAAgB,CAAC,CAAC;AAChF,CAAC,CAAC,CAAC;AAEH,kBAAe,oBAAoB,CAAC"}
1
+ {"version":3,"file":"di.config.js","sourceRoot":"","sources":["../../../src/features/layout/di.config.ts"],"names":[],"mappings":";;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,yCAA4C;AAC5C,qCAA8F;AAC9F,6BAAmD;AACnD,uDAAqD;AACrD,+CAAgD;AAChD,qEAAkH;AAClH,+CAAgD;AAEhD,MAAM,YAAY,GAAG,IAAI,2BAAe,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;IACxE,MAAM,OAAO,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAClC,IAAA,gCAAsB,EAAC,OAAO,EAAE,6CAAoB,CAAC,IAAI,EAAE,oDAA2B,CAAC,CAAC;IACxF,IAAA,gCAAsB,EAAC,OAAO,EAAE,4CAAmB,CAAC,IAAI,EAAE,8BAA0B,CAAC,CAAC;IAEtF,MAAM,CAAC,sBAAY,CAAC,CAAC,EAAE,CAAC,6BAAe,CAAC,CAAC;IACzC,MAAM,CAAC,sBAAY,CAAC,CAAC,EAAE,CAAC,6BAAe,CAAC,CAAC;IACzC,IAAA,yBAAe,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,kCAAgB,CAAC,IAAI,EAAE,kCAAgB,CAAC,CAAC;AAChF,CAAC,CAAC,CAAC;AAEH,kBAAe,YAAY,CAAC"}