@theia/workspace 1.56.0 → 1.57.0-next.22
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 +2 -1
- package/lib/browser/quick-open-workspace.d.ts +3 -1
- package/lib/browser/quick-open-workspace.d.ts.map +1 -1
- package/lib/browser/quick-open-workspace.js +9 -3
- package/lib/browser/quick-open-workspace.js.map +1 -1
- package/lib/browser/workspace-frontend-module.d.ts.map +1 -1
- package/lib/browser/workspace-frontend-module.js +1 -0
- package/lib/browser/workspace-frontend-module.js.map +1 -1
- package/lib/browser/workspace-service.d.ts +12 -3
- package/lib/browser/workspace-service.d.ts.map +1 -1
- package/lib/browser/workspace-service.js +19 -1
- package/lib/browser/workspace-service.js.map +1 -1
- package/lib/node/default-workspace-server.d.ts +12 -0
- package/lib/node/default-workspace-server.d.ts.map +1 -1
- package/lib/node/default-workspace-server.js +24 -5
- package/lib/node/default-workspace-server.js.map +1 -1
- package/lib/node/default-workspace-server.spec.js +15 -5
- package/lib/node/default-workspace-server.spec.js.map +1 -1
- package/lib/node/workspace-backend-module.d.ts.map +1 -1
- package/lib/node/workspace-backend-module.js +3 -0
- package/lib/node/workspace-backend-module.js.map +1 -1
- package/package.json +5 -5
- package/src/browser/quick-open-workspace.ts +8 -4
- package/src/browser/workspace-frontend-module.ts +4 -2
- package/src/browser/workspace-service.ts +29 -4
- package/src/node/default-workspace-server.spec.ts +19 -8
- package/src/node/default-workspace-server.ts +28 -6
- package/src/node/workspace-backend-module.ts +7 -2
package/README.md
CHANGED
|
@@ -26,5 +26,6 @@ The `@theia/workspace` extension provides functionality and services to handle w
|
|
|
26
26
|
- [一 (Secondary) GNU General Public License, version 2 with the GNU Classpath Exception](https://projects.eclipse.org/license/secondary-gpl-2.0-cp)
|
|
27
27
|
|
|
28
28
|
## Trademark
|
|
29
|
+
|
|
29
30
|
"Theia" is a trademark of the Eclipse Foundation
|
|
30
|
-
https://www.eclipse.org/theia
|
|
31
|
+
<https://www.eclipse.org/theia>
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { LabelProvider, QuickInputService, QuickInputButton } from '@theia/core/lib/browser';
|
|
2
2
|
import { EnvVariablesServer } from '@theia/core/lib/common/env-variables';
|
|
3
|
-
import { WorkspaceService } from './workspace-service';
|
|
3
|
+
import { WorkspaceOpenHandlerContribution, WorkspaceService } from './workspace-service';
|
|
4
|
+
import { ContributionProvider } from '@theia/core/lib/common';
|
|
4
5
|
import { UntitledWorkspaceService } from '../common/untitled-workspace-service';
|
|
5
6
|
export declare class QuickOpenWorkspace {
|
|
6
7
|
protected opened: boolean;
|
|
@@ -9,6 +10,7 @@ export declare class QuickOpenWorkspace {
|
|
|
9
10
|
protected readonly labelProvider: LabelProvider;
|
|
10
11
|
protected readonly envServer: EnvVariablesServer;
|
|
11
12
|
protected untitledWorkspaceService: UntitledWorkspaceService;
|
|
13
|
+
protected readonly workspaceOpenHandlers: ContributionProvider<WorkspaceOpenHandlerContribution>;
|
|
12
14
|
protected readonly removeRecentWorkspaceButton: QuickInputButton;
|
|
13
15
|
open(workspaces: string[]): Promise<void>;
|
|
14
16
|
select(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quick-open-workspace.d.ts","sourceRoot":"","sources":["../../src/browser/quick-open-workspace.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAiB,aAAa,EAAE,iBAAiB,EAAE,gBAAgB,EAAsB,MAAM,yBAAyB,CAAC;AAChI,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"quick-open-workspace.d.ts","sourceRoot":"","sources":["../../src/browser/quick-open-workspace.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAiB,aAAa,EAAE,iBAAiB,EAAE,gBAAgB,EAAsB,MAAM,yBAAyB,CAAC;AAChI,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,gCAAgC,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEzF,OAAO,EAAE,oBAAoB,EAAa,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAMhF,qBACa,kBAAkB;IAC3B,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC;IAEa,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IACrE,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IACzD,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAC3C,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC;IAC3C,SAAS,CAAC,wBAAwB,EAAE,wBAAwB,CAAC;IAG/F,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,oBAAoB,CAAC,gCAAgC,CAAC,CAAC;IAEjG,SAAS,CAAC,QAAQ,CAAC,2BAA2B,EAAE,gBAAgB,CAG9D;IAEI,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IA2C/C,MAAM,IAAI,IAAI;CAQjB"}
|
|
@@ -32,7 +32,7 @@ let QuickOpenWorkspace = class QuickOpenWorkspace {
|
|
|
32
32
|
};
|
|
33
33
|
}
|
|
34
34
|
async open(workspaces) {
|
|
35
|
-
var _a;
|
|
35
|
+
var _a, _b, _c, _d;
|
|
36
36
|
const homeDirUri = await this.envServer.getHomeDirUri();
|
|
37
37
|
const home = new uri_1.default(homeDirUri).path.fsPath();
|
|
38
38
|
const items = [{
|
|
@@ -41,7 +41,8 @@ let QuickOpenWorkspace = class QuickOpenWorkspace {
|
|
|
41
41
|
}];
|
|
42
42
|
for (const workspace of workspaces) {
|
|
43
43
|
const uri = new uri_1.default(workspace);
|
|
44
|
-
const label =
|
|
44
|
+
const label = (_c = await ((_b = (_a = this.workspaceOpenHandlers.getContributions()
|
|
45
|
+
.find(handler => handler.getWorkspaceLabel && handler.canHandle(uri))) === null || _a === void 0 ? void 0 : _a.getWorkspaceLabel) === null || _b === void 0 ? void 0 : _b.call(_a, uri))) !== null && _c !== void 0 ? _c : uri.path.base;
|
|
45
46
|
if (!label || this.untitledWorkspaceService.isUntitledWorkspace(uri)) {
|
|
46
47
|
continue; // skip temporary workspace files & empty workspace names
|
|
47
48
|
}
|
|
@@ -58,7 +59,7 @@ let QuickOpenWorkspace = class QuickOpenWorkspace {
|
|
|
58
59
|
}
|
|
59
60
|
});
|
|
60
61
|
}
|
|
61
|
-
(
|
|
62
|
+
(_d = this.quickInputService) === null || _d === void 0 ? void 0 : _d.showQuickPick(items, {
|
|
62
63
|
placeholder: common_1.nls.localize('theia/workspace/openRecentPlaceholder', 'Type the name of the workspace you want to open'),
|
|
63
64
|
onDidTriggerItemButton: async (context) => {
|
|
64
65
|
const resource = context.item.resource;
|
|
@@ -100,6 +101,11 @@ tslib_1.__decorate([
|
|
|
100
101
|
(0, inversify_1.inject)(untitled_workspace_service_1.UntitledWorkspaceService),
|
|
101
102
|
tslib_1.__metadata("design:type", untitled_workspace_service_1.UntitledWorkspaceService)
|
|
102
103
|
], QuickOpenWorkspace.prototype, "untitledWorkspaceService", void 0);
|
|
104
|
+
tslib_1.__decorate([
|
|
105
|
+
(0, inversify_1.inject)(common_1.ContributionProvider),
|
|
106
|
+
(0, inversify_1.named)(workspace_service_1.WorkspaceOpenHandlerContribution),
|
|
107
|
+
tslib_1.__metadata("design:type", Object)
|
|
108
|
+
], QuickOpenWorkspace.prototype, "workspaceOpenHandlers", void 0);
|
|
103
109
|
exports.QuickOpenWorkspace = QuickOpenWorkspace = tslib_1.__decorate([
|
|
104
110
|
(0, inversify_1.injectable)()
|
|
105
111
|
], QuickOpenWorkspace);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quick-open-workspace.js","sourceRoot":"","sources":["../../src/browser/quick-open-workspace.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;;;;AAEhF,
|
|
1
|
+
{"version":3,"file":"quick-open-workspace.js","sourceRoot":"","sources":["../../src/browser/quick-open-workspace.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-frontend-module.d.ts","sourceRoot":"","sources":["../../src/browser/workspace-frontend-module.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,eAAe,EAAc,MAAM,8BAA8B,CAAC;;AA0C3E,
|
|
1
|
+
{"version":3,"file":"workspace-frontend-module.d.ts","sourceRoot":"","sources":["../../src/browser/workspace-frontend-module.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,eAAe,EAAc,MAAM,8BAA8B,CAAC;;AA0C3E,wBA6DG"}
|
|
@@ -50,6 +50,7 @@ const canonical_uri_service_1 = require("./canonical-uri-service");
|
|
|
50
50
|
exports.default = new inversify_1.ContainerModule((bind, unbind, isBound, rebind) => {
|
|
51
51
|
(0, workspace_preferences_1.bindWorkspacePreferences)(bind);
|
|
52
52
|
(0, workspace_trust_preferences_1.bindWorkspaceTrustPreferences)(bind);
|
|
53
|
+
(0, common_1.bindContributionProvider)(bind, workspace_service_1.WorkspaceOpenHandlerContribution);
|
|
53
54
|
bind(workspace_service_1.WorkspaceService).toSelf().inSingletonScope();
|
|
54
55
|
bind(browser_1.FrontendApplicationContribution).toService(workspace_service_1.WorkspaceService);
|
|
55
56
|
bind(canonical_uri_service_1.CanonicalUriService).toSelf().inSingletonScope();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-frontend-module.js","sourceRoot":"","sources":["../../src/browser/workspace-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;;AAEhF,4DAA2E;AAC3E,
|
|
1
|
+
{"version":3,"file":"workspace-frontend-module.js","sourceRoot":"","sources":["../../src/browser/workspace-frontend-module.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import { WindowService } from '@theia/core/lib/browser/window/window-service';
|
|
|
4
4
|
import { FrontendApplicationContribution, PreferenceServiceImpl, PreferenceSchemaProvider, LabelProvider } from '@theia/core/lib/browser';
|
|
5
5
|
import { Deferred } from '@theia/core/lib/common/promise-util';
|
|
6
6
|
import { EnvVariablesServer } from '@theia/core/lib/common/env-variables';
|
|
7
|
-
import { ILogger, Disposable, DisposableCollection, Emitter, Event, MaybePromise, MessageService } from '@theia/core';
|
|
7
|
+
import { ILogger, Disposable, DisposableCollection, Emitter, Event, MaybePromise, MessageService, ContributionProvider } from '@theia/core';
|
|
8
8
|
import { WorkspacePreferences } from './workspace-preferences';
|
|
9
9
|
import { FileStat, BaseStat } from '@theia/filesystem/lib/common/files';
|
|
10
10
|
import { FileService } from '@theia/filesystem/lib/browser/file-service';
|
|
@@ -12,10 +12,16 @@ import { WindowTitleService } from '@theia/core/lib/browser/window/window-title-
|
|
|
12
12
|
import { FileSystemPreferences } from '@theia/filesystem/lib/browser';
|
|
13
13
|
import { WorkspaceSchemaUpdater } from './workspace-schema-updater';
|
|
14
14
|
import { IJSONSchema } from '@theia/core/lib/common/json-schema';
|
|
15
|
+
export declare const WorkspaceOpenHandlerContribution: unique symbol;
|
|
16
|
+
export interface WorkspaceOpenHandlerContribution {
|
|
17
|
+
canHandle(uri: URI): MaybePromise<boolean>;
|
|
18
|
+
openWorkspace(uri: URI, options?: WorkspaceInput): MaybePromise<void>;
|
|
19
|
+
getWorkspaceLabel?(uri: URI): MaybePromise<string | undefined>;
|
|
20
|
+
}
|
|
15
21
|
/**
|
|
16
22
|
* The workspace service.
|
|
17
23
|
*/
|
|
18
|
-
export declare class WorkspaceService implements FrontendApplicationContribution {
|
|
24
|
+
export declare class WorkspaceService implements FrontendApplicationContribution, WorkspaceOpenHandlerContribution {
|
|
19
25
|
protected _workspace: FileStat | undefined;
|
|
20
26
|
protected _roots: FileStat[];
|
|
21
27
|
protected deferredRoots: Deferred<FileStat[]>;
|
|
@@ -34,6 +40,7 @@ export declare class WorkspaceService implements FrontendApplicationContribution
|
|
|
34
40
|
protected readonly untitledWorkspaceService: UntitledWorkspaceService;
|
|
35
41
|
protected readonly workspaceFileService: WorkspaceFileService;
|
|
36
42
|
protected readonly windowTitleService: WindowTitleService;
|
|
43
|
+
protected readonly openHandlerContribution: ContributionProvider<WorkspaceOpenHandlerContribution>;
|
|
37
44
|
protected _ready: Deferred<void>;
|
|
38
45
|
get ready(): Promise<void>;
|
|
39
46
|
protected init(): void;
|
|
@@ -88,7 +95,9 @@ export declare class WorkspaceService implements FrontendApplicationContribution
|
|
|
88
95
|
* Opens directory, or recreates a workspace from the file that `uri` points to.
|
|
89
96
|
*/
|
|
90
97
|
open(uri: URI, options?: WorkspaceInput): void;
|
|
91
|
-
protected doOpen(uri: URI, options?: WorkspaceInput): Promise<
|
|
98
|
+
protected doOpen(uri: URI, options?: WorkspaceInput): Promise<void>;
|
|
99
|
+
canHandle(uri: URI): Promise<boolean>;
|
|
100
|
+
openWorkspace(uri: URI, options?: WorkspaceInput): Promise<void>;
|
|
92
101
|
/**
|
|
93
102
|
* Adds root folder(s) to the workspace
|
|
94
103
|
* @param uris URI or URIs of the root folder(s) to add
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-service.d.ts","sourceRoot":"","sources":["../../src/browser/workspace-service.ts"],"names":[],"mappings":"AAiBA,OAAO,GAAG,MAAM,4BAA4B,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAC5F,OAAO,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAC;AAE9E,OAAO,EACH,+BAA+B,EAAE,qBAAqB,EAAmB,wBAAwB,EAAE,aAAa,EACnH,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,cAAc,EAAO,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"workspace-service.d.ts","sourceRoot":"","sources":["../../src/browser/workspace-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
16
|
// *****************************************************************************
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.WorkspaceData = exports.WorkspaceService = void 0;
|
|
18
|
+
exports.WorkspaceData = exports.WorkspaceService = exports.WorkspaceOpenHandlerContribution = void 0;
|
|
19
19
|
const tslib_1 = require("tslib");
|
|
20
20
|
const inversify_1 = require("@theia/core/shared/inversify");
|
|
21
21
|
const uri_1 = require("@theia/core/lib/common/uri");
|
|
@@ -35,6 +35,7 @@ const window_title_service_1 = require("@theia/core/lib/browser/window/window-ti
|
|
|
35
35
|
const browser_2 = require("@theia/filesystem/lib/browser");
|
|
36
36
|
const workspace_schema_updater_1 = require("./workspace-schema-updater");
|
|
37
37
|
const frontend_application_state_1 = require("@theia/core/lib/common/frontend-application-state");
|
|
38
|
+
exports.WorkspaceOpenHandlerContribution = Symbol('WorkspaceOpenHandlerContribution');
|
|
38
39
|
/**
|
|
39
40
|
* The workspace service.
|
|
40
41
|
*/
|
|
@@ -286,6 +287,18 @@ let WorkspaceService = class WorkspaceService {
|
|
|
286
287
|
this.doOpen(uri, options);
|
|
287
288
|
}
|
|
288
289
|
async doOpen(uri, options) {
|
|
290
|
+
for (const handler of [...this.openHandlerContribution.getContributions(), this]) {
|
|
291
|
+
if (await handler.canHandle(uri)) {
|
|
292
|
+
handler.openWorkspace(uri, options);
|
|
293
|
+
return;
|
|
294
|
+
}
|
|
295
|
+
}
|
|
296
|
+
throw new Error(`Could not find a handler to open the workspace with uri ${uri.toString()}.`);
|
|
297
|
+
}
|
|
298
|
+
async canHandle(uri) {
|
|
299
|
+
return uri.scheme === 'file';
|
|
300
|
+
}
|
|
301
|
+
async openWorkspace(uri, options) {
|
|
289
302
|
const stat = await this.toFileStat(uri);
|
|
290
303
|
if (stat) {
|
|
291
304
|
if (!stat.isDirectory && !this.isWorkspaceFile(stat)) {
|
|
@@ -655,6 +668,11 @@ tslib_1.__decorate([
|
|
|
655
668
|
(0, inversify_1.inject)(window_title_service_1.WindowTitleService),
|
|
656
669
|
tslib_1.__metadata("design:type", window_title_service_1.WindowTitleService)
|
|
657
670
|
], WorkspaceService.prototype, "windowTitleService", void 0);
|
|
671
|
+
tslib_1.__decorate([
|
|
672
|
+
(0, inversify_1.inject)(core_1.ContributionProvider),
|
|
673
|
+
(0, inversify_1.named)(exports.WorkspaceOpenHandlerContribution),
|
|
674
|
+
tslib_1.__metadata("design:type", Object)
|
|
675
|
+
], WorkspaceService.prototype, "openHandlerContribution", void 0);
|
|
658
676
|
tslib_1.__decorate([
|
|
659
677
|
(0, inversify_1.postConstruct)(),
|
|
660
678
|
tslib_1.__metadata("design:type", Function),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-service.js","sourceRoot":"","sources":["../../src/browser/workspace-service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workspace-service.js","sourceRoot":"","sources":["../../src/browser/workspace-service.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,4DAAwF;AACxF,oDAA6C;AAC7C,sCAA4F;AAC5F,kFAA8E;AAC9E,0DAAoE;AACpE,qDAEiC;AACjC,sEAA+D;AAC/D,wEAA0E;AAC1E,sCAAiJ;AACjJ,mEAA+D;AAC/D,4CAA4C;AAC5C,8CAA8C;AAC9C,8DAAwE;AACxE,6EAAyE;AACzE,8FAAyF;AACzF,2DAAsE;AACtE,yEAAqF;AAErF,kGAA+E;AAElE,QAAA,gCAAgC,GAAG,MAAM,CAAC,kCAAkC,CAAC,CAAC;AAQ3F;;GAEG;AAEI,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAAtB;QAIO,WAAM,GAAe,EAAE,CAAC;QACxB,kBAAa,GAAG,IAAI,uBAAQ,EAAc,CAAC;QAkD3C,WAAM,GAAG,IAAI,uBAAQ,EAAQ,CAAC;QAyFrB,6BAAwB,GAAG,IAAI,cAAO,EAAc,CAAC;QAKrD,sCAAiC,GAAG,IAAI,cAAO,EAAwB,CAAC;QAKxE,yBAAoB,GAAG,IAAI,2BAAoB,EAAE,CAAC;QAwalD,iBAAY,GAAG,IAAI,GAAG,EAAsB,CAAC;IAmGpE,CAAC;IA7mBG,IAAI,KAAK;QACL,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;IAC/B,CAAC;IAGS,IAAI;QACV,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC;IAES,KAAK,CAAC,MAAM;QAClB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;QACxD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAClD,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAEhC,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE;YACtC,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACxF,IAAI,CAAC,eAAe,EAAE,CAAC;YAC3B,CAAC;QACL,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE;YAC3C,IAAI,KAAK,CAAC,cAAc,KAAK,sBAAsB,EAAE,CAAC;gBAClD,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC/B,CAAC;QACL,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;IAED;;;;;;;;;OASG;IACO,sBAAsB;QAC5B,OAAO,IAAI,CAAC,wBAAwB,EAAE,CAAC;IAC3C,CAAC;IAES,KAAK,CAAC,wBAAwB;QAEpC,kFAAkF;QAClF,kEAAkE;QAClE,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,4BAAmB,EAAE,EAAE,CAAC;YACrD,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,EAAE,CAAC;YAC1B,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,uEAAuE;QACvE,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,2CAA2C;YAC3C,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5D,MAAM,YAAY,GAAG,IAAI,aAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACnE,IAAI,aAAmC,CAAC;YACxC,IAAI,CAAC;gBACD,aAAa,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YACjE,CAAC;YAAC,MAAM,CAAC,CAAC,CAAC;YACX,IAAI,aAAa,IAAI,CAAC,aAAa,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,EAAE,CAAC;gBACtF,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,+BAA+B,YAAY,EAAE,CAAC,CAAC;gBACzE,OAAO,SAAS,CAAC;YACrB,CAAC;YACD,OAAO,YAAY,CAAC,QAAQ,EAAE,CAAC;QACnC,CAAC;aAAM,CAAC;YACJ,oEAAoE;YACpE,6CAA6C;YAC7C,OAAO,IAAI,CAAC,MAAM,CAAC,4BAA4B,EAAE,CAAC;QACtD,CAAC;IACL,CAAC;IAED;;OAEG;IACO,cAAc,CAAC,aAAqB;QAC1C,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC;IACpD,CAAC;IAED,IAAI,KAAK;QACL,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;IACtC,CAAC;IACD,WAAW;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IACD,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAGD,IAAI,kBAAkB;QAClB,OAAO,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC;IAC/C,CAAC;IAGD,IAAI,0BAA0B;QAC1B,OAAO,IAAI,CAAC,iCAAiC,CAAC,KAAK,CAAC;IACxD,CAAC;IAGS,KAAK,CAAC,YAAY,CAAC,aAAmC;QAC5D,IAAI,IAAI,CAAC,UAAU,IAAI,aAAa;YAChC,IAAI,CAAC,UAAU,CAAC,QAAQ,KAAK,aAAa,CAAC,QAAQ;YACnD,IAAI,CAAC,UAAU,CAAC,KAAK,KAAK,aAAa,CAAC,KAAK;YAC7C,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,aAAa,CAAC,IAAI;YAC3C,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,aAAa,CAAC,IAAI,EAAE,CAAC;YAC9C,OAAO;QACX,CAAC;QACD,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,CAAC;QACpC,IAAI,CAAC,UAAU,GAAG,aAAa,CAAC;QAChC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;YACrC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;gBACzB,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC5D,IAAI,CAAC,iCAAiC,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACjE,CAAC;YACD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;QAC5B,CAAC;QACD,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,IAAI,CAAC,MAAM,CAAC,4BAA4B,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC3G,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;IACjC,CAAC;IAES,KAAK,CAAC,eAAe;QAC3B,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACzB,IAAI,CAAC,UAAU,EAAE,CAAC;IACtB,CAAC;IAES,KAAK,CAAC,WAAW;QACvB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC3C,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,IAAI,QAAQ,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClE,YAAY,GAAG,IAAI,CAAC;QACxB,CAAC;aAAM,CAAC;YACJ,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC7B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC;oBAChF,YAAY,GAAG,IAAI,CAAC;oBACpB,MAAM;gBACV,CAAC;YACL,CAAC;QACL,CAAC;QACD,IAAI,YAAY,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;YACvB,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,4BAA4B;YACrE,IAAI,CAAC,aAAa,GAAG,IAAI,uBAAQ,EAAc,CAAC;YAChD,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACxC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpD,CAAC;IACL,CAAC;IAES,KAAK,CAAC,YAAY;QACxB,MAAM,KAAK,GAAe,EAAE,CAAC;QAC7B,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;gBAC9B,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC7B,CAAC;YAED,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;YAC5D,IAAI,aAAa,EAAE,CAAC;gBAChB,KAAK,MAAM,EAAE,IAAI,EAAE,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;oBAC3C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;oBAC3C,IAAI,KAAK,EAAE,CAAC;wBACR,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACtB,CAAC;yBAAM,CAAC;wBACJ,KAAK,CAAC,IAAI,CAAC,gBAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;oBACnC,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAES,KAAK,CAAC,wBAAwB;QACpC,IAAI,IAAI,CAAC,UAAU,IAAI,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7E,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;gBAC9B,OAAO;oBACH,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;iBAC3D,CAAC;YACN,CAAC;iBAAM,IAAI,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC/C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;gBACnE,MAAM,eAAe,GAAG,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC9D,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;gBAChD,IAAI,IAAI,IAAI,aAAa,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;oBACjC,OAAO,aAAa,CAAC,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACzD,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qDAAqD,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,2CAA2C,CAAC,CAAC;YACvK,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+BAA+B,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YACvG,CAAC;QACL,CAAC;IACL,CAAC;IAES,WAAW;QACjB,IAAI,QAA4B,CAAC;QACjC,IAAI,QAA4B,CAAC;QACjC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC1D,IAAI,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;gBACxC,IAAI,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACrD,MAAM,QAAQ,GAAG,UAAG,CAAC,iBAAiB,CAAC,sBAAsB,CAAC,CAAC;oBAC/D,QAAQ,GAAG,QAAQ,CAAC;oBACpB,QAAQ,GAAG,QAAQ,CAAC;gBACxB,CAAC;qBAAM,CAAC;oBACJ,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC9D,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC5D,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,QAAQ,GAAG,WAAW,CAAC;gBACvB,QAAQ,GAAG,QAAQ,CAAC;YACxB,CAAC;QACL,CAAC;QACD,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC;YAC3B,QAAQ;YACR,QAAQ;SACX,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,MAAM;QACF,IAAI,CAAC,MAAM,CAAC,4BAA4B,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACzG,CAAC;IAED,KAAK,CAAC,gBAAgB;QAClB,OAAO,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,GAAW;QACnC,OAAO,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;IAClD,CAAC;IAED;;;OAGG;IACH,IAAI,MAAM;QACN,OAAO,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;IAC7B,CAAC;IAED;;;OAGG;IACH,IAAI,0BAA0B;QAC1B,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;IAC3D,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,GAAQ,EAAE,OAAwB;QACnC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAC9B,CAAC;IAES,KAAK,CAAC,MAAM,CAAC,GAAQ,EAAE,OAAwB;QACrD,KAAK,MAAM,OAAO,IAAI,CAAC,GAAG,IAAI,CAAC,uBAAuB,CAAC,gBAAgB,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC;YAC/E,IAAI,MAAM,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC/B,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;gBACpC,OAAO;YACX,CAAC;QACL,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,2DAA2D,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAClG,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,GAAQ;QACpB,OAAO,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,GAAQ,EAAE,OAAwB;QAClD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACxC,IAAI,IAAI,EAAE,CAAC;YACP,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnD,MAAM,OAAO,GAAG,0BAA0B,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;gBAChE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACnC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;YAC7B,CAAC;YACD,+JAA+J;YAC/J,mHAAmH;YACnH,MAAM,IAAI,CAAC,KAAK,CAAC;YACjB,MAAM,EAAE,cAAc,EAAE,GAAG;gBACvB,cAAc,EAAE,IAAI,CAAC,WAAW,CAAC,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM;gBAC5E,GAAG,OAAO;aACb,CAAC;YACF,MAAM,IAAI,CAAC,MAAM,CAAC,4BAA4B,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC/D,IAAI,cAAc,EAAE,CAAC;gBACjB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YAC3B,CAAC;YACD,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC;YACxE,OAAO;QACX,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,+EAA+E,CAAC,CAAC;IACrG,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,OAAO,CAAC,IAAiB;QAC3B,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC;IAC5D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,IAAW;QACzB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,iFAAiF,CAAC,CAAC;QACvG,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;YAC5D,IAAI,CAAC,UAAU,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,EAC3D,aAAa,CAAC,kBAAkB,CAC5B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC,EAC9F,aAAa,CAChB,CACJ,CAAC;YACF,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QACjC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAAa,EAAE,WAAoB,EAAE,GAAG,UAAiB;QACvE,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;YAClD,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC5D,MAAM,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACnC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBACnB,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;YAC/D,CAAC;QACL,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACvG,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC5B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBAClB,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACf,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACpB,CAAC;QACL,CAAC;QACD,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC;QACjE,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YACpC,OAAO,EAAE,CAAC;QACd,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAC1D,MAAM,OAAO,GAAG,aAAa,CAAC,kBAAkB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QACrE,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACxD,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,aAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,oBAAoB;QACtB,MAAM,YAAY,GAAG,IAAI,aAAG,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,CAAC,CAAC;QAC7E,OAAO,IAAI,CAAC,wBAAwB,CAAC,uBAAuB,CACxD,YAAY,EACZ,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAC3D,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,UAAG,CAAC,QAAQ,CACvC,kCAAkC,EAClC,iGAAiG,EACjG,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CACpD,CACJ,CAAC;IACN,CAAC;IAES,KAAK,CAAC,kBAAkB,CAAC,aAAmC,EAAE,aAA4B;QAChG,IAAI,aAAa,EAAE,CAAC;YAChB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,mBAAmB,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC;YAC7F,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;YAC/F,MAAM,MAAM,GAAG,WAAW,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACnD,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC7D,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC5D,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACP,IAAI,MAAM,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,uCAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/D,IAAI,CAAC,aAAa,CAAC,iBAAiB,EAAE,CAAC;YACvC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;YAC5B,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;YAEvB,MAAM,IAAI,CAAC,MAAM,CAAC,4BAA4B,CAAC,EAAE,CAAC,CAAC;YACnD,IAAI,CAAC,YAAY,EAAE,CAAC;QACxB,CAAC;IACL,CAAC;IAED;;OAEG;IACO,KAAK,CAAC,WAAW,CAAC,GAA6B;QACrD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAC5C,IAAI,QAAQ,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;YACnC,OAAO,QAAQ,CAAC;QACpB,CAAC;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAED;;OAEG;IACO,KAAK,CAAC,UAAU,CAAC,GAA6B;QACpD,IAAI,CAAC,GAAG,EAAE,CAAC;YACP,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,IAAI,MAAM,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC5B,IAAI,CAAC;YACD,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvB,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACjC,CAAC;YACD,MAAM,aAAa,GAAG,IAAI,aAAG,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;YACtD,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QACzD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,SAAS,CAAC;QACrB,CAAC;IACL,CAAC;IAES,UAAU,CAAC,GAAa,EAAE,OAAwB;QACxD,MAAM,aAAa,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QAEnD,IAAI,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC;gBACD,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;YAC/C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,2FAA2F;gBAC3F,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;gBACtB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;YACxE,CAAC;QACL,CAAC;IACL,CAAC;IAES,YAAY,CAAC,OAAwB;QAC3C,kDAAkD;QAClD,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAChC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAClE,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;QAC5B,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;IAChC,CAAC;IAES,aAAa,CAAC,aAAqB,EAAE,OAAwB;QACnE,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC1C,GAAG,CAAC,IAAI,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC;QACpC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;IACrD,CAAC;IAES,oBAAoB,CAAC,OAAwB;QACnD,OAAO,OAAO,KAAK,SAAS,IAAI,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC;IAC7D,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,YAAY,CAAC,KAAe;QAC9B,MAAM,IAAI,CAAC,KAAK,CAAC;QACjB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC;gBAC1B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACvB,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;oBAClC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBACtD,IAAI,MAAM,EAAE,CAAC;wBACT,OAAO,MAAM,CAAC;oBAClB,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;;OAIG;IACH,IAAI,KAAK;QACL,OAAO,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;IAC7D,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,IAAI,CAAC,GAAmB;;QAC1B,MAAM,QAAQ,GAAG,GAAG,YAAY,aAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC;QACzD,IAAI,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3C,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC5C,CAAC;QACD,MAAM,aAAa,GAAkB,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QACnE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACd,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC9E,IAAI,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,EAAE,yBAAe,CAAC,MAAM,CAAC,EAAE,CAAC;oBAChE,SAAS;gBACb,CAAC;gBACD,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBACnD,IAAI,WAAW,IAAI,WAAW,CAAC,cAAc,EAAE,CAAC;oBAC5C,aAAa,CAAC,QAAS,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,cAAc,CAAC;gBAC5D,CAAC;YACL,CAAC;QACL,CAAC;QACD,IAAI,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC3C,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC,CAAC;QACpE,IAAI,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC;QACzG,MAAM,IAAI,CAAC,MAAM,CAAC,4BAA4B,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;QACpE,6EAA6E;QAC7E,MAAM,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAA,IAAI,CAAC,SAAS,0CAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,SAAU,CAAC,QAAQ,CAAC;QAChG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,QAAQ,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;QAC7D,CAAC;QACD,IAAI,CAAC,iCAAiC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtD,CAAC;IAIS,KAAK,CAAC,UAAU;QACtB,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACtE,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC;YACvD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACrB,OAAO,CAAC,OAAO,EAAE,CAAC;YACtB,CAAC;QACL,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC7B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;IACL,CAAC;IAES,KAAK,CAAC,mBAAmB;QAC/B,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC;YAC/C,OAAO,CAAC,OAAO,EAAE,CAAC;QACtB,CAAC;QACD,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;IAC5B,CAAC;IAES,KAAK,CAAC,SAAS,CAAC,IAAc;QACpC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACxC,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAChC,OAAO;QACX,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,aAAG,CAAC,MAAM,CAAC,EAAE;YACpD,SAAS,EAAE,IAAI;YACf,QAAQ;SACX,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,2BAAoB,CAClD,OAAO,EACP,iBAAU,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAC5D,CAAC,CAAC;IACP,CAAC;IAES,WAAW,CAAC,GAAW;QAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,sBAAsB,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;QAChF,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;IACtE,CAAC;IAED;;;;;OAKG;IACH,mBAAmB,CAAC,GAAoB;QACpC,IAAI,CAAC,GAAG,EAAE,CAAC;YACP,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC;YACnC,IAAI,IAAI,EAAE,CAAC;gBACP,OAAO,IAAI,CAAC,QAAQ,CAAC;YACzB,CAAC;YACD,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,MAAM,QAAQ,GAAU,EAAE,CAAC;QAC3B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACpC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC9B,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM,IAAI,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC3E,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC3B,CAAC;QACL,CAAC;QACD,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,MAAM,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACrF,CAAC;IAED,iBAAiB,CAAC,IAAW;QACzB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACnF,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED;;;;OAIG;IACO,eAAe,CAAC,SAAyB;QAC/C,OAAO,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IAChE,CAAC;IAED,mBAAmB,CAAC,SAAe;QAC/B,OAAO,IAAI,CAAC,wBAAwB,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;IACxE,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,OAAa;QAC9B,OAAO,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,mBAAmB,CAAC,OAAO,CAAC,IAAI,IAAI,aAAG,CAAC,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACpJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,YAAY,CAAC,GAAW,EAAE,MAAoB;QAChD,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5D,CAAC;CACJ,CAAA;AArqBY,4CAAgB;AAQN;IADlB,IAAA,kBAAM,EAAC,0BAAW,CAAC;sCACY,0BAAW;qDAAC;AAGzB;IADlB,IAAA,kBAAM,EAAC,wBAAe,CAAC;;gDACmB;AAGxB;IADlB,IAAA,kBAAM,EAAC,8BAAa,CAAC;;uDAC0B;AAGtC;IADT,IAAA,kBAAM,EAAC,cAAO,CAAC;;gDACU;AAGhB;IADT,IAAA,kBAAM,EAAC,4CAAoB,CAAC;;qDACe;AAGzB;IADlB,IAAA,kBAAM,EAAC,+BAAqB,CAAC;sCACK,+BAAqB;wDAAC;AAGtC;IADlB,IAAA,kBAAM,EAAC,kCAAwB,CAAC;sCACE,kCAAwB;wDAAC;AAGzC;IADlB,IAAA,kBAAM,EAAC,kCAAkB,CAAC;;2DAC8B;AAGtC;IADlB,IAAA,kBAAM,EAAC,qBAAc,CAAC;sCACY,qBAAc;wDAAC;AAG/B;IADlB,IAAA,kBAAM,EAAC,uBAAa,CAAC;sCACY,uBAAa;uDAAC;AAG7B;IADlB,IAAA,kBAAM,EAAC,+BAAqB,CAAC;;uDAC0B;AAGrC;IADlB,IAAA,kBAAM,EAAC,iDAAsB,CAAC;sCACG,iDAAsB;uDAAC;AAGtC;IADlB,IAAA,kBAAM,EAAC,iCAAwB,CAAC;sCACY,iCAAwB;kEAAC;AAGnD;IADlB,IAAA,kBAAM,EAAC,6BAAoB,CAAC;sCACY,6BAAoB;8DAAC;AAG3C;IADlB,IAAA,kBAAM,EAAC,yCAAkB,CAAC;sCACY,yCAAkB;4DAAC;AAGvC;IADlB,IAAA,kBAAM,EAAC,2BAAoB,CAAC;IAAE,IAAA,iBAAK,EAAC,wCAAgC,CAAC;;iEAC6B;AAQzF;IADT,IAAA,yBAAa,GAAE;;;;4CAGf;2BA/DQ,gBAAgB;IAD5B,IAAA,sBAAU,GAAE;GACA,gBAAgB,CAqqB5B;AAiBD,IAAiB,aAAa,CA4D7B;AA5DD,WAAiB,aAAa;IAC1B,MAAM,cAAc,GAAG,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,0CAAe,CAAC,CAAC;IAE1D,SAAgB,EAAE,CAAC,IAAa;QAC5B,OAAO,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAFe,gBAAE,KAEjB,CAAA;IAED,SAAgB,kBAAkB,CAAC,OAA8B,EAAE,gBAAyC;QACxG,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;QAChC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,IAAI,OAAO,OAAO,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;gBACpB,OAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YACnF,CAAC;iBAAM,CAAC;gBACO,OAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;YAC7D,CAAC;QACL,CAAC;QACD,MAAM,IAAI,GAAkB;YACxB,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;SAC3D,CAAC;QACF,IAAI,gBAAgB,EAAE,CAAC;YACnB,OAAO,gBAAgB,CAAC,OAAO,CAAC;YAChC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;QAC1C,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAjBe,gCAAkB,qBAiBjC,CAAA;IAED,SAAgB,mBAAmB,CAAC,IAAmB,EAAE,aAAwB;QAC7E,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,MAAM,gBAAgB,GAAG,IAAI,aAAG,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC5G,KAAK,MAAM,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,MAAM,SAAS,GAAG,IAAI,aAAG,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACnD,MAAM,GAAG,GAAG,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YACxD,IAAI,GAAG,EAAE,CAAC;gBACN,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACJ,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC1C,CAAC;QACL,CAAC;QACD,OAAO,kBAAkB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IAChD,CAAC;IAbe,iCAAmB,sBAalC,CAAA;IAED,SAAgB,mBAAmB,CAAC,IAAmB,EAAE,aAAwB;;QAC7E,IAAI,aAAa,EAAE,CAAC;YAChB,MAAM,OAAO,GAAa,EAAE,CAAC;YAC7B,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBAChC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;gBACzB,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC9B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACvB,CAAC;qBAAM,CAAC;oBACJ,MAAM,YAAY,GAAG,MAAA,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,0CAAE,QAAQ,EAAE,CAAC;oBAC1G,IAAI,YAAY,EAAE,CAAC;wBACf,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;oBAC1C,CAAC;gBACL,CAAC;YAEL,CAAC;YACD,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;QAClE,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAlBe,iCAAmB,sBAkBlC,CAAA;AACL,CAAC,EA5DgB,aAAa,6BAAb,aAAa,QA4D7B"}
|
|
@@ -5,6 +5,13 @@ import { CliContribution } from '@theia/core/lib/node/cli';
|
|
|
5
5
|
import { Deferred } from '@theia/core/lib/common/promise-util';
|
|
6
6
|
import { WorkspaceServer, UntitledWorkspaceService } from '../common';
|
|
7
7
|
import { EnvVariablesServer } from '@theia/core/lib/common/env-variables';
|
|
8
|
+
import URI from '@theia/core/lib/common/uri';
|
|
9
|
+
import { ContributionProvider } from '@theia/core';
|
|
10
|
+
export declare const WorkspaceHandlerContribution: unique symbol;
|
|
11
|
+
export interface WorkspaceHandlerContribution {
|
|
12
|
+
canHandle(uri: URI): boolean;
|
|
13
|
+
workspaceStillExists(uri: URI): Promise<boolean>;
|
|
14
|
+
}
|
|
8
15
|
export declare class WorkspaceCliContribution implements CliContribution {
|
|
9
16
|
protected readonly envVariablesServer: EnvVariablesServer;
|
|
10
17
|
protected readonly untitledWorkspaceService: UntitledWorkspaceService;
|
|
@@ -24,6 +31,7 @@ export declare class DefaultWorkspaceServer implements WorkspaceServer, BackendA
|
|
|
24
31
|
protected readonly cliParams: WorkspaceCliContribution;
|
|
25
32
|
protected readonly envServer: EnvVariablesServer;
|
|
26
33
|
protected readonly untitledWorkspaceService: UntitledWorkspaceService;
|
|
34
|
+
protected readonly workspaceHandlers: ContributionProvider<WorkspaceHandlerContribution>;
|
|
27
35
|
protected init(): void;
|
|
28
36
|
protected doInit(): Promise<void>;
|
|
29
37
|
onStart(): Promise<void>;
|
|
@@ -52,6 +60,10 @@ export declare class DefaultWorkspaceServer implements WorkspaceServer, BackendA
|
|
|
52
60
|
*/
|
|
53
61
|
protected removeOldUntitledWorkspaces(): Promise<void>;
|
|
54
62
|
}
|
|
63
|
+
export declare class FileWorkspaceHandlerContribution implements WorkspaceHandlerContribution {
|
|
64
|
+
canHandle(uri: URI): boolean;
|
|
65
|
+
workspaceStillExists(uri: URI): Promise<boolean>;
|
|
66
|
+
}
|
|
55
67
|
export interface RecentWorkspacePathsData {
|
|
56
68
|
recentRoots: string[];
|
|
57
69
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default-workspace-server.d.ts","sourceRoot":"","sources":["../../src/node/default-workspace-server.ts"],"names":[],"mappings":";AAiBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAIlD,OAAO,EAAW,8BAA8B,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"default-workspace-server.d.ts","sourceRoot":"","sources":["../../src/node/default-workspace-server.ts"],"names":[],"mappings":";AAiBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAIlD,OAAO,EAAW,8BAA8B,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,GAAG,MAAM,4BAA4B,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAY,MAAM,aAAa,CAAC;AAE7D,eAAO,MAAM,4BAA4B,eAAyC,CAAC;AACnF,MAAM,WAAW,4BAA4B;IACzC,SAAS,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC;IAC7B,oBAAoB,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACpD;AACD,qBACa,wBAAyB,YAAW,eAAe;IAEhC,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IACpD,SAAS,CAAC,QAAQ,CAAC,wBAAwB,EAAE,wBAAwB,CAAC;IAExG,aAAa,+BAAsC;IAEnD,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,IAAI;IAO3B,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAcxD,SAAS,CAAC,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;cAIpC,kCAAkC,CAAC,kBAAkB,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;CAoBhH;AAED,qBACa,sBAAuB,YAAW,eAAe,EAAE,8BAA8B;IAE1F,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,GAAG,SAAS,CAAC,CAAkB;IAC9D;;;OAGG;IACH,SAAS,CAAC,+BAA+B,SAAM;IAG/C,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,wBAAwB,CAAC;IAGvD,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC;IAGjD,SAAS,CAAC,QAAQ,CAAC,wBAAwB,EAAE,wBAAwB,CAAC;IAGtE,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,4BAA4B,CAAC,CAAC;IAGzF,SAAS,CAAC,IAAI,IAAI,IAAI;cAIN,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAKjC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;cAId,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAWtD,4BAA4B,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAIrD,4BAA4B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ3D,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYpD,mBAAmB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;cAU9B,mBAAmB,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;cAW/D,sBAAsB,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAKrE;;;OAGG;cACa,eAAe,CAAC,IAAI,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC;cAK9D,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOxE;;OAEG;cACa,oCAAoC,IAAI,OAAO,CAAC,wBAAwB,GAAG,SAAS,CAAC;cAMrF,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;cAQ7D,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAKrD;;;OAGG;cACa,2BAA2B,IAAI,OAAO,CAAC,IAAI,CAAC;CAU/D;AAED,qBACa,gCAAiC,YAAW,4BAA4B;IAEjF,SAAS,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO;IAItB,oBAAoB,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC;CAGzD;AAED,MAAM,WAAW,wBAAwB;IACrC,WAAW,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,yBAAiB,wBAAwB,CAAC;IACtC;;;;OAIG;IACH,SAAgB,MAAM,CAAC,IAAI,EAAE,OAAO,GAAG,wBAAwB,GAAG,SAAS,CAO1E;CACJ"}
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
16
|
// *****************************************************************************
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.RecentWorkspacePathsData = exports.DefaultWorkspaceServer = exports.WorkspaceCliContribution = void 0;
|
|
18
|
+
exports.RecentWorkspacePathsData = exports.FileWorkspaceHandlerContribution = exports.DefaultWorkspaceServer = exports.WorkspaceCliContribution = exports.WorkspaceHandlerContribution = void 0;
|
|
19
19
|
const tslib_1 = require("tslib");
|
|
20
20
|
const path = require("path");
|
|
21
21
|
const fs = require("@theia/core/shared/fs-extra");
|
|
@@ -27,6 +27,7 @@ const common_1 = require("../common");
|
|
|
27
27
|
const env_variables_1 = require("@theia/core/lib/common/env-variables");
|
|
28
28
|
const uri_1 = require("@theia/core/lib/common/uri");
|
|
29
29
|
const core_1 = require("@theia/core");
|
|
30
|
+
exports.WorkspaceHandlerContribution = Symbol('workspaceHandlerContribution');
|
|
30
31
|
let WorkspaceCliContribution = class WorkspaceCliContribution {
|
|
31
32
|
constructor() {
|
|
32
33
|
this.workspaceRoot = new promise_util_1.Deferred();
|
|
@@ -146,11 +147,12 @@ let DefaultWorkspaceServer = class DefaultWorkspaceServer {
|
|
|
146
147
|
}
|
|
147
148
|
async workspaceStillExist(workspaceRootUri) {
|
|
148
149
|
const uri = new uri_1.default(workspaceRootUri);
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
150
|
+
for (const handler of this.workspaceHandlers.getContributions()) {
|
|
151
|
+
if (handler.canHandle(uri)) {
|
|
152
|
+
return handler.workspaceStillExists(uri);
|
|
153
|
+
}
|
|
152
154
|
}
|
|
153
|
-
return
|
|
155
|
+
return false;
|
|
154
156
|
}
|
|
155
157
|
async getWorkspaceURIFromCli() {
|
|
156
158
|
const arg = await this.cliParams.workspaceRoot.promise;
|
|
@@ -217,6 +219,11 @@ tslib_1.__decorate([
|
|
|
217
219
|
(0, inversify_1.inject)(common_1.UntitledWorkspaceService),
|
|
218
220
|
tslib_1.__metadata("design:type", common_1.UntitledWorkspaceService)
|
|
219
221
|
], DefaultWorkspaceServer.prototype, "untitledWorkspaceService", void 0);
|
|
222
|
+
tslib_1.__decorate([
|
|
223
|
+
(0, inversify_1.inject)(core_1.ContributionProvider),
|
|
224
|
+
(0, inversify_1.named)(exports.WorkspaceHandlerContribution),
|
|
225
|
+
tslib_1.__metadata("design:type", Object)
|
|
226
|
+
], DefaultWorkspaceServer.prototype, "workspaceHandlers", void 0);
|
|
220
227
|
tslib_1.__decorate([
|
|
221
228
|
(0, inversify_1.postConstruct)(),
|
|
222
229
|
tslib_1.__metadata("design:type", Function),
|
|
@@ -226,6 +233,18 @@ tslib_1.__decorate([
|
|
|
226
233
|
exports.DefaultWorkspaceServer = DefaultWorkspaceServer = tslib_1.__decorate([
|
|
227
234
|
(0, inversify_1.injectable)()
|
|
228
235
|
], DefaultWorkspaceServer);
|
|
236
|
+
let FileWorkspaceHandlerContribution = class FileWorkspaceHandlerContribution {
|
|
237
|
+
canHandle(uri) {
|
|
238
|
+
return uri.scheme === 'file';
|
|
239
|
+
}
|
|
240
|
+
async workspaceStillExists(uri) {
|
|
241
|
+
return fs.pathExists(uri.path.fsPath());
|
|
242
|
+
}
|
|
243
|
+
};
|
|
244
|
+
exports.FileWorkspaceHandlerContribution = FileWorkspaceHandlerContribution;
|
|
245
|
+
exports.FileWorkspaceHandlerContribution = FileWorkspaceHandlerContribution = tslib_1.__decorate([
|
|
246
|
+
(0, inversify_1.injectable)()
|
|
247
|
+
], FileWorkspaceHandlerContribution);
|
|
229
248
|
var RecentWorkspacePathsData;
|
|
230
249
|
(function (RecentWorkspacePathsData) {
|
|
231
250
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default-workspace-server.js","sourceRoot":"","sources":["../../src/node/default-workspace-server.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,6BAA6B;AAE7B,kDAAkD;AAClD,4CAA4C;AAC5C,
|
|
1
|
+
{"version":3,"file":"default-workspace-server.js","sourceRoot":"","sources":["../../src/node/default-workspace-server.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,8 @@ const default_workspace_server_1 = require("./default-workspace-server");
|
|
|
24
24
|
const chai_1 = require("chai");
|
|
25
25
|
const temp = require("temp");
|
|
26
26
|
const fs = require("fs");
|
|
27
|
+
const core_1 = require("@theia/core");
|
|
28
|
+
const mock_logger_1 = require("@theia/core/lib/common/test/mock-logger");
|
|
27
29
|
describe('DefaultWorkspaceServer', function () {
|
|
28
30
|
describe('getRecentWorkspaces()', async () => {
|
|
29
31
|
let workspaceServer;
|
|
@@ -36,11 +38,19 @@ describe('DefaultWorkspaceServer', function () {
|
|
|
36
38
|
recentWorkspaceFile = node_1.FileUri.fsPath(tmpConfigDir.resolve('recentworkspace.json'));
|
|
37
39
|
// create a container with the necessary bindings for the DefaultWorkspaceServer
|
|
38
40
|
const container = new inversify_1.Container();
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
41
|
+
const containerModule = new inversify_1.ContainerModule(bind => {
|
|
42
|
+
/* Mock logger binding*/
|
|
43
|
+
bind(core_1.ILogger).to(mock_logger_1.MockLogger);
|
|
44
|
+
(0, core_1.bindContributionProvider)(bind, default_workspace_server_1.WorkspaceHandlerContribution);
|
|
45
|
+
bind(default_workspace_server_1.FileWorkspaceHandlerContribution).toSelf().inSingletonScope();
|
|
46
|
+
bind(default_workspace_server_1.WorkspaceHandlerContribution).toService(default_workspace_server_1.FileWorkspaceHandlerContribution);
|
|
47
|
+
bind(default_workspace_server_1.WorkspaceCliContribution).toSelf().inSingletonScope();
|
|
48
|
+
bind(default_workspace_server_1.DefaultWorkspaceServer).toSelf().inSingletonScope();
|
|
49
|
+
bind(common_1.WorkspaceFileService).toSelf().inSingletonScope();
|
|
50
|
+
bind(common_1.UntitledWorkspaceService).toSelf().inSingletonScope();
|
|
51
|
+
bind(env_variables_1.EnvVariablesServer).toConstantValue(new mock_env_variables_server_1.MockEnvVariablesServerImpl(tmpConfigDir));
|
|
52
|
+
});
|
|
53
|
+
container.load(containerModule);
|
|
44
54
|
workspaceServer = container.get(default_workspace_server_1.DefaultWorkspaceServer);
|
|
45
55
|
});
|
|
46
56
|
it('should return empty list of workspaces if no recent workspaces file is existing', async function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default-workspace-server.spec.js","sourceRoot":"","sources":["../../src/node/default-workspace-server.spec.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,mDAAmD;AACnD,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,
|
|
1
|
+
{"version":3,"file":"default-workspace-server.spec.js","sourceRoot":"","sources":["../../src/node/default-workspace-server.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-backend-module.d.ts","sourceRoot":"","sources":["../../src/node/workspace-backend-module.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;;AAO/D,
|
|
1
|
+
{"version":3,"file":"workspace-backend-module.d.ts","sourceRoot":"","sources":["../../src/node/workspace-backend-module.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;;AAO/D,wBAmBG"}
|
|
@@ -29,6 +29,9 @@ exports.default = new inversify_1.ContainerModule(bind => {
|
|
|
29
29
|
bind(node_1.BackendApplicationContribution).toService(common_2.WorkspaceServer);
|
|
30
30
|
bind(common_2.UntitledWorkspaceService).toSelf().inSingletonScope();
|
|
31
31
|
bind(common_2.WorkspaceFileService).toSelf().inSingletonScope();
|
|
32
|
+
(0, common_1.bindContributionProvider)(bind, default_workspace_server_1.WorkspaceHandlerContribution);
|
|
33
|
+
bind(default_workspace_server_1.FileWorkspaceHandlerContribution).toSelf().inSingletonScope();
|
|
34
|
+
bind(default_workspace_server_1.WorkspaceHandlerContribution).toService(default_workspace_server_1.FileWorkspaceHandlerContribution);
|
|
32
35
|
bind(common_1.ConnectionHandler).toDynamicValue(ctx => new common_1.RpcConnectionHandler(common_2.workspacePath, () => ctx.container.get(common_2.WorkspaceServer))).inSingletonScope();
|
|
33
36
|
});
|
|
34
37
|
//# sourceMappingURL=workspace-backend-module.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-backend-module.js","sourceRoot":"","sources":["../../src/node/workspace-backend-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;;AAEhF,4DAA+D;AAC/D,
|
|
1
|
+
{"version":3,"file":"workspace-backend-module.js","sourceRoot":"","sources":["../../src/node/workspace-backend-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;;AAEhF,4DAA+D;AAC/D,mDAA2G;AAC3G,sCAA2G;AAC3G,yEAA8J;AAC9J,kDAA2D;AAC3D,+CAAsE;AAEtE,kBAAe,IAAI,2BAAe,CAAC,IAAI,CAAC,EAAE;IACtC,IAAI,CAAC,mDAAwB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAC3D,IAAI,CAAC,qBAAe,CAAC,CAAC,SAAS,CAAC,mDAAwB,CAAC,CAAC;IAC1D,IAAI,CAAC,iDAAsB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IACzD,IAAI,CAAC,wBAAe,CAAC,CAAC,SAAS,CAAC,iDAAsB,CAAC,CAAC;IACxD,IAAI,CAAC,qCAA8B,CAAC,CAAC,SAAS,CAAC,wBAAe,CAAC,CAAC;IAChE,IAAI,CAAC,iCAAwB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAC3D,IAAI,CAAC,6BAAoB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAEvD,IAAA,iCAAwB,EAAC,IAAI,EAAE,uDAA4B,CAAC,CAAC;IAE7D,IAAI,CAAC,2DAAgC,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IACnE,IAAI,CAAC,uDAA4B,CAAC,CAAC,SAAS,CAAC,2DAAgC,CAAC,CAAC;IAE/E,IAAI,CAAC,0BAAiB,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CACzC,IAAI,6BAAoB,CAAC,sBAAa,EAAE,GAAG,EAAE,CACzC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,wBAAe,CAAC,CACrC,CACJ,CAAC,gBAAgB,EAAE,CAAC;AACzB,CAAC,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theia/workspace",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.57.0-next.22+35d458a96",
|
|
4
4
|
"description": "Theia - Workspace Extension",
|
|
5
5
|
"dependencies": {
|
|
6
|
-
"@theia/core": "1.
|
|
7
|
-
"@theia/filesystem": "1.
|
|
8
|
-
"@theia/variable-resolver": "1.
|
|
6
|
+
"@theia/core": "1.57.0-next.22+35d458a96",
|
|
7
|
+
"@theia/filesystem": "1.57.0-next.22+35d458a96",
|
|
8
|
+
"@theia/variable-resolver": "1.57.0-next.22+35d458a96",
|
|
9
9
|
"jsonc-parser": "^2.2.0",
|
|
10
10
|
"tslib": "^2.6.2",
|
|
11
11
|
"valid-filename": "^2.0.1"
|
|
@@ -52,5 +52,5 @@
|
|
|
52
52
|
"nyc": {
|
|
53
53
|
"extends": "../../configs/nyc.json"
|
|
54
54
|
},
|
|
55
|
-
"gitHead": "
|
|
55
|
+
"gitHead": "35d458a961212de264d9579305d984147fa55618"
|
|
56
56
|
}
|
|
@@ -14,12 +14,12 @@
|
|
|
14
14
|
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
15
15
|
// *****************************************************************************
|
|
16
16
|
|
|
17
|
-
import { injectable, inject, optional } from '@theia/core/shared/inversify';
|
|
17
|
+
import { injectable, inject, optional, named } from '@theia/core/shared/inversify';
|
|
18
18
|
import { QuickPickItem, LabelProvider, QuickInputService, QuickInputButton, QuickPickSeparator } from '@theia/core/lib/browser';
|
|
19
19
|
import { EnvVariablesServer } from '@theia/core/lib/common/env-variables';
|
|
20
|
-
import { WorkspaceService } from './workspace-service';
|
|
20
|
+
import { WorkspaceOpenHandlerContribution, WorkspaceService } from './workspace-service';
|
|
21
21
|
import URI from '@theia/core/lib/common/uri';
|
|
22
|
-
import { nls, Path } from '@theia/core/lib/common';
|
|
22
|
+
import { ContributionProvider, nls, Path } from '@theia/core/lib/common';
|
|
23
23
|
import { UntitledWorkspaceService } from '../common/untitled-workspace-service';
|
|
24
24
|
|
|
25
25
|
interface RecentlyOpenedPick extends QuickPickItem {
|
|
@@ -36,6 +36,9 @@ export class QuickOpenWorkspace {
|
|
|
36
36
|
@inject(EnvVariablesServer) protected readonly envServer: EnvVariablesServer;
|
|
37
37
|
@inject(UntitledWorkspaceService) protected untitledWorkspaceService: UntitledWorkspaceService;
|
|
38
38
|
|
|
39
|
+
@inject(ContributionProvider) @named(WorkspaceOpenHandlerContribution)
|
|
40
|
+
protected readonly workspaceOpenHandlers: ContributionProvider<WorkspaceOpenHandlerContribution>;
|
|
41
|
+
|
|
39
42
|
protected readonly removeRecentWorkspaceButton: QuickInputButton = {
|
|
40
43
|
iconClass: 'codicon-remove-close',
|
|
41
44
|
tooltip: nls.localizeByDefault('Remove from Recently Opened')
|
|
@@ -51,7 +54,8 @@ export class QuickOpenWorkspace {
|
|
|
51
54
|
|
|
52
55
|
for (const workspace of workspaces) {
|
|
53
56
|
const uri = new URI(workspace);
|
|
54
|
-
const label =
|
|
57
|
+
const label = await this.workspaceOpenHandlers.getContributions()
|
|
58
|
+
.find(handler => handler.getWorkspaceLabel && handler.canHandle(uri))?.getWorkspaceLabel?.(uri) ?? uri.path.base;
|
|
55
59
|
if (!label || this.untitledWorkspaceService.isUntitledWorkspace(uri)) {
|
|
56
60
|
continue; // skip temporary workspace files & empty workspace names
|
|
57
61
|
}
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
// *****************************************************************************
|
|
16
16
|
|
|
17
17
|
import { ContainerModule, interfaces } from '@theia/core/shared/inversify';
|
|
18
|
-
import { CommandContribution, MenuContribution } from '@theia/core/lib/common';
|
|
18
|
+
import { CommandContribution, MenuContribution, bindContributionProvider } from '@theia/core/lib/common';
|
|
19
19
|
import { WebSocketConnectionProvider, FrontendApplicationContribution, KeybindingContribution } from '@theia/core/lib/browser';
|
|
20
20
|
import {
|
|
21
21
|
OpenFileDialogFactory,
|
|
@@ -32,7 +32,7 @@ import { LabelProviderContribution } from '@theia/core/lib/browser/label-provide
|
|
|
32
32
|
import { VariableContribution } from '@theia/variable-resolver/lib/browser';
|
|
33
33
|
import { WorkspaceServer, workspacePath, UntitledWorkspaceService, WorkspaceFileService } from '../common';
|
|
34
34
|
import { WorkspaceFrontendContribution } from './workspace-frontend-contribution';
|
|
35
|
-
import { WorkspaceService } from './workspace-service';
|
|
35
|
+
import { WorkspaceOpenHandlerContribution, WorkspaceService } from './workspace-service';
|
|
36
36
|
import { WorkspaceCommandContribution, FileMenuContribution, EditMenuContribution } from './workspace-commands';
|
|
37
37
|
import { WorkspaceVariableContribution } from './workspace-variable-contribution';
|
|
38
38
|
import { WorkspaceStorageService } from './workspace-storage-service';
|
|
@@ -59,9 +59,11 @@ import { CanonicalUriService } from './canonical-uri-service';
|
|
|
59
59
|
export default new ContainerModule((bind: interfaces.Bind, unbind: interfaces.Unbind, isBound: interfaces.IsBound, rebind: interfaces.Rebind) => {
|
|
60
60
|
bindWorkspacePreferences(bind);
|
|
61
61
|
bindWorkspaceTrustPreferences(bind);
|
|
62
|
+
bindContributionProvider(bind, WorkspaceOpenHandlerContribution);
|
|
62
63
|
|
|
63
64
|
bind(WorkspaceService).toSelf().inSingletonScope();
|
|
64
65
|
bind(FrontendApplicationContribution).toService(WorkspaceService);
|
|
66
|
+
|
|
65
67
|
bind(CanonicalUriService).toSelf().inSingletonScope();
|
|
66
68
|
bind(WorkspaceServer).toDynamicValue(ctx => {
|
|
67
69
|
const provider = ctx.container.get(WebSocketConnectionProvider);
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
15
15
|
// *****************************************************************************
|
|
16
16
|
|
|
17
|
-
import { injectable, inject, postConstruct } from '@theia/core/shared/inversify';
|
|
17
|
+
import { injectable, inject, postConstruct, named } from '@theia/core/shared/inversify';
|
|
18
18
|
import URI from '@theia/core/lib/common/uri';
|
|
19
19
|
import { WorkspaceServer, UntitledWorkspaceService, WorkspaceFileService } from '../common';
|
|
20
20
|
import { WindowService } from '@theia/core/lib/browser/window/window-service';
|
|
@@ -24,7 +24,7 @@ import {
|
|
|
24
24
|
} from '@theia/core/lib/browser';
|
|
25
25
|
import { Deferred } from '@theia/core/lib/common/promise-util';
|
|
26
26
|
import { EnvVariablesServer } from '@theia/core/lib/common/env-variables';
|
|
27
|
-
import { ILogger, Disposable, DisposableCollection, Emitter, Event, MaybePromise, MessageService, nls } from '@theia/core';
|
|
27
|
+
import { ILogger, Disposable, DisposableCollection, Emitter, Event, MaybePromise, MessageService, nls, ContributionProvider } from '@theia/core';
|
|
28
28
|
import { WorkspacePreferences } from './workspace-preferences';
|
|
29
29
|
import * as jsoncparser from 'jsonc-parser';
|
|
30
30
|
import * as Ajv from '@theia/core/shared/ajv';
|
|
@@ -36,11 +36,19 @@ import { workspaceSchema, WorkspaceSchemaUpdater } from './workspace-schema-upda
|
|
|
36
36
|
import { IJSONSchema } from '@theia/core/lib/common/json-schema';
|
|
37
37
|
import { StopReason } from '@theia/core/lib/common/frontend-application-state';
|
|
38
38
|
|
|
39
|
+
export const WorkspaceOpenHandlerContribution = Symbol('WorkspaceOpenHandlerContribution');
|
|
40
|
+
|
|
41
|
+
export interface WorkspaceOpenHandlerContribution {
|
|
42
|
+
canHandle(uri: URI): MaybePromise<boolean>;
|
|
43
|
+
openWorkspace(uri: URI, options?: WorkspaceInput): MaybePromise<void>;
|
|
44
|
+
getWorkspaceLabel?(uri: URI): MaybePromise<string | undefined>;
|
|
45
|
+
}
|
|
46
|
+
|
|
39
47
|
/**
|
|
40
48
|
* The workspace service.
|
|
41
49
|
*/
|
|
42
50
|
@injectable()
|
|
43
|
-
export class WorkspaceService implements FrontendApplicationContribution {
|
|
51
|
+
export class WorkspaceService implements FrontendApplicationContribution, WorkspaceOpenHandlerContribution {
|
|
44
52
|
|
|
45
53
|
protected _workspace: FileStat | undefined;
|
|
46
54
|
|
|
@@ -92,6 +100,9 @@ export class WorkspaceService implements FrontendApplicationContribution {
|
|
|
92
100
|
@inject(WindowTitleService)
|
|
93
101
|
protected readonly windowTitleService: WindowTitleService;
|
|
94
102
|
|
|
103
|
+
@inject(ContributionProvider) @named(WorkspaceOpenHandlerContribution)
|
|
104
|
+
protected readonly openHandlerContribution: ContributionProvider<WorkspaceOpenHandlerContribution>;
|
|
105
|
+
|
|
95
106
|
protected _ready = new Deferred<void>();
|
|
96
107
|
get ready(): Promise<void> {
|
|
97
108
|
return this._ready.promise;
|
|
@@ -350,7 +361,21 @@ export class WorkspaceService implements FrontendApplicationContribution {
|
|
|
350
361
|
this.doOpen(uri, options);
|
|
351
362
|
}
|
|
352
363
|
|
|
353
|
-
protected async doOpen(uri: URI, options?: WorkspaceInput): Promise<
|
|
364
|
+
protected async doOpen(uri: URI, options?: WorkspaceInput): Promise<void> {
|
|
365
|
+
for (const handler of [...this.openHandlerContribution.getContributions(), this]) {
|
|
366
|
+
if (await handler.canHandle(uri)) {
|
|
367
|
+
handler.openWorkspace(uri, options);
|
|
368
|
+
return;
|
|
369
|
+
}
|
|
370
|
+
}
|
|
371
|
+
throw new Error(`Could not find a handler to open the workspace with uri ${uri.toString()}.`);
|
|
372
|
+
}
|
|
373
|
+
|
|
374
|
+
async canHandle(uri: URI): Promise<boolean> {
|
|
375
|
+
return uri.scheme === 'file';
|
|
376
|
+
}
|
|
377
|
+
|
|
378
|
+
async openWorkspace(uri: URI, options?: WorkspaceInput): Promise<void> {
|
|
354
379
|
const stat = await this.toFileStat(uri);
|
|
355
380
|
if (stat) {
|
|
356
381
|
if (!stat.isDirectory && !this.isWorkspaceFile(stat)) {
|
|
@@ -14,16 +14,18 @@
|
|
|
14
14
|
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
15
15
|
// *****************************************************************************
|
|
16
16
|
|
|
17
|
-
import { Container } from '@theia/core/shared/inversify';
|
|
17
|
+
import { Container, ContainerModule } from '@theia/core/shared/inversify';
|
|
18
18
|
import { MockEnvVariablesServerImpl } from '@theia/core/lib/browser/test/mock-env-variables-server';
|
|
19
19
|
import { EnvVariablesServer } from '@theia/core/lib/common/env-variables';
|
|
20
20
|
import URI from '@theia/core/lib/common/uri';
|
|
21
21
|
import { FileUri } from '@theia/core/lib/node';
|
|
22
22
|
import { WorkspaceFileService, UntitledWorkspaceService } from '../common';
|
|
23
|
-
import { DefaultWorkspaceServer, WorkspaceCliContribution } from './default-workspace-server';
|
|
23
|
+
import { DefaultWorkspaceServer, FileWorkspaceHandlerContribution, WorkspaceCliContribution, WorkspaceHandlerContribution } from './default-workspace-server';
|
|
24
24
|
import { expect } from 'chai';
|
|
25
25
|
import * as temp from 'temp';
|
|
26
26
|
import * as fs from 'fs';
|
|
27
|
+
import { ILogger, bindContributionProvider } from '@theia/core';
|
|
28
|
+
import { MockLogger } from '@theia/core/lib/common/test/mock-logger';
|
|
27
29
|
|
|
28
30
|
describe('DefaultWorkspaceServer', function (): void {
|
|
29
31
|
|
|
@@ -40,12 +42,21 @@ describe('DefaultWorkspaceServer', function (): void {
|
|
|
40
42
|
|
|
41
43
|
// create a container with the necessary bindings for the DefaultWorkspaceServer
|
|
42
44
|
const container = new Container();
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
45
|
+
const containerModule = new ContainerModule(bind => {
|
|
46
|
+
/* Mock logger binding*/
|
|
47
|
+
bind(ILogger).to(MockLogger);
|
|
48
|
+
|
|
49
|
+
bindContributionProvider(bind, WorkspaceHandlerContribution);
|
|
50
|
+
bind(FileWorkspaceHandlerContribution).toSelf().inSingletonScope();
|
|
51
|
+
bind(WorkspaceHandlerContribution).toService(FileWorkspaceHandlerContribution);
|
|
52
|
+
bind(WorkspaceCliContribution).toSelf().inSingletonScope();
|
|
53
|
+
bind(DefaultWorkspaceServer).toSelf().inSingletonScope();
|
|
54
|
+
bind(WorkspaceFileService).toSelf().inSingletonScope();
|
|
55
|
+
bind(UntitledWorkspaceService).toSelf().inSingletonScope();
|
|
56
|
+
bind(EnvVariablesServer).toConstantValue(new MockEnvVariablesServerImpl(tmpConfigDir));
|
|
57
|
+
});
|
|
58
|
+
|
|
59
|
+
container.load(containerModule);
|
|
49
60
|
workspaceServer = container.get(DefaultWorkspaceServer);
|
|
50
61
|
});
|
|
51
62
|
|
|
@@ -18,15 +18,20 @@ import * as path from 'path';
|
|
|
18
18
|
import * as yargs from '@theia/core/shared/yargs';
|
|
19
19
|
import * as fs from '@theia/core/shared/fs-extra';
|
|
20
20
|
import * as jsoncparser from 'jsonc-parser';
|
|
21
|
-
import { injectable, inject, postConstruct } from '@theia/core/shared/inversify';
|
|
21
|
+
import { injectable, inject, postConstruct, named } from '@theia/core/shared/inversify';
|
|
22
22
|
import { FileUri, BackendApplicationContribution } from '@theia/core/lib/node';
|
|
23
23
|
import { CliContribution } from '@theia/core/lib/node/cli';
|
|
24
24
|
import { Deferred } from '@theia/core/lib/common/promise-util';
|
|
25
25
|
import { WorkspaceServer, UntitledWorkspaceService } from '../common';
|
|
26
26
|
import { EnvVariablesServer } from '@theia/core/lib/common/env-variables';
|
|
27
27
|
import URI from '@theia/core/lib/common/uri';
|
|
28
|
-
import { notEmpty } from '@theia/core';
|
|
28
|
+
import { ContributionProvider, notEmpty } from '@theia/core';
|
|
29
29
|
|
|
30
|
+
export const WorkspaceHandlerContribution = Symbol('workspaceHandlerContribution');
|
|
31
|
+
export interface WorkspaceHandlerContribution {
|
|
32
|
+
canHandle(uri: URI): boolean;
|
|
33
|
+
workspaceStillExists(uri: URI): Promise<boolean>;
|
|
34
|
+
}
|
|
30
35
|
@injectable()
|
|
31
36
|
export class WorkspaceCliContribution implements CliContribution {
|
|
32
37
|
|
|
@@ -101,6 +106,9 @@ export class DefaultWorkspaceServer implements WorkspaceServer, BackendApplicati
|
|
|
101
106
|
@inject(UntitledWorkspaceService)
|
|
102
107
|
protected readonly untitledWorkspaceService: UntitledWorkspaceService;
|
|
103
108
|
|
|
109
|
+
@inject(ContributionProvider) @named(WorkspaceHandlerContribution)
|
|
110
|
+
protected readonly workspaceHandlers: ContributionProvider<WorkspaceHandlerContribution>;
|
|
111
|
+
|
|
104
112
|
@postConstruct()
|
|
105
113
|
protected init(): void {
|
|
106
114
|
this.doInit();
|
|
@@ -162,11 +170,13 @@ export class DefaultWorkspaceServer implements WorkspaceServer, BackendApplicati
|
|
|
162
170
|
|
|
163
171
|
protected async workspaceStillExist(workspaceRootUri: string): Promise<boolean> {
|
|
164
172
|
const uri = new URI(workspaceRootUri);
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
173
|
+
|
|
174
|
+
for (const handler of this.workspaceHandlers.getContributions()) {
|
|
175
|
+
if (handler.canHandle(uri)) {
|
|
176
|
+
return handler.workspaceStillExists(uri);
|
|
177
|
+
}
|
|
168
178
|
}
|
|
169
|
-
return
|
|
179
|
+
return false;
|
|
170
180
|
}
|
|
171
181
|
|
|
172
182
|
protected async getWorkspaceURIFromCli(): Promise<string | undefined> {
|
|
@@ -228,6 +238,18 @@ export class DefaultWorkspaceServer implements WorkspaceServer, BackendApplicati
|
|
|
228
238
|
}
|
|
229
239
|
}
|
|
230
240
|
|
|
241
|
+
@injectable()
|
|
242
|
+
export class FileWorkspaceHandlerContribution implements WorkspaceHandlerContribution {
|
|
243
|
+
|
|
244
|
+
canHandle(uri: URI): boolean {
|
|
245
|
+
return uri.scheme === 'file';
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
async workspaceStillExists(uri: URI): Promise<boolean> {
|
|
249
|
+
return fs.pathExists(uri.path.fsPath());
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
|
|
231
253
|
export interface RecentWorkspacePathsData {
|
|
232
254
|
recentRoots: string[];
|
|
233
255
|
}
|
|
@@ -15,9 +15,9 @@
|
|
|
15
15
|
// *****************************************************************************
|
|
16
16
|
|
|
17
17
|
import { ContainerModule } from '@theia/core/shared/inversify';
|
|
18
|
-
import { ConnectionHandler, RpcConnectionHandler } from '@theia/core/lib/common';
|
|
18
|
+
import { ConnectionHandler, RpcConnectionHandler, bindContributionProvider } from '@theia/core/lib/common';
|
|
19
19
|
import { WorkspaceServer, workspacePath, UntitledWorkspaceService, WorkspaceFileService } from '../common';
|
|
20
|
-
import { DefaultWorkspaceServer, WorkspaceCliContribution } from './default-workspace-server';
|
|
20
|
+
import { DefaultWorkspaceServer, FileWorkspaceHandlerContribution, WorkspaceCliContribution, WorkspaceHandlerContribution } from './default-workspace-server';
|
|
21
21
|
import { CliContribution } from '@theia/core/lib/node/cli';
|
|
22
22
|
import { BackendApplicationContribution } from '@theia/core/lib/node';
|
|
23
23
|
|
|
@@ -30,6 +30,11 @@ export default new ContainerModule(bind => {
|
|
|
30
30
|
bind(UntitledWorkspaceService).toSelf().inSingletonScope();
|
|
31
31
|
bind(WorkspaceFileService).toSelf().inSingletonScope();
|
|
32
32
|
|
|
33
|
+
bindContributionProvider(bind, WorkspaceHandlerContribution);
|
|
34
|
+
|
|
35
|
+
bind(FileWorkspaceHandlerContribution).toSelf().inSingletonScope();
|
|
36
|
+
bind(WorkspaceHandlerContribution).toService(FileWorkspaceHandlerContribution);
|
|
37
|
+
|
|
33
38
|
bind(ConnectionHandler).toDynamicValue(ctx =>
|
|
34
39
|
new RpcConnectionHandler(workspacePath, () =>
|
|
35
40
|
ctx.container.get(WorkspaceServer)
|