@codingame/monaco-vscode-api 4.0.0 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (909) hide show
  1. package/README.md +2 -0
  2. package/l10n.d.ts +5 -2
  3. package/l10n.js +14 -2
  4. package/missing-services.js +6 -7
  5. package/override/vs/platform/userDataSync/common/extensionsSync.js +4 -0
  6. package/override/vs/platform/userDataSync/common/globalStateSync.js +5 -0
  7. package/package.json +8 -8
  8. package/services.d.ts +2 -0
  9. package/services.js +2 -0
  10. package/vscode/src/vs/base/browser/hash.js +15 -0
  11. package/vscode/src/vs/base/browser/ui/icons/iconSelectBox.css.js +4 -0
  12. package/vscode/src/vs/base/browser/ui/icons/iconSelectBox.js +246 -0
  13. package/vscode/src/vs/base/common/amd.js +101 -0
  14. package/vscode/src/vs/base/common/console.js +60 -0
  15. package/vscode/src/vs/base/common/objects.js +1 -1
  16. package/vscode/src/vs/base/common/paging.js +116 -0
  17. package/vscode/src/vs/base/common/parsers.js +43 -0
  18. package/vscode/src/vs/base/common/processes.js +25 -0
  19. package/vscode/src/vs/base/parts/request/browser/request.js +60 -0
  20. package/vscode/src/vs/editor/browser/coreCommands.js +1 -1
  21. package/vscode/src/vs/editor/common/services/modelUndoRedoParticipant.js +56 -0
  22. package/vscode/src/vs/editor/common/services/textResourceConfigurationService.js +116 -0
  23. package/vscode/src/vs/editor/contrib/quickAccess/browser/commandsQuickAccess.js +23 -0
  24. package/vscode/src/vs/platform/debug/common/extensionHostDebugIpc.js +71 -0
  25. package/vscode/src/vs/platform/download/common/downloadIpc.js +16 -0
  26. package/vscode/src/vs/platform/download/common/downloadService.js +31 -0
  27. package/vscode/src/vs/platform/extensionManagement/common/abstractExtensionManagementService.js +748 -0
  28. package/vscode/src/vs/platform/extensionManagement/common/extensionGalleryService.js +852 -0
  29. package/vscode/src/vs/platform/extensionManagement/common/extensionManagementCLI.js +495 -0
  30. package/vscode/src/vs/platform/extensionManagement/common/extensionManagementIpc.js +120 -0
  31. package/vscode/src/vs/platform/extensionManagement/common/extensionTipsService.js +65 -0
  32. package/vscode/src/vs/platform/extensionManagement/common/unsupportedExtensionsMigration.js +56 -0
  33. package/vscode/src/vs/platform/extensionResourceLoader/browser/extensionResourceLoaderService.js +42 -0
  34. package/vscode/src/vs/platform/externalServices/common/marketplace.js +15 -0
  35. package/vscode/src/vs/platform/externalTerminal/common/externalTerminal.js +3 -0
  36. package/vscode/src/vs/platform/files/browser/indexedDBFileSystemProvider.js +404 -0
  37. package/vscode/src/vs/platform/files/common/fileService.js +986 -0
  38. package/vscode/src/vs/platform/files/common/io.js +75 -0
  39. package/vscode/src/vs/platform/issue/common/issueReporterUtil.js +15 -0
  40. package/vscode/src/vs/platform/keyboardLayout/common/keyboardConfig.js +48 -0
  41. package/vscode/src/vs/platform/keyboardLayout/common/keyboardMapper.js +23 -0
  42. package/vscode/src/vs/platform/languagePacks/common/languagePacks.d.ts +18 -0
  43. package/vscode/src/vs/platform/lifecycle/common/lifecycle.js +25 -0
  44. package/vscode/src/vs/platform/log/common/fileLog.js +105 -0
  45. package/vscode/src/vs/platform/log/common/logIpc.js +26 -0
  46. package/vscode/src/vs/platform/quickinput/browser/commandsQuickAccess.js +355 -0
  47. package/vscode/src/vs/platform/quickinput/browser/helpQuickAccess.js +65 -0
  48. package/vscode/src/vs/platform/remote/browser/remoteAuthorityResolverService.js +108 -0
  49. package/vscode/src/vs/platform/remote/common/managedSocket.js +96 -0
  50. package/vscode/src/vs/platform/request/browser/requestService.js +28 -0
  51. package/vscode/src/vs/platform/request/common/requestIpc.js +18 -0
  52. package/vscode/src/vs/platform/telemetry/common/commonProperties.js +11 -0
  53. package/vscode/src/vs/platform/telemetry/common/telemetry.js +2 -1
  54. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +7 -3
  55. package/vscode/src/vs/platform/terminal/common/capabilities/naiveCwdDetectionCapability.js +22 -0
  56. package/vscode/src/vs/platform/terminal/common/environmentVariable.js +7 -0
  57. package/vscode/src/vs/platform/terminal/common/environmentVariableCollection.js +196 -0
  58. package/vscode/src/vs/platform/terminal/common/terminalLogService.js +49 -0
  59. package/vscode/src/vs/platform/terminal/common/terminalPlatformConfiguration.js +518 -0
  60. package/vscode/src/vs/platform/terminal/common/terminalProfiles.js +111 -0
  61. package/vscode/src/vs/platform/terminal/common/terminalRecorder.js +66 -0
  62. package/vscode/src/vs/platform/update/common/update.config.contribution.js +98 -0
  63. package/vscode/src/vs/platform/url/common/urlService.js +20 -0
  64. package/vscode/src/vs/platform/userDataProfile/browser/userDataProfile.js +93 -0
  65. package/vscode/src/vs/platform/userDataProfile/common/userDataProfileStorageService.js +8 -0
  66. package/vscode/src/vs/platform/userDataSync/common/extensionsSync.js +256 -0
  67. package/vscode/src/vs/platform/userDataSync/common/globalStateSync.js +120 -0
  68. package/vscode/src/vs/platform/userDataSync/common/keybindingsMerge.js +275 -0
  69. package/vscode/src/vs/platform/userDataSync/common/keybindingsSync.js +316 -0
  70. package/vscode/src/vs/platform/userDataSync/common/settingsSync.js +314 -0
  71. package/vscode/src/vs/platform/userDataSync/common/snippetsMerge.js +125 -0
  72. package/vscode/src/vs/platform/userDataSync/common/snippetsSync.js +474 -0
  73. package/vscode/src/vs/platform/userDataSync/common/tasksSync.js +242 -0
  74. package/vscode/src/vs/platform/userDataSync/common/userDataAutoSyncService.js +464 -0
  75. package/vscode/src/vs/platform/userDataSync/common/userDataProfilesManifestMerge.js +90 -0
  76. package/vscode/src/vs/platform/userDataSync/common/userDataProfilesManifestSync.js +257 -0
  77. package/vscode/src/vs/platform/userDataSync/common/userDataSyncEnablementService.js +75 -0
  78. package/vscode/src/vs/platform/userDataSync/common/userDataSyncLocalStoreService.js +148 -0
  79. package/vscode/src/vs/platform/userDataSync/common/userDataSyncLog.js +39 -0
  80. package/vscode/src/vs/platform/userDataSync/common/userDataSyncResourceProvider.js +447 -0
  81. package/vscode/src/vs/platform/userDataSync/common/userDataSyncService.js +781 -0
  82. package/vscode/src/vs/workbench/api/browser/extensionHost.contribution.js +103 -0
  83. package/vscode/src/vs/workbench/api/browser/mainThreadAiEmbeddingVector.js +29 -0
  84. package/vscode/src/vs/workbench/api/browser/mainThreadAiRelatedInformation.js +33 -0
  85. package/vscode/src/vs/workbench/api/browser/mainThreadAuthentication.js +252 -0
  86. package/vscode/src/vs/workbench/api/browser/mainThreadBulkEdits.js +66 -0
  87. package/vscode/src/vs/workbench/api/browser/mainThreadCLICommands.js +102 -0
  88. package/vscode/src/vs/workbench/api/browser/mainThreadChat.js +68 -0
  89. package/vscode/src/vs/workbench/api/browser/mainThreadChatAgents2.js +205 -0
  90. package/vscode/src/vs/workbench/api/browser/mainThreadChatVariables.js +39 -0
  91. package/vscode/src/vs/workbench/api/browser/mainThreadClipboard.js +22 -0
  92. package/vscode/src/vs/workbench/api/browser/mainThreadCodeInsets.js +106 -0
  93. package/vscode/src/vs/workbench/api/browser/mainThreadCommands.js +96 -0
  94. package/vscode/src/vs/workbench/api/browser/mainThreadComments.js +558 -0
  95. package/vscode/src/vs/workbench/api/browser/mainThreadConfiguration.js +78 -0
  96. package/vscode/src/vs/workbench/api/browser/mainThreadConsole.js +33 -0
  97. package/vscode/src/vs/workbench/api/browser/mainThreadCustomEditors.js +577 -0
  98. package/vscode/src/vs/workbench/api/browser/mainThreadDebugService.js +433 -0
  99. package/vscode/src/vs/workbench/api/browser/mainThreadDecorations.js +100 -0
  100. package/vscode/src/vs/workbench/api/browser/mainThreadDiagnostics.js +67 -0
  101. package/vscode/src/vs/workbench/api/browser/mainThreadDialogs.js +66 -0
  102. package/vscode/src/vs/workbench/api/browser/mainThreadDocumentContentProviders.js +77 -0
  103. package/vscode/src/vs/workbench/api/browser/mainThreadDocuments.js +251 -0
  104. package/vscode/src/vs/workbench/api/browser/mainThreadDocumentsAndEditors.js +368 -0
  105. package/vscode/src/vs/workbench/api/browser/mainThreadDownloadService.js +20 -0
  106. package/vscode/src/vs/workbench/api/browser/mainThreadEditSessionIdentityParticipant.js +39 -0
  107. package/vscode/src/vs/workbench/api/browser/mainThreadEditor.js +412 -0
  108. package/vscode/src/vs/workbench/api/browser/mainThreadEditorTabs.js +499 -0
  109. package/vscode/src/vs/workbench/api/browser/mainThreadEditors.js +225 -0
  110. package/vscode/src/vs/workbench/api/browser/mainThreadErrors.js +22 -0
  111. package/vscode/src/vs/workbench/api/browser/mainThreadExtensionService.js +315 -0
  112. package/vscode/src/vs/workbench/api/browser/mainThreadFileSystem.js +206 -0
  113. package/vscode/src/vs/workbench/api/browser/mainThreadFileSystemEventService.js +367 -0
  114. package/vscode/src/vs/workbench/api/browser/mainThreadInlineChat.js +70 -0
  115. package/vscode/src/vs/workbench/api/browser/mainThreadInteractive.js +26 -0
  116. package/vscode/src/vs/workbench/api/browser/mainThreadIssueReporter.js +48 -0
  117. package/vscode/src/vs/workbench/api/browser/mainThreadLabelService.js +25 -0
  118. package/vscode/src/vs/workbench/api/browser/mainThreadLanguageFeatures.js +1014 -0
  119. package/vscode/src/vs/workbench/api/browser/mainThreadLanguageModels.js +183 -0
  120. package/vscode/src/vs/workbench/api/browser/mainThreadLanguages.js +76 -0
  121. package/vscode/src/vs/workbench/api/browser/mainThreadLocalization.js +33 -0
  122. package/vscode/src/vs/workbench/api/browser/mainThreadLogService.js +76 -0
  123. package/vscode/src/vs/workbench/api/browser/mainThreadManagedSockets.js +91 -0
  124. package/vscode/src/vs/workbench/api/browser/mainThreadMessageService.js +135 -0
  125. package/vscode/src/vs/workbench/api/browser/mainThreadNotebook.js +192 -0
  126. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookDocuments.js +121 -0
  127. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookDocumentsAndEditors.js +186 -0
  128. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookDto.js +127 -0
  129. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookEditors.js +129 -0
  130. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookKernels.js +372 -0
  131. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookRenderers.js +23 -0
  132. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookSaveParticipant.js +46 -0
  133. package/vscode/src/vs/workbench/api/browser/mainThreadOutputService.js +74 -0
  134. package/vscode/src/vs/workbench/api/browser/mainThreadProfileContentHandlers.js +36 -0
  135. package/vscode/src/vs/workbench/api/browser/mainThreadProgress.js +66 -0
  136. package/vscode/src/vs/workbench/api/browser/mainThreadQuickDiff.js +40 -0
  137. package/vscode/src/vs/workbench/api/browser/mainThreadQuickOpen.js +183 -0
  138. package/vscode/src/vs/workbench/api/browser/mainThreadRemoteConnectionData.js +28 -0
  139. package/vscode/src/vs/workbench/api/browser/mainThreadSCM.js +491 -0
  140. package/vscode/src/vs/workbench/api/browser/mainThreadSaveParticipant.js +47 -0
  141. package/vscode/src/vs/workbench/api/browser/mainThreadSearch.js +166 -0
  142. package/vscode/src/vs/workbench/api/browser/mainThreadSecretState.js +68 -0
  143. package/vscode/src/vs/workbench/api/browser/mainThreadShare.js +48 -0
  144. package/vscode/src/vs/workbench/api/browser/mainThreadSpeech.js +97 -0
  145. package/vscode/src/vs/workbench/api/browser/mainThreadStatusBar.js +51 -0
  146. package/vscode/src/vs/workbench/api/browser/mainThreadStorage.js +70 -0
  147. package/vscode/src/vs/workbench/api/browser/mainThreadTask.js +729 -0
  148. package/vscode/src/vs/workbench/api/browser/mainThreadTelemetry.js +51 -0
  149. package/vscode/src/vs/workbench/api/browser/mainThreadTerminalService.js +407 -0
  150. package/vscode/src/vs/workbench/api/browser/mainThreadTerminalShellIntegration.js +49 -0
  151. package/vscode/src/vs/workbench/api/browser/mainThreadTesting.js +217 -0
  152. package/vscode/src/vs/workbench/api/browser/mainThreadTheming.js +22 -0
  153. package/vscode/src/vs/workbench/api/browser/mainThreadTimeline.js +53 -0
  154. package/vscode/src/vs/workbench/api/browser/mainThreadTreeViews.js +310 -0
  155. package/vscode/src/vs/workbench/api/browser/mainThreadTunnelService.js +221 -0
  156. package/vscode/src/vs/workbench/api/browser/mainThreadUriOpeners.js +108 -0
  157. package/vscode/src/vs/workbench/api/browser/mainThreadUrls.js +59 -0
  158. package/vscode/src/vs/workbench/api/browser/mainThreadWebviewManager.js +27 -0
  159. package/vscode/src/vs/workbench/api/browser/mainThreadWebviewPanels.js +281 -0
  160. package/vscode/src/vs/workbench/api/browser/mainThreadWebviewViews.js +98 -0
  161. package/vscode/src/vs/workbench/api/browser/mainThreadWebviews.js +133 -0
  162. package/vscode/src/vs/workbench/api/browser/mainThreadWindow.js +55 -0
  163. package/vscode/src/vs/workbench/api/browser/mainThreadWorkspace.js +266 -0
  164. package/vscode/src/vs/workbench/api/common/configurationExtensionPoint.js +594 -0
  165. package/vscode/src/vs/workbench/api/common/shared/dataTransferCache.js +33 -0
  166. package/vscode/src/vs/workbench/browser/actions/quickAccessActions.js +227 -0
  167. package/vscode/src/vs/workbench/browser/layout.js +2059 -0
  168. package/vscode/src/vs/workbench/browser/parts/banner/bannerPart.js +233 -0
  169. package/vscode/src/vs/workbench/browser/parts/banner/media/bannerpart.css.js +4 -0
  170. package/vscode/src/vs/workbench/browser/parts/dialogs/dialog.web.contribution.js +74 -0
  171. package/vscode/src/vs/workbench/browser/parts/dialogs/dialogHandler.js +132 -0
  172. package/vscode/src/vs/workbench/browser/parts/statusbar/media/statusbarpart.css.js +4 -0
  173. package/vscode/src/vs/workbench/browser/parts/statusbar/statusbarActions.js +119 -0
  174. package/vscode/src/vs/workbench/browser/parts/statusbar/statusbarItem.js +250 -0
  175. package/vscode/src/vs/workbench/browser/parts/statusbar/statusbarModel.js +249 -0
  176. package/vscode/src/vs/workbench/browser/parts/statusbar/statusbarPart.js +610 -0
  177. package/vscode/src/vs/workbench/browser/parts/titlebar/commandCenterControl.js +220 -0
  178. package/vscode/src/vs/workbench/browser/parts/titlebar/media/titlebarpart.css.js +4 -0
  179. package/vscode/src/vs/workbench/browser/parts/titlebar/titlebarActions.js +259 -0
  180. package/vscode/src/vs/workbench/browser/parts/titlebar/titlebarPart.js +582 -0
  181. package/vscode/src/vs/workbench/common/dialogs.js +36 -0
  182. package/vscode/src/vs/workbench/common/editor.js +5 -1
  183. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibility.contribution.js +23 -0
  184. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityStatus.js +112 -0
  185. package/vscode/src/vs/workbench/contrib/accessibility/browser/openDiffEditorAnnouncement.js +50 -0
  186. package/vscode/src/vs/workbench/contrib/accessibility/browser/saveAccessibilitySignal.js +18 -0
  187. package/vscode/src/vs/workbench/contrib/accessibility/browser/unfocusedViewDimmingContribution.js +66 -0
  188. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/bulkEditService.js +358 -0
  189. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/bulkFileEdits.js +362 -0
  190. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/bulkTextEdits.js +265 -0
  191. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/conflicts.js +78 -0
  192. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEdit.contribution.js +364 -0
  193. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEdit.css.js +4 -0
  194. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEditPane.js +340 -0
  195. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEditPreview.js +361 -0
  196. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEditTree.js +655 -0
  197. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatClear.js +15 -0
  198. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatClearActions.js +113 -0
  199. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +501 -0
  200. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +80 -0
  201. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +75 -0
  202. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +108 -0
  203. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +169 -0
  204. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.js +269 -0
  205. package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +316 -0
  206. package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.js +58 -0
  207. package/vscode/src/vs/workbench/contrib/chat/browser/chatContributionServiceImpl.js +421 -0
  208. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.js +96 -0
  209. package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.js +283 -0
  210. package/vscode/src/vs/workbench/contrib/chat/browser/chatVariables.js +88 -0
  211. package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.js +183 -0
  212. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatHistoryVariables.js +25 -0
  213. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorContrib.js +617 -0
  214. package/vscode/src/vs/workbench/contrib/chat/common/chatService.js +2 -1
  215. package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.js +598 -0
  216. package/vscode/src/vs/workbench/contrib/chat/common/voiceChat.js +139 -0
  217. package/vscode/src/vs/workbench/contrib/codeEditor/browser/accessibility/accessibility.css.js +4 -0
  218. package/vscode/src/vs/workbench/contrib/codeEditor/browser/accessibility/accessibility.js +39 -0
  219. package/vscode/src/vs/workbench/contrib/codeEditor/browser/emptyTextEditorHint/emptyTextEditorHint.css.js +4 -0
  220. package/vscode/src/vs/workbench/contrib/codeEditor/browser/emptyTextEditorHint/emptyTextEditorHint.js +389 -0
  221. package/vscode/src/vs/workbench/contrib/codeEditor/browser/outline/documentSymbolsOutline.js +370 -0
  222. package/vscode/src/vs/workbench/contrib/codeEditor/browser/outline/documentSymbolsTree.css.js +4 -0
  223. package/vscode/src/vs/workbench/contrib/codeEditor/browser/outline/documentSymbolsTree.js +290 -0
  224. package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoLineQuickAccess.js +86 -0
  225. package/vscode/src/vs/workbench/contrib/commands/common/commands.contribution.js +145 -0
  226. package/vscode/src/vs/workbench/contrib/comments/browser/comments.contribution.js +231 -0
  227. package/vscode/src/vs/workbench/contrib/comments/browser/commentsEditorContribution.js +282 -0
  228. package/vscode/src/vs/workbench/contrib/customEditor/common/customTextEditorModel.js +74 -0
  229. package/vscode/src/vs/workbench/contrib/debug/browser/callStackView.js +1024 -0
  230. package/vscode/src/vs/workbench/contrib/debug/browser/debug.contribution.js +1003 -0
  231. package/vscode/src/vs/workbench/contrib/debug/browser/debugANSIHandling.js +345 -0
  232. package/vscode/src/vs/workbench/contrib/debug/browser/debugActionViewItems.js +335 -0
  233. package/vscode/src/vs/workbench/contrib/debug/browser/debugAdapterManager.js +430 -0
  234. package/vscode/src/vs/workbench/contrib/debug/browser/debugCommands.js +1037 -0
  235. package/vscode/src/vs/workbench/contrib/debug/browser/debugConfigurationManager.js +647 -0
  236. package/vscode/src/vs/workbench/contrib/debug/browser/debugConsoleQuickAccess.js +62 -0
  237. package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorActions.js +634 -0
  238. package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorContribution.js +738 -0
  239. package/vscode/src/vs/workbench/contrib/debug/browser/debugHover.js +406 -0
  240. package/vscode/src/vs/workbench/contrib/debug/browser/debugMemory.js +204 -0
  241. package/vscode/src/vs/workbench/contrib/debug/browser/debugProgress.js +78 -0
  242. package/vscode/src/vs/workbench/contrib/debug/browser/debugQuickAccess.js +167 -0
  243. package/vscode/src/vs/workbench/contrib/debug/browser/debugService.js +1269 -0
  244. package/vscode/src/vs/workbench/contrib/debug/browser/debugSession.js +1328 -0
  245. package/vscode/src/vs/workbench/contrib/debug/browser/debugSessionPicker.js +113 -0
  246. package/vscode/src/vs/workbench/contrib/debug/browser/debugStatus.js +75 -0
  247. package/vscode/src/vs/workbench/contrib/debug/browser/debugTaskRunner.js +305 -0
  248. package/vscode/src/vs/workbench/contrib/debug/browser/debugTitle.js +29 -0
  249. package/vscode/src/vs/workbench/contrib/debug/browser/debugToolBar.js +385 -0
  250. package/vscode/src/vs/workbench/contrib/debug/browser/debugViewlet.js +265 -0
  251. package/vscode/src/vs/workbench/contrib/debug/browser/disassemblyView.js +815 -0
  252. package/vscode/src/vs/workbench/contrib/debug/browser/exceptionWidget.js +129 -0
  253. package/vscode/src/vs/workbench/contrib/debug/browser/extensionHostDebugService.js +140 -0
  254. package/vscode/src/vs/workbench/contrib/debug/browser/linkDetector.js +260 -0
  255. package/vscode/src/vs/workbench/contrib/debug/browser/loadedScriptsView.js +667 -0
  256. package/vscode/src/vs/workbench/contrib/debug/browser/media/debug.contribution.css.js +4 -0
  257. package/vscode/src/vs/workbench/contrib/debug/browser/media/debugHover.css.js +4 -0
  258. package/vscode/src/vs/workbench/contrib/debug/browser/media/debugToolBar.css.js +4 -0
  259. package/vscode/src/vs/workbench/contrib/debug/browser/media/debugViewlet.css.js +4 -0
  260. package/vscode/src/vs/workbench/contrib/debug/browser/media/exceptionWidget.css.js +4 -0
  261. package/vscode/src/vs/workbench/contrib/debug/browser/media/repl.css.js +4 -0
  262. package/vscode/src/vs/workbench/contrib/debug/browser/rawDebugSession.js +707 -0
  263. package/vscode/src/vs/workbench/contrib/debug/browser/repl.js +1000 -0
  264. package/vscode/src/vs/workbench/contrib/debug/browser/replFilter.js +46 -0
  265. package/vscode/src/vs/workbench/contrib/debug/browser/replViewer.js +350 -0
  266. package/vscode/src/vs/workbench/contrib/debug/browser/statusbarColorProvider.js +127 -0
  267. package/vscode/src/vs/workbench/contrib/debug/browser/variablesView.js +732 -0
  268. package/vscode/src/vs/workbench/contrib/debug/browser/watchExpressionsView.js +499 -0
  269. package/vscode/src/vs/workbench/contrib/debug/browser/welcomeView.js +160 -0
  270. package/vscode/src/vs/workbench/contrib/debug/common/breakpoints.js +19 -0
  271. package/vscode/src/vs/workbench/contrib/debug/common/debugCompoundRoot.js +15 -0
  272. package/vscode/src/vs/workbench/contrib/debug/common/debugContentProvider.js +108 -0
  273. package/vscode/src/vs/workbench/contrib/debug/common/debugLifecycle.js +60 -0
  274. package/vscode/src/vs/workbench/contrib/debug/common/debugSchemas.js +458 -0
  275. package/vscode/src/vs/workbench/contrib/debug/common/debugStorage.js +164 -0
  276. package/vscode/src/vs/workbench/contrib/debug/common/debugTelemetry.js +34 -0
  277. package/vscode/src/vs/workbench/contrib/debug/common/debugViewModel.js +148 -0
  278. package/vscode/src/vs/workbench/contrib/debug/common/debugger.js +287 -0
  279. package/vscode/src/vs/workbench/contrib/debug/common/loadedScriptsPicker.js +85 -0
  280. package/vscode/src/vs/workbench/contrib/editSessions/browser/editSessions.contribution.js +1197 -0
  281. package/vscode/src/vs/workbench/contrib/editSessions/browser/editSessionsFileSystemProvider.js +55 -0
  282. package/vscode/src/vs/workbench/contrib/editSessions/browser/editSessionsStorageService.js +455 -0
  283. package/vscode/src/vs/workbench/contrib/editSessions/browser/editSessionsViews.js +337 -0
  284. package/vscode/src/vs/workbench/contrib/editSessions/common/editSessionsLogService.js +39 -0
  285. package/vscode/src/vs/workbench/contrib/editSessions/common/editSessionsStorageClient.js +4 -0
  286. package/vscode/src/vs/workbench/contrib/editSessions/common/workspaceStateSync.js +140 -0
  287. package/vscode/src/vs/workbench/contrib/emmet/browser/actions/expandAbbreviation.js +41 -0
  288. package/vscode/src/vs/workbench/contrib/emmet/browser/emmetActions.js +88 -0
  289. package/vscode/src/vs/workbench/contrib/extensions/browser/abstractRuntimeExtensionsEditor.js +539 -0
  290. package/vscode/src/vs/workbench/contrib/extensions/browser/browserRuntimeExtensionsEditor.js +26 -0
  291. package/vscode/src/vs/workbench/contrib/extensions/browser/configBasedRecommendations.js +76 -0
  292. package/vscode/src/vs/workbench/contrib/extensions/browser/deprecatedExtensionsChecker.js +88 -0
  293. package/vscode/src/vs/workbench/contrib/extensions/browser/exeBasedRecommendations.js +58 -0
  294. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEditor.js +1171 -0
  295. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEnablementWorkspaceTrustTransitionParticipant.js +50 -0
  296. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionFeaturesTab.js +543 -0
  297. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionRecommendationNotificationService.js +464 -0
  298. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionRecommendations.js +15 -0
  299. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionRecommendationsService.js +233 -0
  300. package/vscode/src/vs/workbench/contrib/extensions/browser/extensions.contribution.js +2182 -0
  301. package/vscode/src/vs/workbench/contrib/extensions/browser/extensions.web.contribution.js +12 -0
  302. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActivationProgress.js +44 -0
  303. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsCompletionItemsProvider.js +63 -0
  304. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsDependencyChecker.js +96 -0
  305. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsList.js +219 -0
  306. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsQuickAccess.js +119 -0
  307. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewer.js +293 -0
  308. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewlet.js +934 -0
  309. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViews.js +1349 -0
  310. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWidgets.js +858 -0
  311. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.js +2349 -0
  312. package/vscode/src/vs/workbench/contrib/extensions/browser/fileBasedRecommendations.js +328 -0
  313. package/vscode/src/vs/workbench/contrib/extensions/browser/keymapRecommendations.js +26 -0
  314. package/vscode/src/vs/workbench/contrib/extensions/browser/languageRecommendations.js +26 -0
  315. package/vscode/src/vs/workbench/contrib/extensions/browser/media/extension.css.js +4 -0
  316. package/vscode/src/vs/workbench/contrib/extensions/browser/media/extensionEditor.css.js +4 -0
  317. package/vscode/src/vs/workbench/contrib/extensions/browser/media/extensionsViewlet.css.js +4 -0
  318. package/vscode/src/vs/workbench/contrib/extensions/browser/media/extensionsWidgets.css.js +4 -0
  319. package/vscode/src/vs/workbench/contrib/extensions/browser/media/runtimeExtensionsEditor.css.js +4 -0
  320. package/vscode/src/vs/workbench/contrib/extensions/browser/remoteRecommendations.js +27 -0
  321. package/vscode/src/vs/workbench/contrib/extensions/browser/unsupportedExtensionsMigrationContribution.js +24 -0
  322. package/vscode/src/vs/workbench/contrib/extensions/browser/webRecommendations.js +36 -0
  323. package/vscode/src/vs/workbench/contrib/extensions/browser/workspaceRecommendations.js +160 -0
  324. package/vscode/src/vs/workbench/contrib/extensions/common/extensionQuery.js +56 -0
  325. package/vscode/src/vs/workbench/contrib/extensions/common/reportExtensionIssueAction.js +29 -0
  326. package/vscode/src/vs/workbench/contrib/extensions/common/runtimeExtensionsInput.js +49 -0
  327. package/vscode/src/vs/workbench/contrib/externalTerminal/browser/externalTerminal.contribution.js +152 -0
  328. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/contributedOpeners.js +81 -0
  329. package/vscode/src/vs/workbench/contrib/files/browser/explorerService.js +430 -0
  330. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.contribution.js +786 -0
  331. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands.js +510 -0
  332. package/vscode/src/vs/workbench/contrib/files/browser/files.explorer.contribution.js +460 -0
  333. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +39 -0
  334. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibleView.js +39 -0
  335. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.js +70 -0
  336. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSavingServiceImpl.js +234 -0
  337. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChatServiceImpl.js +31 -0
  338. package/vscode/src/vs/workbench/contrib/interactive/browser/interactive.contribution.js +737 -0
  339. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveCommon.js +6 -0
  340. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveEditor.css.js +4 -0
  341. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveEditor.js +600 -0
  342. package/vscode/src/vs/workbench/contrib/interactive/browser/media/interactive.css.js +4 -0
  343. package/vscode/src/vs/workbench/contrib/issue/browser/issue.contribution.js +27 -0
  344. package/vscode/src/vs/workbench/contrib/issue/common/issue.contribution.js +102 -0
  345. package/vscode/src/vs/workbench/contrib/keybindings/browser/keybindings.contribution.js +28 -0
  346. package/vscode/src/vs/workbench/contrib/languageDetection/browser/languageDetection.contribution.js +156 -0
  347. package/vscode/src/vs/workbench/contrib/localHistory/browser/localHistory.contribution.js +4 -0
  348. package/vscode/src/vs/workbench/contrib/localHistory/browser/localHistory.js +35 -0
  349. package/vscode/src/vs/workbench/contrib/localHistory/browser/localHistoryCommands.js +635 -0
  350. package/vscode/src/vs/workbench/contrib/localHistory/browser/localHistoryFileSystemProvider.js +87 -0
  351. package/vscode/src/vs/workbench/contrib/localHistory/browser/localHistoryTimeline.js +136 -0
  352. package/vscode/src/vs/workbench/contrib/logs/common/logs.contribution.js +225 -0
  353. package/vscode/src/vs/workbench/contrib/logs/common/logsActions.js +12 -6
  354. package/vscode/src/vs/workbench/contrib/markdown/browser/markdownSettingRenderer.js +307 -0
  355. package/vscode/src/vs/workbench/contrib/markers/browser/markers.contribution.js +759 -0
  356. package/vscode/src/vs/workbench/contrib/markers/browser/markersFileDecorations.js +127 -0
  357. package/vscode/src/vs/workbench/contrib/markers/browser/markersFilterOptions.js +75 -0
  358. package/vscode/src/vs/workbench/contrib/markers/browser/markersModel.js +200 -0
  359. package/vscode/src/vs/workbench/contrib/markers/browser/markersTable.js +475 -0
  360. package/vscode/src/vs/workbench/contrib/markers/browser/markersTreeViewer.js +691 -0
  361. package/vscode/src/vs/workbench/contrib/markers/browser/markersView.js +900 -0
  362. package/vscode/src/vs/workbench/contrib/markers/browser/markersViewActions.css.js +4 -0
  363. package/vscode/src/vs/workbench/contrib/markers/browser/markersViewActions.js +132 -0
  364. package/vscode/src/vs/workbench/contrib/markers/browser/media/markers.css.js +4 -0
  365. package/vscode/src/vs/workbench/contrib/markers/browser/messages.js +301 -0
  366. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/utils.js +1 -1
  367. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/actions.js +108 -0
  368. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditor.contribution.js +39 -0
  369. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditor.js +117 -0
  370. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/scmMultiDiffSourceResolver.js +146 -0
  371. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/contributedStatusBarItemController.js +107 -0
  372. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/statusBarProviders.js +172 -0
  373. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/clipboard/notebookClipboard.js +542 -0
  374. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/debug/notebookBreakpoints.js +105 -0
  375. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/debug/notebookCellPausing.js +66 -0
  376. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/debug/notebookDebugDecorations.js +163 -0
  377. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/editorHint/emptyCellEditorHint.js +65 -0
  378. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/editorStatusBar/editorStatusBar.js +318 -0
  379. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/execute/executionEditorProgress.js +70 -0
  380. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/media/notebookFind.css.js +4 -0
  381. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFind.js +167 -0
  382. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/format/formatting.js +207 -0
  383. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/gettingStarted/notebookGettingStarted.js +82 -0
  384. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/kernelDetection/notebookKernelDetection.js +81 -0
  385. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/layout/layoutActions.js +65 -0
  386. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/marker/markerProvider.js +100 -0
  387. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/navigation/arrow.js +391 -0
  388. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariableCommands.js +62 -0
  389. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariableContextKeys.js +3 -0
  390. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariables.js +95 -0
  391. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariablesDataSource.js +118 -0
  392. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariablesTree.js +58 -0
  393. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariablesView.js +148 -0
  394. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/outline/notebookOutline.js +654 -0
  395. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/profile/notebookProfile.js +75 -0
  396. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/saveParticipants/saveParticipants.js +515 -0
  397. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/troubleshoot/layout.js +157 -0
  398. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/undoRedo/notebookUndoRedo.js +55 -0
  399. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/viewportWarmup/viewportWarmup.js +93 -0
  400. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/apiActions.js +50 -0
  401. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +651 -0
  402. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/executeActions.js +719 -0
  403. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.js +349 -0
  404. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/layoutActions.js +314 -0
  405. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/sectionActions.js +197 -0
  406. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffCellEditorOptions.js +46 -0
  407. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.js +1295 -0
  408. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.js +282 -0
  409. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementViewModel.js +561 -0
  410. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffNestedCellViewModel.js +113 -0
  411. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/eventDispatcher.js +37 -0
  412. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiff.css.js +4 -0
  413. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffActions.js +312 -0
  414. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.js +909 -0
  415. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.js +11 -0
  416. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.js +393 -0
  417. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffOverviewRuler.js +183 -0
  418. package/vscode/src/vs/workbench/contrib/notebook/browser/notebook.contribution.js +1185 -0
  419. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibility.js +157 -0
  420. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookExtensionPoint.js +449 -0
  421. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookEditorServiceImpl.js +190 -0
  422. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookExecutionServiceImpl.js +104 -0
  423. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookExecutionStateServiceImpl.js +508 -0
  424. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookKernelHistoryServiceImpl.js +128 -0
  425. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookKernelServiceImpl.js +339 -0
  426. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookKeymapServiceImpl.js +109 -0
  427. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookLoggingServiceImpl.js +26 -0
  428. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookRendererMessagingServiceImpl.js +63 -0
  429. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookServiceImpl.js +639 -0
  430. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookWorkerServiceImpl.js +198 -0
  431. package/vscode/src/vs/workbench/contrib/notebook/common/model/cellEdit.js +89 -0
  432. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookTextModel.js +1000 -0
  433. package/vscode/src/vs/workbench/contrib/notebook/common/notebookDiffEditorInput.js +101 -0
  434. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModelResolverServiceImpl.js +201 -0
  435. package/vscode/src/vs/workbench/contrib/notebook/common/notebookOutputRenderer.js +78 -0
  436. package/vscode/src/vs/workbench/contrib/notebook/common/notebookProvider.js +96 -0
  437. package/vscode/src/vs/workbench/contrib/outline/browser/outline.contribution.js +367 -0
  438. package/vscode/src/vs/workbench/contrib/outline/browser/outlineActions.js +172 -0
  439. package/vscode/src/vs/workbench/contrib/outline/browser/outlinePane.css.js +4 -0
  440. package/vscode/src/vs/workbench/contrib/outline/browser/outlinePane.js +316 -0
  441. package/vscode/src/vs/workbench/contrib/outline/browser/outlineViewState.js +66 -0
  442. package/vscode/src/vs/workbench/contrib/output/browser/output.contribution.js +613 -0
  443. package/vscode/src/vs/workbench/contrib/output/browser/output.css.js +4 -0
  444. package/vscode/src/vs/workbench/contrib/output/browser/outputLinkProvider.js +76 -0
  445. package/vscode/src/vs/workbench/contrib/output/browser/outputServices.js +200 -0
  446. package/vscode/src/vs/workbench/contrib/output/browser/outputView.js +224 -0
  447. package/vscode/src/vs/workbench/contrib/performance/browser/inputLatencyContrib.js +43 -0
  448. package/vscode/src/vs/workbench/contrib/performance/browser/performance.contribution.js +116 -0
  449. package/vscode/src/vs/workbench/contrib/performance/browser/performance.web.contribution.js +5 -0
  450. package/vscode/src/vs/workbench/contrib/performance/browser/perfviewEditor.js +340 -0
  451. package/vscode/src/vs/workbench/contrib/performance/browser/startupTimings.js +114 -0
  452. package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingsEditor.js +1237 -0
  453. package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingsEditorContribution.js +248 -0
  454. package/vscode/src/vs/workbench/contrib/preferences/browser/media/keybindingsEditor.css.js +4 -0
  455. package/vscode/src/vs/workbench/contrib/preferences/browser/media/preferences.css.js +4 -0
  456. package/vscode/src/vs/workbench/contrib/preferences/browser/media/settingsEditor2.css.js +4 -0
  457. package/vscode/src/vs/workbench/contrib/preferences/browser/media/settingsWidgets.css.js +4 -0
  458. package/vscode/src/vs/workbench/contrib/preferences/browser/preferences.contribution.js +1374 -0
  459. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesActions.js +104 -0
  460. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesEditor.js +47 -0
  461. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesRenderers.js +784 -0
  462. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesSearch.js +461 -0
  463. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsEditor2.js +1578 -0
  464. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsEditorSettingIndicators.js +624 -0
  465. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsSearchMenu.js +135 -0
  466. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsTree.js +2122 -0
  467. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsWidgets.js +1158 -0
  468. package/vscode/src/vs/workbench/contrib/preferences/browser/tocTree.js +217 -0
  469. package/vscode/src/vs/workbench/contrib/preferences/common/preferencesContribution.js +160 -0
  470. package/vscode/src/vs/workbench/contrib/preferences/common/smartSnippetInserter.js +124 -0
  471. package/vscode/src/vs/workbench/contrib/quickaccess/browser/commandsQuickAccess.js +293 -0
  472. package/vscode/src/vs/workbench/contrib/quickaccess/browser/quickAccess.contribution.js +167 -0
  473. package/vscode/src/vs/workbench/contrib/quickaccess/browser/viewQuickAccess.js +264 -0
  474. package/vscode/src/vs/workbench/contrib/relauncher/browser/relauncher.contribution.js +206 -0
  475. package/vscode/src/vs/workbench/contrib/remote/browser/explorerViewItems.js +133 -0
  476. package/vscode/src/vs/workbench/contrib/remote/browser/media/remoteViewlet.css.js +4 -0
  477. package/vscode/src/vs/workbench/contrib/remote/browser/remote.contribution.js +18 -0
  478. package/vscode/src/vs/workbench/contrib/remote/browser/remote.js +829 -0
  479. package/vscode/src/vs/workbench/contrib/remote/browser/remoteConnectionHealth.js +164 -0
  480. package/vscode/src/vs/workbench/contrib/remote/browser/remoteIndicator.js +800 -0
  481. package/vscode/src/vs/workbench/contrib/remote/browser/remoteStartEntry.contribution.js +5 -0
  482. package/vscode/src/vs/workbench/contrib/remote/browser/remoteStartEntry.js +95 -0
  483. package/vscode/src/vs/workbench/contrib/remote/browser/showCandidate.js +33 -0
  484. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelFactory.js +108 -0
  485. package/vscode/src/vs/workbench/contrib/remote/common/remote.contribution.js +513 -0
  486. package/vscode/src/vs/workbench/contrib/scm/browser/activity.js +306 -0
  487. package/vscode/src/vs/workbench/contrib/scm/browser/media/scm.css.js +4 -0
  488. package/vscode/src/vs/workbench/contrib/scm/browser/menus.js +278 -0
  489. package/vscode/src/vs/workbench/contrib/scm/browser/scm.contribution.js +701 -0
  490. package/vscode/src/vs/workbench/contrib/scm/browser/scmRepositoriesViewPane.js +172 -0
  491. package/vscode/src/vs/workbench/contrib/scm/browser/scmRepositoryRenderer.js +134 -0
  492. package/vscode/src/vs/workbench/contrib/scm/browser/scmViewPane.js +3365 -0
  493. package/vscode/src/vs/workbench/contrib/scm/browser/scmViewPaneContainer.js +52 -0
  494. package/vscode/src/vs/workbench/contrib/scm/browser/scmViewService.js +303 -0
  495. package/vscode/src/vs/workbench/contrib/scm/browser/util.js +119 -0
  496. package/vscode/src/vs/workbench/contrib/scm/common/quickDiffService.js +74 -0
  497. package/vscode/src/vs/workbench/contrib/scm/common/scmService.js +310 -0
  498. package/vscode/src/vs/workbench/contrib/search/browser/anythingQuickAccess.js +794 -0
  499. package/vscode/src/vs/workbench/contrib/search/browser/media/anythingQuickAccess.css.js +4 -0
  500. package/vscode/src/vs/workbench/contrib/search/browser/media/searchview.css.js +4 -0
  501. package/vscode/src/vs/workbench/contrib/search/browser/patternInputWidget.js +232 -0
  502. package/vscode/src/vs/workbench/contrib/search/browser/quickTextSearch/textSearchQuickAccess.js +339 -0
  503. package/vscode/src/vs/workbench/contrib/search/browser/replaceContributions.js +7 -0
  504. package/vscode/src/vs/workbench/contrib/search/browser/replaceService.js +230 -0
  505. package/vscode/src/vs/workbench/contrib/search/browser/search.contribution.js +646 -0
  506. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsCopy.js +207 -0
  507. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsNav.js +510 -0
  508. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsRemoveReplace.js +372 -0
  509. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsSymbol.js +42 -0
  510. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsTextQuickAccess.js +43 -0
  511. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsTopBar.js +322 -0
  512. package/vscode/src/vs/workbench/contrib/search/browser/searchFindInput.js +101 -0
  513. package/vscode/src/vs/workbench/contrib/search/browser/searchIcons.js +104 -0
  514. package/vscode/src/vs/workbench/contrib/search/browser/searchMessage.js +64 -0
  515. package/vscode/src/vs/workbench/contrib/search/browser/searchResultsView.js +435 -0
  516. package/vscode/src/vs/workbench/contrib/search/browser/searchView.js +2175 -0
  517. package/vscode/src/vs/workbench/contrib/search/browser/searchWidget.js +672 -0
  518. package/vscode/src/vs/workbench/contrib/search/browser/symbolsQuickAccess.js +232 -0
  519. package/vscode/src/vs/workbench/contrib/search/common/cacheState.js +85 -0
  520. package/vscode/src/vs/workbench/contrib/searchEditor/browser/media/searchEditor.css.js +4 -0
  521. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditor.contribution.js +585 -0
  522. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditor.js +758 -0
  523. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorActions.js +187 -0
  524. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorInput.js +318 -0
  525. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorModel.js +136 -0
  526. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorSerialization.js +291 -0
  527. package/vscode/src/vs/workbench/contrib/share/browser/share.contribution.js +167 -0
  528. package/vscode/src/vs/workbench/contrib/share/browser/share.css.js +4 -0
  529. package/vscode/src/vs/workbench/contrib/share/browser/shareService.js +70 -0
  530. package/vscode/src/vs/workbench/contrib/snippets/browser/commands/configureSnippets.js +331 -0
  531. package/vscode/src/vs/workbench/contrib/snippets/browser/commands/insertSnippet.js +127 -0
  532. package/vscode/src/vs/workbench/contrib/snippets/browser/commands/surroundWithSnippet.js +57 -0
  533. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCodeActionProvider.js +154 -0
  534. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetPicker.js +111 -0
  535. package/vscode/src/vs/workbench/contrib/snippets/browser/snippets.contribution.js +141 -0
  536. package/vscode/src/vs/workbench/contrib/speech/browser/speechService.js +271 -0
  537. package/vscode/src/vs/workbench/contrib/surveys/browser/ces.contribution.js +137 -0
  538. package/vscode/src/vs/workbench/contrib/surveys/browser/languageSurveys.contribution.js +50 -0
  539. package/vscode/src/vs/workbench/contrib/surveys/browser/nps.contribution.js +92 -0
  540. package/vscode/src/vs/workbench/contrib/tasks/browser/abstractTaskService.js +3857 -0
  541. package/vscode/src/vs/workbench/contrib/tasks/browser/runAutomaticTasks.js +183 -0
  542. package/vscode/src/vs/workbench/contrib/tasks/browser/task.contribution.js +682 -0
  543. package/vscode/src/vs/workbench/contrib/tasks/browser/taskQuickPick.js +450 -0
  544. package/vscode/src/vs/workbench/contrib/tasks/browser/taskService.js +36 -0
  545. package/vscode/src/vs/workbench/contrib/tasks/browser/taskTerminalStatus.js +189 -0
  546. package/vscode/src/vs/workbench/contrib/tasks/browser/tasksQuickAccess.js +119 -0
  547. package/vscode/src/vs/workbench/contrib/tasks/browser/terminalTaskSystem.js +1711 -0
  548. package/vscode/src/vs/workbench/contrib/tasks/common/jsonSchemaCommon.js +437 -0
  549. package/vscode/src/vs/workbench/contrib/tasks/common/jsonSchema_v1.js +123 -0
  550. package/vscode/src/vs/workbench/contrib/tasks/common/jsonSchema_v2.js +899 -0
  551. package/vscode/src/vs/workbench/contrib/tasks/common/problemCollectors.js +463 -0
  552. package/vscode/src/vs/workbench/contrib/tasks/common/problemMatcher.js +1794 -0
  553. package/vscode/src/vs/workbench/contrib/tasks/common/taskConfiguration.js +1579 -0
  554. package/vscode/src/vs/workbench/contrib/tasks/common/taskSystem.js +14 -0
  555. package/vscode/src/vs/workbench/contrib/tasks/common/taskTemplates.js +143 -0
  556. package/vscode/src/vs/workbench/contrib/terminal/browser/baseTerminalBackend.js +114 -0
  557. package/vscode/src/vs/workbench/contrib/terminal/browser/environmentVariableInfo.js +133 -0
  558. package/vscode/src/vs/workbench/contrib/terminal/browser/media/scrollbar.css.js +4 -0
  559. package/vscode/src/vs/workbench/contrib/terminal/browser/media/terminal.css.js +4 -0
  560. package/vscode/src/vs/workbench/contrib/terminal/browser/media/terminalVoice.css.js +4 -0
  561. package/vscode/src/vs/workbench/contrib/terminal/browser/media/widgets.css.js +4 -0
  562. package/vscode/src/vs/workbench/contrib/terminal/browser/media/xterm.css.js +4 -0
  563. package/vscode/src/vs/workbench/contrib/terminal/browser/remotePty.js +91 -0
  564. package/vscode/src/vs/workbench/contrib/terminal/browser/remoteTerminalBackend.js +312 -0
  565. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.contribution.js +267 -0
  566. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.web.contribution.js +11 -0
  567. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalActions.js +2070 -0
  568. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalCommands.js +22 -0
  569. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalConfigHelper.js +221 -0
  570. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalContextMenu.js +40 -0
  571. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditor.js +193 -0
  572. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorSerializer.js +40 -0
  573. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorService.js +239 -0
  574. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEscapeSequences.js +12 -0
  575. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEvents.js +47 -0
  576. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalGroup.js +501 -0
  577. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalGroupService.js +368 -0
  578. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalInstance.js +2180 -0
  579. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalInstanceService.js +81 -0
  580. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalMainContribution.js +94 -0
  581. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalMenus.js +840 -0
  582. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalProcessManager.js +619 -0
  583. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalProfileQuickpick.js +312 -0
  584. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalProfileResolverService.js +285 -0
  585. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalProfileService.js +225 -0
  586. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalQuickAccess.js +155 -0
  587. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalRunRecentQuickPick.js +335 -0
  588. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalService.js +1156 -0
  589. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalStatusList.js +121 -0
  590. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalTabbedView.js +439 -0
  591. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalTabsList.js +690 -0
  592. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalTooltip.js +84 -0
  593. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalUri.js +39 -0
  594. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalView.js +628 -0
  595. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalVoice.js +199 -0
  596. package/vscode/src/vs/workbench/contrib/terminal/browser/widgets/terminalHoverWidget.js +91 -0
  597. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/lineDataEventAddon.js +56 -0
  598. package/vscode/src/vs/workbench/contrib/terminal/common/basePty.js +91 -0
  599. package/vscode/src/vs/workbench/contrib/terminal/common/environmentVariableService.js +96 -0
  600. package/vscode/src/vs/workbench/contrib/terminal/common/history.js +375 -0
  601. package/vscode/src/vs/workbench/contrib/terminal/common/remote/remoteTerminalChannel.js +253 -0
  602. package/vscode/src/vs/workbench/contrib/terminal/common/terminalClipboard.js +98 -0
  603. package/vscode/src/vs/workbench/contrib/terminal/common/terminalConfiguration.js +1351 -0
  604. package/vscode/src/vs/workbench/contrib/terminal/common/terminalEnvironment.js +282 -0
  605. package/vscode/src/vs/workbench/contrib/terminal/common/terminalStrings.js +145 -0
  606. package/vscode/src/vs/workbench/contrib/terminalContrib/accessibility/browser/bufferContentTracker.js +112 -0
  607. package/vscode/src/vs/workbench/contrib/terminalContrib/accessibility/browser/terminal.accessibility.contribution.js +389 -0
  608. package/vscode/src/vs/workbench/contrib/terminalContrib/accessibility/browser/terminalAccessibilityHelp.js +190 -0
  609. package/vscode/src/vs/workbench/contrib/terminalContrib/accessibility/browser/terminalAccessibleBufferProvider.js +102 -0
  610. package/vscode/src/vs/workbench/contrib/terminalContrib/accessibility/browser/textAreaSyncAddon.js +106 -0
  611. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/media/terminalChatWidget.css.js +4 -0
  612. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminal.chat.contribution.js +9 -0
  613. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChat.js +84 -0
  614. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +125 -0
  615. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibleView.js +31 -0
  616. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +344 -0
  617. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.js +335 -0
  618. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +154 -0
  619. package/vscode/src/vs/workbench/contrib/terminalContrib/developer/browser/media/developer.css.js +4 -0
  620. package/vscode/src/vs/workbench/contrib/terminalContrib/developer/browser/terminal.developer.contribution.js +237 -0
  621. package/vscode/src/vs/workbench/contrib/terminalContrib/environmentChanges/browser/terminal.environmentChanges.contribution.js +114 -0
  622. package/vscode/src/vs/workbench/contrib/terminalContrib/find/browser/terminal.find.contribution.js +264 -0
  623. package/vscode/src/vs/workbench/contrib/terminalContrib/find/browser/terminalFindWidget.js +165 -0
  624. package/vscode/src/vs/workbench/contrib/terminalContrib/find/browser/textInputContextMenu.js +61 -0
  625. package/vscode/src/vs/workbench/contrib/terminalContrib/highlight/browser/terminal.highlight.contribution.js +36 -0
  626. package/vscode/src/vs/workbench/contrib/terminalContrib/links/browser/terminal.links.contribution.js +132 -0
  627. package/vscode/src/vs/workbench/contrib/terminalContrib/links/browser/terminalExternalLinkDetector.js +38 -0
  628. package/vscode/src/vs/workbench/contrib/terminalContrib/links/browser/terminalLink.js +120 -0
  629. package/vscode/src/vs/workbench/contrib/terminalContrib/links/browser/terminalLinkDetectorAdapter.js +108 -0
  630. package/vscode/src/vs/workbench/contrib/terminalContrib/links/browser/terminalLinkHelpers.js +175 -0
  631. package/vscode/src/vs/workbench/contrib/terminalContrib/links/browser/terminalLinkManager.js +394 -0
  632. package/vscode/src/vs/workbench/contrib/terminalContrib/links/browser/terminalLinkOpeners.js +240 -0
  633. package/vscode/src/vs/workbench/contrib/terminalContrib/links/browser/terminalLinkParsing.js +206 -0
  634. package/vscode/src/vs/workbench/contrib/terminalContrib/links/browser/terminalLinkQuickpick.js +264 -0
  635. package/vscode/src/vs/workbench/contrib/terminalContrib/links/browser/terminalLinkResolver.js +141 -0
  636. package/vscode/src/vs/workbench/contrib/terminalContrib/links/browser/terminalLocalLinkDetector.js +220 -0
  637. package/vscode/src/vs/workbench/contrib/terminalContrib/links/browser/terminalMultiLineLinkDetector.js +182 -0
  638. package/vscode/src/vs/workbench/contrib/terminalContrib/links/browser/terminalUriLinkDetector.js +119 -0
  639. package/vscode/src/vs/workbench/contrib/terminalContrib/links/browser/terminalWordLinkDetector.js +94 -0
  640. package/vscode/src/vs/workbench/contrib/terminalContrib/quickFix/browser/media/terminalQuickFix.css.js +4 -0
  641. package/vscode/src/vs/workbench/contrib/terminalContrib/quickFix/browser/quickFixAddon.js +451 -0
  642. package/vscode/src/vs/workbench/contrib/terminalContrib/quickFix/browser/terminal.quickFix.contribution.js +61 -0
  643. package/vscode/src/vs/workbench/contrib/terminalContrib/quickFix/browser/terminalQuickFixBuiltinActions.js +323 -0
  644. package/vscode/src/vs/workbench/contrib/terminalContrib/quickFix/browser/terminalQuickFixService.js +168 -0
  645. package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/browser/media/stickyScroll.css.js +4 -0
  646. package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/browser/terminal.stickyScroll.contribution.js +5 -0
  647. package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/browser/terminalStickyScrollColorRegistry.js +35 -0
  648. package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/browser/terminalStickyScrollContribution.js +91 -0
  649. package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/browser/terminalStickyScrollOverlay.js +379 -0
  650. package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/browser/terminal.suggest.contribution.js +181 -0
  651. package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/browser/terminalSuggestAddon.js +406 -0
  652. package/vscode/src/vs/workbench/contrib/terminalContrib/typeAhead/browser/terminal.typeAhead.contribution.js +54 -0
  653. package/vscode/src/vs/workbench/contrib/terminalContrib/typeAhead/browser/terminalTypeAheadAddon.js +1047 -0
  654. package/vscode/src/vs/workbench/contrib/terminalContrib/zoom/browser/terminal.zoom.contribution.js +130 -0
  655. package/vscode/src/vs/workbench/contrib/testing/browser/codeCoverageDecorations.js +589 -0
  656. package/vscode/src/vs/workbench/contrib/testing/browser/explorerProjections/display.js +2 -0
  657. package/vscode/src/vs/workbench/contrib/testing/browser/explorerProjections/index.js +81 -0
  658. package/vscode/src/vs/workbench/contrib/testing/browser/explorerProjections/listProjection.js +184 -0
  659. package/vscode/src/vs/workbench/contrib/testing/browser/explorerProjections/testItemContextOverlay.js +16 -0
  660. package/vscode/src/vs/workbench/contrib/testing/browser/explorerProjections/testingObjectTree.js +44 -0
  661. package/vscode/src/vs/workbench/contrib/testing/browser/explorerProjections/testingViewState.js +15 -0
  662. package/vscode/src/vs/workbench/contrib/testing/browser/explorerProjections/treeProjection.js +222 -0
  663. package/vscode/src/vs/workbench/contrib/testing/browser/icons.js +182 -0
  664. package/vscode/src/vs/workbench/contrib/testing/browser/media/testMessageColorizer.css.js +4 -0
  665. package/vscode/src/vs/workbench/contrib/testing/browser/media/testing.css.js +4 -0
  666. package/vscode/src/vs/workbench/contrib/testing/browser/testCoverageBars.js +238 -0
  667. package/vscode/src/vs/workbench/contrib/testing/browser/testCoverageView.js +562 -0
  668. package/vscode/src/vs/workbench/contrib/testing/browser/testExplorerActions.js +1671 -0
  669. package/vscode/src/vs/workbench/contrib/testing/browser/testMessageColorizer.js +71 -0
  670. package/vscode/src/vs/workbench/contrib/testing/browser/testing.contribution.js +224 -0
  671. package/vscode/src/vs/workbench/contrib/testing/browser/testingConfigurationUi.js +119 -0
  672. package/vscode/src/vs/workbench/contrib/testing/browser/testingDecorations.js +968 -0
  673. package/vscode/src/vs/workbench/contrib/testing/browser/testingExplorerFilter.js +234 -0
  674. package/vscode/src/vs/workbench/contrib/testing/browser/testingExplorerView.js +1239 -0
  675. package/vscode/src/vs/workbench/contrib/testing/browser/testingOutputPeek.css.js +4 -0
  676. package/vscode/src/vs/workbench/contrib/testing/browser/testingOutputPeek.js +2108 -0
  677. package/vscode/src/vs/workbench/contrib/testing/browser/testingProgressUiService.js +140 -0
  678. package/vscode/src/vs/workbench/contrib/testing/browser/testingViewPaneContainer.js +45 -0
  679. package/vscode/src/vs/workbench/contrib/testing/browser/theme.js +335 -0
  680. package/vscode/src/vs/workbench/contrib/testing/common/configuration.js +274 -0
  681. package/vscode/src/vs/workbench/contrib/testing/common/constants.js +57 -0
  682. package/vscode/src/vs/workbench/contrib/testing/common/mainThreadTestCollection.js +127 -0
  683. package/vscode/src/vs/workbench/contrib/testing/common/observableUtils.js +19 -0
  684. package/vscode/src/vs/workbench/contrib/testing/common/testExclusions.js +46 -0
  685. package/vscode/src/vs/workbench/contrib/testing/common/testServiceImpl.js +294 -0
  686. package/vscode/src/vs/workbench/contrib/testing/common/testingContentProvider.js +123 -0
  687. package/vscode/src/vs/workbench/contrib/testing/common/testingUri.js +65 -0
  688. package/vscode/src/vs/workbench/contrib/themes/browser/themes.contribution.js +955 -0
  689. package/vscode/src/vs/workbench/contrib/timeline/browser/media/timelinePane.css.js +4 -0
  690. package/vscode/src/vs/workbench/contrib/timeline/browser/timeline.contribution.js +118 -0
  691. package/vscode/src/vs/workbench/contrib/timeline/browser/timelinePane.js +1161 -0
  692. package/vscode/src/vs/workbench/contrib/timeline/common/timelineService.js +106 -0
  693. package/vscode/src/vs/workbench/contrib/update/browser/media/releasenoteseditor.css.js +4 -0
  694. package/vscode/src/vs/workbench/contrib/update/browser/releaseNotesEditor.js +411 -0
  695. package/vscode/src/vs/workbench/contrib/update/browser/update.contribution.js +252 -0
  696. package/vscode/src/vs/workbench/contrib/update/browser/update.js +676 -0
  697. package/vscode/src/vs/workbench/contrib/url/browser/externalUriResolver.js +26 -0
  698. package/vscode/src/vs/workbench/contrib/url/browser/trustedDomains.js +198 -0
  699. package/vscode/src/vs/workbench/contrib/url/browser/trustedDomainsFileSystemProvider.js +135 -0
  700. package/vscode/src/vs/workbench/contrib/url/browser/trustedDomainsValidator.js +203 -0
  701. package/vscode/src/vs/workbench/contrib/url/browser/url.contribution.js +66 -0
  702. package/vscode/src/vs/workbench/contrib/userDataSync/browser/userDataSync.contribution.js +110 -0
  703. package/vscode/src/vs/workbench/contrib/userDataSync/browser/userDataSync.js +1466 -0
  704. package/vscode/src/vs/workbench/contrib/userDataSync/browser/userDataSyncConflictsView.js +223 -0
  705. package/vscode/src/vs/workbench/contrib/userDataSync/browser/userDataSyncTrigger.js +59 -0
  706. package/vscode/src/vs/workbench/contrib/userDataSync/browser/userDataSyncViews.js +858 -0
  707. package/vscode/src/vs/workbench/contrib/welcomeBanner/browser/welcomeBanner.contribution.js +45 -0
  708. package/vscode/src/vs/workbench/contrib/welcomeDialog/browser/media/welcomeWidget.css.js +4 -0
  709. package/vscode/src/vs/workbench/contrib/welcomeDialog/browser/welcomeDialog.contribution.js +102 -0
  710. package/vscode/src/vs/workbench/contrib/welcomeDialog/browser/welcomeWidget.js +187 -0
  711. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.contribution.js +380 -0
  712. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.js +1526 -0
  713. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedColors.js +47 -0
  714. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedDetailsRenderer.js +261 -0
  715. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedIcons.js +14 -0
  716. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedInput.js +51 -0
  717. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedList.js +95 -0
  718. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/media/gettingStarted.css.js +4 -0
  719. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/startupPage.js +216 -0
  720. package/vscode/src/vs/workbench/contrib/welcomeViews/common/newFile.contribution.js +237 -0
  721. package/vscode/src/vs/workbench/contrib/welcomeViews/common/viewsWelcome.contribution.js +18 -0
  722. package/vscode/src/vs/workbench/contrib/welcomeViews/common/viewsWelcomeContribution.js +73 -0
  723. package/vscode/src/vs/workbench/contrib/welcomeViews/common/viewsWelcomeExtensionPoint.js +97 -0
  724. package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/browser/editor/editorWalkThrough.js +61 -0
  725. package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/browser/media/walkThroughPart.css.js +4 -0
  726. package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/browser/walkThrough.contribution.js +38 -0
  727. package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/browser/walkThroughActions.js +57 -0
  728. package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/browser/walkThroughInput.js +113 -0
  729. package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/browser/walkThroughPart.js +429 -0
  730. package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/common/walkThroughContentProvider.js +74 -0
  731. package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/common/walkThroughUtils.js +18 -0
  732. package/vscode/src/vs/workbench/contrib/workspace/browser/media/workspaceTrustEditor.css.js +4 -0
  733. package/vscode/src/vs/workbench/contrib/workspace/browser/workspace.contribution.js +976 -0
  734. package/vscode/src/vs/workbench/contrib/workspace/browser/workspaceTrustEditor.js +1243 -0
  735. package/vscode/src/vs/workbench/contrib/workspaces/browser/workspaces.contribution.js +132 -0
  736. package/vscode/src/vs/workbench/services/actions/common/menusExtensionPoint.js +1595 -0
  737. package/vscode/src/vs/workbench/services/aiRelatedInformation/common/aiRelatedInformationService.js +82 -0
  738. package/vscode/src/vs/workbench/services/authentication/browser/authenticationExtensionsService.js +369 -0
  739. package/vscode/src/vs/workbench/services/commands/common/commandService.js +77 -0
  740. package/vscode/src/vs/workbench/services/configuration/browser/configuration.js +850 -0
  741. package/vscode/src/vs/workbench/services/configuration/browser/configurationService.js +1199 -0
  742. package/vscode/src/vs/workbench/services/configuration/common/configurationEditing.js +666 -0
  743. package/vscode/src/vs/workbench/services/configuration/common/configurationModels.js +119 -0
  744. package/vscode/src/vs/workbench/services/configuration/common/jsonEditingService.js +120 -0
  745. package/vscode/src/vs/workbench/services/configurationResolver/browser/baseConfigurationResolverService.js +309 -0
  746. package/vscode/src/vs/workbench/services/configurationResolver/browser/configurationResolverService.js +27 -0
  747. package/vscode/src/vs/workbench/services/decorations/browser/decorationsService.js +330 -0
  748. package/vscode/src/vs/workbench/services/dialogs/browser/abstractFileDialogService.js +377 -0
  749. package/vscode/src/vs/workbench/services/dialogs/browser/simpleFileDialog.js +1037 -0
  750. package/vscode/src/vs/workbench/services/dialogs/common/dialogService.js +70 -0
  751. package/vscode/src/vs/workbench/services/extensionManagement/browser/extensionEnablementService.js +638 -0
  752. package/vscode/src/vs/workbench/services/extensionManagement/browser/extensionsProfileScannerService.js +22 -0
  753. package/vscode/src/vs/workbench/services/extensionManagement/browser/webExtensionsScannerService.js +892 -0
  754. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionFeaturesManagemetService.js +232 -0
  755. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagementChannelClient.js +107 -0
  756. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagementServerService.js +61 -0
  757. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagementService.js +1043 -0
  758. package/vscode/src/vs/workbench/services/extensionManagement/common/remoteExtensionManagementService.js +56 -0
  759. package/vscode/src/vs/workbench/services/extensionManagement/common/webExtensionManagementService.js +279 -0
  760. package/vscode/src/vs/workbench/services/extensionRecommendations/common/extensionIgnoredRecommendationsService.js +82 -0
  761. package/vscode/src/vs/workbench/services/extensions/browser/extensionService.js +283 -0
  762. package/vscode/src/vs/workbench/services/extensions/browser/extensionsScannerService.js +31 -0
  763. package/vscode/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.js +274 -0
  764. package/vscode/src/vs/workbench/services/extensions/browser/webWorkerFileSystemProvider.js +50 -0
  765. package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.js +1147 -0
  766. package/vscode/src/vs/workbench/services/extensions/common/extHostCustomers.js +40 -0
  767. package/vscode/src/vs/workbench/services/extensions/common/extensionDevOptions.js +23 -0
  768. package/vscode/src/vs/workbench/services/extensions/common/extensionHostManager.js +510 -0
  769. package/vscode/src/vs/workbench/services/extensions/common/extensionRunningLocationTracker.js +272 -0
  770. package/vscode/src/vs/workbench/services/extensions/common/extensionStorageMigration.js +56 -0
  771. package/vscode/src/vs/workbench/services/extensions/common/extensionsProposedApi.js +78 -0
  772. package/vscode/src/vs/workbench/services/extensions/common/extensionsUtil.js +62 -0
  773. package/vscode/src/vs/workbench/services/extensions/common/lazyCreateExtensionHostManager.js +159 -0
  774. package/vscode/src/vs/workbench/services/extensions/common/remoteConsoleUtil.js +47 -0
  775. package/vscode/src/vs/workbench/services/extensions/common/remoteExtensionHost.js +220 -0
  776. package/vscode/src/vs/workbench/services/host/browser/browserHostService.js +428 -0
  777. package/vscode/src/vs/workbench/services/issue/browser/issueService.js +97 -0
  778. package/vscode/src/vs/workbench/services/keybinding/browser/keybindingService.js +945 -0
  779. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayoutService.js +500 -0
  780. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/_.contribution.js +13 -0
  781. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/cz.win.js +162 -0
  782. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/de-swiss.win.js +162 -0
  783. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/de.darwin.js +125 -0
  784. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/de.linux.js +180 -0
  785. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/de.win.js +162 -0
  786. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/dk.win.js +162 -0
  787. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/dvorak.darwin.js +125 -0
  788. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en-belgian.win.js +162 -0
  789. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en-ext.darwin.js +125 -0
  790. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en-in.win.js +162 -0
  791. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en-intl.darwin.js +125 -0
  792. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en-intl.win.js +162 -0
  793. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en-uk.darwin.js +125 -0
  794. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en-uk.win.js +162 -0
  795. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en.darwin.js +133 -0
  796. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en.linux.js +182 -0
  797. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en.win.js +167 -0
  798. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/es-latin.win.js +162 -0
  799. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/es.darwin.js +125 -0
  800. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/es.linux.js +180 -0
  801. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/es.win.js +162 -0
  802. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/fr.darwin.js +125 -0
  803. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/fr.linux.js +180 -0
  804. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/fr.win.js +162 -0
  805. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/hu.win.js +162 -0
  806. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/it.darwin.js +125 -0
  807. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/it.win.js +162 -0
  808. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/jp-roman.darwin.js +125 -0
  809. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/jp.darwin.js +125 -0
  810. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/ko.darwin.js +125 -0
  811. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/layout.contribution.darwin.js +17 -0
  812. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/layout.contribution.linux.js +6 -0
  813. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/layout.contribution.win.js +23 -0
  814. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/no.win.js +162 -0
  815. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/pl.darwin.js +125 -0
  816. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/pl.win.js +162 -0
  817. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/pt-br.win.js +162 -0
  818. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/pt.darwin.js +125 -0
  819. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/pt.win.js +162 -0
  820. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/ru.darwin.js +125 -0
  821. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/ru.linux.js +180 -0
  822. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/ru.win.js +162 -0
  823. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/sv.win.js +164 -0
  824. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/thai.win.js +162 -0
  825. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/tr.win.js +162 -0
  826. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/zh-hans.darwin.js +125 -0
  827. package/vscode/src/vs/workbench/services/keybinding/common/keybindingIO.js +72 -0
  828. package/vscode/src/vs/workbench/services/keybinding/common/keymapInfo.js +108 -0
  829. package/vscode/src/vs/workbench/services/keybinding/common/macLinuxKeyboardMapper.js +886 -0
  830. package/vscode/src/vs/workbench/services/keybinding/common/windowsKeyboardMapper.js +350 -0
  831. package/vscode/src/vs/workbench/services/label/common/labelService.js +435 -0
  832. package/vscode/src/vs/workbench/services/languageDetection/browser/languageDetectionWorkerServiceImpl.js +259 -0
  833. package/vscode/src/vs/workbench/services/lifecycle/browser/lifecycleService.js +135 -0
  834. package/vscode/src/vs/workbench/services/localization/common/locale.d.ts +11 -0
  835. package/vscode/src/vs/workbench/services/notification/common/notificationService.js +251 -0
  836. package/vscode/src/vs/workbench/services/preferences/browser/preferencesService.js +551 -0
  837. package/vscode/src/vs/workbench/services/quickinput/browser/quickInputService.js +37 -0
  838. package/vscode/src/vs/workbench/services/remote/browser/browserRemoteResourceHandler.js +47 -0
  839. package/vscode/src/vs/workbench/services/remote/browser/remoteAgentService.js +76 -0
  840. package/vscode/src/vs/workbench/services/remote/common/abstractRemoteAgentService.js +177 -0
  841. package/vscode/src/vs/workbench/services/remote/common/remoteAgentEnvironmentChannel.js +52 -0
  842. package/vscode/src/vs/workbench/services/remote/common/remoteExtensionsScanner.js +71 -0
  843. package/vscode/src/vs/workbench/services/request/browser/requestService.js +48 -0
  844. package/vscode/src/vs/workbench/services/search/common/searchService.js +414 -0
  845. package/vscode/src/vs/workbench/services/storage/browser/storageService.js +290 -0
  846. package/vscode/src/vs/workbench/services/suggest/browser/media/suggest.css.js +4 -0
  847. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionItem.js +9 -0
  848. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionModel.js +97 -0
  849. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidget.js +428 -0
  850. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidgetRenderer.js +83 -0
  851. package/vscode/src/vs/workbench/services/textMate/browser/arrayOperation.js +62 -0
  852. package/vscode/src/vs/workbench/services/textMate/browser/backgroundTokenization/textMateWorkerTokenizerController.js +160 -0
  853. package/vscode/src/vs/workbench/services/textMate/browser/backgroundTokenization/threadedBackgroundTokenizerFactory.js +200 -0
  854. package/vscode/src/vs/workbench/services/textMate/browser/textMateTokenizationFeatureImpl.js +482 -0
  855. package/vscode/src/vs/workbench/services/textMate/browser/tokenizationSupport/textMateTokenizationSupport.js +72 -0
  856. package/vscode/src/vs/workbench/services/textMate/browser/tokenizationSupport/tokenizationSupportWithLineLimit.js +39 -0
  857. package/vscode/src/vs/workbench/services/textMate/common/TMGrammarFactory.js +118 -0
  858. package/vscode/src/vs/workbench/services/textMate/common/TMScopeRegistry.js +15 -0
  859. package/vscode/src/vs/workbench/services/textfile/browser/browserTextFileService.js +57 -0
  860. package/vscode/src/vs/workbench/services/textfile/browser/textFileService.js +652 -0
  861. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModelManager.js +402 -0
  862. package/vscode/src/vs/workbench/services/textfile/common/textFileSaveParticipant.js +62 -0
  863. package/vscode/src/vs/workbench/services/textmodelResolver/common/textModelResolverService.js +191 -0
  864. package/vscode/src/vs/workbench/services/textresourceProperties/common/textResourcePropertiesService.js +44 -0
  865. package/vscode/src/vs/workbench/services/themes/browser/fileIconThemeData.js +372 -0
  866. package/vscode/src/vs/workbench/services/themes/browser/productIconThemeData.js +305 -0
  867. package/vscode/src/vs/workbench/services/themes/browser/workbenchThemeService.js +768 -0
  868. package/vscode/src/vs/workbench/services/themes/common/colorThemeData.js +886 -0
  869. package/vscode/src/vs/workbench/services/themes/common/colorThemeSchema.js +309 -0
  870. package/vscode/src/vs/workbench/services/themes/common/fileIconThemeSchema.js +432 -0
  871. package/vscode/src/vs/workbench/services/themes/common/plistParser.js +439 -0
  872. package/vscode/src/vs/workbench/services/themes/common/productIconThemeSchema.js +114 -0
  873. package/vscode/src/vs/workbench/services/themes/common/textMateScopeMatcher.js +120 -0
  874. package/vscode/src/vs/workbench/services/themes/common/themeCompatibility.js +76 -0
  875. package/vscode/src/vs/workbench/services/themes/common/themeConfiguration.js +469 -0
  876. package/vscode/src/vs/workbench/services/themes/common/themeExtensionPoints.js +340 -0
  877. package/vscode/src/vs/workbench/services/tunnel/browser/tunnelService.js +34 -0
  878. package/vscode/src/vs/workbench/services/url/browser/urlService.js +48 -0
  879. package/vscode/src/vs/workbench/services/userDataProfile/browser/extensionsResource.js +340 -0
  880. package/vscode/src/vs/workbench/services/userDataProfile/browser/globalStateResource.js +145 -0
  881. package/vscode/src/vs/workbench/services/userDataProfile/browser/iconSelectBox.js +96 -0
  882. package/vscode/src/vs/workbench/services/userDataProfile/browser/keybindingsResource.js +117 -0
  883. package/vscode/src/vs/workbench/services/userDataProfile/browser/media/userDataProfileView.css.js +4 -0
  884. package/vscode/src/vs/workbench/services/userDataProfile/browser/settingsResource.js +138 -0
  885. package/vscode/src/vs/workbench/services/userDataProfile/browser/snippetsResource.js +153 -0
  886. package/vscode/src/vs/workbench/services/userDataProfile/browser/tasksResource.js +116 -0
  887. package/vscode/src/vs/workbench/services/userDataProfile/browser/userDataProfileImportExportService.js +1752 -0
  888. package/vscode/src/vs/workbench/services/userDataProfile/browser/userDataProfileInit.js +148 -0
  889. package/vscode/src/vs/workbench/services/userDataProfile/browser/userDataProfileManagement.js +188 -0
  890. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +7 -2
  891. package/vscode/src/vs/workbench/services/userDataSync/browser/userDataSyncInit.js +445 -0
  892. package/vscode/src/vs/workbench/services/userDataSync/browser/userDataSyncWorkbenchService.js +786 -0
  893. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSyncUtil.js +46 -0
  894. package/vscode/src/vs/workbench/services/workingCopy/browser/workingCopyBackupService.js +23 -0
  895. package/vscode/src/vs/workbench/services/workingCopy/browser/workingCopyBackupTracker.js +43 -0
  896. package/vscode/src/vs/workbench/services/workingCopy/browser/workingCopyHistoryService.js +28 -0
  897. package/vscode/src/vs/workbench/services/workingCopy/common/abstractFileWorkingCopyManager.js +87 -0
  898. package/vscode/src/vs/workbench/services/workingCopy/common/fileWorkingCopyManager.js +384 -0
  899. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopyManager.js +406 -0
  900. package/vscode/src/vs/workbench/services/workingCopy/common/untitledFileWorkingCopy.js +142 -0
  901. package/vscode/src/vs/workbench/services/workingCopy/common/untitledFileWorkingCopyManager.js +127 -0
  902. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyBackupService.js +452 -0
  903. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyBackupTracker.js +253 -0
  904. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyHistoryService.js +616 -0
  905. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyHistoryTracker.js +162 -0
  906. package/vscode/src/vs/workbench/services/workspaces/browser/abstractWorkspaceEditingService.js +335 -0
  907. package/vscode/src/vs/workbench/services/workspaces/browser/workspaceTrustEditorInput.js +41 -0
  908. package/vscode/src/vs/workbench/services/workspaces/browser/workspacesService.js +151 -0
  909. package/vscode/src/vs/workbench/services/workspaces/common/editSessionIdentityService.js +60 -0
@@ -0,0 +1,1171 @@
1
+ import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
+ import { append, $, addDisposableListener, setParentFlowTo } from '../../../../base/browser/dom.js';
3
+ import { ActionBar } from '../../../../base/browser/ui/actionbar/actionbar.js';
4
+ import { getDefaultHoverDelegate } from '../../../../base/browser/ui/hover/hoverDelegateFactory.js';
5
+ import { setupCustomHover } from '../../../../base/browser/ui/hover/updatableHoverWidget.js';
6
+ import { DomScrollableElement } from '../../../../base/browser/ui/scrollbar/scrollableElement.js';
7
+ import { CheckboxActionViewItem } from '../../../../base/browser/ui/toggle/toggle.js';
8
+ import { Action } from '../../../../base/common/actions.js';
9
+ import { insert, isFalsyOrEmpty } from '../../../../base/common/arrays.js';
10
+ import { Cache } from '../../../../base/common/cache.js';
11
+ import { CancellationToken, CancellationTokenSource } from '../../../../base/common/cancellation.js';
12
+ import { isCancellationError } from '../../../../base/common/errors.js';
13
+ import { Event, Emitter } from '../../../../base/common/event.js';
14
+ import { MutableDisposable, DisposableStore, toDisposable, Disposable, dispose } from '../../../../base/common/lifecycle.js';
15
+ import { matchesScheme, Schemas } from '../../../../base/common/network.js';
16
+ import { language } from '../../../../base/common/platform.js';
17
+ import { semverExports } from '../../../../../../../external/vscode-semver/semver.js';
18
+ import { isUndefined } from '../../../../base/common/types.js';
19
+ import { URI } from '../../../../base/common/uri.js';
20
+ import { generateUuid } from '../../../../base/common/uuid.js';
21
+ import './media/extensionEditor.css.js';
22
+ import { EditorContextKeys } from '../../../../editor/common/editorContextKeys.js';
23
+ import { TokenizationRegistry } from '../../../../editor/common/languages.js';
24
+ import { ILanguageService } from '../../../../editor/common/languages/language.js';
25
+ import { generateTokensCSSForColorMap } from '../../../../editor/common/languages/supports/tokenization.js';
26
+ import { localizeWithPath } from '../../../../nls.js';
27
+ import { registerAction2, Action2 } from '../../../../platform/actions/common/actions.js';
28
+ import { RawContextKey, IContextKeyService, ContextKeyExpr } from '../../../../platform/contextkey/common/contextkey.js';
29
+ import { IContextMenuService } from '../../../../platform/contextview/browser/contextView.js';
30
+ import { IExtensionGalleryService } from '../../../../platform/extensionManagement/common/extensionManagement.js';
31
+ import { areSameExtensions } from '../../../../platform/extensionManagement/common/extensionManagementUtil.js';
32
+ import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js';
33
+ import { INotificationService } from '../../../../platform/notification/common/notification.js';
34
+ import { IOpenerService } from '../../../../platform/opener/common/opener.js';
35
+ import { IStorageService } from '../../../../platform/storage/common/storage.js';
36
+ import { ITelemetryService } from '../../../../platform/telemetry/common/telemetry.js';
37
+ import { defaultCheckboxStyles } from '../../../../platform/theme/browser/defaultStyles.js';
38
+ import '../../../../platform/theme/common/colorUtils.js';
39
+ import { textLinkForeground, textLinkActiveForeground } from '../../../../platform/theme/common/colors/baseColors.js';
40
+ import '../../../../platform/theme/common/colors/chartsColors.js';
41
+ import { editorBackground } from '../../../../platform/theme/common/colors/editorColors.js';
42
+ import { buttonHoverBackground, buttonForeground } from '../../../../platform/theme/common/colors/inputColors.js';
43
+ import '../../../../platform/theme/common/colors/listColors.js';
44
+ import '../../../../platform/theme/common/colors/menuColors.js';
45
+ import '../../../../platform/theme/common/colors/minimapColors.js';
46
+ import '../../../../platform/theme/common/colors/miscColors.js';
47
+ import '../../../../platform/theme/common/colors/quickpickColors.js';
48
+ import '../../../../platform/theme/common/colors/searchColors.js';
49
+ import { registerThemingParticipant, IThemeService } from '../../../../platform/theme/common/themeService.js';
50
+ import { IWorkspaceContextService } from '../../../../platform/workspace/common/workspace.js';
51
+ import { EditorPane } from '../../../browser/parts/editor/editorPane.js';
52
+ import { ExtensionFeaturesTab } from './extensionFeaturesTab.js';
53
+ import { InstallDropdownAction, ExtensionRuntimeStateAction, ExtensionStatusLabelAction, ActionWithDropDownAction, UpdateAction, ToggleAutoUpdateForExtensionAction, SetColorThemeAction, SetFileIconThemeAction, SetProductIconThemeAction, SetLanguageAction, ClearLanguageAction, EnableDropDownAction, DisableDropDownAction, RemoteInstallAction, LocalInstallAction, WebInstallAction, InstallingLabelAction, UninstallAction, MigrateDeprecatedExtensionAction, InstallAnotherVersionAction, TogglePreReleaseExtensionAction, ExtensionEditorManageExtensionAction, ExtensionDropDownAction, ExtensionActionWithDropdownActionViewItem, ExtensionStatusAction } from './extensionsActions.js';
54
+ import { Delegate } from './extensionsList.js';
55
+ import { ExtensionsTree, ExtensionData, ExtensionsGridView, getExtensions } from './extensionsViewer.js';
56
+ import { RemoteBadgeWidget, VerifiedPublisherWidget, InstallCountWidget, RatingsWidget, SponsorWidget, ExtensionStatusWidget, ExtensionWidget, ExtensionRecommendationWidget, onClick } from './extensionsWidgets.js';
57
+ import { ExtensionContainers, VIEWLET_ID, IExtensionsWorkbenchService } from '../common/extensions.js';
58
+ import { IExplorerService } from '../../files/browser/files.js';
59
+ import { renderMarkdownDocument, DEFAULT_MARKDOWN_STYLES } from '../../markdown/browser/markdownDocumentRenderer.js';
60
+ import { ShowCurrentReleaseNotesActionId } from '../../update/common/update.js';
61
+ import { IWebviewService, KEYBINDING_CONTEXT_WEBVIEW_FIND_WIDGET_FOCUSED } from '../../webview/browser/webview.js';
62
+ import { IEditorService } from '../../../services/editor/common/editorService.js';
63
+ import { IExtensionRecommendationsService } from '../../../services/extensionRecommendations/common/extensionRecommendations.js';
64
+ import { IExtensionService } from '../../../services/extensions/common/extensions.js';
65
+ import { IPaneCompositePartService } from '../../../services/panecomposite/browser/panecomposite.js';
66
+ import { IViewsService } from '../../../services/views/common/viewsService.js';
67
+ import { VIEW_ID } from '../../files/common/files.js';
68
+ import { IUriIdentityService } from '../../../../platform/uriIdentity/common/uriIdentity.js';
69
+ var ExtensionEditor_1;
70
+ class NavBar extends Disposable {
71
+ get onChange() { return this._onChange.event; }
72
+ get currentId() { return this._currentId; }
73
+ constructor(container) {
74
+ super();
75
+ this._onChange = this._register(( new Emitter()));
76
+ this._currentId = null;
77
+ const element = append(container, $('.navbar'));
78
+ this.actions = [];
79
+ this.actionbar = this._register(( new ActionBar(element)));
80
+ }
81
+ push(id, label, tooltip) {
82
+ const action = ( new Action(id, label, undefined, true, () => this.update(id, true)));
83
+ action.tooltip = tooltip;
84
+ this.actions.push(action);
85
+ this.actionbar.push(action);
86
+ if (this.actions.length === 1) {
87
+ this.update(id);
88
+ }
89
+ }
90
+ clear() {
91
+ this.actions = dispose(this.actions);
92
+ this.actionbar.clear();
93
+ }
94
+ switch(id) {
95
+ const action = this.actions.find(action => action.id === id);
96
+ if (action) {
97
+ action.run();
98
+ return true;
99
+ }
100
+ return false;
101
+ }
102
+ update(id, focus) {
103
+ this._currentId = id;
104
+ this._onChange.fire({ id, focus: !!focus });
105
+ this.actions.forEach(a => a.checked = a.id === id);
106
+ }
107
+ }
108
+ const CONTEXT_SHOW_PRE_RELEASE_VERSION = ( new RawContextKey('showPreReleaseVersion', false));
109
+ class ExtensionWithDifferentGalleryVersionWidget extends ExtensionWidget {
110
+ constructor() {
111
+ super(...arguments);
112
+ this._gallery = null;
113
+ }
114
+ get gallery() { return this._gallery; }
115
+ set gallery(gallery) {
116
+ if (this.extension && gallery && !areSameExtensions(this.extension.identifier, gallery.identifier)) {
117
+ return;
118
+ }
119
+ this._gallery = gallery;
120
+ this.update();
121
+ }
122
+ }
123
+ class VersionWidget extends ExtensionWithDifferentGalleryVersionWidget {
124
+ constructor(container) {
125
+ super();
126
+ this.element = append(container, $('code.version'));
127
+ this._register(setupCustomHover(getDefaultHoverDelegate('mouse'), this.element, ( localizeWithPath(
128
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
129
+ 'extension version',
130
+ "Extension Version"
131
+ ))));
132
+ this.render();
133
+ }
134
+ render() {
135
+ if (!this.extension || !semverExports.valid(this.extension.version)) {
136
+ return;
137
+ }
138
+ this.element.textContent = `v${this.gallery?.version ?? this.extension.version}${this.extension.isPreReleaseVersion ? ' (pre-release)' : ''}`;
139
+ }
140
+ }
141
+ let ExtensionEditor = class ExtensionEditor extends EditorPane {
142
+ static { ExtensionEditor_1 = this; }
143
+ static { this.ID = 'workbench.editor.extension'; }
144
+ constructor(group, telemetryService, instantiationService, paneCompositeService, extensionsWorkbenchService, extensionGalleryService, themeService, notificationService, openerService, extensionRecommendationsService, storageService, extensionService, webviewService, languageService, contextMenuService, contextKeyService, contextService, explorerService, viewsService, uriIdentityService) {
145
+ super(ExtensionEditor_1.ID, group, telemetryService, themeService, storageService);
146
+ this.instantiationService = instantiationService;
147
+ this.paneCompositeService = paneCompositeService;
148
+ this.extensionsWorkbenchService = extensionsWorkbenchService;
149
+ this.extensionGalleryService = extensionGalleryService;
150
+ this.notificationService = notificationService;
151
+ this.openerService = openerService;
152
+ this.extensionRecommendationsService = extensionRecommendationsService;
153
+ this.extensionService = extensionService;
154
+ this.webviewService = webviewService;
155
+ this.languageService = languageService;
156
+ this.contextMenuService = contextMenuService;
157
+ this.contextKeyService = contextKeyService;
158
+ this.contextService = contextService;
159
+ this.explorerService = explorerService;
160
+ this.viewsService = viewsService;
161
+ this.uriIdentityService = uriIdentityService;
162
+ this._scopedContextKeyService = this._register(( new MutableDisposable()));
163
+ this.initialScrollProgress = ( new Map());
164
+ this.currentIdentifier = '';
165
+ this.layoutParticipants = [];
166
+ this.contentDisposables = this._register(( new DisposableStore()));
167
+ this.transientDisposables = this._register(( new DisposableStore()));
168
+ this.activeElement = null;
169
+ this.extensionReadme = null;
170
+ this.extensionChangelog = null;
171
+ this.extensionManifest = null;
172
+ }
173
+ get scopedContextKeyService() {
174
+ return this._scopedContextKeyService.value;
175
+ }
176
+ createEditor(parent) {
177
+ const root = append(parent, $('.extension-editor'));
178
+ this._scopedContextKeyService.value = this.contextKeyService.createScoped(root);
179
+ this._scopedContextKeyService.value.createKey('inExtensionEditor', true);
180
+ this.showPreReleaseVersionContextKey = CONTEXT_SHOW_PRE_RELEASE_VERSION.bindTo(this._scopedContextKeyService.value);
181
+ root.tabIndex = 0;
182
+ root.style.outline = 'none';
183
+ root.setAttribute('role', 'document');
184
+ const header = append(root, $('.header'));
185
+ const iconContainer = append(header, $('.icon-container'));
186
+ const icon = append(iconContainer, $('img.icon', { draggable: false, alt: '' }));
187
+ const remoteBadge = this.instantiationService.createInstance(RemoteBadgeWidget, iconContainer, true);
188
+ const details = append(header, $('.details'));
189
+ const title = append(details, $('.title'));
190
+ const name = append(title, $('span.name.clickable', { role: 'heading', tabIndex: 0 }));
191
+ this._register(setupCustomHover(getDefaultHoverDelegate('mouse'), name, ( localizeWithPath(
192
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
193
+ 'name',
194
+ "Extension name"
195
+ ))));
196
+ const versionWidget = ( new VersionWidget(title));
197
+ const preview = append(title, $('span.preview'));
198
+ this._register(setupCustomHover(getDefaultHoverDelegate('mouse'), preview, ( localizeWithPath(
199
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
200
+ 'preview',
201
+ "Preview"
202
+ ))));
203
+ preview.textContent = ( localizeWithPath(
204
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
205
+ 'preview',
206
+ "Preview"
207
+ ));
208
+ const builtin = append(title, $('span.builtin'));
209
+ builtin.textContent = ( localizeWithPath(
210
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
211
+ 'builtin',
212
+ "Built-in"
213
+ ));
214
+ const subtitle = append(details, $('.subtitle'));
215
+ const publisher = append(append(subtitle, $('.subtitle-entry')), $('.publisher.clickable', { tabIndex: 0 }));
216
+ this._register(setupCustomHover(getDefaultHoverDelegate('mouse'), publisher, ( localizeWithPath(
217
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
218
+ 'publisher',
219
+ "Publisher"
220
+ ))));
221
+ publisher.setAttribute('role', 'button');
222
+ const publisherDisplayName = append(publisher, $('.publisher-name'));
223
+ const verifiedPublisherWidget = this.instantiationService.createInstance(VerifiedPublisherWidget, append(publisher, $('.verified-publisher')), false);
224
+ const resource = append(append(subtitle, $('.subtitle-entry.resource')), $('', { tabIndex: 0 }));
225
+ resource.setAttribute('role', 'button');
226
+ const installCount = append(append(subtitle, $('.subtitle-entry')), $('span.install', { tabIndex: 0 }));
227
+ this._register(setupCustomHover(getDefaultHoverDelegate('mouse'), installCount, ( localizeWithPath(
228
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
229
+ 'install count',
230
+ "Install count"
231
+ ))));
232
+ const installCountWidget = this.instantiationService.createInstance(InstallCountWidget, installCount, false);
233
+ const rating = append(append(subtitle, $('.subtitle-entry')), $('span.rating.clickable', { tabIndex: 0 }));
234
+ this._register(setupCustomHover(getDefaultHoverDelegate('mouse'), rating, ( localizeWithPath(
235
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
236
+ 'rating',
237
+ "Rating"
238
+ ))));
239
+ rating.setAttribute('role', 'link');
240
+ const ratingsWidget = this.instantiationService.createInstance(RatingsWidget, rating, false);
241
+ const sponsorWidget = this.instantiationService.createInstance(SponsorWidget, append(subtitle, $('.subtitle-entry')));
242
+ const widgets = [
243
+ remoteBadge,
244
+ versionWidget,
245
+ verifiedPublisherWidget,
246
+ installCountWidget,
247
+ ratingsWidget,
248
+ sponsorWidget,
249
+ ];
250
+ const description = append(details, $('.description'));
251
+ const installAction = this.instantiationService.createInstance(InstallDropdownAction);
252
+ const actions = [
253
+ this.instantiationService.createInstance(ExtensionRuntimeStateAction),
254
+ this.instantiationService.createInstance(ExtensionStatusLabelAction),
255
+ this.instantiationService.createInstance(ActionWithDropDownAction, 'extensions.updateActions', '', [[this.instantiationService.createInstance(UpdateAction, true)], [this.instantiationService.createInstance(ToggleAutoUpdateForExtensionAction, true, [true, 'onlyEnabledExtensions'])]]),
256
+ this.instantiationService.createInstance(SetColorThemeAction),
257
+ this.instantiationService.createInstance(SetFileIconThemeAction),
258
+ this.instantiationService.createInstance(SetProductIconThemeAction),
259
+ this.instantiationService.createInstance(SetLanguageAction),
260
+ this.instantiationService.createInstance(ClearLanguageAction),
261
+ this.instantiationService.createInstance(EnableDropDownAction),
262
+ this.instantiationService.createInstance(DisableDropDownAction),
263
+ this.instantiationService.createInstance(RemoteInstallAction, false),
264
+ this.instantiationService.createInstance(LocalInstallAction),
265
+ this.instantiationService.createInstance(WebInstallAction),
266
+ installAction,
267
+ this.instantiationService.createInstance(InstallingLabelAction),
268
+ this.instantiationService.createInstance(ActionWithDropDownAction, 'extensions.uninstall', UninstallAction.UninstallLabel, [
269
+ [
270
+ this.instantiationService.createInstance(MigrateDeprecatedExtensionAction, false),
271
+ this.instantiationService.createInstance(UninstallAction),
272
+ this.instantiationService.createInstance(InstallAnotherVersionAction),
273
+ ]
274
+ ]),
275
+ this.instantiationService.createInstance(TogglePreReleaseExtensionAction),
276
+ this.instantiationService.createInstance(ToggleAutoUpdateForExtensionAction, false, [false, 'onlySelectedExtensions']),
277
+ ( new ExtensionEditorManageExtensionAction(
278
+ this.scopedContextKeyService || this.contextKeyService,
279
+ this.instantiationService
280
+ )),
281
+ ];
282
+ const actionsAndStatusContainer = append(details, $('.actions-status-container'));
283
+ const extensionActionBar = this._register(( new ActionBar(actionsAndStatusContainer, {
284
+ actionViewItemProvider: (action, options) => {
285
+ if (action instanceof ExtensionDropDownAction) {
286
+ return action.createActionViewItem(options);
287
+ }
288
+ if (action instanceof ActionWithDropDownAction) {
289
+ return ( new ExtensionActionWithDropdownActionViewItem(
290
+ action,
291
+ { ...options, icon: true, label: true, menuActionsOrProvider: { getActions: () => action.menuActions }, menuActionClassNames: (action.class || '').split(' ') },
292
+ this.contextMenuService
293
+ ));
294
+ }
295
+ if (action instanceof ToggleAutoUpdateForExtensionAction) {
296
+ return ( new CheckboxActionViewItem(
297
+ undefined,
298
+ action,
299
+ { ...options, icon: true, label: true, checkboxStyles: defaultCheckboxStyles }
300
+ ));
301
+ }
302
+ return undefined;
303
+ },
304
+ focusOnlyEnabledItems: true
305
+ })));
306
+ extensionActionBar.push(actions, { icon: true, label: true });
307
+ extensionActionBar.setFocusable(true);
308
+ this._register(Event.any(...( actions.map(a => Event.filter(a.onDidChange, e => e.enabled !== undefined))))(() => {
309
+ extensionActionBar.setFocusable(false);
310
+ extensionActionBar.setFocusable(true);
311
+ }));
312
+ const otherExtensionContainers = [];
313
+ const extensionStatusAction = this.instantiationService.createInstance(ExtensionStatusAction);
314
+ const extensionStatusWidget = this._register(this.instantiationService.createInstance(ExtensionStatusWidget, append(actionsAndStatusContainer, $('.status')), extensionStatusAction));
315
+ otherExtensionContainers.push(extensionStatusAction, new (class extends ExtensionWidget {
316
+ render() {
317
+ actionsAndStatusContainer.classList.toggle('list-layout', this.extension?.state === 1 );
318
+ }
319
+ })());
320
+ const recommendationWidget = this.instantiationService.createInstance(ExtensionRecommendationWidget, append(details, $('.recommendation')));
321
+ widgets.push(recommendationWidget);
322
+ this._register(Event.any(extensionStatusWidget.onDidRender, recommendationWidget.onDidRender)(() => {
323
+ if (this.dimension) {
324
+ this.layout(this.dimension);
325
+ }
326
+ }));
327
+ const extensionContainers = this.instantiationService.createInstance(ExtensionContainers, [...actions, ...widgets, ...otherExtensionContainers]);
328
+ for (const disposable of [...actions, ...widgets, ...otherExtensionContainers, extensionContainers]) {
329
+ this._register(disposable);
330
+ }
331
+ const onError = Event.chain(extensionActionBar.onDidRun, $ => ( $.map(({ error }) => error))
332
+ .filter(error => !!error));
333
+ this._register(onError(this.onError, this));
334
+ const body = append(root, $('.body'));
335
+ const navbar = ( new NavBar(body));
336
+ const content = append(body, $('.content'));
337
+ content.id = generateUuid();
338
+ this.template = {
339
+ builtin,
340
+ content,
341
+ description,
342
+ header,
343
+ icon,
344
+ iconContainer,
345
+ installCount,
346
+ name,
347
+ navbar,
348
+ preview,
349
+ publisher,
350
+ publisherDisplayName,
351
+ resource,
352
+ rating,
353
+ actionsAndStatusContainer,
354
+ extensionActionBar,
355
+ set extension(extension) {
356
+ extensionContainers.extension = extension;
357
+ },
358
+ set gallery(gallery) {
359
+ versionWidget.gallery = gallery;
360
+ },
361
+ set manifest(manifest) {
362
+ installAction.manifest = manifest;
363
+ }
364
+ };
365
+ }
366
+ async setInput(input, options, context, token) {
367
+ await super.setInput(input, options, context, token);
368
+ this.updatePreReleaseVersionContext();
369
+ if (this.template) {
370
+ await this.render(input.extension, this.template, !!options?.preserveFocus);
371
+ }
372
+ }
373
+ setOptions(options) {
374
+ const currentOptions = this.options;
375
+ super.setOptions(options);
376
+ this.updatePreReleaseVersionContext();
377
+ if (this.input && this.template && currentOptions?.showPreReleaseVersion !== options?.showPreReleaseVersion) {
378
+ this.render(this.input.extension, this.template, !!options?.preserveFocus);
379
+ }
380
+ }
381
+ updatePreReleaseVersionContext() {
382
+ let showPreReleaseVersion = this.options?.showPreReleaseVersion;
383
+ if (isUndefined(showPreReleaseVersion)) {
384
+ showPreReleaseVersion = !!this.input.extension.gallery?.properties.isPreReleaseVersion;
385
+ }
386
+ this.showPreReleaseVersionContextKey?.set(showPreReleaseVersion);
387
+ }
388
+ async openTab(tab) {
389
+ if (!this.input || !this.template) {
390
+ return;
391
+ }
392
+ if (this.template.navbar.switch(tab)) {
393
+ return;
394
+ }
395
+ if (tab === "extensionPack" ) {
396
+ this.template.navbar.switch("readme" );
397
+ }
398
+ }
399
+ async getGalleryVersionToShow(extension, preRelease) {
400
+ if (extension.resourceExtension) {
401
+ return null;
402
+ }
403
+ if (extension.local?.source === 'resource') {
404
+ return null;
405
+ }
406
+ if (isUndefined(preRelease)) {
407
+ return null;
408
+ }
409
+ if (preRelease === extension.gallery?.properties.isPreReleaseVersion) {
410
+ return null;
411
+ }
412
+ if (preRelease && !extension.hasPreReleaseVersion) {
413
+ return null;
414
+ }
415
+ if (!preRelease && !extension.hasReleaseVersion) {
416
+ return null;
417
+ }
418
+ return (await this.extensionGalleryService.getExtensions([{ ...extension.identifier, preRelease, hasPreRelease: extension.hasPreReleaseVersion }], CancellationToken.None))[0] || null;
419
+ }
420
+ async render(extension, template, preserveFocus) {
421
+ this.activeElement = null;
422
+ this.transientDisposables.clear();
423
+ const token = this.transientDisposables.add(( new CancellationTokenSource())).token;
424
+ const gallery = await this.getGalleryVersionToShow(extension, this.options?.showPreReleaseVersion);
425
+ if (token.isCancellationRequested) {
426
+ return;
427
+ }
428
+ this.extensionReadme = ( new Cache(
429
+ () => gallery ? this.extensionGalleryService.getReadme(gallery, token) : extension.getReadme(token)
430
+ ));
431
+ this.extensionChangelog = ( new Cache(
432
+ () => gallery ? this.extensionGalleryService.getChangelog(gallery, token) : extension.getChangelog(token)
433
+ ));
434
+ this.extensionManifest = ( new Cache(
435
+ () => gallery ? this.extensionGalleryService.getManifest(gallery, token) : extension.getManifest(token)
436
+ ));
437
+ template.extension = extension;
438
+ template.gallery = gallery;
439
+ template.manifest = null;
440
+ this.transientDisposables.add(addDisposableListener(template.icon, 'error', () => template.icon.src = extension.iconUrlFallback, { once: true }));
441
+ template.icon.src = extension.iconUrl;
442
+ template.name.textContent = extension.displayName;
443
+ template.name.classList.toggle('clickable', !!extension.url);
444
+ template.name.classList.toggle('deprecated', !!extension.deprecationInfo);
445
+ template.preview.style.display = extension.preview ? 'inherit' : 'none';
446
+ template.builtin.style.display = extension.isBuiltin ? 'inherit' : 'none';
447
+ template.description.textContent = extension.description;
448
+ template.publisher.classList.toggle('clickable', !!extension.url);
449
+ template.publisherDisplayName.textContent = extension.publisherDisplayName;
450
+ template.publisher.parentElement?.classList.toggle('hide', !!extension.resourceExtension || extension.local?.source === 'resource');
451
+ const location = extension.resourceExtension?.location ?? (extension.local?.source === 'resource' ? extension.local?.location : undefined);
452
+ template.resource.parentElement?.classList.toggle('hide', !location);
453
+ if (location) {
454
+ const workspaceFolder = this.contextService.getWorkspaceFolder(location);
455
+ if (workspaceFolder && extension.isWorkspaceScoped) {
456
+ template.resource.parentElement?.classList.add('clickable');
457
+ this.transientDisposables.add(setupCustomHover(getDefaultHoverDelegate('mouse'), template.resource, this.uriIdentityService.extUri.relativePath(workspaceFolder.uri, location)));
458
+ template.resource.textContent = ( localizeWithPath(
459
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
460
+ 'workspace extension',
461
+ "Workspace Extension"
462
+ ));
463
+ this.transientDisposables.add(onClick(template.resource, () => {
464
+ this.viewsService.openView(VIEW_ID, true).then(() => this.explorerService.select(location, true));
465
+ }));
466
+ }
467
+ else {
468
+ template.resource.parentElement?.classList.remove('clickable');
469
+ this.transientDisposables.add(setupCustomHover(getDefaultHoverDelegate('mouse'), template.resource, location.path));
470
+ template.resource.textContent = ( localizeWithPath(
471
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
472
+ 'local extension',
473
+ "Local Extension"
474
+ ));
475
+ }
476
+ }
477
+ template.installCount.parentElement?.classList.toggle('hide', !extension.url);
478
+ template.rating.parentElement?.classList.toggle('hide', !extension.url);
479
+ template.rating.classList.toggle('clickable', !!extension.url);
480
+ if (extension.url) {
481
+ this.transientDisposables.add(onClick(template.name, () => this.openerService.open(( URI.parse(extension.url)))));
482
+ this.transientDisposables.add(onClick(template.rating, () => this.openerService.open(( URI.parse(`${extension.url}&ssr=false#review-details`)))));
483
+ this.transientDisposables.add(onClick(template.publisher, () => {
484
+ this.paneCompositeService.openPaneComposite(VIEWLET_ID, 0 , true)
485
+ .then(viewlet => viewlet?.getViewPaneContainer())
486
+ .then(viewlet => viewlet.search(`publisher:"${extension.publisherDisplayName}"`));
487
+ }));
488
+ }
489
+ const manifest = await this.extensionManifest.get().promise;
490
+ if (token.isCancellationRequested) {
491
+ return;
492
+ }
493
+ if (manifest) {
494
+ template.manifest = manifest;
495
+ }
496
+ this.renderNavbar(extension, manifest, template, preserveFocus);
497
+ const extRecommendations = this.extensionRecommendationsService.getAllRecommendationsWithReason();
498
+ let recommendationsData = {};
499
+ if (extRecommendations[extension.identifier.id.toLowerCase()]) {
500
+ recommendationsData = { recommendationReason: extRecommendations[extension.identifier.id.toLowerCase()].reasonId };
501
+ }
502
+ this.telemetryService.publicLog('extensionGallery:openExtension', { ...extension.telemetryData, ...recommendationsData });
503
+ }
504
+ renderNavbar(extension, manifest, template, preserveFocus) {
505
+ template.content.innerText = '';
506
+ template.navbar.clear();
507
+ if (this.currentIdentifier !== extension.identifier.id) {
508
+ this.initialScrollProgress.clear();
509
+ this.currentIdentifier = extension.identifier.id;
510
+ }
511
+ template.navbar.push("readme" , ( localizeWithPath(
512
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
513
+ 'details',
514
+ "Details"
515
+ )), ( localizeWithPath(
516
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
517
+ 'detailstooltip',
518
+ "Extension details, rendered from the extension's 'README.md' file"
519
+ )));
520
+ if (manifest) {
521
+ template.navbar.push("features" , ( localizeWithPath(
522
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
523
+ 'features',
524
+ "Features"
525
+ )), ( localizeWithPath(
526
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
527
+ 'featurestooltip',
528
+ "Lists features contributed by this extension"
529
+ )));
530
+ }
531
+ if (extension.hasChangelog()) {
532
+ template.navbar.push("changelog" , ( localizeWithPath(
533
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
534
+ 'changelog',
535
+ "Changelog"
536
+ )), ( localizeWithPath(
537
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
538
+ 'changelogtooltip',
539
+ "Extension update history, rendered from the extension's 'CHANGELOG.md' file"
540
+ )));
541
+ }
542
+ if (extension.dependencies.length) {
543
+ template.navbar.push("dependencies" , ( localizeWithPath(
544
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
545
+ 'dependencies',
546
+ "Dependencies"
547
+ )), ( localizeWithPath(
548
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
549
+ 'dependenciestooltip',
550
+ "Lists extensions this extension depends on"
551
+ )));
552
+ }
553
+ if (manifest && manifest.extensionPack?.length && !this.shallRenderAsExtensionPack(manifest)) {
554
+ template.navbar.push("extensionPack" , ( localizeWithPath(
555
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
556
+ 'extensionpack',
557
+ "Extension Pack"
558
+ )), ( localizeWithPath(
559
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
560
+ 'extensionpacktooltip',
561
+ "Lists extensions those will be installed together with this extension"
562
+ )));
563
+ }
564
+ if (this.options?.tab) {
565
+ template.navbar.switch(this.options.tab);
566
+ }
567
+ if (template.navbar.currentId) {
568
+ this.onNavbarChange(extension, { id: template.navbar.currentId, focus: !preserveFocus }, template);
569
+ }
570
+ template.navbar.onChange(e => this.onNavbarChange(extension, e, template), this, this.transientDisposables);
571
+ }
572
+ clearInput() {
573
+ this.contentDisposables.clear();
574
+ this.transientDisposables.clear();
575
+ super.clearInput();
576
+ }
577
+ focus() {
578
+ super.focus();
579
+ this.activeElement?.focus();
580
+ }
581
+ showFind() {
582
+ this.activeWebview?.showFind();
583
+ }
584
+ runFindAction(previous) {
585
+ this.activeWebview?.runFindAction(previous);
586
+ }
587
+ get activeWebview() {
588
+ if (!this.activeElement || !this.activeElement.runFindAction) {
589
+ return undefined;
590
+ }
591
+ return this.activeElement;
592
+ }
593
+ onNavbarChange(extension, { id, focus }, template) {
594
+ this.contentDisposables.clear();
595
+ template.content.innerText = '';
596
+ this.activeElement = null;
597
+ if (id) {
598
+ const cts = ( new CancellationTokenSource());
599
+ this.contentDisposables.add(toDisposable(() => cts.dispose(true)));
600
+ this.open(id, extension, template, cts.token)
601
+ .then(activeElement => {
602
+ if (cts.token.isCancellationRequested) {
603
+ return;
604
+ }
605
+ this.activeElement = activeElement;
606
+ if (focus) {
607
+ this.focus();
608
+ }
609
+ });
610
+ }
611
+ }
612
+ open(id, extension, template, token) {
613
+ switch (id) {
614
+ case "readme" : return this.openDetails(extension, template, token);
615
+ case "features" : return this.openFeatures(template, token);
616
+ case "changelog" : return this.openChangelog(template, token);
617
+ case "dependencies" : return this.openExtensionDependencies(extension, template, token);
618
+ case "extensionPack" : return this.openExtensionPack(extension, template, token);
619
+ }
620
+ return Promise.resolve(null);
621
+ }
622
+ async openMarkdown(cacheResult, noContentCopy, container, webviewIndex, title, token) {
623
+ try {
624
+ const body = await this.renderMarkdown(cacheResult, container, token);
625
+ if (token.isCancellationRequested) {
626
+ return Promise.resolve(null);
627
+ }
628
+ const webview = this.contentDisposables.add(this.webviewService.createWebviewOverlay({
629
+ title,
630
+ options: {
631
+ enableFindWidget: true,
632
+ tryRestoreScrollPosition: true,
633
+ disableServiceWorker: true,
634
+ },
635
+ contentOptions: {},
636
+ extension: undefined,
637
+ }));
638
+ webview.initialScrollProgress = this.initialScrollProgress.get(webviewIndex) || 0;
639
+ webview.claim(this, this.window, this.scopedContextKeyService);
640
+ setParentFlowTo(webview.container, container);
641
+ webview.layoutWebviewOverElement(container);
642
+ webview.setHtml(body);
643
+ webview.claim(this, this.window, undefined);
644
+ this.contentDisposables.add(webview.onDidFocus(() => this._onDidFocus?.fire()));
645
+ this.contentDisposables.add(webview.onDidScroll(() => this.initialScrollProgress.set(webviewIndex, webview.initialScrollProgress)));
646
+ const removeLayoutParticipant = insert(this.layoutParticipants, {
647
+ layout: () => {
648
+ webview.layoutWebviewOverElement(container);
649
+ }
650
+ });
651
+ this.contentDisposables.add(toDisposable(removeLayoutParticipant));
652
+ let isDisposed = false;
653
+ this.contentDisposables.add(toDisposable(() => { isDisposed = true; }));
654
+ this.contentDisposables.add(this.themeService.onDidColorThemeChange(async () => {
655
+ const body = await this.renderMarkdown(cacheResult, container);
656
+ if (!isDisposed) {
657
+ webview.setHtml(body);
658
+ }
659
+ }));
660
+ this.contentDisposables.add(webview.onDidClickLink(link => {
661
+ if (!link) {
662
+ return;
663
+ }
664
+ if (matchesScheme(link, Schemas.http) || matchesScheme(link, Schemas.https) || matchesScheme(link, Schemas.mailto)) {
665
+ this.openerService.open(link);
666
+ }
667
+ if (matchesScheme(link, Schemas.command) && ( URI.parse(link)).path === ShowCurrentReleaseNotesActionId) {
668
+ this.openerService.open(link, { allowCommands: true });
669
+ }
670
+ }));
671
+ return webview;
672
+ }
673
+ catch (e) {
674
+ const p = append(container, $('p.nocontent'));
675
+ p.textContent = noContentCopy;
676
+ return p;
677
+ }
678
+ }
679
+ async renderMarkdown(cacheResult, container, token) {
680
+ const contents = await this.loadContents(() => cacheResult, container);
681
+ if (token?.isCancellationRequested) {
682
+ return '';
683
+ }
684
+ const content = await renderMarkdownDocument(contents, this.extensionService, this.languageService, true, false, token);
685
+ if (token?.isCancellationRequested) {
686
+ return '';
687
+ }
688
+ return this.renderBody(content);
689
+ }
690
+ renderBody(body) {
691
+ const nonce = generateUuid();
692
+ const colorMap = TokenizationRegistry.getColorMap();
693
+ const css = colorMap ? generateTokensCSSForColorMap(colorMap) : '';
694
+ return `<!DOCTYPE html>
695
+ <html>
696
+ <head>
697
+ <meta http-equiv="Content-type" content="text/html;charset=UTF-8">
698
+ <meta http-equiv="Content-Security-Policy" content="default-src 'none'; img-src https: data:; media-src https:; script-src 'none'; style-src 'nonce-${nonce}';">
699
+ <style nonce="${nonce}">
700
+ ${DEFAULT_MARKDOWN_STYLES}
701
+
702
+ /* prevent scroll-to-top button from blocking the body text */
703
+ body {
704
+ padding-bottom: 75px;
705
+ }
706
+
707
+ #scroll-to-top {
708
+ position: fixed;
709
+ width: 32px;
710
+ height: 32px;
711
+ right: 25px;
712
+ bottom: 25px;
713
+ background-color: var(--vscode-button-secondaryBackground);
714
+ border-color: var(--vscode-button-border);
715
+ border-radius: 50%;
716
+ cursor: pointer;
717
+ box-shadow: 1px 1px 1px rgba(0,0,0,.25);
718
+ outline: none;
719
+ display: flex;
720
+ justify-content: center;
721
+ align-items: center;
722
+ }
723
+
724
+ #scroll-to-top:hover {
725
+ background-color: var(--vscode-button-secondaryHoverBackground);
726
+ box-shadow: 2px 2px 2px rgba(0,0,0,.25);
727
+ }
728
+
729
+ body.vscode-high-contrast #scroll-to-top {
730
+ border-width: 2px;
731
+ border-style: solid;
732
+ box-shadow: none;
733
+ }
734
+
735
+ #scroll-to-top span.icon::before {
736
+ content: "";
737
+ display: block;
738
+ background: var(--vscode-button-secondaryForeground);
739
+ /* Chevron up icon */
740
+ webkit-mask-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjIuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAxNiAxNiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMTYgMTY7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7ZmlsbDojRkZGRkZGO30KCS5zdDF7ZmlsbDpub25lO30KPC9zdHlsZT4KPHRpdGxlPnVwY2hldnJvbjwvdGl0bGU+CjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik04LDUuMWwtNy4zLDcuM0wwLDExLjZsOC04bDgsOGwtMC43LDAuN0w4LDUuMXoiLz4KPHJlY3QgY2xhc3M9InN0MSIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2Ii8+Cjwvc3ZnPgo=');
741
+ -webkit-mask-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjIuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAxNiAxNiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMTYgMTY7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7ZmlsbDojRkZGRkZGO30KCS5zdDF7ZmlsbDpub25lO30KPC9zdHlsZT4KPHRpdGxlPnVwY2hldnJvbjwvdGl0bGU+CjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik04LDUuMWwtNy4zLDcuM0wwLDExLjZsOC04bDgsOGwtMC43LDAuN0w4LDUuMXoiLz4KPHJlY3QgY2xhc3M9InN0MSIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2Ii8+Cjwvc3ZnPgo=');
742
+ width: 16px;
743
+ height: 16px;
744
+ }
745
+ ${css}
746
+ </style>
747
+ </head>
748
+ <body>
749
+ <a id="scroll-to-top" role="button" aria-label="scroll to top" href="#"><span class="icon"></span></a>
750
+ ${body}
751
+ </body>
752
+ </html>`;
753
+ }
754
+ async openDetails(extension, template, token) {
755
+ const details = append(template.content, $('.details'));
756
+ const readmeContainer = append(details, $('.readme-container'));
757
+ const additionalDetailsContainer = append(details, $('.additional-details-container'));
758
+ const layout = () => details.classList.toggle('narrow', this.dimension && this.dimension.width < 500);
759
+ layout();
760
+ this.contentDisposables.add(toDisposable(insert(this.layoutParticipants, { layout })));
761
+ let activeElement = null;
762
+ const manifest = await this.extensionManifest.get().promise;
763
+ if (manifest && manifest.extensionPack?.length && this.shallRenderAsExtensionPack(manifest)) {
764
+ activeElement = await this.openExtensionPackReadme(manifest, readmeContainer, token);
765
+ }
766
+ else {
767
+ activeElement = await this.openMarkdown(this.extensionReadme.get(), ( localizeWithPath(
768
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
769
+ 'noReadme',
770
+ "No README available."
771
+ )), readmeContainer, 0 , ( localizeWithPath(
772
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
773
+ 'Readme title',
774
+ "Readme"
775
+ )), token);
776
+ }
777
+ this.renderAdditionalDetails(additionalDetailsContainer, extension);
778
+ return activeElement;
779
+ }
780
+ shallRenderAsExtensionPack(manifest) {
781
+ return !!(manifest.categories?.some(category => category.toLowerCase() === 'extension packs'));
782
+ }
783
+ async openExtensionPackReadme(manifest, container, token) {
784
+ if (token.isCancellationRequested) {
785
+ return Promise.resolve(null);
786
+ }
787
+ const extensionPackReadme = append(container, $('div', { class: 'extension-pack-readme' }));
788
+ extensionPackReadme.style.margin = '0 auto';
789
+ extensionPackReadme.style.maxWidth = '882px';
790
+ const extensionPack = append(extensionPackReadme, $('div', { class: 'extension-pack' }));
791
+ if (manifest.extensionPack.length <= 3) {
792
+ extensionPackReadme.classList.add('one-row');
793
+ }
794
+ else if (manifest.extensionPack.length <= 6) {
795
+ extensionPackReadme.classList.add('two-rows');
796
+ }
797
+ else if (manifest.extensionPack.length <= 9) {
798
+ extensionPackReadme.classList.add('three-rows');
799
+ }
800
+ else {
801
+ extensionPackReadme.classList.add('more-rows');
802
+ }
803
+ const extensionPackHeader = append(extensionPack, $('div.header'));
804
+ extensionPackHeader.textContent = ( localizeWithPath(
805
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
806
+ 'extension pack',
807
+ "Extension Pack ({0})",
808
+ manifest.extensionPack.length
809
+ ));
810
+ const extensionPackContent = append(extensionPack, $('div', { class: 'extension-pack-content' }));
811
+ extensionPackContent.setAttribute('tabindex', '0');
812
+ append(extensionPack, $('div.footer'));
813
+ const readmeContent = append(extensionPackReadme, $('div.readme-content'));
814
+ await Promise.all([
815
+ this.renderExtensionPack(manifest, extensionPackContent, token),
816
+ this.openMarkdown(this.extensionReadme.get(), ( localizeWithPath(
817
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
818
+ 'noReadme',
819
+ "No README available."
820
+ )), readmeContent, 0 , ( localizeWithPath(
821
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
822
+ 'Readme title',
823
+ "Readme"
824
+ )), token),
825
+ ]);
826
+ return { focus: () => extensionPackContent.focus() };
827
+ }
828
+ renderAdditionalDetails(container, extension) {
829
+ const content = $('div', { class: 'additional-details-content', tabindex: '0' });
830
+ const scrollableContent = ( new DomScrollableElement(content, {}));
831
+ const layout = () => scrollableContent.scanDomNode();
832
+ const removeLayoutParticipant = insert(this.layoutParticipants, { layout });
833
+ this.contentDisposables.add(toDisposable(removeLayoutParticipant));
834
+ this.contentDisposables.add(scrollableContent);
835
+ this.renderCategories(content, extension);
836
+ this.renderExtensionResources(content, extension);
837
+ this.renderMoreInfo(content, extension);
838
+ append(container, scrollableContent.getDomNode());
839
+ scrollableContent.scanDomNode();
840
+ }
841
+ renderCategories(container, extension) {
842
+ if (extension.categories.length) {
843
+ const categoriesContainer = append(container, $('.categories-container.additional-details-element'));
844
+ append(categoriesContainer, $('.additional-details-title', undefined, ( localizeWithPath(
845
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
846
+ 'categories',
847
+ "Categories"
848
+ ))));
849
+ const categoriesElement = append(categoriesContainer, $('.categories'));
850
+ for (const category of extension.categories) {
851
+ this.transientDisposables.add(onClick(append(categoriesElement, $('span.category', { tabindex: '0' }, category)), () => {
852
+ this.paneCompositeService.openPaneComposite(VIEWLET_ID, 0 , true)
853
+ .then(viewlet => viewlet?.getViewPaneContainer())
854
+ .then(viewlet => viewlet.search(`@category:"${category}"`));
855
+ }));
856
+ }
857
+ }
858
+ }
859
+ renderExtensionResources(container, extension) {
860
+ const resources = [];
861
+ if (extension.url) {
862
+ resources.push([( localizeWithPath(
863
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
864
+ 'Marketplace',
865
+ "Marketplace"
866
+ )), ( URI.parse(extension.url))]);
867
+ }
868
+ if (extension.url && extension.supportUrl) {
869
+ try {
870
+ resources.push([( localizeWithPath(
871
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
872
+ 'issues',
873
+ "Issues"
874
+ )), ( URI.parse(extension.supportUrl))]);
875
+ }
876
+ catch (error) { }
877
+ }
878
+ if (extension.repository) {
879
+ try {
880
+ resources.push([( localizeWithPath(
881
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
882
+ 'repository',
883
+ "Repository"
884
+ )), ( URI.parse(extension.repository))]);
885
+ }
886
+ catch (error) { }
887
+ }
888
+ if (extension.url && extension.licenseUrl) {
889
+ try {
890
+ resources.push([( localizeWithPath(
891
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
892
+ 'license',
893
+ "License"
894
+ )), ( URI.parse(extension.licenseUrl))]);
895
+ }
896
+ catch (error) { }
897
+ }
898
+ if (extension.publisherUrl) {
899
+ resources.push([extension.publisherDisplayName, extension.publisherUrl]);
900
+ }
901
+ if (resources.length || extension.publisherSponsorLink) {
902
+ const extensionResourcesContainer = append(container, $('.resources-container.additional-details-element'));
903
+ append(extensionResourcesContainer, $('.additional-details-title', undefined, ( localizeWithPath(
904
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
905
+ 'resources',
906
+ "Resources"
907
+ ))));
908
+ const resourcesElement = append(extensionResourcesContainer, $('.resources'));
909
+ for (const [label, uri] of resources) {
910
+ const resource = append(resourcesElement, $('a.resource', { tabindex: '0' }, label));
911
+ this.transientDisposables.add(onClick(resource, () => this.openerService.open(uri)));
912
+ this.transientDisposables.add(setupCustomHover(getDefaultHoverDelegate('mouse'), resource, ( uri.toString())));
913
+ }
914
+ }
915
+ }
916
+ renderMoreInfo(container, extension) {
917
+ const gallery = extension.gallery;
918
+ const moreInfoContainer = append(container, $('.more-info-container.additional-details-element'));
919
+ append(moreInfoContainer, $('.additional-details-title', undefined, ( localizeWithPath(
920
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
921
+ 'Marketplace Info',
922
+ "More Info"
923
+ ))));
924
+ const moreInfo = append(moreInfoContainer, $('.more-info'));
925
+ const toDateString = (date) => `${date.getFullYear()}-${String(date.getMonth() + 1).padStart(2, '0')}-${String(date.getDate()).padStart(2, '0')}, ${date.toLocaleTimeString(language, { hourCycle: 'h23' })}`;
926
+ if (gallery) {
927
+ append(moreInfo, $('.more-info-entry', undefined, $('div', undefined, ( localizeWithPath(
928
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
929
+ 'published',
930
+ "Published"
931
+ ))), $('div', undefined, toDateString(( new Date(gallery.releaseDate))))), $('.more-info-entry', undefined, $('div', undefined, ( localizeWithPath(
932
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
933
+ 'last released',
934
+ "Last released"
935
+ ))), $('div', undefined, toDateString(( new Date(gallery.lastUpdated))))));
936
+ }
937
+ if (extension.local && extension.local.installedTimestamp) {
938
+ append(moreInfo, $('.more-info-entry', undefined, $('div', undefined, ( localizeWithPath(
939
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
940
+ 'last updated',
941
+ "Last updated"
942
+ ))), $('div', undefined, toDateString(( new Date(extension.local.installedTimestamp))))));
943
+ }
944
+ append(moreInfo, $('.more-info-entry', undefined, $('div', undefined, ( localizeWithPath(
945
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
946
+ 'id',
947
+ "Identifier"
948
+ ))), $('code', undefined, extension.identifier.id)));
949
+ }
950
+ openChangelog(template, token) {
951
+ return this.openMarkdown(this.extensionChangelog.get(), ( localizeWithPath(
952
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
953
+ 'noChangelog',
954
+ "No Changelog available."
955
+ )), template.content, 1 , ( localizeWithPath(
956
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
957
+ 'Changelog title',
958
+ "Changelog"
959
+ )), token);
960
+ }
961
+ async openFeatures(template, token) {
962
+ const manifest = await this.loadContents(() => this.extensionManifest.get(), template.content);
963
+ if (token.isCancellationRequested) {
964
+ return null;
965
+ }
966
+ if (!manifest) {
967
+ return null;
968
+ }
969
+ const extensionFeaturesTab = this.contentDisposables.add(this.instantiationService.createInstance(ExtensionFeaturesTab, manifest, this.options?.feature));
970
+ const layout = () => extensionFeaturesTab.layout(template.content.clientHeight, template.content.clientWidth);
971
+ const removeLayoutParticipant = insert(this.layoutParticipants, { layout });
972
+ this.contentDisposables.add(toDisposable(removeLayoutParticipant));
973
+ append(template.content, extensionFeaturesTab.domNode);
974
+ layout();
975
+ return extensionFeaturesTab.domNode;
976
+ }
977
+ openExtensionDependencies(extension, template, token) {
978
+ if (token.isCancellationRequested) {
979
+ return Promise.resolve(null);
980
+ }
981
+ if (isFalsyOrEmpty(extension.dependencies)) {
982
+ append(template.content, $('p.nocontent')).textContent = ( localizeWithPath(
983
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
984
+ 'noDependencies',
985
+ "No Dependencies"
986
+ ));
987
+ return Promise.resolve(template.content);
988
+ }
989
+ const content = $('div', { class: 'subcontent' });
990
+ const scrollableContent = ( new DomScrollableElement(content, {}));
991
+ append(template.content, scrollableContent.getDomNode());
992
+ this.contentDisposables.add(scrollableContent);
993
+ const dependenciesTree = this.instantiationService.createInstance(ExtensionsTree, ( new ExtensionData(
994
+ extension,
995
+ null,
996
+ extension => extension.dependencies || [],
997
+ this.extensionsWorkbenchService
998
+ )), content, {
999
+ listBackground: editorBackground
1000
+ });
1001
+ const layout = () => {
1002
+ scrollableContent.scanDomNode();
1003
+ const scrollDimensions = scrollableContent.getScrollDimensions();
1004
+ dependenciesTree.layout(scrollDimensions.height);
1005
+ };
1006
+ const removeLayoutParticipant = insert(this.layoutParticipants, { layout });
1007
+ this.contentDisposables.add(toDisposable(removeLayoutParticipant));
1008
+ this.contentDisposables.add(dependenciesTree);
1009
+ scrollableContent.scanDomNode();
1010
+ return Promise.resolve({ focus() { dependenciesTree.domFocus(); } });
1011
+ }
1012
+ async openExtensionPack(extension, template, token) {
1013
+ if (token.isCancellationRequested) {
1014
+ return Promise.resolve(null);
1015
+ }
1016
+ const manifest = await this.loadContents(() => this.extensionManifest.get(), template.content);
1017
+ if (token.isCancellationRequested) {
1018
+ return null;
1019
+ }
1020
+ if (!manifest) {
1021
+ return null;
1022
+ }
1023
+ return this.renderExtensionPack(manifest, template.content, token);
1024
+ }
1025
+ async renderExtensionPack(manifest, parent, token) {
1026
+ if (token.isCancellationRequested) {
1027
+ return null;
1028
+ }
1029
+ const content = $('div', { class: 'subcontent' });
1030
+ const scrollableContent = ( new DomScrollableElement(content, { useShadows: false }));
1031
+ append(parent, scrollableContent.getDomNode());
1032
+ const extensionsGridView = this.instantiationService.createInstance(ExtensionsGridView, content, ( new Delegate()));
1033
+ const extensions = await getExtensions(manifest.extensionPack, this.extensionsWorkbenchService);
1034
+ extensionsGridView.setExtensions(extensions);
1035
+ scrollableContent.scanDomNode();
1036
+ this.contentDisposables.add(scrollableContent);
1037
+ this.contentDisposables.add(extensionsGridView);
1038
+ this.contentDisposables.add(toDisposable(insert(this.layoutParticipants, { layout: () => scrollableContent.scanDomNode() })));
1039
+ return content;
1040
+ }
1041
+ loadContents(loadingTask, container) {
1042
+ container.classList.add('loading');
1043
+ const result = this.contentDisposables.add(loadingTask());
1044
+ const onDone = () => container.classList.remove('loading');
1045
+ result.promise.then(onDone, onDone);
1046
+ return result.promise;
1047
+ }
1048
+ layout(dimension) {
1049
+ this.dimension = dimension;
1050
+ this.layoutParticipants.forEach(p => p.layout());
1051
+ }
1052
+ onError(err) {
1053
+ if (isCancellationError(err)) {
1054
+ return;
1055
+ }
1056
+ this.notificationService.error(err);
1057
+ }
1058
+ };
1059
+ ExtensionEditor = ExtensionEditor_1 = ( __decorate([
1060
+ ( __param(1, ITelemetryService)),
1061
+ ( __param(2, IInstantiationService)),
1062
+ ( __param(3, IPaneCompositePartService)),
1063
+ ( __param(4, IExtensionsWorkbenchService)),
1064
+ ( __param(5, IExtensionGalleryService)),
1065
+ ( __param(6, IThemeService)),
1066
+ ( __param(7, INotificationService)),
1067
+ ( __param(8, IOpenerService)),
1068
+ ( __param(9, IExtensionRecommendationsService)),
1069
+ ( __param(10, IStorageService)),
1070
+ ( __param(11, IExtensionService)),
1071
+ ( __param(12, IWebviewService)),
1072
+ ( __param(13, ILanguageService)),
1073
+ ( __param(14, IContextMenuService)),
1074
+ ( __param(15, IContextKeyService)),
1075
+ ( __param(16, IWorkspaceContextService)),
1076
+ ( __param(17, IExplorerService)),
1077
+ ( __param(18, IViewsService)),
1078
+ ( __param(19, IUriIdentityService))
1079
+ ], ExtensionEditor));
1080
+ const contextKeyExpr = ( ContextKeyExpr.and(( ContextKeyExpr.equals('activeEditor', ExtensionEditor.ID)), ( EditorContextKeys.focus.toNegated())));
1081
+ registerAction2(class ShowExtensionEditorFindAction extends Action2 {
1082
+ constructor() {
1083
+ super({
1084
+ id: 'editor.action.extensioneditor.showfind',
1085
+ title: ( localizeWithPath('vs/workbench/contrib/extensions/browser/extensionEditor', 'find', "Find")),
1086
+ keybinding: {
1087
+ when: contextKeyExpr,
1088
+ weight: 100 ,
1089
+ primary: 2048 | 36 ,
1090
+ }
1091
+ });
1092
+ }
1093
+ run(accessor) {
1094
+ const extensionEditor = getExtensionEditor(accessor);
1095
+ extensionEditor?.showFind();
1096
+ }
1097
+ });
1098
+ registerAction2(class StartExtensionEditorFindNextAction extends Action2 {
1099
+ constructor() {
1100
+ super({
1101
+ id: 'editor.action.extensioneditor.findNext',
1102
+ title: ( localizeWithPath(
1103
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
1104
+ 'find next',
1105
+ "Find Next"
1106
+ )),
1107
+ keybinding: {
1108
+ when: ( ContextKeyExpr.and(contextKeyExpr, KEYBINDING_CONTEXT_WEBVIEW_FIND_WIDGET_FOCUSED)),
1109
+ primary: 3 ,
1110
+ weight: 100
1111
+ }
1112
+ });
1113
+ }
1114
+ run(accessor) {
1115
+ const extensionEditor = getExtensionEditor(accessor);
1116
+ extensionEditor?.runFindAction(false);
1117
+ }
1118
+ });
1119
+ registerAction2(class StartExtensionEditorFindPreviousAction extends Action2 {
1120
+ constructor() {
1121
+ super({
1122
+ id: 'editor.action.extensioneditor.findPrevious',
1123
+ title: ( localizeWithPath(
1124
+ 'vs/workbench/contrib/extensions/browser/extensionEditor',
1125
+ 'find previous',
1126
+ "Find Previous"
1127
+ )),
1128
+ keybinding: {
1129
+ when: ( ContextKeyExpr.and(contextKeyExpr, KEYBINDING_CONTEXT_WEBVIEW_FIND_WIDGET_FOCUSED)),
1130
+ primary: 1024 | 3 ,
1131
+ weight: 100
1132
+ }
1133
+ });
1134
+ }
1135
+ run(accessor) {
1136
+ const extensionEditor = getExtensionEditor(accessor);
1137
+ extensionEditor?.runFindAction(true);
1138
+ }
1139
+ });
1140
+ registerThemingParticipant((theme, collector) => {
1141
+ const link = theme.getColor(textLinkForeground);
1142
+ if (link) {
1143
+ collector.addRule(`.monaco-workbench .extension-editor .content .details .additional-details-container .resources-container a.resource { color: ${link}; }`);
1144
+ collector.addRule(`.monaco-workbench .extension-editor .content .feature-contributions a { color: ${link}; }`);
1145
+ }
1146
+ const activeLink = theme.getColor(textLinkActiveForeground);
1147
+ if (activeLink) {
1148
+ collector.addRule(`.monaco-workbench .extension-editor .content .details .additional-details-container .resources-container a.resource:hover,
1149
+ .monaco-workbench .extension-editor .content .details .additional-details-container .resources-container a.resource:active { color: ${activeLink}; }`);
1150
+ collector.addRule(`.monaco-workbench .extension-editor .content .feature-contributions a:hover,
1151
+ .monaco-workbench .extension-editor .content .feature-contributions a:active { color: ${activeLink}; }`);
1152
+ }
1153
+ const buttonHoverBackgroundColor = theme.getColor(buttonHoverBackground);
1154
+ if (buttonHoverBackgroundColor) {
1155
+ collector.addRule(`.monaco-workbench .extension-editor .content > .details > .additional-details-container .categories-container > .categories > .category:hover { background-color: ${buttonHoverBackgroundColor}; border-color: ${buttonHoverBackgroundColor}; }`);
1156
+ collector.addRule(`.monaco-workbench .extension-editor .content > .details > .additional-details-container .tags-container > .tags > .tag:hover { background-color: ${buttonHoverBackgroundColor}; border-color: ${buttonHoverBackgroundColor}; }`);
1157
+ }
1158
+ const buttonForegroundColor = theme.getColor(buttonForeground);
1159
+ if (buttonForegroundColor) {
1160
+ collector.addRule(`.monaco-workbench .extension-editor .content > .details > .additional-details-container .categories-container > .categories > .category:hover { color: ${buttonForegroundColor}; }`);
1161
+ collector.addRule(`.monaco-workbench .extension-editor .content > .details > .additional-details-container .tags-container > .tags > .tag:hover { color: ${buttonForegroundColor}; }`);
1162
+ }
1163
+ });
1164
+ function getExtensionEditor(accessor) {
1165
+ const activeEditorPane = accessor.get(IEditorService).activeEditorPane;
1166
+ if (activeEditorPane instanceof ExtensionEditor) {
1167
+ return activeEditorPane;
1168
+ }
1169
+ return null;
1170
+ }
1171
+ export { ExtensionEditor };