@codingame/monaco-vscode-api 1.83.8 → 1.83.9

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 (294) hide show
  1. package/extensions.js +5 -5
  2. package/lifecycle.js +21 -1
  3. package/missing-services.js +187 -24
  4. package/monaco-editor-treemending.patch +955 -955
  5. package/package.json +12 -6
  6. package/services.d.ts +2 -4
  7. package/services.js +28 -27
  8. package/vscode/src/vs/base/common/uriIpc.js +22 -1
  9. package/vscode/src/vs/base/parts/request/common/request.js +7 -1
  10. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +116 -1
  11. package/vscode/src/vs/platform/extensionManagement/common/extensionManagementUtil.js +117 -2
  12. package/vscode/src/vs/platform/extensionRecommendations/common/extensionRecommendations.js +10 -0
  13. package/vscode/src/vs/platform/extensionResourceLoader/browser/extensionResourceLoaderService.js +42 -0
  14. package/vscode/src/vs/platform/extensionResourceLoader/common/extensionResourceLoader.js +12 -1
  15. package/vscode/src/vs/platform/extensions/common/extensionValidator.js +306 -1
  16. package/vscode/src/vs/platform/log/common/log.d.ts +27 -2
  17. package/vscode/src/vs/platform/remote/common/remoteAgentConnection.d.ts +9 -1
  18. package/vscode/src/vs/platform/remote/common/remoteExtensionsScanner.js +2 -1
  19. package/vscode/src/vs/platform/request/common/request.js +38 -1
  20. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +2 -1
  21. package/vscode/src/vs/platform/tunnel/common/tunnel.d.ts +50 -1
  22. package/vscode/src/vs/platform/userDataProfile/common/userDataProfileIpc.js +63 -0
  23. package/vscode/src/vs/platform/userDataSync/common/ignoredExtensions.js +65 -0
  24. package/vscode/src/vs/platform/userDataSync/common/userDataSync.js +2 -1
  25. package/vscode/src/vs/platform/userDataSync/common/userDataSyncAccount.js +3 -0
  26. package/vscode/src/vs/platform/workspace/common/workspace.d.ts +16 -1
  27. package/vscode/src/vs/platform/workspaces/common/workspaces.d.ts +6 -2
  28. package/vscode/src/vs/workbench/api/worker/extensionHostWorker.js +1 -1
  29. package/vscode/src/vs/workbench/common/theme.js +3 -3
  30. package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.css.js +4 -0
  31. package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.js +248 -0
  32. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +3291 -0
  33. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsIcons.js +16 -16
  34. package/vscode/src/vs/workbench/contrib/extensions/browser/media/extensionActions.css.js +4 -0
  35. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +45 -1
  36. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsFileTemplate.js +67 -0
  37. package/vscode/src/vs/workbench/services/extensionManagement/browser/extensionBisect.js +396 -0
  38. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.d.ts +23 -3
  39. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.js +4 -1
  40. package/vscode/src/vs/workbench/services/extensionRecommendations/common/extensionRecommendations.js +4 -0
  41. package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.js +255 -0
  42. package/vscode/src/vs/workbench/services/extensions/browser/extensionService.d.ts +44 -0
  43. package/vscode/src/vs/workbench/services/extensions/common/extensionDescriptionRegistry.d.ts +1 -1
  44. package/vscode/src/vs/workbench/services/extensions/common/extensionHostProtocol.d.ts +1 -1
  45. package/vscode/src/vs/workbench/services/extensions/common/extensions.js +2 -1
  46. package/vscode/src/vs/workbench/services/localization/common/locale.js +4 -0
  47. package/vscode/src/vs/workbench/services/log/common/logConstants.js +2 -1
  48. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.d.ts +68 -0
  49. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.d.ts +172 -1
  50. package/vscode/src/vs/workbench/services/userDataProfile/common/remoteUserDataProfiles.js +150 -0
  51. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +3 -1
  52. package/vscode.proposed.d.ts +4787 -0
  53. package/workbench.js +0 -1
  54. package/service-override/bulkEdit.js +0 -9
  55. package/service-override/environment.js +0 -21
  56. package/service-override/extensions.js +0 -465
  57. package/service-override/files.js +0 -471
  58. package/service-override/keybindings.js +0 -99
  59. package/service-override/layout.js +0 -229
  60. package/service-override/output.js +0 -23
  61. package/service-override/quickaccess.js +0 -98
  62. package/vscode/src/vs/base/common/console.js +0 -58
  63. package/vscode/src/vs/base/common/keybindingParser.js +0 -87
  64. package/vscode/src/vs/base/common/prefixTree.js +0 -130
  65. package/vscode/src/vs/base/common/tfIdf.js +0 -137
  66. package/vscode/src/vs/editor/contrib/quickAccess/browser/commandsQuickAccess.js +0 -23
  67. package/vscode/src/vs/platform/files/browser/indexedDBFileSystemProvider.js +0 -404
  68. package/vscode/src/vs/platform/files/common/fileService.js +0 -957
  69. package/vscode/src/vs/platform/files/common/files.js +0 -81
  70. package/vscode/src/vs/platform/files/common/inMemoryFilesystemProvider.js +0 -220
  71. package/vscode/src/vs/platform/files/common/io.js +0 -75
  72. package/vscode/src/vs/platform/files/common/watcher.js +0 -69
  73. package/vscode/src/vs/platform/keyboardLayout/common/keyboardConfig.js +0 -48
  74. package/vscode/src/vs/platform/keyboardLayout/common/keyboardMapper.js +0 -23
  75. package/vscode/src/vs/platform/lifecycle/common/lifecycle.js +0 -25
  76. package/vscode/src/vs/platform/log/common/fileLog.js +0 -105
  77. package/vscode/src/vs/platform/quickinput/browser/commandsQuickAccess.js +0 -331
  78. package/vscode/src/vs/platform/quickinput/browser/helpQuickAccess.js +0 -65
  79. package/vscode/src/vs/platform/remote/common/managedSocket.js +0 -96
  80. package/vscode/src/vs/workbench/api/browser/mainThreadAiEmbeddingVector.js +0 -29
  81. package/vscode/src/vs/workbench/api/browser/mainThreadAiRelatedInformation.js +0 -33
  82. package/vscode/src/vs/workbench/api/browser/mainThreadAuthentication.js +0 -328
  83. package/vscode/src/vs/workbench/api/browser/mainThreadBulkEdits.js +0 -66
  84. package/vscode/src/vs/workbench/api/browser/mainThreadChat.js +0 -172
  85. package/vscode/src/vs/workbench/api/browser/mainThreadChatAgents.js +0 -50
  86. package/vscode/src/vs/workbench/api/browser/mainThreadChatProvider.js +0 -59
  87. package/vscode/src/vs/workbench/api/browser/mainThreadChatSlashCommands.js +0 -47
  88. package/vscode/src/vs/workbench/api/browser/mainThreadChatVariables.js +0 -29
  89. package/vscode/src/vs/workbench/api/browser/mainThreadClipboard.js +0 -22
  90. package/vscode/src/vs/workbench/api/browser/mainThreadCodeInsets.js +0 -105
  91. package/vscode/src/vs/workbench/api/browser/mainThreadCommands.js +0 -92
  92. package/vscode/src/vs/workbench/api/browser/mainThreadComments.js +0 -539
  93. package/vscode/src/vs/workbench/api/browser/mainThreadConfiguration.js +0 -78
  94. package/vscode/src/vs/workbench/api/browser/mainThreadConsole.js +0 -33
  95. package/vscode/src/vs/workbench/api/browser/mainThreadCustomEditors.js +0 -576
  96. package/vscode/src/vs/workbench/api/browser/mainThreadDebugService.js +0 -385
  97. package/vscode/src/vs/workbench/api/browser/mainThreadDecorations.js +0 -100
  98. package/vscode/src/vs/workbench/api/browser/mainThreadDiagnostics.js +0 -67
  99. package/vscode/src/vs/workbench/api/browser/mainThreadDialogs.js +0 -66
  100. package/vscode/src/vs/workbench/api/browser/mainThreadDocumentContentProviders.js +0 -73
  101. package/vscode/src/vs/workbench/api/browser/mainThreadDocuments.js +0 -247
  102. package/vscode/src/vs/workbench/api/browser/mainThreadDocumentsAndEditors.js +0 -368
  103. package/vscode/src/vs/workbench/api/browser/mainThreadDownloadService.js +0 -20
  104. package/vscode/src/vs/workbench/api/browser/mainThreadEditSessionIdentityParticipant.js +0 -39
  105. package/vscode/src/vs/workbench/api/browser/mainThreadEditor.js +0 -409
  106. package/vscode/src/vs/workbench/api/browser/mainThreadEditorTabs.js +0 -473
  107. package/vscode/src/vs/workbench/api/browser/mainThreadEditors.js +0 -225
  108. package/vscode/src/vs/workbench/api/browser/mainThreadErrors.js +0 -22
  109. package/vscode/src/vs/workbench/api/browser/mainThreadExtensionService.js +0 -315
  110. package/vscode/src/vs/workbench/api/browser/mainThreadFileSystem.js +0 -278
  111. package/vscode/src/vs/workbench/api/browser/mainThreadFileSystemEventService.js +0 -281
  112. package/vscode/src/vs/workbench/api/browser/mainThreadInlineChat.js +0 -66
  113. package/vscode/src/vs/workbench/api/browser/mainThreadInteractive.js +0 -26
  114. package/vscode/src/vs/workbench/api/browser/mainThreadIssueReporter.js +0 -31
  115. package/vscode/src/vs/workbench/api/browser/mainThreadLabelService.js +0 -25
  116. package/vscode/src/vs/workbench/api/browser/mainThreadLanguageFeatures.js +0 -945
  117. package/vscode/src/vs/workbench/api/browser/mainThreadLanguages.js +0 -76
  118. package/vscode/src/vs/workbench/api/browser/mainThreadLocalization.js +0 -33
  119. package/vscode/src/vs/workbench/api/browser/mainThreadLogService.js +0 -76
  120. package/vscode/src/vs/workbench/api/browser/mainThreadManagedSockets.js +0 -91
  121. package/vscode/src/vs/workbench/api/browser/mainThreadMessageService.js +0 -116
  122. package/vscode/src/vs/workbench/api/browser/mainThreadNotebook.js +0 -156
  123. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookDocuments.js +0 -121
  124. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookDocumentsAndEditors.js +0 -186
  125. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookDto.js +0 -127
  126. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookEditors.js +0 -129
  127. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookKernels.js +0 -339
  128. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookRenderers.js +0 -23
  129. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookSaveParticipant.js +0 -46
  130. package/vscode/src/vs/workbench/api/browser/mainThreadOutputService.js +0 -74
  131. package/vscode/src/vs/workbench/api/browser/mainThreadProfilContentHandlers.js +0 -36
  132. package/vscode/src/vs/workbench/api/browser/mainThreadProgress.js +0 -66
  133. package/vscode/src/vs/workbench/api/browser/mainThreadQuickDiff.js +0 -47
  134. package/vscode/src/vs/workbench/api/browser/mainThreadQuickOpen.js +0 -183
  135. package/vscode/src/vs/workbench/api/browser/mainThreadRemoteConnectionData.js +0 -28
  136. package/vscode/src/vs/workbench/api/browser/mainThreadSCM.js +0 -461
  137. package/vscode/src/vs/workbench/api/browser/mainThreadSaveParticipant.js +0 -47
  138. package/vscode/src/vs/workbench/api/browser/mainThreadSearch.js +0 -146
  139. package/vscode/src/vs/workbench/api/browser/mainThreadSecretState.js +0 -68
  140. package/vscode/src/vs/workbench/api/browser/mainThreadShare.js +0 -48
  141. package/vscode/src/vs/workbench/api/browser/mainThreadStatusBar.js +0 -51
  142. package/vscode/src/vs/workbench/api/browser/mainThreadStorage.js +0 -70
  143. package/vscode/src/vs/workbench/api/browser/mainThreadTask.js +0 -729
  144. package/vscode/src/vs/workbench/api/browser/mainThreadTelemetry.js +0 -51
  145. package/vscode/src/vs/workbench/api/browser/mainThreadTerminalService.js +0 -410
  146. package/vscode/src/vs/workbench/api/browser/mainThreadTesting.js +0 -180
  147. package/vscode/src/vs/workbench/api/browser/mainThreadTheming.js +0 -22
  148. package/vscode/src/vs/workbench/api/browser/mainThreadTimeline.js +0 -53
  149. package/vscode/src/vs/workbench/api/browser/mainThreadTreeViews.js +0 -311
  150. package/vscode/src/vs/workbench/api/browser/mainThreadTunnelService.js +0 -221
  151. package/vscode/src/vs/workbench/api/browser/mainThreadUriOpeners.js +0 -108
  152. package/vscode/src/vs/workbench/api/browser/mainThreadUrls.js +0 -59
  153. package/vscode/src/vs/workbench/api/browser/mainThreadWebviewManager.js +0 -27
  154. package/vscode/src/vs/workbench/api/browser/mainThreadWebviewPanels.js +0 -281
  155. package/vscode/src/vs/workbench/api/browser/mainThreadWebviewViews.js +0 -98
  156. package/vscode/src/vs/workbench/api/browser/mainThreadWebviews.js +0 -133
  157. package/vscode/src/vs/workbench/api/browser/mainThreadWindow.js +0 -55
  158. package/vscode/src/vs/workbench/api/browser/mainThreadWorkspace.js +0 -271
  159. package/vscode/src/vs/workbench/api/common/shared/dataTransferCache.js +0 -33
  160. package/vscode/src/vs/workbench/browser/actions/quickAccessActions.js +0 -230
  161. package/vscode/src/vs/workbench/browser/contextkeys.js +0 -249
  162. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/bulkEditService.js +0 -358
  163. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/bulkFileEdits.js +0 -362
  164. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/bulkTextEdits.js +0 -265
  165. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +0 -2
  166. package/vscode/src/vs/workbench/contrib/chat/common/chatModel.js +0 -215
  167. package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoLineQuickAccess.js +0 -86
  168. package/vscode/src/vs/workbench/contrib/comments/browser/commentColors.js +0 -55
  169. package/vscode/src/vs/workbench/contrib/comments/browser/commentFormActions.js +0 -49
  170. package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +0 -90
  171. package/vscode/src/vs/workbench/contrib/comments/browser/commentNode.js +0 -646
  172. package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +0 -295
  173. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadAdditionalActions.js +0 -60
  174. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +0 -247
  175. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadHeader.js +0 -107
  176. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadRangeDecorator.js +0 -107
  177. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +0 -329
  178. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +0 -378
  179. package/vscode/src/vs/workbench/contrib/comments/browser/comments.js +0 -3
  180. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +0 -1194
  181. package/vscode/src/vs/workbench/contrib/comments/browser/commentsFilterOptions.js +0 -17
  182. package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +0 -332
  183. package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +0 -541
  184. package/vscode/src/vs/workbench/contrib/comments/browser/commentsViewActions.js +0 -176
  185. package/vscode/src/vs/workbench/contrib/comments/browser/media/panel.css.js +0 -4
  186. package/vscode/src/vs/workbench/contrib/comments/browser/media/review.css.js +0 -4
  187. package/vscode/src/vs/workbench/contrib/comments/browser/reactionsAction.js +0 -99
  188. package/vscode/src/vs/workbench/contrib/comments/browser/timestamp.js +0 -55
  189. package/vscode/src/vs/workbench/contrib/comments/common/commentModel.js +0 -143
  190. package/vscode/src/vs/workbench/contrib/comments/common/commentsConfiguration.js +0 -2
  191. package/vscode/src/vs/workbench/contrib/customEditor/common/customTextEditorModel.js +0 -71
  192. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/contributedOpeners.js +0 -81
  193. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveEditorInput.js +0 -177
  194. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveHistoryService.js +0 -3
  195. package/vscode/src/vs/workbench/contrib/keybindings/browser/keybindings.contribution.js +0 -28
  196. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +0 -142
  197. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +0 -480
  198. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeMarkers/mergeMarkersController.js +0 -5
  199. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/diffComputer.js +0 -83
  200. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/editing.js +0 -54
  201. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/lineRange.js +0 -108
  202. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mapping.js +0 -258
  203. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +0 -614
  204. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/modifiedBaseRange.js +0 -307
  205. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/rangeUtils.js +0 -36
  206. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/textModelDiffs.js +0 -165
  207. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/telemetry.js +0 -78
  208. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/utils.js +0 -68
  209. package/vscode/src/vs/workbench/contrib/mergeEditor/common/mergeEditor.js +0 -2
  210. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModel.js +0 -106
  211. package/vscode/src/vs/workbench/contrib/output/browser/output.contribution.js +0 -487
  212. package/vscode/src/vs/workbench/contrib/output/browser/outputLinkProvider.js +0 -76
  213. package/vscode/src/vs/workbench/contrib/output/browser/outputServices.js +0 -166
  214. package/vscode/src/vs/workbench/contrib/output/browser/outputView.js +0 -234
  215. package/vscode/src/vs/workbench/contrib/quickaccess/browser/commandsQuickAccess.js +0 -287
  216. package/vscode/src/vs/workbench/contrib/quickaccess/browser/quickAccess.contribution.js +0 -167
  217. package/vscode/src/vs/workbench/contrib/quickaccess/browser/viewQuickAccess.js +0 -263
  218. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +0 -504
  219. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalProcessExtHostProxy.js +0 -130
  220. package/vscode/src/vs/workbench/contrib/testing/common/getComputedState.js +0 -101
  221. package/vscode/src/vs/workbench/contrib/testing/common/observableValue.js +0 -26
  222. package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.js +0 -23
  223. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +0 -334
  224. package/vscode/src/vs/workbench/contrib/testing/common/testingStates.js +0 -45
  225. package/vscode/src/vs/workbench/services/actions/common/menusExtensionPoint.js +0 -1286
  226. package/vscode/src/vs/workbench/services/commands/common/commandService.js +0 -77
  227. package/vscode/src/vs/workbench/services/extensions/browser/extensionService.js +0 -141
  228. package/vscode/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.js +0 -271
  229. package/vscode/src/vs/workbench/services/extensions/browser/webWorkerFileSystemProvider.js +0 -50
  230. package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.js +0 -1091
  231. package/vscode/src/vs/workbench/services/extensions/common/extHostCustomers.js +0 -40
  232. package/vscode/src/vs/workbench/services/extensions/common/extensionDevOptions.js +0 -23
  233. package/vscode/src/vs/workbench/services/extensions/common/extensionHostManager.js +0 -641
  234. package/vscode/src/vs/workbench/services/extensions/common/extensionRunningLocationTracker.js +0 -272
  235. package/vscode/src/vs/workbench/services/extensions/common/extensionStorageMigration.js +0 -56
  236. package/vscode/src/vs/workbench/services/extensions/common/extensionsProposedApi.js +0 -78
  237. package/vscode/src/vs/workbench/services/extensions/common/remoteConsoleUtil.js +0 -47
  238. package/vscode/src/vs/workbench/services/extensions/common/remoteExtensionHost.js +0 -218
  239. package/vscode/src/vs/workbench/services/keybinding/browser/keybindingService.js +0 -917
  240. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayoutService.js +0 -498
  241. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/_.contribution.js +0 -13
  242. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/cz.win.js +0 -162
  243. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/de-swiss.win.js +0 -162
  244. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/de.darwin.js +0 -125
  245. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/de.linux.js +0 -180
  246. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/de.win.js +0 -162
  247. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/dk.win.js +0 -162
  248. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/dvorak.darwin.js +0 -125
  249. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en-belgian.win.js +0 -162
  250. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en-ext.darwin.js +0 -125
  251. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en-in.win.js +0 -162
  252. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en-intl.darwin.js +0 -125
  253. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en-intl.win.js +0 -162
  254. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en-uk.darwin.js +0 -125
  255. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en-uk.win.js +0 -162
  256. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en.darwin.js +0 -133
  257. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en.linux.js +0 -182
  258. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en.win.js +0 -167
  259. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/es-latin.win.js +0 -162
  260. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/es.darwin.js +0 -125
  261. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/es.linux.js +0 -180
  262. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/es.win.js +0 -162
  263. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/fr.darwin.js +0 -125
  264. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/fr.linux.js +0 -180
  265. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/fr.win.js +0 -162
  266. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/hu.win.js +0 -162
  267. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/it.darwin.js +0 -125
  268. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/it.win.js +0 -162
  269. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/jp-roman.darwin.js +0 -125
  270. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/jp.darwin.js +0 -125
  271. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/ko.darwin.js +0 -125
  272. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/layout.contribution.darwin.js +0 -17
  273. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/layout.contribution.linux.js +0 -6
  274. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/layout.contribution.win.js +0 -23
  275. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/no.win.js +0 -162
  276. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/pl.darwin.js +0 -125
  277. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/pl.win.js +0 -162
  278. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/pt-br.win.js +0 -162
  279. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/pt.darwin.js +0 -125
  280. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/pt.win.js +0 -162
  281. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/ru.darwin.js +0 -125
  282. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/ru.linux.js +0 -180
  283. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/ru.win.js +0 -162
  284. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/sv.win.js +0 -164
  285. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/thai.win.js +0 -162
  286. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/tr.win.js +0 -162
  287. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/zh-hans.darwin.js +0 -125
  288. package/vscode/src/vs/workbench/services/keybinding/common/keybindingIO.js +0 -72
  289. package/vscode/src/vs/workbench/services/keybinding/common/keymapInfo.js +0 -108
  290. package/vscode/src/vs/workbench/services/keybinding/common/macLinuxKeyboardMapper.js +0 -886
  291. package/vscode/src/vs/workbench/services/keybinding/common/windowsKeyboardMapper.js +0 -350
  292. package/vscode/src/vs/workbench/services/quickinput/browser/quickInputService.js +0 -67
  293. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +0 -4
  294. package/vscode/src/vs/workbench/services/workingCopy/common/resourceWorkingCopy.js +0 -77
@@ -1,7 +1,7 @@
1
1
  import { Codicon } from 'monaco-editor/esm/vs/base/common/codicons.js';
2
2
  import { localizeWithPath } from 'monaco-editor/esm/vs/nls.js';
3
3
  import { registerIcon } from 'monaco-editor/esm/vs/platform/theme/common/iconRegistry.js';
4
- registerIcon('extensions-view-icon', Codicon.extensions, ( localizeWithPath(
4
+ const extensionsViewIcon = registerIcon('extensions-view-icon', Codicon.extensions, ( localizeWithPath(
5
5
  'vs/workbench/contrib/extensions/browser/extensionsIcons',
6
6
  'extensionsViewIcon',
7
7
  'View icon of the extensions view.'
@@ -11,12 +11,12 @@ const manageExtensionIcon = registerIcon('extensions-manage', Codicon.gear, ( lo
11
11
  'manageExtensionIcon',
12
12
  'Icon for the \'Manage\' action in the extensions view.'
13
13
  )));
14
- registerIcon('extensions-clear-search-results', Codicon.clearAll, ( localizeWithPath(
14
+ const clearSearchResultsIcon = registerIcon('extensions-clear-search-results', Codicon.clearAll, ( localizeWithPath(
15
15
  'vs/workbench/contrib/extensions/browser/extensionsIcons',
16
16
  'clearSearchResultsIcon',
17
17
  'Icon for the \'Clear Search Result\' action in the extensions view.'
18
18
  )));
19
- registerIcon('extensions-refresh', Codicon.refresh, ( localizeWithPath(
19
+ const refreshIcon = registerIcon('extensions-refresh', Codicon.refresh, ( localizeWithPath(
20
20
  'vs/workbench/contrib/extensions/browser/extensionsIcons',
21
21
  'refreshIcon',
22
22
  'Icon for the \'Refresh\' action in the extensions view.'
@@ -26,17 +26,17 @@ const filterIcon = registerIcon('extensions-filter', Codicon.filter, ( localizeW
26
26
  'filterIcon',
27
27
  'Icon for the \'Filter\' action in the extensions view.'
28
28
  )));
29
- registerIcon('extensions-install-local-in-remote', Codicon.cloudDownload, ( localizeWithPath(
29
+ const installLocalInRemoteIcon = registerIcon('extensions-install-local-in-remote', Codicon.cloudDownload, ( localizeWithPath(
30
30
  'vs/workbench/contrib/extensions/browser/extensionsIcons',
31
31
  'installLocalInRemoteIcon',
32
32
  'Icon for the \'Install Local Extension in Remote\' action in the extensions view.'
33
33
  )));
34
- registerIcon('extensions-install-workspace-recommended', Codicon.cloudDownload, ( localizeWithPath(
34
+ const installWorkspaceRecommendedIcon = registerIcon('extensions-install-workspace-recommended', Codicon.cloudDownload, ( localizeWithPath(
35
35
  'vs/workbench/contrib/extensions/browser/extensionsIcons',
36
36
  'installWorkspaceRecommendedIcon',
37
37
  'Icon for the \'Install Workspace Recommended Extensions\' action in the extensions view.'
38
38
  )));
39
- registerIcon('extensions-configure-recommended', Codicon.pencil, ( localizeWithPath(
39
+ const configureRecommendedIcon = registerIcon('extensions-configure-recommended', Codicon.pencil, ( localizeWithPath(
40
40
  'vs/workbench/contrib/extensions/browser/extensionsIcons',
41
41
  'configureRecommendedIcon',
42
42
  'Icon for the \'Configure Recommended Extensions\' action in the extensions view.'
@@ -51,22 +51,22 @@ const syncIgnoredIcon = registerIcon('extensions-sync-ignored', Codicon.syncIgno
51
51
  'syncIgnoredIcon',
52
52
  'Icon to indicate that an extension is ignored when syncing.'
53
53
  )));
54
- registerIcon('extensions-remote', Codicon.remote, ( localizeWithPath(
54
+ const remoteIcon = registerIcon('extensions-remote', Codicon.remote, ( localizeWithPath(
55
55
  'vs/workbench/contrib/extensions/browser/extensionsIcons',
56
56
  'remoteIcon',
57
57
  'Icon to indicate that an extension is remote in the extensions view and editor.'
58
58
  )));
59
- registerIcon('extensions-install-count', Codicon.cloudDownload, ( localizeWithPath(
59
+ const installCountIcon = registerIcon('extensions-install-count', Codicon.cloudDownload, ( localizeWithPath(
60
60
  'vs/workbench/contrib/extensions/browser/extensionsIcons',
61
61
  'installCountIcon',
62
62
  'Icon shown along with the install count in the extensions view and editor.'
63
63
  )));
64
- registerIcon('extensions-rating', Codicon.star, ( localizeWithPath(
64
+ const ratingIcon = registerIcon('extensions-rating', Codicon.star, ( localizeWithPath(
65
65
  'vs/workbench/contrib/extensions/browser/extensionsIcons',
66
66
  'ratingIcon',
67
67
  'Icon shown along with the rating in the extensions view and editor.'
68
68
  )));
69
- registerIcon('extensions-verified-publisher', Codicon.verifiedFilled, ( localizeWithPath(
69
+ const verifiedPublisherIcon = registerIcon('extensions-verified-publisher', Codicon.verifiedFilled, ( localizeWithPath(
70
70
  'vs/workbench/contrib/extensions/browser/extensionsIcons',
71
71
  'verifiedPublisher',
72
72
  'Icon used for the verified extension publisher in the extensions view and editor.'
@@ -76,22 +76,22 @@ const preReleaseIcon = registerIcon('extensions-pre-release', Codicon.versions,
76
76
  'preReleaseIcon',
77
77
  'Icon shown for extensions having pre-release versions in extensions view and editor.'
78
78
  )));
79
- registerIcon('extensions-sponsor', Codicon.heartFilled, ( localizeWithPath(
79
+ const sponsorIcon = registerIcon('extensions-sponsor', Codicon.heartFilled, ( localizeWithPath(
80
80
  'vs/workbench/contrib/extensions/browser/extensionsIcons',
81
81
  'sponsorIcon',
82
82
  'Icon used for sponsoring extensions in the extensions view and editor.'
83
83
  )));
84
- registerIcon('extensions-star-full', Codicon.starFull, ( localizeWithPath(
84
+ const starFullIcon = registerIcon('extensions-star-full', Codicon.starFull, ( localizeWithPath(
85
85
  'vs/workbench/contrib/extensions/browser/extensionsIcons',
86
86
  'starFullIcon',
87
87
  'Full star icon used for the rating in the extensions editor.'
88
88
  )));
89
- registerIcon('extensions-star-half', Codicon.starHalf, ( localizeWithPath(
89
+ const starHalfIcon = registerIcon('extensions-star-half', Codicon.starHalf, ( localizeWithPath(
90
90
  'vs/workbench/contrib/extensions/browser/extensionsIcons',
91
91
  'starHalfIcon',
92
92
  'Half star icon used for the rating in the extensions editor.'
93
93
  )));
94
- registerIcon('extensions-star-empty', Codicon.starEmpty, ( localizeWithPath(
94
+ const starEmptyIcon = registerIcon('extensions-star-empty', Codicon.starEmpty, ( localizeWithPath(
95
95
  'vs/workbench/contrib/extensions/browser/extensionsIcons',
96
96
  'starEmptyIcon',
97
97
  'Empty star icon used for the rating in the extensions editor.'
@@ -116,9 +116,9 @@ const trustIcon = registerIcon('extension-workspace-trust', Codicon.shield, ( lo
116
116
  'trustIcon',
117
117
  'Icon shown with a workspace trust message in the extension editor.'
118
118
  )));
119
- registerIcon('extension-activation-time', Codicon.history, ( localizeWithPath(
119
+ const activationTimeIcon = registerIcon('extension-activation-time', Codicon.history, ( localizeWithPath(
120
120
  'vs/workbench/contrib/extensions/browser/extensionsIcons',
121
121
  'activationtimeIcon',
122
122
  'Icon shown with a activation time message in the extension editor.'
123
123
  )));
124
- export { errorIcon, filterIcon, infoIcon, manageExtensionIcon, preReleaseIcon, syncEnabledIcon, syncIgnoredIcon, trustIcon, warningIcon };
124
+ export { activationTimeIcon, clearSearchResultsIcon, configureRecommendedIcon, errorIcon, extensionsViewIcon, filterIcon, infoIcon, installCountIcon, installLocalInRemoteIcon, installWorkspaceRecommendedIcon, manageExtensionIcon, preReleaseIcon, ratingIcon, refreshIcon, remoteIcon, sponsorIcon, starEmptyIcon, starFullIcon, starHalfIcon, syncEnabledIcon, syncIgnoredIcon, trustIcon, verifiedPublisherIcon, warningIcon };
@@ -0,0 +1,4 @@
1
+ import n from '../../../../../../../../external/rollup-plugin-styles/dist/runtime/inject-css.js';
2
+ var css = ".monaco-action-bar .action-item .action-label.extension-action{line-height:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-action-bar .action-dropdown-item>.action-label.extension-action.label,.monaco-action-bar .action-item>.action-label.extension-action.label{padding:0 5px}.monaco-action-bar .action-dropdown-item>.monaco-dropdown .action-label{padding:0}.monaco-action-bar .action-item .action-label.extension-action.label{outline-offset:1px}.monaco-action-bar .action-dropdown-item .action-label.extension-action.label,.monaco-action-bar .action-item .action-label.extension-action.label,.monaco-action-bar .action-item .action-label.extension-action.text{height:auto;line-height:14px;width:auto}.monaco-action-bar .action-item .action-label.extension-action.built-in-status{border-color:var(--vscode-foreground)}.monaco-action-bar .action-item .action-label.extension-action.label,.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator{background-color:var(--vscode-extensionButton-background)!important}.monaco-action-bar .action-item .action-label.extension-action.label{color:var(--vscode-extensionButton-foreground)!important}.monaco-action-bar .action-item .action-label.extension-action.label:hover{background-color:var(--vscode-extensionButton-hoverBackground)!important}.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator>div{background-color:var(--vscode-extensionButton-separator)}.monaco-action-bar .action-item .action-label.extension-action.label.prominent,.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator.prominent{background-color:var(--vscode-extensionButton-prominentBackground)}.monaco-action-bar .action-item .action-label.extension-action.label.prominent{color:var(--vscode-extensionButton-prominentForeground)!important}.monaco-action-bar .action-item .action-label.extension-action.label.prominent:hover{background-color:var(--vscode-extensionButton-prominentHoverBackground)}.monaco-action-bar .action-item .action-label.extension-action:not(.disabled){border:1px solid var(--vscode-contrastBorder)}.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator{border-bottom:1px solid var(--vscode-contrastBorder);border-top:1px solid var(--vscode-contrastBorder)}.monaco-action-bar .action-item .action-label.extension-action.extension-status-error{color:var(--vscode-editorError-foreground)}.monaco-action-bar .action-item .action-label.extension-action.extension-status-warning{color:var(--vscode-editorWarning-foreground)}.monaco-action-bar .action-item .action-label.extension-action.extension-status-info{color:var(--vscode-editorInfo-foreground)}.monaco-action-bar .action-dropdown-item .action-label.extension-action.label,.monaco-action-bar .action-item .action-label.extension-action.icon,.monaco-action-bar .action-item:not(.disabled) .action-label.extension-action.label,.monaco-action-bar .action-item:not(.disabled) .action-label.extension-action.text{margin-top:2px}.monaco-action-bar .action-item .action-label.extension-action.manage.hide,.monaco-action-bar .action-item.action-dropdown-item .action-label.extension-action.hide,.monaco-action-bar .action-item.action-dropdown-item.disabled,.monaco-action-bar .action-item.disabled .action-label.disable-status.hide,.monaco-action-bar .action-item.disabled .action-label.extension-action.extension-sync,.monaco-action-bar .action-item.disabled .action-label.extension-action.hide,.monaco-action-bar .action-item.disabled .action-label.extension-action.hide-when-disabled,.monaco-action-bar .action-item.disabled .action-label.extension-action.ignore,.monaco-action-bar .action-item.disabled .action-label.extension-action.install:not(.installing),.monaco-action-bar .action-item.disabled .action-label.extension-action.language,.monaco-action-bar .action-item.disabled .action-label.extension-action.migrate,.monaco-action-bar .action-item.disabled .action-label.extension-action.reload,.monaco-action-bar .action-item.disabled .action-label.extension-action.theme,.monaco-action-bar .action-item.disabled .action-label.extension-action.undo-ignore,.monaco-action-bar .action-item.disabled .action-label.extension-action.uninstall:not(.uninstalling),.monaco-action-bar .action-item.disabled .action-label.extension-action.update,.monaco-action-bar .action-item.disabled .action-label.extension-status-label.hide,.monaco-action-bar .action-item.disabled .action-label.extension-status.hide{display:none}.monaco-action-bar .extension-action.label{display:inherit}.monaco-action-bar .action-item.disabled .action-label.extension-status:before{opacity:1}.monaco-action-bar .action-item.disabled .action-label.extension-status-label:before{content:\"\\2713\";padding-right:4px}.monaco-action-bar .action-item.disabled .action-label.extension-action{opacity:1}.monaco-action-bar .action-item.disabled .action-label.extension-action.text{font-style:italic;opacity:.9}";
3
+ n(css,{});
4
+ export { css, css as default };
@@ -1,9 +1,53 @@
1
+ import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
1
2
  import { createDecorator } from 'monaco-editor/esm/vs/platform/instantiation/common/instantiation.js';
3
+ import { Disposable } from 'monaco-editor/esm/vs/base/common/lifecycle.js';
4
+ import { areSameExtensions } from '../../../../platform/extensionManagement/common/extensionManagementUtil.js';
5
+ import { RawContextKey } from 'monaco-editor/esm/vs/platform/contextkey/common/contextkey.js';
2
6
  const VIEWLET_ID = 'workbench.view.extensions';
3
7
  const IExtensionsWorkbenchService = ( createDecorator('extensionsWorkbenchService'));
8
+ const AutoUpdateConfigurationKey = 'extensions.autoUpdate';
9
+ const AutoCheckUpdatesConfigurationKey = 'extensions.autoCheckUpdates';
10
+ const CloseExtensionDetailsOnViewChangeKey = 'extensions.closeExtensionDetailsOnViewChange';
11
+ let ExtensionContainers = class ExtensionContainers extends Disposable {
12
+ constructor(containers, extensionsWorkbenchService) {
13
+ super();
14
+ this.containers = containers;
15
+ this._register(extensionsWorkbenchService.onChange(this.update, this));
16
+ }
17
+ set extension(extension) {
18
+ this.containers.forEach(c => c.extension = extension);
19
+ }
20
+ update(extension) {
21
+ for (const container of this.containers) {
22
+ if (extension && container.extension) {
23
+ if (areSameExtensions(container.extension.identifier, extension.identifier)) {
24
+ if (container.extension.server && extension.server && container.extension.server !== extension.server) {
25
+ if (container.updateWhenCounterExtensionChanges) {
26
+ container.update();
27
+ }
28
+ }
29
+ else {
30
+ container.extension = extension;
31
+ }
32
+ }
33
+ }
34
+ else {
35
+ container.update();
36
+ }
37
+ }
38
+ }
39
+ };
40
+ ExtensionContainers = ( __decorate([
41
+ ( __param(1, IExtensionsWorkbenchService))
42
+ ], ExtensionContainers));
43
+ const WORKSPACE_RECOMMENDATIONS_VIEW_ID = 'workbench.views.extensions.workspaceRecommendations';
44
+ const OUTDATED_EXTENSIONS_VIEW_ID = 'workbench.views.extensions.searchOutdated';
4
45
  const TOGGLE_IGNORE_EXTENSION_ACTION_ID = 'workbench.extensions.action.toggleIgnoreExtension';
5
46
  const SELECT_INSTALL_VSIX_EXTENSION_COMMAND_ID = 'workbench.extensions.action.installVSIX';
47
+ const INSTALL_EXTENSION_FROM_VSIX_COMMAND_ID = 'workbench.extensions.command.installFromVSIX';
6
48
  const LIST_WORKSPACE_UNSUPPORTED_EXTENSIONS_COMMAND_ID = 'workbench.extensions.action.listWorkspaceUnsupportedExtensions';
49
+ const HasOutdatedExtensionsContext = ( new RawContextKey('hasOutdatedExtensions', false));
50
+ const CONTEXT_HAS_GALLERY = ( new RawContextKey('hasGallery', false));
7
51
  const THEME_ACTIONS_GROUP = '_theme_';
8
52
  const INSTALL_ACTIONS_GROUP = '0_install';
9
- export { IExtensionsWorkbenchService, INSTALL_ACTIONS_GROUP, LIST_WORKSPACE_UNSUPPORTED_EXTENSIONS_COMMAND_ID, SELECT_INSTALL_VSIX_EXTENSION_COMMAND_ID, THEME_ACTIONS_GROUP, TOGGLE_IGNORE_EXTENSION_ACTION_ID, VIEWLET_ID };
53
+ export { AutoCheckUpdatesConfigurationKey, AutoUpdateConfigurationKey, CONTEXT_HAS_GALLERY, CloseExtensionDetailsOnViewChangeKey, ExtensionContainers, HasOutdatedExtensionsContext, IExtensionsWorkbenchService, INSTALL_ACTIONS_GROUP, INSTALL_EXTENSION_FROM_VSIX_COMMAND_ID, LIST_WORKSPACE_UNSUPPORTED_EXTENSIONS_COMMAND_ID, OUTDATED_EXTENSIONS_VIEW_ID, SELECT_INSTALL_VSIX_EXTENSION_COMMAND_ID, THEME_ACTIONS_GROUP, TOGGLE_IGNORE_EXTENSION_ACTION_ID, VIEWLET_ID, WORKSPACE_RECOMMENDATIONS_VIEW_ID };
@@ -0,0 +1,67 @@
1
+ import { localizeWithPath } from 'monaco-editor/esm/vs/nls.js';
2
+ import { EXTENSION_IDENTIFIER_PATTERN } from '../../../../platform/extensionManagement/common/extensionManagement.js';
3
+ const ExtensionsConfigurationSchemaId = 'vscode://schemas/extensions';
4
+ const ExtensionsConfigurationSchema = {
5
+ id: ExtensionsConfigurationSchemaId,
6
+ allowComments: true,
7
+ allowTrailingCommas: true,
8
+ type: 'object',
9
+ title: ( localizeWithPath(
10
+ 'vs/workbench/contrib/extensions/common/extensionsFileTemplate',
11
+ 'app.extensions.json.title',
12
+ "Extensions"
13
+ )),
14
+ additionalProperties: false,
15
+ properties: {
16
+ recommendations: {
17
+ type: 'array',
18
+ description: ( localizeWithPath(
19
+ 'vs/workbench/contrib/extensions/common/extensionsFileTemplate',
20
+ 'app.extensions.json.recommendations',
21
+ "List of extensions which should be recommended for users of this workspace. The identifier of an extension is always '${publisher}.${name}'. For example: 'vscode.csharp'."
22
+ )),
23
+ items: {
24
+ type: 'string',
25
+ pattern: EXTENSION_IDENTIFIER_PATTERN,
26
+ errorMessage: ( localizeWithPath(
27
+ 'vs/workbench/contrib/extensions/common/extensionsFileTemplate',
28
+ 'app.extension.identifier.errorMessage',
29
+ "Expected format '${publisher}.${name}'. Example: 'vscode.csharp'."
30
+ ))
31
+ },
32
+ },
33
+ unwantedRecommendations: {
34
+ type: 'array',
35
+ description: ( localizeWithPath(
36
+ 'vs/workbench/contrib/extensions/common/extensionsFileTemplate',
37
+ 'app.extensions.json.unwantedRecommendations',
38
+ "List of extensions recommended by VS Code that should not be recommended for users of this workspace. The identifier of an extension is always '${publisher}.${name}'. For example: 'vscode.csharp'."
39
+ )),
40
+ items: {
41
+ type: 'string',
42
+ pattern: EXTENSION_IDENTIFIER_PATTERN,
43
+ errorMessage: ( localizeWithPath(
44
+ 'vs/workbench/contrib/extensions/common/extensionsFileTemplate',
45
+ 'app.extension.identifier.errorMessage',
46
+ "Expected format '${publisher}.${name}'. Example: 'vscode.csharp'."
47
+ ))
48
+ },
49
+ },
50
+ }
51
+ };
52
+ const ExtensionsConfigurationInitialContent = [
53
+ '{',
54
+ '\t// See https://go.microsoft.com/fwlink/?LinkId=827846 to learn about workspace recommendations.',
55
+ '\t// Extension identifier format: ${publisher}.${name}. Example: vscode.csharp',
56
+ '',
57
+ '\t// List of extensions which should be recommended for users of this workspace.',
58
+ '\t"recommendations": [',
59
+ '\t\t',
60
+ '\t],',
61
+ '\t// List of extensions recommended by VS Code that should not be recommended for users of this workspace.',
62
+ '\t"unwantedRecommendations": [',
63
+ '\t\t',
64
+ '\t]',
65
+ '}'
66
+ ].join('\n');
67
+ export { ExtensionsConfigurationInitialContent, ExtensionsConfigurationSchema, ExtensionsConfigurationSchemaId };
@@ -0,0 +1,396 @@
1
+ import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
+ import { localizeWithPath } from 'monaco-editor/esm/vs/nls.js';
3
+ import { IExtensionManagementService, IGlobalExtensionEnablementService } from '../../../../platform/extensionManagement/common/extensionManagement.js';
4
+ import { IStorageService } from 'monaco-editor/esm/vs/platform/storage/common/storage.js';
5
+ import { isResolverExtension } from 'monaco-editor/esm/vs/platform/extensions/common/extensions.js';
6
+ import { Severity, NotificationPriority, INotificationService } from 'monaco-editor/esm/vs/platform/notification/common/notification.js';
7
+ import { IHostService } from '../../host/browser/host.js';
8
+ import { createDecorator } from 'monaco-editor/esm/vs/platform/instantiation/common/instantiation.js';
9
+ import { registerAction2, Action2, MenuId } from 'monaco-editor/esm/vs/platform/actions/common/actions.js';
10
+ import { RawContextKey, ContextKeyExpr, IContextKeyService } from 'monaco-editor/esm/vs/platform/contextkey/common/contextkey.js';
11
+ import '../../../../../../../override/vs/platform/dialogs/common/dialogs.js';
12
+ import { Registry } from 'monaco-editor/esm/vs/platform/registry/common/platform.js';
13
+ import { Extensions } from '../../../common/contributions.js';
14
+ import { ICommandService } from 'monaco-editor/esm/vs/platform/commands/common/commands.js';
15
+ import { ILogService } from 'monaco-editor/esm/vs/platform/log/common/log.js';
16
+ import { IProductService } from 'monaco-editor/esm/vs/platform/product/common/productService.js';
17
+ import { IWorkbenchIssueService } from '../../issue/common/issue.js';
18
+ import { IWorkbenchEnvironmentService } from '../../environment/common/environmentService.js';
19
+ import { areSameExtensions } from '../../../../platform/extensionManagement/common/extensionManagementUtil.js';
20
+ import { Categories } from 'monaco-editor/esm/vs/platform/action/common/actionCommonCategories.js';
21
+ import { IWorkbenchExtensionEnablementService } from '../common/extensionManagement.js';
22
+ import { IDialogService } from '../../../../platform/dialogs/common/dialogs.js';
23
+ var ExtensionBisectService_1, ExtensionBisectUi_1;
24
+ const IExtensionBisectService = ( createDecorator('IExtensionBisectService'));
25
+ class BisectState {
26
+ static fromJSON(raw) {
27
+ if (!raw) {
28
+ return undefined;
29
+ }
30
+ try {
31
+ const data = JSON.parse(raw);
32
+ return ( new BisectState(data.extensions, data.low, data.high, data.mid));
33
+ }
34
+ catch {
35
+ return undefined;
36
+ }
37
+ }
38
+ constructor(extensions, low, high, mid = ((low + high) / 2) | 0) {
39
+ this.extensions = extensions;
40
+ this.low = low;
41
+ this.high = high;
42
+ this.mid = mid;
43
+ }
44
+ }
45
+ let ExtensionBisectService = class ExtensionBisectService {
46
+ static { ExtensionBisectService_1 = this; }
47
+ static { this._storageKey = 'extensionBisectState'; }
48
+ constructor(logService, _storageService, _envService) {
49
+ this._storageService = _storageService;
50
+ this._envService = _envService;
51
+ this._disabled = ( new Map());
52
+ const raw = _storageService.get(ExtensionBisectService_1._storageKey, -1 );
53
+ this._state = BisectState.fromJSON(raw);
54
+ if (this._state) {
55
+ const { mid, high } = this._state;
56
+ for (let i = 0; i < this._state.extensions.length; i++) {
57
+ const isDisabled = i >= mid && i < high;
58
+ this._disabled.set(this._state.extensions[i], isDisabled);
59
+ }
60
+ logService.warn('extension BISECT active', [...this._disabled]);
61
+ }
62
+ }
63
+ get isActive() {
64
+ return !!this._state;
65
+ }
66
+ get disabledCount() {
67
+ return this._state ? this._state.high - this._state.mid : -1;
68
+ }
69
+ isDisabledByBisect(extension) {
70
+ if (!this._state) {
71
+ return false;
72
+ }
73
+ if (isResolverExtension(extension.manifest, this._envService.remoteAuthority)) {
74
+ return false;
75
+ }
76
+ if (this._isEnabledInEnv(extension)) {
77
+ return false;
78
+ }
79
+ const disabled = this._disabled.get(extension.identifier.id);
80
+ return disabled ?? false;
81
+ }
82
+ _isEnabledInEnv(extension) {
83
+ return Array.isArray(this._envService.enableExtensions) && ( this._envService.enableExtensions.some(id => areSameExtensions({ id }, extension.identifier)));
84
+ }
85
+ async start(extensions) {
86
+ if (this._state) {
87
+ throw new Error('invalid state');
88
+ }
89
+ const extensionIds = ( extensions.map(ext => ext.identifier.id));
90
+ const newState = ( new BisectState(extensionIds, 0, extensionIds.length, 0));
91
+ this._storageService.store(ExtensionBisectService_1._storageKey, JSON.stringify(newState), -1 , 1 );
92
+ await this._storageService.flush();
93
+ }
94
+ async next(seeingBad) {
95
+ if (!this._state) {
96
+ throw new Error('invalid state');
97
+ }
98
+ if (seeingBad && this._state.mid === 0 && this._state.high === this._state.extensions.length) {
99
+ return { bad: true, id: '' };
100
+ }
101
+ if (this._state.low === this._state.high - 1) {
102
+ await this.reset();
103
+ return { id: this._state.extensions[this._state.low], bad: seeingBad };
104
+ }
105
+ const nextState = ( new BisectState(
106
+ this._state.extensions,
107
+ seeingBad ? this._state.low : this._state.mid,
108
+ seeingBad ? this._state.mid : this._state.high
109
+ ));
110
+ this._storageService.store(ExtensionBisectService_1._storageKey, JSON.stringify(nextState), -1 , 1 );
111
+ await this._storageService.flush();
112
+ return undefined;
113
+ }
114
+ async reset() {
115
+ this._storageService.remove(ExtensionBisectService_1._storageKey, -1 );
116
+ await this._storageService.flush();
117
+ }
118
+ };
119
+ ExtensionBisectService = ExtensionBisectService_1 = ( __decorate([
120
+ ( __param(0, ILogService)),
121
+ ( __param(1, IStorageService)),
122
+ ( __param(2, IWorkbenchEnvironmentService))
123
+ ], ExtensionBisectService));
124
+ let ExtensionBisectUi = class ExtensionBisectUi {
125
+ static { ExtensionBisectUi_1 = this; }
126
+ static { this.ctxIsBisectActive = ( new RawContextKey('isExtensionBisectActive', false)); }
127
+ constructor(contextKeyService, _extensionBisectService, _notificationService, _commandService) {
128
+ this._extensionBisectService = _extensionBisectService;
129
+ this._notificationService = _notificationService;
130
+ this._commandService = _commandService;
131
+ if (_extensionBisectService.isActive) {
132
+ ExtensionBisectUi_1.ctxIsBisectActive.bindTo(contextKeyService).set(true);
133
+ this._showBisectPrompt();
134
+ }
135
+ }
136
+ _showBisectPrompt() {
137
+ const goodPrompt = {
138
+ label: ( localizeWithPath(
139
+ 'vs/workbench/services/extensionManagement/browser/extensionBisect',
140
+ 'I cannot reproduce',
141
+ "I can't reproduce"
142
+ )),
143
+ run: () => this._commandService.executeCommand('extension.bisect.next', false)
144
+ };
145
+ const badPrompt = {
146
+ label: ( localizeWithPath(
147
+ 'vs/workbench/services/extensionManagement/browser/extensionBisect',
148
+ 'This is Bad',
149
+ "I can reproduce"
150
+ )),
151
+ run: () => this._commandService.executeCommand('extension.bisect.next', true)
152
+ };
153
+ const stop = {
154
+ label: 'Stop Bisect',
155
+ run: () => this._commandService.executeCommand('extension.bisect.stop')
156
+ };
157
+ const message = this._extensionBisectService.disabledCount === 1
158
+ ? ( localizeWithPath(
159
+ 'vs/workbench/services/extensionManagement/browser/extensionBisect',
160
+ 'bisect.singular',
161
+ "Extension Bisect is active and has disabled 1 extension. Check if you can still reproduce the problem and proceed by selecting from these options."
162
+ ))
163
+ : ( localizeWithPath(
164
+ 'vs/workbench/services/extensionManagement/browser/extensionBisect',
165
+ 'bisect.plural',
166
+ "Extension Bisect is active and has disabled {0} extensions. Check if you can still reproduce the problem and proceed by selecting from these options.",
167
+ this._extensionBisectService.disabledCount
168
+ ));
169
+ this._notificationService.prompt(Severity.Info, message, [goodPrompt, badPrompt, stop], { sticky: true, priority: NotificationPriority.URGENT });
170
+ }
171
+ };
172
+ ExtensionBisectUi = ExtensionBisectUi_1 = ( __decorate([
173
+ ( __param(0, IContextKeyService)),
174
+ ( __param(1, IExtensionBisectService)),
175
+ ( __param(2, INotificationService)),
176
+ ( __param(3, ICommandService))
177
+ ], ExtensionBisectUi));
178
+ ( Registry.as(Extensions.Workbench)).registerWorkbenchContribution(ExtensionBisectUi, 3 );
179
+ registerAction2(class extends Action2 {
180
+ constructor() {
181
+ super({
182
+ id: 'extension.bisect.start',
183
+ title: { value: ( localizeWithPath(
184
+ 'vs/workbench/services/extensionManagement/browser/extensionBisect',
185
+ 'title.start',
186
+ "Start Extension Bisect"
187
+ )), original: 'Start Extension Bisect' },
188
+ category: Categories.Help,
189
+ f1: true,
190
+ precondition: ( ExtensionBisectUi.ctxIsBisectActive.negate()),
191
+ menu: {
192
+ id: MenuId.ViewContainerTitle,
193
+ when: ( ContextKeyExpr.equals('viewContainer', 'workbench.view.extensions')),
194
+ group: '2_enablement',
195
+ order: 4
196
+ }
197
+ });
198
+ }
199
+ async run(accessor) {
200
+ const dialogService = accessor.get(IDialogService);
201
+ const hostService = accessor.get(IHostService);
202
+ const extensionManagement = accessor.get(IExtensionManagementService);
203
+ const extensionEnablementService = accessor.get(IWorkbenchExtensionEnablementService);
204
+ const extensionsBisect = accessor.get(IExtensionBisectService);
205
+ const extensions = (await extensionManagement.getInstalled(1 )).filter(ext => extensionEnablementService.isEnabled(ext));
206
+ const res = await dialogService.confirm({
207
+ message: ( localizeWithPath(
208
+ 'vs/workbench/services/extensionManagement/browser/extensionBisect',
209
+ 'msg.start',
210
+ "Extension Bisect"
211
+ )),
212
+ detail: ( localizeWithPath(
213
+ 'vs/workbench/services/extensionManagement/browser/extensionBisect',
214
+ 'detail.start',
215
+ "Extension Bisect will use binary search to find an extension that causes a problem. During the process the window reloads repeatedly (~{0} times). Each time you must confirm if you are still seeing problems.",
216
+ 2 + Math.log2(extensions.length) | 0
217
+ )),
218
+ primaryButton: ( localizeWithPath(
219
+ 'vs/workbench/services/extensionManagement/browser/extensionBisect',
220
+ { key: 'msg2', comment: ['&& denotes a mnemonic'] },
221
+ "&&Start Extension Bisect"
222
+ ))
223
+ });
224
+ if (res.confirmed) {
225
+ await extensionsBisect.start(extensions);
226
+ hostService.reload();
227
+ }
228
+ }
229
+ });
230
+ registerAction2(class extends Action2 {
231
+ constructor() {
232
+ super({
233
+ id: 'extension.bisect.next',
234
+ title: { value: ( localizeWithPath(
235
+ 'vs/workbench/services/extensionManagement/browser/extensionBisect',
236
+ 'title.isBad',
237
+ "Continue Extension Bisect"
238
+ )), original: 'Continue Extension Bisect' },
239
+ category: Categories.Help,
240
+ f1: true,
241
+ precondition: ExtensionBisectUi.ctxIsBisectActive
242
+ });
243
+ }
244
+ async run(accessor, seeingBad) {
245
+ const dialogService = accessor.get(IDialogService);
246
+ const hostService = accessor.get(IHostService);
247
+ const bisectService = accessor.get(IExtensionBisectService);
248
+ const productService = accessor.get(IProductService);
249
+ const extensionEnablementService = accessor.get(IGlobalExtensionEnablementService);
250
+ const issueService = accessor.get(IWorkbenchIssueService);
251
+ if (!bisectService.isActive) {
252
+ return;
253
+ }
254
+ if (seeingBad === undefined) {
255
+ const goodBadStopCancel = await this._checkForBad(dialogService, bisectService);
256
+ if (goodBadStopCancel === null) {
257
+ return;
258
+ }
259
+ seeingBad = goodBadStopCancel;
260
+ }
261
+ if (seeingBad === undefined) {
262
+ await bisectService.reset();
263
+ hostService.reload();
264
+ return;
265
+ }
266
+ const done = await bisectService.next(seeingBad);
267
+ if (!done) {
268
+ hostService.reload();
269
+ return;
270
+ }
271
+ if (done.bad) {
272
+ await dialogService.info(( localizeWithPath(
273
+ 'vs/workbench/services/extensionManagement/browser/extensionBisect',
274
+ 'done.msg',
275
+ "Extension Bisect"
276
+ )), ( localizeWithPath(
277
+ 'vs/workbench/services/extensionManagement/browser/extensionBisect',
278
+ 'done.detail2',
279
+ "Extension Bisect is done but no extension has been identified. This might be a problem with {0}.",
280
+ productService.nameShort
281
+ )));
282
+ }
283
+ else {
284
+ const res = await dialogService.confirm({
285
+ type: Severity.Info,
286
+ message: ( localizeWithPath(
287
+ 'vs/workbench/services/extensionManagement/browser/extensionBisect',
288
+ 'done.msg',
289
+ "Extension Bisect"
290
+ )),
291
+ primaryButton: ( localizeWithPath(
292
+ 'vs/workbench/services/extensionManagement/browser/extensionBisect',
293
+ { key: 'report', comment: ['&& denotes a mnemonic'] },
294
+ "&&Report Issue & Continue"
295
+ )),
296
+ cancelButton: ( localizeWithPath(
297
+ 'vs/workbench/services/extensionManagement/browser/extensionBisect',
298
+ 'continue',
299
+ "Continue"
300
+ )),
301
+ detail: ( localizeWithPath(
302
+ 'vs/workbench/services/extensionManagement/browser/extensionBisect',
303
+ 'done.detail',
304
+ "Extension Bisect is done and has identified {0} as the extension causing the problem.",
305
+ done.id
306
+ )),
307
+ checkbox: { label: ( localizeWithPath(
308
+ 'vs/workbench/services/extensionManagement/browser/extensionBisect',
309
+ 'done.disbale',
310
+ "Keep this extension disabled"
311
+ )), checked: true }
312
+ });
313
+ if (res.checkboxChecked) {
314
+ await extensionEnablementService.disableExtension({ id: done.id }, undefined);
315
+ }
316
+ if (res.confirmed) {
317
+ await issueService.openReporter({ extensionId: done.id });
318
+ }
319
+ }
320
+ await bisectService.reset();
321
+ hostService.reload();
322
+ }
323
+ async _checkForBad(dialogService, bisectService) {
324
+ const { result } = await dialogService.prompt({
325
+ type: Severity.Info,
326
+ message: ( localizeWithPath(
327
+ 'vs/workbench/services/extensionManagement/browser/extensionBisect',
328
+ 'msg.next',
329
+ "Extension Bisect"
330
+ )),
331
+ detail: ( localizeWithPath(
332
+ 'vs/workbench/services/extensionManagement/browser/extensionBisect',
333
+ 'bisect',
334
+ "Extension Bisect is active and has disabled {0} extensions. Check if you can still reproduce the problem and proceed by selecting from these options.",
335
+ bisectService.disabledCount
336
+ )),
337
+ buttons: [
338
+ {
339
+ label: ( localizeWithPath(
340
+ 'vs/workbench/services/extensionManagement/browser/extensionBisect',
341
+ { key: 'next.good', comment: ['&& denotes a mnemonic'] },
342
+ "I ca&&n't reproduce"
343
+ )),
344
+ run: () => false
345
+ },
346
+ {
347
+ label: ( localizeWithPath(
348
+ 'vs/workbench/services/extensionManagement/browser/extensionBisect',
349
+ { key: 'next.bad', comment: ['&& denotes a mnemonic'] },
350
+ "I can &&reproduce"
351
+ )),
352
+ run: () => true
353
+ },
354
+ {
355
+ label: ( localizeWithPath(
356
+ 'vs/workbench/services/extensionManagement/browser/extensionBisect',
357
+ { key: 'next.stop', comment: ['&& denotes a mnemonic'] },
358
+ "&&Stop Bisect"
359
+ )),
360
+ run: () => undefined
361
+ }
362
+ ],
363
+ cancelButton: {
364
+ label: ( localizeWithPath(
365
+ 'vs/workbench/services/extensionManagement/browser/extensionBisect',
366
+ { key: 'next.cancel', comment: ['&& denotes a mnemonic'] },
367
+ "&&Cancel Bisect"
368
+ )),
369
+ run: () => null
370
+ }
371
+ });
372
+ return result;
373
+ }
374
+ });
375
+ registerAction2(class extends Action2 {
376
+ constructor() {
377
+ super({
378
+ id: 'extension.bisect.stop',
379
+ title: { value: ( localizeWithPath(
380
+ 'vs/workbench/services/extensionManagement/browser/extensionBisect',
381
+ 'title.stop',
382
+ "Stop Extension Bisect"
383
+ )), original: 'Stop Extension Bisect' },
384
+ category: Categories.Help,
385
+ f1: true,
386
+ precondition: ExtensionBisectUi.ctxIsBisectActive
387
+ });
388
+ }
389
+ async run(accessor) {
390
+ const extensionsBisect = accessor.get(IExtensionBisectService);
391
+ const hostService = accessor.get(IHostService);
392
+ await extensionsBisect.reset();
393
+ hostService.reload();
394
+ }
395
+ });
396
+ export { IExtensionBisectService };