@codingame/monaco-vscode-views-service-override 1.83.7 → 1.83.8

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/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { CustomViewOption, SimpleEditorInput, SimpleEditorPane, attachPart, default, isEditorPartVisible, isPartVisibile, onPartVisibilityChange, registerCustomView, registerEditor, registerEditorPane, renderActivitybarPar, renderAuxiliaryPart, renderEditorPart, renderPanelPart, renderPart, renderSidebarPart, renderStatusBarPart, setPartVisibility } from './views.js';
1
+ export { CustomViewOption, SimpleEditorInput, SimpleEditorPane, attachPart, default, isEditorPartVisible, isPartVisibile, onPartVisibilityChange, registerCustomView, registerEditor, registerEditorPane, registerEditorSerializer, renderActivitybarPar, renderAuxiliaryPart, renderEditorPart, renderPanelPart, renderPart, renderSidebarPart, renderStatusBarPart, setPartVisibility } from './views.js';
2
2
  export { SidebarPart } from './vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.js';
3
3
  export { ActivityService } from 'vscode/vscode/vs/workbench/services/activity/browser/activityService';
4
4
  export { ActivitybarPart } from './vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.js';
@@ -11,7 +11,7 @@ export { ConfirmResult } from 'vscode/vscode/vs/platform/dialogs/common/dialogs'
11
11
  export { AbstractResourceEditorInput } from 'vscode/vscode/vs/workbench/common/editor/resourceEditorInput';
12
12
  export { AbstractTextResourceEditorInput } from 'vscode/vscode/vs/workbench/common/editor/textResourceEditorInput';
13
13
  export { EditorInput, IEditorCloseHandler } from 'vscode/vscode/vs/workbench/common/editor/editorInput';
14
- export { EditorInputCapabilities } from 'vscode/vscode/vs/workbench/common/editor';
14
+ export { EditorInputCapabilities, IEditorSerializer } from 'vscode/vscode/vs/workbench/common/editor';
15
15
  export { EditorPane } from './vscode/src/vs/workbench/browser/parts/editor/editorPane.js';
16
16
  export { IEditorOptions } from 'vscode/vscode/vs/platform/editor/common/editor';
17
17
  export { OpenEditor } from './tools/editor.js';
package/index.js CHANGED
@@ -1,4 +1,4 @@
1
- export { SimpleEditorInput, SimpleEditorPane, attachPart, default, isEditorPartVisible, isPartVisibile, onPartVisibilityChange, registerCustomView, registerEditor, registerEditorPane, renderActivitybarPar, renderAuxiliaryPart, renderEditorPart, renderPanelPart, renderPart, renderSidebarPart, renderStatusBarPart, setPartVisibility } from './views.js';
1
+ export { SimpleEditorInput, SimpleEditorPane, attachPart, default, isEditorPartVisible, isPartVisibile, onPartVisibilityChange, registerCustomView, registerEditor, registerEditorPane, registerEditorSerializer, renderActivitybarPar, renderAuxiliaryPart, renderEditorPart, renderPanelPart, renderPart, renderSidebarPart, renderStatusBarPart, setPartVisibility } from './views.js';
2
2
  export { ViewContainerLocation } from 'vscode/vscode/vs/workbench/common/views';
3
3
  export { SidebarPart } from './vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.js';
4
4
  export { ActivitybarPart } from './vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codingame/monaco-vscode-views-service-override",
3
- "version": "1.83.7",
3
+ "version": "1.83.8",
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.7",
21
+ "vscode": "npm:@codingame/monaco-vscode-api@1.83.8",
22
22
  "monaco-editor": "0.44.0"
23
23
  }
24
24
  }
package/services.js CHANGED
@@ -12,6 +12,7 @@ import 'vscode/service-override/extensions';
12
12
  import 'vscode/service-override/files';
13
13
  import 'vscode/service-override/quickaccess';
14
14
  import { serviceInitializedBarrier, serviceInitializedEmitter } from 'vscode/lifecycle';
15
+ import 'vscode/workbench';
15
16
  export { SyncDescriptor } from 'monaco-editor/esm/vs/platform/instantiation/common/descriptors.js';
16
17
  export { ICommandService } from 'monaco-editor/esm/vs/platform/commands/common/commands.js';
17
18
  export { INotificationService, NeverShowAgainScope, NoOpNotification, NoOpProgress, NotificationPriority, NotificationsFilter } from 'monaco-editor/esm/vs/platform/notification/common/notification.js';
package/views.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { IEditorOverrideServices } from 'vscode/vscode/vs/editor/standalone/browser/standaloneServices';
2
- import { ViewContainerLocation } from 'vscode/vscode/vs/workbench/common/views';
2
+ import { ViewContainerLocation, ViewContainer } from 'vscode/vscode/vs/workbench/common/views';
3
3
  export { ViewContainerLocation } from 'vscode/vscode/vs/workbench/common/views';
4
4
  import { BrandedService, ServicesAccessor } from 'vscode/vscode/vs/platform/instantiation/common/instantiation';
5
5
  import { Part } from 'vscode/vscode/vs/workbench/browser/part';
@@ -20,8 +20,8 @@ import { RegisteredEditorInfo, RegisteredEditorOptions, EditorInputFactoryObject
20
20
  export { EditorInputFactoryObject, RegisteredEditorInfo, RegisteredEditorOptions, RegisteredEditorPriority } from 'vscode/vscode/vs/workbench/services/editor/common/editorResolverService';
21
21
  import { EditorInput, IEditorCloseHandler } from 'vscode/vscode/vs/workbench/common/editor/editorInput';
22
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';
23
+ import { IEditorOpenContext, EditorInputCapabilities, Verbosity, IEditorSerializer } from 'vscode/vscode/vs/workbench/common/editor';
24
+ export { EditorInputCapabilities, IEditorSerializer } from 'vscode/vscode/vs/workbench/common/editor';
25
25
  import { EditorPane } from './vscode/src/vs/workbench/browser/parts/editor/editorPane.js';
26
26
  import { OpenEditor } from './tools/editor.js';
27
27
 
@@ -79,6 +79,9 @@ declare abstract class SimpleEditorInput extends EditorInput {
79
79
  }
80
80
  declare function registerEditorPane<Services extends BrandedService[]>(typeId: string, name: string, ctor: new (...services: Services) => EditorPane, inputCtors: (new (...args: any[]) => EditorInput)[]): IDisposable;
81
81
  declare function registerEditor(globPattern: string, editorInfo: RegisteredEditorInfo, editorOptions: RegisteredEditorOptions, factory: EditorInputFactoryObject): IDisposable;
82
+ declare function registerEditorSerializer<Services extends BrandedService[]>(editorTypeId: string, ctor: {
83
+ new (...Services: Services): IEditorSerializer;
84
+ }): IDisposable;
82
85
  interface CustomViewOption {
83
86
  readonly id: string;
84
87
  name: string;
@@ -97,9 +100,13 @@ interface CustomViewOption {
97
100
  icon?: keyof typeof Codicon;
98
101
  render?(container: HTMLElement): void;
99
102
  }[];
103
+ viewContainer?: ViewContainer;
104
+ canToggleVisibility?: boolean;
105
+ hideByDefault?: boolean;
106
+ collapsed?: boolean;
100
107
  }
101
108
  declare function registerCustomView(options: CustomViewOption): IDisposable;
102
109
  declare function isEditorPartVisible(): boolean;
103
110
  declare function getServiceOverride(openEditorFallback?: OpenEditor, _webviewIframeAlternateDomains?: string, _restoreEditorView?: boolean): IEditorOverrideServices;
104
111
 
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 };
112
+ export { type CustomViewOption, EditorPane, OpenEditor, SimpleEditorInput, SimpleEditorPane, attachPart, getServiceOverride as default, isEditorPartVisible, isPartVisibile, onPartVisibilityChange, registerCustomView, registerEditor, registerEditorPane, registerEditorSerializer, renderActivitybarPar, renderAuxiliaryPart, renderEditorPart, renderPanelPart, renderPart, renderSidebarPart, renderStatusBarPart, setPartVisibility };
package/views.js CHANGED
@@ -99,7 +99,7 @@ import getServiceOverride$4 from 'vscode/service-override/quickaccess';
99
99
  import getServiceOverride$4$1 from 'vscode/service-override/keybindings';
100
100
  import { changeUrlDomain } from './tools/url.js';
101
101
  import { registerAssets } from 'vscode/assets';
102
- import { registerServiceInitializePostParticipant } from 'vscode/lifecycle';
102
+ import { onRenderWorkbench } from 'vscode/lifecycle';
103
103
  import { withReadyServices } from './services.js';
104
104
 
105
105
  function createPart(id, role, classes) {
@@ -284,9 +284,12 @@ function registerEditor(globPattern, editorInfo, editorOptions, factory) {
284
284
  return resolverService.registerEditor(globPattern, editorInfo, editorOptions, factory);
285
285
  });
286
286
  }
287
+ function registerEditorSerializer(editorTypeId, ctor) {
288
+ return ( Registry.as(EditorExtensions.EditorFactory)).registerEditorSerializer(editorTypeId, ctor);
289
+ }
287
290
  function registerCustomView(options) {
288
291
  const iconUrl = options.icon != null ? ( URI.parse(options.icon)) : undefined;
289
- const VIEW_CONTAINER = ( Registry.as(Extensions.ViewContainersRegistry)).registerViewContainer({
292
+ const viewContainer = options.viewContainer ?? ( Registry.as(Extensions.ViewContainersRegistry)).registerViewContainer({
290
293
  id: options.id,
291
294
  title: { value: options.name, original: options.name },
292
295
  order: options.order,
@@ -299,7 +302,6 @@ function registerCustomView(options) {
299
302
  const views = [{
300
303
  id: options.id,
301
304
  name: options.name,
302
- canToggleVisibility: false,
303
305
  ctorDescriptor: new SyncDescriptor(class extends ViewPane {
304
306
  renderBody(container) {
305
307
  super.renderBody(container);
@@ -327,14 +329,20 @@ function registerCustomView(options) {
327
329
  }
328
330
  }),
329
331
  canMoveView: options.canMoveView ?? true,
332
+ canToggleVisibility: options.canToggleVisibility ?? false,
333
+ hideByDefault: options.hideByDefault ?? false,
334
+ collapsed: options.collapsed ?? false,
335
+ order: options.order,
330
336
  containerIcon: iconUrl
331
337
  }];
332
- ( Registry.as(Extensions.ViewsRegistry)).registerViews(views, VIEW_CONTAINER);
338
+ ( Registry.as(Extensions.ViewsRegistry)).registerViews(views, viewContainer);
333
339
  const disposableCollection = new DisposableStore();
334
340
  disposableCollection.add({
335
341
  dispose() {
336
- ( Registry.as(Extensions.ViewsRegistry)).deregisterViews(views, VIEW_CONTAINER);
337
- ( Registry.as(Extensions.ViewContainersRegistry)).deregisterViewContainer(VIEW_CONTAINER);
342
+ ( Registry.as(Extensions.ViewsRegistry)).deregisterViews(views, viewContainer);
343
+ if (options.viewContainer == null) {
344
+ ( Registry.as(Extensions.ViewContainersRegistry)).deregisterViewContainer(viewContainer);
345
+ }
338
346
  }
339
347
  });
340
348
  for (const action of options.actions ?? []) {
@@ -466,13 +474,12 @@ registerAssets({
466
474
  'vs/workbench/contrib/webview/browser/pre/fake.html': () => changeUrlDomain(new URL(new URL('./assets/fake.html', import.meta.url).href, import.meta.url).href, webviewIframeAlternateDomains)
467
475
  });
468
476
  let restoreEditorView = false;
469
- registerServiceInitializePostParticipant(async (accessor) => {
477
+ onRenderWorkbench(async (accessor) => {
470
478
  const paneCompositePartService = accessor.get(IPaneCompositePartService);
471
479
  const viewDescriptorService = accessor.get(IViewDescriptorService);
472
480
  const withStatusBar = accessor.get(IStatusbarService) instanceof Part;
473
481
  const withBannerPart = accessor.get(IBannerService) instanceof Part;
474
482
  const withTitlePart = accessor.get(ITitleService) instanceof Part;
475
- paneCompositePartService.getPaneComposites(1 );
476
483
  const layoutService = accessor.get(ILayoutService);
477
484
  const invisibleContainer = document.createElement('div');
478
485
  invisibleContainer.style.display = 'none';
@@ -541,4 +548,4 @@ function getServiceOverride(openEditorFallback, _webviewIframeAlternateDomains,
541
548
  };
542
549
  }
543
550
 
544
- export { ActivityService, HoverService, SimpleEditorInput, SimpleEditorPane, attachPart, getServiceOverride as default, isEditorPartVisible, isPartVisibile, onPartVisibilityChange, registerCustomView, registerEditor, registerEditorPane, renderActivitybarPar, renderAuxiliaryPart, renderEditorPart, renderPanelPart, renderPart, renderSidebarPart, renderStatusBarPart, setPartVisibility };
551
+ export { ActivityService, HoverService, SimpleEditorInput, SimpleEditorPane, attachPart, getServiceOverride as default, isEditorPartVisible, isPartVisibile, onPartVisibilityChange, registerCustomView, registerEditor, registerEditorPane, registerEditorSerializer, renderActivitybarPar, renderAuxiliaryPart, renderEditorPart, renderPanelPart, renderPart, renderSidebarPart, renderStatusBarPart, setPartVisibility };
@@ -3,7 +3,7 @@ import { Registry } from 'monaco-editor/esm/vs/platform/registry/common/platform
3
3
  import { EditorPaneDescriptor } from 'vscode/vscode/vs/workbench/browser/editor';
4
4
  import { Extensions } from 'vscode/vscode/vs/workbench/common/contributions';
5
5
  import { EditorExtensions } from 'vscode/vscode/vs/workbench/common/editor';
6
- import { ComplexCustomWorkingCopyEditorHandler } from './customEditorInputFactory.js';
6
+ import { CustomEditorInputSerializer, ComplexCustomWorkingCopyEditorHandler } from './customEditorInputFactory.js';
7
7
  import { WebviewEditor } from 'vscode/vscode/vs/workbench/contrib/webviewPanel/browser/webviewEditor';
8
8
  import { CustomEditorInput } from 'vscode/vscode/vs/workbench/contrib/customEditor/browser/customEditorInput';
9
9
 
@@ -11,5 +11,7 @@ import { CustomEditorInput } from 'vscode/vscode/vs/workbench/contrib/customEdit
11
11
  .registerEditorPane(EditorPaneDescriptor.create(WebviewEditor, WebviewEditor.ID, 'Webview Editor'), [
12
12
  ( new SyncDescriptor(CustomEditorInput))
13
13
  ]);
14
+ ( Registry.as(EditorExtensions.EditorFactory))
15
+ .registerEditorSerializer(CustomEditorInputSerializer.ID, CustomEditorInputSerializer);
14
16
  ( Registry.as(Extensions.Workbench))
15
17
  .registerWorkbenchContribution(ComplexCustomWorkingCopyEditorHandler, 1 );
@@ -9,10 +9,11 @@ import { ICustomEditorService } from 'vscode/vscode/vs/workbench/contrib/customE
9
9
  import { NotebookEditorInput } from '../../../../../../../override/vs/workbench/contrib/notebook/common/notebookEditorInput.js';
10
10
  import { IWebviewService } from 'vscode/vscode/vs/workbench/contrib/webview/browser/webview';
11
11
  import { WebviewEditorInputSerializer, reviveWebviewExtensionDescription, restoreWebviewOptions, restoreWebviewContentOptions } from '../../webviewPanel/browser/webviewEditorInputSerializer.js';
12
+ import { IWebviewWorkbenchService } from 'vscode/vscode/vs/workbench/contrib/webviewPanel/browser/webviewWorkbenchService';
12
13
  import { IWorkingCopyBackupService } from 'vscode/vscode/vs/workbench/services/workingCopy/common/workingCopyBackup';
13
14
  import { IWorkingCopyEditorService } from 'vscode/vscode/vs/workbench/services/workingCopy/common/workingCopyEditorService';
14
15
 
15
- (class CustomEditorInputSerializer extends WebviewEditorInputSerializer {
16
+ let CustomEditorInputSerializer = class CustomEditorInputSerializer extends WebviewEditorInputSerializer {
16
17
  static { this.ID = CustomEditorInput.typeId; }
17
18
  constructor(webviewWorkbenchService, _instantiationService, _webviewService) {
18
19
  super(webviewWorkbenchService);
@@ -50,7 +51,12 @@ import { IWorkingCopyEditorService } from 'vscode/vscode/vs/workbench/services/w
50
51
  }
51
52
  return customInput;
52
53
  }
53
- });
54
+ };
55
+ CustomEditorInputSerializer = ( __decorate([
56
+ ( __param(0, IWebviewWorkbenchService)),
57
+ ( __param(1, IInstantiationService)),
58
+ ( __param(2, IWebviewService))
59
+ ], CustomEditorInputSerializer));
54
60
  function reviveWebview(webviewService, data) {
55
61
  const webview = webviewService.createWebviewOverlay({
56
62
  providedViewType: data.viewType,
@@ -136,4 +142,4 @@ ComplexCustomWorkingCopyEditorHandler = ( __decorate([
136
142
  ( __param(4, ICustomEditorService))
137
143
  ], ComplexCustomWorkingCopyEditorHandler));
138
144
 
139
- export { ComplexCustomWorkingCopyEditorHandler };
145
+ export { ComplexCustomWorkingCopyEditorHandler, CustomEditorInputSerializer };
@@ -1,11 +1,47 @@
1
1
  import { __decorate, __param } from '../../../../../../../../external/tslib/tslib.es6.js';
2
2
  import { Disposable } from 'monaco-editor/esm/vs/base/common/lifecycle.js';
3
+ import { URI } from 'monaco-editor/esm/vs/base/common/uri.js';
3
4
  import { ITextEditorService } from 'vscode/vscode/vs/workbench/services/textfile/common/textEditorService';
4
5
  import { isEqual } from 'monaco-editor/esm/vs/base/common/resources.js';
5
6
  import { NO_TYPE_ID } from 'vscode/vscode/vs/workbench/services/workingCopy/common/workingCopy';
6
7
  import { IWorkingCopyEditorService } from 'vscode/vscode/vs/workbench/services/workingCopy/common/workingCopyEditorService';
7
8
  import { IFileService } from 'monaco-editor/esm/vs/platform/files/common/files.js';
8
9
 
10
+ class FileEditorInputSerializer {
11
+ canSerialize(editorInput) {
12
+ return true;
13
+ }
14
+ serialize(editorInput) {
15
+ const fileEditorInput = editorInput;
16
+ const resource = fileEditorInput.resource;
17
+ const preferredResource = fileEditorInput.preferredResource;
18
+ const serializedFileEditorInput = {
19
+ resourceJSON: resource.toJSON(),
20
+ preferredResourceJSON: isEqual(resource, preferredResource) ? undefined : preferredResource,
21
+ name: fileEditorInput.getPreferredName(),
22
+ description: fileEditorInput.getPreferredDescription(),
23
+ encoding: fileEditorInput.getEncoding(),
24
+ modeId: fileEditorInput.getPreferredLanguageId()
25
+ };
26
+ return JSON.stringify(serializedFileEditorInput);
27
+ }
28
+ deserialize(instantiationService, serializedEditorInput) {
29
+ return instantiationService.invokeFunction(accessor => {
30
+ const serializedFileEditorInput = JSON.parse(serializedEditorInput);
31
+ const resource = URI.revive(serializedFileEditorInput.resourceJSON);
32
+ const preferredResource = URI.revive(serializedFileEditorInput.preferredResourceJSON);
33
+ const name = serializedFileEditorInput.name;
34
+ const description = serializedFileEditorInput.description;
35
+ const encoding = serializedFileEditorInput.encoding;
36
+ const languageId = serializedFileEditorInput.modeId;
37
+ const fileEditorInput = accessor.get(ITextEditorService).createTextEditor({ resource, label: name, description, encoding, languageId, forceFile: true });
38
+ if (preferredResource) {
39
+ fileEditorInput.setPreferredResource(preferredResource);
40
+ }
41
+ return fileEditorInput;
42
+ });
43
+ }
44
+ }
9
45
  let FileEditorWorkingCopyEditorHandler = class FileEditorWorkingCopyEditorHandler extends Disposable {
10
46
  constructor(workingCopyEditorService, textEditorService, fileService) {
11
47
  super();
@@ -35,4 +71,4 @@ FileEditorWorkingCopyEditorHandler = ( __decorate([
35
71
  ( __param(2, IFileService))
36
72
  ], FileEditorWorkingCopyEditorHandler));
37
73
 
38
- export { FileEditorWorkingCopyEditorHandler };
74
+ export { FileEditorInputSerializer, FileEditorWorkingCopyEditorHandler };
@@ -21,7 +21,7 @@ import { DirtyFilesIndicator } from '../common/dirtyFilesIndicator.js';
21
21
  import { UndoCommand, RedoCommand } from 'monaco-editor/esm/vs/editor/browser/editorExtensions.js';
22
22
  import { IUndoRedoService } from 'monaco-editor/esm/vs/platform/undoRedo/common/undoRedo.js';
23
23
  import { IExplorerService } from 'vscode/vscode/vs/workbench/contrib/files/browser/files';
24
- import { FileEditorWorkingCopyEditorHandler } from './editors/fileEditorHandler.js';
24
+ import { FileEditorInputSerializer, FileEditorWorkingCopyEditorHandler } from './editors/fileEditorHandler.js';
25
25
  import { ModesRegistry } from 'monaco-editor/esm/vs/editor/common/languages/modesRegistry.js';
26
26
  import { IConfigurationService } from 'monaco-editor/esm/vs/platform/configuration/common/configuration.js';
27
27
  import { TextFileEditor } from './editors/textFileEditor.js';
@@ -67,6 +67,7 @@ FileUriLabelContribution = ( __decorate([
67
67
  return obj instanceof FileEditorInput;
68
68
  }
69
69
  });
70
+ ( Registry.as(EditorExtensions.EditorFactory)).registerEditorSerializer(FILE_EDITOR_INPUT_ID, FileEditorInputSerializer);
70
71
  ( Registry.as(Extensions.Workbench)).registerWorkbenchContribution(FileEditorWorkingCopyEditorHandler, 2 );
71
72
  ( Registry.as(Extensions.Workbench)).registerWorkbenchContribution(ExplorerViewletViewsContribution, 1 );
72
73
  ( Registry.as(Extensions.Workbench)).registerWorkbenchContribution(TextFileEditorTracker, 1 );
@@ -12,6 +12,7 @@ import { IEditorGroupsService } from 'vscode/vscode/vs/workbench/services/editor
12
12
  import { ShowWebViewEditorFindWidgetAction, HideWebViewEditorFindCommand, WebViewEditorFindNextCommand, WebViewEditorFindPreviousCommand, ReloadWebviewAction } from './webviewCommands.js';
13
13
  import { WebviewEditor } from 'vscode/vscode/vs/workbench/contrib/webviewPanel/browser/webviewEditor';
14
14
  import { WebviewInput } from 'vscode/vscode/vs/workbench/contrib/webviewPanel/browser/webviewEditorInput';
15
+ import { WebviewEditorInputSerializer } from './webviewEditorInputSerializer.js';
15
16
 
16
17
  (( Registry.as(EditorExtensions.EditorPane))).registerEditorPane(EditorPaneDescriptor.create(WebviewEditor, WebviewEditor.ID, ( localizeWithPath(
17
18
  'vs/workbench/contrib/webviewPanel/browser/webviewPanel.contribution',
@@ -59,6 +60,7 @@ WebviewPanelContribution = ( __decorate([
59
60
  ], WebviewPanelContribution));
60
61
  const workbenchContributionsRegistry = ( Registry.as(Extensions.Workbench));
61
62
  workbenchContributionsRegistry.registerWorkbenchContribution(WebviewPanelContribution, 1 );
63
+ ( Registry.as(EditorExtensions.EditorFactory)).registerEditorSerializer(WebviewEditorInputSerializer.ID, WebviewEditorInputSerializer);
62
64
  registerAction2(ShowWebViewEditorFindWidgetAction);
63
65
  registerAction2(HideWebViewEditorFindCommand);
64
66
  registerAction2(WebViewEditorFindNextCommand);