@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,1237 @@
1
+ import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
+ import './media/keybindingsEditor.css.js';
3
+ import { localizeWithPath } from '../../../../nls.js';
4
+ import { Delayer } from '../../../../base/common/async.js';
5
+ import { append, $ as $$1, getTotalWidth, getDomNodePagePosition, Dimension, addDisposableListener, finalHandler, EventType, EventHelper, clearNode } from '../../../../base/browser/dom.js';
6
+ import { isIOS, OS } from '../../../../base/common/platform.js';
7
+ import { DisposableStore, Disposable, toDisposable } from '../../../../base/common/lifecycle.js';
8
+ import { ToggleActionViewItem } from '../../../../base/browser/ui/toggle/toggle.js';
9
+ import { HighlightedLabel } from '../../../../base/browser/ui/highlightedlabel/highlightedLabel.js';
10
+ import { KeybindingLabel } from '../../../../base/browser/ui/keybindingLabel/keybindingLabel.js';
11
+ import { Action, Separator } from '../../../../base/common/actions.js';
12
+ import { ActionBar } from '../../../../base/browser/ui/actionbar/actionbar.js';
13
+ import { EditorPane } from '../../../browser/parts/editor/editorPane.js';
14
+ import { ITelemetryService } from '../../../../platform/telemetry/common/telemetry.js';
15
+ import { IClipboardService } from '../../../../platform/clipboard/common/clipboardService.js';
16
+ import { KEYBINDING_ENTRY_TEMPLATE_ID } from '../../../services/preferences/browser/keybindingsEditorModel.js';
17
+ import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js';
18
+ import { IKeybindingService } from '../../../../platform/keybinding/common/keybinding.js';
19
+ import { DefineKeybindingWidget, KeybindingsSearchWidget } from './keybindingWidgets.js';
20
+ import { CONTEXT_KEYBINDINGS_EDITOR, CONTEXT_KEYBINDINGS_SEARCH_FOCUS, CONTEXT_KEYBINDING_FOCUS, KEYBINDINGS_EDITOR_COMMAND_RECORD_SEARCH_KEYS, KEYBINDINGS_EDITOR_COMMAND_SORTBY_PRECEDENCE, KEYBINDINGS_EDITOR_COMMAND_CLEAR_SEARCH_RESULTS, KEYBINDINGS_EDITOR_COMMAND_DEFINE, KEYBINDINGS_EDITOR_COMMAND_ADD, KEYBINDINGS_EDITOR_COMMAND_DEFINE_WHEN, KEYBINDINGS_EDITOR_COMMAND_REMOVE, KEYBINDINGS_EDITOR_COMMAND_RESET, KEYBINDINGS_EDITOR_COMMAND_SHOW_SIMILAR, KEYBINDINGS_EDITOR_COMMAND_COPY, KEYBINDINGS_EDITOR_COMMAND_COPY_COMMAND, KEYBINDINGS_EDITOR_COMMAND_COPY_COMMAND_TITLE, CONTEXT_WHEN_FOCUS } from '../common/preferences.js';
21
+ import { IContextMenuService } from '../../../../platform/contextview/browser/contextView.js';
22
+ import { IKeybindingEditingService } from '../../../services/keybinding/common/keybindingEditing.js';
23
+ import { registerThemingParticipant, IThemeService } from '../../../../platform/theme/common/themeService.js';
24
+ import { ThemeIcon } from '../../../../base/common/themables.js';
25
+ import { RawContextKey, IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js';
26
+ import { asCssVariable, registerColor } from '../../../../platform/theme/common/colorUtils.js';
27
+ import { contrastBorder, foreground } from '../../../../platform/theme/common/colors/baseColors.js';
28
+ import '../../../../platform/theme/common/colors/chartsColors.js';
29
+ import { editorBackground } from '../../../../platform/theme/common/colors/editorColors.js';
30
+ import '../../../../platform/theme/common/colors/inputColors.js';
31
+ import { tableOddRowsBackgroundColor, listActiveSelectionForeground, listActiveSelectionBackground, listInactiveSelectionForeground, listInactiveSelectionBackground, listFocusForeground, listFocusBackground, listHoverForeground, listHoverBackground } from '../../../../platform/theme/common/colors/listColors.js';
32
+ import '../../../../platform/theme/common/colors/menuColors.js';
33
+ import '../../../../platform/theme/common/colors/minimapColors.js';
34
+ import { badgeBackground, badgeForeground } from '../../../../platform/theme/common/colors/miscColors.js';
35
+ import '../../../../platform/theme/common/colors/quickpickColors.js';
36
+ import '../../../../platform/theme/common/colors/searchColors.js';
37
+ import { IEditorService } from '../../../services/editor/common/editorService.js';
38
+ import { EditorExtensionsRegistry } from '../../../../editor/browser/editorExtensions.js';
39
+ import { WorkbenchTable } from '../../../../platform/list/browser/listService.js';
40
+ import { INotificationService } from '../../../../platform/notification/common/notification.js';
41
+ import { IStorageService } from '../../../../platform/storage/common/storage.js';
42
+ import { Emitter, Event } from '../../../../base/common/event.js';
43
+ import { MenuRegistry, MenuId, isIMenuItem } from '../../../../platform/actions/common/actions.js';
44
+ import { WORKBENCH_BACKGROUND } from '../../../common/theme.js';
45
+ import { keybindingsRecordKeysIcon, keybindingsSortIcon, preferencesClearInputIcon, keybindingsEditIcon, keybindingsAddIcon } from './preferencesIcons.js';
46
+ import { ToolBar } from '../../../../base/browser/ui/toolbar/toolbar.js';
47
+ import { getInputBoxStyle, defaultToggleStyles, defaultKeybindingLabelStyles } from '../../../../platform/theme/browser/defaultStyles.js';
48
+ import { IExtensionsWorkbenchService } from '../../extensions/common/extensions.js';
49
+ import { StandardKeyboardEvent } from '../../../../base/browser/keyboardEvent.js';
50
+ import { isString } from '../../../../base/common/types.js';
51
+ import { SuggestEnabledInput } from '../../codeEditor/browser/suggestEnabledInput/suggestEnabledInput.js';
52
+ import { settingsTextInputBorder } from '../common/settingsEditorColorRegistry.js';
53
+ import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js';
54
+ import { registerNavigableContainer } from '../../../browser/actions/widgetNavigationCommands.js';
55
+ import { setupCustomHover } from '../../../../base/browser/ui/hover/updatableHoverWidget.js';
56
+ import { getDefaultHoverDelegate } from '../../../../base/browser/ui/hover/hoverDelegateFactory.js';
57
+ var KeybindingsEditor_1, ActionsColumnRenderer_1, SourceColumnRenderer_1, WhenColumnRenderer_1;
58
+ const $ = $$1;
59
+ let KeybindingsEditor = class KeybindingsEditor extends EditorPane {
60
+ static { KeybindingsEditor_1 = this; }
61
+ static { this.ID = 'workbench.editor.keybindings'; }
62
+ constructor(group, telemetryService, themeService, keybindingsService, contextMenuService, keybindingEditingService, contextKeyService, notificationService, clipboardService, instantiationService, editorService, storageService, configurationService) {
63
+ super(KeybindingsEditor_1.ID, group, telemetryService, themeService, storageService);
64
+ this.keybindingsService = keybindingsService;
65
+ this.contextMenuService = contextMenuService;
66
+ this.keybindingEditingService = keybindingEditingService;
67
+ this.contextKeyService = contextKeyService;
68
+ this.notificationService = notificationService;
69
+ this.clipboardService = clipboardService;
70
+ this.instantiationService = instantiationService;
71
+ this.editorService = editorService;
72
+ this.configurationService = configurationService;
73
+ this._onDefineWhenExpression = this._register(( new Emitter()));
74
+ this.onDefineWhenExpression = this._onDefineWhenExpression.event;
75
+ this._onRejectWhenExpression = this._register(( new Emitter()));
76
+ this.onRejectWhenExpression = this._onRejectWhenExpression.event;
77
+ this._onAcceptWhenExpression = this._register(( new Emitter()));
78
+ this.onAcceptWhenExpression = this._onAcceptWhenExpression.event;
79
+ this._onLayout = this._register(( new Emitter()));
80
+ this.onLayout = this._onLayout.event;
81
+ this.keybindingsEditorModel = null;
82
+ this.unAssignedKeybindingItemToRevealAndFocus = null;
83
+ this.tableEntries = [];
84
+ this.dimension = null;
85
+ this.latestEmptyFilters = [];
86
+ this.delayedFiltering = ( new Delayer(300));
87
+ this._register(keybindingsService.onDidUpdateKeybindings(() => this.render(!!this.keybindingFocusContextKey.get())));
88
+ this.keybindingsEditorContextKey = CONTEXT_KEYBINDINGS_EDITOR.bindTo(this.contextKeyService);
89
+ this.searchFocusContextKey = CONTEXT_KEYBINDINGS_SEARCH_FOCUS.bindTo(this.contextKeyService);
90
+ this.keybindingFocusContextKey = CONTEXT_KEYBINDING_FOCUS.bindTo(this.contextKeyService);
91
+ this.searchHistoryDelayer = ( new Delayer(500));
92
+ this.recordKeysAction = ( new Action(KEYBINDINGS_EDITOR_COMMAND_RECORD_SEARCH_KEYS, ( localizeWithPath(
93
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
94
+ 'recordKeysLabel',
95
+ "Record Keys"
96
+ )), ThemeIcon.asClassName(keybindingsRecordKeysIcon)));
97
+ this.recordKeysAction.checked = false;
98
+ this.sortByPrecedenceAction = ( new Action(KEYBINDINGS_EDITOR_COMMAND_SORTBY_PRECEDENCE, ( localizeWithPath(
99
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
100
+ 'sortByPrecedeneLabel',
101
+ "Sort by Precedence (Highest first)"
102
+ )), ThemeIcon.asClassName(keybindingsSortIcon)));
103
+ this.sortByPrecedenceAction.checked = false;
104
+ this.overflowWidgetsDomNode = $('.keybindings-overflow-widgets-container.monaco-editor');
105
+ }
106
+ create(parent) {
107
+ super.create(parent);
108
+ this._register(registerNavigableContainer({
109
+ focusNotifiers: [this],
110
+ focusNextWidget: () => {
111
+ if (this.searchWidget.hasFocus()) {
112
+ this.focusKeybindings();
113
+ }
114
+ },
115
+ focusPreviousWidget: () => {
116
+ if (!this.searchWidget.hasFocus()) {
117
+ this.focusSearch();
118
+ }
119
+ }
120
+ }));
121
+ }
122
+ createEditor(parent) {
123
+ const keybindingsEditorElement = append(parent, $('div', { class: 'keybindings-editor' }));
124
+ this.createAriaLabelElement(keybindingsEditorElement);
125
+ this.createOverlayContainer(keybindingsEditorElement);
126
+ this.createHeader(keybindingsEditorElement);
127
+ this.createBody(keybindingsEditorElement);
128
+ }
129
+ setInput(input, options, context, token) {
130
+ this.keybindingsEditorContextKey.set(true);
131
+ return super.setInput(input, options, context, token)
132
+ .then(() => this.render(!!(options && options.preserveFocus)));
133
+ }
134
+ clearInput() {
135
+ super.clearInput();
136
+ this.keybindingsEditorContextKey.reset();
137
+ this.keybindingFocusContextKey.reset();
138
+ }
139
+ layout(dimension) {
140
+ this.dimension = dimension;
141
+ this.layoutSearchWidget(dimension);
142
+ this.overlayContainer.style.width = dimension.width + 'px';
143
+ this.overlayContainer.style.height = dimension.height + 'px';
144
+ this.defineKeybindingWidget.layout(this.dimension);
145
+ this.layoutKeybindingsTable();
146
+ this._onLayout.fire();
147
+ }
148
+ focus() {
149
+ super.focus();
150
+ const activeKeybindingEntry = this.activeKeybindingEntry;
151
+ if (activeKeybindingEntry) {
152
+ this.selectEntry(activeKeybindingEntry);
153
+ }
154
+ else if (!isIOS) {
155
+ this.searchWidget.focus();
156
+ }
157
+ }
158
+ get activeKeybindingEntry() {
159
+ const focusedElement = this.keybindingsTable.getFocusedElements()[0];
160
+ return focusedElement && focusedElement.templateId === KEYBINDING_ENTRY_TEMPLATE_ID ? focusedElement : null;
161
+ }
162
+ async defineKeybinding(keybindingEntry, add) {
163
+ this.selectEntry(keybindingEntry);
164
+ this.showOverlayContainer();
165
+ try {
166
+ const key = await this.defineKeybindingWidget.define();
167
+ if (key) {
168
+ await this.updateKeybinding(keybindingEntry, key, keybindingEntry.keybindingItem.when, add);
169
+ }
170
+ }
171
+ catch (error) {
172
+ this.onKeybindingEditingError(error);
173
+ }
174
+ finally {
175
+ this.hideOverlayContainer();
176
+ this.selectEntry(keybindingEntry);
177
+ }
178
+ }
179
+ defineWhenExpression(keybindingEntry) {
180
+ if (keybindingEntry.keybindingItem.keybinding) {
181
+ this.selectEntry(keybindingEntry);
182
+ this._onDefineWhenExpression.fire(keybindingEntry);
183
+ }
184
+ }
185
+ rejectWhenExpression(keybindingEntry) {
186
+ this._onRejectWhenExpression.fire(keybindingEntry);
187
+ }
188
+ acceptWhenExpression(keybindingEntry) {
189
+ this._onAcceptWhenExpression.fire(keybindingEntry);
190
+ }
191
+ async updateKeybinding(keybindingEntry, key, when, add) {
192
+ const currentKey = keybindingEntry.keybindingItem.keybinding ? keybindingEntry.keybindingItem.keybinding.getUserSettingsLabel() : '';
193
+ if (currentKey !== key || keybindingEntry.keybindingItem.when !== when) {
194
+ if (add) {
195
+ await this.keybindingEditingService.addKeybinding(keybindingEntry.keybindingItem.keybindingItem, key, when || undefined);
196
+ }
197
+ else {
198
+ await this.keybindingEditingService.editKeybinding(keybindingEntry.keybindingItem.keybindingItem, key, when || undefined);
199
+ }
200
+ if (!keybindingEntry.keybindingItem.keybinding) {
201
+ this.unAssignedKeybindingItemToRevealAndFocus = keybindingEntry;
202
+ }
203
+ }
204
+ }
205
+ async removeKeybinding(keybindingEntry) {
206
+ this.selectEntry(keybindingEntry);
207
+ if (keybindingEntry.keybindingItem.keybinding) {
208
+ try {
209
+ await this.keybindingEditingService.removeKeybinding(keybindingEntry.keybindingItem.keybindingItem);
210
+ this.focus();
211
+ }
212
+ catch (error) {
213
+ this.onKeybindingEditingError(error);
214
+ this.selectEntry(keybindingEntry);
215
+ }
216
+ }
217
+ }
218
+ async resetKeybinding(keybindingEntry) {
219
+ this.selectEntry(keybindingEntry);
220
+ try {
221
+ await this.keybindingEditingService.resetKeybinding(keybindingEntry.keybindingItem.keybindingItem);
222
+ if (!keybindingEntry.keybindingItem.keybinding) {
223
+ this.unAssignedKeybindingItemToRevealAndFocus = keybindingEntry;
224
+ }
225
+ this.selectEntry(keybindingEntry);
226
+ }
227
+ catch (error) {
228
+ this.onKeybindingEditingError(error);
229
+ this.selectEntry(keybindingEntry);
230
+ }
231
+ }
232
+ async copyKeybinding(keybinding) {
233
+ this.selectEntry(keybinding);
234
+ const userFriendlyKeybinding = {
235
+ key: keybinding.keybindingItem.keybinding ? keybinding.keybindingItem.keybinding.getUserSettingsLabel() || '' : '',
236
+ command: keybinding.keybindingItem.command
237
+ };
238
+ if (keybinding.keybindingItem.when) {
239
+ userFriendlyKeybinding.when = keybinding.keybindingItem.when;
240
+ }
241
+ await this.clipboardService.writeText(JSON.stringify(userFriendlyKeybinding, null, ' '));
242
+ }
243
+ async copyKeybindingCommand(keybinding) {
244
+ this.selectEntry(keybinding);
245
+ await this.clipboardService.writeText(keybinding.keybindingItem.command);
246
+ }
247
+ async copyKeybindingCommandTitle(keybinding) {
248
+ this.selectEntry(keybinding);
249
+ await this.clipboardService.writeText(keybinding.keybindingItem.commandLabel);
250
+ }
251
+ focusSearch() {
252
+ this.searchWidget.focus();
253
+ }
254
+ search(filter) {
255
+ this.focusSearch();
256
+ this.searchWidget.setValue(filter);
257
+ this.selectEntry(0);
258
+ }
259
+ clearSearchResults() {
260
+ this.searchWidget.clear();
261
+ }
262
+ showSimilarKeybindings(keybindingEntry) {
263
+ const value = `"${keybindingEntry.keybindingItem.keybinding.getAriaLabel()}"`;
264
+ if (value !== this.searchWidget.getValue()) {
265
+ this.searchWidget.setValue(value);
266
+ }
267
+ }
268
+ createAriaLabelElement(parent) {
269
+ this.ariaLabelElement = append(parent, $$1(''));
270
+ this.ariaLabelElement.setAttribute('id', 'keybindings-editor-aria-label-element');
271
+ this.ariaLabelElement.setAttribute('aria-live', 'assertive');
272
+ }
273
+ createOverlayContainer(parent) {
274
+ this.overlayContainer = append(parent, $('.overlay-container'));
275
+ this.overlayContainer.style.position = 'absolute';
276
+ this.overlayContainer.style.zIndex = '40';
277
+ this.defineKeybindingWidget = this._register(this.instantiationService.createInstance(DefineKeybindingWidget, this.overlayContainer));
278
+ this._register(this.defineKeybindingWidget.onDidChange(keybindingStr => this.defineKeybindingWidget.printExisting(this.keybindingsEditorModel.fetch(`"${keybindingStr}"`).length)));
279
+ this._register(this.defineKeybindingWidget.onShowExistingKeybidings(keybindingStr => this.searchWidget.setValue(`"${keybindingStr}"`)));
280
+ this.hideOverlayContainer();
281
+ }
282
+ showOverlayContainer() {
283
+ this.overlayContainer.style.display = 'block';
284
+ }
285
+ hideOverlayContainer() {
286
+ this.overlayContainer.style.display = 'none';
287
+ }
288
+ createHeader(parent) {
289
+ this.headerContainer = append(parent, $('.keybindings-header'));
290
+ const fullTextSearchPlaceholder = ( localizeWithPath(
291
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
292
+ 'SearchKeybindings.FullTextSearchPlaceholder',
293
+ "Type to search in keybindings"
294
+ ));
295
+ const keybindingsSearchPlaceholder = ( localizeWithPath(
296
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
297
+ 'SearchKeybindings.KeybindingsSearchPlaceholder',
298
+ "Recording Keys. Press Escape to exit"
299
+ ));
300
+ const clearInputAction = ( new Action(KEYBINDINGS_EDITOR_COMMAND_CLEAR_SEARCH_RESULTS, ( localizeWithPath(
301
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
302
+ 'clearInput',
303
+ "Clear Keybindings Search Input"
304
+ )), ThemeIcon.asClassName(preferencesClearInputIcon), false, async () => this.clearSearchResults()));
305
+ const searchContainer = append(this.headerContainer, $('.search-container'));
306
+ this.searchWidget = this._register(this.instantiationService.createInstance(KeybindingsSearchWidget, searchContainer, {
307
+ ariaLabel: fullTextSearchPlaceholder,
308
+ placeholder: fullTextSearchPlaceholder,
309
+ focusKey: this.searchFocusContextKey,
310
+ ariaLabelledBy: 'keybindings-editor-aria-label-element',
311
+ recordEnter: true,
312
+ quoteRecordedKeys: true,
313
+ history: this.getMemento(0 , 0 )['searchHistory'] || [],
314
+ inputBoxStyles: getInputBoxStyle({
315
+ inputBorder: settingsTextInputBorder
316
+ })
317
+ }));
318
+ this._register(this.searchWidget.onDidChange(searchValue => {
319
+ clearInputAction.enabled = !!searchValue;
320
+ this.delayedFiltering.trigger(() => this.filterKeybindings());
321
+ this.updateSearchOptions();
322
+ }));
323
+ this._register(this.searchWidget.onEscape(() => this.recordKeysAction.checked = false));
324
+ this.actionsContainer = append(searchContainer, $$1('.keybindings-search-actions-container'));
325
+ const recordingBadge = this.createRecordingBadge(this.actionsContainer);
326
+ this._register(this.sortByPrecedenceAction.onDidChange(e => {
327
+ if (e.checked !== undefined) {
328
+ this.renderKeybindingsEntries(false);
329
+ }
330
+ this.updateSearchOptions();
331
+ }));
332
+ this._register(this.recordKeysAction.onDidChange(e => {
333
+ if (e.checked !== undefined) {
334
+ recordingBadge.classList.toggle('disabled', !e.checked);
335
+ if (e.checked) {
336
+ this.searchWidget.inputBox.setPlaceHolder(keybindingsSearchPlaceholder);
337
+ this.searchWidget.inputBox.setAriaLabel(keybindingsSearchPlaceholder);
338
+ this.searchWidget.startRecordingKeys();
339
+ this.searchWidget.focus();
340
+ }
341
+ else {
342
+ this.searchWidget.inputBox.setPlaceHolder(fullTextSearchPlaceholder);
343
+ this.searchWidget.inputBox.setAriaLabel(fullTextSearchPlaceholder);
344
+ this.searchWidget.stopRecordingKeys();
345
+ this.searchWidget.focus();
346
+ }
347
+ this.updateSearchOptions();
348
+ }
349
+ }));
350
+ const actions = [this.recordKeysAction, this.sortByPrecedenceAction, clearInputAction];
351
+ const toolBar = this._register(( new ToolBar(this.actionsContainer, this.contextMenuService, {
352
+ actionViewItemProvider: (action, options) => {
353
+ if (action.id === this.sortByPrecedenceAction.id || action.id === this.recordKeysAction.id) {
354
+ return ( new ToggleActionViewItem(
355
+ null,
356
+ action,
357
+ { ...options, keybinding: this.keybindingsService.lookupKeybinding(action.id)?.getLabel(), toggleStyles: defaultToggleStyles }
358
+ ));
359
+ }
360
+ return undefined;
361
+ },
362
+ getKeyBinding: action => this.keybindingsService.lookupKeybinding(action.id)
363
+ })));
364
+ toolBar.setActions(actions);
365
+ this._register(this.keybindingsService.onDidUpdateKeybindings(() => toolBar.setActions(actions)));
366
+ }
367
+ updateSearchOptions() {
368
+ const keybindingsEditorInput = this.input;
369
+ if (keybindingsEditorInput) {
370
+ keybindingsEditorInput.searchOptions = {
371
+ searchValue: this.searchWidget.getValue(),
372
+ recordKeybindings: !!this.recordKeysAction.checked,
373
+ sortByPrecedence: !!this.sortByPrecedenceAction.checked
374
+ };
375
+ }
376
+ }
377
+ createRecordingBadge(container) {
378
+ const recordingBadge = append(container, $$1('.recording-badge.monaco-count-badge.long.disabled'));
379
+ recordingBadge.textContent = ( localizeWithPath(
380
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
381
+ 'recording',
382
+ "Recording Keys"
383
+ ));
384
+ recordingBadge.style.backgroundColor = asCssVariable(badgeBackground);
385
+ recordingBadge.style.color = asCssVariable(badgeForeground);
386
+ recordingBadge.style.border = `1px solid ${asCssVariable(contrastBorder)}`;
387
+ return recordingBadge;
388
+ }
389
+ layoutSearchWidget(dimension) {
390
+ this.searchWidget.layout(dimension);
391
+ this.headerContainer.classList.toggle('small', dimension.width < 400);
392
+ this.searchWidget.inputBox.inputElement.style.paddingRight = `${getTotalWidth(this.actionsContainer) + 12}px`;
393
+ }
394
+ createBody(parent) {
395
+ const bodyContainer = append(parent, $('.keybindings-body'));
396
+ this.createTable(bodyContainer);
397
+ }
398
+ createTable(parent) {
399
+ this.keybindingsTableContainer = append(parent, $('.keybindings-table-container'));
400
+ this.keybindingsTable = this._register(this.instantiationService.createInstance(WorkbenchTable, 'KeybindingsEditor', this.keybindingsTableContainer, ( new Delegate()), [
401
+ {
402
+ label: '',
403
+ tooltip: '',
404
+ weight: 0,
405
+ minimumWidth: 40,
406
+ maximumWidth: 40,
407
+ templateId: ActionsColumnRenderer.TEMPLATE_ID,
408
+ project(row) { return row; }
409
+ },
410
+ {
411
+ label: ( localizeWithPath(
412
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
413
+ 'command',
414
+ "Command"
415
+ )),
416
+ tooltip: '',
417
+ weight: 0.3,
418
+ templateId: CommandColumnRenderer.TEMPLATE_ID,
419
+ project(row) { return row; }
420
+ },
421
+ {
422
+ label: ( localizeWithPath(
423
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
424
+ 'keybinding',
425
+ "Keybinding"
426
+ )),
427
+ tooltip: '',
428
+ weight: 0.2,
429
+ templateId: KeybindingColumnRenderer.TEMPLATE_ID,
430
+ project(row) { return row; }
431
+ },
432
+ {
433
+ label: ( localizeWithPath(
434
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
435
+ 'when',
436
+ "When"
437
+ )),
438
+ tooltip: '',
439
+ weight: 0.35,
440
+ templateId: WhenColumnRenderer.TEMPLATE_ID,
441
+ project(row) { return row; }
442
+ },
443
+ {
444
+ label: ( localizeWithPath(
445
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
446
+ 'source',
447
+ "Source"
448
+ )),
449
+ tooltip: '',
450
+ weight: 0.15,
451
+ templateId: SourceColumnRenderer.TEMPLATE_ID,
452
+ project(row) { return row; }
453
+ },
454
+ ], [
455
+ this.instantiationService.createInstance(ActionsColumnRenderer, this),
456
+ this.instantiationService.createInstance(CommandColumnRenderer),
457
+ this.instantiationService.createInstance(KeybindingColumnRenderer),
458
+ this.instantiationService.createInstance(WhenColumnRenderer, this),
459
+ this.instantiationService.createInstance(SourceColumnRenderer),
460
+ ], {
461
+ identityProvider: { getId: (e) => e.id },
462
+ horizontalScrolling: false,
463
+ accessibilityProvider: ( new AccessibilityProvider(this.configurationService)),
464
+ keyboardNavigationLabelProvider: { getKeyboardNavigationLabel: (e) => e.keybindingItem.commandLabel || e.keybindingItem.command },
465
+ overrideStyles: {
466
+ listBackground: editorBackground
467
+ },
468
+ multipleSelectionSupport: false,
469
+ setRowLineHeight: false,
470
+ openOnSingleClick: false,
471
+ transformOptimization: false
472
+ }));
473
+ this._register(this.keybindingsTable.onContextMenu(e => this.onContextMenu(e)));
474
+ this._register(this.keybindingsTable.onDidChangeFocus(e => this.onFocusChange()));
475
+ this._register(this.keybindingsTable.onDidFocus(() => {
476
+ this.keybindingsTable.getHTMLElement().classList.add('focused');
477
+ this.onFocusChange();
478
+ }));
479
+ this._register(this.keybindingsTable.onDidBlur(() => {
480
+ this.keybindingsTable.getHTMLElement().classList.remove('focused');
481
+ this.keybindingFocusContextKey.reset();
482
+ }));
483
+ this._register(this.keybindingsTable.onDidOpen((e) => {
484
+ if (e.browserEvent?.defaultPrevented) {
485
+ return;
486
+ }
487
+ const activeKeybindingEntry = this.activeKeybindingEntry;
488
+ if (activeKeybindingEntry) {
489
+ this.defineKeybinding(activeKeybindingEntry, false);
490
+ }
491
+ }));
492
+ append(this.keybindingsTableContainer, this.overflowWidgetsDomNode);
493
+ }
494
+ async render(preserveFocus) {
495
+ if (this.input) {
496
+ const input = this.input;
497
+ this.keybindingsEditorModel = await input.resolve();
498
+ await this.keybindingsEditorModel.resolve(this.getActionsLabels());
499
+ this.renderKeybindingsEntries(false, preserveFocus);
500
+ if (input.searchOptions) {
501
+ this.recordKeysAction.checked = input.searchOptions.recordKeybindings;
502
+ this.sortByPrecedenceAction.checked = input.searchOptions.sortByPrecedence;
503
+ this.searchWidget.setValue(input.searchOptions.searchValue);
504
+ }
505
+ else {
506
+ this.updateSearchOptions();
507
+ }
508
+ }
509
+ }
510
+ getActionsLabels() {
511
+ const actionsLabels = ( new Map());
512
+ for (const editorAction of EditorExtensionsRegistry.getEditorActions()) {
513
+ actionsLabels.set(editorAction.id, editorAction.label);
514
+ }
515
+ for (const menuItem of MenuRegistry.getMenuItems(MenuId.CommandPalette)) {
516
+ if (isIMenuItem(menuItem)) {
517
+ const title = typeof menuItem.command.title === 'string' ? menuItem.command.title : menuItem.command.title.value;
518
+ const category = menuItem.command.category ? typeof menuItem.command.category === 'string' ? menuItem.command.category : menuItem.command.category.value : undefined;
519
+ actionsLabels.set(menuItem.command.id, category ? `${category}: ${title}` : title);
520
+ }
521
+ }
522
+ return actionsLabels;
523
+ }
524
+ filterKeybindings() {
525
+ this.renderKeybindingsEntries(this.searchWidget.hasFocus());
526
+ this.searchHistoryDelayer.trigger(() => {
527
+ this.searchWidget.inputBox.addToHistory();
528
+ this.getMemento(0 , 0 )['searchHistory'] = this.searchWidget.inputBox.getHistory();
529
+ this.saveState();
530
+ });
531
+ }
532
+ clearKeyboardShortcutSearchHistory() {
533
+ this.searchWidget.inputBox.clearHistory();
534
+ this.getMemento(0 , 0 )['searchHistory'] = this.searchWidget.inputBox.getHistory();
535
+ this.saveState();
536
+ }
537
+ renderKeybindingsEntries(reset, preserveFocus) {
538
+ if (this.keybindingsEditorModel) {
539
+ const filter = this.searchWidget.getValue();
540
+ const keybindingsEntries = this.keybindingsEditorModel.fetch(filter, this.sortByPrecedenceAction.checked);
541
+ this.ariaLabelElement.setAttribute('aria-label', this.getAriaLabel(keybindingsEntries));
542
+ if (keybindingsEntries.length === 0) {
543
+ this.latestEmptyFilters.push(filter);
544
+ }
545
+ const currentSelectedIndex = this.keybindingsTable.getSelection()[0];
546
+ this.tableEntries = keybindingsEntries;
547
+ this.keybindingsTable.splice(0, this.keybindingsTable.length, this.tableEntries);
548
+ this.layoutKeybindingsTable();
549
+ if (reset) {
550
+ this.keybindingsTable.setSelection([]);
551
+ this.keybindingsTable.setFocus([]);
552
+ }
553
+ else {
554
+ if (this.unAssignedKeybindingItemToRevealAndFocus) {
555
+ const index = this.getNewIndexOfUnassignedKeybinding(this.unAssignedKeybindingItemToRevealAndFocus);
556
+ if (index !== -1) {
557
+ this.keybindingsTable.reveal(index, 0.2);
558
+ this.selectEntry(index);
559
+ }
560
+ this.unAssignedKeybindingItemToRevealAndFocus = null;
561
+ }
562
+ else if (currentSelectedIndex !== -1 && currentSelectedIndex < this.tableEntries.length) {
563
+ this.selectEntry(currentSelectedIndex, preserveFocus);
564
+ }
565
+ else if (this.editorService.activeEditorPane === this && !preserveFocus) {
566
+ this.focus();
567
+ }
568
+ }
569
+ }
570
+ }
571
+ getAriaLabel(keybindingsEntries) {
572
+ if (this.sortByPrecedenceAction.checked) {
573
+ return ( localizeWithPath(
574
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
575
+ 'show sorted keybindings',
576
+ "Showing {0} Keybindings in precedence order",
577
+ keybindingsEntries.length
578
+ ));
579
+ }
580
+ else {
581
+ return ( localizeWithPath(
582
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
583
+ 'show keybindings',
584
+ "Showing {0} Keybindings in alphabetical order",
585
+ keybindingsEntries.length
586
+ ));
587
+ }
588
+ }
589
+ layoutKeybindingsTable() {
590
+ if (!this.dimension) {
591
+ return;
592
+ }
593
+ const tableHeight = this.dimension.height - ((getDomNodePagePosition(this.headerContainer).height + 12) );
594
+ this.keybindingsTableContainer.style.height = `${tableHeight}px`;
595
+ this.keybindingsTable.layout(tableHeight);
596
+ }
597
+ getIndexOf(listEntry) {
598
+ const index = this.tableEntries.indexOf(listEntry);
599
+ if (index === -1) {
600
+ for (let i = 0; i < this.tableEntries.length; i++) {
601
+ if (this.tableEntries[i].id === listEntry.id) {
602
+ return i;
603
+ }
604
+ }
605
+ }
606
+ return index;
607
+ }
608
+ getNewIndexOfUnassignedKeybinding(unassignedKeybinding) {
609
+ for (let index = 0; index < this.tableEntries.length; index++) {
610
+ const entry = this.tableEntries[index];
611
+ if (entry.templateId === KEYBINDING_ENTRY_TEMPLATE_ID) {
612
+ const keybindingItemEntry = entry;
613
+ if (keybindingItemEntry.keybindingItem.command === unassignedKeybinding.keybindingItem.command) {
614
+ return index;
615
+ }
616
+ }
617
+ }
618
+ return -1;
619
+ }
620
+ selectEntry(keybindingItemEntry, focus = true) {
621
+ const index = typeof keybindingItemEntry === 'number' ? keybindingItemEntry : this.getIndexOf(keybindingItemEntry);
622
+ if (index !== -1 && index < this.keybindingsTable.length) {
623
+ if (focus) {
624
+ this.keybindingsTable.domFocus();
625
+ this.keybindingsTable.setFocus([index]);
626
+ }
627
+ this.keybindingsTable.setSelection([index]);
628
+ }
629
+ }
630
+ focusKeybindings() {
631
+ this.keybindingsTable.domFocus();
632
+ const currentFocusIndices = this.keybindingsTable.getFocus();
633
+ this.keybindingsTable.setFocus([currentFocusIndices.length ? currentFocusIndices[0] : 0]);
634
+ }
635
+ selectKeybinding(keybindingItemEntry) {
636
+ this.selectEntry(keybindingItemEntry);
637
+ }
638
+ recordSearchKeys() {
639
+ this.recordKeysAction.checked = true;
640
+ }
641
+ toggleSortByPrecedence() {
642
+ this.sortByPrecedenceAction.checked = !this.sortByPrecedenceAction.checked;
643
+ }
644
+ onContextMenu(e) {
645
+ if (!e.element) {
646
+ return;
647
+ }
648
+ if (e.element.templateId === KEYBINDING_ENTRY_TEMPLATE_ID) {
649
+ const keybindingItemEntry = e.element;
650
+ this.selectEntry(keybindingItemEntry);
651
+ this.contextMenuService.showContextMenu({
652
+ getAnchor: () => e.anchor,
653
+ getActions: () => [
654
+ this.createCopyAction(keybindingItemEntry),
655
+ this.createCopyCommandAction(keybindingItemEntry),
656
+ this.createCopyCommandTitleAction(keybindingItemEntry),
657
+ ( new Separator()),
658
+ ...(keybindingItemEntry.keybindingItem.keybinding
659
+ ? [this.createDefineKeybindingAction(keybindingItemEntry), this.createAddKeybindingAction(keybindingItemEntry)]
660
+ : [this.createDefineKeybindingAction(keybindingItemEntry)]),
661
+ ( new Separator()),
662
+ this.createRemoveAction(keybindingItemEntry),
663
+ this.createResetAction(keybindingItemEntry),
664
+ ( new Separator()),
665
+ this.createDefineWhenExpressionAction(keybindingItemEntry),
666
+ ( new Separator()),
667
+ this.createShowConflictsAction(keybindingItemEntry)
668
+ ]
669
+ });
670
+ }
671
+ }
672
+ onFocusChange() {
673
+ this.keybindingFocusContextKey.reset();
674
+ const element = this.keybindingsTable.getFocusedElements()[0];
675
+ if (!element) {
676
+ return;
677
+ }
678
+ if (element.templateId === KEYBINDING_ENTRY_TEMPLATE_ID) {
679
+ this.keybindingFocusContextKey.set(true);
680
+ }
681
+ }
682
+ createDefineKeybindingAction(keybindingItemEntry) {
683
+ return {
684
+ label: keybindingItemEntry.keybindingItem.keybinding ? ( localizeWithPath(
685
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
686
+ 'changeLabel',
687
+ "Change Keybinding..."
688
+ )) : ( localizeWithPath(
689
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
690
+ 'addLabel',
691
+ "Add Keybinding..."
692
+ )),
693
+ enabled: true,
694
+ id: KEYBINDINGS_EDITOR_COMMAND_DEFINE,
695
+ run: () => this.defineKeybinding(keybindingItemEntry, false)
696
+ };
697
+ }
698
+ createAddKeybindingAction(keybindingItemEntry) {
699
+ return {
700
+ label: ( localizeWithPath(
701
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
702
+ 'addLabel',
703
+ "Add Keybinding..."
704
+ )),
705
+ enabled: true,
706
+ id: KEYBINDINGS_EDITOR_COMMAND_ADD,
707
+ run: () => this.defineKeybinding(keybindingItemEntry, true)
708
+ };
709
+ }
710
+ createDefineWhenExpressionAction(keybindingItemEntry) {
711
+ return {
712
+ label: ( localizeWithPath(
713
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
714
+ 'editWhen',
715
+ "Change When Expression"
716
+ )),
717
+ enabled: !!keybindingItemEntry.keybindingItem.keybinding,
718
+ id: KEYBINDINGS_EDITOR_COMMAND_DEFINE_WHEN,
719
+ run: () => this.defineWhenExpression(keybindingItemEntry)
720
+ };
721
+ }
722
+ createRemoveAction(keybindingItem) {
723
+ return {
724
+ label: ( localizeWithPath(
725
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
726
+ 'removeLabel',
727
+ "Remove Keybinding"
728
+ )),
729
+ enabled: !!keybindingItem.keybindingItem.keybinding,
730
+ id: KEYBINDINGS_EDITOR_COMMAND_REMOVE,
731
+ run: () => this.removeKeybinding(keybindingItem)
732
+ };
733
+ }
734
+ createResetAction(keybindingItem) {
735
+ return {
736
+ label: ( localizeWithPath(
737
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
738
+ 'resetLabel',
739
+ "Reset Keybinding"
740
+ )),
741
+ enabled: !keybindingItem.keybindingItem.keybindingItem.isDefault,
742
+ id: KEYBINDINGS_EDITOR_COMMAND_RESET,
743
+ run: () => this.resetKeybinding(keybindingItem)
744
+ };
745
+ }
746
+ createShowConflictsAction(keybindingItem) {
747
+ return {
748
+ label: ( localizeWithPath(
749
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
750
+ 'showSameKeybindings',
751
+ "Show Same Keybindings"
752
+ )),
753
+ enabled: !!keybindingItem.keybindingItem.keybinding,
754
+ id: KEYBINDINGS_EDITOR_COMMAND_SHOW_SIMILAR,
755
+ run: () => this.showSimilarKeybindings(keybindingItem)
756
+ };
757
+ }
758
+ createCopyAction(keybindingItem) {
759
+ return {
760
+ label: ( localizeWithPath(
761
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
762
+ 'copyLabel',
763
+ "Copy"
764
+ )),
765
+ enabled: true,
766
+ id: KEYBINDINGS_EDITOR_COMMAND_COPY,
767
+ run: () => this.copyKeybinding(keybindingItem)
768
+ };
769
+ }
770
+ createCopyCommandAction(keybinding) {
771
+ return {
772
+ label: ( localizeWithPath(
773
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
774
+ 'copyCommandLabel',
775
+ "Copy Command ID"
776
+ )),
777
+ enabled: true,
778
+ id: KEYBINDINGS_EDITOR_COMMAND_COPY_COMMAND,
779
+ run: () => this.copyKeybindingCommand(keybinding)
780
+ };
781
+ }
782
+ createCopyCommandTitleAction(keybinding) {
783
+ return {
784
+ label: ( localizeWithPath(
785
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
786
+ 'copyCommandTitleLabel',
787
+ "Copy Command Title"
788
+ )),
789
+ enabled: !!keybinding.keybindingItem.commandLabel,
790
+ id: KEYBINDINGS_EDITOR_COMMAND_COPY_COMMAND_TITLE,
791
+ run: () => this.copyKeybindingCommandTitle(keybinding)
792
+ };
793
+ }
794
+ onKeybindingEditingError(error) {
795
+ this.notificationService.error(typeof error === 'string' ? error : ( localizeWithPath(
796
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
797
+ 'error',
798
+ "Error '{0}' while editing the keybinding. Please open 'keybindings.json' file and check for errors.",
799
+ `${error}`
800
+ )));
801
+ }
802
+ };
803
+ KeybindingsEditor = KeybindingsEditor_1 = ( __decorate([
804
+ ( __param(1, ITelemetryService)),
805
+ ( __param(2, IThemeService)),
806
+ ( __param(3, IKeybindingService)),
807
+ ( __param(4, IContextMenuService)),
808
+ ( __param(5, IKeybindingEditingService)),
809
+ ( __param(6, IContextKeyService)),
810
+ ( __param(7, INotificationService)),
811
+ ( __param(8, IClipboardService)),
812
+ ( __param(9, IInstantiationService)),
813
+ ( __param(10, IEditorService)),
814
+ ( __param(11, IStorageService)),
815
+ ( __param(12, IConfigurationService))
816
+ ], KeybindingsEditor));
817
+ class Delegate {
818
+ constructor() {
819
+ this.headerRowHeight = 30;
820
+ }
821
+ getHeight(element) {
822
+ if (element.templateId === KEYBINDING_ENTRY_TEMPLATE_ID) {
823
+ const commandIdMatched = element.keybindingItem.commandLabel && element.commandIdMatches;
824
+ const commandDefaultLabelMatched = !!element.commandDefaultLabelMatches;
825
+ const extensionIdMatched = !!element.extensionIdMatches;
826
+ if (commandIdMatched && commandDefaultLabelMatched) {
827
+ return 60;
828
+ }
829
+ if (extensionIdMatched || commandIdMatched || commandDefaultLabelMatched) {
830
+ return 40;
831
+ }
832
+ }
833
+ return 24;
834
+ }
835
+ }
836
+ let ActionsColumnRenderer = class ActionsColumnRenderer {
837
+ static { ActionsColumnRenderer_1 = this; }
838
+ static { this.TEMPLATE_ID = 'actions'; }
839
+ constructor(keybindingsEditor, keybindingsService) {
840
+ this.keybindingsEditor = keybindingsEditor;
841
+ this.keybindingsService = keybindingsService;
842
+ this.templateId = ActionsColumnRenderer_1.TEMPLATE_ID;
843
+ }
844
+ renderTemplate(container) {
845
+ const element = append(container, $('.actions'));
846
+ const actionBar = ( new ActionBar(element));
847
+ return { actionBar };
848
+ }
849
+ renderElement(keybindingItemEntry, index, templateData, height) {
850
+ templateData.actionBar.clear();
851
+ const actions = [];
852
+ if (keybindingItemEntry.keybindingItem.keybinding) {
853
+ actions.push(this.createEditAction(keybindingItemEntry));
854
+ }
855
+ else {
856
+ actions.push(this.createAddAction(keybindingItemEntry));
857
+ }
858
+ templateData.actionBar.push(actions, { icon: true });
859
+ }
860
+ createEditAction(keybindingItemEntry) {
861
+ const keybinding = this.keybindingsService.lookupKeybinding(KEYBINDINGS_EDITOR_COMMAND_DEFINE);
862
+ return {
863
+ class: ThemeIcon.asClassName(keybindingsEditIcon),
864
+ enabled: true,
865
+ id: 'editKeybinding',
866
+ tooltip: keybinding ? ( localizeWithPath(
867
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
868
+ 'editKeybindingLabelWithKey',
869
+ "Change Keybinding {0}",
870
+ `(${keybinding.getLabel()})`
871
+ )) : ( localizeWithPath(
872
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
873
+ 'editKeybindingLabel',
874
+ "Change Keybinding"
875
+ )),
876
+ run: () => this.keybindingsEditor.defineKeybinding(keybindingItemEntry, false)
877
+ };
878
+ }
879
+ createAddAction(keybindingItemEntry) {
880
+ const keybinding = this.keybindingsService.lookupKeybinding(KEYBINDINGS_EDITOR_COMMAND_DEFINE);
881
+ return {
882
+ class: ThemeIcon.asClassName(keybindingsAddIcon),
883
+ enabled: true,
884
+ id: 'addKeybinding',
885
+ tooltip: keybinding ? ( localizeWithPath(
886
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
887
+ 'addKeybindingLabelWithKey',
888
+ "Add Keybinding {0}",
889
+ `(${keybinding.getLabel()})`
890
+ )) : ( localizeWithPath(
891
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
892
+ 'addKeybindingLabel',
893
+ "Add Keybinding"
894
+ )),
895
+ run: () => this.keybindingsEditor.defineKeybinding(keybindingItemEntry, false)
896
+ };
897
+ }
898
+ disposeTemplate(templateData) {
899
+ templateData.actionBar.dispose();
900
+ }
901
+ };
902
+ ActionsColumnRenderer = ActionsColumnRenderer_1 = ( __decorate([
903
+ ( __param(1, IKeybindingService))
904
+ ], ActionsColumnRenderer));
905
+ class CommandColumnRenderer {
906
+ constructor() {
907
+ this.templateId = CommandColumnRenderer.TEMPLATE_ID;
908
+ }
909
+ static { this.TEMPLATE_ID = 'commands'; }
910
+ renderTemplate(container) {
911
+ const commandColumn = append(container, $('.command'));
912
+ const commandColumnHover = setupCustomHover(getDefaultHoverDelegate('mouse'), commandColumn, '');
913
+ const commandLabelContainer = append(commandColumn, $('.command-label'));
914
+ const commandLabel = ( new HighlightedLabel(commandLabelContainer));
915
+ const commandDefaultLabelContainer = append(commandColumn, $('.command-default-label'));
916
+ const commandDefaultLabel = ( new HighlightedLabel(commandDefaultLabelContainer));
917
+ const commandIdLabelContainer = append(commandColumn, $('.command-id.code'));
918
+ const commandIdLabel = ( new HighlightedLabel(commandIdLabelContainer));
919
+ return { commandColumn, commandColumnHover, commandLabelContainer, commandLabel, commandDefaultLabelContainer, commandDefaultLabel, commandIdLabelContainer, commandIdLabel };
920
+ }
921
+ renderElement(keybindingItemEntry, index, templateData, height) {
922
+ const keybindingItem = keybindingItemEntry.keybindingItem;
923
+ const commandIdMatched = !!(keybindingItem.commandLabel && keybindingItemEntry.commandIdMatches);
924
+ const commandDefaultLabelMatched = !!keybindingItemEntry.commandDefaultLabelMatches;
925
+ templateData.commandColumn.classList.toggle('vertical-align-column', commandIdMatched || commandDefaultLabelMatched);
926
+ const title = keybindingItem.commandLabel ? ( localizeWithPath(
927
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
928
+ 'title',
929
+ "{0} ({1})",
930
+ keybindingItem.commandLabel,
931
+ keybindingItem.command
932
+ )) : keybindingItem.command;
933
+ templateData.commandColumn.setAttribute('aria-label', title);
934
+ templateData.commandColumnHover.update(title);
935
+ if (keybindingItem.commandLabel) {
936
+ templateData.commandLabelContainer.classList.remove('hide');
937
+ templateData.commandLabel.set(keybindingItem.commandLabel, keybindingItemEntry.commandLabelMatches);
938
+ }
939
+ else {
940
+ templateData.commandLabelContainer.classList.add('hide');
941
+ templateData.commandLabel.set(undefined);
942
+ }
943
+ if (keybindingItemEntry.commandDefaultLabelMatches) {
944
+ templateData.commandDefaultLabelContainer.classList.remove('hide');
945
+ templateData.commandDefaultLabel.set(keybindingItem.commandDefaultLabel, keybindingItemEntry.commandDefaultLabelMatches);
946
+ }
947
+ else {
948
+ templateData.commandDefaultLabelContainer.classList.add('hide');
949
+ templateData.commandDefaultLabel.set(undefined);
950
+ }
951
+ if (keybindingItemEntry.commandIdMatches || !keybindingItem.commandLabel) {
952
+ templateData.commandIdLabelContainer.classList.remove('hide');
953
+ templateData.commandIdLabel.set(keybindingItem.command, keybindingItemEntry.commandIdMatches);
954
+ }
955
+ else {
956
+ templateData.commandIdLabelContainer.classList.add('hide');
957
+ templateData.commandIdLabel.set(undefined);
958
+ }
959
+ }
960
+ disposeTemplate(templateData) {
961
+ templateData.commandColumnHover.dispose();
962
+ templateData.commandDefaultLabel.dispose();
963
+ templateData.commandIdLabel.dispose();
964
+ templateData.commandLabel.dispose();
965
+ }
966
+ }
967
+ class KeybindingColumnRenderer {
968
+ static { this.TEMPLATE_ID = 'keybindings'; }
969
+ constructor() {
970
+ this.templateId = KeybindingColumnRenderer.TEMPLATE_ID;
971
+ }
972
+ renderTemplate(container) {
973
+ const element = append(container, $('.keybinding'));
974
+ const keybindingLabel = ( new KeybindingLabel(
975
+ append(element, $('div.keybinding-label')),
976
+ OS,
977
+ defaultKeybindingLabelStyles
978
+ ));
979
+ return { keybindingLabel };
980
+ }
981
+ renderElement(keybindingItemEntry, index, templateData, height) {
982
+ if (keybindingItemEntry.keybindingItem.keybinding) {
983
+ templateData.keybindingLabel.set(keybindingItemEntry.keybindingItem.keybinding, keybindingItemEntry.keybindingMatches);
984
+ }
985
+ else {
986
+ templateData.keybindingLabel.set(undefined, undefined);
987
+ }
988
+ }
989
+ disposeTemplate(templateData) {
990
+ templateData.keybindingLabel.dispose();
991
+ }
992
+ }
993
+ function onClick(element, callback) {
994
+ const disposables = ( new DisposableStore());
995
+ disposables.add(addDisposableListener(element, EventType.CLICK, finalHandler(callback)));
996
+ disposables.add(addDisposableListener(element, EventType.KEY_UP, e => {
997
+ const keyboardEvent = ( new StandardKeyboardEvent(e));
998
+ if (keyboardEvent.equals(10 ) || keyboardEvent.equals(3 )) {
999
+ e.preventDefault();
1000
+ e.stopPropagation();
1001
+ callback();
1002
+ }
1003
+ }));
1004
+ return disposables;
1005
+ }
1006
+ let SourceColumnRenderer = class SourceColumnRenderer {
1007
+ static { SourceColumnRenderer_1 = this; }
1008
+ static { this.TEMPLATE_ID = 'source'; }
1009
+ constructor(extensionsWorkbenchService) {
1010
+ this.extensionsWorkbenchService = extensionsWorkbenchService;
1011
+ this.templateId = SourceColumnRenderer_1.TEMPLATE_ID;
1012
+ }
1013
+ renderTemplate(container) {
1014
+ const sourceColumn = append(container, $('.source'));
1015
+ const sourceColumnHover = setupCustomHover(getDefaultHoverDelegate('mouse'), sourceColumn, '');
1016
+ const sourceLabel = ( new HighlightedLabel(append(sourceColumn, $('.source-label'))));
1017
+ const extensionContainer = append(sourceColumn, $('.extension-container'));
1018
+ const extensionLabel = append(extensionContainer, $('a.extension-label', { tabindex: 0 }));
1019
+ const extensionId = ( new HighlightedLabel(append(extensionContainer, $('.extension-id-container.code'))));
1020
+ return { sourceColumn, sourceColumnHover, sourceLabel, extensionLabel, extensionContainer, extensionId, disposables: ( new DisposableStore()) };
1021
+ }
1022
+ renderElement(keybindingItemEntry, index, templateData, height) {
1023
+ if (isString(keybindingItemEntry.keybindingItem.source)) {
1024
+ templateData.extensionContainer.classList.add('hide');
1025
+ templateData.sourceLabel.element.classList.remove('hide');
1026
+ templateData.sourceColumnHover.update('');
1027
+ templateData.sourceLabel.set(keybindingItemEntry.keybindingItem.source || '-', keybindingItemEntry.sourceMatches);
1028
+ }
1029
+ else {
1030
+ templateData.extensionContainer.classList.remove('hide');
1031
+ templateData.sourceLabel.element.classList.add('hide');
1032
+ const extension = keybindingItemEntry.keybindingItem.source;
1033
+ const extensionLabel = extension.displayName ?? extension.identifier.value;
1034
+ templateData.sourceColumnHover.update(( localizeWithPath(
1035
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
1036
+ 'extension label',
1037
+ "Extension ({0})",
1038
+ extensionLabel
1039
+ )));
1040
+ templateData.extensionLabel.textContent = extensionLabel;
1041
+ templateData.disposables.add(onClick(templateData.extensionLabel, () => {
1042
+ this.extensionsWorkbenchService.open(extension.identifier.value);
1043
+ }));
1044
+ if (keybindingItemEntry.extensionIdMatches) {
1045
+ templateData.extensionId.element.classList.remove('hide');
1046
+ templateData.extensionId.set(extension.identifier.value, keybindingItemEntry.extensionIdMatches);
1047
+ }
1048
+ else {
1049
+ templateData.extensionId.element.classList.add('hide');
1050
+ templateData.extensionId.set(undefined);
1051
+ }
1052
+ }
1053
+ }
1054
+ disposeTemplate(templateData) {
1055
+ templateData.sourceColumnHover.dispose();
1056
+ templateData.disposables.dispose();
1057
+ templateData.sourceLabel.dispose();
1058
+ templateData.extensionId.dispose();
1059
+ }
1060
+ };
1061
+ SourceColumnRenderer = SourceColumnRenderer_1 = ( __decorate([
1062
+ ( __param(0, IExtensionsWorkbenchService))
1063
+ ], SourceColumnRenderer));
1064
+ let WhenInputWidget = class WhenInputWidget extends Disposable {
1065
+ constructor(parent, keybindingsEditor, instantiationService, contextKeyService) {
1066
+ super();
1067
+ this._onDidAccept = this._register(( new Emitter()));
1068
+ this.onDidAccept = this._onDidAccept.event;
1069
+ this._onDidReject = this._register(( new Emitter()));
1070
+ this.onDidReject = this._onDidReject.event;
1071
+ const focusContextKey = CONTEXT_WHEN_FOCUS.bindTo(contextKeyService);
1072
+ this.input = this._register(instantiationService.createInstance(SuggestEnabledInput, 'keyboardshortcutseditor#wheninput', parent, {
1073
+ provideResults: () => {
1074
+ const result = [];
1075
+ for (const contextKey of RawContextKey.all()) {
1076
+ result.push({ label: contextKey.key, documentation: contextKey.description, detail: contextKey.type, kind: 14 });
1077
+ }
1078
+ return result;
1079
+ },
1080
+ triggerCharacters: ['!', ' '],
1081
+ wordDefinition: /[a-zA-Z.]+/,
1082
+ alwaysShowSuggestions: true,
1083
+ }, '', `keyboardshortcutseditor#wheninput`, { focusContextKey, overflowWidgetsDomNode: keybindingsEditor.overflowWidgetsDomNode }));
1084
+ this._register((addDisposableListener(this.input.element, EventType.DBLCLICK, e => EventHelper.stop(e))));
1085
+ this._register(toDisposable(() => focusContextKey.reset()));
1086
+ this._register(keybindingsEditor.onAcceptWhenExpression(() => this._onDidAccept.fire(this.input.getValue())));
1087
+ this._register(Event.any(keybindingsEditor.onRejectWhenExpression, this.input.onDidBlur)(() => this._onDidReject.fire()));
1088
+ }
1089
+ layout(dimension) {
1090
+ this.input.layout(dimension);
1091
+ }
1092
+ show(value) {
1093
+ this.input.setValue(value);
1094
+ this.input.focus(true);
1095
+ }
1096
+ };
1097
+ WhenInputWidget = ( __decorate([
1098
+ ( __param(2, IInstantiationService)),
1099
+ ( __param(3, IContextKeyService))
1100
+ ], WhenInputWidget));
1101
+ let WhenColumnRenderer = class WhenColumnRenderer {
1102
+ static { WhenColumnRenderer_1 = this; }
1103
+ static { this.TEMPLATE_ID = 'when'; }
1104
+ constructor(keybindingsEditor, instantiationService) {
1105
+ this.keybindingsEditor = keybindingsEditor;
1106
+ this.instantiationService = instantiationService;
1107
+ this.templateId = WhenColumnRenderer_1.TEMPLATE_ID;
1108
+ }
1109
+ renderTemplate(container) {
1110
+ const element = append(container, $('.when'));
1111
+ const whenLabelContainer = append(element, $('div.when-label'));
1112
+ const whenLabel = ( new HighlightedLabel(whenLabelContainer));
1113
+ const whenInputContainer = append(element, $('div.when-input-container'));
1114
+ return {
1115
+ element,
1116
+ whenLabelContainer,
1117
+ whenLabel,
1118
+ whenInputContainer,
1119
+ disposables: ( new DisposableStore()),
1120
+ };
1121
+ }
1122
+ renderElement(keybindingItemEntry, index, templateData, height) {
1123
+ templateData.disposables.clear();
1124
+ const whenInputDisposables = templateData.disposables.add(( new DisposableStore()));
1125
+ templateData.disposables.add(this.keybindingsEditor.onDefineWhenExpression(e => {
1126
+ if (keybindingItemEntry === e) {
1127
+ templateData.element.classList.add('input-mode');
1128
+ const inputWidget = whenInputDisposables.add(this.instantiationService.createInstance(WhenInputWidget, templateData.whenInputContainer, this.keybindingsEditor));
1129
+ inputWidget.layout(new Dimension(templateData.element.parentElement.clientWidth, 18));
1130
+ inputWidget.show(keybindingItemEntry.keybindingItem.when || '');
1131
+ const hideInputWidget = () => {
1132
+ whenInputDisposables.clear();
1133
+ templateData.element.classList.remove('input-mode');
1134
+ templateData.element.parentElement.style.paddingLeft = '10px';
1135
+ clearNode(templateData.whenInputContainer);
1136
+ };
1137
+ whenInputDisposables.add(inputWidget.onDidAccept(value => {
1138
+ hideInputWidget();
1139
+ this.keybindingsEditor.updateKeybinding(keybindingItemEntry, keybindingItemEntry.keybindingItem.keybinding ? keybindingItemEntry.keybindingItem.keybinding.getUserSettingsLabel() || '' : '', value);
1140
+ this.keybindingsEditor.selectKeybinding(keybindingItemEntry);
1141
+ }));
1142
+ whenInputDisposables.add(inputWidget.onDidReject(() => {
1143
+ hideInputWidget();
1144
+ this.keybindingsEditor.selectKeybinding(keybindingItemEntry);
1145
+ }));
1146
+ templateData.element.parentElement.style.paddingLeft = '0px';
1147
+ }
1148
+ }));
1149
+ templateData.whenLabelContainer.classList.toggle('code', !!keybindingItemEntry.keybindingItem.when);
1150
+ templateData.whenLabelContainer.classList.toggle('empty', !keybindingItemEntry.keybindingItem.when);
1151
+ if (keybindingItemEntry.keybindingItem.when) {
1152
+ templateData.whenLabel.set(keybindingItemEntry.keybindingItem.when, keybindingItemEntry.whenMatches, keybindingItemEntry.keybindingItem.when);
1153
+ templateData.disposables.add(setupCustomHover(getDefaultHoverDelegate('mouse'), templateData.element, keybindingItemEntry.keybindingItem.when));
1154
+ }
1155
+ else {
1156
+ templateData.whenLabel.set('-');
1157
+ }
1158
+ }
1159
+ disposeTemplate(templateData) {
1160
+ templateData.disposables.dispose();
1161
+ templateData.whenLabel.dispose();
1162
+ }
1163
+ };
1164
+ WhenColumnRenderer = WhenColumnRenderer_1 = ( __decorate([
1165
+ ( __param(1, IInstantiationService))
1166
+ ], WhenColumnRenderer));
1167
+ class AccessibilityProvider {
1168
+ constructor(configurationService) {
1169
+ this.configurationService = configurationService;
1170
+ }
1171
+ getWidgetAriaLabel() {
1172
+ return ( localizeWithPath(
1173
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
1174
+ 'keybindingsLabel',
1175
+ "Keybindings"
1176
+ ));
1177
+ }
1178
+ getAriaLabel({ keybindingItem }) {
1179
+ const ariaLabel = [
1180
+ keybindingItem.commandLabel ? keybindingItem.commandLabel : keybindingItem.command,
1181
+ keybindingItem.keybinding?.getAriaLabel() || ( localizeWithPath(
1182
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
1183
+ 'noKeybinding',
1184
+ "No keybinding assigned"
1185
+ )),
1186
+ keybindingItem.when ? keybindingItem.when : ( localizeWithPath(
1187
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
1188
+ 'noWhen',
1189
+ "No when context"
1190
+ )),
1191
+ isString(keybindingItem.source) ? keybindingItem.source : keybindingItem.source.description ?? keybindingItem.source.identifier.value,
1192
+ ];
1193
+ if (this.configurationService.getValue("accessibility.verbosity.keybindingsEditor" )) {
1194
+ const kbEditorAriaLabel = ( localizeWithPath(
1195
+ 'vs/workbench/contrib/preferences/browser/keybindingsEditor',
1196
+ 'keyboard shortcuts aria label',
1197
+ "use space or enter to change the keybinding."
1198
+ ));
1199
+ ariaLabel.push(kbEditorAriaLabel);
1200
+ }
1201
+ return ariaLabel.join(', ');
1202
+ }
1203
+ }
1204
+ registerColor('keybindingTable.headerBackground', { dark: tableOddRowsBackgroundColor, light: tableOddRowsBackgroundColor, hcDark: tableOddRowsBackgroundColor, hcLight: tableOddRowsBackgroundColor }, 'Background color for the keyboard shortcuts table header.');
1205
+ registerColor('keybindingTable.rowsBackground', { light: tableOddRowsBackgroundColor, dark: tableOddRowsBackgroundColor, hcDark: tableOddRowsBackgroundColor, hcLight: tableOddRowsBackgroundColor }, 'Background color for the keyboard shortcuts table alternating rows.');
1206
+ registerThemingParticipant((theme, collector) => {
1207
+ const foregroundColor = theme.getColor(foreground);
1208
+ if (foregroundColor) {
1209
+ const whenForegroundColor = ( foregroundColor.transparent(.8)).makeOpaque(WORKBENCH_BACKGROUND(theme));
1210
+ collector.addRule(`.keybindings-editor > .keybindings-body > .keybindings-table-container .monaco-table .monaco-table-tr .monaco-table-td .code { color: ${whenForegroundColor}; }`);
1211
+ }
1212
+ const listActiveSelectionForegroundColor = theme.getColor(listActiveSelectionForeground);
1213
+ const listActiveSelectionBackgroundColor = theme.getColor(listActiveSelectionBackground);
1214
+ if (listActiveSelectionForegroundColor && listActiveSelectionBackgroundColor) {
1215
+ const whenForegroundColor = ( listActiveSelectionForegroundColor.transparent(.8)).makeOpaque(listActiveSelectionBackgroundColor);
1216
+ collector.addRule(`.keybindings-editor > .keybindings-body > .keybindings-table-container .monaco-table.focused .monaco-list-row.selected .monaco-table-tr .monaco-table-td .code { color: ${whenForegroundColor}; }`);
1217
+ }
1218
+ const listInactiveSelectionForegroundColor = theme.getColor(listInactiveSelectionForeground);
1219
+ const listInactiveSelectionBackgroundColor = theme.getColor(listInactiveSelectionBackground);
1220
+ if (listInactiveSelectionForegroundColor && listInactiveSelectionBackgroundColor) {
1221
+ const whenForegroundColor = ( listInactiveSelectionForegroundColor.transparent(.8)).makeOpaque(listInactiveSelectionBackgroundColor);
1222
+ collector.addRule(`.keybindings-editor > .keybindings-body > .keybindings-table-container .monaco-table .monaco-list-row.selected .monaco-table-tr .monaco-table-td .code { color: ${whenForegroundColor}; }`);
1223
+ }
1224
+ const listFocusForegroundColor = theme.getColor(listFocusForeground);
1225
+ const listFocusBackgroundColor = theme.getColor(listFocusBackground);
1226
+ if (listFocusForegroundColor && listFocusBackgroundColor) {
1227
+ const whenForegroundColor = ( listFocusForegroundColor.transparent(.8)).makeOpaque(listFocusBackgroundColor);
1228
+ collector.addRule(`.keybindings-editor > .keybindings-body > .keybindings-table-container .monaco-table.focused .monaco-list-row.focused .monaco-table-tr .monaco-table-td .code { color: ${whenForegroundColor}; }`);
1229
+ }
1230
+ const listHoverForegroundColor = theme.getColor(listHoverForeground);
1231
+ const listHoverBackgroundColor = theme.getColor(listHoverBackground);
1232
+ if (listHoverForegroundColor && listHoverBackgroundColor) {
1233
+ const whenForegroundColor = ( listHoverForegroundColor.transparent(.8)).makeOpaque(listHoverBackgroundColor);
1234
+ collector.addRule(`.keybindings-editor > .keybindings-body > .keybindings-table-container .monaco-table.focused .monaco-list-row:hover:not(.focused):not(.selected) .monaco-table-tr .monaco-table-td .code { color: ${whenForegroundColor}; }`);
1235
+ }
1236
+ });
1237
+ export { KeybindingsEditor };