@theia/dev-container 1.57.0 → 1.58.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.
- package/lib/electron-browser/container-info-contribution.d.ts +12 -3
- package/lib/electron-browser/container-info-contribution.d.ts.map +1 -1
- package/lib/electron-browser/container-info-contribution.js +38 -4
- package/lib/electron-browser/container-info-contribution.js.map +1 -1
- package/lib/electron-browser/dev-container-frontend-module.d.ts.map +1 -1
- package/lib/electron-browser/dev-container-frontend-module.js +3 -0
- package/lib/electron-browser/dev-container-frontend-module.js.map +1 -1
- package/lib/electron-node/devcontainer-contributions/main-container-creation-contributions.js.map +1 -1
- package/lib/electron-node/remote-container-connection-provider.d.ts +1 -0
- package/lib/electron-node/remote-container-connection-provider.d.ts.map +1 -1
- package/package.json +7 -7
- package/src/electron-browser/container-info-contribution.ts +44 -7
- package/src/electron-browser/dev-container-frontend-module.ts +4 -1
- package/src/electron-node/devcontainer-contributions/main-container-creation-contributions.ts +1 -1
|
@@ -1,11 +1,20 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { WindowTitleContribution } from '@theia/core/lib/browser/window/window-title-service';
|
|
2
|
+
import { RemoteStatus, RemoteStatusService } from '@theia/remote/lib/electron-common/remote-status-service';
|
|
3
|
+
import { FrontendApplicationContribution, LabelProviderContribution } from '@theia/core/lib/browser';
|
|
2
4
|
import type { ContainerInspectInfo } from 'dockerode';
|
|
3
5
|
import { RemoteContainerConnectionProvider } from '../electron-common/remote-container-connection-provider';
|
|
4
6
|
import { PortForwardingService } from '@theia/remote/lib/electron-browser/port-forwarding/port-forwarding-service';
|
|
5
|
-
|
|
7
|
+
import { URI } from '@theia/core';
|
|
8
|
+
export declare class ContainerInfoContribution implements FrontendApplicationContribution, WindowTitleContribution, LabelProviderContribution {
|
|
6
9
|
protected readonly connectionProvider: RemoteContainerConnectionProvider;
|
|
7
10
|
protected readonly portForwardingService: PortForwardingService;
|
|
8
|
-
|
|
11
|
+
protected readonly remoteStatusService: RemoteStatusService;
|
|
12
|
+
protected status: RemoteStatus | undefined;
|
|
13
|
+
protected containerInfo: ContainerInspectInfo | undefined;
|
|
14
|
+
protected containerFilePath: string | undefined;
|
|
9
15
|
onStart(): Promise<void>;
|
|
16
|
+
enhanceTitle(title: string, parts: Map<string, string | undefined>): string;
|
|
17
|
+
canHandle(element: object): number;
|
|
18
|
+
getName(element: URI): string | undefined;
|
|
10
19
|
}
|
|
11
20
|
//# sourceMappingURL=container-info-contribution.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"container-info-contribution.d.ts","sourceRoot":"","sources":["../../src/electron-browser/container-info-contribution.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,+BAA+B,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"container-info-contribution.d.ts","sourceRoot":"","sources":["../../src/electron-browser/container-info-contribution.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,uBAAuB,EAAE,MAAM,qDAAqD,CAAC;AAC9F,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,yDAAyD,CAAC;AAC5G,OAAO,EAAE,+BAA+B,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACrG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACtD,OAAO,EAAE,iCAAiC,EAAE,MAAM,yDAAyD,CAAC;AAC5G,OAAO,EAAE,qBAAqB,EAAE,MAAM,4EAA4E,CAAC;AAEnH,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAElC,qBACa,yBAA0B,YAAW,+BAA+B,EAAE,uBAAuB,EAAE,yBAAyB;IAEjI,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,iCAAiC,CAAC;IAGzE,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IAGhE,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAE5D,SAAS,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,CAAC;IAC3C,SAAS,CAAC,aAAa,EAAE,oBAAoB,GAAG,SAAS,CAAC;IAC1D,SAAS,CAAC,iBAAiB,EAAE,MAAM,GAAG,SAAS,CAAC;IAE1C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAc9B,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,MAAM;IAQ3E,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAelC,OAAO,CAAC,OAAO,EAAE,GAAG,GAAG,MAAM,GAAG,SAAS;CAK5C"}
|
|
@@ -18,14 +18,18 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
18
18
|
exports.ContainerInfoContribution = void 0;
|
|
19
19
|
const tslib_1 = require("tslib");
|
|
20
20
|
const inversify_1 = require("@theia/core/shared/inversify");
|
|
21
|
+
const remote_status_service_1 = require("@theia/remote/lib/electron-common/remote-status-service");
|
|
21
22
|
const remote_container_connection_provider_1 = require("../electron-common/remote-container-connection-provider");
|
|
22
23
|
const port_forwarding_service_1 = require("@theia/remote/lib/electron-browser/port-forwarding/port-forwarding-service");
|
|
23
|
-
const
|
|
24
|
+
const dev_container_workspaces_1 = require("../electron-common/dev-container-workspaces");
|
|
25
|
+
const core_1 = require("@theia/core");
|
|
24
26
|
let ContainerInfoContribution = class ContainerInfoContribution {
|
|
25
27
|
async onStart() {
|
|
26
|
-
var _a, _b
|
|
27
|
-
|
|
28
|
-
|
|
28
|
+
var _a, _b;
|
|
29
|
+
const containerPort = parseInt((_a = new URLSearchParams(location.search).get('port')) !== null && _a !== void 0 ? _a : '0');
|
|
30
|
+
const containerInfo = await this.connectionProvider.getCurrentContainerInfo(containerPort);
|
|
31
|
+
this.status = await this.remoteStatusService.getStatus(containerPort);
|
|
32
|
+
this.portForwardingService.forwardedPorts = Object.entries((_b = containerInfo === null || containerInfo === void 0 ? void 0 : containerInfo.NetworkSettings.Ports) !== null && _b !== void 0 ? _b : {}).flatMap(([_, ports]) => (ports.map(port => {
|
|
29
33
|
var _a, _b;
|
|
30
34
|
return ({
|
|
31
35
|
editing: false,
|
|
@@ -35,6 +39,32 @@ let ContainerInfoContribution = class ContainerInfoContribution {
|
|
|
35
39
|
});
|
|
36
40
|
})));
|
|
37
41
|
}
|
|
42
|
+
enhanceTitle(title, parts) {
|
|
43
|
+
if (this.status && this.status.alive) {
|
|
44
|
+
const devcontainerName = this.status.name;
|
|
45
|
+
title = `${title} [Dev Container${devcontainerName ? ': ' + devcontainerName : ''}]`;
|
|
46
|
+
}
|
|
47
|
+
return title;
|
|
48
|
+
}
|
|
49
|
+
canHandle(element) {
|
|
50
|
+
if ('query' in element) {
|
|
51
|
+
let containerFilePath = new URLSearchParams(element.query).get(dev_container_workspaces_1.DEV_CONTAINER_PATH_QUERY);
|
|
52
|
+
if (containerFilePath) {
|
|
53
|
+
if (containerFilePath.startsWith(element.path.toString())) {
|
|
54
|
+
containerFilePath = containerFilePath.replace(element.path.toString(), '');
|
|
55
|
+
}
|
|
56
|
+
this.containerFilePath = containerFilePath;
|
|
57
|
+
return 100;
|
|
58
|
+
}
|
|
59
|
+
;
|
|
60
|
+
return 0;
|
|
61
|
+
}
|
|
62
|
+
return 0;
|
|
63
|
+
}
|
|
64
|
+
getName(element) {
|
|
65
|
+
const dir = new core_1.URI(this.containerFilePath).path.dir.base;
|
|
66
|
+
return `${element.path.base} [Dev Container${dir && dir !== '.devcontainer' ? `: ${dir}` : ''}]`;
|
|
67
|
+
}
|
|
38
68
|
};
|
|
39
69
|
exports.ContainerInfoContribution = ContainerInfoContribution;
|
|
40
70
|
tslib_1.__decorate([
|
|
@@ -45,6 +75,10 @@ tslib_1.__decorate([
|
|
|
45
75
|
(0, inversify_1.inject)(port_forwarding_service_1.PortForwardingService),
|
|
46
76
|
tslib_1.__metadata("design:type", port_forwarding_service_1.PortForwardingService)
|
|
47
77
|
], ContainerInfoContribution.prototype, "portForwardingService", void 0);
|
|
78
|
+
tslib_1.__decorate([
|
|
79
|
+
(0, inversify_1.inject)(remote_status_service_1.RemoteStatusService),
|
|
80
|
+
tslib_1.__metadata("design:type", Object)
|
|
81
|
+
], ContainerInfoContribution.prototype, "remoteStatusService", void 0);
|
|
48
82
|
exports.ContainerInfoContribution = ContainerInfoContribution = tslib_1.__decorate([
|
|
49
83
|
(0, inversify_1.injectable)()
|
|
50
84
|
], ContainerInfoContribution);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"container-info-contribution.js","sourceRoot":"","sources":["../../src/electron-browser/container-info-contribution.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,4DAAkE;
|
|
1
|
+
{"version":3,"file":"container-info-contribution.js","sourceRoot":"","sources":["../../src/electron-browser/container-info-contribution.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev-container-frontend-module.d.ts","sourceRoot":"","sources":["../../src/electron-browser/dev-container-frontend-module.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;;
|
|
1
|
+
{"version":3,"file":"dev-container-frontend-module.d.ts","sourceRoot":"","sources":["../../src/electron-browser/dev-container-frontend-module.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;;AAW/D,wBAgBG"}
|
|
@@ -24,6 +24,7 @@ const container_output_provider_1 = require("./container-output-provider");
|
|
|
24
24
|
const container_info_contribution_1 = require("./container-info-contribution");
|
|
25
25
|
const browser_1 = require("@theia/core/lib/browser");
|
|
26
26
|
const workspace_service_1 = require("@theia/workspace/lib/browser/workspace-service");
|
|
27
|
+
const window_title_service_1 = require("@theia/core/lib/browser/window/window-title-service");
|
|
27
28
|
exports.default = new inversify_1.ContainerModule(bind => {
|
|
28
29
|
bind(container_connection_contribution_1.ContainerConnectionContribution).toSelf().inSingletonScope();
|
|
29
30
|
bind(remote_registry_contribution_1.RemoteRegistryContribution).toService(container_connection_contribution_1.ContainerConnectionContribution);
|
|
@@ -35,5 +36,7 @@ exports.default = new inversify_1.ContainerModule(bind => {
|
|
|
35
36
|
}).inSingletonScope();
|
|
36
37
|
bind(container_info_contribution_1.ContainerInfoContribution).toSelf().inSingletonScope();
|
|
37
38
|
bind(browser_1.FrontendApplicationContribution).toService(container_info_contribution_1.ContainerInfoContribution);
|
|
39
|
+
bind(window_title_service_1.WindowTitleContribution).toService(container_info_contribution_1.ContainerInfoContribution);
|
|
40
|
+
bind(browser_1.LabelProviderContribution).toService(container_info_contribution_1.ContainerInfoContribution);
|
|
38
41
|
});
|
|
39
42
|
//# sourceMappingURL=dev-container-frontend-module.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev-container-frontend-module.js","sourceRoot":"","sources":["../../src/electron-browser/dev-container-frontend-module.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;AAChF,4DAA+D;AAC/D,kHAA6G;AAC7G,kHAAmJ;AACnJ,2FAAsF;AACtF,+GAA0G;AAC1G,2EAAsE;AACtE,+EAA0E;AAC1E,
|
|
1
|
+
{"version":3,"file":"dev-container-frontend-module.js","sourceRoot":"","sources":["../../src/electron-browser/dev-container-frontend-module.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;AAChF,4DAA+D;AAC/D,kHAA6G;AAC7G,kHAAmJ;AACnJ,2FAAsF;AACtF,+GAA0G;AAC1G,2EAAsE;AACtE,+EAA0E;AAC1E,qDAAqG;AACrG,sFAAkG;AAClG,8FAA8F;AAE9F,kBAAe,IAAI,2BAAe,CAAC,IAAI,CAAC,EAAE;IACtC,IAAI,CAAC,mEAA+B,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAClE,IAAI,CAAC,yDAA0B,CAAC,CAAC,SAAS,CAAC,mEAA+B,CAAC,CAAC;IAC5E,IAAI,CAAC,oDAAgC,CAAC,CAAC,SAAS,CAAC,mEAA+B,CAAC,CAAC;IAElF,IAAI,CAAC,mDAAuB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAE1D,IAAI,CAAC,wEAAiC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE;QACzD,MAAM,cAAc,GAAG,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,mDAAuB,CAAC,CAAC;QAClE,OAAO,uDAAyB,CAAC,gBAAgB,CAAoC,GAAG,CAAC,SAAS,EAAE,4EAAqC,EAAE,cAAc,CAAC,CAAC;IAC/J,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAEtB,IAAI,CAAC,uDAAyB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAC5D,IAAI,CAAC,yCAA+B,CAAC,CAAC,SAAS,CAAC,uDAAyB,CAAC,CAAC;IAC3E,IAAI,CAAC,8CAAuB,CAAC,CAAC,SAAS,CAAC,uDAAyB,CAAC,CAAC;IACnE,IAAI,CAAC,mCAAyB,CAAC,CAAC,SAAS,CAAC,uDAAyB,CAAC,CAAC;AACzE,CAAC,CAAC,CAAC"}
|
package/lib/electron-node/devcontainer-contributions/main-container-creation-contributions.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main-container-creation-contributions.js","sourceRoot":"","sources":["../../../src/electron-node/devcontainer-contributions/main-container-creation-contributions.ts"],"names":[],"mappings":";;;;AAgBA,4DAA8E;AAC9E,0EAA4E;AAE5E,sCAAmC;AAEnC,kDAAkD;AAClD,uHAAiH;AAGjH,SAAgB,sCAAsC,CAAC,IAAqB;IACxE,IAAI,CAAC,wDAA6B,CAAC,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACjF,IAAI,CAAC,wDAA6B,CAAC,CAAC,EAAE,CAAC,sBAAsB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAClF,IAAI,CAAC,wDAA6B,CAAC,CAAC,EAAE,CAAC,wBAAwB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACpF,IAAI,CAAC,wDAA6B,CAAC,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC9E,IAAI,CAAC,wDAA6B,CAAC,CAAC,EAAE,CAAC,sBAAsB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAClF,IAAI,CAAC,wDAA6B,CAAC,CAAC,EAAE,CAAC,6BAA6B,CAAC,CAAC,gBAAgB,EAAE,CAAC;AAC7F,CAAC;AAPD,wFAOC;AAGM,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAC9B,KAAK,CAAC,uBAAuB,CAAC,aAA4C,EAAE,eAA+B,EACvG,GAAW,EAAE,cAAuC;QACpD,IAAI,eAAe,CAAC,KAAK,EAAE,CAAC;YACxB,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;YAClC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAC1B,MAAM,OAAO,GAAG,QAAQ,KAAK,QAAQ,IAAI,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvF,MAAM,IAAI,OAAO,CAAO,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;gBAC3F,IAAI,GAAG,EAAE,CAAC;oBACN,GAAG,CAAC,GAAG,CAAC,CAAC;gBACb,CAAC;qBAAM,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBAC9B,GAAG,CAAC,qBAAqB,CAAC,CAAC;gBAC/B,CAAC;qBAAM,CAAC;oBACJ,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,
|
|
1
|
+
{"version":3,"file":"main-container-creation-contributions.js","sourceRoot":"","sources":["../../../src/electron-node/devcontainer-contributions/main-container-creation-contributions.ts"],"names":[],"mappings":";;;;AAgBA,4DAA8E;AAC9E,0EAA4E;AAE5E,sCAAmC;AAEnC,kDAAkD;AAClD,uHAAiH;AAGjH,SAAgB,sCAAsC,CAAC,IAAqB;IACxE,IAAI,CAAC,wDAA6B,CAAC,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACjF,IAAI,CAAC,wDAA6B,CAAC,CAAC,EAAE,CAAC,sBAAsB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAClF,IAAI,CAAC,wDAA6B,CAAC,CAAC,EAAE,CAAC,wBAAwB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACpF,IAAI,CAAC,wDAA6B,CAAC,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC9E,IAAI,CAAC,wDAA6B,CAAC,CAAC,EAAE,CAAC,sBAAsB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAClF,IAAI,CAAC,wDAA6B,CAAC,CAAC,EAAE,CAAC,6BAA6B,CAAC,CAAC,gBAAgB,EAAE,CAAC;AAC7F,CAAC;AAPD,wFAOC;AAGM,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAC9B,KAAK,CAAC,uBAAuB,CAAC,aAA4C,EAAE,eAA+B,EACvG,GAAW,EAAE,cAAuC;QACpD,IAAI,eAAe,CAAC,KAAK,EAAE,CAAC;YACxB,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;YAClC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAC1B,MAAM,OAAO,GAAG,QAAQ,KAAK,QAAQ,IAAI,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvF,MAAM,IAAI,OAAO,CAAO,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;gBAC3F,IAAI,GAAG,EAAE,CAAC;oBACN,GAAG,CAAC,GAAG,CAAC,CAAC;gBACb,CAAC;qBAAM,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBAC9B,GAAG,CAAC,qBAAqB,CAAC,CAAC;gBAC/B,CAAC;qBAAM,CAAC;oBACJ,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,MAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;wBACxD,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;wBACZ,GAAG,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC,cAAc,CAAC,cAAc,CAAC,YAAY,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAChG,CAAC;YACL,CAAC,CAAC,CAAC,CAAC;YACJ,aAAa,CAAC,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC;QAChD,CAAC;IACL,CAAC;CACJ,CAAA;AArBY,sDAAqB;gCAArB,qBAAqB;IADjC,IAAA,sBAAU,GAAE;GACA,qBAAqB,CAqBjC;AAGM,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAC/B,KAAK,CAAC,uBAAuB,CAAC,aAA4C,EAAE,eAAoC,EAC5G,GAAW,EAAE,cAAuC;;QACpD,gCAAgC;QAChC,IAAI,eAAe,CAAC,UAAU,KAAI,MAAA,eAAe,CAAC,KAAK,0CAAE,UAAU,CAAA,EAAE,CAAC;YAClE,MAAM,UAAU,GAAG,CAAC,MAAA,eAAe,CAAC,UAAU,mCAAI,MAAA,eAAe,CAAC,KAAK,0CAAE,UAAU,CAAW,CAAC;YAC/F,MAAM,OAAO,GAAG,MAAA,eAAe,CAAC,OAAO,mCAAI,IAAI,WAAI,CAAC,eAAe,CAAC,QAAkB,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;YACrG,IAAI,CAAC;gBACD,2BAA2B;gBAC3B,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,WAAI,CAAC,OAAiB,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;gBAEtE,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC;oBACrC,OAAO;oBACP,GAAG,EAAE,CAAC,UAAU,CAAC;iBACQ,EAAE;oBAC3B,SAAS,EAAE,MAAA,eAAe,CAAC,KAAK,0CAAE,IAAI;iBACzC,CAAC,CAAC;gBACH,0EAA0E;gBAC1E,MAAM,OAAO,GAAG,MAAM,IAAI,OAAO,CAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,WAAY,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE;;oBAC5G,IAAI,GAAG,EAAE,CAAC;wBACN,GAAG,CAAC,GAAG,CAAC,CAAC;oBACb,CAAC;yBAAM,CAAC;wBACJ,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;4BAC3C,IAAI,MAAA,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,0CAAE,EAAE,EAAE,CAAC;gCACrB,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gCACvB,OAAO;4BACX,CAAC;wBACL,CAAC;oBACL,CAAC;gBACL,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC,cAAc,CAAC,cAAc,CAAC,YAAY,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;gBACrF,aAAa,CAAC,KAAK,GAAG,OAAO,CAAC;YAClC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,cAAc,CAAC,cAAc,CAAC,+BAA+B,UAAU,aAAa,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBACrG,MAAM,KAAK,CAAC;YAChB,CAAC;QACL,CAAC;IACL,CAAC;CACJ,CAAA;AArCY,wDAAsB;iCAAtB,sBAAsB;IADlC,IAAA,sBAAU,GAAE;GACA,sBAAsB,CAqClC;AAGM,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IAKjC,KAAK,CAAC,iBAAiB,CAAC,eAA0C,EAAE,UAA2C;QAC3G,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;YAChC,OAAO;QACX,CAAC;QAED,KAAK,MAAM,OAAO,IAAI,eAAe,CAAC,YAAY,EAAE,CAAC;YACjD,IAAI,IAAY,CAAC;YACjB,IAAI,OAA2B,CAAC;YAChC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAC9B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACjC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACnB,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9B,CAAC;iBAAM,CAAC;gBACJ,IAAI,GAAG,OAAO,CAAC;YACnB,CAAC;YAED,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QACrF,CAAC;IAEL,CAAC;CAEJ,CAAA;AA1BY,4DAAwB;AAGd;IADlB,IAAA,kBAAM,EAAC,8DAA4B,CAAC;;wEACmC;mCAH/D,wBAAwB;IADpC,IAAA,sBAAU,GAAE;GACA,wBAAwB,CA0BpC;AAGM,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAC3B,KAAK,CAAC,uBAAuB,CAAC,aAA4C,EAAE,eAA0C,EAAE,GAAW;;QAC/H,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC;YAC1B,OAAO;QACX,CAAC;QAED,aAAa,CAAC,UAAW,CAAC,MAAO,CAAC,IAAI,CAAC,GAAG,MAAA,MAAC,eAA2C,aAA3C,eAAe,uBAAf,eAAe,CAA8B,MAAM,0CACxF,GAAG,CAAC,KAAK,CAAC,EAAE;;YAAC,OAAA,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC;gBACtC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC9B,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,MAAA,KAAK,CAAC,IAAI,mCAAI,MAAM,EAAE,CAAA;SAAA,CAAC,mCAAI,EAAE,CAAC,CAAC;IAC/F,CAAC;IAED,gBAAgB,CAAC,KAAa;;QAC1B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,OAAO;YACH,MAAM,EAAE,MAAA,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,0CAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAE;YACjG,MAAM,EAAE,MAAA,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,0CAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAE;YACjG,IAAI,EAAE,CAAC,MAAA,MAAA,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,0CAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,mCAAI,MAAM,CAAqB;SACpG,CAAC;IACN,CAAC;CACJ,CAAA;AApBY,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,sBAAU,GAAE;GACA,kBAAkB,CAoB9B;AAGM,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAC/B,KAAK,CAAC,uBAAuB,CAAC,aAA4C,EAAE,eAA0C,EAAE,GAAW;QAC/H,IAAI,eAAe,CAAC,UAAU,EAAE,CAAC;YAC7B,aAAa,CAAC,IAAI,GAAG,eAAe,CAAC,UAAU,CAAC;QACpD,CAAC;IACL,CAAC;CACJ,CAAA;AANY,wDAAsB;iCAAtB,sBAAsB;IADlC,IAAA,sBAAU,GAAE;GACA,sBAAsB,CAMlC;AAGM,IAAM,6BAA6B,GAAnC,MAAM,6BAA6B;IACtC,KAAK,CAAC,gBAAgB,CAAE,eAA0C,EAAE,SAA2B,EAAE,GAAW,EAAE,cAAuC;QACjJ,IAAI,eAAe,CAAC,iBAAiB,EAAE,CAAC;YACpC,MAAM,QAAQ,GAAG,OAAO,eAAe,CAAC,iBAAiB,KAAK,QAAQ,IAAI,CAAC,CAAC,eAAe,CAAC,iBAAiB,YAAY,KAAK,CAAC,CAAC,CAAC;gBAC7H,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,iBAAiB,CAAC,CAAC;YAC3F,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC7B,IAAI,CAAC;oBACD,IAAI,IAAI,CAAC;oBACT,IAAI,OAAO,YAAY,KAAK,EAAE,CAAC;wBAC3B,IAAI,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;oBAE1F,CAAC;yBAAM,CAAC;wBACJ,IAAI,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;oBACxG,CAAC;oBACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC/C,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;gBAChF,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,cAAc,CAAC,cAAc,CAAC,sCAAsC,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;gBACjI,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;CACJ,CAAA;AAtBY,sEAA6B;wCAA7B,6BAA6B;IADzC,IAAA,sBAAU,GAAE;GACA,6BAA6B,CAsBzC;AAED,IAAiB,YAAY,CAW5B;AAXD,WAAiB,YAAY;IAQzB,SAAgB,aAAa,CAAC,QAAkB;;QAC5C,OAAO,MAAA,MAAA,MAAA,QAAQ,CAAC,MAAM,mCAAI,QAAQ,CAAC,QAAQ,mCAAI,QAAQ,CAAC,MAAM,mCAAI,EAAE,CAAC;IACzE,CAAC;IAFe,0BAAa,gBAE5B,CAAA;AACL,CAAC,EAXgB,YAAY,4BAAZ,YAAY,QAW5B"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
/// <reference types="node" />
|
|
3
3
|
/// <reference types="node" />
|
|
4
4
|
/// <reference types="node" />
|
|
5
|
+
/// <reference types="node" />
|
|
5
6
|
import { ContainerConnectionOptions, ContainerConnectionResult, DevContainerFile, RemoteContainerConnectionProvider } from '../electron-common/remote-container-connection-provider';
|
|
6
7
|
import { RemoteConnection, RemoteExecOptions, RemoteExecResult, RemoteExecTester } from '@theia/remote/lib/electron-node/remote-types';
|
|
7
8
|
import { RemoteSetupResult, RemoteSetupService } from '@theia/remote/lib/electron-node/setup/remote-setup-service';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote-container-connection-provider.d.ts","sourceRoot":"","sources":["../../src/electron-node/remote-container-connection-provider.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"remote-container-connection-provider.d.ts","sourceRoot":"","sources":["../../src/electron-node/remote-container-connection-provider.ts"],"names":[],"mappings":";;;;;AAiBA,OAAO,EACH,0BAA0B,EAAE,yBAAyB,EACrD,gBAAgB,EAAE,iCAAiC,EACtD,MAAM,yDAAyD,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,EAAsB,MAAM,8CAA8C,CAAC;AAC3J,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,4DAA4D,CAAC;AACnH,OAAO,EAAE,uBAAuB,EAAE,MAAM,2DAA2D,CAAC;AACpG,OAAO,EAAE,yBAAyB,EAAE,MAAM,8DAA8D,CAAC;AACzG,OAAO,EAAE,OAAO,EAAE,KAAK,EAAgB,cAAc,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACtF,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAE7B,OAAO,KAAK,MAAM,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAEpE,OAAO,EAAE,WAAW,EAAE,MAAM,KAAK,CAAC;AAGlC,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AAEvF,qBACa,8BAA+B,YAAW,iCAAiC,EAAE,SAAS,CAAC,uBAAuB,CAAC;IAGxH,SAAS,CAAC,QAAQ,CAAC,uBAAuB,EAAE,uBAAuB,CAAC;IAGpE,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,kBAAkB,CAAC;IAGnD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IAGlD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,yBAAyB,CAAC;IAG7D,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,sBAAsB,CAAC;IAG5D,SAAS,CAAC,QAAQ,CAAC,uBAAuB,EAAE,uBAAuB,CAAC;IAGpE,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,uBAAuB,CAAC;IAE1D,SAAS,CAAC,cAAc,EAAE,uBAAuB,GAAG,SAAS,CAAC;IAE9D,SAAS,CAAC,MAAM,EAAE,uBAAuB,GAAG,IAAI;IAI1C,kBAAkB,CAAC,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAwDjG,oBAAoB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAIlE,yBAAyB,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,+BAA+B,CAAC;IAU/H,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,oBAAoB,GAAG,SAAS,CAAC;IAQ7F,OAAO,IAAI,IAAI;CAIlB;AAED,MAAM,WAAW,gCAAgC;IAC7C,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC;CAC/B;AAED,UAAU,wBAAwB;IAC9B,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC;IACvB,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,EAAE,WAAW,CAAC;IACpB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC7F;AAED,UAAU,wBAAwB;IAC9B,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC;IACvB,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,EAAE,WAAW,CAAC;IACpB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC7F;AAED,qBAAa,+BAAgC,YAAW,gBAAgB;IAEpE,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IAEnB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC;IAE5B,iBAAiB,EAAE,iBAAiB,CAAC;IAErC,SAAS,CAAC,qBAAqB,EAAE,wBAAwB,GAAG,SAAS,CAAC;IAEtE,SAAS,CAAC,QAAQ,CAAC,sBAAsB,gBAAuB;IAChE,eAAe,EAAE,KAAK,CAAC,IAAI,CAAC,CAAqC;gBAErD,OAAO,EAAE,gCAAgC;IAa/C,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBxD,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAyB1F,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAwC3H,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC,cAAc,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBjG,WAAW,IAAI,IAAI;IAKb,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAIjC"}
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theia/dev-container",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.58.0",
|
|
4
4
|
"description": "Theia - Editor Preview Extension",
|
|
5
5
|
"dependencies": {
|
|
6
|
-
"@theia/core": "1.
|
|
7
|
-
"@theia/output": "1.
|
|
8
|
-
"@theia/remote": "1.
|
|
9
|
-
"@theia/workspace": "1.
|
|
6
|
+
"@theia/core": "1.58.0",
|
|
7
|
+
"@theia/output": "1.58.0",
|
|
8
|
+
"@theia/remote": "1.58.0",
|
|
9
|
+
"@theia/workspace": "1.58.0",
|
|
10
10
|
"dockerode": "^4.0.2",
|
|
11
11
|
"jsonc-parser": "^2.2.0",
|
|
12
12
|
"uuid": "^8.0.0"
|
|
@@ -45,11 +45,11 @@
|
|
|
45
45
|
"watch": "theiaext watch"
|
|
46
46
|
},
|
|
47
47
|
"devDependencies": {
|
|
48
|
-
"@theia/ext-scripts": "1.
|
|
48
|
+
"@theia/ext-scripts": "1.58.0",
|
|
49
49
|
"@types/dockerode": "^3.3.23"
|
|
50
50
|
},
|
|
51
51
|
"nyc": {
|
|
52
52
|
"extends": "../../configs/nyc.json"
|
|
53
53
|
},
|
|
54
|
-
"gitHead": "
|
|
54
|
+
"gitHead": "6594f32b9727aea20d88934bf386dee06d08fa5e"
|
|
55
55
|
}
|
|
@@ -15,27 +15,36 @@
|
|
|
15
15
|
// *****************************************************************************
|
|
16
16
|
|
|
17
17
|
import { inject, injectable } from '@theia/core/shared/inversify';
|
|
18
|
-
import {
|
|
18
|
+
import { WindowTitleContribution } from '@theia/core/lib/browser/window/window-title-service';
|
|
19
|
+
import { RemoteStatus, RemoteStatusService } from '@theia/remote/lib/electron-common/remote-status-service';
|
|
20
|
+
import { FrontendApplicationContribution, LabelProviderContribution } from '@theia/core/lib/browser';
|
|
19
21
|
import type { ContainerInspectInfo } from 'dockerode';
|
|
20
22
|
import { RemoteContainerConnectionProvider } from '../electron-common/remote-container-connection-provider';
|
|
21
23
|
import { PortForwardingService } from '@theia/remote/lib/electron-browser/port-forwarding/port-forwarding-service';
|
|
22
|
-
import {
|
|
24
|
+
import { DEV_CONTAINER_PATH_QUERY } from '../electron-common/dev-container-workspaces';
|
|
25
|
+
import { URI } from '@theia/core';
|
|
23
26
|
|
|
24
27
|
@injectable()
|
|
25
|
-
export class ContainerInfoContribution implements FrontendApplicationContribution {
|
|
26
|
-
|
|
28
|
+
export class ContainerInfoContribution implements FrontendApplicationContribution, WindowTitleContribution, LabelProviderContribution {
|
|
27
29
|
@inject(RemoteContainerConnectionProvider)
|
|
28
30
|
protected readonly connectionProvider: RemoteContainerConnectionProvider;
|
|
29
31
|
|
|
30
32
|
@inject(PortForwardingService)
|
|
31
33
|
protected readonly portForwardingService: PortForwardingService;
|
|
32
34
|
|
|
33
|
-
|
|
35
|
+
@inject(RemoteStatusService)
|
|
36
|
+
protected readonly remoteStatusService: RemoteStatusService;
|
|
37
|
+
|
|
38
|
+
protected status: RemoteStatus | undefined;
|
|
39
|
+
protected containerInfo: ContainerInspectInfo | undefined;
|
|
40
|
+
protected containerFilePath: string | undefined;
|
|
34
41
|
|
|
35
42
|
async onStart(): Promise<void> {
|
|
36
|
-
|
|
43
|
+
const containerPort = parseInt(new URLSearchParams(location.search).get('port') ?? '0');
|
|
44
|
+
const containerInfo = await this.connectionProvider.getCurrentContainerInfo(containerPort);
|
|
45
|
+
this.status = await this.remoteStatusService.getStatus(containerPort);
|
|
37
46
|
|
|
38
|
-
this.portForwardingService.forwardedPorts = Object.entries(
|
|
47
|
+
this.portForwardingService.forwardedPorts = Object.entries(containerInfo?.NetworkSettings.Ports ?? {}).flatMap(([_, ports]) => (
|
|
39
48
|
ports.map(port => ({
|
|
40
49
|
editing: false,
|
|
41
50
|
address: port.HostIp ?? '',
|
|
@@ -44,4 +53,32 @@ export class ContainerInfoContribution implements FrontendApplicationContributio
|
|
|
44
53
|
}))));
|
|
45
54
|
}
|
|
46
55
|
|
|
56
|
+
enhanceTitle(title: string, parts: Map<string, string | undefined>): string {
|
|
57
|
+
if (this.status && this.status.alive) {
|
|
58
|
+
const devcontainerName = this.status.name;
|
|
59
|
+
title = `${title} [Dev Container${devcontainerName ? ': ' + devcontainerName : ''}]`;
|
|
60
|
+
}
|
|
61
|
+
return title;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
canHandle(element: object): number {
|
|
65
|
+
if ('query' in element) {
|
|
66
|
+
let containerFilePath = new URLSearchParams((element as URI).query).get(DEV_CONTAINER_PATH_QUERY);
|
|
67
|
+
if (containerFilePath) {
|
|
68
|
+
if (containerFilePath.startsWith((element as URI).path.toString())) {
|
|
69
|
+
containerFilePath = containerFilePath.replace((element as URI).path.toString(), '');
|
|
70
|
+
}
|
|
71
|
+
this.containerFilePath = containerFilePath;
|
|
72
|
+
return 100;
|
|
73
|
+
};
|
|
74
|
+
return 0;
|
|
75
|
+
}
|
|
76
|
+
return 0;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
getName(element: URI): string | undefined {
|
|
80
|
+
const dir = new URI(this.containerFilePath).path.dir.base;
|
|
81
|
+
return `${element.path.base} [Dev Container${dir && dir !== '.devcontainer' ? `: ${dir}` : ''}]`;
|
|
82
|
+
}
|
|
83
|
+
|
|
47
84
|
}
|
|
@@ -20,8 +20,9 @@ import { ContainerConnectionContribution } from './container-connection-contribu
|
|
|
20
20
|
import { ServiceConnectionProvider } from '@theia/core/lib/browser/messaging/service-connection-provider';
|
|
21
21
|
import { ContainerOutputProvider } from './container-output-provider';
|
|
22
22
|
import { ContainerInfoContribution } from './container-info-contribution';
|
|
23
|
-
import { FrontendApplicationContribution } from '@theia/core/lib/browser';
|
|
23
|
+
import { FrontendApplicationContribution, LabelProviderContribution } from '@theia/core/lib/browser';
|
|
24
24
|
import { WorkspaceOpenHandlerContribution } from '@theia/workspace/lib/browser/workspace-service';
|
|
25
|
+
import { WindowTitleContribution } from '@theia/core/lib/browser/window/window-title-service';
|
|
25
26
|
|
|
26
27
|
export default new ContainerModule(bind => {
|
|
27
28
|
bind(ContainerConnectionContribution).toSelf().inSingletonScope();
|
|
@@ -37,4 +38,6 @@ export default new ContainerModule(bind => {
|
|
|
37
38
|
|
|
38
39
|
bind(ContainerInfoContribution).toSelf().inSingletonScope();
|
|
39
40
|
bind(FrontendApplicationContribution).toService(ContainerInfoContribution);
|
|
41
|
+
bind(WindowTitleContribution).toService(ContainerInfoContribution);
|
|
42
|
+
bind(LabelProviderContribution).toService(ContainerInfoContribution);
|
|
40
43
|
});
|
package/src/electron-node/devcontainer-contributions/main-container-creation-contributions.ts
CHANGED
|
@@ -46,7 +46,7 @@ export class ImageFileContribution implements ContainerCreationContribution {
|
|
|
46
46
|
} else if (stream === undefined) {
|
|
47
47
|
rej('Stream is undefined');
|
|
48
48
|
} else {
|
|
49
|
-
api.modem.followProgress(stream
|
|
49
|
+
api.modem.followProgress(stream!, (error, output) => error ?
|
|
50
50
|
rej(error) :
|
|
51
51
|
res(), progress => outputprovider.onRemoteOutput(OutputHelper.parseProgress(progress)));
|
|
52
52
|
}
|