@theia/filesystem 1.72.0-next.36 → 1.72.0-next.45

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.
@@ -17,7 +17,6 @@ export declare class FileTreeDecoratorAdapter implements TreeDecorator {
17
17
  decorations(tree: Tree): MaybePromise<Map<string, TreeDecoration.Data>>;
18
18
  protected collectDecorations(tree: Tree): Map<string, TreeDecoration.Data>;
19
19
  protected mergeDecorations(ownDecoration?: TreeDecoration.Data, bubbledDecoration?: TreeDecoration.Data): TreeDecoration.Data | undefined;
20
- protected updateDecorations(oldKeys: IterableIterator<string>, newKeys: IterableIterator<string>): void;
21
20
  protected toTheiaDecoration(decorations: Decoration[], bubble?: boolean): TreeDecoration.Data;
22
21
  protected toTailDecoration(decoration: Decoration, fontData?: TreeDecoration.FontData, bubble?: boolean): TreeDecoration.TailDecoration.AnyConcrete;
23
22
  protected propagateDecorationsByUri(child: URI, decorations: Decoration[]): void;
@@ -1 +1 @@
1
- {"version":3,"file":"file-tree-decorator-adapter.d.ts","sourceRoot":"","sources":["../../../src/browser/file-tree/file-tree-decorator-adapter.ts"],"names":[],"mappings":"AAiBA,OAAO,GAAG,MAAM,4BAA4B,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,OAAO,EAAO,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AAC7F,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,IAAI,EAAuB,MAAM,yBAAyB,CAAC;AAC7G,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AAGvE,qBACa,wBAAyB,YAAW,aAAa;IAC1D,QAAQ,CAAC,EAAE,gDAAgD;IAC3D,SAAS,CAAC,QAAQ,CAAC,aAAa,SAAsD;IAC1D,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IAC/D,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAEvE,SAAS,CAAC,QAAQ,CAAC,6BAA6B,iBAAsB,IAAI,KAAK,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,EAAI;IACnH,SAAS,CAAC,gBAAgB,mCAA0C;IACpE,SAAS,CAAC,iBAAiB,mCAA0C;IAErE,IAAI,sBAAsB,IAAI,KAAK,CAAC,CAAC,IAAI,EAAE,IAAI,KAAK,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC,CAEpF;IAGD,SAAS,CAAC,IAAI,IAAI,IAAI;IAOtB,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC;IAIvE,SAAS,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,GAAG,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC;IAmB1E,SAAS,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAAE,cAAc,CAAC,IAAI,EAAE,iBAAiB,CAAC,EAAE,cAAc,CAAC,IAAI,GAAG,cAAc,CAAC,IAAI,GAAG,SAAS;IAczI,SAAS,CAAC,iBAAiB,CAAC,OAAO,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,gBAAgB,CAAC,MAAM,CAAC,GAAG,IAAI;IAsBvG,SAAS,CAAC,iBAAiB,CAAC,WAAW,EAAE,UAAU,EAAE,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,cAAc,CAAC,IAAI;IAU7F,SAAS,CAAC,gBAAgB,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,cAAc,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,cAAc,CAAC,cAAc,CAAC,WAAW;IAOnJ,SAAS,CAAC,yBAAyB,CAAC,KAAK,EAAE,GAAG,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,IAAI;IAoBhF;;OAEG;IACH,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,GAAG,MAAM;IAIpE,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS;IAI3D,wBAAwB,IAAI,IAAI;CAGnC"}
1
+ {"version":3,"file":"file-tree-decorator-adapter.d.ts","sourceRoot":"","sources":["../../../src/browser/file-tree/file-tree-decorator-adapter.ts"],"names":[],"mappings":"AAiBA,OAAO,GAAG,MAAM,4BAA4B,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,OAAO,EAAO,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AAC7F,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,IAAI,EAAuB,MAAM,yBAAyB,CAAC;AAC7G,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AAGvE,qBACa,wBAAyB,YAAW,aAAa;IAC1D,QAAQ,CAAC,EAAE,gDAAgD;IAC3D,SAAS,CAAC,QAAQ,CAAC,aAAa,SAAsD;IAC1D,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IAC/D,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAEvE,SAAS,CAAC,QAAQ,CAAC,6BAA6B,iBAAsB,IAAI,KAAK,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,EAAI;IACnH,SAAS,CAAC,gBAAgB,mCAA0C;IACpE,SAAS,CAAC,iBAAiB,mCAA0C;IAErE,IAAI,sBAAsB,IAAI,KAAK,CAAC,CAAC,IAAI,EAAE,IAAI,KAAK,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC,CAEpF;IAGD,SAAS,CAAC,IAAI,IAAI,IAAI;IAItB,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC;IAIvE,SAAS,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,GAAG,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC;IAoC1E,SAAS,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAAE,cAAc,CAAC,IAAI,EAAE,iBAAiB,CAAC,EAAE,cAAc,CAAC,IAAI,GAAG,cAAc,CAAC,IAAI,GAAG,SAAS;IAczI,SAAS,CAAC,iBAAiB,CAAC,WAAW,EAAE,UAAU,EAAE,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,cAAc,CAAC,IAAI;IAU7F,SAAS,CAAC,gBAAgB,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,cAAc,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,cAAc,CAAC,cAAc,CAAC,WAAW;IAOnJ,SAAS,CAAC,yBAAyB,CAAC,KAAK,EAAE,GAAG,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,IAAI;IAoBhF;;OAEG;IACH,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,GAAG,MAAM;IAIpE,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS;IAI3D,wBAAwB,IAAI,IAAI;CAGnC"}
@@ -36,28 +36,42 @@ let FileTreeDecoratorAdapter = class FileTreeDecoratorAdapter {
36
36
  return this.onDidChangeDecorationsEmitter.event;
37
37
  }
38
38
  init() {
39
- this.decorationsService.onDidChangeDecorations(newDecorations => {
40
- this.updateDecorations(this.decorationsByUri.keys(), newDecorations.keys());
41
- this.fireDidChangeDecorations();
42
- });
39
+ this.decorationsService.onDidChangeDecorations(() => this.fireDidChangeDecorations());
43
40
  }
44
41
  decorations(tree) {
45
42
  return this.collectDecorations(tree);
46
43
  }
47
44
  collectDecorations(tree) {
48
45
  const decorations = new Map();
49
- if (tree.root) {
50
- for (const node of new browser_1.TopDownTreeIterator(tree.root)) {
51
- const uri = this.getUriForNode(node);
52
- if (uri) {
53
- const stringified = uri.toString();
54
- const ownDecoration = this.decorationsByUri.get(stringified);
55
- const bubbledDecoration = this.parentDecorations.get(stringified);
56
- const combined = this.mergeDecorations(ownDecoration, bubbledDecoration);
57
- if (combined) {
58
- decorations.set(node.id, combined);
59
- }
60
- }
46
+ if (!tree.root) {
47
+ return decorations;
48
+ }
49
+ this.decorationsByUri = new Map();
50
+ this.parentDecorations = new Map();
51
+ // Query the decorations service per visible URI so that decorations dropped
52
+ // by event truncation (see plugin-ext maxEventSize) are fetched on demand.
53
+ for (const node of new browser_1.TopDownTreeIterator(tree.root)) {
54
+ const rawUri = this.getUriForNode(node);
55
+ if (!rawUri || this.decorationsByUri.has(rawUri)) {
56
+ continue;
57
+ }
58
+ const uri = new uri_1.default(rawUri);
59
+ const fetched = this.decorationsService.getDecoration(uri, false);
60
+ if (fetched.length) {
61
+ this.decorationsByUri.set(rawUri, this.toTheiaDecoration(fetched, false));
62
+ this.propagateDecorationsByUri(uri, fetched);
63
+ }
64
+ }
65
+ for (const node of new browser_1.TopDownTreeIterator(tree.root)) {
66
+ const rawUri = this.getUriForNode(node);
67
+ if (!rawUri) {
68
+ continue;
69
+ }
70
+ const ownDecoration = this.decorationsByUri.get(rawUri);
71
+ const bubbledDecoration = this.parentDecorations.get(rawUri);
72
+ const combined = this.mergeDecorations(ownDecoration, bubbledDecoration);
73
+ if (combined) {
74
+ decorations.set(node.id, combined);
61
75
  }
62
76
  }
63
77
  return decorations;
@@ -77,27 +91,6 @@ let FileTreeDecoratorAdapter = class FileTreeDecoratorAdapter {
77
91
  };
78
92
  }
79
93
  }
80
- updateDecorations(oldKeys, newKeys) {
81
- this.parentDecorations.clear();
82
- const newDecorations = new Map();
83
- const handleUri = (rawUri) => {
84
- if (!newDecorations.has(rawUri)) {
85
- const uri = new uri_1.default(rawUri);
86
- const decorations = this.decorationsService.getDecoration(uri, false);
87
- if (decorations.length) {
88
- newDecorations.set(rawUri, this.toTheiaDecoration(decorations, false));
89
- this.propagateDecorationsByUri(uri, decorations);
90
- }
91
- }
92
- };
93
- for (const rawUri of oldKeys) {
94
- handleUri(rawUri);
95
- }
96
- for (const rawUri of newKeys) {
97
- handleUri(rawUri);
98
- }
99
- this.decorationsByUri = newDecorations;
100
- }
101
94
  toTheiaDecoration(decorations, bubble) {
102
95
  const color = decorations[0].colorId ? `var(${this.colorRegistry.toCssVariableName(decorations[0].colorId)})` : undefined;
103
96
  const fontData = color ? { color } : undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"file-tree-decorator-adapter.js","sourceRoot":"","sources":["../../../src/browser/file-tree/file-tree-decorator-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-tree-decorator-adapter.js","sourceRoot":"","sources":["../../../src/browser/file-tree/file-tree-decorator-adapter.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@theia/filesystem",
3
- "version": "1.72.0-next.36+ab6645bb0",
3
+ "version": "1.72.0-next.45+c56d9c4b3",
4
4
  "description": "Theia - FileSystem Extension",
5
5
  "dependencies": {
6
- "@theia/core": "1.72.0-next.36+ab6645bb0",
6
+ "@theia/core": "1.72.0-next.45+c56d9c4b3",
7
7
  "@types/body-parser": "^1.19.6",
8
8
  "@types/multer": "^1.4.13",
9
9
  "@types/tar-fs": "^1.16.3",
@@ -82,5 +82,5 @@
82
82
  "nyc": {
83
83
  "extends": "../../configs/nyc.json"
84
84
  },
85
- "gitHead": "ab6645bb0758bd1f8a83c3a2321d2bde6e9da370"
85
+ "gitHead": "c56d9c4b3e0191e9d812884695ba500b22a75558"
86
86
  }
@@ -40,10 +40,7 @@ export class FileTreeDecoratorAdapter implements TreeDecorator {
40
40
 
41
41
  @postConstruct()
42
42
  protected init(): void {
43
- this.decorationsService.onDidChangeDecorations(newDecorations => {
44
- this.updateDecorations(this.decorationsByUri.keys(), newDecorations.keys());
45
- this.fireDidChangeDecorations();
46
- });
43
+ this.decorationsService.onDidChangeDecorations(() => this.fireDidChangeDecorations());
47
44
  }
48
45
 
49
46
  decorations(tree: Tree): MaybePromise<Map<string, TreeDecoration.Data>> {
@@ -51,19 +48,36 @@ export class FileTreeDecoratorAdapter implements TreeDecorator {
51
48
  }
52
49
 
53
50
  protected collectDecorations(tree: Tree): Map<string, TreeDecoration.Data> {
54
- const decorations = new Map();
55
- if (tree.root) {
56
- for (const node of new TopDownTreeIterator(tree.root)) {
57
- const uri = this.getUriForNode(node);
58
- if (uri) {
59
- const stringified = uri.toString();
60
- const ownDecoration = this.decorationsByUri.get(stringified);
61
- const bubbledDecoration = this.parentDecorations.get(stringified);
62
- const combined = this.mergeDecorations(ownDecoration, bubbledDecoration);
63
- if (combined) {
64
- decorations.set(node.id, combined);
65
- }
66
- }
51
+ const decorations = new Map<string, TreeDecoration.Data>();
52
+ if (!tree.root) {
53
+ return decorations;
54
+ }
55
+ this.decorationsByUri = new Map<string, TreeDecoration.Data>();
56
+ this.parentDecorations = new Map<string, TreeDecoration.Data>();
57
+ // Query the decorations service per visible URI so that decorations dropped
58
+ // by event truncation (see plugin-ext maxEventSize) are fetched on demand.
59
+ for (const node of new TopDownTreeIterator(tree.root)) {
60
+ const rawUri = this.getUriForNode(node);
61
+ if (!rawUri || this.decorationsByUri.has(rawUri)) {
62
+ continue;
63
+ }
64
+ const uri = new URI(rawUri);
65
+ const fetched = this.decorationsService.getDecoration(uri, false);
66
+ if (fetched.length) {
67
+ this.decorationsByUri.set(rawUri, this.toTheiaDecoration(fetched, false));
68
+ this.propagateDecorationsByUri(uri, fetched);
69
+ }
70
+ }
71
+ for (const node of new TopDownTreeIterator(tree.root)) {
72
+ const rawUri = this.getUriForNode(node);
73
+ if (!rawUri) {
74
+ continue;
75
+ }
76
+ const ownDecoration = this.decorationsByUri.get(rawUri);
77
+ const bubbledDecoration = this.parentDecorations.get(rawUri);
78
+ const combined = this.mergeDecorations(ownDecoration, bubbledDecoration);
79
+ if (combined) {
80
+ decorations.set(node.id, combined);
67
81
  }
68
82
  }
69
83
  return decorations;
@@ -83,28 +97,6 @@ export class FileTreeDecoratorAdapter implements TreeDecorator {
83
97
  }
84
98
  }
85
99
 
86
- protected updateDecorations(oldKeys: IterableIterator<string>, newKeys: IterableIterator<string>): void {
87
- this.parentDecorations.clear();
88
- const newDecorations = new Map<string, TreeDecoration.Data>();
89
- const handleUri = (rawUri: string) => {
90
- if (!newDecorations.has(rawUri)) {
91
- const uri = new URI(rawUri);
92
- const decorations = this.decorationsService.getDecoration(uri, false);
93
- if (decorations.length) {
94
- newDecorations.set(rawUri, this.toTheiaDecoration(decorations, false));
95
- this.propagateDecorationsByUri(uri, decorations);
96
- }
97
- }
98
- };
99
- for (const rawUri of oldKeys) {
100
- handleUri(rawUri);
101
- }
102
- for (const rawUri of newKeys) {
103
- handleUri(rawUri);
104
- }
105
- this.decorationsByUri = newDecorations;
106
- }
107
-
108
100
  protected toTheiaDecoration(decorations: Decoration[], bubble?: boolean): TreeDecoration.Data {
109
101
  const color = decorations[0].colorId ? `var(${this.colorRegistry.toCssVariableName(decorations[0].colorId)})` : undefined;
110
102
  const fontData = color ? { color } : undefined;