Path: blob/main/src/vs/workbench/workbench.web.main.internal.ts
3291 views
/*---------------------------------------------------------------------------------------------1* Copyright (c) Microsoft Corporation. All rights reserved.2* Licensed under the MIT License. See License.txt in the project root for license information.3*--------------------------------------------------------------------------------------------*/456// #######################################################################7// ### ###8// ### !!! PLEASE ADD COMMON IMPORTS INTO WORKBENCH.COMMON.MAIN.TS !!! ###9// ### ###10// #######################################################################111213//#region --- workbench common1415import './workbench.common.main.js';1617//#endregion181920//#region --- workbench parts2122import './browser/parts/dialogs/dialog.web.contribution.js';2324//#endregion252627//#region --- workbench (web main)2829import './browser/web.main.js';3031//#endregion323334//#region --- workbench services3536import './services/integrity/browser/integrityService.js';37import './services/search/browser/searchService.js';38import './services/textfile/browser/browserTextFileService.js';39import './services/keybinding/browser/keyboardLayoutService.js';40import './services/extensions/browser/extensionService.js';41import './services/extensionManagement/browser/extensionsProfileScannerService.js';42import './services/extensions/browser/extensionsScannerService.js';43import './services/extensionManagement/browser/webExtensionsScannerService.js';44import './services/extensionManagement/common/extensionManagementServerService.js';45import './services/mcp/browser/mcpGalleryManifestService.js';46import './services/mcp/browser/mcpWorkbenchManagementService.js';47import './services/extensionManagement/browser/extensionGalleryManifestService.js';48import './services/telemetry/browser/telemetryService.js';49import './services/url/browser/urlService.js';50import './services/update/browser/updateService.js';51import './services/workspaces/browser/workspacesService.js';52import './services/workspaces/browser/workspaceEditingService.js';53import './services/dialogs/browser/fileDialogService.js';54import './services/host/browser/browserHostService.js';55import './services/lifecycle/browser/lifecycleService.js';56import './services/clipboard/browser/clipboardService.js';57import './services/localization/browser/localeService.js';58import './services/path/browser/pathService.js';59import './services/themes/browser/browserHostColorSchemeService.js';60import './services/encryption/browser/encryptionService.js';61import './services/imageResize/browser/imageResizeService.js';62import './services/secrets/browser/secretStorageService.js';63import './services/workingCopy/browser/workingCopyBackupService.js';64import './services/tunnel/browser/tunnelService.js';65import './services/files/browser/elevatedFileService.js';66import './services/workingCopy/browser/workingCopyHistoryService.js';67import './services/userDataSync/browser/webUserDataSyncEnablementService.js';68import './services/userDataProfile/browser/userDataProfileStorageService.js';69import './services/configurationResolver/browser/configurationResolverService.js';70import '../platform/extensionResourceLoader/browser/extensionResourceLoaderService.js';71import './services/auxiliaryWindow/browser/auxiliaryWindowService.js';72import './services/browserElements/browser/webBrowserElementsService.js';7374import { InstantiationType, registerSingleton } from '../platform/instantiation/common/extensions.js';75import { IAccessibilityService } from '../platform/accessibility/common/accessibility.js';76import { IContextMenuService } from '../platform/contextview/browser/contextView.js';77import { ContextMenuService } from '../platform/contextview/browser/contextMenuService.js';78import { IExtensionTipsService } from '../platform/extensionManagement/common/extensionManagement.js';79import { ExtensionTipsService } from '../platform/extensionManagement/common/extensionTipsService.js';80import { IWorkbenchExtensionManagementService } from './services/extensionManagement/common/extensionManagement.js';81import { ExtensionManagementService } from './services/extensionManagement/common/extensionManagementService.js';82import { LogLevel } from '../platform/log/common/log.js';83import { UserDataSyncMachinesService, IUserDataSyncMachinesService } from '../platform/userDataSync/common/userDataSyncMachines.js';84import { IUserDataSyncStoreService, IUserDataSyncService, IUserDataAutoSyncService, IUserDataSyncLocalStoreService, IUserDataSyncResourceProviderService } from '../platform/userDataSync/common/userDataSync.js';85import { UserDataSyncStoreService } from '../platform/userDataSync/common/userDataSyncStoreService.js';86import { UserDataSyncLocalStoreService } from '../platform/userDataSync/common/userDataSyncLocalStoreService.js';87import { UserDataSyncService } from '../platform/userDataSync/common/userDataSyncService.js';88import { IUserDataSyncAccountService, UserDataSyncAccountService } from '../platform/userDataSync/common/userDataSyncAccount.js';89import { UserDataAutoSyncService } from '../platform/userDataSync/common/userDataAutoSyncService.js';90import { AccessibilityService } from '../platform/accessibility/browser/accessibilityService.js';91import { ICustomEndpointTelemetryService } from '../platform/telemetry/common/telemetry.js';92import { NullEndpointTelemetryService } from '../platform/telemetry/common/telemetryUtils.js';93import { ITitleService } from './services/title/browser/titleService.js';94import { BrowserTitleService } from './browser/parts/titlebar/titlebarPart.js';95import { ITimerService, TimerService } from './services/timer/browser/timerService.js';96import { IDiagnosticsService, NullDiagnosticsService } from '../platform/diagnostics/common/diagnostics.js';97import { ILanguagePackService } from '../platform/languagePacks/common/languagePacks.js';98import { WebLanguagePacksService } from '../platform/languagePacks/browser/languagePacks.js';99import { IWebContentExtractorService, NullWebContentExtractorService, ISharedWebContentExtractorService, NullSharedWebContentExtractorService } from '../platform/webContentExtractor/common/webContentExtractor.js';100import { IDefaultAccountService, NullDefaultAccountService } from './services/accounts/common/defaultAccount.js';101102registerSingleton(IWorkbenchExtensionManagementService, ExtensionManagementService, InstantiationType.Delayed);103registerSingleton(IAccessibilityService, AccessibilityService, InstantiationType.Delayed);104registerSingleton(IContextMenuService, ContextMenuService, InstantiationType.Delayed);105registerSingleton(IUserDataSyncStoreService, UserDataSyncStoreService, InstantiationType.Delayed);106registerSingleton(IUserDataSyncMachinesService, UserDataSyncMachinesService, InstantiationType.Delayed);107registerSingleton(IUserDataSyncLocalStoreService, UserDataSyncLocalStoreService, InstantiationType.Delayed);108registerSingleton(IUserDataSyncAccountService, UserDataSyncAccountService, InstantiationType.Delayed);109registerSingleton(IUserDataSyncService, UserDataSyncService, InstantiationType.Delayed);110registerSingleton(IUserDataSyncResourceProviderService, UserDataSyncResourceProviderService, InstantiationType.Delayed);111registerSingleton(IUserDataAutoSyncService, UserDataAutoSyncService, InstantiationType.Eager /* Eager to start auto sync */);112registerSingleton(ITitleService, BrowserTitleService, InstantiationType.Eager);113registerSingleton(IExtensionTipsService, ExtensionTipsService, InstantiationType.Delayed);114registerSingleton(ITimerService, TimerService, InstantiationType.Delayed);115registerSingleton(ICustomEndpointTelemetryService, NullEndpointTelemetryService, InstantiationType.Delayed);116registerSingleton(IDiagnosticsService, NullDiagnosticsService, InstantiationType.Delayed);117registerSingleton(ILanguagePackService, WebLanguagePacksService, InstantiationType.Delayed);118registerSingleton(IWebContentExtractorService, NullWebContentExtractorService, InstantiationType.Delayed);119registerSingleton(ISharedWebContentExtractorService, NullSharedWebContentExtractorService, InstantiationType.Delayed);120registerSingleton(IDefaultAccountService, NullDefaultAccountService, InstantiationType.Delayed);121122//#endregion123124125//#region --- workbench contributions126127// Logs128import './contrib/logs/browser/logs.contribution.js';129130// Localization131import './contrib/localization/browser/localization.contribution.js';132133// Performance134import './contrib/performance/browser/performance.web.contribution.js';135136// Preferences137import './contrib/preferences/browser/keyboardLayoutPicker.js';138139// Debug140import './contrib/debug/browser/extensionHostDebugService.js';141142// Welcome Banner143import './contrib/welcomeBanner/browser/welcomeBanner.contribution.js';144145// Webview146import './contrib/webview/browser/webview.web.contribution.js';147148// Extensions Management149import './contrib/extensions/browser/extensions.web.contribution.js';150151// Terminal152import './contrib/terminal/browser/terminal.web.contribution.js';153import './contrib/externalTerminal/browser/externalTerminal.contribution.js';154import './contrib/terminal/browser/terminalInstanceService.js';155156// Tasks157import './contrib/tasks/browser/taskService.js';158159// Tags160import './contrib/tags/browser/workspaceTagsService.js';161162// Issues163import './contrib/issue/browser/issue.contribution.js';164165// Splash166import './contrib/splash/browser/splash.contribution.js';167168// Remote Start Entry for the Web169import './contrib/remote/browser/remoteStartEntry.contribution.js';170171// Process Explorer172import './contrib/processExplorer/browser/processExplorer.web.contribution.js';173174//#endregion175176177//#region --- export workbench factory178179// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!180//181// Do NOT change these exports in a way that something is removed unless182// intentional. These exports are used by web embedders and thus require183// an adoption when something changes.184//185// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!186187import { create, commands, env, window, workspace, logger } from './browser/web.factory.js';188import { Menu } from './browser/web.api.js';189import { URI } from '../base/common/uri.js';190import { Event, Emitter } from '../base/common/event.js';191import { Disposable } from '../base/common/lifecycle.js';192import { GroupOrientation } from './services/editor/common/editorGroupsService.js';193import { UserDataSyncResourceProviderService } from '../platform/userDataSync/common/userDataSyncResourceProvider.js';194import { RemoteAuthorityResolverError, RemoteAuthorityResolverErrorCode } from '../platform/remote/common/remoteAuthorityResolver.js';195196// TODO@esm remove me once we stop supporting our web-esm-bridge197if ((globalThis as any).__VSCODE_WEB_ESM_PROMISE) {198const exports = {199200// Factory201create: create,202203// Basic Types204URI: URI,205Event: Event,206Emitter: Emitter,207Disposable: Disposable,208// GroupOrientation,209LogLevel: LogLevel,210RemoteAuthorityResolverError: RemoteAuthorityResolverError,211RemoteAuthorityResolverErrorCode: RemoteAuthorityResolverErrorCode,212213// Facade API214env: env,215window: window,216workspace: workspace,217commands: commands,218logger: logger,219Menu: Menu220};221(globalThis as any).__VSCODE_WEB_ESM_PROMISE(exports);222delete (globalThis as any).__VSCODE_WEB_ESM_PROMISE;223}224225export {226227// Factory228create,229230// Basic Types231URI,232Event,233Emitter,234Disposable,235GroupOrientation,236LogLevel,237RemoteAuthorityResolverError,238RemoteAuthorityResolverErrorCode,239240// Facade API241env,242window,243workspace,244commands,245logger,246Menu247};248249//#endregion250251252