@codingame/monaco-vscode-api 1.83.13 → 1.83.15-next.0

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 (127) hide show
  1. package/api.js +1 -1
  2. package/contributions.js +36 -0
  3. package/extensions.d.ts +83 -4
  4. package/extensions.js +9 -14
  5. package/lifecycle.js +4 -1
  6. package/localExtensionHost.js +207 -0
  7. package/missing-services.js +27 -9
  8. package/monaco-editor-treemending.patch +3376 -3365
  9. package/monaco.js +4 -36
  10. package/package.json +10 -6
  11. package/service-override/tools/editor.d.ts +6 -6
  12. package/service-override/tools/editor.js +4 -4
  13. package/services.d.ts +18 -18
  14. package/services.js +1 -0
  15. package/vscode/src/vs/base/common/errors.d.ts +1 -8
  16. package/vscode/src/vs/base/common/uri.d.ts +1 -7
  17. package/vscode/src/vs/platform/terminal/common/terminal.d.ts +2 -27
  18. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.d.ts +39 -1
  19. package/vscode/src/vs/platform/workspace/common/workspace.d.ts +1 -44
  20. package/vscode/src/vs/workbench/api/browser/statusBarExtensionPoint.js +160 -2
  21. package/vscode/src/vs/workbench/contrib/search/browser/searchModel.js +1 -0
  22. package/vscode/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.d.ts +10 -0
  23. package/vscode/src/vs/workbench/services/extensions/common/extensionDescriptionRegistry.d.ts +2 -37
  24. package/vscode/src/vs/workbench/services/extensions/common/extensionHostProtocol.d.ts +2 -73
  25. package/vscode/src/vs/workbench/services/extensions/common/extensions.d.ts +1 -5
  26. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +174 -0
  27. package/vscode-dts/vscode.proposed.aiRelatedInformation.d.ts +49 -0
  28. package/vscode-dts/vscode.proposed.authGetSessions.d.ts +62 -0
  29. package/vscode-dts/vscode.proposed.authSession.d.ts +13 -0
  30. package/vscode-dts/vscode.proposed.canonicalUriProvider.d.ts +47 -0
  31. package/vscode-dts/vscode.proposed.chat.d.ts +25 -0
  32. package/vscode-dts/vscode.proposed.chatAgents.d.ts +39 -0
  33. package/vscode-dts/vscode.proposed.chatProvider.d.ts +38 -0
  34. package/vscode-dts/vscode.proposed.chatRequestAccess.d.ts +47 -0
  35. package/vscode-dts/vscode.proposed.chatSlashCommands.d.ts +47 -0
  36. package/vscode-dts/vscode.proposed.chatVariables.d.ts +35 -0
  37. package/vscode-dts/vscode.proposed.codiconDecoration.d.ts +48 -0
  38. package/vscode-dts/vscode.proposed.commentsDraftState.d.ts +18 -0
  39. package/vscode-dts/vscode.proposed.contribCommentEditorActionsMenu.d.ts +6 -0
  40. package/vscode-dts/vscode.proposed.contribCommentPeekContext.d.ts +10 -0
  41. package/vscode-dts/vscode.proposed.contribCommentThreadAdditionalMenu.d.ts +8 -0
  42. package/vscode-dts/vscode.proposed.contribEditSessions.d.ts +8 -0
  43. package/vscode-dts/vscode.proposed.contribEditorContentMenu.d.ts +6 -0
  44. package/vscode-dts/vscode.proposed.contribLabelFormatterWorkspaceTooltip.d.ts +6 -0
  45. package/vscode-dts/vscode.proposed.contribMenuBarHome.d.ts +6 -0
  46. package/vscode-dts/vscode.proposed.contribMergeEditorMenus.d.ts +6 -0
  47. package/vscode-dts/vscode.proposed.contribNotebookStaticPreloads.d.ts +6 -0
  48. package/vscode-dts/vscode.proposed.contribRemoteHelp.d.ts +6 -0
  49. package/vscode-dts/vscode.proposed.contribShareMenu.d.ts +7 -0
  50. package/vscode-dts/vscode.proposed.contribStatusBarItems.d.ts +8 -0
  51. package/vscode-dts/vscode.proposed.contribViewsRemote.d.ts +6 -0
  52. package/vscode-dts/vscode.proposed.contribViewsWelcome.d.ts +6 -0
  53. package/vscode-dts/vscode.proposed.customEditorMove.d.ts +29 -0
  54. package/vscode-dts/vscode.proposed.debugFocus.d.ts +74 -0
  55. package/vscode-dts/vscode.proposed.diffCommand.d.ts +38 -0
  56. package/vscode-dts/vscode.proposed.diffContentOptions.d.ts +16 -0
  57. package/vscode-dts/vscode.proposed.documentFiltersExclusive.d.ts +13 -0
  58. package/vscode-dts/vscode.proposed.documentPaste.d.ts +111 -0
  59. package/vscode-dts/vscode.proposed.dropMetadata.d.ts +60 -0
  60. package/vscode-dts/vscode.proposed.editSessionIdentityProvider.d.ts +71 -0
  61. package/vscode-dts/vscode.proposed.editorInsets.d.ts +22 -0
  62. package/vscode-dts/vscode.proposed.extensionRuntime.d.ts +24 -0
  63. package/vscode-dts/vscode.proposed.extensionsAny.d.ts +40 -0
  64. package/vscode-dts/vscode.proposed.externalUriOpener.d.ts +163 -0
  65. package/vscode-dts/vscode.proposed.fileComments.d.ts +85 -0
  66. package/vscode-dts/vscode.proposed.fileSearchProvider.d.ts +67 -0
  67. package/vscode-dts/vscode.proposed.findTextInFiles.d.ts +104 -0
  68. package/vscode-dts/vscode.proposed.fsChunks.d.ts +16 -0
  69. package/vscode-dts/vscode.proposed.handleIssueUri.d.ts +31 -0
  70. package/vscode-dts/vscode.proposed.idToken.d.ts +16 -0
  71. package/vscode-dts/vscode.proposed.inlineCompletionsAdditions.d.ts +71 -0
  72. package/vscode-dts/vscode.proposed.interactive.d.ts +227 -0
  73. package/vscode-dts/vscode.proposed.interactiveUserActions.d.ts +70 -0
  74. package/vscode-dts/vscode.proposed.interactiveWindow.d.ts +25 -0
  75. package/vscode-dts/vscode.proposed.ipc.d.ts +37 -0
  76. package/vscode-dts/vscode.proposed.mappedEditsProvider.d.ts +42 -0
  77. package/vscode-dts/vscode.proposed.notebookCellExecutionState.d.ts +52 -0
  78. package/vscode-dts/vscode.proposed.notebookControllerAffinityHidden.d.ts +17 -0
  79. package/vscode-dts/vscode.proposed.notebookDeprecated.d.ts +16 -0
  80. package/vscode-dts/vscode.proposed.notebookExecution.d.ts +39 -0
  81. package/vscode-dts/vscode.proposed.notebookKernelSource.d.ts +46 -0
  82. package/vscode-dts/vscode.proposed.notebookLiveShare.d.ts +21 -0
  83. package/vscode-dts/vscode.proposed.notebookMessaging.d.ts +68 -0
  84. package/vscode-dts/vscode.proposed.notebookMime.d.ts +33 -0
  85. package/vscode-dts/vscode.proposed.portsAttributes.d.ts +100 -0
  86. package/vscode-dts/vscode.proposed.profileContentHandlers.d.ts +19 -0
  87. package/vscode-dts/vscode.proposed.quickDiffProvider.d.ts +17 -0
  88. package/vscode-dts/vscode.proposed.quickPickItemTooltip.d.ts +16 -0
  89. package/vscode-dts/vscode.proposed.quickPickSortByLabel.d.ts +16 -0
  90. package/vscode-dts/vscode.proposed.readonlyMessage.d.ts +14 -0
  91. package/vscode-dts/vscode.proposed.resolvers.d.ts +371 -0
  92. package/vscode-dts/vscode.proposed.saveEditor.d.ts +35 -0
  93. package/vscode-dts/vscode.proposed.scmActionButton.d.ts +19 -0
  94. package/vscode-dts/vscode.proposed.scmHistoryProvider.d.ts +77 -0
  95. package/vscode-dts/vscode.proposed.scmSelectedProvider.d.ts +22 -0
  96. package/vscode-dts/vscode.proposed.scmTextDocument.d.ts +19 -0
  97. package/vscode-dts/vscode.proposed.scmValidation.d.ts +60 -0
  98. package/vscode-dts/vscode.proposed.shareProvider.d.ts +74 -0
  99. package/vscode-dts/vscode.proposed.showLocal.d.ts +19 -0
  100. package/vscode-dts/vscode.proposed.tabInputTextMerge.d.ts +25 -0
  101. package/vscode-dts/vscode.proposed.taskPresentationGroup.d.ts +16 -0
  102. package/vscode-dts/vscode.proposed.telemetry.d.ts +36 -0
  103. package/vscode-dts/vscode.proposed.terminalDataWriteEvent.d.ts +32 -0
  104. package/vscode-dts/vscode.proposed.terminalDimensions.d.ts +39 -0
  105. package/vscode-dts/vscode.proposed.terminalExecuteCommandEvent.d.ts +46 -0
  106. package/vscode-dts/vscode.proposed.terminalQuickFixProvider.d.ts +83 -0
  107. package/vscode-dts/vscode.proposed.terminalSelection.d.ts +16 -0
  108. package/vscode-dts/vscode.proposed.testCoverage.d.ts +198 -0
  109. package/vscode-dts/vscode.proposed.testMessageContextValue.d.ts +45 -0
  110. package/vscode-dts/vscode.proposed.testObserver.d.ts +184 -0
  111. package/vscode-dts/vscode.proposed.textSearchProvider.d.ts +281 -0
  112. package/vscode-dts/vscode.proposed.timeline.d.ts +163 -0
  113. package/vscode-dts/vscode.proposed.tokenInformation.d.ts +26 -0
  114. package/vscode-dts/vscode.proposed.treeViewActiveItem.d.ts +30 -0
  115. package/vscode-dts/vscode.proposed.treeViewMarkdownMessage.d.ts +28 -0
  116. package/vscode-dts/vscode.proposed.treeViewReveal.d.ts +13 -0
  117. package/vscode-dts/vscode.proposed.tunnelFactory.d.ts +44 -0
  118. package/vscode-dts/vscode.proposed.tunnels.d.ts +64 -0
  119. package/vscode-dts/vscode.proposed.windowActivity.d.ts +17 -0
  120. package/vscode-dts/vscode.proposed.workspaceTrust.d.ts +30 -0
  121. package/vscode/src/vs/base/common/ternarySearchTree.d.ts +0 -46
  122. package/vscode/src/vs/base/common/uriIpc.d.ts +0 -10
  123. package/vscode/src/vs/platform/extensionResourceLoader/browser/extensionResourceLoaderService.js +0 -42
  124. package/vscode/src/vs/platform/workspace/common/editSessions.d.ts +0 -7
  125. package/vscode/src/vs/workbench/services/extensions/common/proxyIdentifier.d.ts +0 -44
  126. package/vscode/src/vs/workbench/services/search/common/search.d.ts +0 -52
  127. package/vscode.proposed.d.ts +0 -4787
package/api.js CHANGED
@@ -22,7 +22,7 @@ function createProxy(key) {
22
22
  return new Proxy({}, {
23
23
  get(target, p) {
24
24
  if (defaultApi == null) {
25
- throw new Error('Default api is not ready yet, do not forget to call `initialize` from \'vscode/extensions\'');
25
+ throw new Error('Default api is not ready yet, do not forget to import \'vscode/localExtensionHost\' and wait for services initialization');
26
26
  }
27
27
  return defaultApi[key][p];
28
28
  }
@@ -0,0 +1,36 @@
1
+ import { __decorate, __param } from './external/tslib/tslib.es6.js';
2
+ import { IInstantiationService } from 'monaco-editor/esm/vs/platform/instantiation/common/instantiation.js';
3
+ import { Registry } from 'monaco-editor/esm/vs/platform/registry/common/platform.js';
4
+ import { JSONValidationExtensionPoint } from './vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js';
5
+ import { Extensions } from './vscode/src/vs/workbench/common/contributions.js';
6
+ import { ColorExtensionPoint } from './vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js';
7
+ import { IconExtensionPoint } from './vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js';
8
+ import './vscode/src/vs/workbench/contrib/codeEditor/browser/workbenchReferenceSearch.js';
9
+ import './vscode/src/vs/workbench/contrib/codeEditor/browser/menuPreventer.js';
10
+ import './vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js';
11
+ import './vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js';
12
+ import './vscode/src/vs/workbench/contrib/codeEditor/browser/inspectEditorTokens/inspectEditorTokens.js';
13
+ import './vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js';
14
+ import './vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js';
15
+ import './vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js';
16
+ import './vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js';
17
+ import './vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js';
18
+ import './vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js';
19
+ import './vscode/src/vs/workbench/contrib/codeEditor/browser/editorLineNumberMenu.js';
20
+ import './vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js';
21
+ import './vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js';
22
+ import './vscode/src/vs/workbench/contrib/codeActions/browser/codeActions.contribution.js';
23
+ import './vscode/src/vs/workbench/contrib/list/browser/list.contribution.js';
24
+ import './vscode/src/vs/workbench/contrib/codeEditor/browser/editorFeatures.js';
25
+ let ExtensionPoints = class ExtensionPoints {
26
+ constructor(instantiationService) {
27
+ this.instantiationService = instantiationService;
28
+ this.instantiationService.createInstance(JSONValidationExtensionPoint);
29
+ this.instantiationService.createInstance(ColorExtensionPoint);
30
+ this.instantiationService.createInstance(IconExtensionPoint);
31
+ }
32
+ };
33
+ ExtensionPoints = __decorate([
34
+ ( __param(0, IInstantiationService))
35
+ ], ExtensionPoints);
36
+ ( Registry.as(Extensions.Workbench)).registerWorkbenchContribution(ExtensionPoints, 1 );
package/extensions.d.ts CHANGED
@@ -1,4 +1,83 @@
1
- /// <reference path="vscode.proposed.d.ts" />
1
+ /// <reference path="./vscode-dts/vscode.proposed.aiRelatedInformation.d.ts" />
2
+ /// <reference path="./vscode-dts/vscode.proposed.authGetSessions.d.ts" />
3
+ /// <reference path="./vscode-dts/vscode.proposed.authSession.d.ts" />
4
+ /// <reference path="./vscode-dts/vscode.proposed.canonicalUriProvider.d.ts" />
5
+ /// <reference path="./vscode-dts/vscode.proposed.chat.d.ts" />
6
+ /// <reference path="./vscode-dts/vscode.proposed.chatAgents.d.ts" />
7
+ /// <reference path="./vscode-dts/vscode.proposed.chatProvider.d.ts" />
8
+ /// <reference path="./vscode-dts/vscode.proposed.chatRequestAccess.d.ts" />
9
+ /// <reference path="./vscode-dts/vscode.proposed.chatSlashCommands.d.ts" />
10
+ /// <reference path="./vscode-dts/vscode.proposed.chatVariables.d.ts" />
11
+ /// <reference path="./vscode-dts/vscode.proposed.codiconDecoration.d.ts" />
12
+ /// <reference path="./vscode-dts/vscode.proposed.commentsDraftState.d.ts" />
13
+ /// <reference path="./vscode-dts/vscode.proposed.customEditorMove.d.ts" />
14
+ /// <reference path="./vscode-dts/vscode.proposed.debugFocus.d.ts" />
15
+ /// <reference path="./vscode-dts/vscode.proposed.diffCommand.d.ts" />
16
+ /// <reference path="./vscode-dts/vscode.proposed.diffContentOptions.d.ts" />
17
+ /// <reference path="./vscode-dts/vscode.proposed.documentFiltersExclusive.d.ts" />
18
+ /// <reference path="./vscode-dts/vscode.proposed.documentPaste.d.ts" />
19
+ /// <reference path="./vscode-dts/vscode.proposed.dropMetadata.d.ts" />
20
+ /// <reference path="./vscode-dts/vscode.proposed.editSessionIdentityProvider.d.ts" />
21
+ /// <reference path="./vscode-dts/vscode.proposed.editorInsets.d.ts" />
22
+ /// <reference path="./vscode-dts/vscode.proposed.extensionRuntime.d.ts" />
23
+ /// <reference path="./vscode-dts/vscode.proposed.extensionsAny.d.ts" />
24
+ /// <reference path="./vscode-dts/vscode.proposed.externalUriOpener.d.ts" />
25
+ /// <reference path="./vscode-dts/vscode.proposed.fileComments.d.ts" />
26
+ /// <reference path="./vscode-dts/vscode.proposed.fileSearchProvider.d.ts" />
27
+ /// <reference path="./vscode-dts/vscode.proposed.findTextInFiles.d.ts" />
28
+ /// <reference path="./vscode-dts/vscode.proposed.fsChunks.d.ts" />
29
+ /// <reference path="./vscode-dts/vscode.proposed.handleIssueUri.d.ts" />
30
+ /// <reference path="./vscode-dts/vscode.proposed.idToken.d.ts" />
31
+ /// <reference path="./vscode-dts/vscode.proposed.inlineCompletionsAdditions.d.ts" />
32
+ /// <reference path="./vscode-dts/vscode.proposed.interactive.d.ts" />
33
+ /// <reference path="./vscode-dts/vscode.proposed.interactiveUserActions.d.ts" />
34
+ /// <reference path="./vscode-dts/vscode.proposed.interactiveWindow.d.ts" />
35
+ /// <reference path="./vscode-dts/vscode.proposed.ipc.d.ts" />
36
+ /// <reference path="./vscode-dts/vscode.proposed.mappedEditsProvider.d.ts" />
37
+ /// <reference path="./vscode-dts/vscode.proposed.notebookCellExecutionState.d.ts" />
38
+ /// <reference path="./vscode-dts/vscode.proposed.notebookControllerAffinityHidden.d.ts" />
39
+ /// <reference path="./vscode-dts/vscode.proposed.notebookDeprecated.d.ts" />
40
+ /// <reference path="./vscode-dts/vscode.proposed.notebookExecution.d.ts" />
41
+ /// <reference path="./vscode-dts/vscode.proposed.notebookKernelSource.d.ts" />
42
+ /// <reference path="./vscode-dts/vscode.proposed.notebookLiveShare.d.ts" />
43
+ /// <reference path="./vscode-dts/vscode.proposed.notebookMessaging.d.ts" />
44
+ /// <reference path="./vscode-dts/vscode.proposed.notebookMime.d.ts" />
45
+ /// <reference path="./vscode-dts/vscode.proposed.portsAttributes.d.ts" />
46
+ /// <reference path="./vscode-dts/vscode.proposed.profileContentHandlers.d.ts" />
47
+ /// <reference path="./vscode-dts/vscode.proposed.quickDiffProvider.d.ts" />
48
+ /// <reference path="./vscode-dts/vscode.proposed.quickPickItemTooltip.d.ts" />
49
+ /// <reference path="./vscode-dts/vscode.proposed.quickPickSortByLabel.d.ts" />
50
+ /// <reference path="./vscode-dts/vscode.proposed.readonlyMessage.d.ts" />
51
+ /// <reference path="./vscode-dts/vscode.proposed.resolvers.d.ts" />
52
+ /// <reference path="./vscode-dts/vscode.proposed.saveEditor.d.ts" />
53
+ /// <reference path="./vscode-dts/vscode.proposed.scmActionButton.d.ts" />
54
+ /// <reference path="./vscode-dts/vscode.proposed.scmHistoryProvider.d.ts" />
55
+ /// <reference path="./vscode-dts/vscode.proposed.scmSelectedProvider.d.ts" />
56
+ /// <reference path="./vscode-dts/vscode.proposed.scmTextDocument.d.ts" />
57
+ /// <reference path="./vscode-dts/vscode.proposed.scmValidation.d.ts" />
58
+ /// <reference path="./vscode-dts/vscode.proposed.shareProvider.d.ts" />
59
+ /// <reference path="./vscode-dts/vscode.proposed.showLocal.d.ts" />
60
+ /// <reference path="./vscode-dts/vscode.proposed.tabInputTextMerge.d.ts" />
61
+ /// <reference path="./vscode-dts/vscode.proposed.taskPresentationGroup.d.ts" />
62
+ /// <reference path="./vscode-dts/vscode.proposed.telemetry.d.ts" />
63
+ /// <reference path="./vscode-dts/vscode.proposed.terminalDataWriteEvent.d.ts" />
64
+ /// <reference path="./vscode-dts/vscode.proposed.terminalDimensions.d.ts" />
65
+ /// <reference path="./vscode-dts/vscode.proposed.terminalExecuteCommandEvent.d.ts" />
66
+ /// <reference path="./vscode-dts/vscode.proposed.terminalQuickFixProvider.d.ts" />
67
+ /// <reference path="./vscode-dts/vscode.proposed.terminalSelection.d.ts" />
68
+ /// <reference path="./vscode-dts/vscode.proposed.testCoverage.d.ts" />
69
+ /// <reference path="./vscode-dts/vscode.proposed.testMessageContextValue.d.ts" />
70
+ /// <reference path="./vscode-dts/vscode.proposed.testObserver.d.ts" />
71
+ /// <reference path="./vscode-dts/vscode.proposed.textSearchProvider.d.ts" />
72
+ /// <reference path="./vscode-dts/vscode.proposed.timeline.d.ts" />
73
+ /// <reference path="./vscode-dts/vscode.proposed.tokenInformation.d.ts" />
74
+ /// <reference path="./vscode-dts/vscode.proposed.treeViewActiveItem.d.ts" />
75
+ /// <reference path="./vscode-dts/vscode.proposed.treeViewMarkdownMessage.d.ts" />
76
+ /// <reference path="./vscode-dts/vscode.proposed.treeViewReveal.d.ts" />
77
+ /// <reference path="./vscode-dts/vscode.proposed.tunnelFactory.d.ts" />
78
+ /// <reference path="./vscode-dts/vscode.proposed.tunnels.d.ts" />
79
+ /// <reference path="./vscode-dts/vscode.proposed.windowActivity.d.ts" />
80
+ /// <reference path="./vscode-dts/vscode.proposed.workspaceTrust.d.ts" />
2
81
  import * as vscode from 'vscode';
3
82
  import { IExtensionManifest } from './vscode/src/vs/platform/extensions/common/extensions.js';
4
83
  export { IExtensionContributions } from './vscode/src/vs/platform/extensions/common/extensions.js';
@@ -6,7 +85,8 @@ import { IDisposable } from './vscode/src/vs/base/common/lifecycle.js';
6
85
  export { ITranslations } from './vscode/src/vs/platform/extensionManagement/common/extensionNls.js';
7
86
  import { ExtensionHostKind } from './vscode/src/vs/workbench/services/extensions/common/extensionHostKind.js';
8
87
 
9
- declare function initialize(): Promise<void>;
88
+ type ApiFactory = (extensionId?: string) => Promise<typeof vscode>;
89
+ declare function registerLocalApiFactory(_apiFactory: ApiFactory): void;
10
90
  interface RegisterExtensionParams {
11
91
  builtin?: boolean;
12
92
  path?: string;
@@ -33,6 +113,5 @@ declare function registerExtension(manifest: IExtensionManifest, extHostKind: Ex
33
113
  declare function registerExtension(manifest: IExtensionManifest, extHostKind: ExtensionHostKind.LocalWebWorker, params?: RegisterExtensionParams): RegisterLocalExtensionResult;
34
114
  declare function registerExtension(manifest: IExtensionManifest, extHostKind: ExtensionHostKind.Remote, params?: RegisterRemoteExtensionParams): RegisterRemoteExtensionResult;
35
115
  declare function registerExtension(manifest: IExtensionManifest, extHostKind?: ExtensionHostKind, params?: RegisterExtensionParams): RegisterExtensionResult;
36
- declare function onExtHostInitialized(fct: () => void): void;
37
116
 
38
- export { ExtensionHostKind, IExtensionManifest, initialize, onExtHostInitialized, registerExtension, registerRemoteExtension };
117
+ export { type ApiFactory, ExtensionHostKind, IExtensionManifest, registerExtension, registerLocalApiFactory, registerRemoteExtension };
package/extensions.js CHANGED
@@ -4,24 +4,19 @@ import { getExtensionId } from './vscode/src/vs/platform/extensionManagement/com
4
4
  import { DisposableStore } from 'monaco-editor/esm/vs/base/common/lifecycle.js';
5
5
  import { joinPath } from 'monaco-editor/esm/vs/base/common/resources.js';
6
6
  import { Schemas, FileAccess } from 'monaco-editor/esm/vs/base/common/network.js';
7
- import { Barrier } from 'monaco-editor/esm/vs/base/common/async.js';
8
7
  export { ExtensionHostKind } from './vscode/src/vs/workbench/services/extensions/common/extensionHostKind.js';
9
8
  import { IWorkbenchEnvironmentService } from './vscode/src/vs/workbench/services/environment/common/environmentService.js';
10
9
  import { parse } from 'monaco-editor/esm/vs/base/common/json.js';
11
10
  import { IFileService } from 'monaco-editor/esm/vs/platform/files/common/files.js';
12
11
  import { IInstantiationService } from 'monaco-editor/esm/vs/platform/instantiation/common/instantiation.js';
13
- import { getLocalExtHostExtensionService } from '@codingame/monaco-vscode-extensions-service-override';
14
12
  import { CustomSchemas, registerExtensionFile } from '@codingame/monaco-vscode-files-service-override';
15
- import { setDefaultApi } from './api.js';
16
13
  import { getService } from './services.js';
17
14
  import { ExtensionManifestTranslator } from './tools/l10n.js';
18
15
  import { throttle } from './tools.js';
19
- const defaultApiInitializeBarrier = new Barrier();
20
- async function initialize() {
21
- await getLocalExtHostExtensionService().then(async (extHostExtensionService) => {
22
- setDefaultApi(await extHostExtensionService.getApi());
23
- defaultApiInitializeBarrier.open();
24
- });
16
+ import { setDefaultApi } from './api.js';
17
+ let apiFactory;
18
+ function registerLocalApiFactory(_apiFactory) {
19
+ apiFactory = _apiFactory;
25
20
  }
26
21
  function registerExtensionFileUrl(extensionLocation, filePath, url, mimeType) {
27
22
  const fileDisposable = new DisposableStore();
@@ -104,7 +99,10 @@ function registerExtension(manifest, extHostKind, { builtin = manifest.publisher
104
99
  if (extHostKind === 1 ) {
105
100
  async function getApi() {
106
101
  await addExtensionPromise;
107
- return (await getLocalExtHostExtensionService()).getApi(id);
102
+ if (apiFactory == null) {
103
+ throw new Error('The local api can\'t be used without registering the local extension host by importing `vscode/localExtensionHost`');
104
+ }
105
+ return apiFactory(id);
108
106
  }
109
107
  api = {
110
108
  ...api,
@@ -116,7 +114,4 @@ function registerExtension(manifest, extHostKind, { builtin = manifest.publisher
116
114
  }
117
115
  return api;
118
116
  }
119
- function onExtHostInitialized(fct) {
120
- void defaultApiInitializeBarrier.wait().then(fct);
121
- }
122
- export { initialize, onExtHostInitialized, registerExtension, registerRemoteExtension };
117
+ export { registerExtension, registerLocalApiFactory, registerRemoteExtension };
package/lifecycle.js CHANGED
@@ -19,6 +19,9 @@ function registerServiceInitializePreParticipant(participant) {
19
19
  function registerServiceInitializeParticipant(participant) {
20
20
  serviceInitializeParticipants.push(participant);
21
21
  }
22
+ function registerServiceInitializePostParticipant(participant) {
23
+ serviceInitializePostParticipants.push(participant);
24
+ }
22
25
  async function startup(instantiationService) {
23
26
  await instantiationService.invokeFunction(async (accessor) => {
24
27
  await Promise.all(( serviceInitializePreParticipants.map(participant => participant(accessor))));
@@ -65,4 +68,4 @@ function checkServicesNotInitialized() {
65
68
  throw new Error('Services are already initialized');
66
69
  }
67
70
  }
68
- export { checkServicesNotInitialized, checkServicesReady, onRenderWorkbench, registerServiceInitializeParticipant, registerServiceInitializePreParticipant, serviceInitializedBarrier, serviceInitializedEmitter, startup, waitServicesReady };
71
+ export { checkServicesNotInitialized, checkServicesReady, onRenderWorkbench, registerServiceInitializeParticipant, registerServiceInitializePostParticipant, registerServiceInitializePreParticipant, serviceInitializedBarrier, serviceInitializedEmitter, startup, waitServicesReady };
@@ -0,0 +1,207 @@
1
+ import { __decorate, __param } from './external/tslib/tslib.es6.js';
2
+ import './missing-services.js';
3
+ import './vscode/src/vs/workbench/api/common/extHost.common.services.js';
4
+ import { ExtensionHostMain } from './vscode/src/vs/workbench/api/common/extensionHostMain.js';
5
+ import { BufferedEmitter } from './vscode/src/vs/base/parts/ipc/common/ipc.net.js';
6
+ import { isLoggingOnly } from './vscode/src/vs/platform/telemetry/common/telemetryUtils.js';
7
+ import { joinPath } from 'monaco-editor/esm/vs/base/common/resources.js';
8
+ import { UIKind } from './vscode/src/vs/workbench/services/extensions/common/extensionHostProtocol.js';
9
+ import * as platform from 'monaco-editor/esm/vs/base/common/platform.js';
10
+ import { IExtHostExtensionService } from './vscode/src/vs/workbench/api/common/extHostExtensionService.js';
11
+ import { nullExtensionDescription } from './vscode/src/vs/workbench/services/extensions/common/extensions.js';
12
+ import { ITelemetryService } from 'monaco-editor/esm/vs/platform/telemetry/common/telemetry.js';
13
+ import { IWorkspaceContextService } from 'monaco-editor/esm/vs/platform/workspace/common/workspace.js';
14
+ import { ILabelService } from 'monaco-editor/esm/vs/platform/label/common/label.js';
15
+ import { ILogService, ILoggerService } from 'monaco-editor/esm/vs/platform/log/common/log.js';
16
+ import { IBrowserWorkbenchEnvironmentService } from './vscode/src/vs/workbench/services/environment/browser/environmentService.js';
17
+ import { IProductService } from 'monaco-editor/esm/vs/platform/product/common/productService.js';
18
+ import { IUserDataProfilesService } from 'monaco-editor/esm/vs/platform/userDataProfile/common/userDataProfile.js';
19
+ import { URI } from 'monaco-editor/esm/vs/base/common/uri.js';
20
+ import { Event } from 'monaco-editor/esm/vs/base/common/event.js';
21
+ import { registerSingleton } from 'monaco-editor/esm/vs/platform/instantiation/common/extensions.js';
22
+ import { IExtensionStoragePaths, ExtensionStoragePaths } from './vscode/src/vs/workbench/api/common/extHostStoragePaths.js';
23
+ import { ExtHostExtensionService } from './vscode/src/vs/workbench/api/worker/extHostExtensionService.js';
24
+ import { ExtensionIdentifierMap } from 'monaco-editor/esm/vs/platform/extensions/common/extensions.js';
25
+ import { DeferredPromise } from 'monaco-editor/esm/vs/base/common/async.js';
26
+ import { setLocalExtensionHost } from '@codingame/monaco-vscode-extensions-service-override';
27
+ import { unsupported } from './tools.js';
28
+ import { registerLocalApiFactory } from './extensions.js';
29
+ import { setDefaultApi } from './api.js';
30
+ import { registerServiceInitializePostParticipant } from './lifecycle.js';
31
+ const apiFactoryDeferred = new DeferredPromise();
32
+ class LocalExtHostExtensionService extends ExtHostExtensionService {
33
+ constructor() {
34
+ super(...arguments);
35
+ this._extApiImpl = new ExtensionIdentifierMap();
36
+ }
37
+ async getApi(extensionId) {
38
+ const [myRegistry, configProvider] = await Promise.all([
39
+ this.getExtensionRegistry(),
40
+ this._extHostConfiguration.getConfigProvider()
41
+ ]);
42
+ const extensionRegistry = { mine: myRegistry, all: this._globalRegistry };
43
+ const ext = extensionId != null ? myRegistry.getExtensionDescription(extensionId) : undefined;
44
+ if (ext != null) {
45
+ let apiImpl = this._extApiImpl.get(ext.identifier);
46
+ if (apiImpl == null) {
47
+ apiImpl = this._apiFactory(ext, extensionRegistry, configProvider);
48
+ this._extApiImpl.set(ext.identifier, apiImpl);
49
+ }
50
+ return apiImpl;
51
+ }
52
+ if (this._defaultApiImpl == null) {
53
+ this._defaultApiImpl = this._apiFactory(nullExtensionDescription, extensionRegistry, configProvider);
54
+ }
55
+ return this._defaultApiImpl;
56
+ }
57
+ }
58
+ registerSingleton(IExtHostExtensionService, LocalExtHostExtensionService, 0 );
59
+ registerSingleton(IExtensionStoragePaths, ExtensionStoragePaths, 0 );
60
+ function createMessagePassingProtocolPair() {
61
+ const emitterA = new BufferedEmitter();
62
+ const emitterB = new BufferedEmitter();
63
+ class SimpleMessagePassingProtocol {
64
+ constructor(emitterIn, emitterOut) {
65
+ this.emitterIn = emitterIn;
66
+ this.emitterOut = emitterOut;
67
+ this.onMessage = this.emitterIn.event;
68
+ }
69
+ send(buffer) {
70
+ this.emitterOut.fire(buffer);
71
+ }
72
+ }
73
+ return [new SimpleMessagePassingProtocol(emitterA, emitterB), new SimpleMessagePassingProtocol(emitterB, emitterA)];
74
+ }
75
+ const hostUtil = new class {
76
+ constructor() {
77
+ this.pid = undefined;
78
+ this.exit = unsupported;
79
+ }
80
+ async exists(_path) {
81
+ return true;
82
+ }
83
+ async realpath(path) {
84
+ return path;
85
+ }
86
+ }();
87
+ let LocalExtensionHost = class LocalExtensionHost {
88
+ constructor(runningLocation, startup, _initDataProvider, _telemetryService, _contextService, _labelService, _logService, _loggerService, _environmentService, _productService, _userDataProfilesService) {
89
+ this.runningLocation = runningLocation;
90
+ this.startup = startup;
91
+ this._initDataProvider = _initDataProvider;
92
+ this._telemetryService = _telemetryService;
93
+ this._contextService = _contextService;
94
+ this._labelService = _labelService;
95
+ this._logService = _logService;
96
+ this._loggerService = _loggerService;
97
+ this._environmentService = _environmentService;
98
+ this._productService = _productService;
99
+ this._userDataProfilesService = _userDataProfilesService;
100
+ this.remoteAuthority = null;
101
+ this.extensions = null;
102
+ this.onExit = Event.None;
103
+ this._protocolPromise = null;
104
+ this._extensionHostLogsLocation = joinPath(this._environmentService.extHostLogsPath, 'local');
105
+ }
106
+ async start() {
107
+ if (this._protocolPromise == null) {
108
+ this._protocolPromise = this._start();
109
+ }
110
+ return this._protocolPromise;
111
+ }
112
+ async _start() {
113
+ const [mainThreadMessagePassingProtocol, extHostMessagePassingProtocol] = createMessagePassingProtocolPair();
114
+ const initData = await this._createExtHostInitData();
115
+ const hostMain = new ExtensionHostMain(extHostMessagePassingProtocol, initData, hostUtil, null);
116
+ const localExtHostExtensionService = hostMain.getExtHostExtensionService();
117
+ await apiFactoryDeferred.complete((extensionId) => localExtHostExtensionService.getApi(extensionId));
118
+ return mainThreadMessagePassingProtocol;
119
+ }
120
+ async _createExtHostInitData() {
121
+ const initData = await this._initDataProvider.getInitData();
122
+ this.extensions = initData.extensions;
123
+ const workspace = this._contextService.getWorkspace();
124
+ const nlsBaseUrl = this._productService.extensionsGallery?.nlsBaseUrl;
125
+ let nlsUrlWithDetails;
126
+ if (nlsBaseUrl != null && this._productService.commit != null && !platform.Language.isDefaultVariant()) {
127
+ nlsUrlWithDetails = URI.joinPath(( URI.parse(nlsBaseUrl)), this._productService.commit, this._productService.version, platform.Language.value());
128
+ }
129
+ return {
130
+ commit: this._productService.commit,
131
+ version: this._productService.version,
132
+ quality: this._productService.quality,
133
+ parentPid: 0,
134
+ environment: {
135
+ isExtensionDevelopmentDebug: this._environmentService.debugRenderer,
136
+ appName: this._productService.nameLong,
137
+ appHost: this._productService.embedderIdentifier ?? (platform.isWeb ? 'web' : 'desktop'),
138
+ appUriScheme: this._productService.urlProtocol,
139
+ appLanguage: platform.language,
140
+ extensionTelemetryLogResource: this._environmentService.extHostTelemetryLogFile,
141
+ isExtensionTelemetryLoggingOnly: isLoggingOnly(this._productService, this._environmentService),
142
+ extensionDevelopmentLocationURI: this._environmentService.extensionDevelopmentLocationURI,
143
+ extensionTestsLocationURI: this._environmentService.extensionTestsLocationURI,
144
+ globalStorageHome: this._userDataProfilesService.defaultProfile.globalStorageHome,
145
+ workspaceStorageHome: this._environmentService.workspaceStorageHome,
146
+ extensionLogLevel: this._environmentService.extensionLogLevel
147
+ },
148
+ workspace: this._contextService.getWorkbenchState() === 1
149
+ ? undefined
150
+ : {
151
+ configuration: workspace.configuration ?? undefined,
152
+ id: workspace.id,
153
+ name: this._labelService.getWorkspaceLabel(workspace),
154
+ transient: workspace.transient
155
+ },
156
+ consoleForward: {
157
+ includeStack: false,
158
+ logNative: this._environmentService.debugRenderer
159
+ },
160
+ extensions: initData.extensions.toSnapshot(),
161
+ nlsBaseUrl: nlsUrlWithDetails,
162
+ telemetryInfo: {
163
+ sessionId: this._telemetryService.sessionId,
164
+ machineId: this._telemetryService.machineId,
165
+ firstSessionDate: this._telemetryService.firstSessionDate,
166
+ msftInternal: this._telemetryService.msftInternal
167
+ },
168
+ logLevel: this._logService.getLevel(),
169
+ loggers: [...this._loggerService.getRegisteredLoggers()],
170
+ logsLocation: this._extensionHostLogsLocation,
171
+ autoStart: ((this.startup === 1) ),
172
+ remote: {
173
+ authority: this._environmentService.remoteAuthority,
174
+ connectionData: null,
175
+ isRemote: false
176
+ },
177
+ uiKind: platform.isWeb ? UIKind.Web : UIKind.Desktop
178
+ };
179
+ }
180
+ getInspectPort() {
181
+ return undefined;
182
+ }
183
+ enableInspectPort() {
184
+ return Promise.resolve(false);
185
+ }
186
+ dispose() {
187
+ }
188
+ };
189
+ LocalExtensionHost = __decorate([
190
+ ( __param(3, ITelemetryService)),
191
+ ( __param(4, IWorkspaceContextService)),
192
+ ( __param(5, ILabelService)),
193
+ ( __param(6, ILogService)),
194
+ ( __param(7, ILoggerService)),
195
+ ( __param(8, IBrowserWorkbenchEnvironmentService)),
196
+ ( __param(9, IProductService)),
197
+ ( __param(10, IUserDataProfilesService))
198
+ ], LocalExtensionHost);
199
+ async function createLocalApi(extensionId) {
200
+ const apiFactory = await apiFactoryDeferred.p;
201
+ return apiFactory(extensionId);
202
+ }
203
+ setLocalExtensionHost(LocalExtensionHost);
204
+ registerLocalApiFactory(createLocalApi);
205
+ registerServiceInitializePostParticipant(async () => {
206
+ setDefaultApi(await createLocalApi());
207
+ });
@@ -78,7 +78,6 @@ import { AbstractLifecycleService } from './vscode/src/vs/workbench/services/lif
78
78
  import { IOutputService } from './vscode/src/vs/workbench/services/output/common/output.js';
79
79
  import { IOutputChannelModelService, OutputChannelModelService } from './vscode/src/vs/workbench/contrib/output/common/outputChannelModelService.js';
80
80
  import { IExtensionResourceLoaderService } from './vscode/src/vs/platform/extensionResourceLoader/common/extensionResourceLoader.js';
81
- import { ExtensionResourceLoaderService } from './vscode/src/vs/platform/extensionResourceLoader/browser/extensionResourceLoaderService.js';
82
81
  import { IHoverService } from './vscode/src/vs/workbench/services/hover/browser/hover.js';
83
82
  import { IExplorerService } from './vscode/src/vs/workbench/contrib/files/browser/files.js';
84
83
  import { IExtensionStorageService, ExtensionStorageService } from './vscode/src/vs/platform/extensionManagement/common/extensionStorage.js';
@@ -114,7 +113,7 @@ import { IWorkingCopyEditorService, WorkingCopyEditorService } from './vscode/sr
114
113
  import { IUserActivityService, UserActivityService } from './vscode/src/vs/workbench/services/userActivity/common/userActivityService.js';
115
114
  import { CanonicalUriService } from './vscode/src/vs/workbench/services/workspaces/common/canonicalUriService.js';
116
115
  import { ICanonicalUriService } from './vscode/src/vs/platform/workspace/common/canonicalUri.js';
117
- import { IExtensionStatusBarItemService, ExtensionStatusBarItemService } from './vscode/src/vs/workbench/api/browser/statusBarExtensionPoint.js';
116
+ import { IExtensionStatusBarItemService } from './vscode/src/vs/workbench/api/browser/statusBarExtensionPoint.js';
118
117
  import { IWorkbenchAssignmentService } from './vscode/src/vs/workbench/services/assignment/common/assignmentService.js';
119
118
  import { IChatService } from './vscode/src/vs/workbench/contrib/chat/common/chatService.js';
120
119
  import { IEmbedderTerminalService } from './vscode/src/vs/workbench/services/terminal/common/embedderTerminalService.js';
@@ -177,8 +176,8 @@ import { IWorkspaceExtensionsConfigService } from './vscode/src/vs/workbench/ser
177
176
  import { IRemoteUserDataProfilesService } from './vscode/src/vs/workbench/services/userDataProfile/common/remoteUserDataProfiles.js';
178
177
  import { IExtensionBisectService } from './vscode/src/vs/workbench/services/extensionManagement/browser/extensionBisect.js';
179
178
  import { IUserDataSyncAccountService } from './vscode/src/vs/platform/userDataSync/common/userDataSyncAccount.js';
180
- import { getBuiltInExtensionTranslationsUris } from './l10n.js';
181
179
  import { unsupported } from './tools.js';
180
+ import { getBuiltInExtensionTranslationsUris } from './l10n.js';
182
181
  import { IFileDialogService } from './vscode/src/vs/platform/dialogs/common/dialogs.js';
183
182
  var _a;
184
183
  class NullLoggerService extends AbstractLoggerService {
@@ -332,10 +331,10 @@ class EmptyEditorGroup {
332
331
  this.closeEditors = unsupported;
333
332
  this.closeAllEditors = unsupported;
334
333
  this.replaceEditors = unsupported;
335
- this.pinEditor = unsupported;
336
- this.stickEditor = unsupported;
337
- this.unstickEditor = unsupported;
338
- this.lock = unsupported;
334
+ this.pinEditor = () => { };
335
+ this.stickEditor = () => { };
336
+ this.unstickEditor = () => { };
337
+ this.lock = () => { };
339
338
  this.isFirst = unsupported;
340
339
  this.isLast = unsupported;
341
340
  }
@@ -1159,7 +1158,14 @@ registerSingleton(IOutputService, class OutputService {
1159
1158
  }
1160
1159
  }, 1 );
1161
1160
  registerSingleton(IOutputChannelModelService, OutputChannelModelService, 1 );
1162
- registerSingleton(IExtensionResourceLoaderService, ExtensionResourceLoaderService, 0 );
1161
+ registerSingleton(IExtensionResourceLoaderService, class ExtensionResourceLoaderService {
1162
+ constructor() {
1163
+ this.readExtensionResource = unsupported;
1164
+ this.supportsExtensionGalleryResources = false;
1165
+ this.isExtensionGalleryResource = () => false;
1166
+ this.getExtensionGalleryResourceURL = unsupported;
1167
+ }
1168
+ }, 0 );
1163
1169
  registerSingleton(IBuiltinExtensionsScannerService, class BuiltinExtensionsScannerService {
1164
1170
  scanBuiltinExtensions() {
1165
1171
  return Promise.resolve([]);
@@ -1663,7 +1669,19 @@ registerSingleton(INotebookEditorModelResolverService, class NotebookEditorModel
1663
1669
  registerSingleton(IWorkingCopyEditorService, WorkingCopyEditorService, 1 );
1664
1670
  registerSingleton(IUserActivityService, UserActivityService, 1 );
1665
1671
  registerSingleton(ICanonicalUriService, CanonicalUriService, 1 );
1666
- registerSingleton(IExtensionStatusBarItemService, ExtensionStatusBarItemService, 1 );
1672
+ registerSingleton(IExtensionStatusBarItemService, class ExtensionStatusBarItemService {
1673
+ constructor() {
1674
+ this.onDidChange = Event.None;
1675
+ }
1676
+ setOrUpdateEntry() {
1677
+ return 1 ;
1678
+ }
1679
+ unsetEntry() {
1680
+ }
1681
+ getEntries() {
1682
+ return [];
1683
+ }
1684
+ }, 1 );
1667
1685
  registerSingleton(IWorkbenchAssignmentService, class WorkbenchAssignmentService {
1668
1686
  constructor() {
1669
1687
  this.getCurrentExperiments = async () => [];