@codingame/monaco-vscode-workbench-service-override 37.2.0 → 37.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (325) hide show
  1. package/common.d.ts +3 -0
  2. package/common.js +29 -0
  3. package/index.d.ts +1 -1
  4. package/index.js +25 -32
  5. package/package.json +18 -8
  6. package/session.d.ts +4 -0
  7. package/session.js +260 -0
  8. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostLocationPreferenceService.d.ts +24 -0
  9. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostLocationPreferenceService.js +71 -0
  10. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostLocationPreference.d.ts +7 -0
  11. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostLocationPreference.js +7 -0
  12. package/vscode/src/vs/sessions/browser/dockedAuxiliaryBarController.d.ts +50 -0
  13. package/vscode/src/vs/sessions/browser/dockedAuxiliaryBarController.js +120 -0
  14. package/vscode/src/vs/sessions/browser/media/sessions-logo-dark.svg +6 -0
  15. package/vscode/src/vs/sessions/browser/media/sessions-logo-light.svg +6 -0
  16. package/vscode/src/vs/sessions/browser/media/sessionsSetUp.css +72 -0
  17. package/vscode/src/vs/sessions/browser/parts/chatCompositeBar.d.ts +116 -0
  18. package/vscode/src/vs/sessions/browser/parts/chatCompositeBar.js +566 -0
  19. package/vscode/src/vs/sessions/browser/parts/chatGroupDropTarget.d.ts +43 -0
  20. package/vscode/src/vs/sessions/browser/parts/chatGroupDropTarget.js +308 -0
  21. package/vscode/src/vs/sessions/browser/parts/chatGroupView.d.ts +108 -0
  22. package/vscode/src/vs/sessions/browser/parts/chatGroupView.js +324 -0
  23. package/vscode/src/vs/sessions/browser/parts/chatGroupsView.d.ts +136 -0
  24. package/vscode/src/vs/sessions/browser/parts/chatGroupsView.js +771 -0
  25. package/vscode/src/vs/sessions/browser/parts/customViewGridPart.d.ts +43 -0
  26. package/vscode/src/vs/sessions/browser/parts/customViewGridPart.js +113 -0
  27. package/vscode/src/vs/sessions/browser/parts/customViewGridParts.d.ts +17 -0
  28. package/vscode/src/vs/sessions/browser/parts/customViewGridParts.js +31 -0
  29. package/vscode/src/vs/sessions/browser/parts/customViewNode.d.ts +24 -0
  30. package/vscode/src/vs/sessions/browser/parts/customViewNode.js +131 -0
  31. package/vscode/src/vs/sessions/browser/parts/editorPart.d.ts +11 -0
  32. package/vscode/src/vs/sessions/browser/parts/editorPart.js +36 -0
  33. package/vscode/src/vs/sessions/browser/parts/editorParts.d.ts +12 -0
  34. package/vscode/src/vs/sessions/browser/parts/editorParts.js +45 -0
  35. package/vscode/src/vs/sessions/browser/parts/media/chatCompositeBar.css +559 -0
  36. package/vscode/src/vs/sessions/browser/parts/media/chatGroupDropTarget.css +27 -0
  37. package/vscode/src/vs/sessions/browser/parts/media/chatGroupsView.css +60 -0
  38. package/vscode/src/vs/sessions/browser/parts/media/customViewGridPart.css +108 -0
  39. package/vscode/src/vs/sessions/browser/parts/media/editorPart.css +210 -0
  40. package/vscode/src/vs/sessions/browser/parts/media/remoteHostUnavailableEmptyState.css +81 -0
  41. package/vscode/src/vs/sessions/browser/parts/media/sessionDropTarget.css +31 -0
  42. package/vscode/src/vs/sessions/browser/parts/media/sessionReadOnlyBanner.css +87 -0
  43. package/vscode/src/vs/sessions/browser/parts/media/sessionView.css +107 -0
  44. package/vscode/src/vs/sessions/browser/parts/media/sessionsPart.css +134 -0
  45. package/vscode/src/vs/sessions/browser/parts/menubar.contribution.d.ts +1 -0
  46. package/vscode/src/vs/sessions/browser/parts/menubar.contribution.js +79 -0
  47. package/vscode/src/vs/sessions/browser/parts/mobile/mobileCustomViewGridPart.d.ts +13 -0
  48. package/vscode/src/vs/sessions/browser/parts/mobile/mobileCustomViewGridPart.js +33 -0
  49. package/vscode/src/vs/sessions/browser/parts/mobile/mobileSessionsPart.d.ts +14 -0
  50. package/vscode/src/vs/sessions/browser/parts/mobile/mobileSessionsPart.js +34 -0
  51. package/vscode/src/vs/sessions/browser/parts/remoteHostUnavailableEmptyState.d.ts +39 -0
  52. package/vscode/src/vs/sessions/browser/parts/remoteHostUnavailableEmptyState.js +136 -0
  53. package/vscode/src/vs/sessions/browser/parts/sessionBarStyles.d.ts +9 -0
  54. package/vscode/src/vs/sessions/browser/parts/sessionBarStyles.js +62 -0
  55. package/vscode/src/vs/sessions/browser/parts/sessionDropTarget.d.ts +39 -0
  56. package/vscode/src/vs/sessions/browser/parts/sessionDropTarget.js +261 -0
  57. package/vscode/src/vs/sessions/browser/parts/sessionHeader.d.ts +97 -0
  58. package/vscode/src/vs/sessions/browser/parts/sessionHeader.js +345 -0
  59. package/vscode/src/vs/sessions/browser/parts/sessionReadOnlyBanner.d.ts +43 -0
  60. package/vscode/src/vs/sessions/browser/parts/sessionReadOnlyBanner.js +69 -0
  61. package/vscode/src/vs/sessions/browser/parts/sessionRemoteConnection.d.ts +79 -0
  62. package/vscode/src/vs/sessions/browser/parts/sessionRemoteConnection.js +363 -0
  63. package/vscode/src/vs/sessions/browser/parts/sessionView.d.ts +125 -0
  64. package/vscode/src/vs/sessions/browser/parts/sessionView.js +300 -0
  65. package/vscode/src/vs/sessions/browser/parts/sessionsPart.d.ts +124 -0
  66. package/vscode/src/vs/sessions/browser/parts/sessionsPart.js +336 -0
  67. package/vscode/src/vs/sessions/browser/parts/sessionsParts.d.ts +33 -0
  68. package/vscode/src/vs/sessions/browser/parts/sessionsParts.js +62 -0
  69. package/vscode/src/vs/sessions/browser/parts/singlePaneAuxiliaryBarPart.d.ts +13 -0
  70. package/vscode/src/vs/sessions/browser/parts/singlePaneAuxiliaryBarPart.js +36 -0
  71. package/vscode/src/vs/sessions/browser/parts/singlePaneEditorPart.d.ts +65 -0
  72. package/vscode/src/vs/sessions/browser/parts/singlePaneEditorPart.js +178 -0
  73. package/vscode/src/vs/sessions/browser/sessionWorkspace.d.ts +12 -0
  74. package/vscode/src/vs/sessions/browser/sessionWorkspace.js +19 -0
  75. package/vscode/src/vs/sessions/browser/sessionsSetUpService.d.ts +24 -0
  76. package/vscode/src/vs/sessions/browser/sessionsSetUpService.js +598 -0
  77. package/vscode/src/vs/sessions/browser/sessionsSignInDialog.d.ts +25 -0
  78. package/vscode/src/vs/sessions/browser/sessionsSignInDialog.js +91 -0
  79. package/vscode/src/vs/sessions/common/welcome.d.ts +1 -0
  80. package/vscode/src/vs/sessions/common/welcome.js +5 -0
  81. package/vscode/src/vs/sessions/contrib/accountMenu/browser/account.contribution.d.ts +11 -0
  82. package/vscode/src/vs/sessions/contrib/accountMenu/browser/account.contribution.js +1052 -0
  83. package/vscode/src/vs/sessions/contrib/accountMenu/browser/chatPetAchievementBadges.d.ts +23 -0
  84. package/vscode/src/vs/sessions/contrib/accountMenu/browser/chatPetAchievementBadges.js +168 -0
  85. package/vscode/src/vs/sessions/contrib/accountMenu/browser/media/accountTitleBarWidget.css +646 -0
  86. package/vscode/src/vs/sessions/contrib/accountMenu/browser/media/accountWidget.css +231 -0
  87. package/vscode/src/vs/sessions/contrib/accountMenu/browser/media/chatPetAchievementBadges.css +120 -0
  88. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/nullAgentFeedbackService.contribution.d.ts +53 -0
  89. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/nullAgentFeedbackService.contribution.js +99 -0
  90. package/vscode/src/vs/sessions/contrib/aiCustomizationTreeView/browser/aiCustomizationTreeView.contribution.d.ts +1 -0
  91. package/vscode/src/vs/sessions/contrib/aiCustomizationTreeView/browser/aiCustomizationTreeView.contribution.js +270 -0
  92. package/vscode/src/vs/sessions/contrib/aiCustomizationTreeView/browser/aiCustomizationTreeViewViews.d.ts +62 -0
  93. package/vscode/src/vs/sessions/contrib/aiCustomizationTreeView/browser/aiCustomizationTreeViewViews.js +606 -0
  94. package/vscode/src/vs/sessions/contrib/aiCustomizationTreeView/browser/media/aiCustomizationTreeView.css +116 -0
  95. package/vscode/src/vs/sessions/contrib/aquarium/browser/aquarium.contribution.d.ts +1 -0
  96. package/vscode/src/vs/sessions/contrib/aquarium/browser/aquarium.contribution.js +97 -0
  97. package/vscode/src/vs/sessions/contrib/aquarium/browser/aquariumOverlay.d.ts +72 -0
  98. package/vscode/src/vs/sessions/contrib/aquarium/browser/aquariumOverlay.js +776 -0
  99. package/vscode/src/vs/sessions/contrib/aquarium/browser/fish.d.ts +68 -0
  100. package/vscode/src/vs/sessions/contrib/aquarium/browser/fish.js +153 -0
  101. package/vscode/src/vs/sessions/contrib/aquarium/browser/fishFeedingStreak.d.ts +58 -0
  102. package/vscode/src/vs/sessions/contrib/aquarium/browser/fishFeedingStreak.js +172 -0
  103. package/vscode/src/vs/sessions/contrib/aquarium/browser/media/aquarium.css +316 -0
  104. package/vscode/src/vs/sessions/contrib/aquarium/browser/vscodeLogoPath.d.ts +1 -0
  105. package/vscode/src/vs/sessions/contrib/aquarium/browser/vscodeLogoPath.js +5 -0
  106. package/vscode/src/vs/sessions/contrib/automations/browser/automationDialog.d.ts +173 -0
  107. package/vscode/src/vs/sessions/contrib/automations/browser/automationDialog.js +1589 -0
  108. package/vscode/src/vs/sessions/contrib/automations/browser/automationDialogService.d.ts +32 -0
  109. package/vscode/src/vs/sessions/contrib/automations/browser/automationDialogService.js +396 -0
  110. package/vscode/src/vs/sessions/contrib/automations/browser/automationInputCompletions.d.ts +33 -0
  111. package/vscode/src/vs/sessions/contrib/automations/browser/automationInputCompletions.js +216 -0
  112. package/vscode/src/vs/sessions/contrib/automations/browser/automationLeaderElection.d.ts +37 -0
  113. package/vscode/src/vs/sessions/contrib/automations/browser/automationLeaderElection.js +126 -0
  114. package/vscode/src/vs/sessions/contrib/automations/browser/automationRunner.d.ts +21 -0
  115. package/vscode/src/vs/sessions/contrib/automations/browser/automationRunner.js +294 -0
  116. package/vscode/src/vs/sessions/contrib/automations/browser/automationScheduler.d.ts +59 -0
  117. package/vscode/src/vs/sessions/contrib/automations/browser/automationScheduler.js +232 -0
  118. package/vscode/src/vs/sessions/contrib/automations/browser/automationStorageService.d.ts +13 -0
  119. package/vscode/src/vs/sessions/contrib/automations/browser/automationStorageService.js +22 -0
  120. package/vscode/src/vs/sessions/contrib/automations/browser/automationTools.d.ts +60 -0
  121. package/vscode/src/vs/sessions/contrib/automations/browser/automationTools.js +1256 -0
  122. package/vscode/src/vs/sessions/contrib/automations/browser/automations.contribution.d.ts +1 -0
  123. package/vscode/src/vs/sessions/contrib/automations/browser/automations.contribution.js +88 -0
  124. package/vscode/src/vs/sessions/contrib/automations/browser/media/automationDialog.css +746 -0
  125. package/vscode/src/vs/sessions/contrib/automations/browser/providerAutomationService.d.ts +62 -0
  126. package/vscode/src/vs/sessions/contrib/automations/browser/providerAutomationService.js +493 -0
  127. package/vscode/src/vs/sessions/contrib/automations/common/isolationGroupModel.d.ts +38 -0
  128. package/vscode/src/vs/sessions/contrib/automations/common/isolationGroupModel.js +123 -0
  129. package/vscode/src/vs/sessions/contrib/blockedSessions/browser/blockedSessions.d.ts +45 -0
  130. package/vscode/src/vs/sessions/contrib/blockedSessions/browser/blockedSessions.js +110 -0
  131. package/vscode/src/vs/sessions/contrib/browserView/browser/sessionBrowserView.contribution.d.ts +1 -0
  132. package/vscode/src/vs/sessions/contrib/browserView/browser/sessionBrowserView.contribution.js +5 -0
  133. package/vscode/src/vs/sessions/contrib/browserView/browser/sessionBrowserView.d.ts +31 -0
  134. package/vscode/src/vs/sessions/contrib/browserView/browser/sessionBrowserView.js +137 -0
  135. package/vscode/src/vs/sessions/contrib/changes/browser/changes.contribution.d.ts +1 -0
  136. package/vscode/src/vs/sessions/contrib/changes/browser/changes.contribution.js +130 -0
  137. package/vscode/src/vs/sessions/contrib/changes/browser/changesActions.d.ts +8 -0
  138. package/vscode/src/vs/sessions/contrib/changes/browser/changesActions.js +385 -0
  139. package/vscode/src/vs/sessions/contrib/changes/browser/changesMultiDiffSourceResolver.d.ts +28 -0
  140. package/vscode/src/vs/sessions/contrib/changes/browser/changesMultiDiffSourceResolver.js +76 -0
  141. package/vscode/src/vs/sessions/contrib/changes/browser/changesViewActions.d.ts +1 -0
  142. package/vscode/src/vs/sessions/contrib/changes/browser/changesViewActions.js +509 -0
  143. package/vscode/src/vs/sessions/contrib/changes/browser/changesetReviewActions.d.ts +6 -0
  144. package/vscode/src/vs/sessions/contrib/changes/browser/changesetReviewActions.js +58 -0
  145. package/vscode/src/vs/sessions/contrib/changes/browser/media/changesActions.css +11 -0
  146. package/vscode/src/vs/sessions/contrib/changes/browser/sessionSyncChanges.d.ts +24 -0
  147. package/vscode/src/vs/sessions/contrib/changes/browser/sessionSyncChanges.js +188 -0
  148. package/vscode/src/vs/sessions/contrib/changes/browser/sessionsChangesAccessibilityHelp.d.ts +15 -0
  149. package/vscode/src/vs/sessions/contrib/changes/browser/sessionsChangesAccessibilityHelp.js +100 -0
  150. package/vscode/src/vs/sessions/contrib/chat/browser/chatViewStateService.d.ts +9 -0
  151. package/vscode/src/vs/sessions/contrib/chat/browser/chatViewStateService.js +18 -0
  152. package/vscode/src/vs/sessions/contrib/chat/browser/media/sessionChatInputToolbarDebug.css +59 -0
  153. package/vscode/src/vs/sessions/contrib/chat/browser/sessionChatInputToolbarDebug.d.ts +47 -0
  154. package/vscode/src/vs/sessions/contrib/chat/browser/sessionChatInputToolbarDebug.js +306 -0
  155. package/vscode/src/vs/sessions/contrib/chat/browser/sessionTaskRunner.d.ts +41 -0
  156. package/vscode/src/vs/sessions/contrib/chat/browser/sessionTaskRunner.js +31 -0
  157. package/vscode/src/vs/sessions/contrib/chatDebug/browser/chatDebug.contribution.d.ts +1 -0
  158. package/vscode/src/vs/sessions/contrib/chatDebug/browser/chatDebug.contribution.js +84 -0
  159. package/vscode/src/vs/sessions/contrib/customViewTest/browser/customViewTest.contribution.d.ts +1 -0
  160. package/vscode/src/vs/sessions/contrib/customViewTest/browser/customViewTest.contribution.js +111 -0
  161. package/vscode/src/vs/sessions/contrib/customViewTest/browser/media/customViewTest.css +9 -0
  162. package/vscode/src/vs/sessions/contrib/editor/browser/addTabActions.d.ts +21 -0
  163. package/vscode/src/vs/sessions/contrib/editor/browser/addTabActions.js +170 -0
  164. package/vscode/src/vs/sessions/contrib/editor/browser/editor.contribution.d.ts +14 -0
  165. package/vscode/src/vs/sessions/contrib/editor/browser/editor.contribution.js +425 -0
  166. package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditor.contribution.d.ts +1 -0
  167. package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditor.contribution.js +35 -0
  168. package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditor.d.ts +18 -0
  169. package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditor.js +85 -0
  170. package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditorInput.d.ts +31 -0
  171. package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditorInput.js +125 -0
  172. package/vscode/src/vs/sessions/contrib/editor/browser/media/editorBreadcrumbs.css +66 -0
  173. package/vscode/src/vs/sessions/contrib/editor/browser/media/editorHeader.css +113 -0
  174. package/vscode/src/vs/sessions/contrib/editor/browser/media/emptyFileEditor.css +30 -0
  175. package/vscode/src/vs/sessions/contrib/fileTreeView/browser/fileTreeView.contribution.d.ts +1 -0
  176. package/vscode/src/vs/sessions/contrib/fileTreeView/browser/fileTreeView.contribution.js +25 -0
  177. package/vscode/src/vs/sessions/contrib/fileTreeView/browser/githubFileSystemProvider.d.ts +66 -0
  178. package/vscode/src/vs/sessions/contrib/fileTreeView/browser/githubFileSystemProvider.js +274 -0
  179. package/vscode/src/vs/sessions/contrib/files/browser/files.contribution.d.ts +6 -0
  180. package/vscode/src/vs/sessions/contrib/files/browser/files.contribution.js +100 -0
  181. package/vscode/src/vs/sessions/contrib/files/browser/filesView.d.ts +21 -0
  182. package/vscode/src/vs/sessions/contrib/files/browser/filesView.js +76 -0
  183. package/vscode/src/vs/sessions/contrib/files/browser/media/filesView.css +29 -0
  184. package/vscode/src/vs/sessions/contrib/layout/browser/baseSessionLayoutController.d.ts +211 -0
  185. package/vscode/src/vs/sessions/contrib/layout/browser/baseSessionLayoutController.js +587 -0
  186. package/vscode/src/vs/sessions/contrib/layout/browser/desktopSessionLayoutController.d.ts +112 -0
  187. package/vscode/src/vs/sessions/contrib/layout/browser/desktopSessionLayoutController.js +444 -0
  188. package/vscode/src/vs/sessions/contrib/layout/browser/mobileSessionLayoutController.d.ts +13 -0
  189. package/vscode/src/vs/sessions/contrib/layout/browser/mobileSessionLayoutController.js +8 -0
  190. package/vscode/src/vs/sessions/contrib/layout/browser/sessions.layout.contribution.d.ts +1 -0
  191. package/vscode/src/vs/sessions/contrib/layout/browser/sessions.layout.contribution.js +68 -0
  192. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneDetailPanelCoordinator.d.ts +32 -0
  193. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneDetailPanelCoordinator.js +81 -0
  194. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneDockedTabsCoordinator.d.ts +111 -0
  195. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneDockedTabsCoordinator.js +513 -0
  196. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneDraftSessionStrategy.d.ts +44 -0
  197. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneDraftSessionStrategy.js +423 -0
  198. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneExistingSessionStrategy.d.ts +62 -0
  199. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneExistingSessionStrategy.js +435 -0
  200. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneLayoutStrategy.d.ts +46 -0
  201. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneLayoutStrategy.js +11 -0
  202. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneSharedHelpers.d.ts +11 -0
  203. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneSharedHelpers.js +43 -0
  204. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneVisibilityProfileStore.d.ts +21 -0
  205. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneVisibilityProfileStore.js +77 -0
  206. package/vscode/src/vs/sessions/contrib/layout/browser/singlePaneLayoutController.d.ts +55 -0
  207. package/vscode/src/vs/sessions/contrib/layout/browser/singlePaneLayoutController.js +91 -0
  208. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/agentHostReadinessContext.d.ts +11 -0
  209. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/agentHostReadinessContext.js +39 -0
  210. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionTourContribution.d.ts +1 -0
  211. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionTourContribution.js +109 -0
  212. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewTourContribution.d.ts +1 -0
  213. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewTourContribution.js +123 -0
  214. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewTourTrigger.d.ts +24 -0
  215. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewTourTrigger.js +67 -0
  216. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV2TourContribution.d.ts +1 -0
  217. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV2TourContribution.js +47 -0
  218. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV3Prompt.d.ts +79 -0
  219. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV3Prompt.js +1277 -0
  220. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV3TourContribution.d.ts +1 -0
  221. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV3TourContribution.js +75 -0
  222. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionTour.d.ts +34 -0
  223. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionTour.js +53 -0
  224. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewTour.d.ts +40 -0
  225. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewTour.js +69 -0
  226. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewTourShared.d.ts +4 -0
  227. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewTourShared.js +38 -0
  228. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewV2Tour.d.ts +6 -0
  229. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewV2Tour.js +63 -0
  230. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewV3Tour.d.ts +15 -0
  231. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewV3Tour.js +49 -0
  232. package/vscode/src/vs/sessions/contrib/policyBlocked/browser/media/sessionsPolicyBlocked.css +125 -0
  233. package/vscode/src/vs/sessions/contrib/policyBlocked/browser/policyBlocked.contribution.d.ts +20 -0
  234. package/vscode/src/vs/sessions/contrib/policyBlocked/browser/policyBlocked.contribution.js +98 -0
  235. package/vscode/src/vs/sessions/contrib/policyBlocked/browser/sessionsPolicyBlocked.d.ts +39 -0
  236. package/vscode/src/vs/sessions/contrib/policyBlocked/browser/sessionsPolicyBlocked.js +218 -0
  237. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/devContainerAgentHostService.d.ts +53 -0
  238. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/devContainerAgentHostService.js +496 -0
  239. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostConnectionCustomization.d.ts +27 -0
  240. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostConnectionCustomization.js +26 -0
  241. package/vscode/src/vs/sessions/contrib/search/browser/media/searchEditorEmptyState.css +15 -0
  242. package/vscode/src/vs/sessions/contrib/search/browser/search.contribution.d.ts +1 -0
  243. package/vscode/src/vs/sessions/contrib/search/browser/search.contribution.js +79 -0
  244. package/vscode/src/vs/sessions/contrib/search/browser/searchEditorEmptyState.contribution.d.ts +7 -0
  245. package/vscode/src/vs/sessions/contrib/search/browser/searchEditorEmptyState.contribution.js +57 -0
  246. package/vscode/src/vs/sessions/contrib/sessions/browser/blockedSessionsCIFixModel.d.ts +39 -0
  247. package/vscode/src/vs/sessions/contrib/sessions/browser/blockedSessionsCIFixModel.js +155 -0
  248. package/vscode/src/vs/sessions/contrib/sessions/browser/blockedSessionsIndicatorModel.d.ts +117 -0
  249. package/vscode/src/vs/sessions/contrib/sessions/browser/blockedSessionsIndicatorModel.js +320 -0
  250. package/vscode/src/vs/sessions/contrib/sessions/browser/blockedSessionsList.d.ts +65 -0
  251. package/vscode/src/vs/sessions/contrib/sessions/browser/blockedSessionsList.js +129 -0
  252. package/vscode/src/vs/sessions/contrib/sessions/browser/media/automationsCards.css +624 -0
  253. package/vscode/src/vs/sessions/contrib/sessions/browser/media/blockedSessionsList.css +111 -0
  254. package/vscode/src/vs/sessions/contrib/sessions/browser/media/newSessionActionViewItem.css +112 -0
  255. package/vscode/src/vs/sessions/contrib/sessions/browser/media/sessionsTitleBarWidget.css +159 -0
  256. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionActionFeedback.d.ts +26 -0
  257. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionActionFeedback.js +26 -0
  258. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionDetailsAction.d.ts +2 -0
  259. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionDetailsAction.js +77 -0
  260. package/vscode/src/vs/sessions/contrib/sessions/browser/sessions.contribution.d.ts +1 -0
  261. package/vscode/src/vs/sessions/contrib/sessions/browser/sessions.contribution.js +162 -0
  262. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsActions.d.ts +111 -0
  263. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsActions.js +1550 -0
  264. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsMouseNavigation.d.ts +13 -0
  265. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsMouseNavigation.js +69 -0
  266. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsPicker.d.ts +10 -0
  267. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsPicker.js +33 -0
  268. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTelemetry.contribution.d.ts +126 -0
  269. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTelemetry.contribution.js +724 -0
  270. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTitleBarWidget.d.ts +150 -0
  271. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTitleBarWidget.js +526 -0
  272. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTypedCharactersTracker.d.ts +64 -0
  273. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTypedCharactersTracker.js +99 -0
  274. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsWindowNotifier.d.ts +37 -0
  275. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsWindowNotifier.js +160 -0
  276. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationTemplates.d.ts +19 -0
  277. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationTemplates.js +74 -0
  278. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationsAccessibility.d.ts +4 -0
  279. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationsAccessibility.js +228 -0
  280. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationsView.d.ts +53 -0
  281. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationsView.js +2143 -0
  282. package/vscode/src/vs/sessions/contrib/sessions/browser/views/sessionsViewActions.d.ts +12 -0
  283. package/vscode/src/vs/sessions/contrib/sessions/browser/views/sessionsViewActions.js +1270 -0
  284. package/vscode/src/vs/sessions/contrib/workspace/browser/workspace.contribution.d.ts +1 -0
  285. package/vscode/src/vs/sessions/contrib/workspace/browser/workspace.contribution.js +5 -0
  286. package/vscode/src/vs/sessions/contrib/workspace/browser/workspaceFolderManagement.d.ts +28 -0
  287. package/vscode/src/vs/sessions/contrib/workspace/browser/workspaceFolderManagement.js +95 -0
  288. package/vscode/src/vs/sessions/services/agentHostFilter/browser/agentHostFilterService.d.ts +79 -0
  289. package/vscode/src/vs/sessions/services/agentHostFilter/browser/agentHostFilterService.js +259 -0
  290. package/vscode/src/vs/sessions/services/customView/browser/customView.d.ts +42 -0
  291. package/vscode/src/vs/sessions/services/customView/browser/customView.js +15 -0
  292. package/vscode/src/vs/sessions/services/customView/browser/customViewService.d.ts +21 -0
  293. package/vscode/src/vs/sessions/services/customView/browser/customViewService.js +68 -0
  294. package/vscode/src/vs/sessions/services/sessions/browser/closedItemHistory.d.ts +72 -0
  295. package/vscode/src/vs/sessions/services/sessions/browser/closedItemHistory.js +115 -0
  296. package/vscode/src/vs/sessions/services/sessions/browser/sessionGroupsService.d.ts +77 -0
  297. package/vscode/src/vs/sessions/services/sessions/browser/sessionGroupsService.js +330 -0
  298. package/vscode/src/vs/sessions/services/sessions/browser/sessionNavigation.d.ts +67 -0
  299. package/vscode/src/vs/sessions/services/sessions/browser/sessionNavigation.js +157 -0
  300. package/vscode/src/vs/sessions/services/sessions/browser/sessionOpenTelemetryService.d.ts +32 -0
  301. package/vscode/src/vs/sessions/services/sessions/browser/sessionOpenTelemetryService.js +162 -0
  302. package/vscode/src/vs/sessions/services/sessions/browser/sessionSectionOrderService.d.ts +40 -0
  303. package/vscode/src/vs/sessions/services/sessions/browser/sessionSectionOrderService.js +170 -0
  304. package/vscode/src/vs/sessions/services/sessions/browser/sessionsListModelService.d.ts +63 -0
  305. package/vscode/src/vs/sessions/services/sessions/browser/sessionsListModelService.js +419 -0
  306. package/vscode/src/vs/sessions/services/sessions/browser/sessionsManagementService.d.ts +229 -0
  307. package/vscode/src/vs/sessions/services/sessions/browser/sessionsManagementService.js +1212 -0
  308. package/vscode/src/vs/sessions/services/sessions/browser/sessionsProvidersService.d.ts +22 -0
  309. package/vscode/src/vs/sessions/services/sessions/browser/sessionsProvidersService.js +42 -0
  310. package/vscode/src/vs/sessions/services/sessions/browser/sessionsRecencyHistory.d.ts +43 -0
  311. package/vscode/src/vs/sessions/services/sessions/browser/sessionsRecencyHistory.js +103 -0
  312. package/vscode/src/vs/sessions/services/sessions/browser/sessionsService.d.ts +243 -0
  313. package/vscode/src/vs/sessions/services/sessions/browser/sessionsService.js +1121 -0
  314. package/vscode/src/vs/sessions/services/sessions/browser/sessionsWindowUsageService.d.ts +8 -0
  315. package/vscode/src/vs/sessions/services/sessions/browser/sessionsWindowUsageService.js +24 -0
  316. package/vscode/src/vs/sessions/services/sessions/browser/visibleSessions.d.ts +321 -0
  317. package/vscode/src/vs/sessions/services/sessions/browser/visibleSessions.js +729 -0
  318. package/vscode/src/vs/sessions/services/sessions/browser/worktreeTrust.d.ts +23 -0
  319. package/vscode/src/vs/sessions/services/sessions/browser/worktreeTrust.js +23 -0
  320. package/vscode/src/vs/sessions/services/sessions/common/sessionContextKeys.d.ts +32 -0
  321. package/vscode/src/vs/sessions/services/sessions/common/sessionContextKeys.js +103 -0
  322. package/vscode/src/vs/sessions/services/workspaceFolderLabel/browser/workspaceFolderLabelService.d.ts +16 -0
  323. package/vscode/src/vs/sessions/services/workspaceFolderLabel/browser/workspaceFolderLabelService.js +41 -0
  324. package/vscode/src/vs/workbench/browser/layout.js +7 -7
  325. package/vscode/src/vs/workbench/browser/workbench.js +3 -3
@@ -0,0 +1,513 @@
1
+
2
+ import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
3
+ import { mainWindow } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/window';
4
+ import { Sequencer } from '@codingame/monaco-vscode-api/vscode/vs/base/common/async';
5
+ import { onUnexpectedError } from '@codingame/monaco-vscode-api/vscode/vs/base/common/errors';
6
+ import { Event } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
7
+ import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
8
+ import { Schemas } from '@codingame/monaco-vscode-api/vscode/vs/base/common/network';
9
+ import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
10
+ import { isEqual } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
11
+ import { EditorActivation } from '@codingame/monaco-vscode-api/vscode/vs/platform/editor/common/editor';
12
+ import { IContextKeyService } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service';
13
+ import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
14
+ import { EditorResourceAccessor, SideBySideEditor } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor';
15
+ import { IEditorGroupsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorGroupsService.service';
16
+ import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
17
+ import { Parts } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/layout/browser/layoutService';
18
+ import { IAgentWorkbenchLayoutService } from '@codingame/monaco-vscode-api/vscode/vs/sessions/browser/workbench.service';
19
+ import { SinglePaneChangesTabMissingContext, SinglePaneFilesTabMissingContext, SinglePaneChangesTabAvailableContext, SinglePaneFilesTabAvailableContext } from '@codingame/monaco-vscode-api/vscode/vs/sessions/common/contextkeys';
20
+ import { DockedEditorInput } from '@codingame/monaco-vscode-api/vscode/vs/sessions/common/dockedEditorInput';
21
+ import { ISessionsService } from '@codingame/monaco-vscode-api/vscode/vs/sessions/services/sessions/browser/sessionsService.service';
22
+ import { SessionChangesEditorInput } from '@codingame/monaco-vscode-api/vscode/vs/sessions/contrib/changes/browser/sessionChangesEditorInput';
23
+ import '@codingame/monaco-vscode-api/vscode/vs/sessions/contrib/changes/browser/sessionChangesService';
24
+ import { IChangesViewService } from '@codingame/monaco-vscode-api/vscode/vs/sessions/contrib/changes/common/changesViewService.service';
25
+ import { EmptyFileEditorInput } from '../../../editor/browser/emptyFileEditorInput.js';
26
+ import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
27
+ import { observableSignalFromEvent } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableSignalFromEvent';
28
+ import { ISessionChangesService } from '@codingame/monaco-vscode-api/vscode/vs/sessions/contrib/changes/common/sessionChangesService.service';
29
+
30
+ const CHANGES_TAB_OPTIONS = {
31
+ pinned: true,
32
+ index: 0,
33
+ inactive: true,
34
+ preserveFocus: true,
35
+ activation: EditorActivation.PRESERVE,
36
+ isExplicit: false
37
+ };
38
+ const CHANGES_TAB_ACTIVE_OPTIONS = {
39
+ pinned: true,
40
+ index: 0,
41
+ preserveFocus: true,
42
+ isExplicit: false
43
+ };
44
+ const FILES_TAB_OPTIONS = {
45
+ pinned: true,
46
+ inactive: true,
47
+ preserveFocus: true,
48
+ activation: EditorActivation.PRESERVE,
49
+ isExplicit: false
50
+ };
51
+ function mergeTriggers(a, b) {
52
+ return {
53
+ openDefaultsIfEmpty: a.openDefaultsIfEmpty || b.openDefaultsIfEmpty,
54
+ ensureChanges: a.ensureChanges || b.ensureChanges,
55
+ ensureChangesActive: a.ensureChangesActive || b.ensureChangesActive,
56
+ workingSetRestored: a.workingSetRestored || b.workingSetRestored
57
+ };
58
+ }
59
+ let SinglePaneDockedTabsCoordinator = class SinglePaneDockedTabsCoordinator extends Disposable {
60
+ constructor(
61
+ _ctx,
62
+ _layoutService,
63
+ _sessionsService,
64
+ _editorService,
65
+ _editorGroupsService,
66
+ _sessionChangesService,
67
+ _changesViewService,
68
+ contextKeyService,
69
+ _instantiationService
70
+ ) {
71
+ super();
72
+ this._ctx = _ctx;
73
+ this._layoutService = _layoutService;
74
+ this._sessionsService = _sessionsService;
75
+ this._editorService = _editorService;
76
+ this._editorGroupsService = _editorGroupsService;
77
+ this._sessionChangesService = _sessionChangesService;
78
+ this._changesViewService = _changesViewService;
79
+ this._instantiationService = _instantiationService;
80
+ this._sequencer = ( new Sequencer());
81
+ this._generation = 0;
82
+ this._filesTabDismissed = false;
83
+ this._changingFilesInternally = false;
84
+ this._changesTabMissingContext = SinglePaneChangesTabMissingContext.bindTo(contextKeyService);
85
+ this._filesTabMissingContext = SinglePaneFilesTabMissingContext.bindTo(contextKeyService);
86
+ this._changesTabAvailableContext = SinglePaneChangesTabAvailableContext.bindTo(contextKeyService);
87
+ this._filesTabAvailableContext = SinglePaneFilesTabAvailableContext.bindTo(contextKeyService);
88
+ let previousChangesSessionResource;
89
+ this._register(autorun(reader => {
90
+ const target = this._readTarget(reader);
91
+ const ensureChanges = !!target.changesSessionResource && (!previousChangesSessionResource || !isEqual(previousChangesSessionResource, target.changesSessionResource));
92
+ previousChangesSessionResource = target.changesSessionResource;
93
+ if (!target.wantsChangesTab) {
94
+ this._filesTabDismissed = false;
95
+ }
96
+ this.queueReconcile(target, {
97
+ openDefaultsIfEmpty: true,
98
+ ensureChanges
99
+ });
100
+ }));
101
+ this._register(this._layoutService.onDidRevealSidePane(() => {
102
+ this.queueReconcile(this._readTarget(undefined), {
103
+ openDefaultsIfEmpty: true
104
+ });
105
+ }));
106
+ const partVisibilityChangedSignal = observableSignalFromEvent(this, this._layoutService.onDidChangePartVisibility);
107
+ const editorsChangedSignal = observableSignalFromEvent(this, Event.any(
108
+ this._editorService.onDidActiveEditorChange,
109
+ this._editorService.onDidEditorsChange
110
+ ));
111
+ this._register(autorun(reader => {
112
+ partVisibilityChangedSignal.read(reader);
113
+ editorsChangedSignal.read(reader);
114
+ this.queueReconcile(this._readTarget(undefined), {});
115
+ }));
116
+ this._register(this._ctx.onDidEndSessionLayoutRestore(() => {
117
+ const session = this._sessionsService.activeSession.get();
118
+ const target = this._readTarget(undefined);
119
+ const ensureChanges = target.wantsChangesTab && session?.isCreated.get() === false;
120
+ this.queueReconcile(target, {
121
+ openDefaultsIfEmpty: true,
122
+ ensureChanges,
123
+ workingSetRestored: true
124
+ });
125
+ }));
126
+ this._register(this._editorService.onWillOpenEditor(e => {
127
+ if (e.editor instanceof EmptyFileEditorInput && !this._changingFilesInternally && !this._ctx.isRestoringSessionLayout) {
128
+ this._filesTabDismissed = false;
129
+ }
130
+ if (this._ctx.isRestoringSessionLayout || !this._isWorkspaceFileEditor(e.editor)) {
131
+ return;
132
+ }
133
+ const group = this._editorGroupsService.mainPart.getGroup(e.groupId);
134
+ if (!group || group.contains(e.editor)) {
135
+ return;
136
+ }
137
+ this._queue(() => this._removeFilesTab(this._editorGroupsService.mainPart.activeGroup));
138
+ }));
139
+ this._register(this._editorService.onDidCloseEditor(e => {
140
+ if (e.editor instanceof EmptyFileEditorInput && !this._changingFilesInternally && !this._ctx.isRestoringSessionLayout && !this._layoutService.isEditorPartAutoVisibilitySuppressed() && this._readTarget(undefined).wantsChangesTab) {
141
+ this._filesTabDismissed = true;
142
+ }
143
+ }));
144
+ const editorAreaVisibleObs = observableSignalFromEvent(this, this._layoutService.onDidChangePartVisibility);
145
+ this._register(autorun(reader => {
146
+ editorAreaVisibleObs.read(reader);
147
+ const visible = this._layoutService.isVisible(Parts.EDITOR_PART, mainWindow);
148
+ if (this._editorAreaVisible === undefined) {
149
+ this._editorAreaVisible = visible;
150
+ return;
151
+ }
152
+ if (visible === this._editorAreaVisible) {
153
+ return;
154
+ }
155
+ this._editorAreaVisible = visible;
156
+ if (this._ctx.isRestoringSessionLayout) {
157
+ return;
158
+ }
159
+ if (visible) {
160
+ this._queue(() => this._restoreCollapsedTabs());
161
+ return;
162
+ }
163
+ if (this._ctx.togglingSidePane) {
164
+ return;
165
+ }
166
+ if (this._layoutService.isVisible(Parts.AUXILIARYBAR_PART)) {
167
+ this._queue(() => this._collapseNonManagedTabs());
168
+ }
169
+ }));
170
+ this._register(
171
+ this._ctx.onDidEndSessionLayoutRestore(() => this._queueCollapseIfDetailsOnly())
172
+ );
173
+ this._register(this._editorService.onDidEditorsChange(() => {
174
+ if (!this._ctx.isRestoringSessionLayout) {
175
+ this._queueCollapseIfDetailsOnly();
176
+ }
177
+ }));
178
+ }
179
+ getChangesEditorResource(editor) {
180
+ const resource = editor.resource;
181
+ return resource && this._sessionChangesService.getSessionResource(resource) ? resource : undefined;
182
+ }
183
+ prepareWorkingSetRestore(hasSavedWorkingSet) {
184
+ const sessionKey = this._sessionsService.activeSession.get()?.resource.toString();
185
+ this._preserveMissingFilesForSessionKey = hasSavedWorkingSet && this._filesTabDismissed ? sessionKey : undefined;
186
+ }
187
+ readTarget(reader) {
188
+ return this._readTarget(reader);
189
+ }
190
+ queueReconcile(target, trigger) {
191
+ const sessionKey = this._sessionsService.activeSession.get()?.resource.toString();
192
+ const mergedTrigger = this._pending && this._pending.sessionKey === sessionKey ? mergeTriggers(this._pending.trigger, trigger) : trigger;
193
+ this._pending = {
194
+ sessionKey,
195
+ target,
196
+ trigger: mergedTrigger
197
+ };
198
+ const generation = ++this._generation;
199
+ this._queue(() => this._reconcile(generation));
200
+ }
201
+ _readTarget(reader) {
202
+ const read = obs => reader ? obs.read(reader) : obs.get();
203
+ const session = read(this._sessionsService.activeSession);
204
+ const isQuickChat = session?.isQuickChat ? read(session.isQuickChat) : false;
205
+ const workspace = session ? read(session.workspace) : undefined;
206
+ if (!session || isQuickChat || !workspace) {
207
+ return {
208
+ changesSessionResource: undefined,
209
+ workspace: undefined,
210
+ wantsChangesTab: false,
211
+ wantsFilesTab: false
212
+ };
213
+ }
214
+ return {
215
+ changesSessionResource: session.resource,
216
+ workspace,
217
+ wantsChangesTab: true,
218
+ wantsFilesTab: true
219
+ };
220
+ }
221
+ dispose() {
222
+ this._generation++;
223
+ this._pending = undefined;
224
+ super.dispose();
225
+ }
226
+ _queue(task) {
227
+ void this._sequencer.queue(() => this._store.isDisposed ? Promise.resolve() : task()).catch(error => {
228
+ if (!this._store.isDisposed) {
229
+ onUnexpectedError(error);
230
+ }
231
+ });
232
+ }
233
+ async _reconcile(generation) {
234
+ if (this._store.isDisposed || generation !== this._generation || !this._pending) {
235
+ return;
236
+ }
237
+ const pending = this._pending;
238
+ this._pending = undefined;
239
+ try {
240
+ await this._reconcileCore(pending.target, pending.trigger, generation);
241
+ } finally {
242
+ const successor = this._pending;
243
+ if (generation !== this._generation && successor && successor.sessionKey === pending.sessionKey) {
244
+ this._pending = {
245
+ ...successor,
246
+ trigger: mergeTriggers(successor.trigger, pending.trigger)
247
+ };
248
+ }
249
+ }
250
+ }
251
+ async _reconcileCore(target, trigger, generation) {
252
+ const group = this._editorGroupsService.mainPart.activeGroup;
253
+ let groupDisposed = false;
254
+ const groupDisposeListener = Event.once(group.onWillDispose)(() => groupDisposed = true);
255
+ const isCancelled = () => this._store.isDisposed || groupDisposed || generation !== this._generation;
256
+ this._resetCollapsedEditorsOnSessionChange();
257
+ const changesResource = target.changesSessionResource ? this._sessionChangesService.getChangesEditorResource(target.changesSessionResource) : undefined;
258
+ const suppression = this._layoutService.suppressEditorPartAutoVisibility();
259
+ try {
260
+ await this._reconcileForeignChangesEditors(group, changesResource, isCancelled);
261
+ if (isCancelled()) {
262
+ return;
263
+ }
264
+ this._updateFilesEditors(group, target.workspace);
265
+ const sessionKey = this._sessionsService.activeSession.get()?.resource.toString();
266
+ const preserveMissingFiles = !!trigger.workingSetRestored && this._preserveMissingFilesForSessionKey === sessionKey;
267
+ if (preserveMissingFiles) {
268
+ await this._removeFilesTab(group);
269
+ if (isCancelled()) {
270
+ return;
271
+ }
272
+ }
273
+ const openIntoEmpty = !!trigger.openDefaultsIfEmpty && group.editors.length === 0;
274
+ const changesPresent = !!changesResource && !!this._findChangesEditor(group, changesResource);
275
+ const filesPresent = ( group.editors.some(editor => editor instanceof EmptyFileEditorInput));
276
+ const activeChangesResource = this._editorService.activeEditor && this.getChangesEditorResource(this._editorService.activeEditor);
277
+ const activateChanges = !!trigger.ensureChangesActive && !!changesResource && (!activeChangesResource || !isEqual(activeChangesResource, changesResource));
278
+ const ensureAllInputs = this._layoutService.isVisible(Parts.AUXILIARYBAR_PART) && !this._layoutService.isVisible(Parts.EDITOR_PART, mainWindow);
279
+ const openChanges = target.wantsChangesTab && !!changesResource && (activateChanges || (!changesPresent && (openIntoEmpty || ensureAllInputs || trigger.ensureChanges)));
280
+ const openFiles = target.wantsFilesTab && !filesPresent && !preserveMissingFiles && (openIntoEmpty || ensureAllInputs);
281
+ const isCreated = this._sessionsService.activeSession.get()?.isCreated.get() ?? false;
282
+ const openFilesFirst = openChanges && openFiles && !isCreated && group.editors.length === 0;
283
+ if (openFilesFirst) {
284
+ await this._openFilesTab(group, target.workspace);
285
+ if (isCancelled()) {
286
+ return;
287
+ }
288
+ }
289
+ if (openChanges && changesResource) {
290
+ if (!(await this._openChangesTab(
291
+ target.changesSessionResource,
292
+ changesResource,
293
+ group,
294
+ activateChanges,
295
+ isCancelled
296
+ ))) {
297
+ return;
298
+ }
299
+ }
300
+ if (openFiles && !openFilesFirst) {
301
+ await this._openFilesTab(group, target.workspace);
302
+ if (isCancelled()) {
303
+ return;
304
+ }
305
+ }
306
+ } catch (error) {
307
+ if (!this._store.isDisposed && !groupDisposed) {
308
+ throw error;
309
+ }
310
+ } finally {
311
+ suppression.dispose();
312
+ groupDisposeListener.dispose();
313
+ if (!isCancelled()) {
314
+ if (trigger.workingSetRestored) {
315
+ this._preserveMissingFilesForSessionKey = undefined;
316
+ }
317
+ this._updateAddTabContexts(target);
318
+ }
319
+ }
320
+ }
321
+ _resetCollapsedEditorsOnSessionChange() {
322
+ const sessionKey = this._sessionsService.activeSession.get()?.resource.toString();
323
+ if (sessionKey !== this._lastSyncedSessionKey) {
324
+ this._collapsedEditors = undefined;
325
+ this._lastSyncedSessionKey = sessionKey;
326
+ }
327
+ }
328
+ async _openChangesTab(sessionResource, changesResource, group, active, isCancelled) {
329
+ this._changesViewService.setChangesetId(undefined);
330
+ await this._sessionChangesService.openChangesEditor(
331
+ sessionResource,
332
+ active ? CHANGES_TAB_ACTIVE_OPTIONS : CHANGES_TAB_OPTIONS,
333
+ group
334
+ );
335
+ if (isCancelled()) {
336
+ return false;
337
+ }
338
+ const changesEditor = this._findChangesEditor(group, changesResource);
339
+ if (changesEditor) {
340
+ this._pinFirst(group, changesEditor);
341
+ }
342
+ return true;
343
+ }
344
+ async _openFilesTab(group, workspace) {
345
+ const suppression = this._layoutService.suppressEditorPartAutoVisibility();
346
+ this._changingFilesInternally = true;
347
+ try {
348
+ await this._editorService.openEditor(
349
+ this._instantiationService.createInstance(EmptyFileEditorInput, workspace),
350
+ FILES_TAB_OPTIONS,
351
+ group
352
+ );
353
+ this._filesTabDismissed = false;
354
+ } finally {
355
+ this._changingFilesInternally = false;
356
+ suppression.dispose();
357
+ }
358
+ }
359
+ async _removeFilesTab(group) {
360
+ const placeholder = group.editors.find(editor => editor instanceof EmptyFileEditorInput);
361
+ if (placeholder) {
362
+ this._changingFilesInternally = true;
363
+ try {
364
+ await this._closeManagedEditors(group, [placeholder]);
365
+ } finally {
366
+ this._changingFilesInternally = false;
367
+ }
368
+ }
369
+ }
370
+ async _reconcileForeignChangesEditors(group, activeChangesResource, isCancelled) {
371
+ const foreign = group.editors.filter(editor => {
372
+ const resource = this.getChangesEditorResource(editor);
373
+ return resource && (!activeChangesResource || !isEqual(resource, activeChangesResource));
374
+ });
375
+ if (foreign.length === 0) {
376
+ return;
377
+ }
378
+ if (!activeChangesResource) {
379
+ await this._closeManagedEditors(group, foreign);
380
+ return;
381
+ }
382
+ const [editorToReplace, ...editorsToClose] = foreign;
383
+ const wasActive = group.activeEditor === editorToReplace;
384
+ await group.replaceEditors([{
385
+ editor: editorToReplace,
386
+ replacement: this._instantiationService.createInstance(SessionChangesEditorInput, activeChangesResource),
387
+ options: wasActive ? CHANGES_TAB_ACTIVE_OPTIONS : CHANGES_TAB_OPTIONS
388
+ }]);
389
+ if (isCancelled()) {
390
+ return;
391
+ }
392
+ if (editorsToClose.length > 0) {
393
+ await this._closeManagedEditors(group, editorsToClose);
394
+ }
395
+ }
396
+ _updateFilesEditors(group, workspace) {
397
+ for (const editor of group.editors) {
398
+ if (editor instanceof EmptyFileEditorInput) {
399
+ editor.setWorkspace(workspace);
400
+ }
401
+ }
402
+ }
403
+ async _closeManagedEditors(group, editors) {
404
+ await this._editorService.closeEditors(editors.map(editor => ({
405
+ groupId: group.id,
406
+ editor
407
+ })), {
408
+ preserveFocus: true,
409
+ force: true
410
+ });
411
+ }
412
+ _pinFirst(group, editor) {
413
+ if (!group.isPinned(editor)) {
414
+ group.pinEditor(editor);
415
+ }
416
+ if (group.getIndexOfEditor(editor) !== 0) {
417
+ group.moveEditor(editor, group, CHANGES_TAB_OPTIONS);
418
+ }
419
+ }
420
+ _findChangesEditor(group, changesResource) {
421
+ return group.editors.find(editor => {
422
+ const resource = this.getChangesEditorResource(editor);
423
+ return !!resource && isEqual(resource, changesResource);
424
+ });
425
+ }
426
+ _isWorkspaceFileEditor(editor) {
427
+ if (editor instanceof DockedEditorInput) {
428
+ return false;
429
+ }
430
+ const resource = EditorResourceAccessor.getCanonicalUri(editor, {
431
+ supportSideBySide: SideBySideEditor.PRIMARY
432
+ });
433
+ return resource?.scheme === Schemas.file || resource?.scheme === Schemas.vscodeRemote;
434
+ }
435
+ _updateAddTabContexts(target) {
436
+ const group = this._editorGroupsService.mainPart.activeGroup;
437
+ const changesPresent = ( group.editors.some(editor => this.getChangesEditorResource(editor) !== undefined));
438
+ const filesPresent = ( group.editors.some(editor => editor instanceof EmptyFileEditorInput));
439
+ this._changesTabAvailableContext.set(target.wantsChangesTab);
440
+ this._filesTabAvailableContext.set(target.wantsFilesTab);
441
+ this._changesTabMissingContext.set(target.wantsChangesTab && !changesPresent);
442
+ this._filesTabMissingContext.set(target.wantsFilesTab && !filesPresent);
443
+ }
444
+ _queueCollapseIfDetailsOnly() {
445
+ if (!this._layoutService.isVisible(Parts.EDITOR_PART, mainWindow) && this._layoutService.isVisible(Parts.AUXILIARYBAR_PART)) {
446
+ this._queue(() => this._collapseNonManagedTabs());
447
+ }
448
+ }
449
+ async _collapseNonManagedTabs() {
450
+ const group = this._editorGroupsService.mainPart.activeGroup;
451
+ const captured = [...(this._collapsedEditors ?? [])];
452
+ const toClose = [];
453
+ group.editors.forEach((editor, index) => {
454
+ if (editor instanceof DockedEditorInput || this.getChangesEditorResource(editor)) {
455
+ return;
456
+ }
457
+ const untyped = editor.toUntyped();
458
+ if (untyped) {
459
+ captured.push({
460
+ editor: untyped,
461
+ index
462
+ });
463
+ }
464
+ toClose.push(editor);
465
+ });
466
+ if (toClose.length === 0) {
467
+ return;
468
+ }
469
+ this._collapsedEditors = captured;
470
+ const suppressEditorPartAutoVisibility = this._layoutService.suppressEditorPartAutoVisibility();
471
+ try {
472
+ await this._editorService.closeEditors(toClose.map(editor => ({
473
+ groupId: group.id,
474
+ editor
475
+ })), {
476
+ preserveFocus: true
477
+ });
478
+ } finally {
479
+ suppressEditorPartAutoVisibility.dispose();
480
+ }
481
+ }
482
+ async _restoreCollapsedTabs() {
483
+ const captured = this._collapsedEditors;
484
+ this._collapsedEditors = undefined;
485
+ if (!captured || captured.length === 0) {
486
+ return;
487
+ }
488
+ const group = this._editorGroupsService.mainPart.activeGroup;
489
+ const suppressEditorPartAutoVisibility = this._layoutService.suppressEditorPartAutoVisibility();
490
+ try {
491
+ await this._editorService.openEditors([...captured].sort((a, b) => a.index - b.index).map((
492
+ {
493
+ editor,
494
+ index
495
+ }
496
+ ) => ({
497
+ ...editor,
498
+ options: {
499
+ ...editor.options,
500
+ index,
501
+ inactive: true,
502
+ preserveFocus: true,
503
+ pinned: true
504
+ }
505
+ })), group);
506
+ } finally {
507
+ suppressEditorPartAutoVisibility.dispose();
508
+ }
509
+ }
510
+ };
511
+ SinglePaneDockedTabsCoordinator = ( __decorate([( __param(1, IAgentWorkbenchLayoutService)), ( __param(2, ISessionsService)), ( __param(3, IEditorService)), ( __param(4, IEditorGroupsService)), ( __param(5, ISessionChangesService)), ( __param(6, IChangesViewService)), ( __param(7, IContextKeyService)), ( __param(8, IInstantiationService))], SinglePaneDockedTabsCoordinator));
512
+
513
+ export { SinglePaneDockedTabsCoordinator };
@@ -0,0 +1,44 @@
1
+ import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service";
2
+ import { IEditorGroupsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorGroupsService.service";
3
+ import { IEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service";
4
+ import { IAgentWorkbenchLayoutService } from "@codingame/monaco-vscode-api/vscode/vs/sessions/browser/workbench.service";
5
+ import { ISessionsService } from "@codingame/monaco-vscode-api/vscode/vs/sessions/services/sessions/browser/sessionsService.service";
6
+ import { ISessionChangesService } from "@codingame/monaco-vscode-api/vscode/vs/sessions/contrib/changes/browser/sessionChangesService";
7
+ import { SinglePaneDetailPanelCoordinator } from "./singlePaneDetailPanelCoordinator.js";
8
+ import { ISinglePaneLayoutContext, SinglePaneLayoutStrategy } from "./singlePaneLayoutStrategy.js";
9
+ import { SinglePaneVisibilityProfileStore } from "./singlePaneVisibilityProfileStore.js";
10
+ /**
11
+ * Owns workspace-backed and workspace-less draft layout behavior.
12
+ */
13
+ export declare class SinglePaneDraftSessionStrategy extends SinglePaneLayoutStrategy {
14
+ private readonly _detailPanel;
15
+ private readonly _visibilityStore;
16
+ private readonly _layoutService;
17
+ private readonly _sessionsService;
18
+ private readonly _editorService;
19
+ private readonly _editorGroupsService;
20
+ private readonly _sessionChangesService;
21
+ private readonly _logService;
22
+ private _pendingEntryHideSessionKey;
23
+ private _replacementDraftKey;
24
+ private _pendingSidePaneOpenHideSessionKey;
25
+ private _detailHiddenTransiently;
26
+ private _detailHiddenByEditor;
27
+ private _activeQuickChatKey;
28
+ private _pendingEditorRestoreKey;
29
+ private _changingVisibility;
30
+ constructor(ctx: ISinglePaneLayoutContext, _detailPanel: SinglePaneDetailPanelCoordinator, _visibilityStore: SinglePaneVisibilityProfileStore, _layoutService: IAgentWorkbenchLayoutService, _sessionsService: ISessionsService, _editorService: IEditorService, _editorGroupsService: IEditorGroupsService, _sessionChangesService: ISessionChangesService, _logService: ILogService);
31
+ private _registerEntryEditorHide;
32
+ private _registerQuickChatVisibility;
33
+ private _captureQuickChatSharedVisibility;
34
+ private _hideQuickChatSidePaneTransiently;
35
+ private _applyQuickChatSharedVisibility;
36
+ private _registerSidePaneOpenEditorHide;
37
+ private _registerLastEditorClose;
38
+ private _getMainPartEditors;
39
+ private _getActiveNewSessionKey;
40
+ private _readActiveNewSessionKey;
41
+ private _registerDetailPanel;
42
+ private _syncDetailVisibility;
43
+ private _computeTarget;
44
+ }