@codingame/monaco-vscode-chat-service-override 25.1.2 → 26.0.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 (334) hide show
  1. package/index.js +24 -3
  2. package/package.json +5 -5
  3. package/vscode/src/vs/platform/browserElements/common/browserElements.d.ts +23 -3
  4. package/vscode/src/vs/platform/browserElements/common/browserElements.js +13 -6
  5. package/vscode/src/vs/platform/domWidget/browser/domWidget.js +4 -4
  6. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.d.ts +1 -1
  7. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +42 -27
  8. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.d.ts +14 -0
  9. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +218 -74
  10. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatTerminalOutputAccessibleView.js +6 -8
  11. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +14 -9
  12. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +165 -168
  13. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.js +27 -25
  14. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +141 -140
  15. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +189 -121
  16. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +14 -15
  17. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCustomizationDiagnosticsAction.d.ts +60 -0
  18. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCustomizationDiagnosticsAction.js +435 -0
  19. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +28 -12
  20. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +10 -12
  21. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatGettingStarted.d.ts +3 -1
  22. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatGettingStarted.js +37 -16
  23. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.d.ts +11 -0
  24. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +54 -24
  25. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +73 -34
  26. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +71 -30
  27. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.js +151 -89
  28. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +12 -15
  29. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +39 -40
  30. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +90 -125
  31. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.d.ts +5 -2
  32. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +263 -143
  33. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTransfer.js +4 -4
  34. package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +188 -126
  35. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.d.ts +1 -1
  36. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +37 -28
  37. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.d.ts +21 -9
  38. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +392 -226
  39. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +31 -27
  40. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +25 -23
  41. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.js +1 -3
  42. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.d.ts +2 -0
  43. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.js +13 -0
  44. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.d.ts +20 -0
  45. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.js +83 -0
  46. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.d.ts +68 -0
  47. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +319 -0
  48. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.d.ts +1 -0
  49. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +215 -0
  50. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.d.ts +179 -0
  51. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +951 -0
  52. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/media/agentsessionprojection.css +20 -0
  53. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/media/agenttitlebarstatuswidget.css +388 -0
  54. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/media/unifiedQuickAccess.css +195 -0
  55. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.d.ts +120 -0
  56. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +394 -0
  57. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.d.ts +38 -0
  58. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +95 -0
  59. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsProvider.d.ts +3 -1
  60. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsProvider.js +31 -29
  61. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +49 -47
  62. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatVariables.js +4 -6
  63. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/media/simpleBrowserOverlay.css +0 -1
  64. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.js +188 -151
  65. package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +1012 -639
  66. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.js +256 -151
  67. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.d.ts +8 -1
  68. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +182 -101
  69. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingDeletedFileEntry.d.ts +79 -0
  70. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingDeletedFileEntry.js +193 -0
  71. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorAccessibility.js +9 -7
  72. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.d.ts +68 -0
  73. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +253 -0
  74. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.d.ts +4 -5
  75. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +69 -50
  76. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.d.ts +3 -4
  77. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +52 -33
  78. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +5 -6
  79. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +274 -155
  80. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingOperations.js +1 -1
  81. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.d.ts +2 -10
  82. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +130 -104
  83. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.d.ts +12 -2
  84. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +385 -160
  85. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.js +53 -36
  86. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.js +112 -75
  87. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.js +19 -10
  88. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditorController.css +31 -11
  89. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookSnapshot.js +39 -17
  90. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNewNotebookContentEdits.js +10 -14
  91. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.d.ts +0 -2
  92. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.js +25 -16
  93. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.d.ts +1 -1
  94. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +265 -203
  95. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookFileSystemProvider.js +29 -26
  96. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/helpers.js +114 -60
  97. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/notebookCellChanges.js +16 -19
  98. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/overlayToolbarDecorator.js +44 -30
  99. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +119 -45
  100. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.d.ts +1 -0
  101. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +152 -136
  102. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +12 -8
  103. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.d.ts +51 -31
  104. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +323 -217
  105. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.d.ts +4 -3
  106. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +653 -401
  107. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.js +52 -40
  108. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatModelsWidget.css +22 -3
  109. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.d.ts +5 -2
  110. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +43 -28
  111. package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +182 -136
  112. package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.d.ts +33 -0
  113. package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +548 -0
  114. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.d.ts +0 -1
  115. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +222 -138
  116. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.d.ts +3 -3
  117. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +151 -113
  118. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.d.ts +6 -4
  119. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +453 -217
  120. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.d.ts +1 -1
  121. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +162 -88
  122. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/media/chatSetup.css +2 -1
  123. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatus.d.ts +0 -2
  124. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatus.js +1 -13
  125. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.d.ts +1 -0
  126. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +309 -233
  127. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +55 -53
  128. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusItemService.js +3 -1
  129. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.d.ts +37 -0
  130. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +109 -0
  131. package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +35 -23
  132. package/vscode/src/vs/workbench/contrib/chat/browser/contextContrib/chatContextService.d.ts +9 -4
  133. package/vscode/src/vs/workbench/contrib/chat/browser/contextContrib/chatContextService.js +73 -33
  134. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.d.ts +47 -0
  135. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +333 -0
  136. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +39 -25
  137. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionContribution.js +9 -5
  138. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +23 -20
  139. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileActions.js +2 -0
  140. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +20 -16
  141. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +65 -57
  142. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +48 -36
  143. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +20 -12
  144. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.d.ts +4 -0
  145. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +52 -0
  146. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +155 -159
  147. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.d.ts +24 -14
  148. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +521 -246
  149. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +107 -76
  150. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +28 -24
  151. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownAnchorService.js +10 -6
  152. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputStateCache.d.ts +16 -0
  153. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputStateCache.js +57 -0
  154. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatLayoutService.js +4 -6
  155. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidgetService.js +56 -44
  156. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.d.ts +0 -3
  157. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.js +37 -47
  158. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatEditorInputContentProvider.js +5 -7
  159. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.d.ts +10 -0
  160. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +1284 -0
  161. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +179 -125
  162. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +9 -11
  163. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/editorHoverWrapper.js +7 -6
  164. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +96 -78
  165. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +58 -53
  166. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.d.ts +25 -11
  167. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +484 -292
  168. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.d.ts +1 -6
  169. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +65 -92
  170. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatViewPane.css +16 -19
  171. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatViewTitleControl.css +1 -0
  172. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +9 -1
  173. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +331 -189
  174. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.js +81 -93
  175. package/vscode/src/vs/workbench/contrib/chat/common/ignoredFiles.js +1 -3
  176. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelStore.d.ts +5 -3
  177. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelStore.js +6 -7
  178. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.d.ts +36 -8
  179. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.js +169 -31
  180. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.d.ts +6 -0
  181. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.js +141 -0
  182. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.d.ts +6 -4
  183. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +218 -144
  184. package/vscode/src/vs/workbench/contrib/chat/common/model/chatTransferService.js +20 -10
  185. package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.d.ts +109 -0
  186. package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.js +349 -0
  187. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.js +9 -8
  188. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.d.ts +9 -0
  189. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +139 -36
  190. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.js +3 -6
  191. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptBodyAutocompletion.js +64 -51
  192. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +49 -34
  193. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptDocumentSemanticTokensProvider.js +21 -13
  194. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.d.ts +1 -1
  195. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +125 -97
  196. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +91 -131
  197. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptLinkProvider.js +8 -5
  198. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +5 -0
  199. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +488 -222
  200. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileContributions.js +32 -12
  201. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +58 -13
  202. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +717 -200
  203. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +79 -18
  204. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +371 -130
  205. package/vscode/src/vs/workbench/contrib/chat/common/tools/chatTodoListService.d.ts +0 -1
  206. package/vscode/src/vs/workbench/contrib/chat/common/tools/chatTodoListService.js +3 -7
  207. package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +79 -61
  208. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatResponseResourceFileSystemProvider.js +27 -21
  209. package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.js +7 -10
  210. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.d.ts +1 -1
  211. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +26 -32
  212. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibilityHelp.js +2 -2
  213. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.d.ts +8 -60
  214. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +115 -426
  215. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.d.ts +15 -0
  216. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +127 -0
  217. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.js +1 -37
  218. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.d.ts +16 -0
  219. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +21 -0
  220. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.d.ts +51 -0
  221. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +334 -0
  222. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.d.ts +41 -0
  223. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +424 -0
  224. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.d.ts +4 -0
  225. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +58 -0
  226. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.d.ts +7 -0
  227. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +195 -0
  228. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.d.ts +8 -0
  229. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +368 -0
  230. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.d.ts +2 -0
  231. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +7 -0
  232. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.d.ts +1 -1
  233. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.js +1 -1
  234. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +23 -25
  235. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/common/remoteCodingAgentsService.js +7 -8
  236. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +34 -38
  237. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibleView.js +8 -12
  238. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +103 -95
  239. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.js +28 -16
  240. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatEnabler.js +4 -5
  241. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.d.ts +12 -8
  242. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.js +65 -54
  243. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +86 -60
  244. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.js +13 -26
  245. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/commandFileWriteParser.d.ts +24 -0
  246. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.d.ts +26 -0
  247. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.js +142 -0
  248. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +2 -1
  249. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +56 -46
  250. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +2 -2
  251. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +63 -31
  252. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +2 -1
  253. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +35 -30
  254. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +2 -1
  255. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +44 -37
  256. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.js +3 -4
  257. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +3 -3
  258. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +11 -0
  259. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +70 -50
  260. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +26 -394
  261. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +85 -49
  262. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +68 -27
  263. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.d.ts +1 -0
  264. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +67 -45
  265. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/awaitTerminalTool.d.ts +12 -0
  266. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/awaitTerminalTool.js +106 -0
  267. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.d.ts +2 -2
  268. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.js +177 -97
  269. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +136 -49
  270. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.d.ts +2 -1
  271. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +128 -112
  272. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +51 -49
  273. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.d.ts +8 -0
  274. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.js +25 -0
  275. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/commandLinePresenter.d.ts +41 -0
  276. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.d.ts +19 -0
  277. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.js +37 -0
  278. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.d.ts +19 -0
  279. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.js +37 -0
  280. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.d.ts +19 -0
  281. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.js +44 -0
  282. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.d.ts +12 -0
  283. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.js +21 -0
  284. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.js +5 -14
  285. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePreventHistoryRewriter.js +2 -4
  286. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineRewriter.d.ts +1 -0
  287. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.d.ts +8 -0
  288. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.js +29 -0
  289. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +30 -31
  290. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +16 -17
  291. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +19 -20
  292. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.d.ts +11 -0
  293. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +58 -0
  294. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +31 -3
  295. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +325 -199
  296. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.d.ts +1 -1
  297. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.js +1 -1
  298. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +33 -38
  299. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +45 -5
  300. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +746 -456
  301. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +145 -98
  302. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +88 -37
  303. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +120 -51
  304. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +25 -28
  305. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.d.ts +5 -0
  306. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.js +58 -12
  307. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/toolIds.d.ts +12 -0
  308. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/toolIds.js +17 -0
  309. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.d.ts +8 -1
  310. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.js +47 -28
  311. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.d.ts +37 -0
  312. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +171 -0
  313. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.d.ts +0 -58
  314. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.js +0 -213
  315. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.d.ts +0 -39
  316. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.js +0 -243
  317. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.d.ts +0 -7
  318. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.js +0 -41
  319. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.d.ts +0 -166
  320. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.js +0 -607
  321. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/agentsessionsviewer.css +0 -255
  322. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.d.ts +0 -46
  323. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +0 -396
  324. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.d.ts +0 -9
  325. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +0 -379
  326. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditingEditorOverlay.css +0 -117
  327. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.d.ts +0 -141
  328. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.js +0 -961
  329. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.d.ts +0 -36
  330. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +0 -447
  331. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsParametersSchema.d.ts +0 -6
  332. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsParametersSchema.js +0 -251
  333. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibleView.d.ts +0 -10
  334. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibleView.js +0 -42
@@ -1,6 +1,6 @@
1
1
 
2
2
  import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
3
- import { AsyncIterableObject } from '@codingame/monaco-vscode-api/vscode/vs/base/common/async';
3
+ import { AsyncIterableProducer } from '@codingame/monaco-vscode-api/vscode/vs/base/common/async';
4
4
  import { CancellationToken } from '@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation';
5
5
  import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
6
6
  import { KeyMod, KeyCode } from '@codingame/monaco-vscode-api/vscode/vs/base/common/keyCodes';
@@ -34,20 +34,12 @@ import { DefaultChatTextEditor } from '@codingame/monaco-vscode-katex-common/vsc
34
34
  import { CHAT_CATEGORY } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
35
35
  import { ApplyCodeBlockOperation, InsertCodeBlockOperation } from './codeBlockOperations.js';
36
36
 
37
- const shellLangIds = [
38
- 'fish',
39
- 'ps1',
40
- 'pwsh',
41
- 'powershell',
42
- 'sh',
43
- 'shellscript',
44
- 'zsh'
45
- ];
37
+ const shellLangIds = ["fish", "ps1", "pwsh", "powershell", "sh", "shellscript", "zsh"];
46
38
  function isCodeBlockActionContext(thing) {
47
- return typeof thing === 'object' && thing !== null && 'code' in thing && 'element' in thing;
39
+ return typeof thing === "object" && thing !== null && "code" in thing && "element" in thing;
48
40
  }
49
41
  function isCodeCompareBlockActionContext(thing) {
50
- return typeof thing === 'object' && thing !== null && 'element' in thing;
42
+ return typeof thing === "object" && thing !== null && "element" in thing;
51
43
  }
52
44
  function isResponseFiltered(context) {
53
45
  return isResponseVM(context.element) && context.element.errorDetails?.responseIsFiltered;
@@ -69,9 +61,11 @@ class ChatCodeBlockAction extends Action2 {
69
61
  return this.runWithContext(accessor, context);
70
62
  }
71
63
  }
72
- const APPLY_IN_EDITOR_ID = 'workbench.action.chat.applyInEditor';
64
+ const APPLY_IN_EDITOR_ID = "workbench.action.chat.applyInEditor";
73
65
  let CodeBlockActionRendering = class CodeBlockActionRendering extends Disposable {
74
- static { this.ID = 'chat.codeBlockActionRendering'; }
66
+ static {
67
+ this.ID = "chat.codeBlockActionRendering";
68
+ }
75
69
  constructor(actionViewItemService, instantiationService, labelService) {
76
70
  super();
77
71
  const disposable = actionViewItemService.register(MenuId.ChatCodeBlock, APPLY_IN_EDITOR_ID, (action, options) => {
@@ -82,8 +76,10 @@ let CodeBlockActionRendering = class CodeBlockActionRendering extends Disposable
82
76
  getTooltip() {
83
77
  const context = this._context;
84
78
  if (isCodeBlockActionContext(context) && context.codemapperUri) {
85
- const label = labelService.getUriLabel(context.codemapperUri, { relative: true });
86
- return localize(4697, "Apply to {0}", label);
79
+ const label = labelService.getUriLabel(context.codemapperUri, {
80
+ relative: true
81
+ });
82
+ return localize(4709, "Apply to {0}", label);
87
83
  }
88
84
  return super.getTooltip();
89
85
  }
@@ -96,23 +92,19 @@ let CodeBlockActionRendering = class CodeBlockActionRendering extends Disposable
96
92
  markAsSingleton(disposable);
97
93
  }
98
94
  };
99
- CodeBlockActionRendering = ( __decorate([
100
- ( __param(0, IActionViewItemService)),
101
- ( __param(1, IInstantiationService)),
102
- ( __param(2, ILabelService))
103
- ], CodeBlockActionRendering));
95
+ CodeBlockActionRendering = ( __decorate([( __param(0, IActionViewItemService)), ( __param(1, IInstantiationService)), ( __param(2, ILabelService))], CodeBlockActionRendering));
104
96
  function registerChatCodeBlockActions() {
105
97
  registerAction2(class CopyCodeBlockAction extends Action2 {
106
98
  constructor() {
107
99
  super({
108
- id: 'workbench.action.chat.copyCodeBlock',
109
- title: ( localize2(4698, "Copy")),
100
+ id: "workbench.action.chat.copyCodeBlock",
101
+ title: ( localize2(4710, "Copy")),
110
102
  f1: false,
111
103
  category: CHAT_CATEGORY,
112
104
  icon: Codicon.copy,
113
105
  menu: {
114
106
  id: MenuId.ChatCodeBlock,
115
- group: 'navigation',
107
+ group: "navigation",
116
108
  order: 30
117
109
  }
118
110
  });
@@ -136,35 +128,35 @@ function registerChatCodeBlockActions() {
136
128
  requestId: context.element.requestId,
137
129
  result: context.element.result,
138
130
  action: {
139
- kind: 'copy',
131
+ kind: "copy",
140
132
  codeBlockIndex: context.codeBlockIndex,
141
133
  copyKind: ChatCopyKind.Toolbar,
142
134
  copiedCharacters: context.code.length,
143
135
  totalCharacters: context.code.length,
144
136
  copiedText: context.code,
145
- copiedLines: context.code.split('\n').length,
137
+ copiedLines: context.code.split("\n").length,
146
138
  languageId: context.languageId,
147
- totalLines: context.code.split('\n').length,
148
- modelId: request?.modelId ?? ''
139
+ totalLines: context.code.split("\n").length,
140
+ modelId: request?.modelId ?? ""
149
141
  }
150
142
  });
151
143
  const codeBlockInfo = context.element.model.codeBlockInfos?.at(context.codeBlockIndex);
152
144
  aiEditTelemetryService.handleCodeAccepted({
153
- acceptanceMethod: 'copyButton',
145
+ acceptanceMethod: "copyButton",
154
146
  suggestionId: codeBlockInfo?.suggestionId,
155
147
  editDeltaInfo: EditDeltaInfo.fromText(context.code),
156
- feature: 'sideBarChat',
148
+ feature: "sideBarChat",
157
149
  languageId: context.languageId,
158
150
  modeId: context.element.model.request?.modeInfo?.modeId,
159
151
  modelId: request?.modelId,
160
- presentation: 'codeBlock',
152
+ presentation: "codeBlock",
161
153
  applyCodeBlockSuggestionId: undefined,
162
- source: undefined,
154
+ source: undefined
163
155
  });
164
156
  }
165
157
  }
166
158
  });
167
- CopyAction?.addImplementation(50000, 'chat-codeblock', (accessor) => {
159
+ CopyAction?.addImplementation(50000, "chat-codeblock", accessor => {
168
160
  const editor = accessor.get(ICodeEditorService).getFocusedCodeEditor();
169
161
  if (!editor) {
170
162
  return false;
@@ -178,9 +170,7 @@ function registerChatCodeBlockActions() {
178
170
  return false;
179
171
  }
180
172
  const noSelection = editor.getSelections()?.length === 1 && editor.getSelection()?.isEmpty();
181
- const copiedText = noSelection ?
182
- editorModel.getValue() :
183
- editor.getSelections()?.reduce((acc, selection) => acc + editorModel.getValueInRange(selection), '') ?? '';
173
+ const copiedText = noSelection ? editorModel.getValue() : editor.getSelections()?.reduce((acc, selection) => acc + editorModel.getValueInRange(selection), "") ?? "";
184
174
  const totalCharacters = editorModel.getValueLength();
185
175
  const chatService = accessor.get(IChatService);
186
176
  const aiEditTelemetryService = accessor.get(IAiEditTelemetryService);
@@ -195,30 +185,30 @@ function registerChatCodeBlockActions() {
195
185
  requestId: element.requestId,
196
186
  result: element.result,
197
187
  action: {
198
- kind: 'copy',
188
+ kind: "copy",
199
189
  codeBlockIndex: context.codeBlockIndex,
200
190
  copyKind: ChatCopyKind.Action,
201
191
  copiedText,
202
192
  copiedCharacters: copiedText.length,
203
193
  totalCharacters,
204
194
  languageId: context.languageId,
205
- totalLines: context.code.split('\n').length,
206
- copiedLines: copiedText.split('\n').length,
207
- modelId: request?.modelId ?? ''
195
+ totalLines: context.code.split("\n").length,
196
+ copiedLines: copiedText.split("\n").length,
197
+ modelId: request?.modelId ?? ""
208
198
  }
209
199
  });
210
200
  const codeBlockInfo = element.model.codeBlockInfos?.at(context.codeBlockIndex);
211
201
  aiEditTelemetryService.handleCodeAccepted({
212
- acceptanceMethod: 'copyManual',
202
+ acceptanceMethod: "copyManual",
213
203
  suggestionId: codeBlockInfo?.suggestionId,
214
204
  editDeltaInfo: EditDeltaInfo.fromText(copiedText),
215
- feature: 'sideBarChat',
205
+ feature: "sideBarChat",
216
206
  languageId: context.languageId,
217
207
  modeId: element.model.request?.modeInfo?.modeId,
218
208
  modelId: request?.modelId,
219
- presentation: 'codeBlock',
209
+ presentation: "codeBlock",
220
210
  applyCodeBlockSuggestionId: undefined,
221
- source: undefined,
211
+ source: undefined
222
212
  });
223
213
  }
224
214
  if (noSelection) {
@@ -231,29 +221,28 @@ function registerChatCodeBlockActions() {
231
221
  constructor() {
232
222
  super({
233
223
  id: APPLY_IN_EDITOR_ID,
234
- title: ( localize2(4699, "Apply in Editor")),
224
+ title: ( localize2(4711, "Apply in Editor")),
235
225
  precondition: ChatContextKeys.enabled,
236
226
  f1: false,
237
227
  category: CHAT_CATEGORY,
238
228
  icon: Codicon.gitPullRequestGoToChanges,
239
- menu: [
240
- {
241
- id: MenuId.ChatCodeBlock,
242
- group: 'navigation',
243
- when: ( ContextKeyExpr.and(...( shellLangIds.map(e => ( ContextKeyExpr.notEquals(EditorContextKeys.languageId.key, e)))))),
244
- order: 10
245
- },
246
- {
247
- id: MenuId.ChatCodeBlock,
248
- when: ( ContextKeyExpr.or(...( shellLangIds.map(e => ( ContextKeyExpr.equals(EditorContextKeys.languageId.key, e))))))
249
- },
250
- ],
229
+ menu: [{
230
+ id: MenuId.ChatCodeBlock,
231
+ group: "navigation",
232
+ when: ( ContextKeyExpr.and(...( shellLangIds.map(e => ( ContextKeyExpr.notEquals(EditorContextKeys.languageId.key, e)))))),
233
+ order: 10
234
+ }, {
235
+ id: MenuId.ChatCodeBlock,
236
+ when: ( ContextKeyExpr.or(...( shellLangIds.map(e => ( ContextKeyExpr.equals(EditorContextKeys.languageId.key, e))))))
237
+ }],
251
238
  keybinding: {
252
239
  when: ( ContextKeyExpr.or(( ContextKeyExpr.and(ChatContextKeys.inChatSession, ( ChatContextKeys.inChatInput.negate()))), accessibleViewInCodeBlock)),
253
240
  primary: KeyMod.CtrlCmd | KeyCode.Enter,
254
- mac: { primary: KeyMod.WinCtrl | KeyCode.Enter },
241
+ mac: {
242
+ primary: KeyMod.WinCtrl | KeyCode.Enter
243
+ },
255
244
  weight: KeybindingWeight.ExternalExtension + 1
256
- },
245
+ }
257
246
  });
258
247
  }
259
248
  runWithContext(accessor, context) {
@@ -266,30 +255,32 @@ function registerChatCodeBlockActions() {
266
255
  registerAction2(class InsertAtCursorAction extends ChatCodeBlockAction {
267
256
  constructor() {
268
257
  super({
269
- id: 'workbench.action.chat.insertCodeBlock',
270
- title: ( localize2(4700, "Insert At Cursor")),
258
+ id: "workbench.action.chat.insertCodeBlock",
259
+ title: ( localize2(4712, "Insert At Cursor")),
271
260
  precondition: ChatContextKeys.enabled,
272
261
  f1: true,
273
262
  category: CHAT_CATEGORY,
274
263
  icon: Codicon.insert,
275
264
  menu: [{
276
- id: MenuId.ChatCodeBlock,
277
- group: 'navigation',
278
- when: ( ContextKeyExpr.and(ChatContextKeys.inChatSession, ( ChatContextKeys.location.notEqualsTo(ChatAgentLocation.Terminal)))),
279
- order: 20
280
- }, {
281
- id: MenuId.ChatCodeBlock,
282
- group: 'navigation',
283
- when: ( ContextKeyExpr.and(ChatContextKeys.inChatSession, ( ChatContextKeys.location.isEqualTo(ChatAgentLocation.Terminal)))),
284
- isHiddenByDefault: true,
285
- order: 20
286
- }],
265
+ id: MenuId.ChatCodeBlock,
266
+ group: "navigation",
267
+ when: ( ContextKeyExpr.and(ChatContextKeys.inChatSession, ( ChatContextKeys.location.notEqualsTo(ChatAgentLocation.Terminal)))),
268
+ order: 20
269
+ }, {
270
+ id: MenuId.ChatCodeBlock,
271
+ group: "navigation",
272
+ when: ( ContextKeyExpr.and(ChatContextKeys.inChatSession, ( ChatContextKeys.location.isEqualTo(ChatAgentLocation.Terminal)))),
273
+ isHiddenByDefault: true,
274
+ order: 20
275
+ }],
287
276
  keybinding: {
288
277
  when: ( ContextKeyExpr.or(( ContextKeyExpr.and(ChatContextKeys.inChatSession, ( ChatContextKeys.inChatInput.negate()))), accessibleViewInCodeBlock)),
289
278
  primary: KeyMod.CtrlCmd | KeyCode.Enter,
290
- mac: { primary: KeyMod.WinCtrl | KeyCode.Enter },
279
+ mac: {
280
+ primary: KeyMod.WinCtrl | KeyCode.Enter
281
+ },
291
282
  weight: KeybindingWeight.ExternalExtension + 1
292
- },
283
+ }
293
284
  });
294
285
  }
295
286
  runWithContext(accessor, context) {
@@ -300,17 +291,17 @@ function registerChatCodeBlockActions() {
300
291
  registerAction2(class InsertIntoNewFileAction extends ChatCodeBlockAction {
301
292
  constructor() {
302
293
  super({
303
- id: 'workbench.action.chat.insertIntoNewFile',
304
- title: ( localize2(4701, "Insert into New File")),
294
+ id: "workbench.action.chat.insertIntoNewFile",
295
+ title: ( localize2(4713, "Insert into New File")),
305
296
  precondition: ChatContextKeys.enabled,
306
297
  f1: true,
307
298
  category: CHAT_CATEGORY,
308
299
  icon: Codicon.newFile,
309
300
  menu: {
310
301
  id: MenuId.ChatCodeBlock,
311
- group: 'navigation',
302
+ group: "navigation",
312
303
  isHiddenByDefault: true,
313
- order: 40,
304
+ order: 40
314
305
  }
315
306
  });
316
307
  }
@@ -321,7 +312,11 @@ function registerChatCodeBlockActions() {
321
312
  const editorService = accessor.get(IEditorService);
322
313
  const chatService = accessor.get(IChatService);
323
314
  const aiEditTelemetryService = accessor.get(IAiEditTelemetryService);
324
- editorService.openEditor({ contents: context.code, languageId: context.languageId, resource: undefined });
315
+ editorService.openEditor({
316
+ contents: context.code,
317
+ languageId: context.languageId,
318
+ resource: undefined
319
+ });
325
320
  if (isResponseVM(context.element)) {
326
321
  const requestId = context.element.requestId;
327
322
  const request = context.element.session.getItems().find(item => item.id === requestId && isRequestVM(item));
@@ -332,27 +327,27 @@ function registerChatCodeBlockActions() {
332
327
  requestId: context.element.requestId,
333
328
  result: context.element.result,
334
329
  action: {
335
- kind: 'insert',
330
+ kind: "insert",
336
331
  codeBlockIndex: context.codeBlockIndex,
337
332
  totalCharacters: context.code.length,
338
333
  newFile: true,
339
- totalLines: context.code.split('\n').length,
334
+ totalLines: context.code.split("\n").length,
340
335
  languageId: context.languageId,
341
- modelId: request?.modelId ?? ''
336
+ modelId: request?.modelId ?? ""
342
337
  }
343
338
  });
344
339
  const codeBlockInfo = context.element.model.codeBlockInfos?.at(context.codeBlockIndex);
345
340
  aiEditTelemetryService.handleCodeAccepted({
346
- acceptanceMethod: 'insertInNewFile',
341
+ acceptanceMethod: "insertInNewFile",
347
342
  suggestionId: codeBlockInfo?.suggestionId,
348
343
  editDeltaInfo: EditDeltaInfo.fromText(context.code),
349
- feature: 'sideBarChat',
344
+ feature: "sideBarChat",
350
345
  languageId: context.languageId,
351
346
  modeId: context.element.model.request?.modeInfo?.modeId,
352
347
  modelId: request?.modelId,
353
- presentation: 'codeBlock',
348
+ presentation: "codeBlock",
354
349
  applyCodeBlockSuggestionId: undefined,
355
- source: undefined,
350
+ source: undefined
356
351
  });
357
352
  }
358
353
  }
@@ -360,31 +355,30 @@ function registerChatCodeBlockActions() {
360
355
  registerAction2(class RunInTerminalAction extends ChatCodeBlockAction {
361
356
  constructor() {
362
357
  super({
363
- id: 'workbench.action.chat.runInTerminal',
364
- title: ( localize2(4702, "Insert into Terminal")),
358
+ id: "workbench.action.chat.runInTerminal",
359
+ title: ( localize2(4714, "Insert into Terminal")),
365
360
  precondition: ChatContextKeys.enabled,
366
361
  f1: true,
367
362
  category: CHAT_CATEGORY,
368
363
  icon: Codicon.terminal,
369
364
  menu: [{
370
- id: MenuId.ChatCodeBlock,
371
- group: 'navigation',
372
- when: ( ContextKeyExpr.and(ChatContextKeys.inChatSession, ( ContextKeyExpr.or(...( shellLangIds.map(e => ( ContextKeyExpr.equals(EditorContextKeys.languageId.key, e)))))))),
373
- },
374
- {
375
- id: MenuId.ChatCodeBlock,
376
- group: 'navigation',
377
- isHiddenByDefault: true,
378
- when: ( ContextKeyExpr.and(ChatContextKeys.inChatSession, ...( shellLangIds.map(e => ( ContextKeyExpr.notEquals(EditorContextKeys.languageId.key, e))))))
379
- }],
365
+ id: MenuId.ChatCodeBlock,
366
+ group: "navigation",
367
+ when: ( ContextKeyExpr.and(ChatContextKeys.inChatSession, ( ContextKeyExpr.or(...( shellLangIds.map(e => ( ContextKeyExpr.equals(EditorContextKeys.languageId.key, e))))))))
368
+ }, {
369
+ id: MenuId.ChatCodeBlock,
370
+ group: "navigation",
371
+ isHiddenByDefault: true,
372
+ when: ( ContextKeyExpr.and(ChatContextKeys.inChatSession, ...( shellLangIds.map(e => ( ContextKeyExpr.notEquals(EditorContextKeys.languageId.key, e))))))
373
+ }],
380
374
  keybinding: [{
381
- primary: KeyMod.CtrlCmd | KeyMod.Alt | KeyCode.Enter,
382
- mac: {
383
- primary: KeyMod.WinCtrl | KeyMod.Alt | KeyCode.Enter
384
- },
385
- weight: KeybindingWeight.EditorContrib,
386
- when: ( ContextKeyExpr.or(ChatContextKeys.inChatSession, accessibleViewInCodeBlock)),
387
- }]
375
+ primary: KeyMod.CtrlCmd | KeyMod.Alt | KeyCode.Enter,
376
+ mac: {
377
+ primary: KeyMod.WinCtrl | KeyMod.Alt | KeyCode.Enter
378
+ },
379
+ weight: KeybindingWeight.EditorContrib,
380
+ when: ( ContextKeyExpr.or(ChatContextKeys.inChatSession, accessibleViewInCodeBlock))
381
+ }]
388
382
  });
389
383
  }
390
384
  async runWithContext(accessor, context) {
@@ -396,18 +390,22 @@ function registerChatCodeBlockActions() {
396
390
  const editorService = accessor.get(IEditorService);
397
391
  const terminalEditorService = accessor.get(ITerminalEditorService);
398
392
  const terminalGroupService = accessor.get(ITerminalGroupService);
399
- let terminal = await terminalService.getActiveOrCreateInstance({ acceptsInput: true });
393
+ let terminal = await terminalService.getActiveOrCreateInstance({
394
+ acceptsInput: true
395
+ });
400
396
  if (terminal.xterm?.isStdinDisabled || terminal.shellLaunchConfig.isFeatureTerminal) {
401
- terminal = await terminalService.createAndFocusTerminal({ location: TerminalLocation.Panel });
402
- }
403
- else {
397
+ terminal = await terminalService.createAndFocusTerminal({
398
+ location: TerminalLocation.Panel
399
+ });
400
+ } else {
404
401
  await terminalService.focusInstance(terminal);
405
402
  }
406
403
  if (terminal.target === TerminalLocation.Editor) {
407
404
  const existingEditors = editorService.findEditors(terminal.resource);
408
- terminalEditorService.openEditor(terminal, { viewColumn: existingEditors?.[0].groupId });
409
- }
410
- else {
405
+ terminalEditorService.openEditor(terminal, {
406
+ viewColumn: existingEditors?.[0].groupId
407
+ });
408
+ } else {
411
409
  await terminalGroupService.showPanel(true);
412
410
  }
413
411
  terminal.runCommand(context.code, false);
@@ -419,9 +417,9 @@ function registerChatCodeBlockActions() {
419
417
  requestId: context.element.requestId,
420
418
  result: context.element.result,
421
419
  action: {
422
- kind: 'runInTerminal',
420
+ kind: "runInTerminal",
423
421
  codeBlockIndex: context.codeBlockIndex,
424
- languageId: context.languageId,
422
+ languageId: context.languageId
425
423
  }
426
424
  });
427
425
  }
@@ -441,32 +439,31 @@ function registerChatCodeBlockActions() {
441
439
  const focusedResponse = isResponseVM(focused) ? focused : undefined;
442
440
  const elementId = curCodeBlockInfo?.elementId;
443
441
  const element = elementId ? widget.viewModel?.getItems().find(item => item.id === elementId) : undefined;
444
- const currentResponse = element ??
445
- (focusedResponse ?? widget.viewModel?.getItems().reverse().find((item) => isResponseVM(item)));
442
+ const currentResponse = element ?? (focusedResponse ?? widget.viewModel?.getItems().reverse().find(item => isResponseVM(item)));
446
443
  if (!currentResponse || !isResponseVM(currentResponse)) {
447
444
  return;
448
445
  }
449
446
  widget.reveal(currentResponse);
450
447
  const responseCodeblocks = widget.getCodeBlockInfosForResponse(currentResponse);
451
- const focusIdx = curCodeBlockInfo ?
452
- (curCodeBlockInfo.codeBlockIndex + (reverse ? -1 : 1) + responseCodeblocks.length) % responseCodeblocks.length :
453
- reverse ? responseCodeblocks.length - 1 : 0;
448
+ const focusIdx = curCodeBlockInfo ? (curCodeBlockInfo.codeBlockIndex + (reverse ? -1 : 1) + responseCodeblocks.length) % responseCodeblocks.length : reverse ? responseCodeblocks.length - 1 : 0;
454
449
  responseCodeblocks[focusIdx]?.focus();
455
450
  }
456
451
  registerAction2(class NextCodeBlockAction extends Action2 {
457
452
  constructor() {
458
453
  super({
459
- id: 'workbench.action.chat.nextCodeBlock',
460
- title: ( localize2(4703, "Next Code Block")),
454
+ id: "workbench.action.chat.nextCodeBlock",
455
+ title: ( localize2(4715, "Next Code Block")),
461
456
  keybinding: {
462
457
  primary: KeyMod.CtrlCmd | KeyMod.Alt | KeyCode.PageDown,
463
- mac: { primary: KeyMod.CtrlCmd | KeyMod.Alt | KeyCode.PageDown, },
458
+ mac: {
459
+ primary: KeyMod.CtrlCmd | KeyMod.Alt | KeyCode.PageDown
460
+ },
464
461
  weight: KeybindingWeight.WorkbenchContrib,
465
- when: ChatContextKeys.inChatSession,
462
+ when: ChatContextKeys.inChatSession
466
463
  },
467
464
  precondition: ChatContextKeys.enabled,
468
465
  f1: true,
469
- category: CHAT_CATEGORY,
466
+ category: CHAT_CATEGORY
470
467
  });
471
468
  }
472
469
  run(accessor, ...args) {
@@ -476,17 +473,19 @@ function registerChatCodeBlockActions() {
476
473
  registerAction2(class PreviousCodeBlockAction extends Action2 {
477
474
  constructor() {
478
475
  super({
479
- id: 'workbench.action.chat.previousCodeBlock',
480
- title: ( localize2(4704, "Previous Code Block")),
476
+ id: "workbench.action.chat.previousCodeBlock",
477
+ title: ( localize2(4716, "Previous Code Block")),
481
478
  keybinding: {
482
479
  primary: KeyMod.CtrlCmd | KeyMod.Alt | KeyCode.PageUp,
483
- mac: { primary: KeyMod.CtrlCmd | KeyMod.Alt | KeyCode.PageUp, },
480
+ mac: {
481
+ primary: KeyMod.CtrlCmd | KeyMod.Alt | KeyCode.PageUp
482
+ },
484
483
  weight: KeybindingWeight.WorkbenchContrib,
485
- when: ChatContextKeys.inChatSession,
484
+ when: ChatContextKeys.inChatSession
486
485
  },
487
486
  precondition: ChatContextKeys.enabled,
488
487
  f1: true,
489
- category: CHAT_CATEGORY,
488
+ category: CHAT_CATEGORY
490
489
  });
491
490
  }
492
491
  run(accessor, ...args) {
@@ -519,7 +518,7 @@ function getContextFromEditor(editor, accessor) {
519
518
  code: editor.getValue(),
520
519
  languageId: editor.getModel().getLanguageId(),
521
520
  codemapperUri: codeBlockInfo.codemapperUri,
522
- chatSessionResource: codeBlockInfo.chatSessionResource,
521
+ chatSessionResource: codeBlockInfo.chatSessionResource
523
522
  };
524
523
  }
525
524
  function registerChatCodeCompareBlockActions() {
@@ -535,16 +534,16 @@ function registerChatCodeCompareBlockActions() {
535
534
  registerAction2(class ApplyEditsCompareBlockAction extends ChatCompareCodeBlockAction {
536
535
  constructor() {
537
536
  super({
538
- id: 'workbench.action.chat.applyCompareEdits',
539
- title: ( localize2(4705, "Apply Edits")),
537
+ id: "workbench.action.chat.applyCompareEdits",
538
+ title: ( localize2(4717, "Apply Edits")),
540
539
  f1: false,
541
540
  category: CHAT_CATEGORY,
542
541
  icon: Codicon.gitPullRequestGoToChanges,
543
542
  precondition: ( ContextKeyExpr.and(EditorContextKeys.hasChanges, ( ChatContextKeys.editApplied.negate()))),
544
543
  menu: {
545
544
  id: MenuId.ChatCompareBlock,
546
- group: 'navigation',
547
- order: 1,
545
+ group: "navigation",
546
+ order: 1
548
547
  }
549
548
  });
550
549
  }
@@ -563,8 +562,10 @@ function registerChatCodeCompareBlockActions() {
563
562
  if (!firstEdit) {
564
563
  return false;
565
564
  }
566
- const textEdits = AsyncIterableObject.fromArray(item.edits);
567
- const editorToApply = await editorService.openCodeEditor({ resource: item.uri }, null);
565
+ const textEdits = AsyncIterableProducer.fromArray(item.edits);
566
+ const editorToApply = await editorService.openCodeEditor({
567
+ resource: item.uri
568
+ }, null);
568
569
  if (editorToApply) {
569
570
  editorToApply.revealLineInCenterIfOutsideViewport(firstEdit.range.startLineNumber);
570
571
  instaService.invokeFunction(reviewEdits, editorToApply, textEdits, CancellationToken.None, undefined);
@@ -577,16 +578,16 @@ function registerChatCodeCompareBlockActions() {
577
578
  registerAction2(class DiscardEditsCompareBlockAction extends ChatCompareCodeBlockAction {
578
579
  constructor() {
579
580
  super({
580
- id: 'workbench.action.chat.discardCompareEdits',
581
- title: ( localize2(4706, "Discard Edits")),
581
+ id: "workbench.action.chat.discardCompareEdits",
582
+ title: ( localize2(4718, "Discard Edits")),
582
583
  f1: false,
583
584
  category: CHAT_CATEGORY,
584
585
  icon: Codicon.trash,
585
586
  precondition: ( ContextKeyExpr.and(EditorContextKeys.hasChanges, ( ChatContextKeys.editApplied.negate()))),
586
587
  menu: {
587
588
  id: MenuId.ChatCompareBlock,
588
- group: 'navigation',
589
- order: 2,
589
+ group: "navigation",
590
+ order: 2
590
591
  }
591
592
  });
592
593
  }