@codingame/monaco-vscode-views-service-override 1.83.4 → 1.83.6

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.
Files changed (62) hide show
  1. package/index.d.ts +8 -3
  2. package/index.js +7 -1
  3. package/l10n.js +8 -0
  4. package/missing-services.js +2141 -0
  5. package/package.json +2 -2
  6. package/services.js +95 -0
  7. package/views.d.ts +51 -15
  8. package/views.js +124 -96
  9. package/vscode/src/vs/base/browser/ui/tree/treeDefaults.js +1 -1
  10. package/vscode/src/vs/workbench/api/browser/viewsExtensionPoint.js +262 -49
  11. package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarActions.js +57 -42
  12. package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.js +51 -11
  13. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarPart.js +14 -2
  14. package/vscode/src/vs/workbench/browser/parts/compositeBar.js +5 -1
  15. package/vscode/src/vs/workbench/browser/parts/compositePart.js +18 -3
  16. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +52 -20
  17. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +5 -1
  18. package/vscode/src/vs/workbench/browser/parts/editor/editorDropTarget.js +6 -1
  19. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +23 -4
  20. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +60 -12
  21. package/vscode/src/vs/workbench/browser/parts/editor/editorPane.d.ts +112 -0
  22. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +11 -2
  23. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +12 -2
  24. package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +5 -4
  25. package/vscode/src/vs/workbench/browser/parts/panel/panelPart.js +27 -15
  26. package/vscode/src/vs/workbench/browser/parts/views/checkbox.js +1 -1
  27. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +32 -19
  28. package/vscode/src/vs/workbench/contrib/callHierarchy/browser/callHierarchy.contribution.js +58 -18
  29. package/vscode/src/vs/workbench/contrib/callHierarchy/browser/callHierarchyPeek.js +29 -5
  30. package/vscode/src/vs/workbench/contrib/callHierarchy/browser/callHierarchyTree.js +17 -3
  31. package/vscode/src/vs/workbench/contrib/codeEditor/browser/find/simpleFindWidget.js +55 -10
  32. package/vscode/src/vs/workbench/contrib/codeEditor/browser/outline/documentSymbolsOutline.js +5 -3
  33. package/vscode/src/vs/workbench/contrib/codeEditor/browser/outline/documentSymbolsTree.js +22 -3
  34. package/vscode/src/vs/workbench/contrib/customEditor/common/contributedCustomEditors.js +5 -1
  35. package/vscode/src/vs/workbench/contrib/customEditor/common/extensionPoint.js +40 -8
  36. package/vscode/src/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +5 -1
  37. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditor.js +36 -10
  38. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +111 -16
  39. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.contribution.js +153 -97
  40. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands.js +28 -6
  41. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution2.js +11 -463
  42. package/vscode/src/vs/workbench/contrib/files/browser/workspaceWatcher.js +16 -4
  43. package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +10 -4
  44. package/vscode/src/vs/workbench/contrib/languageDetection/browser/languageDetection.contribution.js +27 -5
  45. package/vscode/src/vs/workbench/contrib/languageStatus/browser/languageStatus.contribution.js +53 -28
  46. package/vscode/src/vs/workbench/contrib/outline/browser/outline.contribution.js +180 -36
  47. package/vscode/src/vs/workbench/contrib/outline/browser/outlinePane.js +17 -3
  48. package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +29 -5
  49. package/vscode/src/vs/workbench/contrib/remote/browser/remoteIcons.js +85 -17
  50. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +301 -62
  51. package/vscode/src/vs/workbench/contrib/typeHierarchy/browser/typeHierarchy.contribution.js +48 -16
  52. package/vscode/src/vs/workbench/contrib/typeHierarchy/browser/typeHierarchyPeek.js +29 -5
  53. package/vscode/src/vs/workbench/contrib/typeHierarchy/browser/typeHierarchyTree.js +17 -3
  54. package/vscode/src/vs/workbench/contrib/webview/browser/webviewElement.js +6 -1
  55. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewCommands.js +25 -5
  56. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewPanel.contribution.js +5 -1
  57. package/vscode/src/vs/workbench/services/editor/browser/editorResolverService.js +49 -9
  58. package/vscode/src/vs/workbench/services/history/browser/historyService.js +36 -36
  59. package/vscode/src/vs/workbench/services/hover/browser/hoverWidget.js +6 -1
  60. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileIcons.js +5 -1
  61. package/vscode/src/vs/workbench/services/views/browser/viewDescriptorService.js +14 -5
  62. package/vscode/src/vs/workbench/services/views/common/viewContainerModel.js +5 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codingame/monaco-vscode-views-service-override",
3
- "version": "1.83.4",
3
+ "version": "1.83.6",
4
4
  "keywords": [],
5
5
  "author": {
6
6
  "name": "CodinGame",
@@ -18,7 +18,7 @@
18
18
  "module": "index.js",
19
19
  "types": "index.d.ts",
20
20
  "dependencies": {
21
- "vscode": "npm:@codingame/monaco-vscode-api@1.83.4",
21
+ "vscode": "npm:@codingame/monaco-vscode-api@1.83.6",
22
22
  "monaco-editor": "0.44.0"
23
23
  }
24
24
  }
package/services.js ADDED
@@ -0,0 +1,95 @@
1
+ import './missing-services.js';
2
+ export { default as Severity } from 'monaco-editor/esm/vs/base/common/severity.js';
3
+ export { StorageScope, StorageTarget } from 'vscode/vscode/vs/platform/storage/common/storage';
4
+ import { StandaloneServices } from 'monaco-editor/esm/vs/editor/standalone/browser/standaloneServices.js';
5
+ export { StandaloneServices } from 'monaco-editor/esm/vs/editor/standalone/browser/standaloneServices.js';
6
+ import { IInstantiationService } from 'monaco-editor/esm/vs/platform/instantiation/common/instantiation.js';
7
+ export { IInstantiationService } from 'monaco-editor/esm/vs/platform/instantiation/common/instantiation.js';
8
+ import { Disposable, DisposableStore } from 'monaco-editor/esm/vs/base/common/lifecycle.js';
9
+ import 'vscode/service-override/layout';
10
+ import 'vscode/service-override/environment';
11
+ import 'vscode/service-override/extensions';
12
+ import 'vscode/service-override/files';
13
+ import 'vscode/service-override/quickaccess';
14
+ import { serviceInitializedBarrier, serviceInitializedEmitter } from 'vscode/lifecycle';
15
+ export { SyncDescriptor } from 'monaco-editor/esm/vs/platform/instantiation/common/descriptors.js';
16
+ export { ICommandService } from 'monaco-editor/esm/vs/platform/commands/common/commands.js';
17
+ export { INotificationService, NeverShowAgainScope, NoOpNotification, NoOpProgress, NotificationPriority, NotificationsFilter } from 'monaco-editor/esm/vs/platform/notification/common/notification.js';
18
+ export { IBulkEditService } from 'monaco-editor/esm/vs/editor/browser/services/bulkEditService.js';
19
+ export { ICodeEditorService } from 'monaco-editor/esm/vs/editor/browser/services/codeEditorService.js';
20
+ export { ILanguageService } from 'monaco-editor/esm/vs/editor/common/languages/language.js';
21
+ export { ILanguageConfigurationService } from 'monaco-editor/esm/vs/editor/common/languages/languageConfigurationRegistry.js';
22
+ export { IEditorWorkerService } from 'monaco-editor/esm/vs/editor/common/services/editorWorker.js';
23
+ export { ILanguageFeaturesService } from 'monaco-editor/esm/vs/editor/common/services/languageFeatures.js';
24
+ export { IModelService } from 'monaco-editor/esm/vs/editor/common/services/model.js';
25
+ export { ITextModelService } from 'monaco-editor/esm/vs/editor/common/services/resolverService.js';
26
+ export { IClipboardService } from 'monaco-editor/esm/vs/platform/clipboard/common/clipboardService.js';
27
+ import './override/vs/platform/dialogs/common/dialogs.js';
28
+ export { IFileService } from 'monaco-editor/esm/vs/platform/files/common/files.js';
29
+ export { IMarkerService } from 'monaco-editor/esm/vs/platform/markers/common/markers.js';
30
+ export { IOpenerService } from 'monaco-editor/esm/vs/platform/opener/common/opener.js';
31
+ export { IProductService } from 'monaco-editor/esm/vs/platform/product/common/productService.js';
32
+ export { IQuickInputService } from 'monaco-editor/esm/vs/platform/quickinput/common/quickInput.js';
33
+ export { ITelemetryService } from 'monaco-editor/esm/vs/platform/telemetry/common/telemetry.js';
34
+ export { IUriIdentityService } from 'monaco-editor/esm/vs/platform/uriIdentity/common/uriIdentity.js';
35
+ export { IBreadcrumbsService } from 'vscode/vscode/vs/workbench/browser/parts/editor/breadcrumbs';
36
+ export { GroupDirection, GroupLocation, GroupOrientation, GroupsArrangement, GroupsOrder, IEditorGroupsService, MergeGroupMode } from 'vscode/vscode/vs/workbench/services/editor/common/editorGroupsService';
37
+ export { CloseDirection, EditorsOrder } from 'vscode/vscode/vs/workbench/common/editor';
38
+ export { EditorInput } from 'vscode/vscode/vs/workbench/common/editor/editorInput';
39
+ export { IEditorService } from 'vscode/vscode/vs/workbench/services/editor/common/editorService';
40
+ export { IEditorResolverService } from 'vscode/vscode/vs/workbench/services/editor/common/editorResolverService';
41
+ export { ITextEditorService } from 'vscode/vscode/vs/workbench/services/textfile/common/textEditorService';
42
+ export { IWorkbenchEnvironmentService } from 'vscode/vscode/vs/workbench/services/environment/common/environmentService';
43
+ export { IHostService } from 'vscode/vscode/vs/workbench/services/host/browser/host';
44
+ export { ILanguageStatusService } from 'vscode/vscode/vs/workbench/services/languageStatus/common/languageStatusService';
45
+ export { IPaneCompositePartService } from 'vscode/vscode/vs/workbench/services/panecomposite/browser/panecomposite';
46
+ export { IPathService } from 'vscode/vscode/vs/workbench/services/path/common/pathService';
47
+ export { ITextFileService } from 'vscode/vscode/vs/workbench/services/textfile/common/textfiles';
48
+ export { IWorkingCopyFileService } from 'vscode/vscode/vs/workbench/services/workingCopy/common/workingCopyFileService';
49
+ export { IConfigurationService } from 'monaco-editor/esm/vs/platform/configuration/common/configuration.js';
50
+ export { IContextKeyService } from 'monaco-editor/esm/vs/platform/contextkey/common/contextkey.js';
51
+ export { IThemeService } from 'monaco-editor/esm/vs/platform/theme/common/themeService.js';
52
+ export { ISnippetsService } from 'vscode/vscode/vs/workbench/contrib/snippets/browser/snippets';
53
+ export { IWorkspaceContextService } from 'monaco-editor/esm/vs/platform/workspace/common/workspace.js';
54
+ export { IStorageService } from 'monaco-editor/esm/vs/platform/storage/common/storage.js';
55
+ export { IAudioCueService } from 'monaco-editor/esm/vs/platform/audioCues/browser/audioCueService.js';
56
+ export { IDebugService } from 'vscode/vscode/vs/workbench/contrib/debug/common/debug';
57
+ export { ILogService, ILoggerService, LogLevel } from 'monaco-editor/esm/vs/platform/log/common/log.js';
58
+ export { IViewDescriptorService, IViewsService } from 'vscode/vscode/vs/workbench/common/views';
59
+ export { ILayoutService } from 'monaco-editor/esm/vs/platform/layout/browser/layoutService.js';
60
+ export { IPreferencesService } from 'vscode/vscode/vs/workbench/services/preferences/common/preferences';
61
+ export { IPreferencesSearchService } from 'vscode/vscode/vs/workbench/contrib/preferences/common/preferences';
62
+ export { IKeybindingEditingService } from 'vscode/vscode/vs/workbench/services/keybinding/common/keybindingEditing';
63
+ export { IOutputService } from 'vscode/vscode/vs/workbench/services/output/common/output';
64
+ export { GoFilter, GoScope, IHistoryService } from 'vscode/vscode/vs/workbench/services/history/common/history';
65
+ export { IRemoteAgentService } from 'vscode/vscode/vs/workbench/services/remote/common/remoteAgentService';
66
+ export { IRemoteAuthorityResolverService } from 'vscode/vscode/vs/platform/remote/common/remoteAuthorityResolver';
67
+ export { IRemoteSocketFactoryService } from 'vscode/vscode/vs/platform/remote/common/remoteSocketFactoryService';
68
+ export { ITerminalInstanceService, ITerminalService } from 'vscode/vscode/vs/workbench/contrib/terminal/browser/terminal';
69
+ export { IFilesConfigurationService } from 'vscode/vscode/vs/workbench/services/filesConfiguration/common/filesConfigurationService';
70
+ export { ILabelService } from 'monaco-editor/esm/vs/platform/label/common/label.js';
71
+ export { IActivityService } from 'vscode/vscode/vs/workbench/services/activity/common/activity';
72
+ export { IHoverService } from 'vscode/vscode/vs/workbench/services/hover/browser/hover';
73
+ export { IExplorerService } from 'vscode/vscode/vs/workbench/contrib/files/browser/files';
74
+ export { IStatusbarService } from 'vscode/vscode/vs/workbench/services/statusbar/browser/statusbar';
75
+ export { ITitleService } from 'vscode/vscode/vs/workbench/services/title/common/titleService';
76
+ export { IBannerService } from 'vscode/vscode/vs/workbench/services/banner/browser/bannerService';
77
+ export { IWorkspaceTrustEnablementService, IWorkspaceTrustManagementService, IWorkspaceTrustRequestService } from 'monaco-editor/esm/vs/platform/workspace/common/workspaceTrust.js';
78
+ export { IDialogService, IFileDialogService } from 'vscode/vscode/vs/platform/dialogs/common/dialogs';
79
+
80
+ StandaloneServices.withServices(() => {
81
+ return Disposable.None;
82
+ });
83
+ function withReadyServices(callback) {
84
+ if (serviceInitializedBarrier.isOpen()) {
85
+ return StandaloneServices.get(IInstantiationService).invokeFunction(callback);
86
+ }
87
+ const disposable = new DisposableStore();
88
+ const listener = disposable.add(serviceInitializedEmitter.event(() => {
89
+ listener.dispose();
90
+ disposable.add(StandaloneServices.get(IInstantiationService).invokeFunction(callback));
91
+ }));
92
+ return disposable;
93
+ }
94
+
95
+ export { withReadyServices };
package/views.d.ts CHANGED
@@ -1,15 +1,28 @@
1
1
  import { IEditorOverrideServices } from 'vscode/vscode/vs/editor/standalone/browser/standaloneServices';
2
2
  import { ViewContainerLocation } from 'vscode/vscode/vs/workbench/common/views';
3
3
  export { ViewContainerLocation } from 'vscode/vscode/vs/workbench/common/views';
4
- import { ServicesAccessor } from 'vscode/vscode/vs/platform/instantiation/common/instantiation';
4
+ import { BrandedService, ServicesAccessor } from 'vscode/vscode/vs/platform/instantiation/common/instantiation';
5
5
  import { Part } from 'vscode/vscode/vs/workbench/browser/part';
6
6
  import { Parts } from 'vscode/vscode/vs/workbench/services/layout/browser/layoutService';
7
7
  export { Parts } from 'vscode/vscode/vs/workbench/services/layout/browser/layoutService';
8
+ import { IStorageService } from 'vscode/vscode/vs/platform/storage/common/storage';
9
+ import { IThemeService } from 'vscode/vscode/vs/platform/theme/common/themeService';
8
10
  import { IDisposable } from 'vscode/vscode/vs/base/common/lifecycle';
9
11
  export { IReference } from 'vscode/vscode/vs/base/common/lifecycle';
12
+ import { ITelemetryService } from 'vscode/vscode/vs/platform/telemetry/common/telemetry';
13
+ import { Dimension } from 'vscode/vscode/vs/base/browser/dom';
14
+ import { URI } from 'vscode/vscode/vs/base/common/uri';
15
+ import { CancellationToken } from 'vscode/vscode/vs/base/common/cancellation';
16
+ import { IEditorOptions } from 'vscode/vscode/vs/platform/editor/common/editor';
17
+ export { IEditorOptions } from 'vscode/vscode/vs/platform/editor/common/editor';
10
18
  import { Codicon } from './vscode/src/vs/base/common/codicons.js';
11
- import { IEditorCloseHandler, EditorInput } from 'vscode/vscode/vs/workbench/common/editor/editorInput';
12
- export { IEditorCloseHandler } from 'vscode/vscode/vs/workbench/common/editor/editorInput';
19
+ import { RegisteredEditorInfo, RegisteredEditorOptions, EditorInputFactoryObject } from 'vscode/vscode/vs/workbench/services/editor/common/editorResolverService';
20
+ export { EditorInputFactoryObject, RegisteredEditorInfo, RegisteredEditorOptions, RegisteredEditorPriority } from 'vscode/vscode/vs/workbench/services/editor/common/editorResolverService';
21
+ import { EditorInput, IEditorCloseHandler } from 'vscode/vscode/vs/workbench/common/editor/editorInput';
22
+ export { EditorInput, IEditorCloseHandler } from 'vscode/vscode/vs/workbench/common/editor/editorInput';
23
+ import { IEditorOpenContext, EditorInputCapabilities, Verbosity } from 'vscode/vscode/vs/workbench/common/editor';
24
+ export { EditorInputCapabilities } from 'vscode/vscode/vs/workbench/common/editor';
25
+ import { EditorPane } from './vscode/src/vs/workbench/browser/parts/editor/editorPane.js';
13
26
  import { OpenEditor } from './tools/editor.js';
14
27
 
15
28
  declare function renderPart(partContainer: HTMLElement, part: Part): void;
@@ -28,21 +41,44 @@ type Label = string | {
28
41
  medium: string;
29
42
  long: string;
30
43
  };
31
- interface EditorPanelOption {
32
- readonly id: string;
33
- name: string;
34
- renderBody(container: HTMLElement): IDisposable;
44
+ declare abstract class SimpleEditorPane extends EditorPane {
45
+ protected container: HTMLElement;
46
+ private scrollbar;
47
+ private inputDisposable;
48
+ constructor(id: string, telemetryService: ITelemetryService, themeService: IThemeService, storageService: IStorageService);
49
+ protected createEditor(parent: HTMLElement): void;
50
+ setInput(input: EditorInput, editorOptions: IEditorOptions | undefined, context: IEditorOpenContext, token: CancellationToken): Promise<void>;
51
+ layout(dimension: Dimension): void;
52
+ focus(): void;
53
+ clearInput(): void;
54
+ abstract initialize(): HTMLElement;
55
+ abstract renderInput?(input: EditorInput, options: IEditorOptions | undefined, context: IEditorOpenContext, token: CancellationToken): Promise<IDisposable>;
35
56
  }
36
- interface SimpleEditorInput extends EditorInput {
37
- setName(name: Label): void;
57
+ declare abstract class SimpleEditorInput extends EditorInput {
58
+ closeHandler?: IEditorCloseHandler | undefined;
59
+ private dirty;
60
+ private _capabilities;
61
+ private name;
62
+ private title;
63
+ private description;
64
+ resource: URI | undefined;
65
+ constructor(resource?: URI, closeHandler?: IEditorCloseHandler | undefined);
66
+ get capabilities(): EditorInputCapabilities;
67
+ addCapability(capability: EditorInputCapabilities): void;
68
+ removeCapability(capability: EditorInputCapabilities): void;
69
+ get editorId(): string | undefined;
70
+ setName(name: string): void;
38
71
  setTitle(title: Label): void;
39
- setDescription(description: Label): void;
72
+ setDescription(description: string): void;
73
+ private getLabelValue;
74
+ getName(): string;
75
+ getTitle(verbosity?: Verbosity): string;
76
+ getDescription(verbosity?: Verbosity): string;
77
+ isDirty(): boolean;
40
78
  setDirty(dirty: boolean): void;
41
79
  }
42
- declare function registerEditorPane(options: EditorPanelOption): {
43
- disposable: IDisposable;
44
- CustomEditorInput: new (closeHandler?: IEditorCloseHandler) => SimpleEditorInput;
45
- };
80
+ declare function registerEditorPane<Services extends BrandedService[]>(typeId: string, name: string, ctor: new (...services: Services) => EditorPane, inputCtors: (new (...args: any[]) => EditorInput)[]): IDisposable;
81
+ declare function registerEditor(globPattern: string, editorInfo: RegisteredEditorInfo, editorOptions: RegisteredEditorOptions, factory: EditorInputFactoryObject): IDisposable;
46
82
  interface CustomViewOption {
47
83
  readonly id: string;
48
84
  name: string;
@@ -66,4 +102,4 @@ declare function registerCustomView(options: CustomViewOption): IDisposable;
66
102
  declare function isEditorPartVisible(): boolean;
67
103
  declare function getServiceOverride(openEditorFallback?: OpenEditor, _webviewIframeAlternateDomains?: string): IEditorOverrideServices;
68
104
 
69
- export { type CustomViewOption, type EditorPanelOption, OpenEditor, attachPart, getServiceOverride as default, isEditorPartVisible, isPartVisibile, onPartVisibilityChange, registerCustomView, registerEditorPane, renderActivitybarPar, renderAuxiliaryPart, renderEditorPart, renderPanelPart, renderPart, renderSidebarPart, renderStatusBarPart, setPartVisibility };
105
+ export { type CustomViewOption, EditorPane, OpenEditor, SimpleEditorInput, SimpleEditorPane, attachPart, getServiceOverride as default, isEditorPartVisible, isPartVisibile, onPartVisibilityChange, registerCustomView, registerEditor, registerEditorPane, renderActivitybarPar, renderAuxiliaryPart, renderEditorPart, renderPanelPart, renderPart, renderSidebarPart, renderStatusBarPart, setPartVisibility };
package/views.js CHANGED
@@ -12,13 +12,13 @@ import { ActivityService } from './vscode/src/vs/workbench/services/activity/bro
12
12
  import { IPaneCompositePartService } from 'vscode/vscode/vs/workbench/services/panecomposite/browser/panecomposite';
13
13
  import { PaneCompositeParts } from './vscode/src/vs/workbench/browser/parts/paneCompositePart.js';
14
14
  export { ActivitybarPart } from './vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.js';
15
- import { DisposableStore } from 'monaco-editor/esm/vs/base/common/lifecycle.js';
15
+ import { MutableDisposable, DisposableStore } from 'monaco-editor/esm/vs/base/common/lifecycle.js';
16
16
  import { IHoverService } from 'vscode/vscode/vs/workbench/services/hover/browser/hover';
17
17
  import { HoverService } from './vscode/src/vs/workbench/services/hover/browser/hoverService.js';
18
18
  import { ExplorerService } from './vscode/src/vs/workbench/contrib/files/browser/explorerService.js';
19
19
  import { IExplorerService } from 'vscode/vscode/vs/workbench/contrib/files/browser/files';
20
20
  export { PanelPart } from './vscode/src/vs/workbench/browser/parts/panel/panelPart.js';
21
- import { $, append } from 'monaco-editor/esm/vs/base/browser/dom.js';
21
+ import { size, $, append } from 'monaco-editor/esm/vs/base/browser/dom.js';
22
22
  import { ViewPane } from 'vscode/vscode/vs/workbench/browser/parts/views/viewPane';
23
23
  import { Registry } from 'monaco-editor/esm/vs/platform/registry/common/platform.js';
24
24
  import { ViewPaneContainer } from 'vscode/vscode/vs/workbench/browser/parts/views/viewPaneContainer';
@@ -48,13 +48,16 @@ import { IEditorGroupsService } from 'vscode/vscode/vs/workbench/services/editor
48
48
  import { IEditorDropService } from 'vscode/vscode/vs/workbench/services/editor/browser/editorDropService';
49
49
  import { IEditorService } from 'vscode/vscode/vs/workbench/services/editor/common/editorService';
50
50
  import { IEditorResolverService } from 'vscode/vscode/vs/workbench/services/editor/common/editorResolverService';
51
+ export { RegisteredEditorPriority } from 'vscode/vscode/vs/workbench/services/editor/common/editorResolverService';
51
52
  import { EditorResolverService } from './vscode/src/vs/workbench/services/editor/browser/editorResolverService.js';
52
53
  import { IBreadcrumbsService, BreadcrumbsService } from 'vscode/vscode/vs/workbench/browser/parts/editor/breadcrumbs';
53
54
  import { IContextViewService } from 'monaco-editor/esm/vs/platform/contextview/browser/contextView.js';
54
55
  import { ContextViewService } from 'monaco-editor/esm/vs/platform/contextview/browser/contextViewService.js';
55
56
  import { ICodeEditorService } from 'monaco-editor/esm/vs/editor/browser/services/codeEditorService.js';
56
57
  import { EditorInput } from 'vscode/vscode/vs/workbench/common/editor/editorInput';
58
+ export { EditorInput } from 'vscode/vscode/vs/workbench/common/editor/editorInput';
57
59
  import { EditorExtensions } from 'vscode/vscode/vs/workbench/common/editor';
60
+ export { EditorInputCapabilities } from 'vscode/vscode/vs/workbench/common/editor';
58
61
  import { ITextEditorService, TextEditorService } from 'vscode/vscode/vs/workbench/services/textfile/common/textEditorService';
59
62
  import { CodeEditorService } from 'vscode/vscode/vs/workbench/services/editor/browser/codeEditorService';
60
63
  import { IUntitledTextEditorService, UntitledTextEditorService } from 'vscode/vscode/vs/workbench/services/untitled/common/untitledTextEditorService';
@@ -73,11 +76,11 @@ import { WebviewService } from './vscode/src/vs/workbench/contrib/webview/browse
73
76
  import { IWebviewWorkbenchService, WebviewEditorService } from 'vscode/vscode/vs/workbench/contrib/webviewPanel/browser/webviewWorkbenchService';
74
77
  import { IWebviewService } from 'vscode/vscode/vs/workbench/contrib/webview/browser/webview';
75
78
  import { IWebviewViewService, WebviewViewService } from 'vscode/vscode/vs/workbench/contrib/webviewView/browser/webviewViewService';
76
- import { ILifecycleService } from 'vscode/vscode/vs/workbench/services/lifecycle/common/lifecycle';
77
79
  import { positionToString, IWorkbenchLayoutService } from 'vscode/vscode/vs/workbench/services/layout/browser/layoutService';
78
80
  export { Parts } from 'vscode/vscode/vs/workbench/services/layout/browser/layoutService';
79
81
  import { EditorPaneDescriptor } from 'vscode/vscode/vs/workbench/browser/editor';
80
82
  import { EditorPane } from 'vscode/vscode/vs/workbench/browser/parts/editor/editorPane';
83
+ export { EditorPane } from 'vscode/vscode/vs/workbench/browser/parts/editor/editorPane';
81
84
  import { ITelemetryService } from 'monaco-editor/esm/vs/platform/telemetry/common/telemetry.js';
82
85
  import { IStorageService } from 'monaco-editor/esm/vs/platform/storage/common/storage.js';
83
86
  import { IThemeService } from 'monaco-editor/esm/vs/platform/theme/common/themeService.js';
@@ -85,14 +88,19 @@ export { ConfirmResult } from './override/vs/platform/dialogs/common/dialogs.js'
85
88
  import { ILayoutService } from 'monaco-editor/esm/vs/platform/layout/browser/layoutService.js';
86
89
  import { IBannerService } from 'vscode/vscode/vs/workbench/services/banner/browser/bannerService';
87
90
  import { ITitleService } from 'vscode/vscode/vs/workbench/services/title/common/titleService';
91
+ import { DomScrollableElement } from 'monaco-editor/esm/vs/base/browser/ui/scrollbar/scrollableElement.js';
92
+ import { assertAllDefined, assertIsDefined } from 'monaco-editor/esm/vs/base/common/types.js';
93
+ export { AbstractResourceEditorInput } from 'vscode/vscode/vs/workbench/common/editor/resourceEditorInput';
94
+ export { AbstractTextResourceEditorInput } from 'vscode/vscode/vs/workbench/common/editor/textResourceEditorInput';
88
95
  import { MonacoEditorService, MonacoDelegateEditorGroupsService } from './tools/editor.js';
89
96
  import getServiceOverride$2 from 'vscode/service-override/bulkEdit';
90
97
  import getServiceOverride$1 from 'vscode/service-override/layout';
91
- import getServiceOverride$3 from 'vscode/service-override/quickaccess';
92
- import getServiceOverride$4 from 'vscode/service-override/keybindings';
98
+ import getServiceOverride$4 from 'vscode/service-override/quickaccess';
99
+ import getServiceOverride$4$1 from 'vscode/service-override/keybindings';
93
100
  import { changeUrlDomain } from './tools/url.js';
94
101
  import { registerAssets } from 'vscode/assets';
95
102
  import { registerServiceInitializePostParticipant } from 'vscode/lifecycle';
103
+ import { withReadyServices } from './services.js';
96
104
 
97
105
  function createPart(id, role, classes) {
98
106
  const part = document.createElement(role === 'status' ? 'footer' : 'div');
@@ -166,92 +174,115 @@ function renderEditorPart(container) {
166
174
  function renderStatusBarPart(container) {
167
175
  return attachPart("workbench.parts.statusbar" , container);
168
176
  }
169
- function registerEditorPane(options) {
170
- let CustomEditorPane = class CustomEditorPane extends EditorPane {
171
- constructor(telemetryService, themeService, storageService) {
172
- super(options.id, telemetryService, themeService, storageService);
173
- }
174
- createEditor(parent) {
175
- this.content = $('.editor-pane-content');
176
- this.content.style.display = 'flex';
177
- this.content.style.alignItems = 'stretch';
178
- append(parent, this.content);
179
- this._register(options.renderBody(this.content));
180
- }
181
- layout(dimension) {
182
- this.content.style.height = `${dimension.height}px`;
183
- this.content.style.width = `${dimension.width}px`;
184
- }
185
- };
186
- CustomEditorPane = __decorate([
187
- ( __param(0, ITelemetryService)),
188
- ( __param(1, IThemeService)),
189
- ( __param(2, IStorageService))
190
- ], CustomEditorPane);
191
- class CustomEditorInput extends EditorInput {
192
- constructor(closeHandler) {
193
- super();
194
- this.closeHandler = closeHandler;
195
- this.name = options.name;
196
- this.title = options.name;
197
- this.description = options.name;
198
- this.dirty = false;
199
- }
200
- get typeId() {
201
- return CustomEditorInput.ID;
202
- }
203
- get resource() {
204
- return undefined;
205
- }
206
- setName(name) {
207
- this.name = name;
208
- this._onDidChangeLabel.fire();
209
- }
210
- setTitle(title) {
211
- this.title = title;
212
- this._onDidChangeLabel.fire();
213
- }
214
- setDescription(description) {
215
- this.description = description;
216
- this._onDidChangeLabel.fire();
217
- }
218
- getLabelValue(label, verbosity) {
219
- if (typeof label === 'string') {
220
- return label;
221
- }
222
- switch (verbosity) {
223
- case 0 :
224
- return label.short;
225
- case 2 :
226
- return label.long;
227
- case 1 :
228
- default:
229
- return label.medium;
230
- }
231
- }
232
- getName() {
233
- return this.name;
234
- }
235
- getTitle(verbosity) {
236
- return this.getLabelValue(this.title, verbosity);
237
- }
238
- getDescription(verbosity) {
239
- return this.getLabelValue(this.description, verbosity);
177
+ let SimpleEditorPane = class SimpleEditorPane extends EditorPane {
178
+ constructor(id, telemetryService, themeService, storageService) {
179
+ super(id, telemetryService, themeService, storageService);
180
+ this.inputDisposable = this._register(new MutableDisposable());
181
+ }
182
+ createEditor(parent) {
183
+ this.container = this.initialize();
184
+ this.scrollbar = this._register(new DomScrollableElement(this.container, { horizontal: 1 , vertical: 1 }));
185
+ parent.appendChild(this.scrollbar.getDomNode());
186
+ }
187
+ async setInput(input, editorOptions, context, token) {
188
+ await super.setInput(input, editorOptions, context, token);
189
+ if (token.isCancellationRequested) {
190
+ return;
240
191
  }
241
- isDirty() {
242
- return this.dirty;
192
+ this.inputDisposable.value = await this.renderInput?.(input, editorOptions, context, token);
193
+ }
194
+ layout(dimension) {
195
+ const [container, scrollbar] = assertAllDefined(this.container, this.scrollbar);
196
+ size(container, dimension.width, dimension.height);
197
+ scrollbar.scanDomNode();
198
+ }
199
+ focus() {
200
+ const container = assertIsDefined(this.container);
201
+ container.focus();
202
+ }
203
+ clearInput() {
204
+ this.inputDisposable.clear();
205
+ super.clearInput();
206
+ }
207
+ };
208
+ SimpleEditorPane = __decorate([
209
+ ( __param(1, ITelemetryService)),
210
+ ( __param(2, IThemeService)),
211
+ ( __param(3, IStorageService))
212
+ ], SimpleEditorPane);
213
+ class SimpleEditorInput extends EditorInput {
214
+ constructor(resource, closeHandler) {
215
+ super();
216
+ this.closeHandler = closeHandler;
217
+ this.dirty = false;
218
+ this._capabilities = 0;
219
+ this.resource = resource;
220
+ }
221
+ get capabilities() {
222
+ return this._capabilities;
223
+ }
224
+ addCapability(capability) {
225
+ this._capabilities |= capability;
226
+ this._onDidChangeCapabilities.fire();
227
+ }
228
+ removeCapability(capability) {
229
+ this._capabilities &= ~capability;
230
+ this._onDidChangeCapabilities.fire();
231
+ }
232
+ get editorId() {
233
+ return this.typeId;
234
+ }
235
+ setName(name) {
236
+ this.name = name;
237
+ this._onDidChangeLabel.fire();
238
+ }
239
+ setTitle(title) {
240
+ this.title = title;
241
+ this._onDidChangeLabel.fire();
242
+ }
243
+ setDescription(description) {
244
+ this.description = description;
245
+ this._onDidChangeLabel.fire();
246
+ }
247
+ getLabelValue(label, verbosity) {
248
+ if (typeof label === 'string') {
249
+ return label;
243
250
  }
244
- setDirty(dirty) {
245
- this.dirty = dirty;
246
- this._onDidChangeDirty.fire();
251
+ switch (verbosity) {
252
+ case 0 :
253
+ return label.short;
254
+ case 2 :
255
+ return label.long;
256
+ case 1 :
257
+ default:
258
+ return label.medium;
247
259
  }
248
260
  }
249
- CustomEditorInput.ID = `workbench.editors.${options.id}Input`;
250
- const disposable = ( Registry.as(EditorExtensions.EditorPane)).registerEditorPane(EditorPaneDescriptor.create(CustomEditorPane, options.id, options.name), [new SyncDescriptor(CustomEditorInput)]);
251
- return {
252
- disposable,
253
- CustomEditorInput
254
- };
261
+ getName() {
262
+ return this.name ?? 'Unnamed';
263
+ }
264
+ getTitle(verbosity) {
265
+ return this.getLabelValue(this.title ?? this.getName(), verbosity);
266
+ }
267
+ getDescription(verbosity) {
268
+ return this.getLabelValue(this.description ?? this.getName(), verbosity);
269
+ }
270
+ isDirty() {
271
+ return this.dirty;
272
+ }
273
+ setDirty(dirty) {
274
+ this.dirty = dirty;
275
+ this._onDidChangeDirty.fire();
276
+ }
277
+ }
278
+ function registerEditorPane(typeId, name, ctor, inputCtors) {
279
+ return ( Registry.as(EditorExtensions.EditorPane)).registerEditorPane(EditorPaneDescriptor.create(ctor, typeId, name), ( inputCtors.map(ctor => new SyncDescriptor(ctor))));
280
+ }
281
+ function registerEditor(globPattern, editorInfo, editorOptions, factory) {
282
+ return withReadyServices((servicesAccessor) => {
283
+ const resolverService = servicesAccessor.get(IEditorResolverService);
284
+ return resolverService.registerEditor(globPattern, editorInfo, editorOptions, factory);
285
+ });
255
286
  }
256
287
  function registerCustomView(options) {
257
288
  const iconUrl = options.icon != null ? ( URI.parse(options.icon)) : undefined;
@@ -262,7 +293,9 @@ function registerCustomView(options) {
262
293
  ctorDescriptor: new SyncDescriptor(ViewPaneContainer, [options.id, { mergeViewWithContainerWhenSingleView: true }]),
263
294
  hideIfEmpty: true,
264
295
  icon: iconUrl
265
- }, options.location);
296
+ }, options.location, {
297
+ isDefault: options.default
298
+ });
266
299
  const views = [{
267
300
  id: options.id,
268
301
  name: options.name,
@@ -297,11 +330,6 @@ function registerCustomView(options) {
297
330
  containerIcon: iconUrl
298
331
  }];
299
332
  ( Registry.as(Extensions.ViewsRegistry)).registerViews(views, VIEW_CONTAINER);
300
- if (options.default ?? false) {
301
- void StandaloneServices.get(ILifecycleService).when(4 ).then(() => {
302
- void StandaloneServices.get(IViewsService).openViewContainer(options.id);
303
- });
304
- }
305
333
  const disposableCollection = new DisposableStore();
306
334
  disposableCollection.add({
307
335
  dispose() {
@@ -478,11 +506,11 @@ function getServiceOverride(openEditorFallback, _webviewIframeAlternateDomains)
478
506
  return {
479
507
  ...getServiceOverride$1(),
480
508
  ...getServiceOverride$2(),
481
- ...getServiceOverride$3({
509
+ ...getServiceOverride$4({
482
510
  isKeybindingConfigurationVisible: isEditorPartVisible,
483
511
  shouldUseGlobalPicker: isEditorPartVisible
484
512
  }),
485
- ...getServiceOverride$4({
513
+ ...getServiceOverride$4$1({
486
514
  shouldUseGlobalKeybindings: isEditorPartVisible
487
515
  }),
488
516
  [( IViewsService.toString())]: new SyncDescriptor(ViewsService, [], false),
@@ -509,4 +537,4 @@ function getServiceOverride(openEditorFallback, _webviewIframeAlternateDomains)
509
537
  };
510
538
  }
511
539
 
512
- export { ActivityService, HoverService, attachPart, getServiceOverride as default, isEditorPartVisible, isPartVisibile, onPartVisibilityChange, registerCustomView, registerEditorPane, renderActivitybarPar, renderAuxiliaryPart, renderEditorPart, renderPanelPart, renderPart, renderSidebarPart, renderStatusBarPart, setPartVisibility };
540
+ export { ActivityService, HoverService, SimpleEditorInput, SimpleEditorPane, attachPart, getServiceOverride as default, isEditorPartVisible, isPartVisibile, onPartVisibilityChange, registerCustomView, registerEditor, registerEditorPane, renderActivitybarPar, renderAuxiliaryPart, renderEditorPart, renderPanelPart, renderPart, renderSidebarPart, renderStatusBarPart, setPartVisibility };
@@ -3,7 +3,7 @@ import * as nls from 'monaco-editor/esm/vs/nls.js';
3
3
 
4
4
  class CollapseAllAction extends Action {
5
5
  constructor(viewer, enabled) {
6
- super('vs.tree.collapse', nls.localizeWithPath('vs/base/browser/ui/tree/treeDefaults', 'collapse all', "Collapse All"), 'collapse-all', enabled);
6
+ super('vs.tree.collapse', ( nls.localizeWithPath('vs/base/browser/ui/tree/treeDefaults', 'collapse all', "Collapse All")), 'collapse-all', enabled);
7
7
  this.viewer = viewer;
8
8
  }
9
9
  async run() {