@theia/markers 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 (110) hide show
  1. package/README.md +1 -1
  2. package/package.json +5 -5
  3. package/lib/browser/index.d.ts +0 -3
  4. package/lib/browser/index.d.ts.map +0 -1
  5. package/lib/browser/index.js +0 -21
  6. package/lib/browser/index.js.map +0 -1
  7. package/lib/browser/marker-manager.d.ts +0 -48
  8. package/lib/browser/marker-manager.d.ts.map +0 -1
  9. package/lib/browser/marker-manager.js +0 -180
  10. package/lib/browser/marker-manager.js.map +0 -1
  11. package/lib/browser/marker-tree-label-provider.d.ts +0 -16
  12. package/lib/browser/marker-tree-label-provider.d.ts.map +0 -1
  13. package/lib/browser/marker-tree-label-provider.js +0 -77
  14. package/lib/browser/marker-tree-label-provider.js.map +0 -1
  15. package/lib/browser/marker-tree-label-provider.spec.d.ts +0 -2
  16. package/lib/browser/marker-tree-label-provider.spec.d.ts.map +0 -1
  17. package/lib/browser/marker-tree-label-provider.spec.js +0 -202
  18. package/lib/browser/marker-tree-label-provider.spec.js.map +0 -1
  19. package/lib/browser/marker-tree-model.d.ts +0 -13
  20. package/lib/browser/marker-tree-model.d.ts.map +0 -1
  21. package/lib/browser/marker-tree-model.js +0 -53
  22. package/lib/browser/marker-tree-model.js.map +0 -1
  23. package/lib/browser/marker-tree.d.ts +0 -43
  24. package/lib/browser/marker-tree.d.ts.map +0 -1
  25. package/lib/browser/marker-tree.js +0 -138
  26. package/lib/browser/marker-tree.js.map +0 -1
  27. package/lib/browser/problem/problem-composite-tree-node.d.ts +0 -13
  28. package/lib/browser/problem/problem-composite-tree-node.d.ts.map +0 -1
  29. package/lib/browser/problem/problem-composite-tree-node.js +0 -77
  30. package/lib/browser/problem/problem-composite-tree-node.js.map +0 -1
  31. package/lib/browser/problem/problem-composite-tree-node.spec.d.ts +0 -2
  32. package/lib/browser/problem/problem-composite-tree-node.spec.d.ts.map +0 -1
  33. package/lib/browser/problem/problem-composite-tree-node.spec.js +0 -239
  34. package/lib/browser/problem/problem-composite-tree-node.spec.js.map +0 -1
  35. package/lib/browser/problem/problem-container.d.ts +0 -9
  36. package/lib/browser/problem/problem-container.d.ts.map +0 -1
  37. package/lib/browser/problem/problem-container.js +0 -47
  38. package/lib/browser/problem/problem-container.js.map +0 -1
  39. package/lib/browser/problem/problem-contribution.d.ts +0 -52
  40. package/lib/browser/problem/problem-contribution.d.ts.map +0 -1
  41. package/lib/browser/problem/problem-contribution.js +0 -240
  42. package/lib/browser/problem/problem-contribution.js.map +0 -1
  43. package/lib/browser/problem/problem-decorations-provider.d.ts +0 -22
  44. package/lib/browser/problem/problem-decorations-provider.d.ts.map +0 -1
  45. package/lib/browser/problem/problem-decorations-provider.js +0 -88
  46. package/lib/browser/problem/problem-decorations-provider.js.map +0 -1
  47. package/lib/browser/problem/problem-decorator.d.ts +0 -58
  48. package/lib/browser/problem/problem-decorator.d.ts.map +0 -1
  49. package/lib/browser/problem/problem-decorator.js +0 -222
  50. package/lib/browser/problem/problem-decorator.js.map +0 -1
  51. package/lib/browser/problem/problem-frontend-module.d.ts +0 -5
  52. package/lib/browser/problem/problem-frontend-module.d.ts.map +0 -1
  53. package/lib/browser/problem/problem-frontend-module.js +0 -56
  54. package/lib/browser/problem/problem-frontend-module.js.map +0 -1
  55. package/lib/browser/problem/problem-layout-migrations.d.ts +0 -6
  56. package/lib/browser/problem/problem-layout-migrations.d.ts.map +0 -1
  57. package/lib/browser/problem/problem-layout-migrations.js +0 -39
  58. package/lib/browser/problem/problem-layout-migrations.js.map +0 -1
  59. package/lib/browser/problem/problem-manager.d.ts +0 -12
  60. package/lib/browser/problem/problem-manager.d.ts.map +0 -1
  61. package/lib/browser/problem/problem-manager.js +0 -49
  62. package/lib/browser/problem/problem-manager.js.map +0 -1
  63. package/lib/browser/problem/problem-manager.spec.d.ts +0 -2
  64. package/lib/browser/problem/problem-manager.spec.d.ts.map +0 -1
  65. package/lib/browser/problem/problem-manager.spec.js +0 -168
  66. package/lib/browser/problem/problem-manager.spec.js.map +0 -1
  67. package/lib/browser/problem/problem-selection.d.ts +0 -13
  68. package/lib/browser/problem/problem-selection.d.ts.map +0 -1
  69. package/lib/browser/problem/problem-selection.js +0 -35
  70. package/lib/browser/problem/problem-selection.js.map +0 -1
  71. package/lib/browser/problem/problem-tabbar-decorator.d.ts +0 -43
  72. package/lib/browser/problem/problem-tabbar-decorator.d.ts.map +0 -1
  73. package/lib/browser/problem/problem-tabbar-decorator.js +0 -153
  74. package/lib/browser/problem/problem-tabbar-decorator.js.map +0 -1
  75. package/lib/browser/problem/problem-tree-model.d.ts +0 -31
  76. package/lib/browser/problem/problem-tree-model.d.ts.map +0 -1
  77. package/lib/browser/problem/problem-tree-model.js +0 -129
  78. package/lib/browser/problem/problem-tree-model.js.map +0 -1
  79. package/lib/browser/problem/problem-tree-model.spec.d.ts +0 -2
  80. package/lib/browser/problem/problem-tree-model.spec.d.ts.map +0 -1
  81. package/lib/browser/problem/problem-tree-model.spec.js +0 -173
  82. package/lib/browser/problem/problem-tree-model.spec.js.map +0 -1
  83. package/lib/browser/problem/problem-utils.d.ts +0 -45
  84. package/lib/browser/problem/problem-utils.d.ts.map +0 -1
  85. package/lib/browser/problem/problem-utils.js +0 -85
  86. package/lib/browser/problem/problem-utils.js.map +0 -1
  87. package/lib/browser/problem/problem-widget-tab-bar-decorator.d.ts +0 -15
  88. package/lib/browser/problem/problem-widget-tab-bar-decorator.d.ts.map +0 -1
  89. package/lib/browser/problem/problem-widget-tab-bar-decorator.js +0 -62
  90. package/lib/browser/problem/problem-widget-tab-bar-decorator.js.map +0 -1
  91. package/lib/browser/problem/problem-widget.d.ts +0 -47
  92. package/lib/browser/problem/problem-widget.d.ts.map +0 -1
  93. package/lib/browser/problem/problem-widget.js +0 -225
  94. package/lib/browser/problem/problem-widget.js.map +0 -1
  95. package/lib/common/marker.d.ts +0 -17
  96. package/lib/common/marker.d.ts.map +0 -1
  97. package/lib/common/marker.js +0 -32
  98. package/lib/common/marker.js.map +0 -1
  99. package/lib/common/problem-marker.d.ts +0 -10
  100. package/lib/common/problem-marker.d.ts.map +0 -1
  101. package/lib/common/problem-marker.js +0 -28
  102. package/lib/common/problem-marker.js.map +0 -1
  103. package/lib/common/problem-preferences.d.ts +0 -14
  104. package/lib/common/problem-preferences.d.ts.map +0 -1
  105. package/lib/common/problem-preferences.js +0 -56
  106. package/lib/common/problem-preferences.js.map +0 -1
  107. package/lib/node/problem-backend-module.d.ts +0 -4
  108. package/lib/node/problem-backend-module.d.ts.map +0 -1
  109. package/lib/node/problem-backend-module.js +0 -23
  110. package/lib/node/problem-backend-module.js.map +0 -1
@@ -1,13 +0,0 @@
1
- import { SelectionService } from '@theia/core/lib/common/selection-service';
2
- import { SelectionCommandHandler } from '@theia/core/lib/common/selection-command-handler';
3
- import { Marker } from '../../common/marker';
4
- export interface ProblemSelection {
5
- marker: Marker<object>;
6
- }
7
- export declare namespace ProblemSelection {
8
- function is(arg: unknown): arg is ProblemSelection;
9
- class CommandHandler extends SelectionCommandHandler<ProblemSelection> {
10
- constructor(selectionService: SelectionService, options: SelectionCommandHandler.Options<ProblemSelection>);
11
- }
12
- }
13
- //# sourceMappingURL=problem-selection.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"problem-selection.d.ts","sourceRoot":"","sources":["../../../src/browser/problem/problem-selection.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,kDAAkD,CAAC;AAE3F,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAG7C,MAAM,WAAW,gBAAgB;IAC7B,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;CAC1B;AACD,yBAAiB,gBAAgB,CAAC;IAC9B,SAAgB,EAAE,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,gBAAgB,CAExD;IAED,MAAa,cAAe,SAAQ,uBAAuB,CAAC,gBAAgB,CAAC;oBAGrE,gBAAgB,EAAE,gBAAgB,EAClC,OAAO,EAAE,uBAAuB,CAAC,OAAO,CAAC,gBAAgB,CAAC;KAQjE;CAEJ"}
@@ -1,35 +0,0 @@
1
- "use strict";
2
- // *****************************************************************************
3
- // Copyright (C) 2019 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.ProblemSelection = void 0;
19
- const selection_command_handler_1 = require("@theia/core/lib/common/selection-command-handler");
20
- const common_1 = require("@theia/core/lib/common");
21
- const problem_marker_1 = require("../../common/problem-marker");
22
- var ProblemSelection;
23
- (function (ProblemSelection) {
24
- function is(arg) {
25
- return (0, common_1.isObject)(arg) && problem_marker_1.ProblemMarker.is(arg.marker);
26
- }
27
- ProblemSelection.is = is;
28
- class CommandHandler extends selection_command_handler_1.SelectionCommandHandler {
29
- constructor(selectionService, options) {
30
- super(selectionService, arg => ProblemSelection.is(arg) ? arg : undefined, options);
31
- }
32
- }
33
- ProblemSelection.CommandHandler = CommandHandler;
34
- })(ProblemSelection || (exports.ProblemSelection = ProblemSelection = {}));
35
- //# sourceMappingURL=problem-selection.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"problem-selection.js","sourceRoot":"","sources":["../../../src/browser/problem/problem-selection.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;;;AAGhF,gGAA2F;AAC3F,mDAAkD;AAElD,gEAA4D;AAK5D,IAAiB,gBAAgB,CAmBhC;AAnBD,WAAiB,gBAAgB;IAC7B,SAAgB,EAAE,CAAC,GAAY;QAC3B,OAAO,IAAA,iBAAQ,EAAmB,GAAG,CAAC,IAAI,8BAAa,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3E,CAAC;IAFe,mBAAE,KAEjB,CAAA;IAED,MAAa,cAAe,SAAQ,mDAAyC;QAEzE,YACI,gBAAkC,EAClC,OAA0D;YAE1D,KAAK,CACD,gBAAgB,EAChB,GAAG,CAAC,EAAE,CAAC,gBAAgB,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EACjD,OAAO,CACV,CAAC;QACN,CAAC;KACJ;IAZY,+BAAc,iBAY1B,CAAA;AAEL,CAAC,EAnBgB,gBAAgB,gCAAhB,gBAAgB,QAmBhC"}
@@ -1,43 +0,0 @@
1
- import { Diagnostic } from '@theia/core/shared/vscode-languageserver-protocol';
2
- import { Event, Emitter } from '@theia/core/lib/common/event';
3
- import { Title, Widget } from '@theia/core/shared/@lumino/widgets';
4
- import { WidgetDecoration } from '@theia/core/lib/browser/widget-decoration';
5
- import { TabBarDecorator } from '@theia/core/lib/browser/shell/tab-bar-decorator';
6
- import { Marker } from '../../common/marker';
7
- import { ProblemManager } from './problem-manager';
8
- import { ProblemPreferences, ProblemConfiguration } from '../../common/problem-preferences';
9
- import { PreferenceChangeEvent } from '@theia/core';
10
- export declare class ProblemTabBarDecorator implements TabBarDecorator {
11
- readonly id = "theia-problem-tabbar-decorator";
12
- protected readonly emitter: Emitter<void>;
13
- protected readonly preferences: ProblemPreferences;
14
- protected readonly problemManager: ProblemManager;
15
- protected init(): void;
16
- decorate(title: Title<Widget>): WidgetDecoration.Data[];
17
- get onDidChangeDecorations(): Event<void>;
18
- protected fireDidChangeDecorations(): void;
19
- /**
20
- * Handle changes in preference.
21
- * @param {PreferenceChangeEvent<ProblemConfiguration>} event The event of the changes in preference.
22
- */
23
- protected handlePreferenceChange(event: PreferenceChangeEvent<ProblemConfiguration>): Promise<void>;
24
- /**
25
- * Convert a diagnostic marker to a decorator.
26
- * @param {Marker<Diagnostic>} marker A diagnostic marker.
27
- * @returns {WidgetDecoration.Data} The decoration data.
28
- */
29
- protected toDecorator(marker: Marker<Diagnostic>): WidgetDecoration.Data;
30
- /**
31
- * Get the appropriate overlay icon for decoration.
32
- * @param {Marker<Diagnostic>} marker A diagnostic marker.
33
- * @returns {string} A string representing the overlay icon class.
34
- */
35
- protected getOverlayIcon(marker: Marker<Diagnostic>): string;
36
- /**
37
- * Get the appropriate overlay icon color for decoration.
38
- * @param {Marker<Diagnostic>} marker A diagnostic marker.
39
- * @returns {WidgetDecoration.Color} The decoration color.
40
- */
41
- protected getOverlayIconColor(marker: Marker<Diagnostic>): WidgetDecoration.Color;
42
- }
43
- //# sourceMappingURL=problem-tabbar-decorator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"problem-tabbar-decorator.d.ts","sourceRoot":"","sources":["../../../src/browser/problem/problem-tabbar-decorator.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,UAAU,EAAsB,MAAM,mDAAmD,CAAC;AACnG,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAC;AAClF,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAE5F,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEpD,qBACa,sBAAuB,YAAW,eAAe;IAE1D,QAAQ,CAAC,EAAE,oCAAoC;IAE/C,SAAS,CAAC,QAAQ,CAAC,OAAO,gBAAuB;IAGjD,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,kBAAkB,CAAC;IAGnD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IAGlD,SAAS,CAAC,IAAI,IAAI,IAAI;IAKtB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,gBAAgB,CAAC,IAAI,EAAE;IAkCvD,IAAI,sBAAsB,IAAI,KAAK,CAAC,IAAI,CAAC,CAExC;IAED,SAAS,CAAC,wBAAwB,IAAI,IAAI;IAI1C;;;OAGG;cACa,sBAAsB,CAAC,KAAK,EAAE,qBAAqB,CAAC,oBAAoB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAOzG;;;;OAIG;IACH,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG,gBAAgB,CAAC,IAAI;IAiBxE;;;;OAIG;IACH,SAAS,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM;IAU5D;;;;OAIG;IACH,SAAS,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG,gBAAgB,CAAC,KAAK;CASpF"}
@@ -1,153 +0,0 @@
1
- "use strict";
2
- // *****************************************************************************
3
- // Copyright (C) 2019 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.ProblemTabBarDecorator = void 0;
19
- const tslib_1 = require("tslib");
20
- const inversify_1 = require("@theia/core/shared/inversify");
21
- const vscode_languageserver_protocol_1 = require("@theia/core/shared/vscode-languageserver-protocol");
22
- const event_1 = require("@theia/core/lib/common/event");
23
- const widget_decoration_1 = require("@theia/core/lib/browser/widget-decoration");
24
- const problem_manager_1 = require("./problem-manager");
25
- const problem_preferences_1 = require("../../common/problem-preferences");
26
- const browser_1 = require("@theia/core/lib/browser");
27
- let ProblemTabBarDecorator = class ProblemTabBarDecorator {
28
- constructor() {
29
- this.id = 'theia-problem-tabbar-decorator';
30
- this.emitter = new event_1.Emitter();
31
- }
32
- init() {
33
- this.problemManager.onDidChangeMarkers(() => this.fireDidChangeDecorations());
34
- this.preferences.onPreferenceChanged(event => this.handlePreferenceChange(event));
35
- }
36
- decorate(title) {
37
- if (!this.preferences['problems.decorations.tabbar.enabled']) {
38
- return [];
39
- }
40
- const widget = title.owner;
41
- if (browser_1.Navigatable.is(widget)) {
42
- const resourceUri = widget.getResourceUri();
43
- if (resourceUri) {
44
- // Get the list of problem markers for the given resource URI.
45
- const markers = this.problemManager.findMarkers({ uri: resourceUri });
46
- // If no markers are available, return early.
47
- if (markers.length === 0) {
48
- return [];
49
- }
50
- // Store the marker with the highest severity.
51
- let maxSeverity;
52
- // Iterate over available markers to determine that which has the highest severity.
53
- // Only display a decoration if an error or warning marker is available.
54
- for (const marker of markers) {
55
- // Break early if an error marker is present, since it represents the highest severity.
56
- if (marker.data.severity === vscode_languageserver_protocol_1.DiagnosticSeverity.Error) {
57
- maxSeverity = marker;
58
- break;
59
- }
60
- else if (marker.data.severity === vscode_languageserver_protocol_1.DiagnosticSeverity.Warning) {
61
- maxSeverity = marker;
62
- }
63
- }
64
- // Decorate the tabbar with the highest marker severity if available.
65
- return maxSeverity ? [this.toDecorator(maxSeverity)] : [];
66
- }
67
- }
68
- return [];
69
- }
70
- get onDidChangeDecorations() {
71
- return this.emitter.event;
72
- }
73
- fireDidChangeDecorations() {
74
- this.emitter.fire(undefined);
75
- }
76
- /**
77
- * Handle changes in preference.
78
- * @param {PreferenceChangeEvent<ProblemConfiguration>} event The event of the changes in preference.
79
- */
80
- async handlePreferenceChange(event) {
81
- const { preferenceName } = event;
82
- if (preferenceName === 'problems.decorations.tabbar.enabled') {
83
- this.fireDidChangeDecorations();
84
- }
85
- }
86
- /**
87
- * Convert a diagnostic marker to a decorator.
88
- * @param {Marker<Diagnostic>} marker A diagnostic marker.
89
- * @returns {WidgetDecoration.Data} The decoration data.
90
- */
91
- toDecorator(marker) {
92
- const position = widget_decoration_1.WidgetDecoration.IconOverlayPosition.BOTTOM_RIGHT;
93
- const icon = this.getOverlayIcon(marker);
94
- const color = this.getOverlayIconColor(marker);
95
- return {
96
- iconOverlay: {
97
- position,
98
- icon,
99
- color,
100
- background: {
101
- shape: 'circle',
102
- color: 'transparent'
103
- }
104
- }
105
- };
106
- }
107
- /**
108
- * Get the appropriate overlay icon for decoration.
109
- * @param {Marker<Diagnostic>} marker A diagnostic marker.
110
- * @returns {string} A string representing the overlay icon class.
111
- */
112
- getOverlayIcon(marker) {
113
- const { severity } = marker.data;
114
- switch (severity) {
115
- case 1: return 'times-circle';
116
- case 2: return 'exclamation-circle';
117
- case 3: return 'info-circle';
118
- default: return 'hand-o-up';
119
- }
120
- }
121
- /**
122
- * Get the appropriate overlay icon color for decoration.
123
- * @param {Marker<Diagnostic>} marker A diagnostic marker.
124
- * @returns {WidgetDecoration.Color} The decoration color.
125
- */
126
- getOverlayIconColor(marker) {
127
- const { severity } = marker.data;
128
- switch (severity) {
129
- case 1: return 'var(--theia-list-errorForeground)';
130
- case 2: return 'var(--theia-list-warningForeground)';
131
- default: return 'var(--theia-successBackground)';
132
- }
133
- }
134
- };
135
- exports.ProblemTabBarDecorator = ProblemTabBarDecorator;
136
- tslib_1.__decorate([
137
- (0, inversify_1.inject)(problem_preferences_1.ProblemPreferences),
138
- tslib_1.__metadata("design:type", Object)
139
- ], ProblemTabBarDecorator.prototype, "preferences", void 0);
140
- tslib_1.__decorate([
141
- (0, inversify_1.inject)(problem_manager_1.ProblemManager),
142
- tslib_1.__metadata("design:type", problem_manager_1.ProblemManager)
143
- ], ProblemTabBarDecorator.prototype, "problemManager", void 0);
144
- tslib_1.__decorate([
145
- (0, inversify_1.postConstruct)(),
146
- tslib_1.__metadata("design:type", Function),
147
- tslib_1.__metadata("design:paramtypes", []),
148
- tslib_1.__metadata("design:returntype", void 0)
149
- ], ProblemTabBarDecorator.prototype, "init", null);
150
- exports.ProblemTabBarDecorator = ProblemTabBarDecorator = tslib_1.__decorate([
151
- (0, inversify_1.injectable)()
152
- ], ProblemTabBarDecorator);
153
- //# sourceMappingURL=problem-tabbar-decorator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"problem-tabbar-decorator.js","sourceRoot":"","sources":["../../../src/browser/problem/problem-tabbar-decorator.ts"],"names":[],"mappings":"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"}
@@ -1,31 +0,0 @@
1
- /// <reference types="lodash" />
2
- import { ProblemManager } from './problem-manager';
3
- import { ProblemCompositeTreeNode } from './problem-composite-tree-node';
4
- import { MarkerNode, MarkerTree, MarkerOptions, MarkerInfoNode } from '../marker-tree';
5
- import { MarkerTreeModel } from '../marker-tree-model';
6
- import { OpenerOptions, TreeNode } from '@theia/core/lib/browser';
7
- import { Marker } from '../../common/marker';
8
- import { Diagnostic } from '@theia/core/shared/vscode-languageserver-protocol';
9
- export declare class ProblemTree extends MarkerTree<Diagnostic> {
10
- protected queuedMarkers: Map<string, ProblemCompositeTreeNode.Child>;
11
- constructor(markerManager: ProblemManager, markerOptions: MarkerOptions);
12
- protected getMarkerNodes(parent: MarkerInfoNode, markers: Marker<Diagnostic>[]): MarkerNode[];
13
- /**
14
- * Sort markers based on the following rules:
15
- * - Markers are fist sorted by `severity`.
16
- * - Markers are sorted by `line number` if applicable.
17
- * - Markers are sorted by `column number` if applicable.
18
- * - Markers are then finally sorted by `owner` if applicable.
19
- * @param a the first marker for comparison.
20
- * @param b the second marker for comparison.
21
- */
22
- protected sortMarkers(a: MarkerNode, b: MarkerNode): number;
23
- protected insertNodeWithMarkers(node: MarkerInfoNode, markers: Marker<Diagnostic>[]): void;
24
- protected doInsertNodesWithMarkers: import("lodash").DebouncedFunc<() => void>;
25
- }
26
- export declare class ProblemTreeModel extends MarkerTreeModel {
27
- protected readonly problemManager: ProblemManager;
28
- protected getOpenerOptionsByMarker(node: MarkerNode): OpenerOptions | undefined;
29
- removeNode(node: TreeNode): void;
30
- }
31
- //# sourceMappingURL=problem-tree-model.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"problem-tree-model.d.ts","sourceRoot":"","sources":["../../../src/browser/problem/problem-tree-model.ts"],"names":[],"mappings":";AAiBA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,cAAc,EAAkB,MAAM,gBAAgB,CAAC;AACvG,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,mDAAmD,CAAC;AAI/E,qBACa,WAAY,SAAQ,UAAU,CAAC,UAAU,CAAC;IAEnD,SAAS,CAAC,aAAa,8CAAqD;gBAGhD,aAAa,EAAE,cAAc,EAC9B,aAAa,EAAE,aAAa;cAKpC,cAAc,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,GAAG,UAAU,EAAE;IAKtG;;;;;;;;OAQG;IACH,SAAS,CAAC,WAAW,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU,GAAG,MAAM;cA2BxC,qBAAqB,CAAC,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI;IAOnG,SAAS,CAAC,wBAAwB,6CAgB3B;CACV;AAED,qBACa,gBAAiB,SAAQ,eAAe;IAEzB,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;cAEvD,wBAAwB,CAAC,IAAI,EAAE,UAAU,GAAG,aAAa,GAAG,SAAS;IASxF,UAAU,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;CAWnC"}
@@ -1,129 +0,0 @@
1
- "use strict";
2
- // *****************************************************************************
3
- // Copyright (C) 2017 TypeFox 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.ProblemTreeModel = exports.ProblemTree = void 0;
19
- const tslib_1 = require("tslib");
20
- const problem_marker_1 = require("../../common/problem-marker");
21
- const problem_manager_1 = require("./problem-manager");
22
- const problem_composite_tree_node_1 = require("./problem-composite-tree-node");
23
- const marker_tree_1 = require("../marker-tree");
24
- const marker_tree_model_1 = require("../marker-tree-model");
25
- const inversify_1 = require("@theia/core/shared/inversify");
26
- const problem_utils_1 = require("./problem-utils");
27
- const debounce = require("@theia/core/shared/lodash.debounce");
28
- let ProblemTree = class ProblemTree extends marker_tree_1.MarkerTree {
29
- constructor(markerManager, markerOptions) {
30
- super(markerManager, markerOptions);
31
- this.queuedMarkers = new Map();
32
- this.doInsertNodesWithMarkers = debounce(() => {
33
- const root = this.root;
34
- // Sanity check; This should always be of type `MarkerRootNode`
35
- if (!marker_tree_1.MarkerRootNode.is(root)) {
36
- return;
37
- }
38
- const queuedItems = Array.from(this.queuedMarkers.values());
39
- problem_composite_tree_node_1.ProblemCompositeTreeNode.addChildren(root, queuedItems);
40
- for (const { node, markers } of queuedItems) {
41
- const children = this.getMarkerNodes(node, markers);
42
- node.numberOfMarkers = markers.length;
43
- this.setChildren(node, children);
44
- }
45
- this.queuedMarkers.clear();
46
- }, 50);
47
- }
48
- getMarkerNodes(parent, markers) {
49
- const nodes = super.getMarkerNodes(parent, markers);
50
- return nodes.sort((a, b) => this.sortMarkers(a, b));
51
- }
52
- /**
53
- * Sort markers based on the following rules:
54
- * - Markers are fist sorted by `severity`.
55
- * - Markers are sorted by `line number` if applicable.
56
- * - Markers are sorted by `column number` if applicable.
57
- * - Markers are then finally sorted by `owner` if applicable.
58
- * @param a the first marker for comparison.
59
- * @param b the second marker for comparison.
60
- */
61
- sortMarkers(a, b) {
62
- const markerA = a.marker;
63
- const markerB = b.marker;
64
- // Determine the marker with the highest severity.
65
- const severity = problem_utils_1.ProblemUtils.severityCompareMarker(markerA, markerB);
66
- if (severity !== 0) {
67
- return severity;
68
- }
69
- // Determine the marker with the lower line number.
70
- const lineNumber = problem_utils_1.ProblemUtils.lineNumberCompare(markerA, markerB);
71
- if (lineNumber !== 0) {
72
- return lineNumber;
73
- }
74
- // Determine the marker with the lower column number.
75
- const columnNumber = problem_utils_1.ProblemUtils.columnNumberCompare(markerA, markerB);
76
- if (columnNumber !== 0) {
77
- return columnNumber;
78
- }
79
- // Sort by owner in alphabetical order.
80
- const owner = problem_utils_1.ProblemUtils.ownerCompare(markerA, markerB);
81
- if (owner !== 0) {
82
- return owner;
83
- }
84
- return 0;
85
- }
86
- insertNodeWithMarkers(node, markers) {
87
- // Add the element to the queue.
88
- // In case a diagnostics collection for the same file already exists, it will be replaced.
89
- this.queuedMarkers.set(node.id, { node, markers });
90
- this.doInsertNodesWithMarkers();
91
- }
92
- };
93
- exports.ProblemTree = ProblemTree;
94
- exports.ProblemTree = ProblemTree = tslib_1.__decorate([
95
- (0, inversify_1.injectable)(),
96
- tslib_1.__param(0, (0, inversify_1.inject)(problem_manager_1.ProblemManager)),
97
- tslib_1.__param(1, (0, inversify_1.inject)(marker_tree_1.MarkerOptions)),
98
- tslib_1.__metadata("design:paramtypes", [problem_manager_1.ProblemManager, Object])
99
- ], ProblemTree);
100
- let ProblemTreeModel = class ProblemTreeModel extends marker_tree_model_1.MarkerTreeModel {
101
- getOpenerOptionsByMarker(node) {
102
- if (problem_marker_1.ProblemMarker.is(node.marker)) {
103
- return {
104
- selection: node.marker.data.range
105
- };
106
- }
107
- return undefined;
108
- }
109
- removeNode(node) {
110
- if (marker_tree_1.MarkerInfoNode.is(node)) {
111
- this.problemManager.cleanAllMarkers(node.uri);
112
- }
113
- if (marker_tree_1.MarkerNode.is(node)) {
114
- const { uri } = node;
115
- const { owner } = node.marker;
116
- const diagnostics = this.problemManager.findMarkers({ uri, owner, dataFilter: data => node.marker.data !== data }).map(({ data }) => data);
117
- this.problemManager.setMarkers(uri, owner, diagnostics);
118
- }
119
- }
120
- };
121
- exports.ProblemTreeModel = ProblemTreeModel;
122
- tslib_1.__decorate([
123
- (0, inversify_1.inject)(problem_manager_1.ProblemManager),
124
- tslib_1.__metadata("design:type", problem_manager_1.ProblemManager)
125
- ], ProblemTreeModel.prototype, "problemManager", void 0);
126
- exports.ProblemTreeModel = ProblemTreeModel = tslib_1.__decorate([
127
- (0, inversify_1.injectable)()
128
- ], ProblemTreeModel);
129
- //# sourceMappingURL=problem-tree-model.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"problem-tree-model.js","sourceRoot":"","sources":["../../../src/browser/problem/problem-tree-model.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,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,gEAA4D;AAC5D,uDAAmD;AACnD,+EAAyE;AACzE,gDAAuG;AACvG,4DAAuD;AACvD,4DAAkE;AAIlE,mDAA+C;AAC/C,+DAAgE;AAGzD,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,wBAAsB;IAInD,YAC4B,aAA6B,EAC9B,aAA4B;QAEnD,KAAK,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;QAN9B,kBAAa,GAAG,IAAI,GAAG,EAA0C,CAAC;QAyDlE,6BAAwB,GAAG,QAAQ,CAAC,GAAG,EAAE;YAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACvB,+DAA+D;YAC/D,IAAI,CAAC,4BAAc,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3B,OAAO;YACX,CAAC;YACD,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC;YAC5D,sDAAwB,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;YAExD,KAAK,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,WAAW,EAAE,CAAC;gBAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBACpD,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC;gBACtC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACrC,CAAC;YAED,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC/B,CAAC,EAAE,EAAE,CAAC,CAAC;IAlEP,CAAC;IAEkB,cAAc,CAAC,MAAsB,EAAE,OAA6B;QACnF,MAAM,KAAK,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACpD,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC;IAED;;;;;;;;OAQG;IACO,WAAW,CAAC,CAAa,EAAE,CAAa;QAC9C,MAAM,OAAO,GAAG,CAAC,CAAC,MAA4B,CAAC;QAC/C,MAAM,OAAO,GAAG,CAAC,CAAC,MAA4B,CAAC;QAE/C,kDAAkD;QAClD,MAAM,QAAQ,GAAG,4BAAY,CAAC,qBAAqB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACtE,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;YACjB,OAAO,QAAQ,CAAC;QACpB,CAAC;QACD,mDAAmD;QACnD,MAAM,UAAU,GAAG,4BAAY,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACpE,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;YACnB,OAAO,UAAU,CAAC;QACtB,CAAC;QACD,qDAAqD;QACrD,MAAM,YAAY,GAAG,4BAAY,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxE,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO,YAAY,CAAC;QACxB,CAAC;QACD,uCAAuC;QACvC,MAAM,KAAK,GAAG,4BAAY,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC1D,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;YACd,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,CAAC,CAAC;IACb,CAAC;IAEkB,qBAAqB,CAAC,IAAoB,EAAE,OAA6B;QACxF,gCAAgC;QAChC,0FAA0F;QAC1F,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QACnD,IAAI,CAAC,wBAAwB,EAAE,CAAC;IACpC,CAAC;CAmBJ,CAAA;AA5EY,kCAAW;sBAAX,WAAW;IADvB,IAAA,sBAAU,GAAE;IAMJ,mBAAA,IAAA,kBAAM,EAAC,gCAAc,CAAC,CAAA;IACtB,mBAAA,IAAA,kBAAM,EAAC,2BAAa,CAAC,CAAA;6CADiB,gCAAc;GALhD,WAAW,CA4EvB;AAGM,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,mCAAe;IAI9B,wBAAwB,CAAC,IAAgB;QACxD,IAAI,8BAAa,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAChC,OAAO;gBACH,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK;aACpC,CAAC;QACN,CAAC;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,UAAU,CAAC,IAAc;QACrB,IAAI,4BAAc,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAClD,CAAC;QACD,IAAI,wBAAU,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YACtB,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;YACrB,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;YAC9B,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;YAC3I,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;QAC5D,CAAC;IACL,CAAC;CACJ,CAAA;AAxBY,4CAAgB;AAEkB;IAA1C,IAAA,kBAAM,EAAC,gCAAc,CAAC;sCAAoC,gCAAc;wDAAC;2BAFjE,gBAAgB;IAD5B,IAAA,sBAAU,GAAE;GACA,gBAAgB,CAwB5B"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=problem-tree-model.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"problem-tree-model.spec.d.ts","sourceRoot":"","sources":["../../../src/browser/problem/problem-tree-model.spec.ts"],"names":[],"mappings":""}
@@ -1,173 +0,0 @@
1
- "use strict";
2
- // *****************************************************************************
3
- // Copyright (C) 2020 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
- const jsdom_1 = require("@theia/core/lib/browser/test/jsdom");
19
- let disableJSDOM = (0, jsdom_1.enableJSDOM)();
20
- const frontend_application_config_provider_1 = require("@theia/core/lib/browser/frontend-application-config-provider");
21
- frontend_application_config_provider_1.FrontendApplicationConfigProvider.set({});
22
- const uri_1 = require("@theia/core/lib/common/uri");
23
- const chai_1 = require("chai");
24
- const inversify_1 = require("@theia/core/shared/inversify");
25
- const vscode_languageserver_protocol_1 = require("@theia/core/shared/vscode-languageserver-protocol");
26
- const event_1 = require("@theia/core/lib/common/event");
27
- const marker_manager_1 = require("../marker-manager");
28
- const marker_tree_1 = require("../marker-tree");
29
- const problem_container_1 = require("./problem-container");
30
- const problem_manager_1 = require("./problem-manager");
31
- const problem_tree_model_1 = require("./problem-tree-model");
32
- const file_service_1 = require("@theia/filesystem/lib/browser/file-service");
33
- disableJSDOM();
34
- let problemTree;
35
- before(() => {
36
- disableJSDOM = (0, jsdom_1.enableJSDOM)();
37
- const testContainer = new inversify_1.Container();
38
- testContainer.bind(marker_manager_1.MarkerManager).toSelf().inSingletonScope();
39
- testContainer.bind(problem_manager_1.ProblemManager).toSelf();
40
- testContainer.bind(marker_tree_1.MarkerOptions).toConstantValue(problem_container_1.PROBLEM_OPTIONS);
41
- testContainer.bind(file_service_1.FileService).toConstantValue({
42
- onDidFilesChange: event_1.Event.None
43
- });
44
- testContainer.bind(problem_tree_model_1.ProblemTree).toSelf().inSingletonScope();
45
- problemTree = testContainer.get(problem_tree_model_1.ProblemTree);
46
- });
47
- after(() => {
48
- disableJSDOM();
49
- });
50
- describe('Problem Tree', () => {
51
- describe('#sortMarkers', () => {
52
- describe('should sort markers based on the highest severity', () => {
53
- it('should sort errors higher than warnings', () => {
54
- const markerA = createMockMarker({ start: { line: 0, character: 10 }, end: { line: 0, character: 10 } }, vscode_languageserver_protocol_1.DiagnosticSeverity.Error);
55
- const markerB = createMockMarker({ start: { line: 0, character: 10 }, end: { line: 0, character: 10 } }, vscode_languageserver_protocol_1.DiagnosticSeverity.Warning);
56
- const nodeA = createMockMarkerNode(markerA);
57
- const nodeB = createMockMarkerNode(markerB);
58
- (0, chai_1.expect)(problemTree['sortMarkers'](nodeA, nodeB)).equals(-1);
59
- (0, chai_1.expect)(problemTree['sortMarkers'](nodeB, nodeA)).equals(1);
60
- });
61
- it('should sort errors higher than infos', () => {
62
- const markerA = createMockMarker({ start: { line: 0, character: 10 }, end: { line: 0, character: 10 } }, vscode_languageserver_protocol_1.DiagnosticSeverity.Error);
63
- const markerB = createMockMarker({ start: { line: 0, character: 10 }, end: { line: 0, character: 10 } }, vscode_languageserver_protocol_1.DiagnosticSeverity.Information);
64
- const nodeA = createMockMarkerNode(markerA);
65
- const nodeB = createMockMarkerNode(markerB);
66
- (0, chai_1.expect)(problemTree['sortMarkers'](nodeA, nodeB)).equals(-2);
67
- (0, chai_1.expect)(problemTree['sortMarkers'](nodeB, nodeA)).equals(2);
68
- });
69
- it('should sort errors higher than hints', () => {
70
- const markerA = createMockMarker({ start: { line: 0, character: 10 }, end: { line: 0, character: 10 } }, vscode_languageserver_protocol_1.DiagnosticSeverity.Error);
71
- const markerB = createMockMarker({ start: { line: 0, character: 10 }, end: { line: 0, character: 10 } }, vscode_languageserver_protocol_1.DiagnosticSeverity.Hint);
72
- const nodeA = createMockMarkerNode(markerA);
73
- const nodeB = createMockMarkerNode(markerB);
74
- (0, chai_1.expect)(problemTree['sortMarkers'](nodeA, nodeB)).equals(-3);
75
- (0, chai_1.expect)(problemTree['sortMarkers'](nodeB, nodeA)).equals(3);
76
- });
77
- it('should sort warnings higher than infos', () => {
78
- const markerA = createMockMarker({ start: { line: 0, character: 10 }, end: { line: 0, character: 10 } }, vscode_languageserver_protocol_1.DiagnosticSeverity.Warning);
79
- const markerB = createMockMarker({ start: { line: 0, character: 10 }, end: { line: 0, character: 10 } }, vscode_languageserver_protocol_1.DiagnosticSeverity.Information);
80
- const nodeA = createMockMarkerNode(markerA);
81
- const nodeB = createMockMarkerNode(markerB);
82
- (0, chai_1.expect)(problemTree['sortMarkers'](nodeA, nodeB)).equals(-1);
83
- (0, chai_1.expect)(problemTree['sortMarkers'](nodeB, nodeA)).equals(1);
84
- });
85
- it('should sort warnings higher than hints', () => {
86
- const markerA = createMockMarker({ start: { line: 0, character: 10 }, end: { line: 0, character: 10 } }, vscode_languageserver_protocol_1.DiagnosticSeverity.Warning);
87
- const markerB = createMockMarker({ start: { line: 0, character: 10 }, end: { line: 0, character: 10 } }, vscode_languageserver_protocol_1.DiagnosticSeverity.Hint);
88
- const nodeA = createMockMarkerNode(markerA);
89
- const nodeB = createMockMarkerNode(markerB);
90
- (0, chai_1.expect)(problemTree['sortMarkers'](nodeA, nodeB)).equals(-2);
91
- (0, chai_1.expect)(problemTree['sortMarkers'](nodeB, nodeA)).equals(2);
92
- });
93
- it('should sort infos higher than hints', () => {
94
- const markerA = createMockMarker({ start: { line: 0, character: 10 }, end: { line: 0, character: 10 } }, vscode_languageserver_protocol_1.DiagnosticSeverity.Information);
95
- const markerB = createMockMarker({ start: { line: 0, character: 10 }, end: { line: 0, character: 10 } }, vscode_languageserver_protocol_1.DiagnosticSeverity.Hint);
96
- const nodeA = createMockMarkerNode(markerA);
97
- const nodeB = createMockMarkerNode(markerB);
98
- (0, chai_1.expect)(problemTree['sortMarkers'](nodeA, nodeB)).equals(-1);
99
- (0, chai_1.expect)(problemTree['sortMarkers'](nodeB, nodeA)).equals(1);
100
- });
101
- });
102
- it('should sort markers based on lowest line number if their severities are equal', () => {
103
- const markerA = createMockMarker({ start: { line: 1, character: 10 }, end: { line: 1, character: 20 } }, vscode_languageserver_protocol_1.DiagnosticSeverity.Error);
104
- const markerB = createMockMarker({ start: { line: 5, character: 10 }, end: { line: 5, character: 20 } }, vscode_languageserver_protocol_1.DiagnosticSeverity.Error);
105
- const nodeA = createMockMarkerNode(markerA);
106
- const nodeB = createMockMarkerNode(markerB);
107
- (0, chai_1.expect)(problemTree['sortMarkers'](nodeA, nodeB)).equals(-4);
108
- (0, chai_1.expect)(problemTree['sortMarkers'](nodeB, nodeA)).equals(4);
109
- });
110
- it('should sort markers based on lowest column number if their severities and line numbers are equal', () => {
111
- const markerA = createMockMarker({ start: { line: 1, character: 10 }, end: { line: 1, character: 10 } }, vscode_languageserver_protocol_1.DiagnosticSeverity.Error);
112
- const markerB = createMockMarker({ start: { line: 1, character: 20 }, end: { line: 1, character: 20 } }, vscode_languageserver_protocol_1.DiagnosticSeverity.Error);
113
- const nodeA = createMockMarkerNode(markerA);
114
- const nodeB = createMockMarkerNode(markerB);
115
- (0, chai_1.expect)(problemTree['sortMarkers'](nodeA, nodeB)).equals(-10);
116
- (0, chai_1.expect)(problemTree['sortMarkers'](nodeB, nodeA)).equals(10);
117
- });
118
- it('should sort markers based on owner if their severities, line numbers and columns are equal', () => {
119
- const markerA = createMockMarker({ start: { line: 1, character: 10 }, end: { line: 1, character: 10 } }, vscode_languageserver_protocol_1.DiagnosticSeverity.Error, 'A');
120
- const markerB = createMockMarker({ start: { line: 1, character: 10 }, end: { line: 1, character: 10 } }, vscode_languageserver_protocol_1.DiagnosticSeverity.Error, 'B');
121
- const nodeA = createMockMarkerNode(markerA);
122
- const nodeB = createMockMarkerNode(markerB);
123
- (0, chai_1.expect)(problemTree['sortMarkers'](nodeA, nodeB)).equals(-1);
124
- (0, chai_1.expect)(problemTree['sortMarkers'](nodeB, nodeA)).equals(1);
125
- });
126
- it('should not sort if markers are equal', () => {
127
- const markerA = createMockMarker({ start: { line: 0, character: 10 }, end: { line: 0, character: 10 } }, vscode_languageserver_protocol_1.DiagnosticSeverity.Error);
128
- const markerB = createMockMarker({ start: { line: 0, character: 10 }, end: { line: 0, character: 10 } }, vscode_languageserver_protocol_1.DiagnosticSeverity.Error);
129
- const nodeA = createMockMarkerNode(markerA);
130
- const nodeB = createMockMarkerNode(markerB);
131
- (0, chai_1.expect)(problemTree['sortMarkers'](nodeA, nodeB)).equals(0);
132
- (0, chai_1.expect)(problemTree['sortMarkers'](nodeB, nodeA)).equals(0);
133
- });
134
- });
135
- });
136
- /**
137
- * Create a mock marker node with the given diagnostic marker.
138
- * @param marker the diagnostic marker.
139
- *
140
- * @returns a mock marker node.
141
- */
142
- function createMockMarkerNode(marker) {
143
- return {
144
- id: 'id',
145
- name: 'marker',
146
- parent: undefined,
147
- selected: false,
148
- uri: new uri_1.default(''),
149
- marker
150
- };
151
- }
152
- /**
153
- * Create a mock diagnostic marker.
154
- * @param range the diagnostic range.
155
- * @param severity the diagnostic severity.
156
- * @param owner the optional owner of the diagnostic
157
- *
158
- * @returns a mock diagnostic marker.
159
- */
160
- function createMockMarker(range, severity, owner) {
161
- const data = {
162
- range: range,
163
- severity: severity,
164
- message: 'message'
165
- };
166
- return Object.freeze({
167
- uri: 'uri',
168
- kind: 'marker',
169
- owner: owner !== null && owner !== void 0 ? owner : 'owner',
170
- data
171
- });
172
- }
173
- //# sourceMappingURL=problem-tree-model.spec.js.map