@opensumi/ide-workspace 2.12.1-next-079c1930
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/browser/index.d.ts +8 -0
- package/lib/browser/index.d.ts.map +1 -0
- package/lib/browser/index.js +36 -0
- package/lib/browser/index.js.map +1 -0
- package/lib/browser/workspace-contextkey.d.ts +8 -0
- package/lib/browser/workspace-contextkey.d.ts.map +1 -0
- package/lib/browser/workspace-contextkey.js +25 -0
- package/lib/browser/workspace-contextkey.js.map +1 -0
- package/lib/browser/workspace-contribution.d.ts +16 -0
- package/lib/browser/workspace-contribution.d.ts.map +1 -0
- package/lib/browser/workspace-contribution.js +97 -0
- package/lib/browser/workspace-contribution.js.map +1 -0
- package/lib/browser/workspace-preferences.d.ts +15 -0
- package/lib/browser/workspace-preferences.d.ts.map +1 -0
- package/lib/browser/workspace-preferences.js +35 -0
- package/lib/browser/workspace-preferences.js.map +1 -0
- package/lib/browser/workspace-service.d.ts +150 -0
- package/lib/browser/workspace-service.d.ts.map +1 -0
- package/lib/browser/workspace-service.js +675 -0
- package/lib/browser/workspace-service.js.map +1 -0
- package/lib/browser/workspace-storage-service.d.ts +18 -0
- package/lib/browser/workspace-storage-service.d.ts.map +1 -0
- package/lib/browser/workspace-storage-service.js +62 -0
- package/lib/browser/workspace-storage-service.js.map +1 -0
- package/lib/browser/workspace-variable-contribution.d.ts +11 -0
- package/lib/browser/workspace-variable-contribution.d.ts.map +1 -0
- package/lib/browser/workspace-variable-contribution.js +119 -0
- package/lib/browser/workspace-variable-contribution.js.map +1 -0
- package/lib/common/index.d.ts +2 -0
- package/lib/common/index.d.ts.map +1 -0
- package/lib/common/index.js +5 -0
- package/lib/common/index.js.map +1 -0
- package/lib/common/mocks/index.d.ts +2 -0
- package/lib/common/mocks/index.d.ts.map +1 -0
- package/lib/common/mocks/index.js +5 -0
- package/lib/common/mocks/index.js.map +1 -0
- package/lib/common/mocks/workspace-service.d.ts +44 -0
- package/lib/common/mocks/workspace-service.d.ts.map +1 -0
- package/lib/common/mocks/workspace-service.js +108 -0
- package/lib/common/mocks/workspace-service.js.map +1 -0
- package/lib/common/workspace-defination.d.ts +106 -0
- package/lib/common/workspace-defination.d.ts.map +1 -0
- package/lib/common/workspace-defination.js +145 -0
- package/lib/common/workspace-defination.js.map +1 -0
- package/lib/index.d.ts +2 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +5 -0
- package/lib/index.js.map +1 -0
- package/package.json +27 -0
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Provider } from '@opensumi/di';
|
|
2
|
+
import { BrowserModule } from '@opensumi/ide-core-browser';
|
|
3
|
+
import { injectWorkspacePreferences } from './workspace-preferences';
|
|
4
|
+
export declare class WorkspaceModule extends BrowserModule {
|
|
5
|
+
providers: Provider[];
|
|
6
|
+
preferences: typeof injectWorkspacePreferences;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,aAAa,EAAgB,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAQrE,qBACa,eAAgB,SAAQ,aAAa;IAChD,SAAS,EAAE,QAAQ,EAAE,CAWnB;IAEF,WAAW,oCAA8B;CAC1C"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WorkspaceModule = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const common_1 = require("../common");
|
|
6
|
+
const workspace_contribution_1 = require("./workspace-contribution");
|
|
7
|
+
const ide_core_browser_1 = require("@opensumi/ide-core-browser");
|
|
8
|
+
const workspace_preferences_1 = require("./workspace-preferences");
|
|
9
|
+
const common_2 = require("../common");
|
|
10
|
+
const workspace_service_1 = require("./workspace-service");
|
|
11
|
+
const workspace_storage_service_1 = require("./workspace-storage-service");
|
|
12
|
+
const workspace_variable_contribution_1 = require("./workspace-variable-contribution");
|
|
13
|
+
const pkgJson = require('../../package.json');
|
|
14
|
+
let WorkspaceModule = class WorkspaceModule extends ide_core_browser_1.BrowserModule {
|
|
15
|
+
constructor() {
|
|
16
|
+
super(...arguments);
|
|
17
|
+
this.providers = [
|
|
18
|
+
{
|
|
19
|
+
token: common_2.IWorkspaceService,
|
|
20
|
+
useClass: workspace_service_1.WorkspaceService,
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
token: common_1.IWorkspaceStorageService,
|
|
24
|
+
useClass: workspace_storage_service_1.WorkspaceStorageService,
|
|
25
|
+
},
|
|
26
|
+
workspace_contribution_1.WorkspaceContribution,
|
|
27
|
+
workspace_variable_contribution_1.WorkspaceVariableContribution,
|
|
28
|
+
];
|
|
29
|
+
this.preferences = workspace_preferences_1.injectWorkspacePreferences;
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
WorkspaceModule = (0, tslib_1.__decorate)([
|
|
33
|
+
(0, ide_core_browser_1.EffectDomain)(pkgJson.name)
|
|
34
|
+
], WorkspaceModule);
|
|
35
|
+
exports.WorkspaceModule = WorkspaceModule;
|
|
36
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":";;;;AAAA,sCAAqD;AACrD,qEAAiE;AAEjE,iEAAyE;AACzE,mEAAqE;AACrE,sCAA8C;AAC9C,2DAAuD;AACvD,2EAAsE;AACtE,uFAAkF;AAElF,MAAM,OAAO,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAG9C,IAAa,eAAe,GAA5B,MAAa,eAAgB,SAAQ,gCAAa;IAAlD;;QACE,cAAS,GAAe;YACtB;gBACE,KAAK,EAAE,0BAAiB;gBACxB,QAAQ,EAAE,oCAAgB;aAC3B;YACD;gBACE,KAAK,EAAE,iCAAwB;gBAC/B,QAAQ,EAAE,mDAAuB;aAClC;YACD,8CAAqB;YACrB,+DAA6B;SAC9B,CAAC;QAEF,gBAAW,GAAG,kDAA0B,CAAC;IAC3C,CAAC;CAAA,CAAA;AAfY,eAAe;IAD3B,IAAA,+BAAY,EAAC,OAAO,CAAC,IAAI,CAAC;GACd,eAAe,CAe3B;AAfY,0CAAe"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IContextKeyService, IContextKey } from '@opensumi/ide-core-browser';
|
|
2
|
+
export declare class WorkspaceContextKey {
|
|
3
|
+
private readonly globalContextKeyService;
|
|
4
|
+
readonly workbenchStateContextKey: IContextKey<string>;
|
|
5
|
+
readonly workspaceFolderCountContextKey: IContextKey<number>;
|
|
6
|
+
constructor(contextKeyService: IContextKeyService);
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=workspace-contextkey.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workspace-contextkey.d.ts","sourceRoot":"","sources":["../../src/browser/workspace-contextkey.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAG7E,qBACa,mBAAmB;IAG9B,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAqB;IAE7D,SAAgB,wBAAwB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9D,SAAgB,8BAA8B,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;gBAE5C,iBAAiB,EAAE,kBAAkB;CAK9D"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WorkspaceContextKey = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const di_1 = require("@opensumi/di");
|
|
6
|
+
const ide_core_browser_1 = require("@opensumi/ide-core-browser");
|
|
7
|
+
const contextkey_1 = require("@opensumi/ide-core-browser/lib/contextkey");
|
|
8
|
+
let WorkspaceContextKey = class WorkspaceContextKey {
|
|
9
|
+
constructor(contextKeyService) {
|
|
10
|
+
contextKeyService = contextKeyService || this.globalContextKeyService;
|
|
11
|
+
this.workbenchStateContextKey = contextkey_1.WorkbenchState.bind(contextKeyService);
|
|
12
|
+
this.workspaceFolderCountContextKey = contextkey_1.WorkspaceFolderCount.bind(contextKeyService);
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
(0, tslib_1.__decorate)([
|
|
16
|
+
(0, di_1.Autowired)(ide_core_browser_1.IContextKeyService),
|
|
17
|
+
(0, tslib_1.__metadata)("design:type", Object)
|
|
18
|
+
], WorkspaceContextKey.prototype, "globalContextKeyService", void 0);
|
|
19
|
+
WorkspaceContextKey = (0, tslib_1.__decorate)([
|
|
20
|
+
(0, di_1.Injectable)(),
|
|
21
|
+
(0, tslib_1.__param)(0, (0, di_1.Optional)()),
|
|
22
|
+
(0, tslib_1.__metadata)("design:paramtypes", [Object])
|
|
23
|
+
], WorkspaceContextKey);
|
|
24
|
+
exports.WorkspaceContextKey = WorkspaceContextKey;
|
|
25
|
+
//# sourceMappingURL=workspace-contextkey.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workspace-contextkey.js","sourceRoot":"","sources":["../../src/browser/workspace-contextkey.ts"],"names":[],"mappings":";;;;AAAA,qCAA+D;AAC/D,iEAA6E;AAC7E,0EAAiG;AAGjG,IAAa,mBAAmB,GAAhC,MAAa,mBAAmB;IAQ9B,YAAwB,iBAAqC;QAC3D,iBAAiB,GAAG,iBAAiB,IAAI,IAAI,CAAC,uBAAuB,CAAC;QACtE,IAAI,CAAC,wBAAwB,GAAG,2BAAc,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACvE,IAAI,CAAC,8BAA8B,GAAG,iCAAoB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACrF,CAAC;CACF,CAAA;AAVC;IADC,IAAA,cAAS,EAAC,qCAAkB,CAAC;;oEAC+B;AAHlD,mBAAmB;IAD/B,IAAA,eAAU,GAAE;IASE,wBAAA,IAAA,aAAQ,GAAE,CAAA;;GARZ,mBAAmB,CAa/B;AAbY,kDAAmB"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { CommandRegistry, ClientAppContribution, PreferenceContribution, PreferenceSchema, FsProviderContribution, CommandContribution } from '@opensumi/ide-core-browser';
|
|
2
|
+
import { WorkspaceService } from './workspace-service';
|
|
3
|
+
import { IWindowDialogService } from '@opensumi/ide-overlay';
|
|
4
|
+
import { WorkspaceContextKey } from './workspace-contextkey';
|
|
5
|
+
export declare class WorkspaceContribution implements ClientAppContribution, PreferenceContribution, FsProviderContribution, CommandContribution {
|
|
6
|
+
protected readonly workspaceService: WorkspaceService;
|
|
7
|
+
protected readonly commandRegistry: CommandRegistry;
|
|
8
|
+
protected readonly workspaceContextKey: WorkspaceContextKey;
|
|
9
|
+
protected readonly windowDialogService: IWindowDialogService;
|
|
10
|
+
schema: PreferenceSchema;
|
|
11
|
+
protected initWorkspaceContextKeys(): Promise<void>;
|
|
12
|
+
onStart(): Promise<void>;
|
|
13
|
+
registerCommands(registry: CommandRegistry): void;
|
|
14
|
+
onFileServiceReady(): void;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=workspace-contribution.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workspace-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/workspace-contribution.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,eAAe,EACf,qBAAqB,EAErB,sBAAsB,EACtB,gBAAgB,EAChB,sBAAsB,EACtB,mBAAmB,EAIpB,MAAM,4BAA4B,CAAC;AAIpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE7D,qBACa,qBAAsB,YAAW,qBAAqB,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,mBAAmB;IAGtI,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAGtD,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAGpD,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAG5D,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,oBAAoB,CAAC;IAE7D,MAAM,EAAE,gBAAgB,CAA6B;cAErC,wBAAwB;IAWlC,OAAO;IAIb,gBAAgB,CAAC,QAAQ,EAAE,eAAe;IA+C1C,kBAAkB;CAGnB"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WorkspaceContribution = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const di_1 = require("@opensumi/di");
|
|
6
|
+
const ide_core_browser_1 = require("@opensumi/ide-core-browser");
|
|
7
|
+
const common_1 = require("../common");
|
|
8
|
+
const workspace_preferences_1 = require("./workspace-preferences");
|
|
9
|
+
const workspace_service_1 = require("./workspace-service");
|
|
10
|
+
const ide_overlay_1 = require("@opensumi/ide-overlay");
|
|
11
|
+
const workspace_contextkey_1 = require("./workspace-contextkey");
|
|
12
|
+
let WorkspaceContribution = class WorkspaceContribution {
|
|
13
|
+
constructor() {
|
|
14
|
+
this.schema = workspace_preferences_1.workspacePreferenceSchema;
|
|
15
|
+
}
|
|
16
|
+
async initWorkspaceContextKeys() {
|
|
17
|
+
await this.workspaceService.whenReady;
|
|
18
|
+
const updateWorkspaceFolderCountKey = () => {
|
|
19
|
+
const roots = this.workspaceService.tryGetRoots();
|
|
20
|
+
this.workspaceContextKey.workbenchStateContextKey.set(roots.length > 1 ? 'workspace' : 'folder');
|
|
21
|
+
this.workspaceContextKey.workspaceFolderCountContextKey.set(roots.length);
|
|
22
|
+
};
|
|
23
|
+
updateWorkspaceFolderCountKey();
|
|
24
|
+
this.workspaceService.onWorkspaceLocationChanged(updateWorkspaceFolderCountKey);
|
|
25
|
+
}
|
|
26
|
+
async onStart() {
|
|
27
|
+
this.initWorkspaceContextKeys();
|
|
28
|
+
}
|
|
29
|
+
registerCommands(registry) {
|
|
30
|
+
registry.registerCommand(ide_core_browser_1.WORKSPACE_COMMANDS.ADD_WORKSPACE_FOLDER, {
|
|
31
|
+
execute: async () => {
|
|
32
|
+
const folder = await this.windowDialogService.showOpenDialog({
|
|
33
|
+
canSelectFiles: false,
|
|
34
|
+
canSelectFolders: true,
|
|
35
|
+
canSelectMany: false,
|
|
36
|
+
});
|
|
37
|
+
if (folder && folder.length > 0) {
|
|
38
|
+
await this.workspaceService.addRoot(folder[0]);
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
});
|
|
42
|
+
registry.registerCommand(ide_core_browser_1.WORKSPACE_COMMANDS.SAVE_WORKSPACE_AS_FILE, {
|
|
43
|
+
execute: async () => {
|
|
44
|
+
if (!this.workspaceService.isMultiRootWorkspaceOpened) {
|
|
45
|
+
// 非工作区模式下调用无效
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
const folder = await this.windowDialogService.showSaveDialog({
|
|
49
|
+
saveLabel: (0, ide_core_browser_1.localize)('workspace.saveWorkspaceAsFile'),
|
|
50
|
+
showNameInput: true,
|
|
51
|
+
defaultFileName: `workspace.${common_1.KAITIAN_MULTI_WORKSPACE_EXT}`,
|
|
52
|
+
});
|
|
53
|
+
if (folder) {
|
|
54
|
+
await this.workspaceService.save(folder);
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
});
|
|
58
|
+
registry.registerCommand(ide_core_browser_1.WORKSPACE_COMMANDS.REMOVE_WORKSPACE_FOLDER, {
|
|
59
|
+
execute: async (_, uris) => {
|
|
60
|
+
if (!uris.length || !this.workspaceService.isMultiRootWorkspaceOpened) {
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
const roots = await this.workspaceService.roots;
|
|
64
|
+
const workspaceUris = uris.filter((uri) => {
|
|
65
|
+
return roots.find((file) => file.uri === uri.toString());
|
|
66
|
+
});
|
|
67
|
+
if (workspaceUris.length > 0) {
|
|
68
|
+
await this.workspaceService.removeRoots(workspaceUris);
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
onFileServiceReady() {
|
|
74
|
+
this.workspaceService.init();
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
(0, tslib_1.__decorate)([
|
|
78
|
+
(0, di_1.Autowired)(common_1.IWorkspaceService),
|
|
79
|
+
(0, tslib_1.__metadata)("design:type", workspace_service_1.WorkspaceService)
|
|
80
|
+
], WorkspaceContribution.prototype, "workspaceService", void 0);
|
|
81
|
+
(0, tslib_1.__decorate)([
|
|
82
|
+
(0, di_1.Autowired)(ide_core_browser_1.CommandRegistry),
|
|
83
|
+
(0, tslib_1.__metadata)("design:type", Object)
|
|
84
|
+
], WorkspaceContribution.prototype, "commandRegistry", void 0);
|
|
85
|
+
(0, tslib_1.__decorate)([
|
|
86
|
+
(0, di_1.Autowired)(workspace_contextkey_1.WorkspaceContextKey),
|
|
87
|
+
(0, tslib_1.__metadata)("design:type", workspace_contextkey_1.WorkspaceContextKey)
|
|
88
|
+
], WorkspaceContribution.prototype, "workspaceContextKey", void 0);
|
|
89
|
+
(0, tslib_1.__decorate)([
|
|
90
|
+
(0, di_1.Autowired)(ide_overlay_1.IWindowDialogService),
|
|
91
|
+
(0, tslib_1.__metadata)("design:type", Object)
|
|
92
|
+
], WorkspaceContribution.prototype, "windowDialogService", void 0);
|
|
93
|
+
WorkspaceContribution = (0, tslib_1.__decorate)([
|
|
94
|
+
(0, ide_core_browser_1.Domain)(ide_core_browser_1.ClientAppContribution, ide_core_browser_1.PreferenceContribution, ide_core_browser_1.FsProviderContribution, ide_core_browser_1.CommandContribution)
|
|
95
|
+
], WorkspaceContribution);
|
|
96
|
+
exports.WorkspaceContribution = WorkspaceContribution;
|
|
97
|
+
//# sourceMappingURL=workspace-contribution.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workspace-contribution.js","sourceRoot":"","sources":["../../src/browser/workspace-contribution.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Injector } from '@opensumi/di';
|
|
2
|
+
import { PreferenceProxy, PreferenceSchema } from '@opensumi/ide-core-browser';
|
|
3
|
+
export declare const workspacePreferenceSchema: PreferenceSchema;
|
|
4
|
+
export interface WorkspaceConfiguration {
|
|
5
|
+
'workspace.preserveWindow': boolean;
|
|
6
|
+
'workspace.supportMultiRootWorkspace': boolean;
|
|
7
|
+
}
|
|
8
|
+
export declare const WorkspacePreferences: unique symbol;
|
|
9
|
+
export declare type WorkspacePreferences = PreferenceProxy<WorkspaceConfiguration>;
|
|
10
|
+
export declare function createWorkspacePreferencesProvider(inject: Injector): {
|
|
11
|
+
token: symbol;
|
|
12
|
+
useFactory: () => PreferenceProxy<unknown>;
|
|
13
|
+
};
|
|
14
|
+
export declare function injectWorkspacePreferences(inject: Injector): void;
|
|
15
|
+
//# sourceMappingURL=workspace-preferences.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workspace-preferences.d.ts","sourceRoot":"","sources":["../../src/browser/workspace-preferences.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAEL,eAAe,EAEf,gBAAgB,EACjB,MAAM,4BAA4B,CAAC;AAEpC,eAAO,MAAM,yBAAyB,EAAE,gBAcvC,CAAC;AAEF,MAAM,WAAW,sBAAsB;IACrC,0BAA0B,EAAE,OAAO,CAAC;IACpC,qCAAqC,EAAE,OAAO,CAAC;CAChD;AAED,eAAO,MAAM,oBAAoB,eAAiC,CAAC;AACnE,oBAAY,oBAAoB,GAAG,eAAe,CAAC,sBAAsB,CAAC,CAAC;AAE3E,wBAAgB,kCAAkC,CAAC,MAAM,EAAE,QAAQ;;;EAQlE;AAED,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,QAAQ,QAE1D"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.injectWorkspacePreferences = exports.createWorkspacePreferencesProvider = exports.WorkspacePreferences = exports.workspacePreferenceSchema = void 0;
|
|
4
|
+
const ide_core_browser_1 = require("@opensumi/ide-core-browser");
|
|
5
|
+
exports.workspacePreferenceSchema = {
|
|
6
|
+
type: 'object',
|
|
7
|
+
properties: {
|
|
8
|
+
'workspace.preserveWindow': {
|
|
9
|
+
description: 'Enable opening workspaces in current window',
|
|
10
|
+
type: 'boolean',
|
|
11
|
+
default: false,
|
|
12
|
+
},
|
|
13
|
+
'workspace.supportMultiRootWorkspace': {
|
|
14
|
+
description: 'Enable the multi-root workspace support to test this feature internally',
|
|
15
|
+
type: 'boolean',
|
|
16
|
+
default: false,
|
|
17
|
+
},
|
|
18
|
+
},
|
|
19
|
+
};
|
|
20
|
+
exports.WorkspacePreferences = Symbol('WorkspacePreferences');
|
|
21
|
+
function createWorkspacePreferencesProvider(inject) {
|
|
22
|
+
return {
|
|
23
|
+
token: exports.WorkspacePreferences,
|
|
24
|
+
useFactory: () => {
|
|
25
|
+
const preferences = inject.get(ide_core_browser_1.PreferenceService);
|
|
26
|
+
return (0, ide_core_browser_1.createPreferenceProxy)(preferences, exports.workspacePreferenceSchema);
|
|
27
|
+
},
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
exports.createWorkspacePreferencesProvider = createWorkspacePreferencesProvider;
|
|
31
|
+
function injectWorkspacePreferences(inject) {
|
|
32
|
+
inject.addProviders(createWorkspacePreferencesProvider(inject));
|
|
33
|
+
}
|
|
34
|
+
exports.injectWorkspacePreferences = injectWorkspacePreferences;
|
|
35
|
+
//# sourceMappingURL=workspace-preferences.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workspace-preferences.js","sourceRoot":"","sources":["../../src/browser/workspace-preferences.ts"],"names":[],"mappings":";;;AACA,iEAKoC;AAEvB,QAAA,yBAAyB,GAAqB;IACzD,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,0BAA0B,EAAE;YAC1B,WAAW,EAAE,6CAA6C;YAC1D,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,KAAK;SACf;QACD,qCAAqC,EAAE;YACrC,WAAW,EAAE,yEAAyE;YACtF,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,KAAK;SACf;KACF;CACF,CAAC;AAOW,QAAA,oBAAoB,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC;AAGnE,SAAgB,kCAAkC,CAAC,MAAgB;IACjE,OAAO;QACL,KAAK,EAAE,4BAAoB;QAC3B,UAAU,EAAE,GAAG,EAAE;YACf,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,oCAAiB,CAAC,CAAC;YAClD,OAAO,IAAA,wCAAqB,EAAC,WAAW,EAAE,iCAAyB,CAAC,CAAC;QACvE,CAAC;KACF,CAAC;AACJ,CAAC;AARD,gFAQC;AAED,SAAgB,0BAA0B,CAAC,MAAgB;IACzD,MAAM,CAAC,YAAY,CAAC,kCAAkC,CAAC,MAAM,CAAC,CAAC,CAAC;AAClE,CAAC;AAFD,gEAEC"}
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
import { IWorkspaceService, WorkspaceData, WorkspaceInput } from '../common';
|
|
2
|
+
import { ILogger, PreferenceService, PreferenceSchemaProvider, Event, Emitter, DisposableCollection, IDisposable, AppConfig, IWindowService } from '@opensumi/ide-core-browser';
|
|
3
|
+
import { URI } from '@opensumi/ide-core-common';
|
|
4
|
+
import { FileStat } from '@opensumi/ide-file-service';
|
|
5
|
+
import { IFileServiceClient } from '@opensumi/ide-file-service/lib/common';
|
|
6
|
+
import { WorkspacePreferences } from './workspace-preferences';
|
|
7
|
+
export declare class WorkspaceService implements IWorkspaceService {
|
|
8
|
+
private _workspace;
|
|
9
|
+
private _roots;
|
|
10
|
+
private deferredRoots;
|
|
11
|
+
protected readonly fileServiceClient: IFileServiceClient;
|
|
12
|
+
protected readonly windowService: IWindowService;
|
|
13
|
+
protected logger: ILogger;
|
|
14
|
+
protected preferences: WorkspacePreferences;
|
|
15
|
+
protected preferenceService: PreferenceService;
|
|
16
|
+
protected readonly schemaProvider: PreferenceSchemaProvider;
|
|
17
|
+
protected readonly appConfig: AppConfig;
|
|
18
|
+
private readonly storageProvider;
|
|
19
|
+
private recentGlobalStorage;
|
|
20
|
+
private readonly clientApp;
|
|
21
|
+
protected applicationName: string;
|
|
22
|
+
private _whenReady;
|
|
23
|
+
protected readonly toDisposableCollection: DisposableCollection;
|
|
24
|
+
private workspaceToName;
|
|
25
|
+
init(): void;
|
|
26
|
+
initFileServiceExclude(): Promise<void>;
|
|
27
|
+
get whenReady(): Promise<void>;
|
|
28
|
+
protected doInit(): Promise<void>;
|
|
29
|
+
protected getTemporaryWorkspaceFileUri(home: URI): URI;
|
|
30
|
+
protected listenPreference(): void;
|
|
31
|
+
protected setFileServiceExcludes(): Promise<void>;
|
|
32
|
+
protected getFlattenExcludes(name: string): string[];
|
|
33
|
+
/**
|
|
34
|
+
* 获取默认的workspace路径
|
|
35
|
+
*/
|
|
36
|
+
protected getDefaultWorkspacePath(): string | undefined;
|
|
37
|
+
get roots(): Promise<FileStat[]>;
|
|
38
|
+
tryGetRoots(): FileStat[];
|
|
39
|
+
get workspace(): FileStat | undefined;
|
|
40
|
+
protected readonly onWorkspaceChangeEmitter: Emitter<FileStat[]>;
|
|
41
|
+
get onWorkspaceChanged(): Event<FileStat[]>;
|
|
42
|
+
protected readonly onWorkspaceFileExcludeChangeEmitter: Emitter<void>;
|
|
43
|
+
get onWorkspaceFileExcludeChanged(): Event<void>;
|
|
44
|
+
protected readonly onWorkspaceLocationChangedEmitter: Emitter<FileStat | undefined>;
|
|
45
|
+
get onWorkspaceLocationChanged(): Event<FileStat | undefined>;
|
|
46
|
+
protected readonly toDisposeOnWorkspace: DisposableCollection;
|
|
47
|
+
setWorkspace(workspaceStat: FileStat | undefined): Promise<void>;
|
|
48
|
+
protected updateWorkspace(): Promise<void>;
|
|
49
|
+
protected updateRoots(): Promise<void>;
|
|
50
|
+
protected computeRoots(): Promise<FileStat[]>;
|
|
51
|
+
protected getWorkspaceDataFromFile(): Promise<WorkspaceData | undefined>;
|
|
52
|
+
protected formatTitle(title?: string): string;
|
|
53
|
+
protected updateTitle(): void;
|
|
54
|
+
getMostRecentlyUsedWorkspace(): Promise<string | undefined>;
|
|
55
|
+
setMostRecentlyUsedWorkspace(path: string): Promise<void>;
|
|
56
|
+
getMostRecentlyUsedWorkspaces(): Promise<string[]>;
|
|
57
|
+
getMostRecentlyUsedCommands(): Promise<string[]>;
|
|
58
|
+
setMostRecentlyUsedCommand(commandId: string): Promise<void>;
|
|
59
|
+
private getGlobalRecentStorage;
|
|
60
|
+
/**
|
|
61
|
+
* 当已经存在打开的工作区时,返回true
|
|
62
|
+
* @returns {boolean}
|
|
63
|
+
*/
|
|
64
|
+
get opened(): boolean;
|
|
65
|
+
/**
|
|
66
|
+
* 当一个混合工作区打开时,返回 true
|
|
67
|
+
* @returns {boolean}
|
|
68
|
+
*/
|
|
69
|
+
get isMultiRootWorkspaceOpened(): boolean;
|
|
70
|
+
/**
|
|
71
|
+
* 当前存在打开的工作区同时支持混合工作区时,返回true
|
|
72
|
+
* @returns {boolean}
|
|
73
|
+
*/
|
|
74
|
+
get isMultiRootWorkspaceEnabled(): boolean;
|
|
75
|
+
/**
|
|
76
|
+
* 打开一个文件夹或创建一个工作区
|
|
77
|
+
* @param {URI} uri
|
|
78
|
+
* @param {WorkspaceInput} [options]
|
|
79
|
+
* @memberof WorkspaceService
|
|
80
|
+
*/
|
|
81
|
+
open(uri: URI, options?: WorkspaceInput): Promise<void>;
|
|
82
|
+
/**
|
|
83
|
+
* 需要判断是否在当前工作区打开窗口
|
|
84
|
+
* 在这里传入的options优先级高于preference设置
|
|
85
|
+
* @protected
|
|
86
|
+
* @param {URI} uri
|
|
87
|
+
* @param {WorkspaceInput} [options]
|
|
88
|
+
* @returns {Promise<void>}
|
|
89
|
+
* @memberof WorkspaceService
|
|
90
|
+
*/
|
|
91
|
+
protected doOpen(uri: URI, options?: WorkspaceInput): Promise<void>;
|
|
92
|
+
/**
|
|
93
|
+
* 为工作区设置根目录
|
|
94
|
+
* @param uri
|
|
95
|
+
*/
|
|
96
|
+
addRoot(uri: URI): Promise<void>;
|
|
97
|
+
/**
|
|
98
|
+
* 工作区中移除对应根目录
|
|
99
|
+
*/
|
|
100
|
+
removeRoots(uris: URI[]): Promise<void>;
|
|
101
|
+
spliceRoots(start: number, deleteCount?: number, workspaceToName?: {
|
|
102
|
+
[key: string]: string;
|
|
103
|
+
}, ...rootsToAdd: URI[]): Promise<URI[]>;
|
|
104
|
+
getWorkspaceName(uri: URI): any;
|
|
105
|
+
protected getUntitledWorkspace(): Promise<URI | undefined>;
|
|
106
|
+
private writeWorkspaceFile;
|
|
107
|
+
/**
|
|
108
|
+
* 清理当前workspace
|
|
109
|
+
*/
|
|
110
|
+
close(): Promise<void>;
|
|
111
|
+
/**
|
|
112
|
+
* 验证给定的URI是否为有效根目录
|
|
113
|
+
*/
|
|
114
|
+
protected toValidRoot(uri: URI | string | undefined): Promise<FileStat | undefined>;
|
|
115
|
+
/**
|
|
116
|
+
* 返回文件的FileStat
|
|
117
|
+
*/
|
|
118
|
+
protected toFileStat(uri: URI | string | undefined): Promise<FileStat | undefined>;
|
|
119
|
+
protected openWindow(fileStat: FileStat, options?: WorkspaceInput): void;
|
|
120
|
+
protected reloadWindow(): void;
|
|
121
|
+
protected openNewWindow(workspacePath: string): void;
|
|
122
|
+
protected shouldPreserveWindow(options?: WorkspaceInput): boolean;
|
|
123
|
+
/**
|
|
124
|
+
* 返回根目录下是否存在对应相对路径文件
|
|
125
|
+
*/
|
|
126
|
+
containsSome(paths: string[]): Promise<boolean>;
|
|
127
|
+
get saved(): boolean;
|
|
128
|
+
/**
|
|
129
|
+
* 存储工作区数据到文件中
|
|
130
|
+
* @param uri URI or FileStat of the workspace file
|
|
131
|
+
*/
|
|
132
|
+
save(uri: URI | FileStat): Promise<void>;
|
|
133
|
+
protected readonly rootWatchers: Map<string, IDisposable>;
|
|
134
|
+
protected watchRoots(): Promise<void>;
|
|
135
|
+
protected watchRoot(root: FileStat): Promise<void>;
|
|
136
|
+
/**
|
|
137
|
+
* 根据给定的uri获取其根节点
|
|
138
|
+
* 如果不指定uri,则获取默认的根节点
|
|
139
|
+
* @param uri
|
|
140
|
+
*/
|
|
141
|
+
getWorkspaceRootUri(uri: URI | undefined): URI | undefined;
|
|
142
|
+
/**
|
|
143
|
+
* 获取相对路径
|
|
144
|
+
* @param pathOrUri
|
|
145
|
+
* @param includeWorkspaceFolder
|
|
146
|
+
*/
|
|
147
|
+
asRelativePath(pathOrUri: string | URI, includeWorkspaceFolder?: boolean): Promise<string | undefined>;
|
|
148
|
+
dispose(): void;
|
|
149
|
+
}
|
|
150
|
+
//# sourceMappingURL=workspace-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workspace-service.d.ts","sourceRoot":"","sources":["../../src/browser/workspace-service.ts"],"names":[],"mappings":"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"}
|