@eclipse-glsp/client 1.1.0-next.d3b810d.243 → 1.1.0-next.d81a1ea.249

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 (94) hide show
  1. package/css/autocomplete-palette.css +22 -0
  2. package/css/glsp-sprotty.css +16 -1
  3. package/lib/base/auto-complete/auto-complete-widget.d.ts +8 -2
  4. package/lib/base/auto-complete/auto-complete-widget.d.ts.map +1 -1
  5. package/lib/base/auto-complete/auto-complete-widget.js +25 -6
  6. package/lib/base/auto-complete/auto-complete-widget.js.map +1 -1
  7. package/lib/features/accessibility/di.config.d.ts +21 -0
  8. package/lib/features/accessibility/di.config.d.ts.map +1 -0
  9. package/lib/features/accessibility/di.config.js +34 -0
  10. package/lib/features/accessibility/di.config.js.map +1 -0
  11. package/lib/features/accessibility/move-zoom/di.config.d.ts +23 -0
  12. package/lib/features/accessibility/move-zoom/di.config.d.ts.map +1 -0
  13. package/lib/features/accessibility/move-zoom/di.config.js +41 -0
  14. package/lib/features/accessibility/move-zoom/di.config.js.map +1 -0
  15. package/lib/features/accessibility/move-zoom/move-handler.d.ts +81 -0
  16. package/lib/features/accessibility/move-zoom/move-handler.d.ts.map +1 -0
  17. package/lib/features/accessibility/move-zoom/move-handler.js +173 -0
  18. package/lib/features/accessibility/move-zoom/move-handler.js.map +1 -0
  19. package/lib/features/accessibility/move-zoom/zoom-handler.d.ts +74 -0
  20. package/lib/features/accessibility/move-zoom/zoom-handler.d.ts.map +1 -0
  21. package/lib/features/accessibility/move-zoom/zoom-handler.js +159 -0
  22. package/lib/features/accessibility/move-zoom/zoom-handler.js.map +1 -0
  23. package/lib/features/accessibility/resize-key-tool/di.config.d.ts +23 -0
  24. package/lib/features/accessibility/resize-key-tool/di.config.d.ts.map +1 -0
  25. package/lib/features/accessibility/resize-key-tool/di.config.js +38 -0
  26. package/lib/features/accessibility/resize-key-tool/di.config.js.map +1 -0
  27. package/lib/features/accessibility/resize-key-tool/resize-key-handler.d.ts +55 -0
  28. package/lib/features/accessibility/resize-key-tool/resize-key-handler.d.ts.map +1 -0
  29. package/lib/features/accessibility/resize-key-tool/resize-key-handler.js +126 -0
  30. package/lib/features/accessibility/resize-key-tool/resize-key-handler.js.map +1 -0
  31. package/lib/features/accessibility/resize-key-tool/resize-key-tool.d.ts +44 -0
  32. package/lib/features/accessibility/resize-key-tool/resize-key-tool.d.ts.map +1 -0
  33. package/lib/features/accessibility/resize-key-tool/resize-key-tool.js +127 -0
  34. package/lib/features/accessibility/resize-key-tool/resize-key-tool.js.map +1 -0
  35. package/lib/features/accessibility/search/di.config.d.ts +20 -0
  36. package/lib/features/accessibility/search/di.config.d.ts.map +1 -0
  37. package/lib/features/accessibility/search/di.config.js +33 -0
  38. package/lib/features/accessibility/search/di.config.js.map +1 -0
  39. package/lib/features/accessibility/search/search-palette.d.ts +47 -0
  40. package/lib/features/accessibility/search/search-palette.d.ts.map +1 -0
  41. package/lib/features/accessibility/search/search-palette.js +155 -0
  42. package/lib/features/accessibility/search/search-palette.js.map +1 -0
  43. package/lib/features/accessibility/search/search-tool.d.ts +30 -0
  44. package/lib/features/accessibility/search/search-tool.d.ts.map +1 -0
  45. package/lib/features/accessibility/search/search-tool.js +73 -0
  46. package/lib/features/accessibility/search/search-tool.js.map +1 -0
  47. package/lib/features/accessibility/view-key-tools/deselect-key-tool.d.ts +35 -0
  48. package/lib/features/accessibility/view-key-tools/deselect-key-tool.d.ts.map +1 -0
  49. package/lib/features/accessibility/view-key-tools/deselect-key-tool.js +87 -0
  50. package/lib/features/accessibility/view-key-tools/deselect-key-tool.js.map +1 -0
  51. package/lib/features/accessibility/view-key-tools/di.config.d.ts +20 -0
  52. package/lib/features/accessibility/view-key-tools/di.config.d.ts.map +1 -0
  53. package/lib/features/accessibility/view-key-tools/di.config.js +35 -0
  54. package/lib/features/accessibility/view-key-tools/di.config.js.map +1 -0
  55. package/lib/features/accessibility/view-key-tools/movement-key-tool.d.ts +49 -0
  56. package/lib/features/accessibility/view-key-tools/movement-key-tool.d.ts.map +1 -0
  57. package/lib/features/accessibility/view-key-tools/movement-key-tool.js +131 -0
  58. package/lib/features/accessibility/view-key-tools/movement-key-tool.js.map +1 -0
  59. package/lib/features/accessibility/view-key-tools/zoom-key-tool.d.ts +43 -0
  60. package/lib/features/accessibility/view-key-tools/zoom-key-tool.d.ts.map +1 -0
  61. package/lib/features/accessibility/view-key-tools/zoom-key-tool.js +109 -0
  62. package/lib/features/accessibility/view-key-tools/zoom-key-tool.js.map +1 -0
  63. package/lib/features/autocomplete-palette/autocomplete-suggestion-providers.d.ts +35 -0
  64. package/lib/features/autocomplete-palette/autocomplete-suggestion-providers.d.ts.map +1 -0
  65. package/lib/features/autocomplete-palette/autocomplete-suggestion-providers.js +18 -0
  66. package/lib/features/autocomplete-palette/autocomplete-suggestion-providers.js.map +1 -0
  67. package/lib/features/autocomplete-palette/base-autocomplete-palette.d.ts +41 -0
  68. package/lib/features/autocomplete-palette/base-autocomplete-palette.d.ts.map +1 -0
  69. package/lib/features/autocomplete-palette/base-autocomplete-palette.js +82 -0
  70. package/lib/features/autocomplete-palette/base-autocomplete-palette.js.map +1 -0
  71. package/lib/index.d.ts +12 -3
  72. package/lib/index.d.ts.map +1 -1
  73. package/lib/index.js +62 -48
  74. package/lib/index.js.map +1 -1
  75. package/package.json +5 -3
  76. package/src/base/auto-complete/auto-complete-widget.ts +31 -7
  77. package/src/features/accessibility/README.md +65 -0
  78. package/src/features/accessibility/di.config.ts +32 -0
  79. package/src/features/accessibility/move-zoom/di.config.ts +43 -0
  80. package/src/features/accessibility/move-zoom/move-handler.ts +198 -0
  81. package/src/features/accessibility/move-zoom/zoom-handler.ts +178 -0
  82. package/src/features/accessibility/resize-key-tool/di.config.ts +37 -0
  83. package/src/features/accessibility/resize-key-tool/resize-key-handler.ts +120 -0
  84. package/src/features/accessibility/resize-key-tool/resize-key-tool.ts +108 -0
  85. package/src/features/accessibility/search/di.config.ts +31 -0
  86. package/src/features/accessibility/search/search-palette.ts +181 -0
  87. package/src/features/accessibility/search/search-tool.ts +60 -0
  88. package/src/features/accessibility/view-key-tools/deselect-key-tool.ts +80 -0
  89. package/src/features/accessibility/view-key-tools/di.config.ts +33 -0
  90. package/src/features/accessibility/view-key-tools/movement-key-tool.ts +115 -0
  91. package/src/features/accessibility/view-key-tools/zoom-key-tool.ts +94 -0
  92. package/src/features/autocomplete-palette/autocomplete-suggestion-providers.ts +37 -0
  93. package/src/features/autocomplete-palette/base-autocomplete-palette.ts +88 -0
  94. package/src/index.ts +17 -3
@@ -0,0 +1,22 @@
1
+ /********************************************************************************
2
+ * Copyright (c) 2023 Business Informatics Group (TU Wien) and others.
3
+ *
4
+ * This program and the accompanying materials are made available under the
5
+ * terms of the Eclipse Public License v. 2.0 which is available at
6
+ * http://www.eclipse.org/legal/epl-2.0.
7
+ *
8
+ * This Source Code may also be made available under the following Secondary
9
+ * Licenses when the conditions for such availability set forth in the Eclipse
10
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ * with the GNU Classpath Exception which is available at
12
+ * https://www.gnu.org/software/classpath/license.html.
13
+ *
14
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
+ ********************************************************************************/
16
+
17
+ .autocomplete-palette {
18
+ position: absolute;
19
+ left: 20px;
20
+ top: 20px;
21
+ width: 400px;
22
+ }
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2019-2022 EclipseSource and others.
2
+ * Copyright (c) 2019-2023 EclipseSource and others.
3
3
  *
4
4
  * This program and the accompanying materials are made available under the
5
5
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -254,3 +254,18 @@
254
254
  fill: transparent;
255
255
  width: var(--theia-scrollbar-rail-width);
256
256
  }
257
+
258
+ .search-hidden {
259
+ opacity: 0.2;
260
+ }
261
+
262
+ .search-highlighted .sprotty-node,
263
+ .search-highlighted .sprotty-edge {
264
+ stroke-width: 1.5px;
265
+ stroke-width: 2px;
266
+ stroke-dashoffset: 5;
267
+ stroke-dasharray: 5, 5;
268
+ stroke-linecap: round;
269
+ stroke: rgb(218, 89, 15) !important;
270
+ stroke: #130bf7 !important;
271
+ }
@@ -23,6 +23,7 @@ export interface AutoCompleteSettings {
23
23
  readonly debounceWaitMs?: number;
24
24
  readonly showOnFocus?: boolean;
25
25
  }
26
+ export type CloseReason = 'submission' | 'blur' | 'escape';
26
27
  export interface InputValidator {
27
28
  validate(input: string): Promise<ValidationStatus>;
28
29
  }
@@ -38,6 +39,10 @@ export interface SuggestionSubmitHandler {
38
39
  export interface TextSubmitHandler {
39
40
  executeFromTextOnlyInput(input: string): void;
40
41
  }
42
+ export interface AutoCompleteWidgetOptions {
43
+ visibleSuggestionsChanged?: (suggestions: LabeledAction[]) => void;
44
+ selectedSuggestionChanged?: (suggestion?: LabeledAction) => void;
45
+ }
41
46
  /**
42
47
  * The `AutoCompleteWidget` is a reusable UI element that provides a text input supporting auto-completion,
43
48
  * validation, validation messages, etc.
@@ -49,8 +54,9 @@ export declare class AutoCompleteWidget {
49
54
  autoSuggestionSettings: AutoCompleteSettings;
50
55
  suggestionProvider: SuggestionProvider;
51
56
  suggestionSubmitHandler: SuggestionSubmitHandler;
52
- protected notifyClose: () => void;
57
+ protected notifyClose: (reason: CloseReason) => void;
53
58
  protected logger?: ILogger | undefined;
59
+ protected options?: AutoCompleteWidgetOptions | undefined;
54
60
  loadingIndicatorClasses: string[];
55
61
  protected containerElement: HTMLElement;
56
62
  protected inputElement: HTMLInputElement;
@@ -61,7 +67,7 @@ export declare class AutoCompleteWidget {
61
67
  protected inputValidator?: InputValidator;
62
68
  protected validationDecorator: IValidationDecorator;
63
69
  protected textSubmitHandler?: TextSubmitHandler;
64
- constructor(autoSuggestionSettings: AutoCompleteSettings, suggestionProvider: SuggestionProvider, suggestionSubmitHandler: SuggestionSubmitHandler, notifyClose?: () => void, logger?: ILogger | undefined);
70
+ constructor(autoSuggestionSettings: AutoCompleteSettings, suggestionProvider: SuggestionProvider, suggestionSubmitHandler: SuggestionSubmitHandler, notifyClose?: (reason: CloseReason) => void, logger?: ILogger | undefined, options?: AutoCompleteWidgetOptions | undefined);
65
71
  configureValidation(inputValidator: InputValidator, validationDecorator?: IValidationDecorator): void;
66
72
  configureTextSubmitHandler(textSubmitHandler: TextSubmitHandler): void;
67
73
  initialize(containerElement: HTMLElement): void;
@@ -1 +1 @@
1
- {"version":3,"file":"auto-complete-widget.d.ts","sourceRoot":"","sources":["../../../src/base/auto-complete/auto-complete-widget.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auto-complete-widget.d.ts","sourceRoot":"","sources":["../../../src/base/auto-complete/auto-complete-widget.ts"],"names":[],"mappings":"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"}
@@ -34,12 +34,13 @@ const configureAutocomplete = require('autocompleter');
34
34
  class AutoCompleteWidget {
35
35
  constructor(autoSuggestionSettings, suggestionProvider, suggestionSubmitHandler,
36
36
  // eslint-disable-next-line @typescript-eslint/no-empty-function
37
- notifyClose = () => { }, logger) {
37
+ notifyClose = () => { }, logger, options) {
38
38
  this.autoSuggestionSettings = autoSuggestionSettings;
39
39
  this.suggestionProvider = suggestionProvider;
40
40
  this.suggestionSubmitHandler = suggestionSubmitHandler;
41
41
  this.notifyClose = notifyClose;
42
42
  this.logger = logger;
43
+ this.options = options;
43
44
  this.loadingIndicatorClasses = (0, sprotty_1.codiconCSSClasses)('loading', false, true, ['loading']);
44
45
  this.validationDecorator = validation_decorator_1.IValidationDecorator.NO_DECORATION;
45
46
  }
@@ -64,12 +65,16 @@ class AutoCompleteWidget {
64
65
  inputElement.autocomplete = 'false';
65
66
  inputElement.style.width = '100%';
66
67
  inputElement.addEventListener('keydown', event => this.handleKeyDown(event));
67
- inputElement.addEventListener('blur', () => window.setTimeout(() => this.notifyClose(), 200));
68
+ inputElement.addEventListener('blur', () => {
69
+ if (this.containerElement.style.visibility !== 'hidden') {
70
+ window.setTimeout(() => this.notifyClose('blur'), 200);
71
+ }
72
+ });
68
73
  return inputElement;
69
74
  }
70
75
  handleKeyDown(event) {
71
76
  if ((0, keyboard_1.matchesKeystroke)(event, 'Escape')) {
72
- this.notifyClose();
77
+ this.notifyClose('escape');
73
78
  return;
74
79
  }
75
80
  if ((0, keyboard_1.matchesKeystroke)(event, 'Enter') && !this.isInputElementChanged() && this.isSuggestionAvailable()) {
@@ -87,7 +92,7 @@ class AutoCompleteWidget {
87
92
  }
88
93
  if (this.textSubmitHandler) {
89
94
  this.executeFromTextOnlyInput();
90
- this.notifyClose();
95
+ this.notifyClose('submission');
91
96
  }
92
97
  }
93
98
  isInputElementChanged() {
@@ -121,17 +126,31 @@ class AutoCompleteWidget {
121
126
  };
122
127
  }
123
128
  customizeInputElement(input, inputRect, container, maxHeight) {
129
+ var _a;
124
130
  // move container into our UIExtension container as this is already positioned correctly
125
131
  if (this.containerElement) {
126
132
  this.containerElement.appendChild(container);
133
+ if (this.options && this.options.selectedSuggestionChanged) {
134
+ const selectedElement = container.querySelector('.selected');
135
+ // eslint-disable-next-line no-null/no-null
136
+ if (selectedElement !== null && selectedElement !== undefined) {
137
+ const index = Array.from(container.children).indexOf(selectedElement);
138
+ this.options.selectedSuggestionChanged((_a = this.contextActions) === null || _a === void 0 ? void 0 : _a[index]);
139
+ }
140
+ else {
141
+ this.options.selectedSuggestionChanged(undefined);
142
+ }
143
+ }
127
144
  }
128
145
  }
129
146
  updateSuggestions(update, text, root, ...contextElementIds) {
130
147
  this.onLoading();
131
148
  this.doUpdateSuggestions(text, root)
132
149
  .then(actions => {
150
+ var _a, _b;
133
151
  this.contextActions = this.filterActions(text, actions);
134
152
  update(this.contextActions);
153
+ (_b = (_a = this.options) === null || _a === void 0 ? void 0 : _a.visibleSuggestionsChanged) === null || _b === void 0 ? void 0 : _b.call(_a, this.contextActions);
135
154
  this.onLoaded('success');
136
155
  })
137
156
  .catch(reason => {
@@ -167,7 +186,7 @@ class AutoCompleteWidget {
167
186
  if (item.icon) {
168
187
  this.renderIcon(itemElement, item.icon);
169
188
  }
170
- itemElement.innerHTML += item.label.replace(regex, match => '<em>' + match + '</em>');
189
+ itemElement.innerHTML += item.label.replace(regex, match => '<em>' + match + '</em>').replace(/ /g, '&nbsp;');
171
190
  return itemElement;
172
191
  }
173
192
  escapeForRegExp(value) {
@@ -191,7 +210,7 @@ class AutoCompleteWidget {
191
210
  }
192
211
  else {
193
212
  this.executeFromSuggestion(item);
194
- this.notifyClose();
213
+ this.notifyClose('submission');
195
214
  }
196
215
  }
197
216
  validateInputIfNoContextActions() {
@@ -1 +1 @@
1
- {"version":3,"file":"auto-complete-widget.js","sourceRoot":"","sources":["../../../src/base/auto-complete/auto-complete-widget.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auto-complete-widget.js","sourceRoot":"","sources":["../../../src/base/auto-complete/auto-complete-widget.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ /********************************************************************************
2
+ * Copyright (c) 2023 Business Informatics Group (TU Wien) and others.
3
+ *
4
+ * This program and the accompanying materials are made available under the
5
+ * terms of the Eclipse Public License v. 2.0 which is available at
6
+ * http://www.eclipse.org/legal/epl-2.0.
7
+ *
8
+ * This Source Code may also be made available under the following Secondary
9
+ * Licenses when the conditions for such availability set forth in the Eclipse
10
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ * with the GNU Classpath Exception which is available at
12
+ * https://www.gnu.org/software/classpath/license.html.
13
+ *
14
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
+ ********************************************************************************/
16
+ import { ContainerModule } from 'inversify';
17
+ /**
18
+ * Enables the accessibility tools for a keyboard-only-usage
19
+ */
20
+ export declare const glspAccessibilityModule: ContainerModule;
21
+ //# sourceMappingURL=di.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"di.config.d.ts","sourceRoot":"","sources":["../../../src/features/accessibility/di.config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAM5C;;GAEG;AACH,eAAO,MAAM,uBAAuB,iBAMlC,CAAC"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ /********************************************************************************
3
+ * Copyright (c) 2023 Business Informatics Group (TU Wien) 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.glspAccessibilityModule = void 0;
19
+ const inversify_1 = require("inversify");
20
+ const di_config_1 = require("./move-zoom/di.config");
21
+ const di_config_2 = require("./resize-key-tool/di.config");
22
+ const di_config_3 = require("./search/di.config");
23
+ const di_config_4 = require("./view-key-tools/di.config");
24
+ /**
25
+ * Enables the accessibility tools for a keyboard-only-usage
26
+ */
27
+ exports.glspAccessibilityModule = new inversify_1.ContainerModule((bind, unbind, isBound, rebind) => {
28
+ const context = { bind, unbind, isBound, rebind };
29
+ (0, di_config_2.configureResizeTools)(context);
30
+ (0, di_config_4.configureViewKeyTools)(context);
31
+ (0, di_config_1.configureMoveZoom)(context);
32
+ (0, di_config_3.configureSearchPaletteModule)(context);
33
+ });
34
+ //# sourceMappingURL=di.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"di.config.js","sourceRoot":"","sources":["../../../src/features/accessibility/di.config.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;AAElF,yCAA4C;AAC5C,qDAA0D;AAC1D,2DAAmE;AACnE,kDAAkE;AAClE,0DAAmE;AAEnE;;GAEG;AACU,QAAA,uBAAuB,GAAG,IAAI,2BAAe,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;IACzF,MAAM,OAAO,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAClD,IAAA,gCAAoB,EAAC,OAAO,CAAC,CAAC;IAC9B,IAAA,iCAAqB,EAAC,OAAO,CAAC,CAAC;IAC/B,IAAA,6BAAiB,EAAC,OAAO,CAAC,CAAC;IAC3B,IAAA,wCAA4B,EAAC,OAAO,CAAC,CAAC;AAC1C,CAAC,CAAC,CAAC"}
@@ -0,0 +1,23 @@
1
+ /********************************************************************************
2
+ * Copyright (c) 2023 Business Informatics Group (TU Wien) and others.
3
+ *
4
+ * This program and the accompanying materials are made available under the
5
+ * terms of the Eclipse Public License v. 2.0 which is available at
6
+ * http://www.eclipse.org/legal/epl-2.0.
7
+ *
8
+ * This Source Code may also be made available under the following Secondary
9
+ * Licenses when the conditions for such availability set forth in the Eclipse
10
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ * with the GNU Classpath Exception which is available at
12
+ * https://www.gnu.org/software/classpath/license.html.
13
+ *
14
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
+ ********************************************************************************/
16
+ import { BindingContext } from '@eclipse-glsp/protocol';
17
+ import { ContainerModule } from 'inversify';
18
+ /**
19
+ * Handles move and zoom actions.
20
+ */
21
+ export declare const glspMoveZoomModule: ContainerModule;
22
+ export declare function configureMoveZoom(context: BindingContext): void;
23
+ //# sourceMappingURL=di.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"di.config.d.ts","sourceRoot":"","sources":["../../../../src/features/accessibility/move-zoom/di.config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAK5C;;GAEG;AACH,eAAO,MAAM,kBAAkB,iBAG7B,CAAC;AAEH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAY/D"}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ /********************************************************************************
3
+ * Copyright (c) 2023 Business Informatics Group (TU Wien) 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.configureMoveZoom = exports.glspMoveZoomModule = void 0;
19
+ const inversify_1 = require("inversify");
20
+ const sprotty_1 = require("sprotty");
21
+ const move_handler_1 = require("./move-handler");
22
+ const zoom_handler_1 = require("./zoom-handler");
23
+ /**
24
+ * Handles move and zoom actions.
25
+ */
26
+ exports.glspMoveZoomModule = new inversify_1.ContainerModule((bind, unbind, isBound, rebind) => {
27
+ const context = { bind, unbind, isBound, rebind };
28
+ configureMoveZoom(context);
29
+ });
30
+ function configureMoveZoom(context) {
31
+ context.bind(move_handler_1.MoveViewportHandler).toSelf().inSingletonScope();
32
+ context.bind(move_handler_1.MoveElementHandler).toSelf().inSingletonScope();
33
+ context.bind(zoom_handler_1.ZoomViewportHandler).toSelf().inSingletonScope();
34
+ context.bind(zoom_handler_1.ZoomElementHandler).toSelf().inSingletonScope();
35
+ (0, sprotty_1.configureActionHandler)(context, move_handler_1.MoveViewportAction.KIND, move_handler_1.MoveViewportHandler);
36
+ (0, sprotty_1.configureActionHandler)(context, move_handler_1.MoveElementAction.KIND, move_handler_1.MoveElementHandler);
37
+ (0, sprotty_1.configureActionHandler)(context, zoom_handler_1.ZoomViewportAction.KIND, zoom_handler_1.ZoomViewportHandler);
38
+ (0, sprotty_1.configureActionHandler)(context, zoom_handler_1.ZoomElementAction.KIND, zoom_handler_1.ZoomElementHandler);
39
+ }
40
+ exports.configureMoveZoom = configureMoveZoom;
41
+ //# sourceMappingURL=di.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"di.config.js","sourceRoot":"","sources":["../../../../src/features/accessibility/move-zoom/di.config.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;AAGlF,yCAA4C;AAC5C,qCAAiD;AACjD,iDAAgH;AAChH,iDAAgH;AAEhH;;GAEG;AACU,QAAA,kBAAkB,GAAG,IAAI,2BAAe,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;IACpF,MAAM,OAAO,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAClD,iBAAiB,CAAC,OAAO,CAAC,CAAC;AAC/B,CAAC,CAAC,CAAC;AAEH,SAAgB,iBAAiB,CAAC,OAAuB;IACrD,OAAO,CAAC,IAAI,CAAC,kCAAmB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAC9D,OAAO,CAAC,IAAI,CAAC,iCAAkB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAE7D,OAAO,CAAC,IAAI,CAAC,kCAAmB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAC9D,OAAO,CAAC,IAAI,CAAC,iCAAkB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAE7D,IAAA,gCAAsB,EAAC,OAAO,EAAE,iCAAkB,CAAC,IAAI,EAAE,kCAAmB,CAAC,CAAC;IAC9E,IAAA,gCAAsB,EAAC,OAAO,EAAE,gCAAiB,CAAC,IAAI,EAAE,iCAAkB,CAAC,CAAC;IAE5E,IAAA,gCAAsB,EAAC,OAAO,EAAE,iCAAkB,CAAC,IAAI,EAAE,kCAAmB,CAAC,CAAC;IAC9E,IAAA,gCAAsB,EAAC,OAAO,EAAE,gCAAiB,CAAC,IAAI,EAAE,iCAAkB,CAAC,CAAC;AAChF,CAAC;AAZD,8CAYC"}
@@ -0,0 +1,81 @@
1
+ /********************************************************************************
2
+ * Copyright (c) 2023 Business Informatics Group (TU Wien) and others.
3
+ *
4
+ * This program and the accompanying materials are made available under the
5
+ * terms of the Eclipse Public License v. 2.0 which is available at
6
+ * http://www.eclipse.org/legal/epl-2.0.
7
+ *
8
+ * This Source Code may also be made available under the following Secondary
9
+ * Licenses when the conditions for such availability set forth in the Eclipse
10
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ * with the GNU Classpath Exception which is available at
12
+ * https://www.gnu.org/software/classpath/license.html.
13
+ *
14
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
+ ********************************************************************************/
16
+ import { Action, ChangeBoundsOperation, Point, SetViewportAction, Viewport } from '@eclipse-glsp/protocol';
17
+ import { IActionDispatcher, IActionHandler, ICommand, SModelRoot } from 'sprotty';
18
+ import { EditorContextService } from '../../../base/editor-context-service';
19
+ import { SelectableBoundsAware } from '../../../utils/smodel-util';
20
+ /**
21
+ * Action for triggering moving of the viewport.
22
+ */
23
+ export interface MoveViewportAction extends Action {
24
+ kind: typeof MoveViewportAction.KIND;
25
+ /**
26
+ * used to specify the amount to be moved in the x-axis
27
+ */
28
+ moveX: number;
29
+ /**
30
+ * used to specify the amount to be moved in the y-axis
31
+ */
32
+ moveY: number;
33
+ }
34
+ export declare namespace MoveViewportAction {
35
+ const KIND = "moveViewportAction";
36
+ function is(object: any): object is MoveViewportAction;
37
+ function create(moveX: number, moveY: number): MoveViewportAction;
38
+ }
39
+ /**
40
+ * Action for triggering moving of elements.
41
+ */
42
+ export interface MoveElementAction extends Action {
43
+ kind: typeof MoveElementAction.KIND;
44
+ /**
45
+ * used to specify the elements to be zoomed in/out
46
+ */
47
+ elementIds: string[];
48
+ /**
49
+ * used to specify the amount to be moved in the x-axis
50
+ */
51
+ moveX: number;
52
+ /**
53
+ * used to specify the amount to be moved in the y-axis
54
+ */
55
+ moveY: number;
56
+ }
57
+ export declare namespace MoveElementAction {
58
+ const KIND = "moveElementAction";
59
+ function is(object: any): object is MoveElementAction;
60
+ function create(elementIds: string[], moveX: number, moveY: number): MoveElementAction;
61
+ }
62
+ export declare class MoveViewportHandler implements IActionHandler {
63
+ protected editorContextService: EditorContextService;
64
+ protected dispatcher: IActionDispatcher;
65
+ protected readonly throttledHandleViewportMove: import("lodash").DebouncedFunc<(action: MoveViewportAction) => void>;
66
+ handle(action: Action): void | Action | ICommand;
67
+ handleMoveViewport(action: MoveViewportAction): void;
68
+ protected moveViewport(viewport: SModelRoot & Viewport, offsetX: number, offSetY: number): SetViewportAction;
69
+ }
70
+ export declare class MoveElementHandler implements IActionHandler {
71
+ protected editorContextService: EditorContextService;
72
+ protected dispatcher: IActionDispatcher;
73
+ protected readonly throttledHandleElementMove: import("lodash").DebouncedFunc<(action: MoveElementAction) => void>;
74
+ handle(action: Action): void | Action | ICommand;
75
+ handleMoveElement(action: MoveElementAction): void;
76
+ protected getBounds(element: SelectableBoundsAware, offSetX: number, offSetY: number): Point;
77
+ protected adaptViewport(viewport: SModelRoot & Viewport, newPoint: Point, moveX: number, moveY: number): MoveViewportAction | undefined;
78
+ protected moveElement(element: SelectableBoundsAware, offSetX: number, offSetY: number): ChangeBoundsOperation;
79
+ protected move(viewport: SModelRoot & Viewport, selectedElements: SelectableBoundsAware[], deltaX: number, deltaY: number): Action[];
80
+ }
81
+ //# sourceMappingURL=move-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"move-handler.d.ts","sourceRoot":"","sources":["../../../../src/features/accessibility/move-zoom/move-handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,173 @@
1
+ "use strict";
2
+ /********************************************************************************
3
+ * Copyright (c) 2023 Business Informatics Group (TU Wien) 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.MoveElementHandler = exports.MoveViewportHandler = exports.MoveElementAction = exports.MoveViewportAction = void 0;
28
+ const protocol_1 = require("@eclipse-glsp/protocol");
29
+ const inversify_1 = require("inversify");
30
+ const lodash_1 = require("lodash");
31
+ const sprotty_1 = require("sprotty");
32
+ const editor_context_service_1 = require("../../../base/editor-context-service");
33
+ const types_1 = require("../../../base/types");
34
+ const smodel_util_1 = require("../../../utils/smodel-util");
35
+ var MoveViewportAction;
36
+ (function (MoveViewportAction) {
37
+ MoveViewportAction.KIND = 'moveViewportAction';
38
+ function is(object) {
39
+ return protocol_1.Action.hasKind(object, MoveViewportAction.KIND);
40
+ }
41
+ MoveViewportAction.is = is;
42
+ function create(moveX, moveY) {
43
+ return { kind: MoveViewportAction.KIND, moveX, moveY };
44
+ }
45
+ MoveViewportAction.create = create;
46
+ })(MoveViewportAction = exports.MoveViewportAction || (exports.MoveViewportAction = {}));
47
+ var MoveElementAction;
48
+ (function (MoveElementAction) {
49
+ MoveElementAction.KIND = 'moveElementAction';
50
+ function is(object) {
51
+ return protocol_1.Action.hasKind(object, MoveElementAction.KIND);
52
+ }
53
+ MoveElementAction.is = is;
54
+ function create(elementIds, moveX, moveY) {
55
+ return { kind: MoveElementAction.KIND, elementIds, moveX, moveY };
56
+ }
57
+ MoveElementAction.create = create;
58
+ })(MoveElementAction = exports.MoveElementAction || (exports.MoveElementAction = {}));
59
+ /* The MoveViewportHandler class is an implementation of the IActionHandler interface that handles
60
+ moving of the viewport. */
61
+ let MoveViewportHandler = class MoveViewportHandler {
62
+ constructor() {
63
+ this.throttledHandleViewportMove = (0, lodash_1.throttle)((action) => this.handleMoveViewport(action), 150);
64
+ }
65
+ handle(action) {
66
+ if (MoveViewportAction.is(action)) {
67
+ this.throttledHandleViewportMove(action);
68
+ }
69
+ }
70
+ handleMoveViewport(action) {
71
+ const viewport = (0, sprotty_1.findParentByFeature)(this.editorContextService.modelRoot, sprotty_1.isViewport);
72
+ if (!viewport) {
73
+ return;
74
+ }
75
+ this.dispatcher.dispatch(this.moveViewport(viewport, action.moveX, action.moveY));
76
+ }
77
+ moveViewport(viewport, offsetX, offSetY) {
78
+ const newViewport = {
79
+ scroll: {
80
+ x: viewport.scroll.x + offsetX,
81
+ y: viewport.scroll.y + offSetY
82
+ },
83
+ zoom: viewport.zoom
84
+ };
85
+ return protocol_1.SetViewportAction.create(viewport.id, newViewport, { animate: true });
86
+ }
87
+ };
88
+ __decorate([
89
+ (0, inversify_1.inject)(editor_context_service_1.EditorContextService),
90
+ __metadata("design:type", editor_context_service_1.EditorContextService)
91
+ ], MoveViewportHandler.prototype, "editorContextService", void 0);
92
+ __decorate([
93
+ (0, inversify_1.inject)(types_1.TYPES.IActionDispatcher),
94
+ __metadata("design:type", Object)
95
+ ], MoveViewportHandler.prototype, "dispatcher", void 0);
96
+ MoveViewportHandler = __decorate([
97
+ (0, inversify_1.injectable)()
98
+ ], MoveViewportHandler);
99
+ exports.MoveViewportHandler = MoveViewportHandler;
100
+ /* The MoveElementHandler class is an implementation of the IActionHandler interface that handles
101
+ moving elements. */
102
+ let MoveElementHandler = class MoveElementHandler {
103
+ constructor() {
104
+ this.throttledHandleElementMove = (0, lodash_1.throttle)((action) => this.handleMoveElement(action), 150);
105
+ }
106
+ handle(action) {
107
+ if (MoveElementAction.is(action)) {
108
+ this.throttledHandleElementMove(action);
109
+ }
110
+ }
111
+ handleMoveElement(action) {
112
+ const viewport = (0, sprotty_1.findParentByFeature)(this.editorContextService.modelRoot, sprotty_1.isViewport);
113
+ if (!viewport) {
114
+ return;
115
+ }
116
+ const elements = (0, smodel_util_1.getElements)(this.editorContextService.modelRoot.index, action.elementIds, smodel_util_1.isSelectableAndBoundsAware);
117
+ this.dispatcher.dispatchAll(this.move(viewport, elements, action.moveX, action.moveY));
118
+ }
119
+ getBounds(element, offSetX, offSetY) {
120
+ return { x: element.bounds.x + offSetX, y: element.bounds.y + offSetY };
121
+ }
122
+ adaptViewport(viewport, newPoint, moveX, moveY) {
123
+ if (newPoint.x < viewport.scroll.x ||
124
+ newPoint.x > viewport.scroll.x + viewport.canvasBounds.width ||
125
+ newPoint.y < viewport.scroll.y ||
126
+ newPoint.y > viewport.scroll.y + viewport.canvasBounds.height) {
127
+ return MoveViewportAction.create(moveX, moveY);
128
+ }
129
+ return;
130
+ }
131
+ moveElement(element, offSetX, offSetY) {
132
+ return protocol_1.ChangeBoundsOperation.create([
133
+ {
134
+ elementId: element.id,
135
+ newSize: {
136
+ width: element.bounds.width,
137
+ height: element.bounds.height
138
+ },
139
+ newPosition: {
140
+ x: element.bounds.x + offSetX,
141
+ y: element.bounds.y + offSetY
142
+ }
143
+ }
144
+ ]);
145
+ }
146
+ move(viewport, selectedElements, deltaX, deltaY) {
147
+ const results = [];
148
+ if (selectedElements.length !== 0) {
149
+ selectedElements.forEach(currentElement => {
150
+ results.push(this.moveElement(currentElement, deltaX, deltaY));
151
+ const newPosition = this.getBounds(currentElement, deltaX, deltaY);
152
+ const viewportAction = this.adaptViewport(viewport, newPosition, deltaX, deltaY);
153
+ if (viewportAction) {
154
+ results.push(viewportAction);
155
+ }
156
+ });
157
+ }
158
+ return results;
159
+ }
160
+ };
161
+ __decorate([
162
+ (0, inversify_1.inject)(editor_context_service_1.EditorContextService),
163
+ __metadata("design:type", editor_context_service_1.EditorContextService)
164
+ ], MoveElementHandler.prototype, "editorContextService", void 0);
165
+ __decorate([
166
+ (0, inversify_1.inject)(types_1.TYPES.IActionDispatcher),
167
+ __metadata("design:type", Object)
168
+ ], MoveElementHandler.prototype, "dispatcher", void 0);
169
+ MoveElementHandler = __decorate([
170
+ (0, inversify_1.injectable)()
171
+ ], MoveElementHandler);
172
+ exports.MoveElementHandler = MoveElementHandler;
173
+ //# sourceMappingURL=move-handler.js.map