@codingame/monaco-vscode-chat-service-override 37.2.0 → 37.3.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/common.d.ts +9 -0
- package/common.js +372 -0
- package/index.d.ts +4 -6
- package/index.js +20 -377
- package/package.json +12 -5
- package/session.d.ts +8 -0
- package/session.js +56 -0
- package/vscode/src/vs/platform/agentHost/browser/agentHostConnectionsService.js +5 -2
- package/vscode/src/vs/platform/agentHost/browser/agentHostEnablementService.js +1 -1
- package/vscode/src/vs/platform/agentHost/browser/agentHostIpcChannelTransport.d.ts +1 -1
- package/vscode/src/vs/platform/agentHost/browser/agentHostIpcChannelTransport.js +2 -2
- package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostServiceImpl.js +35 -11
- package/vscode/src/vs/platform/agentHost/browser/webSocketClientTransport.d.ts +1 -1
- package/vscode/src/vs/platform/agentHost/browser/webSocketClientTransport.js +2 -2
- package/vscode/src/vs/platform/agentHost/common/agentHostCustomizationConfig.js +34 -18
- package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemService.d.ts +1 -1
- package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemService.js +1 -1
- package/vscode/src/vs/platform/agentHost/common/agentHostStarter.config.contribution.js +54 -54
- package/vscode/src/vs/platform/agentHost/common/agentModelPricing.js +20 -23
- package/vscode/src/vs/platform/agentHost/common/copilotConfigSlashCommands.js +8 -8
- package/vscode/src/vs/platform/agentHost/common/meta/clientPluginCustomizationMeta.js +3 -1
- package/vscode/src/vs/platform/agentHost/common/otlp/otlpLogEmitter.d.ts +198 -0
- package/vscode/src/vs/platform/agentHost/common/otlp/otlpLogEmitter.js +197 -0
- package/vscode/src/vs/platform/agentHost/common/sandboxConfigSchema.js +14 -14
- package/vscode/src/vs/platform/agentHost/common/state/sessionWorkingDirectories.d.ts +1 -1
- package/vscode/src/vs/platform/agentHost/common/wslRemoteAgentHost.d.ts +63 -0
- package/vscode/src/vs/platform/agentHost/common/wslRemoteAgentHost.js +7 -0
- package/vscode/src/vs/platform/agentHost/common/wslRemoteAgentHost.service.d.ts +51 -0
- package/vscode/src/vs/platform/agentHost/common/wslRemoteAgentHost.service.js +6 -0
- package/vscode/src/vs/platform/networkFilter/common/networkFilterService.js +3 -3
- package/vscode/src/vs/platform/sandbox/common/terminalSandboxEngine.d.ts +1 -1
- package/vscode/src/vs/platform/sandbox/common/terminalSandboxEngine.js +6 -6
- package/vscode/src/vs/sessions/browser/parts/mobile/contributions/media/mobileMultiDiffView.css +215 -0
- package/vscode/src/vs/sessions/browser/parts/mobile/contributions/mobileDiffHelpers.d.ts +28 -0
- package/vscode/src/vs/sessions/browser/parts/mobile/contributions/mobileDiffHelpers.js +429 -0
- package/vscode/src/vs/sessions/browser/parts/mobile/contributions/mobileDiffView.d.ts +100 -0
- package/vscode/src/vs/sessions/browser/parts/mobile/contributions/mobileDiffView.js +675 -0
- package/vscode/src/vs/sessions/browser/parts/mobile/contributions/mobileMultiDiffView.d.ts +86 -0
- package/vscode/src/vs/sessions/browser/parts/mobile/contributions/mobileMultiDiffView.js +860 -0
- package/vscode/src/vs/sessions/browser/parts/mobile/contributions/mobileMultiDiffVirtualizer.d.ts +35 -0
- package/vscode/src/vs/sessions/browser/parts/mobile/contributions/mobileMultiDiffVirtualizer.js +67 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/agentHostDelegation.d.ts +1 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/agentHostDelegation.js +41 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/aiCustomizationWorkspaceService.d.ts +85 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/aiCustomizationWorkspaceService.js +247 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/branchChatSessionAction.d.ts +16 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/branchChatSessionAction.js +71 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/btwSlashCommand.contribution.d.ts +15 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/btwSlashCommand.contribution.js +106 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/chat.contribution.d.ts +1 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/chat.contribution.js +438 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/chatPetAchievements.d.ts +8 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/chatPetAchievements.js +25 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/customizationsDebugLog.contribution.d.ts +1 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/customizationsDebugLog.contribution.js +173 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/media/runScriptAction.css +186 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/newSession.d.ts +9 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/newSessionFolderQuickPickAction.d.ts +12 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/newSessionFolderQuickPickAction.js +104 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/nullInlineChatSessionService.d.ts +15 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/nullInlineChatSessionService.js +23 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/openSessionLinkOpener.contribution.d.ts +51 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/openSessionLinkOpener.contribution.js +151 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/promptsService.d.ts +32 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/promptsService.js +85 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/registerDefaultSessionTaskRunners.d.ts +14 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/registerDefaultSessionTaskRunners.js +20 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/requestOriginProvider.contribution.d.ts +1 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/requestOriginProvider.contribution.js +34 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/runScriptAction.d.ts +39 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/runScriptAction.js +828 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/runScriptCustomTaskWidget.d.ts +48 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/runScriptCustomTaskWidget.js +215 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/sessionTurnChanges.d.ts +27 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/sessionTurnChanges.js +237 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/sessionsChatAccessibilityHelp.d.ts +10 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/sessionsChatAccessibilityHelp.js +348 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/sessionsOpenerParticipant.d.ts +6 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/sessionsOpenerParticipant.js +35 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/sideChatProvider.contribution.d.ts +45 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/sideChatProvider.contribution.js +189 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/unifiedWorkspacePickerConfiguration.d.ts +3 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/unifiedWorkspacePickerConfiguration.js +17 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/voiceBridge.contribution.d.ts +14 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/voiceBridge.contribution.js +381 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/workbenchSessionTaskRunner.d.ts +23 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/workbenchSessionTaskRunner.js +48 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/worktreeCreatedTaskDispatcher.d.ts +40 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/worktreeCreatedTaskDispatcher.js +116 -0
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostAgentPicker.d.ts +1 -0
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostAgentPicker.js +300 -0
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSettings.contribution.d.ts +1 -0
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSettings.contribution.js +74 -0
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSettingsFileSystemProvider.d.ts +55 -0
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSettingsFileSystemProvider.js +103 -0
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSettingsShared.d.ts +50 -0
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSettingsShared.js +72 -0
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentSessionSettings.contribution.d.ts +1 -0
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentSessionSettings.contribution.js +70 -0
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentSessionSettingsFileSystemProvider.d.ts +69 -0
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentSessionSettingsFileSystemProvider.js +151 -0
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/openAgentHostStateFileAction.d.ts +17 -0
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/openAgentHostStateFileAction.js +39 -0
- package/vscode/src/vs/sessions/contrib/providers/copilotChatSessions/browser/branchPicker.d.ts +31 -0
- package/vscode/src/vs/sessions/contrib/providers/copilotChatSessions/browser/branchPicker.js +150 -0
- package/vscode/src/vs/sessions/contrib/providers/copilotChatSessions/browser/copilotChatSessions.contribution.d.ts +1 -0
- package/vscode/src/vs/sessions/contrib/providers/copilotChatSessions/browser/copilotChatSessions.contribution.js +42 -0
- package/vscode/src/vs/sessions/contrib/providers/copilotChatSessions/browser/copilotChatSessionsActions.d.ts +19 -0
- package/vscode/src/vs/sessions/contrib/providers/copilotChatSessions/browser/copilotChatSessionsActions.js +199 -0
- package/vscode/src/vs/sessions/contrib/providers/copilotChatSessions/browser/copilotChatSessionsChangesets.d.ts +104 -0
- package/vscode/src/vs/sessions/contrib/providers/copilotChatSessions/browser/copilotChatSessionsChangesets.js +301 -0
- package/vscode/src/vs/sessions/contrib/providers/copilotChatSessions/browser/copilotChatSessionsProvider.d.ts +518 -0
- package/vscode/src/vs/sessions/contrib/providers/copilotChatSessions/browser/copilotChatSessionsProvider.js +3121 -0
- package/vscode/src/vs/sessions/contrib/providers/copilotChatSessions/browser/mobilePermissionPicker.contribution.d.ts +1 -0
- package/vscode/src/vs/sessions/contrib/providers/copilotChatSessions/browser/mobilePermissionPicker.contribution.js +37 -0
- package/vscode/src/vs/sessions/contrib/providers/copilotChatSessions/browser/mobilePermissionPicker.d.ts +25 -0
- package/vscode/src/vs/sessions/contrib/providers/copilotChatSessions/browser/mobilePermissionPicker.js +97 -0
- package/vscode/src/vs/sessions/contrib/providers/copilotChatSessions/browser/modePicker.d.ts +74 -0
- package/vscode/src/vs/sessions/contrib/providers/copilotChatSessions/browser/modePicker.js +355 -0
- package/vscode/src/vs/sessions/contrib/providers/copilotChatSessions/browser/permissionPicker.d.ts +135 -0
- package/vscode/src/vs/sessions/contrib/providers/copilotChatSessions/browser/permissionPicker.js +521 -0
- package/vscode/src/vs/sessions/contrib/providers/copilotChatSessions/browser/sandboxPicker.d.ts +26 -0
- package/vscode/src/vs/sessions/contrib/providers/copilotChatSessions/browser/sandboxPicker.js +86 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxAgentHost.contribution.d.ts +1 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxAgentHost.contribution.js +14 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxAgentHostContribution.d.ts +166 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxAgentHostContribution.js +586 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxConnectionCustomization.d.ts +15 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxConnectionCustomization.js +47 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxReadOnlySessionHandler.d.ts +45 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxReadOnlySessionHandler.js +109 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxSessionsProvider.d.ts +49 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxSessionsProvider.js +69 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/entryDrivenProviderContribution.d.ts +47 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/entryDrivenProviderContribution.js +109 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/hostFilter.contribution.d.ts +1 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/hostFilter.contribution.js +72 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/hostFilterActionViewItem.d.ts +79 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/hostFilterActionViewItem.js +353 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/manageRemoteAgentHosts.d.ts +1 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/manageRemoteAgentHosts.js +161 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/managedReconnectAgentHostContribution.d.ts +95 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/managedReconnectAgentHostContribution.js +172 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/media/hostFilter.css +259 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/media/hostPickerSheet.css +351 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/mobileHostFilterActionViewItem.d.ts +36 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/mobileHostFilterActionViewItem.js +236 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHost.contribution.d.ts +80 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHost.contribution.js +686 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostActions.d.ts +20 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostActions.js +1210 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostCustomizationHarness.d.ts +31 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostCustomizationHarness.js +136 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostLogForwarder.d.ts +103 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostLogForwarder.js +173 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostTerminal.contribution.d.ts +1 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostTerminal.contribution.js +51 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/tunnelAgentHost.contribution.d.ts +74 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/tunnelAgentHost.contribution.js +438 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/webSocketAgentHost.contribution.d.ts +14 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/webSocketAgentHost.contribution.js +52 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/wslAgentHost.contribution.d.ts +44 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/wslAgentHost.contribution.js +171 -0
- package/vscode/src/vs/sessions/contrib/sessions/browser/mobile/mobileOverlayContribution.d.ts +1 -0
- package/vscode/src/vs/sessions/contrib/sessions/browser/mobile/mobileOverlayContribution.js +98 -0
- package/vscode/src/vs/sessions/services/agentHost/browser/agentHostCustomizationService.d.ts +24 -0
- package/vscode/src/vs/sessions/services/agentHost/browser/agentHostCustomizationService.js +142 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadChatAgents2.js +22 -22
- package/vscode/src/vs/workbench/api/browser/mainThreadChatCodeMapper.js +2 -2
- package/vscode/src/vs/workbench/api/browser/mainThreadChatContext.js +1 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadChatDebug.js +7 -7
- package/vscode/src/vs/workbench/api/browser/mainThreadChatInputNotification.js +3 -3
- package/vscode/src/vs/workbench/api/browser/mainThreadChatSessions.js +14 -14
- package/vscode/src/vs/workbench/api/browser/mainThreadLanguageModelTools.js +2 -2
- package/vscode/src/vs/workbench/api/browser/mainThreadLanguageModels.js +9 -7
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoice.contribution.js +35 -35
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceSessionsPicker.js +4 -4
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceWidget.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceWidget.js +20 -20
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceWidgetBinding.js +7 -7
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceWindowService.js +3 -3
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/confirmationComponent.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/confirmationComponent.js +3 -3
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/feedbackDialog.js +6 -6
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/headerComponent.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/headerComponent.js +11 -11
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/onboardingComponent.js +11 -11
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/sessionListComponent.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/sessionListComponent.js +9 -9
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/statusRowsComponent.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/statusRowsComponent.js +5 -5
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/transcriptComponent.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/voiceBarComponent.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/voiceBarComponent.js +2 -2
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/transcriptsView/voiceTranscripts.contribution.js +14 -14
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/transcriptsView/voiceTranscriptsView.js +7 -7
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/voiceModeOnboarding.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/voiceModeOnboarding.js +40 -40
- package/vscode/src/vs/workbench/contrib/agentsVoice/common/voiceTranscriptStore.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +27 -31
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +97 -97
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.js +5 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFindActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +15 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +15 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +20 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.js +50 -42
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/exportAgentHostDebugLogsAction.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/openAgentHostStateFileAction.js +9 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginCommands.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +21 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentCustomizationContentExpander.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentCustomizationContentExpander.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentCustomizationItemProvider.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentCustomizationItemProvider.js +8 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentCustomizationSyncProvider.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHost.contribution.js +2 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostActiveClientService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostActiveClientService.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostAuth.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatContribution.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostCopilotCliSettingsContribution.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostCustomizationService.js +431 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostExistingSessionHarnessPickerEnablement.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostLanguageModelProvider.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostLocalCustomizations.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostLocalCustomizations.js +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostMcpServerSupport.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostMcpServerSupport.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostModeSynchronizer.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostPermissionUiContribution.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostPromptCacheNotification.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostPromptCacheNotification.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostProtectedResourcesService.js +4 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostResponseFileChanges.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostResponseFileChanges.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostRootConfigForwarder.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionHandler.js +83 -74
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionInputPills.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionInputPills.js +48 -43
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionListContribution.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionListController.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionListStore.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionListStore.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectorySynchronizer.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectorySynchronizer.js +9 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSettings.contribution.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSettingsFileSystemProvider.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostShellInitSynchronizer.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostShellInitSynchronizer.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSignedOutModelsNotification.js +10 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostTerminalContribution.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostUntitledProvisionalSessionService.js +12 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentSessionSettings.contribution.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentSessionSettingsFileSystemProvider.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentSessionSettingsFileSystemProvider.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/applyAgentHostSessionConfig.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/applyAgentHostSubmitConfig.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/openSessionLinkOpener.contribution.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/syncedCustomizationBundler.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +56 -54
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +26 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +20 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsController.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionSummaryHoverService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionSummaryHoverService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessionsConfiguration.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +48 -48
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationAccessibility.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationServiceImpl.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationServiceImpl.js +26 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpServerCustomizationMigration.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpServerCustomizationMigration.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatReferenceAttachmentWidget.contribution.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/transcriptContextAttachmentWidget.contribution.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.shared.contribution.js +400 -426
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/agentHostChatDebugProvider.js +42 -42
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/agentHostLogSources.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/agentHostUsageSidecar.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/agentHostUsageSidecar.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +36 -36
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheExplorerView.js +136 -136
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheInsights.js +75 -75
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEnablement.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +20 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.js +26 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowLayout.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +27 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.js +23 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.js +35 -35
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugTypes.js +32 -36
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugWireLogView.js +42 -42
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingDeletedFileEntry.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.js +15 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +18 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.js +4 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookSnapshot.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/helpers.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +36 -36
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievements.contribution.js +18 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievementsEditor.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievementsEditorInput.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievementsWidget.js +39 -39
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPromoNotification.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuotaNotification.js +27 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionDescription.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +21 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +38 -38
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +60 -55
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +39 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/claudePluginRecommendations.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/contextContrib/chatContext.contribution.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/contextContrib/chatContextService.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementStatusWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/expNotification/chatExpNotificationConfig.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/expNotification/chatExpNotificationConfig.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/expNotification/chatExpNotificationContribution.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/githubRepoFetcher.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorOverlay.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackService.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginGitCommandService.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +32 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +22 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolSetsCodeLensProvider.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptBucketing.js +5 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimeline.contribution.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineCard.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineGutterRail.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineModel.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineRulerRail.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineStickyHeader.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineWidgetContrib.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.js +36 -29
- package/vscode/src/vs/workbench/contrib/chat/browser/telemetry/chatEditorTopologyTelemetry.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/clientToolSetsContribution.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +46 -42
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +34 -34
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolHelpers.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolResultCompressorService.js +68 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/utilityModelContribution.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceClientService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceClientService.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/voiceInputMode/voiceInputMode.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownAnchorService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentOpenChat.js +25 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatFind/chatFindAccessibilityHelp.js +15 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPetWidgetService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPetWidgetService.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNoticeHub.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNoticeHub.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletions.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletions.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCommandArgumentHint.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +99 -95
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/editorHoverWrapper.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +28 -26
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelStore.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.js +5 -2
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +21 -21
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/workspacePluginSettingsService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/workspacePluginSettingsService.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +20 -20
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +18 -12
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +157 -157
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/confirmationTool.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/manageTodoListTool.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/reviewPlanTool.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactRulesTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactsTool.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/tools.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +26 -26
- package/vscode/src/vs/workbench/contrib/chat/common/tools/toolResultCompressor.js +5 -1
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/common/widget/chatResponseResourceFileSystemProvider.js +1 -1
- package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarousel.contribution.js +13 -13
- package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarouselEditor.js +10 -10
- package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarouselEditorInput.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibilityHelp.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +16 -16
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +3 -3
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatEditReviewSession.js +3 -3
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +5 -5
- package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +29 -25
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +13 -13
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +10 -10
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.js +2 -2
- package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChat.js +22 -22
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +21 -21
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.js +4 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +4 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/agentHostSandboxForwarder.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +15 -15
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +7 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +5 -5
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.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/commandLineAutoApproveAnalyzer.js +18 -18
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +9 -9
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/consoleCompactor/consoleCompactor.js +28 -25
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +4 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +4 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +4 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +4 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +4 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +5 -5
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +79 -79
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sendToTerminalTool.js +11 -11
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +16 -16
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +9 -9
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +16 -16
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandParser.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalOutputCache.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalOutputCache.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalOutputCompressor.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/sandboxSettingsReader.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +7 -7
- package/vscode/src/vs/workbench/services/agentEditorComments/browser/agentEditorCommentsOverlayWidget.js +4 -4
- package/vscode/src/vs/workbench/services/agentHost/browser/editorRemoteAgentHostServiceClient.d.ts +3 -3
- package/vscode/src/vs/workbench/services/agentHost/browser/editorRemoteAgentHostServiceClient.js +4 -4
- package/vscode/src/vs/workbench/services/agentHost/common/agentHostFileSystemService.d.ts +1 -1
- package/vscode/src/vs/workbench/services/agentHost/common/agentHostFileSystemService.js +1 -1
- package/vscode/src/vs/workbench/services/agentHost/common/agentHostResourceService.js +6 -6
- package/vscode/src/vs/workbench/services/agentHost/common/editorRemoteAgentHostTransport.js +25 -25
- package/vscode/src/vs/platform/agentHost/browser/agentHostProtocolClient.d.ts +0 -603
- package/vscode/src/vs/platform/agentHost/browser/agentHostProtocolClient.js +0 -1911
- package/vscode/src/vs/platform/agentHost/common/agentHostClientInfo.d.ts +0 -9
- package/vscode/src/vs/platform/agentHost/common/agentHostClientInfo.js +0 -20
- package/vscode/src/vs/platform/agentHost/common/agentHostExtensionProtocol.d.ts +0 -144
- package/vscode/src/vs/platform/agentHost/common/agentHostExtensionProtocol.js +0 -20
- package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.d.ts +0 -204
- package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.js +0 -440
- package/vscode/src/vs/platform/agentHost/common/agentHostManagedRules.d.ts +0 -47
- package/vscode/src/vs/platform/agentHost/common/agentHostManagedRules.js +0 -75
- package/vscode/src/vs/platform/agentHost/common/agentHostManagedSettings.d.ts +0 -68
- package/vscode/src/vs/platform/agentHost/common/agentHostManagedSettings.js +0 -161
- package/vscode/src/vs/platform/agentHost/common/agentHostWorkingDirectories.d.ts +0 -16
- package/vscode/src/vs/platform/agentHost/common/agentHostWorkingDirectories.js +0 -14
- package/vscode/src/vs/platform/agentHost/common/agentMerge.d.ts +0 -261
- package/vscode/src/vs/platform/agentHost/common/agentMerge.js +0 -67
- package/vscode/src/vs/platform/agentHost/common/ahpJsonlLogger.d.ts +0 -39
- package/vscode/src/vs/platform/agentHost/common/ahpJsonlLogger.js +0 -169
- package/vscode/src/vs/platform/agentHost/common/changesetUri.d.ts +0 -130
- package/vscode/src/vs/platform/agentHost/common/changesetUri.js +0 -41
- package/vscode/src/vs/platform/agentHost/common/customAgents.d.ts +0 -42
- package/vscode/src/vs/platform/agentHost/common/customAgents.js +0 -20
- package/vscode/src/vs/platform/agentHost/common/meta/agentCompletionAttachmentMeta.d.ts +0 -110
- package/vscode/src/vs/platform/agentHost/common/meta/agentCompletionAttachmentMeta.js +0 -79
- package/vscode/src/vs/platform/agentHost/common/meta/agentHostArtifactRemovalMeta.d.ts +0 -4
- package/vscode/src/vs/platform/agentHost/common/resourceReadLogging.d.ts +0 -1
- package/vscode/src/vs/platform/agentHost/common/resourceReadLogging.js +0 -26
- package/vscode/src/vs/platform/agentHost/common/sessionArtifacts.d.ts +0 -75
- package/vscode/src/vs/platform/agentHost/common/sessionArtifacts.js +0 -84
- package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.d.ts +0 -461
- package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.js +0 -803
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-annotations/reducer.d.ts +0 -18
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-annotations/reducer.js +0 -89
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-automation/reducer.d.ts +0 -4
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-automation/reducer.js +0 -37
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-automation-run/reducer.d.ts +0 -4
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-automation-run/reducer.js +0 -45
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-changeset/reducer.d.ts +0 -13
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-changeset/reducer.js +0 -147
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-chat/reducer.d.ts +0 -6
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-chat/reducer.js +0 -544
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-root/reducer.d.ts +0 -6
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-root/reducer.js +0 -30
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-session/reducer.d.ts +0 -6
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-session/reducer.js +0 -430
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-terminal/reducer.d.ts +0 -6
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-terminal/reducer.js +0 -114
- package/vscode/src/vs/platform/agentHost/common/state/protocol/common/reducer-helpers.d.ts +0 -17
- package/vscode/src/vs/platform/agentHost/common/state/protocol/common/reducer-helpers.js +0 -9
- package/vscode/src/vs/platform/agentHost/common/state/protocol/common/timestamps.d.ts +0 -1
- package/vscode/src/vs/platform/agentHost/common/state/protocol/common/timestamps.js +0 -7
- package/vscode/src/vs/platform/agentHost/common/state/protocol/version/registry.d.ts +0 -67
- package/vscode/src/vs/platform/agentHost/common/state/protocol/version/registry.js +0 -117
- package/vscode/src/vs/platform/agentHost/common/state/sessionActions.d.ts +0 -106
- package/vscode/src/vs/platform/agentHost/common/state/sessionActions.js +0 -23
- package/vscode/src/vs/platform/agentHost/common/transportConstants.d.ts +0 -15
- package/vscode/src/vs/platform/agentHost/common/transportConstants.js +0 -6
- package/vscode/src/vs/platform/agentHost/common/worktreePaths.d.ts +0 -24
- package/vscode/src/vs/platform/agentHost/common/worktreePaths.js +0 -15
- package/vscode/src/vs/platform/domWidget/browser/domWidget.d.ts +0 -52
- package/vscode/src/vs/platform/domWidget/browser/domWidget.js +0 -53
- package/vscode/src/vs/platform/networkFilter/common/domainMatcher.d.ts +0 -54
- package/vscode/src/vs/platform/networkFilter/common/domainMatcher.js +0 -210
- package/vscode/src/vs/platform/networkFilter/common/settings.d.ts +0 -8
- package/vscode/src/vs/platform/networkFilter/common/settings.js +0 -10
- package/vscode/src/vs/workbench/browser/chatChangesPill.d.ts +0 -29
- package/vscode/src/vs/workbench/browser/chatChangesPill.js +0 -84
- package/vscode/src/vs/workbench/common/chatPullRequest.d.ts +0 -19
- package/vscode/src/vs/workbench/common/chatPullRequest.js +0 -53
- package/vscode/src/vs/workbench/contrib/chat/browser/agentHostCompletionAction.d.ts +0 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/agentHostCompletionAction.js +0 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.d.ts +0 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.js +0 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostDownloadProgress.d.ts +0 -35
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostDownloadProgress.js +0 -73
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostToolSetEnablementService.d.ts +0 -51
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostToolSetEnablementService.js +0 -167
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/externalSessionsFilterMenu.d.ts +0 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/externalSessionsFilterMenu.js +0 -62
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/sessionSummaryHover.css +0 -104
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionSummaryHover.d.ts +0 -115
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionSummaryHover.js +0 -168
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.d.ts +0 -35
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.js +0 -294
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.d.ts +0 -66
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +0 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.d.ts +0 -147
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.js +0 -31
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.d.ts +0 -83
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.js +0 -55
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +0 -278
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +0 -2036
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.d.ts +0 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.js +0 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +0 -397
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +0 -4127
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.d.ts +0 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +0 -93
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementSectionRegistry.d.ts +0 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementSectionRegistry.js +0 -34
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationPresentation.d.ts +0 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationPresentation.js +0 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePage.d.ts +0 -57
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePage.js +0 -48
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.d.ts +0 -40
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.js +0 -369
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCardList.d.ts +0 -40
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCardList.js +0 -302
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.d.ts +0 -70
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.js +0 -74
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationGroupHeaderRenderer.d.ts +0 -43
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationGroupHeaderRenderer.js +0 -63
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigration.d.ts +0 -38
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigration.js +0 -240
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationCategories.d.ts +0 -82
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationCategories.js +0 -762
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationDashboard.d.ts +0 -80
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationDashboard.js +0 -279
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.d.ts +0 -109
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.js +0 -743
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedExtensionToolsDetail.d.ts +0 -42
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedExtensionToolsDetail.js +0 -130
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedMcpServerDetail.d.ts +0 -62
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedMcpServerDetail.js +0 -217
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/galleryItemRenderer.d.ts +0 -46
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/galleryItemRenderer.js +0 -91
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.d.ts +0 -357
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +0 -2656
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +0 -3742
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationWelcomePromptLaunchers.css +0 -301
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/customizationMigrationDashboard.css +0 -354
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +0 -197
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +0 -2205
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.d.ts +0 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.js +0 -317
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/toolsListWidget.d.ts +0 -132
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/toolsListWidget.js +0 -1216
- package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPills.d.ts +0 -86
- package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPills.js +0 -282
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.d.ts +0 -118
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +0 -540
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.d.ts +0 -82
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +0 -1448
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatModelsWidget.css +0 -329
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievementPreview.d.ts +0 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievementPreview.js +0 -114
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatus.d.ts +0 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatus.js +0 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.d.ts +0 -99
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +0 -1268
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/media/chatStatus.css +0 -552
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.d.ts +0 -31
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +0 -676
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.d.ts +0 -68
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +0 -225
- package/vscode/src/vs/workbench/contrib/chat/browser/sessionChatPillOptions.d.ts +0 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/sessionChatPillOptions.js +0 -52
- package/vscode/src/vs/workbench/contrib/chat/browser/sessionPullRequestPill.d.ts +0 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/sessionPullRequestPill.js +0 -58
- package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceInputUtils.d.ts +0 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceInputUtils.js +0 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletionsBase.d.ts +0 -73
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletionsBase.js +0 -65
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletionUtils.d.ts +0 -31
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletionUtils.js +0 -110
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputPlaceholderDecoration.d.ts +0 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputPlaceholderDecoration.js +0 -28
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputReferenceDecorations.d.ts +0 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputReferenceDecorations.js +0 -16
- package/vscode/src/vs/workbench/contrib/chat/common/automations/automationBlueprint.d.ts +0 -22
- package/vscode/src/vs/workbench/contrib/chat/common/automations/automationBlueprint.js +0 -163
- package/vscode/src/vs/workbench/contrib/chat/common/chatNotification.d.ts +0 -6
- package/vscode/src/vs/workbench/contrib/chat/common/chatNotification.js +0 -12
- package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.d.ts +0 -300
- package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.js +0 -272
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginEnablement.d.ts +0 -25
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginEnablement.js +0 -178
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +0 -78
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.js +0 -51
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/fileBackedInstalledPluginsStore.d.ts +0 -67
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/fileBackedInstalledPluginsStore.js +0 -195
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.d.ts +0 -67
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.js +0 -294
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +0 -212
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +0 -955
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/strictKnownMarketplaces.d.ts +0 -31
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/strictKnownMarketplaces.js +0 -122
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.d.ts +0 -50
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.js +0 -78
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.d.ts +0 -77
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.js +0 -120
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.d.ts +0 -10
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.js +0 -23
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/customizationMigrationService.d.ts +0 -115
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/customizationMigrationService.js +0 -69
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/extensionPromptFileService.d.ts +0 -92
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/extensionPromptFileService.js +0 -335
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +0 -235
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +0 -1673
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +0 -202
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +0 -872
- package/vscode/src/vs/workbench/contrib/chat/common/sessionChatPills.d.ts +0 -60
- package/vscode/src/vs/workbench/contrib/chat/common/sessionChatPills.js +0 -139
|
@@ -1,1268 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
|
-
import { $, addDisposableListener, EventType, append, EventHelper, disposableWindowInterval, getWindow } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/dom';
|
|
4
|
-
import { Gesture, EventType as EventType$1 } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/touch';
|
|
5
|
-
import { ActionBar } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/actionbar/actionbar';
|
|
6
|
-
import { renderLabelWithIcons } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/iconLabel/iconLabels';
|
|
7
|
-
import { Button } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/button/button';
|
|
8
|
-
import { SelectBox } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/selectBox/selectBox';
|
|
9
|
-
import { Checkbox, TriStateCheckbox } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/toggle/toggle';
|
|
10
|
-
import { toAction } from '@codingame/monaco-vscode-api/vscode/vs/base/common/actions';
|
|
11
|
-
import { Sequencer } from '@codingame/monaco-vscode-api/vscode/vs/base/common/async';
|
|
12
|
-
import { cancelOnDispose } from '@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation';
|
|
13
|
-
import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
|
|
14
|
-
import { safeIntl } from '@codingame/monaco-vscode-api/vscode/vs/base/common/date';
|
|
15
|
-
import { MarkdownString } from '@codingame/monaco-vscode-api/vscode/vs/base/common/htmlContent';
|
|
16
|
-
import { MutableDisposable, DisposableStore } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
17
|
-
import { parseLinkedText } from '@codingame/monaco-vscode-api/vscode/vs/base/common/linkedText';
|
|
18
|
-
import { language } from '@codingame/monaco-vscode-api/vscode/vs/base/common/platform';
|
|
19
|
-
import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
|
|
20
|
-
import { isObject } from '@codingame/monaco-vscode-api/vscode/vs/base/common/types';
|
|
21
|
-
import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
|
|
22
|
-
import { IInlineCompletionsService } from '@codingame/monaco-vscode-api/vscode/vs/editor/browser/services/inlineCompletionsService.service';
|
|
23
|
-
import { ILanguageService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/languages/language.service';
|
|
24
|
-
import { ITextResourceConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/textResourceConfiguration.service';
|
|
25
|
-
import { ILanguageFeaturesService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/languageFeatures.service';
|
|
26
|
-
import { StorageScope, StorageTarget } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage';
|
|
27
|
-
import { IStorageService } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service';
|
|
28
|
-
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
29
|
-
import { ICommandService } from '@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service';
|
|
30
|
-
import { ConfigurationTarget, getConfigValueInTarget } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration';
|
|
31
|
-
import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
|
|
32
|
-
import { nativeHoverDelegate } from '@codingame/monaco-vscode-api/vscode/vs/platform/hover/browser/hover';
|
|
33
|
-
import { IHoverService } from '@codingame/monaco-vscode-api/vscode/vs/platform/hover/browser/hover.service';
|
|
34
|
-
import { IMarkdownRendererService } from '@codingame/monaco-vscode-api/vscode/vs/platform/markdown/browser/markdownRenderer.service';
|
|
35
|
-
import { INotificationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/notification/common/notification.service';
|
|
36
|
-
import { Link } from '@codingame/monaco-vscode-api/vscode/vs/platform/opener/browser/link';
|
|
37
|
-
import { IOpenerService } from '@codingame/monaco-vscode-api/vscode/vs/platform/opener/common/opener.service';
|
|
38
|
-
import { ITelemetryService } from '@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service';
|
|
39
|
-
import { defaultButtonStyles, defaultSelectBoxStyles, defaultCheckboxStyles } from '@codingame/monaco-vscode-api/vscode/vs/platform/theme/browser/defaultStyles';
|
|
40
|
-
import { DomWidget } from '../../../../../platform/domWidget/browser/domWidget.js';
|
|
41
|
-
import { EditorResourceAccessor, SideBySideEditor } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor';
|
|
42
|
-
import { getChatPlanName, ChatEntitlement, getQuotaUsage, QuotaUsageKind, getQuotaReset } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService';
|
|
43
|
-
import { IChatEntitlementService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService.service';
|
|
44
|
-
import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
|
|
45
|
-
import { IContextViewService } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextview/browser/contextView.service';
|
|
46
|
-
import { isNewUser } from './chatStatus.js';
|
|
47
|
-
import { IChatStatusItemService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatStatus/chatStatusItemService.service';
|
|
48
|
-
import { GitHubPaths } from '@codingame/monaco-vscode-api/vscode/vs/platform/defaultAccount/common/defaultAccount';
|
|
49
|
-
import { IDefaultAccountService } from '@codingame/monaco-vscode-api/vscode/vs/platform/defaultAccount/common/defaultAccount.service';
|
|
50
|
-
import product from '@codingame/monaco-vscode-api/vscode/vs/platform/product/common/product';
|
|
51
|
-
import { isCompletionsEnabled } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/completionsEnablement';
|
|
52
|
-
|
|
53
|
-
var ChatStatusDashboard_1;
|
|
54
|
-
const defaultChat = product.defaultChatAgent;
|
|
55
|
-
const completionsConfigurationTargets = [
|
|
56
|
-
ConfigurationTarget.WORKSPACE_FOLDER,
|
|
57
|
-
ConfigurationTarget.WORKSPACE,
|
|
58
|
-
ConfigurationTarget.USER_REMOTE,
|
|
59
|
-
ConfigurationTarget.USER_LOCAL,
|
|
60
|
-
ConfigurationTarget.APPLICATION
|
|
61
|
-
];
|
|
62
|
-
let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
|
|
63
|
-
static {
|
|
64
|
-
ChatStatusDashboard_1 = this;
|
|
65
|
-
}
|
|
66
|
-
static {
|
|
67
|
-
this.QUICK_SETTINGS_COLLAPSED_KEY = "chatStatusDashboard.quickSettingsCollapsed";
|
|
68
|
-
}
|
|
69
|
-
constructor(
|
|
70
|
-
options,
|
|
71
|
-
chatEntitlementService,
|
|
72
|
-
chatStatusItemService,
|
|
73
|
-
commandService,
|
|
74
|
-
configurationService,
|
|
75
|
-
editorService,
|
|
76
|
-
hoverService,
|
|
77
|
-
languageService,
|
|
78
|
-
openerService,
|
|
79
|
-
telemetryService,
|
|
80
|
-
textResourceConfigurationService,
|
|
81
|
-
inlineCompletionsService,
|
|
82
|
-
markdownRendererService,
|
|
83
|
-
languageFeaturesService,
|
|
84
|
-
contextViewService,
|
|
85
|
-
storageService,
|
|
86
|
-
defaultAccountService,
|
|
87
|
-
notificationService
|
|
88
|
-
) {
|
|
89
|
-
super();
|
|
90
|
-
this.options = options;
|
|
91
|
-
this.chatEntitlementService = chatEntitlementService;
|
|
92
|
-
this.chatStatusItemService = chatStatusItemService;
|
|
93
|
-
this.commandService = commandService;
|
|
94
|
-
this.configurationService = configurationService;
|
|
95
|
-
this.editorService = editorService;
|
|
96
|
-
this.hoverService = hoverService;
|
|
97
|
-
this.languageService = languageService;
|
|
98
|
-
this.openerService = openerService;
|
|
99
|
-
this.telemetryService = telemetryService;
|
|
100
|
-
this.textResourceConfigurationService = textResourceConfigurationService;
|
|
101
|
-
this.inlineCompletionsService = inlineCompletionsService;
|
|
102
|
-
this.markdownRendererService = markdownRendererService;
|
|
103
|
-
this.languageFeaturesService = languageFeaturesService;
|
|
104
|
-
this.contextViewService = contextViewService;
|
|
105
|
-
this.storageService = storageService;
|
|
106
|
-
this.defaultAccountService = defaultAccountService;
|
|
107
|
-
this.notificationService = notificationService;
|
|
108
|
-
this.element = $("div.chat-status-bar-entry-tooltip");
|
|
109
|
-
this.dateFormatter = safeIntl.DateTimeFormat(language, {
|
|
110
|
-
month: "short",
|
|
111
|
-
day: "numeric"
|
|
112
|
-
});
|
|
113
|
-
this.timeFormatter = safeIntl.DateTimeFormat(language, {
|
|
114
|
-
hour: "numeric",
|
|
115
|
-
minute: "numeric"
|
|
116
|
-
});
|
|
117
|
-
this.quotaPercentageFormatter = safeIntl.NumberFormat(undefined, {
|
|
118
|
-
maximumFractionDigits: 0,
|
|
119
|
-
minimumFractionDigits: 0
|
|
120
|
-
});
|
|
121
|
-
this.quotaCreditsFormatter = safeIntl.NumberFormat(language, {
|
|
122
|
-
maximumFractionDigits: 2,
|
|
123
|
-
minimumFractionDigits: 0
|
|
124
|
-
});
|
|
125
|
-
this.render();
|
|
126
|
-
}
|
|
127
|
-
render() {
|
|
128
|
-
const token = cancelOnDispose(this._store);
|
|
129
|
-
const {
|
|
130
|
-
chat,
|
|
131
|
-
premiumChat,
|
|
132
|
-
completions
|
|
133
|
-
} = this.chatEntitlementService.quotas;
|
|
134
|
-
const hasQuotas = !!(chat || premiumChat);
|
|
135
|
-
const isAnonymousWithSentiment = this.chatEntitlementService.anonymous && this.chatEntitlementService.sentiment.completed;
|
|
136
|
-
const isPooledQuotaDepleted = premiumChat?.unlimited && premiumChat.hasQuota === false;
|
|
137
|
-
const hasUsageSection = hasQuotas || isAnonymousWithSentiment;
|
|
138
|
-
const hasVisibleUsageContent = chat?.unlimited === false || premiumChat?.unlimited === false || (!this.options?.compactQuotaLayout && completions?.unlimited === false) || isAnonymousWithSentiment || isPooledQuotaDepleted;
|
|
139
|
-
const contributedEntries = [...this.chatStatusItemService.getEntries()];
|
|
140
|
-
const hasQuickSettingsContent = !this.options?.disableInlineSuggestionsSettings || !this.options?.disableModelSelection || !this.options?.disableProviderOptions || !this.options?.disableCompletionsSnooze;
|
|
141
|
-
let headerAdditionalSpendButton;
|
|
142
|
-
let headerUpgradeButton;
|
|
143
|
-
if (hasUsageSection && !this.options?.compactQuotaLayout) {
|
|
144
|
-
const planName = getChatPlanName(this.chatEntitlementService.entitlement);
|
|
145
|
-
const headerHost = this.options?.titleHeaderContainer ?? this.element;
|
|
146
|
-
const header = this.renderHeader(headerHost, this._store, planName, toAction({
|
|
147
|
-
id: "workbench.action.manageCopilot",
|
|
148
|
-
label: ( localize(8676, "Manage Copilot Settings")),
|
|
149
|
-
tooltip: ( localize(8677, "Manage Copilot Settings")),
|
|
150
|
-
class: ThemeIcon.asClassName(Codicon.settings),
|
|
151
|
-
run: () => this.runCommandAndClose(() => this.openerService.open(( URI.parse(this.defaultAccountService.resolveGitHubUrl(GitHubPaths.copilotSettings)))))
|
|
152
|
-
}));
|
|
153
|
-
const canConfigureAdditionalSpend = this.chatEntitlementService.entitlement === ChatEntitlement.EDU || this.chatEntitlementService.entitlement === ChatEntitlement.Pro || this.chatEntitlementService.entitlement === ChatEntitlement.ProPlus || this.chatEntitlementService.entitlement === ChatEntitlement.Max;
|
|
154
|
-
const showUpgrade = this.chatEntitlementService.quotas.canUpgradePlan ?? false;
|
|
155
|
-
const actionBarElement = header.lastElementChild;
|
|
156
|
-
if (canConfigureAdditionalSpend) {
|
|
157
|
-
headerAdditionalSpendButton = this._store.add(( new Button(header, {
|
|
158
|
-
...defaultButtonStyles,
|
|
159
|
-
hoverDelegate: nativeHoverDelegate,
|
|
160
|
-
secondary: true
|
|
161
|
-
})));
|
|
162
|
-
headerAdditionalSpendButton.element.classList.add("header-cta-button");
|
|
163
|
-
headerAdditionalSpendButton.label = ( localize(8678, "Manage Budget"));
|
|
164
|
-
this._store.add(headerAdditionalSpendButton.onDidClick(() => {
|
|
165
|
-
this.telemetryService.publicLog2("workbenchActionExecuted", {
|
|
166
|
-
id: "workbench.action.chat.manageAdditionalSpend",
|
|
167
|
-
from: "chat-status"
|
|
168
|
-
});
|
|
169
|
-
this.runCommandAndClose(() => this.openerService.open(( URI.parse(this.defaultAccountService.resolveGitHubUrl(GitHubPaths.billingBudgets)))));
|
|
170
|
-
}));
|
|
171
|
-
if (actionBarElement) {
|
|
172
|
-
header.insertBefore(headerAdditionalSpendButton.element, actionBarElement);
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
if (showUpgrade) {
|
|
176
|
-
headerUpgradeButton = this._store.add(( new Button(header, {
|
|
177
|
-
...defaultButtonStyles,
|
|
178
|
-
hoverDelegate: nativeHoverDelegate
|
|
179
|
-
})));
|
|
180
|
-
headerUpgradeButton.element.classList.add("header-cta-button");
|
|
181
|
-
headerUpgradeButton.label = ( localize(8679, "Upgrade"));
|
|
182
|
-
this._store.add(
|
|
183
|
-
headerUpgradeButton.onDidClick(() => this.runCommandAndClose("workbench.action.chat.upgradePlan"))
|
|
184
|
-
);
|
|
185
|
-
if (actionBarElement) {
|
|
186
|
-
header.insertBefore(headerUpgradeButton.element, actionBarElement);
|
|
187
|
-
}
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
if (hasUsageSection && this.options?.compactQuotaLayout && this.options.ctaButtonsContainer) {
|
|
191
|
-
const ctaContainer = this.options.ctaButtonsContainer;
|
|
192
|
-
const canConfigureAdditionalSpend = this.chatEntitlementService.entitlement === ChatEntitlement.EDU || this.chatEntitlementService.entitlement === ChatEntitlement.Pro || this.chatEntitlementService.entitlement === ChatEntitlement.ProPlus || this.chatEntitlementService.entitlement === ChatEntitlement.Max;
|
|
193
|
-
const showUpgrade = this.chatEntitlementService.quotas.canUpgradePlan ?? false;
|
|
194
|
-
if (canConfigureAdditionalSpend) {
|
|
195
|
-
headerAdditionalSpendButton = this._store.add(( new Button(ctaContainer, {
|
|
196
|
-
...defaultButtonStyles,
|
|
197
|
-
hoverDelegate: nativeHoverDelegate,
|
|
198
|
-
secondary: true
|
|
199
|
-
})));
|
|
200
|
-
headerAdditionalSpendButton.label = ( localize(8678, "Manage Budget"));
|
|
201
|
-
this._store.add(headerAdditionalSpendButton.onDidClick(() => {
|
|
202
|
-
this.telemetryService.publicLog2("workbenchActionExecuted", {
|
|
203
|
-
id: "workbench.action.chat.manageAdditionalSpend",
|
|
204
|
-
from: "chat-status"
|
|
205
|
-
});
|
|
206
|
-
this.runCommandAndClose(() => this.openerService.open(( URI.parse(this.defaultAccountService.resolveGitHubUrl(GitHubPaths.billingBudgets)))));
|
|
207
|
-
}));
|
|
208
|
-
}
|
|
209
|
-
if (showUpgrade) {
|
|
210
|
-
headerUpgradeButton = this._store.add(( new Button(ctaContainer, {
|
|
211
|
-
...defaultButtonStyles,
|
|
212
|
-
hoverDelegate: nativeHoverDelegate
|
|
213
|
-
})));
|
|
214
|
-
headerUpgradeButton.label = ( localize(8679, "Upgrade"));
|
|
215
|
-
this._store.add(
|
|
216
|
-
headerUpgradeButton.onDidClick(() => this.runCommandAndClose("workbench.action.chat.upgradePlan"))
|
|
217
|
-
);
|
|
218
|
-
}
|
|
219
|
-
}
|
|
220
|
-
if (this.options?.compactQuotaLayout) {
|
|
221
|
-
this.element.classList.add("compact");
|
|
222
|
-
}
|
|
223
|
-
const updatePromise = this.chatEntitlementService.update(token);
|
|
224
|
-
if (hasVisibleUsageContent) {
|
|
225
|
-
this.renderUsageContent(
|
|
226
|
-
this.element,
|
|
227
|
-
token,
|
|
228
|
-
headerAdditionalSpendButton,
|
|
229
|
-
headerUpgradeButton,
|
|
230
|
-
updatePromise
|
|
231
|
-
);
|
|
232
|
-
}
|
|
233
|
-
const hasPremiumUnlimited = !!premiumChat?.unlimited;
|
|
234
|
-
const premiumChatUsage = getQuotaUsage(premiumChat);
|
|
235
|
-
if (premiumChatUsage?.kind === QuotaUsageKind.CreditsUsed) {
|
|
236
|
-
this.createCreditsUsedIndicator(
|
|
237
|
-
this.element,
|
|
238
|
-
premiumChatUsage.creditsUsed,
|
|
239
|
-
this.formatQuotaResetLabel(premiumChat)
|
|
240
|
-
);
|
|
241
|
-
} else if (hasPremiumUnlimited) {
|
|
242
|
-
const includedTitle = this.chatEntitlementService.quotas.usageBasedBilling ? ( localize(8680, "Credits")) : ( localize(8681, "Premium Requests"));
|
|
243
|
-
const getIncludedDescription = () => {
|
|
244
|
-
if (isPooledQuotaDepleted) {
|
|
245
|
-
return {
|
|
246
|
-
compact: ( localize(8682, "{0} limit reached.", includedTitle)),
|
|
247
|
-
default: ( localize(8683, "Organization limit reached."))
|
|
248
|
-
};
|
|
249
|
-
}
|
|
250
|
-
return {
|
|
251
|
-
compact: ( localize(8684, "{0} included with your organization's plan.", includedTitle)),
|
|
252
|
-
default: ( localize(8685, "Included with your organization's plan."))
|
|
253
|
-
};
|
|
254
|
-
};
|
|
255
|
-
const includedDescription = getIncludedDescription();
|
|
256
|
-
const includedContainer = this.element.appendChild($("div.quota-indicator.included"));
|
|
257
|
-
if (this.options?.compactQuotaLayout) {
|
|
258
|
-
const planName = getChatPlanName(this.chatEntitlementService.entitlement);
|
|
259
|
-
includedContainer.classList.add("compact");
|
|
260
|
-
includedContainer.appendChild($("div.quota-title", undefined, planName));
|
|
261
|
-
includedContainer.appendChild($("div.description", undefined, includedDescription.compact));
|
|
262
|
-
} else {
|
|
263
|
-
includedContainer.appendChild($("div.quota-title", undefined, includedTitle));
|
|
264
|
-
includedContainer.appendChild($("div.description", undefined, includedDescription.default));
|
|
265
|
-
}
|
|
266
|
-
}
|
|
267
|
-
if (hasQuickSettingsContent) {
|
|
268
|
-
const hasContentAbove = hasUsageSection || hasVisibleUsageContent || hasPremiumUnlimited;
|
|
269
|
-
this.renderInlineSuggestionsSection(hasContentAbove);
|
|
270
|
-
}
|
|
271
|
-
if (contributedEntries.length > 0) {
|
|
272
|
-
this.renderContributedSections(contributedEntries);
|
|
273
|
-
}
|
|
274
|
-
this.renderSetupSection();
|
|
275
|
-
}
|
|
276
|
-
renderUsageContent(
|
|
277
|
-
container,
|
|
278
|
-
token,
|
|
279
|
-
headerAdditionalSpendButton,
|
|
280
|
-
headerUpgradeButton,
|
|
281
|
-
updatePromise
|
|
282
|
-
) {
|
|
283
|
-
const {
|
|
284
|
-
chat: chatQuota,
|
|
285
|
-
completions: completionsQuota,
|
|
286
|
-
premiumChat: premiumChatQuota
|
|
287
|
-
} = this.chatEntitlementService.quotas;
|
|
288
|
-
const compact = !!this.options?.compactQuotaLayout;
|
|
289
|
-
const planName = compact ? getChatPlanName(this.chatEntitlementService.entitlement) : undefined;
|
|
290
|
-
if (chatQuota || premiumChatQuota || completionsQuota) {
|
|
291
|
-
const globalCalloutUpdater = this.createGlobalQuotaCallout(container);
|
|
292
|
-
const {
|
|
293
|
-
calloutVisible: initialCalloutVisible
|
|
294
|
-
} = globalCalloutUpdater();
|
|
295
|
-
if (headerAdditionalSpendButton) {
|
|
296
|
-
headerAdditionalSpendButton.element.style.display = initialCalloutVisible ? "" : "none";
|
|
297
|
-
}
|
|
298
|
-
if (headerUpgradeButton) {
|
|
299
|
-
headerUpgradeButton.element.style.display = (headerAdditionalSpendButton && initialCalloutVisible) ? "none" : "";
|
|
300
|
-
}
|
|
301
|
-
let chatQuotaIndicator;
|
|
302
|
-
if (chatQuota && !chatQuota.unlimited && (!this.chatEntitlementService.quotas.usageBasedBilling || this.chatEntitlementService.entitlement === ChatEntitlement.Free)) {
|
|
303
|
-
const chatLabel = this.chatEntitlementService.quotas.usageBasedBilling && this.chatEntitlementService.entitlement === ChatEntitlement.Free ? ( localize(8686, "Credits")) : ( localize(8687, "Chat messages"));
|
|
304
|
-
chatQuotaIndicator = this.createQuotaIndicator(
|
|
305
|
-
container,
|
|
306
|
-
chatQuota,
|
|
307
|
-
chatLabel,
|
|
308
|
-
this.formatQuotaResetLabel(chatQuota),
|
|
309
|
-
compact ? planName : undefined
|
|
310
|
-
);
|
|
311
|
-
}
|
|
312
|
-
let premiumChatQuotaIndicator;
|
|
313
|
-
if (premiumChatQuota && !premiumChatQuota.unlimited && premiumChatQuota.percentRemaining >= 0) {
|
|
314
|
-
const isUBB = this.chatEntitlementService.quotas.usageBasedBilling;
|
|
315
|
-
const premiumChatLabel = isUBB ? ( localize(8686, "Credits")) : this.chatEntitlementService.quotas.additionalUsageEnabled ? ( localize(8688, "Included premium requests")) : ( localize(8689, "Premium requests"));
|
|
316
|
-
premiumChatQuotaIndicator = this.createQuotaIndicator(
|
|
317
|
-
container,
|
|
318
|
-
premiumChatQuota,
|
|
319
|
-
premiumChatLabel,
|
|
320
|
-
this.formatQuotaResetLabel(premiumChatQuota),
|
|
321
|
-
compact ? planName : undefined
|
|
322
|
-
);
|
|
323
|
-
}
|
|
324
|
-
let additionalBudgetIndicator;
|
|
325
|
-
let additionalBudgetElement;
|
|
326
|
-
const initialOverageEntitlement = this.chatEntitlementService.quotas.additionalUsageEntitlement ?? 0;
|
|
327
|
-
if (initialOverageEntitlement > 0) {
|
|
328
|
-
const overageCount = this.chatEntitlementService.quotas.additionalUsageCount ?? 0;
|
|
329
|
-
const overagePercentRemaining = Math.max(0, Math.min(
|
|
330
|
-
100,
|
|
331
|
-
((initialOverageEntitlement - overageCount) / initialOverageEntitlement) * 100
|
|
332
|
-
));
|
|
333
|
-
const overageSnapshot = {
|
|
334
|
-
percentRemaining: overagePercentRemaining,
|
|
335
|
-
unlimited: false,
|
|
336
|
-
entitlement: initialOverageEntitlement,
|
|
337
|
-
quotaRemaining: Math.max(0, initialOverageEntitlement - overageCount),
|
|
338
|
-
resetAt: premiumChatQuota?.resetAt
|
|
339
|
-
};
|
|
340
|
-
const additionalBudgetLabel = ( localize(8690, "Additional Budget"));
|
|
341
|
-
additionalBudgetIndicator = this.createQuotaIndicator(
|
|
342
|
-
container,
|
|
343
|
-
overageSnapshot,
|
|
344
|
-
additionalBudgetLabel,
|
|
345
|
-
this.formatQuotaResetLabel(overageSnapshot),
|
|
346
|
-
compact ? additionalBudgetLabel : undefined
|
|
347
|
-
);
|
|
348
|
-
additionalBudgetElement = container.lastElementChild;
|
|
349
|
-
const isPremiumExhausted = premiumChatQuota && premiumChatQuota.percentRemaining <= 0;
|
|
350
|
-
if (!isPremiumExhausted) {
|
|
351
|
-
additionalBudgetElement.classList.add("muted");
|
|
352
|
-
}
|
|
353
|
-
}
|
|
354
|
-
let completionsQuotaIndicator;
|
|
355
|
-
const showCompletions = !compact && completionsQuota && !completionsQuota.unlimited && completionsQuota.percentRemaining >= 0 && (!this.chatEntitlementService.quotas.usageBasedBilling || this.chatEntitlementService.entitlement === ChatEntitlement.Free);
|
|
356
|
-
if (showCompletions) {
|
|
357
|
-
completionsQuotaIndicator = this.createQuotaIndicator(container, completionsQuota, ( localize(8691, "Inline Suggestions")), this.formatQuotaResetLabel(completionsQuota), compact ? planName : undefined);
|
|
358
|
-
}
|
|
359
|
-
const updateIndicators = () => {
|
|
360
|
-
const {
|
|
361
|
-
chat: chatQuota,
|
|
362
|
-
premiumChat: premiumChatQuota,
|
|
363
|
-
completions: completionsQuota
|
|
364
|
-
} = this.chatEntitlementService.quotas;
|
|
365
|
-
if (chatQuota) {
|
|
366
|
-
chatQuotaIndicator?.(chatQuota);
|
|
367
|
-
}
|
|
368
|
-
if (premiumChatQuota) {
|
|
369
|
-
premiumChatQuotaIndicator?.(premiumChatQuota);
|
|
370
|
-
}
|
|
371
|
-
if (completionsQuota) {
|
|
372
|
-
completionsQuotaIndicator?.(completionsQuota);
|
|
373
|
-
}
|
|
374
|
-
if (additionalBudgetIndicator && additionalBudgetElement) {
|
|
375
|
-
const overageEntitlement = this.chatEntitlementService.quotas.additionalUsageEntitlement ?? 0;
|
|
376
|
-
const overageCount = this.chatEntitlementService.quotas.additionalUsageCount ?? 0;
|
|
377
|
-
if (overageEntitlement > 0) {
|
|
378
|
-
const overagePercentRemaining = Math.max(
|
|
379
|
-
0,
|
|
380
|
-
Math.min(100, ((overageEntitlement - overageCount) / overageEntitlement) * 100)
|
|
381
|
-
);
|
|
382
|
-
additionalBudgetIndicator({
|
|
383
|
-
percentRemaining: overagePercentRemaining,
|
|
384
|
-
unlimited: false,
|
|
385
|
-
entitlement: overageEntitlement,
|
|
386
|
-
quotaRemaining: Math.max(0, overageEntitlement - overageCount)
|
|
387
|
-
});
|
|
388
|
-
}
|
|
389
|
-
const premiumExhausted = premiumChatQuota && premiumChatQuota.percentRemaining <= 0;
|
|
390
|
-
additionalBudgetElement.classList.toggle("muted", !premiumExhausted);
|
|
391
|
-
}
|
|
392
|
-
const {
|
|
393
|
-
calloutVisible
|
|
394
|
-
} = globalCalloutUpdater();
|
|
395
|
-
if (headerAdditionalSpendButton) {
|
|
396
|
-
headerAdditionalSpendButton.element.style.display = calloutVisible ? "" : "none";
|
|
397
|
-
headerAdditionalSpendButton.label = ( localize(8678, "Manage Budget"));
|
|
398
|
-
}
|
|
399
|
-
if (headerUpgradeButton) {
|
|
400
|
-
headerUpgradeButton.element.style.display = (headerAdditionalSpendButton && calloutVisible) ? "none" : "";
|
|
401
|
-
}
|
|
402
|
-
};
|
|
403
|
-
(async () => {
|
|
404
|
-
await updatePromise;
|
|
405
|
-
if (token.isCancellationRequested) {
|
|
406
|
-
return;
|
|
407
|
-
}
|
|
408
|
-
updateIndicators();
|
|
409
|
-
})();
|
|
410
|
-
this._store.add(
|
|
411
|
-
this.chatEntitlementService.onDidChangeQuotaRemaining(() => updateIndicators())
|
|
412
|
-
);
|
|
413
|
-
this._store.add(
|
|
414
|
-
this.chatEntitlementService.onDidChangeQuotaExceeded(() => updateIndicators())
|
|
415
|
-
);
|
|
416
|
-
}
|
|
417
|
-
else if (this.chatEntitlementService.anonymous && this.chatEntitlementService.sentiment.completed) {
|
|
418
|
-
this.createQuotaIndicator(container, ( localize(8692, "Limited")), ( localize(8687, "Chat messages")));
|
|
419
|
-
}
|
|
420
|
-
}
|
|
421
|
-
renderInlineSuggestionsSection(hasContentAbove) {
|
|
422
|
-
const nonCollapsible = !!this.options?.disableQuickSettingsCollapsible;
|
|
423
|
-
const collapsed = !nonCollapsible && this.storageService.getBoolean(
|
|
424
|
-
ChatStatusDashboard_1.QUICK_SETTINGS_COLLAPSED_KEY,
|
|
425
|
-
StorageScope.PROFILE,
|
|
426
|
-
true
|
|
427
|
-
);
|
|
428
|
-
const activeLanguageId = this.editorService.activeTextEditorLanguageId;
|
|
429
|
-
const getStatusText = () => {
|
|
430
|
-
if (!this.canUseChat()) {
|
|
431
|
-
return localize(8693, "Disabled");
|
|
432
|
-
}
|
|
433
|
-
const enabled = activeLanguageId ? isCompletionsEnabled(this.configurationService, activeLanguageId) : isCompletionsEnabled(this.configurationService);
|
|
434
|
-
return enabled ? ( localize(8694, "Enabled")) : ( localize(8693, "Disabled"));
|
|
435
|
-
};
|
|
436
|
-
let disclosureHeader;
|
|
437
|
-
let chevron;
|
|
438
|
-
let statusEl;
|
|
439
|
-
if (!nonCollapsible) {
|
|
440
|
-
disclosureHeader = this.element.appendChild($("button.collapsible-header"));
|
|
441
|
-
if (!hasContentAbove) {
|
|
442
|
-
disclosureHeader.classList.add("no-border");
|
|
443
|
-
}
|
|
444
|
-
disclosureHeader.setAttribute("aria-expanded", String(!collapsed));
|
|
445
|
-
disclosureHeader.appendChild($("span.collapsible-label", undefined, ( localize(8695, "Inline Suggestions"))));
|
|
446
|
-
chevron = disclosureHeader.appendChild($("span.collapsible-chevron"));
|
|
447
|
-
chevron.classList.add(
|
|
448
|
-
...ThemeIcon.asClassNameArray(collapsed ? Codicon.chevronRightCompact : Codicon.chevronDownCompact)
|
|
449
|
-
);
|
|
450
|
-
statusEl = disclosureHeader.appendChild($("span.collapsible-status", undefined, getStatusText()));
|
|
451
|
-
}
|
|
452
|
-
const collapsibleContent = this.element.appendChild($("div.collapsible-content"));
|
|
453
|
-
const collapsibleInner = collapsibleContent.appendChild($("div.collapsible-inner"));
|
|
454
|
-
if (collapsed) {
|
|
455
|
-
collapsibleContent.classList.add("collapsed");
|
|
456
|
-
collapsibleInner.inert = true;
|
|
457
|
-
}
|
|
458
|
-
if (disclosureHeader && chevron) {
|
|
459
|
-
const toggle = () => {
|
|
460
|
-
const isCollapsed = collapsibleContent.classList.toggle("collapsed");
|
|
461
|
-
collapsibleInner.inert = isCollapsed;
|
|
462
|
-
disclosureHeader.setAttribute("aria-expanded", String(!isCollapsed));
|
|
463
|
-
chevron.className = "collapsible-chevron";
|
|
464
|
-
chevron.classList.add(
|
|
465
|
-
...ThemeIcon.asClassNameArray(isCollapsed ? Codicon.chevronRightCompact : Codicon.chevronDownCompact)
|
|
466
|
-
);
|
|
467
|
-
this.storageService.store(
|
|
468
|
-
ChatStatusDashboard_1.QUICK_SETTINGS_COLLAPSED_KEY,
|
|
469
|
-
isCollapsed,
|
|
470
|
-
StorageScope.PROFILE,
|
|
471
|
-
StorageTarget.USER
|
|
472
|
-
);
|
|
473
|
-
};
|
|
474
|
-
this._store.add(addDisposableListener(disclosureHeader, EventType.CLICK, () => toggle()));
|
|
475
|
-
}
|
|
476
|
-
if (statusEl) {
|
|
477
|
-
this._store.add(this.configurationService.onDidChangeConfiguration(e => {
|
|
478
|
-
if (e.affectsConfiguration(defaultChat.completionsEnablementSetting)) {
|
|
479
|
-
statusEl.textContent = getStatusText();
|
|
480
|
-
}
|
|
481
|
-
}));
|
|
482
|
-
}
|
|
483
|
-
this.renderInlineSuggestionsContent(collapsibleInner);
|
|
484
|
-
}
|
|
485
|
-
renderContributedSections(contributedEntries) {
|
|
486
|
-
for (const item of contributedEntries) {
|
|
487
|
-
const headerLabel = typeof item.label === "string" ? item.label : item.label.label;
|
|
488
|
-
let headerLink = typeof item.label === "string" ? undefined : item.label.link;
|
|
489
|
-
let linkDescription = typeof item.label === "string" ? undefined : item.label.helpText;
|
|
490
|
-
const section = this.element.appendChild($("div.contributed-section"));
|
|
491
|
-
const header = section.appendChild($("div.collapsible-header.non-collapsible"));
|
|
492
|
-
header.appendChild($("span.collapsible-label", undefined, headerLabel));
|
|
493
|
-
if (linkDescription || headerLink) {
|
|
494
|
-
const infoIcon = header.appendChild($("span.contributed-info-icon"));
|
|
495
|
-
infoIcon.classList.add(...ThemeIcon.asClassNameArray(Codicon.info));
|
|
496
|
-
this._store.add(this.hoverService.setupDelayedHover(infoIcon, () => {
|
|
497
|
-
const hoverContent = ( new MarkdownString("", {
|
|
498
|
-
isTrusted: true
|
|
499
|
-
}));
|
|
500
|
-
if (linkDescription) {
|
|
501
|
-
hoverContent.appendText(linkDescription);
|
|
502
|
-
}
|
|
503
|
-
if (headerLink) {
|
|
504
|
-
if (linkDescription) {
|
|
505
|
-
hoverContent.appendText(" ");
|
|
506
|
-
}
|
|
507
|
-
hoverContent.appendMarkdown(`[${( localize(8696, "Learn More"))}](${headerLink})`);
|
|
508
|
-
}
|
|
509
|
-
return {
|
|
510
|
-
content: hoverContent
|
|
511
|
-
};
|
|
512
|
-
}, {
|
|
513
|
-
reducedDelay: true
|
|
514
|
-
}));
|
|
515
|
-
}
|
|
516
|
-
const statusEl = header.appendChild($("span.collapsible-status"));
|
|
517
|
-
const statusDisposables = this._store.add(( new MutableDisposable()));
|
|
518
|
-
const renderStatus = text => {
|
|
519
|
-
const newStore = ( new DisposableStore());
|
|
520
|
-
statusDisposables.value = newStore;
|
|
521
|
-
this.renderTextPlus(statusEl, text, newStore);
|
|
522
|
-
};
|
|
523
|
-
renderStatus(item.description);
|
|
524
|
-
let currentTooltip = item.tooltip;
|
|
525
|
-
if (currentTooltip) {
|
|
526
|
-
this._store.add(this.hoverService.setupDelayedHover(statusEl, () => ({
|
|
527
|
-
content: currentTooltip ?? ""
|
|
528
|
-
}), {
|
|
529
|
-
reducedDelay: true
|
|
530
|
-
}));
|
|
531
|
-
}
|
|
532
|
-
const sectionDisposables = this._store.add(( new MutableDisposable()));
|
|
533
|
-
const sectionStore = ( new DisposableStore());
|
|
534
|
-
sectionDisposables.value = sectionStore;
|
|
535
|
-
let detailEl;
|
|
536
|
-
if (item.detail) {
|
|
537
|
-
detailEl = section.appendChild($("div.contributed-detail"));
|
|
538
|
-
this.renderTextPlus(detailEl, item.detail, sectionStore);
|
|
539
|
-
}
|
|
540
|
-
this._store.add(this.chatStatusItemService.onDidChange(e => {
|
|
541
|
-
if (e.entry.id === item.id) {
|
|
542
|
-
statusEl.textContent = "";
|
|
543
|
-
renderStatus(e.entry.description);
|
|
544
|
-
currentTooltip = e.entry.tooltip;
|
|
545
|
-
headerLink = typeof e.entry.label === "string" ? undefined : e.entry.label.link;
|
|
546
|
-
linkDescription = typeof e.entry.label === "string" ? undefined : e.entry.label.helpText;
|
|
547
|
-
const newStore = ( new DisposableStore());
|
|
548
|
-
sectionDisposables.value = newStore;
|
|
549
|
-
if (detailEl) {
|
|
550
|
-
if (e.entry.detail) {
|
|
551
|
-
detailEl.textContent = "";
|
|
552
|
-
this.renderTextPlus(detailEl, e.entry.detail, newStore);
|
|
553
|
-
} else {
|
|
554
|
-
detailEl.remove();
|
|
555
|
-
detailEl = undefined;
|
|
556
|
-
}
|
|
557
|
-
} else if (e.entry.detail) {
|
|
558
|
-
detailEl = section.appendChild($("div.contributed-detail"));
|
|
559
|
-
this.renderTextPlus(detailEl, e.entry.detail, newStore);
|
|
560
|
-
}
|
|
561
|
-
}
|
|
562
|
-
}));
|
|
563
|
-
}
|
|
564
|
-
}
|
|
565
|
-
renderSetupSection() {
|
|
566
|
-
const hasByokModels = this.chatEntitlementService.hasByokModels;
|
|
567
|
-
const newUser = isNewUser(this.chatEntitlementService) && !hasByokModels;
|
|
568
|
-
const anonymousUser = this.chatEntitlementService.anonymous;
|
|
569
|
-
const disabled = this.chatEntitlementService.sentiment.disabled || this.chatEntitlementService.sentiment.untrusted;
|
|
570
|
-
const signedOut = this.chatEntitlementService.entitlement === ChatEntitlement.Unknown;
|
|
571
|
-
if (!(newUser || signedOut || disabled)) {
|
|
572
|
-
return;
|
|
573
|
-
}
|
|
574
|
-
this.element.appendChild($("hr"));
|
|
575
|
-
let descriptionText;
|
|
576
|
-
let descriptionClass = ".description";
|
|
577
|
-
if (newUser && anonymousUser) {
|
|
578
|
-
descriptionText = ( new MarkdownString(( localize(
|
|
579
|
-
8697,
|
|
580
|
-
"By continuing with {0} Copilot, you agree to {1}'s [Terms]({2}) and [Privacy Statement]({3})",
|
|
581
|
-
defaultChat.provider.default.name,
|
|
582
|
-
defaultChat.provider.default.name,
|
|
583
|
-
defaultChat.termsStatementUrl,
|
|
584
|
-
defaultChat.privacyStatementUrl
|
|
585
|
-
)), {
|
|
586
|
-
isTrusted: true
|
|
587
|
-
}));
|
|
588
|
-
descriptionClass = `${descriptionClass}.terms`;
|
|
589
|
-
} else if (newUser) {
|
|
590
|
-
descriptionText = ( localize(8698, "Set up Copilot to use AI features."));
|
|
591
|
-
} else if (anonymousUser) {
|
|
592
|
-
descriptionText = ( localize(8699, "Sign in to enable more Copilot AI features."));
|
|
593
|
-
} else if (disabled) {
|
|
594
|
-
descriptionText = ( localize(8700, "Enable Copilot to use AI features."));
|
|
595
|
-
} else {
|
|
596
|
-
descriptionText = ( localize(8701, "Sign in to use GitHub Copilot AI features."));
|
|
597
|
-
}
|
|
598
|
-
let buttonLabel;
|
|
599
|
-
if (newUser) {
|
|
600
|
-
buttonLabel = ( localize(8702, "Use AI Features"));
|
|
601
|
-
} else if (anonymousUser) {
|
|
602
|
-
buttonLabel = ( localize(8703, "Enable more AI Features"));
|
|
603
|
-
} else if (disabled) {
|
|
604
|
-
buttonLabel = ( localize(8704, "Enable AI Features"));
|
|
605
|
-
} else {
|
|
606
|
-
buttonLabel = ( localize(8705, "Sign in to use GitHub Copilot"));
|
|
607
|
-
}
|
|
608
|
-
let commandId;
|
|
609
|
-
if (newUser && anonymousUser) {
|
|
610
|
-
commandId = "workbench.action.chat.triggerSetupAnonymousWithoutDialog";
|
|
611
|
-
} else {
|
|
612
|
-
commandId = "workbench.action.chat.triggerSetup";
|
|
613
|
-
}
|
|
614
|
-
if (typeof descriptionText === "string") {
|
|
615
|
-
this.element.appendChild($(`div${descriptionClass}`, undefined, descriptionText));
|
|
616
|
-
} else {
|
|
617
|
-
this.element.appendChild($(
|
|
618
|
-
`div${descriptionClass}`,
|
|
619
|
-
undefined,
|
|
620
|
-
this._store.add(this.markdownRendererService.render(descriptionText)).element
|
|
621
|
-
));
|
|
622
|
-
}
|
|
623
|
-
const button = this._store.add(( new Button(this.element, {
|
|
624
|
-
...defaultButtonStyles,
|
|
625
|
-
hoverDelegate: nativeHoverDelegate
|
|
626
|
-
})));
|
|
627
|
-
button.label = buttonLabel;
|
|
628
|
-
this._store.add(button.onDidClick(() => this.runCommandAndClose(commandId)));
|
|
629
|
-
}
|
|
630
|
-
renderInlineSuggestionsContent(container) {
|
|
631
|
-
if (!this.options?.disableInlineSuggestionsSettings) {
|
|
632
|
-
this.createSettings(container);
|
|
633
|
-
}
|
|
634
|
-
const providers = (!this.options?.disableModelSelection || !this.options?.disableProviderOptions) ? this.languageFeaturesService.inlineCompletionsProvider.allNoModel() : undefined;
|
|
635
|
-
if (!this.options?.disableModelSelection && providers) {
|
|
636
|
-
const provider = providers.find(p => p.modelInfo && p.modelInfo.models.length > 0);
|
|
637
|
-
if (provider) {
|
|
638
|
-
const modelInfo = provider.modelInfo;
|
|
639
|
-
const currentModel = modelInfo.models.find(m => m.id === modelInfo.currentModelId);
|
|
640
|
-
if (currentModel) {
|
|
641
|
-
const modelContainer = container.appendChild($("div.model-selection"));
|
|
642
|
-
modelContainer.appendChild($("span.model-text", undefined, ( localize(8706, "Model"))));
|
|
643
|
-
const selectOptions = ( modelInfo.models.map(m => ({
|
|
644
|
-
text: m.name
|
|
645
|
-
})));
|
|
646
|
-
const selectedIndex = modelInfo.models.findIndex(m => m.id === modelInfo.currentModelId);
|
|
647
|
-
const selectBox = this._store.add(( new SelectBox(
|
|
648
|
-
selectOptions,
|
|
649
|
-
Math.max(0, selectedIndex),
|
|
650
|
-
this.contextViewService,
|
|
651
|
-
defaultSelectBoxStyles,
|
|
652
|
-
{
|
|
653
|
-
ariaLabel: ( localize(8707, "Select Model")),
|
|
654
|
-
optionsAsChildren: true
|
|
655
|
-
}
|
|
656
|
-
)));
|
|
657
|
-
const selectContainer = modelContainer.appendChild($("div.model-select-container"));
|
|
658
|
-
selectBox.render(selectContainer);
|
|
659
|
-
this._store.add(selectBox.onDidSelect(async e => {
|
|
660
|
-
const selectedModel = modelInfo.models[e.index];
|
|
661
|
-
if (selectedModel && selectedModel.id !== modelInfo.currentModelId && provider.setModelId) {
|
|
662
|
-
await provider.setModelId(selectedModel.id);
|
|
663
|
-
}
|
|
664
|
-
}));
|
|
665
|
-
}
|
|
666
|
-
}
|
|
667
|
-
}
|
|
668
|
-
if (!this.options?.disableProviderOptions && providers) {
|
|
669
|
-
for (const provider of providers) {
|
|
670
|
-
if (provider.providerOptions && provider.providerOptions.length > 0) {
|
|
671
|
-
for (const option of provider.providerOptions) {
|
|
672
|
-
const currentValue = option.values.find(v => v.id === option.currentValueId);
|
|
673
|
-
if (currentValue) {
|
|
674
|
-
const optionContainer = container.appendChild($("div.suggest-option-selection"));
|
|
675
|
-
optionContainer.appendChild($("span.suggest-option-text", undefined, option.label));
|
|
676
|
-
const selectOptions = ( option.values.map(v => ({
|
|
677
|
-
text: v.label
|
|
678
|
-
})));
|
|
679
|
-
const selectedIndex = option.values.findIndex(v => v.id === option.currentValueId);
|
|
680
|
-
const selectBox = this._store.add(( new SelectBox(
|
|
681
|
-
selectOptions,
|
|
682
|
-
Math.max(0, selectedIndex),
|
|
683
|
-
this.contextViewService,
|
|
684
|
-
defaultSelectBoxStyles,
|
|
685
|
-
{
|
|
686
|
-
ariaLabel: ( localize(8708, "Select {0}", option.label)),
|
|
687
|
-
optionsAsChildren: true
|
|
688
|
-
}
|
|
689
|
-
)));
|
|
690
|
-
const selectContainer = optionContainer.appendChild($("div.suggest-option-select-container"));
|
|
691
|
-
selectBox.render(selectContainer);
|
|
692
|
-
this._store.add(selectBox.onDidSelect(async e => {
|
|
693
|
-
const selectedValue = option.values[e.index];
|
|
694
|
-
if (selectedValue && selectedValue.id !== option.currentValueId && provider.setProviderOption) {
|
|
695
|
-
await provider.setProviderOption(option.id, selectedValue.id);
|
|
696
|
-
}
|
|
697
|
-
}));
|
|
698
|
-
}
|
|
699
|
-
}
|
|
700
|
-
}
|
|
701
|
-
}
|
|
702
|
-
}
|
|
703
|
-
if (!this.options?.disableCompletionsSnooze && this.canUseChat()) {
|
|
704
|
-
const snooze = append(container, $("div.snooze-completions"));
|
|
705
|
-
this.createCompletionsSnooze(snooze, ( localize(8709, "Snooze")));
|
|
706
|
-
}
|
|
707
|
-
}
|
|
708
|
-
canUseChat() {
|
|
709
|
-
if (!this.chatEntitlementService.sentiment.completed || this.chatEntitlementService.sentiment.disabled || this.chatEntitlementService.sentiment.untrusted) {
|
|
710
|
-
return false;
|
|
711
|
-
}
|
|
712
|
-
if (this.chatEntitlementService.entitlement === ChatEntitlement.Unknown || this.chatEntitlementService.entitlement === ChatEntitlement.Available) {
|
|
713
|
-
return this.chatEntitlementService.anonymous;
|
|
714
|
-
}
|
|
715
|
-
if (this.chatEntitlementService.entitlement === ChatEntitlement.Free && this.chatEntitlementService.quotas.chat?.percentRemaining === 0 && this.chatEntitlementService.quotas.completions?.percentRemaining === 0) {
|
|
716
|
-
return false;
|
|
717
|
-
}
|
|
718
|
-
return true;
|
|
719
|
-
}
|
|
720
|
-
renderHeader(container, disposables, label, action) {
|
|
721
|
-
const header = container.appendChild($("div.header"));
|
|
722
|
-
header.appendChild($("span.header-label", undefined, label));
|
|
723
|
-
if (action) {
|
|
724
|
-
const toolbar = disposables.add(( new ActionBar(header, {
|
|
725
|
-
hoverDelegate: nativeHoverDelegate
|
|
726
|
-
})));
|
|
727
|
-
toolbar.push([action], {
|
|
728
|
-
icon: true,
|
|
729
|
-
label: false
|
|
730
|
-
});
|
|
731
|
-
}
|
|
732
|
-
return header;
|
|
733
|
-
}
|
|
734
|
-
renderTextPlus(target, text, store) {
|
|
735
|
-
for (const node of parseLinkedText(text).nodes) {
|
|
736
|
-
if (typeof node === "string") {
|
|
737
|
-
const parts = renderLabelWithIcons(node);
|
|
738
|
-
target.append(...parts);
|
|
739
|
-
} else {
|
|
740
|
-
store.add(( new Link(target, node, undefined, this.hoverService, this.openerService)));
|
|
741
|
-
}
|
|
742
|
-
}
|
|
743
|
-
}
|
|
744
|
-
runCommandAndClose(commandOrFn, ...args) {
|
|
745
|
-
if (typeof commandOrFn === "function") {
|
|
746
|
-
commandOrFn(...args);
|
|
747
|
-
} else {
|
|
748
|
-
this.telemetryService.publicLog2("workbenchActionExecuted", {
|
|
749
|
-
id: commandOrFn,
|
|
750
|
-
from: "chat-status"
|
|
751
|
-
});
|
|
752
|
-
this.commandService.executeCommand(commandOrFn, ...args);
|
|
753
|
-
}
|
|
754
|
-
this.hoverService.hideHover(true);
|
|
755
|
-
}
|
|
756
|
-
formatQuotaResetLabel(quota) {
|
|
757
|
-
const reset = getQuotaReset(quota, this.chatEntitlementService.quotas);
|
|
758
|
-
if (!reset) {
|
|
759
|
-
return undefined;
|
|
760
|
-
}
|
|
761
|
-
return reset.hasTime ? ( localize(
|
|
762
|
-
8710,
|
|
763
|
-
"Resets {0} at {1}",
|
|
764
|
-
this.dateFormatter.value.format(reset.date),
|
|
765
|
-
this.timeFormatter.value.format(reset.date)
|
|
766
|
-
)) : ( localize(8711, "Resets {0}", this.dateFormatter.value.format(reset.date)));
|
|
767
|
-
}
|
|
768
|
-
createCreditsUsedIndicator(container, creditsUsed, resetLabel) {
|
|
769
|
-
const isCompact = !!this.options?.compactQuotaLayout;
|
|
770
|
-
const resetValue = $("span.quota-reset");
|
|
771
|
-
if (resetLabel) {
|
|
772
|
-
resetValue.textContent = resetLabel;
|
|
773
|
-
}
|
|
774
|
-
const quotaPercentage = $("div.quota-percentage", undefined, $(
|
|
775
|
-
"span.quota-value",
|
|
776
|
-
undefined,
|
|
777
|
-
this.quotaCreditsFormatter.value.format(creditsUsed)
|
|
778
|
-
), $("span.quota-value-suffix", undefined, isCompact ? ( localize(8712, "{0} used", localize(8686, "Credits"))) : ( localize(8713, "Credits Used"))));
|
|
779
|
-
const indicatorElement = $(
|
|
780
|
-
"div.quota-indicator.included.credits-used",
|
|
781
|
-
undefined,
|
|
782
|
-
...(isCompact ? [$(
|
|
783
|
-
"div.quota-title",
|
|
784
|
-
undefined,
|
|
785
|
-
getChatPlanName(this.chatEntitlementService.entitlement)
|
|
786
|
-
)] : []),
|
|
787
|
-
$("div.quota-details", undefined, quotaPercentage, resetValue)
|
|
788
|
-
);
|
|
789
|
-
if (isCompact) {
|
|
790
|
-
indicatorElement.classList.add("compact");
|
|
791
|
-
}
|
|
792
|
-
container.appendChild(indicatorElement);
|
|
793
|
-
}
|
|
794
|
-
createQuotaIndicator(container, quota, label, resetLabel, compactTitle) {
|
|
795
|
-
const isCompact = !!compactTitle;
|
|
796
|
-
const quotaValue = $("span.quota-value");
|
|
797
|
-
const quotaValueText = isCompact ? quotaValue.appendChild($("span.quota-value-text")) : quotaValue;
|
|
798
|
-
const quotaValueSuffix = $("span.quota-value-suffix");
|
|
799
|
-
const quotaBit = $("div.quota-bit");
|
|
800
|
-
const resetValue = $("span.quota-reset");
|
|
801
|
-
if (resetLabel) {
|
|
802
|
-
resetValue.textContent = resetLabel;
|
|
803
|
-
}
|
|
804
|
-
const quotaPercentage = $("div.quota-percentage", undefined, quotaValue, quotaValueSuffix);
|
|
805
|
-
quotaPercentage.tabIndex = isCompact ? -1 : 0;
|
|
806
|
-
const indicatorElement = $("div.quota-indicator", undefined, $(
|
|
807
|
-
"div.quota-title",
|
|
808
|
-
undefined,
|
|
809
|
-
$("span", undefined, isCompact ? compactTitle : label),
|
|
810
|
-
...(isCompact ? [] : [resetValue])
|
|
811
|
-
), $(
|
|
812
|
-
"div.quota-details",
|
|
813
|
-
undefined,
|
|
814
|
-
quotaPercentage,
|
|
815
|
-
...(isCompact ? [resetValue] : [])
|
|
816
|
-
), ...(isCompact ? [] : [$("div.quota-bar", undefined, quotaBit)]));
|
|
817
|
-
if (isCompact) {
|
|
818
|
-
indicatorElement.classList.add("compact");
|
|
819
|
-
}
|
|
820
|
-
container.appendChild(indicatorElement);
|
|
821
|
-
let currentQuota = quota;
|
|
822
|
-
let isHovered = false;
|
|
823
|
-
const showPercentage = () => {
|
|
824
|
-
if (typeof currentQuota === "string") {
|
|
825
|
-
quotaValueText.textContent = currentQuota;
|
|
826
|
-
quotaValueSuffix.textContent = "";
|
|
827
|
-
} else {
|
|
828
|
-
const usedPercentage = Math.max(0, 100 - currentQuota.percentRemaining);
|
|
829
|
-
quotaValueText.textContent = ( localize(
|
|
830
|
-
8714,
|
|
831
|
-
"{0}%",
|
|
832
|
-
this.quotaPercentageFormatter.value.format(Math.floor(usedPercentage))
|
|
833
|
-
));
|
|
834
|
-
quotaValueSuffix.textContent = isCompact ? ( localize(8712, "{0} used", label)) : ` ${( localize(8715, "used"))}`;
|
|
835
|
-
}
|
|
836
|
-
};
|
|
837
|
-
const showCredits = () => {
|
|
838
|
-
if (typeof currentQuota === "string") {
|
|
839
|
-
return;
|
|
840
|
-
}
|
|
841
|
-
const usage = getQuotaUsage(currentQuota);
|
|
842
|
-
if (usage?.kind !== QuotaUsageKind.Percentage || usage.used === undefined || usage.total === undefined) {
|
|
843
|
-
return;
|
|
844
|
-
}
|
|
845
|
-
const usedFormatted = this.quotaCreditsFormatter.value.format(usage.used);
|
|
846
|
-
const totalFormatted = this.quotaCreditsFormatter.value.format(usage.total);
|
|
847
|
-
quotaValueText.textContent = ( localize(8716, "{0} / {1}", usedFormatted, totalFormatted));
|
|
848
|
-
quotaValueSuffix.textContent = isCompact ? ( localize(8712, "{0} used", label)) : ` ${( localize(8715, "used"))}`;
|
|
849
|
-
};
|
|
850
|
-
const hoverTarget = isCompact ? quotaValueText : quotaPercentage;
|
|
851
|
-
this._store.add(addDisposableListener(hoverTarget, EventType.MOUSE_ENTER, () => {
|
|
852
|
-
isHovered = true;
|
|
853
|
-
showCredits();
|
|
854
|
-
}));
|
|
855
|
-
this._store.add(addDisposableListener(hoverTarget, EventType.MOUSE_LEAVE, () => {
|
|
856
|
-
isHovered = false;
|
|
857
|
-
showPercentage();
|
|
858
|
-
}));
|
|
859
|
-
this._store.add(addDisposableListener(hoverTarget, EventType.FOCUS, () => {
|
|
860
|
-
isHovered = true;
|
|
861
|
-
showCredits();
|
|
862
|
-
}));
|
|
863
|
-
this._store.add(addDisposableListener(hoverTarget, EventType.BLUR, () => {
|
|
864
|
-
isHovered = false;
|
|
865
|
-
showPercentage();
|
|
866
|
-
}));
|
|
867
|
-
const update = quota => {
|
|
868
|
-
currentQuota = quota;
|
|
869
|
-
let usedPercentage;
|
|
870
|
-
if (typeof quota === "string") {
|
|
871
|
-
usedPercentage = 0;
|
|
872
|
-
} else {
|
|
873
|
-
usedPercentage = Math.max(0, 100 - quota.percentRemaining);
|
|
874
|
-
}
|
|
875
|
-
if (isHovered) {
|
|
876
|
-
showCredits();
|
|
877
|
-
} else {
|
|
878
|
-
showPercentage();
|
|
879
|
-
}
|
|
880
|
-
quotaBit.style.width = `${usedPercentage}%`;
|
|
881
|
-
};
|
|
882
|
-
update(quota);
|
|
883
|
-
return update;
|
|
884
|
-
}
|
|
885
|
-
createGlobalQuotaCallout(container) {
|
|
886
|
-
const calloutIcon = $("span.callout-icon");
|
|
887
|
-
const calloutText = $("span.callout-text");
|
|
888
|
-
const quotaCallout = container.appendChild($("div.quota-callout", undefined, calloutIcon, calloutText));
|
|
889
|
-
quotaCallout.style.display = "none";
|
|
890
|
-
const update = () => {
|
|
891
|
-
const quotas = this.chatEntitlementService.quotas;
|
|
892
|
-
const additionalUsageEnabled = quotas.additionalUsageEnabled ?? false;
|
|
893
|
-
const isEnterpriseUser = this.chatEntitlementService.entitlement === ChatEntitlement.Enterprise || this.chatEntitlementService.entitlement === ChatEntitlement.Business;
|
|
894
|
-
const isUsageBasedBilling = quotas.usageBasedBilling === true;
|
|
895
|
-
const allQuotas = [];
|
|
896
|
-
if (quotas.chat && !quotas.chat.unlimited) {
|
|
897
|
-
allQuotas.push(quotas.chat);
|
|
898
|
-
}
|
|
899
|
-
if (quotas.premiumChat && !quotas.premiumChat.unlimited) {
|
|
900
|
-
allQuotas.push(quotas.premiumChat);
|
|
901
|
-
}
|
|
902
|
-
const maxUsedPercentage = allQuotas.length > 0 ? Math.max(...( allQuotas.map(q => Math.max(0, 100 - q.percentRemaining)))) : 0;
|
|
903
|
-
const isPooledQuotaExhausted = quotas.premiumChat?.unlimited && quotas.premiumChat.hasQuota === false;
|
|
904
|
-
if (isEnterpriseUser && isPooledQuotaExhausted) {
|
|
905
|
-
quotaCallout.style.display = "";
|
|
906
|
-
quotaCallout.className = "quota-callout info";
|
|
907
|
-
calloutIcon.className = `callout-icon ${ThemeIcon.asClassName(Codicon.info)}`;
|
|
908
|
-
calloutText.textContent = ( localize(
|
|
909
|
-
8717,
|
|
910
|
-
"Your organization or enterprise has exceeded its Copilot budget. Contact your admin to resume usage."
|
|
911
|
-
));
|
|
912
|
-
} else if (maxUsedPercentage >= 100 && additionalUsageEnabled) {
|
|
913
|
-
quotaCallout.style.display = "";
|
|
914
|
-
quotaCallout.className = "quota-callout info";
|
|
915
|
-
calloutIcon.className = `callout-icon ${ThemeIcon.asClassName(Codicon.info)}`;
|
|
916
|
-
calloutText.textContent = isEnterpriseUser ? ( localize(
|
|
917
|
-
8718,
|
|
918
|
-
"Copilot has paused because your limits are reached. Please contact your admin to increase your limits."
|
|
919
|
-
)) : isUsageBasedBilling ? ( localize(
|
|
920
|
-
8719,
|
|
921
|
-
"Additional budget is configured. Usage will continue until limits reset."
|
|
922
|
-
)) : ( localize(
|
|
923
|
-
8720,
|
|
924
|
-
"Premium request budget is configured. Usage will continue until limits reset."
|
|
925
|
-
));
|
|
926
|
-
} else if (maxUsedPercentage >= 75 && maxUsedPercentage < 100 && additionalUsageEnabled) {
|
|
927
|
-
quotaCallout.style.display = "";
|
|
928
|
-
quotaCallout.className = "quota-callout info";
|
|
929
|
-
calloutIcon.className = `callout-icon ${ThemeIcon.asClassName(Codicon.info)}`;
|
|
930
|
-
calloutText.textContent = isEnterpriseUser ? ( localize(
|
|
931
|
-
8721,
|
|
932
|
-
"Copilot will pause when your limits are reached. Please contact your admin to increase your limits."
|
|
933
|
-
)) : isUsageBasedBilling ? ( localize(8722, "Once the limit is reached, additional budget will be used.")) : ( localize(8723, "Once the limit is reached, premium request budget will be used."));
|
|
934
|
-
} else if ((maxUsedPercentage >= 100 || isPooledQuotaExhausted) && !additionalUsageEnabled) {
|
|
935
|
-
quotaCallout.style.display = "";
|
|
936
|
-
quotaCallout.className = "quota-callout info";
|
|
937
|
-
calloutIcon.className = `callout-icon ${ThemeIcon.asClassName(Codicon.info)}`;
|
|
938
|
-
calloutText.textContent = isEnterpriseUser ? ( localize(
|
|
939
|
-
8724,
|
|
940
|
-
"Copilot is paused until the limit resets. Contact your administrator for more information."
|
|
941
|
-
)) : ( localize(8725, "Copilot is paused until the limit resets."));
|
|
942
|
-
} else if (maxUsedPercentage >= 75 && !additionalUsageEnabled) {
|
|
943
|
-
quotaCallout.style.display = "";
|
|
944
|
-
quotaCallout.className = "quota-callout info";
|
|
945
|
-
calloutIcon.className = `callout-icon ${ThemeIcon.asClassName(Codicon.info)}`;
|
|
946
|
-
calloutText.textContent = isEnterpriseUser ? ( localize(
|
|
947
|
-
8726,
|
|
948
|
-
"Copilot will pause when the limit is reached. Contact your administrator for more information."
|
|
949
|
-
)) : ( localize(8727, "Copilot will pause when the limit is reached."));
|
|
950
|
-
} else {
|
|
951
|
-
quotaCallout.style.display = "none";
|
|
952
|
-
}
|
|
953
|
-
return {
|
|
954
|
-
calloutVisible: quotaCallout.style.display !== "none",
|
|
955
|
-
additionalUsageEnabled
|
|
956
|
-
};
|
|
957
|
-
};
|
|
958
|
-
update();
|
|
959
|
-
return update;
|
|
960
|
-
}
|
|
961
|
-
createSettings(container) {
|
|
962
|
-
const modeId = this.editorService.activeTextEditorLanguageId;
|
|
963
|
-
const settings = container.appendChild($("div.settings"));
|
|
964
|
-
{
|
|
965
|
-
const globalSetting = append(settings, $("div.setting"));
|
|
966
|
-
this.createInlineSuggestionsSetting(globalSetting, ( localize(8728, "Ghost text suggestions")), "*");
|
|
967
|
-
const overriddenHint = globalSetting.appendChild($("span.setting-overridden"));
|
|
968
|
-
const updateOverriddenHint = () => {
|
|
969
|
-
const obj = this.configurationService.getValue(defaultChat.completionsEnablementSetting);
|
|
970
|
-
const configuredValue = modeId ? this.findConfiguredCompletionsValue(modeId) : undefined;
|
|
971
|
-
const hasOverride = modeId && configuredValue && isObject(obj) && Boolean(configuredValue.value[modeId]) !== Boolean(obj["*"]);
|
|
972
|
-
overriddenHint.textContent = hasOverride ? ( localize(8729, "(overridden)")) : "";
|
|
973
|
-
};
|
|
974
|
-
updateOverriddenHint();
|
|
975
|
-
if (modeId) {
|
|
976
|
-
const languageSetting = append(settings, $("div.setting"));
|
|
977
|
-
const languageName = this.languageService.getLanguageName(modeId) ?? modeId;
|
|
978
|
-
this.createTriStateLanguageSetting(languageSetting, ( localize(8730, "Ghost text suggestions for {0}", languageName)), modeId, updateOverriddenHint);
|
|
979
|
-
}
|
|
980
|
-
}
|
|
981
|
-
{
|
|
982
|
-
const setting = append(settings, $("div.setting"));
|
|
983
|
-
this.createNextEditSuggestionsSetting(setting, ( localize(8731, "Next edit suggestions")), this.getCompletionsSettingAccessor(modeId));
|
|
984
|
-
}
|
|
985
|
-
}
|
|
986
|
-
createSetting(container, settingIdsToReEvaluate, label, accessor) {
|
|
987
|
-
const checkbox = this._store.add(( new Checkbox(label, Boolean(accessor.readSetting()), {
|
|
988
|
-
...defaultCheckboxStyles
|
|
989
|
-
})));
|
|
990
|
-
container.appendChild(checkbox.domNode);
|
|
991
|
-
const settingLabel = append(container, $("span.setting-label", undefined, label));
|
|
992
|
-
this._store.add(Gesture.addTarget(settingLabel));
|
|
993
|
-
[EventType.CLICK, EventType$1.Tap].forEach(eventType => {
|
|
994
|
-
this._store.add(addDisposableListener(settingLabel, eventType, e => {
|
|
995
|
-
if (checkbox?.enabled) {
|
|
996
|
-
EventHelper.stop(e, true);
|
|
997
|
-
checkbox.checked = !checkbox.checked;
|
|
998
|
-
accessor.writeSetting(checkbox.checked);
|
|
999
|
-
checkbox.focus();
|
|
1000
|
-
}
|
|
1001
|
-
}));
|
|
1002
|
-
});
|
|
1003
|
-
this._store.add(checkbox.onChange(() => {
|
|
1004
|
-
accessor.writeSetting(checkbox.checked);
|
|
1005
|
-
}));
|
|
1006
|
-
this._store.add(this.configurationService.onDidChangeConfiguration(e => {
|
|
1007
|
-
if (( settingIdsToReEvaluate.some(id => e.affectsConfiguration(id)))) {
|
|
1008
|
-
checkbox.checked = Boolean(accessor.readSetting());
|
|
1009
|
-
}
|
|
1010
|
-
}));
|
|
1011
|
-
if (!this.canUseChat()) {
|
|
1012
|
-
container.classList.add("disabled");
|
|
1013
|
-
checkbox.disable();
|
|
1014
|
-
checkbox.checked = false;
|
|
1015
|
-
}
|
|
1016
|
-
return checkbox;
|
|
1017
|
-
}
|
|
1018
|
-
createInlineSuggestionsSetting(container, label, modeId) {
|
|
1019
|
-
this.createSetting(
|
|
1020
|
-
container,
|
|
1021
|
-
[defaultChat.completionsEnablementSetting],
|
|
1022
|
-
label,
|
|
1023
|
-
this.getCompletionsSettingAccessor(modeId)
|
|
1024
|
-
);
|
|
1025
|
-
}
|
|
1026
|
-
createTriStateLanguageSetting(container, label, modeId, onStateChange) {
|
|
1027
|
-
const settingId = defaultChat.completionsEnablementSetting;
|
|
1028
|
-
const getState = () => {
|
|
1029
|
-
const configuredValue = this.findConfiguredCompletionsValue(modeId);
|
|
1030
|
-
return configuredValue ? Boolean(configuredValue.value[modeId]) : "mixed";
|
|
1031
|
-
};
|
|
1032
|
-
let requestedState = getState();
|
|
1033
|
-
let pendingWrites = 0;
|
|
1034
|
-
const checkbox = this._store.add(( new TriStateCheckbox(label, requestedState, {
|
|
1035
|
-
...defaultCheckboxStyles
|
|
1036
|
-
})));
|
|
1037
|
-
container.appendChild(checkbox.domNode);
|
|
1038
|
-
const settingLabel = append(container, $("span.setting-label", undefined, label));
|
|
1039
|
-
this._store.add(Gesture.addTarget(settingLabel));
|
|
1040
|
-
const writeSequencer = ( new Sequencer());
|
|
1041
|
-
const renderState = state => {
|
|
1042
|
-
requestedState = state;
|
|
1043
|
-
checkbox.checked = state;
|
|
1044
|
-
checkbox.domNode.setAttribute("aria-checked", state === "mixed" ? "mixed" : String(state));
|
|
1045
|
-
};
|
|
1046
|
-
const getNextState = () => requestedState === true ? false : requestedState === false ? "mixed" : true;
|
|
1047
|
-
const writeState = async state => {
|
|
1048
|
-
const configuredValue = this.findConfiguredCompletionsValue(modeId) ?? this.findConfiguredCompletionsValue();
|
|
1049
|
-
if (state === "mixed") {
|
|
1050
|
-
for (const configuredValue of this.findConfiguredCompletionsValues(modeId)) {
|
|
1051
|
-
const {
|
|
1052
|
-
[modeId]: _,
|
|
1053
|
-
...rest
|
|
1054
|
-
} = configuredValue.value;
|
|
1055
|
-
await this.configurationService.updateValue(settingId, rest, configuredValue.target);
|
|
1056
|
-
}
|
|
1057
|
-
} else {
|
|
1058
|
-
const value = {
|
|
1059
|
-
...configuredValue?.value,
|
|
1060
|
-
[modeId]: state
|
|
1061
|
-
};
|
|
1062
|
-
if (configuredValue) {
|
|
1063
|
-
await this.configurationService.updateValue(settingId, value, configuredValue.target);
|
|
1064
|
-
} else {
|
|
1065
|
-
await this.configurationService.updateValue(settingId, value);
|
|
1066
|
-
}
|
|
1067
|
-
}
|
|
1068
|
-
const enabled = isCompletionsEnabled(this.configurationService, modeId);
|
|
1069
|
-
this.telemetryService.publicLog2("chatStatus.settingChanged", {
|
|
1070
|
-
settingIdentifier: settingId,
|
|
1071
|
-
settingMode: modeId,
|
|
1072
|
-
settingEnablement: enabled ? "enabled" : "disabled"
|
|
1073
|
-
});
|
|
1074
|
-
};
|
|
1075
|
-
const requestStateChange = () => {
|
|
1076
|
-
const state = getNextState();
|
|
1077
|
-
renderState(state);
|
|
1078
|
-
pendingWrites++;
|
|
1079
|
-
void writeSequencer.queue(async () => {
|
|
1080
|
-
try {
|
|
1081
|
-
await writeState(state);
|
|
1082
|
-
} finally {
|
|
1083
|
-
pendingWrites--;
|
|
1084
|
-
}
|
|
1085
|
-
}).catch(error => {
|
|
1086
|
-
if (pendingWrites === 0) {
|
|
1087
|
-
renderState(getState());
|
|
1088
|
-
onStateChange();
|
|
1089
|
-
}
|
|
1090
|
-
this.notificationService.error(error);
|
|
1091
|
-
});
|
|
1092
|
-
};
|
|
1093
|
-
renderState(requestedState);
|
|
1094
|
-
[EventType.CLICK, EventType$1.Tap].forEach(eventType => {
|
|
1095
|
-
this._store.add(addDisposableListener(settingLabel, eventType, e => {
|
|
1096
|
-
if (checkbox?.enabled) {
|
|
1097
|
-
EventHelper.stop(e, true);
|
|
1098
|
-
requestStateChange();
|
|
1099
|
-
checkbox.focus();
|
|
1100
|
-
}
|
|
1101
|
-
}));
|
|
1102
|
-
});
|
|
1103
|
-
this._store.add(checkbox.onChange(() => {
|
|
1104
|
-
renderState(requestedState);
|
|
1105
|
-
requestStateChange();
|
|
1106
|
-
}));
|
|
1107
|
-
this._store.add(this.configurationService.onDidChangeConfiguration(e => {
|
|
1108
|
-
if (e.affectsConfiguration(settingId)) {
|
|
1109
|
-
const state = getState();
|
|
1110
|
-
if (pendingWrites === 0 || state === requestedState) {
|
|
1111
|
-
renderState(state);
|
|
1112
|
-
onStateChange();
|
|
1113
|
-
}
|
|
1114
|
-
}
|
|
1115
|
-
}));
|
|
1116
|
-
if (!this.canUseChat()) {
|
|
1117
|
-
container.classList.add("disabled");
|
|
1118
|
-
checkbox.disable();
|
|
1119
|
-
checkbox.checked = false;
|
|
1120
|
-
}
|
|
1121
|
-
}
|
|
1122
|
-
findConfiguredCompletionsValue(modeId) {
|
|
1123
|
-
return this.findConfiguredCompletionsValues(modeId)[0];
|
|
1124
|
-
}
|
|
1125
|
-
findConfiguredCompletionsValues(modeId) {
|
|
1126
|
-
const inspected = this.configurationService.inspect(defaultChat.completionsEnablementSetting);
|
|
1127
|
-
const result = [];
|
|
1128
|
-
for (const target of completionsConfigurationTargets) {
|
|
1129
|
-
const value = getConfigValueInTarget(inspected, target);
|
|
1130
|
-
if (isObject(value) && (!modeId || Object.prototype.hasOwnProperty.call(value, modeId))) {
|
|
1131
|
-
result.push({
|
|
1132
|
-
target,
|
|
1133
|
-
value
|
|
1134
|
-
});
|
|
1135
|
-
}
|
|
1136
|
-
}
|
|
1137
|
-
return result;
|
|
1138
|
-
}
|
|
1139
|
-
getCompletionsSettingAccessor(modeId = "*") {
|
|
1140
|
-
const settingId = defaultChat.completionsEnablementSetting;
|
|
1141
|
-
return {
|
|
1142
|
-
readSetting: () => isCompletionsEnabled(this.configurationService, modeId),
|
|
1143
|
-
writeSetting: value => {
|
|
1144
|
-
this.telemetryService.publicLog2("chatStatus.settingChanged", {
|
|
1145
|
-
settingIdentifier: settingId,
|
|
1146
|
-
settingMode: modeId,
|
|
1147
|
-
settingEnablement: value ? "enabled" : "disabled"
|
|
1148
|
-
});
|
|
1149
|
-
let result = this.configurationService.getValue(settingId);
|
|
1150
|
-
if (!isObject(result)) {
|
|
1151
|
-
result = Object.create(null);
|
|
1152
|
-
}
|
|
1153
|
-
return this.configurationService.updateValue(settingId, {
|
|
1154
|
-
...result,
|
|
1155
|
-
[modeId]: value
|
|
1156
|
-
});
|
|
1157
|
-
}
|
|
1158
|
-
};
|
|
1159
|
-
}
|
|
1160
|
-
createNextEditSuggestionsSetting(container, label, completionsSettingAccessor) {
|
|
1161
|
-
const nesSettingId = defaultChat.nextEditSuggestionsSetting;
|
|
1162
|
-
const completionsSettingId = defaultChat.completionsEnablementSetting;
|
|
1163
|
-
const resource = EditorResourceAccessor.getOriginalUri(this.editorService.activeEditor, {
|
|
1164
|
-
supportSideBySide: SideBySideEditor.PRIMARY
|
|
1165
|
-
});
|
|
1166
|
-
const checkbox = this.createSetting(container, [nesSettingId, completionsSettingId], label, {
|
|
1167
|
-
readSetting: () => completionsSettingAccessor.readSetting() && this.textResourceConfigurationService.getValue(resource, nesSettingId),
|
|
1168
|
-
writeSetting: value => {
|
|
1169
|
-
this.telemetryService.publicLog2("chatStatus.settingChanged", {
|
|
1170
|
-
settingIdentifier: nesSettingId,
|
|
1171
|
-
settingEnablement: value ? "enabled" : "disabled"
|
|
1172
|
-
});
|
|
1173
|
-
return this.textResourceConfigurationService.updateValue(resource, nesSettingId, value);
|
|
1174
|
-
}
|
|
1175
|
-
});
|
|
1176
|
-
if (!completionsSettingAccessor.readSetting()) {
|
|
1177
|
-
container.classList.add("disabled");
|
|
1178
|
-
checkbox.disable();
|
|
1179
|
-
}
|
|
1180
|
-
this._store.add(this.configurationService.onDidChangeConfiguration(e => {
|
|
1181
|
-
if (e.affectsConfiguration(completionsSettingId)) {
|
|
1182
|
-
if (completionsSettingAccessor.readSetting() && this.canUseChat()) {
|
|
1183
|
-
checkbox.enable();
|
|
1184
|
-
container.classList.remove("disabled");
|
|
1185
|
-
} else {
|
|
1186
|
-
checkbox.disable();
|
|
1187
|
-
container.classList.add("disabled");
|
|
1188
|
-
}
|
|
1189
|
-
}
|
|
1190
|
-
}));
|
|
1191
|
-
}
|
|
1192
|
-
createCompletionsSnooze(container, label) {
|
|
1193
|
-
const isEnabled = () => {
|
|
1194
|
-
const completionsEnabled = isCompletionsEnabled(this.configurationService);
|
|
1195
|
-
const completionsEnabledActiveLanguage = isCompletionsEnabled(this.configurationService, this.editorService.activeTextEditorLanguageId);
|
|
1196
|
-
return completionsEnabled || completionsEnabledActiveLanguage;
|
|
1197
|
-
};
|
|
1198
|
-
const button = this._store.add(( new Button(container, {
|
|
1199
|
-
disabled: !isEnabled(),
|
|
1200
|
-
...defaultButtonStyles,
|
|
1201
|
-
hoverDelegate: nativeHoverDelegate,
|
|
1202
|
-
secondary: true
|
|
1203
|
-
})));
|
|
1204
|
-
const timerDisplay = container.appendChild($("span.snooze-label"));
|
|
1205
|
-
const actionBar = container.appendChild($("div.snooze-action-bar"));
|
|
1206
|
-
const toolbar = this._store.add(( new ActionBar(actionBar, {
|
|
1207
|
-
hoverDelegate: nativeHoverDelegate
|
|
1208
|
-
})));
|
|
1209
|
-
const cancelAction = toAction({
|
|
1210
|
-
id: "workbench.action.cancelSnoozeStatusBarLink",
|
|
1211
|
-
label: ( localize(8732, "Cancel Snooze")),
|
|
1212
|
-
run: () => this.inlineCompletionsService.cancelSnooze(),
|
|
1213
|
-
class: ThemeIcon.asClassName(Codicon.stopCircle)
|
|
1214
|
-
});
|
|
1215
|
-
const update = isEnabled => {
|
|
1216
|
-
container.classList.toggle("disabled", !isEnabled);
|
|
1217
|
-
toolbar.clear();
|
|
1218
|
-
const timeLeftMs = this.inlineCompletionsService.snoozeTimeLeft;
|
|
1219
|
-
if (!isEnabled || timeLeftMs <= 0) {
|
|
1220
|
-
timerDisplay.textContent = ( localize(8733, "Hide suggestions for 5 min"));
|
|
1221
|
-
timerDisplay.title = "";
|
|
1222
|
-
button.label = label;
|
|
1223
|
-
button.setTitle(( localize(8734, "Hide inline suggestions for 5 min")));
|
|
1224
|
-
return true;
|
|
1225
|
-
}
|
|
1226
|
-
const timeLeftSeconds = Math.ceil(timeLeftMs / 1000);
|
|
1227
|
-
const minutes = Math.floor(timeLeftSeconds / 60);
|
|
1228
|
-
const seconds = timeLeftSeconds % 60;
|
|
1229
|
-
timerDisplay.textContent = `${minutes}:${seconds < 10 ? "0" : ""}${seconds} ${( localize(8735, "remaining"))}`;
|
|
1230
|
-
timerDisplay.title = ( localize(8736, "Inline suggestions are hidden for the remaining duration"));
|
|
1231
|
-
button.label = ( localize(8737, "+5 min"));
|
|
1232
|
-
button.setTitle(( localize(8738, "Snooze additional 5 min")));
|
|
1233
|
-
toolbar.push([cancelAction], {
|
|
1234
|
-
icon: true,
|
|
1235
|
-
label: false
|
|
1236
|
-
});
|
|
1237
|
-
return false;
|
|
1238
|
-
};
|
|
1239
|
-
const timerDisposables = this._store.add(( new DisposableStore()));
|
|
1240
|
-
function updateIntervalTimer() {
|
|
1241
|
-
timerDisposables.clear();
|
|
1242
|
-
const enabled = isEnabled();
|
|
1243
|
-
if (update(enabled)) {
|
|
1244
|
-
return;
|
|
1245
|
-
}
|
|
1246
|
-
timerDisposables.add(
|
|
1247
|
-
disposableWindowInterval(getWindow(container), () => update(enabled), 1000)
|
|
1248
|
-
);
|
|
1249
|
-
}
|
|
1250
|
-
updateIntervalTimer();
|
|
1251
|
-
this._store.add(button.onDidClick(() => {
|
|
1252
|
-
this.inlineCompletionsService.snooze();
|
|
1253
|
-
update(isEnabled());
|
|
1254
|
-
}));
|
|
1255
|
-
this._store.add(this.configurationService.onDidChangeConfiguration(e => {
|
|
1256
|
-
if (e.affectsConfiguration(defaultChat.completionsEnablementSetting)) {
|
|
1257
|
-
button.enabled = isEnabled();
|
|
1258
|
-
}
|
|
1259
|
-
updateIntervalTimer();
|
|
1260
|
-
}));
|
|
1261
|
-
this._store.add(this.inlineCompletionsService.onDidChangeIsSnoozing(() => {
|
|
1262
|
-
updateIntervalTimer();
|
|
1263
|
-
}));
|
|
1264
|
-
}
|
|
1265
|
-
};
|
|
1266
|
-
ChatStatusDashboard = ChatStatusDashboard_1 = ( __decorate([( __param(1, IChatEntitlementService)), ( __param(2, IChatStatusItemService)), ( __param(3, ICommandService)), ( __param(4, IConfigurationService)), ( __param(5, IEditorService)), ( __param(6, IHoverService)), ( __param(7, ILanguageService)), ( __param(8, IOpenerService)), ( __param(9, ITelemetryService)), ( __param(10, ITextResourceConfigurationService)), ( __param(11, IInlineCompletionsService)), ( __param(12, IMarkdownRendererService)), ( __param(13, ILanguageFeaturesService)), ( __param(14, IContextViewService)), ( __param(15, IStorageService)), ( __param(16, IDefaultAccountService)), ( __param(17, INotificationService))], ChatStatusDashboard));
|
|
1267
|
-
|
|
1268
|
-
export { ChatStatusDashboard };
|