@codingame/monaco-vscode-workbench-service-override 37.6.0 → 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.
Files changed (324) hide show
  1. package/common.js +2 -0
  2. package/index.js +9 -10
  3. package/package.json +10 -10
  4. package/session.js +45 -42
  5. package/vscode/src/vs/platform/agentHost/common/sessionComparisonPrompts.d.ts +1 -0
  6. package/vscode/src/vs/platform/agentHost/common/sessionComparisonPrompts.js +12 -0
  7. package/vscode/src/vs/sessions/browser/{singlePaneWorkbench.d.ts → desktopWorkbench.d.ts} +6 -5
  8. package/vscode/src/vs/sessions/browser/{singlePaneWorkbench.js → desktopWorkbench.js} +23 -25
  9. package/vscode/src/vs/sessions/browser/dockedAuxiliaryBarController.d.ts +5 -2
  10. package/vscode/src/vs/sessions/browser/dockedAuxiliaryBarController.js +41 -3
  11. package/vscode/src/vs/sessions/browser/layoutActions.js +25 -41
  12. package/vscode/src/vs/sessions/browser/mobileWorkbench.d.ts +4 -0
  13. package/vscode/src/vs/sessions/browser/mobileWorkbench.js +10 -0
  14. package/vscode/src/vs/sessions/browser/parts/chatCompositeBar.d.ts +10 -5
  15. package/vscode/src/vs/sessions/browser/parts/chatCompositeBar.js +138 -34
  16. package/vscode/src/vs/sessions/browser/parts/chatGroupDropTarget.d.ts +2 -0
  17. package/vscode/src/vs/sessions/browser/parts/chatGroupDropTarget.js +13 -5
  18. package/vscode/src/vs/sessions/browser/parts/chatGroupView.d.ts +27 -5
  19. package/vscode/src/vs/sessions/browser/parts/chatGroupView.js +129 -28
  20. package/vscode/src/vs/sessions/browser/parts/chatGroupsView.d.ts +22 -7
  21. package/vscode/src/vs/sessions/browser/parts/chatGroupsView.js +260 -21
  22. package/vscode/src/vs/sessions/browser/parts/chatHeader.d.ts +25 -0
  23. package/vscode/src/vs/sessions/browser/parts/chatHeader.js +42 -0
  24. package/vscode/src/vs/sessions/browser/parts/customViewGridPart.js +9 -1
  25. package/vscode/src/vs/sessions/browser/parts/customViewNode.js +1 -1
  26. package/vscode/src/vs/sessions/browser/parts/{singlePaneAuxiliaryBarPart.d.ts → desktopAuxiliaryBarPart.d.ts} +4 -4
  27. package/vscode/src/vs/sessions/browser/parts/desktopAuxiliaryBarPart.js +26 -0
  28. package/vscode/src/vs/sessions/browser/parts/{singlePaneEditorPart.d.ts → desktopEditorPart.d.ts} +8 -6
  29. package/vscode/src/vs/sessions/browser/parts/{singlePaneEditorPart.js → desktopEditorPart.js} +25 -5
  30. package/vscode/src/vs/sessions/browser/parts/editorPart.js +16 -4
  31. package/vscode/src/vs/sessions/browser/parts/editorParts.d.ts +1 -1
  32. package/vscode/src/vs/sessions/browser/parts/editorParts.js +7 -6
  33. package/vscode/src/vs/sessions/browser/parts/gridGap.d.ts +14 -0
  34. package/vscode/src/vs/sessions/browser/parts/gridGap.js +69 -0
  35. package/vscode/src/vs/sessions/browser/parts/media/chatCompositeBar.css +132 -4
  36. package/vscode/src/vs/sessions/browser/parts/media/chatGroupsView.css +10 -0
  37. package/vscode/src/vs/sessions/browser/parts/media/editorPart.css +46 -2
  38. package/vscode/src/vs/sessions/browser/parts/media/sessionReadOnlyBanner.css +3 -3
  39. package/vscode/src/vs/sessions/browser/parts/media/sessionView.css +45 -48
  40. package/vscode/src/vs/sessions/browser/parts/media/sessionsPart.css +15 -0
  41. package/vscode/src/vs/sessions/browser/parts/menubar.contribution.js +8 -8
  42. package/vscode/src/vs/sessions/browser/parts/mobile/mobileSessionsPart.js +1 -1
  43. package/vscode/src/vs/sessions/browser/parts/remoteHostUnavailableEmptyState.d.ts +9 -1
  44. package/vscode/src/vs/sessions/browser/parts/remoteHostUnavailableEmptyState.js +21 -3
  45. package/vscode/src/vs/sessions/browser/parts/sessionBarStyles.js +1 -1
  46. package/vscode/src/vs/sessions/browser/parts/sessionDropTarget.d.ts +4 -3
  47. package/vscode/src/vs/sessions/browser/parts/sessionDropTarget.js +29 -15
  48. package/vscode/src/vs/sessions/browser/parts/sessionGridLayout.d.ts +67 -0
  49. package/vscode/src/vs/sessions/browser/parts/sessionGridLayout.js +598 -0
  50. package/vscode/src/vs/sessions/browser/parts/sessionHeader.d.ts +11 -84
  51. package/vscode/src/vs/sessions/browser/parts/sessionHeader.js +37 -317
  52. package/vscode/src/vs/sessions/browser/parts/sessionHeaderBar.d.ts +103 -0
  53. package/vscode/src/vs/sessions/browser/parts/sessionHeaderBar.js +391 -0
  54. package/vscode/src/vs/sessions/browser/parts/sessionReadOnlyBanner.d.ts +6 -4
  55. package/vscode/src/vs/sessions/browser/parts/sessionReadOnlyBanner.js +58 -28
  56. package/vscode/src/vs/sessions/browser/parts/sessionRemoteConnection.d.ts +4 -0
  57. package/vscode/src/vs/sessions/browser/parts/sessionRemoteConnection.js +66 -23
  58. package/vscode/src/vs/sessions/browser/parts/sessionView.d.ts +24 -5
  59. package/vscode/src/vs/sessions/browser/parts/sessionView.js +143 -33
  60. package/vscode/src/vs/sessions/browser/parts/sessionsPart.d.ts +25 -19
  61. package/vscode/src/vs/sessions/browser/parts/sessionsPart.js +157 -58
  62. package/vscode/src/vs/sessions/browser/parts/sessionsParts.d.ts +12 -3
  63. package/vscode/src/vs/sessions/browser/parts/sessionsParts.js +17 -2
  64. package/vscode/src/vs/sessions/browser/sessionWorkspace.d.ts +6 -3
  65. package/vscode/src/vs/sessions/browser/sessionWorkspace.js +2 -2
  66. package/vscode/src/vs/sessions/browser/sessionsSetUpService.js +66 -20
  67. package/vscode/src/vs/sessions/browser/sessionsSignInDialog.d.ts +1 -0
  68. package/vscode/src/vs/sessions/browser/sessionsSignInDialog.js +5 -4
  69. package/vscode/src/vs/sessions/browser/workbenchFactory.d.ts +12 -0
  70. package/vscode/src/vs/sessions/browser/workbenchFactory.js +17 -0
  71. package/vscode/src/vs/sessions/contrib/accountMenu/browser/account.contribution.d.ts +85 -1
  72. package/vscode/src/vs/sessions/contrib/accountMenu/browser/account.contribution.js +118 -100
  73. package/vscode/src/vs/sessions/contrib/accountMenu/browser/chatPetAchievementBadges.d.ts +3 -2
  74. package/vscode/src/vs/sessions/contrib/accountMenu/browser/chatPetAchievementBadges.js +39 -34
  75. package/vscode/src/vs/sessions/contrib/accountMenu/browser/media/accountTitleBarWidget.css +6 -0
  76. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/nullAgentFeedbackService.contribution.d.ts +3 -0
  77. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/nullAgentFeedbackService.contribution.js +6 -0
  78. package/vscode/src/vs/sessions/contrib/aiCustomizationTreeView/browser/aiCustomizationTreeView.contribution.js +18 -18
  79. package/vscode/src/vs/sessions/contrib/aiCustomizationTreeView/browser/aiCustomizationTreeViewViews.js +12 -12
  80. package/vscode/src/vs/sessions/contrib/applyCommitsToParentRepo/browser/applyChangesToParentRepo.js +7 -7
  81. package/vscode/src/vs/sessions/contrib/aquarium/browser/aquarium.contribution.js +12 -12
  82. package/vscode/src/vs/sessions/contrib/aquarium/browser/aquariumOverlay.js +10 -10
  83. package/vscode/src/vs/sessions/contrib/automations/browser/automationDialog.d.ts +78 -8
  84. package/vscode/src/vs/sessions/contrib/automations/browser/automationDialog.js +1166 -202
  85. package/vscode/src/vs/sessions/contrib/automations/browser/automationDialogService.d.ts +11 -1
  86. package/vscode/src/vs/sessions/contrib/automations/browser/automationDialogService.js +190 -69
  87. package/vscode/src/vs/sessions/contrib/automations/browser/automationRunner.d.ts +11 -9
  88. package/vscode/src/vs/sessions/contrib/automations/browser/automationRunner.js +122 -233
  89. package/vscode/src/vs/sessions/contrib/automations/browser/automationTelemetry.d.ts +22 -0
  90. package/vscode/src/vs/sessions/contrib/automations/browser/automationTelemetry.js +62 -0
  91. package/vscode/src/vs/sessions/contrib/automations/browser/automationTools.d.ts +7 -2
  92. package/vscode/src/vs/sessions/contrib/automations/browser/automationTools.js +172 -84
  93. package/vscode/src/vs/sessions/contrib/automations/browser/automations.contribution.js +17 -7
  94. package/vscode/src/vs/sessions/contrib/automations/browser/media/automationDialog.css +242 -60
  95. package/vscode/src/vs/sessions/contrib/automations/browser/providerAutomationService.d.ts +24 -36
  96. package/vscode/src/vs/sessions/contrib/automations/browser/providerAutomationService.js +104 -420
  97. package/vscode/src/vs/sessions/contrib/changes/browser/changes.contribution.js +15 -14
  98. package/vscode/src/vs/sessions/contrib/changes/browser/changesActions.d.ts +13 -3
  99. package/vscode/src/vs/sessions/contrib/changes/browser/changesActions.js +66 -43
  100. package/vscode/src/vs/sessions/contrib/changes/browser/changesMultiDiffSourceResolver.js +2 -7
  101. package/vscode/src/vs/sessions/contrib/changes/browser/changesViewActions.js +54 -59
  102. package/vscode/src/vs/sessions/contrib/changes/browser/changesetReviewActions.js +7 -7
  103. package/vscode/src/vs/sessions/contrib/changes/browser/media/changesActions.css +6 -0
  104. package/vscode/src/vs/sessions/contrib/changes/browser/sessionSyncChanges.js +25 -21
  105. package/vscode/src/vs/sessions/contrib/changes/browser/sessionsChangesAccessibilityHelp.js +21 -27
  106. package/vscode/src/vs/sessions/contrib/chat/browser/sessionChatInputToolbarDebug.js +17 -17
  107. package/vscode/src/vs/sessions/contrib/chat/browser/sessionTaskRunner.d.ts +5 -5
  108. package/vscode/src/vs/sessions/contrib/chat/browser/sessionTaskRunner.js +2 -2
  109. package/vscode/src/vs/sessions/contrib/chatDebug/browser/chatDebug.contribution.js +2 -2
  110. package/vscode/src/vs/sessions/contrib/codeReview/browser/codeReview.contributions.js +9 -16
  111. package/vscode/src/vs/sessions/contrib/customViewTest/browser/customViewTest.contribution.js +7 -7
  112. package/vscode/src/vs/sessions/contrib/editor/browser/addTabActions.js +15 -13
  113. package/vscode/src/vs/sessions/contrib/editor/browser/editor.contribution.d.ts +13 -1
  114. package/vscode/src/vs/sessions/contrib/editor/browser/editor.contribution.js +104 -117
  115. package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditor.contribution.js +8 -7
  116. package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditor.js +5 -5
  117. package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditorInput.js +1 -1
  118. package/vscode/src/vs/sessions/contrib/editor/browser/media/editorBreadcrumbs.css +0 -1
  119. package/vscode/src/vs/sessions/contrib/editor/browser/media/editorHeader.css +1 -1
  120. package/vscode/src/vs/sessions/contrib/files/browser/files.contribution.d.ts +7 -0
  121. package/vscode/src/vs/sessions/contrib/files/browser/files.contribution.js +77 -13
  122. package/vscode/src/vs/sessions/contrib/files/browser/filesView.d.ts +2 -1
  123. package/vscode/src/vs/sessions/contrib/files/browser/filesView.js +14 -4
  124. package/vscode/src/vs/sessions/contrib/layout/browser/baseSessionLayoutController.d.ts +45 -10
  125. package/vscode/src/vs/sessions/contrib/layout/browser/baseSessionLayoutController.js +527 -96
  126. package/vscode/src/vs/sessions/contrib/layout/browser/chatLayoutOwnerKeys.d.ts +18 -0
  127. package/vscode/src/vs/sessions/contrib/layout/browser/chatLayoutOwnerKeys.js +95 -0
  128. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneDetailPanelCoordinator.d.ts → desktop/desktopDetailPanelCoordinator.d.ts} +5 -4
  129. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneDetailPanelCoordinator.js → desktop/desktopDetailPanelCoordinator.js} +10 -7
  130. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneDockedTabsCoordinator.d.ts → desktop/desktopDockedTabsCoordinator.d.ts} +15 -12
  131. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneDockedTabsCoordinator.js → desktop/desktopDockedTabsCoordinator.js} +91 -44
  132. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneDraftSessionStrategy.d.ts → desktop/desktopDraftSessionStrategy.d.ts} +10 -5
  133. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneDraftSessionStrategy.js → desktop/desktopDraftSessionStrategy.js} +95 -22
  134. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneExistingSessionStrategy.d.ts → desktop/desktopExistingSessionStrategy.d.ts} +13 -11
  135. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneExistingSessionStrategy.js → desktop/desktopExistingSessionStrategy.js} +137 -57
  136. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneLayoutStrategy.d.ts → desktop/desktopLayoutStrategy.d.ts} +22 -13
  137. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneLayoutStrategy.js → desktop/desktopLayoutStrategy.js} +2 -2
  138. package/vscode/src/vs/sessions/contrib/layout/browser/desktop/desktopOwnerCompositionStore.d.ts +22 -0
  139. package/vscode/src/vs/sessions/contrib/layout/browser/desktop/desktopOwnerCompositionStore.js +136 -0
  140. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneSharedHelpers.d.ts → desktop/desktopSharedHelpers.d.ts} +9 -2
  141. package/vscode/src/vs/sessions/contrib/layout/browser/desktop/desktopSharedHelpers.js +56 -0
  142. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneVisibilityProfileStore.d.ts → desktop/desktopVisibilityProfileStore.d.ts} +3 -2
  143. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneVisibilityProfileStore.js → desktop/desktopVisibilityProfileStore.js} +10 -9
  144. package/vscode/src/vs/sessions/contrib/layout/browser/desktopLayoutController.d.ts +71 -0
  145. package/vscode/src/vs/sessions/contrib/layout/browser/desktopLayoutController.js +201 -0
  146. package/vscode/src/vs/sessions/contrib/layout/browser/sessions.layout.contribution.d.ts +8 -1
  147. package/vscode/src/vs/sessions/contrib/layout/browser/sessions.layout.contribution.js +35 -35
  148. package/vscode/src/vs/sessions/contrib/layout/common/sessionEditorWorkingSet.d.ts +39 -0
  149. package/vscode/src/vs/sessions/contrib/layout/common/sessionEditorWorkingSet.js +73 -0
  150. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionTourContribution.d.ts +42 -1
  151. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionTourContribution.js +14 -10
  152. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewTourContribution.js +3 -4
  153. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewTourTrigger.d.ts +2 -2
  154. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewTourTrigger.js +13 -9
  155. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV2TourContribution.js +20 -5
  156. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV2TourVariation.d.ts +8 -0
  157. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV2TourVariation.js +19 -0
  158. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV3Prompt.js +21 -20
  159. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionTour.js +10 -5
  160. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewTour.js +12 -8
  161. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewTourShared.d.ts +3 -1
  162. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewTourShared.js +12 -7
  163. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewV2Tour.d.ts +9 -1
  164. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewV2Tour.js +46 -19
  165. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewV3Tour.js +2 -0
  166. package/vscode/src/vs/sessions/contrib/policyBlocked/browser/media/sessionsPolicyBlocked.css +33 -0
  167. package/vscode/src/vs/sessions/contrib/policyBlocked/browser/policyBlocked.contribution.d.ts +4 -2
  168. package/vscode/src/vs/sessions/contrib/policyBlocked/browser/policyBlocked.contribution.js +29 -8
  169. package/vscode/src/vs/sessions/contrib/policyBlocked/browser/sessionsPolicyBlocked.d.ts +15 -2
  170. package/vscode/src/vs/sessions/contrib/policyBlocked/browser/sessionsPolicyBlocked.js +169 -32
  171. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostForkActions.js +30 -8
  172. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionBranchActions.js +8 -34
  173. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentMergeActions.js +63 -49
  174. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/exportDebugLogsAction.js +1 -1
  175. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/mobile/mobileChatInputConfigPicker.js +31 -17
  176. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnostics.contribution.d.ts +32 -0
  177. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnostics.contribution.js +250 -0
  178. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnosticsLogs.d.ts +6 -0
  179. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnosticsLogs.js +52 -0
  180. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnosticsReport.d.ts +51 -0
  181. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnosticsReport.js +439 -0
  182. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnosticsService.d.ts +45 -0
  183. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnosticsService.js +595 -0
  184. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/devContainerAgentHostService.d.ts +20 -3
  185. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/devContainerAgentHostService.js +360 -46
  186. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/devContainerSource.d.ts +9 -0
  187. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/devContainerSource.js +59 -0
  188. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/media/connectionDiagnostics.css +201 -0
  189. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/getRemoteSessionTool.d.ts +10 -0
  190. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/getRemoteSessionTool.js +70 -0
  191. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionChatService.d.ts +20 -0
  192. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionChatService.js +104 -0
  193. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionInspector.d.ts +15 -0
  194. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionInspector.js +152 -0
  195. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionMessageRouter.d.ts +49 -0
  196. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionMessageRouter.js +340 -0
  197. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionService.d.ts +41 -0
  198. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionService.js +400 -0
  199. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionSource.d.ts +28 -0
  200. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionSource.js +178 -0
  201. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionTools.d.ts +17 -0
  202. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionTools.js +206 -0
  203. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessions.contribution.d.ts +1 -0
  204. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessions.contribution.js +58 -0
  205. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/sendRemoteMessageTool.d.ts +10 -0
  206. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/sendRemoteMessageTool.js +90 -0
  207. package/vscode/src/vs/sessions/contrib/remoteSessions/common/remoteSessionInspection.d.ts +38 -0
  208. package/vscode/src/vs/sessions/contrib/remoteSessions/common/remoteSessionInspection.js +58 -0
  209. package/vscode/src/vs/sessions/contrib/search/browser/search.contribution.js +4 -5
  210. package/vscode/src/vs/sessions/contrib/search/browser/searchEditorEmptyState.contribution.js +1 -1
  211. package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparison.contribution.d.ts +1 -0
  212. package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparison.contribution.js +33 -0
  213. package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparisonGridController.d.ts +30 -0
  214. package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparisonGridController.js +190 -0
  215. package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparisonTool.d.ts +31 -0
  216. package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparisonTool.js +559 -0
  217. package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparisonViewService.d.ts +12 -0
  218. package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparisonViewService.js +38 -0
  219. package/vscode/src/vs/sessions/contrib/sessions/browser/blockedSessionsIndicatorModel.d.ts +13 -4
  220. package/vscode/src/vs/sessions/contrib/sessions/browser/blockedSessionsIndicatorModel.js +155 -22
  221. package/vscode/src/vs/sessions/contrib/sessions/browser/blockedSessionsList.js +9 -5
  222. package/vscode/src/vs/sessions/contrib/sessions/browser/media/automationsCards.css +90 -25
  223. package/vscode/src/vs/sessions/contrib/sessions/browser/media/sessionsTitleBarWidget.css +21 -4
  224. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionDetailsAction.d.ts +2 -1
  225. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionDetailsAction.js +11 -7
  226. package/vscode/src/vs/sessions/contrib/sessions/browser/sessions.contribution.d.ts +116 -1
  227. package/vscode/src/vs/sessions/contrib/sessions/browser/sessions.contribution.js +126 -30
  228. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsAccountTelemetry.d.ts +26 -0
  229. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsAccountTelemetry.js +160 -0
  230. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsActions.d.ts +14 -6
  231. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsActions.js +555 -151
  232. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsLifecycleTracker.d.ts +192 -0
  233. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsLifecycleTracker.js +510 -0
  234. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTelemetry.contribution.d.ts +6 -7
  235. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTelemetry.contribution.js +64 -57
  236. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTitleBarWidget.d.ts +5 -3
  237. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTitleBarWidget.js +83 -51
  238. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsWindowNotifier.d.ts +5 -1
  239. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsWindowNotifier.js +33 -12
  240. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationCataloguePresentation.d.ts +3 -0
  241. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationCataloguePresentation.js +53 -0
  242. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationTemplates.js +10 -10
  243. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationsAccessibility.d.ts +2 -2
  244. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationsAccessibility.js +103 -55
  245. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationsView.d.ts +7 -1
  246. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationsView.js +679 -325
  247. package/vscode/src/vs/sessions/contrib/sessions/browser/views/sessionsViewActions.d.ts +27 -1
  248. package/vscode/src/vs/sessions/contrib/sessions/browser/views/sessionsViewActions.js +508 -163
  249. package/vscode/src/vs/sessions/contrib/terminal/browser/agentHostSessionTaskRunner.d.ts +20 -2
  250. package/vscode/src/vs/sessions/contrib/terminal/browser/agentHostSessionTaskRunner.js +100 -17
  251. package/vscode/src/vs/sessions/contrib/terminal/browser/sessionsTerminalContribution.d.ts +5 -1
  252. package/vscode/src/vs/sessions/contrib/terminal/browser/sessionsTerminalContribution.js +108 -30
  253. package/vscode/src/vs/sessions/contrib/workspace/browser/workspaceFolderManagement.d.ts +5 -3
  254. package/vscode/src/vs/sessions/contrib/workspace/browser/workspaceFolderManagement.js +47 -35
  255. package/vscode/src/vs/sessions/services/agentHostFilter/browser/agentHostFilterService.d.ts +9 -4
  256. package/vscode/src/vs/sessions/services/agentHostFilter/browser/agentHostFilterService.js +75 -25
  257. package/vscode/src/vs/sessions/services/customView/browser/customViewService.d.ts +11 -4
  258. package/vscode/src/vs/sessions/services/customView/browser/customViewService.js +17 -9
  259. package/vscode/src/vs/sessions/services/sessions/browser/closedItemHistory.d.ts +5 -0
  260. package/vscode/src/vs/sessions/services/sessions/browser/closedItemHistory.js +20 -2
  261. package/vscode/src/vs/sessions/services/sessions/browser/sessionComparisonService.d.ts +75 -0
  262. package/vscode/src/vs/sessions/services/sessions/browser/sessionComparisonService.js +1135 -0
  263. package/vscode/src/vs/sessions/services/sessions/browser/sessionGridState.d.ts +17 -0
  264. package/vscode/src/vs/sessions/services/sessions/browser/sessionGridState.js +99 -0
  265. package/vscode/src/vs/sessions/services/sessions/browser/sessionGroupsService.d.ts +4 -0
  266. package/vscode/src/vs/sessions/services/sessions/browser/sessionGroupsService.js +88 -23
  267. package/vscode/src/vs/sessions/services/sessions/browser/sessionNavigation.d.ts +19 -26
  268. package/vscode/src/vs/sessions/services/sessions/browser/sessionNavigation.js +115 -74
  269. package/vscode/src/vs/sessions/services/sessions/browser/sessionsListModelService.js +1 -1
  270. package/vscode/src/vs/sessions/services/sessions/browser/sessionsManagementService.d.ts +22 -7
  271. package/vscode/src/vs/sessions/services/sessions/browser/sessionsManagementService.js +278 -60
  272. package/vscode/src/vs/sessions/services/sessions/browser/sessionsRecencyHistory.d.ts +17 -20
  273. package/vscode/src/vs/sessions/services/sessions/browser/sessionsRecencyHistory.js +33 -22
  274. package/vscode/src/vs/sessions/services/sessions/browser/sessionsService.d.ts +28 -8
  275. package/vscode/src/vs/sessions/services/sessions/browser/sessionsService.js +673 -160
  276. package/vscode/src/vs/sessions/services/sessions/browser/visibleSessions.d.ts +13 -4
  277. package/vscode/src/vs/sessions/services/sessions/browser/visibleSessions.js +105 -15
  278. package/vscode/src/vs/sessions/services/sessions/common/sessionContextKeys.js +53 -34
  279. package/vscode/src/vs/sessions/services/workspaceFolderLabel/browser/workspaceFolderLabelService.js +1 -1
  280. package/vscode/src/vs/workbench/browser/layout.d.ts +46 -70
  281. package/vscode/src/vs/workbench/browser/layout.js +243 -44
  282. package/vscode/src/vs/workbench/browser/workbench.d.ts +1 -3
  283. package/vscode/src/vs/workbench/browser/workbench.js +26 -24
  284. package/vscode/src/vs/workbench/contrib/chat/common/automations/schedule.d.ts +6 -0
  285. package/vscode/src/vs/workbench/contrib/chat/common/automations/schedule.js +41 -0
  286. package/vscode/src/vs/workbench/contrib/chat/common/chatUsage.d.ts +15 -0
  287. package/vscode/src/vs/workbench/contrib/chat/common/chatUsage.js +56 -0
  288. package/vscode/src/vs/platform/agentHost/common/meta/agentCheckoutOperationMeta.d.ts +0 -18
  289. package/vscode/src/vs/platform/agentHost/common/meta/agentCheckoutOperationMeta.js +0 -27
  290. package/vscode/src/vs/sessions/browser/parts/singlePaneAuxiliaryBarPart.js +0 -36
  291. package/vscode/src/vs/sessions/contrib/automations/browser/automationLeaderElection.d.ts +0 -37
  292. package/vscode/src/vs/sessions/contrib/automations/browser/automationLeaderElection.js +0 -126
  293. package/vscode/src/vs/sessions/contrib/automations/browser/automationScheduler.d.ts +0 -59
  294. package/vscode/src/vs/sessions/contrib/automations/browser/automationScheduler.js +0 -232
  295. package/vscode/src/vs/sessions/contrib/automations/browser/automationStorageService.d.ts +0 -13
  296. package/vscode/src/vs/sessions/contrib/automations/browser/automationStorageService.js +0 -22
  297. package/vscode/src/vs/sessions/contrib/blockedSessions/browser/blockedSessions.d.ts +0 -45
  298. package/vscode/src/vs/sessions/contrib/blockedSessions/browser/blockedSessions.js +0 -110
  299. package/vscode/src/vs/sessions/contrib/layout/browser/desktopSessionLayoutController.d.ts +0 -112
  300. package/vscode/src/vs/sessions/contrib/layout/browser/desktopSessionLayoutController.js +0 -444
  301. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneSharedHelpers.js +0 -43
  302. package/vscode/src/vs/sessions/contrib/layout/browser/singlePaneLayoutController.d.ts +0 -55
  303. package/vscode/src/vs/sessions/contrib/layout/browser/singlePaneLayoutController.js +0 -91
  304. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostClaudePermissionModePicker.d.ts +0 -26
  305. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostClaudePermissionModePicker.js +0 -98
  306. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostCodexApprovalsPicker.d.ts +0 -33
  307. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostCodexApprovalsPicker.js +0 -98
  308. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostModeIcon.d.ts +0 -2
  309. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostModeIcon.js +0 -13
  310. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostModePicker.d.ts +0 -122
  311. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostModePicker.js +0 -464
  312. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostPermissionPickerActionItem.d.ts +0 -35
  313. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostPermissionPickerActionItem.js +0 -90
  314. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostPermissionPickerDelegate.d.ts +0 -84
  315. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostPermissionPickerDelegate.js +0 -328
  316. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionConfigPicker.d.ts +0 -174
  317. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionConfigPicker.js +0 -1390
  318. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/media/agentHostSessionConfigPicker.css +0 -44
  319. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/mobile/mobileAgentHostModePicker.d.ts +0 -30
  320. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/mobile/mobileAgentHostModePicker.js +0 -78
  321. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/mobile/mobileChatPhoneInputTarget.d.ts +0 -11
  322. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/mobile/mobileChatPhoneInputTarget.js +0 -26
  323. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostConnectionCustomization.d.ts +0 -27
  324. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostConnectionCustomization.js +0 -26
@@ -1,4 +1,6 @@
1
1
  import { ContextKeyExpression } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey";
2
2
  import { ISpotlightStep } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/browser/spotlight/spotlightTypes";
3
3
  export declare function createNewSessionViewRecentTourWhen(): ContextKeyExpression | undefined;
4
- export declare function createNewSessionViewWorkspaceStep(): ISpotlightStep;
4
+ export declare function createNewSessionViewWorkspaceStep(options?: {
5
+ requireSelection?: boolean;
6
+ }): ISpotlightStep;
@@ -4,7 +4,7 @@ import { ContextKeyExpr } from '@codingame/monaco-vscode-api/vscode/vs/platform/
4
4
  import { EditorPartModalVisibleContext } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/contextkeys';
5
5
  import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/actions/chatContextKeys';
6
6
  import { ChatEntitlementContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService';
7
- import { IsNewChatSessionContext, AgentHostSessionTypesAvailableContext, SessionHasWorkspaceContext, SessionWorkspacePickerVisibleContext } from '@codingame/monaco-vscode-api/vscode/vs/sessions/common/contextkeys';
7
+ import { IsNewChatSessionContext, AgentHostSessionTypesAvailableContext, NewSessionOnboardingHandoffContext, SessionHasWorkspaceContext, SessionWorkspacePickerVisibleContext } from '@codingame/monaco-vscode-api/vscode/vs/sessions/common/contextkeys';
8
8
 
9
9
  function createNewSessionViewRecentTourWhen() {
10
10
  return ( ContextKeyExpr.and(
@@ -12,17 +12,22 @@ function createNewSessionViewRecentTourWhen() {
12
12
  IsNewChatSessionContext,
13
13
  AgentHostSessionTypesAvailableContext,
14
14
  ( ChatEntitlementContextKeys.Entitlement.signedOut.toNegated()),
15
- ( EditorPartModalVisibleContext.toNegated())
15
+ ( EditorPartModalVisibleContext.toNegated()),
16
+ ( NewSessionOnboardingHandoffContext.toNegated())
16
17
  ));
17
18
  }
18
- function createNewSessionViewWorkspaceStep() {
19
+ function createNewSessionViewWorkspaceStep(options = {}) {
20
+ const requireSelection = options.requireSelection ?? true;
19
21
  return {
20
22
  id: "workspacePicker",
21
23
  targetId: "sessions.newSession.workspacePicker",
22
- title: ( localize(4155, "Choose a workspace")),
23
- description: ( localize(
24
- 4156,
24
+ title: ( localize(4792, "Choose a workspace")),
25
+ description: requireSelection ? ( localize(
26
+ 4793,
25
27
  "A workspace is the folder or repository where your agent reads context and makes changes. Choose one so it can understand your project and work on the right files."
28
+ )) : ( localize(
29
+ 4794,
30
+ "A workspace is the folder or repository where your agent reads context and makes changes. Choose one for project-specific work, or continue without one."
26
31
  )),
27
32
  placement: "above",
28
33
  when: ( ContextKeyExpr.and(SessionWorkspacePickerVisibleContext, ( SessionHasWorkspaceContext.toNegated()))),
@@ -31,7 +36,7 @@ function createNewSessionViewWorkspaceStep() {
31
36
  },
32
37
  openTarget: true,
33
38
  allowTargetInteraction: true,
34
- advanceWhen: SessionHasWorkspaceContext
39
+ advanceWhen: requireSelection ? SessionHasWorkspaceContext : undefined
35
40
  };
36
41
  }
37
42
 
@@ -2,5 +2,13 @@ import { IObservable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/
2
2
  import { ISpotlightPayload } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/browser/spotlight/spotlightTypes";
3
3
  import { IOnboardingScenario } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/common/onboardingScenario";
4
4
  export declare const NEW_SESSION_VIEW_V2_TOUR_ID = "sessions.onboarding.newSessionViewV2";
5
+ export declare const NEW_SESSION_VIEW_V2_VARIATION_TREATMENT = "onb.newSessionViewV2.variation";
6
+ export declare const NEW_SESSION_VIEW_V2_VARIATIONS: readonly [
7
+ "default",
8
+ "workspaceAndModel"
9
+ ];
10
+ export type NewSessionViewV2Variation = typeof NEW_SESSION_VIEW_V2_VARIATIONS[number];
5
11
  /** Builds the interactive new-session view tour. */
6
- export declare function createNewSessionViewV2Tour(signal: IObservable<boolean>): IOnboardingScenario<ISpotlightPayload>;
12
+ export declare function createNewSessionViewV2Tour(signal: IObservable<boolean>, resolveVariation?: () => Promise<NewSessionViewV2Variation>, options?: {
13
+ enabledByDefault?: boolean;
14
+ }): IOnboardingScenario<ISpotlightPayload>;
@@ -1,11 +1,18 @@
1
1
 
2
2
  import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
3
3
  import { SPOTLIGHT_PRESENTATION_KIND } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/browser/spotlight/spotlightTypes';
4
- import { SessionHarnessPickerVisibleContext } from '@codingame/monaco-vscode-api/vscode/vs/sessions/common/contextkeys';
4
+ import { onboardingScenarioRegistry } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/common/onboardingRegistry';
5
+ import { SessionHarnessPickerVisibleContext, SessionWorkspacePickerVisibleContext } from '@codingame/monaco-vscode-api/vscode/vs/sessions/common/contextkeys';
5
6
  import { NEW_SESSION_ONBOARDING_SEEN_KEY } from './newSessionTour.js';
6
7
  import { createNewSessionViewWorkspaceStep, createNewSessionViewRecentTourWhen } from './newSessionViewTourShared.js';
7
8
 
8
9
  const NEW_SESSION_VIEW_V2_TOUR_ID = "sessions.onboarding.newSessionViewV2";
10
+ const NEW_SESSION_VIEW_V2_VARIATION_TREATMENT = "onb.newSessionViewV2.variation";
11
+ const NEW_SESSION_VIEW_V2_VARIATIONS = ["default", "workspaceAndModel"];
12
+ onboardingScenarioRegistry.registerDescriptor({
13
+ id: NEW_SESSION_VIEW_V2_TOUR_ID,
14
+ developerModeVariations: NEW_SESSION_VIEW_V2_VARIATIONS
15
+ });
9
16
  const NEW_SESSION_VIEW_V2_EXPERIMENT = {
10
17
  behaviorFlag: "onb.newSessionViewV2.show",
11
18
  assignmentContextIdFlag: "onb.newSessionViewV2.id"
@@ -14,13 +21,28 @@ const WAIT_FOR_PICKER = {
14
21
  kind: "wait",
15
22
  timeoutMs: 5_000
16
23
  };
24
+ const modelPickerStep = {
25
+ id: "modelPicker",
26
+ targetId: "sessions.newSession.modelPicker",
27
+ title: ( localize(4795, "Choose a model")),
28
+ description: ( localize(
29
+ 4796,
30
+ "The model powers your agent's reasoning. Choose one based on the balance of speed and capability your task needs."
31
+ )),
32
+ placement: "below",
33
+ missingTarget: WAIT_FOR_PICKER,
34
+ openTarget: true,
35
+ allowTargetInteraction: true
36
+ };
17
37
  const newSessionViewV2Payload = {
18
- steps: [createNewSessionViewWorkspaceStep(), {
38
+ steps: [createNewSessionViewWorkspaceStep({
39
+ requireSelection: false
40
+ }), {
19
41
  id: "harnessPicker",
20
42
  targetId: "sessions.newSession.harnessPicker",
21
- title: ( localize(4157, "Choose a harness")),
43
+ title: ( localize(4797, "Choose a harness")),
22
44
  description: ( localize(
23
- 4158,
45
+ 4798,
24
46
  "A harness is the agent runtime that plans, uses tools, and carries out your task. Choose one based on the capabilities your work needs."
25
47
  )),
26
48
  placement: "above",
@@ -28,36 +50,41 @@ const newSessionViewV2Payload = {
28
50
  openTarget: false,
29
51
  when: SessionHarnessPickerVisibleContext,
30
52
  allowTargetInteraction: true
53
+ }, modelPickerStep]
54
+ };
55
+ const workspaceAndModelPayload = {
56
+ steps: [{
57
+ ...createNewSessionViewWorkspaceStep({
58
+ requireSelection: false
59
+ }),
60
+ when: SessionWorkspacePickerVisibleContext,
61
+ openTarget: "ifUnselected",
62
+ advanceOnTargetSelection: true
31
63
  }, {
32
- id: "modelPicker",
33
- targetId: "sessions.newSession.modelPicker",
34
- title: ( localize(4159, "Choose a model")),
35
- description: ( localize(
36
- 4160,
37
- "The model powers your agent's reasoning. Choose one based on the balance of speed and capability your task needs."
38
- )),
39
- placement: "below",
40
- missingTarget: WAIT_FOR_PICKER,
41
- openTarget: true,
42
- allowTargetInteraction: true
64
+ ...modelPickerStep,
65
+ openTarget: false
43
66
  }]
44
67
  };
45
- function createNewSessionViewV2Tour(signal) {
68
+ function createNewSessionViewV2Tour(signal, resolveVariation, options = {}) {
46
69
  return {
47
70
  id: NEW_SESSION_VIEW_V2_TOUR_ID,
48
71
  seenKey: NEW_SESSION_ONBOARDING_SEEN_KEY,
72
+ developerModeVariations: NEW_SESSION_VIEW_V2_VARIATIONS,
49
73
  when: createNewSessionViewRecentTourWhen(),
50
74
  trigger: {
51
75
  kind: "observable",
52
76
  signal
53
77
  },
54
78
  priority: 110,
55
- experiment: NEW_SESSION_VIEW_V2_EXPERIMENT,
79
+ experiment: options.enabledByDefault ? undefined : NEW_SESSION_VIEW_V2_EXPERIMENT,
56
80
  presentation: {
57
81
  kind: SPOTLIGHT_PRESENTATION_KIND,
58
- payload: newSessionViewV2Payload
82
+ payload: {
83
+ ...newSessionViewV2Payload,
84
+ resolveSteps: resolveVariation ? async () => ((await resolveVariation()) === "workspaceAndModel" ? workspaceAndModelPayload : newSessionViewV2Payload).steps : undefined
85
+ }
59
86
  }
60
87
  };
61
88
  }
62
89
 
63
- export { NEW_SESSION_VIEW_V2_TOUR_ID, createNewSessionViewV2Tour };
90
+ export { NEW_SESSION_VIEW_V2_TOUR_ID, NEW_SESSION_VIEW_V2_VARIATIONS, NEW_SESSION_VIEW_V2_VARIATION_TREATMENT, createNewSessionViewV2Tour };
@@ -1,6 +1,7 @@
1
1
 
2
2
  import { RUN_ONBOARDING_STEP_KIND } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/browser/sequence/runOnboardingStep';
3
3
  import { SPOTLIGHT_PRESENTATION_KIND } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/browser/spotlight/spotlightTypes';
4
+ import { onboardingScenarioRegistry } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/common/onboardingRegistry';
4
5
  import { ONBOARDING_SEQUENCE_PRESENTATION_KIND } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/common/onboardingSequence';
5
6
  import { NEW_SESSION_ONBOARDING_SEEN_KEY } from './newSessionTour.js';
6
7
  import { createNewSessionViewWorkspaceStep, createNewSessionViewRecentTourWhen } from './newSessionViewTourShared.js';
@@ -11,6 +12,7 @@ const NEW_SESSION_VIEW_V3_GITHUB_PROMPT_VARIATION = 'githubPrompt';
11
12
  const NEW_SESSION_VIEW_V3_OPTIONS_VARIATION = 'options';
12
13
  const NEW_SESSION_VIEW_V3_VARIATION_TREATMENT = 'onb.newSessionViewV3.variation';
13
14
  const NEW_SESSION_VIEW_V3_VARIATIONS = [NEW_SESSION_VIEW_V3_PROMPT_VARIATION, NEW_SESSION_VIEW_V3_GITHUB_PROMPT_VARIATION, NEW_SESSION_VIEW_V3_OPTIONS_VARIATION];
15
+ onboardingScenarioRegistry.registerDescriptor({ id: NEW_SESSION_VIEW_V3_TOUR_ID, developerModeVariations: NEW_SESSION_VIEW_V3_VARIATIONS });
14
16
  const NEW_SESSION_VIEW_V3_EXPERIMENT = {
15
17
  behaviorFlag: 'onb.newSessionViewV3.show',
16
18
  assignmentContextIdFlag: 'onb.newSessionViewV3.id',
@@ -13,6 +13,39 @@
13
13
  background: var(--vscode-editor-background);
14
14
  }
15
15
 
16
+ .sessions-policy-blocked-overlay.update-required {
17
+ display: block;
18
+ }
19
+
20
+ .sessions-policy-blocked-overlay.update-required .sessions-policy-blocked-scrollable,
21
+ .sessions-policy-blocked-overlay.update-required .sessions-policy-blocked-scroll-content {
22
+ width: 100%;
23
+ height: 100%;
24
+ }
25
+
26
+ .sessions-policy-blocked-overlay.update-required .sessions-policy-blocked-scroll-content {
27
+ display: flex;
28
+ flex-direction: column;
29
+ align-items: center;
30
+ }
31
+
32
+ .sessions-policy-blocked-overlay.update-required .sessions-policy-blocked-card {
33
+ box-sizing: border-box;
34
+ flex-shrink: 0;
35
+ width: 100%;
36
+ max-width: 484px;
37
+ margin: auto;
38
+ overflow-wrap: anywhere;
39
+ }
40
+
41
+ .sessions-policy-blocked-overlay.update-required .sessions-policy-blocked-card > :is(h2, p, .monaco-button) {
42
+ max-width: 100%;
43
+ }
44
+
45
+ .sessions-policy-blocked-overlay.update-required .sessions-policy-blocked-card > .monaco-button {
46
+ scroll-margin-block: var(--vscode-spacing-size80);
47
+ }
48
+
16
49
  /* Hide titlebar actions while policy-blocked (class toggled in sessionsPolicyBlocked.ts) */
17
50
  .monaco-workbench.sessions-policy-blocked .part.titlebar .titlebar-right {
18
51
  visibility: hidden;
@@ -5,16 +5,18 @@ import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/pl
5
5
  import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
6
6
  import { IDefaultAccountService } from "@codingame/monaco-vscode-api/vscode/vs/platform/defaultAccount/common/defaultAccount.service";
7
7
  import { IAccountPolicyGateService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/policies/common/accountPolicyService.service";
8
+ import { IManagedSettingsUpdateService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/policies/common/managedSettingsUpdate.service";
8
9
  export declare class SessionsPolicyBlockedContribution extends Disposable implements IWorkbenchContribution {
9
10
  private readonly configurationService;
10
11
  private readonly layoutService;
11
12
  private readonly instantiationService;
12
13
  private readonly gateService;
13
14
  private readonly defaultAccountService;
15
+ private readonly managedSettingsUpdateService;
14
16
  static readonly ID = "workbench.contrib.sessionsPolicyBlocked";
15
17
  private readonly overlayRef;
16
- private currentReason;
17
- constructor(configurationService: IConfigurationService, layoutService: IWorkbenchLayoutService, instantiationService: IInstantiationService, gateService: IAccountPolicyGateService, defaultAccountService: IDefaultAccountService);
18
+ private currentOptions;
19
+ constructor(configurationService: IConfigurationService, layoutService: IWorkbenchLayoutService, instantiationService: IInstantiationService, gateService: IAccountPolicyGateService, defaultAccountService: IDefaultAccountService, managedSettingsUpdateService: IManagedSettingsUpdateService);
18
20
  private update;
19
21
  private showOverlay;
20
22
  }
@@ -11,6 +11,10 @@ import { SessionsBlockedReason, SessionsPolicyBlockedOverlay } from './sessionsP
11
11
  import { AccountPolicyGateState, AccountPolicyGateUnsatisfiedReason } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/policies/common/accountPolicyService';
12
12
  import { IAccountPolicyGateService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/policies/common/accountPolicyService.service';
13
13
  import { ManagedSettingsFreshnessState } from '@codingame/monaco-vscode-api/vscode/vs/platform/policy/common/managedSettingsFreshness';
14
+ import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
15
+ import { equals } from '@codingame/monaco-vscode-api/vscode/vs/base/common/objects';
16
+ import { IManagedSettingsUpdateService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/policies/common/managedSettingsUpdate.service';
17
+ import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
14
18
 
15
19
  let SessionsPolicyBlockedContribution = class SessionsPolicyBlockedContribution extends Disposable {
16
20
  static {
@@ -21,7 +25,8 @@ let SessionsPolicyBlockedContribution = class SessionsPolicyBlockedContribution
21
25
  layoutService,
22
26
  instantiationService,
23
27
  gateService,
24
- defaultAccountService
28
+ defaultAccountService,
29
+ managedSettingsUpdateService
25
30
  ) {
26
31
  super();
27
32
  this.configurationService = configurationService;
@@ -29,8 +34,12 @@ let SessionsPolicyBlockedContribution = class SessionsPolicyBlockedContribution
29
34
  this.instantiationService = instantiationService;
30
35
  this.gateService = gateService;
31
36
  this.defaultAccountService = defaultAccountService;
37
+ this.managedSettingsUpdateService = managedSettingsUpdateService;
32
38
  this.overlayRef = this._register(( new MutableDisposable()));
33
- this.update();
39
+ this._register(autorun(reader => {
40
+ this.managedSettingsUpdateService.updateInfo.read(reader);
41
+ this.update();
42
+ }));
34
43
  this._register(this.configurationService.onDidChangeConfiguration(e => {
35
44
  if (e.affectsConfiguration(ChatConfiguration.AgentEnabled)) {
36
45
  this.update();
@@ -39,6 +48,14 @@ let SessionsPolicyBlockedContribution = class SessionsPolicyBlockedContribution
39
48
  this._register(this.gateService.onDidChangeGateInfo(() => this.update()));
40
49
  }
41
50
  update() {
51
+ const updateInfo = this.managedSettingsUpdateService.updateInfo.get();
52
+ if (updateInfo) {
53
+ this.showOverlay({
54
+ reason: SessionsBlockedReason.UpdateRequired,
55
+ updateInfo
56
+ });
57
+ return;
58
+ }
42
59
  const gateInfo = this.gateService.gateInfo;
43
60
  const gateForcesAgentDisabled = gateInfo.state === AccountPolicyGateState.Restricted && gateInfo.reason !== AccountPolicyGateUnsatisfiedReason.PolicyNotResolved;
44
61
  const agentEnabled = this.configurationService.getValue(ChatConfiguration.AgentEnabled);
@@ -51,7 +68,7 @@ let SessionsPolicyBlockedContribution = class SessionsPolicyBlockedContribution
51
68
  if (gateInfo.state === AccountPolicyGateState.Restricted) {
52
69
  if (gateInfo.reason === AccountPolicyGateUnsatisfiedReason.NoAccount || gateInfo.reason === AccountPolicyGateUnsatisfiedReason.WrongProvider) {
53
70
  this.overlayRef.clear();
54
- this.currentReason = undefined;
71
+ this.currentOptions = undefined;
55
72
  return;
56
73
  }
57
74
  if (gateInfo.reason === AccountPolicyGateUnsatisfiedReason.PolicyNotResolved) {
@@ -77,18 +94,22 @@ let SessionsPolicyBlockedContribution = class SessionsPolicyBlockedContribution
77
94
  return;
78
95
  }
79
96
  this.overlayRef.clear();
80
- this.currentReason = undefined;
97
+ this.currentOptions = undefined;
81
98
  }
82
99
  showOverlay(options) {
83
- if (this.currentReason === options.reason && options.reason !== SessionsBlockedReason.AccountPolicyGate && options.reason !== SessionsBlockedReason.ManagedSettingsRefresh) {
100
+ if (equals(this.currentOptions, options)) {
84
101
  return;
85
102
  }
103
+ const shouldFocus = options.reason !== SessionsBlockedReason.UpdateRequired || !this.overlayRef.value || this.overlayRef.value.hasFocus();
86
104
  this.overlayRef.clear();
87
- this.currentReason = options.reason;
88
- this.overlayRef.value = this.instantiationService.createInstance(SessionsPolicyBlockedOverlay, this.layoutService.mainContainer, options);
105
+ this.currentOptions = options;
106
+ this.overlayRef.value = this.instantiationService.createInstance(SessionsPolicyBlockedOverlay, this.layoutService.mainContainer, {
107
+ ...options,
108
+ shouldFocus
109
+ });
89
110
  }
90
111
  };
91
- SessionsPolicyBlockedContribution = ( __decorate([( __param(0, IConfigurationService)), ( __param(1, IWorkbenchLayoutService)), ( __param(2, IInstantiationService)), ( __param(3, IAccountPolicyGateService)), ( __param(4, IDefaultAccountService))], SessionsPolicyBlockedContribution));
112
+ SessionsPolicyBlockedContribution = ( __decorate([( __param(0, IConfigurationService)), ( __param(1, IWorkbenchLayoutService)), ( __param(2, IInstantiationService)), ( __param(3, IAccountPolicyGateService)), ( __param(4, IDefaultAccountService)), ( __param(5, IManagedSettingsUpdateService))], SessionsPolicyBlockedContribution));
92
113
  registerWorkbenchContribution2(
93
114
  SessionsPolicyBlockedContribution.ID,
94
115
  SessionsPolicyBlockedContribution,
@@ -5,13 +5,17 @@ import { ICommandService } from "@codingame/monaco-vscode-api/vscode/vs/platform
5
5
  import { IWorkbenchLayoutService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/layout/browser/layoutService.service";
6
6
  import { IDefaultAccountService } from "@codingame/monaco-vscode-api/vscode/vs/platform/defaultAccount/common/defaultAccount.service";
7
7
  import { IManagedSettingsFreshness, ManagedSettingsFreshnessState } from "@codingame/monaco-vscode-api/vscode/vs/platform/policy/common/managedSettingsFreshness";
8
+ import { IManagedSettingsUpdateInfo } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/policies/common/managedSettingsUpdate";
9
+ import { ISessionsPartService } from "@codingame/monaco-vscode-api/vscode/vs/sessions/services/sessions/browser/sessionsPartService.service";
10
+ import { ISessionsService } from "@codingame/monaco-vscode-api/vscode/vs/sessions/services/sessions/browser/sessionsService.service";
8
11
  export declare enum SessionsBlockedReason {
9
12
  AgentDisabled = "agentDisabled",
10
13
  /** Transient loading state — blocks UI but shows only a progress bar. */
11
14
  Loading = "loading",
12
15
  /** Signed in but not in an approved org — must switch accounts. */
13
16
  AccountPolicyGate = "accountPolicyGate",
14
- ManagedSettingsRefresh = "managedSettingsRefresh"
17
+ ManagedSettingsRefresh = "managedSettingsRefresh",
18
+ UpdateRequired = "updateRequired"
15
19
  }
16
20
  export interface ISessionsBlockedOverlayOptions {
17
21
  readonly reason: SessionsBlockedReason;
@@ -20,17 +24,26 @@ export interface ISessionsBlockedOverlayOptions {
20
24
  readonly freshness?: Extract<IManagedSettingsFreshness, {
21
25
  state: ManagedSettingsFreshnessState.Blocked;
22
26
  }>;
27
+ readonly updateInfo?: IManagedSettingsUpdateInfo;
28
+ readonly shouldFocus?: boolean;
23
29
  }
24
30
  /**
25
31
  * Full-window impassable overlay shown when the Agents app is blocked.
26
32
  */
27
33
  export declare class SessionsPolicyBlockedOverlay extends Disposable {
34
+ private readonly options;
28
35
  private readonly commandService;
29
36
  private readonly openerService;
30
37
  private readonly productService;
31
38
  private readonly defaultAccountService;
39
+ private readonly sessionsPartService;
40
+ private readonly sessionsService;
32
41
  private readonly overlay;
33
- constructor(container: HTMLElement, options: ISessionsBlockedOverlayOptions, commandService: ICommandService, openerService: IOpenerService, productService: IProductService, defaultAccountService: IDefaultAccountService, layoutService: IWorkbenchLayoutService);
42
+ private readonly previouslyFocused;
43
+ constructor(container: HTMLElement, options: ISessionsBlockedOverlayOptions, commandService: ICommandService, openerService: IOpenerService, productService: IProductService, defaultAccountService: IDefaultAccountService, layoutService: IWorkbenchLayoutService, sessionsPartService: ISessionsPartService, sessionsService: ISessionsService);
44
+ hasFocus(): boolean;
45
+ dispose(): void;
46
+ private _renderUpdateRequired;
34
47
  private _renderAgentDisabled;
35
48
  private _renderLoading;
36
49
  private _renderAccountPolicyGate;