@codingame/monaco-vscode-api 2.1.3 → 2.2.0-next.1

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 (191) hide show
  1. package/README.md +10 -0
  2. package/contributions.js +1 -0
  3. package/extensions.d.ts +6 -3
  4. package/extensions.js +18 -7
  5. package/lifecycle.js +11 -3
  6. package/missing-services.js +55 -10
  7. package/monaco.js +7 -3
  8. package/package.json +8 -8
  9. package/service-override/tools/editor.js +3 -1
  10. package/service-override/tools/views.d.ts +98 -0
  11. package/service-override/tools/views.js +249 -0
  12. package/services.d.ts +4 -2
  13. package/services.js +11 -9
  14. package/vscode/src/vs/base/browser/deviceAccess.js +60 -0
  15. package/vscode/src/vs/base/browser/dom.js +18 -1
  16. package/vscode/src/vs/base/browser/ui/centered/centeredViewLayout.js +178 -0
  17. package/vscode/src/vs/base/browser/ui/grid/grid.js +492 -0
  18. package/vscode/src/vs/base/browser/ui/grid/gridview.css.js +4 -0
  19. package/vscode/src/vs/base/browser/ui/grid/gridview.d.ts +1 -0
  20. package/vscode/src/vs/base/browser/ui/grid/gridview.js +1109 -0
  21. package/vscode/src/vs/base/browser/ui/sash/sash.js +9 -1
  22. package/vscode/src/vs/base/browser/ui/splitview/splitview.d.ts +348 -1
  23. package/vscode/src/vs/base/common/async.js +46 -2
  24. package/vscode/src/vs/base/common/codicons.d.ts +579 -0
  25. package/vscode/src/vs/base/common/event.js +11 -2
  26. package/vscode/src/vs/base/common/keybindingParser.js +87 -0
  27. package/vscode/src/vs/base/common/network.js +1 -2
  28. package/vscode/src/vs/base/common/observableInternal/utils.js +1 -1
  29. package/vscode/src/vs/base/common/platform.js +2 -1
  30. package/vscode/src/vs/base/common/scrollable.d.ts +28 -0
  31. package/vscode/src/vs/editor/browser/widget/multiDiffEditorWidget/colors.js +17 -0
  32. package/vscode/src/vs/editor/browser/widget/multiDiffEditorWidget/diffEditorItemTemplate.js +214 -0
  33. package/vscode/src/vs/editor/browser/widget/multiDiffEditorWidget/multiDiffEditorViewModel.js +84 -0
  34. package/vscode/src/vs/editor/browser/widget/multiDiffEditorWidget/multiDiffEditorWidget.js +54 -0
  35. package/vscode/src/vs/editor/browser/widget/multiDiffEditorWidget/multiDiffEditorWidgetImpl.js +324 -0
  36. package/vscode/src/vs/editor/browser/widget/multiDiffEditorWidget/objectPool.js +46 -0
  37. package/vscode/src/vs/editor/browser/widget/multiDiffEditorWidget/style.css.js +4 -0
  38. package/vscode/src/vs/editor/browser/widget/multiDiffEditorWidget/utils.js +11 -0
  39. package/vscode/src/vs/platform/keyboardLayout/common/keyboardLayout.js +61 -1
  40. package/vscode/src/vs/platform/languagePacks/common/localizedStrings.js +10 -0
  41. package/vscode/src/vs/platform/log/browser/log.js +24 -0
  42. package/vscode/src/vs/platform/product/common/product.js +1 -2
  43. package/vscode/src/vs/platform/userDataSync/common/abstractSynchronizer.js +772 -0
  44. package/vscode/src/vs/platform/userDataSync/common/userDataSyncStoreService.js +551 -0
  45. package/vscode/src/vs/platform/webview/common/mimeTypes.js +22 -0
  46. package/vscode/src/vs/platform/webview/common/webviewPortMapping.js +62 -0
  47. package/vscode/src/vs/workbench/api/browser/viewsExtensionPoint.js +788 -0
  48. package/vscode/src/vs/workbench/browser/actions/listCommands.js +763 -0
  49. package/vscode/src/vs/workbench/browser/layout.d.ts +26 -0
  50. package/vscode/src/vs/workbench/browser/media/style.css.js +1 -1
  51. package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.js +610 -0
  52. package/vscode/src/vs/workbench/browser/parts/activitybar/media/activityaction.css.js +4 -0
  53. package/vscode/src/vs/workbench/browser/parts/activitybar/media/activitybarpart.css.js +4 -0
  54. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarPart.js +148 -0
  55. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/media/auxiliaryBarPart.css.js +4 -0
  56. package/vscode/src/vs/workbench/browser/parts/compositeBar.js +603 -0
  57. package/vscode/src/vs/workbench/browser/parts/compositePart.js +333 -0
  58. package/vscode/src/vs/workbench/browser/parts/editor/auxiliaryEditorPart.js +221 -0
  59. package/vscode/src/vs/workbench/browser/parts/editor/editor.contribution.js +1406 -0
  60. package/vscode/src/vs/workbench/browser/parts/editor/editorConfiguration.js +184 -0
  61. package/vscode/src/vs/workbench/browser/parts/editor/editorDropTarget.js +509 -0
  62. package/vscode/src/vs/workbench/browser/parts/editor/editorPane.d.ts +112 -0
  63. package/vscode/src/vs/workbench/browser/parts/editor/editorPart.js +1018 -0
  64. package/vscode/src/vs/workbench/browser/parts/editor/editorParts.js +389 -0
  65. package/vscode/src/vs/workbench/browser/parts/editor/media/editordroptarget.css.js +4 -0
  66. package/vscode/src/vs/workbench/browser/parts/media/compositepart.css.js +4 -0
  67. package/vscode/src/vs/workbench/browser/parts/media/paneCompositePart.css.js +4 -0
  68. package/vscode/src/vs/workbench/browser/parts/notifications/media/notificationsActions.css.js +4 -0
  69. package/vscode/src/vs/workbench/browser/parts/notifications/media/notificationsCenter.css.js +4 -0
  70. package/vscode/src/vs/workbench/browser/parts/notifications/media/notificationsList.css.js +4 -0
  71. package/vscode/src/vs/workbench/browser/parts/notifications/media/notificationsToasts.css.js +4 -0
  72. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsActions.js +213 -0
  73. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsAlerts.js +73 -0
  74. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCenter.js +307 -0
  75. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsList.js +226 -0
  76. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsStatus.js +218 -0
  77. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsToasts.js +433 -0
  78. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsViewer.js +436 -0
  79. package/vscode/src/vs/workbench/browser/parts/paneCompositeBar.js +643 -0
  80. package/vscode/src/vs/workbench/browser/parts/paneCompositePart.js +377 -0
  81. package/vscode/src/vs/workbench/browser/parts/paneCompositePartService.js +66 -0
  82. package/vscode/src/vs/workbench/browser/parts/panel/panelPart.js +144 -0
  83. package/vscode/src/vs/workbench/browser/parts/sidebar/media/sidebarpart.css.js +4 -0
  84. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.js +220 -0
  85. package/vscode/src/vs/workbench/browser/window.js +239 -5
  86. package/vscode/src/vs/workbench/common/configuration.js +11 -1
  87. package/vscode/src/vs/workbench/common/theme.js +3 -3
  88. package/vscode/src/vs/workbench/contrib/callHierarchy/browser/callHierarchy.contribution.js +298 -0
  89. package/vscode/src/vs/workbench/contrib/callHierarchy/browser/callHierarchyPeek.js +363 -0
  90. package/vscode/src/vs/workbench/contrib/callHierarchy/browser/callHierarchyTree.js +133 -0
  91. package/vscode/src/vs/workbench/contrib/callHierarchy/browser/media/callHierarchy.css.js +4 -0
  92. package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +90 -0
  93. package/vscode/src/vs/workbench/contrib/comments/browser/commentMenus.js +43 -0
  94. package/vscode/src/vs/workbench/contrib/comments/browser/commentService.js +317 -2
  95. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadRangeDecorator.js +107 -0
  96. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +395 -0
  97. package/vscode/src/vs/workbench/contrib/comments/browser/comments.js +3 -0
  98. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +1277 -0
  99. package/vscode/src/vs/workbench/contrib/comments/browser/commentsFilterOptions.js +17 -0
  100. package/vscode/src/vs/workbench/contrib/comments/browser/commentsModel.js +123 -0
  101. package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +342 -0
  102. package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +451 -0
  103. package/vscode/src/vs/workbench/contrib/comments/browser/commentsViewActions.js +176 -0
  104. package/vscode/src/vs/workbench/contrib/comments/browser/media/panel.css.js +4 -0
  105. package/vscode/src/vs/workbench/contrib/comments/common/commentModel.js +35 -0
  106. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditor.contribution.js +16 -0
  107. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInputFactory.js +143 -0
  108. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditors.js +212 -0
  109. package/vscode/src/vs/workbench/contrib/customEditor/browser/media/customEditor.css.js +4 -0
  110. package/vscode/src/vs/workbench/contrib/customEditor/common/contributedCustomEditors.js +76 -0
  111. package/vscode/src/vs/workbench/contrib/customEditor/common/customEditorModelManager.js +61 -0
  112. package/vscode/src/vs/workbench/contrib/customEditor/common/extensionPoint.js +117 -0
  113. package/vscode/src/vs/workbench/contrib/editSessions/common/editSessions.js +62 -0
  114. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/externalUriOpener.contribution.js +5 -0
  115. package/vscode/src/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +77 -0
  116. package/vscode/src/vs/workbench/contrib/files/browser/editors/fileEditorHandler.js +72 -0
  117. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditor.js +254 -0
  118. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditorTracker.js +97 -0
  119. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +442 -0
  120. package/vscode/src/vs/workbench/contrib/files/browser/explorerService.js +430 -0
  121. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.contribution.js +784 -0
  122. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands.js +487 -0
  123. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution.js +521 -0
  124. package/vscode/src/vs/workbench/contrib/files/browser/workspaceWatcher.js +150 -0
  125. package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +61 -0
  126. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveDocumentService.js +25 -1
  127. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveEditorInput.js +178 -0
  128. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveHistoryService.js +49 -0
  129. package/vscode/src/vs/workbench/contrib/languageStatus/browser/languageStatus.contribution.js +408 -0
  130. package/vscode/src/vs/workbench/contrib/languageStatus/browser/media/languageStatus.css.js +4 -0
  131. package/vscode/src/vs/workbench/contrib/limitIndicator/browser/limitIndicator.contribution.js +145 -0
  132. package/vscode/src/vs/workbench/contrib/mappedEdits/common/mappedEdits.contribution.js +22 -0
  133. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/commands/commands.js +691 -0
  134. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/commands/devCommands.js +238 -0
  135. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditor.contribution.js +76 -0
  136. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorSerializer.js +40 -0
  137. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/colors.js +69 -0
  138. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/conflictActions.js +346 -0
  139. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editorGutter.js +96 -0
  140. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editors/baseCodeEditorView.js +144 -0
  141. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editors/codeEditorView.js +103 -0
  142. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editors/inputCodeEditorView.js +399 -0
  143. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editors/resultCodeEditorView.js +195 -0
  144. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/fixedZoneWidget.js +39 -0
  145. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/lineAlignment.js +126 -0
  146. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/media/mergeEditor.css.js +4 -0
  147. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/mergeEditor.js +611 -0
  148. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/scrollSynchronizer.js +156 -0
  149. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/viewModel.js +262 -0
  150. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/viewZones.js +171 -0
  151. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffSourceResolverService.js +41 -0
  152. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +317 -0
  153. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/notebookVisibleCellObserver.js +56 -0
  154. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +315 -0
  155. package/vscode/src/vs/workbench/contrib/preferences/browser/keyboardLayoutPicker.js +193 -0
  156. package/vscode/src/vs/workbench/contrib/preferences/common/preferences.js +2 -1
  157. package/vscode/src/vs/workbench/contrib/sash/browser/sash.contribution.js +37 -0
  158. package/vscode/src/vs/workbench/contrib/sash/browser/sash.js +39 -0
  159. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +138 -2
  160. package/vscode/src/vs/workbench/contrib/tags/browser/workspaceTagsService.js +12 -0
  161. package/vscode/src/vs/workbench/contrib/tags/common/workspaceTags.js +3 -0
  162. package/vscode/src/vs/workbench/contrib/typeHierarchy/browser/media/typeHierarchy.css.js +4 -0
  163. package/vscode/src/vs/workbench/contrib/typeHierarchy/browser/typeHierarchy.contribution.js +281 -0
  164. package/vscode/src/vs/workbench/contrib/typeHierarchy/browser/typeHierarchyPeek.js +358 -0
  165. package/vscode/src/vs/workbench/contrib/typeHierarchy/browser/typeHierarchyTree.js +131 -0
  166. package/vscode/src/vs/workbench/contrib/update/common/update.js +2 -0
  167. package/vscode/src/vs/workbench/contrib/webview/browser/overlayWebview.js +288 -0
  168. package/vscode/src/vs/workbench/contrib/webview/browser/resourceLoading.js +94 -0
  169. package/vscode/src/vs/workbench/contrib/webview/browser/themeing.js +86 -0
  170. package/vscode/src/vs/workbench/contrib/webview/browser/webview.contribution.js +77 -0
  171. package/vscode/src/vs/workbench/contrib/webview/browser/webviewElement.js +646 -0
  172. package/vscode/src/vs/workbench/contrib/webview/browser/webviewFindWidget.js +63 -0
  173. package/vscode/src/vs/workbench/contrib/webview/browser/webviewService.js +57 -0
  174. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewCommands.js +140 -0
  175. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditorInputSerializer.js +119 -0
  176. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewPanel.contribution.js +67 -0
  177. package/vscode/src/vs/workbench/contrib/webviewView/browser/webviewViewPane.js +233 -0
  178. package/vscode/src/vs/workbench/services/activity/browser/activityService.js +143 -0
  179. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +0 -3
  180. package/vscode/src/vs/workbench/services/driver/browser/driver.js +184 -0
  181. package/vscode/src/vs/workbench/services/editor/browser/editorResolverService.js +668 -0
  182. package/vscode/src/vs/workbench/services/history/browser/historyService.js +1482 -0
  183. package/vscode/src/vs/workbench/services/layout/browser/layoutService.js +17 -1
  184. package/vscode/src/vs/workbench/services/lifecycle/common/lifecycle.js +8 -1
  185. package/vscode/src/vs/workbench/services/progress/browser/media/progressService.css.js +4 -0
  186. package/vscode/src/vs/workbench/services/progress/browser/progressService.js +521 -0
  187. package/vscode/src/vs/workbench/services/textMate/common/TMGrammars.js +102 -0
  188. package/vscode/src/vs/workbench/services/themes/common/tokenClassificationExtensionPoint.js +296 -0
  189. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorHandler.js +99 -0
  190. package/vscode/src/vs/workbench/services/views/browser/viewDescriptorService.js +711 -0
  191. package/vscode/src/vs/workbench/services/views/common/viewContainerModel.js +596 -0
package/README.md CHANGED
@@ -16,6 +16,14 @@ npm install -D @types/vscode
16
16
 
17
17
  ## Troubleshooting
18
18
 
19
+ ### `process` node builtin
20
+
21
+ Since v1.86, VSCode detects its running environment by checking if a global variable `process` exists.
22
+ For backward compatibility reasons or to be able to use node libraries in the browser, bundlers can be configured to inject a polyfill for it.
23
+ Doing so may create unexpected behaviors and crashes.
24
+
25
+ Make sure `typeof process === 'undefined'` returns true when using this library.
26
+
19
27
  ### If you use Webpack
20
28
 
21
29
  Starting from v2, [monaco-editor-webpack-plugin](https://www.npmjs.com/package/monaco-editor-webpack-plugin) can't be used
@@ -186,6 +194,8 @@ Additionally, several packages that include the VSCode version of some services
186
194
  - Support for the outline view. *Hint*: It only makes sense to enable it when *Views* service is used.
187
195
  - **Timeline**: `@codingame/monaco-vscode-timeline-service-override`
188
196
  - Support for the timeline view. *Hint*: It only makes sense to enable it when *Views* service is used.
197
+ - **Workbench**: `@codingame/monaco-vscode-workbench-service-override`
198
+ - Allows to render the full workbench layout. Is exclusive with the `views` service. Do not use both services at the same time.
189
199
 
190
200
  Usage:
191
201
 
package/contributions.js CHANGED
@@ -26,6 +26,7 @@ import './vscode/src/vs/workbench/contrib/codeActions/browser/codeActions.contri
26
26
  import './vscode/src/vs/workbench/contrib/list/browser/list.contribution.js';
27
27
  import './vscode/src/vs/workbench/contrib/codeEditor/browser/editorFeatures.js';
28
28
  import './vscode/src/vs/workbench/contrib/contextmenu/browser/contextmenu.contribution.js';
29
+ import './vscode/src/vs/workbench/contrib/mappedEdits/common/mappedEdits.contribution.js';
29
30
  let ExtensionPoints = class ExtensionPoints {
30
31
  constructor(instantiationService) {
31
32
  this.instantiationService = instantiationService;
package/extensions.d.ts CHANGED
@@ -86,7 +86,7 @@
86
86
  /// <reference path="./vscode-dts/vscode.proposed.windowActivity.d.ts" />
87
87
  /// <reference path="./vscode-dts/vscode.proposed.workspaceTrust.d.ts" />
88
88
  import * as vscode from 'vscode';
89
- import { IExtensionManifest } from './vscode/src/vs/platform/extensions/common/extensions.js';
89
+ import { IExtension, IExtensionManifest } from './vscode/src/vs/platform/extensions/common/extensions.js';
90
90
  export { IExtensionContributions } from './vscode/src/vs/platform/extensions/common/extensions.js';
91
91
  import { IDisposable } from './vscode/src/vs/base/common/lifecycle.js';
92
92
  export { ITranslations } from './vscode/src/vs/platform/extensionManagement/common/extensionNls.js';
@@ -95,8 +95,10 @@ import { ExtensionHostKind } from './vscode/src/vs/workbench/services/extensions
95
95
  type ApiFactory = (extensionId?: string) => Promise<typeof vscode>;
96
96
  declare function registerLocalApiFactory(_apiFactory: ApiFactory): void;
97
97
  interface RegisterExtensionParams {
98
- builtin?: boolean;
99
98
  path?: string;
99
+ system?: boolean;
100
+ readmePath?: string;
101
+ changelogPath?: string;
100
102
  }
101
103
  interface RegisterRemoteExtensionParams extends RegisterExtensionParams {
102
104
  path: string;
@@ -116,9 +118,10 @@ interface RegisterLocalProcessExtensionResult extends RegisterLocalExtensionResu
116
118
  setAsDefaultApi(): Promise<void>;
117
119
  }
118
120
  declare function registerRemoteExtension(directory: string): Promise<RegisterRemoteExtensionResult>;
121
+ declare function getExtensionManifests(): IExtension[];
119
122
  declare function registerExtension(manifest: IExtensionManifest, extHostKind: ExtensionHostKind.LocalProcess, params?: RegisterExtensionParams): RegisterLocalProcessExtensionResult;
120
123
  declare function registerExtension(manifest: IExtensionManifest, extHostKind: ExtensionHostKind.LocalWebWorker, params?: RegisterExtensionParams): RegisterLocalExtensionResult;
121
124
  declare function registerExtension(manifest: IExtensionManifest, extHostKind: ExtensionHostKind.Remote, params?: RegisterRemoteExtensionParams): RegisterRemoteExtensionResult;
122
125
  declare function registerExtension(manifest: IExtensionManifest, extHostKind?: ExtensionHostKind, params?: RegisterExtensionParams): RegisterExtensionResult;
123
126
 
124
- export { type ApiFactory, ExtensionHostKind, IExtensionManifest, registerExtension, registerLocalApiFactory, registerRemoteExtension };
127
+ export { type ApiFactory, ExtensionHostKind, IExtensionManifest, getExtensionManifests, registerExtension, registerLocalApiFactory, registerRemoteExtension };
package/extensions.js CHANGED
@@ -49,8 +49,11 @@ async function registerRemoteExtension(directory) {
49
49
  const manifest = parse(( content.value.toString()));
50
50
  return registerExtension(manifest, 3 , { path: directory });
51
51
  }
52
- function registerExtension(manifest, extHostKind, { builtin = manifest.publisher === 'vscode', path = '/' } = {}) {
53
- const disposableStore = new DisposableStore();
52
+ const extensions = [];
53
+ function getExtensionManifests() {
54
+ return extensions;
55
+ }
56
+ function registerExtension(manifest, extHostKind, { path = '/', system = false, readmePath, changelogPath } = {}) {
54
57
  const id = getExtensionId(manifest.publisher, manifest.name);
55
58
  const location = ( URI.from({ scheme: CustomSchemas.extensionFile, authority: id, path }));
56
59
  const addExtensionPromise = (async () => {
@@ -64,15 +67,20 @@ function registerExtension(manifest, extHostKind, { builtin = manifest.publisher
64
67
  const localizedManifest = await translator.translateManifest(realLocation, manifest);
65
68
  const extension = {
66
69
  manifest: localizedManifest,
67
- type: builtin ? 0 : 1 ,
68
- isBuiltin: builtin,
70
+ type: system ? 0 : 1 ,
71
+ isBuiltin: true,
69
72
  identifier: { id },
70
73
  location: realLocation,
71
74
  targetPlatform: "web" ,
72
75
  isValid: true,
73
76
  validations: [],
74
- extHostKind
77
+ extHostKind,
78
+ readmeUrl: readmePath != null ? URI.joinPath(realLocation, readmePath) : undefined,
79
+ changelogUrl: changelogPath != null ? URI.joinPath(realLocation, changelogPath) : undefined
75
80
  };
81
+ if (extHostKind !== 3 ) {
82
+ extensions.push(extension);
83
+ }
76
84
  await deltaExtensions({ toAdd: [extension], toRemove: [] });
77
85
  return extension;
78
86
  })();
@@ -83,8 +91,11 @@ function registerExtension(manifest, extHostKind, { builtin = manifest.publisher
83
91
  },
84
92
  async dispose() {
85
93
  const extension = await addExtensionPromise;
94
+ const index = extensions.indexOf(extension);
95
+ if (index >= 0) {
96
+ extensions.splice(extensions.indexOf(extension), 1);
97
+ }
86
98
  await deltaExtensions({ toAdd: [], toRemove: [extension] });
87
- disposableStore.dispose();
88
99
  }
89
100
  };
90
101
  if (extHostKind !== 3 ) {
@@ -114,4 +125,4 @@ function registerExtension(manifest, extHostKind, { builtin = manifest.publisher
114
125
  }
115
126
  return api;
116
127
  }
117
- export { registerExtension, registerLocalApiFactory, registerRemoteExtension };
128
+ export { getExtensionManifests, registerExtension, registerLocalApiFactory, registerRemoteExtension };
package/lifecycle.js CHANGED
@@ -1,11 +1,14 @@
1
1
  import { Registry } from './vscode/src/vs/platform/registry/common/platform.js';
2
2
  import { Extensions } from './vscode/src/vs/workbench/common/contributions.js';
3
3
  import { ILifecycleService } from './vscode/src/vs/workbench/services/lifecycle/common/lifecycle.js';
4
- import { Barrier, RunOnceScheduler, _runWhenIdle } from './vscode/src/vs/base/common/async.js';
4
+ import { Barrier, timeout, RunOnceScheduler, _runWhenIdle } from './vscode/src/vs/base/common/async.js';
5
5
  import { Emitter } from './vscode/src/vs/base/common/event.js';
6
6
  import { EditorExtensions } from './vscode/src/vs/workbench/common/editor.js';
7
7
  import { StandaloneServices } from './vscode/src/vs/editor/standalone/browser/standaloneServices.js';
8
8
  import { Disposable } from './vscode/src/vs/base/common/lifecycle.js';
9
+ import { IWorkbenchLayoutService } from './vscode/src/vs/workbench/services/layout/browser/layoutService.js';
10
+ const layoutEmitter = new Emitter();
11
+ const onLayout = layoutEmitter.event;
9
12
  const renderWorkbenchEmitter = new Emitter();
10
13
  const onRenderWorkbench = renderWorkbenchEmitter.event;
11
14
  const serviceInitializedBarrier = new Barrier();
@@ -36,11 +39,16 @@ async function startup(instantiationService) {
36
39
  });
37
40
  serviceInitializedBarrier.open();
38
41
  serviceInitializedEmitter.fire();
39
- instantiationService.invokeFunction(accessor => {
42
+ void instantiationService.invokeFunction(async (accessor) => {
40
43
  const lifecycleService = accessor.get(ILifecycleService);
41
44
  ( Registry.as(Extensions.Workbench)).start(accessor);
42
45
  ( Registry.as(EditorExtensions.EditorFactory)).start(accessor);
46
+ layoutEmitter.fire(accessor);
43
47
  renderWorkbenchEmitter.fire(accessor);
48
+ await Promise.race([
49
+ accessor.get(IWorkbenchLayoutService).whenRestored,
50
+ timeout(2000)
51
+ ]);
44
52
  lifecycleService.phase = 3 ;
45
53
  const eventuallyPhaseScheduler = new RunOnceScheduler(() => {
46
54
  _runWhenIdle(window, () => {
@@ -68,4 +76,4 @@ function checkServicesNotInitialized() {
68
76
  throw new Error('Services are already initialized');
69
77
  }
70
78
  }
71
- export { checkServicesNotInitialized, checkServicesReady, onRenderWorkbench, registerServiceInitializeParticipant, registerServiceInitializePostParticipant, registerServiceInitializePreParticipant, serviceInitializedBarrier, serviceInitializedEmitter, startup, waitServicesReady };
79
+ export { checkServicesNotInitialized, checkServicesReady, onLayout, onRenderWorkbench, registerServiceInitializeParticipant, registerServiceInitializePostParticipant, registerServiceInitializePreParticipant, serviceInitializedBarrier, serviceInitializedEmitter, startup, waitServicesReady };
@@ -26,7 +26,7 @@ import { IContextKeyService } from './vscode/src/vs/platform/contextkey/common/c
26
26
  import { StandaloneServices } from './vscode/src/vs/editor/standalone/browser/standaloneServices.js';
27
27
  import { ICodeEditorService } from './vscode/src/vs/editor/browser/services/codeEditorService.js';
28
28
  import { IUserDataProfilesService, toUserDataProfile } from './vscode/src/vs/platform/userDataProfile/common/userDataProfile.js';
29
- import { IPolicyService } from './vscode/src/vs/platform/policy/common/policy.js';
29
+ import { NullPolicyService, IPolicyService } from './vscode/src/vs/platform/policy/common/policy.js';
30
30
  import { IUserDataProfileService, IUserDataProfileImportExportService, IUserDataProfileManagementService } from './vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js';
31
31
  import { UserDataProfileService } from './vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileService.js';
32
32
  import { ISnippetsService } from './vscode/src/vs/workbench/contrib/snippets/browser/snippets.js';
@@ -186,6 +186,11 @@ import { IInlineChatSessionService } from './vscode/src/vs/workbench/contrib/inl
186
186
  import { IInlineChatSavingService } from './vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSavingService.js';
187
187
  import { INotebookDocumentService } from './vscode/src/vs/workbench/services/notebook/common/notebookDocumentService.js';
188
188
  import { IDebugVisualizerService } from './vscode/src/vs/workbench/contrib/debug/common/debugVisualizers.js';
189
+ import { IEditSessionsLogService, IEditSessionsStorageService } from './vscode/src/vs/workbench/contrib/editSessions/common/editSessions.js';
190
+ import { IMultiDiffSourceResolverService } from './vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffSourceResolverService.js';
191
+ import { IInteractiveHistoryService } from './vscode/src/vs/workbench/contrib/interactive/browser/interactiveHistoryService.js';
192
+ import { IWorkspaceTagsService } from './vscode/src/vs/workbench/contrib/tags/common/workspaceTags.js';
193
+ import { NoOpWorkspaceTagsService } from './vscode/src/vs/workbench/contrib/tags/browser/workspaceTagsService.js';
189
194
  import { unsupported } from './tools.js';
190
195
  import { getBuiltInExtensionTranslationsUris } from './l10n.js';
191
196
  import { IFileDialogService } from './vscode/src/vs/platform/dialogs/common/dialogs.js';
@@ -680,15 +685,7 @@ InjectedUserDataProfileService = __decorate([
680
685
  ( __param(0, IEnvironmentService))
681
686
  ], InjectedUserDataProfileService);
682
687
  registerSingleton(IUserDataProfileService, InjectedUserDataProfileService, 0 );
683
- registerSingleton(IPolicyService, class PolicyService {
684
- constructor() {
685
- this.updatePolicyDefinitions = unsupported;
686
- this.onDidChange = Event.None;
687
- this.registerPolicyDefinitions = unsupported;
688
- this.getPolicyValue = () => undefined;
689
- this.serialize = () => undefined;
690
- }
691
- }, 0 );
688
+ registerSingleton(IPolicyService, NullPolicyService, 0 );
692
689
  registerSingleton(ISnippetsService, class SnippetsService {
693
690
  constructor() {
694
691
  this.getSnippetFiles = unsupported;
@@ -2271,6 +2268,16 @@ registerSingleton(INotebookRendererMessagingService, class NotebookRendererMessa
2271
2268
  this.receiveMessage = unsupported;
2272
2269
  }
2273
2270
  }, 1 );
2271
+ registerSingleton(IInteractiveHistoryService, class InteractiveHistoryService {
2272
+ constructor() {
2273
+ this.addToHistory = unsupported;
2274
+ this.getPreviousValue = unsupported;
2275
+ this.getNextValue = unsupported;
2276
+ this.replaceLast = unsupported;
2277
+ this.clearHistory = unsupported;
2278
+ this.has = unsupported;
2279
+ }
2280
+ }, 1 );
2274
2281
  registerSingleton(IInteractiveDocumentService, class InteractiveDocumentService {
2275
2282
  constructor() {
2276
2283
  this.onWillAddInteractiveDocument = Event.None;
@@ -2930,3 +2937,41 @@ registerSingleton(IDebugVisualizerService, class DebugVisualizerService {
2930
2937
  this.register = unsupported;
2931
2938
  }
2932
2939
  }, 1 );
2940
+ registerSingleton(IEditSessionsLogService, class EditSessionsLogService {
2941
+ constructor() {
2942
+ this.onDidChangeLogLevel = Event.None;
2943
+ this.getLevel = unsupported;
2944
+ this.setLevel = unsupported;
2945
+ this.trace = unsupported;
2946
+ this.debug = unsupported;
2947
+ this.info = unsupported;
2948
+ this.warn = unsupported;
2949
+ this.error = unsupported;
2950
+ this.flush = unsupported;
2951
+ this.dispose = unsupported;
2952
+ }
2953
+ }, 1 );
2954
+ registerSingleton(IEditSessionsStorageService, class EditSessionsWorkbenchService {
2955
+ constructor() {
2956
+ this.SIZE_LIMIT = 0;
2957
+ this.isSignedIn = false;
2958
+ this.onDidSignIn = Event.None;
2959
+ this.onDidSignOut = Event.None;
2960
+ this.storeClient = undefined;
2961
+ this.lastReadResources = new Map();
2962
+ this.lastWrittenResources = new Map();
2963
+ this.initialize = unsupported;
2964
+ this.read = unsupported;
2965
+ this.write = unsupported;
2966
+ this.delete = unsupported;
2967
+ this.list = unsupported;
2968
+ this.getMachineById = unsupported;
2969
+ }
2970
+ }, 1 );
2971
+ registerSingleton(IMultiDiffSourceResolverService, class MultiDiffSourceResolverService {
2972
+ constructor() {
2973
+ this.registerResolver = unsupported;
2974
+ this.resolve = unsupported;
2975
+ }
2976
+ }, 1 );
2977
+ registerSingleton(IWorkspaceTagsService, NoOpWorkspaceTagsService, 1 );
package/monaco.js CHANGED
@@ -34,6 +34,7 @@ import { ICodeEditorService } from './vscode/src/vs/editor/browser/services/code
34
34
  import { IKeybindingService } from './vscode/src/vs/platform/keybinding/common/keybinding.js';
35
35
  import { Emitter } from './vscode/src/vs/base/common/event.js';
36
36
  import { createInjectedClass } from './tools/injection.js';
37
+ import { getService } from './services.js';
37
38
  function computeConfiguration(configuration, overrides) {
38
39
  const editorConfiguration = isObject(configuration.editor) ? deepClone(configuration.editor) : Object.create(null);
39
40
  Object.assign(editorConfiguration, deepClone(overrides));
@@ -164,16 +165,19 @@ ConfiguredStandaloneDiffEditor = __decorate([
164
165
  ( __param(3, ITextResourceConfigurationService))
165
166
  ], ConfiguredStandaloneDiffEditor);
166
167
  async function writeFile(uri, content) {
167
- await StandaloneServices.get(IFileService).writeFile(uri, VSBuffer.fromString(content));
168
+ const fileService = await getService(IFileService);
169
+ await fileService.writeFile(uri, VSBuffer.fromString(content));
168
170
  }
169
171
  async function deleteFile(uri, options) {
170
- await StandaloneServices.get(IFileService).del(uri, options);
172
+ const fileService = await getService(IFileService);
173
+ await fileService.del(uri, options);
171
174
  }
172
175
  async function createModelReference(resource, content) {
173
176
  if (content != null) {
174
177
  await writeFile(resource, content);
175
178
  }
176
- return (await StandaloneServices.get(ITextModelService).createModelReference(resource));
179
+ const textModelService = await getService(ITextModelService);
180
+ return (await textModelService.createModelReference(resource));
177
181
  }
178
182
  function isDynamicKeybindingService(keybindingService) {
179
183
  return keybindingService.registerKeybindingProvider != null;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codingame/monaco-vscode-api",
3
- "version": "2.1.3",
3
+ "version": "2.2.0-next.1",
4
4
  "description": "VSCode public API plugged on the monaco editor",
5
5
  "keywords": [],
6
6
  "author": {
@@ -96,12 +96,12 @@
96
96
  "dependencies": {
97
97
  "vscode-marked": "npm:marked@=3.0.2",
98
98
  "vscode-semver": "npm:semver@=5.5.0",
99
- "@codingame/monaco-vscode-extensions-service-override": "2.1.3",
100
- "@codingame/monaco-vscode-files-service-override": "2.1.3",
101
- "@codingame/monaco-vscode-quickaccess-service-override": "2.1.3",
102
- "@codingame/monaco-vscode-environment-service-override": "2.1.3",
103
- "@codingame/monaco-vscode-layout-service-override": "2.1.3",
104
- "@codingame/monaco-vscode-host-service-override": "2.1.3",
105
- "@codingame/monaco-vscode-base-service-override": "2.1.3"
99
+ "@codingame/monaco-vscode-quickaccess-service-override": "2.2.0-next.1",
100
+ "@codingame/monaco-vscode-files-service-override": "2.2.0-next.1",
101
+ "@codingame/monaco-vscode-extensions-service-override": "2.2.0-next.1",
102
+ "@codingame/monaco-vscode-environment-service-override": "2.2.0-next.1",
103
+ "@codingame/monaco-vscode-layout-service-override": "2.2.0-next.1",
104
+ "@codingame/monaco-vscode-host-service-override": "2.2.0-next.1",
105
+ "@codingame/monaco-vscode-base-service-override": "2.2.0-next.1"
106
106
  }
107
107
  }
@@ -297,7 +297,9 @@ let StandaloneEditorGroup = StandaloneEditorGroup_1 = class StandaloneEditorGrou
297
297
  setActive(isActive) {
298
298
  this.active = isActive;
299
299
  }
300
- get element() { return unsupported(); }
300
+ get element() {
301
+ return this.editor.getContainerDomNode();
302
+ }
301
303
  get activeEditorPane() {
302
304
  return this.pane;
303
305
  }
@@ -0,0 +1,98 @@
1
+ import { ViewContainerLocation, ViewContainer } from '../../vscode/src/vs/workbench/common/views.js';
2
+ import { BrandedService, ServicesAccessor } from '../../vscode/src/vs/platform/instantiation/common/instantiation.js';
3
+ import { IDisposable } from '../../vscode/src/vs/base/common/lifecycle.js';
4
+ import { Dimension } from '../../vscode/src/vs/base/browser/dom.js';
5
+ import { URI } from '../../vscode/src/vs/base/common/uri.js';
6
+ import { Codicon } from '../../vscode/src/vs/base/common/codicons.js';
7
+ import { RegisteredEditorInfo, RegisteredEditorOptions, EditorInputFactoryObject } from '../../vscode/src/vs/workbench/services/editor/common/editorResolverService.js';
8
+ export { RegisteredEditorPriority } from '../../vscode/src/vs/workbench/services/editor/common/editorResolverService.js';
9
+ import { EditorInput, IEditorCloseHandler } from '../../vscode/src/vs/workbench/common/editor/editorInput.js';
10
+ import { IEditorOpenContext, EditorInputCapabilities, Verbosity, IEditorSerializer } from '../../vscode/src/vs/workbench/common/editor.js';
11
+ import { IEditorOptions } from '../../vscode/src/vs/platform/editor/common/editor.js';
12
+ import { EditorPane } from '../../vscode/src/vs/workbench/browser/parts/editor/editorPane.js';
13
+ import { ITelemetryService } from '../../vscode/src/vs/platform/telemetry/common/telemetry.js';
14
+ import { IStorageService } from '../../vscode/src/vs/platform/storage/common/storage.js';
15
+ import { IThemeService } from '../../vscode/src/vs/platform/theme/common/themeService.js';
16
+ import { CancellationToken } from '../../vscode/src/vs/base/common/cancellation.js';
17
+ import { Event } from '../../vscode/src/vs/base/common/event.js';
18
+ import '../../vscode/src/vs/editor/editor.api.js';
19
+ import { Parts, Position } from '../../vscode/src/vs/workbench/services/layout/browser/layoutService.js';
20
+
21
+ type Label = string | {
22
+ short: string;
23
+ medium: string;
24
+ long: string;
25
+ };
26
+ declare abstract class SimpleEditorPane extends EditorPane {
27
+ protected container: HTMLElement;
28
+ private scrollbar;
29
+ private inputDisposable;
30
+ constructor(id: string, telemetryService: ITelemetryService, themeService: IThemeService, storageService: IStorageService);
31
+ protected createEditor(parent: HTMLElement): void;
32
+ setInput(input: EditorInput, editorOptions: IEditorOptions | undefined, context: IEditorOpenContext, token: CancellationToken): Promise<void>;
33
+ layout(dimension: Dimension): void;
34
+ focus(): void;
35
+ clearInput(): void;
36
+ abstract initialize(): HTMLElement;
37
+ abstract renderInput?(input: EditorInput, options: IEditorOptions | undefined, context: IEditorOpenContext, token: CancellationToken): Promise<IDisposable>;
38
+ }
39
+ declare abstract class SimpleEditorInput extends EditorInput {
40
+ closeHandler?: IEditorCloseHandler | undefined;
41
+ private dirty;
42
+ private _capabilities;
43
+ private name;
44
+ private title;
45
+ private description;
46
+ resource: URI | undefined;
47
+ constructor(resource?: URI, closeHandler?: IEditorCloseHandler | undefined);
48
+ get capabilities(): EditorInputCapabilities;
49
+ addCapability(capability: EditorInputCapabilities): void;
50
+ removeCapability(capability: EditorInputCapabilities): void;
51
+ get editorId(): string | undefined;
52
+ setName(name: string): void;
53
+ setTitle(title: Label): void;
54
+ setDescription(description: string): void;
55
+ private getLabelValue;
56
+ getName(): string;
57
+ getTitle(verbosity?: Verbosity): string;
58
+ getDescription(verbosity?: Verbosity): string;
59
+ isDirty(): boolean;
60
+ setDirty(dirty: boolean): void;
61
+ }
62
+ declare function registerEditorPane<Services extends BrandedService[]>(typeId: string, name: string, ctor: new (...services: Services) => EditorPane, inputCtors: (new (...args: any[]) => EditorInput)[]): IDisposable;
63
+ declare function registerEditor(globPattern: string, editorInfo: RegisteredEditorInfo, editorOptions: RegisteredEditorOptions, factory: EditorInputFactoryObject): IDisposable;
64
+ declare function registerEditorSerializer<Services extends BrandedService[]>(editorTypeId: string, ctor: {
65
+ new (...Services: Services): IEditorSerializer;
66
+ }): IDisposable;
67
+ interface CustomViewOption {
68
+ readonly id: string;
69
+ name: string;
70
+ order?: number;
71
+ renderBody(container: HTMLElement): IDisposable;
72
+ location: ViewContainerLocation;
73
+ icon?: string;
74
+ canMoveView?: boolean;
75
+ default?: boolean;
76
+ actions?: {
77
+ id: string;
78
+ title: string;
79
+ tooltip?: string;
80
+ order?: number;
81
+ run?(accessor: ServicesAccessor): Promise<void>;
82
+ icon?: keyof typeof Codicon;
83
+ render?(container: HTMLElement): void;
84
+ }[];
85
+ viewContainer?: ViewContainer;
86
+ canToggleVisibility?: boolean;
87
+ hideByDefault?: boolean;
88
+ collapsed?: boolean;
89
+ }
90
+ declare function registerCustomView(options: CustomViewOption): IDisposable;
91
+ declare function isPartVisibile(part: Parts): boolean;
92
+ declare function setPartVisibility(part: Exclude<Parts, Parts.STATUSBAR_PART | Parts.TITLEBAR_PART>, visible: boolean): void;
93
+ declare const onDidChangePanelPosition: Event<string>;
94
+ declare function getPanelPosition(): Position;
95
+ declare const onDidChangeSideBarPosition: Event<string>;
96
+ declare function getSideBarPosition(): Position;
97
+
98
+ export { type CustomViewOption, EditorInput, EditorInputCapabilities, EditorInputFactoryObject, EditorPane, IEditorCloseHandler, IEditorSerializer, Parts, RegisteredEditorInfo, RegisteredEditorOptions, SimpleEditorInput, SimpleEditorPane, ViewContainerLocation, getPanelPosition, getSideBarPosition, isPartVisibile, onDidChangePanelPosition, onDidChangeSideBarPosition, registerCustomView, registerEditor, registerEditorPane, registerEditorSerializer, setPartVisibility };