@codingame/monaco-vscode-katex-common 34.1.2 → 35.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.
- package/package.json +2 -2
- package/vscode/src/vs/base/browser/animationSync.d.ts +36 -0
- package/vscode/src/vs/base/browser/animationSync.js +23 -0
- package/vscode/src/vs/base/browser/ui/pixelSpinner/pixelSpinner.js +23 -2
- package/vscode/src/vs/platform/actions/browser/buttonbar.js +3 -2
- package/vscode/src/vs/platform/agentHost/common/claudeSessionConfigKeys.d.ts +5 -5
- package/vscode/src/vs/platform/agentHost/common/fileEditDiff.d.ts +32 -0
- package/vscode/src/vs/platform/agentHost/common/fileEditDiff.js +33 -0
- package/vscode/src/vs/platform/agentHost/common/meta/agentFeedbackAnnotations.d.ts +90 -0
- package/vscode/src/vs/platform/agentHost/common/meta/agentFeedbackAttachments.d.ts +30 -0
- package/vscode/src/vs/platform/agentHost/common/meta/agentToolCallMeta.d.ts +65 -0
- package/vscode/src/vs/platform/agentHost/common/sessionConfigKeys.d.ts +16 -5
- package/vscode/src/vs/platform/agentHost/common/sessionConfigKeys.js +3 -2
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-resource-watch/reducer.d.ts +21 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/reducers.d.ts +8 -0
- package/vscode/src/vs/platform/agentHost/common/state/sessionReducers.d.ts +9 -0
- package/vscode/src/vs/platform/mcp/common/modelContextProtocolApps.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityProvider.js +16 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.d.ts +29 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.js +105 -28
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.d.ts +15 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +74 -44
- 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.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +98 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.contribution.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.contribution.js +31 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.d.ts +45 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.js +163 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostFolderPickerActionItem.d.ts +47 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostFolderPickerActionItem.js +172 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostGenericConfigChips.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostGenericConfigChips.js +7 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionReferenceAttachment.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSnapshotController.d.ts +116 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSnapshotController.js +348 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/media/agentHostChatInputPicker.css +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/stateToProgressAdapter.d.ts +211 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/stateToProgressAdapter.js +64 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionApprovalModel.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionApprovalModel.js +13 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionHoverWidget.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionHoverWidget.js +30 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.js +29 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.d.ts +24 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.js +119 -41
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/agentsessionsviewer.css +27 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionTypeAvailability.d.ts +63 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionTypeAvailability.js +97 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.d.ts +5 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.js +105 -88
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.js +46 -48
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.d.ts +28 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.js +98 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.js +9 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatTurnPills.css +162 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/chatToolRiskAssessmentService.d.ts +9 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/chatToolRiskAssessmentService.js +95 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.d.ts +22 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +151 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatAgentHover.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatArtifactsWidget.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentMarkdownRenderer.js +20 -2
- 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.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.js +61 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAutoModeResolutionContentPart.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAutoModeResolutionContentPart.js +55 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.d.ts +6 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.js +81 -30
- 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 +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDisabledClaudeHooksContentPart.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatEditPillElement.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatEditPillElement.js +13 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatElicitationContentPart.js +9 -33
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExtensionsContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExternalEditContentPart.d.ts +6 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExternalEditContentPart.js +21 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatHookContentPart.js +1 -1
- 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.d.ts +6 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.js +40 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpAuthenticationContentPart.d.ts +35 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpAuthenticationContentPart.js +140 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersStartingContentPart.d.ts +24 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersStartingContentPart.js +58 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.js +29 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPlanReviewPart.js +30 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.js +44 -44
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.d.ts +1 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.js +12 -66
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.js +6 -6
- 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.d.ts +39 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.js +167 -43
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.d.ts +1 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.js +9 -86
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSystemNotificationContentPart.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSystemNotificationContentPart.js +23 -0
- 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 +9 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.js +141 -72
- 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.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.js +17 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTurnPillsPart.d.ts +29 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTurnPillsPart.js +110 -0
- 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.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatAgentFeedbackReviewConfirmation.css +133 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatAutoModeResolution.css +30 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatCodeBlockPill.css +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatConfirmationWidget.css +18 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatPlanReview.css +23 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatQuestionCarousel.css +33 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatSubagentContent.css +23 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatTerminalToolProgressPart.css +44 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatThinkingContent.css +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatToolConfirmationCarousel.css +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.d.ts +9 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.js +21 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatAgentFeedbackReviewConfirmationSubPart.d.ts +48 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatAgentFeedbackReviewConfirmationSubPart.js +279 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppModel.d.ts +43 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppModel.js +53 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppSubPart.d.ts +7 -9
- 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/chatModifiedFilesConfirmationSubPart.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatModifiedFilesConfirmationSubPart.js +24 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/{chatMissingSandboxDepsConfirmationSubPart.d.ts → chatSandboxPrerequisiteConfirmationSubPart.d.ts} +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/{chatMissingSandboxDepsConfirmationSubPart.js → chatSandboxPrerequisiteConfirmationSubPart.js} +14 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.d.ts +0 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js +30 -59
- 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 +41 -29
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationCarouselPart.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.js +12 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.js +43 -35
- 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.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.js +11 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/toolRiskBadgeHelper.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/toolRiskBadgeHelper.js +51 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/toolRiskBadgeWidget.js +4 -4
- 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 +18 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.js +266 -98
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListWidget.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListWidget.js +8 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatRestoreCheckpointActionViewItem.d.ts +32 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatRestoreCheckpointActionViewItem.js +135 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatTurnPills.d.ts +85 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatTurnPills.js +275 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.d.ts +18 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.js +84 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatFollowups.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatGoalBannerWidget.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationWidget.d.ts +6 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationWidget.js +52 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.d.ts +187 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.js +435 -139
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputStatePersistence.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputStatePersistence.js +21 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelConfigurationLogic.d.ts +50 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelConfigurationLogic.js +49 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelConfigurationStore.d.ts +79 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelConfigurationStore.js +127 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.d.ts +84 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.js +658 -430
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelSelectionLogic.d.ts +72 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelSelectionLogic.js +82 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatPhoneInputPresenter.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatSelectedTools.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatSelectedTools.js +6 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.js +23 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatGoalBannerWidget.css +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatInputNotificationWidget.css +28 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.js +15 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem.d.ts +60 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem.js +18 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.d.ts +49 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.js +141 -81
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.d.ts +7 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.js +30 -47
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerActionItem.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerInputActionItem.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerInputActionItem.js +18 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chat.css +469 -148
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.d.ts +11 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.js +79 -28
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.d.ts +71 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.js +107 -45
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatContextUsageDetails.css +20 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatErrorMessages.d.ts +110 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatErrorMessages.js +37 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatImageExtraction.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatImageExtraction.js +13 -11
- package/vscode/src/vs/workbench/contrib/chat/common/chatPermissionWarnings.d.ts +8 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatPermissionWarnings.js +57 -21
- package/vscode/src/vs/workbench/contrib/chat/common/widget/chatColors.js +18 -18
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +4 -4
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +5 -5
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +30 -30
- package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.js +3 -3
- package/vscode/src/vs/workbench/contrib/mcp/browser/mcpToolCallUI.d.ts +39 -8
- package/vscode/src/vs/workbench/contrib/mcp/browser/mcpToolCallUI.js +168 -72
- 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/chat/browser/widget/input/chatInputStatusActionViewItem.d.ts +0 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputStatusActionViewItem.js +0 -147
package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.js
CHANGED
|
@@ -97,12 +97,12 @@ let ImplicitContextAttachmentWidget = class ImplicitContextAttachmentWidget exte
|
|
|
97
97
|
contextNode.tabIndex = 0;
|
|
98
98
|
contextNode.classList.toggle("disabled", !context.enabled);
|
|
99
99
|
const file = context.uri;
|
|
100
|
-
const attachmentTypeName = file?.scheme === Schemas.vscodeNotebookCell ? ( localize(
|
|
101
|
-
const contextLabel = context.name ?? (file ? basename(file) : ( localize(
|
|
100
|
+
const attachmentTypeName = file?.scheme === Schemas.vscodeNotebookCell ? ( localize(6231, "cell")) : ( localize(6232, "file"));
|
|
101
|
+
const contextLabel = context.name ?? (file ? basename(file) : ( localize(6233, "context")));
|
|
102
102
|
const isSuggestedEnabled = this.configService.getValue("chat.implicitContext.suggestedContext");
|
|
103
103
|
if (isSuggestedEnabled) {
|
|
104
104
|
if (!isSelection) {
|
|
105
|
-
const buttonMsg = context.enabled ? ( localize(
|
|
105
|
+
const buttonMsg = context.enabled ? ( localize(6234, "Disable {0} context {1}", attachmentTypeName, contextLabel)) : ( localize(6235, "Add {0} to context", contextLabel));
|
|
106
106
|
const toggleButton = this.renderDisposables.add(( new Button(contextNode, {
|
|
107
107
|
supportIcons: true,
|
|
108
108
|
title: buttonMsg
|
|
@@ -117,7 +117,7 @@ let ImplicitContextAttachmentWidget = class ImplicitContextAttachmentWidget exte
|
|
|
117
117
|
context.enabled = false;
|
|
118
118
|
}));
|
|
119
119
|
} else {
|
|
120
|
-
const pinButtonMsg = ( localize(
|
|
120
|
+
const pinButtonMsg = ( localize(6236, "Pin selection"));
|
|
121
121
|
const pinButton = this.renderDisposables.add(( new Button(contextNode, {
|
|
122
122
|
supportIcons: true,
|
|
123
123
|
title: pinButtonMsg
|
|
@@ -150,7 +150,7 @@ let ImplicitContextAttachmentWidget = class ImplicitContextAttachmentWidget exte
|
|
|
150
150
|
})
|
|
151
151
|
);
|
|
152
152
|
} else {
|
|
153
|
-
const buttonMsg = context.enabled ? ( localize(
|
|
153
|
+
const buttonMsg = context.enabled ? ( localize(6237, "Disable current {0} context", attachmentTypeName)) : ( localize(6238, "Enable current {0} context", attachmentTypeName));
|
|
154
154
|
const toggleButton = this.renderDisposables.add(( new Button(contextNode, {
|
|
155
155
|
supportIcons: true,
|
|
156
156
|
title: buttonMsg
|
|
@@ -174,9 +174,9 @@ let ImplicitContextAttachmentWidget = class ImplicitContextAttachmentWidget exte
|
|
|
174
174
|
context.icon,
|
|
175
175
|
context.value.resourceUri,
|
|
176
176
|
markdownTooltip,
|
|
177
|
-
( localize(
|
|
177
|
+
( localize(6239, "Current file context"))
|
|
178
178
|
);
|
|
179
|
-
contextNode.ariaLabel = ( localize(
|
|
179
|
+
contextNode.ariaLabel = ( localize(6240, "Suggested context, {0}", context.name));
|
|
180
180
|
} else {
|
|
181
181
|
title = this.renderResource(context.value, context.isSelection, context.enabled, label, contextNode);
|
|
182
182
|
}
|
|
@@ -236,23 +236,23 @@ let ImplicitContextAttachmentWidget = class ImplicitContextAttachmentWidget exte
|
|
|
236
236
|
if (file.scheme === Schemas.vscodeBrowser) {
|
|
237
237
|
return this.renderBrowserResource(file, label, contextNode);
|
|
238
238
|
}
|
|
239
|
-
const attachmentTypeName = file.scheme === Schemas.vscodeNotebookCell ? ( localize(
|
|
239
|
+
const attachmentTypeName = file.scheme === Schemas.vscodeNotebookCell ? ( localize(6231, "cell")) : ( localize(6232, "file"));
|
|
240
240
|
const fileBasename = basename(file);
|
|
241
241
|
const fileDirname = dirname(file);
|
|
242
242
|
const friendlyName = `${fileBasename} ${fileDirname}`;
|
|
243
243
|
const ariaLabel = range ? ( localize(
|
|
244
|
-
|
|
244
|
+
6241,
|
|
245
245
|
"Suggested context, {0}, {1}, line {2} to line {3}",
|
|
246
246
|
attachmentTypeName,
|
|
247
247
|
friendlyName,
|
|
248
248
|
range.startLineNumber,
|
|
249
249
|
range.endLineNumber
|
|
250
|
-
)) : ( localize(
|
|
250
|
+
)) : ( localize(6242, "Suggested context, {0}, {1}", attachmentTypeName, friendlyName));
|
|
251
251
|
const uriLabel = this.labelService.getUriLabel(file, {
|
|
252
252
|
relative: true
|
|
253
253
|
});
|
|
254
|
-
const currentFile = ( localize(
|
|
255
|
-
const inactive = ( localize(
|
|
254
|
+
const currentFile = ( localize(6243, "Current {0} context", attachmentTypeName));
|
|
255
|
+
const inactive = ( localize(6244, "Enable current {0} context", attachmentTypeName));
|
|
256
256
|
const currentFileHint = enabled || isSelection ? currentFile : inactive;
|
|
257
257
|
const title = `${currentFileHint}\n${uriLabel}`;
|
|
258
258
|
label.setFile(file, {
|
|
@@ -274,7 +274,7 @@ let ImplicitContextAttachmentWidget = class ImplicitContextAttachmentWidget exte
|
|
|
274
274
|
label.setLabel(input.getName(), undefined, {
|
|
275
275
|
iconPath: Codicon.globe
|
|
276
276
|
});
|
|
277
|
-
contextNode.ariaLabel = ( localize(
|
|
277
|
+
contextNode.ariaLabel = ( localize(6245, "Suggested browser context, {0}", input.getName()));
|
|
278
278
|
};
|
|
279
279
|
update();
|
|
280
280
|
this.renderDisposables.add(input.onDidChangeLabel(() => update()));
|
|
@@ -36,6 +36,7 @@ export declare class ChatEditingShowChangesAction extends EditingSessionAction {
|
|
|
36
36
|
constructor();
|
|
37
37
|
runEditingSessionAction(accessor: ServicesAccessor, editingSession: IChatEditingSession, chatWidget: IChatWidget, ...args: unknown[]): Promise<void>;
|
|
38
38
|
}
|
|
39
|
+
export declare const RestoreCheckpointActionId = "workbench.action.chat.restoreCheckpoint";
|
|
39
40
|
export interface ChatEditingActionContext {
|
|
40
41
|
readonly sessionResource: URI;
|
|
41
42
|
readonly requestId: string;
|
|
@@ -82,7 +82,7 @@ registerAction2(class OpenFileInDiffAction extends WorkingSetAction {
|
|
|
82
82
|
constructor() {
|
|
83
83
|
super({
|
|
84
84
|
id: "chatEditing.openFileInDiff",
|
|
85
|
-
title: ( localize2(
|
|
85
|
+
title: ( localize2(6933, "Open Changes in Diff Editor")),
|
|
86
86
|
icon: Codicon.diffSingle,
|
|
87
87
|
menu: [{
|
|
88
88
|
id: MenuId.ChatEditingWidgetModifiedFilesToolbar,
|
|
@@ -95,12 +95,9 @@ registerAction2(class OpenFileInDiffAction extends WorkingSetAction {
|
|
|
95
95
|
async runWorkingSetAction(accessor, currentEditingSession, _chatWidget, ...uris) {
|
|
96
96
|
const editorService = accessor.get(IEditorService);
|
|
97
97
|
for (const uri of uris) {
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
resource: uri
|
|
102
|
-
});
|
|
103
|
-
}
|
|
98
|
+
const pane = await editorService.openEditor({
|
|
99
|
+
resource: uri
|
|
100
|
+
});
|
|
104
101
|
if (!pane) {
|
|
105
102
|
return;
|
|
106
103
|
}
|
|
@@ -113,7 +110,7 @@ registerAction2(class AcceptAction extends WorkingSetAction {
|
|
|
113
110
|
constructor() {
|
|
114
111
|
super({
|
|
115
112
|
id: "chatEditing.acceptFile",
|
|
116
|
-
title: ( localize2(
|
|
113
|
+
title: ( localize2(6934, "Keep")),
|
|
117
114
|
icon: Codicon.check,
|
|
118
115
|
menu: [{
|
|
119
116
|
when: ( ContextKeyExpr.and(( ContextKeyExpr.equals("resourceScheme", CHAT_EDITING_MULTI_DIFF_SOURCE_RESOLVER_SCHEME)), ContextKeyExpr.notIn(
|
|
@@ -139,7 +136,7 @@ registerAction2(class DiscardAction extends WorkingSetAction {
|
|
|
139
136
|
constructor() {
|
|
140
137
|
super({
|
|
141
138
|
id: "chatEditing.discardFile",
|
|
142
|
-
title: ( localize2(
|
|
139
|
+
title: ( localize2(6935, "Undo")),
|
|
143
140
|
icon: Codicon.discard,
|
|
144
141
|
menu: [{
|
|
145
142
|
when: ( ContextKeyExpr.and(( ContextKeyExpr.equals("resourceScheme", CHAT_EDITING_MULTI_DIFF_SOURCE_RESOLVER_SCHEME)), ContextKeyExpr.notIn(
|
|
@@ -165,9 +162,9 @@ class ChatEditingAcceptAllAction extends EditingSessionAction {
|
|
|
165
162
|
constructor() {
|
|
166
163
|
super({
|
|
167
164
|
id: "chatEditing.acceptAllFiles",
|
|
168
|
-
title: ( localize(
|
|
165
|
+
title: ( localize(6936, "Keep")),
|
|
169
166
|
icon: Codicon.check,
|
|
170
|
-
tooltip: ( localize(
|
|
167
|
+
tooltip: ( localize(6937, "Keep All Edits")),
|
|
171
168
|
precondition: hasUndecidedChatEditingResourceContextKey,
|
|
172
169
|
keybinding: {
|
|
173
170
|
primary: KeyMod.CtrlCmd | KeyCode.Enter,
|
|
@@ -191,9 +188,9 @@ class ChatEditingDiscardAllAction extends EditingSessionAction {
|
|
|
191
188
|
constructor() {
|
|
192
189
|
super({
|
|
193
190
|
id: "chatEditing.discardAllFiles",
|
|
194
|
-
title: ( localize(
|
|
191
|
+
title: ( localize(6938, "Undo")),
|
|
195
192
|
icon: Codicon.discard,
|
|
196
|
-
tooltip: ( localize(
|
|
193
|
+
tooltip: ( localize(6939, "Undo All Edits")),
|
|
197
194
|
precondition: hasUndecidedChatEditingResourceContextKey,
|
|
198
195
|
menu: [{
|
|
199
196
|
id: MenuId.ChatEditingWidgetToolbar,
|
|
@@ -224,8 +221,8 @@ class ToggleExplanationWidgetAction extends EditingSessionAction {
|
|
|
224
221
|
constructor() {
|
|
225
222
|
super({
|
|
226
223
|
id: ToggleExplanationWidgetAction.ID,
|
|
227
|
-
title: ( localize(
|
|
228
|
-
tooltip: ( localize(
|
|
224
|
+
title: ( localize(6940, "Explain")),
|
|
225
|
+
tooltip: ( localize(6941, "Toggle Change Explanations")),
|
|
229
226
|
precondition: hasUndecidedChatEditingResourceContextKey,
|
|
230
227
|
menu: [{
|
|
231
228
|
id: MenuId.ChatEditingWidgetToolbar,
|
|
@@ -249,17 +246,17 @@ async function discardAllEditsWithConfirmation(accessor, currentEditingSession)
|
|
|
249
246
|
const entries = currentEditingSession.entries.get().filter(e => e.state.get() === ModifiedFileEntryState.Modified);
|
|
250
247
|
if (entries.length > 0) {
|
|
251
248
|
const confirmation = await dialogService.confirm({
|
|
252
|
-
title: ( localize(
|
|
249
|
+
title: ( localize(6942, "Undo all edits?")),
|
|
253
250
|
message: entries.length === 1 ? ( localize(
|
|
254
|
-
|
|
251
|
+
6943,
|
|
255
252
|
"This will undo changes made in {0}. Do you want to proceed?",
|
|
256
253
|
basename(entries[0].modifiedURI)
|
|
257
254
|
)) : ( localize(
|
|
258
|
-
|
|
255
|
+
6944,
|
|
259
256
|
"This will undo changes made in {0} files. Do you want to proceed?",
|
|
260
257
|
entries.length
|
|
261
258
|
)),
|
|
262
|
-
primaryButton: ( localize(
|
|
259
|
+
primaryButton: ( localize(6945, "Yes")),
|
|
263
260
|
type: "info"
|
|
264
261
|
});
|
|
265
262
|
if (!confirmation.confirmed) {
|
|
@@ -274,7 +271,7 @@ class ChatEditingShowChangesAction extends EditingSessionAction {
|
|
|
274
271
|
this.ID = "chatEditing.viewChanges";
|
|
275
272
|
}
|
|
276
273
|
static {
|
|
277
|
-
this.LABEL = ( localize(
|
|
274
|
+
this.LABEL = ( localize(6946, "View All Edits"));
|
|
278
275
|
}
|
|
279
276
|
constructor() {
|
|
280
277
|
super({
|
|
@@ -336,13 +333,13 @@ async function restoreSnapshotWithConfirmationByRequestId(accessor, sessionResou
|
|
|
336
333
|
if (editsToUndo === 1) {
|
|
337
334
|
if (entriesModifiedInRequestsToRemove.length === 1) {
|
|
338
335
|
message = ( localize(
|
|
339
|
-
|
|
336
|
+
6947,
|
|
340
337
|
"This will remove your last request and undo the edits made to {0}. Do you want to proceed?",
|
|
341
338
|
basename(entriesModifiedInRequestsToRemove[0].modifiedURI)
|
|
342
339
|
));
|
|
343
340
|
} else {
|
|
344
341
|
message = ( localize(
|
|
345
|
-
|
|
342
|
+
6948,
|
|
346
343
|
"This will remove your last request and undo edits made to {0} files in your working set. Do you want to proceed?",
|
|
347
344
|
entriesModifiedInRequestsToRemove.length
|
|
348
345
|
));
|
|
@@ -350,24 +347,24 @@ async function restoreSnapshotWithConfirmationByRequestId(accessor, sessionResou
|
|
|
350
347
|
} else {
|
|
351
348
|
if (entriesModifiedInRequestsToRemove.length === 1) {
|
|
352
349
|
message = ( localize(
|
|
353
|
-
|
|
350
|
+
6949,
|
|
354
351
|
"This will remove all subsequent requests and undo edits made to {0}. Do you want to proceed?",
|
|
355
352
|
basename(entriesModifiedInRequestsToRemove[0].modifiedURI)
|
|
356
353
|
));
|
|
357
354
|
} else {
|
|
358
355
|
message = ( localize(
|
|
359
|
-
|
|
356
|
+
6950,
|
|
360
357
|
"This will remove all subsequent requests and undo edits made to {0} files in your working set. Do you want to proceed?",
|
|
361
358
|
entriesModifiedInRequestsToRemove.length
|
|
362
359
|
));
|
|
363
360
|
}
|
|
364
361
|
}
|
|
365
362
|
const confirmation = shouldPrompt ? await dialogService.confirm({
|
|
366
|
-
title: editsToUndo === 1 ? ( localize(
|
|
363
|
+
title: editsToUndo === 1 ? ( localize(6951, "Do you want to undo your last edit?")) : ( localize(6952, "Do you want to undo {0} edits?", editsToUndo)),
|
|
367
364
|
message: message,
|
|
368
|
-
primaryButton: ( localize(
|
|
365
|
+
primaryButton: ( localize(6953, "Yes")),
|
|
369
366
|
checkbox: {
|
|
370
|
-
label: ( localize(
|
|
367
|
+
label: ( localize(6954, "Don't ask again")),
|
|
371
368
|
checked: false
|
|
372
369
|
},
|
|
373
370
|
type: "info"
|
|
@@ -397,7 +394,7 @@ registerAction2(class RemoveAction extends Action2 {
|
|
|
397
394
|
constructor() {
|
|
398
395
|
super({
|
|
399
396
|
id: "workbench.action.chat.undoEdits",
|
|
400
|
-
title: ( localize2(
|
|
397
|
+
title: ( localize2(6955, "Undo Requests")),
|
|
401
398
|
f1: false,
|
|
402
399
|
category: CHAT_CATEGORY,
|
|
403
400
|
icon: Codicon.discard,
|
|
@@ -406,14 +403,14 @@ registerAction2(class RemoveAction extends Action2 {
|
|
|
406
403
|
mac: {
|
|
407
404
|
primary: KeyMod.CtrlCmd | KeyCode.Backspace
|
|
408
405
|
},
|
|
409
|
-
when: ( ContextKeyExpr.and(ChatContextKeys.inChatSession, ( EditorContextKeys.textInputFocus.negate()), ( ChatContextKeys.inChatQuestionCarousel.negate()))),
|
|
406
|
+
when: ( ContextKeyExpr.and(ChatContextKeys.inChatSession, ( EditorContextKeys.textInputFocus.negate()), ( ChatContextKeys.inChatQuestionCarousel.negate()), ( ChatContextKeys.readOnly.negate()))),
|
|
410
407
|
weight: KeybindingWeight.WorkbenchContrib
|
|
411
408
|
},
|
|
412
409
|
menu: [{
|
|
413
410
|
id: MenuId.ChatMessageTitle,
|
|
414
411
|
group: "navigation",
|
|
415
412
|
order: 2,
|
|
416
|
-
when: ( ContextKeyExpr.and(( ( ContextKeyExpr.equals(`config.${ChatConfiguration.EditRequests}`, "input")).negate()), ( ContextKeyExpr.equals(`config.${ChatConfiguration.CheckpointsEnabled}`, false)), ( ContextKeyExpr.or(( ChatContextKeys.lockedToCodingAgent.negate()), ChatContextKeyExprs.isAgentHostSession))))
|
|
413
|
+
when: ( ContextKeyExpr.and(( ( ContextKeyExpr.equals(`config.${ChatConfiguration.EditRequests}`, "input")).negate()), ( ContextKeyExpr.equals(`config.${ChatConfiguration.CheckpointsEnabled}`, false)), ( ContextKeyExpr.or(( ChatContextKeys.lockedToCodingAgent.negate()), ChatContextKeyExprs.isAgentHostSession)), ( ChatContextKeys.readOnly.negate())))
|
|
417
414
|
}]
|
|
418
415
|
});
|
|
419
416
|
}
|
|
@@ -439,12 +436,13 @@ registerAction2(class RemoveAction extends Action2 {
|
|
|
439
436
|
}
|
|
440
437
|
}
|
|
441
438
|
});
|
|
439
|
+
const RestoreCheckpointActionId = "workbench.action.chat.restoreCheckpoint";
|
|
442
440
|
registerAction2(class RestoreCheckpointAction extends Action2 {
|
|
443
441
|
constructor() {
|
|
444
442
|
super({
|
|
445
|
-
id:
|
|
446
|
-
title: ( localize2(
|
|
447
|
-
tooltip: ( localize2(
|
|
443
|
+
id: RestoreCheckpointActionId,
|
|
444
|
+
title: ( localize2(6956, "Restore Checkpoint")),
|
|
445
|
+
tooltip: ( localize2(6957, "Restores workspace and chat to this point")),
|
|
448
446
|
f1: false,
|
|
449
447
|
category: CHAT_CATEGORY,
|
|
450
448
|
keybinding: {
|
|
@@ -452,14 +450,14 @@ registerAction2(class RestoreCheckpointAction extends Action2 {
|
|
|
452
450
|
mac: {
|
|
453
451
|
primary: KeyMod.CtrlCmd | KeyCode.Backspace
|
|
454
452
|
},
|
|
455
|
-
when: ( ContextKeyExpr.and(ChatContextKeys.inChatSession, ( EditorContextKeys.textInputFocus.negate()), ( ChatContextKeys.inChatQuestionCarousel.negate()))),
|
|
453
|
+
when: ( ContextKeyExpr.and(ChatContextKeys.inChatSession, ( EditorContextKeys.textInputFocus.negate()), ( ChatContextKeys.inChatQuestionCarousel.negate()), ( ChatContextKeys.readOnly.negate()))),
|
|
456
454
|
weight: KeybindingWeight.WorkbenchContrib
|
|
457
455
|
},
|
|
458
456
|
menu: [{
|
|
459
457
|
id: MenuId.ChatMessageCheckpoint,
|
|
460
458
|
group: "navigation",
|
|
461
459
|
order: 2,
|
|
462
|
-
when: ( ContextKeyExpr.and(ChatContextKeys.isRequest, ( ContextKeyExpr.or(( ChatContextKeys.lockedToCodingAgent.negate()), ChatContextKeyExprs.isAgentHostSession)), ( ChatContextKeys.isFirstRequest.negate())))
|
|
460
|
+
when: ( ContextKeyExpr.and(ChatContextKeys.isRequest, ( ContextKeyExpr.or(( ChatContextKeys.lockedToCodingAgent.negate()), ChatContextKeyExprs.isAgentHostSession)), ( ChatContextKeys.isFirstRequest.negate()), ( ChatContextKeys.readOnly.negate())))
|
|
463
461
|
}]
|
|
464
462
|
});
|
|
465
463
|
}
|
|
@@ -489,15 +487,15 @@ registerAction2(class StartOverAction extends Action2 {
|
|
|
489
487
|
constructor() {
|
|
490
488
|
super({
|
|
491
489
|
id: "workbench.action.chat.startOver",
|
|
492
|
-
title: ( localize2(
|
|
493
|
-
tooltip: ( localize2(
|
|
490
|
+
title: ( localize2(6958, "Start Over")),
|
|
491
|
+
tooltip: ( localize2(6959, "Clears the chat and undoes all changes")),
|
|
494
492
|
f1: false,
|
|
495
493
|
category: CHAT_CATEGORY,
|
|
496
494
|
menu: [{
|
|
497
495
|
id: MenuId.ChatMessageCheckpoint,
|
|
498
496
|
group: "navigation",
|
|
499
497
|
order: 2,
|
|
500
|
-
when: ( ContextKeyExpr.and(ChatContextKeys.isRequest, ( ContextKeyExpr.or(( ChatContextKeys.lockedToCodingAgent.negate()), ChatContextKeyExprs.isAgentHostSession)), ChatContextKeys.isFirstRequest))
|
|
498
|
+
when: ( ContextKeyExpr.and(ChatContextKeys.isRequest, ( ContextKeyExpr.or(( ChatContextKeys.lockedToCodingAgent.negate()), ChatContextKeyExprs.isAgentHostSession)), ChatContextKeys.isFirstRequest, ( ChatContextKeys.readOnly.negate())))
|
|
501
499
|
}]
|
|
502
500
|
});
|
|
503
501
|
}
|
|
@@ -519,11 +517,11 @@ registerAction2(class RestoreLastCheckpoint extends Action2 {
|
|
|
519
517
|
constructor() {
|
|
520
518
|
super({
|
|
521
519
|
id: "workbench.action.chat.restoreLastCheckpoint",
|
|
522
|
-
title: ( localize2(
|
|
520
|
+
title: ( localize2(6960, "Restore to Last Checkpoint")),
|
|
523
521
|
f1: true,
|
|
524
522
|
category: CHAT_CATEGORY,
|
|
525
523
|
icon: Codicon.discard,
|
|
526
|
-
precondition: ( ContextKeyExpr.and(ChatContextKeys.inChatSession, ( ContextKeyExpr.equals(`config.${ChatConfiguration.CheckpointsEnabled}`, true)), ( ContextKeyExpr.or(( ChatContextKeys.lockedToCodingAgent.negate()), ChatContextKeyExprs.isAgentHostSession))))
|
|
524
|
+
precondition: ( ContextKeyExpr.and(ChatContextKeys.inChatSession, ( ContextKeyExpr.equals(`config.${ChatConfiguration.CheckpointsEnabled}`, true)), ( ContextKeyExpr.or(( ChatContextKeys.lockedToCodingAgent.negate()), ChatContextKeyExprs.isAgentHostSession)), ( ChatContextKeys.readOnly.negate())))
|
|
527
525
|
});
|
|
528
526
|
}
|
|
529
527
|
async run(accessor, ...args) {
|
|
@@ -544,7 +542,7 @@ registerAction2(class RestoreLastCheckpoint extends Action2 {
|
|
|
544
542
|
}
|
|
545
543
|
const checkpointRequest = chatModel.checkpoint;
|
|
546
544
|
if (!checkpointRequest) {
|
|
547
|
-
alert(( localize(
|
|
545
|
+
alert(( localize(6961, "There is no checkpoint to restore.")));
|
|
548
546
|
return;
|
|
549
547
|
}
|
|
550
548
|
widget?.viewModel?.model.setCheckpoint(checkpointRequest.id);
|
|
@@ -557,7 +555,7 @@ registerAction2(class EditAction extends Action2 {
|
|
|
557
555
|
constructor() {
|
|
558
556
|
super({
|
|
559
557
|
id: "workbench.action.chat.editRequests",
|
|
560
|
-
title: ( localize2(
|
|
558
|
+
title: ( localize2(6962, "Edit Request")),
|
|
561
559
|
f1: false,
|
|
562
560
|
category: CHAT_CATEGORY,
|
|
563
561
|
icon: Codicon.edit,
|
|
@@ -596,7 +594,7 @@ registerAction2(class OpenWorkingSetHistoryAction extends Action2 {
|
|
|
596
594
|
constructor() {
|
|
597
595
|
super({
|
|
598
596
|
id: OpenWorkingSetHistoryAction.id,
|
|
599
|
-
title: ( localize(
|
|
597
|
+
title: ( localize(6963, "Open File")),
|
|
600
598
|
menu: [{
|
|
601
599
|
id: MenuId.ChatEditingCodeBlockContext,
|
|
602
600
|
group: "navigation",
|
|
@@ -622,7 +620,7 @@ registerAction2(class OpenWorkingSetHistoryAction extends Action2 {
|
|
|
622
620
|
constructor() {
|
|
623
621
|
super({
|
|
624
622
|
id: OpenWorkingSetHistoryAction.id,
|
|
625
|
-
title: ( localize(
|
|
623
|
+
title: ( localize(6964, "Open File Snapshot")),
|
|
626
624
|
menu: [{
|
|
627
625
|
id: MenuId.ChatEditingCodeBlockContext,
|
|
628
626
|
group: "navigation",
|
|
@@ -646,7 +644,7 @@ registerAction2(class OpenWorkingSetHistoryAction extends Action2 {
|
|
|
646
644
|
if (snapshot) {
|
|
647
645
|
const editor = await editorService.openEditor({
|
|
648
646
|
resource: snapshot,
|
|
649
|
-
label: ( localize(
|
|
647
|
+
label: ( localize(6965, "{0} (Snapshot)", basename(context.uri))),
|
|
650
648
|
options: {
|
|
651
649
|
activation: EditorActivation.ACTIVATE
|
|
652
650
|
}
|
|
@@ -663,7 +661,7 @@ registerAction2(class ResolveSymbolsContextAction extends EditingSessionAction {
|
|
|
663
661
|
constructor() {
|
|
664
662
|
super({
|
|
665
663
|
id: "workbench.action.edits.addFilesFromReferences",
|
|
666
|
-
title: ( localize2(
|
|
664
|
+
title: ( localize2(6966, "Add Files From References")),
|
|
667
665
|
f1: false,
|
|
668
666
|
category: CHAT_CATEGORY,
|
|
669
667
|
menu: {
|
|
@@ -731,7 +729,7 @@ class ViewPreviousEditsAction extends EditingSessionAction {
|
|
|
731
729
|
this.Id = "chatEditing.viewPreviousEdits";
|
|
732
730
|
}
|
|
733
731
|
static {
|
|
734
|
-
this.Label = ( localize(
|
|
732
|
+
this.Label = ( localize(6967, "View Previous Edits"));
|
|
735
733
|
}
|
|
736
734
|
constructor() {
|
|
737
735
|
super({
|
|
@@ -768,4 +766,4 @@ CommandsRegistry.registerCommand("_chat.editSessions.accept", async (accessor, r
|
|
|
768
766
|
}
|
|
769
767
|
});
|
|
770
768
|
|
|
771
|
-
export { ChatEditingAcceptAllAction, ChatEditingDiscardAllAction, ChatEditingShowChangesAction, EditingSessionAction, ToggleExplanationWidgetAction, ViewPreviousEditsAction, discardAllEditsWithConfirmation, getEditingSessionContext };
|
|
769
|
+
export { ChatEditingAcceptAllAction, ChatEditingDiscardAllAction, ChatEditingShowChangesAction, EditingSessionAction, RestoreCheckpointActionId, ToggleExplanationWidgetAction, ViewPreviousEditsAction, discardAllEditsWithConfirmation, getEditingSessionContext };
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
|
|
2
|
+
import { ITextModel } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/model";
|
|
3
|
+
import { IModelService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/services/model.service";
|
|
4
|
+
import { ITextModelContentProvider } from "@codingame/monaco-vscode-model-service-override/vscode/vs/editor/common/services/resolverService";
|
|
5
|
+
import { IChatEditingService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/editing/chatEditingService.service";
|
|
6
|
+
export declare class ChatEditingTextModelContentProvider implements ITextModelContentProvider {
|
|
7
|
+
private readonly _chatEditingService;
|
|
8
|
+
private readonly _modelService;
|
|
9
|
+
static readonly scheme = "chat-editing-text-model";
|
|
10
|
+
static getFileURI(chatSessionResource: URI, documentId: string, path: string): URI;
|
|
11
|
+
constructor(_chatEditingService: IChatEditingService, _modelService: IModelService);
|
|
12
|
+
provideTextContent(resource: URI): Promise<ITextModel | null>;
|
|
13
|
+
}
|
|
14
|
+
export declare class ChatEditingSnapshotTextModelContentProvider implements ITextModelContentProvider {
|
|
15
|
+
private readonly _chatEditingService;
|
|
16
|
+
private readonly _modelService;
|
|
17
|
+
static getSnapshotFileURI(chatSessionResource: URI, requestId: string | undefined, undoStop: string | undefined, path: string, scheme: string, authority: string): URI;
|
|
18
|
+
/**
|
|
19
|
+
* Recovers the URI of the real file that a snapshot URI (as produced by
|
|
20
|
+
* {@link getSnapshotFileURI}) was taken from, so callers can open the file
|
|
21
|
+
* itself instead of a read-only snapshot. Returns the resource unchanged if
|
|
22
|
+
* it is not a snapshot URI, or `undefined` if the origin cannot be recovered
|
|
23
|
+
* (e.g. snapshot URIs persisted before the origin was recorded).
|
|
24
|
+
*/
|
|
25
|
+
static getOriginalFileURI(resource: URI): URI | undefined;
|
|
26
|
+
constructor(_chatEditingService: IChatEditingService, _modelService: IModelService);
|
|
27
|
+
provideTextContent(resource: URI): Promise<ITextModel | null>;
|
|
28
|
+
}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
|
|
2
|
+
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
|
+
import { Schemas } from '@codingame/monaco-vscode-api/vscode/vs/base/common/network';
|
|
4
|
+
import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
|
|
5
|
+
import { IModelService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/model.service';
|
|
6
|
+
|
|
7
|
+
var ChatEditingTextModelContentProvider_1;
|
|
8
|
+
let ChatEditingTextModelContentProvider = class ChatEditingTextModelContentProvider {
|
|
9
|
+
static {
|
|
10
|
+
ChatEditingTextModelContentProvider_1 = this;
|
|
11
|
+
}
|
|
12
|
+
static {
|
|
13
|
+
this.scheme = Schemas.chatEditingModel;
|
|
14
|
+
}
|
|
15
|
+
static getFileURI(chatSessionResource, documentId, path) {
|
|
16
|
+
return ( URI.from({
|
|
17
|
+
scheme: ChatEditingTextModelContentProvider_1.scheme,
|
|
18
|
+
path,
|
|
19
|
+
query: JSON.stringify({
|
|
20
|
+
kind: "doc",
|
|
21
|
+
documentId,
|
|
22
|
+
chatSessionResource
|
|
23
|
+
})
|
|
24
|
+
}));
|
|
25
|
+
}
|
|
26
|
+
constructor(_chatEditingService, _modelService) {
|
|
27
|
+
this._chatEditingService = _chatEditingService;
|
|
28
|
+
this._modelService = _modelService;
|
|
29
|
+
}
|
|
30
|
+
async provideTextContent(resource) {
|
|
31
|
+
const existing = this._modelService.getModel(resource);
|
|
32
|
+
if (existing && !existing.isDisposed()) {
|
|
33
|
+
return existing;
|
|
34
|
+
}
|
|
35
|
+
const data = JSON.parse(resource.query);
|
|
36
|
+
const session = this._chatEditingService.getEditingSession(URI.revive(data.chatSessionResource));
|
|
37
|
+
const entry = session?.entries.get().find(candidate => candidate.entryId === data.documentId);
|
|
38
|
+
if (!entry) {
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
41
|
+
return this._modelService.getModel(entry.originalURI);
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
ChatEditingTextModelContentProvider = ChatEditingTextModelContentProvider_1 = ( __decorate([( __param(1, IModelService))], ChatEditingTextModelContentProvider));
|
|
45
|
+
let ChatEditingSnapshotTextModelContentProvider = class ChatEditingSnapshotTextModelContentProvider {
|
|
46
|
+
static getSnapshotFileURI(chatSessionResource, requestId, undoStop, path, scheme, authority) {
|
|
47
|
+
return ( URI.from({
|
|
48
|
+
scheme: Schemas.chatEditingSnapshotScheme,
|
|
49
|
+
path,
|
|
50
|
+
query: JSON.stringify({
|
|
51
|
+
session: chatSessionResource,
|
|
52
|
+
requestId: requestId ?? "",
|
|
53
|
+
undoStop: undoStop ?? "",
|
|
54
|
+
scheme,
|
|
55
|
+
authority
|
|
56
|
+
})
|
|
57
|
+
}));
|
|
58
|
+
}
|
|
59
|
+
static getOriginalFileURI(resource) {
|
|
60
|
+
if (resource.scheme !== Schemas.chatEditingSnapshotScheme) {
|
|
61
|
+
return resource;
|
|
62
|
+
}
|
|
63
|
+
let data;
|
|
64
|
+
try {
|
|
65
|
+
data = JSON.parse(resource.query);
|
|
66
|
+
} catch {
|
|
67
|
+
return undefined;
|
|
68
|
+
}
|
|
69
|
+
if (typeof data.scheme !== "string" || !data.scheme || typeof data.authority !== "string") {
|
|
70
|
+
return undefined;
|
|
71
|
+
}
|
|
72
|
+
return resource.with({
|
|
73
|
+
scheme: data.scheme,
|
|
74
|
+
authority: data.authority,
|
|
75
|
+
query: "",
|
|
76
|
+
fragment: ""
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
constructor(_chatEditingService, _modelService) {
|
|
80
|
+
this._chatEditingService = _chatEditingService;
|
|
81
|
+
this._modelService = _modelService;
|
|
82
|
+
}
|
|
83
|
+
async provideTextContent(resource) {
|
|
84
|
+
const existing = this._modelService.getModel(resource);
|
|
85
|
+
if (existing && !existing.isDisposed()) {
|
|
86
|
+
return existing;
|
|
87
|
+
}
|
|
88
|
+
const data = JSON.parse(resource.query);
|
|
89
|
+
const session = this._chatEditingService.getEditingSession(URI.revive(data.session));
|
|
90
|
+
if (!session || !data.requestId) {
|
|
91
|
+
return null;
|
|
92
|
+
}
|
|
93
|
+
return session.getSnapshotModel(data.requestId, data.undoStop || undefined, resource);
|
|
94
|
+
}
|
|
95
|
+
};
|
|
96
|
+
ChatEditingSnapshotTextModelContentProvider = ( __decorate([( __param(1, IModelService))], ChatEditingSnapshotTextModelContentProvider));
|
|
97
|
+
|
|
98
|
+
export { ChatEditingSnapshotTextModelContentProvider, ChatEditingTextModelContentProvider };
|
package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.d.ts
CHANGED
|
@@ -7,11 +7,11 @@ import { IKeybindingService } from "@codingame/monaco-vscode-api/vscode/vs/platf
|
|
|
7
7
|
import { ActionWidgetDropdownActionViewItem } from "../../../../../platform/actions/browser/actionWidgetDropdownActionViewItem.js";
|
|
8
8
|
import { IChatSessionProviderOptionGroup, IChatSessionProviderOptionItem } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService";
|
|
9
9
|
import { ICommandService } from "@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service";
|
|
10
|
+
import { IOpenerService } from "@codingame/monaco-vscode-api/vscode/vs/platform/opener/common/opener.service";
|
|
10
11
|
import { ITelemetryService } from "@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service";
|
|
11
12
|
import { IDisposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
12
13
|
import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
|
|
13
14
|
import { IChatInputPickerOptions } from "../widget/input/chatInputPickerActionItem.js";
|
|
14
|
-
import { IOpenerService } from "@codingame/monaco-vscode-api/vscode/vs/platform/opener/common/opener.service";
|
|
15
15
|
import { IChatEntitlementService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService.service";
|
|
16
16
|
export interface IChatSessionPickerDelegate {
|
|
17
17
|
readonly onDidChangeOption: Event<IChatSessionProviderOptionItem>;
|
|
@@ -28,14 +28,14 @@ export declare class ChatSessionPickerActionItem extends ActionWidgetDropdownAct
|
|
|
28
28
|
protected readonly delegate: IChatSessionPickerDelegate;
|
|
29
29
|
protected readonly _pickerOptions: IChatInputPickerOptions | undefined;
|
|
30
30
|
protected readonly commandService: ICommandService;
|
|
31
|
-
private readonly openerService;
|
|
32
31
|
private readonly chatEntitlementService;
|
|
32
|
+
private readonly openerService;
|
|
33
33
|
protected currentOption: IChatSessionProviderOptionItem | undefined;
|
|
34
34
|
protected container: HTMLElement | undefined;
|
|
35
35
|
constructor(action: IAction, initialState: {
|
|
36
36
|
group: IChatSessionProviderOptionGroup;
|
|
37
37
|
item: IChatSessionProviderOptionItem | undefined;
|
|
38
|
-
}, delegate: IChatSessionPickerDelegate, _pickerOptions: IChatInputPickerOptions | undefined, actionWidgetService: IActionWidgetService, contextKeyService: IContextKeyService, keybindingService: IKeybindingService, commandService: ICommandService, telemetryService: ITelemetryService,
|
|
38
|
+
}, delegate: IChatSessionPickerDelegate, _pickerOptions: IChatInputPickerOptions | undefined, actionWidgetService: IActionWidgetService, contextKeyService: IContextKeyService, keybindingService: IKeybindingService, commandService: ICommandService, telemetryService: ITelemetryService, chatEntitlementService: IChatEntitlementService, openerService: IOpenerService);
|
|
39
39
|
/**
|
|
40
40
|
* Returns the actions to show in the dropdown. Can be overridden by subclasses.
|
|
41
41
|
*/
|
package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.js
CHANGED
|
@@ -8,11 +8,11 @@ import { IContextKeyService } from '@codingame/monaco-vscode-api/vscode/vs/platf
|
|
|
8
8
|
import { IKeybindingService } from '@codingame/monaco-vscode-api/vscode/vs/platform/keybinding/common/keybinding.service';
|
|
9
9
|
import { ActionWidgetDropdownActionViewItem } from '../../../../../platform/actions/browser/actionWidgetDropdownActionViewItem.js';
|
|
10
10
|
import { ICommandService } from '@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service';
|
|
11
|
+
import { IOpenerService } from '@codingame/monaco-vscode-api/vscode/vs/platform/opener/common/opener.service';
|
|
11
12
|
import { ITelemetryService } from '@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service';
|
|
12
13
|
import { renderIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/iconLabel/iconLabels';
|
|
13
14
|
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
14
15
|
import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
|
|
15
|
-
import { IOpenerService } from '@codingame/monaco-vscode-api/vscode/vs/platform/opener/common/opener.service';
|
|
16
16
|
import { IChatEntitlementService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService.service';
|
|
17
17
|
import { getModelHoverContent } from '../widget/input/chatModelPicker.js';
|
|
18
18
|
import { ExtensionIdentifier } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensions/common/extensions';
|
|
@@ -30,8 +30,8 @@ let ChatSessionPickerActionItem = class ChatSessionPickerActionItem extends Acti
|
|
|
30
30
|
keybindingService,
|
|
31
31
|
commandService,
|
|
32
32
|
telemetryService,
|
|
33
|
-
|
|
34
|
-
|
|
33
|
+
chatEntitlementService,
|
|
34
|
+
openerService
|
|
35
35
|
) {
|
|
36
36
|
const {
|
|
37
37
|
group,
|
|
@@ -66,8 +66,8 @@ let ChatSessionPickerActionItem = class ChatSessionPickerActionItem extends Acti
|
|
|
66
66
|
this.delegate = delegate;
|
|
67
67
|
this._pickerOptions = _pickerOptions;
|
|
68
68
|
this.commandService = commandService;
|
|
69
|
-
this.openerService = openerService;
|
|
70
69
|
this.chatEntitlementService = chatEntitlementService;
|
|
70
|
+
this.openerService = openerService;
|
|
71
71
|
this.currentOption = item;
|
|
72
72
|
this._register(this.delegate.onDidChangeOption(newOption => {
|
|
73
73
|
this.currentOption = newOption;
|
|
@@ -157,9 +157,11 @@ let ChatSessionPickerActionItem = class ChatSessionPickerActionItem extends Acti
|
|
|
157
157
|
inputCost: optionItem.modelMetadata.inputCost,
|
|
158
158
|
outputCost: optionItem.modelMetadata.outputCost,
|
|
159
159
|
cacheCost: optionItem.modelMetadata.cacheCost,
|
|
160
|
+
cacheWriteCost: optionItem.modelMetadata.cacheWriteCost,
|
|
160
161
|
longContextInputCost: optionItem.modelMetadata.longContextInputCost,
|
|
161
162
|
longContextOutputCost: optionItem.modelMetadata.longContextOutputCost,
|
|
162
163
|
longContextCacheCost: optionItem.modelMetadata.longContextCacheCost,
|
|
164
|
+
longContextCacheWriteCost: optionItem.modelMetadata.longContextCacheWriteCost,
|
|
163
165
|
priceCategory: optionItem.modelMetadata.priceCategory,
|
|
164
166
|
maxInputTokens: optionItem.modelMetadata.maxInputTokens ?? 0,
|
|
165
167
|
maxOutputTokens: optionItem.modelMetadata.maxOutputTokens ?? 0,
|
|
@@ -170,7 +172,7 @@ let ChatSessionPickerActionItem = class ChatSessionPickerActionItem extends Acti
|
|
|
170
172
|
isDefaultForLocation: {}
|
|
171
173
|
}
|
|
172
174
|
};
|
|
173
|
-
const hover = getModelHoverContent(syntheticModel, this.openerService
|
|
175
|
+
const hover = getModelHoverContent(syntheticModel, isUBB, undefined, this.openerService);
|
|
174
176
|
if (hover) {
|
|
175
177
|
return {
|
|
176
178
|
content: hover.element,
|
|
@@ -216,7 +218,7 @@ let ChatSessionPickerActionItem = class ChatSessionPickerActionItem extends Acti
|
|
|
216
218
|
domChildren.push($(
|
|
217
219
|
"span.chat-session-option-label",
|
|
218
220
|
undefined,
|
|
219
|
-
this.currentOption?.name ?? group?.description ?? ( localize(
|
|
221
|
+
this.currentOption?.name ?? group?.description ?? ( localize(7179, "Pick Option"))
|
|
220
222
|
));
|
|
221
223
|
}
|
|
222
224
|
reset(element, ...domChildren);
|
|
@@ -246,6 +248,6 @@ let ChatSessionPickerActionItem = class ChatSessionPickerActionItem extends Acti
|
|
|
246
248
|
}
|
|
247
249
|
}
|
|
248
250
|
};
|
|
249
|
-
ChatSessionPickerActionItem = ( __decorate([( __param(4, IActionWidgetService)), ( __param(5, IContextKeyService)), ( __param(6, IKeybindingService)), ( __param(7, ICommandService)), ( __param(8, ITelemetryService)), ( __param(9,
|
|
251
|
+
ChatSessionPickerActionItem = ( __decorate([( __param(4, IActionWidgetService)), ( __param(5, IContextKeyService)), ( __param(6, IKeybindingService)), ( __param(7, ICommandService)), ( __param(8, ITelemetryService)), ( __param(9, IChatEntitlementService)), ( __param(10, IOpenerService))], ChatSessionPickerActionItem));
|
|
250
252
|
|
|
251
253
|
export { ChatSessionPickerActionItem };
|