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

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,5 @@
1
+
2
+ import { registerWorkbenchContribution2, WorkbenchPhase } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/contributions';
3
+ import { WorkspaceFolderManagementContribution } from './workspaceFolderManagement.js';
4
+
5
+ registerWorkbenchContribution2(WorkspaceFolderManagementContribution.ID, WorkspaceFolderManagementContribution, WorkbenchPhase.AfterRestored);
@@ -0,0 +1,28 @@
1
+ import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
2
+ import { IWorkbenchContribution } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/contributions";
3
+ import { ISessionsService } from "@codingame/monaco-vscode-api/vscode/vs/sessions/services/sessions/browser/sessionsService.service";
4
+ import { IWorkspaceContextService } from "@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace.service";
5
+ import { IWorkspaceEditingService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/workspaces/common/workspaceEditing.service";
6
+ import { IWorkspaceTrustManagementService } from "@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspaceTrust.service";
7
+ import { IUriIdentityService } from "@codingame/monaco-vscode-api/vscode/vs/platform/uriIdentity/common/uriIdentity.service";
8
+ import { IWorkspaceFolderLabelService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/workspaces/common/workspaceFolderLabelService.service";
9
+ export declare class WorkspaceFolderManagementContribution extends Disposable implements IWorkbenchContribution {
10
+ private readonly sessionsService;
11
+ private readonly uriIdentityService;
12
+ private readonly workspaceContextService;
13
+ private readonly workspaceEditingService;
14
+ private readonly workspaceTrustManagementService;
15
+ private readonly workspaceFolderLabelService;
16
+ static readonly ID = "workbench.contrib.workspaceFolderManagement";
17
+ private queue;
18
+ constructor(sessionsService: ISessionsService, uriIdentityService: IUriIdentityService, workspaceContextService: IWorkspaceContextService, workspaceEditingService: IWorkspaceEditingService, workspaceTrustManagementService: IWorkspaceTrustManagementService, workspaceFolderLabelService: IWorkspaceFolderLabelService);
19
+ private updateWorkspaceFoldersForSession;
20
+ private getActiveSessionFolderData;
21
+ /**
22
+ * Whether `uri` may be mounted as the workspace folder. A session that
23
+ * requires workspace trust may only mount a trusted folder; anything else is
24
+ * left unmounted so the window never enters Restricted Mode behind the user's
25
+ * back. Sessions that don't require trust (e.g. virtual/cloud) always mount.
26
+ */
27
+ private isFolderMountable;
28
+ }
@@ -0,0 +1,95 @@
1
+
2
+ import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
3
+ import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
4
+ import { ISessionsService } from '@codingame/monaco-vscode-api/vscode/vs/sessions/services/sessions/browser/sessionsService.service';
5
+ import { ensureSessionWorktreesTrusted } from '../../../services/sessions/browser/worktreeTrust.js';
6
+ import { WorkspaceFolder } from '@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace';
7
+ import { IWorkspaceContextService } from '@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace.service';
8
+ import { IWorkspaceEditingService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/workspaces/common/workspaceEditing.service';
9
+ import { IWorkspaceTrustManagementService } from '@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspaceTrust.service';
10
+ import { IUriIdentityService } from '@codingame/monaco-vscode-api/vscode/vs/platform/uriIdentity/common/uriIdentity.service';
11
+ import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
12
+ import { Queue } from '@codingame/monaco-vscode-api/vscode/vs/base/common/async';
13
+ import { IWorkspaceFolderLabelService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/workspaces/common/workspaceFolderLabelService.service';
14
+ import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
15
+
16
+ let WorkspaceFolderManagementContribution = class WorkspaceFolderManagementContribution extends Disposable {
17
+ static {
18
+ this.ID = "workbench.contrib.workspaceFolderManagement";
19
+ }
20
+ constructor(
21
+ sessionsService,
22
+ uriIdentityService,
23
+ workspaceContextService,
24
+ workspaceEditingService,
25
+ workspaceTrustManagementService,
26
+ workspaceFolderLabelService
27
+ ) {
28
+ super();
29
+ this.sessionsService = sessionsService;
30
+ this.uriIdentityService = uriIdentityService;
31
+ this.workspaceContextService = workspaceContextService;
32
+ this.workspaceEditingService = workspaceEditingService;
33
+ this.workspaceTrustManagementService = workspaceTrustManagementService;
34
+ this.workspaceFolderLabelService = workspaceFolderLabelService;
35
+ this.queue = this._register(( new Queue()));
36
+ this._register(autorun(reader => {
37
+ const activeSession = this.sessionsService.activeSession.read(reader);
38
+ activeSession?.workspace.read(reader);
39
+ this.queue.queue(() => this.updateWorkspaceFoldersForSession(activeSession));
40
+ }));
41
+ }
42
+ async updateWorkspaceFoldersForSession(session) {
43
+ await ensureSessionWorktreesTrusted(session?.workspace.get(), this.workspaceTrustManagementService);
44
+ const activeSessionFolderData = this.getActiveSessionFolderData(session);
45
+ const currentRepo = this.workspaceContextService.getWorkspace().folders[0]?.uri;
46
+ if (activeSessionFolderData && !(await this.isFolderMountable(session, activeSessionFolderData.uri))) {
47
+ if (currentRepo) {
48
+ await this.workspaceEditingService.removeFolders([currentRepo], true);
49
+ }
50
+ return;
51
+ }
52
+ if (!activeSessionFolderData) {
53
+ if (currentRepo) {
54
+ await this.workspaceEditingService.removeFolders([currentRepo], true);
55
+ }
56
+ return;
57
+ }
58
+ if (!currentRepo) {
59
+ await this.workspaceEditingService.addFolders([activeSessionFolderData], true);
60
+ return;
61
+ }
62
+ if (this.uriIdentityService.extUri.isEqual(currentRepo, activeSessionFolderData.uri)) {
63
+ return;
64
+ }
65
+ await this.workspaceEditingService.updateFolders(0, 1, [activeSessionFolderData], true);
66
+ }
67
+ getActiveSessionFolderData(session) {
68
+ if (!session) {
69
+ return undefined;
70
+ }
71
+ const workspace = session.workspace.get();
72
+ const folder = workspace?.folders[0];
73
+ if (!folder) {
74
+ return undefined;
75
+ }
76
+ return {
77
+ uri: folder.workingDirectory,
78
+ name: this.workspaceFolderLabelService.getWorkspaceFolderLabel(( new WorkspaceFolder({
79
+ uri: folder.workingDirectory,
80
+ name: workspace.label,
81
+ index: 0
82
+ })), true) ?? workspace.label
83
+ };
84
+ }
85
+ async isFolderMountable(session, uri) {
86
+ const workspace = session?.workspace.get();
87
+ if (!workspace?.requiresWorkspaceTrust) {
88
+ return true;
89
+ }
90
+ return (await this.workspaceTrustManagementService.getUriTrustInfo(uri)).trusted;
91
+ }
92
+ };
93
+ WorkspaceFolderManagementContribution = ( __decorate([( __param(0, ISessionsService)), ( __param(1, IUriIdentityService)), ( __param(2, IWorkspaceContextService)), ( __param(3, IWorkspaceEditingService)), ( __param(4, IWorkspaceTrustManagementService)), ( __param(5, IWorkspaceFolderLabelService))], WorkspaceFolderManagementContribution));
94
+
95
+ export { WorkspaceFolderManagementContribution };
@@ -0,0 +1,79 @@
1
+ import { Event } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event";
2
+ import { Disposable, IDisposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
3
+ import { IRemoteAgentHostService } from "@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/remoteAgentHostService.service";
4
+ import { IStorageService } from "@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service";
5
+ import { IAgentHostGroup } from "@codingame/monaco-vscode-api/vscode/vs/sessions/common/agentHostSessionsProvider";
6
+ import { ISessionsProvidersService } from "@codingame/monaco-vscode-api/vscode/vs/sessions/services/sessions/browser/sessionsProvidersService.service";
7
+ import { IAgentHostFilterEntry } from "@codingame/monaco-vscode-api/vscode/vs/sessions/services/agentHostFilter/common/agentHostFilter";
8
+ import { IAgentHostFilterService } from "@codingame/monaco-vscode-api/vscode/vs/sessions/services/agentHostFilter/common/agentHostFilter.service";
9
+ export declare class AgentHostFilterService extends Disposable implements IAgentHostFilterService {
10
+ private readonly _sessionsProvidersService;
11
+ private readonly _remoteAgentHostService;
12
+ private readonly _storageService;
13
+ readonly _serviceBrand: undefined;
14
+ private readonly _onDidChange;
15
+ readonly onDidChange: Event<void>;
16
+ private readonly _onDidChangeDiscovering;
17
+ readonly onDidChangeDiscovering: Event<void>;
18
+ private _selectedHostId;
19
+ /**
20
+ * `true` while {@link _selectedHostId} comes from the fallback rather than
21
+ * from the user. An automatic choice is provisional and can be replaced.
22
+ */
23
+ private _selectionIsAutomatic;
24
+ private _hosts;
25
+ /**
26
+ * Discovery handlers contributed by host providers (e.g. dev tunnels).
27
+ * {@link rediscover} fans out to every handler and waits for them to
28
+ * settle.
29
+ */
30
+ private readonly _discoveryHandlers;
31
+ /**
32
+ * Number of in-flight {@link rediscover} calls. {@link isDiscovering}
33
+ * is `true` while this is non-zero. Tracked as a counter so concurrent
34
+ * calls don't race a flag back to `false`.
35
+ */
36
+ private _discoveringCount;
37
+ /**
38
+ * Groups declared via {@link registerHostGroup}. Each always yields an
39
+ * entry, whether or not any member provider exists yet.
40
+ */
41
+ private readonly _declaredGroups;
42
+ /**
43
+ * Subscriptions to the `connectionStatus` observable of every currently
44
+ * registered remote provider. Rebuilt whenever the set of providers
45
+ * changes so we always observe the live set.
46
+ */
47
+ private readonly _providerWatchers;
48
+ constructor(_sessionsProvidersService: ISessionsProvidersService, _remoteAgentHostService: IRemoteAgentHostService, _storageService: IStorageService);
49
+ get selectedHostId(): string | undefined;
50
+ get selectedHost(): IAgentHostFilterEntry | undefined;
51
+ get hosts(): readonly IAgentHostFilterEntry[];
52
+ get isDiscovering(): boolean;
53
+ rediscover(): Promise<void>;
54
+ registerDiscoveryHandler(handler: () => Promise<void>): IDisposable;
55
+ registerHostGroup(group: IAgentHostGroup): IDisposable;
56
+ setSelectedHostId(hostId: string): void;
57
+ reconnect(hostId: string): void;
58
+ disconnect(hostId: string): void;
59
+ /**
60
+ * Resolve a selection against the live entry list. A selection made by the
61
+ * fallback is provisional and is replaced once a connectable entry shows
62
+ * up; an explicit user choice is always kept.
63
+ */
64
+ private _validate;
65
+ /**
66
+ * Subscribe to the current set of remote providers so that host list
67
+ * updates (registration/unregistration and status changes) are surfaced
68
+ * via {@link onDidChange}. One `autorun` reads every provider's
69
+ * `connectionStatus` observable and recomputes the entry list, folding
70
+ * providers that declare an {@link IAgentHostGroup} into a single entry.
71
+ */
72
+ private _rewatchProviders;
73
+ private _applyHosts;
74
+ /**
75
+ * Store an explicit user choice. Automatic selections are deliberately not
76
+ * stored, so a restart re-runs the fallback against the hosts of the day.
77
+ */
78
+ private _persist;
79
+ }
@@ -0,0 +1,259 @@
1
+
2
+ import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
3
+ import { Emitter } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
4
+ import { Disposable, DisposableStore, toDisposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
5
+ import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
6
+ import { isWeb } from '@codingame/monaco-vscode-api/vscode/vs/base/common/platform';
7
+ import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
8
+ import { IRemoteAgentHostService } from '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/remoteAgentHostService.service';
9
+ import '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/extensions';
10
+ import { StorageScope, StorageTarget } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage';
11
+ import { IStorageService } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service';
12
+ import { isAgentHostProvider } from '@codingame/monaco-vscode-api/vscode/vs/sessions/common/agentHostSessionsProvider';
13
+ import { ISessionsProvidersService } from '@codingame/monaco-vscode-api/vscode/vs/sessions/services/sessions/browser/sessionsProvidersService.service';
14
+ import { AgentHostFilterConnectionStatus } from '@codingame/monaco-vscode-api/vscode/vs/sessions/services/agentHostFilter/common/agentHostFilter';
15
+ import '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
16
+ import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
17
+
18
+ const STORAGE_KEY = "sessions.agentHostFilter.selectedProviderId";
19
+ function mapStatus(s) {
20
+ switch (s.kind) {
21
+ case "connected":
22
+ return AgentHostFilterConnectionStatus.Connected;
23
+ case "connecting":
24
+ return AgentHostFilterConnectionStatus.Connecting;
25
+ case "reconnecting":
26
+ return AgentHostFilterConnectionStatus.Connecting;
27
+ case "disconnected":
28
+ case "incompatible":
29
+ default:
30
+ return AgentHostFilterConnectionStatus.Disconnected;
31
+ }
32
+ }
33
+ function rollupStatus(statuses) {
34
+ if (statuses.includes(AgentHostFilterConnectionStatus.Connected)) {
35
+ return AgentHostFilterConnectionStatus.Connected;
36
+ }
37
+ if (statuses.includes(AgentHostFilterConnectionStatus.Connecting)) {
38
+ return AgentHostFilterConnectionStatus.Connecting;
39
+ }
40
+ return AgentHostFilterConnectionStatus.Disconnected;
41
+ }
42
+ function isRemoteAgentHostProvider(provider) {
43
+ if (!provider || typeof provider !== "object" || !("id" in provider)) {
44
+ return false;
45
+ }
46
+ const p = provider;
47
+ return isAgentHostProvider(p) && p.connectionStatus !== undefined && typeof p.remoteAddress === "string";
48
+ }
49
+ let AgentHostFilterService = class AgentHostFilterService extends Disposable {
50
+ constructor(_sessionsProvidersService, _remoteAgentHostService, _storageService) {
51
+ super();
52
+ this._sessionsProvidersService = _sessionsProvidersService;
53
+ this._remoteAgentHostService = _remoteAgentHostService;
54
+ this._storageService = _storageService;
55
+ this._onDidChange = this._register(( new Emitter()));
56
+ this.onDidChange = this._onDidChange.event;
57
+ this._onDidChangeDiscovering = this._register(( new Emitter()));
58
+ this.onDidChangeDiscovering = this._onDidChangeDiscovering.event;
59
+ this._selectionIsAutomatic = false;
60
+ this._hosts = [];
61
+ this._discoveryHandlers = ( new Set());
62
+ this._discoveringCount = 0;
63
+ this._declaredGroups = ( new Map());
64
+ this._providerWatchers = this._register(( new DisposableStore()));
65
+ this._selectedHostId = this._storageService.get(STORAGE_KEY, StorageScope.PROFILE, undefined);
66
+ this._rewatchProviders();
67
+ this._register(
68
+ this._sessionsProvidersService.onDidChangeProviders(() => this._rewatchProviders())
69
+ );
70
+ }
71
+ get selectedHostId() {
72
+ return this._selectedHostId;
73
+ }
74
+ get selectedHost() {
75
+ if (this._selectedHostId === undefined) {
76
+ return undefined;
77
+ }
78
+ return this._hosts.find(h => h.id === this._selectedHostId);
79
+ }
80
+ get hosts() {
81
+ return this._hosts;
82
+ }
83
+ get isDiscovering() {
84
+ return this._discoveringCount > 0;
85
+ }
86
+ async rediscover() {
87
+ if (this._discoveryHandlers.size === 0) {
88
+ return;
89
+ }
90
+ this._discoveringCount++;
91
+ if (this._discoveringCount === 1) {
92
+ this._onDidChangeDiscovering.fire();
93
+ }
94
+ try {
95
+ await Promise.allSettled([...this._discoveryHandlers].map(h => h().catch(() => {})));
96
+ } finally {
97
+ this._discoveringCount--;
98
+ if (this._discoveringCount === 0) {
99
+ this._onDidChangeDiscovering.fire();
100
+ }
101
+ }
102
+ }
103
+ registerDiscoveryHandler(handler) {
104
+ this._discoveryHandlers.add(handler);
105
+ return toDisposable(() => this._discoveryHandlers.delete(handler));
106
+ }
107
+ registerHostGroup(group) {
108
+ this._declaredGroups.set(group.id, group);
109
+ this._rewatchProviders();
110
+ return toDisposable(() => {
111
+ if (this._declaredGroups.delete(group.id) && !this._providerWatchers.isDisposed) {
112
+ this._rewatchProviders();
113
+ }
114
+ });
115
+ }
116
+ setSelectedHostId(hostId) {
117
+ if (!( this._hosts.some(h => h.id === hostId))) {
118
+ return;
119
+ }
120
+ const changed = hostId !== this._selectedHostId;
121
+ this._selectedHostId = hostId;
122
+ this._selectionIsAutomatic = false;
123
+ this._persist(hostId);
124
+ if (changed) {
125
+ this._onDidChange.fire();
126
+ }
127
+ }
128
+ reconnect(hostId) {
129
+ const host = this._hosts.find(h => h.id === hostId);
130
+ if (!host) {
131
+ return;
132
+ }
133
+ for (const providerId of host.providerIds) {
134
+ const provider = this._sessionsProvidersService.getProvider(providerId);
135
+ if (provider && isAgentHostProvider(provider) && provider.connect) {
136
+ provider.connect().catch(() => {});
137
+ continue;
138
+ }
139
+ const address = provider && isAgentHostProvider(provider) ? provider.remoteAddress : host.address;
140
+ if (address) {
141
+ this._remoteAgentHostService.reconnect(address);
142
+ }
143
+ }
144
+ }
145
+ disconnect(hostId) {
146
+ const host = this._hosts.find(h => h.id === hostId);
147
+ if (!host) {
148
+ return;
149
+ }
150
+ for (const providerId of host.providerIds) {
151
+ const provider = this._sessionsProvidersService.getProvider(providerId);
152
+ if (provider && isAgentHostProvider(provider) && provider.disconnect) {
153
+ provider.disconnect().catch(() => {});
154
+ }
155
+ }
156
+ }
157
+ _validate(hostId) {
158
+ if (this._hosts.length === 0) {
159
+ return {
160
+ id: undefined,
161
+ automatic: false
162
+ };
163
+ }
164
+ const current = hostId === undefined ? undefined : this._hosts.find(h => h.id === hostId);
165
+ if (current && (!this._selectionIsAutomatic || current.connectable)) {
166
+ return {
167
+ id: current.id,
168
+ automatic: this._selectionIsAutomatic
169
+ };
170
+ }
171
+ const connectable = this._hosts.find(h => h.connectable);
172
+ return {
173
+ id: (connectable ?? current ?? this._hosts[0]).id,
174
+ automatic: true
175
+ };
176
+ }
177
+ _rewatchProviders() {
178
+ this._providerWatchers.clear();
179
+ const providers = this._sessionsProvidersService.getProviders().filter(isRemoteAgentHostProvider);
180
+ this._providerWatchers.add(autorun(reader => {
181
+ const grouped = ( new Map());
182
+ const entries = [];
183
+ const groupEntry = group => {
184
+ let entry = grouped.get(group.id);
185
+ if (!entry) {
186
+ entry = {
187
+ id: group.id,
188
+ providerIds: [],
189
+ label: group.label,
190
+ grouped: true,
191
+ address: undefined,
192
+ icon: group.icon ?? Codicon.remote,
193
+ status: AgentHostFilterConnectionStatus.Disconnected,
194
+ connectable: group.connectable !== false,
195
+ order: group.order ?? 0
196
+ };
197
+ grouped.set(group.id, entry);
198
+ entries.push(entry);
199
+ }
200
+ return entry;
201
+ };
202
+ for (const group of ( this._declaredGroups.values())) {
203
+ groupEntry(group);
204
+ }
205
+ for (const provider of providers) {
206
+ const status = mapStatus(provider.connectionStatus.read(reader));
207
+ const group = provider.hostGroup;
208
+ if (!group) {
209
+ entries.push({
210
+ id: provider.id,
211
+ providerIds: [provider.id],
212
+ label: provider.label,
213
+ grouped: false,
214
+ address: provider.remoteAddress,
215
+ icon: provider.icon,
216
+ status,
217
+ connectable: true,
218
+ order: 0
219
+ });
220
+ continue;
221
+ }
222
+ const entry = groupEntry(group);
223
+ entry.providerIds.push(provider.id);
224
+ entry.status = rollupStatus([entry.status, status]);
225
+ }
226
+ entries.sort((a, b) => a.order - b.order || a.label.localeCompare(b.label));
227
+ this._applyHosts(entries.map((
228
+ {
229
+ order,
230
+ ...entry
231
+ }
232
+ ) => entry));
233
+ }));
234
+ }
235
+ _applyHosts(hosts) {
236
+ const changed = hosts.length !== this._hosts.length || ( hosts.some(
237
+ (h, i) => h.id !== this._hosts[i].id || h.label !== this._hosts[i].label || h.address !== this._hosts[i].address || h.status !== this._hosts[i].status || h.providerIds.length !== this._hosts[i].providerIds.length || ( h.providerIds.some((p, j) => p !== this._hosts[i].providerIds[j]))
238
+ ));
239
+ this._hosts = hosts;
240
+ const validated = isWeb ? this._validate(this._selectedHostId) : {
241
+ id: undefined,
242
+ automatic: false
243
+ };
244
+ const selectionChanged = validated.id !== this._selectedHostId;
245
+ if (selectionChanged) {
246
+ this._selectedHostId = validated.id;
247
+ }
248
+ this._selectionIsAutomatic = validated.automatic;
249
+ if (changed || selectionChanged) {
250
+ this._onDidChange.fire();
251
+ }
252
+ }
253
+ _persist(hostId) {
254
+ this._storageService.store(STORAGE_KEY, hostId, StorageScope.PROFILE, StorageTarget.USER);
255
+ }
256
+ };
257
+ AgentHostFilterService = ( __decorate([( __param(0, ISessionsProvidersService)), ( __param(1, IRemoteAgentHostService)), ( __param(2, IStorageService))], AgentHostFilterService));
258
+
259
+ export { AgentHostFilterService };
@@ -0,0 +1,42 @@
1
+ import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
2
+ import { IObservable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/observable";
3
+ import { MenuId } from "@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions";
4
+ import { SyncDescriptor } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/descriptors";
5
+ /**
6
+ * How a custom view renders the actions in its header: as an icon toolbar or as
7
+ * a row of labelled buttons. Both render the same menu, so contributed actions
8
+ * and their `when` clauses are identical either way.
9
+ */
10
+ export type CustomViewActionsStyle = "toolbar" | "buttonBar";
11
+ export interface ICustomViewActions {
12
+ readonly style: CustomViewActionsStyle;
13
+ readonly menuId: MenuId;
14
+ }
15
+ export interface ICustomViewDescriptor {
16
+ /** Stable id, used by `ICustomViewService.showCustomView`. */
17
+ readonly id: string;
18
+ readonly ctor: SyncDescriptor<AbstractCustomView>;
19
+ readonly actions?: ICustomViewActions;
20
+ }
21
+ /**
22
+ * A full-surface view hosted in the custom view grid, in place of the sessions
23
+ * grid. The host renders the surrounding chrome (header with title, description
24
+ * and actions, plus the scroll container); a view only fills its content area
25
+ * and is disposed when it is hidden.
26
+ */
27
+ export declare abstract class AbstractCustomView extends Disposable {
28
+ /** Shown in the header. Observable so it can settle after an async load. */
29
+ abstract readonly title: IObservable<string>;
30
+ /** Optional secondary line below the title. */
31
+ readonly description: IObservable<string | undefined>;
32
+ /**
33
+ * Width the content is capped to. Defaults to the same measure the session
34
+ * views use.
35
+ */
36
+ readonly maxWidth: number | undefined;
37
+ /** Renders the content into the host-provided container. Called once. */
38
+ abstract render(container: HTMLElement): void;
39
+ /** Called whenever the available content area changes. */
40
+ abstract layout(width: number, height: number): void;
41
+ focus(): void;
42
+ }
@@ -0,0 +1,15 @@
1
+
2
+ import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
3
+ import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
4
+ import { constObservable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/constObservable';
5
+
6
+ class AbstractCustomView extends Disposable {
7
+ constructor() {
8
+ super(...arguments);
9
+ this.description = constObservable(undefined);
10
+ this.maxWidth = undefined;
11
+ }
12
+ focus() { }
13
+ }
14
+
15
+ export { AbstractCustomView };
@@ -0,0 +1,21 @@
1
+ import { Disposable, IDisposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
2
+ import { IObservable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/observable";
3
+ import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service";
4
+ import { IStorageService } from "@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service";
5
+ import { ICustomViewDescriptor } from "./customView.js";
6
+ import { ICustomViewService } from "@codingame/monaco-vscode-api/vscode/vs/sessions/services/customView/browser/customViewService.service";
7
+ export declare class CustomViewService extends Disposable implements ICustomViewService {
8
+ private readonly _logService;
9
+ private readonly _storageService;
10
+ readonly _serviceBrand: undefined;
11
+ private readonly _descriptors;
12
+ private _desiredCustomViewId;
13
+ private readonly _activeCustomView;
14
+ readonly activeCustomView: IObservable<ICustomViewDescriptor | undefined>;
15
+ constructor(_logService: ILogService, _storageService: IStorageService);
16
+ registerCustomView(descriptor: ICustomViewDescriptor, options?: {
17
+ readonly restore?: boolean;
18
+ }): IDisposable;
19
+ showCustomView(id: string): void;
20
+ hideCustomView(): void;
21
+ }
@@ -0,0 +1,68 @@
1
+
2
+ import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
3
+ import { Disposable, toDisposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
4
+ import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
5
+ import '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/extensions';
6
+ import { ILogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service';
7
+ import { StorageScope, StorageTarget } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage';
8
+ import { IStorageService } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service';
9
+ import '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
10
+ import { observableValue } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableValue';
11
+
12
+ const ACTIVE_CUSTOM_VIEW_STORAGE_KEY = "sessions.activeCustomView";
13
+ let CustomViewService = class CustomViewService extends Disposable {
14
+ constructor(_logService, _storageService) {
15
+ super();
16
+ this._logService = _logService;
17
+ this._storageService = _storageService;
18
+ this._descriptors = ( new Map());
19
+ this._activeCustomView = observableValue(this, undefined);
20
+ this.activeCustomView = this._activeCustomView;
21
+ this._desiredCustomViewId = this._storageService.get(ACTIVE_CUSTOM_VIEW_STORAGE_KEY, StorageScope.WORKSPACE);
22
+ }
23
+ registerCustomView(descriptor, options) {
24
+ if (( this._descriptors.has(descriptor.id))) {
25
+ throw ( new Error(`A custom view with id '${descriptor.id}' is already registered`));
26
+ }
27
+ this._descriptors.set(descriptor.id, descriptor);
28
+ if (this._desiredCustomViewId === descriptor.id) {
29
+ if (options?.restore === false) {
30
+ this._desiredCustomViewId = undefined;
31
+ this._storageService.remove(ACTIVE_CUSTOM_VIEW_STORAGE_KEY, StorageScope.WORKSPACE);
32
+ } else {
33
+ this._activeCustomView.set(descriptor, undefined);
34
+ }
35
+ }
36
+ return toDisposable(() => {
37
+ this._descriptors.delete(descriptor.id);
38
+ if (this._activeCustomView.get() === descriptor) {
39
+ this._activeCustomView.set(undefined, undefined);
40
+ }
41
+ });
42
+ }
43
+ showCustomView(id) {
44
+ const descriptor = this._descriptors.get(id);
45
+ if (!descriptor) {
46
+ this._logService.warn(
47
+ `[CustomViewService] showCustomView: no custom view registered with id '${id}'`
48
+ );
49
+ return;
50
+ }
51
+ this._desiredCustomViewId = id;
52
+ this._storageService.store(
53
+ ACTIVE_CUSTOM_VIEW_STORAGE_KEY,
54
+ id,
55
+ StorageScope.WORKSPACE,
56
+ StorageTarget.MACHINE
57
+ );
58
+ this._activeCustomView.set(descriptor, undefined);
59
+ }
60
+ hideCustomView() {
61
+ this._desiredCustomViewId = undefined;
62
+ this._storageService.remove(ACTIVE_CUSTOM_VIEW_STORAGE_KEY, StorageScope.WORKSPACE);
63
+ this._activeCustomView.set(undefined, undefined);
64
+ }
65
+ };
66
+ CustomViewService = ( __decorate([( __param(0, ILogService)), ( __param(1, IStorageService))], CustomViewService));
67
+
68
+ export { CustomViewService };