@theia/toolbar 1.67.0-next.3 → 1.67.0-next.56

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 (85) hide show
  1. package/README.md +8 -1
  2. package/package.json +12 -11
  3. package/src/browser/icons/codicons.ts +647 -0
  4. package/src/browser/icons/font-awesome-icons.ts +804 -0
  5. package/src/browser/icons/icon-set-provider.ts +135 -0
  6. package/src/browser/style/toolbar.css +12 -19
  7. package/src/browser/toolbar-icon-selector-dialog.tsx +43 -36
  8. package/lib/browser/abstract-toolbar-contribution.d.ts +0 -17
  9. package/lib/browser/abstract-toolbar-contribution.d.ts.map +0 -1
  10. package/lib/browser/abstract-toolbar-contribution.js +0 -61
  11. package/lib/browser/abstract-toolbar-contribution.js.map +0 -1
  12. package/lib/browser/application-shell-with-toolbar-override.d.ts +0 -17
  13. package/lib/browser/application-shell-with-toolbar-override.d.ts.map +0 -1
  14. package/lib/browser/application-shell-with-toolbar-override.js +0 -91
  15. package/lib/browser/application-shell-with-toolbar-override.js.map +0 -1
  16. package/lib/browser/codicons.d.ts +0 -2
  17. package/lib/browser/codicons.d.ts.map +0 -1
  18. package/lib/browser/codicons.js +0 -21
  19. package/lib/browser/codicons.js.map +0 -1
  20. package/lib/browser/font-awesome-icons.d.ts +0 -2
  21. package/lib/browser/font-awesome-icons.d.ts.map +0 -1
  22. package/lib/browser/font-awesome-icons.js +0 -21
  23. package/lib/browser/font-awesome-icons.js.map +0 -1
  24. package/lib/browser/package.spec.d.ts +0 -1
  25. package/lib/browser/package.spec.d.ts.map +0 -1
  26. package/lib/browser/package.spec.js +0 -19
  27. package/lib/browser/package.spec.js.map +0 -1
  28. package/lib/browser/toolbar-command-contribution.d.ts +0 -21
  29. package/lib/browser/toolbar-command-contribution.d.ts.map +0 -1
  30. package/lib/browser/toolbar-command-contribution.js +0 -188
  31. package/lib/browser/toolbar-command-contribution.js.map +0 -1
  32. package/lib/browser/toolbar-command-quick-input-service.d.ts +0 -20
  33. package/lib/browser/toolbar-command-quick-input-service.d.ts.map +0 -1
  34. package/lib/browser/toolbar-command-quick-input-service.js +0 -105
  35. package/lib/browser/toolbar-command-quick-input-service.js.map +0 -1
  36. package/lib/browser/toolbar-constants.d.ts +0 -24
  37. package/lib/browser/toolbar-constants.d.ts.map +0 -1
  38. package/lib/browser/toolbar-constants.js +0 -76
  39. package/lib/browser/toolbar-constants.js.map +0 -1
  40. package/lib/browser/toolbar-content-hover-widget-patcher.d.ts +0 -9
  41. package/lib/browser/toolbar-content-hover-widget-patcher.d.ts.map +0 -1
  42. package/lib/browser/toolbar-content-hover-widget-patcher.js +0 -53
  43. package/lib/browser/toolbar-content-hover-widget-patcher.js.map +0 -1
  44. package/lib/browser/toolbar-controller.d.ts +0 -40
  45. package/lib/browser/toolbar-controller.d.ts.map +0 -1
  46. package/lib/browser/toolbar-controller.js +0 -199
  47. package/lib/browser/toolbar-controller.js.map +0 -1
  48. package/lib/browser/toolbar-defaults.d.ts +0 -4
  49. package/lib/browser/toolbar-defaults.d.ts.map +0 -1
  50. package/lib/browser/toolbar-defaults.js +0 -61
  51. package/lib/browser/toolbar-defaults.js.map +0 -1
  52. package/lib/browser/toolbar-frontend-module.d.ts +0 -5
  53. package/lib/browser/toolbar-frontend-module.d.ts.map +0 -1
  54. package/lib/browser/toolbar-frontend-module.js +0 -28
  55. package/lib/browser/toolbar-frontend-module.js.map +0 -1
  56. package/lib/browser/toolbar-icon-selector-dialog.d.ts +0 -66
  57. package/lib/browser/toolbar-icon-selector-dialog.d.ts.map +0 -1
  58. package/lib/browser/toolbar-icon-selector-dialog.js +0 -225
  59. package/lib/browser/toolbar-icon-selector-dialog.js.map +0 -1
  60. package/lib/browser/toolbar-interfaces.d.ts +0 -47
  61. package/lib/browser/toolbar-interfaces.d.ts.map +0 -1
  62. package/lib/browser/toolbar-interfaces.js +0 -43
  63. package/lib/browser/toolbar-interfaces.js.map +0 -1
  64. package/lib/browser/toolbar-preference-schema.d.ts +0 -6
  65. package/lib/browser/toolbar-preference-schema.d.ts.map +0 -1
  66. package/lib/browser/toolbar-preference-schema.js +0 -74
  67. package/lib/browser/toolbar-preference-schema.js.map +0 -1
  68. package/lib/browser/toolbar-storage-provider.d.ts +0 -50
  69. package/lib/browser/toolbar-storage-provider.d.ts.map +0 -1
  70. package/lib/browser/toolbar-storage-provider.js +0 -347
  71. package/lib/browser/toolbar-storage-provider.js.map +0 -1
  72. package/lib/browser/toolbar.d.ts +0 -57
  73. package/lib/browser/toolbar.d.ts.map +0 -1
  74. package/lib/browser/toolbar.js +0 -332
  75. package/lib/browser/toolbar.js.map +0 -1
  76. package/lib/common/toolbar-preference-contribution.d.ts +0 -11
  77. package/lib/common/toolbar-preference-contribution.d.ts.map +0 -1
  78. package/lib/common/toolbar-preference-contribution.js +0 -34
  79. package/lib/common/toolbar-preference-contribution.js.map +0 -1
  80. package/lib/node/toolbar-backend-module.d.ts +0 -4
  81. package/lib/node/toolbar-backend-module.d.ts.map +0 -1
  82. package/lib/node/toolbar-backend-module.js +0 -26
  83. package/lib/node/toolbar-backend-module.js.map +0 -1
  84. package/src/browser/codicons.ts +0 -18
  85. package/src/browser/font-awesome-icons.ts +0 -18
@@ -1,347 +0,0 @@
1
- "use strict";
2
- // *****************************************************************************
3
- // Copyright (C) 2022 Ericsson 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-only WITH Classpath-exception-2.0
16
- // *****************************************************************************
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.ToolbarStorageProvider = exports.TOOLBAR_BAD_JSON_ERROR_MESSAGE = void 0;
19
- const tslib_1 = require("tslib");
20
- const jsoncParser = require("jsonc-parser");
21
- const core_1 = require("@theia/core");
22
- const inversify_1 = require("@theia/core/shared/inversify");
23
- const monaco_text_model_service_1 = require("@theia/monaco/lib/browser/monaco-text-model-service");
24
- const monaco_workspace_1 = require("@theia/monaco/lib/browser/monaco-workspace");
25
- const monaco = require("@theia/monaco-editor-core");
26
- const frontend_application_state_1 = require("@theia/core/lib/browser/frontend-application-state");
27
- const browser_1 = require("@theia/editor/lib/browser");
28
- const file_service_1 = require("@theia/filesystem/lib/browser/file-service");
29
- const promise_util_1 = require("@theia/core/lib/common/promise-util");
30
- const uri_1 = require("@theia/core/lib/common/uri");
31
- const toolbar_interfaces_1 = require("./toolbar-interfaces");
32
- const toolbar_constants_1 = require("./toolbar-constants");
33
- const toolbar_preference_schema_1 = require("./toolbar-preference-schema");
34
- const toolbar_defaults_1 = require("./toolbar-defaults");
35
- exports.TOOLBAR_BAD_JSON_ERROR_MESSAGE = 'There was an error reading your toolbar.json file. Please check if it is corrupt'
36
- + ' by right-clicking the toolbar and selecting "Customize Toolbar". You can also reset it to its defaults by selecting'
37
- + ' "Restore Toolbar Defaults"';
38
- let ToolbarStorageProvider = class ToolbarStorageProvider {
39
- constructor() {
40
- this._ready = new promise_util_1.Deferred();
41
- this.toDispose = new core_1.DisposableCollection();
42
- this.toolbarItemsUpdatedEmitter = new core_1.Emitter();
43
- this.onToolbarItemsChanged = this.toolbarItemsUpdatedEmitter.event;
44
- }
45
- get ready() {
46
- return this._ready.promise;
47
- }
48
- get toolbarItems() {
49
- return this._toolbarItems;
50
- }
51
- init() {
52
- this.doInit();
53
- }
54
- async doInit() {
55
- const reference = await this.textModelService.createModelReference(this.USER_TOOLBAR_URI);
56
- this.model = reference.object;
57
- this.toDispose.push(reference);
58
- this.toDispose.push(core_1.Disposable.create(() => this.model = undefined));
59
- this.readConfiguration();
60
- if (this.model) {
61
- this.toDispose.push(this.model.onDidChangeContent(() => this.readConfiguration()));
62
- this.toDispose.push(this.model.onDirtyChanged(() => this.readConfiguration()));
63
- this.toDispose.push(this.model.onDidChangeValid(() => this.readConfiguration()));
64
- }
65
- this.toDispose.push(this.toolbarItemsUpdatedEmitter);
66
- await this.appState.reachedState('ready');
67
- this.monacoWorkspace = this.lateInjector(monaco_workspace_1.MonacoWorkspace);
68
- this.editorManager = this.lateInjector(browser_1.EditorManager);
69
- this._ready.resolve();
70
- }
71
- readConfiguration() {
72
- if (!this.model || this.model.dirty) {
73
- return;
74
- }
75
- try {
76
- if (this.model.valid) {
77
- const content = this.model.getText();
78
- this._toolbarItems = this.parseContent(content);
79
- }
80
- else {
81
- this._toolbarItems = undefined;
82
- }
83
- this.toolbarItemsUpdatedEmitter.fire();
84
- }
85
- catch (e) {
86
- console.error(`Failed to load toolbar config from '${this.USER_TOOLBAR_URI}'.`, e);
87
- }
88
- }
89
- async removeItem(position) {
90
- if (this.toolbarItems) {
91
- const { alignment, groupIndex, itemIndex } = position;
92
- const modifiedConfiguration = (0, core_1.deepClone)(this.toolbarItems);
93
- modifiedConfiguration.items[alignment][groupIndex].splice(itemIndex, 1);
94
- const sanitizedConfiguration = this.removeEmptyGroupsFromToolbar(modifiedConfiguration);
95
- return this.writeToFile([], sanitizedConfiguration);
96
- }
97
- return false;
98
- }
99
- async addItem(command, alignment) {
100
- var _a, _b;
101
- if (this.toolbarItems) {
102
- const itemFromCommand = {
103
- id: command.id,
104
- command: command.id,
105
- icon: command.iconClass,
106
- };
107
- const groupIndex = (_a = this.toolbarItems) === null || _a === void 0 ? void 0 : _a.items[alignment].length;
108
- if (groupIndex) {
109
- const lastItemIndex = (_b = this.toolbarItems) === null || _b === void 0 ? void 0 : _b.items[alignment][groupIndex - 1].length;
110
- const modifiedConfiguration = (0, core_1.deepClone)(this.toolbarItems);
111
- modifiedConfiguration.items[alignment][groupIndex - 1].push(itemFromCommand);
112
- return !!lastItemIndex && this.writeToFile([], modifiedConfiguration);
113
- }
114
- return this.addItemToEmptyColumn(itemFromCommand, alignment);
115
- }
116
- return false;
117
- }
118
- async swapValues(oldPosition, newPosition, direction) {
119
- var _a;
120
- if (this.toolbarItems) {
121
- const { alignment, groupIndex, itemIndex } = oldPosition;
122
- const draggedItem = (_a = this.toolbarItems) === null || _a === void 0 ? void 0 : _a.items[alignment][groupIndex][itemIndex];
123
- const newItemIndex = direction === 'location-right' ? newPosition.itemIndex + 1 : newPosition.itemIndex;
124
- const modifiedConfiguration = (0, core_1.deepClone)(this.toolbarItems);
125
- if (newPosition.alignment === oldPosition.alignment && newPosition.groupIndex === oldPosition.groupIndex) {
126
- modifiedConfiguration.items[newPosition.alignment][newPosition.groupIndex].splice(newItemIndex, 0, draggedItem);
127
- if (newPosition.itemIndex > oldPosition.itemIndex) {
128
- modifiedConfiguration.items[oldPosition.alignment][oldPosition.groupIndex].splice(oldPosition.itemIndex, 1);
129
- }
130
- else {
131
- modifiedConfiguration.items[oldPosition.alignment][oldPosition.groupIndex].splice(oldPosition.itemIndex + 1, 1);
132
- }
133
- }
134
- else {
135
- modifiedConfiguration.items[oldPosition.alignment][oldPosition.groupIndex].splice(oldPosition.itemIndex, 1);
136
- modifiedConfiguration.items[newPosition.alignment][newPosition.groupIndex].splice(newItemIndex, 0, draggedItem);
137
- }
138
- const sanitizedConfiguration = this.removeEmptyGroupsFromToolbar(modifiedConfiguration);
139
- return this.writeToFile([], sanitizedConfiguration);
140
- }
141
- return false;
142
- }
143
- async addItemToEmptyColumn(item, alignment) {
144
- if (this.toolbarItems) {
145
- const modifiedConfiguration = (0, core_1.deepClone)(this.toolbarItems);
146
- modifiedConfiguration.items[alignment].push([item]);
147
- return this.writeToFile([], modifiedConfiguration);
148
- }
149
- return false;
150
- }
151
- async moveItemToEmptySpace(oldPosition, newAlignment, centerPosition) {
152
- const { alignment: oldAlignment, itemIndex: oldItemIndex } = oldPosition;
153
- let oldGroupIndex = oldPosition.groupIndex;
154
- if (this.toolbarItems) {
155
- const draggedItem = this.toolbarItems.items[oldAlignment][oldGroupIndex][oldItemIndex];
156
- const newGroupIndex = this.toolbarItems.items[oldAlignment].length;
157
- const modifiedConfiguration = (0, core_1.deepClone)(this.toolbarItems);
158
- if (newAlignment === toolbar_interfaces_1.ToolbarAlignment.LEFT) {
159
- modifiedConfiguration.items[newAlignment].push([draggedItem]);
160
- }
161
- else if (newAlignment === toolbar_interfaces_1.ToolbarAlignment.CENTER) {
162
- if (centerPosition === 'left') {
163
- modifiedConfiguration.items[newAlignment].unshift([draggedItem]);
164
- if (newAlignment === oldAlignment) {
165
- oldGroupIndex = oldGroupIndex + 1;
166
- }
167
- }
168
- else if (centerPosition === 'right') {
169
- modifiedConfiguration.items[newAlignment].splice(newGroupIndex + 1, 0, [draggedItem]);
170
- }
171
- }
172
- else if (newAlignment === toolbar_interfaces_1.ToolbarAlignment.RIGHT) {
173
- modifiedConfiguration.items[newAlignment].unshift([draggedItem]);
174
- if (newAlignment === oldAlignment) {
175
- oldGroupIndex = oldGroupIndex + 1;
176
- }
177
- }
178
- modifiedConfiguration.items[oldAlignment][oldGroupIndex].splice(oldItemIndex, 1);
179
- const sanitizedConfiguration = this.removeEmptyGroupsFromToolbar(modifiedConfiguration);
180
- return this.writeToFile([], sanitizedConfiguration);
181
- }
182
- return false;
183
- }
184
- async insertGroup(position, insertDirection) {
185
- if (this.toolbarItems) {
186
- const { alignment, groupIndex, itemIndex } = position;
187
- const modifiedConfiguration = (0, core_1.deepClone)(this.toolbarItems);
188
- const originalColumn = modifiedConfiguration.items[alignment];
189
- if (originalColumn) {
190
- const existingGroup = originalColumn[groupIndex];
191
- const existingGroupLength = existingGroup.length;
192
- let poppedGroup = [];
193
- let numItemsToRemove;
194
- if (insertDirection === 'left' && itemIndex !== 0) {
195
- numItemsToRemove = existingGroupLength - itemIndex;
196
- poppedGroup = existingGroup.splice(itemIndex, numItemsToRemove);
197
- originalColumn.splice(groupIndex, 1, existingGroup, poppedGroup);
198
- }
199
- else if (insertDirection === 'right' && itemIndex !== existingGroupLength - 1) {
200
- numItemsToRemove = itemIndex + 1;
201
- poppedGroup = existingGroup.splice(0, numItemsToRemove);
202
- originalColumn.splice(groupIndex, 1, poppedGroup, existingGroup);
203
- }
204
- const sanitizedConfiguration = this.removeEmptyGroupsFromToolbar(modifiedConfiguration);
205
- return this.writeToFile([], sanitizedConfiguration);
206
- }
207
- }
208
- return false;
209
- }
210
- removeEmptyGroupsFromToolbar(toolbarItems) {
211
- if (toolbarItems) {
212
- const modifiedConfiguration = (0, core_1.deepClone)(toolbarItems);
213
- const columns = [toolbar_interfaces_1.ToolbarAlignment.LEFT, toolbar_interfaces_1.ToolbarAlignment.CENTER, toolbar_interfaces_1.ToolbarAlignment.RIGHT];
214
- columns.forEach(column => {
215
- const groups = toolbarItems.items[column];
216
- groups.forEach((group, index) => {
217
- if (group.length === 0) {
218
- modifiedConfiguration.items[column].splice(index, 1);
219
- }
220
- });
221
- });
222
- return modifiedConfiguration;
223
- }
224
- return undefined;
225
- }
226
- async restoreToolbarDefaults() {
227
- this._toolbarItems = this.defaultsFactory();
228
- return this.writeToFile([], this._toolbarItems);
229
- }
230
- async writeToFile(path, value, insertion = false) {
231
- if (this.model) {
232
- try {
233
- const content = this.model.getText().trim();
234
- const textModel = this.model.textEditorModel;
235
- const editOperations = [];
236
- const { insertSpaces, tabSize, defaultEOL } = textModel.getOptions();
237
- for (const edit of jsoncParser.modify(content, path, value, {
238
- isArrayInsertion: insertion,
239
- formattingOptions: {
240
- insertSpaces,
241
- tabSize,
242
- eol: defaultEOL === monaco.editor.DefaultEndOfLine.LF ? '\n' : '\r\n',
243
- },
244
- })) {
245
- const start = textModel.getPositionAt(edit.offset);
246
- const end = textModel.getPositionAt(edit.offset + edit.length);
247
- editOperations.push({
248
- range: monaco.Range.fromPositions(start, end),
249
- // eslint-disable-next-line no-null/no-null
250
- text: edit.content || null,
251
- forceMoveMarkers: false,
252
- });
253
- }
254
- await this.monacoWorkspace.applyBackgroundEdit(this.model, editOperations, false);
255
- await this.model.save();
256
- return true;
257
- }
258
- catch (e) {
259
- const message = core_1.nls.localize('theia/toolbar/failedUpdate', "Failed to update the value of '{0}' in '{1}'.", path.join('.'), this.USER_TOOLBAR_URI.path.toString());
260
- this.messageService.error(core_1.nls.localize('theia/toolbar/jsonError', exports.TOOLBAR_BAD_JSON_ERROR_MESSAGE));
261
- console.error(`${message}`, e);
262
- return false;
263
- }
264
- }
265
- return false;
266
- }
267
- parseContent(fileContent) {
268
- const rawConfig = this.parse(fileContent);
269
- if (!(0, toolbar_preference_schema_1.isToolbarPreferences)(rawConfig)) {
270
- return undefined;
271
- }
272
- return rawConfig;
273
- }
274
- parse(fileContent) {
275
- let strippedContent = fileContent.trim();
276
- if (!strippedContent) {
277
- return undefined;
278
- }
279
- strippedContent = jsoncParser.stripComments(strippedContent);
280
- return jsoncParser.parse(strippedContent);
281
- }
282
- async openOrCreateJSONFile(state, doOpen = false) {
283
- const fileExists = await this.fileService.exists(this.USER_TOOLBAR_URI);
284
- let doWriteStateToFile = false;
285
- if (fileExists) {
286
- const fileContent = await this.fileService.read(this.USER_TOOLBAR_URI);
287
- if (fileContent.value.trim() === '') {
288
- doWriteStateToFile = true;
289
- }
290
- }
291
- else {
292
- await this.fileService.create(this.USER_TOOLBAR_URI);
293
- doWriteStateToFile = true;
294
- }
295
- if (doWriteStateToFile) {
296
- await this.writeToFile([], state);
297
- }
298
- this.readConfiguration();
299
- if (doOpen) {
300
- const widget = await this.editorManager.open(this.USER_TOOLBAR_URI);
301
- return widget;
302
- }
303
- return undefined;
304
- }
305
- dispose() {
306
- this.toDispose.dispose();
307
- }
308
- };
309
- exports.ToolbarStorageProvider = ToolbarStorageProvider;
310
- tslib_1.__decorate([
311
- (0, inversify_1.inject)(frontend_application_state_1.FrontendApplicationStateService),
312
- tslib_1.__metadata("design:type", frontend_application_state_1.FrontendApplicationStateService)
313
- ], ToolbarStorageProvider.prototype, "appState", void 0);
314
- tslib_1.__decorate([
315
- (0, inversify_1.inject)(monaco_text_model_service_1.MonacoTextModelService),
316
- tslib_1.__metadata("design:type", monaco_text_model_service_1.MonacoTextModelService)
317
- ], ToolbarStorageProvider.prototype, "textModelService", void 0);
318
- tslib_1.__decorate([
319
- (0, inversify_1.inject)(file_service_1.FileService),
320
- tslib_1.__metadata("design:type", file_service_1.FileService)
321
- ], ToolbarStorageProvider.prototype, "fileService", void 0);
322
- tslib_1.__decorate([
323
- (0, inversify_1.inject)(core_1.MessageService),
324
- tslib_1.__metadata("design:type", core_1.MessageService)
325
- ], ToolbarStorageProvider.prototype, "messageService", void 0);
326
- tslib_1.__decorate([
327
- (0, inversify_1.inject)(toolbar_interfaces_1.LateInjector),
328
- tslib_1.__metadata("design:type", Function)
329
- ], ToolbarStorageProvider.prototype, "lateInjector", void 0);
330
- tslib_1.__decorate([
331
- (0, inversify_1.inject)(toolbar_constants_1.UserToolbarURI),
332
- tslib_1.__metadata("design:type", uri_1.default)
333
- ], ToolbarStorageProvider.prototype, "USER_TOOLBAR_URI", void 0);
334
- tslib_1.__decorate([
335
- (0, inversify_1.inject)(toolbar_defaults_1.ToolbarDefaultsFactory),
336
- tslib_1.__metadata("design:type", Function)
337
- ], ToolbarStorageProvider.prototype, "defaultsFactory", void 0);
338
- tslib_1.__decorate([
339
- (0, inversify_1.postConstruct)(),
340
- tslib_1.__metadata("design:type", Function),
341
- tslib_1.__metadata("design:paramtypes", []),
342
- tslib_1.__metadata("design:returntype", void 0)
343
- ], ToolbarStorageProvider.prototype, "init", null);
344
- exports.ToolbarStorageProvider = ToolbarStorageProvider = tslib_1.__decorate([
345
- (0, inversify_1.injectable)()
346
- ], ToolbarStorageProvider);
347
- //# sourceMappingURL=toolbar-storage-provider.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"toolbar-storage-provider.js","sourceRoot":"","sources":["../../src/browser/toolbar-storage-provider.ts"],"names":[],"mappings":"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"}
@@ -1,57 +0,0 @@
1
- /// <reference types="react" />
2
- import * as React from '@theia/core/shared/react';
3
- import { Anchor, ContextMenuAccess, KeybindingRegistry, Widget, WidgetManager } from '@theia/core/lib/browser';
4
- import { TabBarToolbar, TabBarToolbarFactory } from '@theia/core/lib/browser/shell/tab-bar-toolbar';
5
- import { MenuPath, PreferenceService, ProgressService } from '@theia/core';
6
- import { FrontendApplicationStateService } from '@theia/core/lib/browser/frontend-application-state';
7
- import { ProgressBarFactory } from '@theia/core/lib/browser/progress-bar-factory';
8
- import { Deferred } from '@theia/core/lib/common/promise-util';
9
- import { ToolbarAlignment, ToolbarItemPosition } from './toolbar-interfaces';
10
- import { ToolbarController } from './toolbar-controller';
11
- import { TabBarToolbarItem } from '@theia/core/lib/browser/shell/tab-bar-toolbar/tab-toolbar-item';
12
- export declare const TOOLBAR_PROGRESSBAR_ID = "main-toolbar-progress";
13
- export declare class ToolbarImpl extends TabBarToolbar {
14
- protected readonly tabbarToolbarFactory: TabBarToolbarFactory;
15
- protected readonly widgetManager: WidgetManager;
16
- protected readonly appState: FrontendApplicationStateService;
17
- protected readonly model: ToolbarController;
18
- protected readonly preferenceService: PreferenceService;
19
- protected readonly keybindingRegistry: KeybindingRegistry;
20
- protected readonly progressFactory: ProgressBarFactory;
21
- protected readonly progressService: ProgressService;
22
- protected currentlyDraggedItem: HTMLDivElement | undefined;
23
- protected draggedStartingPosition: ToolbarItemPosition | undefined;
24
- protected deferredRef: Deferred<HTMLDivElement>;
25
- protected isBusyDeferred: Deferred<void>;
26
- protected init(): void;
27
- protected doInit(): Promise<void>;
28
- protected updateInlineItems(): void;
29
- protected handleContextMenu: (e: React.MouseEvent<HTMLDivElement>) => ContextMenuAccess;
30
- protected doHandleContextMenu(event: React.MouseEvent<HTMLDivElement>): ContextMenuAccess;
31
- protected getMenuDetailsForClick(event: React.MouseEvent<HTMLDivElement>): {
32
- menuPath: MenuPath;
33
- anchor: Anchor;
34
- };
35
- protected getContextMenuArgs(event: React.MouseEvent): Array<string | Widget>;
36
- protected renderGroupsInColumn(groups: TabBarToolbarItem[][], alignment: ToolbarAlignment): React.ReactNode[];
37
- protected assignRef: (element: HTMLDivElement) => void;
38
- protected doAssignRef(element: HTMLDivElement): void;
39
- protected render(): React.ReactNode;
40
- protected renderColumnWrapper(alignment: ToolbarAlignment, columnGroup: TabBarToolbarItem[][]): React.ReactNode;
41
- protected renderColumnSpace(alignment: ToolbarAlignment, position?: 'left' | 'right'): React.ReactNode;
42
- protected renderItemWithDraggableWrapper(item: TabBarToolbarItem, position: ToolbarItemPosition): React.ReactNode;
43
- protected handleOnDragStart: (e: React.DragEvent<HTMLDivElement>) => void;
44
- protected doHandleOnDragStart(e: React.DragEvent<HTMLDivElement>): void;
45
- protected handleOnDragEnter: (e: React.DragEvent<HTMLDivElement>) => void;
46
- protected doHandleItemOnDragEnter(e: React.DragEvent<HTMLDivElement>): void;
47
- protected handleOnDragLeave: (e: React.DragEvent<HTMLDivElement>) => void;
48
- protected doHandleOnDragLeave(e: React.DragEvent<HTMLDivElement>): void;
49
- protected handleOnDrop: (e: React.DragEvent<HTMLDivElement>) => void;
50
- protected doHandleOnDrop(e: React.DragEvent<HTMLDivElement>): void;
51
- protected handleDropInExistingGroup(element: EventTarget & HTMLDivElement): void;
52
- protected handleDropInEmptySpace(element: EventTarget & HTMLDivElement): void;
53
- protected arePositionsEquivalent(start: ToolbarItemPosition, end: ToolbarItemPosition): boolean;
54
- protected handleOnDragEnd: (e: React.DragEvent<HTMLDivElement>) => void;
55
- protected doHandleOnDragEnd(e: React.DragEvent<HTMLDivElement>): void;
56
- }
57
- //# sourceMappingURL=toolbar.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"toolbar.d.ts","sourceRoot":"","sources":["../../src/browser/toolbar.tsx"],"names":[],"mappings":"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"}