@theia/editor 1.67.0-next.13 → 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 (147) hide show
  1. package/README.md +1 -1
  2. package/package.json +4 -4
  3. package/src/browser/editor-contribution.ts +26 -8
  4. package/src/browser/editor-frontend-module.ts +6 -0
  5. package/src/browser/index.ts +2 -0
  6. package/src/browser/split-editor-contribution.ts +46 -0
  7. package/src/browser/text-editor-split-contribution.ts +50 -0
  8. package/lib/browser/decorations/editor-decoration-style.d.ts +0 -9
  9. package/lib/browser/decorations/editor-decoration-style.d.ts.map +0 -1
  10. package/lib/browser/decorations/editor-decoration-style.js +0 -37
  11. package/lib/browser/decorations/editor-decoration-style.js.map +0 -1
  12. package/lib/browser/decorations/editor-decoration.d.ts +0 -119
  13. package/lib/browser/decorations/editor-decoration.d.ts.map +0 -1
  14. package/lib/browser/decorations/editor-decoration.js +0 -38
  15. package/lib/browser/decorations/editor-decoration.js.map +0 -1
  16. package/lib/browser/decorations/editor-decorator.d.ts +0 -7
  17. package/lib/browser/decorations/editor-decorator.d.ts.map +0 -1
  18. package/lib/browser/decorations/editor-decorator.js +0 -39
  19. package/lib/browser/decorations/editor-decorator.js.map +0 -1
  20. package/lib/browser/decorations/index.d.ts +0 -4
  21. package/lib/browser/decorations/index.d.ts.map +0 -1
  22. package/lib/browser/decorations/index.js +0 -22
  23. package/lib/browser/decorations/index.js.map +0 -1
  24. package/lib/browser/diff-navigator.d.ts +0 -10
  25. package/lib/browser/diff-navigator.d.ts.map +0 -1
  26. package/lib/browser/diff-navigator.js +0 -20
  27. package/lib/browser/diff-navigator.js.map +0 -1
  28. package/lib/browser/editor-command.d.ts +0 -102
  29. package/lib/browser/editor-command.d.ts.map +0 -1
  30. package/lib/browser/editor-command.js +0 -402
  31. package/lib/browser/editor-command.js.map +0 -1
  32. package/lib/browser/editor-contribution.d.ts +0 -30
  33. package/lib/browser/editor-contribution.d.ts.map +0 -1
  34. package/lib/browser/editor-contribution.js +0 -206
  35. package/lib/browser/editor-contribution.js.map +0 -1
  36. package/lib/browser/editor-frontend-module.d.ts +0 -6
  37. package/lib/browser/editor-frontend-module.d.ts.map +0 -1
  38. package/lib/browser/editor-frontend-module.js +0 -83
  39. package/lib/browser/editor-frontend-module.js.map +0 -1
  40. package/lib/browser/editor-keybinding.d.ts +0 -6
  41. package/lib/browser/editor-keybinding.d.ts.map +0 -1
  42. package/lib/browser/editor-keybinding.js +0 -51
  43. package/lib/browser/editor-keybinding.js.map +0 -1
  44. package/lib/browser/editor-language-quick-pick-service.d.ts +0 -12
  45. package/lib/browser/editor-language-quick-pick-service.d.ts.map +0 -1
  46. package/lib/browser/editor-language-quick-pick-service.js +0 -77
  47. package/lib/browser/editor-language-quick-pick-service.js.map +0 -1
  48. package/lib/browser/editor-linenumber-contribution.d.ts +0 -16
  49. package/lib/browser/editor-linenumber-contribution.d.ts.map +0 -1
  50. package/lib/browser/editor-linenumber-contribution.js +0 -89
  51. package/lib/browser/editor-linenumber-contribution.js.map +0 -1
  52. package/lib/browser/editor-manager.d.ts +0 -135
  53. package/lib/browser/editor-manager.d.ts.map +0 -1
  54. package/lib/browser/editor-manager.js +0 -472
  55. package/lib/browser/editor-manager.js.map +0 -1
  56. package/lib/browser/editor-menu.d.ts +0 -51
  57. package/lib/browser/editor-menu.d.ts.map +0 -1
  58. package/lib/browser/editor-menu.js +0 -208
  59. package/lib/browser/editor-menu.js.map +0 -1
  60. package/lib/browser/editor-navigation-contribution.d.ts +0 -68
  61. package/lib/browser/editor-navigation-contribution.d.ts.map +0 -1
  62. package/lib/browser/editor-navigation-contribution.js +0 -324
  63. package/lib/browser/editor-navigation-contribution.js.map +0 -1
  64. package/lib/browser/editor-variable-contribution.d.ts +0 -9
  65. package/lib/browser/editor-variable-contribution.d.ts.map +0 -1
  66. package/lib/browser/editor-variable-contribution.js +0 -65
  67. package/lib/browser/editor-variable-contribution.js.map +0 -1
  68. package/lib/browser/editor-widget-factory.d.ts +0 -18
  69. package/lib/browser/editor-widget-factory.d.ts.map +0 -1
  70. package/lib/browser/editor-widget-factory.js +0 -84
  71. package/lib/browser/editor-widget-factory.js.map +0 -1
  72. package/lib/browser/editor-widget.d.ts +0 -28
  73. package/lib/browser/editor-widget.d.ts.map +0 -1
  74. package/lib/browser/editor-widget.js +0 -130
  75. package/lib/browser/editor-widget.js.map +0 -1
  76. package/lib/browser/editor.d.ts +0 -311
  77. package/lib/browser/editor.d.ts.map +0 -1
  78. package/lib/browser/editor.js +0 -104
  79. package/lib/browser/editor.js.map +0 -1
  80. package/lib/browser/index.d.ts +0 -10
  81. package/lib/browser/index.d.ts.map +0 -1
  82. package/lib/browser/index.js +0 -28
  83. package/lib/browser/index.js.map +0 -1
  84. package/lib/browser/language-status/editor-language-status-service.d.ts +0 -78
  85. package/lib/browser/language-status/editor-language-status-service.d.ts.map +0 -1
  86. package/lib/browser/language-status/editor-language-status-service.js +0 -244
  87. package/lib/browser/language-status/editor-language-status-service.js.map +0 -1
  88. package/lib/browser/navigation/navigation-location-service.d.ts +0 -132
  89. package/lib/browser/navigation/navigation-location-service.d.ts.map +0 -1
  90. package/lib/browser/navigation/navigation-location-service.js +0 -352
  91. package/lib/browser/navigation/navigation-location-service.js.map +0 -1
  92. package/lib/browser/navigation/navigation-location-service.spec.d.ts +0 -2
  93. package/lib/browser/navigation/navigation-location-service.spec.d.ts.map +0 -1
  94. package/lib/browser/navigation/navigation-location-service.spec.js +0 -185
  95. package/lib/browser/navigation/navigation-location-service.spec.js.map +0 -1
  96. package/lib/browser/navigation/navigation-location-similarity.d.ts +0 -16
  97. package/lib/browser/navigation/navigation-location-similarity.d.ts.map +0 -1
  98. package/lib/browser/navigation/navigation-location-similarity.js +0 -58
  99. package/lib/browser/navigation/navigation-location-similarity.js.map +0 -1
  100. package/lib/browser/navigation/navigation-location-similarity.spec.d.ts +0 -2
  101. package/lib/browser/navigation/navigation-location-similarity.spec.d.ts.map +0 -1
  102. package/lib/browser/navigation/navigation-location-similarity.spec.js +0 -33
  103. package/lib/browser/navigation/navigation-location-similarity.spec.js.map +0 -1
  104. package/lib/browser/navigation/navigation-location-updater.d.ts +0 -36
  105. package/lib/browser/navigation/navigation-location-updater.d.ts.map +0 -1
  106. package/lib/browser/navigation/navigation-location-updater.js +0 -206
  107. package/lib/browser/navigation/navigation-location-updater.js.map +0 -1
  108. package/lib/browser/navigation/navigation-location-updater.spec.d.ts +0 -2
  109. package/lib/browser/navigation/navigation-location-updater.spec.d.ts.map +0 -1
  110. package/lib/browser/navigation/navigation-location-updater.spec.js +0 -178
  111. package/lib/browser/navigation/navigation-location-updater.spec.js.map +0 -1
  112. package/lib/browser/navigation/navigation-location.d.ts +0 -192
  113. package/lib/browser/navigation/navigation-location.d.ts.map +0 -1
  114. package/lib/browser/navigation/navigation-location.js +0 -301
  115. package/lib/browser/navigation/navigation-location.js.map +0 -1
  116. package/lib/browser/navigation/test/mock-navigation-location-updater.d.ts +0 -16
  117. package/lib/browser/navigation/test/mock-navigation-location-updater.d.ts.map +0 -1
  118. package/lib/browser/navigation/test/mock-navigation-location-updater.js +0 -39
  119. package/lib/browser/navigation/test/mock-navigation-location-updater.js.map +0 -1
  120. package/lib/browser/quick-editor-service.d.ts +0 -17
  121. package/lib/browser/quick-editor-service.d.ts.map +0 -1
  122. package/lib/browser/quick-editor-service.js +0 -102
  123. package/lib/browser/quick-editor-service.js.map +0 -1
  124. package/lib/browser/undo-redo-service.d.ts +0 -24
  125. package/lib/browser/undo-redo-service.d.ts.map +0 -1
  126. package/lib/browser/undo-redo-service.js +0 -106
  127. package/lib/browser/undo-redo-service.js.map +0 -1
  128. package/lib/common/editor-generated-preference-schema.d.ts +0 -303
  129. package/lib/common/editor-generated-preference-schema.d.ts.map +0 -1
  130. package/lib/common/editor-generated-preference-schema.js +0 -2666
  131. package/lib/common/editor-generated-preference-schema.js.map +0 -1
  132. package/lib/common/editor-preferences.d.ts +0 -42
  133. package/lib/common/editor-preferences.d.ts.map +0 -1
  134. package/lib/common/editor-preferences.js +0 -179
  135. package/lib/common/editor-preferences.js.map +0 -1
  136. package/lib/common/language-selector.d.ts +0 -14
  137. package/lib/common/language-selector.d.ts.map +0 -1
  138. package/lib/common/language-selector.js +0 -91
  139. package/lib/common/language-selector.js.map +0 -1
  140. package/lib/node/editor-backend-module.d.ts +0 -4
  141. package/lib/node/editor-backend-module.d.ts.map +0 -1
  142. package/lib/node/editor-backend-module.js +0 -23
  143. package/lib/node/editor-backend-module.js.map +0 -1
  144. package/lib/package.spec.d.ts +0 -1
  145. package/lib/package.spec.d.ts.map +0 -1
  146. package/lib/package.spec.js +0 -26
  147. package/lib/package.spec.js.map +0 -1
@@ -1,78 +0,0 @@
1
- import { StatusBar, StatusBarEntry } from '@theia/core/lib/browser';
2
- import { LanguageService } from '@theia/core/lib/browser/language-service';
3
- import { CommandRegistry } from '@theia/core';
4
- import { TextEditor } from '../editor';
5
- import { LanguageSelector } from '../../common/language-selector';
6
- import { AccessibilityInformation } from '@theia/core/lib/common/accessibility';
7
- import { CurrentEditorAccess } from '../editor-manager';
8
- import { Severity } from '@theia/core/lib/common/severity';
9
- import { LabelParser } from '@theia/core/lib/browser/label-parser';
10
- /**
11
- * Represents the severity of a language status item.
12
- */
13
- export declare enum LanguageStatusSeverity {
14
- Information = 0,
15
- Warning = 1,
16
- Error = 2
17
- }
18
- /**
19
- * Command represents a particular invocation of a registered command.
20
- */
21
- export interface Command {
22
- /**
23
- * The identifier of the actual command handler.
24
- */
25
- id: string;
26
- /**
27
- * Title of the command invocation, like "Add local variable 'foo'".
28
- */
29
- title?: string;
30
- /**
31
- * A tooltip for for command, when represented in the UI.
32
- */
33
- tooltip?: string;
34
- /**
35
- * Arguments that the command handler should be
36
- * invoked with.
37
- */
38
- arguments?: unknown[];
39
- }
40
- /**
41
- * A language status item is the preferred way to present language status reports for the active text editors,
42
- * such as selected linter or notifying about a configuration problem.
43
- */
44
- export interface LanguageStatus {
45
- readonly id: string;
46
- readonly name: string;
47
- readonly selector: LanguageSelector;
48
- readonly severity: Severity;
49
- readonly label: string;
50
- readonly detail: string;
51
- readonly busy: boolean;
52
- readonly source: string;
53
- readonly command: Command | undefined;
54
- readonly accessibilityInfo: AccessibilityInformation | undefined;
55
- }
56
- export declare class EditorLanguageStatusService {
57
- protected readonly statusBar: StatusBar;
58
- protected readonly languages: LanguageService;
59
- protected readonly editorAccess: CurrentEditorAccess;
60
- protected readonly commandRegistry: CommandRegistry;
61
- protected readonly labelParser: LabelParser;
62
- protected static LANGUAGE_MODE_ID: string;
63
- protected static LANGUAGE_STATUS_ID: string;
64
- protected readonly status: Map<number, LanguageStatus>;
65
- protected pinnedCommands: Set<string>;
66
- setLanguageStatusItem(handle: number, item: LanguageStatus): void;
67
- removeLanguageStatusItem(handle: number): void;
68
- updateLanguageStatus(editor: TextEditor | undefined): void;
69
- protected updateLanguageStatusItems(editor?: TextEditor | undefined): void;
70
- protected updatePinnedItems(items?: LanguageStatus[]): void;
71
- protected toPinnedItem(item: LanguageStatus): StatusBarEntry;
72
- protected createTooltip(items: LanguageStatus[]): HTMLElement;
73
- protected setPinProperties(pin: HTMLElement, id: string): void;
74
- protected togglePinned(item: LanguageStatus): void;
75
- protected getSeverityIconClasses(severity: Severity): string;
76
- protected renderWithIcons(host: HTMLElement, text?: string): void;
77
- }
78
- //# sourceMappingURL=editor-language-status-service.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"editor-language-status-service.d.ts","sourceRoot":"","sources":["../../../src/browser/language-status/editor-language-status-service.ts"],"names":[],"mappings":"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"}
@@ -1,244 +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
- var EditorLanguageStatusService_1;
18
- Object.defineProperty(exports, "__esModule", { value: true });
19
- exports.EditorLanguageStatusService = exports.LanguageStatusSeverity = void 0;
20
- const tslib_1 = require("tslib");
21
- const inversify_1 = require("@theia/core/shared/inversify");
22
- const browser_1 = require("@theia/core/lib/browser");
23
- const language_service_1 = require("@theia/core/lib/browser/language-service");
24
- const core_1 = require("@theia/core");
25
- const editor_command_1 = require("../editor-command");
26
- const language_selector_1 = require("../../common/language-selector");
27
- const uri_1 = require("@theia/core/lib/common/uri");
28
- const editor_manager_1 = require("../editor-manager");
29
- const severity_1 = require("@theia/core/lib/common/severity");
30
- const label_parser_1 = require("@theia/core/lib/browser/label-parser");
31
- /**
32
- * Represents the severity of a language status item.
33
- */
34
- var LanguageStatusSeverity;
35
- (function (LanguageStatusSeverity) {
36
- LanguageStatusSeverity[LanguageStatusSeverity["Information"] = 0] = "Information";
37
- LanguageStatusSeverity[LanguageStatusSeverity["Warning"] = 1] = "Warning";
38
- LanguageStatusSeverity[LanguageStatusSeverity["Error"] = 2] = "Error";
39
- })(LanguageStatusSeverity || (exports.LanguageStatusSeverity = LanguageStatusSeverity = {}));
40
- let EditorLanguageStatusService = EditorLanguageStatusService_1 = class EditorLanguageStatusService {
41
- constructor() {
42
- this.status = new Map();
43
- this.pinnedCommands = new Set();
44
- }
45
- setLanguageStatusItem(handle, item) {
46
- this.status.set(handle, item);
47
- this.updateLanguageStatusItems();
48
- }
49
- removeLanguageStatusItem(handle) {
50
- this.status.delete(handle);
51
- this.updateLanguageStatusItems();
52
- }
53
- updateLanguageStatus(editor) {
54
- if (!editor) {
55
- this.statusBar.removeElement(EditorLanguageStatusService_1.LANGUAGE_MODE_ID);
56
- return;
57
- }
58
- const language = this.languages.getLanguage(editor.document.languageId);
59
- const languageName = language ? language.name : '';
60
- this.statusBar.setElement(EditorLanguageStatusService_1.LANGUAGE_MODE_ID, {
61
- text: languageName,
62
- alignment: browser_1.StatusBarAlignment.RIGHT,
63
- priority: 1,
64
- command: editor_command_1.EditorCommands.CHANGE_LANGUAGE.id,
65
- tooltip: core_1.nls.localizeByDefault('Select Language Mode')
66
- });
67
- this.updateLanguageStatusItems(editor);
68
- }
69
- updateLanguageStatusItems(editor = this.editorAccess.editor) {
70
- if (!editor) {
71
- this.statusBar.removeElement(EditorLanguageStatusService_1.LANGUAGE_STATUS_ID);
72
- this.updatePinnedItems();
73
- return;
74
- }
75
- const uri = new uri_1.default(editor.document.uri);
76
- const items = Array.from(this.status.values())
77
- .filter(item => (0, language_selector_1.score)(item.selector, uri.scheme, uri.path.toString(), editor.document.languageId, true))
78
- .sort((left, right) => right.severity - left.severity);
79
- if (!items.length) {
80
- this.statusBar.removeElement(EditorLanguageStatusService_1.LANGUAGE_STATUS_ID);
81
- return;
82
- }
83
- const severityText = items[0].severity === severity_1.Severity.Info
84
- ? '$(bracket)'
85
- : items[0].severity === severity_1.Severity.Warning
86
- ? '$(bracket-dot)'
87
- : '$(bracket-error)';
88
- this.statusBar.setElement(EditorLanguageStatusService_1.LANGUAGE_STATUS_ID, {
89
- text: severityText,
90
- alignment: browser_1.StatusBarAlignment.RIGHT,
91
- priority: 2,
92
- tooltip: this.createTooltip(items),
93
- affinity: { id: EditorLanguageStatusService_1.LANGUAGE_MODE_ID, alignment: browser_1.StatusBarAlignment.LEFT, compact: true },
94
- });
95
- this.updatePinnedItems(items);
96
- }
97
- updatePinnedItems(items) {
98
- const toRemoveFromStatusBar = new Set(this.pinnedCommands);
99
- items === null || items === void 0 ? void 0 : items.forEach(item => {
100
- if (toRemoveFromStatusBar.has(item.id)) {
101
- toRemoveFromStatusBar.delete(item.id);
102
- this.statusBar.setElement(item.id, this.toPinnedItem(item));
103
- }
104
- });
105
- toRemoveFromStatusBar.forEach(id => this.statusBar.removeElement(id));
106
- }
107
- toPinnedItem(item) {
108
- return {
109
- text: item.label,
110
- affinity: { id: EditorLanguageStatusService_1.LANGUAGE_MODE_ID, alignment: browser_1.StatusBarAlignment.RIGHT, compact: false },
111
- alignment: browser_1.StatusBarAlignment.RIGHT,
112
- onclick: item.command && (e => { var _a, _b; e.preventDefault(); this.commandRegistry.executeCommand(item.command.id, ...((_b = (_a = item.command) === null || _a === void 0 ? void 0 : _a.arguments) !== null && _b !== void 0 ? _b : [])); }),
113
- };
114
- }
115
- createTooltip(items) {
116
- var _a, _b;
117
- const hoverContainer = document.createElement('div');
118
- hoverContainer.classList.add('hover-row');
119
- for (const item of items) {
120
- const itemContainer = document.createElement('div');
121
- itemContainer.classList.add('hover-language-status');
122
- {
123
- const severityContainer = document.createElement('div');
124
- severityContainer.classList.add('severity', `sev${item.severity}`);
125
- severityContainer.classList.toggle('show', item.severity === severity_1.Severity.Error || item.severity === severity_1.Severity.Warning);
126
- {
127
- const severityIcon = document.createElement('span');
128
- severityIcon.className = this.getSeverityIconClasses(item.severity);
129
- severityContainer.appendChild(severityIcon);
130
- }
131
- itemContainer.appendChild(severityContainer);
132
- }
133
- const textContainer = document.createElement('div');
134
- textContainer.className = 'element';
135
- const labelContainer = document.createElement('div');
136
- labelContainer.className = 'left';
137
- const label = document.createElement('span');
138
- label.classList.add('label');
139
- this.renderWithIcons(label, item.busy ? `$(sync~spin)\u00A0\u00A0${item.label}` : item.label);
140
- labelContainer.appendChild(label);
141
- const detail = document.createElement('span');
142
- detail.classList.add('detail');
143
- this.renderWithIcons(detail, item.detail);
144
- labelContainer.appendChild(detail);
145
- textContainer.appendChild(labelContainer);
146
- const commandContainer = document.createElement('div');
147
- commandContainer.classList.add('right');
148
- if (item.command) {
149
- const link = document.createElement('a');
150
- link.classList.add('language-status-link');
151
- link.href = new uri_1.default()
152
- .withScheme('command')
153
- .withPath(item.command.id)
154
- .withQuery(item.command.arguments ? encodeURIComponent(JSON.stringify(item.command.arguments)) : '')
155
- .toString(false);
156
- link.onclick = e => { var _a, _b; e.preventDefault(); this.commandRegistry.executeCommand(item.command.id, ...((_b = (_a = item.command) === null || _a === void 0 ? void 0 : _a.arguments) !== null && _b !== void 0 ? _b : [])); };
157
- link.textContent = (_a = item.command.title) !== null && _a !== void 0 ? _a : item.command.id;
158
- link.title = (_b = item.command.tooltip) !== null && _b !== void 0 ? _b : '';
159
- link.ariaRoleDescription = 'button';
160
- link.ariaDisabled = 'false';
161
- commandContainer.appendChild(link);
162
- const pinContainer = document.createElement('div');
163
- pinContainer.classList.add('language-status-action-bar');
164
- const pin = document.createElement('a');
165
- this.setPinProperties(pin, item.id);
166
- pin.onclick = e => { e.preventDefault(); this.togglePinned(item); this.setPinProperties(pin, item.id); };
167
- pinContainer.appendChild(pin);
168
- commandContainer.appendChild(pinContainer);
169
- }
170
- textContainer.appendChild(commandContainer);
171
- itemContainer.append(textContainer);
172
- hoverContainer.appendChild(itemContainer);
173
- }
174
- return hoverContainer;
175
- }
176
- setPinProperties(pin, id) {
177
- pin.className = this.pinnedCommands.has(id) ? (0, browser_1.codicon)('pinned', true) : (0, browser_1.codicon)('pin', true);
178
- pin.ariaRoleDescription = 'button';
179
- const pinText = this.pinnedCommands.has(id)
180
- ? core_1.nls.localizeByDefault('Remove from Status Bar')
181
- : core_1.nls.localizeByDefault('Add to Status Bar');
182
- pin.ariaLabel = pinText;
183
- pin.title = pinText;
184
- }
185
- togglePinned(item) {
186
- if (this.pinnedCommands.has(item.id)) {
187
- this.pinnedCommands.delete(item.id);
188
- this.statusBar.removeElement(item.id);
189
- }
190
- else {
191
- this.pinnedCommands.add(item.id);
192
- this.statusBar.setElement(item.id, this.toPinnedItem(item));
193
- }
194
- }
195
- getSeverityIconClasses(severity) {
196
- switch (severity) {
197
- case severity_1.Severity.Error: return (0, browser_1.codicon)('error');
198
- case severity_1.Severity.Warning: return (0, browser_1.codicon)('info');
199
- default: return (0, browser_1.codicon)('check');
200
- }
201
- }
202
- renderWithIcons(host, text) {
203
- if (text) {
204
- for (const chunk of this.labelParser.parse(text)) {
205
- if (typeof chunk === 'string') {
206
- host.append(chunk);
207
- }
208
- else {
209
- const iconSpan = document.createElement('span');
210
- const className = (0, browser_1.codicon)(chunk.name) + (chunk.animation ? ` fa-${chunk.animation}` : '');
211
- iconSpan.className = className;
212
- host.append(iconSpan);
213
- }
214
- }
215
- }
216
- }
217
- };
218
- exports.EditorLanguageStatusService = EditorLanguageStatusService;
219
- EditorLanguageStatusService.LANGUAGE_MODE_ID = 'editor-status-language';
220
- EditorLanguageStatusService.LANGUAGE_STATUS_ID = 'editor-language-status-items';
221
- tslib_1.__decorate([
222
- (0, inversify_1.inject)(browser_1.StatusBar),
223
- tslib_1.__metadata("design:type", Object)
224
- ], EditorLanguageStatusService.prototype, "statusBar", void 0);
225
- tslib_1.__decorate([
226
- (0, inversify_1.inject)(language_service_1.LanguageService),
227
- tslib_1.__metadata("design:type", language_service_1.LanguageService)
228
- ], EditorLanguageStatusService.prototype, "languages", void 0);
229
- tslib_1.__decorate([
230
- (0, inversify_1.inject)(editor_manager_1.CurrentEditorAccess),
231
- tslib_1.__metadata("design:type", editor_manager_1.CurrentEditorAccess)
232
- ], EditorLanguageStatusService.prototype, "editorAccess", void 0);
233
- tslib_1.__decorate([
234
- (0, inversify_1.inject)(core_1.CommandRegistry),
235
- tslib_1.__metadata("design:type", core_1.CommandRegistry)
236
- ], EditorLanguageStatusService.prototype, "commandRegistry", void 0);
237
- tslib_1.__decorate([
238
- (0, inversify_1.inject)(label_parser_1.LabelParser),
239
- tslib_1.__metadata("design:type", label_parser_1.LabelParser)
240
- ], EditorLanguageStatusService.prototype, "labelParser", void 0);
241
- exports.EditorLanguageStatusService = EditorLanguageStatusService = EditorLanguageStatusService_1 = tslib_1.__decorate([
242
- (0, inversify_1.injectable)()
243
- ], EditorLanguageStatusService);
244
- //# sourceMappingURL=editor-language-status-service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"editor-language-status-service.js","sourceRoot":"","sources":["../../../src/browser/language-status/editor-language-status-service.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,0CAA0C;AAC1C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;;AAEhF,4DAAkE;AAClE,qDAAiG;AACjG,+EAA2E;AAC3E,sCAAmD;AAEnD,sDAAmD;AACnD,sEAAyE;AAEzE,oDAA6C;AAC7C,sDAAwD;AACxD,8DAA2D;AAC3D,uEAAmE;AAEnE;;GAEG;AACH,IAAY,sBAIX;AAJD,WAAY,sBAAsB;IAC9B,iFAAe,CAAA;IACf,yEAAW,CAAA;IACX,qEAAS,CAAA;AACb,CAAC,EAJW,sBAAsB,sCAAtB,sBAAsB,QAIjC;AA2CM,IAAM,2BAA2B,mCAAjC,MAAM,2BAA2B;IAAjC;QASgB,WAAM,GAAG,IAAI,GAAG,EAA0B,CAAC;QACpD,mBAAc,GAAG,IAAI,GAAG,EAAU,CAAC;IAqLjD,CAAC;IAnLG,qBAAqB,CAAC,MAAc,EAAE,IAAoB;QACtD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,yBAAyB,EAAE,CAAC;IACrC,CAAC;IAED,wBAAwB,CAAC,MAAc;QACnC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC3B,IAAI,CAAC,yBAAyB,EAAE,CAAC;IACrC,CAAC;IAED,oBAAoB,CAAC,MAA8B;QAC/C,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,6BAA2B,CAAC,gBAAgB,CAAC,CAAC;YAC3E,OAAO;QACX,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACxE,MAAM,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACnD,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,6BAA2B,CAAC,gBAAgB,EAAE;YACpE,IAAI,EAAE,YAAY;YAClB,SAAS,EAAE,4BAAkB,CAAC,KAAK;YACnC,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,+BAAc,CAAC,eAAe,CAAC,EAAE;YAC1C,OAAO,EAAE,UAAG,CAAC,iBAAiB,CAAC,sBAAsB,CAAC;SACzD,CAAC,CAAC;QACH,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAES,yBAAyB,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM;QACjE,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,6BAA2B,CAAC,kBAAkB,CAAC,CAAC;YAC7E,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,OAAO;QACX,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,aAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACzC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;aACzC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAA,yBAAK,EAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;aACvG,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3D,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAChB,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,6BAA2B,CAAC,kBAAkB,CAAC,CAAC;YAC7E,OAAO;QACX,CAAC;QACD,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,mBAAQ,CAAC,IAAI;YACpD,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,mBAAQ,CAAC,OAAO;gBACpC,CAAC,CAAC,gBAAgB;gBAClB,CAAC,CAAC,kBAAkB,CAAC;QAC7B,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,6BAA2B,CAAC,kBAAkB,EAAE;YACtE,IAAI,EAAE,YAAY;YAClB,SAAS,EAAE,4BAAkB,CAAC,KAAK;YACnC,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;YAClC,QAAQ,EAAE,EAAE,EAAE,EAAE,6BAA2B,CAAC,gBAAgB,EAAE,SAAS,EAAE,4BAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;SACpH,CAAC,CAAC;QACH,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;IAES,iBAAiB,CAAC,KAAwB;QAChD,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3D,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,CAAC,IAAI,CAAC,EAAE;YAClB,IAAI,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;gBACrC,qBAAqB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACtC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;YAChE,CAAC;QACL,CAAC,CAAC,CAAC;QACH,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1E,CAAC;IAES,YAAY,CAAC,IAAoB;QACvC,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,KAAK;YAChB,QAAQ,EAAE,EAAE,EAAE,EAAE,6BAA2B,CAAC,gBAAgB,EAAE,SAAS,EAAE,4BAAkB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE;YACnH,SAAS,EAAE,4BAAkB,CAAC,KAAK;YACnC,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,eAAG,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,IAAI,CAAC,OAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,MAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,SAAS,mCAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACrJ,CAAC;IACN,CAAC;IAES,aAAa,CAAC,KAAuB;;QAC3C,MAAM,cAAc,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACrD,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC1C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,MAAM,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACpD,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;YACrD,CAAC;gBACG,MAAM,iBAAiB,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;gBACxD,iBAAiB,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACnE,iBAAiB,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,KAAK,mBAAQ,CAAC,KAAK,IAAI,IAAI,CAAC,QAAQ,KAAK,mBAAQ,CAAC,OAAO,CAAC,CAAC;gBACnH,CAAC;oBACG,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;oBACpD,YAAY,CAAC,SAAS,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACpE,iBAAiB,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;gBAChD,CAAC;gBACD,aAAa,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;YACjD,CAAC;YACD,MAAM,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACpD,aAAa,CAAC,SAAS,GAAG,SAAS,CAAC;YACpC,MAAM,cAAc,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACrD,cAAc,CAAC,SAAS,GAAG,MAAM,CAAC;YAClC,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAC7C,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC7B,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,2BAA2B,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC9F,cAAc,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YAClC,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAC9C,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC/B,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAC1C,cAAc,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YACnC,aAAa,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;YAC1C,MAAM,gBAAgB,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACvD,gBAAgB,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACxC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACf,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;gBACzC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;gBAC3C,IAAI,CAAC,IAAI,GAAG,IAAI,aAAG,EAAE;qBAChB,UAAU,CAAC,SAAS,CAAC;qBACrB,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;qBACzB,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;qBACnG,QAAQ,CAAC,KAAK,CAAC,CAAC;gBACrB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,eAAG,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,IAAI,CAAC,OAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,MAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,SAAS,mCAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvI,IAAI,CAAC,WAAW,GAAG,MAAA,IAAI,CAAC,OAAO,CAAC,KAAK,mCAAI,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzD,IAAI,CAAC,KAAK,GAAG,MAAA,IAAI,CAAC,OAAO,CAAC,OAAO,mCAAI,EAAE,CAAC;gBACxC,IAAI,CAAC,mBAAmB,GAAG,QAAQ,CAAC;gBACpC,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;gBAC5B,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBACnC,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;gBACnD,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;gBACzD,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;gBACxC,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;gBACpC,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzG,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;gBAC9B,gBAAgB,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;YAC/C,CAAC;YACD,aAAa,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;YAC5C,aAAa,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YACpC,cAAc,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QAC9C,CAAC;QACD,OAAO,cAAc,CAAC;IAC1B,CAAC;IAES,gBAAgB,CAAC,GAAgB,EAAE,EAAU;QACnD,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAA,iBAAO,EAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAA,iBAAO,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC7F,GAAG,CAAC,mBAAmB,GAAG,QAAQ,CAAC;QACnC,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;YACvC,CAAC,CAAC,UAAG,CAAC,iBAAiB,CAAC,wBAAwB,CAAC;YACjD,CAAC,CAAC,UAAG,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,CAAC;QACjD,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC;QACxB,GAAG,CAAC,KAAK,GAAG,OAAO,CAAC;IACxB,CAAC;IAES,YAAY,CAAC,IAAoB;QACvC,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YACnC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACpC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1C,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACjC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;QAChE,CAAC;IACL,CAAC;IAES,sBAAsB,CAAC,QAAkB;QAC/C,QAAQ,QAAQ,EAAE,CAAC;YACf,KAAK,mBAAQ,CAAC,KAAK,CAAC,CAAC,OAAO,IAAA,iBAAO,EAAC,OAAO,CAAC,CAAC;YAC7C,KAAK,mBAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,IAAA,iBAAO,EAAC,MAAM,CAAC,CAAC;YAC9C,OAAO,CAAC,CAAC,OAAO,IAAA,iBAAO,EAAC,OAAO,CAAC,CAAC;QACrC,CAAC;IACL,CAAC;IAES,eAAe,CAAC,IAAiB,EAAE,IAAa;QACtD,IAAI,IAAI,EAAE,CAAC;YACP,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC/C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;oBAC5B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACvB,CAAC;qBAAM,CAAC;oBACJ,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;oBAChD,MAAM,SAAS,GAAG,IAAA,iBAAO,EAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBAC1F,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC;oBAC/B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC1B,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;;AA9LQ,kEAA2B;AAMnB,4CAAgB,GAAG,wBAAwB,AAA3B,CAA4B;AAC5C,8CAAkB,GAAG,8BAA8B,AAAjC,CAAkC;AAN/B;IAArC,IAAA,kBAAM,EAAC,mBAAS,CAAC;;8DAAyC;AACf;IAA3C,IAAA,kBAAM,EAAC,kCAAe,CAAC;sCAA+B,kCAAe;8DAAC;AACvB;IAA/C,IAAA,kBAAM,EAAC,oCAAmB,CAAC;sCAAkC,oCAAmB;iEAAC;AACtC;IAA3C,IAAA,kBAAM,EAAC,sBAAe,CAAC;sCAAqC,sBAAe;oEAAC;AACrC;IAAvC,IAAA,kBAAM,EAAC,0BAAW,CAAC;sCAAiC,0BAAW;gEAAC;sCALxD,2BAA2B;IADvC,IAAA,sBAAU,GAAE;GACA,2BAA2B,CA+LvC"}
@@ -1,132 +0,0 @@
1
- import { ILogger } from '@theia/core/lib/common/logger';
2
- import { OpenerService, OpenerOptions } from '@theia/core/lib/browser/opener-service';
3
- import { NavigationLocationUpdater } from './navigation-location-updater';
4
- import { NavigationLocationSimilarity } from './navigation-location-similarity';
5
- import { NavigationLocation, ContentChangeLocation, RecentlyClosedEditor } from './navigation-location';
6
- import URI from '@theia/core/lib/common/uri';
7
- /**
8
- * The navigation location service.
9
- * It also stores and manages navigation locations and recently closed editors.
10
- *
11
- * Since we update the navigation locations as a side effect of UI events (seting the selection, etc.) We sometimes
12
- * record intermediate locations which are not considered the "final" location we're navigating to.
13
- * In order to remedy, clients should always invoke "startNavigation" before registering locations and
14
- * invoke "endNavigation" when done. Only when no more nested navigations are active ist the last registered
15
- * location transfered to the navigation "stack".
16
- *
17
- */
18
- export declare class NavigationLocationService {
19
- private static MAX_STACK_ITEMS;
20
- private static readonly MAX_RECENTLY_CLOSED_EDITORS;
21
- protected readonly logger: ILogger;
22
- protected readonly openerService: OpenerService;
23
- protected readonly updater: NavigationLocationUpdater;
24
- protected readonly similarity: NavigationLocationSimilarity;
25
- protected pointer: number;
26
- protected stack: NavigationLocation[];
27
- protected canRegister: boolean;
28
- protected _lastEditLocation: ContentChangeLocation | undefined;
29
- protected recentlyClosedEditors: RecentlyClosedEditor[];
30
- protected activeNavigations: {
31
- count: number;
32
- lastLocation: NavigationLocation[] | undefined;
33
- };
34
- /**
35
- * Start a logical navigation operation. Invoke this before invoking `registerLocations`
36
- */
37
- startNavigation(): void;
38
- /**
39
- * End a logical navigation operation. Invoke this before after `registerLocations`
40
- */
41
- endNavigation(): void;
42
- /**
43
- * Convenience method for executing a navigation operation with proper start and end navigation
44
- * @param navigation The operation changing the location
45
- * @returns the result of the navigation function
46
- */
47
- navigate<T>(navigation: (navigationServier: NavigationLocationService) => T): T;
48
- /**
49
- * Registers the give locations into the service.
50
- */
51
- register(...locations: NavigationLocation[]): void;
52
- protected doRegister(locations: NavigationLocation[]): void;
53
- /**
54
- * Navigates one back. Returns with the previous location, or `undefined` if it could not navigate back.
55
- */
56
- back(): Promise<NavigationLocation | undefined>;
57
- /**
58
- * Navigates one forward. Returns with the next location, or `undefined` if it could not go forward.
59
- */
60
- forward(): Promise<NavigationLocation | undefined>;
61
- /**
62
- * Checks whether the service can go [`back`](#back).
63
- */
64
- canGoBack(): boolean;
65
- /**
66
- * Checks whether the service can go [`forward`](#forward).
67
- */
68
- canGoForward(): boolean;
69
- /**
70
- * Returns with all known navigation locations in chronological order.
71
- */
72
- locations(): ReadonlyArray<NavigationLocation>;
73
- /**
74
- * Returns with the current location.
75
- */
76
- currentLocation(): NavigationLocation | undefined;
77
- /**
78
- * Returns with the location of the most recent edition if any. If there were no modifications,
79
- * returns `undefined`.
80
- */
81
- lastEditLocation(): NavigationLocation | undefined;
82
- /**
83
- * Clears the total history.
84
- */
85
- clearHistory(): void;
86
- /**
87
- * Reveals the location argument. If not given, reveals the `current location`. Does nothing, if the argument is `undefined`.
88
- */
89
- reveal(location?: NavigationLocation | undefined): Promise<void>;
90
- /**
91
- * `true` if the two locations are similar.
92
- */
93
- protected isSimilar(left: NavigationLocation | undefined, right: NavigationLocation | undefined): boolean;
94
- /**
95
- * Returns with the number of navigation locations that the application can handle and manage.
96
- * When the number of locations exceeds this number, old locations will be erased.
97
- */
98
- protected maxStackItems(): number;
99
- /**
100
- * Returns with the opener option for the location argument.
101
- */
102
- protected toOpenerOptions(location: NavigationLocation): OpenerOptions;
103
- private debug;
104
- private get stackDump();
105
- /**
106
- * Get the recently closed editors stack in chronological order.
107
- *
108
- * @returns readonly closed editors stack.
109
- */
110
- get closedEditorsStack(): ReadonlyArray<RecentlyClosedEditor>;
111
- /**
112
- * Get the last recently closed editor.
113
- *
114
- * @returns the recently closed editor if it exists.
115
- */
116
- getLastClosedEditor(): RecentlyClosedEditor | undefined;
117
- /**
118
- * Add the recently closed editor to the history.
119
- *
120
- * @param editor the recently closed editor.
121
- */
122
- addClosedEditor(editor: RecentlyClosedEditor): void;
123
- /**
124
- * Remove all occurrences of the given editor in the history if they exist.
125
- *
126
- * @param uri the uri of the editor that should be removed from the history.
127
- */
128
- removeClosedEditor(uri: URI): void;
129
- storeState(): object;
130
- restoreState(rawState: object): void;
131
- }
132
- //# sourceMappingURL=navigation-location-service.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"navigation-location-service.d.ts","sourceRoot":"","sources":["../../../src/browser/navigation/navigation-location-service.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,aAAa,EAAQ,MAAM,wCAAwC,CAAC;AAE5F,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EAAE,4BAA4B,EAAE,MAAM,kCAAkC,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAS,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC/G,OAAO,GAAG,MAAM,4BAA4B,CAAC;AAE7C;;;;;;;;;;GAUG;AACH,qBACa,yBAAyB;IAElC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAM;IACpC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,2BAA2B,CAAM;IAGzD,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAGnC,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAGhD,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,yBAAyB,CAAC;IAGtD,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,4BAA4B,CAAC;IAE5D,SAAS,CAAC,OAAO,SAAM;IACvB,SAAS,CAAC,KAAK,EAAE,kBAAkB,EAAE,CAAM;IAC3C,SAAS,CAAC,WAAW,UAAQ;IAC7B,SAAS,CAAC,iBAAiB,EAAE,qBAAqB,GAAG,SAAS,CAAC;IAE/D,SAAS,CAAC,qBAAqB,EAAE,oBAAoB,EAAE,CAAM;IAE7D,SAAS,CAAC,iBAAiB,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,kBAAkB,EAAE,GAAG,SAAS,CAAA;KAAE,CAAyC;IAEvI;;OAEG;IACH,eAAe,IAAI,IAAI;IAQvB;;OAEG;IACH,aAAa,IAAI,IAAI;IAerB;;;;OAIG;IACH,QAAQ,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,iBAAiB,EAAE,yBAAyB,KAAK,CAAC,GAAG,CAAC;IAS/E;;OAEG;IACH,QAAQ,CAAC,GAAG,SAAS,EAAE,kBAAkB,EAAE,GAAG,IAAI;IAWlD,SAAS,CAAC,UAAU,CAAC,SAAS,EAAE,kBAAkB,EAAE,GAAG,IAAI;IA8C3D;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;IAYrD;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;IAYxD;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,YAAY,IAAI,OAAO;IAIvB;;OAEG;IACH,SAAS,IAAI,aAAa,CAAC,kBAAkB,CAAC;IAI9C;;OAEG;IACH,eAAe,IAAI,kBAAkB,GAAG,SAAS;IAIjD;;;OAGG;IACH,gBAAgB,IAAI,kBAAkB,GAAG,SAAS;IAIlD;;OAEG;IACH,YAAY,IAAI,IAAI;IAOpB;;OAEG;IACG,MAAM,CAAC,QAAQ,GAAE,kBAAkB,GAAG,SAAkC,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB9F;;OAEG;IACH,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,kBAAkB,GAAG,SAAS,EAAE,KAAK,EAAE,kBAAkB,GAAG,SAAS,GAAG,OAAO;IAIzG;;;OAGG;IACH,SAAS,CAAC,aAAa,IAAI,MAAM;IAIjC;;OAEG;IACH,SAAS,CAAC,eAAe,CAAC,QAAQ,EAAE,kBAAkB,GAAG,aAAa;YAYxD,KAAK;IAInB,OAAO,KAAK,SAAS,GAKpB;IAED;;;;OAIG;IACH,IAAI,kBAAkB,IAAI,aAAa,CAAC,oBAAoB,CAAC,CAE5D;IAED;;;;OAIG;IACH,mBAAmB,IAAI,oBAAoB,GAAG,SAAS;IAIvD;;;;OAIG;IACH,eAAe,CAAC,MAAM,EAAE,oBAAoB,GAAG,IAAI;IAUnD;;;;OAIG;IACH,kBAAkB,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI;IAIlC,UAAU,IAAI,MAAM;IAQpB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;CAevC"}