@codingame/monaco-vscode-workbench-service-override 37.6.1 → 38.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/common.js +2 -0
- package/index.js +9 -10
- package/package.json +10 -10
- package/session.js +45 -42
- package/vscode/src/vs/platform/agentHost/common/sessionComparisonPrompts.d.ts +1 -0
- package/vscode/src/vs/platform/agentHost/common/sessionComparisonPrompts.js +12 -0
- package/vscode/src/vs/sessions/browser/{singlePaneWorkbench.d.ts → desktopWorkbench.d.ts} +6 -5
- package/vscode/src/vs/sessions/browser/{singlePaneWorkbench.js → desktopWorkbench.js} +23 -25
- package/vscode/src/vs/sessions/browser/dockedAuxiliaryBarController.d.ts +5 -2
- package/vscode/src/vs/sessions/browser/dockedAuxiliaryBarController.js +41 -3
- package/vscode/src/vs/sessions/browser/layoutActions.js +25 -41
- package/vscode/src/vs/sessions/browser/mobileWorkbench.d.ts +4 -0
- package/vscode/src/vs/sessions/browser/mobileWorkbench.js +10 -0
- package/vscode/src/vs/sessions/browser/parts/chatCompositeBar.d.ts +10 -5
- package/vscode/src/vs/sessions/browser/parts/chatCompositeBar.js +138 -34
- package/vscode/src/vs/sessions/browser/parts/chatGroupDropTarget.d.ts +2 -0
- package/vscode/src/vs/sessions/browser/parts/chatGroupDropTarget.js +13 -5
- package/vscode/src/vs/sessions/browser/parts/chatGroupView.d.ts +27 -5
- package/vscode/src/vs/sessions/browser/parts/chatGroupView.js +129 -28
- package/vscode/src/vs/sessions/browser/parts/chatGroupsView.d.ts +22 -7
- package/vscode/src/vs/sessions/browser/parts/chatGroupsView.js +260 -21
- package/vscode/src/vs/sessions/browser/parts/chatHeader.d.ts +25 -0
- package/vscode/src/vs/sessions/browser/parts/chatHeader.js +42 -0
- package/vscode/src/vs/sessions/browser/parts/customViewGridPart.js +9 -1
- package/vscode/src/vs/sessions/browser/parts/customViewNode.js +1 -1
- package/vscode/src/vs/sessions/browser/parts/{singlePaneAuxiliaryBarPart.d.ts → desktopAuxiliaryBarPart.d.ts} +4 -4
- package/vscode/src/vs/sessions/browser/parts/desktopAuxiliaryBarPart.js +26 -0
- package/vscode/src/vs/sessions/browser/parts/{singlePaneEditorPart.d.ts → desktopEditorPart.d.ts} +8 -6
- package/vscode/src/vs/sessions/browser/parts/{singlePaneEditorPart.js → desktopEditorPart.js} +25 -5
- package/vscode/src/vs/sessions/browser/parts/editorPart.js +16 -4
- package/vscode/src/vs/sessions/browser/parts/editorParts.d.ts +1 -1
- package/vscode/src/vs/sessions/browser/parts/editorParts.js +7 -6
- package/vscode/src/vs/sessions/browser/parts/gridGap.d.ts +14 -0
- package/vscode/src/vs/sessions/browser/parts/gridGap.js +69 -0
- package/vscode/src/vs/sessions/browser/parts/media/chatCompositeBar.css +132 -4
- package/vscode/src/vs/sessions/browser/parts/media/chatGroupsView.css +10 -0
- package/vscode/src/vs/sessions/browser/parts/media/editorPart.css +46 -2
- package/vscode/src/vs/sessions/browser/parts/media/sessionReadOnlyBanner.css +3 -3
- package/vscode/src/vs/sessions/browser/parts/media/sessionView.css +45 -48
- package/vscode/src/vs/sessions/browser/parts/media/sessionsPart.css +15 -0
- package/vscode/src/vs/sessions/browser/parts/menubar.contribution.js +8 -8
- package/vscode/src/vs/sessions/browser/parts/mobile/mobileSessionsPart.js +1 -1
- package/vscode/src/vs/sessions/browser/parts/remoteHostUnavailableEmptyState.d.ts +9 -1
- package/vscode/src/vs/sessions/browser/parts/remoteHostUnavailableEmptyState.js +21 -3
- package/vscode/src/vs/sessions/browser/parts/sessionBarStyles.js +1 -1
- package/vscode/src/vs/sessions/browser/parts/sessionDropTarget.d.ts +4 -3
- package/vscode/src/vs/sessions/browser/parts/sessionDropTarget.js +29 -15
- package/vscode/src/vs/sessions/browser/parts/sessionGridLayout.d.ts +67 -0
- package/vscode/src/vs/sessions/browser/parts/sessionGridLayout.js +598 -0
- package/vscode/src/vs/sessions/browser/parts/sessionHeader.d.ts +11 -84
- package/vscode/src/vs/sessions/browser/parts/sessionHeader.js +37 -317
- package/vscode/src/vs/sessions/browser/parts/sessionHeaderBar.d.ts +103 -0
- package/vscode/src/vs/sessions/browser/parts/sessionHeaderBar.js +391 -0
- package/vscode/src/vs/sessions/browser/parts/sessionReadOnlyBanner.d.ts +6 -4
- package/vscode/src/vs/sessions/browser/parts/sessionReadOnlyBanner.js +58 -28
- package/vscode/src/vs/sessions/browser/parts/sessionRemoteConnection.d.ts +4 -0
- package/vscode/src/vs/sessions/browser/parts/sessionRemoteConnection.js +66 -23
- package/vscode/src/vs/sessions/browser/parts/sessionView.d.ts +24 -5
- package/vscode/src/vs/sessions/browser/parts/sessionView.js +143 -33
- package/vscode/src/vs/sessions/browser/parts/sessionsPart.d.ts +25 -19
- package/vscode/src/vs/sessions/browser/parts/sessionsPart.js +157 -58
- package/vscode/src/vs/sessions/browser/parts/sessionsParts.d.ts +12 -3
- package/vscode/src/vs/sessions/browser/parts/sessionsParts.js +17 -2
- package/vscode/src/vs/sessions/browser/sessionWorkspace.d.ts +6 -3
- package/vscode/src/vs/sessions/browser/sessionWorkspace.js +2 -2
- package/vscode/src/vs/sessions/browser/sessionsSetUpService.js +66 -20
- package/vscode/src/vs/sessions/browser/sessionsSignInDialog.d.ts +1 -0
- package/vscode/src/vs/sessions/browser/sessionsSignInDialog.js +5 -4
- package/vscode/src/vs/sessions/browser/workbenchFactory.d.ts +12 -0
- package/vscode/src/vs/sessions/browser/workbenchFactory.js +17 -0
- package/vscode/src/vs/sessions/contrib/accountMenu/browser/account.contribution.d.ts +85 -1
- package/vscode/src/vs/sessions/contrib/accountMenu/browser/account.contribution.js +118 -100
- package/vscode/src/vs/sessions/contrib/accountMenu/browser/chatPetAchievementBadges.d.ts +3 -2
- package/vscode/src/vs/sessions/contrib/accountMenu/browser/chatPetAchievementBadges.js +39 -34
- package/vscode/src/vs/sessions/contrib/accountMenu/browser/media/accountTitleBarWidget.css +6 -0
- package/vscode/src/vs/sessions/contrib/agentFeedback/browser/nullAgentFeedbackService.contribution.d.ts +3 -0
- package/vscode/src/vs/sessions/contrib/agentFeedback/browser/nullAgentFeedbackService.contribution.js +6 -0
- package/vscode/src/vs/sessions/contrib/aiCustomizationTreeView/browser/aiCustomizationTreeView.contribution.js +18 -18
- package/vscode/src/vs/sessions/contrib/aiCustomizationTreeView/browser/aiCustomizationTreeViewViews.js +12 -12
- package/vscode/src/vs/sessions/contrib/applyCommitsToParentRepo/browser/applyChangesToParentRepo.js +7 -7
- package/vscode/src/vs/sessions/contrib/aquarium/browser/aquarium.contribution.js +12 -12
- package/vscode/src/vs/sessions/contrib/aquarium/browser/aquariumOverlay.js +10 -10
- package/vscode/src/vs/sessions/contrib/automations/browser/automationDialog.d.ts +78 -8
- package/vscode/src/vs/sessions/contrib/automations/browser/automationDialog.js +1166 -202
- package/vscode/src/vs/sessions/contrib/automations/browser/automationDialogService.d.ts +11 -1
- package/vscode/src/vs/sessions/contrib/automations/browser/automationDialogService.js +190 -69
- package/vscode/src/vs/sessions/contrib/automations/browser/automationRunner.d.ts +11 -9
- package/vscode/src/vs/sessions/contrib/automations/browser/automationRunner.js +122 -233
- package/vscode/src/vs/sessions/contrib/automations/browser/automationTelemetry.d.ts +22 -0
- package/vscode/src/vs/sessions/contrib/automations/browser/automationTelemetry.js +62 -0
- package/vscode/src/vs/sessions/contrib/automations/browser/automationTools.d.ts +7 -2
- package/vscode/src/vs/sessions/contrib/automations/browser/automationTools.js +172 -84
- package/vscode/src/vs/sessions/contrib/automations/browser/automations.contribution.js +17 -7
- package/vscode/src/vs/sessions/contrib/automations/browser/media/automationDialog.css +242 -60
- package/vscode/src/vs/sessions/contrib/automations/browser/providerAutomationService.d.ts +24 -36
- package/vscode/src/vs/sessions/contrib/automations/browser/providerAutomationService.js +104 -420
- package/vscode/src/vs/sessions/contrib/changes/browser/changes.contribution.js +15 -14
- package/vscode/src/vs/sessions/contrib/changes/browser/changesActions.d.ts +13 -3
- package/vscode/src/vs/sessions/contrib/changes/browser/changesActions.js +66 -43
- package/vscode/src/vs/sessions/contrib/changes/browser/changesMultiDiffSourceResolver.js +2 -7
- package/vscode/src/vs/sessions/contrib/changes/browser/changesViewActions.js +54 -59
- package/vscode/src/vs/sessions/contrib/changes/browser/changesetReviewActions.js +7 -7
- package/vscode/src/vs/sessions/contrib/changes/browser/media/changesActions.css +6 -0
- package/vscode/src/vs/sessions/contrib/changes/browser/sessionSyncChanges.js +25 -21
- package/vscode/src/vs/sessions/contrib/changes/browser/sessionsChangesAccessibilityHelp.js +21 -27
- package/vscode/src/vs/sessions/contrib/chat/browser/sessionChatInputToolbarDebug.js +17 -17
- package/vscode/src/vs/sessions/contrib/chat/browser/sessionTaskRunner.d.ts +5 -5
- package/vscode/src/vs/sessions/contrib/chat/browser/sessionTaskRunner.js +2 -2
- package/vscode/src/vs/sessions/contrib/chatDebug/browser/chatDebug.contribution.js +2 -2
- package/vscode/src/vs/sessions/contrib/codeReview/browser/codeReview.contributions.js +9 -16
- package/vscode/src/vs/sessions/contrib/customViewTest/browser/customViewTest.contribution.js +7 -7
- package/vscode/src/vs/sessions/contrib/editor/browser/addTabActions.js +10 -10
- package/vscode/src/vs/sessions/contrib/editor/browser/editor.contribution.d.ts +13 -1
- package/vscode/src/vs/sessions/contrib/editor/browser/editor.contribution.js +104 -117
- package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditor.contribution.js +8 -7
- package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditor.js +5 -5
- package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditorInput.js +1 -1
- package/vscode/src/vs/sessions/contrib/editor/browser/media/editorBreadcrumbs.css +0 -1
- package/vscode/src/vs/sessions/contrib/editor/browser/media/editorHeader.css +1 -1
- package/vscode/src/vs/sessions/contrib/files/browser/files.contribution.d.ts +7 -0
- package/vscode/src/vs/sessions/contrib/files/browser/files.contribution.js +77 -13
- package/vscode/src/vs/sessions/contrib/files/browser/filesView.d.ts +2 -1
- package/vscode/src/vs/sessions/contrib/files/browser/filesView.js +14 -4
- package/vscode/src/vs/sessions/contrib/layout/browser/baseSessionLayoutController.d.ts +45 -10
- package/vscode/src/vs/sessions/contrib/layout/browser/baseSessionLayoutController.js +527 -77
- package/vscode/src/vs/sessions/contrib/layout/browser/chatLayoutOwnerKeys.d.ts +18 -0
- package/vscode/src/vs/sessions/contrib/layout/browser/chatLayoutOwnerKeys.js +95 -0
- package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneDetailPanelCoordinator.d.ts → desktop/desktopDetailPanelCoordinator.d.ts} +5 -4
- package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneDetailPanelCoordinator.js → desktop/desktopDetailPanelCoordinator.js} +10 -7
- package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneDockedTabsCoordinator.d.ts → desktop/desktopDockedTabsCoordinator.d.ts} +15 -12
- package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneDockedTabsCoordinator.js → desktop/desktopDockedTabsCoordinator.js} +91 -44
- package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneDraftSessionStrategy.d.ts → desktop/desktopDraftSessionStrategy.d.ts} +10 -5
- package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneDraftSessionStrategy.js → desktop/desktopDraftSessionStrategy.js} +95 -22
- package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneExistingSessionStrategy.d.ts → desktop/desktopExistingSessionStrategy.d.ts} +13 -11
- package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneExistingSessionStrategy.js → desktop/desktopExistingSessionStrategy.js} +137 -57
- package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneLayoutStrategy.d.ts → desktop/desktopLayoutStrategy.d.ts} +22 -13
- package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneLayoutStrategy.js → desktop/desktopLayoutStrategy.js} +2 -2
- package/vscode/src/vs/sessions/contrib/layout/browser/desktop/desktopOwnerCompositionStore.d.ts +22 -0
- package/vscode/src/vs/sessions/contrib/layout/browser/desktop/desktopOwnerCompositionStore.js +136 -0
- package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneSharedHelpers.d.ts → desktop/desktopSharedHelpers.d.ts} +9 -2
- package/vscode/src/vs/sessions/contrib/layout/browser/desktop/desktopSharedHelpers.js +56 -0
- package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneVisibilityProfileStore.d.ts → desktop/desktopVisibilityProfileStore.d.ts} +3 -2
- package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneVisibilityProfileStore.js → desktop/desktopVisibilityProfileStore.js} +10 -9
- package/vscode/src/vs/sessions/contrib/layout/browser/desktopLayoutController.d.ts +71 -0
- package/vscode/src/vs/sessions/contrib/layout/browser/desktopLayoutController.js +201 -0
- package/vscode/src/vs/sessions/contrib/layout/browser/sessions.layout.contribution.d.ts +8 -1
- package/vscode/src/vs/sessions/contrib/layout/browser/sessions.layout.contribution.js +35 -35
- package/vscode/src/vs/sessions/contrib/layout/common/sessionEditorWorkingSet.d.ts +39 -0
- package/vscode/src/vs/sessions/contrib/layout/common/sessionEditorWorkingSet.js +73 -0
- package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionTourContribution.d.ts +42 -1
- package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionTourContribution.js +14 -10
- package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewTourContribution.js +3 -4
- package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewTourTrigger.d.ts +2 -2
- package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewTourTrigger.js +13 -9
- package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV2TourContribution.js +20 -5
- package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV2TourVariation.d.ts +8 -0
- package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV2TourVariation.js +19 -0
- package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV3Prompt.js +21 -20
- package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionTour.js +10 -5
- package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewTour.js +12 -8
- package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewTourShared.d.ts +3 -1
- package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewTourShared.js +12 -7
- package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewV2Tour.d.ts +9 -1
- package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewV2Tour.js +46 -19
- package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewV3Tour.js +2 -0
- package/vscode/src/vs/sessions/contrib/policyBlocked/browser/media/sessionsPolicyBlocked.css +33 -0
- package/vscode/src/vs/sessions/contrib/policyBlocked/browser/policyBlocked.contribution.d.ts +4 -2
- package/vscode/src/vs/sessions/contrib/policyBlocked/browser/policyBlocked.contribution.js +29 -8
- package/vscode/src/vs/sessions/contrib/policyBlocked/browser/sessionsPolicyBlocked.d.ts +15 -2
- package/vscode/src/vs/sessions/contrib/policyBlocked/browser/sessionsPolicyBlocked.js +169 -32
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostForkActions.js +30 -8
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionBranchActions.js +8 -34
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentMergeActions.js +63 -49
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/exportDebugLogsAction.js +1 -1
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/mobile/mobileChatInputConfigPicker.js +31 -17
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnostics.contribution.d.ts +32 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnostics.contribution.js +250 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnosticsLogs.d.ts +6 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnosticsLogs.js +52 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnosticsReport.d.ts +51 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnosticsReport.js +439 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnosticsService.d.ts +45 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnosticsService.js +595 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/devContainerAgentHostService.d.ts +20 -3
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/devContainerAgentHostService.js +360 -46
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/devContainerSource.d.ts +9 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/devContainerSource.js +59 -0
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/media/connectionDiagnostics.css +201 -0
- package/vscode/src/vs/sessions/contrib/remoteSessions/browser/getRemoteSessionTool.d.ts +10 -0
- package/vscode/src/vs/sessions/contrib/remoteSessions/browser/getRemoteSessionTool.js +70 -0
- package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionChatService.d.ts +20 -0
- package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionChatService.js +104 -0
- package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionInspector.d.ts +15 -0
- package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionInspector.js +152 -0
- package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionMessageRouter.d.ts +49 -0
- package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionMessageRouter.js +340 -0
- package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionService.d.ts +41 -0
- package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionService.js +400 -0
- package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionSource.d.ts +28 -0
- package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionSource.js +178 -0
- package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionTools.d.ts +17 -0
- package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionTools.js +206 -0
- package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessions.contribution.d.ts +1 -0
- package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessions.contribution.js +58 -0
- package/vscode/src/vs/sessions/contrib/remoteSessions/browser/sendRemoteMessageTool.d.ts +10 -0
- package/vscode/src/vs/sessions/contrib/remoteSessions/browser/sendRemoteMessageTool.js +90 -0
- package/vscode/src/vs/sessions/contrib/remoteSessions/common/remoteSessionInspection.d.ts +38 -0
- package/vscode/src/vs/sessions/contrib/remoteSessions/common/remoteSessionInspection.js +58 -0
- package/vscode/src/vs/sessions/contrib/search/browser/search.contribution.js +4 -5
- package/vscode/src/vs/sessions/contrib/search/browser/searchEditorEmptyState.contribution.js +1 -1
- package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparison.contribution.d.ts +1 -0
- package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparison.contribution.js +33 -0
- package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparisonGridController.d.ts +30 -0
- package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparisonGridController.js +190 -0
- package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparisonTool.d.ts +31 -0
- package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparisonTool.js +559 -0
- package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparisonViewService.d.ts +12 -0
- package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparisonViewService.js +38 -0
- package/vscode/src/vs/sessions/contrib/sessions/browser/blockedSessionsIndicatorModel.d.ts +13 -4
- package/vscode/src/vs/sessions/contrib/sessions/browser/blockedSessionsIndicatorModel.js +155 -22
- package/vscode/src/vs/sessions/contrib/sessions/browser/blockedSessionsList.js +9 -5
- package/vscode/src/vs/sessions/contrib/sessions/browser/media/automationsCards.css +90 -25
- package/vscode/src/vs/sessions/contrib/sessions/browser/media/sessionsTitleBarWidget.css +21 -4
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionDetailsAction.d.ts +2 -1
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionDetailsAction.js +11 -7
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessions.contribution.d.ts +116 -1
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessions.contribution.js +126 -30
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsAccountTelemetry.d.ts +26 -0
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsAccountTelemetry.js +160 -0
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsActions.d.ts +14 -6
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsActions.js +555 -151
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsLifecycleTracker.d.ts +192 -0
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsLifecycleTracker.js +510 -0
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTelemetry.contribution.d.ts +6 -7
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTelemetry.contribution.js +64 -57
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTitleBarWidget.d.ts +5 -3
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTitleBarWidget.js +83 -51
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsWindowNotifier.d.ts +5 -1
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsWindowNotifier.js +33 -12
- package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationCataloguePresentation.d.ts +3 -0
- package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationCataloguePresentation.js +53 -0
- package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationTemplates.js +10 -10
- package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationsAccessibility.d.ts +2 -2
- package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationsAccessibility.js +103 -55
- package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationsView.d.ts +7 -1
- package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationsView.js +679 -325
- package/vscode/src/vs/sessions/contrib/sessions/browser/views/sessionsViewActions.d.ts +27 -1
- package/vscode/src/vs/sessions/contrib/sessions/browser/views/sessionsViewActions.js +508 -163
- package/vscode/src/vs/sessions/contrib/terminal/browser/agentHostSessionTaskRunner.d.ts +20 -2
- package/vscode/src/vs/sessions/contrib/terminal/browser/agentHostSessionTaskRunner.js +100 -17
- package/vscode/src/vs/sessions/contrib/terminal/browser/sessionsTerminalContribution.d.ts +5 -1
- package/vscode/src/vs/sessions/contrib/terminal/browser/sessionsTerminalContribution.js +108 -30
- package/vscode/src/vs/sessions/contrib/workspace/browser/workspaceFolderManagement.d.ts +5 -3
- package/vscode/src/vs/sessions/contrib/workspace/browser/workspaceFolderManagement.js +47 -35
- package/vscode/src/vs/sessions/services/agentHostFilter/browser/agentHostFilterService.d.ts +9 -4
- package/vscode/src/vs/sessions/services/agentHostFilter/browser/agentHostFilterService.js +75 -25
- package/vscode/src/vs/sessions/services/customView/browser/customViewService.d.ts +11 -4
- package/vscode/src/vs/sessions/services/customView/browser/customViewService.js +17 -9
- package/vscode/src/vs/sessions/services/sessions/browser/closedItemHistory.d.ts +5 -0
- package/vscode/src/vs/sessions/services/sessions/browser/closedItemHistory.js +20 -2
- package/vscode/src/vs/sessions/services/sessions/browser/sessionComparisonService.d.ts +75 -0
- package/vscode/src/vs/sessions/services/sessions/browser/sessionComparisonService.js +1135 -0
- package/vscode/src/vs/sessions/services/sessions/browser/sessionGridState.d.ts +17 -0
- package/vscode/src/vs/sessions/services/sessions/browser/sessionGridState.js +99 -0
- package/vscode/src/vs/sessions/services/sessions/browser/sessionGroupsService.d.ts +4 -0
- package/vscode/src/vs/sessions/services/sessions/browser/sessionGroupsService.js +88 -23
- package/vscode/src/vs/sessions/services/sessions/browser/sessionNavigation.d.ts +19 -26
- package/vscode/src/vs/sessions/services/sessions/browser/sessionNavigation.js +115 -74
- package/vscode/src/vs/sessions/services/sessions/browser/sessionsListModelService.js +1 -1
- package/vscode/src/vs/sessions/services/sessions/browser/sessionsManagementService.d.ts +22 -7
- package/vscode/src/vs/sessions/services/sessions/browser/sessionsManagementService.js +278 -60
- package/vscode/src/vs/sessions/services/sessions/browser/sessionsRecencyHistory.d.ts +17 -20
- package/vscode/src/vs/sessions/services/sessions/browser/sessionsRecencyHistory.js +33 -22
- package/vscode/src/vs/sessions/services/sessions/browser/sessionsService.d.ts +28 -8
- package/vscode/src/vs/sessions/services/sessions/browser/sessionsService.js +673 -160
- package/vscode/src/vs/sessions/services/sessions/browser/visibleSessions.d.ts +13 -4
- package/vscode/src/vs/sessions/services/sessions/browser/visibleSessions.js +105 -15
- package/vscode/src/vs/sessions/services/sessions/common/sessionContextKeys.js +53 -34
- package/vscode/src/vs/sessions/services/workspaceFolderLabel/browser/workspaceFolderLabelService.js +1 -1
- package/vscode/src/vs/workbench/browser/layout.js +1 -1
- package/vscode/src/vs/workbench/browser/workbench.d.ts +0 -2
- package/vscode/src/vs/workbench/browser/workbench.js +23 -20
- package/vscode/src/vs/workbench/contrib/chat/common/automations/schedule.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/automations/schedule.js +41 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatUsage.d.ts +15 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatUsage.js +56 -0
- package/vscode/src/vs/platform/agentHost/common/meta/agentCheckoutOperationMeta.d.ts +0 -18
- package/vscode/src/vs/platform/agentHost/common/meta/agentCheckoutOperationMeta.js +0 -27
- package/vscode/src/vs/sessions/browser/parts/singlePaneAuxiliaryBarPart.js +0 -36
- package/vscode/src/vs/sessions/contrib/automations/browser/automationLeaderElection.d.ts +0 -37
- package/vscode/src/vs/sessions/contrib/automations/browser/automationLeaderElection.js +0 -126
- package/vscode/src/vs/sessions/contrib/automations/browser/automationScheduler.d.ts +0 -59
- package/vscode/src/vs/sessions/contrib/automations/browser/automationScheduler.js +0 -232
- package/vscode/src/vs/sessions/contrib/automations/browser/automationStorageService.d.ts +0 -13
- package/vscode/src/vs/sessions/contrib/automations/browser/automationStorageService.js +0 -22
- package/vscode/src/vs/sessions/contrib/blockedSessions/browser/blockedSessions.d.ts +0 -45
- package/vscode/src/vs/sessions/contrib/blockedSessions/browser/blockedSessions.js +0 -110
- package/vscode/src/vs/sessions/contrib/layout/browser/desktopSessionLayoutController.d.ts +0 -112
- package/vscode/src/vs/sessions/contrib/layout/browser/desktopSessionLayoutController.js +0 -444
- package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneSharedHelpers.js +0 -43
- package/vscode/src/vs/sessions/contrib/layout/browser/singlePaneLayoutController.d.ts +0 -55
- package/vscode/src/vs/sessions/contrib/layout/browser/singlePaneLayoutController.js +0 -91
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostClaudePermissionModePicker.d.ts +0 -26
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostClaudePermissionModePicker.js +0 -98
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostCodexApprovalsPicker.d.ts +0 -33
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostCodexApprovalsPicker.js +0 -98
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostModeIcon.d.ts +0 -2
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostModeIcon.js +0 -13
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostModePicker.d.ts +0 -122
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostModePicker.js +0 -464
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostPermissionPickerActionItem.d.ts +0 -35
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostPermissionPickerActionItem.js +0 -90
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostPermissionPickerDelegate.d.ts +0 -84
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostPermissionPickerDelegate.js +0 -328
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionConfigPicker.d.ts +0 -174
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionConfigPicker.js +0 -1390
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/media/agentHostSessionConfigPicker.css +0 -44
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/mobile/mobileAgentHostModePicker.d.ts +0 -30
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/mobile/mobileAgentHostModePicker.js +0 -78
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/mobile/mobileChatPhoneInputTarget.d.ts +0 -11
- package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/mobile/mobileChatPhoneInputTarget.js +0 -26
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostConnectionCustomization.d.ts +0 -27
- package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostConnectionCustomization.js +0 -26
|
@@ -1,97 +1,24 @@
|
|
|
1
|
-
import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
2
1
|
import { Event } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event";
|
|
3
|
-
import {
|
|
4
|
-
import { IActiveSession } from "@codingame/monaco-vscode-api/vscode/vs/sessions/services/sessions/common/sessionsManagement";
|
|
5
|
-
import { ISessionsManagementService } from "@codingame/monaco-vscode-api/vscode/vs/sessions/services/sessions/common/sessionsManagement.service";
|
|
6
|
-
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
7
|
-
import { IContextMenuService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextview/browser/contextView.service";
|
|
2
|
+
import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
8
3
|
import { IContextKeyService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service";
|
|
9
|
-
import {
|
|
4
|
+
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
5
|
+
import { IActiveSession } from "@codingame/monaco-vscode-api/vscode/vs/sessions/services/sessions/common/sessionsManagement";
|
|
10
6
|
/**
|
|
11
|
-
*
|
|
12
|
-
* identity and session toolbar.
|
|
13
|
-
*
|
|
14
|
-
* It is intentionally decoupled from the {@link ChatCompositeBar} (the chat tab
|
|
15
|
-
* strip) so the two surfaces evolve independently. The hosting view tells the
|
|
16
|
-
* header which session is relevant via {@link setSession}.
|
|
7
|
+
* Session-scoped header whose title follows the session's active chat.
|
|
17
8
|
*/
|
|
18
9
|
export declare class SessionHeader extends Disposable {
|
|
19
|
-
private readonly
|
|
20
|
-
private readonly _contextMenuService;
|
|
21
|
-
private readonly _contextKeyService;
|
|
22
|
-
private readonly _sessionsManagementService;
|
|
23
|
-
private readonly _container;
|
|
24
|
-
private readonly _iconEl;
|
|
25
|
-
private readonly _titleEl;
|
|
26
|
-
private readonly _titleTextEl;
|
|
27
|
-
private readonly _toolbar;
|
|
28
|
-
private readonly _titleActionsEl;
|
|
10
|
+
private readonly _bar;
|
|
29
11
|
private readonly _sessionDisposables;
|
|
30
|
-
private readonly
|
|
31
|
-
private
|
|
32
|
-
private _session;
|
|
33
|
-
private _sessionIsCreated;
|
|
34
|
-
private _requestedVisible;
|
|
35
|
-
private _lastPointerDownTarget;
|
|
36
|
-
private readonly _onDidChangeVisibility;
|
|
37
|
-
readonly onDidChangeVisibility: Event<boolean>;
|
|
38
|
-
private readonly _onDidChangeHeight;
|
|
39
|
-
readonly onDidChangeHeight: Event<void>;
|
|
40
|
-
private _visible;
|
|
41
|
-
private readonly _sessionTransfer;
|
|
42
|
-
private readonly _statusIcon;
|
|
12
|
+
private readonly _headerTargetsChatKey;
|
|
13
|
+
private readonly _toolbarShowsSessionKey;
|
|
43
14
|
get element(): HTMLElement;
|
|
44
15
|
get visible(): boolean;
|
|
45
16
|
get height(): number;
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
/**
|
|
50
|
-
* Tells the header which session is currently relevant. Pass `undefined` to clear.
|
|
51
|
-
*/
|
|
17
|
+
get onDidChangeVisibility(): Event<boolean>;
|
|
18
|
+
get onDidChangeHeight(): Event<void>;
|
|
19
|
+
constructor(instantiationService: IInstantiationService, contextKeyService: IContextKeyService);
|
|
52
20
|
setSession(session: IActiveSession | undefined): void;
|
|
53
21
|
setVisible(visible: boolean): void;
|
|
54
|
-
private _updateVisibility;
|
|
55
|
-
private _updateHeader;
|
|
56
|
-
private _applyVisibility;
|
|
57
|
-
private _updateStyles;
|
|
58
|
-
/**
|
|
59
|
-
* The title is editable when the backing provider declares it supports
|
|
60
|
-
* renaming the session (`capabilities.supportsRename`). This is the same
|
|
61
|
-
* signal that gates the `Rename...` context menu action in the sessions list.
|
|
62
|
-
*/
|
|
63
|
-
private _isTitleEditable;
|
|
64
|
-
/**
|
|
65
|
-
* Starts an inline rename of the session title. Returns `false` when the
|
|
66
|
-
* header cannot host it — the header is hidden (e.g. while the single-group
|
|
67
|
-
* chat tabs row replaces it) or the session cannot be renamed — so callers
|
|
68
|
-
* can fall back to another rename affordance.
|
|
69
|
-
*/
|
|
70
22
|
startTitleEditing(): boolean;
|
|
71
|
-
/**
|
|
72
|
-
* Replace the rendered title text with an `<input>` containing the current
|
|
73
|
-
* title (pre-selected). Enter commits via {@link ISessionsManagementService.renameChat},
|
|
74
|
-
* Escape or blur cancels.
|
|
75
|
-
*/
|
|
76
|
-
private _startTitleEditing;
|
|
77
|
-
private _cancelTitleEditing;
|
|
78
|
-
private _endTitleEditing;
|
|
79
|
-
}
|
|
80
|
-
/**
|
|
81
|
-
* A lightweight toolbar that renders only the {@link Menus.SessionBarToolbar} menu
|
|
82
|
-
* using the same `.chat-composite-bar-toolbar` styling. Unlike the full
|
|
83
|
-
* {@link SessionHeader}, this toolbar is absolutely positioned at the top-right of
|
|
84
|
-
* the session view and does not allocate any vertical space.
|
|
85
|
-
*
|
|
86
|
-
* It is shown only when the hosted session exists but has not yet been created.
|
|
87
|
-
*/
|
|
88
|
-
export declare class SessionViewFloatingToolbar extends Disposable {
|
|
89
|
-
private readonly _container;
|
|
90
|
-
private readonly _toolbar;
|
|
91
|
-
private _session;
|
|
92
|
-
private readonly _sessionDisposables;
|
|
93
|
-
get element(): HTMLElement;
|
|
94
|
-
constructor(instantiationService: IInstantiationService, configurationService: IConfigurationService);
|
|
95
|
-
setSession(session: IActiveSession | undefined): void;
|
|
96
|
-
private _setVisible;
|
|
97
23
|
}
|
|
24
|
+
export { SessionViewFloatingToolbar } from "./sessionHeaderBar.js";
|
|
@@ -1,345 +1,65 @@
|
|
|
1
1
|
|
|
2
|
-
import { registerCss } from '@codingame/monaco-vscode-api/css';
|
|
3
2
|
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
4
|
-
import
|
|
5
|
-
import { Disposable, MutableDisposable, DisposableStore } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
6
|
-
import { Emitter } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
|
|
7
|
-
import { $, addDisposableListener, EventType, DisposableResizeObserver, isMouseEvent, getWindow, addDisposableGenericMouseDownListener, createElement, addStandardDisposableListener } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/dom';
|
|
8
|
-
import { StandardMouseEvent } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/mouseEvent';
|
|
9
|
-
import { KeyCode } from '@codingame/monaco-vscode-api/vscode/vs/base/common/keyCodes';
|
|
3
|
+
import { Disposable, DisposableStore } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
10
4
|
import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
|
|
11
|
-
import {
|
|
12
|
-
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
13
|
-
import { ISessionsManagementService } from '@codingame/monaco-vscode-api/vscode/vs/sessions/services/sessions/common/sessionsManagement.service';
|
|
14
|
-
import { getUntitledSessionTitle } from '@codingame/monaco-vscode-api/vscode/vs/sessions/services/sessions/common/session';
|
|
15
|
-
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
16
|
-
import { MenuWorkbenchToolBar, HiddenItemStrategy } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/browser/toolbar';
|
|
17
|
-
import { IContextMenuService } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextview/browser/contextView.service';
|
|
18
|
-
import { Menus } from '@codingame/monaco-vscode-api/vscode/vs/sessions/browser/menus';
|
|
19
|
-
import { LocalSelectionTransfer } from '@codingame/monaco-vscode-api/vscode/vs/platform/dnd/browser/dnd';
|
|
20
|
-
import { DraggedSessionIdentifier, SessionsDataTransfers } from '@codingame/monaco-vscode-api/vscode/vs/sessions/browser/dnd';
|
|
21
|
-
import { applyDragImage } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/dnd/dnd';
|
|
22
|
-
import { applySessionBarThemeColors } from './sessionBarStyles.js';
|
|
5
|
+
import { isEqual } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
|
|
23
6
|
import { IContextKeyService } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service';
|
|
24
|
-
import {
|
|
25
|
-
import {
|
|
26
|
-
import {
|
|
27
|
-
|
|
7
|
+
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
8
|
+
import { SessionHeaderTargetsChatContext, SessionToolbarShowsSessionContext } from '@codingame/monaco-vscode-api/vscode/vs/sessions/common/contextkeys';
|
|
9
|
+
import { SessionHeaderBar } from './sessionHeaderBar.js';
|
|
10
|
+
export { SessionViewFloatingToolbar } from './sessionHeaderBar.js';
|
|
28
11
|
import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
|
|
29
12
|
|
|
30
|
-
registerCss(chatCompositeBar, 0);
|
|
31
13
|
let SessionHeader = class SessionHeader extends Disposable {
|
|
32
14
|
get element() {
|
|
33
|
-
return this.
|
|
15
|
+
return this._bar.element;
|
|
34
16
|
}
|
|
35
17
|
get visible() {
|
|
36
|
-
return this.
|
|
18
|
+
return this._bar.visible;
|
|
37
19
|
}
|
|
38
20
|
get height() {
|
|
39
|
-
return this.
|
|
21
|
+
return this._bar.height;
|
|
40
22
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
instantiationService,
|
|
44
|
-
_contextMenuService,
|
|
45
|
-
_contextKeyService,
|
|
46
|
-
_sessionsManagementService,
|
|
47
|
-
configurationService
|
|
48
|
-
) {
|
|
49
|
-
super();
|
|
50
|
-
this._themeService = _themeService;
|
|
51
|
-
this._contextMenuService = _contextMenuService;
|
|
52
|
-
this._contextKeyService = _contextKeyService;
|
|
53
|
-
this._sessionsManagementService = _sessionsManagementService;
|
|
54
|
-
this._sessionDisposables = this._register(( new MutableDisposable()));
|
|
55
|
-
this._editingDisposables = this._register(( new MutableDisposable()));
|
|
56
|
-
this._sessionIsCreated = false;
|
|
57
|
-
this._requestedVisible = true;
|
|
58
|
-
this._onDidChangeVisibility = this._register(( new Emitter()));
|
|
59
|
-
this.onDidChangeVisibility = this._onDidChangeVisibility.event;
|
|
60
|
-
this._onDidChangeHeight = this._register(( new Emitter()));
|
|
61
|
-
this.onDidChangeHeight = this._onDidChangeHeight.event;
|
|
62
|
-
this._visible = false;
|
|
63
|
-
this._sessionTransfer = LocalSelectionTransfer.getInstance();
|
|
64
|
-
this._container = $(".chat-composite-bar.session-header-bar");
|
|
65
|
-
const header = $(".chat-composite-bar-header");
|
|
66
|
-
this._container.appendChild(header);
|
|
67
|
-
this._iconEl = $(".chat-composite-bar-session-icon");
|
|
68
|
-
header.appendChild(this._iconEl);
|
|
69
|
-
this._statusIcon = this._register(instantiationService.createInstance(SessionStatusIcon, this._iconEl));
|
|
70
|
-
const main = $(".chat-composite-bar-header-main");
|
|
71
|
-
header.appendChild(main);
|
|
72
|
-
const titleRow = $(".chat-composite-bar-title-row");
|
|
73
|
-
main.appendChild(titleRow);
|
|
74
|
-
this._titleEl = $(".chat-composite-bar-session-title");
|
|
75
|
-
titleRow.appendChild(this._titleEl);
|
|
76
|
-
this._titleTextEl = $("span.chat-composite-bar-session-title-text");
|
|
77
|
-
this._titleEl.appendChild(this._titleTextEl);
|
|
78
|
-
this._register(addDisposableListener(this._titleEl, EventType.CLICK, () => {
|
|
79
|
-
this.startTitleEditing();
|
|
80
|
-
}));
|
|
81
|
-
const titleActions = $(".chat-composite-bar-title-actions");
|
|
82
|
-
titleRow.appendChild(titleActions);
|
|
83
|
-
this._titleActionsEl = titleActions;
|
|
84
|
-
const toolbarContainer = $(".chat-composite-bar-toolbar");
|
|
85
|
-
titleActions.appendChild(toolbarContainer);
|
|
86
|
-
this._toolbar = this._register(
|
|
87
|
-
instantiationService.createInstance(MenuWorkbenchToolBar, toolbarContainer, Menus.SessionBarToolbar, {
|
|
88
|
-
hiddenItemStrategy: HiddenItemStrategy.Ignore,
|
|
89
|
-
menuOptions: {
|
|
90
|
-
shouldForwardArgs: true
|
|
91
|
-
},
|
|
92
|
-
highlightToggledItems: true,
|
|
93
|
-
actionViewItemProvider: createSessionActionViewItemProvider(instantiationService, configurationService)
|
|
94
|
-
})
|
|
95
|
-
);
|
|
96
|
-
const heightObserver = this._register(( new DisposableResizeObserver("SessionHeader.height", () => {
|
|
97
|
-
this._onDidChangeHeight.fire();
|
|
98
|
-
})));
|
|
99
|
-
this._register(heightObserver.observe(this._container));
|
|
100
|
-
this._applyVisibility(false);
|
|
101
|
-
this._updateStyles();
|
|
102
|
-
this._register(this._themeService.onDidColorThemeChange(() => this._updateStyles()));
|
|
103
|
-
this._registerDragSource();
|
|
104
|
-
this._registerContextMenu();
|
|
23
|
+
get onDidChangeVisibility() {
|
|
24
|
+
return this._bar.onDidChangeVisibility;
|
|
105
25
|
}
|
|
106
|
-
|
|
107
|
-
this.
|
|
108
|
-
const session = this._session;
|
|
109
|
-
if (!session) {
|
|
110
|
-
return;
|
|
111
|
-
}
|
|
112
|
-
let anchor = this._container;
|
|
113
|
-
if (isMouseEvent(e)) {
|
|
114
|
-
anchor = ( new StandardMouseEvent(getWindow(this._container), e));
|
|
115
|
-
}
|
|
116
|
-
e.preventDefault();
|
|
117
|
-
e.stopPropagation();
|
|
118
|
-
this._contextMenuService.showContextMenu({
|
|
119
|
-
menuId: Menus.SessionHeaderContext,
|
|
120
|
-
menuActionOptions: {
|
|
121
|
-
shouldForwardArgs: true,
|
|
122
|
-
arg: session
|
|
123
|
-
},
|
|
124
|
-
getAnchor: () => anchor,
|
|
125
|
-
contextKeyService: this._contextKeyService
|
|
126
|
-
});
|
|
127
|
-
}));
|
|
26
|
+
get onDidChangeHeight() {
|
|
27
|
+
return this._bar.onDidChangeHeight;
|
|
128
28
|
}
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
this._register(
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
this._register(
|
|
135
|
-
const session = this._session;
|
|
136
|
-
if (!session || !e.dataTransfer) {
|
|
137
|
-
e.preventDefault();
|
|
138
|
-
return;
|
|
139
|
-
}
|
|
140
|
-
const target = this._lastPointerDownTarget;
|
|
141
|
-
if (target && this._titleActionsEl.contains(target)) {
|
|
142
|
-
e.preventDefault();
|
|
143
|
-
return;
|
|
144
|
-
}
|
|
145
|
-
if (this._renameInput) {
|
|
146
|
-
e.preventDefault();
|
|
147
|
-
return;
|
|
148
|
-
}
|
|
149
|
-
this._sessionTransfer.setData([( new DraggedSessionIdentifier(session.sessionId, session.resource))], DraggedSessionIdentifier.prototype);
|
|
150
|
-
const payload = JSON.stringify({
|
|
151
|
-
sessionId: session.sessionId,
|
|
152
|
-
resource: ( session.resource.toString())
|
|
153
|
-
});
|
|
154
|
-
e.dataTransfer.setData(SessionsDataTransfers.SESSION, payload);
|
|
155
|
-
e.dataTransfer.effectAllowed = "move";
|
|
156
|
-
applyDragImage(e, this._container, session.title.get());
|
|
157
|
-
}));
|
|
158
|
-
this._register(addDisposableListener(this._container, EventType.DRAG_END, () => {
|
|
159
|
-
this._sessionTransfer.clearData(DraggedSessionIdentifier.prototype);
|
|
160
|
-
}));
|
|
29
|
+
constructor(instantiationService, contextKeyService) {
|
|
30
|
+
super();
|
|
31
|
+
this._sessionDisposables = this._register(( new DisposableStore()));
|
|
32
|
+
this._headerTargetsChatKey = SessionHeaderTargetsChatContext.bindTo(contextKeyService);
|
|
33
|
+
this._toolbarShowsSessionKey = SessionToolbarShowsSessionContext.bindTo(contextKeyService);
|
|
34
|
+
this._bar = this._register(instantiationService.createInstance(SessionHeaderBar, undefined));
|
|
161
35
|
}
|
|
162
36
|
setSession(session) {
|
|
163
|
-
|
|
164
|
-
return;
|
|
165
|
-
}
|
|
166
|
-
this._cancelTitleEditing();
|
|
167
|
-
this._session = session;
|
|
168
|
-
this._toolbar.context = session;
|
|
169
|
-
this._statusIcon.reset();
|
|
170
|
-
const store = ( new DisposableStore());
|
|
171
|
-
this._sessionDisposables.value = store;
|
|
37
|
+
this._sessionDisposables.clear();
|
|
172
38
|
if (!session) {
|
|
173
|
-
this.
|
|
174
|
-
this.
|
|
39
|
+
this._headerTargetsChatKey.reset();
|
|
40
|
+
this._toolbarShowsSessionKey.reset();
|
|
41
|
+
this._bar.setContext(undefined);
|
|
175
42
|
return;
|
|
176
43
|
}
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
this.
|
|
182
|
-
this.
|
|
44
|
+
this._sessionDisposables.add(autorun(reader => {
|
|
45
|
+
const activeChat = session.activeChat.read(reader);
|
|
46
|
+
const targetsChat = !!activeChat && !isEqual(activeChat.resource, session.mainChat.read(reader).resource);
|
|
47
|
+
this._headerTargetsChatKey.set(targetsChat);
|
|
48
|
+
this._toolbarShowsSessionKey.set(true);
|
|
49
|
+
this._bar.setContext({
|
|
50
|
+
session,
|
|
51
|
+
chat: session.activeChat,
|
|
52
|
+
actionsTargetChat: targetsChat
|
|
53
|
+
});
|
|
183
54
|
}));
|
|
184
55
|
}
|
|
185
56
|
setVisible(visible) {
|
|
186
|
-
|
|
187
|
-
return;
|
|
188
|
-
}
|
|
189
|
-
this._requestedVisible = visible;
|
|
190
|
-
this._updateVisibility();
|
|
191
|
-
}
|
|
192
|
-
_updateVisibility() {
|
|
193
|
-
this._applyVisibility(this._sessionIsCreated && this._requestedVisible);
|
|
194
|
-
}
|
|
195
|
-
_updateHeader(session, reader) {
|
|
196
|
-
const status = session.status.read(reader);
|
|
197
|
-
const isRead = session.isRead.read(reader);
|
|
198
|
-
const isArchived = session.isArchived.read(reader);
|
|
199
|
-
this._statusIcon.setStatus(status, isRead, isArchived);
|
|
200
|
-
const isQuickChat = session.isQuickChat?.read(reader) ?? false;
|
|
201
|
-
this._titleTextEl.textContent = session.title.read(reader) || getUntitledSessionTitle(isQuickChat);
|
|
202
|
-
this._titleEl.classList.toggle("editable", this._isTitleEditable());
|
|
203
|
-
this._onDidChangeHeight.fire();
|
|
204
|
-
}
|
|
205
|
-
_applyVisibility(visible) {
|
|
206
|
-
const wasVisible = this._visible;
|
|
207
|
-
this._visible = visible;
|
|
208
|
-
this._container.style.display = this._visible ? "" : "none";
|
|
209
|
-
if (wasVisible !== this._visible) {
|
|
210
|
-
this._onDidChangeVisibility.fire(this._visible);
|
|
211
|
-
}
|
|
212
|
-
}
|
|
213
|
-
_updateStyles() {
|
|
214
|
-
applySessionBarThemeColors(this._container, this._themeService.getColorTheme());
|
|
215
|
-
}
|
|
216
|
-
_isTitleEditable() {
|
|
217
|
-
return !!this._session && (this._session.capabilities.get().supportsRename ?? false);
|
|
57
|
+
this._bar.setVisible(visible);
|
|
218
58
|
}
|
|
219
59
|
startTitleEditing() {
|
|
220
|
-
|
|
221
|
-
return false;
|
|
222
|
-
}
|
|
223
|
-
if (this._renameInput) {
|
|
224
|
-
this._renameInput.focus();
|
|
225
|
-
this._renameInput.select();
|
|
226
|
-
return true;
|
|
227
|
-
}
|
|
228
|
-
this._startTitleEditing();
|
|
229
|
-
return true;
|
|
230
|
-
}
|
|
231
|
-
_startTitleEditing() {
|
|
232
|
-
const session = this._session;
|
|
233
|
-
if (!session || this._renameInput) {
|
|
234
|
-
return;
|
|
235
|
-
}
|
|
236
|
-
const initialTitle = session.title.get();
|
|
237
|
-
const fallbackTitle = getUntitledSessionTitle(session.isQuickChat?.get() ?? false);
|
|
238
|
-
const input = createElement("input");
|
|
239
|
-
input.type = "text";
|
|
240
|
-
input.className = "chat-composite-bar-session-title-input";
|
|
241
|
-
input.value = initialTitle;
|
|
242
|
-
input.placeholder = fallbackTitle;
|
|
243
|
-
input.setAttribute("aria-label", ( localize(3035, "Rename session")));
|
|
244
|
-
input.spellcheck = false;
|
|
245
|
-
this._titleTextEl.style.display = "none";
|
|
246
|
-
this._titleEl.appendChild(input);
|
|
247
|
-
this._titleEl.classList.add("editing");
|
|
248
|
-
this._renameInput = input;
|
|
249
|
-
input.focus();
|
|
250
|
-
input.select();
|
|
251
|
-
const store = ( new DisposableStore());
|
|
252
|
-
this._editingDisposables.value = store;
|
|
253
|
-
let finished = false;
|
|
254
|
-
const finish = commit => {
|
|
255
|
-
if (finished) {
|
|
256
|
-
return;
|
|
257
|
-
}
|
|
258
|
-
finished = true;
|
|
259
|
-
const newTitle = input.value.trim();
|
|
260
|
-
this._endTitleEditing();
|
|
261
|
-
if (commit && newTitle && newTitle !== initialTitle) {
|
|
262
|
-
this._sessionsManagementService.renameSession(session, newTitle).catch(onUnexpectedError);
|
|
263
|
-
}
|
|
264
|
-
};
|
|
265
|
-
store.add(addStandardDisposableListener(input, EventType.KEY_DOWN, e => {
|
|
266
|
-
if (e.equals(KeyCode.Enter)) {
|
|
267
|
-
e.preventDefault();
|
|
268
|
-
e.stopPropagation();
|
|
269
|
-
finish(true);
|
|
270
|
-
} else if (e.equals(KeyCode.Escape)) {
|
|
271
|
-
e.preventDefault();
|
|
272
|
-
e.stopPropagation();
|
|
273
|
-
finish(false);
|
|
274
|
-
} else {
|
|
275
|
-
e.stopPropagation();
|
|
276
|
-
}
|
|
277
|
-
}));
|
|
278
|
-
store.add(addDisposableListener(input, EventType.BLUR, () => {
|
|
279
|
-
finish(false);
|
|
280
|
-
}));
|
|
281
|
-
store.add(addDisposableGenericMouseDownListener(input, e => e.stopPropagation()));
|
|
282
|
-
store.add(addDisposableListener(input, EventType.CLICK, e => e.stopPropagation()));
|
|
283
|
-
}
|
|
284
|
-
_cancelTitleEditing() {
|
|
285
|
-
if (!this._renameInput) {
|
|
286
|
-
return;
|
|
287
|
-
}
|
|
288
|
-
this._endTitleEditing();
|
|
289
|
-
}
|
|
290
|
-
_endTitleEditing() {
|
|
291
|
-
if (this._renameInput) {
|
|
292
|
-
this._renameInput.remove();
|
|
293
|
-
this._renameInput = undefined;
|
|
294
|
-
}
|
|
295
|
-
this._titleTextEl.style.display = "";
|
|
296
|
-
this._titleEl.classList.remove("editing");
|
|
297
|
-
this._editingDisposables.clear();
|
|
298
|
-
}
|
|
299
|
-
};
|
|
300
|
-
SessionHeader = ( __decorate([( __param(0, IThemeService)), ( __param(1, IInstantiationService)), ( __param(2, IContextMenuService)), ( __param(3, IContextKeyService)), ( __param(4, ISessionsManagementService)), ( __param(5, IConfigurationService))], SessionHeader));
|
|
301
|
-
let SessionViewFloatingToolbar = class SessionViewFloatingToolbar extends Disposable {
|
|
302
|
-
get element() {
|
|
303
|
-
return this._container;
|
|
304
|
-
}
|
|
305
|
-
constructor(instantiationService, configurationService) {
|
|
306
|
-
super();
|
|
307
|
-
this._sessionDisposables = this._register(( new MutableDisposable()));
|
|
308
|
-
this._container = $(".chat-composite-bar.chat-composite-bar-toolbar-floating");
|
|
309
|
-
const toolbar = $(".chat-composite-bar-toolbar");
|
|
310
|
-
this._container.appendChild(toolbar);
|
|
311
|
-
this._toolbar = this._register(
|
|
312
|
-
instantiationService.createInstance(MenuWorkbenchToolBar, toolbar, Menus.SessionBarToolbar, {
|
|
313
|
-
hiddenItemStrategy: HiddenItemStrategy.Ignore,
|
|
314
|
-
menuOptions: {
|
|
315
|
-
shouldForwardArgs: true
|
|
316
|
-
},
|
|
317
|
-
highlightToggledItems: true,
|
|
318
|
-
actionViewItemProvider: createSessionActionViewItemProvider(instantiationService, configurationService)
|
|
319
|
-
})
|
|
320
|
-
);
|
|
321
|
-
this._setVisible(false);
|
|
322
|
-
}
|
|
323
|
-
setSession(session) {
|
|
324
|
-
if (this._session === session) {
|
|
325
|
-
return;
|
|
326
|
-
}
|
|
327
|
-
this._session = session;
|
|
328
|
-
this._toolbar.context = session;
|
|
329
|
-
const store = ( new DisposableStore());
|
|
330
|
-
this._sessionDisposables.value = store;
|
|
331
|
-
if (!session) {
|
|
332
|
-
this._setVisible(false);
|
|
333
|
-
return;
|
|
334
|
-
}
|
|
335
|
-
store.add(autorun(reader => {
|
|
336
|
-
this._setVisible(!session.isCreated.read(reader));
|
|
337
|
-
}));
|
|
338
|
-
}
|
|
339
|
-
_setVisible(visible) {
|
|
340
|
-
this._container.style.display = visible ? "" : "none";
|
|
60
|
+
return this._bar.startTitleEditing();
|
|
341
61
|
}
|
|
342
62
|
};
|
|
343
|
-
|
|
63
|
+
SessionHeader = ( __decorate([( __param(0, IInstantiationService)), ( __param(1, IContextKeyService))], SessionHeader));
|
|
344
64
|
|
|
345
|
-
export { SessionHeader
|
|
65
|
+
export { SessionHeader };
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import { Event } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event";
|
|
2
|
+
import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
3
|
+
import { IObservable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/observable";
|
|
4
|
+
import { IThemeService } from "@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/themeService.service";
|
|
5
|
+
import { IActiveSession } from "@codingame/monaco-vscode-api/vscode/vs/sessions/services/sessions/common/sessionsManagement";
|
|
6
|
+
import { ISessionsManagementService } from "@codingame/monaco-vscode-api/vscode/vs/sessions/services/sessions/common/sessionsManagement.service";
|
|
7
|
+
import { IChat } from "@codingame/monaco-vscode-api/vscode/vs/sessions/services/sessions/common/session";
|
|
8
|
+
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
9
|
+
import { IContextMenuService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextview/browser/contextView.service";
|
|
10
|
+
import { IContextKeyService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service";
|
|
11
|
+
import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
|
|
12
|
+
export interface ISessionHeaderBarContext {
|
|
13
|
+
readonly session: IActiveSession;
|
|
14
|
+
readonly chat: IObservable<IChat | undefined>;
|
|
15
|
+
readonly actionsTargetChat?: boolean;
|
|
16
|
+
readonly activateChatGroup?: () => void;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Shared rendering primitive for session and chat headers. Its public hosts
|
|
20
|
+
* provide the appropriate context through {@link setContext}.
|
|
21
|
+
*/
|
|
22
|
+
export declare class SessionHeaderBar extends Disposable {
|
|
23
|
+
private readonly _themeService;
|
|
24
|
+
private readonly _contextMenuService;
|
|
25
|
+
private readonly _contextKeyService;
|
|
26
|
+
private readonly _sessionsManagementService;
|
|
27
|
+
private readonly _container;
|
|
28
|
+
private readonly _iconEl;
|
|
29
|
+
private readonly _titleEl;
|
|
30
|
+
private readonly _titleTextEl;
|
|
31
|
+
private readonly _toolbar;
|
|
32
|
+
private readonly _titleActionsEl;
|
|
33
|
+
private readonly _sessionDisposables;
|
|
34
|
+
private readonly _editingDisposables;
|
|
35
|
+
private _renameInput;
|
|
36
|
+
private _session;
|
|
37
|
+
private _activeChatObservable;
|
|
38
|
+
private _actionsTargetChat;
|
|
39
|
+
private _activateChatGroup;
|
|
40
|
+
private _activeChat;
|
|
41
|
+
private readonly _menuActionArgs;
|
|
42
|
+
private _sessionIsCreated;
|
|
43
|
+
private _requestedVisible;
|
|
44
|
+
private _lastPointerDownTarget;
|
|
45
|
+
private readonly _onDidChangeVisibility;
|
|
46
|
+
readonly onDidChangeVisibility: Event<boolean>;
|
|
47
|
+
private readonly _onDidChangeHeight;
|
|
48
|
+
readonly onDidChangeHeight: Event<void>;
|
|
49
|
+
private _visible;
|
|
50
|
+
private _height;
|
|
51
|
+
private readonly _sessionTransfer;
|
|
52
|
+
private readonly _statusIcon;
|
|
53
|
+
get element(): HTMLElement;
|
|
54
|
+
get visible(): boolean;
|
|
55
|
+
get height(): number;
|
|
56
|
+
constructor(resizeObserverCtor: typeof ResizeObserver | undefined, _themeService: IThemeService, instantiationService: IInstantiationService, _contextMenuService: IContextMenuService, _contextKeyService: IContextKeyService, _sessionsManagementService: ISessionsManagementService, configurationService: IConfigurationService);
|
|
57
|
+
private _registerContextMenu;
|
|
58
|
+
private _registerDragSource;
|
|
59
|
+
setContext(context: ISessionHeaderBarContext | undefined): void;
|
|
60
|
+
setVisible(visible: boolean): void;
|
|
61
|
+
private _updateVisibility;
|
|
62
|
+
private _updateHeader;
|
|
63
|
+
private _getUntitledTitle;
|
|
64
|
+
private _applyVisibility;
|
|
65
|
+
private _updateStyles;
|
|
66
|
+
/**
|
|
67
|
+
* The title is editable when the active chat supports renaming.
|
|
68
|
+
*/
|
|
69
|
+
private _isTitleEditable;
|
|
70
|
+
/**
|
|
71
|
+
* Starts an inline rename of the active chat title. Returns `false` when the
|
|
72
|
+
* header cannot host it — the header is hidden (e.g. while the single-group
|
|
73
|
+
* chat tabs row replaces it) or the active chat cannot be renamed — so callers
|
|
74
|
+
* can fall back to another rename affordance.
|
|
75
|
+
*/
|
|
76
|
+
startTitleEditing(): boolean;
|
|
77
|
+
/**
|
|
78
|
+
* Replace the rendered title text with an `<input>` containing the active chat
|
|
79
|
+
* title (pre-selected). Enter commits via {@link ISessionsManagementService.renameChat},
|
|
80
|
+
* Escape or blur cancels.
|
|
81
|
+
*/
|
|
82
|
+
private _startTitleEditing;
|
|
83
|
+
private _cancelTitleEditing;
|
|
84
|
+
private _endTitleEditing;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* A lightweight toolbar that renders only the {@link Menus.SessionBarToolbar} menu
|
|
88
|
+
* using the same `.chat-composite-bar-toolbar` styling. Unlike the full
|
|
89
|
+
* {@link SessionHeaderBar}, this toolbar is absolutely positioned at the top-right of
|
|
90
|
+
* the session view and does not allocate any vertical space.
|
|
91
|
+
*
|
|
92
|
+
* It is shown only when the hosted session exists but has not yet been created.
|
|
93
|
+
*/
|
|
94
|
+
export declare class SessionViewFloatingToolbar extends Disposable {
|
|
95
|
+
private readonly _container;
|
|
96
|
+
private readonly _toolbar;
|
|
97
|
+
private _session;
|
|
98
|
+
private readonly _sessionDisposables;
|
|
99
|
+
get element(): HTMLElement;
|
|
100
|
+
constructor(instantiationService: IInstantiationService, configurationService: IConfigurationService);
|
|
101
|
+
setSession(session: IActiveSession | undefined): void;
|
|
102
|
+
private _setVisible;
|
|
103
|
+
}
|