@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.
Files changed (323) 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 +10 -10
  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 -77
  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.js +1 -1
  281. package/vscode/src/vs/workbench/browser/workbench.d.ts +0 -2
  282. package/vscode/src/vs/workbench/browser/workbench.js +23 -20
  283. package/vscode/src/vs/workbench/contrib/chat/common/automations/schedule.d.ts +6 -0
  284. package/vscode/src/vs/workbench/contrib/chat/common/automations/schedule.js +41 -0
  285. package/vscode/src/vs/workbench/contrib/chat/common/chatUsage.d.ts +15 -0
  286. package/vscode/src/vs/workbench/contrib/chat/common/chatUsage.js +56 -0
  287. package/vscode/src/vs/platform/agentHost/common/meta/agentCheckoutOperationMeta.d.ts +0 -18
  288. package/vscode/src/vs/platform/agentHost/common/meta/agentCheckoutOperationMeta.js +0 -27
  289. package/vscode/src/vs/sessions/browser/parts/singlePaneAuxiliaryBarPart.js +0 -36
  290. package/vscode/src/vs/sessions/contrib/automations/browser/automationLeaderElection.d.ts +0 -37
  291. package/vscode/src/vs/sessions/contrib/automations/browser/automationLeaderElection.js +0 -126
  292. package/vscode/src/vs/sessions/contrib/automations/browser/automationScheduler.d.ts +0 -59
  293. package/vscode/src/vs/sessions/contrib/automations/browser/automationScheduler.js +0 -232
  294. package/vscode/src/vs/sessions/contrib/automations/browser/automationStorageService.d.ts +0 -13
  295. package/vscode/src/vs/sessions/contrib/automations/browser/automationStorageService.js +0 -22
  296. package/vscode/src/vs/sessions/contrib/blockedSessions/browser/blockedSessions.d.ts +0 -45
  297. package/vscode/src/vs/sessions/contrib/blockedSessions/browser/blockedSessions.js +0 -110
  298. package/vscode/src/vs/sessions/contrib/layout/browser/desktopSessionLayoutController.d.ts +0 -112
  299. package/vscode/src/vs/sessions/contrib/layout/browser/desktopSessionLayoutController.js +0 -444
  300. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneSharedHelpers.js +0 -43
  301. package/vscode/src/vs/sessions/contrib/layout/browser/singlePaneLayoutController.d.ts +0 -55
  302. package/vscode/src/vs/sessions/contrib/layout/browser/singlePaneLayoutController.js +0 -91
  303. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostClaudePermissionModePicker.d.ts +0 -26
  304. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostClaudePermissionModePicker.js +0 -98
  305. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostCodexApprovalsPicker.d.ts +0 -33
  306. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostCodexApprovalsPicker.js +0 -98
  307. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostModeIcon.d.ts +0 -2
  308. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostModeIcon.js +0 -13
  309. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostModePicker.d.ts +0 -122
  310. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostModePicker.js +0 -464
  311. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostPermissionPickerActionItem.d.ts +0 -35
  312. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostPermissionPickerActionItem.js +0 -90
  313. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostPermissionPickerDelegate.d.ts +0 -84
  314. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostPermissionPickerDelegate.js +0 -328
  315. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionConfigPicker.d.ts +0 -174
  316. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionConfigPicker.js +0 -1390
  317. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/media/agentHostSessionConfigPicker.css +0 -44
  318. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/mobile/mobileAgentHostModePicker.d.ts +0 -30
  319. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/mobile/mobileAgentHostModePicker.js +0 -78
  320. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/mobile/mobileChatPhoneInputTarget.d.ts +0 -11
  321. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/mobile/mobileChatPhoneInputTarget.js +0 -26
  322. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostConnectionCustomization.d.ts +0 -27
  323. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostConnectionCustomization.js +0 -26
@@ -8,7 +8,7 @@ import * as chatStatus from '@codingame/monaco-vscode-api/vscode/vs/workbench/co
8
8
  import Severity from '@codingame/monaco-vscode-api/vscode/vs/base/common/severity';
9
9
  import { MutableDisposable, toDisposable, DisposableStore, Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
10
10
  import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
11
- import { localize2, localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
11
+ import { localize, localize2 } from '@codingame/monaco-vscode-api/vscode/vs/nls';
12
12
  import { registerAction2, Action2, MenuRegistry } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions';
13
13
  import { IMenuService } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions.service';
14
14
  import { ContextKeyExpr } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey';
@@ -26,6 +26,7 @@ import { mainWindow } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/
26
26
  import { ActionBar, ActionsOrientation } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/actionbar/actionbar';
27
27
  import { BaseActionViewItem } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/actionbar/actionViewItems';
28
28
  import { Action, Separator } from '@codingame/monaco-vscode-api/vscode/vs/base/common/actions';
29
+ import { equals } from '@codingame/monaco-vscode-api/vscode/vs/base/common/arrays';
29
30
  import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
30
31
  import { IHoverService } from '@codingame/monaco-vscode-api/vscode/vs/platform/hover/browser/hover.service';
31
32
  import { IDialogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/dialogs/common/dialogs.service';
@@ -33,6 +34,7 @@ import { registerUpdateTitleBarMenuPlacement } from '@codingame/monaco-vscode-ap
33
34
  import { ChatEntitlement, getQuotaUsage, QuotaUsageKind, getQuotaReset, getChatPlanName } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService';
34
35
  import { IChatEntitlementService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService.service';
35
36
  import { ChatStatusDashboard } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard';
37
+ import { getCodexRateLimits, getCodexRateLimitLabel } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatStatus/codexStatusDashboard';
36
38
  import { HoverPosition } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/hover/hoverWidget';
37
39
  import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
38
40
  import { getAccountTitleBarState, resolveAccountInfo, getAccountTitleBarBadgeKey, getAccountProfileImageUrl } from '@codingame/monaco-vscode-api/vscode/vs/sessions/browser/accountTitleBarState';
@@ -44,13 +46,10 @@ import { IAuthenticationUsageService } from '@codingame/monaco-vscode-api/vscode
44
46
  import { ACCOUNTS_AVATAR_SETTING } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/authentication/common/authentication';
45
47
  import { IAuthenticationService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/authentication/common/authentication.service';
46
48
  import '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/extensions';
47
- import { shouldShowCodexAccount, hasSignedInCodexChatGPTAccount, createCodexAccountMenuActions } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/agentHost/browser/codexAccountService';
49
+ import { shouldShowCodexAccount, hasSignedInCodexChatGPTAccount, createCodexAccountMenuActions, getCodexAccountPlanName } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/agentHost/browser/codexAccountService';
48
50
  import { ICodexAccountService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/agentHost/browser/codexAccountService.service';
49
51
  import { ICommandService } from '@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service';
50
52
  import { MANAGE_CHAT_COMMAND_ID } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
51
- import '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement';
52
- import { AICustomizationManagementCommands, AICustomizationManagementSection } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService';
53
- import { SessionType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService';
54
53
  import { safeIntl, fromNow } from '@codingame/monaco-vscode-api/vscode/vs/base/common/date';
55
54
  import { language } from '@codingame/monaco-vscode-api/vscode/vs/base/common/platform';
56
55
  import { AgentHostCodexAgentEnabledSettingId } from '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/agentService';
@@ -59,6 +58,7 @@ import { CHAT_SETUP_ACTION_ID } from '@codingame/monaco-vscode-api/vscode/vs/wor
59
58
  import { AGENTIC_SIGN_IN_COMMAND_ID } from '@codingame/monaco-vscode-api/vscode/vs/sessions/common/sessionCommands';
60
59
  import { SessionsChatPetAchievementBadges } from './chatPetAchievementBadges.js';
61
60
  import { CHAT_PET_OPEN_ACHIEVEMENTS_COMMAND_ID } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatPetAchievements';
61
+ import { CHAT_PET_CHANGE_COLOR_COMMAND_ID } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatPetColors';
62
62
  import { runOnChange } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/utils/runOnChange';
63
63
 
64
64
  registerCss(sidebarActionButton, 0);
@@ -74,6 +74,11 @@ const accountDateFormatter = safeIntl.DateTimeFormat(language, {
74
74
  month: "short",
75
75
  day: "numeric"
76
76
  });
77
+ const accountFullDateFormatter = safeIntl.DateTimeFormat(language, {
78
+ month: "short",
79
+ day: "numeric",
80
+ year: "numeric"
81
+ });
77
82
  const accountTimeFormatter = safeIntl.DateTimeFormat(language, {
78
83
  hour: "numeric",
79
84
  minute: "numeric"
@@ -81,6 +86,21 @@ const accountTimeFormatter = safeIntl.DateTimeFormat(language, {
81
86
  function shouldShowAccountPanelSummary(state, hasCopilotDashboard, isAccountLoading) {
82
87
  return !hasCopilotDashboard && !isAccountLoading && !(state.source === "copilot" && state.kind === "prominent");
83
88
  }
89
+ function getChatGPTRateLimitResetHover(rateLimit) {
90
+ if (!rateLimit.resetsAt) {
91
+ return undefined;
92
+ }
93
+ const resetDate = ( new Date(rateLimit.resetsAt * 1000));
94
+ if (rateLimit.windowDurationMins !== undefined && rateLimit.windowDurationMins < 24 * 60) {
95
+ return localize(3570, "Resets at {0}", accountTimeFormatter.value.format(resetDate));
96
+ }
97
+ return localize(
98
+ 3571,
99
+ "Resets on {0} at {1}",
100
+ accountFullDateFormatter.value.format(resetDate),
101
+ accountTimeFormatter.value.format(resetDate)
102
+ );
103
+ }
84
104
  registerUpdateTitleBarMenuPlacement(Menus.TitleBarLeftLayout, {
85
105
  group: "navigation",
86
106
  order: 2,
@@ -90,7 +110,7 @@ registerAction2(class extends Action2 {
90
110
  constructor() {
91
111
  super({
92
112
  id: AGENTIC_SIGN_IN_COMMAND_ID,
93
- title: ( localize2(3193, "Sign in to use GitHub Copilot")),
113
+ title: ( localize2(3572, "Sign in with GitHub")),
94
114
  icon: Codicon.signIn,
95
115
  menu: {
96
116
  id: AccountMenu,
@@ -108,7 +128,7 @@ registerAction2(class extends Action2 {
108
128
  constructor() {
109
129
  super({
110
130
  id: "workbench.action.agenticSignOut",
111
- title: ( localize2(3194, "Sign Out")),
131
+ title: ( localize2(3573, "Sign Out")),
112
132
  icon: Codicon.signOut,
113
133
  menu: {
114
134
  id: AccountMenu,
@@ -134,9 +154,9 @@ registerAction2(class extends Action2 {
134
154
  confirmed
135
155
  } = await dialogService.confirm({
136
156
  type: Severity.Info,
137
- message: ( localize(3195, "Sign out of the Agents window?")),
138
- detail: ( localize(3196, "This will sign out '{0}' from the Agents window.", accountLabel)),
139
- primaryButton: ( localize(3197, "&&Sign Out"))
157
+ message: ( localize(3574, "Sign out of the Agents window?")),
158
+ detail: ( localize(3575, "This will sign out '{0}' from the Agents window.", accountLabel)),
159
+ primaryButton: ( localize(3576, "&&Sign Out"))
140
160
  });
141
161
  if (!confirmed) {
142
162
  return;
@@ -153,7 +173,7 @@ registerAction2(class extends Action2 {
153
173
  MenuRegistry.appendMenuItem(AccountMenu, {
154
174
  command: {
155
175
  id: "workbench.action.openSettings",
156
- title: ( localize(3198, "Settings")),
176
+ title: ( localize(3577, "Settings")),
157
177
  icon: Codicon.settingsGear
158
178
  },
159
179
  when: ( IsPhoneLayoutContext.negate()),
@@ -251,7 +271,7 @@ let TitleBarAccountWidget = class TitleBarAccountWidget extends BaseActionViewIt
251
271
  container.setAttribute("role", "button");
252
272
  container.tabIndex = 0;
253
273
  this.avatarElement = append(container, $("img.sessions-account-titlebar-widget-avatar", {
254
- alt: ( localize(3199, "Account profile image")),
274
+ alt: ( localize(3578, "Account profile image")),
255
275
  draggable: "false"
256
276
  }));
257
277
  this.avatarElement.decoding = "async";
@@ -332,16 +352,16 @@ let TitleBarAccountWidget = class TitleBarAccountWidget extends BaseActionViewIt
332
352
  }
333
353
  getAvatarAltText(hasLoadedAvatar) {
334
354
  if (hasLoadedAvatar && this.accountProviderId === "github" && this.accountName) {
335
- return localize(3200, "GitHub profile image for {0}", this.accountName);
355
+ return localize(3579, "GitHub profile image for {0}", this.accountName);
336
356
  }
337
- return localize(3199, "Account profile image");
357
+ return localize(3578, "Account profile image");
338
358
  }
339
359
  getCodexAvatarAltText() {
340
360
  return this.codexAccountService.account.email ? ( localize(
341
- 3201,
361
+ 3580,
342
362
  "ChatGPT profile image for {0}",
343
363
  this.codexAccountService.account.email
344
- )) : ( localize(3202, "ChatGPT profile image"));
364
+ )) : ( localize(3581, "ChatGPT profile image"));
345
365
  }
346
366
  renderCodexPanelAvatar() {
347
367
  if (!this.codexPanelAvatarElement || !this.codexPanelIconElement) {
@@ -516,14 +536,14 @@ let TitleBarAccountWidget = class TitleBarAccountWidget extends BaseActionViewIt
516
536
  fillInActionBarActions(menu.getActions(), rawActions);
517
537
  menu.dispose();
518
538
  const codexAccount = this.codexAccountService.account;
519
- const codexAccountVisible = shouldShowCodexAccount(this.configurationService, true);
539
+ const codexAccountVisible = !this.isAccountLoading && shouldShowCodexAccount(this.configurationService, true);
520
540
  const partitioned = this.partitionMenuActions(rawActions);
521
541
  const identities = append(panel, $(".sessions-account-titlebar-panel-identities"));
522
542
  if (this.accountName || this.isAccountLoading) {
523
543
  const copilotAccount = append(
524
544
  identities,
525
545
  $("section.sessions-account-titlebar-panel-provider-account", {
526
- "aria-label": ( localize(3203, "Copilot account"))
546
+ "aria-label": ( localize(3582, "Copilot account"))
527
547
  })
528
548
  );
529
549
  const copilotIdentity = append(copilotAccount, $(".sessions-account-titlebar-panel-provider-identity"));
@@ -553,17 +573,16 @@ let TitleBarAccountWidget = class TitleBarAccountWidget extends BaseActionViewIt
553
573
  this.hoverService.hideHover(true);
554
574
  this.clickPanelDisposable.clear();
555
575
  }));
556
- copilotActionBar.push(panelStore.add(( new Action("copilot.manageModels", ( localize(3204, "Manage Copilot Models")), ThemeIcon.asClassName(Codicon.copilot), true, () => this.commandService.executeCommand(MANAGE_CHAT_COMMAND_ID, "@provider:\"Copilot\"")))), {
557
- icon: true,
558
- label: false
559
- });
560
- copilotActionBar.push(panelStore.add(( new Action("copilot.openAgentCustomizations", ( localize(3205, "Agent Customizations for Copilot")), ThemeIcon.asClassName(Codicon.settingsGear), true, () => this.commandService.executeCommand(AICustomizationManagementCommands.OpenEditor, {
561
- sessionType: SessionType.AgentHostCopilot,
562
- section: AICustomizationManagementSection.Agents
563
- })))), {
576
+ copilotActionBar.push(panelStore.add(( new Action("copilot.manageModels", ( localize(3583, "Manage Copilot Models")), ThemeIcon.asClassName(Codicon.copilot), true, () => this.commandService.executeCommand(MANAGE_CHAT_COMMAND_ID, "@provider:\"Copilot\"")))), {
564
577
  icon: true,
565
578
  label: false
566
579
  });
580
+ for (const action of partitioned.personalize) {
581
+ copilotActionBar.push(action, {
582
+ icon: true,
583
+ label: false
584
+ });
585
+ }
567
586
  if (partitioned.signOut) {
568
587
  copilotActionBar.push(partitioned.signOut, {
569
588
  icon: true,
@@ -575,7 +594,7 @@ let TitleBarAccountWidget = class TitleBarAccountWidget extends BaseActionViewIt
575
594
  const copilotAccount = append(
576
595
  identities,
577
596
  $("section.sessions-account-titlebar-panel-provider-account.signed-out", {
578
- "aria-label": ( localize(3203, "Copilot account"))
597
+ "aria-label": ( localize(3582, "Copilot account"))
579
598
  })
580
599
  );
581
600
  const copilotIdentity = append(copilotAccount, $(".sessions-account-titlebar-panel-provider-identity"));
@@ -601,7 +620,7 @@ let TitleBarAccountWidget = class TitleBarAccountWidget extends BaseActionViewIt
601
620
  const accountSection = append(
602
621
  identities,
603
622
  $("section.sessions-account-titlebar-panel-provider-account", {
604
- "aria-label": ( localize(3206, "ChatGPT account"))
623
+ "aria-label": ( localize(3584, "ChatGPT account"))
605
624
  })
606
625
  );
607
626
  const accountIdentity = append(accountSection, $(".sessions-account-titlebar-panel-provider-identity"));
@@ -630,36 +649,35 @@ let TitleBarAccountWidget = class TitleBarAccountWidget extends BaseActionViewIt
630
649
  }
631
650
  }));
632
651
  const accountName = append(accountIdentity, $(".sessions-account-titlebar-panel-provider-name"));
633
- accountName.textContent = codexAccount.email ?? ( localize(3207, "ChatGPT"));
652
+ accountName.textContent = codexAccount.email ?? ( localize(3585, "ChatGPT"));
634
653
  const accountActions = append(accountIdentity, $(".sessions-account-titlebar-panel-provider-actions"));
635
654
  const accountActionBar = panelStore.add(( new ActionBar(accountActions)));
636
655
  panelStore.add(accountActionBar.onWillRun(() => {
637
656
  this.hoverService.hideHover(true);
638
657
  this.clickPanelDisposable.clear();
639
658
  }));
640
- accountActionBar.push(panelStore.add(( new Action("codex.manageChatGPTModels", ( localize(3208, "Manage ChatGPT Models")), ThemeIcon.asClassName(Codicon.openai), true, () => this.commandService.executeCommand(MANAGE_CHAT_COMMAND_ID, "@provider:\"ChatGPT\"")))), {
659
+ accountActionBar.push(panelStore.add(( new Action("codex.manageChatGPTModels", ( localize(3586, "Manage ChatGPT Models")), ThemeIcon.asClassName(Codicon.openai), true, () => this.commandService.executeCommand(MANAGE_CHAT_COMMAND_ID, "@provider:\"ChatGPT\"")))), {
641
660
  icon: true,
642
661
  label: false
643
662
  });
644
- accountActionBar.push(panelStore.add(( new Action("codex.openAgentCustomizations", ( localize(3209, "Agent Customizations for Codex")), ThemeIcon.asClassName(Codicon.settingsGear), true, () => this.commandService.executeCommand(AICustomizationManagementCommands.OpenEditor, {
645
- sessionType: SessionType.AgentHostCodex,
646
- section: AICustomizationManagementSection.HarnessSettings
647
- })))), {
648
- icon: true,
649
- label: false
650
- });
651
- accountActionBar.push(panelStore.add(( new Action("codex.signOutOfChatGPT", ( localize(3210, "Sign Out")), ThemeIcon.asClassName(Codicon.signOut), true, () => this.codexAccountService.signOut()))), {
663
+ for (const action of partitioned.personalize) {
664
+ accountActionBar.push(action, {
665
+ icon: true,
666
+ label: false
667
+ });
668
+ }
669
+ accountActionBar.push(panelStore.add(( new Action("codex.signOutOfChatGPT", ( localize(3587, "Sign Out")), ThemeIcon.asClassName(Codicon.signOut), true, () => this.codexAccountService.signOut()))), {
652
670
  icon: true,
653
671
  label: false
654
672
  });
655
- this.appendChatGPTUsage(accountSection);
673
+ this.appendChatGPTUsage(accountSection, panelStore);
656
674
  } else {
657
675
  const codexAccountActions = createCodexAccountMenuActions(this.codexAccountService, codexAccountVisible);
658
676
  if (codexAccountActions.length) {
659
677
  const accountSection = append(
660
678
  identities,
661
679
  $("section.sessions-account-titlebar-panel-provider-account.signed-out", {
662
- "aria-label": ( localize(3206, "ChatGPT account"))
680
+ "aria-label": ( localize(3584, "ChatGPT account"))
663
681
  })
664
682
  );
665
683
  const accountIdentity = append(accountSection, $(".sessions-account-titlebar-panel-provider-identity"));
@@ -684,16 +702,20 @@ let TitleBarAccountWidget = class TitleBarAccountWidget extends BaseActionViewIt
684
702
  }
685
703
  }
686
704
  }
687
- panelStore.add(
688
- this.instantiationService.createInstance(SessionsChatPetAchievementBadges, panel, () => {
689
- this.hoverService.hideHover(true);
690
- this.clickPanelDisposable.clear();
691
- void this.commandService.executeCommand(CHAT_PET_OPEN_ACHIEVEMENTS_COMMAND_ID);
692
- })
693
- );
705
+ if (!this.chatEntitlementService.sentiment.hidden) {
706
+ panelStore.add(
707
+ this.instantiationService.createInstance(SessionsChatPetAchievementBadges, panel, tab => {
708
+ this.hoverService.hideHover(true);
709
+ this.clickPanelDisposable.clear();
710
+ void this.commandService.executeCommand(
711
+ tab === "color" ? CHAT_PET_CHANGE_COLOR_COMMAND_ID : CHAT_PET_OPEN_ACHIEVEMENTS_COMMAND_ID
712
+ );
713
+ })
714
+ );
715
+ }
694
716
  if (this.shouldShowCopilotDashboardHover()) {
695
717
  const footer = append(panel, $("section.sessions-account-titlebar-panel-footer", {
696
- "aria-label": ( localize(3211, "Account status"))
718
+ "aria-label": ( localize(3588, "Account status"))
697
719
  }));
698
720
  append(footer, this.createCopilotHoverContent({
699
721
  compactQuotaLayout: true
@@ -766,12 +788,12 @@ let TitleBarAccountWidget = class TitleBarAccountWidget extends BaseActionViewIt
766
788
  if (quotaUsage.kind === QuotaUsageKind.CreditsUsed) {
767
789
  const creditsFormatted = formatter.value.format(quotaUsage.creditsUsed);
768
790
  append(planRow, $("span.sessions-account-titlebar-panel-provider-usage-value", {
769
- "aria-label": ( localize(3212, "{0} credits used", creditsFormatted))
791
+ "aria-label": ( localize(3589, "{0} credits used", creditsFormatted))
770
792
  }, creditsFormatted));
771
793
  } else {
772
794
  const usedPercentage = Math.floor(quotaUsage.usedPercentage);
773
- const percentageLabel = ( localize(3213, "{0}%", usedPercentage));
774
- const percentageAriaLabel = ( localize(3214, "{0}% credits used", usedPercentage));
795
+ const percentageLabel = ( localize(3590, "{0}%", usedPercentage));
796
+ const percentageAriaLabel = ( localize(3591, "{0}% credits used", usedPercentage));
775
797
  const {
776
798
  used,
777
799
  total
@@ -786,13 +808,13 @@ let TitleBarAccountWidget = class TitleBarAccountWidget extends BaseActionViewIt
786
808
  usageValue.setAttribute("aria-label", percentageAriaLabel);
787
809
  if (used !== undefined && total !== undefined) {
788
810
  const creditsValue = ( localize(
789
- 3215,
811
+ 3592,
790
812
  "{0} / {1}",
791
813
  formatter.value.format(used),
792
814
  formatter.value.format(total)
793
815
  ));
794
816
  const creditsAriaLabel = ( localize(
795
- 3216,
817
+ 3593,
796
818
  "{0} / {1} credits used",
797
819
  formatter.value.format(used),
798
820
  formatter.value.format(total)
@@ -825,52 +847,53 @@ let TitleBarAccountWidget = class TitleBarAccountWidget extends BaseActionViewIt
825
847
  append(detailRow, $(
826
848
  "span.sessions-account-titlebar-panel-provider-usage-label",
827
849
  undefined,
828
- ( localize(3217, "Credits used"))
850
+ ( localize(3594, "Credits used"))
829
851
  ));
830
852
  }
831
- appendChatGPTUsage(accountSection) {
853
+ appendChatGPTUsage(accountSection, panelStore) {
832
854
  const account = this.codexAccountService.account;
833
855
  const usage = append(accountSection, $(".sessions-account-titlebar-panel-provider-usage"));
834
856
  const planRow = append(usage, $(".sessions-account-titlebar-panel-provider-metric-row.primary"));
835
857
  append(planRow, $(
836
858
  "span.sessions-account-titlebar-panel-provider-plan",
837
859
  undefined,
838
- account.planType ? ( localize(
839
- 3218,
840
- "ChatGPT {0}",
841
- account.planType.charAt(0).toUpperCase() + account.planType.slice(1)
842
- )) : ( localize(3219, "ChatGPT subscription"))
860
+ getCodexAccountPlanName(account)
843
861
  ));
844
- if (!account.rateLimit) {
845
- return;
846
- }
847
862
  const percentageFormatter = safeIntl.NumberFormat(language, {
848
863
  maximumFractionDigits: 0
849
864
  });
850
- const usedPercentage = percentageFormatter.value.format(account.rateLimit.usedPercent);
851
- append(planRow, $("span.sessions-account-titlebar-panel-provider-usage-value", {
852
- "aria-label": ( localize(3220, "{0}% used", usedPercentage))
853
- }, ( localize(3221, "{0}%", usedPercentage))));
854
- const detailRow = append(usage, $(".sessions-account-titlebar-panel-provider-metric-row.secondary"));
855
- if (account.rateLimit.resetsAt) {
865
+ for (const rateLimit of getCodexRateLimits(account)) {
866
+ const limitLabel = getCodexRateLimitLabel(rateLimit.windowDurationMins);
867
+ const usedPercentage = percentageFormatter.value.format(rateLimit.usedPercent);
868
+ const detailRow = append(usage, $(".sessions-account-titlebar-panel-provider-metric-row.secondary"));
869
+ const description = rateLimit.resetsAt ? ( localize(
870
+ 3595,
871
+ "{0} resets {1}",
872
+ limitLabel,
873
+ fromNow(rateLimit.resetsAt * 1000, false, true)
874
+ )) : limitLabel;
856
875
  append(detailRow, $(
857
876
  "span.sessions-account-titlebar-panel-provider-reset",
858
877
  undefined,
859
- ( localize(
860
- 3222,
861
- "{0} resets {1}",
862
- this.getChatGPTLimitLabel(account.rateLimit.windowDurationMins),
863
- fromNow(account.rateLimit.resetsAt * 1000, false, true)
864
- ))
878
+ description
865
879
  ));
866
- } else {
867
- detailRow.classList.add("without-reset");
880
+ append(
881
+ detailRow,
882
+ $("span.sessions-account-titlebar-panel-provider-usage-value", {
883
+ "aria-label": ( localize(3596, "{0}: {1}% used", limitLabel, usedPercentage))
884
+ }, ( localize(3597, "{0}% used", usedPercentage)))
885
+ );
886
+ const resetHover = getChatGPTRateLimitResetHover(rateLimit);
887
+ if (resetHover) {
888
+ detailRow.tabIndex = 0;
889
+ detailRow.setAttribute("aria-label", ( localize(3598, "{0}, {1}% used. {2}", description, usedPercentage, resetHover)));
890
+ panelStore.add(this.hoverService.setupDelayedHover(detailRow, {
891
+ content: resetHover
892
+ }, {
893
+ setupKeyboardEvents: true
894
+ }));
895
+ }
868
896
  }
869
- append(detailRow, $(
870
- "span.sessions-account-titlebar-panel-provider-usage-label",
871
- undefined,
872
- ( localize(3223, "Limit used"))
873
- ));
874
897
  }
875
898
  getCopilotResetLabel(quota) {
876
899
  const reset = getQuotaReset(quota, this.chatEntitlementService.quotas);
@@ -878,22 +901,11 @@ let TitleBarAccountWidget = class TitleBarAccountWidget extends BaseActionViewIt
878
901
  return undefined;
879
902
  }
880
903
  return reset.hasTime ? ( localize(
881
- 3224,
904
+ 3599,
882
905
  "Resets {0} at {1}",
883
906
  accountDateFormatter.value.format(reset.date),
884
907
  accountTimeFormatter.value.format(reset.date)
885
- )) : ( localize(3225, "Resets {0}", accountDateFormatter.value.format(reset.date)));
886
- }
887
- getChatGPTLimitLabel(windowDurationMins) {
888
- if (windowDurationMins !== undefined) {
889
- if (Math.abs(windowDurationMins - 7 * 24 * 60) <= 60) {
890
- return localize(3226, "Weekly limit");
891
- }
892
- if (Math.abs(windowDurationMins - 24 * 60) <= 60) {
893
- return localize(3227, "Daily limit");
894
- }
895
- }
896
- return localize(3228, "Usage limit");
908
+ )) : ( localize(3600, "Resets {0}", accountDateFormatter.value.format(reset.date)));
897
909
  }
898
910
  partitionMenuActions(rawActions) {
899
911
  let signIn;
@@ -946,9 +958,9 @@ let TitleBarAccountWidget = class TitleBarAccountWidget extends BaseActionViewIt
946
958
  return this.accountName;
947
959
  }
948
960
  if (this.isAccountLoading) {
949
- return localize(3229, "Loading Account...");
961
+ return localize(3601, "Loading Account...");
950
962
  }
951
- return localize(3230, "Account");
963
+ return localize(3602, "Account");
952
964
  }
953
965
  getCopilotPlanLabel() {
954
966
  switch (this.chatEntitlementService.entitlement) {
@@ -989,13 +1001,19 @@ let TitleBarAccountWidget = class TitleBarAccountWidget extends BaseActionViewIt
989
1001
  };
990
1002
  TitleBarAccountWidget = ( __decorate([( __param(2, IDefaultAccountService)), ( __param(3, IAuthenticationService)), ( __param(4, IMenuService)), ( __param(5, IContextKeyService)), ( __param(6, IHoverService)), ( __param(7, IInstantiationService)), ( __param(8, IChatEntitlementService)), ( __param(9, ICodexAccountService)), ( __param(10, IConfigurationService)), ( __param(11, ICommandService))], TitleBarAccountWidget));
991
1003
  function hasCodexAccountPanelContentChanged(previous, current) {
992
- return previous.status !== current.status || previous.email !== current.email || previous.planType !== current.planType || previous.requiresOpenaiAuth !== current.requiresOpenaiAuth || previous.authUrl !== current.authUrl || previous.authUrlNonce !== current.authUrlNonce || previous.rateLimit?.usedPercent !== current.rateLimit?.usedPercent || previous.rateLimit?.windowDurationMins !== current.rateLimit?.windowDurationMins || previous.rateLimit?.resetsAt !== current.rateLimit?.resetsAt;
1004
+ const previousRateLimits = getCodexRateLimits(previous);
1005
+ const currentRateLimits = getCodexRateLimits(current);
1006
+ return previous.status !== current.status || previous.email !== current.email || previous.planType !== current.planType || previous.requiresOpenaiAuth !== current.requiresOpenaiAuth || previous.authUrl !== current.authUrl || previous.authUrlNonce !== current.authUrlNonce || !equals(
1007
+ previousRateLimits,
1008
+ currentRateLimits,
1009
+ (a, b) => a.usedPercent === b.usedPercent && a.windowDurationMins === b.windowDurationMins && a.resetsAt === b.resetsAt
1010
+ );
993
1011
  }
994
1012
  registerAction2(class extends Action2 {
995
1013
  constructor() {
996
1014
  super({
997
1015
  id: SessionsTitleBarAccountWidgetAction,
998
- title: ( localize2(3231, "Agents Account and Status")),
1016
+ title: ( localize2(3603, "Agents Account and Status")),
999
1017
  menu: {
1000
1018
  id: Menus.TitleBarRightLayout,
1001
1019
  group: "navigation",
@@ -1049,4 +1067,4 @@ let ChatDashboardServiceImpl = class ChatDashboardServiceImpl {
1049
1067
  };
1050
1068
  ChatDashboardServiceImpl = ( __decorate([( __param(0, IInstantiationService))], ChatDashboardServiceImpl));
1051
1069
 
1052
- export { ChatDashboardServiceImpl, shouldShowAccountPanelSummary };
1070
+ export { AccountWidgetContribution, ChatDashboardServiceImpl, TitleBarAccountWidget, getChatGPTRateLimitResetHover, shouldShowAccountPanelSummary };
@@ -4,20 +4,21 @@ import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log
4
4
  import { IThemeService } from "@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/themeService.service";
5
5
  import { ChatPetAchievementId, IChatPetAchievement } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatPetAchievements";
6
6
  import { IChatPetService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatPetService.service";
7
+ import { ChatPetCustomizationTab } from "@codingame/monaco-vscode-chat-service-override/vscode/vs/workbench/contrib/chat/browser/chatPetAchievementsEditorInput";
7
8
  export interface ISessionsChatPetAchievementBadge {
8
9
  readonly achievement: IChatPetAchievement;
9
10
  readonly unlocked: boolean;
10
11
  }
11
12
  export declare function getSessionsChatPetAchievementBadges(enabled: boolean, unlockedAchievements: readonly ChatPetAchievementId[]): readonly ISessionsChatPetAchievementBadge[] | undefined;
12
13
  export declare class SessionsChatPetAchievementBadges extends Disposable {
13
- private readonly onOpenAchievements;
14
+ private readonly onOpenCustomization;
14
15
  private readonly chatPetService;
15
16
  private readonly themeService;
16
17
  private readonly hoverService;
17
18
  private readonly logService;
18
19
  readonly element: HTMLElement;
19
20
  private readonly renderDisposables;
20
- constructor(parent: HTMLElement, onOpenAchievements: () => void, chatPetService: IChatPetService, themeService: IThemeService, hoverService: IHoverService, logService: ILogService);
21
+ constructor(parent: HTMLElement, onOpenCustomization: (tab: ChatPetCustomizationTab) => void, chatPetService: IChatPetService, themeService: IThemeService, hoverService: IHoverService, logService: ILogService);
21
22
  private render;
22
23
  private createUnlockedBadgeButton;
23
24
  }