@theia/core 1.32.0-next.47 → 1.32.0-next.48
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.
- package/README.md +6 -6
- package/lib/electron-main/messaging/electron-messaging-contribution.d.ts +1 -0
- package/lib/electron-main/messaging/electron-messaging-contribution.d.ts.map +1 -1
- package/lib/electron-main/messaging/electron-messaging-contribution.js +6 -2
- package/lib/electron-main/messaging/electron-messaging-contribution.js.map +1 -1
- package/package.json +4 -4
- package/src/electron-main/messaging/electron-messaging-contribution.ts +7 -2
package/README.md
CHANGED
|
@@ -86,12 +86,12 @@ export class SomeClass {
|
|
|
86
86
|
- `@phosphor/signaling` (from [`@phosphor/signaling@1`](https://www.npmjs.com/package/@phosphor/signaling))
|
|
87
87
|
- `@phosphor/virtualdom` (from [`@phosphor/virtualdom@1`](https://www.npmjs.com/package/@phosphor/virtualdom))
|
|
88
88
|
- `@phosphor/widgets` (from [`@phosphor/widgets@1`](https://www.npmjs.com/package/@phosphor/widgets))
|
|
89
|
-
- `@theia/application-package` (from [`@theia/application-package@1.32.0-next.
|
|
90
|
-
- `@theia/application-package/lib/api` (from [`@theia/application-package@1.32.0-next.
|
|
91
|
-
- `@theia/application-package/lib/environment` (from [`@theia/application-package@1.32.0-next.
|
|
92
|
-
- `@theia/request` (from [`@theia/request@1.32.0-next.
|
|
93
|
-
- `@theia/request/lib/proxy` (from [`@theia/request@1.32.0-next.
|
|
94
|
-
- `@theia/request/lib/node-request-service` (from [`@theia/request@1.32.0-next.
|
|
89
|
+
- `@theia/application-package` (from [`@theia/application-package@1.32.0-next.48+b2c52e298`](https://www.npmjs.com/package/@theia/application-package/v/1.32.0-next.48))
|
|
90
|
+
- `@theia/application-package/lib/api` (from [`@theia/application-package@1.32.0-next.48+b2c52e298`](https://www.npmjs.com/package/@theia/application-package/v/1.32.0-next.48))
|
|
91
|
+
- `@theia/application-package/lib/environment` (from [`@theia/application-package@1.32.0-next.48+b2c52e298`](https://www.npmjs.com/package/@theia/application-package/v/1.32.0-next.48))
|
|
92
|
+
- `@theia/request` (from [`@theia/request@1.32.0-next.48+b2c52e298`](https://www.npmjs.com/package/@theia/request/v/1.32.0-next.48))
|
|
93
|
+
- `@theia/request/lib/proxy` (from [`@theia/request@1.32.0-next.48+b2c52e298`](https://www.npmjs.com/package/@theia/request/v/1.32.0-next.48))
|
|
94
|
+
- `@theia/request/lib/node-request-service` (from [`@theia/request@1.32.0-next.48+b2c52e298`](https://www.npmjs.com/package/@theia/request/v/1.32.0-next.48))
|
|
95
95
|
- `fs-extra` (from [`fs-extra@^4.0.2`](https://www.npmjs.com/package/fs-extra))
|
|
96
96
|
- `fuzzy` (from [`fuzzy@^0.1.3`](https://www.npmjs.com/package/fuzzy))
|
|
97
97
|
- `inversify` (from [`inversify@^5.1.1`](https://www.npmjs.com/package/inversify))
|
|
@@ -35,6 +35,7 @@ export declare class ElectronMessagingContribution implements ElectronMainApplic
|
|
|
35
35
|
* @param sender The window that the channel should be established to.
|
|
36
36
|
*/
|
|
37
37
|
protected createWindowMainChannel(sender: WebContents): ElectronWebContentChannel;
|
|
38
|
+
protected disposeMultiplexer(windowId: number, multiplexer: ChannelMultiplexer, reason: string): void;
|
|
38
39
|
onStart(): void;
|
|
39
40
|
ipcChannel(spec: string, callback: (params: any, channel: Channel) => void): void;
|
|
40
41
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"electron-messaging-contribution.d.ts","sourceRoot":"","sources":["../../../src/electron-main/messaging/electron-messaging-contribution.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,YAAY,EAAW,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAErF,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AACpF,OAAO,EAAE,yBAAyB,EAAmC,MAAM,6DAA6D,CAAC;AACzI,OAAO,EAAE,mCAAmC,EAAE,MAAM,8BAA8B,CAAC;AACnF,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACjH,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGpD;;;;;;GAMG;AAEH,qBACa,6BAA8B,YAAW,mCAAmC,EAAE,wBAAwB;IAG/G,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,wBAAwB,CAAC,YAAY,CAAC,CAAC;IAGvG,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,yBAAyB,CAAC,CAAC;IAEvF,SAAS,CAAC,QAAQ,CAAC,eAAe,oDAA2D;IAC7F;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,wBAAwB;iBAA8B,yBAAyB;qBAAe,kBAAkB;OAAM;IAGzI,SAAS,CAAC,IAAI,IAAI,IAAI;IAMtB,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,GAAG,IAAI;IAYrE,SAAS,CAAC,uBAAuB,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW,GAAG;QAAE,OAAO,EAAE,yBAAyB,CAAC;QAAC,WAAW,EAAE,kBAAkB,CAAA;KAAE;IAkBxI;;;OAGG;IACH,SAAS,CAAC,uBAAuB,CAAC,MAAM,EAAE,WAAW,GAAG,yBAAyB;IAIjF,OAAO,IAAI,IAAI;IAYf,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI;CAGpF;AAED;;;GAGG;AACH,qBAAa,yBAA0B,SAAQ,eAAe;IAK9C,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW;IAF3D,SAAkB,gBAAgB,EAAE,OAAO,CAAC,eAAe,CAAC,CAAiB;gBAE9C,MAAM,EAAE,QAAQ,CAAC,WAAW;IAI3D,cAAc,IAAI,WAAW;CAYhC"}
|
|
1
|
+
{"version":3,"file":"electron-messaging-contribution.d.ts","sourceRoot":"","sources":["../../../src/electron-main/messaging/electron-messaging-contribution.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,YAAY,EAAW,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAErF,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AACpF,OAAO,EAAE,yBAAyB,EAAmC,MAAM,6DAA6D,CAAC;AACzI,OAAO,EAAE,mCAAmC,EAAE,MAAM,8BAA8B,CAAC;AACnF,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACjH,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGpD;;;;;;GAMG;AAEH,qBACa,6BAA8B,YAAW,mCAAmC,EAAE,wBAAwB;IAG/G,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,wBAAwB,CAAC,YAAY,CAAC,CAAC;IAGvG,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,yBAAyB,CAAC,CAAC;IAEvF,SAAS,CAAC,QAAQ,CAAC,eAAe,oDAA2D;IAC7F;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,wBAAwB;iBAA8B,yBAAyB;qBAAe,kBAAkB;OAAM;IAGzI,SAAS,CAAC,IAAI,IAAI,IAAI;IAMtB,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,GAAG,IAAI;IAYrE,SAAS,CAAC,uBAAuB,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW,GAAG;QAAE,OAAO,EAAE,yBAAyB,CAAC;QAAC,WAAW,EAAE,kBAAkB,CAAA;KAAE;IAkBxI;;;OAGG;IACH,SAAS,CAAC,uBAAuB,CAAC,MAAM,EAAE,WAAW,GAAG,yBAAyB;IAIjF,SAAS,CAAC,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAKrG,OAAO,IAAI,IAAI;IAYf,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI;CAGpF;AAED;;;GAGG;AACH,qBAAa,yBAA0B,SAAQ,eAAe;IAK9C,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW;IAF3D,SAAkB,gBAAgB,EAAE,OAAO,CAAC,eAAe,CAAC,CAAiB;gBAE9C,MAAM,EAAE,QAAQ,CAAC,WAAW;IAI3D,cAAc,IAAI,WAAW;CAYhC"}
|
|
@@ -77,8 +77,8 @@ let ElectronMessagingContribution = class ElectronMessagingContribution {
|
|
|
77
77
|
channel.onClose(() => console.debug(`Closing channel on service path '${id}'.`));
|
|
78
78
|
}
|
|
79
79
|
});
|
|
80
|
-
sender.once('did-navigate', () =>
|
|
81
|
-
sender.once('destroyed', () =>
|
|
80
|
+
sender.once('did-navigate', () => this.disposeMultiplexer(sender.id, multiplexer, 'Window was refreshed')); // When refreshing the browser window.
|
|
81
|
+
sender.once('destroyed', () => this.disposeMultiplexer(sender.id, multiplexer, 'Window was closed')); // When closing the browser window.
|
|
82
82
|
const data = { channel: mainChannel, multiplexer };
|
|
83
83
|
this.windowChannelMultiplexer.set(sender.id, data);
|
|
84
84
|
return data;
|
|
@@ -90,6 +90,10 @@ let ElectronMessagingContribution = class ElectronMessagingContribution {
|
|
|
90
90
|
createWindowMainChannel(sender) {
|
|
91
91
|
return new ElectronWebContentChannel(sender);
|
|
92
92
|
}
|
|
93
|
+
disposeMultiplexer(windowId, multiplexer, reason) {
|
|
94
|
+
multiplexer.onUnderlyingChannelClose({ reason });
|
|
95
|
+
this.windowChannelMultiplexer.delete(windowId);
|
|
96
|
+
}
|
|
93
97
|
onStart() {
|
|
94
98
|
for (const contribution of this.messagingContributions.getContributions()) {
|
|
95
99
|
contribution.configure(this);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"electron-messaging-contribution.js","sourceRoot":"","sources":["../../../src/electron-main/messaging/electron-messaging-contribution.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,2EAA2E;AAC3E,gFAAgF;;;;;;;;;;;;AAEhF,8DAAqF;AACrF,yCAAqE;AACrE,8EAA0E;AAC1E,wFAAoF;AACpF,6GAAyI;AAEzI,6EAAwE;AACxE,8DAAiH;AACjH,yCAAoD;AACpD,oGAAkH;AAElH;;;;;;GAMG;AAGH,IAAa,6BAA6B,GAA1C,MAAa,6BAA6B;IAA1C;QAQuB,oBAAe,GAAG,IAAI,8CAAqB,CAAC,kBAAkB,EAAW,CAAC;QAC7F;;WAEG;QACgB,6BAAwB,GAAG,IAAI,GAAG,EAAmF,CAAC;
|
|
1
|
+
{"version":3,"file":"electron-messaging-contribution.js","sourceRoot":"","sources":["../../../src/electron-main/messaging/electron-messaging-contribution.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theia/core",
|
|
3
|
-
"version": "1.32.0-next.
|
|
3
|
+
"version": "1.32.0-next.48+b2c52e298",
|
|
4
4
|
"description": "Theia is a cloud & desktop IDE framework implemented in TypeScript.",
|
|
5
5
|
"main": "lib/common/index.js",
|
|
6
6
|
"typings": "lib/common/index.d.ts",
|
|
@@ -16,8 +16,8 @@
|
|
|
16
16
|
"@phosphor/signaling": "1",
|
|
17
17
|
"@phosphor/virtualdom": "1",
|
|
18
18
|
"@phosphor/widgets": "1",
|
|
19
|
-
"@theia/application-package": "1.32.0-next.
|
|
20
|
-
"@theia/request": "1.32.0-next.
|
|
19
|
+
"@theia/application-package": "1.32.0-next.48+b2c52e298",
|
|
20
|
+
"@theia/request": "1.32.0-next.48+b2c52e298",
|
|
21
21
|
"@types/body-parser": "^1.16.4",
|
|
22
22
|
"@types/cookie": "^0.3.3",
|
|
23
23
|
"@types/dompurify": "^2.2.2",
|
|
@@ -202,5 +202,5 @@
|
|
|
202
202
|
"nyc": {
|
|
203
203
|
"extends": "../../configs/nyc.json"
|
|
204
204
|
},
|
|
205
|
-
"gitHead": "
|
|
205
|
+
"gitHead": "b2c52e298361a7c1bd0fa2f10b9ca1dc5fb16e40"
|
|
206
206
|
}
|
|
@@ -78,8 +78,8 @@ export class ElectronMessagingContribution implements ElectronMainApplicationCon
|
|
|
78
78
|
}
|
|
79
79
|
});
|
|
80
80
|
|
|
81
|
-
sender.once('did-navigate', () =>
|
|
82
|
-
sender.once('destroyed', () =>
|
|
81
|
+
sender.once('did-navigate', () => this.disposeMultiplexer(sender.id, multiplexer, 'Window was refreshed')); // When refreshing the browser window.
|
|
82
|
+
sender.once('destroyed', () => this.disposeMultiplexer(sender.id, multiplexer, 'Window was closed')); // When closing the browser window.
|
|
83
83
|
const data = { channel: mainChannel, multiplexer };
|
|
84
84
|
this.windowChannelMultiplexer.set(sender.id, data);
|
|
85
85
|
return data;
|
|
@@ -93,6 +93,11 @@ export class ElectronMessagingContribution implements ElectronMainApplicationCon
|
|
|
93
93
|
return new ElectronWebContentChannel(sender);
|
|
94
94
|
}
|
|
95
95
|
|
|
96
|
+
protected disposeMultiplexer(windowId: number, multiplexer: ChannelMultiplexer, reason: string): void {
|
|
97
|
+
multiplexer.onUnderlyingChannelClose({ reason });
|
|
98
|
+
this.windowChannelMultiplexer.delete(windowId);
|
|
99
|
+
}
|
|
100
|
+
|
|
96
101
|
onStart(): void {
|
|
97
102
|
for (const contribution of this.messagingContributions.getContributions()) {
|
|
98
103
|
contribution.configure(this);
|