@codingame/monaco-vscode-katex-common 31.0.1 → 32.0.1
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.
- package/package.json +2 -2
- package/vscode/src/vs/platform/actionWidget/browser/actionWidgetDropdown.d.ts +15 -3
- package/vscode/src/vs/platform/actionWidget/browser/actionWidgetDropdown.js +6 -5
- package/vscode/src/vs/platform/actions/browser/buttonbar.d.ts +5 -1
- package/vscode/src/vs/platform/actions/browser/buttonbar.js +45 -14
- package/vscode/src/vs/platform/sandbox/common/terminalSandboxService.d.ts +15 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityProvider.js +16 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.js +15 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +51 -54
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionHoverWidget.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionHoverWidget.js +45 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.js +13 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.js +5 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.js +46 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentModel.js +8 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.d.ts +23 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.js +155 -46
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatImplicitContext.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatImplicitContext.js +20 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.js +37 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.js +34 -34
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/media/chatSessionPickerActionItem.css +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/chatToolRiskAssessmentService.d.ts +28 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/chatToolRiskAssessmentService.js +250 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatAgentHover.js +14 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatArtifactsWidget.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentCommandContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAnonymousRateLimitedPart.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.js +7 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCodeCitationContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCommandContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationContentPart.js +7 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.d.ts +12 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.js +51 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDisabledClaudeHooksContentPart.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatElicitationContentPart.d.ts +6 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatElicitationContentPart.js +56 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExtensionsContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatHookContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/paragraphBuffer.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/paragraphBuffer.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/chatIncrementalRendering.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/chatIncrementalRendering.js +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.js +68 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPlanReviewPart.d.ts +58 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPlanReviewPart.js +653 -75
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.js +28 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.js +91 -54
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.js +7 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.js +53 -51
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatResourceGroupWidget.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.js +42 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTipContentPart.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatWorkspaceEditContentPart.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.d.ts +6 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.js +93 -35
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatConfirmationWidget.css +5 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatPlanReview.css +169 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatQuestionCarousel.css +13 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatThinkingContent.css +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatToolConfirmationCarousel.css +29 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.js +60 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.js +13 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppModel.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppSubPart.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMissingSandboxDepsConfirmationSubPart.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatModifiedFilesConfirmationSubPart.js +15 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.d.ts +6 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js +125 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.js +29 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationCarouselPart.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationCarouselPart.js +119 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputPart.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPartUtilities.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/media/toolRiskBadge.css +77 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/toolRiskBadgeWidget.d.ts +38 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/toolRiskBadgeWidget.js +125 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatDragAndDrop.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.js +132 -59
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.d.ts +16 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.js +156 -67
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatFollowups.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.d.ts +55 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.js +93 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationWidget.d.ts +21 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationWidget.js +133 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.d.ts +53 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.js +288 -125
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.d.ts +23 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.js +699 -145
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelSelectionLogic.d.ts +12 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelSelectionLogic.js +12 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatPhoneInputPresenter.d.ts +62 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatPhoneInputPresenter.js +120 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatInputNotificationWidget.css +191 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatPhoneInputPresenter.css +22 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.js +9 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem.js +4 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.d.ts +20 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.js +89 -108
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerActionItem.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chat.css +521 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatContextUsageDetails.css +19 -19
- package/vscode/src/vs/workbench/contrib/chat/common/chatImageExtraction.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/common/chatPermissionStorageKeys.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatPermissionStorageKeys.js +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatPermissionWarnings.d.ts +27 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatPermissionWarnings.js +82 -0
- package/vscode/src/vs/workbench/contrib/chat/common/widget/chatColors.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/chat/common/widget/chatColors.js +44 -17
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAffordance.d.ts +1 -3
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAffordance.js +3 -46
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/{inlineChatEditorAffordance.d.ts → inlineChatAffordanceWidget.d.ts} +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/{inlineChatEditorAffordance.js → inlineChatAffordanceWidget.js} +6 -6
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.d.ts +2 -18
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +19 -400
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.d.ts +4 -9
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.d.ts +5 -19
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +47 -133
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +103 -25
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChat.css +29 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.d.ts +3 -32
- package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +39 -92
- package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.js +3 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +7 -7
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.js +2 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.js +24 -24
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.js +3 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.js +7 -7
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.js +5 -5
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.js +1 -1
- package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditor.js +1 -1
- package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditorInput.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +99 -32
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +13 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +76 -14
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +4 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +9 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +89 -28
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +11 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +11 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +7 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +12 -12
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +11 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineBackgroundDetachRewriter.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineBackgroundDetachRewriter.js +59 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.d.ts +8 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.js +24 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +47 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +111 -30
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +60 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +455 -171
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.d.ts +33 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.js +82 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxCommandRules.d.ts +31 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxCommandRules.js +49 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxReadAllowList.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxReadAllowList.js +302 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxRuntimeConfigurationPerOperation.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxRuntimeConfigurationPerOperation.js +118 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.d.ts +34 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +233 -48
- package/vscode/src/vs/platform/actions/browser/actionbar.d.ts +0 -16
- package/vscode/src/vs/platform/actions/browser/actionbar.js +0 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.d.ts +0 -46
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +0 -539
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.d.ts +0 -29
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +0 -386
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.d.ts +0 -101
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.js +0 -509
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditingEditorOverlay.css +0 -130
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditingExplanationWidget.css +0 -276
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPartWidgets.d.ts +0 -45
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPartWidgets.js +0 -93
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatOverlayWidget.d.ts +0 -39
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatOverlayWidget.js +0 -617
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChatOverlayWidget.css +0 -231
package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.js
CHANGED
|
@@ -56,7 +56,7 @@ class TodoListRenderer {
|
|
|
56
56
|
statusIcon.style.color = this.getStatusIconColor(todo.status);
|
|
57
57
|
iconLabel.setLabel(todo.title);
|
|
58
58
|
const statusText = this.getStatusText(todo.status);
|
|
59
|
-
const ariaLabel = ( localize(
|
|
59
|
+
const ariaLabel = ( localize(7272, "{0}, {1}", todo.title, statusText));
|
|
60
60
|
todoElement.setAttribute("aria-label", ariaLabel);
|
|
61
61
|
}
|
|
62
62
|
disposeTemplate(templateData) {
|
|
@@ -65,12 +65,12 @@ class TodoListRenderer {
|
|
|
65
65
|
getStatusText(status) {
|
|
66
66
|
switch (status) {
|
|
67
67
|
case "completed":
|
|
68
|
-
return localize(
|
|
68
|
+
return localize(7273, "completed");
|
|
69
69
|
case "in-progress":
|
|
70
|
-
return localize(
|
|
70
|
+
return localize(7274, "in progress");
|
|
71
71
|
case "not-started":
|
|
72
72
|
default:
|
|
73
|
-
return localize(
|
|
73
|
+
return localize(7275, "not started");
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
76
|
getStatusIconClass(status) {
|
|
@@ -142,7 +142,7 @@ let ChatTodoListWidget = class ChatTodoListWidget extends Disposable {
|
|
|
142
142
|
this.expandIcon.setAttribute("aria-hidden", "true");
|
|
143
143
|
this.titleElement = $(".todo-list-title");
|
|
144
144
|
this.titleElement.id = "todo-list-title";
|
|
145
|
-
this.titleElement.textContent = ( localize(
|
|
145
|
+
this.titleElement.textContent = ( localize(7276, "Todos"));
|
|
146
146
|
this.clearButtonContainer = $(".todo-clear-button-container");
|
|
147
147
|
this.createClearButton();
|
|
148
148
|
titleSection.appendChild(this.expandIcon);
|
|
@@ -164,7 +164,7 @@ let ChatTodoListWidget = class ChatTodoListWidget extends Disposable {
|
|
|
164
164
|
createClearButton() {
|
|
165
165
|
this.clearButton = ( new Button(this.clearButtonContainer, {
|
|
166
166
|
supportIcons: true,
|
|
167
|
-
ariaLabel: ( localize(
|
|
167
|
+
ariaLabel: ( localize(7277, "Clear all todos"))
|
|
168
168
|
}));
|
|
169
169
|
this.clearButton.element.tabIndex = 0;
|
|
170
170
|
this.clearButton.icon = Codicon.clearAll;
|
|
@@ -249,9 +249,9 @@ let ChatTodoListWidget = class ChatTodoListWidget extends Disposable {
|
|
|
249
249
|
accessibilityProvider: {
|
|
250
250
|
getAriaLabel: todo => {
|
|
251
251
|
const statusText = this.getStatusText(todo.status);
|
|
252
|
-
return localize(
|
|
252
|
+
return localize(7272, "{0}, {1}", todo.title, statusText);
|
|
253
253
|
},
|
|
254
|
-
getWidgetAriaLabel: () => ( localize(
|
|
254
|
+
getWidgetAriaLabel: () => ( localize(7278, "Chat Todo List"))
|
|
255
255
|
}
|
|
256
256
|
}
|
|
257
257
|
));
|
|
@@ -307,9 +307,9 @@ let ChatTodoListWidget = class ChatTodoListWidget extends Disposable {
|
|
|
307
307
|
const shouldDisable = isRequestInProgress && hasInProgressTask;
|
|
308
308
|
this.clearButton.enabled = !shouldDisable;
|
|
309
309
|
if (shouldDisable) {
|
|
310
|
-
this.clearButton.setTitle(( localize(
|
|
310
|
+
this.clearButton.setTitle(( localize(7279, "Cannot clear todos while a task is in progress")));
|
|
311
311
|
} else {
|
|
312
|
-
this.clearButton.setTitle(( localize(
|
|
312
|
+
this.clearButton.setTitle(( localize(7277, "Clear all todos")));
|
|
313
313
|
}
|
|
314
314
|
}
|
|
315
315
|
updateTitleElement(titleElement, todoList) {
|
|
@@ -321,12 +321,12 @@ let ChatTodoListWidget = class ChatTodoListWidget extends Disposable {
|
|
|
321
321
|
const notStartedTodos = todoList.filter(todo => todo.status === "not-started");
|
|
322
322
|
const firstNotStartedTodo = notStartedTodos.length > 0 ? notStartedTodos[0] : undefined;
|
|
323
323
|
const currentTaskNumber = inProgressTodos.length > 0 ? completedCount + 1 : Math.max(1, completedCount);
|
|
324
|
-
const expandButtonLabel = this._isExpanded ? ( localize(
|
|
324
|
+
const expandButtonLabel = this._isExpanded ? ( localize(7280, "Collapse Todos")) : ( localize(7281, "Expand Todos"));
|
|
325
325
|
this.expandoButton.element.setAttribute("aria-label", expandButtonLabel);
|
|
326
326
|
this.expandoButton.element.setAttribute("aria-expanded", this._isExpanded ? "true" : "false");
|
|
327
327
|
if (this._isExpanded) {
|
|
328
328
|
const titleText = $("span");
|
|
329
|
-
titleText.textContent = totalCount > 0 ? ( localize(
|
|
329
|
+
titleText.textContent = totalCount > 0 ? ( localize(7282, "Todos ({0}/{1})", currentTaskNumber, totalCount)) : ( localize(7276, "Todos"));
|
|
330
330
|
titleElement.appendChild(titleText);
|
|
331
331
|
} else {
|
|
332
332
|
const todoToShow = firstInProgressTodo || firstNotStartedTodo;
|
|
@@ -343,7 +343,7 @@ let ChatTodoListWidget = class ChatTodoListWidget extends Disposable {
|
|
|
343
343
|
icon.style.verticalAlign = "middle";
|
|
344
344
|
titleElement.appendChild(icon);
|
|
345
345
|
const todoText = $("span");
|
|
346
|
-
todoText.textContent = ( localize(
|
|
346
|
+
todoText.textContent = ( localize(7283, "{0} ({1}/{2})", todoToShow.title, currentTaskNumber, totalCount));
|
|
347
347
|
todoText.style.verticalAlign = "middle";
|
|
348
348
|
todoText.style.overflow = "hidden";
|
|
349
349
|
todoText.style.textOverflow = "ellipsis";
|
|
@@ -353,7 +353,7 @@ let ChatTodoListWidget = class ChatTodoListWidget extends Disposable {
|
|
|
353
353
|
}
|
|
354
354
|
else if (completedCount > 0 && completedCount === totalCount) {
|
|
355
355
|
const doneText = $("span");
|
|
356
|
-
doneText.textContent = ( localize(
|
|
356
|
+
doneText.textContent = ( localize(7282, "Todos ({0}/{1})", totalCount, totalCount));
|
|
357
357
|
doneText.style.verticalAlign = "middle";
|
|
358
358
|
titleElement.appendChild(doneText);
|
|
359
359
|
}
|
|
@@ -362,12 +362,12 @@ let ChatTodoListWidget = class ChatTodoListWidget extends Disposable {
|
|
|
362
362
|
getStatusText(status) {
|
|
363
363
|
switch (status) {
|
|
364
364
|
case "completed":
|
|
365
|
-
return localize(
|
|
365
|
+
return localize(7273, "completed");
|
|
366
366
|
case "in-progress":
|
|
367
|
-
return localize(
|
|
367
|
+
return localize(7274, "in progress");
|
|
368
368
|
case "not-started":
|
|
369
369
|
default:
|
|
370
|
-
return localize(
|
|
370
|
+
return localize(7275, "not started");
|
|
371
371
|
}
|
|
372
372
|
}
|
|
373
373
|
};
|
|
@@ -143,13 +143,13 @@ let ChatCollapsibleInputOutputContentPart = class ChatCollapsibleInputOutputCont
|
|
|
143
143
|
input,
|
|
144
144
|
output
|
|
145
145
|
} = this;
|
|
146
|
-
contents.inputTitle.textContent = ( localize(
|
|
146
|
+
contents.inputTitle.textContent = ( localize(7284, "Input"));
|
|
147
147
|
this.addCodeBlock(input, contents.input);
|
|
148
148
|
if (!output) {
|
|
149
149
|
contents.output.remove();
|
|
150
150
|
contents.outputTitle.remove();
|
|
151
151
|
} else {
|
|
152
|
-
contents.outputTitle.textContent = ( localize(
|
|
152
|
+
contents.outputTitle.textContent = ( localize(7285, "Output"));
|
|
153
153
|
const outputSubPart = this._register(
|
|
154
154
|
this._instantiationService.createInstance(ChatToolOutputContentSubPart, this.context, output.parts)
|
|
155
155
|
);
|
package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.js
CHANGED
|
@@ -83,7 +83,7 @@ let TreePool = class TreePool extends Disposable {
|
|
|
83
83
|
},
|
|
84
84
|
accessibilityProvider: {
|
|
85
85
|
getAriaLabel: element => element.label,
|
|
86
|
-
getWidgetAriaLabel: () => ( localize(
|
|
86
|
+
getWidgetAriaLabel: () => ( localize(7286, "File Tree"))
|
|
87
87
|
},
|
|
88
88
|
alwaysConsumeMouseWheel: false
|
|
89
89
|
}
|
|
@@ -45,15 +45,15 @@ let ChatWorkspaceEditContentPart = class ChatWorkspaceEditContentPart extends Di
|
|
|
45
45
|
for (const edit of workspaceEdit.edits) {
|
|
46
46
|
if (edit.oldResource && !edit.newResource) {
|
|
47
47
|
renderEntry(( localize(
|
|
48
|
-
|
|
48
|
+
7287,
|
|
49
49
|
"Deleted `{0}`",
|
|
50
50
|
this.labelService.getUriBasenameLabel(edit.oldResource)
|
|
51
51
|
)), Codicon.trash);
|
|
52
52
|
} else if (!edit.oldResource && edit.newResource) {
|
|
53
|
-
renderEntry(( localize(
|
|
53
|
+
renderEntry(( localize(7288, "Created []({0})", (edit.newResource.toString()))), Codicon.newFile);
|
|
54
54
|
} else if (edit.oldResource && edit.newResource) {
|
|
55
55
|
renderEntry(( localize(
|
|
56
|
-
|
|
56
|
+
7289,
|
|
57
57
|
"Renamed {0} to []({1})",
|
|
58
58
|
this.labelService.getUriBasenameLabel(edit.oldResource),
|
|
59
59
|
(edit.newResource.toString())
|
package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.d.ts
CHANGED
|
@@ -11,7 +11,6 @@ import { IModelService } from "@codingame/monaco-vscode-api/vscode/vs/editor/com
|
|
|
11
11
|
import { ITextModelService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/services/resolverService.service";
|
|
12
12
|
import { IAccessibilityService } from "@codingame/monaco-vscode-api/vscode/vs/platform/accessibility/common/accessibility.service";
|
|
13
13
|
import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service";
|
|
14
|
-
import { MenuWorkbenchToolBar } from "@codingame/monaco-vscode-api/vscode/vs/platform/actions/browser/toolbar";
|
|
15
14
|
import { MenuId } from "@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions";
|
|
16
15
|
import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
|
|
17
16
|
import { IContextKeyService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service";
|
|
@@ -72,7 +71,10 @@ export declare class CodeBlockPart extends Disposable {
|
|
|
72
71
|
*/
|
|
73
72
|
static poolKey(elementId: string, codeBlockIndex: number): string;
|
|
74
73
|
readonly editor: CodeEditorWidget;
|
|
75
|
-
|
|
74
|
+
private toolbar;
|
|
75
|
+
private _toolbarFactory;
|
|
76
|
+
private _pendingToolbarAriaLabel;
|
|
77
|
+
private _pendingToolbarContext;
|
|
76
78
|
private readonly contextKeyService;
|
|
77
79
|
readonly element: HTMLElement;
|
|
78
80
|
private readonly vulnsButton;
|
|
@@ -82,6 +84,7 @@ export declare class CodeBlockPart extends Disposable {
|
|
|
82
84
|
private currentScrollWidth;
|
|
83
85
|
private lastLayoutWidth;
|
|
84
86
|
private _isHovered;
|
|
87
|
+
private _isDropdownVisible;
|
|
85
88
|
private _toolbarElement;
|
|
86
89
|
private isDisposed;
|
|
87
90
|
private resourceContextKey;
|
|
@@ -92,6 +95,7 @@ export declare class CodeBlockPart extends Disposable {
|
|
|
92
95
|
private createEditor;
|
|
93
96
|
focus(): void;
|
|
94
97
|
private updatePaddingForLayout;
|
|
98
|
+
private _ensureToolbar;
|
|
95
99
|
private _configureForScreenReader;
|
|
96
100
|
private getEditorOptionsFromConfig;
|
|
97
101
|
layout(width?: number | undefined): void;
|
package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.js
CHANGED
|
@@ -69,6 +69,7 @@ import { EditorContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/editor
|
|
|
69
69
|
registerCss(codeBlockPart);
|
|
70
70
|
const $ = $$1;
|
|
71
71
|
const defaultCodeblockPadding = 10;
|
|
72
|
+
const defaultChatScrollbarSize = 7;
|
|
72
73
|
let CodeBlockPart = class CodeBlockPart extends Disposable {
|
|
73
74
|
static poolKey(elementId, codeBlockIndex) {
|
|
74
75
|
return `${elementId}/${codeBlockIndex}`;
|
|
@@ -103,6 +104,7 @@ let CodeBlockPart = class CodeBlockPart extends Disposable {
|
|
|
103
104
|
this.textModelService = textModelService;
|
|
104
105
|
this.currentScrollWidth = 0;
|
|
105
106
|
this._isHovered = false;
|
|
107
|
+
this._isDropdownVisible = false;
|
|
106
108
|
this.isDisposed = false;
|
|
107
109
|
this.element = $(".interactive-result-code-block");
|
|
108
110
|
this.resourceContextKey = instantiationService.createInstance(StaticResourceContextKey);
|
|
@@ -133,21 +135,20 @@ let CodeBlockPart = class CodeBlockPart extends Disposable {
|
|
|
133
135
|
multipleDefinitions: "goto",
|
|
134
136
|
multipleImplementations: "goto"
|
|
135
137
|
},
|
|
136
|
-
ariaLabel: ( localize(
|
|
138
|
+
ariaLabel: ( localize(7290, "Code block")),
|
|
137
139
|
overflowWidgetsDomNode,
|
|
138
140
|
tabFocusMode: true,
|
|
139
141
|
...this.getEditorOptionsFromConfig()
|
|
140
142
|
});
|
|
141
143
|
const toolbarElement = append(this.element, $(".interactive-result-code-block-toolbar"));
|
|
144
|
+
this._toolbarElement = toolbarElement;
|
|
142
145
|
const editorScopedService = this._register(this.editor.contextKeyService.createScoped(toolbarElement));
|
|
143
146
|
const editorScopedInstantiationService = this._register(scopedInstantiationService.createChild(( new ServiceCollection([IContextKeyService, editorScopedService]))));
|
|
144
|
-
this.
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
})
|
|
150
|
-
);
|
|
147
|
+
this._toolbarFactory = () => editorScopedInstantiationService.createInstance(MenuWorkbenchToolBar, toolbarElement, menuId, {
|
|
148
|
+
menuOptions: {
|
|
149
|
+
shouldForwardArgs: true
|
|
150
|
+
}
|
|
151
|
+
});
|
|
151
152
|
const vulnsContainer = append(this.element, $(".interactive-result-vulns"));
|
|
152
153
|
const vulnsHeaderElement = append(vulnsContainer, $(".interactive-result-vulns-header", undefined));
|
|
153
154
|
this.vulnsButton = this._register(( new Button(vulnsHeaderElement, {
|
|
@@ -169,23 +170,18 @@ let CodeBlockPart = class CodeBlockPart extends Disposable {
|
|
|
169
170
|
this.element.classList.toggle("chat-vulnerabilities-collapsed", !element.vulnerabilitiesListExpanded);
|
|
170
171
|
this.layout();
|
|
171
172
|
}));
|
|
172
|
-
let isDropdownVisible = false;
|
|
173
|
-
this._register(this.toolbar.onDidChangeDropdownVisibility(e => {
|
|
174
|
-
isDropdownVisible = e;
|
|
175
|
-
toolbarElement.classList.toggle("force-visibility", e || this._isHovered);
|
|
176
|
-
}));
|
|
177
173
|
this._isHovered = false;
|
|
178
174
|
this._register(addDisposableListener(this.element, "mouseenter", () => {
|
|
179
175
|
this._isHovered = true;
|
|
180
176
|
toolbarElement.classList.add("force-visibility");
|
|
177
|
+
this._ensureToolbar();
|
|
181
178
|
}));
|
|
182
179
|
this._register(addDisposableListener(this.element, "mouseleave", () => {
|
|
183
180
|
this._isHovered = false;
|
|
184
|
-
if (!
|
|
181
|
+
if (!this._isDropdownVisible) {
|
|
185
182
|
toolbarElement.classList.remove("force-visibility");
|
|
186
183
|
}
|
|
187
184
|
}));
|
|
188
|
-
this._toolbarElement = toolbarElement;
|
|
189
185
|
this._configureForScreenReader();
|
|
190
186
|
this._register(
|
|
191
187
|
this.accessibilityService.onDidChangeScreenReaderOptimized(() => this._configureForScreenReader())
|
|
@@ -213,6 +209,7 @@ let CodeBlockPart = class CodeBlockPart extends Disposable {
|
|
|
213
209
|
}));
|
|
214
210
|
this._register(this.editor.onDidFocusEditorWidget(() => {
|
|
215
211
|
this.element.classList.add("focused");
|
|
212
|
+
this._ensureToolbar();
|
|
216
213
|
WordHighlighterContribution.get(this.editor)?.restoreViewState(true);
|
|
217
214
|
}));
|
|
218
215
|
this._register(
|
|
@@ -281,15 +278,60 @@ let CodeBlockPart = class CodeBlockPart extends Disposable {
|
|
|
281
278
|
}
|
|
282
279
|
});
|
|
283
280
|
}
|
|
281
|
+
_ensureToolbar() {
|
|
282
|
+
if (this.isDisposed) {
|
|
283
|
+
return undefined;
|
|
284
|
+
}
|
|
285
|
+
if (this.currentCodeBlockData?.renderOptions?.hideToolbar) {
|
|
286
|
+
return undefined;
|
|
287
|
+
}
|
|
288
|
+
if (!this.toolbar) {
|
|
289
|
+
const factory = this._toolbarFactory;
|
|
290
|
+
if (!factory) {
|
|
291
|
+
return undefined;
|
|
292
|
+
}
|
|
293
|
+
this._toolbarFactory = undefined;
|
|
294
|
+
const toolbar = this._register(factory());
|
|
295
|
+
this.toolbar = toolbar;
|
|
296
|
+
this._register(toolbar.onDidChangeDropdownVisibility(e => {
|
|
297
|
+
this._isDropdownVisible = e;
|
|
298
|
+
this._toolbarElement.classList.toggle("force-visibility", e || this._isHovered);
|
|
299
|
+
}));
|
|
300
|
+
if (this._pendingToolbarAriaLabel !== undefined) {
|
|
301
|
+
toolbar.setAriaLabel(this._pendingToolbarAriaLabel);
|
|
302
|
+
this._pendingToolbarAriaLabel = undefined;
|
|
303
|
+
}
|
|
304
|
+
if (this._pendingToolbarContext !== undefined) {
|
|
305
|
+
toolbar.context = this._pendingToolbarContext;
|
|
306
|
+
this._pendingToolbarContext = undefined;
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
return this.toolbar;
|
|
310
|
+
}
|
|
284
311
|
_configureForScreenReader() {
|
|
285
|
-
const
|
|
312
|
+
const hideToolbar = !!this.currentCodeBlockData?.renderOptions?.hideToolbar;
|
|
286
313
|
if (this.accessibilityService.isScreenReaderOptimized()) {
|
|
287
|
-
|
|
314
|
+
if (hideToolbar) {
|
|
315
|
+
hide(this._toolbarElement);
|
|
316
|
+
} else {
|
|
317
|
+
this._toolbarElement.style.display = "block";
|
|
318
|
+
if (this.currentCodeBlockData) {
|
|
319
|
+
this._ensureToolbar();
|
|
320
|
+
}
|
|
321
|
+
}
|
|
322
|
+
} else if (hideToolbar) {
|
|
323
|
+
hide(this._toolbarElement);
|
|
288
324
|
} else {
|
|
289
|
-
|
|
325
|
+
this._toolbarElement.style.display = "";
|
|
290
326
|
}
|
|
291
327
|
}
|
|
292
328
|
getEditorOptionsFromConfig() {
|
|
329
|
+
const renderOptions = this.currentCodeBlockData?.renderOptions;
|
|
330
|
+
const scrollbar = renderOptions?.maxHeightInLines ? {
|
|
331
|
+
vertical: "auto",
|
|
332
|
+
verticalScrollbarSize: defaultChatScrollbarSize,
|
|
333
|
+
...renderOptions?.editorOptions?.scrollbar
|
|
334
|
+
} : undefined;
|
|
293
335
|
return {
|
|
294
336
|
wordWrap: this.editorOptions.configuration.resultEditor.wordWrap,
|
|
295
337
|
fontLigatures: this.editorOptions.configuration.resultEditor.fontLigatures,
|
|
@@ -298,7 +340,10 @@ let CodeBlockPart = class CodeBlockPart extends Disposable {
|
|
|
298
340
|
fontSize: this.editorOptions.configuration.resultEditor.fontSize,
|
|
299
341
|
fontWeight: this.editorOptions.configuration.resultEditor.fontWeight,
|
|
300
342
|
lineHeight: this.editorOptions.configuration.resultEditor.lineHeight,
|
|
301
|
-
...
|
|
343
|
+
...renderOptions?.editorOptions,
|
|
344
|
+
...(scrollbar ? {
|
|
345
|
+
scrollbar
|
|
346
|
+
} : {})
|
|
302
347
|
};
|
|
303
348
|
}
|
|
304
349
|
layout(width = this.lastLayoutWidth) {
|
|
@@ -342,15 +387,23 @@ let CodeBlockPart = class CodeBlockPart extends Disposable {
|
|
|
342
387
|
});
|
|
343
388
|
if (!this.editor.getOption(EditorOption.ariaLabel)) {
|
|
344
389
|
this.editor.updateOptions({
|
|
345
|
-
ariaLabel: ( localize(
|
|
390
|
+
ariaLabel: ( localize(7291, "Code block {0}", data.codeBlockIndex + 1))
|
|
346
391
|
});
|
|
347
392
|
}
|
|
348
393
|
this.layout(width);
|
|
349
|
-
|
|
394
|
+
const toolbarAriaLabel = ( localize(7292, "Code block {0}", data.codeBlockIndex + 1));
|
|
395
|
+
if (this.toolbar) {
|
|
396
|
+
this.toolbar.setAriaLabel(toolbarAriaLabel);
|
|
397
|
+
} else {
|
|
398
|
+
this._pendingToolbarAriaLabel = toolbarAriaLabel;
|
|
399
|
+
}
|
|
350
400
|
if (data.renderOptions?.hideToolbar) {
|
|
351
|
-
hide(this.
|
|
401
|
+
hide(this._toolbarElement);
|
|
352
402
|
} else {
|
|
353
|
-
show(this.
|
|
403
|
+
show(this._toolbarElement);
|
|
404
|
+
if (this.accessibilityService.isScreenReaderOptimized()) {
|
|
405
|
+
this._ensureToolbar();
|
|
406
|
+
}
|
|
354
407
|
}
|
|
355
408
|
if (data.vulns?.length && isResponseVM(data.element)) {
|
|
356
409
|
clearNode(this.vulnsListElement);
|
|
@@ -401,7 +454,7 @@ let CodeBlockPart = class CodeBlockPart extends Disposable {
|
|
|
401
454
|
if (!this.currentCodeBlockData || !this.currentCodeBlockData.vulns) {
|
|
402
455
|
return "";
|
|
403
456
|
}
|
|
404
|
-
const referencesLabel = this.currentCodeBlockData.vulns.length > 1 ? ( localize(
|
|
457
|
+
const referencesLabel = this.currentCodeBlockData.vulns.length > 1 ? ( localize(7293, "{0} vulnerabilities", this.currentCodeBlockData.vulns.length)) : ( localize(7294, "{0} vulnerability", 1));
|
|
405
458
|
const icon = element => element.vulnerabilitiesListExpanded ? Codicon.chevronDown : Codicon.chevronRight;
|
|
406
459
|
return `${referencesLabel} $(${icon(this.currentCodeBlockData.element).id})`;
|
|
407
460
|
}
|
|
@@ -410,7 +463,7 @@ let CodeBlockPart = class CodeBlockPart extends Disposable {
|
|
|
410
463
|
if (!textModel) {
|
|
411
464
|
return;
|
|
412
465
|
}
|
|
413
|
-
|
|
466
|
+
const context = {
|
|
414
467
|
code: textModel.getTextBuffer().getValueInRange(textModel.getFullModelRange(), EndOfLinePreference.TextDefined),
|
|
415
468
|
codeBlockIndex: data.codeBlockIndex,
|
|
416
469
|
element: data.element,
|
|
@@ -418,6 +471,11 @@ let CodeBlockPart = class CodeBlockPart extends Disposable {
|
|
|
418
471
|
codemapperUri: data.codemapperUri,
|
|
419
472
|
chatSessionResource: data.chatSessionResource
|
|
420
473
|
};
|
|
474
|
+
if (this.toolbar) {
|
|
475
|
+
this.toolbar.context = context;
|
|
476
|
+
} else {
|
|
477
|
+
this._pendingToolbarContext = context;
|
|
478
|
+
}
|
|
421
479
|
this.resourceContextKey.set(textModel.uri);
|
|
422
480
|
}
|
|
423
481
|
setText(newText) {
|
|
@@ -531,7 +589,7 @@ let CodeCompareBlockPart = class CodeCompareBlockPart extends Disposable {
|
|
|
531
589
|
multipleDefinitions: "goto",
|
|
532
590
|
multipleImplementations: "goto"
|
|
533
591
|
},
|
|
534
|
-
ariaLabel: ( localize(
|
|
592
|
+
ariaLabel: ( localize(7290, "Code block")),
|
|
535
593
|
overflowWidgetsDomNode,
|
|
536
594
|
...this.getEditorOptionsFromConfig()
|
|
537
595
|
});
|
|
@@ -610,8 +668,8 @@ let CodeCompareBlockPart = class CodeCompareBlockPart extends Disposable {
|
|
|
610
668
|
stickyScroll: {
|
|
611
669
|
enabled: false
|
|
612
670
|
},
|
|
613
|
-
originalAriaLabel: ( localize(
|
|
614
|
-
modifiedAriaLabel: ( localize(
|
|
671
|
+
originalAriaLabel: ( localize(7295, "Original")),
|
|
672
|
+
modifiedAriaLabel: ( localize(7296, "Modified")),
|
|
615
673
|
diffAlgorithm: "advanced",
|
|
616
674
|
readOnly: false,
|
|
617
675
|
isInEmbeddedEditor: true,
|
|
@@ -652,7 +710,7 @@ let CodeCompareBlockPart = class CodeCompareBlockPart extends Disposable {
|
|
|
652
710
|
const toolbarElt = this.toolbar.getElement();
|
|
653
711
|
toolbarElt.style.display = "block";
|
|
654
712
|
if (this.accessibilityService.isScreenReaderOptimized()) {
|
|
655
|
-
toolbarElt.ariaLabel = ( localize(
|
|
713
|
+
toolbarElt.ariaLabel = ( localize(7297, "Code block toolbar"));
|
|
656
714
|
}
|
|
657
715
|
}
|
|
658
716
|
getEditorOptionsFromConfig() {
|
|
@@ -693,7 +751,7 @@ let CodeCompareBlockPart = class CodeCompareBlockPart extends Disposable {
|
|
|
693
751
|
await this.updateEditor(data, token);
|
|
694
752
|
this.layout(width);
|
|
695
753
|
this.diffEditor.updateOptions({
|
|
696
|
-
ariaLabel: ( localize(
|
|
754
|
+
ariaLabel: ( localize(7298, "Code Edits")),
|
|
697
755
|
readOnly: !!data.isReadOnly
|
|
698
756
|
});
|
|
699
757
|
this.resourceLabel.element.setFile(data.edit.uri, {
|
|
@@ -728,12 +786,12 @@ let CodeCompareBlockPart = class CodeCompareBlockPart extends Disposable {
|
|
|
728
786
|
});
|
|
729
787
|
let template;
|
|
730
788
|
if (data.edit.state.applied === 1) {
|
|
731
|
-
template = ( localize(
|
|
789
|
+
template = ( localize(7299, "Applied 1 change in [[``{0}``]]", uriLabel));
|
|
732
790
|
} else if (data.edit.state.applied < 0) {
|
|
733
|
-
template = ( localize(
|
|
791
|
+
template = ( localize(7300, "Edits in [[``{0}``]] have been rejected", uriLabel));
|
|
734
792
|
} else {
|
|
735
793
|
template = ( localize(
|
|
736
|
-
|
|
794
|
+
7301,
|
|
737
795
|
"Applied {0} changes in [[``{1}``]]",
|
|
738
796
|
data.edit.state.applied,
|
|
739
797
|
uriLabel
|
|
@@ -863,8 +921,8 @@ let DefaultChatTextEditor = class DefaultChatTextEditor {
|
|
|
863
921
|
async _checkSha1(model, item) {
|
|
864
922
|
if (item.state?.sha1 && this._sha1.computeSHA1(model) && this._sha1.computeSHA1(model) !== item.state.sha1) {
|
|
865
923
|
const result = await this.dialogService.confirm({
|
|
866
|
-
message: ( localize(
|
|
867
|
-
detail: ( localize(
|
|
924
|
+
message: ( localize(7302, "The original file has been modified.")),
|
|
925
|
+
detail: ( localize(7303, "Do you want to apply the changes anyway?"))
|
|
868
926
|
});
|
|
869
927
|
if (!result.confirmed) {
|
|
870
928
|
return false;
|
|
@@ -22,6 +22,11 @@
|
|
|
22
22
|
font-size: var(--vscode-chat-font-size-body-s);
|
|
23
23
|
}
|
|
24
24
|
|
|
25
|
+
.chat-confirmation-widget-message {
|
|
26
|
+
-webkit-user-select: text;
|
|
27
|
+
user-select: text;
|
|
28
|
+
}
|
|
29
|
+
|
|
25
30
|
.chat-confirmation-widget-container .chat-confirmation-widget .chat-confirmation-widget-title {
|
|
26
31
|
width: 100%;
|
|
27
32
|
border-radius: 3px;
|