1
>
/*---------------------------------------------------------------------------------------------
environmentService.ts
2
>
* Copyright (c) Microsoft Corporation. All rights reserved.
3
>
* Licensed under the MIT License. See License.txt in the project root for license information.
4
>
*--------------------------------------------------------------------------------------------*/
5
>
6
>
import { refineServiceDecorator } from '../../../../platform/instantiation/common/instantiation.js';
7
>
import { IPath } from '../../../../platform/window/common/window.js';
8
>
import { IEnvironmentService } from '../../../../platform/environment/common/environment.js';
9
>
import { URI } from '../../../../base/common/uri.js';
10
>
11
>
export const IWorkbenchEnvironmentService = refineServiceDecorator<IEnvironmentService, IWorkbenchEnvironmentService>(IEnvironmentService);
12
>
13
>
/**
14
>
* A workbench specific environment service that is only present in workbench
15
>
* layer.
16
>
*/
17
>
export interface IWorkbenchEnvironmentService extends IEnvironmentService {
18
>
19
>
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
20
>
// NOTE: KEEP THIS INTERFACE AS SMALL AS POSSIBLE. AS SUCH:
21
>
// PUT NON-WEB PROPERTIES INTO THE NATIVE WORKBENCH
22
>
// ENVIRONMENT SERVICE
23
>
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
24
>
25
>
// --- Paths
26
>
readonly logFile: URI;
27
>
readonly windowLogsPath: URI;
28
>
readonly extHostLogsPath: URI;
29
>
30
>
// --- Extensions
31
>
readonly extensionEnabledProposedApi?: string[];
32
>
33
>
// --- Config
34
>
readonly remoteAuthority?: string;
35
>
readonly skipReleaseNotes: boolean;
36
>
readonly skipWelcome: boolean;
37
>
readonly disableWorkspaceTrust: boolean;
38
>
readonly isSessionsWindow: boolean;
39
>
readonly webviewExternalEndpoint: string;
40
>
41
>
// --- Development
42
>
readonly debugRenderer: boolean;
43
>
readonly logExtensionHostCommunication?: boolean;
44
>
readonly enableSmokeTestDriver?: boolean;
45
>
readonly profDurationMarkers?: string[];
46
>
47
>
// --- Editors to open
48
>
readonly filesToOpenOrCreate?: IPath[] | undefined;
49
>
readonly filesToDiff?: IPath[] | undefined;
50
>
readonly filesToMerge?: IPath[] | undefined;
51
>
52
>
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
53
>
// NOTE: KEEP THIS INTERFACE AS SMALL AS POSSIBLE. AS SUCH:
54
>
// - PUT NON-WEB PROPERTIES INTO NATIVE WB ENV SERVICE
55
>
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
56
>
}