@eclipse-glsp/server 1.1.0-next.3d7585d.42 → 1.1.0-next.44aae0c.44

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 (175) hide show
  1. package/lib/common/command/command-stack.d.ts +45 -14
  2. package/lib/common/command/command-stack.d.ts.map +1 -1
  3. package/lib/common/command/command-stack.js +78 -9
  4. package/lib/common/command/command-stack.js.map +1 -1
  5. package/lib/common/command/command-stack.spec.d.ts +2 -0
  6. package/lib/common/command/command-stack.spec.d.ts.map +1 -0
  7. package/lib/common/command/command-stack.spec.js +207 -0
  8. package/lib/common/command/command-stack.spec.js.map +1 -0
  9. package/lib/common/command/command.d.ts +34 -7
  10. package/lib/common/command/command.d.ts.map +1 -1
  11. package/lib/common/command/command.js +73 -0
  12. package/lib/common/command/command.js.map +1 -1
  13. package/lib/common/command/command.spec.d.ts +2 -0
  14. package/lib/common/command/command.spec.d.ts.map +1 -0
  15. package/lib/common/command/command.spec.js +86 -0
  16. package/lib/common/command/command.spec.js.map +1 -0
  17. package/lib/common/command/recording-command.d.ts +75 -0
  18. package/lib/common/command/recording-command.d.ts.map +1 -0
  19. package/lib/common/command/recording-command.js +99 -0
  20. package/lib/common/command/recording-command.js.map +1 -0
  21. package/lib/common/command/recording-command.spec.d.ts +17 -0
  22. package/lib/common/command/recording-command.spec.d.ts.map +1 -0
  23. package/lib/common/command/recording-command.spec.js +62 -0
  24. package/lib/common/command/recording-command.spec.js.map +1 -0
  25. package/lib/common/command/undo-redo-action-handler.d.ts +28 -0
  26. package/lib/common/command/undo-redo-action-handler.d.ts.map +1 -0
  27. package/lib/common/command/undo-redo-action-handler.js +72 -0
  28. package/lib/common/command/undo-redo-action-handler.js.map +1 -0
  29. package/lib/common/di/diagram-module.d.ts +3 -0
  30. package/lib/common/di/diagram-module.d.ts.map +1 -1
  31. package/lib/common/di/diagram-module.js +12 -0
  32. package/lib/common/di/diagram-module.js.map +1 -1
  33. package/lib/common/features/contextactions/tool-palette-item-provider.d.ts +1 -1
  34. package/lib/common/features/contextactions/tool-palette-item-provider.d.ts.map +1 -1
  35. package/lib/common/features/contextactions/tool-palette-item-provider.js +2 -4
  36. package/lib/common/features/contextactions/tool-palette-item-provider.js.map +1 -1
  37. package/lib/common/{gmodel → features/layout}/computed-bounds-action-handler.d.ts +8 -3
  38. package/lib/common/features/layout/computed-bounds-action-handler.d.ts.map +1 -0
  39. package/lib/common/{gmodel → features/layout}/computed-bounds-action-handler.js +8 -3
  40. package/lib/common/features/layout/computed-bounds-action-handler.js.map +1 -0
  41. package/lib/common/features/layout/layout-operation-handler.d.ts +12 -3
  42. package/lib/common/features/layout/layout-operation-handler.d.ts.map +1 -1
  43. package/lib/common/features/layout/layout-operation-handler.js +26 -10
  44. package/lib/common/features/layout/layout-operation-handler.js.map +1 -1
  45. package/lib/common/features/model/model-state.d.ts +0 -2
  46. package/lib/common/features/model/model-state.d.ts.map +1 -1
  47. package/lib/common/features/model/model-state.js +0 -1
  48. package/lib/common/features/model/model-state.js.map +1 -1
  49. package/lib/common/features/model/model-submission-handler.d.ts +2 -0
  50. package/lib/common/features/model/model-submission-handler.d.ts.map +1 -1
  51. package/lib/common/features/model/model-submission-handler.js +7 -2
  52. package/lib/common/features/model/model-submission-handler.js.map +1 -1
  53. package/lib/common/features/model/save-model-action-handler.d.ts +2 -2
  54. package/lib/common/features/model/save-model-action-handler.d.ts.map +1 -1
  55. package/lib/common/features/model/save-model-action-handler.js +5 -5
  56. package/lib/common/features/model/save-model-action-handler.js.map +1 -1
  57. package/lib/common/gmodel/apply-label-edit-operation-handler.d.ts +4 -5
  58. package/lib/common/gmodel/apply-label-edit-operation-handler.d.ts.map +1 -1
  59. package/lib/common/gmodel/apply-label-edit-operation-handler.js +12 -21
  60. package/lib/common/gmodel/apply-label-edit-operation-handler.js.map +1 -1
  61. package/lib/common/gmodel/change-bounds-operation-handler.d.ts +9 -6
  62. package/lib/common/gmodel/change-bounds-operation-handler.d.ts.map +1 -1
  63. package/lib/common/gmodel/change-bounds-operation-handler.js +14 -14
  64. package/lib/common/gmodel/change-bounds-operation-handler.js.map +1 -1
  65. package/lib/common/gmodel/change-routing-points-operation-handler.d.ts +5 -5
  66. package/lib/common/gmodel/change-routing-points-operation-handler.d.ts.map +1 -1
  67. package/lib/common/gmodel/change-routing-points-operation-handler.js +11 -14
  68. package/lib/common/gmodel/change-routing-points-operation-handler.js.map +1 -1
  69. package/lib/common/{operations → gmodel}/cut-operation-handler.d.ts +5 -4
  70. package/lib/common/gmodel/cut-operation-handler.d.ts.map +1 -0
  71. package/lib/common/{operations → gmodel}/cut-operation-handler.js +13 -11
  72. package/lib/common/gmodel/cut-operation-handler.js.map +1 -0
  73. package/lib/common/gmodel/delete-operation-handler.d.ts +6 -6
  74. package/lib/common/gmodel/delete-operation-handler.d.ts.map +1 -1
  75. package/lib/common/gmodel/delete-operation-handler.js +13 -10
  76. package/lib/common/gmodel/delete-operation-handler.js.map +1 -1
  77. package/lib/common/gmodel/gmodel-create-edge-operation-handler.d.ts +11 -7
  78. package/lib/common/gmodel/gmodel-create-edge-operation-handler.d.ts.map +1 -1
  79. package/lib/common/gmodel/gmodel-create-edge-operation-handler.js +12 -13
  80. package/lib/common/gmodel/gmodel-create-edge-operation-handler.js.map +1 -1
  81. package/lib/common/gmodel/gmodel-create-node-operation-handler.d.ts +32 -5
  82. package/lib/common/gmodel/gmodel-create-node-operation-handler.d.ts.map +1 -1
  83. package/lib/common/gmodel/gmodel-create-node-operation-handler.js +45 -3
  84. package/lib/common/gmodel/gmodel-create-node-operation-handler.js.map +1 -1
  85. package/lib/common/gmodel/gmodel-diagram-module.d.ts +8 -8
  86. package/lib/common/gmodel/gmodel-diagram-module.d.ts.map +1 -1
  87. package/lib/common/gmodel/gmodel-diagram-module.js +15 -21
  88. package/lib/common/gmodel/gmodel-diagram-module.js.map +1 -1
  89. package/lib/common/gmodel/gmodel-operation-handler.d.ts +23 -0
  90. package/lib/common/gmodel/gmodel-operation-handler.d.ts.map +1 -0
  91. package/lib/common/gmodel/gmodel-operation-handler.js +43 -0
  92. package/lib/common/gmodel/gmodel-operation-handler.js.map +1 -0
  93. package/lib/common/gmodel/index.d.ts +2 -1
  94. package/lib/common/gmodel/index.d.ts.map +1 -1
  95. package/lib/common/gmodel/index.js +2 -1
  96. package/lib/common/gmodel/index.js.map +1 -1
  97. package/lib/common/gmodel/paste-operation-handler.d.ts +7 -6
  98. package/lib/common/gmodel/paste-operation-handler.d.ts.map +1 -1
  99. package/lib/common/gmodel/paste-operation-handler.js +20 -15
  100. package/lib/common/gmodel/paste-operation-handler.js.map +1 -1
  101. package/lib/common/gmodel/reconnect-edge-operation-handler.d.ts +5 -5
  102. package/lib/common/gmodel/reconnect-edge-operation-handler.d.ts.map +1 -1
  103. package/lib/common/gmodel/reconnect-edge-operation-handler.js +11 -14
  104. package/lib/common/gmodel/reconnect-edge-operation-handler.js.map +1 -1
  105. package/lib/common/index.d.ts +2 -1
  106. package/lib/common/index.d.ts.map +1 -1
  107. package/lib/common/index.js +2 -1
  108. package/lib/common/index.js.map +1 -1
  109. package/lib/common/operations/compound-operation-handler.d.ts +5 -5
  110. package/lib/common/operations/compound-operation-handler.d.ts.map +1 -1
  111. package/lib/common/operations/compound-operation-handler.js +37 -9
  112. package/lib/common/operations/compound-operation-handler.js.map +1 -1
  113. package/lib/common/operations/create-operation-handler.d.ts +8 -40
  114. package/lib/common/operations/create-operation-handler.d.ts.map +1 -1
  115. package/lib/common/operations/create-operation-handler.js +26 -85
  116. package/lib/common/operations/create-operation-handler.js.map +1 -1
  117. package/lib/common/operations/operation-action-handler.d.ts +10 -1
  118. package/lib/common/operations/operation-action-handler.d.ts.map +1 -1
  119. package/lib/common/operations/operation-action-handler.js +37 -22
  120. package/lib/common/operations/operation-action-handler.js.map +1 -1
  121. package/lib/common/operations/operation-handler-registry.d.ts +11 -2
  122. package/lib/common/operations/operation-handler-registry.d.ts.map +1 -1
  123. package/lib/common/operations/operation-handler-registry.js +31 -2
  124. package/lib/common/operations/operation-handler-registry.js.map +1 -1
  125. package/lib/common/operations/operation-handler.d.ts +28 -11
  126. package/lib/common/operations/operation-handler.d.ts.map +1 -1
  127. package/lib/common/operations/operation-handler.js +50 -1
  128. package/lib/common/operations/operation-handler.js.map +1 -1
  129. package/lib/common/test/mock-util.d.ts +14 -1
  130. package/lib/common/test/mock-util.d.ts.map +1 -1
  131. package/lib/common/test/mock-util.js +42 -37
  132. package/lib/common/test/mock-util.js.map +1 -1
  133. package/package.json +4 -3
  134. package/src/common/command/command-stack.spec.ts +239 -0
  135. package/src/common/command/command-stack.ts +106 -20
  136. package/src/common/command/command.spec.ts +92 -0
  137. package/src/common/command/command.ts +96 -7
  138. package/src/common/command/recording-command.spec.ts +74 -0
  139. package/src/common/command/recording-command.ts +119 -0
  140. package/src/common/command/undo-redo-action-handler.ts +57 -0
  141. package/src/common/di/diagram-module.ts +13 -0
  142. package/src/common/features/contextactions/tool-palette-item-provider.ts +2 -4
  143. package/src/common/{gmodel → features/layout}/computed-bounds-action-handler.ts +9 -4
  144. package/src/common/features/layout/layout-operation-handler.ts +26 -11
  145. package/src/common/features/model/model-state.ts +0 -3
  146. package/src/common/features/model/model-submission-handler.ts +6 -2
  147. package/src/common/features/model/save-model-action-handler.ts +5 -6
  148. package/src/common/gmodel/apply-label-edit-operation-handler.ts +13 -15
  149. package/src/common/gmodel/change-bounds-operation-handler.ts +12 -8
  150. package/src/common/gmodel/change-routing-points-operation-handler.ts +8 -7
  151. package/src/common/{operations → gmodel}/cut-operation-handler.ts +9 -8
  152. package/src/common/gmodel/delete-operation-handler.ts +16 -10
  153. package/src/common/gmodel/gmodel-create-edge-operation-handler.ts +16 -10
  154. package/src/common/gmodel/gmodel-create-node-operation-handler.ts +54 -6
  155. package/src/common/gmodel/gmodel-diagram-module.ts +22 -27
  156. package/src/common/gmodel/gmodel-operation-handler.ts +31 -0
  157. package/src/common/gmodel/index.ts +2 -1
  158. package/src/common/gmodel/paste-operation-handler.ts +19 -11
  159. package/src/common/gmodel/reconnect-edge-operation-handler.ts +8 -7
  160. package/src/common/index.ts +2 -1
  161. package/src/common/operations/compound-operation-handler.ts +14 -12
  162. package/src/common/operations/create-operation-handler.ts +17 -74
  163. package/src/common/operations/operation-action-handler.ts +51 -27
  164. package/src/common/operations/operation-handler-registry.ts +18 -3
  165. package/src/common/operations/operation-handler.ts +38 -13
  166. package/src/common/test/mock-util.ts +42 -36
  167. package/lib/common/gmodel/apply-label-edit-operation-handler.spec.d.ts +0 -2
  168. package/lib/common/gmodel/apply-label-edit-operation-handler.spec.d.ts.map +0 -1
  169. package/lib/common/gmodel/apply-label-edit-operation-handler.spec.js +0 -38
  170. package/lib/common/gmodel/apply-label-edit-operation-handler.spec.js.map +0 -1
  171. package/lib/common/gmodel/computed-bounds-action-handler.d.ts.map +0 -1
  172. package/lib/common/gmodel/computed-bounds-action-handler.js.map +0 -1
  173. package/lib/common/operations/cut-operation-handler.d.ts.map +0 -1
  174. package/lib/common/operations/cut-operation-handler.js.map +0 -1
  175. package/src/common/gmodel/apply-label-edit-operation-handler.spec.ts +0 -40
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ /********************************************************************************
4
+ * Copyright (c) 2023 EclipseSource and others.
5
+ *
6
+ * This program and the accompanying materials are made available under the
7
+ * terms of the Eclipse Public License v. 2.0 which is available at
8
+ * http://www.eclipse.org/legal/epl-2.0.
9
+ *
10
+ * This Source Code may also be made available under the following Secondary
11
+ * Licenses when the conditions for such availability set forth in the Eclipse
12
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
13
+ * with the GNU Classpath Exception which is available at
14
+ * https://www.gnu.org/software/classpath/license.html.
15
+ *
16
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
17
+ ********************************************************************************/
18
+ const chai_1 = require("chai");
19
+ const sinon = require("sinon");
20
+ const mock_util_1 = require("../test/mock-util");
21
+ const command_1 = require("./command");
22
+ describe('CompoundCommand', () => {
23
+ const sandbox = sinon.createSandbox();
24
+ const command1 = sandbox.stub(new mock_util_1.StubCommand());
25
+ const command2 = sandbox.stub(new mock_util_1.StubCommand());
26
+ const command3 = sandbox.stub(new mock_util_1.StubCommand());
27
+ const compoundCommand = new command_1.CompoundCommand(command1, command2, command3);
28
+ afterEach(() => {
29
+ sandbox.reset();
30
+ });
31
+ describe('execute', () => {
32
+ it('Should execute the subcommands in order', async () => {
33
+ await compoundCommand.execute();
34
+ (0, chai_1.expect)(command1.execute.calledOnce).to.be.true;
35
+ (0, chai_1.expect)(command2.execute.calledOnce).to.be.true;
36
+ (0, chai_1.expect)(command3.execute.calledOnce).to.be.true;
37
+ (0, chai_1.expect)(command1.execute.calledBefore(command2.execute)).to.be.true;
38
+ (0, chai_1.expect)(command2.execute.calledBefore(command3.execute)).to.be.true;
39
+ });
40
+ it('Should undo partially executed subcommands in case of an error', async () => {
41
+ command3.execute.throwsException();
42
+ await (0, mock_util_1.expectToThrowAsync)(() => compoundCommand.execute());
43
+ (0, chai_1.expect)(command1.execute.calledOnce).to.be.true;
44
+ (0, chai_1.expect)(command2.execute.calledOnce).to.be.true;
45
+ (0, chai_1.expect)(command3.execute.calledOnce).to.be.true;
46
+ (0, chai_1.expect)(command1.undo.calledOnce).to.be.true;
47
+ (0, chai_1.expect)(command2.undo.calledOnce).to.be.true;
48
+ });
49
+ });
50
+ describe('undo', () => {
51
+ it('Should undo the subcommands in reverse order', async () => {
52
+ await compoundCommand.undo();
53
+ (0, chai_1.expect)(command1.undo.calledOnce).to.be.true;
54
+ (0, chai_1.expect)(command2.undo.calledOnce).to.be.true;
55
+ (0, chai_1.expect)(command3.undo.calledOnce).to.be.true;
56
+ (0, chai_1.expect)(command1.undo.calledAfter(command2.undo)).to.be.true;
57
+ (0, chai_1.expect)(command2.undo.calledAfter(command3.undo)).to.be.true;
58
+ });
59
+ it('Should redo partially undone subcommands in case of an error', async () => {
60
+ command1.undo.throwsException();
61
+ await (0, mock_util_1.expectToThrowAsync)(() => compoundCommand.undo());
62
+ (0, chai_1.expect)(command1.undo.calledOnce).to.be.true;
63
+ (0, chai_1.expect)(command2.undo.calledOnce).to.be.true;
64
+ (0, chai_1.expect)(command3.undo.calledOnce).to.be.true;
65
+ (0, chai_1.expect)(command3.redo.calledOnce).to.be.true;
66
+ (0, chai_1.expect)(command2.redo.calledOnce).to.be.true;
67
+ });
68
+ });
69
+ describe('canUndo', () => {
70
+ it('should return true if all subcommands can be undone', () => {
71
+ var _a, _b, _c;
72
+ (_a = command1.canUndo) === null || _a === void 0 ? void 0 : _a.returns(true);
73
+ (_b = command2.canUndo) === null || _b === void 0 ? void 0 : _b.returns(true);
74
+ (_c = command3.canUndo) === null || _c === void 0 ? void 0 : _c.returns(true);
75
+ (0, chai_1.expect)(compoundCommand.canUndo()).to.be.true;
76
+ });
77
+ it('should return true if anyof the subcommands cannot be undone', () => {
78
+ var _a, _b, _c;
79
+ (_a = command1.canUndo) === null || _a === void 0 ? void 0 : _a.returns(true);
80
+ (_b = command2.canUndo) === null || _b === void 0 ? void 0 : _b.returns(false);
81
+ (_c = command3.canUndo) === null || _c === void 0 ? void 0 : _c.returns(true);
82
+ (0, chai_1.expect)(compoundCommand.canUndo()).to.be.true;
83
+ });
84
+ });
85
+ });
86
+ //# sourceMappingURL=command.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.spec.js","sourceRoot":"","sources":["../../../src/common/command/command.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,75 @@
1
+ /********************************************************************************
2
+ * Copyright (c) 2023 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 { GModelRootSchema } from '@eclipse-glsp/graph';
17
+ import { AnyObject, MaybePromise } from '@eclipse-glsp/protocol';
18
+ import * as jsonPatch from 'fast-json-patch';
19
+ import { GModelSerializer } from '../features/model/gmodel-serializer';
20
+ import { ModelState } from '../features/model/model-state';
21
+ import { Command } from './command';
22
+ /**
23
+ * An abstract implementation for {@link Command} that should records changes made to a JSON object during execution.
24
+ * These changes are recorded in the form of json patches.
25
+ */
26
+ export declare abstract class AbstractRecordingCommand<JsonObject extends AnyObject> implements Command {
27
+ protected undoPatch?: jsonPatch.Operation[];
28
+ protected redoPatch?: jsonPatch.Operation[];
29
+ execute(): Promise<void>;
30
+ /**
31
+ * Retrieves the current state of the JSON object. Is called right before and
32
+ * right after {@link AbstractRecordingCommand.doExecute} to derive the undo & redo patches.
33
+ * @returns The current state of the JSON object
34
+ */
35
+ protected abstract getJsonObject(): JsonObject;
36
+ /**
37
+ * The actual execution i.e. series of changes applied to the JSOn object that should be captured.
38
+ */
39
+ protected abstract doExecute(): MaybePromise<void>;
40
+ protected applyPatch(object: JsonObject, patch: jsonPatch.Operation[]): void;
41
+ /**
42
+ * Captures the original state of the JSON object before executing the command routine.
43
+ * This implementation cannot clone circular structures as it relies on `JSON.stringify`.
44
+ * @param object The object that should be cloned
45
+ * @returns A deep clone of the given object
46
+ */
47
+ protected deepClone(object: JsonObject): JsonObject;
48
+ undo(): void;
49
+ redo(): void;
50
+ canUndo(): boolean;
51
+ }
52
+ /**
53
+ * Simple base implementation of {@link AbstractRecordingCommand} that records the changes made to the given JSON object during
54
+ * the the given `doExecute` function.
55
+ */
56
+ export declare class RecordingCommand<JsonObject extends AnyObject = AnyObject> extends AbstractRecordingCommand<JsonObject> {
57
+ protected jsonObject: JsonObject;
58
+ protected doExecute: () => MaybePromise<void>;
59
+ constructor(jsonObject: JsonObject, doExecute: () => MaybePromise<void>);
60
+ protected getJsonObject(): JsonObject;
61
+ }
62
+ /**
63
+ * Simple base implementation of {@link AbstractRecordingCommand} that allows recording of changes made
64
+ * to the `GModelRoot` ({@link ModelState.root}) during the given `doExecute` function
65
+ */
66
+ export declare class GModelRecordingCommand extends AbstractRecordingCommand<GModelRootSchema> {
67
+ protected modelState: ModelState;
68
+ protected serializer: GModelSerializer;
69
+ protected doExecute: () => MaybePromise<void>;
70
+ constructor(modelState: ModelState, serializer: GModelSerializer, doExecute: () => MaybePromise<void>);
71
+ execute(): Promise<void>;
72
+ protected getJsonObject(): GModelRootSchema;
73
+ protected applyPatch(rootSchema: GModelRootSchema, patch: jsonPatch.Operation[]): void;
74
+ }
75
+ //# sourceMappingURL=recording-command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recording-command.d.ts","sourceRoot":"","sources":["../../../src/common/command/recording-command.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,KAAK,SAAS,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC;;;GAGG;AACH,8BAAsB,wBAAwB,CAAC,UAAU,SAAS,SAAS,CAAE,YAAW,OAAO;IAC3F,SAAS,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,EAAE,CAAC;IAC5C,SAAS,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,EAAE,CAAC;IAEtC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ9B;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,aAAa,IAAI,UAAU;IAE9C;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,SAAS,IAAI,YAAY,CAAC,IAAI,CAAC;IAElD,SAAS,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,SAAS,EAAE,GAAG,IAAI;IAI5E;;;;;OAKG;IACH,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU;IAInD,IAAI,IAAI,IAAI;IAMZ,IAAI,IAAI,IAAI;IAMZ,OAAO,IAAI,OAAO;CAGrB;AAED;;;GAGG;AACH,qBAAa,gBAAgB,CAAC,UAAU,SAAS,SAAS,GAAG,SAAS,CAAE,SAAQ,wBAAwB,CAAC,UAAU,CAAC;IACpG,SAAS,CAAC,UAAU,EAAE,UAAU;IAAE,SAAS,CAAC,SAAS,EAAE,MAAM,YAAY,CAAC,IAAI,CAAC;gBAArE,UAAU,EAAE,UAAU,EAAY,SAAS,EAAE,MAAM,YAAY,CAAC,IAAI,CAAC;IAI3F,SAAS,CAAC,aAAa,IAAI,UAAU;CAGxC;AAED;;;GAGG;AACH,qBAAa,sBAAuB,SAAQ,wBAAwB,CAAC,gBAAgB,CAAC;IACtE,SAAS,CAAC,UAAU,EAAE,UAAU;IAAE,SAAS,CAAC,UAAU,EAAE,gBAAgB;IAAE,SAAS,CAAC,SAAS,EAAE,MAAM,YAAY,CAAC,IAAI,CAAC;gBAA7G,UAAU,EAAE,UAAU,EAAY,UAAU,EAAE,gBAAgB,EAAY,SAAS,EAAE,MAAM,YAAY,CAAC,IAAI,CAAC;IAIpH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAKvC,SAAS,CAAC,aAAa,IAAI,gBAAgB;cAIxB,UAAU,CAAC,UAAU,EAAE,gBAAgB,EAAE,KAAK,EAAE,SAAS,CAAC,SAAS,EAAE,GAAG,IAAI;CAKlG"}
@@ -0,0 +1,99 @@
1
+ "use strict";
2
+ /********************************************************************************
3
+ * Copyright (c) 2023 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
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.GModelRecordingCommand = exports.RecordingCommand = exports.AbstractRecordingCommand = void 0;
19
+ const jsonPatch = require("fast-json-patch");
20
+ /**
21
+ * An abstract implementation for {@link Command} that should records changes made to a JSON object during execution.
22
+ * These changes are recorded in the form of json patches.
23
+ */
24
+ class AbstractRecordingCommand {
25
+ async execute() {
26
+ const beforeState = this.deepClone(this.getJsonObject());
27
+ await this.doExecute();
28
+ const afterState = this.getJsonObject();
29
+ this.undoPatch = jsonPatch.compare(afterState, beforeState);
30
+ this.redoPatch = jsonPatch.compare(beforeState, afterState);
31
+ }
32
+ applyPatch(object, patch) {
33
+ jsonPatch.applyPatch(object, patch, false, true);
34
+ }
35
+ /**
36
+ * Captures the original state of the JSON object before executing the command routine.
37
+ * This implementation cannot clone circular structures as it relies on `JSON.stringify`.
38
+ * @param object The object that should be cloned
39
+ * @returns A deep clone of the given object
40
+ */
41
+ deepClone(object) {
42
+ return jsonPatch.deepClone(object);
43
+ }
44
+ undo() {
45
+ if (this.undoPatch) {
46
+ this.applyPatch(this.getJsonObject(), this.undoPatch);
47
+ }
48
+ }
49
+ redo() {
50
+ if (this.redoPatch) {
51
+ this.applyPatch(this.getJsonObject(), this.redoPatch);
52
+ }
53
+ }
54
+ canUndo() {
55
+ return !!this.undoPatch && !!this.redoPatch;
56
+ }
57
+ }
58
+ exports.AbstractRecordingCommand = AbstractRecordingCommand;
59
+ /**
60
+ * Simple base implementation of {@link AbstractRecordingCommand} that records the changes made to the given JSON object during
61
+ * the the given `doExecute` function.
62
+ */
63
+ class RecordingCommand extends AbstractRecordingCommand {
64
+ constructor(jsonObject, doExecute) {
65
+ super();
66
+ this.jsonObject = jsonObject;
67
+ this.doExecute = doExecute;
68
+ }
69
+ getJsonObject() {
70
+ return this.jsonObject;
71
+ }
72
+ }
73
+ exports.RecordingCommand = RecordingCommand;
74
+ /**
75
+ * Simple base implementation of {@link AbstractRecordingCommand} that allows recording of changes made
76
+ * to the `GModelRoot` ({@link ModelState.root}) during the given `doExecute` function
77
+ */
78
+ class GModelRecordingCommand extends AbstractRecordingCommand {
79
+ constructor(modelState, serializer, doExecute) {
80
+ super();
81
+ this.modelState = modelState;
82
+ this.serializer = serializer;
83
+ this.doExecute = doExecute;
84
+ }
85
+ async execute() {
86
+ await super.execute();
87
+ this.modelState.index.indexRoot(this.modelState.root);
88
+ }
89
+ getJsonObject() {
90
+ return this.serializer.createSchema(this.modelState.root);
91
+ }
92
+ applyPatch(rootSchema, patch) {
93
+ super.applyPatch(rootSchema, patch);
94
+ const newRoot = this.serializer.createRoot(rootSchema);
95
+ this.modelState.updateRoot(newRoot);
96
+ }
97
+ }
98
+ exports.GModelRecordingCommand = GModelRecordingCommand;
99
+ //# sourceMappingURL=recording-command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recording-command.js","sourceRoot":"","sources":["../../../src/common/command/recording-command.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;AAIlF,6CAA6C;AAI7C;;;GAGG;AACH,MAAsB,wBAAwB;IAI1C,KAAK,CAAC,OAAO;QACT,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QACzD,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACvB,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;QAC5D,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;IAChE,CAAC;IAcS,UAAU,CAAC,MAAkB,EAAE,KAA4B;QACjE,SAAS,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACrD,CAAC;IAED;;;;;OAKG;IACO,SAAS,CAAC,MAAkB;QAClC,OAAO,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IACvC,CAAC;IAED,IAAI;QACA,IAAI,IAAI,CAAC,SAAS,EAAE;YAChB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;SACzD;IACL,CAAC;IAED,IAAI;QACA,IAAI,IAAI,CAAC,SAAS,EAAE;YAChB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;SACzD;IACL,CAAC;IAED,OAAO;QACH,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;IAChD,CAAC;CACJ;AArDD,4DAqDC;AAED;;;GAGG;AACH,MAAa,gBAA2D,SAAQ,wBAAoC;IAChH,YAAsB,UAAsB,EAAY,SAAmC;QACvF,KAAK,EAAE,CAAC;QADU,eAAU,GAAV,UAAU,CAAY;QAAY,cAAS,GAAT,SAAS,CAA0B;IAE3F,CAAC;IAES,aAAa;QACnB,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;CACJ;AARD,4CAQC;AAED;;;GAGG;AACH,MAAa,sBAAuB,SAAQ,wBAA0C;IAClF,YAAsB,UAAsB,EAAY,UAA4B,EAAY,SAAmC;QAC/H,KAAK,EAAE,CAAC;QADU,eAAU,GAAV,UAAU,CAAY;QAAY,eAAU,GAAV,UAAU,CAAkB;QAAY,cAAS,GAAT,SAAS,CAA0B;IAEnI,CAAC;IAEQ,KAAK,CAAC,OAAO;QAClB,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;QACtB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC1D,CAAC;IAES,aAAa;QACnB,OAAO,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC9D,CAAC;IAEkB,UAAU,CAAC,UAA4B,EAAE,KAA4B;QACpF,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QACpC,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QACvD,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;CACJ;AAnBD,wDAmBC"}
@@ -0,0 +1,17 @@
1
+ /********************************************************************************
2
+ * Copyright (c) 2023 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 {};
17
+ //# sourceMappingURL=recording-command.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recording-command.spec.d.ts","sourceRoot":"","sources":["../../../src/common/command/recording-command.spec.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF"}
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ /********************************************************************************
3
+ * Copyright (c) 2023 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
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ const chai_1 = require("chai");
19
+ const recording_command_1 = require("./recording-command");
20
+ let jsonObject;
21
+ describe('RecordingCommand', () => {
22
+ let beforeState;
23
+ beforeEach(() => {
24
+ jsonObject = {
25
+ string: 'foo',
26
+ number: 0,
27
+ flag: true
28
+ };
29
+ beforeState = JSON.parse(JSON.stringify(jsonObject));
30
+ });
31
+ it('should be undoable after execution', async () => {
32
+ // eslint-disable-next-line @typescript-eslint/no-empty-function
33
+ const command = new recording_command_1.RecordingCommand(jsonObject, () => { });
34
+ (0, chai_1.expect)(command.canUndo()).to.be.false;
35
+ await command.execute();
36
+ (0, chai_1.expect)(command.canUndo()).to.be.true;
37
+ });
38
+ it('should restore the pre execution state when undo is called', async () => {
39
+ const command = new recording_command_1.RecordingCommand(jsonObject, () => {
40
+ jsonObject.string = 'bar';
41
+ jsonObject.flag = false;
42
+ jsonObject.maybe = { hello: 'world' };
43
+ });
44
+ await command.execute();
45
+ (0, chai_1.expect)(jsonObject).to.not.be.deep.equals(beforeState);
46
+ await command.undo();
47
+ (0, chai_1.expect)(jsonObject).to.be.deep.equals(beforeState);
48
+ });
49
+ it('should restore the post execution state when redo is called', async () => {
50
+ const command = new recording_command_1.RecordingCommand(jsonObject, () => {
51
+ jsonObject.string = 'bar';
52
+ jsonObject.flag = false;
53
+ jsonObject.maybe = { hello: 'world' };
54
+ });
55
+ await command.execute();
56
+ const afterState = JSON.parse(JSON.stringify(jsonObject));
57
+ jsonObject = JSON.parse(JSON.stringify(afterState));
58
+ await command.redo();
59
+ (0, chai_1.expect)(jsonObject).to.be.deep.equals(afterState);
60
+ });
61
+ });
62
+ //# sourceMappingURL=recording-command.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recording-command.spec.js","sourceRoot":"","sources":["../../../src/common/command/recording-command.spec.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;AAGlF,+BAA8B;AAC9B,2DAAuD;AASvD,IAAI,UAAqB,CAAC;AAE1B,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAC9B,IAAI,WAAsB,CAAC;IAE3B,UAAU,CAAC,GAAG,EAAE;QACZ,UAAU,GAAG;YACT,MAAM,EAAE,KAAK;YACb,MAAM,EAAE,CAAC;YACT,IAAI,EAAE,IAAI;SACb,CAAC;QACF,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;QAChD,gEAAgE;QAChE,MAAM,OAAO,GAAG,IAAI,oCAAgB,CAAC,UAAU,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC3D,IAAA,aAAM,EAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;QACtC,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QACxB,IAAA,aAAM,EAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;QACxE,MAAM,OAAO,GAAG,IAAI,oCAAgB,CAAC,UAAU,EAAE,GAAG,EAAE;YAClD,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC;YAC1B,UAAU,CAAC,IAAI,GAAG,KAAK,CAAC;YACxB,UAAU,CAAC,KAAK,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QAC1C,CAAC,CAAC,CAAC;QACH,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QACxB,IAAA,aAAM,EAAC,UAAU,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACtD,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,IAAA,aAAM,EAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;QACzE,MAAM,OAAO,GAAG,IAAI,oCAAgB,CAAC,UAAU,EAAE,GAAG,EAAE;YAClD,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC;YAC1B,UAAU,CAAC,IAAI,GAAG,KAAK,CAAC;YACxB,UAAU,CAAC,KAAK,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QAC1C,CAAC,CAAC,CAAC;QACH,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QACxB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QAC1D,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QACpD,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,IAAA,aAAM,EAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -0,0 +1,28 @@
1
+ /********************************************************************************
2
+ * Copyright (c) 2023 EclipseSource and others.
3
+ *
4
+ * This program and the accompanying materials are made available under the
5
+ * terms of the Eclipse Public License v. 2.0 which is available at
6
+ * http://www.eclipse.org/legal/epl-2.0.
7
+ *
8
+ * This Source Code may also be made available under the following Secondary
9
+ * Licenses when the conditions for such availability set forth in the Eclipse
10
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ * with the GNU Classpath Exception which is available at
12
+ * https://www.gnu.org/software/classpath/license.html.
13
+ *
14
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
+ ********************************************************************************/
16
+ import { Action, MaybePromise } from '@eclipse-glsp/protocol';
17
+ import { ActionHandler } from '../actions/action-handler';
18
+ import { ModelSubmissionHandler } from '../features/model/model-submission-handler';
19
+ import { CommandStack } from './command-stack';
20
+ export declare class UndoRedoActionHandler implements ActionHandler {
21
+ protected commandStack: CommandStack;
22
+ protected modelSubmissionHandler: ModelSubmissionHandler;
23
+ readonly actionKinds: string[];
24
+ execute(action: Action): MaybePromise<Action[]>;
25
+ protected undo(): Promise<Action[]>;
26
+ protected redo(): Promise<Action[]>;
27
+ }
28
+ //# sourceMappingURL=undo-redo-action-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"undo-redo-action-handler.d.ts","sourceRoot":"","sources":["../../../src/common/command/undo-redo-action-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAAE,MAAM,EAAE,YAAY,EAA0B,MAAM,wBAAwB,CAAC;AAEtF,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,qBACa,qBAAsB,YAAW,aAAa;IAEvD,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;IAGrC,SAAS,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAEzD,QAAQ,CAAC,WAAW,WAAsC;IAE1D,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC;cAS/B,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;cAQzB,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;CAO5C"}
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ /********************************************************************************
3
+ * Copyright (c) 2023 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
+ Object.defineProperty(exports, "__esModule", { value: true });
27
+ exports.UndoRedoActionHandler = void 0;
28
+ const protocol_1 = require("@eclipse-glsp/protocol");
29
+ const inversify_1 = require("inversify");
30
+ const model_submission_handler_1 = require("../features/model/model-submission-handler");
31
+ const command_stack_1 = require("./command-stack");
32
+ let UndoRedoActionHandler = class UndoRedoActionHandler {
33
+ constructor() {
34
+ this.actionKinds = [protocol_1.UndoAction.KIND, protocol_1.RedoAction.KIND];
35
+ }
36
+ execute(action) {
37
+ if (protocol_1.UndoAction.is(action)) {
38
+ return this.undo();
39
+ }
40
+ else if (protocol_1.RedoAction.is(action)) {
41
+ return this.redo();
42
+ }
43
+ return [];
44
+ }
45
+ async undo() {
46
+ if (this.commandStack.canUndo()) {
47
+ await this.commandStack.undo();
48
+ return this.modelSubmissionHandler.submitModel('undo');
49
+ }
50
+ return [];
51
+ }
52
+ async redo() {
53
+ if (this.commandStack.canRedo()) {
54
+ await this.commandStack.redo();
55
+ return this.modelSubmissionHandler.submitModel('redo');
56
+ }
57
+ return [];
58
+ }
59
+ };
60
+ __decorate([
61
+ (0, inversify_1.inject)(command_stack_1.CommandStack),
62
+ __metadata("design:type", Object)
63
+ ], UndoRedoActionHandler.prototype, "commandStack", void 0);
64
+ __decorate([
65
+ (0, inversify_1.inject)(model_submission_handler_1.ModelSubmissionHandler),
66
+ __metadata("design:type", model_submission_handler_1.ModelSubmissionHandler)
67
+ ], UndoRedoActionHandler.prototype, "modelSubmissionHandler", void 0);
68
+ UndoRedoActionHandler = __decorate([
69
+ (0, inversify_1.injectable)()
70
+ ], UndoRedoActionHandler);
71
+ exports.UndoRedoActionHandler = UndoRedoActionHandler;
72
+ //# sourceMappingURL=undo-redo-action-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"undo-redo-action-handler.js","sourceRoot":"","sources":["../../../src/common/command/undo-redo-action-handler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;AAElF,qDAAsF;AACtF,yCAA+C;AAE/C,yFAAoF;AACpF,mDAA+C;AAGxC,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAA3B;QAOM,gBAAW,GAAG,CAAC,qBAAU,CAAC,IAAI,EAAE,qBAAU,CAAC,IAAI,CAAC,CAAC;IA0B9D,CAAC;IAxBG,OAAO,CAAC,MAAc;QAClB,IAAI,qBAAU,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE;YACvB,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;SACtB;aAAM,IAAI,qBAAU,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE;YAC9B,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;SACtB;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IAES,KAAK,CAAC,IAAI;QAChB,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE;YAC7B,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;SAC1D;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IAES,KAAK,CAAC,IAAI;QAChB,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE;YAC7B,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;SAC1D;QACD,OAAO,EAAE,CAAC;IACd,CAAC;CACJ,CAAA;AAhCG;IAAC,IAAA,kBAAM,EAAC,4BAAY,CAAC;;2DACgB;AAErC;IAAC,IAAA,kBAAM,EAAC,iDAAsB,CAAC;8BACG,iDAAsB;qEAAC;AALhD,qBAAqB;IADjC,IAAA,sBAAU,GAAE;GACA,qBAAqB,CAiCjC;AAjCY,sDAAqB"}
@@ -2,6 +2,7 @@ import { interfaces } from 'inversify';
2
2
  import { ActionDispatcher } from '../actions/action-dispatcher';
3
3
  import { ActionHandlerConstructor, ActionHandlerFactory } from '../actions/action-handler';
4
4
  import { ActionHandlerRegistry } from '../actions/action-handler-registry';
5
+ import { CommandStack } from '../command/command-stack';
5
6
  import { DiagramConfiguration } from '../diagram/diagram-configuration';
6
7
  import { CommandPaletteActionProvider } from '../features/contextactions/command-palette-action-provider';
7
8
  import { ContextActionsProvider } from '../features/contextactions/context-actions-provider';
@@ -64,6 +65,7 @@ import { InstanceMultiBinding, MultiBinding } from './multi-binding';
64
65
  * - {@link OperationHandlerFactory}
65
66
  * - {@link OperationHandlerRegistry}
66
67
  * - {@link Operations}
68
+ * - {@link CommandStack}
67
69
  * - {@link NavigationTargetResolver} as optional binding
68
70
  * {@link NavigationTargetProvider} as {@link ClassMultiBinding<NavigationTargetProvider>} (empty)
69
71
  * - {@link NavigationTargetProviderRegistry}
@@ -92,6 +94,7 @@ export declare abstract class DiagramModule extends GLSPModule {
92
94
  protected bindActionHandlerFactory(): BindingTarget<ActionHandlerFactory>;
93
95
  protected bindOperationHandlerFactory(): BindingTarget<OperationHandlerFactory>;
94
96
  protected bindOperations(): BindingTarget<string[]>;
97
+ protected bindCommandStack(): BindingTarget<CommandStack>;
95
98
  protected configureOperationHandlers(binding: InstanceMultiBinding<OperationHandlerConstructor>): void;
96
99
  protected configureContextActionProviders(binding: MultiBinding<ContextActionsProvider>): void;
97
100
  protected configureContextEditValidators(binding: MultiBinding<ContextEditValidator>): void;
@@ -1 +1 @@
1
- {"version":3,"file":"diagram-module.d.ts","sourceRoot":"","sources":["../../../src/common/di/diagram-module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diagram-module.d.ts","sourceRoot":"","sources":["../../../src/common/di/diagram-module.ts"],"names":[],"mappings":"AA6CA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,gBAAgB,EAA2B,MAAM,8BAA8B,CAAC;AACzF,OAAO,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAC3F,OAAO,EAAE,qBAAqB,EAAoC,MAAM,oCAAoC,CAAC;AAE7G,OAAO,EAAE,YAAY,EAAuB,MAAM,0BAA0B,CAAC;AAE7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAExE,OAAO,EAAE,4BAA4B,EAAE,MAAM,4DAA4D,CAAC;AAC1G,OAAO,EAAE,sBAAsB,EAAE,MAAM,qDAAqD,CAAC;AAC7F,OAAO,EAAE,8BAA8B,EAAE,MAAM,8DAA8D,CAAC;AAC9G,OAAO,EAAE,uBAAuB,EAAE,MAAM,uDAAuD,CAAC;AAEhG,OAAO,EAAkC,uBAAuB,EAAE,MAAM,uDAAuD,CAAC;AAChI,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EACH,4BAA4B,EAE/B,MAAM,2DAA2D,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AAGpF,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAEhE,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAA2B,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAChG,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AAGpF,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,wBAAwB,EAAE,MAAM,mDAAmD,CAAC;AAC7F,OAAO,EAEH,gCAAgC,EACnC,MAAM,4DAA4D,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,mDAAmD,CAAC;AAG7F,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAE1E,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAIxE,OAAO,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AACvG,OAAO,EAAE,wBAAwB,EAAuC,MAAM,0CAA0C,CAAC;AACzH,OAAO,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,EAAkD,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjG,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAWrE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AAEH,8BAAsB,aAAc,SAAQ,UAAU;IAClD,MAAM,CAAC,QAAQ,CAAC,kBAAkB,sBAAsB;IACxD,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAEtC,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,GAAG,IAAI;IAiEnI,kCAAkC,CAAC,OAAO,EAAE,YAAY,CAAC,wBAAwB,CAAC,GAAG,IAAI;IAKzF,SAAS,CAAC,uBAAuB,CAAC,OAAO,EAAE,oBAAoB,CAAC,wBAAwB,CAAC,GAAG,IAAI;IAgBhG,SAAS,CAAC,eAAe,IAAI,aAAa,CAAC,MAAM,CAAC;IAIlD,SAAS,CAAC,YAAY,IAAI,aAAa,CAAC,MAAM,CAAC;IAI/C,SAAS,CAAC,oBAAoB,IAAI,aAAa,CAAC,gBAAgB,CAAC;IAIjE,SAAS,CAAC,eAAe,IAAI,aAAa,CAAC,WAAW,CAAC;IAIvD,SAAS,CAAC,oBAAoB,IAAI,aAAa,CAAC,gBAAgB,CAAC;IAIjE,SAAS,CAAC,yBAAyB,IAAI,aAAa,CAAC,qBAAqB,CAAC;IAI3E,SAAS,CAAC,4BAA4B,IAAI,aAAa,CAAC,wBAAwB,CAAC;IAIjF,SAAS,CAAC,0BAA0B,IAAI,aAAa,CAAC,sBAAsB,CAAC;IAI7E,SAAS,CAAC,oCAAoC,IAAI,aAAa,CAAC,gCAAgC,CAAC;IAIjG,SAAS,CAAC,gCAAgC,IAAI,aAAa,CAAC,4BAA4B,CAAC;IAIzF,SAAS,CAAC,wBAAwB,IAAI,aAAa,CAAC,oBAAoB,CAAC;IAIzE,SAAS,CAAC,2BAA2B,IAAI,aAAa,CAAC,uBAAuB,CAAC;IAI/E,SAAS,CAAC,cAAc,IAAI,aAAa,CAAC,MAAM,EAAE,CAAC;IASnD,SAAS,CAAC,gBAAgB,IAAI,aAAa,CAAC,YAAY,CAAC;IAIzD,SAAS,CAAC,0BAA0B,CAAC,OAAO,EAAE,oBAAoB,CAAC,2BAA2B,CAAC,GAAG,IAAI;IAKtG,SAAS,CAAC,+BAA+B,CAAC,OAAO,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,IAAI;IAI9F,SAAS,CAAC,8BAA8B,CAAC,OAAO,EAAE,YAAY,CAAC,oBAAoB,CAAC,GAAG,IAAI;IAI3F,SAAS,CAAC,kCAAkC,CAAC,OAAO,EAAE,YAAY,CAAC,wBAAwB,CAAC,GAAG,IAAI;IAInG,SAAS,CAAC,sBAAsB,CAAC,OAAO,EAAE,oBAAoB,CAAC,MAAM,CAAC,GAAG,IAAI;IA+B7E,SAAS,CAAC,kCAAkC,IAAI,aAAa,CAAC,8BAA8B,CAAC;IAM7F,SAAS,CAAC,QAAQ,CAAC,sBAAsB,IAAI,aAAa,CAAC,kBAAkB,CAAC;IAE9E;;;;;;;;;;;;OAYG;IACH,SAAS,CAAC,QAAQ,CAAC,cAAc,IAAI,aAAa,CAAC,UAAU,CAAC;IAE9D,SAAS,CAAC,QAAQ,CAAC,wBAAwB,IAAI,aAAa,CAAC,oBAAoB,CAAC;IAElF,SAAS,CAAC,QAAQ,CAAC,iBAAiB,IAAI,aAAa,CAAC,aAAa,CAAC;IAIpE,SAAS,CAAC,kBAAkB,IAAI,aAAa,CAAC,cAAc,CAAC,GAAG,SAAS;IAGzE,SAAS,CAAC,sBAAsB,IAAI,aAAa,CAAC,kBAAkB,CAAC,GAAG,SAAS;IAIjF,SAAS,CAAC,2BAA2B,IAAI,aAAa,CAAC,uBAAuB,CAAC,GAAG,SAAS;IAG3F,SAAS,CAAC,gCAAgC,IAAI,aAAa,CAAC,4BAA4B,CAAC,GAAG,SAAS;IAGrG,SAAS,CAAC,2BAA2B,IAAI,aAAa,CAAC,uBAAuB,CAAC,GAAG,SAAS;IAI3F,SAAS,CAAC,4BAA4B,IAAI,aAAa,CAAC,wBAAwB,CAAC,GAAG,SAAS;IAI7F,SAAS,CAAC,qBAAqB,IAAI,aAAa,CAAC,iBAAiB,CAAC,GAAG,SAAS;IAG/E,SAAS,CAAC,gBAAgB,IAAI,aAAa,CAAC,YAAY,CAAC,GAAG,SAAS;CAGxE"}
@@ -21,6 +21,8 @@ const action_dispatcher_1 = require("../actions/action-dispatcher");
21
21
  const action_handler_1 = require("../actions/action-handler");
22
22
  const action_handler_registry_1 = require("../actions/action-handler-registry");
23
23
  const client_action_handler_1 = require("../actions/client-action-handler");
24
+ const command_stack_1 = require("../command/command-stack");
25
+ const undo_redo_action_handler_1 = require("../command/undo-redo-action-handler");
24
26
  const diagram_configuration_1 = require("../diagram/diagram-configuration");
25
27
  const request_type_hints_action_handler_1 = require("../diagram/request-type-hints-action-handler");
26
28
  const command_palette_action_provider_1 = require("../features/contextactions/command-palette-action-provider");
@@ -31,7 +33,9 @@ const tool_palette_item_provider_1 = require("../features/contextactions/tool-pa
31
33
  const context_edit_validator_registry_1 = require("../features/directediting/context-edit-validator-registry");
32
34
  const label_edit_validator_1 = require("../features/directediting/label-edit-validator");
33
35
  const request_edit_validation_handler_1 = require("../features/directediting/request-edit-validation-handler");
36
+ const computed_bounds_action_handler_1 = require("../features/layout/computed-bounds-action-handler");
34
37
  const layout_engine_1 = require("../features/layout/layout-engine");
38
+ const layout_operation_handler_1 = require("../features/layout/layout-operation-handler");
35
39
  const gmodel_factory_1 = require("../features/model/gmodel-factory");
36
40
  const gmodel_index_1 = require("../features/model/gmodel-index");
37
41
  const gmodel_serializer_1 = require("../features/model/gmodel-serializer");
@@ -92,6 +96,7 @@ const service_identifiers_1 = require("./service-identifiers");
92
96
  * - {@link OperationHandlerFactory}
93
97
  * - {@link OperationHandlerRegistry}
94
98
  * - {@link Operations}
99
+ * - {@link CommandStack}
95
100
  * - {@link NavigationTargetResolver} as optional binding
96
101
  * {@link NavigationTargetProvider} as {@link ClassMultiBinding<NavigationTargetProvider>} (empty)
97
102
  * - {@link NavigationTargetProviderRegistry}
@@ -135,6 +140,7 @@ class DiagramModule extends glsp_module_1.GLSPModule {
135
140
  (0, binding_target_1.applyBindingTarget)(context, operation_handler_registry_1.OperationHandlerRegistry, this.bindOperationHandlerRegistry()).inSingletonScope();
136
141
  (0, binding_target_1.applyBindingTarget)(context, operation_handler_1.OperationHandlerFactory, this.bindOperationHandlerFactory());
137
142
  (0, binding_target_1.applyBindingTarget)(context, service_identifiers_1.Operations, this.bindOperations()).inSingletonScope();
143
+ (0, binding_target_1.applyBindingTarget)(context, command_stack_1.CommandStack, this.bindCommandStack()).inSingletonScope();
138
144
  // Navigation
139
145
  (0, binding_target_1.applyOptionalBindingTarget)(context, navigation_target_resolver_1.NavigationTargetResolver, this.bindNavigationTargetResolver());
140
146
  this.configureMultiBinding(new multi_binding_1.MultiBinding(service_identifiers_1.NavigationTargetProviders), binding => this.configureNavigationTargetProviders(binding));
@@ -163,6 +169,8 @@ class DiagramModule extends glsp_module_1.GLSPModule {
163
169
  binding.add(request_navigation_targets_action_handler_1.RequestNavigationTargetsActionHandler);
164
170
  binding.add(resolve_navigation_targets_action_handler_1.ResolveNavigationTargetsActionHandler);
165
171
  binding.add(save_model_action_handler_1.SaveModelActionHandler);
172
+ binding.add(undo_redo_action_handler_1.UndoRedoActionHandler);
173
+ binding.add(computed_bounds_action_handler_1.ComputedBoundsActionHandler);
166
174
  }
167
175
  bindDiagramType() {
168
176
  return { constantValue: this.diagramType };
@@ -207,8 +215,12 @@ class DiagramModule extends glsp_module_1.GLSPModule {
207
215
  .map(constructor => new constructor().operationType)
208
216
  };
209
217
  }
218
+ bindCommandStack() {
219
+ return command_stack_1.DefaultCommandStack;
220
+ }
210
221
  configureOperationHandlers(binding) {
211
222
  binding.add(compound_operation_handler_1.CompoundOperationHandler);
223
+ binding.add(layout_operation_handler_1.LayoutOperationHandler);
212
224
  }
213
225
  configureContextActionProviders(binding) {
214
226
  // empty as default
@@ -1 +1 @@
1
- {"version":3,"file":"diagram-module.js","sourceRoot":"","sources":["../../../src/common/di/diagram-module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diagram-module.js","sourceRoot":"","sources":["../../../src/common/di/diagram-module.ts"],"names":[],"mappings":"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"}