@theia/markers 1.50.0 → 1.51.0

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.
@@ -3,10 +3,11 @@ import { MarkerInfoNode } from '../marker-tree';
3
3
  import { Marker } from '../../common/marker';
4
4
  import { Diagnostic } from '@theia/core/shared/vscode-languageserver-protocol';
5
5
  export declare namespace ProblemCompositeTreeNode {
6
- function setSeverity(parent: MarkerInfoNode, markers: Marker<Diagnostic>[]): void;
7
- function addChildren(parent: CompositeTreeNode, insertChildren: {
6
+ interface Child {
8
7
  node: MarkerInfoNode;
9
8
  markers: Marker<Diagnostic>[];
10
- }[]): void;
9
+ }
10
+ function setSeverity(parent: MarkerInfoNode, markers: Marker<Diagnostic>[]): void;
11
+ function addChildren(parent: CompositeTreeNode, insertChildren: ProblemCompositeTreeNode.Child[]): void;
11
12
  }
12
13
  //# sourceMappingURL=problem-composite-tree-node.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"problem-composite-tree-node.d.ts","sourceRoot":"","sources":["../../../src/browser/problem/problem-composite-tree-node.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAsB,MAAM,mDAAmD,CAAC;AAGnG,yBAAiB,wBAAwB,CAAC;IAEtC,SAAgB,WAAW,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAQvF;IAED,SAAgB,WAAW,CAAC,MAAM,EAAE,iBAAiB,EAAE,cAAc,EAAE;QAAE,IAAI,EAAE,cAAc,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,CAAA;KAAE,EAAE,GAAG,IAAI,CAwCtI;CAKJ"}
1
+ {"version":3,"file":"problem-composite-tree-node.d.ts","sourceRoot":"","sources":["../../../src/browser/problem/problem-composite-tree-node.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAsB,MAAM,mDAAmD,CAAC;AAGnG,yBAAiB,wBAAwB,CAAC;IAEtC,UAAiB,KAAK;QAClB,IAAI,EAAE,cAAc,CAAC;QACrB,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;KACjC;IAED,SAAgB,WAAW,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAQvF;IAED,SAAgB,WAAW,CAAC,MAAM,EAAE,iBAAiB,EAAE,cAAc,EAAE,wBAAwB,CAAC,KAAK,EAAE,GAAG,IAAI,CAwC7G;CAKJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"problem-composite-tree-node.js","sourceRoot":"","sources":["../../../src/browser/problem/problem-composite-tree-node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"problem-composite-tree-node.js","sourceRoot":"","sources":["../../../src/browser/problem/problem-composite-tree-node.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,13 @@
1
1
  /// <reference types="lodash" />
2
2
  import { ProblemManager } from './problem-manager';
3
+ import { ProblemCompositeTreeNode } from './problem-composite-tree-node';
3
4
  import { MarkerNode, MarkerTree, MarkerOptions, MarkerInfoNode } from '../marker-tree';
4
5
  import { MarkerTreeModel } from '../marker-tree-model';
5
6
  import { OpenerOptions, TreeNode } from '@theia/core/lib/browser';
6
7
  import { Marker } from '../../common/marker';
7
8
  import { Diagnostic } from '@theia/core/shared/vscode-languageserver-protocol';
8
9
  export declare class ProblemTree extends MarkerTree<Diagnostic> {
9
- protected markers: {
10
- node: MarkerInfoNode;
11
- markers: Marker<Diagnostic>[];
12
- }[];
10
+ protected queuedMarkers: Map<string, ProblemCompositeTreeNode.Child>;
13
11
  constructor(markerManager: ProblemManager, markerOptions: MarkerOptions);
14
12
  protected getMarkerNodes(parent: MarkerInfoNode, markers: Marker<Diagnostic>[]): MarkerNode[];
15
13
  /**
@@ -1 +1 @@
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;AAEnD,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;IACnD,SAAS,CAAC,OAAO,EAAE;QAAE,IAAI,EAAE,cAAc,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,CAAA;KAAE,EAAE,CAAM;gBAGtD,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;IAKnG,SAAS,CAAC,wBAAwB,6CAU3B;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
+ {"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"}
@@ -28,15 +28,21 @@ const debounce = require("@theia/core/shared/lodash.debounce");
28
28
  let ProblemTree = class ProblemTree extends marker_tree_1.MarkerTree {
29
29
  constructor(markerManager, markerOptions) {
30
30
  super(markerManager, markerOptions);
31
- this.markers = [];
31
+ this.queuedMarkers = new Map();
32
32
  this.doInsertNodesWithMarkers = debounce(() => {
33
- problem_composite_tree_node_1.ProblemCompositeTreeNode.addChildren(this.root, this.markers);
34
- for (const { node, markers } of this.markers) {
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) {
35
41
  const children = this.getMarkerNodes(node, markers);
36
42
  node.numberOfMarkers = markers.length;
37
43
  this.setChildren(node, children);
38
44
  }
39
- this.markers.length = 0;
45
+ this.queuedMarkers.clear();
40
46
  }, 50);
41
47
  }
42
48
  getMarkerNodes(parent, markers) {
@@ -78,7 +84,9 @@ let ProblemTree = class ProblemTree extends marker_tree_1.MarkerTree {
78
84
  return 0;
79
85
  }
80
86
  insertNodeWithMarkers(node, markers) {
81
- this.markers.push({ 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 });
82
90
  this.doInsertNodesWithMarkers();
83
91
  }
84
92
  };
@@ -1 +1 @@
1
- {"version":3,"file":"problem-tree-model.js","sourceRoot":"","sources":["../../../src/browser/problem/problem-tree-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"problem-tree-model.js","sourceRoot":"","sources":["../../../src/browser/problem/problem-tree-model.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@theia/markers",
3
- "version": "1.50.0",
3
+ "version": "1.51.0",
4
4
  "description": "Theia - Markers Extension",
5
5
  "dependencies": {
6
- "@theia/core": "1.50.0",
7
- "@theia/filesystem": "1.50.0",
8
- "@theia/workspace": "1.50.0",
6
+ "@theia/core": "1.51.0",
7
+ "@theia/filesystem": "1.51.0",
8
+ "@theia/workspace": "1.51.0",
9
9
  "tslib": "^2.6.2"
10
10
  },
11
11
  "publishConfig": {
@@ -41,10 +41,10 @@
41
41
  "watch": "theiaext watch"
42
42
  },
43
43
  "devDependencies": {
44
- "@theia/ext-scripts": "1.50.0"
44
+ "@theia/ext-scripts": "1.51.0"
45
45
  },
46
46
  "nyc": {
47
47
  "extends": "../../configs/nyc.json"
48
48
  },
49
- "gitHead": "63585530b2e32af0ed4bac4edb5ff443bfc248b7"
49
+ "gitHead": "fe70ec5d445d733038564d81357c78aedf5c7e0e"
50
50
  }
@@ -23,6 +23,11 @@ import { ProblemUtils } from './problem-utils';
23
23
 
24
24
  export namespace ProblemCompositeTreeNode {
25
25
 
26
+ export interface Child {
27
+ node: MarkerInfoNode;
28
+ markers: Marker<Diagnostic>[];
29
+ }
30
+
26
31
  export function setSeverity(parent: MarkerInfoNode, markers: Marker<Diagnostic>[]): void {
27
32
  let maxSeverity: DiagnosticSeverity | undefined;
28
33
  markers.forEach(marker => {
@@ -33,7 +38,7 @@ export namespace ProblemCompositeTreeNode {
33
38
  parent.severity = maxSeverity;
34
39
  };
35
40
 
36
- export function addChildren(parent: CompositeTreeNode, insertChildren: { node: MarkerInfoNode, markers: Marker<Diagnostic>[] }[]): void {
41
+ export function addChildren(parent: CompositeTreeNode, insertChildren: ProblemCompositeTreeNode.Child[]): void {
37
42
  for (const { node, markers } of insertChildren) {
38
43
  ProblemCompositeTreeNode.setSeverity(node, markers);
39
44
  }
@@ -28,7 +28,8 @@ import debounce = require('@theia/core/shared/lodash.debounce');
28
28
 
29
29
  @injectable()
30
30
  export class ProblemTree extends MarkerTree<Diagnostic> {
31
- protected markers: { node: MarkerInfoNode, markers: Marker<Diagnostic>[] }[] = [];
31
+
32
+ protected queuedMarkers = new Map<string, ProblemCompositeTreeNode.Child>();
32
33
 
33
34
  constructor(
34
35
  @inject(ProblemManager) markerManager: ProblemManager,
@@ -79,20 +80,28 @@ export class ProblemTree extends MarkerTree<Diagnostic> {
79
80
  }
80
81
 
81
82
  protected override insertNodeWithMarkers(node: MarkerInfoNode, markers: Marker<Diagnostic>[]): void {
82
- this.markers.push({ node, markers });
83
+ // Add the element to the queue.
84
+ // In case a diagnostics collection for the same file already exists, it will be replaced.
85
+ this.queuedMarkers.set(node.id, { node, markers });
83
86
  this.doInsertNodesWithMarkers();
84
87
  }
85
88
 
86
89
  protected doInsertNodesWithMarkers = debounce(() => {
87
- ProblemCompositeTreeNode.addChildren(this.root as MarkerRootNode, this.markers);
90
+ const root = this.root;
91
+ // Sanity check; This should always be of type `MarkerRootNode`
92
+ if (!MarkerRootNode.is(root)) {
93
+ return;
94
+ }
95
+ const queuedItems = Array.from(this.queuedMarkers.values());
96
+ ProblemCompositeTreeNode.addChildren(root, queuedItems);
88
97
 
89
- for (const { node, markers } of this.markers) {
98
+ for (const { node, markers } of queuedItems) {
90
99
  const children = this.getMarkerNodes(node, markers);
91
100
  node.numberOfMarkers = markers.length;
92
101
  this.setChildren(node, children);
93
102
  }
94
103
 
95
- this.markers.length = 0;
104
+ this.queuedMarkers.clear();
96
105
  }, 50);
97
106
  }
98
107