@codingame/monaco-vscode-chat-service-override 30.0.0 → 31.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 (377) hide show
  1. package/index.js +21 -3
  2. package/package.json +5 -5
  3. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostProtocolClient.d.ts +125 -0
  4. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostProtocolClient.js +393 -0
  5. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostServiceImpl.d.ts +65 -0
  6. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostServiceImpl.js +453 -0
  7. package/vscode/src/vs/platform/agentHost/browser/webSocketClientTransport.d.ts +28 -0
  8. package/vscode/src/vs/platform/agentHost/browser/webSocketClientTransport.js +81 -0
  9. package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.d.ts +75 -0
  10. package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.js +180 -0
  11. package/vscode/src/vs/platform/agentHost/common/agentService.d.ts +202 -51
  12. package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.d.ts +182 -0
  13. package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.js +282 -0
  14. package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.d.ts +303 -32
  15. package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.js +14 -0
  16. package/vscode/src/vs/platform/agentHost/common/state/protocol/errors.d.ts +1 -1
  17. package/vscode/src/vs/platform/agentHost/common/state/protocol/errors.js +9 -0
  18. package/vscode/src/vs/platform/agentHost/common/state/protocol/reducers.d.ts +30 -0
  19. package/vscode/src/vs/platform/agentHost/common/state/protocol/reducers.js +662 -0
  20. package/vscode/src/vs/platform/agentHost/common/state/sessionActions.d.ts +12 -5
  21. package/vscode/src/vs/platform/agentHost/common/state/sessionActions.js +9 -0
  22. package/vscode/src/vs/platform/agentHost/common/state/sessionCapabilities.d.ts +17 -0
  23. package/vscode/src/vs/platform/agentHost/common/state/sessionCapabilities.js +5 -0
  24. package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.d.ts +5 -5
  25. package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.js +14 -0
  26. package/vscode/src/vs/platform/agentHost/common/state/sessionTransport.d.ts +42 -0
  27. package/vscode/src/vs/platform/agentHost/common/state/sessionTransport.js +7 -0
  28. package/vscode/src/vs/platform/agentPlugins/common/pluginParsers.d.ts +118 -0
  29. package/vscode/src/vs/platform/agentPlugins/common/pluginParsers.js +551 -0
  30. package/vscode/src/vs/platform/networkFilter/common/networkFilterService.d.ts +22 -0
  31. package/vscode/src/vs/platform/networkFilter/common/networkFilterService.js +83 -0
  32. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +2 -2
  33. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +16 -16
  34. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +8 -8
  35. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +59 -59
  36. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.js +1 -1
  37. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +12 -12
  38. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.d.ts +2 -1
  39. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +17 -15
  40. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.d.ts +8 -0
  41. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +113 -9
  42. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +81 -4
  43. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
  44. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.js +47 -26
  45. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +15 -10
  46. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +13 -13
  47. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +6 -6
  48. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.js +14 -14
  49. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +13 -14
  50. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +15 -14
  51. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
  52. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.d.ts +5 -0
  53. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +58 -23
  54. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
  55. package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +18 -18
  56. package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.d.ts +2 -1
  57. package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.js +24 -22
  58. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.js +8 -8
  59. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +2 -2
  60. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +2 -2
  61. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +3 -1
  62. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +29 -20
  63. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +16 -16
  64. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.d.ts +9 -0
  65. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.js +23 -0
  66. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +3 -3
  67. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.d.ts +2 -2
  68. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +65 -55
  69. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +5 -5
  70. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +1 -1
  71. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.js +1 -1
  72. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.js +4 -4
  73. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +1 -1
  74. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +5 -5
  75. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +28 -28
  76. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +17 -17
  77. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +4 -4
  78. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.d.ts +10 -3
  79. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.js +80 -15
  80. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.d.ts +20 -14
  81. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +30 -15
  82. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.d.ts +131 -0
  83. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.js +363 -0
  84. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +31 -76
  85. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +374 -764
  86. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.d.ts +8 -0
  87. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.js +11 -1
  88. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +222 -44
  89. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +20 -11
  90. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +269 -123
  91. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +1 -1
  92. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePage.d.ts +40 -0
  93. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePage.js +40 -0
  94. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.d.ts +26 -0
  95. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.js +249 -0
  96. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.d.ts +3 -0
  97. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.js +3 -0
  98. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.d.ts +4 -3
  99. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.js +5 -17
  100. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.d.ts +14 -1
  101. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +113 -58
  102. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +202 -68
  103. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationWelcomePromptLaunchers.css +246 -0
  104. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +15 -1
  105. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +162 -50
  106. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.d.ts +24 -0
  107. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.js +306 -0
  108. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +1 -1
  109. package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +581 -257
  110. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.d.ts +15 -1
  111. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +245 -26
  112. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +25 -7
  113. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.d.ts +1 -1
  114. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.js +3 -5
  115. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +2 -2
  116. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +19 -19
  117. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +7 -7
  118. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +6 -6
  119. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.js +7 -7
  120. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.js +103 -28
  121. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowLayout.js +3 -2
  122. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.d.ts +11 -1
  123. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +80 -29
  124. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.js +17 -17
  125. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.d.ts +20 -3
  126. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +128 -65
  127. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.js +8 -8
  128. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.js +23 -23
  129. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.js +28 -28
  130. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +11 -11
  131. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/media/chatDebug.css +18 -0
  132. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -1
  133. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +3 -3
  134. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +2 -2
  135. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +1 -1
  136. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +1 -0
  137. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +11 -1
  138. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +3 -3
  139. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +6 -5
  140. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +1 -1
  141. package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.js +1 -1
  142. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +10 -27
  143. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.d.ts +4 -41
  144. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +4 -310
  145. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.d.ts +0 -12
  146. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +3 -30
  147. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +2 -2
  148. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.d.ts +1 -0
  149. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +61 -53
  150. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatManagementEditor.css +0 -110
  151. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +3 -3
  152. package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +31 -31
  153. package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +2 -2
  154. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +46 -34
  155. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.d.ts +4 -4
  156. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +17 -18
  157. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.js +6 -6
  158. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.d.ts +1 -0
  159. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +96 -82
  160. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.d.ts +2 -1
  161. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +21 -14
  162. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +18 -18
  163. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatus.js +1 -1
  164. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.d.ts +15 -8
  165. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +315 -263
  166. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +14 -14
  167. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/media/chatStatus.css +196 -24
  168. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +56 -17
  169. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipEligibilityTracker.d.ts +2 -2
  170. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +2 -2
  171. package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +8 -4
  172. package/vscode/src/vs/workbench/contrib/chat/browser/claudePluginRecommendations.js +2 -2
  173. package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +4 -4
  174. package/vscode/src/vs/workbench/contrib/chat/browser/enablementActions.js +4 -4
  175. package/vscode/src/vs/workbench/contrib/chat/browser/enablementStatusWidget.js +2 -2
  176. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +1 -1
  177. package/vscode/src/vs/workbench/contrib/chat/browser/pluginGitCommandService.d.ts +18 -0
  178. package/vscode/src/vs/workbench/contrib/chat/browser/pluginGitCommandService.js +31 -0
  179. package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +26 -25
  180. package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.d.ts +3 -1
  181. package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +48 -57
  182. package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.js +6 -6
  183. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +6 -6
  184. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +26 -26
  185. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.d.ts +2 -2
  186. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +3 -3
  187. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
  188. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +2 -2
  189. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +8 -8
  190. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +7 -7
  191. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +3 -3
  192. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +3 -3
  193. package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.d.ts +11 -6
  194. package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.js +226 -36
  195. package/vscode/src/vs/workbench/contrib/chat/browser/telemetry/chatModelCountTelemetry.d.ts +23 -0
  196. package/vscode/src/vs/workbench/contrib/chat/browser/telemetry/chatModelCountTelemetry.js +82 -0
  197. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.d.ts +3 -1
  198. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +108 -56
  199. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +24 -24
  200. package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +6 -6
  201. package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +7 -7
  202. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
  203. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +9 -9
  204. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.d.ts +3 -4
  205. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.js +9 -16
  206. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +21 -80
  207. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +26 -59
  208. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +1 -1
  209. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +4 -3
  210. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +9 -1
  211. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.d.ts +2 -1
  212. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +46 -14
  213. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +2 -2
  214. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugEvents.d.ts +40 -0
  215. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugEvents.js +60 -0
  216. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.d.ts +32 -5
  217. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.js +152 -26
  218. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +5 -9
  219. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +265 -261
  220. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelStore.d.ts +28 -2
  221. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelStore.js +75 -7
  222. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.js +9 -1
  223. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +6 -5
  224. package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.d.ts +18 -0
  225. package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.js +32 -4
  226. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +10 -25
  227. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +7 -52
  228. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +58 -466
  229. package/vscode/src/vs/workbench/contrib/chat/common/plugins/workspacePluginSettingsService.js +3 -1
  230. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +36 -18
  231. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +5 -5
  232. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +5 -5
  233. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +12 -12
  234. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +0 -1
  235. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +168 -182
  236. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +49 -29
  237. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +491 -462
  238. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +16 -6
  239. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +18 -12
  240. package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.d.ts +24 -4
  241. package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.js +145 -68
  242. package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
  243. package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.js +2 -2
  244. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +4 -4
  245. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +25 -25
  246. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -2
  247. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.d.ts +2 -4
  248. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.js +19 -17
  249. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.d.ts +1 -1
  250. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.js +3 -3
  251. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.d.ts +5 -17
  252. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +77 -157
  253. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +14 -14
  254. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +1 -1
  255. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +10 -10
  256. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +5 -5
  257. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +1 -1
  258. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
  259. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +17 -17
  260. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibleView.js +1 -1
  261. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +21 -21
  262. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatEnabler.js +1 -1
  263. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.d.ts +4 -1
  264. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.js +29 -7
  265. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +2 -2
  266. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.d.ts +1 -1
  267. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +3 -3
  268. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +12 -14
  269. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +4 -4
  270. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.d.ts +5 -1
  271. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +49 -12
  272. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +4 -4
  273. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +9 -8
  274. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.d.ts +2 -2
  275. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +13 -8
  276. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sendToTerminalTool.d.ts +53 -0
  277. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sendToTerminalTool.js +319 -0
  278. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +15 -15
  279. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +8 -8
  280. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +15 -15
  281. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.d.ts +1 -1
  282. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +2 -2
  283. package/vscode/src/vs/workbench/services/agentHost/common/agentHostFileSystemService.d.ts +21 -0
  284. package/vscode/src/vs/workbench/services/agentHost/common/agentHostFileSystemService.js +35 -0
  285. package/vscode/src/vs/platform/agentHost/common/agentService.service.d.ts +0 -94
  286. package/vscode/src/vs/platform/agentHost/common/state/protocol/action-origin.generated.d.ts +0 -16
  287. package/vscode/src/vs/platform/agentHost/common/state/protocol/actions.d.ts +0 -578
  288. package/vscode/src/vs/platform/agentHost/common/state/protocol/messages.d.ts +0 -206
  289. package/vscode/src/vs/platform/agentHost/common/state/protocol/notifications.d.ts +0 -114
  290. package/vscode/src/vs/platform/agentHost/common/state/protocol/state.d.ts +0 -860
  291. package/vscode/src/vs/platform/agentHost/common/state/sessionState.d.ts +0 -27
  292. package/vscode/src/vs/platform/browserElements/common/browserElements.d.ts +0 -58
  293. package/vscode/src/vs/platform/browserElements/common/browserElements.js +0 -16
  294. package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.d.ts +0 -18
  295. package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.js +0 -13
  296. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/media/simpleBrowserOverlay.css +0 -85
  297. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.d.ts +0 -9
  298. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.js +0 -443
  299. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.d.ts +0 -17
  300. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.js +0 -132
  301. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatUsageWidget.css +0 -69
  302. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.d.ts +0 -65
  303. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.js +0 -66
  304. package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.d.ts +0 -8
  305. package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.js +0 -158
  306. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.d.ts +0 -2
  307. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.js +0 -41
  308. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/commandFileWriteParser.d.ts +0 -24
  309. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.d.ts +0 -26
  310. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.js +0 -142
  311. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +0 -45
  312. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +0 -164
  313. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +0 -50
  314. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +0 -163
  315. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +0 -27
  316. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +0 -142
  317. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +0 -29
  318. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +0 -137
  319. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.d.ts +0 -40
  320. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.js +0 -174
  321. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.d.ts +0 -3
  322. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +0 -39
  323. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +0 -32
  324. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +0 -249
  325. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.d.ts +0 -41
  326. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +0 -92
  327. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.d.ts +0 -40
  328. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +0 -209
  329. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/awaitTerminalTool.d.ts +0 -12
  330. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/awaitTerminalTool.js +0 -106
  331. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.d.ts +0 -31
  332. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.js +0 -392
  333. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.d.ts +0 -45
  334. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +0 -243
  335. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.d.ts +0 -52
  336. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.js +0 -10
  337. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.d.ts +0 -20
  338. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +0 -310
  339. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.d.ts +0 -19
  340. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +0 -168
  341. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.d.ts +0 -8
  342. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.js +0 -25
  343. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/commandLinePresenter.d.ts +0 -41
  344. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.d.ts +0 -19
  345. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.js +0 -37
  346. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.d.ts +0 -19
  347. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.js +0 -37
  348. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.d.ts +0 -19
  349. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.js +0 -44
  350. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.d.ts +0 -13
  351. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.js +0 -21
  352. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.d.ts +0 -5
  353. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.js +0 -27
  354. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePreventHistoryRewriter.d.ts +0 -14
  355. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePreventHistoryRewriter.js +0 -29
  356. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.d.ts +0 -8
  357. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.js +0 -33
  358. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineRewriter.d.ts +0 -20
  359. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.d.ts +0 -8
  360. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.js +0 -28
  361. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +0 -118
  362. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +0 -1019
  363. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.d.ts +0 -49
  364. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.js +0 -23
  365. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/outputAnalyzer.d.ts +0 -9
  366. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +0 -150
  367. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +0 -1619
  368. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.d.ts +0 -22
  369. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.js +0 -41
  370. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.d.ts +0 -17
  371. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.js +0 -118
  372. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/toolIds.d.ts +0 -12
  373. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/toolIds.js +0 -17
  374. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.d.ts +0 -25
  375. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.js +0 -130
  376. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.d.ts +0 -122
  377. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +0 -482
@@ -1,443 +0,0 @@
1
-
2
- import { registerCss } from '@codingame/monaco-vscode-api/css';
3
- import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
4
- import * as simpleBrowserOverlay from './media/simpleBrowserOverlay.css';
5
- import { DisposableStore, toDisposable, DisposableMap, combinedDisposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
6
- import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
7
- import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
8
- import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
9
- import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
10
- import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
11
- import { IEditorGroupsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorGroupsService.service';
12
- import { EditorGroupView } from '@codingame/monaco-vscode-api/vscode/vs/workbench/browser/parts/editor/editorGroupView';
13
- import { Event } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
14
- import { ServiceCollection } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/serviceCollection';
15
- import { IContextKeyService } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service';
16
- import { joinPath } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
17
- import { CancellationTokenSource } from '@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation';
18
- import { IHostService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/host/browser/host.service';
19
- import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
20
- import { ButtonWithDropdown, Button } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/button/button';
21
- import { defaultButtonStyles } from '@codingame/monaco-vscode-api/vscode/vs/platform/theme/browser/defaultStyles';
22
- import { createElement, addDisposableListener } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/dom';
23
- import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
24
- import { cleanupOldImages, createFileForMedia } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatImageUtils';
25
- import { IFileService } from '@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service';
26
- import { IEnvironmentService } from '@codingame/monaco-vscode-api/vscode/vs/platform/environment/common/environment.service';
27
- import { ILogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service';
28
- import { IPreferencesService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/preferences/common/preferences.service';
29
- import { IBrowserElementsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/browserElements/browser/browserElementsService.service';
30
- import { IContextMenuService } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextview/browser/contextView.service';
31
- import { toAction } from '@codingame/monaco-vscode-api/vscode/vs/base/common/actions';
32
- import { getDisplayNameFromOuterHTML } from '../../../../../platform/browserElements/common/browserElements.js';
33
- import { ITelemetryService } from '@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service';
34
- import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/actions/chatContextKeys';
35
- import { observableContextKey, observableConfigValue } from '@codingame/monaco-vscode-api/vscode/vs/platform/observable/common/platformObservableUtils';
36
- import { observableFromEvent } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableFromEvent';
37
- import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
38
- import { observableSignalFromEvent } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableSignalFromEvent';
39
- import { derivedOpts } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/derived';
40
-
41
- registerCss(simpleBrowserOverlay);
42
- let SimpleBrowserOverlayWidget = class SimpleBrowserOverlayWidget {
43
- constructor(
44
- _editor,
45
- _container,
46
- _hostService,
47
- _chatWidgetService,
48
- fileService,
49
- environmentService,
50
- logService,
51
- configurationService,
52
- _preferencesService,
53
- _browserElementsService,
54
- contextMenuService,
55
- telemetryService
56
- ) {
57
- this._editor = _editor;
58
- this._container = _container;
59
- this._hostService = _hostService;
60
- this._chatWidgetService = _chatWidgetService;
61
- this.fileService = fileService;
62
- this.environmentService = environmentService;
63
- this.logService = logService;
64
- this.configurationService = configurationService;
65
- this._preferencesService = _preferencesService;
66
- this._browserElementsService = _browserElementsService;
67
- this.contextMenuService = contextMenuService;
68
- this.telemetryService = telemetryService;
69
- this._showStore = ( new DisposableStore());
70
- this._timeout = undefined;
71
- this._activeLocator = undefined;
72
- this._browserType = undefined;
73
- this._showStore.add(this.configurationService.onDidChangeConfiguration(e => {
74
- if (e.affectsConfiguration("chat.sendElementsToChat.enabled")) {
75
- if (this.configurationService.getValue("chat.sendElementsToChat.enabled")) {
76
- this.showElement(this._domNode);
77
- } else {
78
- this.hideElement(this._domNode);
79
- }
80
- }
81
- }));
82
- this.imagesFolder = joinPath(this.environmentService.workspaceStorageHome, "vscode-chat-images");
83
- cleanupOldImages(this.fileService, this.logService, this.imagesFolder);
84
- this._domNode = createElement("div");
85
- this._domNode.className = "element-selection-message";
86
- const mainContent = createElement("div");
87
- mainContent.className = "element-selection-main-content";
88
- const message = createElement("span");
89
- const startSelectionMessage = ( localize(5564, "Add element to chat"));
90
- message.textContent = startSelectionMessage;
91
- mainContent.appendChild(message);
92
- let cts;
93
- const actions = [];
94
- actions.push(toAction({
95
- id: "singleSelection",
96
- label: ( localize(5565, "Select an Element")),
97
- enabled: true,
98
- run: async () => {
99
- await startElementSelection();
100
- }
101
- }), toAction({
102
- id: "continuousSelection",
103
- label: ( localize(5566, "Continuous Selection")),
104
- enabled: true,
105
- run: async () => {
106
- this._editor.focus();
107
- cts = ( new CancellationTokenSource());
108
- message.textContent = ( localize(5567, "Selecting element..."));
109
- this.hideElement(startButton.element);
110
- this.showElement(cancelButton.element);
111
- cancelButton.label = ( localize(5568, "Done"));
112
- while (!cts.token.isCancellationRequested) {
113
- try {
114
- await this.addElementToChat(cts);
115
- } catch (err) {
116
- this.logService.error("Failed to select this element.", err);
117
- cts.cancel();
118
- break;
119
- }
120
- }
121
- message.textContent = ( localize(5569, "Element added to chat"));
122
- finishedSelecting();
123
- }
124
- }));
125
- const startButton = this._showStore.add(( new ButtonWithDropdown(mainContent, {
126
- actions: actions,
127
- addPrimaryActionToDropdown: false,
128
- contextMenuProvider: this.contextMenuService,
129
- supportShortLabel: true,
130
- title: ( localize(5570, "Click to select an element.")),
131
- supportIcons: true,
132
- ...defaultButtonStyles
133
- })));
134
- startButton.primaryButton.label = ( localize(5571, "Start"));
135
- startButton.element.classList.add("element-selection-start");
136
- const cancelButton = this._showStore.add(( new Button(mainContent, {
137
- ...defaultButtonStyles,
138
- supportIcons: true,
139
- title: ( localize(5572, "Click to cancel selection."))
140
- })));
141
- cancelButton.element.className = "element-selection-cancel hidden";
142
- const cancelButtonLabel = ( localize(5573, "Cancel"));
143
- cancelButton.label = cancelButtonLabel;
144
- const configure = this._showStore.add(( new Button(mainContent, {
145
- supportIcons: true,
146
- title: ( localize(5574, "Configure Attachments Sent"))
147
- })));
148
- configure.icon = Codicon.gear;
149
- const collapseOverlay = this._showStore.add(( new Button(mainContent, {
150
- supportIcons: true,
151
- title: ( localize(5575, "Collapse Overlay"))
152
- })));
153
- collapseOverlay.icon = Codicon.chevronRight;
154
- const nextSelection = this._showStore.add(( new Button(mainContent, {
155
- supportIcons: true,
156
- title: ( localize(5576, "Select Again"))
157
- })));
158
- nextSelection.icon = Codicon.close;
159
- nextSelection.element.classList.add("hidden");
160
- const expandContainer = createElement("div");
161
- expandContainer.className = "element-expand-container hidden";
162
- const expandOverlay = this._showStore.add(( new Button(expandContainer, {
163
- supportIcons: true,
164
- title: ( localize(5577, "Expand Overlay"))
165
- })));
166
- expandOverlay.icon = Codicon.layout;
167
- this._domNode.appendChild(mainContent);
168
- this._domNode.appendChild(expandContainer);
169
- const resetButtons = () => {
170
- this.hideElement(nextSelection.element);
171
- this.showElement(startButton.element);
172
- this.showElement(collapseOverlay.element);
173
- };
174
- const finishedSelecting = () => {
175
- this.hideElement(cancelButton.element);
176
- cancelButton.label = cancelButtonLabel;
177
- this.hideElement(collapseOverlay.element);
178
- this.showElement(nextSelection.element);
179
- this._timeout = setTimeout(() => {
180
- message.textContent = startSelectionMessage;
181
- resetButtons();
182
- }, 3000);
183
- };
184
- const startElementSelection = async () => {
185
- cts = ( new CancellationTokenSource());
186
- this._editor.focus();
187
- message.textContent = ( localize(5567, "Selecting element..."));
188
- this.hideElement(startButton.element);
189
- this.showElement(cancelButton.element);
190
- await this.addElementToChat(cts);
191
- message.textContent = ( localize(5569, "Element added to chat"));
192
- finishedSelecting();
193
- };
194
- this._showStore.add(
195
- addDisposableListener(startButton.primaryButton.element, "click", async () => {
196
- await startElementSelection();
197
- })
198
- );
199
- this._showStore.add(addDisposableListener(cancelButton.element, "click", () => {
200
- cts.cancel();
201
- message.textContent = ( localize(5578, "Selection canceled"));
202
- finishedSelecting();
203
- }));
204
- this._showStore.add(addDisposableListener(collapseOverlay.element, "click", () => {
205
- this.hideElement(mainContent);
206
- this.showElement(expandContainer);
207
- }));
208
- this._showStore.add(addDisposableListener(expandOverlay.element, "click", () => {
209
- this.showElement(mainContent);
210
- this.hideElement(expandContainer);
211
- }));
212
- this._showStore.add(addDisposableListener(nextSelection.element, "click", () => {
213
- clearTimeout(this._timeout);
214
- message.textContent = startSelectionMessage;
215
- resetButtons();
216
- }));
217
- this._showStore.add(addDisposableListener(configure.element, "click", () => {
218
- this._preferencesService.openSettings({
219
- jsonEditor: false,
220
- query: "@id:chat.sendElementsToChat.enabled,chat.sendElementsToChat.attachCSS,chat.sendElementsToChat.attachImages"
221
- });
222
- }));
223
- }
224
- setActiveLocator(locator, browserType) {
225
- this._activeLocator = locator;
226
- this._browserType = browserType;
227
- }
228
- hideElement(element) {
229
- if (element.classList.contains("hidden")) {
230
- return;
231
- }
232
- element.classList.add("hidden");
233
- }
234
- showElement(element) {
235
- if (!element.classList.contains("hidden")) {
236
- return;
237
- }
238
- element.classList.remove("hidden");
239
- }
240
- async addElementToChat(cts) {
241
- this.telemetryService.publicLog2("simpleBrowser.addElementToChat.start", {
242
- browserType: this._browserType
243
- });
244
- const editorContainer = this._container.querySelector(".editor-container");
245
- const editorContainerPosition = editorContainer ? editorContainer.getBoundingClientRect() : this._container.getBoundingClientRect();
246
- const elementData = await this._browserElementsService.getElementData({
247
- x: editorContainerPosition.x,
248
- y: editorContainerPosition.y + 32.4,
249
- width: editorContainerPosition.width,
250
- height: editorContainerPosition.height - 32.4
251
- }, cts.token, this._activeLocator);
252
- if (!elementData) {
253
- throw ( new Error("Element data not found"));
254
- }
255
- const bounds = elementData.bounds;
256
- const toAttach = [];
257
- const widget = (await this._chatWidgetService.revealWidget()) ?? this._chatWidgetService.lastFocusedWidget;
258
- const attachCss = this.configurationService.getValue("chat.sendElementsToChat.attachCSS");
259
- let value = (attachCss ? "Attached HTML and CSS Context" : "Attached HTML Context") + "\n\n" + elementData.outerHTML;
260
- if (attachCss) {
261
- value += "\n\n" + elementData.computedStyle;
262
- }
263
- const displayName = getDisplayNameFromOuterHTML(elementData.outerHTML);
264
- toAttach.push({
265
- id: "element-" + Date.now(),
266
- name: displayName,
267
- fullName: displayName,
268
- value: value,
269
- kind: "element",
270
- icon: ThemeIcon.fromId(Codicon.layout.id),
271
- ancestors: elementData.ancestors,
272
- attributes: elementData.attributes,
273
- computedStyles: attachCss ? elementData.computedStyles : undefined,
274
- dimensions: elementData.dimensions,
275
- innerText: elementData.innerText
276
- });
277
- if (this.configurationService.getValue("chat.sendElementsToChat.attachImages")) {
278
- this._domNode.style.display = "none";
279
- await ( new Promise(resolve => setTimeout(resolve, 100)));
280
- const screenshot = await this._hostService.getScreenshot(bounds);
281
- if (!screenshot) {
282
- throw ( new Error("Screenshot failed"));
283
- }
284
- const fileReference = await createFileForMedia(this.fileService, this.imagesFolder, screenshot.buffer, "image/png");
285
- toAttach.push({
286
- id: "element-screenshot-" + Date.now(),
287
- name: "Element Screenshot",
288
- fullName: "Element Screenshot",
289
- kind: "image",
290
- value: screenshot.buffer,
291
- references: fileReference ? [{
292
- reference: fileReference,
293
- kind: "reference"
294
- }] : []
295
- });
296
- this._domNode.style.display = "";
297
- }
298
- widget?.attachmentModel?.addContext(...toAttach);
299
- this.telemetryService.publicLog2("simpleBrowser.addElementToChat.added", {
300
- browserType: this._browserType,
301
- attachCss,
302
- attachImages: this.configurationService.getValue("chat.sendElementsToChat.attachImages") ?? false
303
- });
304
- }
305
- dispose() {
306
- this._showStore.dispose();
307
- }
308
- getDomNode() {
309
- return this._domNode;
310
- }
311
- };
312
- SimpleBrowserOverlayWidget = ( __decorate([( __param(2, IHostService)), ( __param(3, IChatWidgetService)), ( __param(4, IFileService)), ( __param(5, IEnvironmentService)), ( __param(6, ILogService)), ( __param(7, IConfigurationService)), ( __param(8, IPreferencesService)), ( __param(9, IBrowserElementsService)), ( __param(10, IContextMenuService)), ( __param(11, ITelemetryService))], SimpleBrowserOverlayWidget));
313
- let SimpleBrowserOverlayController = class SimpleBrowserOverlayController {
314
- constructor(
315
- container,
316
- group,
317
- instaService,
318
- configurationService,
319
- _browserElementsService,
320
- contextKeyService
321
- ) {
322
- this.configurationService = configurationService;
323
- this._browserElementsService = _browserElementsService;
324
- this.contextKeyService = contextKeyService;
325
- this._store = ( new DisposableStore());
326
- this._domNode = createElement("div");
327
- this._domNode.classList.add("chat-simple-browser-overlay");
328
- this._domNode.style.position = "absolute";
329
- this._domNode.style.bottom = `5px`;
330
- this._domNode.style.right = `5px`;
331
- this._domNode.style.zIndex = `100`;
332
- const widget = instaService.createInstance(SimpleBrowserOverlayWidget, group, container);
333
- this._domNode.appendChild(widget.getDomNode());
334
- this._store.add(toDisposable(() => this._domNode.remove()));
335
- this._store.add(widget);
336
- const connectingWebviewElement = createElement("div");
337
- connectingWebviewElement.className = "connecting-webview-element";
338
- let cts = ( new CancellationTokenSource());
339
- const show = async (locator, browserType) => {
340
- widget.setActiveLocator(locator, browserType);
341
- connectingWebviewElement.textContent = ( localize(5579, "Connecting to webview..."));
342
- if (!container.contains(connectingWebviewElement)) {
343
- container.appendChild(connectingWebviewElement);
344
- }
345
- cts.cancel();
346
- cts = ( new CancellationTokenSource());
347
- try {
348
- await this._browserElementsService.startDebugSession(cts.token, locator);
349
- } catch (error) {
350
- connectingWebviewElement.textContent = ( localize(5580, "Please reopen the preview."));
351
- return;
352
- }
353
- if (cts.token.isCancellationRequested) {
354
- return;
355
- }
356
- if (!container.contains(this._domNode)) {
357
- container.appendChild(this._domNode);
358
- }
359
- connectingWebviewElement.remove();
360
- };
361
- const hide = () => {
362
- widget.setActiveLocator(undefined, undefined);
363
- cts.cancel();
364
- if (container.contains(this._domNode)) {
365
- this._domNode.remove();
366
- }
367
- connectingWebviewElement.remove();
368
- };
369
- const activeEditorSignal = observableSignalFromEvent(this, Event.any(group.onDidActiveEditorChange, group.onDidModelChange));
370
- const activeIdObs = derivedOpts({}, r => {
371
- activeEditorSignal.read(r);
372
- const editor = group.activeEditorPane;
373
- const isSimpleBrowser = editor?.input.editorId === "mainThreadWebview-simpleBrowser.view";
374
- const isLiveServer = editor?.input.editorId === "mainThreadWebview-browserPreview";
375
- if (isSimpleBrowser || isLiveServer) {
376
- const webviewInput = editor.input;
377
- const browserType = isSimpleBrowser ? "simpleBrowser" : "livePreview";
378
- return {
379
- webviewId: webviewInput.webview.container.id,
380
- browserType
381
- };
382
- }
383
- return undefined;
384
- });
385
- const chatEnabledObs = observableContextKey(ChatContextKeys.enabled.key, this.contextKeyService);
386
- const sendElementsEnabledObs = observableConfigValue("chat.sendElementsToChat.enabled", true, this.configurationService);
387
- this._store.add(autorun(r => {
388
- const activeEditor = activeIdObs.read(r);
389
- const isChatEnabled = chatEnabledObs.read(r);
390
- const isSendElementsEnabled = sendElementsEnabledObs.read(r);
391
- if (!isChatEnabled || !isSendElementsEnabled || !activeEditor) {
392
- hide();
393
- return;
394
- }
395
- show({
396
- webviewId: activeEditor.webviewId
397
- }, activeEditor.browserType);
398
- }));
399
- }
400
- dispose() {
401
- this._store.dispose();
402
- }
403
- };
404
- SimpleBrowserOverlayController = ( __decorate([( __param(2, IInstantiationService)), ( __param(3, IConfigurationService)), ( __param(4, IBrowserElementsService)), ( __param(5, IContextKeyService))], SimpleBrowserOverlayController));
405
- let SimpleBrowserOverlay = class SimpleBrowserOverlay {
406
- static {
407
- this.ID = "chat.simpleBrowser.overlay";
408
- }
409
- constructor(editorGroupsService, instantiationService) {
410
- this._store = ( new DisposableStore());
411
- const editorGroups = observableFromEvent(
412
- this,
413
- Event.any(editorGroupsService.onDidAddGroup, editorGroupsService.onDidRemoveGroup),
414
- () => editorGroupsService.groups
415
- );
416
- const overlayWidgets = this._store.add(( new DisposableMap()));
417
- this._store.add(autorun(r => {
418
- const toDelete = ( new Set(( overlayWidgets.keys())));
419
- const groups = editorGroups.read(r);
420
- for (const group of groups) {
421
- if (!(group instanceof EditorGroupView)) {
422
- continue;
423
- }
424
- toDelete.delete(group);
425
- if (!( overlayWidgets.has(group))) {
426
- const scopedInstaService = instantiationService.createChild(( new ServiceCollection([IContextKeyService, group.scopedContextKeyService])));
427
- const container = group.element;
428
- const ctrl = scopedInstaService.createInstance(SimpleBrowserOverlayController, container, group);
429
- overlayWidgets.set(group, combinedDisposable(ctrl, scopedInstaService));
430
- }
431
- }
432
- for (const group of toDelete) {
433
- overlayWidgets.deleteAndDispose(group);
434
- }
435
- }));
436
- }
437
- dispose() {
438
- this._store.dispose();
439
- }
440
- };
441
- SimpleBrowserOverlay = ( __decorate([( __param(0, IEditorGroupsService)), ( __param(1, IInstantiationService))], SimpleBrowserOverlay));
442
-
443
- export { SimpleBrowserOverlay };
@@ -1,17 +0,0 @@
1
- import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
2
- import { IChatEntitlementService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService.service";
3
- export declare class ChatUsageWidget extends Disposable {
4
- private readonly chatEntitlementService;
5
- private readonly _onDidChangeContentHeight;
6
- readonly onDidChangeContentHeight: import("@codingame/monaco-vscode-api/vscode/vs/base/common/event").Event<number>;
7
- readonly element: HTMLElement;
8
- private usageSection;
9
- private readonly dateFormatter;
10
- private readonly dateTimeFormatter;
11
- constructor(chatEntitlementService: IChatEntitlementService);
12
- private create;
13
- private render;
14
- private renderQuotaItem;
15
- private getQuotaPercentageUsed;
16
- private renderLimitedQuotaItem;
17
- }
@@ -1,132 +0,0 @@
1
-
2
- import { registerCss } from '@codingame/monaco-vscode-api/css';
3
- import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
4
- import * as chatUsageWidget from './media/chatUsageWidget.css';
5
- import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
6
- import { Emitter } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
7
- import { $ as $$1, append, clearNode } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/dom';
8
- import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
9
- import { IChatEntitlementService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService.service';
10
- import { language } from '@codingame/monaco-vscode-api/vscode/vs/base/common/platform';
11
- import { safeIntl } from '@codingame/monaco-vscode-api/vscode/vs/base/common/date';
12
-
13
- registerCss(chatUsageWidget);
14
- const $ = $$1;
15
- let ChatUsageWidget = class ChatUsageWidget extends Disposable {
16
- constructor(chatEntitlementService) {
17
- super();
18
- this.chatEntitlementService = chatEntitlementService;
19
- this._onDidChangeContentHeight = this._register(( new Emitter()));
20
- this.onDidChangeContentHeight = this._onDidChangeContentHeight.event;
21
- this.dateFormatter = safeIntl.DateTimeFormat(language, {
22
- year: "numeric",
23
- month: "long",
24
- day: "numeric"
25
- });
26
- this.dateTimeFormatter = safeIntl.DateTimeFormat(language, {
27
- year: "numeric",
28
- month: "long",
29
- day: "numeric",
30
- hour: "numeric",
31
- minute: "numeric"
32
- });
33
- this.element = $$1(".chat-usage-widget");
34
- this.create(this.element);
35
- this.render();
36
- this._register(this.chatEntitlementService.onDidChangeQuotaRemaining(() => this.render()));
37
- this._register(this.chatEntitlementService.onDidChangeEntitlement(() => this.render()));
38
- }
39
- create(container) {
40
- this.usageSection = append(container, $(".copilot-usage-section"));
41
- }
42
- render() {
43
- clearNode(this.usageSection);
44
- const {
45
- chat: chatQuota,
46
- completions: completionsQuota,
47
- premiumChat: premiumChatQuota,
48
- resetDate,
49
- resetDateHasTime
50
- } = this.chatEntitlementService.quotas;
51
- if (this.chatEntitlementService.anonymous && this.chatEntitlementService.sentiment.installed && !completionsQuota && !chatQuota && !premiumChatQuota) {
52
- this.renderLimitedQuotaItem(this.usageSection, ( localize(6143, "Inline Suggestions")));
53
- this.renderLimitedQuotaItem(this.usageSection, ( localize(6144, "Chat messages")));
54
- }
55
- else if (completionsQuota || chatQuota || premiumChatQuota) {
56
- if (completionsQuota) {
57
- this.renderQuotaItem(this.usageSection, ( localize(6145, "Inline Suggestions")), completionsQuota);
58
- }
59
- if (chatQuota) {
60
- this.renderQuotaItem(this.usageSection, ( localize(6146, "Chat messages")), chatQuota);
61
- }
62
- if (premiumChatQuota) {
63
- const premiumLabel = premiumChatQuota.overageEnabled ? ( localize(6147, "Included premium requests")) : ( localize(6148, "Premium requests"));
64
- this.renderQuotaItem(
65
- this.usageSection,
66
- premiumLabel,
67
- premiumChatQuota,
68
- premiumChatQuota.overageEnabled
69
- );
70
- if (premiumChatQuota.overageEnabled && !premiumChatQuota.unlimited) {
71
- const overageMessage = append(this.usageSection, $(".overage-message"));
72
- overageMessage.append(( localize(6149, "Additional premium requests approved.")));
73
- append(overageMessage, $("br"));
74
- overageMessage.append(( localize(
75
- 6150,
76
- "You can continue after included premium requests limit reaches 100%."
77
- )));
78
- }
79
- }
80
- if (resetDate) {
81
- const resetText = append(this.usageSection, $(".allowance-resets"));
82
- resetText.textContent = ( localize(
83
- 6151,
84
- "Allowance resets {0}.",
85
- resetDateHasTime ? this.dateTimeFormatter.value.format(( new Date(resetDate))) : this.dateFormatter.value.format(( new Date(resetDate)))
86
- ));
87
- }
88
- }
89
- const height = this.element.offsetHeight || 400;
90
- this._onDidChangeContentHeight.fire(height);
91
- }
92
- renderQuotaItem(container, label, quota, overageEnabled = false) {
93
- const quotaItem = append(container, $(".quota-item"));
94
- const quotaItemHeader = append(quotaItem, $(".quota-item-header"));
95
- const quotaItemLabel = append(quotaItemHeader, $(".quota-item-label"));
96
- quotaItemLabel.textContent = label;
97
- const quotaItemValue = append(quotaItemHeader, $(".quota-item-value"));
98
- if (quota.unlimited) {
99
- quotaItemValue.textContent = ( localize(6152, "Included"));
100
- } else {
101
- quotaItemValue.textContent = ( localize(6152, "Included"));
102
- }
103
- const progressBarContainer = append(quotaItem, $(".quota-bar"));
104
- const progressBar = append(progressBarContainer, $(".quota-bit"));
105
- const percentageUsed = this.getQuotaPercentageUsed(quota);
106
- progressBar.style.width = percentageUsed + "%";
107
- if (percentageUsed >= 90 && !overageEnabled) {
108
- quotaItem.classList.add("error");
109
- } else if (percentageUsed >= 75 && !overageEnabled) {
110
- quotaItem.classList.add("warning");
111
- }
112
- }
113
- getQuotaPercentageUsed(quota) {
114
- if (quota.unlimited) {
115
- return 0;
116
- }
117
- return Math.max(0, 100 - quota.percentRemaining);
118
- }
119
- renderLimitedQuotaItem(container, label) {
120
- const quotaItem = append(container, $(".quota-item"));
121
- const quotaItemHeader = append(quotaItem, $(".quota-item-header"));
122
- const quotaItemLabel = append(quotaItemHeader, $(".quota-item-label"));
123
- quotaItemLabel.textContent = label;
124
- const quotaItemValue = append(quotaItemHeader, $(".quota-item-value"));
125
- quotaItemValue.textContent = ( localize(6153, "Limited"));
126
- const progressBarContainer = append(quotaItem, $(".quota-bar"));
127
- append(progressBarContainer, $(".quota-bit"));
128
- }
129
- };
130
- ChatUsageWidget = ( __decorate([( __param(0, IChatEntitlementService))], ChatUsageWidget));
131
-
132
- export { ChatUsageWidget };
@@ -1,69 +0,0 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Microsoft Corporation. All rights reserved.
3
- * Licensed under the MIT License. See License.txt in the project root for license information.
4
- *--------------------------------------------------------------------------------------------*/
5
-
6
- .chat-usage-widget .quota-item {
7
- margin-bottom: 12px;
8
- }
9
-
10
- .chat-usage-widget .quota-item-header {
11
- display: flex;
12
- align-items: center;
13
- justify-content: space-between;
14
- margin-bottom: 4px;
15
- }
16
-
17
- .chat-usage-widget .quota-item-label {
18
- color: var(--vscode-foreground);
19
- }
20
-
21
- .chat-usage-widget .quota-item-value {
22
- color: var(--vscode-descriptionForeground);
23
- }
24
-
25
- /* Progress bar - matching chat status implementation */
26
- .chat-usage-widget .quota-item .quota-bar {
27
- width: 100%;
28
- height: 4px;
29
- background-color: var(--vscode-gauge-background);
30
- border-radius: 4px;
31
- border: 1px solid var(--vscode-gauge-border);
32
- margin: 4px 0;
33
- }
34
-
35
- .chat-usage-widget .quota-item .quota-bar .quota-bit {
36
- height: 100%;
37
- background-color: var(--vscode-gauge-foreground);
38
- border-radius: 4px;
39
- transition: width 0.3s ease;
40
- }
41
-
42
- .chat-usage-widget .quota-item.warning .quota-bar {
43
- background-color: var(--vscode-gauge-warningBackground);
44
- }
45
-
46
- .chat-usage-widget .quota-item.warning .quota-bar .quota-bit {
47
- background-color: var(--vscode-gauge-warningForeground);
48
- }
49
-
50
- .chat-usage-widget .quota-item.error .quota-bar {
51
- background-color: var(--vscode-gauge-errorBackground);
52
- }
53
-
54
- .chat-usage-widget .quota-item.error .quota-bar .quota-bit {
55
- background-color: var(--vscode-gauge-errorForeground);
56
- }
57
-
58
- .chat-usage-widget .overage-message {
59
- font-size: 13px;
60
- color: var(--vscode-foreground);
61
- margin-top: 12px;
62
- margin-bottom: 8px;
63
- }
64
-
65
- .chat-usage-widget .allowance-resets {
66
- font-size: 13px;
67
- color: var(--vscode-foreground);
68
- margin-top: 12px;
69
- }