@codingame/monaco-vscode-api 37.1.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 (2938) hide show
  1. package/css.d.ts +1 -1
  2. package/css.js +4 -3
  3. package/lifecycle.d.ts +2 -2
  4. package/missing-services.js +890 -61
  5. package/override/vs/sessions/contrib/providers/remoteAgentHost/browser/devTunnelsWebLoader.d.ts +4 -0
  6. package/package.json +8 -8
  7. package/service-override/tools/editor.d.ts +1 -1
  8. package/services.d.ts +48 -0
  9. package/services.js +56 -4
  10. package/tools.d.ts +4 -0
  11. package/tools.js +24 -1
  12. package/vscode/src/vs/base/browser/animationSync.d.ts +45 -0
  13. package/vscode/src/vs/base/browser/animationSync.js +122 -0
  14. package/vscode/src/vs/base/browser/dom.js +4 -4
  15. package/vscode/src/vs/base/browser/domSanitize.js +6 -4
  16. package/vscode/src/vs/base/browser/fonts.js +6 -5
  17. package/vscode/src/vs/base/browser/htmlToMarkdown.d.ts +1 -0
  18. package/vscode/src/vs/base/browser/htmlToMarkdown.js +144 -0
  19. package/vscode/src/vs/base/browser/iframe.js +1 -1
  20. package/vscode/src/vs/base/browser/indexedDB.js +1 -1
  21. package/vscode/src/vs/base/browser/markdownRenderer.js +3 -3
  22. package/vscode/src/vs/base/browser/ui/actionbar/actionViewItems.js +1 -1
  23. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.js +1 -1
  24. package/vscode/src/vs/base/browser/ui/aria/aria.js +1 -1
  25. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.js +1 -1
  26. package/vscode/src/vs/base/browser/ui/button/button.js +1 -1
  27. package/vscode/src/vs/base/browser/ui/centered/centeredViewLayout.js +1 -1
  28. package/vscode/src/vs/base/browser/ui/codicons/codiconStyles.js +2 -2
  29. package/vscode/src/vs/base/browser/ui/contextview/contextview.js +1 -1
  30. package/vscode/src/vs/base/browser/ui/countBadge/countBadge.js +1 -1
  31. package/vscode/src/vs/base/browser/ui/dialog/dialog.js +10 -10
  32. package/vscode/src/vs/base/browser/ui/dnd/dnd.js +1 -1
  33. package/vscode/src/vs/base/browser/ui/dropdown/dropdown.js +1 -1
  34. package/vscode/src/vs/base/browser/ui/dropdown/dropdownActionViewItem.js +1 -1
  35. package/vscode/src/vs/base/browser/ui/findinput/findInput.js +1 -1
  36. package/vscode/src/vs/base/browser/ui/findinput/replaceInput.js +1 -1
  37. package/vscode/src/vs/base/browser/ui/grid/grid.js +7 -7
  38. package/vscode/src/vs/base/browser/ui/grid/gridview.js +35 -27
  39. package/vscode/src/vs/base/browser/ui/hover/hoverWidget.js +1 -1
  40. package/vscode/src/vs/base/browser/ui/iconLabel/iconLabel.js +5 -5
  41. package/vscode/src/vs/base/browser/ui/icons/iconSelectBox.js +1 -1
  42. package/vscode/src/vs/base/browser/ui/inputbox/inputBox.js +1 -1
  43. package/vscode/src/vs/base/browser/ui/keybindingLabel/keybindingLabel.js +1 -1
  44. package/vscode/src/vs/base/browser/ui/list/listPaging.js +19 -19
  45. package/vscode/src/vs/base/browser/ui/list/listView.js +16 -16
  46. package/vscode/src/vs/base/browser/ui/list/listWidget.js +32 -29
  47. package/vscode/src/vs/base/browser/ui/list/rangeMap.js +9 -35
  48. package/vscode/src/vs/base/browser/ui/menu/menubar.js +1 -1
  49. package/vscode/src/vs/base/browser/ui/mouseCursor/mouseCursor.js +1 -1
  50. package/vscode/src/vs/base/browser/ui/pixelSpinner/pixelSpinner.css +169 -0
  51. package/vscode/src/vs/base/browser/ui/pixelSpinner/pixelSpinner.d.ts +32 -0
  52. package/vscode/src/vs/base/browser/ui/pixelSpinner/pixelSpinner.js +43 -0
  53. package/vscode/src/vs/base/browser/ui/progressbar/progressbar.js +1 -1
  54. package/vscode/src/vs/base/browser/ui/radio/radio.js +4 -4
  55. package/vscode/src/vs/base/browser/ui/sash/sash.js +1 -1
  56. package/vscode/src/vs/base/browser/ui/scrollbar/scrollableElement.js +1 -1
  57. package/vscode/src/vs/base/browser/ui/segmentedIconToggle/segmentedIconToggle.css +114 -0
  58. package/vscode/src/vs/base/browser/ui/selectBox/selectBox.js +1 -1
  59. package/vscode/src/vs/base/browser/ui/selectBox/selectBoxCustom.js +10 -3
  60. package/vscode/src/vs/base/browser/ui/severityIcon/severityIcon.js +1 -1
  61. package/vscode/src/vs/base/browser/ui/splitview/paneview.js +5 -5
  62. package/vscode/src/vs/base/browser/ui/splitview/splitview.js +19 -19
  63. package/vscode/src/vs/base/browser/ui/table/tableWidget.js +7 -7
  64. package/vscode/src/vs/base/browser/ui/toggle/switch.js +1 -1
  65. package/vscode/src/vs/base/browser/ui/toggle/toggle.js +1 -1
  66. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.js +4 -4
  67. package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +41 -29
  68. package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.js +50 -38
  69. package/vscode/src/vs/base/browser/ui/tree/compressedObjectTreeModel.js +22 -22
  70. package/vscode/src/vs/base/browser/ui/tree/dataTree.js +2 -2
  71. package/vscode/src/vs/base/browser/ui/tree/indexTreeModel.js +11 -6
  72. package/vscode/src/vs/base/browser/ui/tree/objectTree.js +1 -1
  73. package/vscode/src/vs/base/browser/ui/tree/objectTreeModel.js +4 -4
  74. package/vscode/src/vs/base/common/arrays.js +4 -4
  75. package/vscode/src/vs/base/common/async.js +12 -12
  76. package/vscode/src/vs/base/common/dataTransfer.js +2 -2
  77. package/vscode/src/vs/base/common/equals.js +1 -1
  78. package/vscode/src/vs/base/common/event.js +6 -6
  79. package/vscode/src/vs/base/common/fuzzyScorer.js +3 -3
  80. package/vscode/src/vs/base/common/glob.js +11 -3
  81. package/vscode/src/vs/base/common/htmlContent.js +2 -2
  82. package/vscode/src/vs/base/common/labels.js +2 -2
  83. package/vscode/src/vs/base/common/lifecycle.js +3 -3
  84. package/vscode/src/vs/base/common/linkedText.js +1 -1
  85. package/vscode/src/vs/base/common/markdownLinks.d.ts +37 -0
  86. package/vscode/src/vs/base/common/markdownLinks.js +127 -0
  87. package/vscode/src/vs/base/common/objects.js +1 -1
  88. package/vscode/src/vs/base/common/observableInternal/logging/consoleObservableLogger.js +6 -3
  89. package/vscode/src/vs/base/common/observableInternal/logging/debugger/devToolsLogger.js +8 -8
  90. package/vscode/src/vs/base/common/observableInternal/utils/utilsCancellation.js +2 -2
  91. package/vscode/src/vs/base/common/paging.js +4 -1
  92. package/vscode/src/vs/base/common/uriTemplate.js +8 -8
  93. package/vscode/src/vs/base/common/yaml.js +2 -2
  94. package/vscode/src/vs/base/parts/ipc/common/webSocketFraming.d.ts +57 -0
  95. package/vscode/src/vs/base/parts/ipc/common/webSocketFraming.js +219 -0
  96. package/vscode/src/vs/editor/browser/config/fontMeasurements.js +1 -1
  97. package/vscode/src/vs/editor/browser/controller/editContext/clipboardUtils.js +2 -2
  98. package/vscode/src/vs/editor/browser/controller/editContext/native/nativeEditContext.js +1 -1
  99. package/vscode/src/vs/editor/browser/controller/editContext/textArea/textAreaEditContext.js +1 -1
  100. package/vscode/src/vs/editor/browser/coreCommands.js +22 -15
  101. package/vscode/src/vs/editor/browser/editorExtensions.js +1 -1
  102. package/vscode/src/vs/editor/browser/gpu/atlas/textureAtlas.js +2 -2
  103. package/vscode/src/vs/editor/browser/gpu/css/decorationCssRuleExtractor.js +1 -1
  104. package/vscode/src/vs/editor/browser/gpu/viewGpuContext.js +9 -3
  105. package/vscode/src/vs/editor/browser/observableCodeEditor.js +8 -8
  106. package/vscode/src/vs/editor/browser/services/abstractCodeEditorService.js +3 -3
  107. package/vscode/src/vs/editor/browser/services/bulkEditService.js +2 -2
  108. package/vscode/src/vs/editor/browser/services/codeEditorService.service.d.ts +1 -2
  109. package/vscode/src/vs/editor/browser/services/editorWorkerService.js +5 -5
  110. package/vscode/src/vs/editor/browser/services/inlineCompletionsService.js +1 -1
  111. package/vscode/src/vs/editor/browser/services/inlineCompletionsService.service.d.ts +1 -1
  112. package/vscode/src/vs/editor/browser/view/domLineBreaksComputer.js +6 -6
  113. package/vscode/src/vs/editor/browser/view.js +4 -4
  114. package/vscode/src/vs/editor/browser/viewParts/blockDecorations/blockDecorations.js +1 -1
  115. package/vscode/src/vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight.js +1 -1
  116. package/vscode/src/vs/editor/browser/viewParts/decorations/decorations.js +1 -1
  117. package/vscode/src/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js +1 -1
  118. package/vscode/src/vs/editor/browser/viewParts/gpuMark/gpuMark.js +1 -1
  119. package/vscode/src/vs/editor/browser/viewParts/indentGuides/indentGuides.js +5 -5
  120. package/vscode/src/vs/editor/browser/viewParts/lineNumbers/lineNumbers.js +1 -1
  121. package/vscode/src/vs/editor/browser/viewParts/linesDecorations/linesDecorations.js +1 -1
  122. package/vscode/src/vs/editor/browser/viewParts/margin/margin.js +1 -1
  123. package/vscode/src/vs/editor/browser/viewParts/marginDecorations/marginDecorations.js +1 -1
  124. package/vscode/src/vs/editor/browser/viewParts/minimap/minimap.js +1 -1
  125. package/vscode/src/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.js +1 -1
  126. package/vscode/src/vs/editor/browser/viewParts/rulers/rulers.js +1 -1
  127. package/vscode/src/vs/editor/browser/viewParts/scrollDecoration/scrollDecoration.js +1 -1
  128. package/vscode/src/vs/editor/browser/viewParts/selections/selections.js +4 -4
  129. package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursors.js +1 -1
  130. package/vscode/src/vs/editor/browser/viewParts/viewLines/viewLines.js +1 -1
  131. package/vscode/src/vs/editor/browser/viewParts/whitespace/whitespace.js +2 -2
  132. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.js +4 -4
  133. package/vscode/src/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js +3 -3
  134. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorDecorations.js +27 -66
  135. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js +4 -4
  136. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/renderLines.js +1 -1
  137. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorOptions.js +3 -3
  138. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +38 -28
  139. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +23 -17
  140. package/vscode/src/vs/editor/browser/widget/diffEditor/features/gutterFeature.js +10 -10
  141. package/vscode/src/vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js +12 -8
  142. package/vscode/src/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js +12 -8
  143. package/vscode/src/vs/editor/browser/widget/diffEditor/features/overviewRulerFeature.js +12 -4
  144. package/vscode/src/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js +4 -4
  145. package/vscode/src/vs/editor/browser/widget/diffEditor/utils/editorGutter.js +1 -1
  146. package/vscode/src/vs/editor/browser/widget/markdownRenderer/browser/editorMarkdownCodeBlockRenderer.js +1 -1
  147. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/compressedVirtualizedScrollView.js +1 -1
  148. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorLogging.js +2 -2
  149. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorViewModel.js +5 -3
  150. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidgetImpl.js +11 -11
  151. package/vscode/src/vs/editor/common/core/2d/point.js +1 -1
  152. package/vscode/src/vs/editor/common/core/2d/size.js +1 -1
  153. package/vscode/src/vs/editor/common/core/edits/edit.js +1 -1
  154. package/vscode/src/vs/editor/common/core/edits/lengthEdit.js +1 -1
  155. package/vscode/src/vs/editor/common/core/edits/lineEdit.js +8 -8
  156. package/vscode/src/vs/editor/common/core/edits/stringEdit.js +5 -5
  157. package/vscode/src/vs/editor/common/core/edits/textEdit.js +5 -5
  158. package/vscode/src/vs/editor/common/core/ranges/lineRange.js +2 -2
  159. package/vscode/src/vs/editor/common/core/ranges/offsetRange.js +1 -1
  160. package/vscode/src/vs/editor/common/core/text/positionToOffsetImpl.js +2 -2
  161. package/vscode/src/vs/editor/common/cursor/cursor.js +3 -3
  162. package/vscode/src/vs/editor/common/cursor/cursorCollection.js +5 -5
  163. package/vscode/src/vs/editor/common/cursor/cursorMoveCommands.js +16 -16
  164. package/vscode/src/vs/editor/common/cursor/cursorTypeEditOperations.js +10 -10
  165. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/computeMovedLines.js +5 -3
  166. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/defaultLinesDiffComputer.js +5 -5
  167. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/linesSliceCharSequence.js +1 -1
  168. package/vscode/src/vs/editor/common/diff/legacyLinesDiffComputer.js +2 -2
  169. package/vscode/src/vs/editor/common/diff/linesDiffComputer.js +1 -1
  170. package/vscode/src/vs/editor/common/diff/rangeMapping.js +9 -6
  171. package/vscode/src/vs/editor/common/editorContextKeys.js +64 -64
  172. package/vscode/src/vs/editor/common/languageFeatureRegistry.js +1 -1
  173. package/vscode/src/vs/editor/common/languages/language.service.d.ts +1 -2
  174. package/vscode/src/vs/editor/common/languages/languageConfigurationRegistry.js +4 -4
  175. package/vscode/src/vs/editor/common/languages/languageConfigurationRegistry.service.d.ts +1 -1
  176. package/vscode/src/vs/editor/common/languages/supports/characterPair.js +3 -3
  177. package/vscode/src/vs/editor/common/languages/supports/languageBracketsConfiguration.js +2 -2
  178. package/vscode/src/vs/editor/common/languages/supports/richEditBrackets.js +6 -6
  179. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/beforeEditPositionMapper.js +3 -3
  180. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/bracketPairsTree.js +2 -2
  181. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/brackets.js +1 -1
  182. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/colorizedBracketPairsDecorationProvider.js +3 -3
  183. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/fixBrackets.js +1 -1
  184. package/vscode/src/vs/editor/common/model/editStack.js +11 -5
  185. package/vscode/src/vs/editor/common/model/textModel.js +16 -16
  186. package/vscode/src/vs/editor/common/model/textModelStringEdit.js +3 -3
  187. package/vscode/src/vs/editor/common/model/textModelTokens.js +1 -1
  188. package/vscode/src/vs/editor/common/model/tokens/abstractSyntaxTokenBackend.js +4 -2
  189. package/vscode/src/vs/editor/common/model/tokens/annotations.js +4 -4
  190. package/vscode/src/vs/editor/common/model/tokens/tokenizerSyntaxTokenBackend.js +1 -1
  191. package/vscode/src/vs/editor/common/model/tokens/treeSitter/treeSitterTokenizationImpl.js +9 -9
  192. package/vscode/src/vs/editor/common/model/tokens/treeSitter/treeSitterTree.js +2 -2
  193. package/vscode/src/vs/editor/common/services/editorWebWorker.js +4 -4
  194. package/vscode/src/vs/editor/common/services/editorWorker.service.d.ts +1 -1
  195. package/vscode/src/vs/editor/common/services/languagesAssociations.js +23 -48
  196. package/vscode/src/vs/editor/common/services/markerDecorations.service.d.ts +1 -2
  197. package/vscode/src/vs/editor/common/services/markerDecorationsService.js +3 -3
  198. package/vscode/src/vs/editor/common/services/model.service.d.ts +1 -2
  199. package/vscode/src/vs/editor/common/services/resolverService.service.d.ts +1 -1
  200. package/vscode/src/vs/editor/common/services/textResourceConfiguration.service.d.ts +1 -2
  201. package/vscode/src/vs/editor/common/services/unicodeTextModelHighlighter.js +1 -1
  202. package/vscode/src/vs/editor/common/textModelEditSource.js +2 -2
  203. package/vscode/src/vs/editor/common/tokens/lineTokens.js +2 -2
  204. package/vscode/src/vs/editor/common/tokens/tokenWithTextArray.js +2 -2
  205. package/vscode/src/vs/editor/common/viewLayout/lineHeights.js +2 -2
  206. package/vscode/src/vs/editor/common/viewModel/modelLineProjection.js +1 -1
  207. package/vscode/src/vs/editor/common/viewModel/monospaceLineBreaksComputer.js +2 -2
  208. package/vscode/src/vs/editor/common/viewModel/viewModelLines.js +8 -8
  209. package/vscode/src/vs/editor/contrib/anchorSelect/browser/anchorSelect.js +2 -2
  210. package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +3 -3
  211. package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +12 -9
  212. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +7 -7
  213. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionKeybindingResolver.js +2 -2
  214. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +4 -4
  215. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionModel.js +1 -1
  216. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +1 -1
  217. package/vscode/src/vs/editor/contrib/codelens/browser/codeLensCache.js +2 -2
  218. package/vscode/src/vs/editor/contrib/codelens/browser/codelens.js +2 -2
  219. package/vscode/src/vs/editor/contrib/codelens/browser/codelensController.js +4 -4
  220. package/vscode/src/vs/editor/contrib/codelens/browser/codelensWidget.js +1 -1
  221. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorDetector.js +2 -2
  222. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParticipantUtils.js +2 -2
  223. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerBody.js +1 -1
  224. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerCloseButton.js +1 -1
  225. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerHeader.js +1 -1
  226. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerInsertButton.js +1 -1
  227. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerSaturationBox.js +1 -1
  228. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerStrip.js +1 -1
  229. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js +1 -1
  230. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerWidget.js +1 -1
  231. package/vscode/src/vs/editor/contrib/comment/browser/comment.js +2 -2
  232. package/vscode/src/vs/editor/contrib/diffEditorBreadcrumbs/browser/contribution.js +4 -4
  233. package/vscode/src/vs/editor/contrib/dnd/browser/dnd.js +3 -3
  234. package/vscode/src/vs/editor/contrib/documentSymbols/browser/outlineModel.js +4 -4
  235. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +1 -1
  236. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +10 -10
  237. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +4 -4
  238. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +3 -3
  239. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/edit.js +2 -2
  240. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +3 -3
  241. package/vscode/src/vs/editor/contrib/editorState/browser/keybindingCancellation.js +2 -2
  242. package/vscode/src/vs/editor/contrib/find/browser/findController.js +2 -2
  243. package/vscode/src/vs/editor/contrib/find/browser/findDecorations.js +4 -4
  244. package/vscode/src/vs/editor/contrib/find/browser/findModel.js +15 -12
  245. package/vscode/src/vs/editor/contrib/find/browser/findOptionsWidget.js +1 -1
  246. package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +5 -5
  247. package/vscode/src/vs/editor/contrib/floatingMenu/browser/floatingMenu.contribution.js +1 -1
  248. package/vscode/src/vs/editor/contrib/folding/browser/folding.js +4 -4
  249. package/vscode/src/vs/editor/contrib/folding/browser/syntaxRangeProvider.js +2 -2
  250. package/vscode/src/vs/editor/contrib/format/browser/format.js +4 -4
  251. package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +2 -2
  252. package/vscode/src/vs/editor/contrib/format/browser/formattingEdit.js +7 -6
  253. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoError.js +1 -1
  254. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +1 -1
  255. package/vscode/src/vs/editor/contrib/gotoError/browser/markerNavigationService.service.d.ts +1 -1
  256. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToSymbol.js +3 -3
  257. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js +1 -1
  258. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js +2 -2
  259. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +3 -3
  260. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/referencesModel.js +2 -2
  261. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.js +2 -2
  262. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverComputer.js +5 -4
  263. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverController.js +1 -1
  264. package/vscode/src/vs/editor/contrib/hover/browser/getHover.js +2 -2
  265. package/vscode/src/vs/editor/contrib/hover/browser/glyphHoverComputer.js +3 -3
  266. package/vscode/src/vs/editor/contrib/hover/browser/glyphHoverController.js +1 -1
  267. package/vscode/src/vs/editor/contrib/hover/browser/hoverActions.js +1 -1
  268. package/vscode/src/vs/editor/contrib/hover/browser/hoverContribution.js +1 -1
  269. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +2 -2
  270. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +2 -2
  271. package/vscode/src/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js +1 -1
  272. package/vscode/src/vs/editor/contrib/indentation/browser/indentation.js +2 -2
  273. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHints.js +2 -2
  274. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsController.js +3 -3
  275. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsLocations.js +3 -1
  276. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/commands.js +1 -1
  277. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionContextKeys.js +16 -16
  278. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionsController.js +11 -9
  279. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/inlineCompletionsHintsWidget.js +3 -3
  280. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/changeRecorder.js +3 -1
  281. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/editKind.js +3 -1
  282. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/ghostText.js +4 -4
  283. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.js +49 -47
  284. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsSource.js +15 -12
  285. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineSuggestionItem.js +6 -6
  286. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/provideInlineCompletions.js +3 -3
  287. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/suggestWidgetAdapter.js +2 -2
  288. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/typingSpeed.js +14 -33
  289. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/structuredLogger.js +1 -1
  290. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/utils.js +4 -4
  291. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/ghostText/ghostTextView.js +14 -11
  292. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorMenu.js +9 -9
  293. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorView.js +25 -25
  294. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsView.js +62 -41
  295. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViewProducer.js +5 -5
  296. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsCollapsedView.js +7 -7
  297. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsCustomView.js +8 -8
  298. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsDeletionView.js +15 -13
  299. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsInsertionView.js +14 -14
  300. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsLineReplacementView.js +6 -6
  301. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsSideBySideView.js +29 -29
  302. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsWordReplacementView.js +15 -15
  303. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/jumpToView.js +7 -7
  304. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/longDistanceHint/inlineEditsLongDistanceHint.js +7 -5
  305. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/longDistanceHint/longDistancePreviewEditor.js +1 -1
  306. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/longDistanceHint/longDistnaceWidgetPlacement.js +3 -3
  307. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/originalEditorInlineDiffView.js +7 -3
  308. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/theme.js +8 -8
  309. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/utils/flexBoxLayout.js +5 -11
  310. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/utils/utils.js +2 -2
  311. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineSuggestionsView.js +3 -3
  312. package/vscode/src/vs/editor/contrib/inlineProgress/browser/inlineProgress.js +1 -1
  313. package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +15 -15
  314. package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +6 -6
  315. package/vscode/src/vs/editor/contrib/links/browser/getLinks.js +3 -3
  316. package/vscode/src/vs/editor/contrib/links/browser/links.js +1 -1
  317. package/vscode/src/vs/editor/contrib/message/browser/messageController.js +2 -2
  318. package/vscode/src/vs/editor/contrib/middleScroll/browser/middleScrollController.js +8 -5
  319. package/vscode/src/vs/editor/contrib/multicursor/browser/multicursor.js +8 -8
  320. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +1 -1
  321. package/vscode/src/vs/editor/contrib/parameterHints/browser/provideSignatureHelp.js +13 -17
  322. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +2 -2
  323. package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderText.contribution.js +1 -1
  324. package/vscode/src/vs/editor/contrib/rename/browser/rename.js +3 -3
  325. package/vscode/src/vs/editor/contrib/rename/browser/renameWidget.js +11 -8
  326. package/vscode/src/vs/editor/contrib/sectionHeaders/browser/sectionHeaders.js +2 -2
  327. package/vscode/src/vs/editor/contrib/semanticTokens/browser/viewportSemanticTokens.js +1 -1
  328. package/vscode/src/vs/editor/contrib/semanticTokens/common/getSemanticTokens.js +4 -4
  329. package/vscode/src/vs/editor/contrib/smartSelect/browser/smartSelect.js +21 -15
  330. package/vscode/src/vs/editor/contrib/snippet/browser/snippetController2.js +5 -5
  331. package/vscode/src/vs/editor/contrib/snippet/browser/snippetParser.js +14 -14
  332. package/vscode/src/vs/editor/contrib/snippet/browser/snippetSession.js +7 -7
  333. package/vscode/src/vs/editor/contrib/snippet/browser/snippetVariables.js +4 -4
  334. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +11 -11
  335. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +2 -2
  336. package/vscode/src/vs/editor/contrib/suggest/browser/suggest.js +15 -15
  337. package/vscode/src/vs/editor/contrib/suggest/browser/suggestAlternatives.js +1 -1
  338. package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +33 -27
  339. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +19 -19
  340. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +3 -3
  341. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +2 -2
  342. package/vscode/src/vs/editor/contrib/suggest/browser/wordContextKey.js +3 -3
  343. package/vscode/src/vs/editor/contrib/symbolIcons/browser/symbolIcons.js +34 -34
  344. package/vscode/src/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +4 -4
  345. package/vscode/src/vs/editor/contrib/tokenization/browser/tokenization.js +1 -1
  346. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js +2 -2
  347. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +29 -29
  348. package/vscode/src/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js +5 -5
  349. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +10 -10
  350. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/textualHighlightProvider.js +4 -4
  351. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +8 -8
  352. package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +14 -10
  353. package/vscode/src/vs/editor/contrib/zoneWidget/browser/zoneWidget.js +1 -1
  354. package/vscode/src/vs/editor/standalone/browser/iPadShowKeyboard/iPadShowKeyboard.js +1 -1
  355. package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +3 -3
  356. package/vscode/src/vs/editor/standalone/browser/standaloneLayoutService.js +3 -1
  357. package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +2 -2
  358. package/vscode/src/vs/platform/accessibility/common/accessibility.js +6 -5
  359. package/vscode/src/vs/platform/accessibility/common/accessibility.service.d.ts +1 -1
  360. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +72 -70
  361. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.service.d.ts +2 -1
  362. package/vscode/src/vs/platform/action/common/actionCommonCategories.js +6 -6
  363. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +13 -13
  364. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +13 -13
  365. package/vscode/src/vs/platform/actionWidget/browser/actionWidgetDropdown.js +1 -1
  366. package/vscode/src/vs/platform/actionWidget/browser/tabbedActionListWidget.css +74 -0
  367. package/vscode/src/vs/platform/actionWidget/browser/tabbedActionListWidget.d.ts +149 -0
  368. package/vscode/src/vs/platform/actionWidget/browser/tabbedActionListWidget.js +429 -0
  369. package/vscode/src/vs/platform/actions/browser/actionViewItemService.service.d.ts +1 -1
  370. package/vscode/src/vs/platform/actions/browser/actionWidgetDropdownActionViewItem.d.ts +31 -0
  371. package/vscode/src/vs/platform/actions/browser/actionWidgetDropdownActionViewItem.js +92 -0
  372. package/vscode/src/vs/platform/actions/browser/buttonbar.css +29 -0
  373. package/vscode/src/vs/platform/actions/browser/buttonbar.d.ts +66 -0
  374. package/vscode/src/vs/platform/actions/browser/buttonbar.js +253 -0
  375. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +20 -12
  376. package/vscode/src/vs/platform/actions/browser/toolbar.js +3 -3
  377. package/vscode/src/vs/platform/actions/common/menuResetAction.js +1 -1
  378. package/vscode/src/vs/platform/actions/common/menuService.js +3 -3
  379. package/vscode/src/vs/platform/agentHost/browser/agentHostProtocolClient.d.ts +603 -0
  380. package/vscode/src/vs/platform/agentHost/browser/agentHostProtocolClient.js +1911 -0
  381. package/vscode/src/vs/platform/agentHost/browser/agentHostSandboxToggle.d.ts +16 -0
  382. package/vscode/src/vs/platform/agentHost/browser/agentHostSandboxToggle.js +48 -0
  383. package/vscode/src/vs/platform/agentHost/browser/codexApprovalsPicker.d.ts +3 -0
  384. package/vscode/src/vs/platform/agentHost/browser/codexApprovalsPicker.js +18 -0
  385. package/vscode/src/vs/platform/agentHost/browser/media/codexApprovalsPicker.css +10 -0
  386. package/vscode/src/vs/platform/agentHost/browser/nullAgentHostService.d.ts +3 -3
  387. package/vscode/src/vs/platform/agentHost/browser/webPubSubRelayTransport.d.ts +106 -0
  388. package/vscode/src/vs/platform/agentHost/browser/webPubSubRelayTransport.js +207 -0
  389. package/vscode/src/vs/platform/agentHost/common/agent.d.ts +2 -2
  390. package/vscode/src/vs/platform/agentHost/common/agentHostByokLm.d.ts +146 -0
  391. package/vscode/src/vs/platform/agentHost/common/agentHostByokLm.js +13 -0
  392. package/vscode/src/vs/platform/agentHost/common/agentHostByokLm.service.d.ts +31 -0
  393. package/vscode/src/vs/platform/agentHost/common/agentHostByokLm.service.js +6 -0
  394. package/vscode/src/vs/platform/agentHost/common/agentHostChangesetOperationService.d.ts +112 -0
  395. package/vscode/src/vs/platform/agentHost/common/agentHostChangesetOperationService.js +20 -0
  396. package/vscode/src/vs/platform/agentHost/common/agentHostClientInfo.d.ts +9 -0
  397. package/vscode/src/vs/platform/agentHost/common/agentHostClientInfo.js +20 -0
  398. package/vscode/src/vs/platform/agentHost/common/agentHostConnectionsService.d.ts +1 -1
  399. package/vscode/src/vs/platform/agentHost/common/agentHostConnectionsService.service.d.ts +1 -2
  400. package/vscode/src/vs/platform/agentHost/common/agentHostEnablementService.js +12 -12
  401. package/vscode/src/vs/platform/agentHost/common/agentHostExtensionProtocol.d.ts +144 -0
  402. package/vscode/src/vs/platform/agentHost/common/agentHostExtensionProtocol.js +20 -0
  403. package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.d.ts +204 -0
  404. package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.js +443 -0
  405. package/vscode/src/vs/platform/agentHost/common/agentHostManagedRules.d.ts +47 -0
  406. package/vscode/src/vs/platform/agentHost/common/agentHostManagedRules.js +75 -0
  407. package/vscode/src/vs/platform/agentHost/common/agentHostManagedSettings.d.ts +68 -0
  408. package/vscode/src/vs/platform/agentHost/common/agentHostManagedSettings.js +161 -0
  409. package/vscode/src/vs/platform/agentHost/common/agentHostOperatingSystem.d.ts +6 -0
  410. package/vscode/src/vs/platform/agentHost/common/agentHostOperatingSystem.js +32 -0
  411. package/vscode/src/vs/platform/agentHost/common/agentHostPlanReview.d.ts +20 -0
  412. package/vscode/src/vs/platform/agentHost/common/agentHostResourceService.service.d.ts +1 -1
  413. package/vscode/src/vs/platform/agentHost/common/agentHostSchema.js +104 -104
  414. package/vscode/src/vs/platform/agentHost/common/agentHostTelemetry.d.ts +1 -1
  415. package/vscode/src/vs/platform/agentHost/common/agentHostWorkingDirectories.d.ts +16 -0
  416. package/vscode/src/vs/platform/agentHost/common/agentHostWorkingDirectories.js +17 -0
  417. package/vscode/src/vs/platform/agentHost/common/agentMerge.d.ts +261 -0
  418. package/vscode/src/vs/platform/agentHost/common/agentMerge.js +165 -0
  419. package/vscode/src/vs/platform/agentHost/common/agentMergePrompt.d.ts +1 -1
  420. package/vscode/src/vs/platform/agentHost/common/agentMergePrompt.js +7 -7
  421. package/vscode/src/vs/platform/agentHost/common/agentModelSource.d.ts +27 -0
  422. package/vscode/src/vs/platform/agentHost/common/agentModelSource.js +23 -0
  423. package/vscode/src/vs/platform/agentHost/common/agentService.d.ts +3 -3
  424. package/vscode/src/vs/platform/agentHost/common/agentService.service.d.ts +2 -3
  425. package/vscode/src/vs/platform/agentHost/common/ahpJsonlLogger.d.ts +39 -0
  426. package/vscode/src/vs/platform/agentHost/common/ahpJsonlLogger.js +169 -0
  427. package/vscode/src/vs/platform/agentHost/common/annotationsUri.d.ts +12 -0
  428. package/vscode/src/vs/platform/agentHost/common/annotationsUri.js +8 -0
  429. package/vscode/src/vs/platform/agentHost/common/automationMigration.d.ts +20 -0
  430. package/vscode/src/vs/platform/agentHost/common/automationMigration.js +58 -0
  431. package/vscode/src/vs/platform/agentHost/common/changesetUri.d.ts +130 -0
  432. package/vscode/src/vs/platform/agentHost/common/changesetUri.js +42 -0
  433. package/vscode/src/vs/platform/agentHost/common/claudeSessionConfigKeys.d.ts +30 -0
  434. package/vscode/src/vs/platform/agentHost/common/claudeSessionConfigKeys.js +8 -0
  435. package/vscode/src/vs/platform/agentHost/common/cloudSandboxAgentHost.d.ts +230 -0
  436. package/vscode/src/vs/platform/agentHost/common/cloudSandboxAgentHost.js +53 -0
  437. package/vscode/src/vs/platform/agentHost/common/cloudSandboxAgentHost.service.d.ts +67 -0
  438. package/vscode/src/vs/platform/agentHost/common/cloudSandboxAgentHost.service.js +7 -0
  439. package/vscode/src/vs/platform/agentHost/common/codexSessionConfigKeys.d.ts +72 -0
  440. package/vscode/src/vs/platform/agentHost/common/codexSessionConfigKeys.js +16 -0
  441. package/vscode/src/vs/platform/agentHost/common/copilotCliConfig.d.ts +104 -0
  442. package/vscode/src/vs/platform/agentHost/common/copilotCliConfig.js +237 -0
  443. package/vscode/src/vs/platform/agentHost/common/customAgents.d.ts +42 -0
  444. package/vscode/src/vs/platform/agentHost/common/customAgents.js +56 -0
  445. package/vscode/src/vs/platform/agentHost/common/customizationEnablement.js +32 -26
  446. package/vscode/src/vs/platform/agentHost/common/fileEditDiff.d.ts +37 -0
  447. package/vscode/src/vs/platform/agentHost/common/fileEditDiff.js +34 -0
  448. package/vscode/src/vs/platform/agentHost/common/githubEndpoints.d.ts +52 -0
  449. package/vscode/src/vs/platform/agentHost/common/githubEndpoints.js +38 -0
  450. package/vscode/src/vs/platform/agentHost/common/githubIssueReferences.d.ts +8 -0
  451. package/vscode/src/vs/platform/agentHost/common/githubIssueReferences.js +13 -0
  452. package/vscode/src/vs/platform/agentHost/common/meta/agentChangesetFileMeta.d.ts +6 -0
  453. package/vscode/src/vs/platform/agentHost/common/meta/agentChangesetFileMeta.js +15 -0
  454. package/vscode/src/vs/platform/agentHost/common/meta/agentCompletionAttachmentMeta.d.ts +110 -0
  455. package/vscode/src/vs/platform/agentHost/common/meta/agentCompletionAttachmentMeta.js +79 -0
  456. package/vscode/src/vs/platform/agentHost/common/meta/agentDevContainerWorktreeMeta.d.ts +9 -0
  457. package/vscode/src/vs/platform/agentHost/common/meta/agentDevContainerWorktreeMeta.js +24 -0
  458. package/vscode/src/vs/platform/agentHost/common/meta/agentElementAttachments.d.ts +9 -0
  459. package/vscode/src/vs/platform/agentHost/common/meta/agentElementAttachments.js +21 -0
  460. package/vscode/src/vs/platform/agentHost/common/meta/agentFeedbackAnnotations.d.ts +128 -0
  461. package/vscode/src/vs/platform/agentHost/common/meta/agentFeedbackAnnotations.js +83 -0
  462. package/vscode/src/vs/platform/agentHost/common/meta/agentFeedbackAttachments.d.ts +30 -0
  463. package/vscode/src/vs/platform/agentHost/common/meta/agentFeedbackAttachments.js +85 -0
  464. package/vscode/src/vs/platform/agentHost/common/meta/agentHostArtifactRemovalMeta.d.ts +4 -0
  465. package/vscode/src/vs/platform/agentHost/common/meta/agentHostArtifactRemovalMeta.js +8 -0
  466. package/vscode/src/vs/platform/agentHost/common/meta/agentMergeMessageMeta.d.ts +15 -0
  467. package/vscode/src/vs/platform/agentHost/common/meta/agentMergeMessageMeta.js +8 -0
  468. package/vscode/src/vs/platform/agentHost/common/meta/agentMessageDelegationMeta.d.ts +19 -0
  469. package/vscode/src/vs/platform/agentHost/common/meta/agentMessageDelegationMeta.js +27 -0
  470. package/vscode/src/vs/platform/agentHost/common/meta/agentPermissionRequestMeta.d.ts +41 -0
  471. package/vscode/src/vs/platform/agentHost/common/meta/agentPermissionRequestMeta.js +34 -0
  472. package/vscode/src/vs/platform/agentHost/common/meta/agentPullRequestOperationMeta.d.ts +45 -0
  473. package/vscode/src/vs/platform/agentHost/common/meta/agentPullRequestOperationMeta.js +144 -0
  474. package/vscode/src/vs/platform/agentHost/common/meta/agentSystemNotificationMeta.d.ts +49 -0
  475. package/vscode/src/vs/platform/agentHost/common/meta/agentSystemNotificationMeta.js +52 -0
  476. package/vscode/src/vs/platform/agentHost/common/meta/agentToolCallMeta.d.ts +81 -0
  477. package/vscode/src/vs/platform/agentHost/common/meta/agentToolCallMeta.js +92 -0
  478. package/vscode/src/vs/platform/agentHost/common/meta/automationMeta.d.ts +15 -0
  479. package/vscode/src/vs/platform/agentHost/common/meta/automationMeta.js +17 -0
  480. package/vscode/src/vs/platform/agentHost/common/meta/browserViewAttachments.d.ts +9 -0
  481. package/vscode/src/vs/platform/agentHost/common/meta/browserViewAttachments.js +31 -0
  482. package/vscode/src/vs/platform/agentHost/common/openSessionLink.d.ts +75 -0
  483. package/vscode/src/vs/platform/agentHost/common/openSessionLink.js +125 -0
  484. package/vscode/src/vs/platform/agentHost/common/partialToolInput.d.ts +2 -0
  485. package/vscode/src/vs/platform/agentHost/common/partialToolInput.js +24 -0
  486. package/vscode/src/vs/platform/agentHost/common/reasoningEffort.d.ts +61 -0
  487. package/vscode/src/vs/platform/agentHost/common/reasoningEffort.js +50 -0
  488. package/vscode/src/vs/platform/agentHost/common/reconnectingTransport.js +81 -0
  489. package/vscode/src/vs/platform/agentHost/common/relayTransport.d.ts +1 -1
  490. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostLocationPreference.service.d.ts +18 -0
  491. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostLocationPreference.service.js +6 -0
  492. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostLocationPreferenceDialog.d.ts +40 -0
  493. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostLocationPreferenceDialog.js +75 -0
  494. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostService.js +145 -11
  495. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostService.service.d.ts +1 -1
  496. package/vscode/src/vs/platform/agentHost/common/resourceReadLogging.d.ts +1 -0
  497. package/vscode/src/vs/platform/agentHost/common/resourceReadLogging.js +26 -0
  498. package/vscode/src/vs/platform/agentHost/common/serverToolNames.d.ts +36 -0
  499. package/vscode/src/vs/platform/agentHost/common/serverToolNames.js +22 -0
  500. package/vscode/src/vs/platform/agentHost/common/sessionArtifacts.d.ts +75 -0
  501. package/vscode/src/vs/platform/agentHost/common/sessionArtifacts.js +84 -0
  502. package/vscode/src/vs/platform/agentHost/common/sessionConfigKeys.js +39 -1
  503. package/vscode/src/vs/platform/agentHost/common/sessionDbUri.d.ts +39 -0
  504. package/vscode/src/vs/platform/agentHost/common/sessionDbUri.js +40 -0
  505. package/vscode/src/vs/platform/agentHost/common/sshRemoteAgentHost.d.ts +1 -1
  506. package/vscode/src/vs/platform/agentHost/common/sshRemoteAgentHost.js +14 -0
  507. package/vscode/src/vs/platform/agentHost/common/sshRemoteAgentHost.service.d.ts +2 -3
  508. package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.d.ts +461 -0
  509. package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.js +803 -0
  510. package/vscode/src/vs/platform/agentHost/common/state/legacyProtocolCompatibility.js +2 -2
  511. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-annotations/reducer.d.ts +18 -0
  512. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-annotations/reducer.js +89 -0
  513. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-automation/reducer.d.ts +4 -0
  514. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-automation/reducer.js +37 -0
  515. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-automation-run/reducer.d.ts +4 -0
  516. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-automation-run/reducer.js +45 -0
  517. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-changeset/reducer.d.ts +13 -0
  518. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-changeset/reducer.js +147 -0
  519. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-chat/reducer.d.ts +6 -0
  520. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-chat/reducer.js +837 -0
  521. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-resource-watch/reducer.d.ts +21 -0
  522. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-root/reducer.d.ts +6 -0
  523. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-root/reducer.js +30 -0
  524. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-session/reducer.d.ts +6 -0
  525. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-session/reducer.js +484 -0
  526. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-terminal/reducer.d.ts +6 -0
  527. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-terminal/reducer.js +79 -0
  528. package/vscode/src/vs/platform/agentHost/common/state/protocol/common/reducer-helpers.d.ts +17 -0
  529. package/vscode/src/vs/platform/agentHost/common/state/protocol/common/reducer-helpers.js +9 -0
  530. package/vscode/src/vs/platform/agentHost/common/state/protocol/common/timestamps.d.ts +1 -0
  531. package/vscode/src/vs/platform/agentHost/common/state/protocol/common/timestamps.js +7 -0
  532. package/vscode/src/vs/platform/agentHost/common/state/protocol/reducers.d.ts +10 -0
  533. package/vscode/src/vs/platform/agentHost/common/state/protocol/version/registry.d.ts +67 -0
  534. package/vscode/src/vs/platform/agentHost/common/state/protocol/version/registry.js +117 -0
  535. package/vscode/src/vs/platform/agentHost/common/state/sessionActions.d.ts +106 -0
  536. package/vscode/src/vs/platform/agentHost/common/state/sessionActions.js +25 -0
  537. package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.d.ts +1 -1
  538. package/vscode/src/vs/platform/agentHost/common/state/sessionReducers.d.ts +16 -0
  539. package/vscode/src/vs/platform/agentHost/common/state/sessionReducers.js +23 -0
  540. package/vscode/src/vs/platform/agentHost/common/state/sessionState.js +219 -5
  541. package/vscode/src/vs/platform/agentHost/common/taskEventReplay.d.ts +51 -0
  542. package/vscode/src/vs/platform/agentHost/common/taskEventReplay.js +184 -0
  543. package/vscode/src/vs/platform/agentHost/common/transportConstants.d.ts +15 -0
  544. package/vscode/src/vs/platform/agentHost/common/transportConstants.js +6 -0
  545. package/vscode/src/vs/platform/agentHost/common/tunnelAgentHost.js +169 -1
  546. package/vscode/src/vs/platform/agentHost/common/tunnelAgentHost.service.d.ts +158 -0
  547. package/vscode/src/vs/platform/agentHost/common/tunnelAgentHost.service.js +6 -0
  548. package/vscode/src/vs/platform/agentHost/common/tunnelAgentHostConnector.d.ts +115 -0
  549. package/vscode/src/vs/platform/agentHost/common/tunnelAgentHostConnector.js +459 -0
  550. package/vscode/src/vs/platform/agentHost/common/tunnelGatewaySelection.d.ts +101 -0
  551. package/vscode/src/vs/platform/agentHost/common/tunnelGatewaySelection.js +82 -0
  552. package/vscode/src/vs/platform/agentHost/common/tunnelMessageSocket.d.ts +33 -0
  553. package/vscode/src/vs/platform/agentHost/common/webPubSub/chunking.d.ts +100 -0
  554. package/vscode/src/vs/platform/agentHost/common/webPubSub/chunking.js +256 -0
  555. package/vscode/src/vs/platform/agentHost/common/webPubSub/framing.d.ts +86 -0
  556. package/vscode/src/vs/platform/agentHost/common/webPubSub/framing.js +64 -0
  557. package/vscode/src/vs/platform/agentHost/common/webPubSub/groups.d.ts +46 -0
  558. package/vscode/src/vs/platform/agentHost/common/webPubSub/groups.js +92 -0
  559. package/vscode/src/vs/platform/agentHost/common/webSocketOverDuplex.d.ts +18 -0
  560. package/vscode/src/vs/platform/agentHost/common/webSocketOverDuplex.js +443 -0
  561. package/vscode/src/vs/platform/agentHost/common/worktreePaths.d.ts +24 -0
  562. package/vscode/src/vs/platform/agentHost/common/worktreePaths.js +15 -0
  563. package/vscode/src/vs/platform/agentPlugins/common/pluginParsers.js +13 -11
  564. package/vscode/src/vs/platform/browserView/common/browserPermissions.js +16 -16
  565. package/vscode/src/vs/platform/chat/common/sessionArchiveActions.d.ts +26 -0
  566. package/vscode/src/vs/platform/chat/common/sessionArchiveActions.js +58 -0
  567. package/vscode/src/vs/platform/clipboard/browser/clipboardService.js +2 -2
  568. package/vscode/src/vs/platform/clipboard/common/clipboardService.service.d.ts +1 -1
  569. package/vscode/src/vs/platform/commands/common/commands.service.d.ts +1 -1
  570. package/vscode/src/vs/platform/configuration/common/configuration.service.d.ts +1 -1
  571. package/vscode/src/vs/platform/configuration/common/configurationModels.js +2 -2
  572. package/vscode/src/vs/platform/configuration/common/configurationRegistry.js +14 -14
  573. package/vscode/src/vs/platform/configuration/common/configurations.js +1 -1
  574. package/vscode/src/vs/platform/contextkey/browser/contextKeyService.js +2 -2
  575. package/vscode/src/vs/platform/contextkey/common/contextkey.js +23 -23
  576. package/vscode/src/vs/platform/contextkey/common/contextkey.service.d.ts +1 -1
  577. package/vscode/src/vs/platform/contextkey/common/contextkeys.js +11 -11
  578. package/vscode/src/vs/platform/contextkey/common/scanner.js +6 -6
  579. package/vscode/src/vs/platform/contextview/browser/contextView.service.d.ts +1 -1
  580. package/vscode/src/vs/platform/dataChannel/common/dataChannel.service.d.ts +1 -2
  581. package/vscode/src/vs/platform/debug/common/extensionHostDebug.service.d.ts +1 -1
  582. package/vscode/src/vs/platform/defaultAccount/common/defaultAccount.service.d.ts +1 -1
  583. package/vscode/src/vs/platform/dialogs/common/dialogs.js +12 -12
  584. package/vscode/src/vs/platform/dialogs/common/dialogs.service.d.ts +1 -2
  585. package/vscode/src/vs/platform/dnd/browser/dnd.js +7 -4
  586. package/vscode/src/vs/platform/domWidget/browser/domWidget.d.ts +52 -0
  587. package/vscode/src/vs/platform/domWidget/browser/domWidget.js +53 -0
  588. package/vscode/src/vs/platform/download/common/download.service.d.ts +1 -1
  589. package/vscode/src/vs/platform/editor/browser/editor.d.ts +12 -0
  590. package/vscode/src/vs/platform/editor/browser/editor.js +61 -0
  591. package/vscode/src/vs/platform/endpoint/common/licenseAgreement.d.ts +7 -0
  592. package/vscode/src/vs/platform/endpoint/common/licenseAgreement.js +5 -0
  593. package/vscode/src/vs/platform/environment/common/environment.service.d.ts +1 -1
  594. package/vscode/src/vs/platform/extensionManagement/common/extensionEnablementService.js +2 -2
  595. package/vscode/src/vs/platform/extensionManagement/common/extensionGalleryManifest.service.d.ts +1 -1
  596. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +15 -15
  597. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.service.d.ts +1 -2
  598. package/vscode/src/vs/platform/extensionManagement/common/extensionNls.js +1 -1
  599. package/vscode/src/vs/platform/extensionManagement/common/extensionStorage.service.d.ts +1 -1
  600. package/vscode/src/vs/platform/extensionManagement/common/extensionsProfileScannerService.js +2 -2
  601. package/vscode/src/vs/platform/extensionManagement/common/extensionsProfileScannerService.service.d.ts +1 -2
  602. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +40 -35
  603. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.service.d.ts +1 -2
  604. package/vscode/src/vs/platform/extensionRecommendations/common/extensionRecommendations.service.d.ts +1 -1
  605. package/vscode/src/vs/platform/extensionResourceLoader/common/extensionResourceLoader.service.d.ts +1 -1
  606. package/vscode/src/vs/platform/extensions/common/extensionValidator.js +19 -19
  607. package/vscode/src/vs/platform/extensions/common/extensions.js +1 -1
  608. package/vscode/src/vs/platform/files/browser/htmlFileSystemProvider.js +3 -3
  609. package/vscode/src/vs/platform/files/common/files.js +9 -9
  610. package/vscode/src/vs/platform/files/common/files.service.d.ts +1 -2
  611. package/vscode/src/vs/platform/files/common/inMemoryFilesystemProvider.js +1 -1
  612. package/vscode/src/vs/platform/files/common/watcher.js +2 -2
  613. package/vscode/src/vs/platform/history/browser/contextScopedHistoryWidget.js +4 -4
  614. package/vscode/src/vs/platform/hover/browser/hoverWidget.js +3 -3
  615. package/vscode/src/vs/platform/hover/browser/updatableHoverWidget.js +1 -1
  616. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +18 -16
  617. package/vscode/src/vs/platform/keybinding/common/baseResolvedKeybinding.js +3 -3
  618. package/vscode/src/vs/platform/keybinding/common/keybinding.service.d.ts +1 -1
  619. package/vscode/src/vs/platform/keybinding/common/usLayoutResolvedKeybinding.js +1 -1
  620. package/vscode/src/vs/platform/keyboardLayout/common/keyboardLayout.service.d.ts +1 -1
  621. package/vscode/src/vs/platform/label/common/label.service.d.ts +1 -2
  622. package/vscode/src/vs/platform/languagePacks/common/languagePacks.js +3 -3
  623. package/vscode/src/vs/platform/languagePacks/common/languagePacks.service.d.ts +1 -1
  624. package/vscode/src/vs/platform/languagePacks/common/localizedStrings.js +3 -3
  625. package/vscode/src/vs/platform/layout/browser/layoutService.service.d.ts +1 -1
  626. package/vscode/src/vs/platform/layout/browser/zIndexRegistry.js +1 -1
  627. package/vscode/src/vs/platform/list/browser/listService.js +39 -39
  628. package/vscode/src/vs/platform/localTranscription/common/localTranscription.service.d.ts +1 -1
  629. package/vscode/src/vs/platform/log/common/log.js +7 -7
  630. package/vscode/src/vs/platform/log/common/log.service.d.ts +1 -2
  631. package/vscode/src/vs/platform/markers/common/markerService.js +3 -3
  632. package/vscode/src/vs/platform/markers/common/markers.js +6 -6
  633. package/vscode/src/vs/platform/markers/common/markers.service.d.ts +1 -2
  634. package/vscode/src/vs/platform/mcp/common/mcpGalleryManifest.service.d.ts +1 -1
  635. package/vscode/src/vs/platform/mcp/common/mcpManagement.service.d.ts +1 -2
  636. package/vscode/src/vs/platform/mcp/common/mcpManagementIpc.js +5 -5
  637. package/vscode/src/vs/platform/mcp/common/mcpManagementService.js +11 -9
  638. package/vscode/src/vs/platform/mcp/common/mcpResourceScannerService.service.d.ts +1 -1
  639. package/vscode/src/vs/platform/mcp/common/modelContextProtocolApps.d.ts +576 -0
  640. package/vscode/src/vs/platform/mcp/common/modelContextProtocolApps.js +24 -0
  641. package/vscode/src/vs/platform/meteredConnection/common/meteredConnection.service.d.ts +1 -1
  642. package/vscode/src/vs/platform/networkFilter/common/domainMatcher.d.ts +54 -0
  643. package/vscode/src/vs/platform/networkFilter/common/domainMatcher.js +210 -0
  644. package/vscode/src/vs/platform/networkFilter/common/networkFilterService.service.d.ts +1 -2
  645. package/vscode/src/vs/platform/networkFilter/common/settings.d.ts +8 -0
  646. package/vscode/src/vs/platform/networkFilter/common/settings.js +10 -0
  647. package/vscode/src/vs/platform/notification/common/notification.js +3 -3
  648. package/vscode/src/vs/platform/notification/common/notification.service.d.ts +1 -1
  649. package/vscode/src/vs/platform/opener/browser/link.js +2 -2
  650. package/vscode/src/vs/platform/opener/common/opener.service.d.ts +1 -1
  651. package/vscode/src/vs/platform/policy/common/copilotManagedSettings.service.d.ts +1 -1
  652. package/vscode/src/vs/platform/policy/common/policy.service.d.ts +1 -1
  653. package/vscode/src/vs/platform/product/common/product.js +1 -1
  654. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +15 -15
  655. package/vscode/src/vs/platform/quickinput/browser/quickInputActions.js +5 -5
  656. package/vscode/src/vs/platform/quickinput/browser/quickInputBox.d.ts +2 -2
  657. package/vscode/src/vs/platform/quickinput/browser/quickInputBox.js +1 -1
  658. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +6 -6
  659. package/vscode/src/vs/platform/quickinput/browser/quickInputList.js +17 -13
  660. package/vscode/src/vs/platform/quickinput/browser/quickInputService.js +1 -1
  661. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +2 -2
  662. package/vscode/src/vs/platform/quickinput/browser/quickPickPin.js +8 -3
  663. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeAccessibilityProvider.js +2 -2
  664. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeController.js +2 -2
  665. package/vscode/src/vs/platform/quickinput/browser/tree/quickTree.js +1 -1
  666. package/vscode/src/vs/platform/quickinput/common/quickInput.service.d.ts +1 -1
  667. package/vscode/src/vs/platform/remote/common/remoteAuthorityResolver.service.d.ts +1 -2
  668. package/vscode/src/vs/platform/remoteTunnel/common/remoteTunnel.service.d.ts +1 -1
  669. package/vscode/src/vs/platform/request/common/request.js +20 -20
  670. package/vscode/src/vs/platform/request/common/request.service.d.ts +1 -1
  671. package/vscode/src/vs/platform/sandbox/common/terminalSandboxMxcRuntime.service.d.ts +1 -1
  672. package/vscode/src/vs/platform/sandbox/common/terminalSandboxService.service.d.ts +1 -1
  673. package/vscode/src/vs/platform/secrets/common/secrets.service.d.ts +1 -1
  674. package/vscode/src/vs/platform/storage/common/storage.service.d.ts +1 -1
  675. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +1 -1
  676. package/vscode/src/vs/platform/terminal/common/capabilities/commandDetection/promptInputModel.js +1 -1
  677. package/vscode/src/vs/platform/terminal/common/capabilities/commandDetectionCapability.js +1 -1
  678. package/vscode/src/vs/platform/terminal/common/capabilities/naiveCwdDetectionCapability.d.ts +11 -0
  679. package/vscode/src/vs/platform/terminal/common/capabilities/naiveCwdDetectionCapability.js +26 -0
  680. package/vscode/src/vs/platform/terminal/common/capabilities/terminalCapabilityStore.js +28 -28
  681. package/vscode/src/vs/platform/terminal/common/environmentVariable.d.ts +86 -0
  682. package/vscode/src/vs/platform/terminal/common/environmentVariable.js +10 -0
  683. package/vscode/src/vs/platform/terminal/common/environmentVariableCollection.d.ts +17 -0
  684. package/vscode/src/vs/platform/terminal/common/environmentVariableCollection.js +218 -0
  685. package/vscode/src/vs/platform/terminal/common/environmentVariableShared.d.ts +1 -1
  686. package/vscode/src/vs/platform/terminal/common/environmentVariableShared.js +4 -4
  687. package/vscode/src/vs/platform/terminal/common/terminal.d.ts +1 -1
  688. package/vscode/src/vs/platform/terminal/common/terminal.service.d.ts +1 -1
  689. package/vscode/src/vs/platform/terminal/common/terminalPlatformConfiguration.js +34 -34
  690. package/vscode/src/vs/platform/terminal/common/terminalProcess.d.ts +1 -1
  691. package/vscode/src/vs/platform/terminal/common/terminalProfiles.js +7 -7
  692. package/vscode/src/vs/platform/terminal/common/terminalRecorder.d.ts +14 -0
  693. package/vscode/src/vs/platform/terminal/common/terminalRecorder.js +73 -0
  694. package/vscode/src/vs/platform/theme/common/colorUtils.js +4 -4
  695. package/vscode/src/vs/platform/theme/common/colors/baseColors.js +19 -19
  696. package/vscode/src/vs/platform/theme/common/colors/chartsColors.js +9 -9
  697. package/vscode/src/vs/platform/theme/common/colors/editorColors.js +95 -95
  698. package/vscode/src/vs/platform/theme/common/colors/inputColors.js +48 -48
  699. package/vscode/src/vs/platform/theme/common/colors/listColors.js +36 -36
  700. package/vscode/src/vs/platform/theme/common/colors/menuColors.js +7 -7
  701. package/vscode/src/vs/platform/theme/common/colors/minimapColors.js +11 -11
  702. package/vscode/src/vs/platform/theme/common/colors/miscColors.js +16 -16
  703. package/vscode/src/vs/platform/theme/common/colors/quickpickColors.js +10 -10
  704. package/vscode/src/vs/platform/theme/common/colors/searchColors.js +3 -3
  705. package/vscode/src/vs/platform/theme/common/iconRegistry.js +12 -12
  706. package/vscode/src/vs/platform/theme/common/sizeUtils.js +2 -2
  707. package/vscode/src/vs/platform/theme/common/sizes/baseSizes.js +37 -37
  708. package/vscode/src/vs/platform/theme/common/themeService.service.d.ts +1 -1
  709. package/vscode/src/vs/platform/theme/common/tokenClassificationRegistry.js +45 -45
  710. package/vscode/src/vs/platform/tunnel/common/tunnel.js +1 -1
  711. package/vscode/src/vs/platform/tunnel/common/tunnel.service.d.ts +1 -2
  712. package/vscode/src/vs/platform/undoRedo/common/undoRedo.service.d.ts +1 -1
  713. package/vscode/src/vs/platform/undoRedo/common/undoRedoService.js +20 -20
  714. package/vscode/src/vs/platform/update/common/update.service.d.ts +1 -1
  715. package/vscode/src/vs/platform/uriIdentity/common/uriIdentity.service.d.ts +1 -1
  716. package/vscode/src/vs/platform/uriIdentity/common/uriIdentityService.js +1 -1
  717. package/vscode/src/vs/platform/url/common/trustedDomains.js +1 -1
  718. package/vscode/src/vs/platform/url/common/url.service.d.ts +2 -1
  719. package/vscode/src/vs/platform/url/common/urlGlob.js +3 -3
  720. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.js +4 -4
  721. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.service.d.ts +1 -2
  722. package/vscode/src/vs/platform/userDataProfile/common/userDataProfileStorageService.service.d.ts +1 -1
  723. package/vscode/src/vs/platform/userDataSync/common/abstractSynchronizer.js +8 -3
  724. package/vscode/src/vs/platform/userDataSync/common/extensionsMerge.js +6 -6
  725. package/vscode/src/vs/platform/userDataSync/common/extensionsSync.js +8 -8
  726. package/vscode/src/vs/platform/userDataSync/common/globalStateSync.js +4 -1
  727. package/vscode/src/vs/platform/userDataSync/common/keybindingsMerge.js +9 -9
  728. package/vscode/src/vs/platform/userDataSync/common/keybindingsSync.js +2 -2
  729. package/vscode/src/vs/platform/userDataSync/common/settingsMerge.js +1 -1
  730. package/vscode/src/vs/platform/userDataSync/common/settingsSync.js +5 -3
  731. package/vscode/src/vs/platform/userDataSync/common/snippetsSync.js +2 -2
  732. package/vscode/src/vs/platform/userDataSync/common/userDataSync.js +6 -6
  733. package/vscode/src/vs/platform/userDataSync/common/userDataSync.service.d.ts +1 -2
  734. package/vscode/src/vs/platform/userDataSync/common/userDataSyncAccount.service.d.ts +1 -1
  735. package/vscode/src/vs/platform/userDataSync/common/userDataSyncMachines.js +3 -3
  736. package/vscode/src/vs/platform/userDataSync/common/userDataSyncMachines.service.d.ts +1 -1
  737. package/vscode/src/vs/platform/userDataSync/common/userDataSyncStoreService.js +2 -2
  738. package/vscode/src/vs/platform/webContentExtractor/common/webContentExtractor.service.d.ts +1 -1
  739. package/vscode/src/vs/platform/webWorker/browser/webWorkerServiceImpl.js +2 -2
  740. package/vscode/src/vs/platform/workspace/common/workspace.js +1 -1
  741. package/vscode/src/vs/platform/workspace/common/workspace.service.d.ts +1 -2
  742. package/vscode/src/vs/platform/workspace/common/workspaceTrust.service.d.ts +1 -2
  743. package/vscode/src/vs/platform/workspaces/common/workspaces.service.d.ts +1 -2
  744. package/vscode/src/vs/sessions/browser/accountTitleBarState.d.ts +55 -0
  745. package/vscode/src/vs/sessions/browser/accountTitleBarState.js +178 -0
  746. package/vscode/src/vs/sessions/browser/chatDashboardService.service.d.ts +10 -0
  747. package/vscode/src/vs/sessions/browser/chatDashboardService.service.js +6 -0
  748. package/vscode/src/vs/sessions/browser/dnd.d.ts +79 -0
  749. package/vscode/src/vs/sessions/browser/dnd.js +61 -0
  750. package/vscode/src/vs/sessions/browser/layoutPolicy.d.ts +71 -0
  751. package/vscode/src/vs/sessions/browser/layoutPolicy.js +82 -0
  752. package/vscode/src/vs/sessions/browser/media/phoneLayout.css +220 -0
  753. package/vscode/src/vs/sessions/browser/media/sessions-logo-dark.svg +6 -0
  754. package/vscode/src/vs/sessions/browser/media/sessions-logo-light.svg +6 -0
  755. package/vscode/src/vs/sessions/browser/media/sidebarActionButton.css +50 -0
  756. package/vscode/src/vs/sessions/browser/media/style.css +106 -0
  757. package/vscode/src/vs/sessions/browser/media/workbench.css +381 -0
  758. package/vscode/src/vs/sessions/browser/menus.d.ts +76 -0
  759. package/vscode/src/vs/sessions/browser/menus.js +56 -0
  760. package/vscode/src/vs/sessions/browser/mobileNavigationStack.d.ts +35 -0
  761. package/vscode/src/vs/sessions/browser/mobileNavigationStack.js +72 -0
  762. package/vscode/src/vs/sessions/browser/parts/agentsPartCard.d.ts +28 -0
  763. package/vscode/src/vs/sessions/browser/parts/agentsPartCard.js +35 -0
  764. package/vscode/src/vs/sessions/browser/parts/auxiliaryBarPart.d.ts +62 -0
  765. package/vscode/src/vs/sessions/browser/parts/auxiliaryBarPart.js +286 -0
  766. package/vscode/src/vs/sessions/browser/parts/chatView.d.ts +135 -0
  767. package/vscode/src/vs/sessions/browser/parts/chatView.js +56 -0
  768. package/vscode/src/vs/sessions/browser/parts/editorPartSizing.d.ts +9 -0
  769. package/vscode/src/vs/sessions/browser/parts/editorPartSizing.js +6 -0
  770. package/vscode/src/vs/sessions/browser/parts/media/auxiliaryBarPart.css +17 -0
  771. package/vscode/src/vs/sessions/browser/parts/media/sessionsEmptyState.css +31 -0
  772. package/vscode/src/vs/sessions/browser/parts/media/sidebarPart.css +127 -0
  773. package/vscode/src/vs/sessions/browser/parts/media/titlebarpart.css +231 -0
  774. package/vscode/src/vs/sessions/browser/parts/mobile/contributions/media/mobileOverlayViews.css +582 -0
  775. package/vscode/src/vs/sessions/browser/parts/mobile/contributions/mobileChangesView.d.ts +87 -0
  776. package/vscode/src/vs/sessions/browser/parts/mobile/contributions/mobileChangesView.js +46 -0
  777. package/vscode/src/vs/sessions/browser/parts/mobile/contributions/mobileDiffColors.d.ts +3 -0
  778. package/vscode/src/vs/sessions/browser/parts/mobile/contributions/mobileDiffColors.js +31 -0
  779. package/vscode/src/vs/sessions/browser/parts/mobile/media/mobilePickerSheet.css +581 -0
  780. package/vscode/src/vs/sessions/browser/parts/mobile/media/mobileSessionFilterChips.css +84 -0
  781. package/vscode/src/vs/sessions/browser/parts/mobile/media/mobileSortGroupSheet.css +216 -0
  782. package/vscode/src/vs/sessions/browser/parts/mobile/mobileChatShell.css +973 -0
  783. package/vscode/src/vs/sessions/browser/parts/mobile/mobileChipLaneScroll.d.ts +26 -0
  784. package/vscode/src/vs/sessions/browser/parts/mobile/mobileChipLaneScroll.js +66 -0
  785. package/vscode/src/vs/sessions/browser/parts/mobile/mobileLayout.d.ts +18 -0
  786. package/vscode/src/vs/sessions/browser/parts/mobile/mobileLayout.js +8 -0
  787. package/vscode/src/vs/sessions/browser/parts/mobile/mobilePickerSheet.d.ts +253 -0
  788. package/vscode/src/vs/sessions/browser/parts/mobile/mobilePickerSheet.js +441 -0
  789. package/vscode/src/vs/sessions/browser/parts/mobile/mobileSessionFilterChips.d.ts +73 -0
  790. package/vscode/src/vs/sessions/browser/parts/mobile/mobileSessionFilterChips.js +190 -0
  791. package/vscode/src/vs/sessions/browser/parts/mobile/mobileSortGroupSheet.d.ts +40 -0
  792. package/vscode/src/vs/sessions/browser/parts/mobile/mobileSortGroupSheet.js +117 -0
  793. package/vscode/src/vs/sessions/browser/parts/mobile/mobileTitlebarPart.d.ts +104 -0
  794. package/vscode/src/vs/sessions/browser/parts/mobile/mobileTitlebarPart.js +457 -0
  795. package/vscode/src/vs/sessions/browser/parts/mobile/mobileVisualViewport.d.ts +67 -0
  796. package/vscode/src/vs/sessions/browser/parts/mobile/mobileVisualViewport.js +61 -0
  797. package/vscode/src/vs/sessions/browser/parts/mobile/mobileVisualViewport.service.d.ts +30 -0
  798. package/vscode/src/vs/sessions/browser/parts/mobile/mobileVisualViewport.service.js +6 -0
  799. package/vscode/src/vs/sessions/browser/parts/sessionsEmptyState.d.ts +4 -0
  800. package/vscode/src/vs/sessions/browser/parts/sessionsEmptyState.js +16 -0
  801. package/vscode/src/vs/sessions/browser/parts/sidebarPart.d.ts +65 -0
  802. package/vscode/src/vs/sessions/browser/parts/sidebarPart.js +289 -0
  803. package/vscode/src/vs/sessions/browser/parts/titlebarPart.d.ts +110 -0
  804. package/vscode/src/vs/sessions/browser/parts/titlebarPart.js +481 -0
  805. package/vscode/src/vs/sessions/browser/sessionActionRunner.d.ts +10 -0
  806. package/vscode/src/vs/sessions/browser/sessionActionRunner.js +19 -0
  807. package/vscode/src/vs/sessions/browser/sessionActionViewItem.d.ts +7 -0
  808. package/vscode/src/vs/sessions/browser/sessionActionViewItem.js +27 -0
  809. package/vscode/src/vs/sessions/browser/sessionAgentMerge.d.ts +26 -0
  810. package/vscode/src/vs/sessions/browser/sessionAgentMerge.js +92 -0
  811. package/vscode/src/vs/sessions/browser/sessionConversationGroups.d.ts +8 -0
  812. package/vscode/src/vs/sessions/browser/sessionConversationGroups.js +31 -0
  813. package/vscode/src/vs/sessions/browser/sessionStatusIcon.d.ts +54 -0
  814. package/vscode/src/vs/sessions/browser/sessionStatusIcon.js +153 -0
  815. package/vscode/src/vs/sessions/browser/sessionsAuthGate.d.ts +77 -0
  816. package/vscode/src/vs/sessions/browser/sessionsAuthGate.js +49 -0
  817. package/vscode/src/vs/sessions/browser/sessionsSetUpService.service.d.ts +11 -0
  818. package/vscode/src/vs/sessions/browser/sessionsSetUpService.service.js +6 -0
  819. package/vscode/src/vs/sessions/browser/web.factory.d.ts +6 -0
  820. package/vscode/src/vs/sessions/browser/workbench.d.ts +456 -0
  821. package/vscode/src/vs/sessions/browser/workbench.js +2106 -0
  822. package/vscode/src/vs/sessions/browser/workbench.service.d.ts +48 -0
  823. package/vscode/src/vs/sessions/browser/workbench.service.js +7 -0
  824. package/vscode/src/vs/sessions/common/agentHostSessionWorkspace.d.ts +46 -0
  825. package/vscode/src/vs/sessions/common/agentHostSessionWorkspace.js +111 -0
  826. package/vscode/src/vs/sessions/common/agentHostSessionsProvider.d.ts +343 -0
  827. package/vscode/src/vs/sessions/common/agentHostSessionsProvider.js +88 -0
  828. package/vscode/src/vs/sessions/common/categories.d.ts +3 -0
  829. package/vscode/src/vs/sessions/common/categories.js +8 -0
  830. package/vscode/src/vs/sessions/common/contextkeys.d.ts +89 -0
  831. package/vscode/src/vs/sessions/common/contextkeys.js +196 -0
  832. package/vscode/src/vs/sessions/common/devContainerAgentHostService.d.ts +34 -0
  833. package/vscode/src/vs/sessions/common/devContainerAgentHostService.js +5 -0
  834. package/vscode/src/vs/sessions/common/devContainerAgentHostService.service.d.ts +15 -0
  835. package/vscode/src/vs/sessions/common/devContainerAgentHostService.service.js +6 -0
  836. package/vscode/src/vs/sessions/common/dockedEditorInput.d.ts +13 -0
  837. package/vscode/src/vs/sessions/common/dockedEditorInput.js +11 -0
  838. package/vscode/src/vs/sessions/common/layoutConstants.d.ts +2 -0
  839. package/vscode/src/vs/sessions/common/layoutConstants.js +6 -0
  840. package/vscode/src/vs/sessions/common/sessionCommands.d.ts +42 -0
  841. package/vscode/src/vs/sessions/common/sessionCommands.js +23 -0
  842. package/vscode/src/vs/sessions/common/sessionConfig.d.ts +11 -0
  843. package/vscode/src/vs/sessions/common/sessionConfig.js +10 -0
  844. package/vscode/src/vs/sessions/common/sessionLinks.d.ts +2 -0
  845. package/vscode/src/vs/sessions/common/sessionLinks.js +7 -0
  846. package/vscode/src/vs/sessions/common/sessionsTelemetry.d.ts +96 -0
  847. package/vscode/src/vs/sessions/common/sessionsTelemetry.js +117 -0
  848. package/vscode/src/vs/sessions/common/theme.d.ts +29 -0
  849. package/vscode/src/vs/sessions/common/theme.js +162 -0
  850. package/vscode/src/vs/sessions/common/workspaceSelection.d.ts +28 -0
  851. package/vscode/src/vs/sessions/common/workspaceSelection.js +19 -0
  852. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackAttachmentEntry.d.ts +29 -0
  853. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackAttachmentEntry.js +37 -0
  854. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackEditorUtils.d.ts +30 -0
  855. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackItemsBackend.d.ts +132 -0
  856. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackItemsBackend.js +394 -0
  857. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackModel.d.ts +93 -0
  858. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackModel.js +17 -0
  859. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackService.d.ts +212 -0
  860. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackService.js +29 -0
  861. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackService.service.d.ts +158 -0
  862. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackService.service.js +6 -0
  863. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/feedbackInputWidget.d.ts +73 -0
  864. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/feedbackInputWidget.js +210 -0
  865. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/media/agentFeedbackEditorInput.css +137 -0
  866. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/sessionEditorComments.d.ts +49 -0
  867. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/sessionEditorComments.js +11 -0
  868. package/vscode/src/vs/sessions/contrib/aiCustomizationTreeView/browser/aiCustomizationTreeView.d.ts +23 -0
  869. package/vscode/src/vs/sessions/contrib/aiCustomizationTreeView/browser/aiCustomizationTreeView.js +10 -0
  870. package/vscode/src/vs/sessions/contrib/aquarium/browser/aquariumOverlay.service.d.ts +31 -0
  871. package/vscode/src/vs/sessions/contrib/aquarium/browser/aquariumOverlay.service.js +6 -0
  872. package/vscode/src/vs/sessions/contrib/automations/browser/automationModelConfiguration.d.ts +21 -0
  873. package/vscode/src/vs/sessions/contrib/automations/browser/automationModelConfiguration.js +88 -0
  874. package/vscode/src/vs/sessions/contrib/automations/browser/automationService.d.ts +53 -0
  875. package/vscode/src/vs/sessions/contrib/automations/browser/automationService.js +893 -0
  876. package/vscode/src/vs/sessions/contrib/automations/common/automationStorageService.d.ts +6 -0
  877. package/vscode/src/vs/sessions/contrib/automations/common/automationStorageService.js +8 -0
  878. package/vscode/src/vs/sessions/contrib/automations/common/automationStorageService.service.d.ts +10 -0
  879. package/vscode/src/vs/sessions/contrib/automations/common/automationStorageService.service.js +6 -0
  880. package/vscode/src/vs/sessions/contrib/changes/browser/changesEditorLabels.d.ts +14 -0
  881. package/vscode/src/vs/sessions/contrib/changes/browser/changesEditorLabels.js +34 -0
  882. package/vscode/src/vs/sessions/contrib/changes/browser/changesSummaryWidget.d.ts +12 -0
  883. package/vscode/src/vs/sessions/contrib/changes/browser/changesSummaryWidget.js +74 -0
  884. package/vscode/src/vs/sessions/contrib/changes/browser/changesView.d.ts +198 -0
  885. package/vscode/src/vs/sessions/contrib/changes/browser/changesView.js +1969 -0
  886. package/vscode/src/vs/sessions/contrib/changes/browser/changesViewRenderer.d.ts +79 -0
  887. package/vscode/src/vs/sessions/contrib/changes/browser/changesViewRenderer.js +344 -0
  888. package/vscode/src/vs/sessions/contrib/changes/browser/changesViewService.d.ts +63 -0
  889. package/vscode/src/vs/sessions/contrib/changes/browser/changesViewService.js +426 -0
  890. package/vscode/src/vs/sessions/contrib/changes/browser/checksActions.d.ts +50 -0
  891. package/vscode/src/vs/sessions/contrib/changes/browser/checksActions.js +196 -0
  892. package/vscode/src/vs/sessions/contrib/changes/browser/checksViewModel.d.ts +8 -0
  893. package/vscode/src/vs/sessions/contrib/changes/browser/checksViewModel.js +18 -0
  894. package/vscode/src/vs/sessions/contrib/changes/browser/checksWidget.d.ts +63 -0
  895. package/vscode/src/vs/sessions/contrib/changes/browser/checksWidget.js +377 -0
  896. package/vscode/src/vs/sessions/contrib/changes/browser/createPullRequestChatRequest.d.ts +9 -0
  897. package/vscode/src/vs/sessions/contrib/changes/browser/createPullRequestChatRequest.js +59 -0
  898. package/vscode/src/vs/sessions/contrib/changes/browser/createPullRequestContextView.d.ts +27 -0
  899. package/vscode/src/vs/sessions/contrib/changes/browser/createPullRequestContextView.js +117 -0
  900. package/vscode/src/vs/sessions/contrib/changes/browser/createPullRequestWidget.d.ts +86 -0
  901. package/vscode/src/vs/sessions/contrib/changes/browser/createPullRequestWidget.js +682 -0
  902. package/vscode/src/vs/sessions/contrib/changes/browser/media/changesSummaryWidget.css +17 -0
  903. package/vscode/src/vs/sessions/contrib/changes/browser/media/changesView.css +358 -0
  904. package/vscode/src/vs/sessions/contrib/changes/browser/media/checksWidget.css +263 -0
  905. package/vscode/src/vs/sessions/contrib/changes/browser/media/createPullRequest.css +301 -0
  906. package/vscode/src/vs/sessions/contrib/changes/browser/media/sessionChangesEditor.css +349 -0
  907. package/vscode/src/vs/sessions/contrib/changes/browser/media/sessionChangesEditorInput.css +22 -0
  908. package/vscode/src/vs/sessions/contrib/changes/browser/sessionChangesEditor.d.ts +88 -0
  909. package/vscode/src/vs/sessions/contrib/changes/browser/sessionChangesEditor.js +418 -0
  910. package/vscode/src/vs/sessions/contrib/changes/browser/sessionChangesEditorInput.d.ts +49 -0
  911. package/vscode/src/vs/sessions/contrib/changes/browser/sessionChangesEditorInput.js +135 -0
  912. package/vscode/src/vs/sessions/contrib/changes/browser/sessionChangesService.d.ts +31 -0
  913. package/vscode/src/vs/sessions/contrib/changes/browser/sessionChangesService.js +155 -0
  914. package/vscode/src/vs/sessions/contrib/changes/common/changes.d.ts +48 -0
  915. package/vscode/src/vs/sessions/contrib/changes/common/changes.js +45 -0
  916. package/vscode/src/vs/sessions/contrib/changes/common/changesViewService.d.ts +32 -0
  917. package/vscode/src/vs/sessions/contrib/changes/common/changesViewService.service.d.ts +33 -0
  918. package/vscode/src/vs/sessions/contrib/changes/common/changesViewService.service.js +6 -0
  919. package/vscode/src/vs/sessions/contrib/changes/common/createPullRequestPreferences.d.ts +22 -0
  920. package/vscode/src/vs/sessions/contrib/changes/common/createPullRequestPreferences.js +47 -0
  921. package/vscode/src/vs/sessions/contrib/changes/common/pullRequestCreation.d.ts +56 -0
  922. package/vscode/src/vs/sessions/contrib/changes/common/pullRequestCreation.js +7 -0
  923. package/vscode/src/vs/sessions/contrib/changes/common/sessionChangesService.d.ts +12 -0
  924. package/vscode/src/vs/sessions/contrib/changes/common/sessionChangesService.service.d.ts +17 -0
  925. package/vscode/src/vs/sessions/contrib/changes/common/sessionChangesService.service.js +6 -0
  926. package/vscode/src/vs/sessions/contrib/chat/browser/agentHostInputCompletions.d.ts +125 -0
  927. package/vscode/src/vs/sessions/contrib/chat/browser/agentHostInputCompletions.js +520 -0
  928. package/vscode/src/vs/sessions/contrib/chat/browser/branchPicker.d.ts +71 -0
  929. package/vscode/src/vs/sessions/contrib/chat/browser/branchPicker.js +254 -0
  930. package/vscode/src/vs/sessions/contrib/chat/browser/chatViewStateService.service.d.ts +8 -0
  931. package/vscode/src/vs/sessions/contrib/chat/browser/chatViewStateService.service.js +6 -0
  932. package/vscode/src/vs/sessions/contrib/chat/browser/chatWidgetUtils.d.ts +7 -0
  933. package/vscode/src/vs/sessions/contrib/chat/browser/chatWidgetUtils.js +38 -0
  934. package/vscode/src/vs/sessions/contrib/chat/browser/checkboxChip.d.ts +38 -0
  935. package/vscode/src/vs/sessions/contrib/chat/browser/checkboxChip.js +100 -0
  936. package/vscode/src/vs/sessions/contrib/chat/browser/customizationHarnessService.d.ts +12 -0
  937. package/vscode/src/vs/sessions/contrib/chat/browser/customizationHarnessService.js +20 -0
  938. package/vscode/src/vs/sessions/contrib/chat/browser/externalSessionBanner.d.ts +48 -0
  939. package/vscode/src/vs/sessions/contrib/chat/browser/externalSessionBanner.js +321 -0
  940. package/vscode/src/vs/sessions/contrib/chat/browser/media/branchPicker.css +23 -0
  941. package/vscode/src/vs/sessions/contrib/chat/browser/media/chatInput.css +764 -0
  942. package/vscode/src/vs/sessions/contrib/chat/browser/media/chatInputMobile.css +52 -0
  943. package/vscode/src/vs/sessions/contrib/chat/browser/media/chatView.css +327 -0
  944. package/vscode/src/vs/sessions/contrib/chat/browser/media/chatWidget.css +547 -0
  945. package/vscode/src/vs/sessions/contrib/chat/browser/media/checkboxChip.css +30 -0
  946. package/vscode/src/vs/sessions/contrib/chat/browser/media/externalSessionBanner.css +78 -0
  947. package/vscode/src/vs/sessions/contrib/chat/browser/media/newChatInSession.css +130 -0
  948. package/vscode/src/vs/sessions/contrib/chat/browser/media/newSessionPromptOptions.css +218 -0
  949. package/vscode/src/vs/sessions/contrib/chat/browser/media/noAgentHostEmptyState.css +98 -0
  950. package/vscode/src/vs/sessions/contrib/chat/browser/media/voiceChatView.css +33 -0
  951. package/vscode/src/vs/sessions/contrib/chat/browser/mobile/mobileSessionTypePicker.d.ts +36 -0
  952. package/vscode/src/vs/sessions/contrib/chat/browser/mobile/mobileSessionTypePicker.js +137 -0
  953. package/vscode/src/vs/sessions/contrib/chat/browser/mobile/mobileWorkspacePickerSheet.d.ts +47 -0
  954. package/vscode/src/vs/sessions/contrib/chat/browser/mobile/mobileWorkspacePickerSheet.js +305 -0
  955. package/vscode/src/vs/sessions/contrib/chat/browser/modelPicker.d.ts +53 -0
  956. package/vscode/src/vs/sessions/contrib/chat/browser/modelPicker.js +189 -0
  957. package/vscode/src/vs/sessions/contrib/chat/browser/newChatContextAttachments.d.ts +81 -0
  958. package/vscode/src/vs/sessions/contrib/chat/browser/newChatContextAttachments.js +555 -0
  959. package/vscode/src/vs/sessions/contrib/chat/browser/newChatInSessionWidget.d.ts +37 -0
  960. package/vscode/src/vs/sessions/contrib/chat/browser/newChatInSessionWidget.js +195 -0
  961. package/vscode/src/vs/sessions/contrib/chat/browser/newChatInput.d.ts +247 -0
  962. package/vscode/src/vs/sessions/contrib/chat/browser/newChatInput.js +1806 -0
  963. package/vscode/src/vs/sessions/contrib/chat/browser/newChatInputPasteTarget.d.ts +31 -0
  964. package/vscode/src/vs/sessions/contrib/chat/browser/newChatInputPasteTarget.js +69 -0
  965. package/vscode/src/vs/sessions/contrib/chat/browser/newChatModelPicker.d.ts +14 -0
  966. package/vscode/src/vs/sessions/contrib/chat/browser/newChatModelPicker.js +27 -0
  967. package/vscode/src/vs/sessions/contrib/chat/browser/newChatModelPicker.service.d.ts +9 -0
  968. package/vscode/src/vs/sessions/contrib/chat/browser/newChatModelPicker.service.js +6 -0
  969. package/vscode/src/vs/sessions/contrib/chat/browser/newChatPickerTelemetry.d.ts +30 -0
  970. package/vscode/src/vs/sessions/contrib/chat/browser/newChatPickerTelemetry.js +15 -0
  971. package/vscode/src/vs/sessions/contrib/chat/browser/newChatVoice.d.ts +87 -0
  972. package/vscode/src/vs/sessions/contrib/chat/browser/newChatVoice.js +293 -0
  973. package/vscode/src/vs/sessions/contrib/chat/browser/newChatVoice.service.d.ts +23 -0
  974. package/vscode/src/vs/sessions/contrib/chat/browser/newChatVoice.service.js +6 -0
  975. package/vscode/src/vs/sessions/contrib/chat/browser/newChatWidget.d.ts +165 -0
  976. package/vscode/src/vs/sessions/contrib/chat/browser/newChatWidget.js +1006 -0
  977. package/vscode/src/vs/sessions/contrib/chat/browser/newSessionComposerService.d.ts +84 -0
  978. package/vscode/src/vs/sessions/contrib/chat/browser/newSessionComposerService.js +69 -0
  979. package/vscode/src/vs/sessions/contrib/chat/browser/newSessionComposerService.service.d.ts +22 -0
  980. package/vscode/src/vs/sessions/contrib/chat/browser/newSessionComposerService.service.js +6 -0
  981. package/vscode/src/vs/sessions/contrib/chat/browser/newSessionConfigToolbars.d.ts +7 -0
  982. package/vscode/src/vs/sessions/contrib/chat/browser/newSessionConfigToolbars.js +26 -0
  983. package/vscode/src/vs/sessions/contrib/chat/browser/newSessionPromptOptions.d.ts +36 -0
  984. package/vscode/src/vs/sessions/contrib/chat/browser/newSessionPromptOptions.js +217 -0
  985. package/vscode/src/vs/sessions/contrib/chat/browser/noAgentHostEmptyState.d.ts +20 -0
  986. package/vscode/src/vs/sessions/contrib/chat/browser/noAgentHostEmptyState.js +66 -0
  987. package/vscode/src/vs/sessions/contrib/chat/browser/promptTemplatePlaceholder.d.ts +21 -0
  988. package/vscode/src/vs/sessions/contrib/chat/browser/promptTemplatePlaceholder.js +134 -0
  989. package/vscode/src/vs/sessions/contrib/chat/browser/promptTypingAnimation.d.ts +22 -0
  990. package/vscode/src/vs/sessions/contrib/chat/browser/promptTypingAnimation.js +76 -0
  991. package/vscode/src/vs/sessions/contrib/chat/browser/responseSelectionResolver.d.ts +16 -0
  992. package/vscode/src/vs/sessions/contrib/chat/browser/responseSelectionResolver.js +84 -0
  993. package/vscode/src/vs/sessions/contrib/chat/browser/responseSelectionSideChatController.d.ts +79 -0
  994. package/vscode/src/vs/sessions/contrib/chat/browser/responseSelectionSideChatController.js +323 -0
  995. package/vscode/src/vs/sessions/contrib/chat/browser/sessionArchiveNudge.d.ts +55 -0
  996. package/vscode/src/vs/sessions/contrib/chat/browser/sessionArchiveNudge.js +333 -0
  997. package/vscode/src/vs/sessions/contrib/chat/browser/sessionArchiveNudge.service.d.ts +12 -0
  998. package/vscode/src/vs/sessions/contrib/chat/browser/sessionArchiveNudge.service.js +6 -0
  999. package/vscode/src/vs/sessions/contrib/chat/browser/sessionArtifacts.d.ts +64 -0
  1000. package/vscode/src/vs/sessions/contrib/chat/browser/sessionArtifacts.js +347 -0
  1001. package/vscode/src/vs/sessions/contrib/chat/browser/sessionBackgroundActivitiesControl.d.ts +26 -0
  1002. package/vscode/src/vs/sessions/contrib/chat/browser/sessionBackgroundActivitiesControl.js +59 -0
  1003. package/vscode/src/vs/sessions/contrib/chat/browser/sessionBrowsersControl.d.ts +30 -0
  1004. package/vscode/src/vs/sessions/contrib/chat/browser/sessionBrowsersControl.js +141 -0
  1005. package/vscode/src/vs/sessions/contrib/chat/browser/sessionChatInputToolbar.d.ts +95 -0
  1006. package/vscode/src/vs/sessions/contrib/chat/browser/sessionChatInputToolbar.js +501 -0
  1007. package/vscode/src/vs/sessions/contrib/chat/browser/sessionChatInputToolbarDebug.service.d.ts +11 -0
  1008. package/vscode/src/vs/sessions/contrib/chat/browser/sessionChatInputToolbarDebug.service.js +6 -0
  1009. package/vscode/src/vs/sessions/contrib/chat/browser/sessionCustomizations.d.ts +17 -0
  1010. package/vscode/src/vs/sessions/contrib/chat/browser/sessionCustomizations.js +148 -0
  1011. package/vscode/src/vs/sessions/contrib/chat/browser/sessionModelPickerState.d.ts +26 -0
  1012. package/vscode/src/vs/sessions/contrib/chat/browser/sessionModelPickerState.js +41 -0
  1013. package/vscode/src/vs/sessions/contrib/chat/browser/sessionModelSelection.d.ts +84 -0
  1014. package/vscode/src/vs/sessions/contrib/chat/browser/sessionModelSelection.js +410 -0
  1015. package/vscode/src/vs/sessions/contrib/chat/browser/sessionModelSelection.service.d.ts +10 -0
  1016. package/vscode/src/vs/sessions/contrib/chat/browser/sessionModelSelection.service.js +6 -0
  1017. package/vscode/src/vs/sessions/contrib/chat/browser/sessionReferenceCompletions.d.ts +34 -0
  1018. package/vscode/src/vs/sessions/contrib/chat/browser/sessionReferenceCompletions.js +182 -0
  1019. package/vscode/src/vs/sessions/contrib/chat/browser/sessionTaskRunner.service.d.ts +24 -0
  1020. package/vscode/src/vs/sessions/contrib/chat/browser/sessionTaskRunner.service.js +6 -0
  1021. package/vscode/src/vs/sessions/contrib/chat/browser/sessionTypePicker.d.ts +212 -0
  1022. package/vscode/src/vs/sessions/contrib/chat/browser/sessionTypePicker.js +558 -0
  1023. package/vscode/src/vs/sessions/contrib/chat/browser/sessionWorkspaceFallback.d.ts +34 -0
  1024. package/vscode/src/vs/sessions/contrib/chat/browser/sessionWorkspaceFallback.js +81 -0
  1025. package/vscode/src/vs/sessions/contrib/chat/browser/sessionWorkspacePicker.d.ts +423 -0
  1026. package/vscode/src/vs/sessions/contrib/chat/browser/sessionWorkspacePicker.js +1926 -0
  1027. package/vscode/src/vs/sessions/contrib/chat/browser/sessionsChatHistory.d.ts +1 -0
  1028. package/vscode/src/vs/sessions/contrib/chat/browser/sessionsChatHistory.js +5 -0
  1029. package/vscode/src/vs/sessions/contrib/chat/browser/sessionsTasksService.d.ts +126 -0
  1030. package/vscode/src/vs/sessions/contrib/chat/browser/sessionsTasksService.js +454 -0
  1031. package/vscode/src/vs/sessions/contrib/chat/browser/sessionsTasksService.service.d.ts +101 -0
  1032. package/vscode/src/vs/sessions/contrib/chat/browser/sessionsTasksService.service.js +6 -0
  1033. package/vscode/src/vs/sessions/contrib/chat/browser/sideChatOrchestration.d.ts +13 -0
  1034. package/vscode/src/vs/sessions/contrib/chat/browser/sideChatOrchestration.js +14 -0
  1035. package/vscode/src/vs/sessions/contrib/chat/browser/slashCommands.d.ts +50 -0
  1036. package/vscode/src/vs/sessions/contrib/chat/browser/slashCommands.js +353 -0
  1037. package/vscode/src/vs/sessions/contrib/chat/browser/variableCompletions.d.ts +49 -0
  1038. package/vscode/src/vs/sessions/contrib/chat/browser/variableCompletions.js +326 -0
  1039. package/vscode/src/vs/sessions/contrib/chat/browser/voiceInputDecorations.d.ts +2 -0
  1040. package/vscode/src/vs/sessions/contrib/chat/browser/voiceInputDecorations.js +6 -0
  1041. package/vscode/src/vs/sessions/contrib/chat/browser/webWorkspacePicker.d.ts +47 -0
  1042. package/vscode/src/vs/sessions/contrib/chat/browser/webWorkspacePicker.js +197 -0
  1043. package/vscode/src/vs/sessions/contrib/chat/common/constants.d.ts +3 -0
  1044. package/vscode/src/vs/sessions/contrib/chat/common/constants.js +7 -0
  1045. package/vscode/src/vs/sessions/contrib/chat/common/newChatContextIds.d.ts +12 -0
  1046. package/vscode/src/vs/sessions/contrib/chat/common/newChatContextIds.js +21 -0
  1047. package/vscode/src/vs/sessions/contrib/codeReview/browser/codeReviewService.d.ts +73 -0
  1048. package/vscode/src/vs/sessions/contrib/codeReview/browser/codeReviewService.js +216 -0
  1049. package/vscode/src/vs/sessions/contrib/codeReview/browser/codeReviewService.service.d.ts +32 -0
  1050. package/vscode/src/vs/sessions/contrib/codeReview/browser/codeReviewService.service.js +6 -0
  1051. package/vscode/src/vs/sessions/contrib/editor/browser/diffEditor.sessions.contribution.d.ts +54 -0
  1052. package/vscode/src/vs/sessions/contrib/editor/browser/diffEditor.sessions.contribution.js +211 -0
  1053. package/vscode/src/vs/sessions/contrib/editor/browser/diffEditorOptionsService.d.ts +23 -0
  1054. package/vscode/src/vs/sessions/contrib/editor/browser/diffEditorOptionsService.js +62 -0
  1055. package/vscode/src/vs/sessions/contrib/editor/common/diffEditorOptionsService.d.ts +6 -0
  1056. package/vscode/src/vs/sessions/contrib/editor/common/diffEditorOptionsService.js +9 -0
  1057. package/vscode/src/vs/sessions/contrib/editor/common/diffEditorOptionsService.service.d.ts +15 -0
  1058. package/vscode/src/vs/sessions/contrib/editor/common/diffEditorOptionsService.service.js +6 -0
  1059. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubChangesFetcher.d.ts +10 -0
  1060. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubChangesFetcher.js +20 -0
  1061. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubIssueFetcher.d.ts +7 -0
  1062. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubIssueFetcher.js +39 -0
  1063. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubPRCIFetcher.d.ts +29 -0
  1064. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubPRCIFetcher.js +113 -0
  1065. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubPRFetcher.d.ts +21 -0
  1066. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubPRFetcher.js +276 -0
  1067. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubPullRequestContextFetcher.d.ts +8 -0
  1068. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubPullRequestContextFetcher.js +80 -0
  1069. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubPullRequestsFetcher.d.ts +10 -0
  1070. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubPullRequestsFetcher.js +109 -0
  1071. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubRecentUserWorkFetcher.d.ts +34 -0
  1072. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubRecentUserWorkFetcher.js +160 -0
  1073. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubRepositoryFetcher.d.ts +11 -0
  1074. package/vscode/src/vs/sessions/contrib/github/browser/fetchers/githubRepositoryFetcher.js +25 -0
  1075. package/vscode/src/vs/sessions/contrib/github/browser/githubApiClient.d.ts +45 -0
  1076. package/vscode/src/vs/sessions/contrib/github/browser/githubApiClient.js +189 -0
  1077. package/vscode/src/vs/sessions/contrib/github/browser/githubService.d.ts +57 -0
  1078. package/vscode/src/vs/sessions/contrib/github/browser/githubService.js +200 -0
  1079. package/vscode/src/vs/sessions/contrib/github/browser/githubService.service.d.ts +61 -0
  1080. package/vscode/src/vs/sessions/contrib/github/browser/githubService.service.js +6 -0
  1081. package/vscode/src/vs/sessions/contrib/github/browser/issueHover.d.ts +10 -0
  1082. package/vscode/src/vs/sessions/contrib/github/browser/issueHover.js +57 -0
  1083. package/vscode/src/vs/sessions/contrib/github/browser/media/issueHover.css +59 -0
  1084. package/vscode/src/vs/sessions/contrib/github/browser/media/pullRequestHover.css +88 -0
  1085. package/vscode/src/vs/sessions/contrib/github/browser/models/githubIssueModel.d.ts +77 -0
  1086. package/vscode/src/vs/sessions/contrib/github/browser/models/githubIssueModel.js +119 -0
  1087. package/vscode/src/vs/sessions/contrib/github/browser/models/githubPullRequestCIModel.d.ts +78 -0
  1088. package/vscode/src/vs/sessions/contrib/github/browser/models/githubPullRequestCIModel.js +188 -0
  1089. package/vscode/src/vs/sessions/contrib/github/browser/models/githubPullRequestModel.d.ts +51 -0
  1090. package/vscode/src/vs/sessions/contrib/github/browser/models/githubPullRequestModel.js +133 -0
  1091. package/vscode/src/vs/sessions/contrib/github/browser/models/githubPullRequestReviewThreadsModel.d.ts +54 -0
  1092. package/vscode/src/vs/sessions/contrib/github/browser/models/githubPullRequestReviewThreadsModel.js +128 -0
  1093. package/vscode/src/vs/sessions/contrib/github/browser/models/githubRepositoryModel.d.ts +30 -0
  1094. package/vscode/src/vs/sessions/contrib/github/browser/models/githubRepositoryModel.js +66 -0
  1095. package/vscode/src/vs/sessions/contrib/github/browser/pullRequestHover.d.ts +10 -0
  1096. package/vscode/src/vs/sessions/contrib/github/browser/pullRequestHover.js +62 -0
  1097. package/vscode/src/vs/sessions/contrib/github/browser/pullRequestIconCache.d.ts +18 -0
  1098. package/vscode/src/vs/sessions/contrib/github/browser/pullRequestIconCache.js +72 -0
  1099. package/vscode/src/vs/sessions/contrib/github/browser/pullRequestIconCache.service.d.ts +26 -0
  1100. package/vscode/src/vs/sessions/contrib/github/browser/pullRequestIconCache.service.js +6 -0
  1101. package/vscode/src/vs/sessions/contrib/github/browser/pullRequestIconStatus.d.ts +38 -0
  1102. package/vscode/src/vs/sessions/contrib/github/browser/pullRequestIconStatus.js +82 -0
  1103. package/vscode/src/vs/sessions/contrib/github/common/sessionLifecycleSettings.d.ts +5 -0
  1104. package/vscode/src/vs/sessions/contrib/github/common/sessionLifecycleSettings.js +7 -0
  1105. package/vscode/src/vs/sessions/contrib/github/common/types.d.ts +215 -0
  1106. package/vscode/src/vs/sessions/contrib/github/common/types.js +105 -0
  1107. package/vscode/src/vs/sessions/contrib/github/common/utils.d.ts +23 -0
  1108. package/vscode/src/vs/sessions/contrib/github/common/utils.js +46 -0
  1109. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/sessionArchiveTour.d.ts +5 -0
  1110. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/sessionArchiveTour.js +43 -0
  1111. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostAutomationStore.d.ts +104 -0
  1112. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostAutomationStore.js +1413 -0
  1113. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostDiffs.d.ts +51 -0
  1114. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostDiffs.js +59 -0
  1115. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostPullRequestCreation.d.ts +19 -0
  1116. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostPullRequestCreation.js +70 -0
  1117. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionArtifacts.d.ts +25 -0
  1118. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionArtifacts.js +123 -0
  1119. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionChangesets.d.ts +32 -0
  1120. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionChangesets.js +470 -0
  1121. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionCustomizations.d.ts +65 -0
  1122. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionCustomizations.js +240 -0
  1123. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionFiles.d.ts +127 -0
  1124. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionFiles.js +315 -0
  1125. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSkillButtons.d.ts +33 -0
  1126. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSkillButtons.js +151 -0
  1127. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/baseAgentHostSessionsProvider.d.ts +1416 -0
  1128. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/baseAgentHostSessionsProvider.js +5017 -0
  1129. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/reconnectableAgentHostAutomationStore.d.ts +56 -0
  1130. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/reconnectableAgentHostAutomationStore.js +300 -0
  1131. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/browserTunnelAgentHostService.d.ts +102 -0
  1132. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/browserTunnelAgentHostService.js +543 -0
  1133. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxAgentHostService.d.ts +43 -0
  1134. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxAgentHostService.js +264 -0
  1135. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxApiService.d.ts +114 -0
  1136. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxApiService.js +593 -0
  1137. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxCredentialRefresh.d.ts +71 -0
  1138. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxCredentialRefresh.js +147 -0
  1139. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxTelemetry.d.ts +43 -0
  1140. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxTelemetry.js +91 -0
  1141. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxTelemetry.service.d.ts +28 -0
  1142. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/cloudSandboxTelemetry.service.js +6 -0
  1143. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/devTunnelsModule.js +27377 -0
  1144. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/devTunnelsWebLoader.js +10 -0
  1145. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostConnectionCustomization.service.d.ts +20 -0
  1146. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostConnectionCustomization.service.js +6 -0
  1147. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostSessionsProvider.d.ts +290 -0
  1148. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostSessionsProvider.js +700 -0
  1149. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteHostOptions.d.ts +156 -0
  1150. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteHostOptions.js +421 -0
  1151. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/tunnelAgentHostStorage.d.ts +29 -0
  1152. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/tunnelAgentHostStorage.js +117 -0
  1153. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/webTunnelAgentHostService.contribution.d.ts +45 -0
  1154. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/webTunnelAgentHostService.contribution.js +104 -0
  1155. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/webTunnelAgentHostService.d.ts +61 -0
  1156. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/webTunnelAgentHostService.js +351 -0
  1157. package/vscode/src/vs/sessions/contrib/sessionInputBanners/browser/media/sessionInputBanners.css +269 -0
  1158. package/vscode/src/vs/sessions/contrib/sessionInputBanners/browser/sessionInputBannerWidget.d.ts +73 -0
  1159. package/vscode/src/vs/sessions/contrib/sessionInputBanners/browser/sessionInputBannerWidget.js +356 -0
  1160. package/vscode/src/vs/sessions/contrib/sessionInputBanners/browser/sessionInputBanners.d.ts +63 -0
  1161. package/vscode/src/vs/sessions/contrib/sessionInputBanners/browser/sessionInputBanners.js +550 -0
  1162. package/vscode/src/vs/sessions/contrib/sessions/browser/agentHostShortcutsWidget.d.ts +18 -0
  1163. package/vscode/src/vs/sessions/contrib/sessions/browser/agentHostShortcutsWidget.js +39 -0
  1164. package/vscode/src/vs/sessions/contrib/sessions/browser/aiCustomizationShortcutsWidget.d.ts +47 -0
  1165. package/vscode/src/vs/sessions/contrib/sessions/browser/aiCustomizationShortcutsWidget.js +237 -0
  1166. package/vscode/src/vs/sessions/contrib/sessions/browser/automationsConstants.d.ts +1 -0
  1167. package/vscode/src/vs/sessions/contrib/sessions/browser/automationsConstants.js +5 -0
  1168. package/vscode/src/vs/sessions/contrib/sessions/browser/automationsNewBadge.d.ts +42 -0
  1169. package/vscode/src/vs/sessions/contrib/sessions/browser/automationsNewBadge.js +196 -0
  1170. package/vscode/src/vs/sessions/contrib/sessions/browser/customizationsToolbar.contribution.d.ts +85 -0
  1171. package/vscode/src/vs/sessions/contrib/sessions/browser/customizationsToolbar.contribution.js +335 -0
  1172. package/vscode/src/vs/sessions/contrib/sessions/browser/media/agentHostToolbar.css +42 -0
  1173. package/vscode/src/vs/sessions/contrib/sessions/browser/media/customizationsToolbar.css +192 -0
  1174. package/vscode/src/vs/sessions/contrib/sessions/browser/media/sessionsList.css +1111 -0
  1175. package/vscode/src/vs/sessions/contrib/sessions/browser/media/sessionsViewPane.css +242 -0
  1176. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionHoverContent.d.ts +23 -0
  1177. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionHoverContent.js +76 -0
  1178. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsLifecycleTracker.d.ts +191 -0
  1179. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsLifecycleTracker.js +514 -0
  1180. package/vscode/src/vs/sessions/contrib/sessions/browser/views/sessionsList.d.ts +641 -0
  1181. package/vscode/src/vs/sessions/contrib/sessions/browser/views/sessionsList.js +3939 -0
  1182. package/vscode/src/vs/sessions/contrib/sessions/browser/views/sessionsView.d.ts +88 -0
  1183. package/vscode/src/vs/sessions/contrib/sessions/browser/views/sessionsView.js +721 -0
  1184. package/vscode/src/vs/sessions/services/agentHostFilter/common/agentHostFilter.d.ts +47 -0
  1185. package/vscode/src/vs/sessions/services/agentHostFilter/common/agentHostFilter.js +10 -0
  1186. package/vscode/src/vs/sessions/services/agentHostFilter/common/agentHostFilter.service.d.ts +71 -0
  1187. package/vscode/src/vs/sessions/services/agentHostFilter/common/agentHostFilter.service.js +6 -0
  1188. package/vscode/src/vs/sessions/services/chatBackground/browser/chatBackgroundRenderer.d.ts +23 -0
  1189. package/vscode/src/vs/sessions/services/chatBackground/browser/chatBackgroundRenderer.js +192 -0
  1190. package/vscode/src/vs/sessions/services/chatBackground/browser/chatBackgroundService.d.ts +108 -0
  1191. package/vscode/src/vs/sessions/services/chatBackground/browser/chatBackgroundService.js +258 -0
  1192. package/vscode/src/vs/sessions/services/chatBackground/browser/chatBackgroundService.service.d.ts +14 -0
  1193. package/vscode/src/vs/sessions/services/chatBackground/browser/chatBackgroundService.service.js +6 -0
  1194. package/vscode/src/vs/sessions/services/chatBackground/browser/media/chatBackground.css +47 -0
  1195. package/vscode/src/vs/sessions/services/chatView/browser/chatViewFactory.service.d.ts +21 -0
  1196. package/vscode/src/vs/sessions/services/chatView/browser/chatViewFactory.service.js +6 -0
  1197. package/vscode/src/vs/sessions/services/customView/browser/customViewGridPartService.service.d.ts +14 -0
  1198. package/vscode/src/vs/sessions/services/customView/browser/customViewGridPartService.service.js +6 -0
  1199. package/vscode/src/vs/sessions/services/customView/browser/customViewService.service.d.ts +21 -0
  1200. package/vscode/src/vs/sessions/services/customView/browser/customViewService.service.js +6 -0
  1201. package/vscode/src/vs/sessions/services/sessions/browser/gitHubRepositoryResolver.d.ts +9 -0
  1202. package/vscode/src/vs/sessions/services/sessions/browser/gitHubRepositoryResolver.js +115 -0
  1203. package/vscode/src/vs/sessions/services/sessions/browser/sessionContext.d.ts +23 -0
  1204. package/vscode/src/vs/sessions/services/sessions/browser/sessionContext.js +19 -0
  1205. package/vscode/src/vs/sessions/services/sessions/browser/sessionContext.service.d.ts +26 -0
  1206. package/vscode/src/vs/sessions/services/sessions/browser/sessionContext.service.js +6 -0
  1207. package/vscode/src/vs/sessions/services/sessions/browser/sessionGroupsService.service.d.ts +51 -0
  1208. package/vscode/src/vs/sessions/services/sessions/browser/sessionGroupsService.service.js +6 -0
  1209. package/vscode/src/vs/sessions/services/sessions/browser/sessionOpenTelemetryService.service.d.ts +14 -0
  1210. package/vscode/src/vs/sessions/services/sessions/browser/sessionOpenTelemetryService.service.js +6 -0
  1211. package/vscode/src/vs/sessions/services/sessions/browser/sessionReference.d.ts +20 -0
  1212. package/vscode/src/vs/sessions/services/sessions/browser/sessionReference.js +30 -0
  1213. package/vscode/src/vs/sessions/services/sessions/browser/sessionSectionOrderService.service.d.ts +48 -0
  1214. package/vscode/src/vs/sessions/services/sessions/browser/sessionSectionOrderService.service.js +6 -0
  1215. package/vscode/src/vs/sessions/services/sessions/browser/sessionsListModelService.service.d.ts +56 -0
  1216. package/vscode/src/vs/sessions/services/sessions/browser/sessionsListModelService.service.js +6 -0
  1217. package/vscode/src/vs/sessions/services/sessions/browser/sessionsPartService.d.ts +9 -0
  1218. package/vscode/src/vs/sessions/services/sessions/browser/sessionsPartService.service.d.ts +58 -0
  1219. package/vscode/src/vs/sessions/services/sessions/browser/sessionsPartService.service.js +6 -0
  1220. package/vscode/src/vs/sessions/services/sessions/browser/sessionsProvidersService.service.d.ts +17 -0
  1221. package/vscode/src/vs/sessions/services/sessions/browser/sessionsProvidersService.service.js +6 -0
  1222. package/vscode/src/vs/sessions/services/sessions/browser/sessionsRecentWorkspacesService.d.ts +53 -0
  1223. package/vscode/src/vs/sessions/services/sessions/browser/sessionsRecentWorkspacesService.js +411 -0
  1224. package/vscode/src/vs/sessions/services/sessions/browser/sessionsRecentWorkspacesService.service.d.ts +32 -0
  1225. package/vscode/src/vs/sessions/services/sessions/browser/sessionsRecentWorkspacesService.service.js +6 -0
  1226. package/vscode/src/vs/sessions/services/sessions/browser/sessionsService.service.d.ts +184 -0
  1227. package/vscode/src/vs/sessions/services/sessions/browser/sessionsService.service.js +6 -0
  1228. package/vscode/src/vs/sessions/services/sessions/browser/sessionsWindowUsageService.service.d.ts +6 -0
  1229. package/vscode/src/vs/sessions/services/sessions/browser/sessionsWindowUsageService.service.js +6 -0
  1230. package/vscode/src/vs/sessions/services/sessions/common/session.d.ts +868 -0
  1231. package/vscode/src/vs/sessions/services/sessions/common/session.js +265 -0
  1232. package/vscode/src/vs/sessions/services/sessions/common/sessionChangesStatsCache.d.ts +36 -0
  1233. package/vscode/src/vs/sessions/services/sessions/common/sessionChangesStatsCache.js +130 -0
  1234. package/vscode/src/vs/sessions/services/sessions/common/sessionChangesStatsCache.service.d.ts +22 -0
  1235. package/vscode/src/vs/sessions/services/sessions/common/sessionChangesStatsCache.service.js +6 -0
  1236. package/vscode/src/vs/sessions/services/sessions/common/sessionsManagement.d.ts +208 -0
  1237. package/vscode/src/vs/sessions/services/sessions/common/sessionsManagement.js +17 -0
  1238. package/vscode/src/vs/sessions/services/sessions/common/sessionsManagement.service.d.ts +316 -0
  1239. package/vscode/src/vs/sessions/services/sessions/common/sessionsManagement.service.js +6 -0
  1240. package/vscode/src/vs/sessions/services/sessions/common/sessionsProvider.d.ts +471 -0
  1241. package/vscode/src/vs/sessions/sessions.web.main.internal.d.ts +6 -0
  1242. package/vscode/src/vs/workbench/api/browser/mainThreadDocuments.d.ts +63 -0
  1243. package/vscode/src/vs/workbench/api/browser/mainThreadDocuments.js +305 -0
  1244. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookDto.d.ts +17 -0
  1245. package/vscode/src/vs/workbench/api/browser/mainThreadNotebookDto.js +131 -0
  1246. package/vscode/src/vs/workbench/api/browser/statusBarExtensionPoint.js +12 -12
  1247. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +9 -7
  1248. package/vscode/src/vs/workbench/api/common/extHost.protocol.d.ts +1 -1
  1249. package/vscode/src/vs/workbench/api/common/extHostAgentEditorComments.js +2 -2
  1250. package/vscode/src/vs/workbench/api/common/extHostApiCommands.js +24 -24
  1251. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +17 -14
  1252. package/vscode/src/vs/workbench/api/common/extHostBrowsers.js +1 -1
  1253. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +24 -22
  1254. package/vscode/src/vs/workbench/api/common/extHostChatDebug.js +14 -14
  1255. package/vscode/src/vs/workbench/api/common/extHostChatInputNotification.js +2 -2
  1256. package/vscode/src/vs/workbench/api/common/extHostChatSessions.js +20 -20
  1257. package/vscode/src/vs/workbench/api/common/extHostCodeMapper.js +4 -4
  1258. package/vscode/src/vs/workbench/api/common/extHostCommands.js +6 -6
  1259. package/vscode/src/vs/workbench/api/common/extHostComments.js +7 -7
  1260. package/vscode/src/vs/workbench/api/common/extHostDataChannels.js +2 -2
  1261. package/vscode/src/vs/workbench/api/common/extHostDebugService.js +7 -7
  1262. package/vscode/src/vs/workbench/api/common/extHostDecorations.js +4 -4
  1263. package/vscode/src/vs/workbench/api/common/extHostDiagnostics.js +5 -5
  1264. package/vscode/src/vs/workbench/api/common/extHostDialogs.js +1 -1
  1265. package/vscode/src/vs/workbench/api/common/extHostDocuments.js +4 -4
  1266. package/vscode/src/vs/workbench/api/common/extHostDocumentsAndEditors.js +3 -3
  1267. package/vscode/src/vs/workbench/api/common/extHostEditorTabs.js +10 -10
  1268. package/vscode/src/vs/workbench/api/common/extHostExtensionActivator.js +5 -5
  1269. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +15 -13
  1270. package/vscode/src/vs/workbench/api/common/extHostFileSystemEventService.js +11 -11
  1271. package/vscode/src/vs/workbench/api/common/extHostGitExtensionService.js +10 -10
  1272. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +67 -62
  1273. package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.js +3 -4
  1274. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +22 -15
  1275. package/vscode/src/vs/workbench/api/common/extHostLogService.js +1 -1
  1276. package/vscode/src/vs/workbench/api/common/extHostLoggerService.js +5 -1
  1277. package/vscode/src/vs/workbench/api/common/extHostMcp.js +5 -5
  1278. package/vscode/src/vs/workbench/api/common/extHostMemento.js +1 -1
  1279. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +64 -54
  1280. package/vscode/src/vs/workbench/api/common/extHostNotebookDocument.js +8 -8
  1281. package/vscode/src/vs/workbench/api/common/extHostNotebookEditor.js +1 -1
  1282. package/vscode/src/vs/workbench/api/common/extHostNotebookEditors.js +2 -2
  1283. package/vscode/src/vs/workbench/api/common/extHostNotebookKernels.js +12 -12
  1284. package/vscode/src/vs/workbench/api/common/extHostQuickDiff.js +2 -2
  1285. package/vscode/src/vs/workbench/api/common/extHostQuickOpen.js +7 -7
  1286. package/vscode/src/vs/workbench/api/common/extHostSCM.js +16 -16
  1287. package/vscode/src/vs/workbench/api/common/extHostSearch.js +3 -3
  1288. package/vscode/src/vs/workbench/api/common/extHostSecrets.js +2 -2
  1289. package/vscode/src/vs/workbench/api/common/extHostStatusBar.js +2 -2
  1290. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +1 -1
  1291. package/vscode/src/vs/workbench/api/common/extHostTerminalService.d.ts +1 -1
  1292. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +4 -4
  1293. package/vscode/src/vs/workbench/api/common/extHostTerminalShellIntegration.js +2 -2
  1294. package/vscode/src/vs/workbench/api/common/extHostTestItem.js +4 -4
  1295. package/vscode/src/vs/workbench/api/common/extHostTesting.js +28 -25
  1296. package/vscode/src/vs/workbench/api/common/extHostTextEditor.js +5 -5
  1297. package/vscode/src/vs/workbench/api/common/extHostTextEditors.js +9 -9
  1298. package/vscode/src/vs/workbench/api/common/extHostTimeline.js +1 -1
  1299. package/vscode/src/vs/workbench/api/common/extHostTreeViews.js +21 -19
  1300. package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +11 -9
  1301. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +113 -112
  1302. package/vscode/src/vs/workbench/api/common/extHostTypes/snippetString.js +1 -1
  1303. package/vscode/src/vs/workbench/api/common/extHostTypes.js +5 -5
  1304. package/vscode/src/vs/workbench/api/common/extHostWebview.js +4 -1
  1305. package/vscode/src/vs/workbench/api/common/extHostWebviewMessaging.js +4 -4
  1306. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +11 -11
  1307. package/vscode/src/vs/workbench/api/common/extHostXaaAuthProvider.js +1 -1
  1308. package/vscode/src/vs/workbench/api/common/extensionHostMain.js +2 -2
  1309. package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +20 -20
  1310. package/vscode/src/vs/workbench/api/worker/extensionHostWorker.js +4 -2
  1311. package/vscode/src/vs/workbench/browser/actions/developerActions.js +69 -60
  1312. package/vscode/src/vs/workbench/browser/actions/layoutActions.js +144 -144
  1313. package/vscode/src/vs/workbench/browser/actions/policyDiagnosticsMarkdown.js +5 -1
  1314. package/vscode/src/vs/workbench/browser/actions/textInputActions.js +6 -6
  1315. package/vscode/src/vs/workbench/browser/actions/widgetNavigationCommands.js +16 -14
  1316. package/vscode/src/vs/workbench/browser/actions/windowActions.js +31 -31
  1317. package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +23 -23
  1318. package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +10 -10
  1319. package/vscode/src/vs/workbench/browser/animatedCounterWidget.d.ts +31 -0
  1320. package/vscode/src/vs/workbench/browser/animatedCounterWidget.js +102 -0
  1321. package/vscode/src/vs/workbench/browser/chatChangesPill.d.ts +29 -0
  1322. package/vscode/src/vs/workbench/browser/chatChangesPill.js +84 -0
  1323. package/vscode/src/vs/workbench/browser/chatDropdownPill.d.ts +95 -0
  1324. package/vscode/src/vs/workbench/browser/chatDropdownPill.js +315 -0
  1325. package/vscode/src/vs/workbench/browser/chatPills.d.ts +167 -0
  1326. package/vscode/src/vs/workbench/browser/chatPills.js +450 -0
  1327. package/vscode/src/vs/workbench/browser/chatResourcePill.d.ts +21 -0
  1328. package/vscode/src/vs/workbench/browser/chatResourcePill.js +67 -0
  1329. package/vscode/src/vs/workbench/browser/dnd.js +20 -18
  1330. package/vscode/src/vs/workbench/browser/editor.js +5 -5
  1331. package/vscode/src/vs/workbench/browser/labels.js +4 -4
  1332. package/vscode/src/vs/workbench/browser/media/animatedCounterWidget.css +21 -0
  1333. package/vscode/src/vs/workbench/browser/media/chatPills.css +268 -0
  1334. package/vscode/src/vs/workbench/browser/media/code-icon.svg +1 -0
  1335. package/vscode/src/vs/workbench/browser/part.js +2 -2
  1336. package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.js +25 -25
  1337. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +25 -25
  1338. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarPart.js +5 -5
  1339. package/vscode/src/vs/workbench/browser/parts/compositeBar.js +13 -13
  1340. package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +14 -14
  1341. package/vscode/src/vs/workbench/browser/parts/compositePart.js +4 -4
  1342. package/vscode/src/vs/workbench/browser/parts/dialogs/dialog.js +2 -2
  1343. package/vscode/src/vs/workbench/browser/parts/editor/auxiliaryEditorPart.js +3 -3
  1344. package/vscode/src/vs/workbench/browser/parts/editor/binaryDiffEditor.js +1 -1
  1345. package/vscode/src/vs/workbench/browser/parts/editor/binaryEditor.js +3 -3
  1346. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.js +38 -38
  1347. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +18 -18
  1348. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +2 -2
  1349. package/vscode/src/vs/workbench/browser/parts/editor/diffEditorCommands.js +7 -7
  1350. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +157 -151
  1351. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +35 -35
  1352. package/vscode/src/vs/workbench/browser/parts/editor/editorCommandsContext.js +4 -4
  1353. package/vscode/src/vs/workbench/browser/parts/editor/editorDropTarget.js +6 -6
  1354. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +15 -15
  1355. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +12 -12
  1356. package/vscode/src/vs/workbench/browser/parts/editor/editorHeaderControl.js +3 -3
  1357. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +2 -2
  1358. package/vscode/src/vs/workbench/browser/parts/editor/editorPart.js +9 -9
  1359. package/vscode/src/vs/workbench/browser/parts/editor/editorParts.js +15 -15
  1360. package/vscode/src/vs/workbench/browser/parts/editor/editorPlaceholder.js +13 -13
  1361. package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +11 -11
  1362. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +78 -76
  1363. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +8 -8
  1364. package/vscode/src/vs/workbench/browser/parts/editor/editorTitleControl.js +1 -1
  1365. package/vscode/src/vs/workbench/browser/parts/editor/editorTypePicker.js +12 -12
  1366. package/vscode/src/vs/workbench/browser/parts/editor/editorsObserver.js +10 -6
  1367. package/vscode/src/vs/workbench/browser/parts/editor/modalEditorPart.js +6 -6
  1368. package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +10 -10
  1369. package/vscode/src/vs/workbench/browser/parts/editor/noEditorTabsControl.js +1 -1
  1370. package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +6 -3
  1371. package/vscode/src/vs/workbench/browser/parts/editor/singleEditorTabsControl.js +1 -1
  1372. package/vscode/src/vs/workbench/browser/parts/editor/textCodeEditor.js +1 -1
  1373. package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +3 -3
  1374. package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +1 -1
  1375. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +21 -21
  1376. package/vscode/src/vs/workbench/browser/parts/notifications/notificationAccessibleView.js +3 -3
  1377. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsActions.js +23 -23
  1378. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsAlerts.js +3 -3
  1379. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCenter.js +11 -9
  1380. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +15 -15
  1381. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsList.js +7 -7
  1382. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsStatus.js +13 -13
  1383. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsToasts.js +4 -4
  1384. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsViewer.js +4 -4
  1385. package/vscode/src/vs/workbench/browser/parts/paneCompositeBar.js +20 -20
  1386. package/vscode/src/vs/workbench/browser/parts/paneCompositePart.js +5 -5
  1387. package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +28 -28
  1388. package/vscode/src/vs/workbench/browser/parts/panel/panelPart.js +4 -4
  1389. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarActions.js +3 -3
  1390. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.js +2 -2
  1391. package/vscode/src/vs/workbench/browser/parts/titlebar/media/titlebarpart.css +541 -0
  1392. package/vscode/src/vs/workbench/browser/parts/titlebar/menubar.contribution.js +78 -0
  1393. package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +12 -12
  1394. package/vscode/src/vs/workbench/browser/parts/titlebar/titlebarActions.js +15 -15
  1395. package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +2 -2
  1396. package/vscode/src/vs/workbench/browser/parts/views/checkbox.js +1 -1
  1397. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +25 -23
  1398. package/vscode/src/vs/workbench/browser/parts/views/viewFilter.js +5 -5
  1399. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +7 -7
  1400. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +17 -17
  1401. package/vscode/src/vs/workbench/browser/quickaccess.js +1 -1
  1402. package/vscode/src/vs/workbench/browser/style.js +1 -1
  1403. package/vscode/src/vs/workbench/browser/window.js +14 -14
  1404. package/vscode/src/vs/workbench/browser/workbench.contribution.js +232 -232
  1405. package/vscode/src/vs/workbench/browser/workbench.zenMode.contribution.d.ts +1 -0
  1406. package/vscode/src/vs/workbench/browser/workbench.zenMode.contribution.js +140 -0
  1407. package/vscode/src/vs/workbench/common/chatPullRequest.d.ts +19 -0
  1408. package/vscode/src/vs/workbench/common/chatPullRequest.js +65 -0
  1409. package/vscode/src/vs/workbench/common/configuration.js +17 -14
  1410. package/vscode/src/vs/workbench/common/contextkeys.js +140 -139
  1411. package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +1 -1
  1412. package/vscode/src/vs/workbench/common/editor/editorGroupModel.js +4 -4
  1413. package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +1 -1
  1414. package/vscode/src/vs/workbench/common/editor/textEditorModel.js +1 -1
  1415. package/vscode/src/vs/workbench/common/editor.js +6 -6
  1416. package/vscode/src/vs/workbench/common/notifications.js +1 -1
  1417. package/vscode/src/vs/workbench/common/resources.js +1 -1
  1418. package/vscode/src/vs/workbench/common/theme.js +199 -199
  1419. package/vscode/src/vs/workbench/common/views.js +4 -4
  1420. package/vscode/src/vs/workbench/common/views.service.d.ts +1 -1
  1421. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +232 -228
  1422. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +12 -12
  1423. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/voiceModeOnboarding.service.d.ts +1 -1
  1424. package/vscode/src/vs/workbench/contrib/agentsVoice/common/agentsVoice.js +5 -5
  1425. package/vscode/src/vs/workbench/contrib/agentsVoice/common/agentsVoice.service.d.ts +1 -1
  1426. package/vscode/src/vs/workbench/contrib/agentsVoice/common/agentsVoiceColors.js +2 -2
  1427. package/vscode/src/vs/workbench/contrib/browserView/common/browserEditorInput.js +1 -1
  1428. package/vscode/src/vs/workbench/contrib/browserView/common/browserView.js +11 -11
  1429. package/vscode/src/vs/workbench/contrib/browserView/common/browserView.service.d.ts +1 -1
  1430. package/vscode/src/vs/workbench/contrib/browserView/common/browserZoomService.service.d.ts +1 -1
  1431. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/bulkCellEdits.js +3 -3
  1432. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/conflicts.d.ts +16 -0
  1433. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/conflicts.js +73 -0
  1434. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEdit.contribution.d.ts +1 -0
  1435. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEdit.contribution.js +311 -0
  1436. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEdit.css +104 -0
  1437. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEditPane.d.ts +64 -0
  1438. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEditPane.js +391 -0
  1439. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEditPreview.d.ts +88 -0
  1440. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEditPreview.js +393 -0
  1441. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEditTree.d.ts +132 -0
  1442. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEditTree.js +630 -0
  1443. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityProvider.d.ts +17 -0
  1444. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityProvider.js +220 -0
  1445. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +65 -65
  1446. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatConstants.d.ts +1 -0
  1447. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatConstants.js +2 -1
  1448. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContext.d.ts +59 -0
  1449. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContext.js +482 -0
  1450. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.d.ts +86 -0
  1451. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.js +600 -0
  1452. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.d.ts +2 -0
  1453. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.js +60 -0
  1454. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.d.ts +89 -0
  1455. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +928 -0
  1456. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.d.ts +20 -0
  1457. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.js +246 -0
  1458. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatModelFeedbackSurveyActions.d.ts +22 -0
  1459. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatModelFeedbackSurveyActions.js +119 -0
  1460. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatSpeechToTextActions.d.ts +58 -0
  1461. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatSpeechToTextActions.js +341 -0
  1462. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.d.ts +3 -0
  1463. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.js +368 -0
  1464. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.d.ts +15 -0
  1465. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +211 -0
  1466. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.d.ts +22 -0
  1467. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +712 -0
  1468. package/vscode/src/vs/workbench/contrib/chat/browser/actions/configureVoiceInstructionsAction.d.ts +3 -0
  1469. package/vscode/src/vs/workbench/contrib/chat/browser/actions/configureVoiceInstructionsAction.js +89 -0
  1470. package/vscode/src/vs/workbench/contrib/chat/browser/actions/exportAgentHostDebugLogsAction.service.d.ts +1 -1
  1471. package/vscode/src/vs/workbench/contrib/chat/browser/agentHostCompletionAction.d.ts +30 -0
  1472. package/vscode/src/vs/workbench/contrib/chat/browser/agentHostCompletionAction.js +37 -0
  1473. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.d.ts +1 -1
  1474. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.js +12 -12
  1475. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.d.ts +30 -0
  1476. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.js +9 -0
  1477. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostActiveClientService.service.d.ts +1 -1
  1478. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostByokLmHandler.d.ts +50 -0
  1479. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostByokLmHandler.js +479 -0
  1480. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.contribution.d.ts +45 -0
  1481. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.contribution.js +137 -0
  1482. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.d.ts +156 -0
  1483. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.js +1053 -0
  1484. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatReferenceAttachment.d.ts +20 -0
  1485. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatReferenceAttachment.js +35 -0
  1486. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostCustomizationService.service.d.ts +2 -3
  1487. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostDownloadProgress.d.ts +35 -0
  1488. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostDownloadProgress.js +73 -0
  1489. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostFolderPickerActionItem.d.ts +50 -0
  1490. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostFolderPickerActionItem.js +189 -0
  1491. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostFolderPickerTip.d.ts +7 -0
  1492. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostFolderPickerTip.js +55 -0
  1493. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostGenericConfigChips.d.ts +47 -0
  1494. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostGenericConfigChips.js +183 -0
  1495. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostImportConversationStore.service.d.ts +1 -1
  1496. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostModePickerPresentation.d.ts +37 -0
  1497. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostModePickerPresentation.js +230 -0
  1498. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostNewSessionFolderService.d.ts +101 -0
  1499. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostNewSessionFolderService.js +164 -0
  1500. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostNewSessionFolderService.service.d.ts +1 -2
  1501. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostProtectedResourcesService.service.d.ts +1 -1
  1502. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSdkSetupNotification.d.ts +110 -0
  1503. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSdkSetupNotification.js +279 -0
  1504. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionReferenceAttachment.d.ts +12 -0
  1505. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionReferenceAttachment.js +76 -0
  1506. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionUri.d.ts +2 -0
  1507. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionUri.js +21 -0
  1508. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.service.d.ts +1 -1
  1509. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectorySynchronizer.service.d.ts +1 -1
  1510. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostShellInitSynchronizer.service.d.ts +2 -2
  1511. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSnapshotController.d.ts +116 -0
  1512. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSnapshotController.js +348 -0
  1513. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostToolSetEnablementService.d.ts +51 -0
  1514. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostToolSetEnablementService.js +167 -0
  1515. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostToolSetEnablementService.service.d.ts +1 -1
  1516. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostUntitledProvisionalSessionService.service.d.ts +1 -2
  1517. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/importLocalConversationToAgentSession.d.ts +14 -0
  1518. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/importLocalConversationToAgentSession.js +218 -0
  1519. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/media/agentHostChatInputPicker.css +171 -0
  1520. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/media/agentHostModePicker.css +193 -0
  1521. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/stateToProgressAdapter.d.ts +273 -0
  1522. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/stateToProgressAdapter.js +2478 -0
  1523. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionApprovalModel.d.ts +45 -0
  1524. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionApprovalModel.js +122 -0
  1525. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.js +15 -15
  1526. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsBanner.d.ts +30 -0
  1527. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsBanner.js +39 -0
  1528. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.d.ts +72 -0
  1529. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.js +393 -0
  1530. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsModel.js +10 -10
  1531. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.d.ts +23 -0
  1532. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.js +160 -0
  1533. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.service.d.ts +1 -2
  1534. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.service.d.ts +1 -1
  1535. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusService.service.d.ts +1 -2
  1536. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/externalSessionsFilterMenu.d.ts +3 -0
  1537. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/externalSessionsFilterMenu.js +62 -0
  1538. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/agentSessionHoverWidget.css +98 -0
  1539. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/agentsessionsviewer.css +471 -0
  1540. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/sessionSummaryHover.css +104 -0
  1541. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionSummaryHover.d.ts +115 -0
  1542. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionSummaryHover.js +168 -0
  1543. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionSummaryHoverService.service.d.ts +1 -1
  1544. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionTypeAvailability.d.ts +83 -0
  1545. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionTypeAvailability.js +134 -0
  1546. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.d.ts +35 -0
  1547. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.js +294 -0
  1548. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.d.ts +66 -0
  1549. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +39 -0
  1550. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.d.ts +147 -0
  1551. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.js +349 -0
  1552. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.d.ts +83 -0
  1553. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.js +264 -0
  1554. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.service.d.ts +2 -2
  1555. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +278 -0
  1556. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +2036 -0
  1557. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.d.ts +22 -0
  1558. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.js +18 -0
  1559. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.d.ts +1 -1
  1560. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.js +7 -7
  1561. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +397 -0
  1562. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +4132 -0
  1563. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.d.ts +37 -0
  1564. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +93 -0
  1565. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementSectionRegistry.d.ts +26 -0
  1566. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementSectionRegistry.js +34 -0
  1567. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationPresentation.d.ts +2 -0
  1568. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationPresentation.js +23 -0
  1569. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePage.d.ts +57 -0
  1570. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePage.js +48 -0
  1571. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.d.ts +40 -0
  1572. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.js +369 -0
  1573. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCardList.d.ts +40 -0
  1574. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCardList.js +302 -0
  1575. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.d.ts +70 -0
  1576. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.js +220 -0
  1577. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationGroupHeaderRenderer.d.ts +43 -0
  1578. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationGroupHeaderRenderer.js +63 -0
  1579. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigration.d.ts +38 -0
  1580. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigration.js +240 -0
  1581. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationCategories.d.ts +82 -0
  1582. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationCategories.js +765 -0
  1583. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationDashboard.d.ts +80 -0
  1584. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationDashboard.js +279 -0
  1585. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.d.ts +109 -0
  1586. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.js +743 -0
  1587. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedExtensionToolsDetail.d.ts +42 -0
  1588. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedExtensionToolsDetail.js +130 -0
  1589. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedMcpServerDetail.d.ts +62 -0
  1590. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedMcpServerDetail.js +217 -0
  1591. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/galleryItemRenderer.d.ts +46 -0
  1592. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/galleryItemRenderer.js +91 -0
  1593. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.d.ts +357 -0
  1594. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +2661 -0
  1595. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +3742 -0
  1596. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationWelcomePromptLaunchers.css +301 -0
  1597. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/customizationMigrationDashboard.css +354 -0
  1598. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +197 -0
  1599. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +2205 -0
  1600. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.d.ts +27 -0
  1601. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.js +317 -0
  1602. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/toolsListWidget.d.ts +132 -0
  1603. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/toolsListWidget.js +1216 -0
  1604. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentModel.d.ts +37 -0
  1605. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentModel.js +197 -0
  1606. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.service.d.ts +1 -1
  1607. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.d.ts +275 -0
  1608. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.js +2252 -0
  1609. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatContextPickService.js +2 -2
  1610. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatDynamicVariables.js +4 -4
  1611. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatImplicitContext.d.ts +76 -0
  1612. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatImplicitContext.js +485 -0
  1613. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatScreenshotContext.js +1 -1
  1614. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatWidgetPasteTarget.d.ts +18 -0
  1615. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatWidgetPasteTarget.js +40 -0
  1616. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.d.ts +53 -0
  1617. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.js +363 -0
  1618. package/vscode/src/vs/workbench/contrib/chat/browser/chat.d.ts +3 -3
  1619. package/vscode/src/vs/workbench/contrib/chat/browser/chat.js +9 -9
  1620. package/vscode/src/vs/workbench/contrib/chat/browser/chat.service.d.ts +1 -2
  1621. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.d.ts +52 -0
  1622. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.js +788 -0
  1623. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorContextKeys.js +11 -11
  1624. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.service.d.ts +1 -1
  1625. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.d.ts +28 -0
  1626. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.js +98 -0
  1627. package/vscode/src/vs/workbench/contrib/chat/browser/chatIcons.d.ts +9 -0
  1628. package/vscode/src/vs/workbench/contrib/chat/browser/chatIcons.js +36 -0
  1629. package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.service.d.ts +1 -1
  1630. package/vscode/src/vs/workbench/contrib/chat/browser/chatImageUtils.js +3 -3
  1631. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPills.d.ts +86 -0
  1632. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPills.js +289 -0
  1633. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.d.ts +118 -0
  1634. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +543 -0
  1635. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.d.ts +82 -0
  1636. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +1452 -0
  1637. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatModelsWidget.css +329 -0
  1638. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutline.js +6 -6
  1639. package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievementPreview.d.ts +7 -0
  1640. package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievementPreview.js +114 -0
  1641. package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievements.d.ts +99 -0
  1642. package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievements.js +329 -0
  1643. package/vscode/src/vs/workbench/contrib/chat/browser/chatPetService.d.ts +66 -0
  1644. package/vscode/src/vs/workbench/contrib/chat/browser/chatPetService.js +504 -0
  1645. package/vscode/src/vs/workbench/contrib/chat/browser/chatPetService.service.d.ts +3 -3
  1646. package/vscode/src/vs/workbench/contrib/chat/browser/chatRequestText.d.ts +9 -0
  1647. package/vscode/src/vs/workbench/contrib/chat/browser/chatRequestText.js +12 -0
  1648. package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseFileChangesService.d.ts +55 -0
  1649. package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseFileChangesService.js +37 -0
  1650. package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseFileChangesService.service.d.ts +2 -2
  1651. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.d.ts +60 -0
  1652. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.js +259 -0
  1653. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.js +73 -71
  1654. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/media/chatSessionPickerActionItem.css +58 -0
  1655. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.js +2 -2
  1656. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatus.d.ts +2 -0
  1657. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatus.js +9 -0
  1658. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.d.ts +99 -0
  1659. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +1268 -0
  1660. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusItemService.service.d.ts +1 -1
  1661. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/media/chatStatus.css +552 -0
  1662. package/vscode/src/vs/workbench/contrib/chat/browser/chatTerminalCommandPaste.d.ts +35 -0
  1663. package/vscode/src/vs/workbench/contrib/chat/browser/chatTerminalCommandPaste.js +94 -0
  1664. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.service.d.ts +1 -1
  1665. package/vscode/src/vs/workbench/contrib/chat/browser/editorChatResponseFileChangesService.d.ts +21 -0
  1666. package/vscode/src/vs/workbench/contrib/chat/browser/editorChatResponseFileChangesService.js +45 -0
  1667. package/vscode/src/vs/workbench/contrib/chat/browser/enablementActions.js +4 -4
  1668. package/vscode/src/vs/workbench/contrib/chat/browser/feedbackSurvey/chatModelFeedbackSurveyService.d.ts +123 -0
  1669. package/vscode/src/vs/workbench/contrib/chat/browser/feedbackSurvey/chatModelFeedbackSurveyService.js +484 -0
  1670. package/vscode/src/vs/workbench/contrib/chat/browser/feedbackSurvey/chatModelFeedbackSurveyService.service.d.ts +2 -3
  1671. package/vscode/src/vs/workbench/contrib/chat/browser/feedbackSurvey/chatModelFeedbackSurveyWidget.d.ts +39 -0
  1672. package/vscode/src/vs/workbench/contrib/chat/browser/feedbackSurvey/chatModelFeedbackSurveyWidget.js +230 -0
  1673. package/vscode/src/vs/workbench/contrib/chat/browser/feedbackSurvey/media/chatModelFeedbackSurvey.css +108 -0
  1674. package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackService.service.d.ts +1 -2
  1675. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.d.ts +25 -0
  1676. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.js +95 -0
  1677. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.d.ts +31 -0
  1678. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +676 -0
  1679. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.d.ts +68 -0
  1680. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +225 -0
  1681. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/newPromptFileActions.d.ts +24 -0
  1682. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/newPromptFileActions.js +355 -0
  1683. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptName.d.ts +7 -0
  1684. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptName.js +81 -0
  1685. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptSourceFolder.d.ts +15 -0
  1686. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptSourceFolder.js +181 -0
  1687. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/promptFilePickers.d.ts +75 -0
  1688. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/promptFilePickers.js +632 -0
  1689. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileRewriter.js +1 -1
  1690. package/vscode/src/vs/workbench/contrib/chat/browser/sessionChatPillOptions.d.ts +13 -0
  1691. package/vscode/src/vs/workbench/contrib/chat/browser/sessionChatPillOptions.js +52 -0
  1692. package/vscode/src/vs/workbench/contrib/chat/browser/sessionPullRequestPill.d.ts +22 -0
  1693. package/vscode/src/vs/workbench/contrib/chat/browser/sessionPullRequestPill.js +58 -0
  1694. package/vscode/src/vs/workbench/contrib/chat/browser/sessionResourceMatching.d.ts +5 -0
  1695. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/chatSpeechToTextService.js +19 -19
  1696. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/chatSpeechToTextService.service.d.ts +1 -1
  1697. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/dictationActionViewItem.d.ts +32 -0
  1698. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/dictationActionViewItem.js +77 -0
  1699. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/dictationDownloadActionViewItem.d.ts +30 -0
  1700. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/dictationDownloadActionViewItem.js +91 -0
  1701. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/dictationDownloadRing.js +7 -7
  1702. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/dictationMicGlow.d.ts +36 -0
  1703. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/dictationMicGlow.js +121 -0
  1704. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/dictationOnboarding.d.ts +124 -0
  1705. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/dictationOnboarding.js +622 -0
  1706. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/dictationOnboarding.service.d.ts +2 -2
  1707. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/dictationSession.js +3 -3
  1708. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/media/dictationMicGlow.css +99 -0
  1709. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/media/dictationOnboarding.css +128 -0
  1710. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/micButtonHovers.d.ts +9 -0
  1711. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/micButtonHovers.js +60 -0
  1712. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/micButtonMenuActions.d.ts +27 -0
  1713. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/micButtonMenuActions.js +161 -0
  1714. package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/voiceCodeTranscriptionClient.service.d.ts +1 -1
  1715. package/vscode/src/vs/workbench/contrib/chat/browser/tools/chatToolRiskAssessmentService.d.ts +35 -0
  1716. package/vscode/src/vs/workbench/contrib/chat/browser/tools/chatToolRiskAssessmentService.js +321 -0
  1717. package/vscode/src/vs/workbench/contrib/chat/browser/tools/chatToolRiskAssessmentService.service.d.ts +1 -1
  1718. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.d.ts +45 -0
  1719. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +509 -0
  1720. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewWelcomeController.d.ts +58 -0
  1721. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewWelcomeController.js +177 -0
  1722. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcome.d.ts +28 -0
  1723. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcome.js +31 -0
  1724. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/media/voiceGlow.css +264 -0
  1725. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/media/voiceInputDecorations.css +50 -0
  1726. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/micCaptureService.js +2 -2
  1727. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/micCaptureService.service.d.ts +1 -1
  1728. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/ttsPlaybackService.service.d.ts +1 -1
  1729. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceGlow.d.ts +82 -0
  1730. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceGlow.js +101 -0
  1731. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceGlowController.d.ts +36 -0
  1732. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceGlowController.js +459 -0
  1733. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceInputDecorations.d.ts +47 -0
  1734. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceInputDecorations.js +193 -0
  1735. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceInputUtils.d.ts +11 -0
  1736. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceInputUtils.js +13 -0
  1737. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceModeActionViewItem.d.ts +27 -0
  1738. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceModeActionViewItem.js +59 -0
  1739. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceSessionController.d.ts +1174 -0
  1740. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceSessionController.js +5599 -0
  1741. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceSessionController.service.d.ts +2 -2
  1742. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceToolDispatchService.d.ts +99 -0
  1743. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceToolDispatchService.js +691 -0
  1744. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceToolDispatchService.service.d.ts +2 -2
  1745. package/vscode/src/vs/workbench/contrib/chat/browser/voiceInputMode/media/voiceInputMode.css +201 -0
  1746. package/vscode/src/vs/workbench/contrib/chat/browser/voiceInputMode/voiceInputModeActionViewItem.d.ts +137 -0
  1747. package/vscode/src/vs/workbench/contrib/chat/browser/voiceInputMode/voiceInputModeActionViewItem.js +777 -0
  1748. package/vscode/src/vs/workbench/contrib/chat/browser/voiceInputMode/voiceInputModeContextKeys.d.ts +13 -0
  1749. package/vscode/src/vs/workbench/contrib/chat/browser/voiceInputMode/voiceInputModeContextKeys.js +14 -0
  1750. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatAgentHover.d.ts +24 -0
  1751. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatAgentHover.js +112 -0
  1752. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatArtifactsWidget.d.ts +41 -0
  1753. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatArtifactsWidget.js +533 -0
  1754. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatCard.d.ts +37 -0
  1755. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatCard.js +44 -0
  1756. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatCardListbox.d.ts +35 -0
  1757. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatCardListbox.js +55 -0
  1758. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatClipboard.d.ts +15 -0
  1759. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatClipboard.js +92 -0
  1760. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentMarkdownRenderer.d.ts +22 -0
  1761. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentMarkdownRenderer.js +175 -0
  1762. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentCommandContentPart.d.ts +12 -0
  1763. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentCommandContentPart.js +51 -0
  1764. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentMergeContentPart.d.ts +72 -0
  1765. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentMergeContentPart.js +418 -0
  1766. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAnonymousRateLimitedPart.d.ts +13 -0
  1767. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAnonymousRateLimitedPart.js +51 -0
  1768. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.d.ts +51 -0
  1769. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.js +321 -0
  1770. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAutoModeResolutionContentPart.d.ts +21 -0
  1771. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAutoModeResolutionContentPart.js +48 -0
  1772. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.d.ts +52 -0
  1773. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.js +354 -0
  1774. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCodeCitationContentPart.d.ts +13 -0
  1775. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCodeCitationContentPart.js +50 -0
  1776. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollapsibleContentPart.d.ts +69 -0
  1777. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollapsibleContentPart.js +272 -0
  1778. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollapsibleMarkdownContentPart.d.ts +21 -0
  1779. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollapsibleMarkdownContentPart.js +52 -0
  1780. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollections.d.ts +61 -0
  1781. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollections.js +186 -0
  1782. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCommandContentPart.d.ts +12 -0
  1783. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCommandContentPart.js +45 -0
  1784. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentCodePools.d.ts +22 -0
  1785. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentCodePools.js +97 -0
  1786. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentParts.d.ts +70 -0
  1787. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentParts.js +29 -0
  1788. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDiffBlockPart.d.ts +40 -0
  1789. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDiffBlockPart.js +155 -0
  1790. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDisabledClaudeHooksContentPart.d.ts +13 -0
  1791. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDisabledClaudeHooksContentPart.js +56 -0
  1792. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatEditPillElement.d.ts +104 -0
  1793. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatEditPillElement.js +153 -0
  1794. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatErrorConfirmationPart.d.ts +18 -0
  1795. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatErrorConfirmationPart.js +92 -0
  1796. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatErrorContentPart.d.ts +16 -0
  1797. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatErrorContentPart.js +46 -0
  1798. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExtensionsContentPart.d.ts +16 -0
  1799. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExtensionsContentPart.js +63 -0
  1800. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExternalEditContentPart.d.ts +49 -0
  1801. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExternalEditContentPart.js +149 -0
  1802. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatHookContentPart.d.ts +15 -0
  1803. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatHookContentPart.js +67 -0
  1804. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/animation.d.ts +18 -0
  1805. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/animationRegistry.d.ts +15 -0
  1806. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/animationRegistry.js +16 -0
  1807. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/blockAnimations.d.ts +13 -0
  1808. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/blockAnimations.js +33 -0
  1809. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/buffer.d.ts +46 -0
  1810. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/bufferRegistry.d.ts +11 -0
  1811. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/bufferRegistry.js +12 -0
  1812. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/offBuffer.d.ts +9 -0
  1813. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/offBuffer.js +12 -0
  1814. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/paragraphBuffer.d.ts +23 -0
  1815. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/paragraphBuffer.js +37 -0
  1816. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/wordBuffer.d.ts +34 -0
  1817. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/wordBuffer.js +68 -0
  1818. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/chatIncrementalRendering.d.ts +84 -0
  1819. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/chatIncrementalRendering.js +187 -0
  1820. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/media/chatIncrementalRendering.css +112 -0
  1821. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.d.ts +63 -0
  1822. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.js +584 -0
  1823. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownAnchorService.service.d.ts +1 -1
  1824. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownDecorationsRenderer.d.ts +48 -0
  1825. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownDecorationsRenderer.js +257 -0
  1826. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownTableScrolling.d.ts +15 -0
  1827. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownTableScrolling.js +55 -0
  1828. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpAuthenticationContentPart.d.ts +35 -0
  1829. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpAuthenticationContentPart.js +143 -0
  1830. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.d.ts +32 -0
  1831. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.js +228 -0
  1832. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersStartingContentPart.d.ts +32 -0
  1833. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersStartingContentPart.js +67 -0
  1834. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.d.ts +31 -0
  1835. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.js +302 -0
  1836. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPlanReviewPart.d.ts +101 -0
  1837. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPlanReviewPart.js +904 -0
  1838. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.d.ts +55 -0
  1839. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.js +291 -0
  1840. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPullRequestContentPart.d.ts +14 -0
  1841. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPullRequestContentPart.js +46 -0
  1842. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.d.ts +212 -0
  1843. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.js +1656 -0
  1844. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.d.ts +14 -0
  1845. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.js +75 -0
  1846. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.d.ts +69 -0
  1847. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.js +586 -0
  1848. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatRequestOriginPart.d.ts +28 -0
  1849. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatRequestOriginPart.js +192 -0
  1850. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatResourceGroupWidget.d.ts +27 -0
  1851. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatResourceGroupWidget.js +280 -0
  1852. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatRichLink.d.ts +35 -0
  1853. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatRichLink.js +364 -0
  1854. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.d.ts +37 -0
  1855. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.js +250 -0
  1856. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSystemNotificationContentPart.d.ts +18 -0
  1857. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSystemNotificationContentPart.js +141 -0
  1858. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTaskContentPart.d.ts +15 -0
  1859. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTaskContentPart.js +61 -0
  1860. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.d.ts +32 -0
  1861. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.js +163 -0
  1862. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.d.ts +251 -0
  1863. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.js +2187 -0
  1864. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingExternalResourcesWidget.d.ts +18 -0
  1865. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingExternalResourcesWidget.js +70 -0
  1866. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingStyleContentPart.d.ts +50 -0
  1867. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingStyleContentPart.js +78 -0
  1868. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTipContentPart.d.ts +36 -0
  1869. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTipContentPart.js +267 -0
  1870. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.d.ts +47 -0
  1871. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.js +388 -0
  1872. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolOutputContentSubPart.d.ts +27 -0
  1873. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolOutputContentSubPart.js +113 -0
  1874. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.d.ts +37 -0
  1875. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.js +190 -0
  1876. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTurnPillsPart.d.ts +29 -0
  1877. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTurnPillsPart.js +156 -0
  1878. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatWorkspaceEditContentPart.d.ts +18 -0
  1879. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatWorkspaceEditContentPart.js +83 -0
  1880. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.d.ts +180 -0
  1881. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.js +945 -0
  1882. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatAgentFeedbackReviewConfirmation.css +140 -0
  1883. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatAgentMergeContent.css +385 -0
  1884. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatCodeBlockPill.css +158 -0
  1885. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatCollapsibleContentPart.css +62 -0
  1886. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatConfirmationWidget.css +602 -0
  1887. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatDisabledClaudeHooksContent.css +18 -0
  1888. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatExtensionsContent.css +31 -0
  1889. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatHookContentPart.css +47 -0
  1890. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatInlineAnchorWidget.css +87 -0
  1891. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatMarkdownPart.css +23 -0
  1892. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatMcpServersInteractionContent.css +18 -0
  1893. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatPlanReview.css +384 -0
  1894. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatPullRequestContent.css +39 -0
  1895. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatQuestionCarousel.css +618 -0
  1896. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatRequestOrigin.css +80 -0
  1897. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatRichLink.css +471 -0
  1898. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatSessionCreatedResult.css +18 -0
  1899. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatSubagentContent.css +124 -0
  1900. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatSystemNotificationContentPart.css +145 -0
  1901. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatTerminalToolProgressPart.css +310 -0
  1902. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatThinkingContent.css +567 -0
  1903. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatTipContent.css +70 -0
  1904. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatToolConfirmationCarousel.css +244 -0
  1905. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/codeBlockPart.css +204 -0
  1906. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatAutomationConfiguredResultSubPart.d.ts +16 -0
  1907. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatAutomationConfiguredResultSubPart.js +36 -0
  1908. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatGeneratedImageResultSubPart.d.ts +20 -0
  1909. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatGeneratedImageResultSubPart.js +102 -0
  1910. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppModel.d.ts +159 -0
  1911. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppModel.js +752 -0
  1912. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppSubPart.d.ts +51 -0
  1913. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppSubPart.js +148 -0
  1914. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatOtherClientToolProgressPart.d.ts +11 -0
  1915. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatOtherClientToolProgressPart.js +55 -0
  1916. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatResultListSubPart.d.ts +14 -0
  1917. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatResultListSubPart.js +32 -0
  1918. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatSessionCreatedResultSubPart.d.ts +20 -0
  1919. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatSessionCreatedResultSubPart.js +70 -0
  1920. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationCarouselPart.d.ts +71 -0
  1921. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationCarouselPart.js +533 -0
  1922. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationSubPart.d.ts +22 -0
  1923. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationSubPart.js +37 -0
  1924. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputPart.d.ts +21 -0
  1925. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputPart.js +125 -0
  1926. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPartUtilities.d.ts +20 -0
  1927. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPartUtilities.js +65 -0
  1928. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolProgressPart.d.ts +24 -0
  1929. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolProgressPart.js +137 -0
  1930. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolStreamingSubPart.d.ts +19 -0
  1931. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolStreamingSubPart.js +69 -0
  1932. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/media/toolRiskBadge.css +76 -0
  1933. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/terminalToolAutoExpand.d.ts +60 -0
  1934. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/terminalToolAutoExpand.js +66 -0
  1935. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/toolRiskBadgeHelper.d.ts +21 -0
  1936. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/toolRiskBadgeHelper.js +78 -0
  1937. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/toolRiskBadgeWidget.d.ts +38 -0
  1938. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/toolRiskBadgeWidget.js +142 -0
  1939. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatDragAndDrop.d.ts +84 -0
  1940. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatDragAndDrop.js +470 -0
  1941. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatEditorAssociations.d.ts +6 -0
  1942. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatEditorAssociations.js +16 -0
  1943. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatFind/chatFindCommandIds.d.ts +9 -0
  1944. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatFind/chatFindCommandIds.js +14 -0
  1945. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatFind/chatFindContent.d.ts +23 -0
  1946. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatFind/chatFindContent.js +92 -0
  1947. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatFind/chatFindHighlights.d.ts +25 -0
  1948. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatFind/chatFindHighlights.js +77 -0
  1949. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatFind/chatFindWidget.css +23 -0
  1950. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatForkActionViewItem.d.ts +16 -0
  1951. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatForkActionViewItem.js +87 -0
  1952. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatOptions.d.ts +51 -0
  1953. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatOptions.js +100 -0
  1954. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPendingDragAndDrop.d.ts +27 -0
  1955. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPendingDragAndDrop.js +148 -0
  1956. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPetAccessoryRenderer.d.ts +34 -0
  1957. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPetAccessoryRenderer.js +278 -0
  1958. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPetAccessoryRig.d.ts +26 -0
  1959. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPetAccessoryRig.js +183 -0
  1960. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPetWidget.d.ts +372 -0
  1961. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPetWidget.js +3435 -0
  1962. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPetWidgetService.service.d.ts +2 -2
  1963. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatReadOnlyBanner.d.ts +10 -0
  1964. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatReadOnlyBanner.js +44 -0
  1965. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatReferenceDrop.d.ts +56 -0
  1966. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatReferenceDrop.js +43 -0
  1967. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatRestoreCheckpointActionViewItem.d.ts +30 -0
  1968. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatRestoreCheckpointActionViewItem.js +138 -0
  1969. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatTurnPills.d.ts +79 -0
  1970. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatTurnPills.js +56 -0
  1971. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatFollowups.d.ts +13 -0
  1972. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatFollowups.js +57 -0
  1973. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatGoalBannerWidget.d.ts +26 -0
  1974. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatGoalBannerWidget.js +74 -0
  1975. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputModelSelectionController.d.ts +130 -0
  1976. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputModelSelectionController.js +432 -0
  1977. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputModelUtils.d.ts +156 -0
  1978. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputModelUtils.js +159 -0
  1979. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNoticeHost.d.ts +115 -0
  1980. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNoticeHost.js +146 -0
  1981. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNoticeHub.service.d.ts +1 -1
  1982. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNoticeWidget.d.ts +115 -0
  1983. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNoticeWidget.js +130 -0
  1984. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.service.d.ts +1 -1
  1985. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationWidget.d.ts +96 -0
  1986. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationWidget.js +364 -0
  1987. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputOnboarding.d.ts +83 -0
  1988. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputOnboarding.js +178 -0
  1989. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputOnboardingHosts.d.ts +17 -0
  1990. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputOnboardingHosts.js +30 -0
  1991. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.d.ts +895 -0
  1992. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.js +4571 -0
  1993. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPickerActionItem.d.ts +42 -0
  1994. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPickerActionItem.js +97 -0
  1995. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPickerResponsiveLayout.d.ts +38 -0
  1996. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPickerResponsiveLayout.js +212 -0
  1997. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputStack.d.ts +63 -0
  1998. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputStack.js +62 -0
  1999. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputStatePersistence.d.ts +6 -0
  2000. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputStatePersistence.js +18 -0
  2001. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputTipPresenter.d.ts +51 -0
  2002. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputTipPresenter.js +102 -0
  2003. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelConfigurationLogic.d.ts +52 -0
  2004. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelConfigurationLogic.js +118 -0
  2005. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelConfigurationStore.d.ts +79 -0
  2006. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelConfigurationStore.js +127 -0
  2007. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelSelectionDiagnostics.d.ts +26 -0
  2008. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelSelectionDiagnostics.js +60 -0
  2009. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatPhoneInputPresenter.d.ts +76 -0
  2010. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatPhoneInputPresenter.js +126 -0
  2011. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatPhoneInputPresenter.service.d.ts +1 -1
  2012. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatSelectedTools.d.ts +36 -0
  2013. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatSelectedTools.js +192 -0
  2014. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatSessionArchiveNudge.d.ts +49 -0
  2015. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatSessionArchiveNudge.js +238 -0
  2016. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.d.ts +44 -0
  2017. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.js +193 -0
  2018. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletionsBase.d.ts +73 -0
  2019. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletionsBase.js +65 -0
  2020. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletionUtils.d.ts +31 -0
  2021. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletionUtils.js +110 -0
  2022. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputPlaceholderDecoration.d.ts +11 -0
  2023. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputPlaceholderDecoration.js +28 -0
  2024. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputReferenceDecorations.d.ts +3 -0
  2025. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputReferenceDecorations.js +16 -0
  2026. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatPasteProviders.d.ts +71 -0
  2027. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatPasteProviders.js +800 -0
  2028. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatGoalBannerWidget.css +72 -0
  2029. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatInputNotice.css +245 -0
  2030. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatInputNotificationWidget.css +162 -0
  2031. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatInputStack.css +86 -0
  2032. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatPhoneInputPresenter.css +22 -0
  2033. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatSessionArchiveNudge.css +128 -0
  2034. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.d.ts +41 -0
  2035. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.js +337 -0
  2036. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/media/modelPicker.css +1120 -0
  2037. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerActionItem.d.ts +82 -0
  2038. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerActionItem.js +130 -0
  2039. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerAutoRow.d.ts +30 -0
  2040. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerAutoRow.js +140 -0
  2041. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerBadges.d.ts +29 -0
  2042. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerBadges.js +44 -0
  2043. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerCard.d.ts +91 -0
  2044. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerCard.js +428 -0
  2045. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerConfiguration.d.ts +23 -0
  2046. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerConfiguration.js +175 -0
  2047. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerDetails.d.ts +19 -0
  2048. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerDetails.js +51 -0
  2049. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerHover.d.ts +14 -0
  2050. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerHover.js +226 -0
  2051. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerItemPrimitives.d.ts +29 -0
  2052. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerItemPrimitives.js +251 -0
  2053. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerItemSections.d.ts +11 -0
  2054. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerItemSections.js +580 -0
  2055. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerItemTypes.d.ts +38 -0
  2056. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerItems.d.ts +22 -0
  2057. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerItems.js +101 -0
  2058. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerLineage.d.ts +22 -0
  2059. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerLineage.js +52 -0
  2060. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerModelConfig.d.ts +36 -0
  2061. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerModelConfig.js +45 -0
  2062. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerPresentation.d.ts +30 -0
  2063. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerPresentation.js +79 -0
  2064. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerTabbedWidget.d.ts +102 -0
  2065. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerTabbedWidget.js +501 -0
  2066. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerTabs.d.ts +95 -0
  2067. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerTabs.js +193 -0
  2068. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerTelemetry.d.ts +7 -0
  2069. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerTelemetry.js +27 -0
  2070. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerVariants.d.ts +16 -0
  2071. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerVariants.js +47 -0
  2072. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerWelcome.d.ts +10 -0
  2073. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerWelcome.js +40 -0
  2074. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerWidget.d.ts +140 -0
  2075. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelPickerWidget.js +615 -0
  2076. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelProviderIcons.d.ts +10 -0
  2077. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPicker/modelProviderIcons.js +67 -0
  2078. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.d.ts +99 -0
  2079. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.js +371 -0
  2080. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.d.ts +79 -0
  2081. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.js +375 -0
  2082. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerActionItem.d.ts +20 -0
  2083. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerActionItem.js +115 -0
  2084. package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chat.css +4959 -0
  2085. package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chatAgentHover.css +87 -0
  2086. package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chatCard.css +117 -0
  2087. package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chatPet.css +573 -0
  2088. package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chatReadOnlyBanner.css +47 -0
  2089. package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chatViewWelcome.css +233 -0
  2090. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditorInput.js +10 -10
  2091. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.d.ts +50 -0
  2092. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.js +213 -0
  2093. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.d.ts +144 -0
  2094. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.js +362 -0
  2095. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatContextUsageDetails.css +242 -0
  2096. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatContextUsageWidget.css +87 -0
  2097. package/vscode/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.js +325 -325
  2098. package/vscode/src/vs/workbench/contrib/chat/common/agentHostConfigPolicy.d.ts +9 -0
  2099. package/vscode/src/vs/workbench/contrib/chat/common/agentHostConfigPolicy.js +28 -0
  2100. package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.service.d.ts +1 -1
  2101. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.d.ts +1 -1
  2102. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.js +20 -6
  2103. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariables.service.d.ts +1 -1
  2104. package/vscode/src/vs/workbench/contrib/chat/common/automations/automation.js +20 -0
  2105. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationBlueprint.d.ts +22 -0
  2106. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationBlueprint.js +251 -0
  2107. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationDialogService.d.ts +20 -0
  2108. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationDialogService.service.d.ts +11 -0
  2109. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationDialogService.service.js +6 -0
  2110. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationRunner.d.ts +37 -0
  2111. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationRunner.service.d.ts +17 -0
  2112. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationRunner.service.js +6 -0
  2113. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationService.d.ts +137 -0
  2114. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationService.js +77 -0
  2115. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationService.service.d.ts +14 -0
  2116. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationService.service.js +6 -0
  2117. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationsEnabled.d.ts +12 -0
  2118. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationsEnabled.js +12 -0
  2119. package/vscode/src/vs/workbench/contrib/chat/common/automations/schedule.d.ts +9 -0
  2120. package/vscode/src/vs/workbench/contrib/chat/common/automations/schedule.js +83 -0
  2121. package/vscode/src/vs/workbench/contrib/chat/common/chat.js +1 -1
  2122. package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.d.ts +16 -0
  2123. package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.js +236 -0
  2124. package/vscode/src/vs/workbench/contrib/chat/common/chatAutoModeExplainability.d.ts +10 -0
  2125. package/vscode/src/vs/workbench/contrib/chat/common/chatAutoModeExplainability.js +9 -0
  2126. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.service.d.ts +2 -3
  2127. package/vscode/src/vs/workbench/contrib/chat/common/chatErrorMessages.d.ts +110 -0
  2128. package/vscode/src/vs/workbench/contrib/chat/common/chatErrorMessages.js +511 -0
  2129. package/vscode/src/vs/workbench/contrib/chat/common/chatImageBuffer.d.ts +1 -0
  2130. package/vscode/src/vs/workbench/contrib/chat/common/chatImageBuffer.js +29 -0
  2131. package/vscode/src/vs/workbench/contrib/chat/common/chatImageExtraction.d.ts +2 -1
  2132. package/vscode/src/vs/workbench/contrib/chat/common/chatImageExtraction.js +7 -31
  2133. package/vscode/src/vs/workbench/contrib/chat/common/chatModeTelemetry.d.ts +3 -0
  2134. package/vscode/src/vs/workbench/contrib/chat/common/chatModeTelemetry.js +24 -0
  2135. package/vscode/src/vs/workbench/contrib/chat/common/chatModes.js +7 -7
  2136. package/vscode/src/vs/workbench/contrib/chat/common/chatModes.service.d.ts +1 -1
  2137. package/vscode/src/vs/workbench/contrib/chat/common/chatNotification.d.ts +6 -0
  2138. package/vscode/src/vs/workbench/contrib/chat/common/chatNotification.js +12 -0
  2139. package/vscode/src/vs/workbench/contrib/chat/common/chatPermissionStorageKeys.d.ts +3 -0
  2140. package/vscode/src/vs/workbench/contrib/chat/common/chatPermissionStorageKeys.js +7 -0
  2141. package/vscode/src/vs/workbench/contrib/chat/common/chatPermissionWarnings.d.ts +35 -0
  2142. package/vscode/src/vs/workbench/contrib/chat/common/chatPermissionWarnings.js +141 -0
  2143. package/vscode/src/vs/workbench/contrib/chat/common/chatProgressFormatting.d.ts +14 -0
  2144. package/vscode/src/vs/workbench/contrib/chat/common/chatProgressFormatting.js +52 -0
  2145. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatQuestionCarouselHelpers.d.ts +42 -0
  2146. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatQuestionCarouselHelpers.js +99 -0
  2147. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.js +1 -1
  2148. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.service.d.ts +2 -3
  2149. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.service.d.ts +1 -2
  2150. package/vscode/src/vs/workbench/contrib/chat/common/chatSideChatService.service.d.ts +1 -1
  2151. package/vscode/src/vs/workbench/contrib/chat/common/constants.js +2 -2
  2152. package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.js +6 -6
  2153. package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.service.d.ts +1 -2
  2154. package/vscode/src/vs/workbench/contrib/chat/common/editing/chatEditingService.js +10 -10
  2155. package/vscode/src/vs/workbench/contrib/chat/common/editing/chatEditingService.service.d.ts +1 -1
  2156. package/vscode/src/vs/workbench/contrib/chat/common/expPayload.d.ts +27 -0
  2157. package/vscode/src/vs/workbench/contrib/chat/common/expPayload.js +86 -0
  2158. package/vscode/src/vs/workbench/contrib/chat/common/feedbackSurvey/chatModelFeedbackSurveyConfig.d.ts +115 -0
  2159. package/vscode/src/vs/workbench/contrib/chat/common/feedbackSurvey/chatModelFeedbackSurveyConfig.js +334 -0
  2160. package/vscode/src/vs/workbench/contrib/chat/common/feedbackSurvey/chatModelFeedbackSurveyTelemetry.d.ts +42 -0
  2161. package/vscode/src/vs/workbench/contrib/chat/common/feedbackSurvey/chatModelFeedbackSurveyTelemetry.js +5 -0
  2162. package/vscode/src/vs/workbench/contrib/chat/common/ignoredFiles.service.d.ts +1 -1
  2163. package/vscode/src/vs/workbench/contrib/chat/common/languageModelSourcePresentation.d.ts +21 -0
  2164. package/vscode/src/vs/workbench/contrib/chat/common/languageModelSourcePresentation.js +41 -0
  2165. package/vscode/src/vs/workbench/contrib/chat/common/languageModelStats.js +3 -3
  2166. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +44 -42
  2167. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.service.d.ts +1 -1
  2168. package/vscode/src/vs/workbench/contrib/chat/common/languageModelsConfiguration.service.d.ts +1 -2
  2169. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModel.d.ts +1 -1
  2170. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModel.js +42 -42
  2171. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelIdle.d.ts +16 -0
  2172. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelIdle.js +39 -0
  2173. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.js +1 -1
  2174. package/vscode/src/vs/workbench/contrib/chat/common/model/chatTransferService.service.d.ts +1 -1
  2175. package/vscode/src/vs/workbench/contrib/chat/common/modelSelection.d.ts +94 -0
  2176. package/vscode/src/vs/workbench/contrib/chat/common/modelSelection.js +139 -0
  2177. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatAgents.js +5 -5
  2178. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatAgents.service.d.ts +1 -1
  2179. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.service.d.ts +1 -2
  2180. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginEnablement.js +1 -1
  2181. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginRepositoryService.service.d.ts +1 -1
  2182. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +1 -1
  2183. package/vscode/src/vs/workbench/contrib/chat/common/plugins/fileBackedInstalledPluginsStore.js +6 -6
  2184. package/vscode/src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.js +2 -2
  2185. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginGitService.service.d.ts +1 -1
  2186. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginInstallService.service.d.ts +1 -1
  2187. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +14 -14
  2188. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.service.d.ts +1 -2
  2189. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/config.js +1 -1
  2190. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookSchema.js +21 -21
  2191. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookTypes.js +21 -21
  2192. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptFileAttributes.js +80 -80
  2193. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileParser.js +5 -5
  2194. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptTypes.js +10 -10
  2195. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/customizationMigrationService.d.ts +115 -0
  2196. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/customizationMigrationService.js +69 -0
  2197. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/customizationMigrationService.service.d.ts +2 -2
  2198. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/extensionPromptFileService.js +1 -1
  2199. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service.d.ts +1 -2
  2200. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +26 -24
  2201. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +11 -9
  2202. package/vscode/src/vs/workbench/contrib/chat/common/promptTimeline.d.ts +17 -0
  2203. package/vscode/src/vs/workbench/contrib/chat/common/promptTimeline.js +9 -0
  2204. package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatParserTypes.js +3 -3
  2205. package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatRequestParser.js +2 -2
  2206. package/vscode/src/vs/workbench/contrib/chat/common/sessionChatPills.d.ts +60 -0
  2207. package/vscode/src/vs/workbench/contrib/chat/common/sessionChatPills.js +139 -0
  2208. package/vscode/src/vs/workbench/contrib/chat/common/sessionChatPills.service.d.ts +2 -2
  2209. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/askQuestionsTool.js +16 -14
  2210. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/toolIds.d.ts +3 -0
  2211. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/toolIds.js +7 -0
  2212. package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.service.d.ts +1 -1
  2213. package/vscode/src/vs/workbench/contrib/chat/common/tools/chatTodoListService.service.d.ts +1 -2
  2214. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsConfirmationService.js +1 -1
  2215. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.js +6 -6
  2216. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service.d.ts +1 -2
  2217. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voiceClientService.d.ts +305 -0
  2218. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voiceClientService.js +227 -0
  2219. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voiceClientService.service.d.ts +2 -2
  2220. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voiceCloseCodes.d.ts +25 -0
  2221. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voiceCloseCodes.js +46 -0
  2222. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voiceConfirmation.d.ts +6 -0
  2223. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voiceConfirmation.js +50 -0
  2224. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voicePendingNarration.d.ts +13 -0
  2225. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voicePendingNarration.js +22 -0
  2226. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voiceQuestionAnswers.d.ts +24 -0
  2227. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voiceQuestionAnswers.js +74 -0
  2228. package/vscode/src/vs/workbench/contrib/chat/common/voicePlaybackService.service.d.ts +1 -1
  2229. package/vscode/src/vs/workbench/contrib/chat/common/widget/annotations.d.ts +34 -0
  2230. package/vscode/src/vs/workbench/contrib/chat/common/widget/annotations.js +316 -0
  2231. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatColors.d.ts +28 -0
  2232. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatColors.js +202 -0
  2233. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatWidgetHistoryService.d.ts +65 -0
  2234. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatWidgetHistoryService.js +211 -0
  2235. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatWidgetHistoryService.service.d.ts +2 -2
  2236. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +11 -11
  2237. package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +6 -6
  2238. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorAccessibilityHelp.js +6 -6
  2239. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +4 -4
  2240. package/vscode/src/vs/workbench/contrib/codeEditor/browser/editorLineNumberMenu.js +1 -1
  2241. package/vscode/src/vs/workbench/contrib/codeEditor/browser/editorSettingsMigration.d.ts +1 -0
  2242. package/vscode/src/vs/workbench/contrib/codeEditor/browser/editorSettingsMigration.js +16 -0
  2243. package/vscode/src/vs/workbench/contrib/codeEditor/browser/find/simpleFindWidget.js +11 -11
  2244. package/vscode/src/vs/workbench/contrib/codeEditor/browser/inspectEditorTokens/inspectEditorTokens.js +12 -10
  2245. package/vscode/src/vs/workbench/contrib/codeEditor/browser/inspectKeybindings.d.ts +1 -0
  2246. package/vscode/src/vs/workbench/contrib/codeEditor/browser/inspectKeybindings.js +51 -0
  2247. package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +3 -3
  2248. package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +12 -11
  2249. package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +8 -8
  2250. package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.js +3 -3
  2251. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleColumnSelection.d.ts +8 -0
  2252. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleColumnSelection.js +92 -0
  2253. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +2 -2
  2254. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +4 -4
  2255. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleOvertype.d.ts +6 -0
  2256. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleOvertype.js +39 -0
  2257. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +2 -2
  2258. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +12 -12
  2259. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +6 -6
  2260. package/vscode/src/vs/workbench/contrib/codeEditor/common/languageConfigurationExtensionPoint.js +74 -74
  2261. package/vscode/src/vs/workbench/contrib/comments/browser/commentColors.js +7 -7
  2262. package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +7 -7
  2263. package/vscode/src/vs/workbench/contrib/comments/browser/commentNode.js +32 -4
  2264. package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +3 -3
  2265. package/vscode/src/vs/workbench/contrib/comments/browser/commentService.service.d.ts +1 -2
  2266. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +3 -3
  2267. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadHeader.js +3 -3
  2268. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +4 -4
  2269. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +3 -3
  2270. package/vscode/src/vs/workbench/contrib/comments/browser/comments.js +1 -1
  2271. package/vscode/src/vs/workbench/contrib/comments/browser/commentsAccessibility.js +12 -12
  2272. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +12 -12
  2273. package/vscode/src/vs/workbench/contrib/comments/browser/commentsModel.js +5 -5
  2274. package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +11 -11
  2275. package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.d.ts +1 -1
  2276. package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +20 -20
  2277. package/vscode/src/vs/workbench/contrib/comments/browser/commentsViewActions.js +19 -19
  2278. package/vscode/src/vs/workbench/contrib/comments/browser/reactionsAction.js +7 -7
  2279. package/vscode/src/vs/workbench/contrib/comments/browser/simpleCommentEditor.js +1 -1
  2280. package/vscode/src/vs/workbench/contrib/comments/common/commentContextKeys.js +36 -36
  2281. package/vscode/src/vs/workbench/contrib/comments/common/commentModel.js +3 -3
  2282. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorDiffInput.js +3 -3
  2283. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInput.js +3 -3
  2284. package/vscode/src/vs/workbench/contrib/customEditor/common/customEditor.service.d.ts +1 -1
  2285. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +3 -3
  2286. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +57 -47
  2287. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +21 -21
  2288. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +85 -85
  2289. package/vscode/src/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +3 -3
  2290. package/vscode/src/vs/workbench/contrib/debug/browser/debugANSIHandling.js +4 -4
  2291. package/vscode/src/vs/workbench/contrib/debug/browser/debugActionViewItems.js +13 -13
  2292. package/vscode/src/vs/workbench/contrib/debug/browser/debugColors.js +12 -12
  2293. package/vscode/src/vs/workbench/contrib/debug/browser/debugCommands.js +43 -43
  2294. package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorContribution.js +18 -18
  2295. package/vscode/src/vs/workbench/contrib/debug/browser/debugExpressionRenderer.js +2 -2
  2296. package/vscode/src/vs/workbench/contrib/debug/browser/debugHover.js +10 -5
  2297. package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +57 -57
  2298. package/vscode/src/vs/workbench/contrib/debug/browser/debugSessionPicker.js +3 -3
  2299. package/vscode/src/vs/workbench/contrib/debug/browser/exceptionWidget.js +8 -8
  2300. package/vscode/src/vs/workbench/contrib/debug/browser/linkDetector.js +4 -4
  2301. package/vscode/src/vs/workbench/contrib/debug/browser/repl.js +19 -19
  2302. package/vscode/src/vs/workbench/contrib/debug/browser/replFilter.js +1 -1
  2303. package/vscode/src/vs/workbench/contrib/debug/browser/replViewer.js +5 -5
  2304. package/vscode/src/vs/workbench/contrib/debug/browser/variablesView.js +18 -16
  2305. package/vscode/src/vs/workbench/contrib/debug/common/abstractDebugAdapter.js +1 -1
  2306. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +191 -191
  2307. package/vscode/src/vs/workbench/contrib/debug/common/debug.service.d.ts +1 -2
  2308. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +15 -15
  2309. package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +1 -1
  2310. package/vscode/src/vs/workbench/contrib/debug/common/debugUtils.js +2 -2
  2311. package/vscode/src/vs/workbench/contrib/debug/common/disassemblyViewInput.js +2 -2
  2312. package/vscode/src/vs/workbench/contrib/debug/common/loadedScriptsPicker.js +3 -3
  2313. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +3 -3
  2314. package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/commands.js +2 -2
  2315. package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/configurationSchema.js +6 -6
  2316. package/vscode/src/vs/workbench/contrib/editSessions/common/editSessions.service.d.ts +1 -1
  2317. package/vscode/src/vs/workbench/contrib/extensions/browser/configBasedRecommendations.js +3 -3
  2318. package/vscode/src/vs/workbench/contrib/extensions/browser/exeBasedRecommendations.js +5 -5
  2319. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEditor.js +48 -46
  2320. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEnablementWorkspaceTrustTransitionParticipant.js +1 -1
  2321. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionFeaturesTab.js +26 -22
  2322. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionRecommendationNotificationService.js +25 -23
  2323. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionRecommendationsService.js +2 -2
  2324. package/vscode/src/vs/workbench/contrib/extensions/browser/extensions.contribution.js +227 -174
  2325. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +212 -207
  2326. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActivationProgress.js +1 -1
  2327. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsCompletionItemsProvider.js +3 -3
  2328. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsDependencyChecker.js +10 -8
  2329. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsIcons.js +25 -25
  2330. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsList.js +2 -2
  2331. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsQuickAccess.js +4 -4
  2332. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewer.js +11 -11
  2333. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewlet.js +82 -80
  2334. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViews.js +22 -22
  2335. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWidgets.js +31 -31
  2336. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.js +121 -118
  2337. package/vscode/src/vs/workbench/contrib/extensions/browser/fileBasedRecommendations.js +8 -3
  2338. package/vscode/src/vs/workbench/contrib/extensions/browser/keymapRecommendations.js +2 -2
  2339. package/vscode/src/vs/workbench/contrib/extensions/browser/languageRecommendations.js +2 -2
  2340. package/vscode/src/vs/workbench/contrib/extensions/browser/remoteRecommendations.js +2 -2
  2341. package/vscode/src/vs/workbench/contrib/extensions/browser/webRecommendations.js +3 -3
  2342. package/vscode/src/vs/workbench/contrib/extensions/browser/workspaceRecommendations.js +3 -3
  2343. package/vscode/src/vs/workbench/contrib/extensions/common/extensionQuery.js +2 -2
  2344. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +8 -8
  2345. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.service.d.ts +1 -2
  2346. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsFileTemplate.js +5 -5
  2347. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +2 -2
  2348. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsUtils.js +17 -14
  2349. package/vscode/src/vs/workbench/contrib/extensions/common/searchExtensionsTool.js +6 -6
  2350. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/configuration.js +4 -4
  2351. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/externalUriOpenerService.js +10 -10
  2352. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/externalUriOpenerService.service.d.ts +1 -1
  2353. package/vscode/src/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +1 -1
  2354. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditor.js +8 -8
  2355. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditorTracker.js +4 -4
  2356. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +19 -19
  2357. package/vscode/src/vs/workbench/contrib/files/browser/explorerFileContrib.js +2 -2
  2358. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +15 -15
  2359. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.contribution.js +39 -39
  2360. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +113 -110
  2361. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands._save.js +10 -10
  2362. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands.js +13 -13
  2363. package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +11 -11
  2364. package/vscode/src/vs/workbench/contrib/files/browser/fileImportExport.js +48 -44
  2365. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._configuration.js +53 -53
  2366. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._editorPane.js +2 -2
  2367. package/vscode/src/vs/workbench/contrib/files/browser/files.js +5 -3
  2368. package/vscode/src/vs/workbench/contrib/files/browser/files.service.d.ts +1 -1
  2369. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +1 -1
  2370. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +12 -12
  2371. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +37 -33
  2372. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +12 -12
  2373. package/vscode/src/vs/workbench/contrib/files/browser/workspaceWatcher.js +4 -4
  2374. package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +1 -1
  2375. package/vscode/src/vs/workbench/contrib/files/common/explorerFileNestingTrie.js +8 -6
  2376. package/vscode/src/vs/workbench/contrib/files/common/explorerModel.js +9 -8
  2377. package/vscode/src/vs/workbench/contrib/files/common/files.js +49 -49
  2378. package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +3 -3
  2379. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +24 -24
  2380. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsNone.js +4 -4
  2381. package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +1 -1
  2382. package/vscode/src/vs/workbench/contrib/git/common/gitService.service.d.ts +1 -1
  2383. package/vscode/src/vs/workbench/contrib/git/common/utils.d.ts +8 -0
  2384. package/vscode/src/vs/workbench/contrib/git/common/utils.js +105 -0
  2385. package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +6 -6
  2386. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAffordance.d.ts +13 -0
  2387. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAffordance.js +133 -0
  2388. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAffordanceWidget.d.ts +23 -0
  2389. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAffordanceWidget.js +312 -0
  2390. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionResolver.service.d.ts +1 -1
  2391. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.d.ts +23 -0
  2392. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +44 -0
  2393. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.service.d.ts +2 -3
  2394. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChat.css +424 -0
  2395. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChatEditorAffordance.css +46 -0
  2396. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.d.ts +44 -0
  2397. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +143 -0
  2398. package/vscode/src/vs/workbench/contrib/inlineCompletions/browser/inlineCompletionLanguageStatusBarContribution.js +6 -6
  2399. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveCommon.d.ts +7 -0
  2400. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveCommon.js +11 -0
  2401. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveDocumentService.service.d.ts +1 -2
  2402. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveHistoryService.service.d.ts +1 -1
  2403. package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.d.ts +20 -0
  2404. package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.js +150 -0
  2405. package/vscode/src/vs/workbench/contrib/issue/browser/recordingService.service.d.ts +1 -1
  2406. package/vscode/src/vs/workbench/contrib/languageStatus/browser/languageStatus.contribution.d.ts +1 -0
  2407. package/vscode/src/vs/workbench/contrib/languageStatus/browser/languageStatus.contribution.js +7 -0
  2408. package/vscode/src/vs/workbench/contrib/languageStatus/browser/languageStatus.d.ts +15 -0
  2409. package/vscode/src/vs/workbench/contrib/languageStatus/browser/languageStatus.js +444 -0
  2410. package/vscode/src/vs/workbench/contrib/languageStatus/browser/media/languageStatus.css +125 -0
  2411. package/vscode/src/vs/workbench/contrib/list/browser/listResizeColumnAction.js +2 -2
  2412. package/vscode/src/vs/workbench/contrib/list/browser/tableColumnResizeQuickPick.js +5 -5
  2413. package/vscode/src/vs/workbench/contrib/markdown/browser/markdownSettingRenderer.d.ts +43 -0
  2414. package/vscode/src/vs/workbench/contrib/markdown/browser/markdownSettingRenderer.js +330 -0
  2415. package/vscode/src/vs/workbench/contrib/markdown/common/markdownColors.d.ts +5 -0
  2416. package/vscode/src/vs/workbench/contrib/markdown/common/markdownColors.js +23 -0
  2417. package/vscode/src/vs/workbench/contrib/markers/common/markers.js +29 -29
  2418. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpCommandsAddConfiguration.js +73 -73
  2419. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerActions.js +44 -42
  2420. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpToolCallUI.d.ts +96 -0
  2421. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpToolCallUI.js +316 -0
  2422. package/vscode/src/vs/workbench/contrib/mcp/common/discovery/pluginMcpDiscovery.js +3 -1
  2423. package/vscode/src/vs/workbench/contrib/mcp/common/mcpConfiguration.js +47 -47
  2424. package/vscode/src/vs/workbench/contrib/mcp/common/mcpDevMode.d.ts +1 -1
  2425. package/vscode/src/vs/workbench/contrib/mcp/common/mcpDevMode.js +116 -13
  2426. package/vscode/src/vs/workbench/contrib/mcp/common/mcpDevMode.service.d.ts +6 -0
  2427. package/vscode/src/vs/workbench/contrib/mcp/common/mcpDevMode.service.js +6 -0
  2428. package/vscode/src/vs/workbench/contrib/mcp/common/mcpGatewayService.service.d.ts +1 -1
  2429. package/vscode/src/vs/workbench/contrib/mcp/common/mcpIcons.js +2 -2
  2430. package/vscode/src/vs/workbench/contrib/mcp/common/mcpRegistryTypes.service.d.ts +1 -1
  2431. package/vscode/src/vs/workbench/contrib/mcp/common/mcpSandboxService.service.d.ts +1 -1
  2432. package/vscode/src/vs/workbench/contrib/mcp/common/mcpServer.js +39 -37
  2433. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.js +6 -6
  2434. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.service.d.ts +1 -2
  2435. package/vscode/src/vs/workbench/contrib/mcp/common/modelContextProtocolApps.d.ts +1 -0
  2436. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +5 -5
  2437. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +25 -25
  2438. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/diffComputer.js +3 -3
  2439. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/editing.js +4 -4
  2440. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mapping.js +8 -8
  2441. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +19 -13
  2442. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/modifiedBaseRange.js +7 -7
  2443. package/vscode/src/vs/workbench/contrib/mergeEditor/common/mergeEditor.js +24 -24
  2444. package/vscode/src/vs/workbench/contrib/modernUI/browser/media/tabs.css +1044 -0
  2445. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/actions.d.ts +28 -0
  2446. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/actions.js +274 -0
  2447. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/icons.contribution.js +1 -1
  2448. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +6 -6
  2449. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorLayoutDebug.d.ts +24 -0
  2450. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorLayoutDebug.js +128 -0
  2451. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffSourceResolverService.service.d.ts +1 -1
  2452. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/scmMultiDiffSourceResolver.js +8 -5
  2453. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.d.ts +22 -0
  2454. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +338 -0
  2455. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/notebookVisibleCellObserver.d.ts +18 -0
  2456. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/notebookVisibleCellObserver.js +58 -0
  2457. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findMatchDecorationModel.js +5 -5
  2458. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findModel.js +5 -2
  2459. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.d.ts +1 -1
  2460. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.js +18 -18
  2461. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.d.ts +75 -0
  2462. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +364 -0
  2463. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.d.ts +26 -0
  2464. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.js +746 -0
  2465. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.js +6 -6
  2466. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +5 -5
  2467. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +3 -3
  2468. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.d.ts +13 -0
  2469. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.js +300 -0
  2470. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffCellEditorOptions.d.ts +8 -0
  2471. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffCellEditorOptions.js +55 -0
  2472. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.d.ts +273 -0
  2473. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.js +1963 -0
  2474. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.d.ts +50 -0
  2475. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.js +314 -0
  2476. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementViewModel.d.ts +258 -0
  2477. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementViewModel.js +886 -0
  2478. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffNestedCellViewModel.d.ts +41 -0
  2479. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffNestedCellViewModel.js +122 -0
  2480. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/editorHeightCalculator.d.ts +17 -0
  2481. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/editorHeightCalculator.js +71 -0
  2482. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/eventDispatcher.d.ts +27 -0
  2483. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/eventDispatcher.js +40 -0
  2484. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookCellDiffDecorator.d.ts +23 -0
  2485. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookCellDiffDecorator.js +313 -0
  2486. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookDeletedCellDecorator.d.ts +51 -0
  2487. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookDeletedCellDecorator.js +265 -0
  2488. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiff.d.ts +24 -0
  2489. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiff.js +185 -0
  2490. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiffWidget.d.ts +28 -0
  2491. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiffWidget.js +104 -0
  2492. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInsertedCellDecorator.d.ts +10 -0
  2493. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInsertedCellDecorator.js +43 -0
  2494. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalCellModelFactory.d.ts +21 -0
  2495. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalCellModelFactory.js +41 -0
  2496. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalCellModelFactory.service.d.ts +1 -1
  2497. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalModelRefFactory.d.ts +25 -0
  2498. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalModelRefFactory.js +69 -0
  2499. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiff.css +469 -0
  2500. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.d.ts +149 -0
  2501. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.js +933 -0
  2502. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.d.ts +180 -0
  2503. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.js +32 -0
  2504. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.d.ts +102 -0
  2505. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.js +643 -0
  2506. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffOverviewRuler.d.ts +30 -0
  2507. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffOverviewRuler.js +197 -0
  2508. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffViewModel.d.ts +75 -0
  2509. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffViewModel.js +539 -0
  2510. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/unchangedEditorRegions.d.ts +13 -0
  2511. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/unchangedEditorRegions.js +39 -0
  2512. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +3 -3
  2513. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +13 -13
  2514. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +59 -53
  2515. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookIcons.js +29 -29
  2516. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookEditorService.service.d.ts +1 -2
  2517. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDnd.js +5 -5
  2518. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.js +5 -5
  2519. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.js +23 -18
  2520. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +2 -2
  2521. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellExecutionIcon.js +4 -4
  2522. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.js +1 -1
  2523. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/collapsedCellOutput.js +3 -3
  2524. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/foldedCellHint.js +1 -1
  2525. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +2 -2
  2526. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellList.js +9 -9
  2527. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellListView.js +1 -1
  2528. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +24 -17
  2529. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +1 -1
  2530. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +13 -11
  2531. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/baseCellViewModel.d.ts +1 -1
  2532. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/baseCellViewModel.js +8 -8
  2533. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellOutputTextHelper.js +2 -2
  2534. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/codeCellViewModel.js +7 -5
  2535. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/foldingModel.js +4 -4
  2536. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.js +17 -15
  2537. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorToolbar.js +6 -6
  2538. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorWidgetContextKeys.js +1 -1
  2539. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.js +27 -25
  2540. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +2 -2
  2541. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookOverviewRuler.js +1 -1
  2542. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookViewZones.js +1 -1
  2543. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookCellTextModel.js +8 -8
  2544. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookMetadataTextModel.d.ts +19 -0
  2545. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookMetadataTextModel.js +90 -0
  2546. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCellStatusBarService.service.d.ts +1 -2
  2547. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.js +10 -10
  2548. package/vscode/src/vs/workbench/contrib/notebook/common/notebookContextKeys.js +43 -42
  2549. package/vscode/src/vs/workbench/contrib/notebook/common/notebookDiff.d.ts +26 -0
  2550. package/vscode/src/vs/workbench/contrib/notebook/common/notebookDiff.js +92 -0
  2551. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +4 -4
  2552. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModelResolverService.service.d.ts +1 -2
  2553. package/vscode/src/vs/workbench/contrib/notebook/common/notebookExecutionStateService.service.d.ts +1 -2
  2554. package/vscode/src/vs/workbench/contrib/notebook/common/notebookKernelService.service.d.ts +1 -2
  2555. package/vscode/src/vs/workbench/contrib/notebook/common/notebookRange.js +9 -9
  2556. package/vscode/src/vs/workbench/contrib/notebook/common/notebookRendererMessagingService.service.d.ts +1 -1
  2557. package/vscode/src/vs/workbench/contrib/notebook/common/notebookService.service.d.ts +1 -2
  2558. package/vscode/src/vs/workbench/contrib/notebook/common/services/notebookWorkerService.service.d.ts +1 -1
  2559. package/vscode/src/vs/workbench/contrib/onboarding/browser/media/onboardingTarget.css +28 -0
  2560. package/vscode/src/vs/workbench/contrib/onboarding/browser/sequence/runOnboardingStep.d.ts +17 -0
  2561. package/vscode/src/vs/workbench/contrib/onboarding/browser/sequence/runOnboardingStep.js +32 -0
  2562. package/vscode/src/vs/workbench/contrib/onboarding/browser/spotlight/onboardingTarget.d.ts +37 -0
  2563. package/vscode/src/vs/workbench/contrib/onboarding/browser/spotlight/onboardingTarget.js +48 -0
  2564. package/vscode/src/vs/workbench/contrib/onboarding/browser/spotlight/spotlightTypes.d.ts +67 -0
  2565. package/vscode/src/vs/workbench/contrib/onboarding/browser/spotlight/spotlightTypes.js +5 -0
  2566. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingRegistry.d.ts +21 -0
  2567. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingRegistry.js +35 -0
  2568. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingScenario.d.ts +172 -0
  2569. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingScenario.js +20 -0
  2570. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingScenarioService.d.ts +48 -0
  2571. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingScenarioService.js +19 -0
  2572. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingScenarioService.service.d.ts +1 -1
  2573. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingSequence.d.ts +45 -0
  2574. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingSequence.js +29 -0
  2575. package/vscode/src/vs/workbench/contrib/outline/browser/outline.js +8 -8
  2576. package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingWidgets.js +6 -6
  2577. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesIcons.js +13 -13
  2578. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +12 -12
  2579. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsLayout.js +60 -60
  2580. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsTreeModels.js +10 -8
  2581. package/vscode/src/vs/workbench/contrib/preferences/common/preferences.js +16 -16
  2582. package/vscode/src/vs/workbench/contrib/preferences/common/settingsEditorColorRegistry.js +21 -21
  2583. package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +17 -17
  2584. package/vscode/src/vs/workbench/contrib/remote/browser/remoteIcons.js +17 -17
  2585. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +83 -81
  2586. package/vscode/src/vs/workbench/contrib/replNotebook/browser/interactiveEditor.css +21 -0
  2587. package/vscode/src/vs/workbench/contrib/replNotebook/browser/media/interactive.css +36 -0
  2588. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditor.d.ts +110 -0
  2589. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditor.js +692 -0
  2590. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditorInput.d.ts +40 -0
  2591. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditorInput.js +158 -0
  2592. package/vscode/src/vs/workbench/contrib/scm/browser/quickDiffModel.service.d.ts +1 -1
  2593. package/vscode/src/vs/workbench/contrib/scm/browser/scmHistory.js +20 -20
  2594. package/vscode/src/vs/workbench/contrib/scm/browser/scmHistoryChatContext.js +10 -10
  2595. package/vscode/src/vs/workbench/contrib/scm/browser/util.js +2 -2
  2596. package/vscode/src/vs/workbench/contrib/scm/common/quickDiff.js +14 -14
  2597. package/vscode/src/vs/workbench/contrib/scm/common/quickDiff.service.d.ts +1 -2
  2598. package/vscode/src/vs/workbench/contrib/scm/common/quickDiffService.js +2 -2
  2599. package/vscode/src/vs/workbench/contrib/scm/common/scm.service.d.ts +1 -2
  2600. package/vscode/src/vs/workbench/contrib/search/browser/AISearch/aiSearchModel.js +1 -1
  2601. package/vscode/src/vs/workbench/contrib/search/browser/anythingQuickAccess.js +36 -34
  2602. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/notebookSearchContributions.d.ts +1 -0
  2603. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/notebookSearchModel.js +22 -11
  2604. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/notebookSearchService.js +9 -9
  2605. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/searchNotebookHelpers.js +2 -2
  2606. package/vscode/src/vs/workbench/contrib/search/browser/patternInputWidget.js +4 -4
  2607. package/vscode/src/vs/workbench/contrib/search/browser/replaceContributions.d.ts +1 -0
  2608. package/vscode/src/vs/workbench/contrib/search/browser/replaceContributions.js +15 -0
  2609. package/vscode/src/vs/workbench/contrib/search/browser/replaceService.d.ts +40 -0
  2610. package/vscode/src/vs/workbench/contrib/search/browser/replaceService.js +264 -0
  2611. package/vscode/src/vs/workbench/contrib/search/browser/search.common.contribution.d.ts +1 -0
  2612. package/vscode/src/vs/workbench/contrib/search/browser/search.common.contribution.js +148 -0
  2613. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsBase.js +1 -1
  2614. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsSymbol.d.ts +1 -0
  2615. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsSymbol.js +41 -0
  2616. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsTopBar.js +9 -9
  2617. package/vscode/src/vs/workbench/contrib/search/browser/searchChatContext.js +11 -11
  2618. package/vscode/src/vs/workbench/contrib/search/browser/searchFindInput.js +1 -1
  2619. package/vscode/src/vs/workbench/contrib/search/browser/searchIcons.js +20 -20
  2620. package/vscode/src/vs/workbench/contrib/search/browser/searchMessage.js +2 -2
  2621. package/vscode/src/vs/workbench/contrib/search/browser/searchQuickAccess.contribution.js +38 -0
  2622. package/vscode/src/vs/workbench/contrib/search/browser/searchResultsView.js +15 -15
  2623. package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/fileMatch.js +2 -2
  2624. package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/match.js +2 -2
  2625. package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/searchTreeCommon.js +43 -24
  2626. package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/textSearchHeading.js +1 -1
  2627. package/vscode/src/vs/workbench/contrib/search/browser/searchView.js +71 -70
  2628. package/vscode/src/vs/workbench/contrib/search/browser/searchWidget.js +11 -11
  2629. package/vscode/src/vs/workbench/contrib/search/browser/symbolsQuickAccess.js +2 -2
  2630. package/vscode/src/vs/workbench/contrib/search/common/cellSearchModel.js +4 -4
  2631. package/vscode/src/vs/workbench/contrib/search/common/constants.js +29 -29
  2632. package/vscode/src/vs/workbench/contrib/search/common/search.js +7 -7
  2633. package/vscode/src/vs/workbench/contrib/search/common/searchHistoryService.service.d.ts +1 -1
  2634. package/vscode/src/vs/workbench/contrib/search/common/searchNotebookHelpers.js +4 -4
  2635. package/vscode/src/vs/workbench/contrib/searchEditor/browser/constants.js +9 -9
  2636. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorActions.js +1 -1
  2637. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorInput.js +9 -9
  2638. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorSerialization.js +15 -13
  2639. package/vscode/src/vs/workbench/contrib/share/common/share.service.d.ts +1 -1
  2640. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +3 -3
  2641. package/vscode/src/vs/workbench/contrib/snippets/browser/snippets.service.d.ts +1 -1
  2642. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +4 -4
  2643. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +11 -11
  2644. package/vscode/src/vs/workbench/contrib/snippets/browser/tabCompletion.js +3 -3
  2645. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +35 -35
  2646. package/vscode/src/vs/workbench/contrib/speech/common/speechService.service.d.ts +1 -1
  2647. package/vscode/src/vs/workbench/contrib/splash/browser/splash.service.d.ts +6 -0
  2648. package/vscode/src/vs/workbench/contrib/splash/browser/splash.service.js +6 -0
  2649. package/vscode/src/vs/workbench/contrib/tags/common/workspaceTags.service.d.ts +1 -1
  2650. package/vscode/src/vs/workbench/contrib/tasks/common/constants.js +1 -1
  2651. package/vscode/src/vs/workbench/contrib/tasks/common/taskDefinitionRegistry.js +7 -7
  2652. package/vscode/src/vs/workbench/contrib/tasks/common/taskService.js +12 -12
  2653. package/vscode/src/vs/workbench/contrib/tasks/common/taskService.service.d.ts +1 -2
  2654. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +4 -4
  2655. package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostOutputChannel.d.ts +22 -0
  2656. package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostOutputChannel.js +48 -0
  2657. package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostPty.d.ts +129 -0
  2658. package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostPty.js +439 -0
  2659. package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostTerminalService.d.ts +77 -0
  2660. package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostTerminalService.js +345 -0
  2661. package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostTerminalService.service.d.ts +2 -2
  2662. package/vscode/src/vs/workbench/contrib/terminal/browser/ahpTerminalCommandSource.d.ts +111 -0
  2663. package/vscode/src/vs/workbench/contrib/terminal/browser/ahpTerminalCommandSource.js +138 -0
  2664. package/vscode/src/vs/workbench/contrib/terminal/browser/chatTerminalCommandMirror.d.ts +195 -0
  2665. package/vscode/src/vs/workbench/contrib/terminal/browser/chatTerminalCommandMirror.js +788 -0
  2666. package/vscode/src/vs/workbench/contrib/terminal/browser/detachedTerminal.d.ts +1 -1
  2667. package/vscode/src/vs/workbench/contrib/terminal/browser/environmentVariableInfo.d.ts +28 -0
  2668. package/vscode/src/vs/workbench/contrib/terminal/browser/environmentVariableInfo.js +119 -0
  2669. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +3 -3
  2670. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.service.d.ts +2 -2
  2671. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalActions.d.ts +104 -0
  2672. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalActions.js +1643 -0
  2673. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalContextMenu.d.ts +19 -0
  2674. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalContextMenu.js +54 -0
  2675. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +3 -3
  2676. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIconPicker.d.ts +12 -0
  2677. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIconPicker.js +78 -0
  2678. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcons.js +13 -13
  2679. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalMenus.js +43 -43
  2680. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalProcessManager.d.ts +144 -0
  2681. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalProcessManager.js +806 -0
  2682. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalResizeDebouncer.d.ts +17 -0
  2683. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalResizeDebouncer.js +83 -0
  2684. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalStatusList.d.ts +57 -0
  2685. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalStatusList.js +139 -0
  2686. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalTabsList.d.ts +45 -0
  2687. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalTabsList.js +807 -0
  2688. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalTooltip.d.ts +9 -0
  2689. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalTooltip.js +75 -0
  2690. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalUri.d.ts +18 -0
  2691. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalUri.js +51 -0
  2692. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationAddon.d.ts +79 -0
  2693. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationAddon.js +652 -0
  2694. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationStyles.js +15 -15
  2695. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/lineDataEventAddon.d.ts +17 -0
  2696. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/lineDataEventAddon.js +61 -0
  2697. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/markNavigationAddon.d.ts +64 -0
  2698. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/markNavigationAddon.js +566 -0
  2699. package/vscode/src/vs/workbench/contrib/terminal/common/basePty.d.ts +38 -0
  2700. package/vscode/src/vs/workbench/contrib/terminal/common/basePty.js +127 -0
  2701. package/vscode/src/vs/workbench/contrib/terminal/common/environmentVariable.d.ts +1 -1
  2702. package/vscode/src/vs/workbench/contrib/terminal/common/environmentVariable.service.d.ts +2 -2
  2703. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.d.ts +1 -1
  2704. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +10 -10
  2705. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.service.d.ts +1 -1
  2706. package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +23 -23
  2707. package/vscode/src/vs/workbench/contrib/terminal/common/terminalContextKey.js +39 -39
  2708. package/vscode/src/vs/workbench/contrib/terminal/common/terminalEnvironment.d.ts +38 -0
  2709. package/vscode/src/vs/workbench/contrib/terminal/common/terminalEnvironment.js +321 -0
  2710. package/vscode/src/vs/workbench/contrib/terminal/common/terminalExtensionPoints.service.d.ts +1 -1
  2711. package/vscode/src/vs/workbench/contrib/terminal/common/terminalStorageKeys.d.ts +12 -0
  2712. package/vscode/src/vs/workbench/contrib/terminal/common/terminalStorageKeys.js +17 -0
  2713. package/vscode/src/vs/workbench/contrib/terminal/common/terminalStrings.js +26 -26
  2714. package/vscode/src/vs/workbench/contrib/terminalContrib/accessibility/common/terminalAccessibilityConfiguration.js +5 -5
  2715. package/vscode/src/vs/workbench/contrib/terminalContrib/autoReplies/common/terminalAutoRepliesConfiguration.js +2 -2
  2716. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration.js +77 -77
  2717. package/vscode/src/vs/workbench/contrib/terminalContrib/commandGuide/common/terminalCommandGuideConfiguration.js +1 -1
  2718. package/vscode/src/vs/workbench/contrib/terminalContrib/history/common/terminal.history.js +1 -1
  2719. package/vscode/src/vs/workbench/contrib/terminalContrib/inlineHint/common/terminalInitialHintConfiguration.js +1 -1
  2720. package/vscode/src/vs/workbench/contrib/terminalContrib/links/browser/links.service.d.ts +1 -1
  2721. package/vscode/src/vs/workbench/contrib/terminalContrib/notification/common/terminalNotificationConfiguration.js +1 -1
  2722. package/vscode/src/vs/workbench/contrib/terminalContrib/quickFix/browser/quickFix.service.d.ts +1 -1
  2723. package/vscode/src/vs/workbench/contrib/terminalContrib/resizeDimensionsOverlay/common/terminalResizeDimensionsOverlayConfiguration.js +1 -1
  2724. package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/browser/media/stickyScroll.css +49 -0
  2725. package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/browser/terminalStickyScrollColorRegistry.d.ts +2 -0
  2726. package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/browser/terminalStickyScrollColorRegistry.js +25 -0
  2727. package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/common/terminalStickyScrollConfiguration.js +3 -3
  2728. package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/browser/terminalCompletionService.service.d.ts +1 -1
  2729. package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/common/terminalSuggestConfiguration.js +31 -31
  2730. package/vscode/src/vs/workbench/contrib/terminalContrib/typeAhead/common/terminalTypeAheadConfiguration.js +5 -5
  2731. package/vscode/src/vs/workbench/contrib/terminalContrib/zoom/common/terminal.zoom.js +2 -2
  2732. package/vscode/src/vs/workbench/contrib/testing/common/constants.js +11 -11
  2733. package/vscode/src/vs/workbench/contrib/testing/common/testExplorerFilterState.service.d.ts +1 -1
  2734. package/vscode/src/vs/workbench/contrib/testing/common/testItemCollection.js +2 -2
  2735. package/vscode/src/vs/workbench/contrib/testing/common/testProfileService.service.d.ts +1 -1
  2736. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +12 -12
  2737. package/vscode/src/vs/workbench/contrib/testing/common/testResultService.service.d.ts +1 -1
  2738. package/vscode/src/vs/workbench/contrib/testing/common/testService.service.d.ts +1 -2
  2739. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +9 -9
  2740. package/vscode/src/vs/workbench/contrib/testing/common/testingContinuousRunService.service.d.ts +1 -1
  2741. package/vscode/src/vs/workbench/contrib/testing/common/testingDecorations.service.d.ts +1 -2
  2742. package/vscode/src/vs/workbench/contrib/testing/common/testingPeekOpener.service.d.ts +1 -1
  2743. package/vscode/src/vs/workbench/contrib/testing/common/testingStates.js +1 -1
  2744. package/vscode/src/vs/workbench/contrib/timeline/common/timeline.service.d.ts +1 -2
  2745. package/vscode/src/vs/workbench/contrib/update/browser/media/updateTitleBarEntry.css +91 -0
  2746. package/vscode/src/vs/workbench/contrib/update/browser/media/updateTooltip.css +165 -0
  2747. package/vscode/src/vs/workbench/contrib/update/browser/releaseNotesEditor.d.ts +67 -0
  2748. package/vscode/src/vs/workbench/contrib/update/browser/releaseNotesEditor.js +646 -0
  2749. package/vscode/src/vs/workbench/contrib/update/browser/update.d.ts +65 -0
  2750. package/vscode/src/vs/workbench/contrib/update/browser/update.js +498 -0
  2751. package/vscode/src/vs/workbench/contrib/update/browser/updateTitleBarEntry.d.ts +64 -0
  2752. package/vscode/src/vs/workbench/contrib/update/browser/updateTitleBarEntry.js +396 -0
  2753. package/vscode/src/vs/workbench/contrib/update/browser/updateTooltip.d.ts +61 -0
  2754. package/vscode/src/vs/workbench/contrib/update/browser/updateTooltip.js +395 -0
  2755. package/vscode/src/vs/workbench/contrib/update/common/update.js +2 -2
  2756. package/vscode/src/vs/workbench/contrib/update/common/updateUtils.d.ts +61 -0
  2757. package/vscode/src/vs/workbench/contrib/update/common/updateUtils.js +129 -0
  2758. package/vscode/src/vs/workbench/contrib/url/browser/trustedDomains.js +6 -6
  2759. package/vscode/src/vs/workbench/contrib/url/common/trustedDomainService.service.d.ts +1 -2
  2760. package/vscode/src/vs/workbench/contrib/webview/browser/webview.contribution.js +3 -3
  2761. package/vscode/src/vs/workbench/contrib/webview/browser/webview.js +3 -3
  2762. package/vscode/src/vs/workbench/contrib/webview/browser/webview.service.d.ts +1 -1
  2763. package/vscode/src/vs/workbench/contrib/webview/browser/webviewFindAccessibilityHelp.js +30 -30
  2764. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +3 -3
  2765. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewWorkbenchService.service.d.ts +1 -1
  2766. package/vscode/src/vs/workbench/contrib/webviewView/browser/webviewViewService.service.d.ts +1 -1
  2767. package/vscode/src/vs/workbench/contrib/welcomeAgentSessions/browser/agentSessionsWelcomeInput.d.ts +34 -0
  2768. package/vscode/src/vs/workbench/contrib/welcomeAgentSessions/browser/agentSessionsWelcomeInput.js +72 -0
  2769. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedInput.d.ts +44 -0
  2770. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedInput.js +96 -0
  2771. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService.service.d.ts +1 -1
  2772. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/media/gettingStarted.css +1148 -0
  2773. package/vscode/src/vs/workbench/contrib/welcomeOnboarding/common/onboardingService.service.d.ts +1 -1
  2774. package/vscode/src/vs/workbench/contrib/welcomeOnboarding/common/onboardingTypes.d.ts +81 -0
  2775. package/vscode/src/vs/workbench/contrib/welcomeOnboarding/common/onboardingTypes.js +97 -0
  2776. package/vscode/src/vs/workbench/contrib/workspace/common/workspace.js +2 -2
  2777. package/vscode/src/vs/workbench/services/accounts/browser/defaultAccount.js +2 -2
  2778. package/vscode/src/vs/workbench/services/activity/common/activity.service.d.ts +1 -1
  2779. package/vscode/src/vs/workbench/services/agentEditorComments/common/agentEditorComments.service.d.ts +1 -2
  2780. package/vscode/src/vs/workbench/services/agentHost/browser/agentSdkSetupService.service.d.ts +1 -1
  2781. package/vscode/src/vs/workbench/services/agentHost/browser/codexAccountService.js +8 -5
  2782. package/vscode/src/vs/workbench/services/agentHost/browser/codexAccountService.service.d.ts +1 -1
  2783. package/vscode/src/vs/workbench/services/agentHost/common/agentHostFileSystemService.service.d.ts +1 -1
  2784. package/vscode/src/vs/workbench/services/aiSettingsSearch/common/aiSettingsSearch.service.d.ts +1 -1
  2785. package/vscode/src/vs/workbench/services/authentication/browser/authenticationAccessService.service.d.ts +1 -1
  2786. package/vscode/src/vs/workbench/services/authentication/browser/authenticationMcpAccessService.service.d.ts +1 -1
  2787. package/vscode/src/vs/workbench/services/authentication/browser/authenticationMcpService.service.d.ts +1 -1
  2788. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +11 -11
  2789. package/vscode/src/vs/workbench/services/authentication/common/authentication.service.d.ts +1 -2
  2790. package/vscode/src/vs/workbench/services/authentication/common/authenticationQuery.service.d.ts +1 -1
  2791. package/vscode/src/vs/workbench/services/authentication/common/dynamicAuthenticationProviderStorage.service.d.ts +1 -1
  2792. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +7 -7
  2793. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.service.d.ts +1 -1
  2794. package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.js +45 -45
  2795. package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.service.d.ts +1 -1
  2796. package/vscode/src/vs/workbench/services/configuration/common/configuration.service.d.ts +1 -1
  2797. package/vscode/src/vs/workbench/services/configuration/common/jsonEditing.service.d.ts +1 -1
  2798. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverExpression.js +1 -1
  2799. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverSchema.js +16 -16
  2800. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverUtils.js +1 -1
  2801. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +16 -16
  2802. package/vscode/src/vs/workbench/services/dataChannel/browser/dataChannelService.js +15 -15
  2803. package/vscode/src/vs/workbench/services/decorations/common/decorations.service.d.ts +1 -2
  2804. package/vscode/src/vs/workbench/services/driver/browser/driver.js +1 -1
  2805. package/vscode/src/vs/workbench/services/editor/browser/editorService.js +17 -17
  2806. package/vscode/src/vs/workbench/services/editor/common/customEditorLabelService.service.d.ts +1 -2
  2807. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.service.d.ts +1 -1
  2808. package/vscode/src/vs/workbench/services/editor/common/editorPaneService.service.d.ts +1 -1
  2809. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.js +6 -6
  2810. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.service.d.ts +1 -2
  2811. package/vscode/src/vs/workbench/services/editor/common/editorService.service.d.ts +1 -2
  2812. package/vscode/src/vs/workbench/services/environment/browser/environmentService.js +1 -1
  2813. package/vscode/src/vs/workbench/services/environment/common/environmentService.service.d.ts +1 -1
  2814. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionFeatures.service.d.ts +1 -1
  2815. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionGalleryAccount.service.d.ts +1 -1
  2816. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.service.d.ts +1 -2
  2817. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionsIcons.js +3 -3
  2818. package/vscode/src/vs/workbench/services/extensionRecommendations/common/extensionRecommendations.service.d.ts +1 -2
  2819. package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.js +25 -19
  2820. package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.service.d.ts +1 -1
  2821. package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +13 -13
  2822. package/vscode/src/vs/workbench/services/extensions/common/extHostCustomers.d.ts +32 -0
  2823. package/vscode/src/vs/workbench/services/extensions/common/extHostCustomers.js +45 -0
  2824. package/vscode/src/vs/workbench/services/extensions/common/extensionDescriptionRegistry.js +2 -2
  2825. package/vscode/src/vs/workbench/services/extensions/common/extensions.service.d.ts +1 -1
  2826. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +93 -93
  2827. package/vscode/src/vs/workbench/services/extensions/common/workspaceContains.js +2 -2
  2828. package/vscode/src/vs/workbench/services/files/common/elevatedFileService.service.d.ts +1 -1
  2829. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +6 -6
  2830. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.service.d.ts +1 -2
  2831. package/vscode/src/vs/workbench/services/history/common/history.service.d.ts +1 -1
  2832. package/vscode/src/vs/workbench/services/host/browser/host.service.d.ts +1 -1
  2833. package/vscode/src/vs/workbench/services/inlineCompletions/common/inlineCompletionsUnification.service.d.ts +1 -1
  2834. package/vscode/src/vs/workbench/services/language/common/languageService.js +27 -27
  2835. package/vscode/src/vs/workbench/services/languageDetection/common/languageDetectionWorkerService.service.d.ts +1 -1
  2836. package/vscode/src/vs/workbench/services/languageStatus/common/languageStatusService.service.d.ts +1 -1
  2837. package/vscode/src/vs/workbench/services/layout/browser/layoutService.service.d.ts +1 -1
  2838. package/vscode/src/vs/workbench/services/lifecycle/common/lifecycle.service.d.ts +1 -1
  2839. package/vscode/src/vs/workbench/services/log/common/defaultLogLevels.service.d.ts +1 -2
  2840. package/vscode/src/vs/workbench/services/log/common/logConstants.js +1 -1
  2841. package/vscode/src/vs/workbench/services/mcp/common/mcpWorkbenchManagementService.js +6 -6
  2842. package/vscode/src/vs/workbench/services/mcp/common/mcpWorkbenchManagementService.service.d.ts +1 -2
  2843. package/vscode/src/vs/workbench/services/notebook/common/notebookDocumentService.service.d.ts +1 -1
  2844. package/vscode/src/vs/workbench/services/outline/browser/outline.service.d.ts +1 -1
  2845. package/vscode/src/vs/workbench/services/output/common/output.js +15 -15
  2846. package/vscode/src/vs/workbench/services/output/common/output.service.d.ts +1 -3
  2847. package/vscode/src/vs/workbench/services/panecomposite/browser/panecomposite.service.d.ts +1 -1
  2848. package/vscode/src/vs/workbench/services/path/common/pathService.service.d.ts +1 -1
  2849. package/vscode/src/vs/workbench/services/policies/common/accountPolicyService.js +3 -3
  2850. package/vscode/src/vs/workbench/services/policies/common/accountPolicyService.service.d.ts +1 -1
  2851. package/vscode/src/vs/workbench/services/power/common/powerService.service.d.ts +1 -1
  2852. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorInput.js +2 -2
  2853. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorModel.js +12 -12
  2854. package/vscode/src/vs/workbench/services/preferences/common/preferences.service.d.ts +1 -2
  2855. package/vscode/src/vs/workbench/services/preferences/common/preferencesEditorInput.js +4 -4
  2856. package/vscode/src/vs/workbench/services/preferences/common/preferencesModels.js +15 -15
  2857. package/vscode/src/vs/workbench/services/preferences/common/preferencesValidation.js +38 -34
  2858. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +8 -8
  2859. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.service.d.ts +1 -1
  2860. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +20 -16
  2861. package/vscode/src/vs/workbench/services/search/common/fileSearchManager.js +3 -3
  2862. package/vscode/src/vs/workbench/services/search/common/ignoreFile.js +31 -33
  2863. package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +21 -19
  2864. package/vscode/src/vs/workbench/services/search/common/search.js +5 -5
  2865. package/vscode/src/vs/workbench/services/search/common/searchExtConversionTypes.js +15 -13
  2866. package/vscode/src/vs/workbench/services/search/common/searchHelpers.js +5 -5
  2867. package/vscode/src/vs/workbench/services/search/common/textSearchManager.js +3 -3
  2868. package/vscode/src/vs/workbench/services/terminal/common/embedderTerminalService.service.d.ts +1 -1
  2869. package/vscode/src/vs/workbench/services/textMate/common/TMGrammars.js +9 -9
  2870. package/vscode/src/vs/workbench/services/textMate/common/TMHelper.js +1 -1
  2871. package/vscode/src/vs/workbench/services/textfile/common/encoding.js +1 -1
  2872. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +3 -3
  2873. package/vscode/src/vs/workbench/services/textfile/common/textfiles.service.d.ts +1 -1
  2874. package/vscode/src/vs/workbench/services/themes/browser/modernTabColorCustomizations.d.ts +1 -0
  2875. package/vscode/src/vs/workbench/services/themes/browser/modernTabColorCustomizations.js +255 -0
  2876. package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +20 -20
  2877. package/vscode/src/vs/workbench/services/themes/common/colorThemeData.js +14 -14
  2878. package/vscode/src/vs/workbench/services/themes/common/hostColorSchemeService.service.d.ts +1 -1
  2879. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +13 -13
  2880. package/vscode/src/vs/workbench/services/themes/common/tokenClassificationExtensionPoint.js +26 -26
  2881. package/vscode/src/vs/workbench/services/themes/common/workbenchThemeService.service.d.ts +1 -1
  2882. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorService.service.d.ts +1 -2
  2883. package/vscode/src/vs/workbench/services/userActivity/common/userActivityService.service.d.ts +1 -1
  2884. package/vscode/src/vs/workbench/services/userDataProfile/browser/iconSelectBox.js +3 -3
  2885. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +5 -5
  2886. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.service.d.ts +1 -2
  2887. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileIcons.js +1 -1
  2888. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +19 -19
  2889. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.service.d.ts +1 -2
  2890. package/vscode/src/vs/workbench/services/views/common/viewsService.service.d.ts +1 -1
  2891. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +16 -16
  2892. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyEditorService.service.d.ts +1 -1
  2893. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyFileService.service.d.ts +1 -2
  2894. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyHistory.service.d.ts +1 -2
  2895. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyService.service.d.ts +1 -2
  2896. package/vscode/src/vs/workbench/services/workspaces/common/workspaceEditing.service.d.ts +1 -2
  2897. package/vscode/src/vs/workbench/services/workspaces/common/workspaceTrust.js +13 -13
  2898. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostLocationPreference.d.ts +0 -7
  2899. package/vscode/src/vs/platform/meteredConnection/common/meteredConnection.config.contribution.js +0 -32
  2900. package/vscode/src/vs/platform/meteredConnection/common/meteredConnection.d.ts +0 -44
  2901. package/vscode/src/vs/platform/meteredConnection/common/meteredConnection.js +0 -62
  2902. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionDescription.d.ts +0 -2
  2903. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionDescription.js +0 -57
  2904. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.d.ts +0 -253
  2905. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.js +0 -20
  2906. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.d.ts +0 -65
  2907. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.js +0 -697
  2908. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/confirmationTool.d.ts +0 -36
  2909. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/confirmationTool.js +0 -239
  2910. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/editFileTool.d.ts +0 -22
  2911. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/editFileTool.js +0 -143
  2912. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/manageTodoListTool.d.ts +0 -24
  2913. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/manageTodoListTool.js +0 -298
  2914. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/reviewPlanTool.d.ts +0 -25
  2915. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/reviewPlanTool.js +0 -177
  2916. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.d.ts +0 -73
  2917. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.js +0 -577
  2918. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactRulesTool.d.ts +0 -11
  2919. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactRulesTool.js +0 -90
  2920. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactsTool.d.ts +0 -16
  2921. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactsTool.js +0 -130
  2922. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/taskCompleteTool.d.ts +0 -12
  2923. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/taskCompleteTool.js +0 -53
  2924. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/toolHelpers.d.ts +0 -5
  2925. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/toolHelpers.js +0 -12
  2926. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/tools.d.ts +0 -10
  2927. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/tools.js +0 -92
  2928. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.d.ts +0 -38
  2929. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +0 -518
  2930. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsParametersSchema.d.ts +0 -6
  2931. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsParametersSchema.js +0 -231
  2932. package/vscode/src/vs/workbench/contrib/meteredConnection/browser/meteredConnection.contribution.js +0 -55
  2933. package/vscode/src/vs/workbench/contrib/meteredConnection/browser/meteredConnectionStatus.d.ts +0 -13
  2934. package/vscode/src/vs/workbench/contrib/meteredConnection/browser/meteredConnectionStatus.js +0 -63
  2935. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModel.d.ts +0 -87
  2936. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModel.js +0 -352
  2937. /package/vscode/src/vs/{platform/meteredConnection/common/meteredConnection.config.contribution.d.ts → workbench/browser/parts/titlebar/menubar.contribution.d.ts} +0 -0
  2938. /package/vscode/src/vs/workbench/contrib/{meteredConnection/browser/meteredConnection.contribution.d.ts → search/browser/searchQuickAccess.contribution.d.ts} +0 -0
@@ -0,0 +1,3435 @@
1
+
2
+ import { registerCss } from '../../../../../../../../css.js';
3
+ import { __decorate, __param } from '../../../../../../../../external/tslib/tslib.es6.js';
4
+ import * as chatPet from './media/chatPet.css';
5
+ import { BroadcastDataChannel } from '../../../../../base/browser/broadcast.js';
6
+ import { isHTMLElement, $, append, addDisposableListener, getWindow, DisposableResizeObserver, AnimationFrameScheduler, EventType, EventHelper, getWindowId, getActiveWindow, scheduleAtNextAnimationFrame } from '../../../../../base/browser/dom.js';
7
+ import { GlobalPointerMoveMonitor } from '../../../../../base/browser/globalPointerMoveMonitor.js';
8
+ import { StandardKeyboardEvent } from '../../../../../base/browser/keyboardEvent.js';
9
+ import { StandardMouseEvent } from '../../../../../base/browser/mouseEvent.js';
10
+ import { triggerConfettiAnimation } from '../../../../../base/browser/ui/animations/animations.js';
11
+ import { Button } from '../../../../../base/browser/ui/button/button.js';
12
+ import { status } from '../../../../../base/browser/ui/aria/aria.js';
13
+ import { Action, Separator } from '../../../../../base/common/actions.js';
14
+ import { RunOnceScheduler } from '../../../../../base/common/async.js';
15
+ import { KeyMod as KeyMod$1, KeyCode } from '../../../../../base/common/keyCodes.js';
16
+ import { Disposable, MutableDisposable, toDisposable, DisposableStore } from '../../../../../base/common/lifecycle.js';
17
+ import { FileAccess } from '../../../../../base/common/network.js';
18
+ import '../../../../../base/common/observableInternal/index.js';
19
+ import { localize } from '../../../../../nls.js';
20
+ import { IAccessibilityService } from '../../../../../platform/accessibility/common/accessibility.service.js';
21
+ import { ICommandService } from '../../../../../platform/commands/common/commands.service.js';
22
+ import { IContextMenuService } from '../../../../../platform/contextview/browser/contextView.service.js';
23
+ import { ILogService } from '../../../../../platform/log/common/log.service.js';
24
+ import { IHostService } from '../../../../services/host/browser/host.service.js';
25
+ import { CHAT_PET_OPEN_ACHIEVEMENTS_COMMAND_ID, getChatPetAchievement, getChatPetAccessory } from '../chatPetAchievements.js';
26
+ import { CHAT_PET_DEFAULT_SCALE } from '../chatPetService.js';
27
+ import { IChatPetService } from '../chatPetService.service.js';
28
+ import { getChatPetAccessoryImageSource, hasChatPetBodyImageDimensions, hasChatPetAccessoryImageDimensions, drawChatPetComposite, drawChatPetEyeAccessory } from './chatPetAccessoryRenderer.js';
29
+ import { getChatPetReducedMotionRigFrame, getChatPetAccessoryRigFrame } from './chatPetAccessoryRig.js';
30
+ import { observableValue } from '../../../../../base/common/observableInternal/observables/observableValue.js';
31
+ import { autorun } from '../../../../../base/common/observableInternal/reactions/autorun.js';
32
+ import { observableFromEvent } from '../../../../../base/common/observableInternal/observables/observableFromEvent.js';
33
+
34
+ registerCss(chatPet, 1);
35
+ const CHAT_PET_OVERLAY_CLASS = "chat-pet-overlay";
36
+ const CHAT_PET_RUN_LAYER_CLASS = "chat-pet-run-layer";
37
+ const CHAT_PET_IDLE_SLEEP_DELAY = 20_000;
38
+ const CHAT_PET_CONFIRMATION_ATTENTION_DURATION = 2_000;
39
+ const CHAT_PET_ACHIEVEMENT_UNLOCKED_DURATION = 10_000;
40
+ const CHAT_PET_ICON_TRANSFORMATION_CHANCE = 1 / 100;
41
+ const CHAT_PET_YAPPING_CHANCE = 1 / 100;
42
+ const CHAT_PET_WALL_IMPACT_DURATION = 48;
43
+ const CHAT_PET_MOUSE_BOUNCE_RELEASE_GRACE_DURATION = 500;
44
+ const CHAT_PET_BOUNCE_RESULT_DURATION = 5_000;
45
+ const CHAT_PET_CONFETTI_SCORE = 20;
46
+ const CHAT_PET_WINDOW_OWNERSHIP_CHANNEL = "vscode-chat-pet-window-ownership";
47
+ const TRANSIENT_STATE_DURATION = 2_000;
48
+ const COMPLETE_STATE_DURATION = 960;
49
+ const BUTTON_PRESS_STATE_DURATION = 2_850;
50
+ const SPLAT_STATE_DURATION = 520;
51
+ const LOVE_STATE_DURATION = 2_940;
52
+ const COOL_STATE_DURATION = 3_000;
53
+ const SING_STATE_DURATION = 2_880;
54
+ const SPEECHLESS_STATE_DURATION = 2_720;
55
+ const WORRY_STATE_DURATION = 2_400;
56
+ const DIZZY_STATE_DURATION = 2_200;
57
+ const WAKE_STATE_DURATION = 880;
58
+ const DIZZY_DIRECTION_CHANGE_COUNT = 8;
59
+ const DIZZY_DIRECTION_CHANGE_MAX_INTERVAL = 600;
60
+ const RESPAWN_EFFECT_DURATION = 800;
61
+ const RESPAWN_EFFECT_REDUCED_MOTION_DURATION = 400;
62
+ const DRAG_THRESHOLD = 2;
63
+ const HOP_DISTANCE = 24;
64
+ const HOP_APEX_DELAY = 300;
65
+ const HOP_REST_DELAY = 90;
66
+ const HOP_HOLD_GRACE = 350;
67
+ const HOP_IDLE_DEBOUNCE = 900;
68
+ const BLINK_MIN_DELAY = 1_400;
69
+ const BLINK_MAX_DELAY = 3_400;
70
+ const POSITION_EPSILON = 0.5;
71
+ const THROW_VELOCITY_SAMPLE_DURATION = 100;
72
+ const POINTER_VELOCITY_SAMPLE_LIMIT = 8;
73
+ const THROW_RELEASE_GRACE_DURATION = 80;
74
+ const THROW_MIN_VELOCITY = 650;
75
+ const THROW_MAX_VELOCITY = 2_400;
76
+ const THROW_KEYBOARD_HORIZONTAL_VELOCITY = 1_400;
77
+ const THROW_GRAVITY = 1_800;
78
+ const THROW_MAX_FRAME_DURATION = 32;
79
+ const THROW_MAX_DURATION = 4_000;
80
+ const THROW_WALL_RESTITUTION = 0.2;
81
+ const THROW_CEILING_RESTITUTION = 0.2;
82
+ const THROW_ROTATION_PER_PIXEL = 0.65;
83
+ const THROW_SELF_RIGHTING_START_VELOCITY = -450;
84
+ const THROW_SELF_RIGHTING_SPEED = 720;
85
+ const MOUSE_BOUNCE_MIN_UPWARD_VELOCITY = 760;
86
+ const MOUSE_BOUNCE_MAX_UPWARD_VELOCITY = 1_800;
87
+ const MOUSE_BOUNCE_VERTICAL_RESTITUTION = 0.65;
88
+ const MOUSE_BOUNCE_UPWARD_TRANSFER = 0.4;
89
+ const MOUSE_BOUNCE_HORIZONTAL_RETENTION = 0.65;
90
+ const MOUSE_BOUNCE_HORIZONTAL_TRANSFER = 0.35;
91
+ const MOUSE_BOUNCE_EDGE_KICK = 320;
92
+ const MOUSE_BOUNCE_MAX_HORIZONTAL_VELOCITY = 1_800;
93
+ const CHAT_PET_DISPLAY_SIZE = 48;
94
+ const CHAT_PET_SOURCE_SIZE = 96;
95
+ const CHAT_PET_SLEEP_SOURCE_WIDTH = 120;
96
+ const CHAT_PET_TYPING_SOURCE_WIDTH = 168;
97
+ const CHAT_PET_BUTTON_PRESS_SOURCE_WIDTH = 160;
98
+ const CHAT_PET_SING_SOURCE_WIDTH = 164;
99
+ const CHAT_PET_SING_SOURCE_HEIGHT = 124;
100
+ const CHAT_PET_DIZZY_SOURCE_HEIGHT = 128;
101
+ const CHAT_PET_MAX_VERTICAL_OFFSET = 10;
102
+ const CHAT_PET_DEFAULT_RIGHT_INSET = 32;
103
+ const CHAT_PET_MIN_SCALE = 0.4;
104
+ const CHAT_PET_SCALE_STEP = 0.2;
105
+ const CHAT_PET_SPEECH_BUBBLE_RIGHT_OVERHANG = 20;
106
+ const CHAT_PET_SLEEP_RIGHT_OVERHANG = (CHAT_PET_SLEEP_SOURCE_WIDTH - CHAT_PET_SOURCE_SIZE) / 2;
107
+ const CHAT_PET_TYPING_RIGHT_OVERHANG = (CHAT_PET_TYPING_SOURCE_WIDTH - CHAT_PET_SOURCE_SIZE) / 2;
108
+ const CHAT_PET_BUTTON_PRESS_RIGHT_OVERHANG = (CHAT_PET_BUTTON_PRESS_SOURCE_WIDTH - CHAT_PET_SOURCE_SIZE) / 2;
109
+ const CHAT_PET_SING_RIGHT_OVERHANG = (CHAT_PET_SING_SOURCE_WIDTH - CHAT_PET_SOURCE_SIZE) / 2;
110
+ const IDLE_FRAME_DURATIONS = Array.from({
111
+ length: 50
112
+ }, () => 40);
113
+ const SLEEP_FRAME_DURATIONS = Array.from({
114
+ length: 8
115
+ }, () => 300);
116
+ const WAKE_FRAME_DURATIONS = [160, 100, 80, 90, 90, 90, 100, 170];
117
+ const TYPING_FRAME_DURATIONS = [320, 480];
118
+ const BUTTON_PRESS_FRAME_DURATIONS = [500, 300, 350, 250, 450, 1_000];
119
+ const FALLING_FRAME_DURATIONS = [120, 80, 80, 120, 80, 80];
120
+ const JUMP_FRAME_DURATIONS = [70, 80, 90, 160, 100, 100];
121
+ const SPLAT_FRAME_DURATIONS = [120, 100, 100, 200];
122
+ const RESPAWN_FRAME_DURATIONS = [120, 100, 120, 240, 100, 120];
123
+ const SPEECH_FRAME_DURATIONS = [220, 220, 220, 100, 160, 180];
124
+ const CLAPPING_FRAME_DURATIONS = [80, 40, 40, 40, 80, 40, 40, 40, 40, 80, 40, 40, 80];
125
+ const LOVE_FRAME_DURATIONS = [200, 200, 380, 100, 80, 1_980];
126
+ const COOL_FRAME_DURATIONS = [600, 120, 120, 120, 160, 80, 80, 80, 1_640];
127
+ const SING_FRAME_DURATIONS = [180, 180, 180, 180];
128
+ const SPEECHLESS_FRAME_DURATIONS = [400, 120, 1_000, 120, 1_080];
129
+ const WORRY_FRAME_DURATIONS = [600, 600];
130
+ const DIZZY_FRAME_DURATIONS = Array.from({
131
+ length: 8
132
+ }, () => 120);
133
+ const SEARCH_FRAME_DURATIONS = [500, 500, 500, 500];
134
+ const CHAT_PET_SING_FIXED_ORIENTATION_DECORATIONS = [{
135
+ frameBounds: [[16, 36, 80, 52], [16, 36, 80, 52], [16, 36, 80, 52], [16, 36, 80, 52]],
136
+ sourceFrame: 0
137
+ }, {
138
+ frameBounds: [[96, 8, 160, 72], [96, 4, 160, 68], [100, 0, 164, 64], [92, 4, 156, 68]],
139
+ sourceFrame: 0
140
+ }];
141
+ function getChatPetBuddyName(quality) {
142
+ return quality === "stable" ? "buddy-idle-stable" : "buddy-idle-insiders";
143
+ }
144
+ const spriteSources = ( new Map());
145
+ const speechSpriteSources = ( new Map());
146
+ const respawnSpriteSources = ( new Map());
147
+ function doesChatPetStateTrackCursor(state) {
148
+ return state !== undefined && state !== "sleep" && state !== "waking" && state !== "typing" && state !== "buttonPress" && state !== "complete" && state !== "jump" && state !== "love" && state !== "cool" && state !== "yappingMouthOpen" && state !== "sing" && state !== "speechless" && state !== "worry" && state !== "dizzy" && state !== "falling" && state !== "wallImpact" && state !== "splat" && state !== "onTheRun" && state !== "searching" && state !== "searchingDown";
149
+ }
150
+ function doesChatPetStateBlink(state, frameIndex) {
151
+ return (state === "typing" || state === "buttonPress" || state === "love") && (state !== "buttonPress" || frameIndex !== BUTTON_PRESS_FRAME_DURATIONS.length - 1);
152
+ }
153
+ function getChatPetSpriteName(state, quality) {
154
+ const variant = quality === "stable" ? "stable" : "insiders";
155
+ switch (state) {
156
+ case "love":
157
+ return `buddy-love-${variant}`;
158
+ case "clapping":
159
+ return `buddy-clapping-${variant}`;
160
+ case "cool":
161
+ return `buddy-cool-${variant}`;
162
+ case "buttonPress":
163
+ return `buddy-press-button-${variant}`;
164
+ case "falling":
165
+ return `buddy-falling-${variant}`;
166
+ case "jump":
167
+ return `buddy-jump-${variant}`;
168
+ case "dizzy":
169
+ return `buddy-dizzy-${variant}`;
170
+ case "wallImpact":
171
+ return `buddy-wall-impact-${variant}`;
172
+ case "splat":
173
+ return `buddy-splat-${variant}`;
174
+ case "onTheRun":
175
+ case "searching":
176
+ case "searchingDown":
177
+ return `buddy-search-${variant}`;
178
+ case "sleep":
179
+ return `buddy-sleep-${variant}`;
180
+ case "waking":
181
+ return `buddy-waking-${variant}`;
182
+ case "typing":
183
+ return `buddy-typing-${variant}`;
184
+ case "rendering":
185
+ case "achievementUnlocked":
186
+ return `buddy-rendering-${variant}`;
187
+ case "yappingMouthOpen":
188
+ return `buddy-yapping-${variant}`;
189
+ case "sing":
190
+ case "speechless":
191
+ case "worry":
192
+ return `buddy-${state}-${variant}`;
193
+ default:
194
+ return getChatPetBuddyName(quality);
195
+ }
196
+ }
197
+ function getChatPetFrameDurations(state) {
198
+ switch (state) {
199
+ case "sleep":
200
+ return SLEEP_FRAME_DURATIONS;
201
+ case "waking":
202
+ return WAKE_FRAME_DURATIONS;
203
+ case "typing":
204
+ return TYPING_FRAME_DURATIONS;
205
+ case "buttonPress":
206
+ return BUTTON_PRESS_FRAME_DURATIONS;
207
+ case "falling":
208
+ return FALLING_FRAME_DURATIONS;
209
+ case "jump":
210
+ return JUMP_FRAME_DURATIONS;
211
+ case "splat":
212
+ return SPLAT_FRAME_DURATIONS;
213
+ case "rendering":
214
+ case "achievementUnlocked":
215
+ return IDLE_FRAME_DURATIONS;
216
+ case "clapping":
217
+ return CLAPPING_FRAME_DURATIONS;
218
+ case "love":
219
+ return LOVE_FRAME_DURATIONS;
220
+ case "cool":
221
+ return COOL_FRAME_DURATIONS;
222
+ case "sing":
223
+ return SING_FRAME_DURATIONS;
224
+ case "speechless":
225
+ return SPEECHLESS_FRAME_DURATIONS;
226
+ case "worry":
227
+ return WORRY_FRAME_DURATIONS;
228
+ case "dizzy":
229
+ return DIZZY_FRAME_DURATIONS;
230
+ case "searching":
231
+ return SEARCH_FRAME_DURATIONS;
232
+ case "onTheRun":
233
+ case "wallImpact":
234
+ case "searchingDown":
235
+ return [];
236
+ case "yappingMouthOpen":
237
+ case "yapping":
238
+ return [];
239
+ default:
240
+ return IDLE_FRAME_DURATIONS;
241
+ }
242
+ }
243
+ function createSpriteSources(
244
+ name,
245
+ state,
246
+ tracksCursor = true,
247
+ sourceWidth,
248
+ sourceHeight = CHAT_PET_SOURCE_SIZE,
249
+ fixedOrientationDecorations
250
+ ) {
251
+ const root = "vs/workbench/contrib/chat/browser/widget/media/chatPet";
252
+ const suffix = tracksCursor ? "-tracking-96" : `-${sourceHeight}`;
253
+ const frameDurations = getChatPetFrameDurations(state);
254
+ const frameWidth = sourceWidth ?? (state === "typing" ? CHAT_PET_TYPING_SOURCE_WIDTH : state === "buttonPress" ? CHAT_PET_BUTTON_PRESS_SOURCE_WIDTH : CHAT_PET_SOURCE_SIZE);
255
+ const staticSource = {
256
+ url: ( ( FileAccess.asBrowserUri(`${root}/${name}${suffix}.png`)).toString(true)),
257
+ frameWidth,
258
+ frameHeight: sourceHeight,
259
+ fixedOrientationDecorations,
260
+ frameDurations: [],
261
+ iterations: 1,
262
+ accessoryRigFrame: getChatPetReducedMotionRigFrame(state)
263
+ };
264
+ return {
265
+ animated: frameDurations.length === 0 ? staticSource : {
266
+ url: ( ( FileAccess.asBrowserUri(`${root}/${name}${suffix}.spritesheet.png`)).toString(true)),
267
+ frameWidth,
268
+ frameHeight: sourceHeight,
269
+ fixedOrientationDecorations,
270
+ frameDurations,
271
+ iterations: state === "waking" || state === "buttonPress" || state === "cool" || state === "splat" || state === "searching" || state === "jump" ? 1 : Infinity
272
+ },
273
+ reducedMotion: staticSource
274
+ };
275
+ }
276
+ function getSpriteSources(variant) {
277
+ let sources = spriteSources.get(variant);
278
+ if (!sources) {
279
+ const createStateSpriteSources = state => createSpriteSources(
280
+ getChatPetSpriteName(state, variant),
281
+ state,
282
+ doesChatPetStateTrackCursor(state)
283
+ );
284
+ sources = {
285
+ idle: createStateSpriteSources("idle"),
286
+ sleep: createSpriteSources(
287
+ getChatPetSpriteName("sleep", variant),
288
+ "sleep",
289
+ false,
290
+ CHAT_PET_SLEEP_SOURCE_WIDTH
291
+ ),
292
+ waking: createSpriteSources(
293
+ getChatPetSpriteName("waking", variant),
294
+ "waking",
295
+ false,
296
+ CHAT_PET_SLEEP_SOURCE_WIDTH
297
+ ),
298
+ typing: createStateSpriteSources("typing"),
299
+ rendering: createStateSpriteSources("rendering"),
300
+ achievementUnlocked: createStateSpriteSources("achievementUnlocked"),
301
+ buttonPress: createStateSpriteSources("buttonPress"),
302
+ complete: createStateSpriteSources("complete"),
303
+ love: createStateSpriteSources("love"),
304
+ clapping: createStateSpriteSources("clapping"),
305
+ jump: createStateSpriteSources("jump"),
306
+ cool: createStateSpriteSources("cool"),
307
+ yapping: createStateSpriteSources("yapping"),
308
+ yappingMouthOpen: createStateSpriteSources("yappingMouthOpen"),
309
+ sing: createSpriteSources(
310
+ getChatPetSpriteName("sing", variant),
311
+ "sing",
312
+ false,
313
+ CHAT_PET_SING_SOURCE_WIDTH,
314
+ CHAT_PET_SING_SOURCE_HEIGHT,
315
+ CHAT_PET_SING_FIXED_ORIENTATION_DECORATIONS
316
+ ),
317
+ speechless: createStateSpriteSources("speechless"),
318
+ worry: createStateSpriteSources("worry"),
319
+ dizzy: createSpriteSources(
320
+ getChatPetSpriteName("dizzy", variant),
321
+ "dizzy",
322
+ false,
323
+ undefined,
324
+ CHAT_PET_DIZZY_SOURCE_HEIGHT
325
+ ),
326
+ falling: createStateSpriteSources("falling"),
327
+ wallImpact: createStateSpriteSources("wallImpact"),
328
+ splat: createStateSpriteSources("splat"),
329
+ onTheRun: createStateSpriteSources("onTheRun"),
330
+ searching: createStateSpriteSources("searching"),
331
+ searchingDown: createStateSpriteSources("searchingDown")
332
+ };
333
+ spriteSources.set(variant, sources);
334
+ }
335
+ return sources;
336
+ }
337
+ function getSpeechSpriteSources(variant) {
338
+ let sources = speechSpriteSources.get(variant);
339
+ if (!sources) {
340
+ const root = "vs/workbench/contrib/chat/browser/widget/media/chatPet";
341
+ const name = `buddy-speech-${variant}-96`;
342
+ sources = {
343
+ animated: {
344
+ url: ( ( FileAccess.asBrowserUri(`${root}/${name}.spritesheet.png`)).toString(true)),
345
+ frameWidth: CHAT_PET_SOURCE_SIZE,
346
+ frameDurations: SPEECH_FRAME_DURATIONS,
347
+ iterations: Infinity
348
+ },
349
+ reducedMotion: {
350
+ url: ( ( FileAccess.asBrowserUri(`${root}/${name}.png`)).toString(true)),
351
+ frameWidth: CHAT_PET_SOURCE_SIZE,
352
+ frameDurations: [],
353
+ iterations: 1
354
+ }
355
+ };
356
+ speechSpriteSources.set(variant, sources);
357
+ }
358
+ return sources;
359
+ }
360
+ function getRespawnSpriteSources(variant) {
361
+ let sources = respawnSpriteSources.get(variant);
362
+ if (!sources) {
363
+ const root = "vs/workbench/contrib/chat/browser/widget/media/chatPet";
364
+ const name = `buddy-respawn-${variant}-96`;
365
+ sources = {
366
+ animated: {
367
+ url: ( ( FileAccess.asBrowserUri(`${root}/${name}.spritesheet.png`)).toString(true)),
368
+ frameWidth: CHAT_PET_SOURCE_SIZE,
369
+ frameDurations: RESPAWN_FRAME_DURATIONS,
370
+ iterations: 1
371
+ },
372
+ reducedMotion: {
373
+ url: ( ( FileAccess.asBrowserUri(`${root}/${name}.png`)).toString(true)),
374
+ frameWidth: CHAT_PET_SOURCE_SIZE,
375
+ frameDurations: [],
376
+ iterations: 1
377
+ }
378
+ };
379
+ respawnSpriteSources.set(variant, sources);
380
+ }
381
+ return sources;
382
+ }
383
+ function doesChatPetStateSpeak(state) {
384
+ return state === "rendering" || state === "achievementUnlocked";
385
+ }
386
+ function drawChatPetAchievementStar(context, variant) {
387
+ context.fillStyle = variant === "stable" ? "rgb(35, 168, 242)" : "rgb(36, 191, 165)";
388
+ context.fillRect(56, 34, 24, 24);
389
+ context.fillStyle = "rgb(255, 205, 15)";
390
+ const rows = ["..#..", ".###.", "#####", ".#.#.", "#...#"];
391
+ for (let y = 0; y < rows.length; y++) {
392
+ for (let x = 0; x < rows[y].length; x++) {
393
+ if (rows[y][x] === "#") {
394
+ context.fillRect(58 + x * 4, 36 + y * 4, 4, 4);
395
+ }
396
+ }
397
+ }
398
+ }
399
+ function isChatPetImageSource(image, source) {
400
+ return image.getAttribute("src") === source;
401
+ }
402
+ function getChatPetBaseState(
403
+ hasActiveRequest,
404
+ needsInput,
405
+ confirmationAttentionExpired,
406
+ hasInput,
407
+ idleExpired
408
+ ) {
409
+ if (needsInput) {
410
+ return confirmationAttentionExpired ? "idle" : "clapping";
411
+ }
412
+ if (hasActiveRequest) {
413
+ return "rendering";
414
+ }
415
+ if (idleExpired) {
416
+ return "sleep";
417
+ }
418
+ if (hasInput) {
419
+ return "typing";
420
+ }
421
+ return "idle";
422
+ }
423
+ function getChatPetListPadding(enabled, visible, scale) {
424
+ return enabled && visible ? CHAT_PET_DISPLAY_SIZE * scale : 0;
425
+ }
426
+ function isChatPetVisible(enabled, windowActive = true) {
427
+ return enabled && windowActive;
428
+ }
429
+ function isChatPetWindowActive(activeWindowId, targetWindowId) {
430
+ return activeWindowId === targetWindowId;
431
+ }
432
+ function shouldClaimChatPetWindowOnConstruction(windowActive, documentFocused) {
433
+ return windowActive && documentFocused;
434
+ }
435
+ function isChatPetKeyboardInteractionEnabled(enabled, isDead, hasPointerInteraction, isAirborne, onTheRun) {
436
+ return enabled && !isDead && !hasPointerInteraction && !isAirborne && !onTheRun;
437
+ }
438
+ function isChatPetYapState(state) {
439
+ return state === "yapping" || state === "yappingMouthOpen";
440
+ }
441
+ function getChatPetRenderedState(baseState, transientState, isDragging) {
442
+ if (isDragging) {
443
+ return "idle";
444
+ }
445
+ if (isChatPetYapState(transientState) && baseState !== "idle") {
446
+ return baseState;
447
+ }
448
+ return transientState ?? baseState;
449
+ }
450
+ function getChatPetAnimationFrame(frameDurations, elapsed, iterations, reverse = false) {
451
+ if (frameDurations.length === 0) {
452
+ return {
453
+ frameIndex: 0,
454
+ complete: true
455
+ };
456
+ }
457
+ const totalDuration = frameDurations.reduce((total, duration) => total + duration, 0);
458
+ const lastFrameIndex = frameDurations.length - 1;
459
+ if (elapsed >= totalDuration * iterations) {
460
+ return {
461
+ frameIndex: reverse ? 0 : lastFrameIndex,
462
+ complete: true
463
+ };
464
+ }
465
+ const iterationElapsed = Math.max(0, elapsed) % totalDuration;
466
+ let frameEnd = 0;
467
+ for (let animationFrameIndex = 0; animationFrameIndex < frameDurations.length; animationFrameIndex++) {
468
+ const frameIndex = reverse ? lastFrameIndex - animationFrameIndex : animationFrameIndex;
469
+ frameEnd += frameDurations[frameIndex];
470
+ if (iterationElapsed < frameEnd) {
471
+ return {
472
+ frameIndex,
473
+ complete: false,
474
+ nextFrameDelay: frameEnd - iterationElapsed
475
+ };
476
+ }
477
+ }
478
+ return {
479
+ frameIndex: reverse ? 0 : lastFrameIndex,
480
+ complete: false,
481
+ nextFrameDelay: totalDuration
482
+ };
483
+ }
484
+ function getTransientStateDuration(state) {
485
+ switch (state) {
486
+ case "buttonPress":
487
+ return BUTTON_PRESS_STATE_DURATION;
488
+ case "complete":
489
+ return COMPLETE_STATE_DURATION;
490
+ case "splat":
491
+ return SPLAT_STATE_DURATION;
492
+ case "love":
493
+ return LOVE_STATE_DURATION;
494
+ case "cool":
495
+ return COOL_STATE_DURATION;
496
+ case "sing":
497
+ return SING_STATE_DURATION;
498
+ case "speechless":
499
+ return SPEECHLESS_STATE_DURATION;
500
+ case "worry":
501
+ return WORRY_STATE_DURATION;
502
+ case "dizzy":
503
+ return DIZZY_STATE_DURATION;
504
+ case "achievementUnlocked":
505
+ return CHAT_PET_ACHIEVEMENT_UNLOCKED_DURATION;
506
+ case "waking":
507
+ return WAKE_STATE_DURATION;
508
+ default:
509
+ return TRANSIENT_STATE_DURATION;
510
+ }
511
+ }
512
+ function getChatPetClickInteraction(random, previousInteraction) {
513
+ if (random < CHAT_PET_ICON_TRANSFORMATION_CHANCE) {
514
+ return "complete";
515
+ }
516
+ const yappingThreshold = CHAT_PET_ICON_TRANSFORMATION_CHANCE + CHAT_PET_YAPPING_CHANCE;
517
+ if (random < yappingThreshold) {
518
+ return "yapping";
519
+ }
520
+ const interactions = ["buttonPress", "love", "cool", "sing", "speechless", "worry"];
521
+ const availableInteractions = interactions.filter(interaction => interaction !== previousInteraction);
522
+ const normalizedRandom = (random - yappingThreshold) / (1 - yappingThreshold);
523
+ return availableInteractions[Math.min(
524
+ Math.floor(normalizedRandom * availableInteractions.length),
525
+ availableInteractions.length - 1
526
+ )];
527
+ }
528
+ function getChatPetBlinkDelay(random) {
529
+ const normalizedRandom = Math.max(0, Math.min(1, random));
530
+ return BLINK_MIN_DELAY + Math.round(normalizedRandom * (BLINK_MAX_DELAY - BLINK_MIN_DELAY));
531
+ }
532
+ function getChatPetGazeDirection(cursorX, cursorY, petCenterX, petCenterY) {
533
+ const deltaX = cursorX - petCenterX;
534
+ const deltaY = cursorY - petCenterY;
535
+ const distance = Math.hypot(deltaX, deltaY);
536
+ if (distance === 0) {
537
+ return [0, 0];
538
+ }
539
+ return [Math.round(deltaX / distance), Math.round(deltaY / distance)];
540
+ }
541
+ function getChatPetEyeAccessoryGazeOffset(gazeDirection) {
542
+ return [gazeDirection[0] * 4, gazeDirection[1] * 4];
543
+ }
544
+ class ChatPetBlinkController extends Disposable {
545
+ constructor(onBlinkChange, random = Math.random) {
546
+ super();
547
+ this.onBlinkChange = onBlinkChange;
548
+ this.random = random;
549
+ this._blinkScheduler = this._register(( new RunOnceScheduler(() => this._startBlink(), 0)));
550
+ this._enabled = false;
551
+ this._blinking = false;
552
+ }
553
+ setEnabled(enabled) {
554
+ if (this._enabled === enabled) {
555
+ return;
556
+ }
557
+ this._enabled = enabled;
558
+ this._blinkScheduler.cancel();
559
+ this._setBlinking(false);
560
+ if (enabled) {
561
+ this._scheduleBlink();
562
+ }
563
+ }
564
+ onAnimationComplete() {
565
+ if (!this._blinking) {
566
+ return;
567
+ }
568
+ this._setBlinking(false);
569
+ if (this._enabled) {
570
+ this._scheduleBlink();
571
+ }
572
+ }
573
+ _scheduleBlink() {
574
+ this._blinkScheduler.schedule(getChatPetBlinkDelay(this.random()));
575
+ }
576
+ _startBlink() {
577
+ if (this._enabled) {
578
+ this._setBlinking(true);
579
+ }
580
+ }
581
+ _setBlinking(blinking) {
582
+ if (this._blinking === blinking) {
583
+ return;
584
+ }
585
+ this._blinking = blinking;
586
+ this.onBlinkChange(blinking);
587
+ }
588
+ }
589
+ class ChatPetFacingController {
590
+ constructor() {
591
+ this._direction = "right";
592
+ this._tracksCursor = false;
593
+ }
594
+ get direction() {
595
+ return this._direction;
596
+ }
597
+ setDirection(direction) {
598
+ this._direction = direction;
599
+ }
600
+ setState(state, isDragging) {
601
+ this._tracksCursor = state === "idle" && !isDragging;
602
+ }
603
+ snapToCursor(cursorX, petCenterX) {
604
+ if (cursorX < petCenterX) {
605
+ this.setDirection("left");
606
+ } else if (cursorX > petCenterX) {
607
+ this.setDirection("right");
608
+ }
609
+ return this._direction;
610
+ }
611
+ update(cursorX, petCenterX) {
612
+ if (this._tracksCursor) {
613
+ return this.snapToCursor(cursorX, petCenterX);
614
+ }
615
+ return this._direction;
616
+ }
617
+ }
618
+ class ChatPetDirectionChangeController {
619
+ constructor(
620
+ directionChangeCount = DIZZY_DIRECTION_CHANGE_COUNT,
621
+ maxDirectionChangeInterval = DIZZY_DIRECTION_CHANGE_MAX_INTERVAL
622
+ ) {
623
+ this.directionChangeCount = directionChangeCount;
624
+ this.maxDirectionChangeInterval = maxDirectionChangeInterval;
625
+ this._directionChangeCount = 0;
626
+ }
627
+ record(direction, timestamp) {
628
+ if (this._lastDirection === direction) {
629
+ return false;
630
+ }
631
+ if (this._lastDirection === undefined) {
632
+ this._lastDirection = direction;
633
+ this._lastDirectionChangeTime = timestamp;
634
+ return false;
635
+ }
636
+ if (this._lastDirectionChangeTime !== undefined && timestamp - this._lastDirectionChangeTime > this.maxDirectionChangeInterval) {
637
+ this._directionChangeCount = 0;
638
+ }
639
+ this._lastDirection = direction;
640
+ this._lastDirectionChangeTime = timestamp;
641
+ this._directionChangeCount++;
642
+ if (this._directionChangeCount < this.directionChangeCount) {
643
+ return false;
644
+ }
645
+ this.reset();
646
+ return true;
647
+ }
648
+ reset() {
649
+ this._lastDirection = undefined;
650
+ this._lastDirectionChangeTime = undefined;
651
+ this._directionChangeCount = 0;
652
+ }
653
+ }
654
+ function getChatPetHorizontalPosition(left, minimumLeft, maximumLeft) {
655
+ return Math.max(minimumLeft, Math.min(Math.max(minimumLeft, maximumLeft), left));
656
+ }
657
+ function getChatPetDefaultHorizontalPosition(minimumLeft, maximumLeft) {
658
+ return Math.max(minimumLeft, maximumLeft - CHAT_PET_DEFAULT_RIGHT_INSET);
659
+ }
660
+ function getChatPetRestoredHorizontalPosition(relativePosition, minimumLeft, maximumLeft) {
661
+ return relativePosition === undefined ? getChatPetDefaultHorizontalPosition(minimumLeft, maximumLeft) : getChatPetHorizontalPosition(
662
+ minimumLeft + relativePosition * Math.max(0, maximumLeft - minimumLeft),
663
+ minimumLeft,
664
+ maximumLeft
665
+ );
666
+ }
667
+ function getChatPetRelativeHorizontalPosition(left, minimumLeft, maximumLeft) {
668
+ const horizontalRange = maximumLeft - minimumLeft;
669
+ if (horizontalRange <= 0) {
670
+ return undefined;
671
+ }
672
+ return Math.max(0, Math.min(1, (left - minimumLeft) / horizontalRange));
673
+ }
674
+ function getChatPetHorizontalAnchor(left, minimumLeft, maximumLeft) {
675
+ const clampedLeft = getChatPetHorizontalPosition(left, minimumLeft, maximumLeft);
676
+ const normalizedMaximumLeft = Math.max(minimumLeft, maximumLeft);
677
+ const leftInset = clampedLeft - minimumLeft;
678
+ const rightInset = normalizedMaximumLeft - clampedLeft;
679
+ return leftInset <= rightInset ? {
680
+ edge: "left",
681
+ inset: leftInset
682
+ } : {
683
+ edge: "right",
684
+ inset: rightInset
685
+ };
686
+ }
687
+ function getChatPetAnchoredHorizontalPosition(anchor, minimumLeft, maximumLeft) {
688
+ const normalizedMaximumLeft = Math.max(minimumLeft, maximumLeft);
689
+ const left = anchor.edge === "left" ? minimumLeft + anchor.inset : normalizedMaximumLeft - anchor.inset;
690
+ return getChatPetHorizontalPosition(left, minimumLeft, normalizedMaximumLeft);
691
+ }
692
+ function getChatPetScale(scale, delta) {
693
+ return Math.max(CHAT_PET_MIN_SCALE, Math.round((scale + delta) * 10) / 10);
694
+ }
695
+ function getChatPetDragPosition(left, top, minimumLeft, maximumLeft, minimumTop, maximumTop) {
696
+ return [
697
+ getChatPetHorizontalPosition(left, minimumLeft, maximumLeft),
698
+ Math.max(minimumTop, Math.min(Math.max(minimumTop, maximumTop), top))
699
+ ];
700
+ }
701
+ function getChatPetThrowVelocity(samples, releaseTime) {
702
+ if (samples.length < 2) {
703
+ return undefined;
704
+ }
705
+ const latest = samples[samples.length - 1];
706
+ if (releaseTime - latest.time > THROW_RELEASE_GRACE_DURATION) {
707
+ return undefined;
708
+ }
709
+ let first = latest;
710
+ for (let index = samples.length - 2; index >= 0; index--) {
711
+ const sample = samples[index];
712
+ if (latest.time - sample.time > THROW_VELOCITY_SAMPLE_DURATION) {
713
+ break;
714
+ }
715
+ first = sample;
716
+ }
717
+ const elapsed = Math.max(16, latest.time - first.time);
718
+ const velocityX = (latest.x - first.x) / elapsed * 1_000;
719
+ const velocityY = (latest.y - first.y) / elapsed * 1_000;
720
+ const speed = Math.hypot(velocityX, velocityY);
721
+ if (speed < THROW_MIN_VELOCITY) {
722
+ return undefined;
723
+ }
724
+ const velocityScale = Math.min(1, THROW_MAX_VELOCITY / speed);
725
+ return {
726
+ x: velocityX * velocityScale,
727
+ y: velocityY * velocityScale
728
+ };
729
+ }
730
+ function getChatPetWallReboundVelocity(velocity) {
731
+ return {
732
+ x: -velocity.x * THROW_WALL_RESTITUTION,
733
+ y: velocity.y
734
+ };
735
+ }
736
+ function getChatPetMouseBounceVelocity(motion, pointerVelocity, pointerX, petLeft, petWidth) {
737
+ const petCenter = petLeft + petWidth / 2;
738
+ const horizontalOffset = petWidth > 0 ? Math.max(-1, Math.min(1, (petCenter - pointerX) / (petWidth / 2))) : 0;
739
+ const horizontalVelocity = motion.x * MOUSE_BOUNCE_HORIZONTAL_RETENTION + pointerVelocity.x * MOUSE_BOUNCE_HORIZONTAL_TRANSFER + horizontalOffset * MOUSE_BOUNCE_EDGE_KICK;
740
+ const upwardVelocity = Math.max(
741
+ MOUSE_BOUNCE_MIN_UPWARD_VELOCITY,
742
+ Math.max(0, motion.y) * MOUSE_BOUNCE_VERTICAL_RESTITUTION + Math.max(0, -pointerVelocity.y) * MOUSE_BOUNCE_UPWARD_TRANSFER
743
+ );
744
+ return {
745
+ x: Math.max(
746
+ -MOUSE_BOUNCE_MAX_HORIZONTAL_VELOCITY,
747
+ Math.min(MOUSE_BOUNCE_MAX_HORIZONTAL_VELOCITY, horizontalVelocity)
748
+ ),
749
+ y: -Math.min(MOUSE_BOUNCE_MAX_UPWARD_VELOCITY, upwardVelocity)
750
+ };
751
+ }
752
+ function isChatPetMouseContact(pointerX, pointerY, petBounds) {
753
+ return pointerX >= petBounds.left && pointerX <= petBounds.right && pointerY >= petBounds.top && pointerY <= petBounds.bottom;
754
+ }
755
+ function isChatPetMouseBounceEligible(verticalVelocity) {
756
+ return verticalVelocity > 0;
757
+ }
758
+ function isChatPetMouseBounceGracePeriodElapsed(now, availableAt) {
759
+ return now >= availableAt;
760
+ }
761
+ function shouldDismissChatPetBounceResult(state) {
762
+ return state !== "idle" && state !== "splat";
763
+ }
764
+ function shouldCelebrateChatPetBounceScore(score) {
765
+ return score >= CHAT_PET_CONFETTI_SCORE;
766
+ }
767
+ function getChatPetMouseCollisionAxisInterval(start, end, minimum, maximum) {
768
+ const delta = end - start;
769
+ if (delta === 0) {
770
+ return start >= minimum && start <= maximum ? [0, 1] : undefined;
771
+ }
772
+ const first = (minimum - start) / delta;
773
+ const second = (maximum - start) / delta;
774
+ const entry = Math.min(first, second);
775
+ const exit = Math.max(first, second);
776
+ if (exit < 0 || entry > 1) {
777
+ return undefined;
778
+ }
779
+ return [Math.max(0, entry), Math.min(1, exit)];
780
+ }
781
+ function getChatPetMouseCollisionTime(
782
+ previousLeft,
783
+ previousTop,
784
+ left,
785
+ top,
786
+ petWidth,
787
+ petHeight,
788
+ pointerX,
789
+ pointerY
790
+ ) {
791
+ const horizontal = getChatPetMouseCollisionAxisInterval(previousLeft, left, pointerX - petWidth, pointerX);
792
+ const vertical = getChatPetMouseCollisionAxisInterval(previousTop, top, pointerY - petHeight, pointerY);
793
+ if (!horizontal || !vertical) {
794
+ return undefined;
795
+ }
796
+ const entry = Math.max(horizontal[0], vertical[0]);
797
+ const exit = Math.min(horizontal[1], vertical[1]);
798
+ return entry <= exit ? entry : undefined;
799
+ }
800
+ function getChatPetThrowRotation(rotation, horizontalDistance, verticalVelocity, elapsed) {
801
+ const selfRightingProgress = Math.max(0, Math.min(
802
+ 1,
803
+ (verticalVelocity - THROW_SELF_RIGHTING_START_VELOCITY) / -THROW_SELF_RIGHTING_START_VELOCITY
804
+ ));
805
+ const nextRotation = rotation + horizontalDistance * THROW_ROTATION_PER_PIXEL * (1 - selfRightingProgress);
806
+ const uprightRotation = horizontalDistance > 0 ? Math.ceil(nextRotation / 360) * 360 : horizontalDistance < 0 ? Math.floor(nextRotation / 360) * 360 : Math.round(nextRotation / 360) * 360;
807
+ const rotationDelta = uprightRotation - nextRotation;
808
+ const maximumCorrection = THROW_SELF_RIGHTING_SPEED * Math.max(0, elapsed) / 1_000 * selfRightingProgress;
809
+ return Math.abs(rotationDelta) <= maximumCorrection ? uprightRotation : nextRotation + Math.sign(rotationDelta) * maximumCorrection;
810
+ }
811
+ function advanceChatPetThrow(motion, elapsed, bounds) {
812
+ const duration = Math.max(0, elapsed) / 1_000;
813
+ const projectedLeft = motion.left + motion.x * duration;
814
+ const hasHorizontalRange = bounds.maximumLeft > bounds.minimumLeft;
815
+ let wall;
816
+ let motionDuration = duration;
817
+ let left = hasHorizontalRange ? projectedLeft : bounds.minimumLeft;
818
+ if (hasHorizontalRange && projectedLeft < bounds.minimumLeft) {
819
+ wall = "left";
820
+ motionDuration *= (bounds.minimumLeft - motion.left) / (projectedLeft - motion.left);
821
+ left = bounds.minimumLeft;
822
+ } else if (hasHorizontalRange && projectedLeft > bounds.maximumLeft) {
823
+ wall = "right";
824
+ motionDuration *= (bounds.maximumLeft - motion.left) / (projectedLeft - motion.left);
825
+ left = bounds.maximumLeft;
826
+ }
827
+ let top = motion.top + motion.y * motionDuration + THROW_GRAVITY * motionDuration * motionDuration / 2;
828
+ let velocityY = motion.y + THROW_GRAVITY * motionDuration;
829
+ if (top < bounds.minimumTop) {
830
+ top = bounds.minimumTop;
831
+ velocityY = Math.abs(velocityY) * THROW_CEILING_RESTITUTION;
832
+ }
833
+ return {
834
+ left,
835
+ top,
836
+ x: hasHorizontalRange ? motion.x : 0,
837
+ y: velocityY,
838
+ wall
839
+ };
840
+ }
841
+ function shouldSettleChatPetThrow(startTime, currentTime, top, verticalVelocity, floorTop) {
842
+ return currentTime - startTime >= THROW_MAX_DURATION || (top > floorTop && verticalVelocity >= 0);
843
+ }
844
+ function getChatPetFallTarget(
845
+ petLeft,
846
+ petTop,
847
+ petWidth,
848
+ petHeight,
849
+ platformLeft,
850
+ platformRight,
851
+ platformTop,
852
+ floorBottom,
853
+ fallbackPlatformTop
854
+ ) {
855
+ const petCenter = petLeft + petWidth / 2;
856
+ const isWithinPlatform = petCenter >= platformLeft && petCenter <= platformRight;
857
+ const petBottom = petTop + petHeight;
858
+ const landingPlatformTop = isWithinPlatform && petBottom <= platformTop ? platformTop : isWithinPlatform && fallbackPlatformTop !== undefined && petBottom <= fallbackPlatformTop ? fallbackPlatformTop : undefined;
859
+ return {
860
+ top: landingPlatformTop !== undefined ? landingPlatformTop - petHeight : floorBottom - petHeight,
861
+ landsOnPlatform: landingPlatformTop !== undefined
862
+ };
863
+ }
864
+ function getChatPetThrowLanding(
865
+ previousLeft,
866
+ previousTop,
867
+ left,
868
+ top,
869
+ petWidth,
870
+ petHeight,
871
+ platformLeft,
872
+ platformRight,
873
+ platformTop,
874
+ floorTop
875
+ ) {
876
+ if (top <= previousTop) {
877
+ return undefined;
878
+ }
879
+ const getLeftAtTop = targetTop => previousLeft + (left - previousLeft) * (targetTop - previousTop) / (top - previousTop);
880
+ const platformLandingTop = platformTop - petHeight;
881
+ if (previousTop <= platformLandingTop && top >= platformLandingTop) {
882
+ const landingLeft = getLeftAtTop(platformLandingTop);
883
+ const petCenter = landingLeft + petWidth / 2;
884
+ if (petCenter >= platformLeft && petCenter <= platformRight) {
885
+ return {
886
+ left: landingLeft,
887
+ top: platformLandingTop,
888
+ landsOnPlatform: true
889
+ };
890
+ }
891
+ }
892
+ if (previousTop <= floorTop && top >= floorTop) {
893
+ return {
894
+ left: getLeftAtTop(floorTop),
895
+ top: floorTop,
896
+ landsOnPlatform: false
897
+ };
898
+ }
899
+ return undefined;
900
+ }
901
+ function getChatPetFallDuration(distance) {
902
+ return Math.max(180, Math.min(700, Math.sqrt(Math.abs(distance)) * 20));
903
+ }
904
+ function getChatPetVerticalOffset(hostTop, inputTop) {
905
+ return Math.max(0, Math.min(CHAT_PET_MAX_VERTICAL_OFFSET, inputTop - hostTop));
906
+ }
907
+ function getChatPetPlatformTop(hostTop, inputTop, substantiveSurfaceTop) {
908
+ if (substantiveSurfaceTop !== undefined && substantiveSurfaceTop <= inputTop) {
909
+ return substantiveSurfaceTop;
910
+ }
911
+ return hostTop + getChatPetVerticalOffset(hostTop, inputTop);
912
+ }
913
+ function getChatPetProjectedPlatformTop(hostTop, inputTop, overlayLeft, petLeft, petWidth, getPlatformTop) {
914
+ return getChatPetPlatformTop(hostTop, inputTop, getPlatformTop(overlayLeft + petLeft + petWidth / 2));
915
+ }
916
+ function getChatPetSweptPlatformTop(
917
+ hostTop,
918
+ inputTop,
919
+ overlayLeft,
920
+ previousLeft,
921
+ previousTop,
922
+ left,
923
+ top,
924
+ petWidth,
925
+ petHeight,
926
+ getPlatformTop
927
+ ) {
928
+ const fallbackPlatformTop = getChatPetPlatformTop(hostTop, inputTop);
929
+ if (top <= previousTop) {
930
+ return fallbackPlatformTop;
931
+ }
932
+ const getProjectedPlatformTop = petLeft => getChatPetProjectedPlatformTop(hostTop, inputTop, overlayLeft, petLeft, petWidth, getPlatformTop);
933
+ const candidatePlatformTops = [getProjectedPlatformTop(previousLeft), getProjectedPlatformTop(left)].filter(
934
+ (candidate, index, candidates) => Math.abs(candidate - fallbackPlatformTop) > POSITION_EPSILON && candidates.indexOf(candidate) === index
935
+ ).sort((first, second) => first - second);
936
+ for (const candidatePlatformTop of candidatePlatformTops) {
937
+ const landingTop = candidatePlatformTop - hostTop - petHeight;
938
+ if (previousTop > landingTop || top < landingTop) {
939
+ continue;
940
+ }
941
+ const landingLeft = previousLeft + (left - previousLeft) * (landingTop - previousTop) / (top - previousTop);
942
+ if (Math.abs(getProjectedPlatformTop(landingLeft) - candidatePlatformTop) <= POSITION_EPSILON) {
943
+ return candidatePlatformTop;
944
+ }
945
+ }
946
+ return fallbackPlatformTop;
947
+ }
948
+ function getChatPetPillPlatformTop(petCenterX, pillBounds) {
949
+ for (const bounds of pillBounds) {
950
+ if (bounds.width > 0 && bounds.height > 0 && petCenterX >= bounds.left && petCenterX <= bounds.right) {
951
+ return bounds.top;
952
+ }
953
+ }
954
+ return undefined;
955
+ }
956
+ function getChatPetStackPlatformTop(container, inputContainer, startAfter) {
957
+ const inputTop = inputContainer.getBoundingClientRect().top;
958
+ let current = container;
959
+ let previousElement = startAfter;
960
+ while (true) {
961
+ const children = Array.from(current.children);
962
+ const startIndex = previousElement ? children.indexOf(previousElement) + 1 : 0;
963
+ let nestedContainer;
964
+ for (let index = startIndex; index < children.length; index++) {
965
+ const child = children[index];
966
+ if (!isHTMLElement(child) || child.classList.contains(CHAT_PET_OVERLAY_CLASS)) {
967
+ continue;
968
+ }
969
+ if (child === inputContainer) {
970
+ return inputTop;
971
+ }
972
+ if (child.contains(inputContainer)) {
973
+ nestedContainer = child;
974
+ break;
975
+ }
976
+ const bounds = child.getBoundingClientRect();
977
+ if (bounds.height > 0 && bounds.top <= inputTop) {
978
+ return bounds.top;
979
+ }
980
+ }
981
+ if (!nestedContainer) {
982
+ return inputTop;
983
+ }
984
+ current = nestedContainer;
985
+ previousElement = undefined;
986
+ }
987
+ }
988
+ function shouldPlaceChatPetSpeechBubbleLeft(state, buttonRight, inputRight, scale = 1) {
989
+ return state === "rendering" && buttonRight + CHAT_PET_SPEECH_BUBBLE_RIGHT_OVERHANG * scale > inputRight;
990
+ }
991
+ function getChatPetWideSpriteHorizontalOffset(
992
+ state,
993
+ facingDirection,
994
+ buttonLeft,
995
+ buttonRight,
996
+ inputLeft,
997
+ inputRight,
998
+ scale = 1
999
+ ) {
1000
+ const overhang = state === "sleep" || state === "waking" ? CHAT_PET_SLEEP_RIGHT_OVERHANG : state === "typing" ? CHAT_PET_TYPING_RIGHT_OVERHANG : state === "buttonPress" ? CHAT_PET_BUTTON_PRESS_RIGHT_OVERHANG : state === "sing" ? CHAT_PET_SING_RIGHT_OVERHANG : 0;
1001
+ if (overhang === 0) {
1002
+ return 0;
1003
+ }
1004
+ return facingDirection === "left" ? Math.max(0, overhang - (buttonLeft - inputLeft) / scale) : Math.min(0, (inputRight - buttonRight) / scale - overhang);
1005
+ }
1006
+ function setChatPetWideLayerOffset(offset, layers) {
1007
+ const translate = offset === 0 ? "" : `${offset}px`;
1008
+ for (const layer of layers) {
1009
+ layer.style.translate = translate;
1010
+ }
1011
+ }
1012
+ class ChatPetHopController extends Disposable {
1013
+ constructor(callbacks) {
1014
+ super();
1015
+ this.callbacks = callbacks;
1016
+ this._stepScheduler = this._register(( new RunOnceScheduler(() => this._applyStep(), HOP_APEX_DELAY)));
1017
+ this._restScheduler = this._register(( new RunOnceScheduler(() => this._beginHop(), HOP_REST_DELAY)));
1018
+ this._direction = 0;
1019
+ this._heldUntil = 0;
1020
+ this._active = false;
1021
+ }
1022
+ request(direction, motionReduced) {
1023
+ this._direction = direction;
1024
+ this.callbacks.onDirectionChange(direction);
1025
+ this.callbacks.onRequest();
1026
+ if (motionReduced) {
1027
+ this.cancel();
1028
+ this.callbacks.onMove(direction * HOP_DISTANCE);
1029
+ this.callbacks.onReducedMotionStart();
1030
+ return;
1031
+ }
1032
+ this._heldUntil = Date.now() + HOP_HOLD_GRACE;
1033
+ if (!this._active) {
1034
+ this._beginHop();
1035
+ }
1036
+ }
1037
+ cancel() {
1038
+ this._active = false;
1039
+ this._direction = 0;
1040
+ this._heldUntil = 0;
1041
+ this._stepScheduler.cancel();
1042
+ this._restScheduler.cancel();
1043
+ }
1044
+ onAnimationComplete() {
1045
+ if (!this._active) {
1046
+ return;
1047
+ }
1048
+ if (Date.now() < this._heldUntil) {
1049
+ this._restScheduler.schedule();
1050
+ } else {
1051
+ this._active = false;
1052
+ }
1053
+ }
1054
+ _beginHop() {
1055
+ this._active = true;
1056
+ this.callbacks.onStart();
1057
+ this._stepScheduler.schedule();
1058
+ }
1059
+ _applyStep() {
1060
+ if (!this._active || this._direction === 0) {
1061
+ return;
1062
+ }
1063
+ this.callbacks.onMove(this._direction * HOP_DISTANCE);
1064
+ }
1065
+ }
1066
+ let ChatPetWidget = class ChatPetWidget extends Disposable {
1067
+ constructor(
1068
+ host,
1069
+ resizeObserverCtor,
1070
+ chatPetService,
1071
+ accessibilityService,
1072
+ contextMenuService,
1073
+ commandService,
1074
+ logService,
1075
+ hostService
1076
+ ) {
1077
+ super();
1078
+ this.chatPetService = chatPetService;
1079
+ this.accessibilityService = accessibilityService;
1080
+ this.contextMenuService = contextMenuService;
1081
+ this.commandService = commandService;
1082
+ this.logService = logService;
1083
+ this.hostService = hostService;
1084
+ this._hostLayoutDisposables = this._register(( new MutableDisposable()));
1085
+ this._eyeAccessoryVisible = false;
1086
+ this._eyeAccessoryFixedOrientation = false;
1087
+ this._eyeAccessoryGazeOffset = [0, 0];
1088
+ this._pupils = [];
1089
+ this._facingController = ( new ChatPetFacingController());
1090
+ this._directionChangeController = ( new ChatPetDirectionChangeController());
1091
+ this._dragMonitor = this._register(( new GlobalPointerMoveMonitor()));
1092
+ this._idleExpired = observableValue(this, false);
1093
+ this._confirmationAttentionExpired = observableValue(this, false);
1094
+ this._transientState = observableValue(this, undefined);
1095
+ this._isDragging = observableValue(this, false);
1096
+ this._isDead = observableValue(this, false);
1097
+ this._idleScheduler = this._register(( new RunOnceScheduler(() => this._idleExpired.set(true, undefined), CHAT_PET_IDLE_SLEEP_DELAY)));
1098
+ this._confirmationAttentionScheduler = this._register(( new RunOnceScheduler(
1099
+ () => this._confirmationAttentionExpired.set(true, undefined),
1100
+ CHAT_PET_CONFIRMATION_ATTENTION_DURATION
1101
+ )));
1102
+ this._transientScheduler = this._register(( new RunOnceScheduler(
1103
+ () => this._transientState.set(undefined, undefined),
1104
+ TRANSIENT_STATE_DURATION
1105
+ )));
1106
+ this._clickSuppressionScheduler = this._register(( new RunOnceScheduler(() => this._suppressNextPointerClick = false, 0)));
1107
+ this._bounceResultScheduler = this._register(( new RunOnceScheduler(() => this._resetBounceCount(), CHAT_PET_BOUNCE_RESULT_DURATION)));
1108
+ this._spriteAnimation = this._register(( new MutableDisposable()));
1109
+ this._speechAnimation = this._register(( new MutableDisposable()));
1110
+ this._respawnAnimation = this._register(( new MutableDisposable()));
1111
+ this._throwAnimation = this._register(( new MutableDisposable()));
1112
+ this._respawnEffectScheduler = this._register(( new RunOnceScheduler(() => this._showRespawnEffect(), RESPAWN_EFFECT_DURATION)));
1113
+ this._respawnFallScheduler = this._register(( new RunOnceScheduler(() => this._beginRespawnFall(), RESPAWN_EFFECT_DURATION)));
1114
+ this._hopController = this._register(( new ChatPetHopController({
1115
+ onDirectionChange: direction => this._button.element.dataset.hopDirection = direction < 0 ? "left" : "right",
1116
+ onMove: delta => {
1117
+ this._setHorizontalPosition(this._getCurrentLeft() + delta);
1118
+ this._updateVerticalPosition();
1119
+ },
1120
+ onStart: () => {
1121
+ if (this._transientState.get() === "jump") {
1122
+ this._renderState("jump", true);
1123
+ } else {
1124
+ this._transientState.set("jump", undefined);
1125
+ }
1126
+ },
1127
+ onReducedMotionStart: () => this._transientState.set("jump", undefined),
1128
+ onRequest: () => this._transientScheduler.schedule(HOP_IDLE_DEBOUNCE)
1129
+ })));
1130
+ this._contextMenuActions = this._register(( new MutableDisposable()));
1131
+ this._cursorSamples = [];
1132
+ this._cursorContactingPet = false;
1133
+ this._mouseBounceArmed = false;
1134
+ this._mouseBounceAvailableAt = 0;
1135
+ this._bounceCount = 0;
1136
+ this._bounceResultVisible = false;
1137
+ this._renderGeneration = 0;
1138
+ this._accessoryGeneration = 0;
1139
+ this._activeFrameIndex = 0;
1140
+ this._failedAccessorySources = ( new Set());
1141
+ this._motionReduced = false;
1142
+ this._enabled = false;
1143
+ this._busy = false;
1144
+ this._enablementInitialized = false;
1145
+ this._positionInitialized = false;
1146
+ this._hasCustomPosition = false;
1147
+ this._suppressNextPointerClick = false;
1148
+ this._contextMenuVisible = false;
1149
+ this._fallLandsOnPlatform = false;
1150
+ this._throwGeometryDirty = false;
1151
+ this._respawnPhase = "none";
1152
+ this._scale = 1;
1153
+ this.parent = host.parent;
1154
+ this.dragBounds = host.dragBounds;
1155
+ this.movementBounds = host.movementBounds;
1156
+ this._host = observableValue(this, host);
1157
+ this._variant = this.chatPetService.variant.get();
1158
+ this._selectedAccessory = this.chatPetService.selectedAccessory.get();
1159
+ this.parent.classList.add("chat-pet-host");
1160
+ this._overlay = $(`.${CHAT_PET_OVERLAY_CLASS}`);
1161
+ this.parent.prepend(this._overlay);
1162
+ this._register(toDisposable(() => {
1163
+ this.parent.classList.remove("chat-pet-host");
1164
+ this._overlay.remove();
1165
+ }));
1166
+ this._button = this._register(( new Button(this._overlay, {
1167
+ ariaLabel: this._getAriaLabel(false, false)
1168
+ })));
1169
+ this._button.element.classList.add("chat-pet-button");
1170
+ this._button.element.dataset.facing = this._facingController.direction;
1171
+ this._visual = append(this._button.element, $(".chat-pet-visual"));
1172
+ this._bounceCounter = append(this._overlay, $("span.chat-pet-bounce-counter.hidden", {
1173
+ "aria-hidden": "true"
1174
+ }));
1175
+ this._confettiAnchor = append(this._overlay, $(".chat-pet-confetti-anchor", {
1176
+ "aria-hidden": "true"
1177
+ }));
1178
+ const respawnEffectCanvas = append(
1179
+ this._overlay,
1180
+ $("canvas.chat-pet-canvas.chat-pet-respawn-effect.hidden")
1181
+ );
1182
+ respawnEffectCanvas.width = CHAT_PET_SOURCE_SIZE;
1183
+ respawnEffectCanvas.height = CHAT_PET_SOURCE_SIZE;
1184
+ respawnEffectCanvas.setAttribute("aria-hidden", "true");
1185
+ const respawnEffectImage = append(this._overlay, $("img.chat-pet-spritesheet"));
1186
+ respawnEffectImage.alt = "";
1187
+ respawnEffectImage.setAttribute("aria-hidden", "true");
1188
+ this._respawnEffect = {
1189
+ container: respawnEffectCanvas,
1190
+ image: respawnEffectImage,
1191
+ canvas: respawnEffectCanvas
1192
+ };
1193
+ this._register(
1194
+ addDisposableListener(respawnEffectImage, "load", () => this._startRespawnEffectAnimation())
1195
+ );
1196
+ this._sprites = [0, 1].map(() => {
1197
+ const container = append(this._visual, $(".chat-pet-sprite.hidden"));
1198
+ const canvas = append(container, $("canvas.chat-pet-canvas"));
1199
+ canvas.width = CHAT_PET_SOURCE_SIZE;
1200
+ canvas.height = CHAT_PET_SOURCE_SIZE;
1201
+ canvas.setAttribute("aria-hidden", "true");
1202
+ const image = append(container, $("img.chat-pet-spritesheet"));
1203
+ image.alt = "";
1204
+ image.setAttribute("aria-hidden", "true");
1205
+ const accessoryImages = [0, 1].map(() => {
1206
+ const accessoryImage = append(container, $("img.chat-pet-spritesheet"));
1207
+ accessoryImage.alt = "";
1208
+ accessoryImage.setAttribute("aria-hidden", "true");
1209
+ return accessoryImage;
1210
+ });
1211
+ const sprite = {
1212
+ container,
1213
+ image,
1214
+ accessoryImages,
1215
+ canvas
1216
+ };
1217
+ this._register(
1218
+ addDisposableListener(image, "load", () => this._onBodyImageLoad(sprite))
1219
+ );
1220
+ this._register(
1221
+ addDisposableListener(image, "error", () => this._onBodyImageError(sprite))
1222
+ );
1223
+ for (const accessoryImage of accessoryImages) {
1224
+ this._register(addDisposableListener(
1225
+ accessoryImage,
1226
+ "load",
1227
+ () => this._onAccessoryImageLoad(sprite, accessoryImage)
1228
+ ));
1229
+ this._register(addDisposableListener(
1230
+ accessoryImage,
1231
+ "error",
1232
+ () => this._onAccessoryImageError(sprite, accessoryImage)
1233
+ ));
1234
+ }
1235
+ return sprite;
1236
+ });
1237
+ this._eyes = append(this._visual, $(".chat-pet-eyes"));
1238
+ this._eyes.setAttribute("aria-hidden", "true");
1239
+ for (const side of ["left", "right"]) {
1240
+ const eye = append(this._eyes, $(`.chat-pet-eye.${side}`));
1241
+ this._pupils.push(append(eye, $(".chat-pet-pupil")));
1242
+ }
1243
+ this._blinkController = this._register(( new ChatPetBlinkController(blinking => this._eyes.classList.toggle("blink", blinking))));
1244
+ const targetDocument = getWindow(this._button.element).document;
1245
+ this._register(addDisposableListener(
1246
+ targetDocument,
1247
+ "visibilitychange",
1248
+ () => this._updateEyes(this._renderedState)
1249
+ ));
1250
+ this._eyeAccessoryContainer = append(this._visual, $(".chat-pet-eye-accessory.hidden"));
1251
+ this._eyeAccessory = append(this._eyeAccessoryContainer, $("canvas.chat-pet-eye-accessory-canvas"));
1252
+ this._eyeAccessory.width = CHAT_PET_SOURCE_SIZE;
1253
+ this._eyeAccessory.height = CHAT_PET_SOURCE_SIZE;
1254
+ this._eyeAccessory.setAttribute("aria-hidden", "true");
1255
+ const speechBubbleContainer = append(this._visual, $(".chat-pet-speech-bubble.hidden"));
1256
+ const speechBubbleCanvas = append(
1257
+ speechBubbleContainer,
1258
+ $("canvas.chat-pet-canvas.chat-pet-speech-canvas")
1259
+ );
1260
+ speechBubbleCanvas.width = CHAT_PET_SOURCE_SIZE;
1261
+ speechBubbleCanvas.height = CHAT_PET_SOURCE_SIZE;
1262
+ speechBubbleCanvas.setAttribute("aria-hidden", "true");
1263
+ const speechBubbleImage = append(speechBubbleContainer, $("img.chat-pet-spritesheet"));
1264
+ speechBubbleImage.alt = "";
1265
+ speechBubbleImage.setAttribute("aria-hidden", "true");
1266
+ this._speechBubble = {
1267
+ container: speechBubbleContainer,
1268
+ image: speechBubbleImage,
1269
+ canvas: speechBubbleCanvas
1270
+ };
1271
+ this._resizeObserver = this._register(new DisposableResizeObserver(
1272
+ "ChatPetWidget.dragBounds",
1273
+ () => this._handleHostLayoutChange(),
1274
+ getWindow(this._button.element),
1275
+ {
1276
+ resizeObserverCtor
1277
+ }
1278
+ ));
1279
+ this._observeHost(host);
1280
+ if (this._getHorizontalBounds() !== undefined) {
1281
+ this._restoreHorizontalPosition();
1282
+ this._updateVerticalPosition();
1283
+ this._updateSpeechBubblePosition();
1284
+ }
1285
+ this._register(addDisposableListener(
1286
+ speechBubbleImage,
1287
+ "load",
1288
+ () => this._updateSpeechBubble(this._renderedState, true)
1289
+ ));
1290
+ this._gazeScheduler = this._register(
1291
+ new AnimationFrameScheduler(this._button.element, () => this._updateGaze())
1292
+ );
1293
+ this._register(addDisposableListener(
1294
+ getWindow(this._button.element).document,
1295
+ EventType.POINTER_MOVE,
1296
+ event => {
1297
+ this._trackCursor(event);
1298
+ if (this._enabled && doesChatPetStateTrackCursor(this._renderedState)) {
1299
+ this._gazeScheduler.schedule();
1300
+ }
1301
+ }
1302
+ ));
1303
+ const onAnimationComplete = event => {
1304
+ if (event.animationName === "chat-pet-enter") {
1305
+ this._button.element.classList.remove("entering");
1306
+ } else if (event.animationName === "chat-pet-exit" && !this._enabled) {
1307
+ this._finishDisable();
1308
+ } else if (event.animationName === "chat-pet-yapping-fall" && !this._isDragging.get() && event.target === this._activeSprite?.container && this._button.element.dataset.state === "yapping") {
1309
+ this._transientState.set("yappingMouthOpen", undefined);
1310
+ } else if ((event.animationName === "chat-pet-eye-blink" || event.animationName === "chat-pet-tall-eye-blink") && event.target === this._pupils[0]) {
1311
+ this._blinkController.onAnimationComplete();
1312
+ }
1313
+ };
1314
+ this._register(
1315
+ addDisposableListener(this._button.element, EventType.ANIMATION_END, onAnimationComplete)
1316
+ );
1317
+ this._register(
1318
+ addDisposableListener(this._button.element, "animationcancel", onAnimationComplete)
1319
+ );
1320
+ const onTransitionComplete = event => {
1321
+ if (event.propertyName === "top" && this._button.element.classList.contains("falling")) {
1322
+ this._finishFall();
1323
+ } else if (event.target === this._button.element && event.propertyName === "transform") {
1324
+ this._button.element.classList.remove("returning-from-run");
1325
+ this._updateRunLayer();
1326
+ }
1327
+ };
1328
+ this._register(
1329
+ addDisposableListener(this._button.element, "transitionend", onTransitionComplete)
1330
+ );
1331
+ this._register(
1332
+ addDisposableListener(this._button.element, "transitioncancel", onTransitionComplete)
1333
+ );
1334
+ this._register(addDisposableListener(
1335
+ this._button.element,
1336
+ EventType.POINTER_DOWN,
1337
+ event => this._startDrag(event)
1338
+ ));
1339
+ this._register(addDisposableListener(
1340
+ this._button.element,
1341
+ EventType.KEY_DOWN,
1342
+ event => this._onKeyDown(event)
1343
+ ));
1344
+ this._register(
1345
+ addDisposableListener(this._button.element, EventType.CONTEXT_MENU, event => {
1346
+ if (!this._enabled) {
1347
+ return;
1348
+ }
1349
+ this._dismissBounceResult();
1350
+ EventHelper.stop(event, true);
1351
+ this._showContextMenu(event);
1352
+ })
1353
+ );
1354
+ this._register(autorun(reader => {
1355
+ const currentHost = this._host.read(reader);
1356
+ reader.store.add(currentHost.inputChanged(() => {
1357
+ if (this._enabled && !this.chatPetService.onTheRun.read(undefined)) {
1358
+ this._wake();
1359
+ }
1360
+ }));
1361
+ }));
1362
+ this._register(this._button.onDidClick(e => {
1363
+ EventHelper.stop(e, true);
1364
+ this._dragMonitor.stopMonitoring(false);
1365
+ if (this._isAirborne()) {
1366
+ if (e.type === EventType.KEY_DOWN) {
1367
+ const bounds = this._button.element.getBoundingClientRect();
1368
+ this._bounceAirbornePet(bounds.left + bounds.width / 2, {
1369
+ x: 0,
1370
+ y: 0
1371
+ });
1372
+ }
1373
+ return;
1374
+ }
1375
+ if (this._contextMenuVisible) {
1376
+ return;
1377
+ }
1378
+ if (this._suppressNextPointerClick && e.type !== EventType.KEY_DOWN) {
1379
+ this._suppressNextPointerClick = false;
1380
+ this._clickSuppressionScheduler.cancel();
1381
+ return;
1382
+ }
1383
+ if (this._transientState.get() === "achievementUnlocked") {
1384
+ this._transientScheduler.cancel();
1385
+ this._transientState.set(undefined, undefined);
1386
+ void this.commandService.executeCommand(CHAT_PET_OPEN_ACHIEVEMENTS_COMMAND_ID);
1387
+ return;
1388
+ }
1389
+ if (this.chatPetService.onTheRun.get()) {
1390
+ this._transientState.set(undefined, undefined);
1391
+ this.chatPetService.setOnTheRun(false);
1392
+ return;
1393
+ }
1394
+ const wasSleeping = this._idleExpired.get() || this._renderedState === "sleep";
1395
+ if (wasSleeping) {
1396
+ this._wake();
1397
+ }
1398
+ if (wasSleeping || this._transientState.get() === "waking") {
1399
+ status(( localize(11885, "The VS Code pet woke up")));
1400
+ return;
1401
+ }
1402
+ const interaction = getChatPetClickInteraction(Math.random(), this._lastClickInteraction);
1403
+ this._lastClickInteraction = interaction;
1404
+ this._showTransientState(interaction);
1405
+ switch (interaction) {
1406
+ case "buttonPress":
1407
+ status(( localize(11886, "The VS Code pet pressed its button")));
1408
+ break;
1409
+ case "complete":
1410
+ status(( localize(11887, "The VS Code pet did a rare spin")));
1411
+ break;
1412
+ case "love":
1413
+ status(( localize(11888, "The VS Code pet feels loved")));
1414
+ break;
1415
+ case "cool":
1416
+ status(( localize(11889, "The VS Code pet put on sunglasses")));
1417
+ break;
1418
+ case "yapping":
1419
+ status(( localize(11890, "The VS Code pet is yapping")));
1420
+ break;
1421
+ case "sing":
1422
+ status(( localize(11891, "The VS Code pet is singing")));
1423
+ break;
1424
+ case "speechless":
1425
+ status(( localize(11892, "The VS Code pet is speechless")));
1426
+ break;
1427
+ case "worry":
1428
+ status(( localize(11893, "The VS Code pet is worried")));
1429
+ break;
1430
+ }
1431
+ }));
1432
+ this._register(this.chatPetService.onDidUnlockAchievement(id => {
1433
+ if (!this._enabled || !this.hostService.hasFocus || this.chatPetService.onTheRun.get() || this._isDead.get()) {
1434
+ return;
1435
+ }
1436
+ this._showTransientState("achievementUnlocked", false);
1437
+ status(( localize(
1438
+ 11894,
1439
+ "Achievement unlocked: {0}. Activate the VS Code pet to view achievements.",
1440
+ getChatPetAchievement(id).title
1441
+ )));
1442
+ }));
1443
+ const motionReduced = observableFromEvent(
1444
+ this,
1445
+ this.accessibilityService.onDidChangeReducedMotion,
1446
+ () => this.accessibilityService.isMotionReduced()
1447
+ );
1448
+ const targetWindow = getWindow(this._button.element);
1449
+ const targetWindowId = getWindowId(targetWindow);
1450
+ const windowActive = observableValue(
1451
+ this,
1452
+ isChatPetWindowActive(getWindowId(getActiveWindow()), targetWindowId)
1453
+ );
1454
+ const ownershipChannel = this._register(( new BroadcastDataChannel(CHAT_PET_WINDOW_OWNERSHIP_CHANNEL)));
1455
+ this._register(ownershipChannel.onDidReceiveData((
1456
+ {
1457
+ windowId
1458
+ }
1459
+ ) => {
1460
+ windowActive.set(isChatPetWindowActive(windowId, targetWindowId), undefined);
1461
+ }));
1462
+ const claimWindowOwnership = () => {
1463
+ windowActive.set(true, undefined);
1464
+ ownershipChannel.postData({
1465
+ windowId: targetWindowId
1466
+ });
1467
+ };
1468
+ this._register(
1469
+ addDisposableListener(targetWindow, EventType.FOCUS, claimWindowOwnership)
1470
+ );
1471
+ this._register(this.hostService.onDidChangeActiveWindow(windowId => {
1472
+ if (isChatPetWindowActive(windowId, targetWindowId)) {
1473
+ claimWindowOwnership();
1474
+ } else {
1475
+ windowActive.set(false, undefined);
1476
+ }
1477
+ }));
1478
+ if (shouldClaimChatPetWindowOnConstruction(windowActive.get(), targetWindow.document.hasFocus())) {
1479
+ claimWindowOwnership();
1480
+ }
1481
+ this._register(autorun(reader => {
1482
+ const wasMotionReduced = this._motionReduced;
1483
+ this._motionReduced = motionReduced.read(reader);
1484
+ if (this._motionReduced) {
1485
+ this._blinkController.setEnabled(false);
1486
+ }
1487
+ if (!wasMotionReduced && this._motionReduced && this._button.element.classList.contains("throwing")) {
1488
+ this._finishThrow();
1489
+ }
1490
+ const serviceEnabled = this.chatPetService.enabled.read(reader);
1491
+ const isWindowActive = windowActive.read(reader);
1492
+ const scale = this.chatPetService.scale.read(reader);
1493
+ if (scale !== this._scale) {
1494
+ this._setScale(scale);
1495
+ }
1496
+ const enabled = isChatPetVisible(serviceEnabled, isWindowActive);
1497
+ const variant = this.chatPetService.variant.read(reader);
1498
+ const variantChanged = variant !== this._variant;
1499
+ this._variant = variant;
1500
+ const selectedAccessory = this.chatPetService.selectedAccessory.read(reader);
1501
+ const accessoryChanged = selectedAccessory !== this._selectedAccessory;
1502
+ this._selectedAccessory = selectedAccessory;
1503
+ if (accessoryChanged) {
1504
+ this._switchAccessory(selectedAccessory);
1505
+ }
1506
+ const onTheRun = this.chatPetService.onTheRun.read(reader);
1507
+ const isDead = this._isDead.read(reader);
1508
+ if (onTheRun || this._motionReduced) {
1509
+ this._button.element.classList.remove("returning-from-run");
1510
+ } else if (this._enabled && this._button.element.classList.contains("on-the-run")) {
1511
+ this._button.element.classList.add("returning-from-run");
1512
+ }
1513
+ this._button.element.classList.toggle("on-the-run", onTheRun);
1514
+ this._updateRunLayer();
1515
+ const currentHost = this._host.read(reader);
1516
+ const chatModel = currentHost.model.read(reader);
1517
+ const request = chatModel?.lastRequestObs.read(reader);
1518
+ const needsInput = !!request?.response?.isPendingConfirmation.read(reader);
1519
+ let confirmationAttentionExpired = this._confirmationAttentionExpired.read(reader);
1520
+ if (!needsInput) {
1521
+ this._confirmationAttentionScheduler.cancel();
1522
+ if (confirmationAttentionExpired) {
1523
+ confirmationAttentionExpired = false;
1524
+ this._confirmationAttentionExpired.set(false, undefined);
1525
+ }
1526
+ } else if (!confirmationAttentionExpired && !this._confirmationAttentionScheduler.isScheduled()) {
1527
+ this._confirmationAttentionScheduler.schedule();
1528
+ }
1529
+ const hasActiveRequest = chatModel?.hasActiveRequest.read(reader) ?? false;
1530
+ const inputHasContent = currentHost.hasInput.read(reader);
1531
+ this._busy = hasActiveRequest || needsInput;
1532
+ let idleExpired = this._idleExpired.read(reader);
1533
+ let transientState = this._transientState.read(reader);
1534
+ this._button.setAriaLabel(this._getAriaLabel(onTheRun, transientState === "achievementUnlocked"));
1535
+ const isDragging = this._isDragging.read(reader);
1536
+ if (!this._enablementInitialized || enabled !== this._enabled) {
1537
+ const wasInitialized = this._enablementInitialized;
1538
+ this._enablementInitialized = true;
1539
+ this._enabled = enabled;
1540
+ this._observeHost(this._host.read(undefined));
1541
+ if (enabled) {
1542
+ if (isDead) {
1543
+ this._showRespawnSequence();
1544
+ } else {
1545
+ this._startEnableAnimation();
1546
+ }
1547
+ } else if (wasInitialized) {
1548
+ if (serviceEnabled && !isWindowActive) {
1549
+ this._finishDisable();
1550
+ } else {
1551
+ this._startDisableAnimation();
1552
+ }
1553
+ } else {
1554
+ this._finishDisable();
1555
+ }
1556
+ }
1557
+ if (!enabled) {
1558
+ this._hopController.cancel();
1559
+ this._idleScheduler.cancel();
1560
+ this._transientScheduler.cancel();
1561
+ if (transientState !== undefined) {
1562
+ this._transientState.set(undefined, undefined);
1563
+ }
1564
+ if (this._motionReduced) {
1565
+ this._finishDisable();
1566
+ }
1567
+ return;
1568
+ }
1569
+ if (isDead) {
1570
+ this._hopController.cancel();
1571
+ this._idleScheduler.cancel();
1572
+ this._transientScheduler.cancel();
1573
+ this._showRespawnSequence();
1574
+ return;
1575
+ }
1576
+ if (onTheRun) {
1577
+ this._dismissBounceResult();
1578
+ this._hopController.cancel();
1579
+ this._idleScheduler.cancel();
1580
+ this._renderState("onTheRun", variantChanged);
1581
+ return;
1582
+ }
1583
+ if (this._busy) {
1584
+ this._idleScheduler.cancel();
1585
+ if (idleExpired) {
1586
+ idleExpired = false;
1587
+ this._idleExpired.set(false, undefined);
1588
+ transientState = this._beginWakeAnimation() ?? transientState;
1589
+ }
1590
+ } else if (!idleExpired && !this._idleScheduler.isScheduled()) {
1591
+ this._idleScheduler.schedule();
1592
+ }
1593
+ const baseState = getChatPetBaseState(
1594
+ hasActiveRequest,
1595
+ needsInput,
1596
+ confirmationAttentionExpired,
1597
+ inputHasContent,
1598
+ idleExpired
1599
+ );
1600
+ if (isChatPetYapState(transientState) && baseState !== "idle") {
1601
+ transientState = undefined;
1602
+ this._transientState.set(undefined, undefined);
1603
+ }
1604
+ const renderedState = getChatPetRenderedState(baseState, transientState, isDragging);
1605
+ if (shouldDismissChatPetBounceResult(renderedState)) {
1606
+ this._dismissBounceResult();
1607
+ }
1608
+ if (renderedState !== "jump" || this._motionReduced) {
1609
+ this._hopController.cancel();
1610
+ }
1611
+ this._renderState(renderedState, variantChanged, isDragging);
1612
+ }));
1613
+ this._register(autorun(reader => {
1614
+ const chatModel = this._host.read(reader).model.read(reader);
1615
+ const response = chatModel?.lastRequestObs.read(reader)?.response;
1616
+ if (!response) {
1617
+ return;
1618
+ }
1619
+ reader.store.add(response.onDidChange(e => {
1620
+ if (e.reason === "completedRequest" && !response.isCanceled) {
1621
+ this._showTransientState("buttonPress");
1622
+ }
1623
+ }));
1624
+ }));
1625
+ }
1626
+ setHost(host) {
1627
+ if (this._host.get() === host) {
1628
+ return;
1629
+ }
1630
+ this.parent.classList.remove("chat-pet-host");
1631
+ this.parent = host.parent;
1632
+ this.dragBounds = host.dragBounds;
1633
+ this.movementBounds = host.movementBounds;
1634
+ this.parent.classList.add("chat-pet-host");
1635
+ this.parent.prepend(this._overlay);
1636
+ this._observeHost(host);
1637
+ this._host.set(host, undefined);
1638
+ this._handleHostLayoutChange();
1639
+ }
1640
+ _observeHost(host) {
1641
+ const store = ( new DisposableStore());
1642
+ if (this._enabled) {
1643
+ store.add(this._resizeObserver.observe(host.dragBounds));
1644
+ store.add(this._resizeObserver.observe(host.movementBounds));
1645
+ store.add(this._resizeObserver.observe(host.parent));
1646
+ }
1647
+ store.add(host.onDidChangePlatform(() => this._updatePlatformPosition()));
1648
+ this._hostLayoutDisposables.value = store;
1649
+ }
1650
+ _handleHostLayoutChange() {
1651
+ if (!this._enabled || this._getHorizontalBounds() === undefined) {
1652
+ return;
1653
+ }
1654
+ if (!this._positionInitialized) {
1655
+ this._restoreHorizontalPosition();
1656
+ this._updateVerticalPosition();
1657
+ return;
1658
+ }
1659
+ this._updateSpeechBubblePosition();
1660
+ if (this._isDead.get()) {
1661
+ this._updateRespawnEffectPosition();
1662
+ } else if (this._isAirborne()) {
1663
+ if (this._button.element.classList.contains("throwing")) {
1664
+ this._throwGeometryDirty = true;
1665
+ }
1666
+ } else {
1667
+ this._updateRestingPosition();
1668
+ }
1669
+ }
1670
+ _updatePlatformPosition() {
1671
+ if (!this._enabled || this._isDead.get() || this._getHorizontalBounds() === undefined) {
1672
+ return;
1673
+ }
1674
+ if (this._isAirborne()) {
1675
+ if (this._button.element.classList.contains("throwing")) {
1676
+ this._throwGeometryDirty = true;
1677
+ }
1678
+ return;
1679
+ }
1680
+ this._updateRestingPosition();
1681
+ }
1682
+ _updateRestingPosition() {
1683
+ if (this._isDragging.get()) {
1684
+ return;
1685
+ }
1686
+ if (this._fallLandsOnPlatform) {
1687
+ if (this._hasCustomPosition) {
1688
+ this._setAnchoredPlatformPosition();
1689
+ } else {
1690
+ this._setDefaultPlatformPosition();
1691
+ }
1692
+ } else {
1693
+ if (this._hasCustomPosition) {
1694
+ this._setAnchoredHorizontalPosition();
1695
+ } else {
1696
+ this._setDefaultHorizontalPosition();
1697
+ }
1698
+ this._updateVerticalPosition();
1699
+ }
1700
+ }
1701
+ _startDrag(event) {
1702
+ if (!this._enabled || this._isDead.get() || this._isDragging.get() || this._isAirborne() || this.chatPetService.onTheRun.get() || event.button !== 0) {
1703
+ return;
1704
+ }
1705
+ this._wake();
1706
+ EventHelper.stop(event);
1707
+ this._button.element.focus();
1708
+ const targetWindow = getWindow(this._button.element);
1709
+ const startX = event.clientX;
1710
+ const startY = event.clientY;
1711
+ const pointerSamples = [{
1712
+ x: startX,
1713
+ y: startY,
1714
+ time: targetWindow.performance.now()
1715
+ }];
1716
+ const buttonBounds = this._button.element.getBoundingClientRect();
1717
+ const overlayBounds = this._overlay.getBoundingClientRect();
1718
+ const startLeft = buttonBounds.left - overlayBounds.left;
1719
+ const startTop = buttonBounds.top - overlayBounds.top;
1720
+ let didDrag = false;
1721
+ this._dragMonitor.startMonitoring(this._button.element, event.pointerId, event.buttons, moveEvent => {
1722
+ const deltaX = moveEvent.clientX - startX;
1723
+ const deltaY = moveEvent.clientY - startY;
1724
+ const sampleTime = targetWindow.performance.now();
1725
+ pointerSamples.push({
1726
+ x: moveEvent.clientX,
1727
+ y: moveEvent.clientY,
1728
+ time: sampleTime
1729
+ });
1730
+ while (pointerSamples.length > 2 && sampleTime - pointerSamples[0].time > THROW_VELOCITY_SAMPLE_DURATION) {
1731
+ pointerSamples.shift();
1732
+ }
1733
+ if (!didDrag && Math.hypot(deltaX, deltaY) < DRAG_THRESHOLD) {
1734
+ return;
1735
+ }
1736
+ if (!didDrag) {
1737
+ didDrag = true;
1738
+ this._button.element.classList.remove("entering");
1739
+ this._button.element.classList.add("dragging");
1740
+ this._spriteAnimation.clear();
1741
+ this._setDragPosition(startLeft, startTop);
1742
+ this._isDragging.set(true, undefined);
1743
+ }
1744
+ EventHelper.stop(moveEvent, true);
1745
+ this._trackCursor(moveEvent);
1746
+ this._setDragPosition(startLeft + deltaX, startTop + deltaY);
1747
+ }, browserEvent => {
1748
+ if (browserEvent instanceof targetWindow.PointerEvent) {
1749
+ this._trackCursor(browserEvent);
1750
+ }
1751
+ this._button.element.classList.remove("dragging", "resisting", "soft-resisting");
1752
+ if (didDrag) {
1753
+ this._suppressNextPointerClick = true;
1754
+ this._clickSuppressionScheduler.schedule();
1755
+ const throwVelocity = getChatPetThrowVelocity(pointerSamples, targetWindow.performance.now());
1756
+ if (!this._motionReduced && throwVelocity) {
1757
+ this._beginThrow(throwVelocity, false, CHAT_PET_MOUSE_BOUNCE_RELEASE_GRACE_DURATION);
1758
+ } else {
1759
+ this._beginFall(CHAT_PET_MOUSE_BOUNCE_RELEASE_GRACE_DURATION);
1760
+ }
1761
+ }
1762
+ });
1763
+ }
1764
+ _setDragPosition(left, top) {
1765
+ const overlayBounds = this._overlay.getBoundingClientRect();
1766
+ const movementBounds = this.movementBounds.getBoundingClientRect();
1767
+ const minimumLeft = movementBounds.left - overlayBounds.left;
1768
+ const maximumLeft = movementBounds.right - overlayBounds.left - this._button.element.offsetWidth;
1769
+ const minimumTop = movementBounds.top - overlayBounds.top;
1770
+ const maximumTop = movementBounds.bottom - overlayBounds.top - this._button.element.offsetHeight;
1771
+ const [clampedLeft, clampedTop] = getChatPetDragPosition(left, top, minimumLeft, maximumLeft, minimumTop, maximumTop);
1772
+ this._button.element.style.left = `${clampedLeft}px`;
1773
+ this._button.element.style.top = `${clampedTop}px`;
1774
+ this._button.element.style.right = "auto";
1775
+ this._button.element.style.bottom = "auto";
1776
+ this._hasCustomPosition = true;
1777
+ this._updateSpeechBubblePosition();
1778
+ if (this._button.element.classList.contains("dragging")) {
1779
+ this._updateDragWiggle();
1780
+ }
1781
+ }
1782
+ _getFallTarget() {
1783
+ const overlayBounds = this._overlay.getBoundingClientRect();
1784
+ const platformBounds = this._getPlatformBounds();
1785
+ const fallbackPlatformBounds = this._getPlatformBounds(false);
1786
+ const movementBounds = this.movementBounds.getBoundingClientRect();
1787
+ return getChatPetFallTarget(
1788
+ Number.parseFloat(this._button.element.style.left),
1789
+ Number.parseFloat(this._button.element.style.top),
1790
+ this._getDisplaySize(),
1791
+ this._getDisplaySize(),
1792
+ platformBounds.left - overlayBounds.left,
1793
+ platformBounds.right - overlayBounds.left,
1794
+ platformBounds.top - overlayBounds.top,
1795
+ movementBounds.bottom - overlayBounds.top,
1796
+ fallbackPlatformBounds.top - overlayBounds.top
1797
+ );
1798
+ }
1799
+ _updateDragWiggle() {
1800
+ const landsOnPlatform = this._getFallTarget().landsOnPlatform;
1801
+ this._button.element.classList.toggle("soft-resisting", landsOnPlatform);
1802
+ this._button.element.classList.toggle("resisting", !landsOnPlatform);
1803
+ }
1804
+ _getThrowGeometry(platformPetLeft) {
1805
+ const overlayBounds = this._overlay.getBoundingClientRect();
1806
+ const inputBounds = this.dragBounds.getBoundingClientRect();
1807
+ const movementBounds = this.movementBounds.getBoundingClientRect();
1808
+ const displaySize = this._getDisplaySize();
1809
+ const platformTop = platformPetLeft === undefined ? getChatPetPlatformTop(overlayBounds.top, inputBounds.top) : getChatPetProjectedPlatformTop(
1810
+ overlayBounds.top,
1811
+ inputBounds.top,
1812
+ overlayBounds.left,
1813
+ platformPetLeft,
1814
+ displaySize,
1815
+ petCenterX => this._host.get().getPlatformTop(petCenterX)
1816
+ );
1817
+ return {
1818
+ bounds: {
1819
+ minimumLeft: movementBounds.left - overlayBounds.left,
1820
+ maximumLeft: Math.max(
1821
+ movementBounds.left - overlayBounds.left,
1822
+ movementBounds.right - overlayBounds.left - displaySize
1823
+ ),
1824
+ minimumTop: movementBounds.top - overlayBounds.top
1825
+ },
1826
+ displaySize,
1827
+ inputTop: inputBounds.top,
1828
+ overlayLeft: overlayBounds.left,
1829
+ overlayTop: overlayBounds.top,
1830
+ platformLeft: inputBounds.left - overlayBounds.left,
1831
+ platformRight: inputBounds.right - overlayBounds.left,
1832
+ platformTop: platformTop - overlayBounds.top,
1833
+ floorTop: movementBounds.bottom - overlayBounds.top - displaySize
1834
+ };
1835
+ }
1836
+ _beginThrow(
1837
+ velocity,
1838
+ preserveBounceCount = false,
1839
+ mouseBounceDelay = 0,
1840
+ startWithBounceImpact = false
1841
+ ) {
1842
+ const targetWindow = getWindow(this._button.element);
1843
+ let geometry = this._getThrowGeometry();
1844
+ const buttonBounds = this._button.element.getBoundingClientRect();
1845
+ let motion = {
1846
+ left: buttonBounds.left - geometry.overlayLeft,
1847
+ top: buttonBounds.top - geometry.overlayTop,
1848
+ x: velocity.x,
1849
+ y: velocity.y
1850
+ };
1851
+ let rotation = 0;
1852
+ let wallImpact;
1853
+ let bounceImpactEndsAt;
1854
+ let startTime = targetWindow.performance.now();
1855
+ let lastFrameTime = startTime;
1856
+ if (!preserveBounceCount) {
1857
+ this._resetBounceCount();
1858
+ }
1859
+ this._cursorSamples.length = 0;
1860
+ this._mouseBounceAvailableAt = startTime + mouseBounceDelay;
1861
+ this._button.element.classList.remove("falling");
1862
+ this._button.element.style.transitionDuration = "";
1863
+ this._mouseBounceArmed = false;
1864
+ this._cursorContactingPet = this._cursorPosition !== undefined && isChatPetMouseContact(this._cursorPosition[0], this._cursorPosition[1], buttonBounds);
1865
+ if (velocity.x !== 0) {
1866
+ this._setFacingDirection(velocity.x < 0 ? "left" : "right");
1867
+ }
1868
+ this._transientScheduler.cancel();
1869
+ this._throwWallImpact = undefined;
1870
+ this._throwGeometryDirty = false;
1871
+ this._fallLandsOnPlatform = false;
1872
+ this._setThrowPosition(motion.left, motion.top);
1873
+ this._transientState.set("falling", undefined);
1874
+ this._isDragging.set(false, undefined);
1875
+ this._renderState("falling", true);
1876
+ this._button.element.classList.add("throwing");
1877
+ const beginBounceImpact = () => {
1878
+ const now = targetWindow.performance.now();
1879
+ startTime = now;
1880
+ lastFrameTime = now;
1881
+ bounceImpactEndsAt = now + CHAT_PET_WALL_IMPACT_DURATION;
1882
+ rotation = 0;
1883
+ this._button.element.style.transform = "";
1884
+ this._button.element.classList.add("bounce-impact");
1885
+ this._transientState.set("wallImpact", undefined);
1886
+ };
1887
+ this._throwBounceHandler = (pointerX, pointerVelocity, requireDescending, exactCollisionMotion) => {
1888
+ const now = targetWindow.performance.now();
1889
+ const collisionMotion = exactCollisionMotion ?? advanceChatPetThrow(
1890
+ motion,
1891
+ Math.min(THROW_MAX_FRAME_DURATION, Math.max(0, now - lastFrameTime)),
1892
+ geometry.bounds
1893
+ );
1894
+ if (!this._button.element.classList.contains("throwing") || wallImpact || bounceImpactEndsAt !== undefined || (requireDescending && !isChatPetMouseBounceEligible(collisionMotion.y))) {
1895
+ return false;
1896
+ }
1897
+ const bounds = this._button.element.getBoundingClientRect();
1898
+ motion = {
1899
+ ...collisionMotion,
1900
+ ...getChatPetMouseBounceVelocity(collisionMotion, pointerVelocity, pointerX, bounds.left, bounds.width)
1901
+ };
1902
+ this._throwWallImpact = undefined;
1903
+ beginBounceImpact();
1904
+ return true;
1905
+ };
1906
+ if (startWithBounceImpact) {
1907
+ beginBounceImpact();
1908
+ }
1909
+ const animationDisposables = ( new DisposableStore());
1910
+ const scheduledFrame = animationDisposables.add(( new MutableDisposable()));
1911
+ const scheduleFrame = () => {
1912
+ scheduledFrame.value = scheduleAtNextAnimationFrame(targetWindow, updateFrame);
1913
+ };
1914
+ const updateFrame = () => {
1915
+ if (this._throwAnimation.value !== animationDisposables) {
1916
+ return;
1917
+ }
1918
+ const now = targetWindow.performance.now();
1919
+ if (this._throwGeometryDirty) {
1920
+ geometry = this._getThrowGeometry();
1921
+ this._throwGeometryDirty = false;
1922
+ motion = {
1923
+ ...motion,
1924
+ left: getChatPetHorizontalPosition(motion.left, geometry.bounds.minimumLeft, geometry.bounds.maximumLeft)
1925
+ };
1926
+ this._setThrowPosition(motion.left, motion.top);
1927
+ }
1928
+ if (shouldSettleChatPetThrow(startTime, now, motion.top, motion.y, geometry.floorTop)) {
1929
+ this._finishThrow();
1930
+ return;
1931
+ }
1932
+ if (bounceImpactEndsAt !== undefined) {
1933
+ if (now < bounceImpactEndsAt) {
1934
+ scheduleFrame();
1935
+ return;
1936
+ }
1937
+ bounceImpactEndsAt = undefined;
1938
+ lastFrameTime = now;
1939
+ this._button.element.classList.remove("bounce-impact");
1940
+ this._transientState.set("falling", undefined);
1941
+ scheduleFrame();
1942
+ return;
1943
+ }
1944
+ if (wallImpact) {
1945
+ if (now < wallImpact.endsAt) {
1946
+ scheduleFrame();
1947
+ return;
1948
+ }
1949
+ motion = {
1950
+ ...motion,
1951
+ ...getChatPetWallReboundVelocity(motion)
1952
+ };
1953
+ rotation = wallImpact.wall === "left" ? -90 : 90;
1954
+ this._button.element.style.transform = `rotate(${rotation}deg)`;
1955
+ wallImpact = undefined;
1956
+ lastFrameTime = now;
1957
+ this._transientState.set("falling", undefined);
1958
+ scheduleFrame();
1959
+ return;
1960
+ }
1961
+ const elapsed = Math.min(THROW_MAX_FRAME_DURATION, Math.max(0, now - lastFrameTime));
1962
+ lastFrameTime = now;
1963
+ const previousMotion = motion;
1964
+ const step = advanceChatPetThrow(previousMotion, elapsed, geometry.bounds);
1965
+ const platformTop = getChatPetSweptPlatformTop(
1966
+ geometry.overlayTop,
1967
+ geometry.inputTop,
1968
+ geometry.overlayLeft,
1969
+ previousMotion.left,
1970
+ previousMotion.top,
1971
+ step.left,
1972
+ step.top,
1973
+ geometry.displaySize,
1974
+ geometry.displaySize,
1975
+ petCenterX => this._host.get().getPlatformTop(petCenterX)
1976
+ ) - geometry.overlayTop;
1977
+ const landing = getChatPetThrowLanding(
1978
+ previousMotion.left,
1979
+ previousMotion.top,
1980
+ step.left,
1981
+ step.top,
1982
+ geometry.displaySize,
1983
+ geometry.displaySize,
1984
+ geometry.platformLeft,
1985
+ geometry.platformRight,
1986
+ platformTop,
1987
+ geometry.floorTop
1988
+ );
1989
+ const landingTime = landing && step.top !== previousMotion.top ? (landing.top - previousMotion.top) / (step.top - previousMotion.top) : undefined;
1990
+ const cursorPosition = this._cursorPosition;
1991
+ const mouseCollisionTime = isChatPetMouseBounceGracePeriodElapsed(now, this._mouseBounceAvailableAt) && this._mouseBounceArmed && !this._cursorContactingPet && cursorPosition ? getChatPetMouseCollisionTime(
1992
+ geometry.overlayLeft + previousMotion.left,
1993
+ geometry.overlayTop + previousMotion.top,
1994
+ geometry.overlayLeft + step.left,
1995
+ geometry.overlayTop + step.top,
1996
+ geometry.displaySize,
1997
+ geometry.displaySize,
1998
+ cursorPosition[0],
1999
+ cursorPosition[1]
2000
+ ) : undefined;
2001
+ if (cursorPosition && mouseCollisionTime !== undefined && (landingTime === undefined || mouseCollisionTime < landingTime)) {
2002
+ motion = advanceChatPetThrow(previousMotion, elapsed * mouseCollisionTime, geometry.bounds);
2003
+ rotation = getChatPetThrowRotation(
2004
+ rotation,
2005
+ motion.left - previousMotion.left,
2006
+ motion.y,
2007
+ elapsed * mouseCollisionTime
2008
+ );
2009
+ this._setThrowPosition(motion.left, motion.top);
2010
+ if (isChatPetMouseBounceEligible(motion.y) && this._bounceAirbornePet(cursorPosition[0], this._getCursorVelocity(now), true, motion)) {
2011
+ this._cursorContactingPet = true;
2012
+ scheduleFrame();
2013
+ return;
2014
+ }
2015
+ }
2016
+ motion = step;
2017
+ rotation = getChatPetThrowRotation(rotation, motion.left - previousMotion.left, motion.y, elapsed);
2018
+ this._setThrowPosition(motion.left, motion.top);
2019
+ if (motion.y >= 0 && landing) {
2020
+ motion = {
2021
+ ...motion,
2022
+ left: landing.left,
2023
+ top: landing.top
2024
+ };
2025
+ this._setThrowPosition(motion.left, motion.top);
2026
+ this._finishThrow(true, landing);
2027
+ return;
2028
+ }
2029
+ if (step.wall) {
2030
+ this._throwWallImpact = step.wall;
2031
+ wallImpact = {
2032
+ wall: step.wall,
2033
+ endsAt: now + CHAT_PET_WALL_IMPACT_DURATION
2034
+ };
2035
+ this._setFacingDirection(step.wall);
2036
+ rotation = step.wall === "left" ? -90 : 90;
2037
+ this._button.element.style.transform = `rotate(${rotation}deg)`;
2038
+ this._transientState.set("wallImpact", undefined);
2039
+ scheduleFrame();
2040
+ return;
2041
+ }
2042
+ this._button.element.style.transform = `rotate(${rotation}deg)`;
2043
+ scheduleFrame();
2044
+ };
2045
+ this._throwAnimation.value = animationDisposables;
2046
+ scheduleFrame();
2047
+ }
2048
+ _setThrowPosition(left, top) {
2049
+ this._button.element.style.left = `${left}px`;
2050
+ this._button.element.style.top = `${top}px`;
2051
+ this._button.element.style.right = "auto";
2052
+ this._button.element.style.bottom = "auto";
2053
+ this._hasCustomPosition = true;
2054
+ this._updateBounceCounterPosition();
2055
+ }
2056
+ _getThrowSettleTarget() {
2057
+ const geometry = this._getThrowGeometry(this._getCurrentLeft());
2058
+ return {
2059
+ top: geometry.platformTop - geometry.displaySize,
2060
+ landsOnPlatform: true
2061
+ };
2062
+ }
2063
+ _finishThrow(announce = true, target) {
2064
+ if (!this._button.element.classList.contains("throwing")) {
2065
+ return;
2066
+ }
2067
+ const resolvedTarget = target ?? this._getThrowSettleTarget();
2068
+ const wallImpact = this._throwWallImpact;
2069
+ this._throwBounceHandler = undefined;
2070
+ this._throwWallImpact = undefined;
2071
+ this._throwGeometryDirty = false;
2072
+ this._throwAnimation.clear();
2073
+ this._button.element.classList.remove("bounce-impact");
2074
+ this._button.element.style.transform = "";
2075
+ this._button.element.style.top = `${resolvedTarget.top}px`;
2076
+ this._button.element.getBoundingClientRect();
2077
+ this._button.element.classList.remove("throwing");
2078
+ this._fallLandsOnPlatform = resolvedTarget.landsOnPlatform;
2079
+ this._completeFall(announce, wallImpact);
2080
+ }
2081
+ _isAirborne() {
2082
+ return this._button.element.classList.contains("falling") || this._button.element.classList.contains("throwing");
2083
+ }
2084
+ _beginFall(mouseBounceDelay = 0) {
2085
+ const top = Number.parseFloat(this._button.element.style.top);
2086
+ const target = this._getFallTarget();
2087
+ this._resetBounceCount();
2088
+ this._cursorSamples.length = 0;
2089
+ this._mouseBounceAvailableAt = getWindow(this._button.element).performance.now() + mouseBounceDelay;
2090
+ this._transientScheduler.cancel();
2091
+ this._throwAnimation.clear();
2092
+ this._throwBounceHandler = undefined;
2093
+ this._throwWallImpact = undefined;
2094
+ this._throwGeometryDirty = false;
2095
+ this._button.element.style.transform = "";
2096
+ this._button.element.classList.remove("bounce-impact", "throwing");
2097
+ this._button.element.classList.remove("resisting", "soft-resisting");
2098
+ this._fallLandsOnPlatform = target.landsOnPlatform;
2099
+ this._transientState.set("falling", undefined);
2100
+ this._isDragging.set(false, undefined);
2101
+ this._renderState("falling", true);
2102
+ const bounds = this._button.element.getBoundingClientRect();
2103
+ this._cursorContactingPet = this._cursorPosition !== undefined && isChatPetMouseContact(this._cursorPosition[0], this._cursorPosition[1], bounds);
2104
+ this._button.element.style.transitionDuration = `${getChatPetFallDuration(target.top - top)}ms`;
2105
+ this._button.element.getBoundingClientRect();
2106
+ this._button.element.classList.add("falling");
2107
+ this._button.element.style.top = `${target.top}px`;
2108
+ if (this._motionReduced || Math.abs(target.top - top) <= POSITION_EPSILON) {
2109
+ this._finishFall();
2110
+ }
2111
+ }
2112
+ _finishFall(announce = true) {
2113
+ if (!this._button.element.classList.contains("falling")) {
2114
+ return;
2115
+ }
2116
+ this._button.element.classList.remove("falling");
2117
+ this._button.element.style.transitionDuration = "";
2118
+ this._completeFall(announce);
2119
+ }
2120
+ _completeFall(announce, wallImpact) {
2121
+ if (this._fallLandsOnPlatform) {
2122
+ const respawned = this._respawnPhase === "falling";
2123
+ this._respawnPhase = "none";
2124
+ this._respawnPosition = undefined;
2125
+ const left = this._getCurrentLeft();
2126
+ this._setPlatformPosition(left);
2127
+ if (announce) {
2128
+ this._showTransientState("splat");
2129
+ if (respawned) {
2130
+ status(( localize(11895, "The VS Code pet respawned")));
2131
+ } else if (shouldCelebrateChatPetBounceScore(this._bounceCount)) {
2132
+ status(( localize(
2133
+ 11896,
2134
+ "The VS Code pet landed with a {0}-bounce streak",
2135
+ this._bounceCount
2136
+ )));
2137
+ } else if (wallImpact === "left") {
2138
+ status(( localize(
2139
+ 11897,
2140
+ "The VS Code pet bounced off the left wall and landed on the chat input"
2141
+ )));
2142
+ } else if (wallImpact === "right") {
2143
+ status(( localize(
2144
+ 11898,
2145
+ "The VS Code pet bounced off the right wall and landed on the chat input"
2146
+ )));
2147
+ } else {
2148
+ status(( localize(11899, "The VS Code pet landed on the chat input")));
2149
+ }
2150
+ }
2151
+ this._showBounceResult();
2152
+ this._showBounceConfetti();
2153
+ return;
2154
+ }
2155
+ this._resetBounceCount();
2156
+ this._deathPosition = [
2157
+ Number.parseFloat(this._button.element.style.left),
2158
+ Number.parseFloat(this._button.element.style.top)
2159
+ ];
2160
+ this._respawnPhase = "none";
2161
+ this._respawnPosition = undefined;
2162
+ this._button.element.classList.add("hidden");
2163
+ this._button.element.tabIndex = -1;
2164
+ this._isDead.set(true, undefined);
2165
+ if (announce) {
2166
+ if (wallImpact === "left") {
2167
+ status(( localize(
2168
+ 11900,
2169
+ "The VS Code pet bounced off the left wall, fell off, and will respawn automatically"
2170
+ )));
2171
+ } else if (wallImpact === "right") {
2172
+ status(( localize(
2173
+ 11901,
2174
+ "The VS Code pet bounced off the right wall, fell off, and will respawn automatically"
2175
+ )));
2176
+ } else {
2177
+ status(( localize(11902, "The VS Code pet fell off and will respawn automatically")));
2178
+ }
2179
+ }
2180
+ }
2181
+ _showContextMenu(event) {
2182
+ this._contextMenuVisible = true;
2183
+ const onTheRun = this.chatPetService.onTheRun.get();
2184
+ const actions = ( new DisposableStore());
2185
+ this._contextMenuActions.value = actions;
2186
+ const achievements = actions.add(( new Action("chat.pet.achievements", ( localize(11903, "Achievements…")), undefined, true, () => this.commandService.executeCommand(CHAT_PET_OPEN_ACHIEVEMENTS_COMMAND_ID))));
2187
+ const stable = actions.add(( new Action("chat.pet.variant.stable", ( localize(11904, "Stable Colors")), undefined, true, () => this.chatPetService.setVariant("stable"))));
2188
+ stable.checked = this.chatPetService.variant.get() === "stable";
2189
+ const insiders = actions.add(( new Action("chat.pet.variant.insiders", ( localize(11905, "Insiders Colors")), undefined, true, () => this.chatPetService.setVariant("insiders"))));
2190
+ insiders.checked = this.chatPetService.variant.get() === "insiders";
2191
+ const grow = actions.add(( new Action("chat.pet.grow", ( localize(11906, "Grow")), undefined, true, () => {
2192
+ const scale = getChatPetScale(this._scale, CHAT_PET_SCALE_STEP);
2193
+ this.chatPetService.setScale(scale);
2194
+ status(( localize(11907, "VS Code pet size: {0} percent", Math.round(scale * 100))));
2195
+ })));
2196
+ const shrink = actions.add(( new Action("chat.pet.shrink", ( localize(11908, "Shrink")), undefined, this._scale > CHAT_PET_MIN_SCALE, () => {
2197
+ const scale = getChatPetScale(this._scale, -CHAT_PET_SCALE_STEP);
2198
+ this.chatPetService.setScale(scale);
2199
+ status(( localize(11909, "VS Code pet size: {0} percent", Math.round(scale * 100))));
2200
+ })));
2201
+ const resetSize = actions.add(( new Action("chat.pet.resetSize", ( localize(11910, "Reset Size")), undefined, this._scale !== CHAT_PET_DEFAULT_SCALE, () => {
2202
+ this.chatPetService.resetScale();
2203
+ status(( localize(11911, "VS Code pet size: {0} percent", CHAT_PET_DEFAULT_SCALE * 100)));
2204
+ })));
2205
+ const onTheRunAction = actions.add(( new Action("chat.pet.onTheRun", onTheRun ? ( localize(11912, "Come Back")) : ( localize(11913, "Go on the Run")), undefined, true, () => {
2206
+ this._transientState.set(undefined, undefined);
2207
+ this.chatPetService.setOnTheRun(!onTheRun);
2208
+ })));
2209
+ const interactionSeparator = ( new Separator());
2210
+ const appearanceSeparator = ( new Separator());
2211
+ this.contextMenuService.showContextMenu({
2212
+ getAnchor: () => ( new StandardMouseEvent(getWindow(this._button.element), event)),
2213
+ getActions: () => [
2214
+ achievements,
2215
+ onTheRunAction,
2216
+ interactionSeparator,
2217
+ grow,
2218
+ shrink,
2219
+ resetSize,
2220
+ appearanceSeparator,
2221
+ stable,
2222
+ insiders
2223
+ ],
2224
+ onHide: () => {
2225
+ this._contextMenuVisible = false;
2226
+ if (this._contextMenuActions.value === actions) {
2227
+ this._contextMenuActions.clear();
2228
+ }
2229
+ }
2230
+ });
2231
+ }
2232
+ _onKeyDown(event) {
2233
+ if (!this._isDragging.get()) {
2234
+ this._dragMonitor.stopMonitoring(false);
2235
+ }
2236
+ const hasPointerInteraction = this._isDragging.get() || this._dragMonitor.isMonitoring();
2237
+ if (!isChatPetKeyboardInteractionEnabled(
2238
+ this._enabled,
2239
+ this._isDead.get(),
2240
+ hasPointerInteraction,
2241
+ this._isAirborne(),
2242
+ this.chatPetService.onTheRun.get()
2243
+ )) {
2244
+ return;
2245
+ }
2246
+ const keyboardEvent = ( new StandardKeyboardEvent(event));
2247
+ let direction = 0;
2248
+ let throwRequested = false;
2249
+ if (keyboardEvent.equals(KeyMod$1.Shift | KeyCode.LeftArrow)) {
2250
+ direction = -1;
2251
+ throwRequested = true;
2252
+ } else if (keyboardEvent.equals(KeyMod$1.Shift | KeyCode.RightArrow)) {
2253
+ direction = 1;
2254
+ throwRequested = true;
2255
+ } else if (keyboardEvent.equals(KeyCode.LeftArrow)) {
2256
+ direction = -1;
2257
+ } else if (keyboardEvent.equals(KeyCode.RightArrow)) {
2258
+ direction = 1;
2259
+ } else {
2260
+ return;
2261
+ }
2262
+ this._wake();
2263
+ keyboardEvent.preventDefault();
2264
+ keyboardEvent.stopPropagation();
2265
+ const facingDirection = direction < 0 ? "left" : "right";
2266
+ if (this._transientState.get() === "dizzy" || this._recordDirectionChange(facingDirection)) {
2267
+ return;
2268
+ }
2269
+ this._setFacingDirection(facingDirection);
2270
+ if (throwRequested && !this._motionReduced) {
2271
+ this._beginThrow({
2272
+ x: direction * THROW_KEYBOARD_HORIZONTAL_VELOCITY,
2273
+ y: -420
2274
+ });
2275
+ status(direction < 0 ? ( localize(11914, "The VS Code pet was thrown toward the left wall")) : ( localize(11915, "The VS Code pet was thrown toward the right wall")));
2276
+ return;
2277
+ }
2278
+ this._hopController.request(direction, this._motionReduced);
2279
+ status(direction < 0 ? ( localize(11916, "VS Code pet moved left")) : ( localize(11917, "VS Code pet moved right")));
2280
+ }
2281
+ _getAriaLabel(onTheRun, achievementUnlocked) {
2282
+ return achievementUnlocked ? ( localize(11918, "Open pet achievements. A new achievement is unlocked.")) : onTheRun ? ( localize(11919, "Bring back the VS Code pet")) : ( localize(
2283
+ 11920,
2284
+ "Interact with the VS Code pet. Drag it around the chat, or flick it toward either side to throw it. While it is falling, catch it with the pointer to bounce it; while it is airborne, press Enter or Space to bounce it. Use the left and right arrow keys to make it hop, or hold Shift to throw it toward a wall. Use the context menu to put it on the run."
2285
+ ));
2286
+ }
2287
+ _getCurrentLeft() {
2288
+ return this._button.element.offsetLeft;
2289
+ }
2290
+ _getDisplaySize() {
2291
+ return CHAT_PET_SOURCE_SIZE / 2 * this._scale;
2292
+ }
2293
+ _setScale(scale) {
2294
+ this._scale = scale;
2295
+ const displaySize = this._getDisplaySize();
2296
+ this._button.element.style.width = `${displaySize}px`;
2297
+ this._button.element.style.height = `${displaySize}px`;
2298
+ this._visual.style.transform = `scale(${scale})`;
2299
+ this._updateBounceCounterPosition();
2300
+ if (this._button.element.classList.contains("throwing")) {
2301
+ this._throwGeometryDirty = true;
2302
+ }
2303
+ if (!this._enabled || this._isDead.get() || this._isDragging.get() || this._isAirborne()) {
2304
+ return;
2305
+ }
2306
+ this._updateRestingPosition();
2307
+ }
2308
+ _setHorizontalPosition(left) {
2309
+ const bounds = this._getHorizontalBounds();
2310
+ if (!bounds) {
2311
+ return false;
2312
+ }
2313
+ return this._applyHorizontalPosition(left, bounds, true);
2314
+ }
2315
+ _setAnchoredHorizontalPosition() {
2316
+ const bounds = this._getHorizontalBounds();
2317
+ if (!bounds) {
2318
+ return;
2319
+ }
2320
+ const left = this._horizontalAnchor ? getChatPetAnchoredHorizontalPosition(this._horizontalAnchor, bounds.minimumLeft, bounds.maximumLeft) : this._getCurrentLeft();
2321
+ this._applyHorizontalPosition(left, bounds, false);
2322
+ }
2323
+ _applyHorizontalPosition(left, bounds, updateAnchor) {
2324
+ const {
2325
+ minimumLeft,
2326
+ maximumLeft
2327
+ } = bounds;
2328
+ const clampedLeft = getChatPetHorizontalPosition(left, minimumLeft, maximumLeft);
2329
+ this._button.element.style.left = `${clampedLeft}px`;
2330
+ this._button.element.style.right = "auto";
2331
+ this._positionInitialized = true;
2332
+ this._hasCustomPosition = true;
2333
+ if (updateAnchor) {
2334
+ this._horizontalAnchor = getChatPetHorizontalAnchor(clampedLeft, minimumLeft, maximumLeft);
2335
+ const relativePosition = getChatPetRelativeHorizontalPosition(clampedLeft, minimumLeft, maximumLeft);
2336
+ if (relativePosition !== undefined) {
2337
+ this.chatPetService.setHorizontalPosition(relativePosition);
2338
+ }
2339
+ }
2340
+ this._updateSpeechBubblePosition();
2341
+ return clampedLeft !== left;
2342
+ }
2343
+ _setDefaultHorizontalPosition() {
2344
+ const bounds = this._getHorizontalBounds();
2345
+ if (!bounds) {
2346
+ return;
2347
+ }
2348
+ const {
2349
+ minimumLeft,
2350
+ maximumLeft
2351
+ } = bounds;
2352
+ this._button.element.style.left = `${getChatPetDefaultHorizontalPosition(minimumLeft, maximumLeft)}px`;
2353
+ this._button.element.style.right = "auto";
2354
+ this._positionInitialized = true;
2355
+ this._hasCustomPosition = false;
2356
+ this._horizontalAnchor = undefined;
2357
+ this._updateSpeechBubblePosition();
2358
+ }
2359
+ _getHorizontalBounds() {
2360
+ const overlayBounds = this._overlay.getBoundingClientRect();
2361
+ const inputBounds = this.dragBounds.getBoundingClientRect();
2362
+ if (overlayBounds.width <= 0 || inputBounds.width <= 0) {
2363
+ return undefined;
2364
+ }
2365
+ return {
2366
+ minimumLeft: inputBounds.left - overlayBounds.left,
2367
+ maximumLeft: inputBounds.right - overlayBounds.left - this._getDisplaySize()
2368
+ };
2369
+ }
2370
+ _getPlatformBounds(includeHorizontalPlatform = true) {
2371
+ const hostBounds = this._overlay.getBoundingClientRect();
2372
+ const inputBounds = this.dragBounds.getBoundingClientRect();
2373
+ const petCenterX = includeHorizontalPlatform ? hostBounds.left + this._getCurrentLeft() + this._getDisplaySize() / 2 : undefined;
2374
+ return {
2375
+ left: inputBounds.left,
2376
+ right: inputBounds.right,
2377
+ top: getChatPetPlatformTop(
2378
+ hostBounds.top,
2379
+ inputBounds.top,
2380
+ this._host.get().getPlatformTop(petCenterX)
2381
+ )
2382
+ };
2383
+ }
2384
+ _updateRunLayer() {
2385
+ this._overlay.classList.toggle(
2386
+ CHAT_PET_RUN_LAYER_CLASS,
2387
+ this._button.element.classList.contains("on-the-run") || this._button.element.classList.contains("returning-from-run")
2388
+ );
2389
+ }
2390
+ _updateVerticalPosition() {
2391
+ const overlayBounds = this._overlay.getBoundingClientRect();
2392
+ const platformTop = this._getPlatformBounds().top;
2393
+ this._button.element.style.top = "auto";
2394
+ this._button.element.style.bottom = `calc(100% - ${platformTop - overlayBounds.top}px)`;
2395
+ }
2396
+ _setPlatformPosition(left) {
2397
+ this._setHorizontalPosition(left);
2398
+ this._updatePlatformVerticalPosition();
2399
+ this._updateBounceCounterPosition();
2400
+ }
2401
+ _setAnchoredPlatformPosition() {
2402
+ this._setAnchoredHorizontalPosition();
2403
+ this._updatePlatformVerticalPosition();
2404
+ }
2405
+ _updatePlatformVerticalPosition() {
2406
+ const overlayBounds = this._overlay.getBoundingClientRect();
2407
+ const platformBounds = this._getPlatformBounds();
2408
+ this._button.element.style.top = `${platformBounds.top - overlayBounds.top - this._getDisplaySize()}px`;
2409
+ this._button.element.style.bottom = "auto";
2410
+ }
2411
+ _setDefaultPlatformPosition() {
2412
+ this._setDefaultHorizontalPosition();
2413
+ this._updatePlatformVerticalPosition();
2414
+ }
2415
+ _showRespawnSequence() {
2416
+ this._blinkController.setEnabled(false);
2417
+ this._button.element.classList.add("hidden");
2418
+ this._button.element.tabIndex = -1;
2419
+ const startsDespawning = this._respawnPhase === "none";
2420
+ if (startsDespawning) {
2421
+ this._respawnPhase = "despawning";
2422
+ }
2423
+ if (this._respawnPhase !== "despawning" && this._respawnPhase !== "respawning") {
2424
+ return;
2425
+ }
2426
+ this._respawnEffect.container.classList.remove("hidden");
2427
+ this._updateRespawnEffectPosition();
2428
+ this._startRespawnEffectAnimation();
2429
+ if (startsDespawning) {
2430
+ this._respawnEffectScheduler.schedule(
2431
+ this._motionReduced ? RESPAWN_EFFECT_REDUCED_MOTION_DURATION : RESPAWN_EFFECT_DURATION
2432
+ );
2433
+ }
2434
+ }
2435
+ _updateRespawnEffectPosition() {
2436
+ const overlayBounds = this._overlay.getBoundingClientRect();
2437
+ const movementBounds = this.movementBounds.getBoundingClientRect();
2438
+ const displaySize = this._getDisplaySize();
2439
+ let left;
2440
+ let top;
2441
+ if (this._respawnPhase === "despawning") {
2442
+ if (!this._deathPosition) {
2443
+ return;
2444
+ }
2445
+ const minimumLeft = movementBounds.left - overlayBounds.left;
2446
+ const maximumLeft = movementBounds.right - overlayBounds.left - displaySize;
2447
+ const minimumTop = movementBounds.top - overlayBounds.top;
2448
+ const maximumTop = movementBounds.bottom - overlayBounds.top - displaySize;
2449
+ [left, top] = getChatPetDragPosition(
2450
+ this._deathPosition[0],
2451
+ this._deathPosition[1],
2452
+ minimumLeft,
2453
+ maximumLeft,
2454
+ minimumTop,
2455
+ maximumTop
2456
+ );
2457
+ this._deathPosition = [left, top];
2458
+ } else if (this._respawnPhase === "respawning") {
2459
+ const inputBounds = this.dragBounds.getBoundingClientRect();
2460
+ const minimumLeft = inputBounds.left - overlayBounds.left;
2461
+ const maximumLeft = inputBounds.right - overlayBounds.left - displaySize;
2462
+ left = getChatPetDefaultHorizontalPosition(minimumLeft, maximumLeft);
2463
+ top = movementBounds.top - overlayBounds.top;
2464
+ this._respawnPosition = [left, top];
2465
+ } else {
2466
+ return;
2467
+ }
2468
+ this._respawnEffect.container.style.left = `${left}px`;
2469
+ this._respawnEffect.container.style.top = `${top}px`;
2470
+ }
2471
+ _showRespawnEffect() {
2472
+ if (!this._enabled || !this._isDead.get() || this._respawnPhase !== "despawning") {
2473
+ return;
2474
+ }
2475
+ this._respawnPhase = "respawning";
2476
+ this._respawnAnimation.clear();
2477
+ this._updateRespawnEffectPosition();
2478
+ this._startRespawnEffectAnimation();
2479
+ this._respawnFallScheduler.schedule(
2480
+ this._motionReduced ? RESPAWN_EFFECT_REDUCED_MOTION_DURATION : RESPAWN_EFFECT_DURATION
2481
+ );
2482
+ status(( localize(11921, "The VS Code pet is respawning")));
2483
+ }
2484
+ _startRespawnEffectAnimation() {
2485
+ if (this._respawnPhase !== "despawning" && this._respawnPhase !== "respawning") {
2486
+ return;
2487
+ }
2488
+ const sources = getRespawnSpriteSources(this._variant);
2489
+ const source = this._motionReduced ? sources.reducedMotion : sources.animated;
2490
+ if (!isChatPetImageSource(this._respawnEffect.image, source.url)) {
2491
+ this._respawnAnimation.clear();
2492
+ this._respawnEffect.image.removeAttribute("src");
2493
+ this._respawnEffect.image.src = source.url;
2494
+ return;
2495
+ }
2496
+ if (this._respawnEffect.image.complete && this._respawnEffect.image.naturalWidth > 0) {
2497
+ this._respawnAnimation.clear();
2498
+ this._startSpriteAnimation(
2499
+ source,
2500
+ this._respawnEffect,
2501
+ this._respawnAnimation,
2502
+ undefined,
2503
+ this._respawnPhase === "despawning"
2504
+ );
2505
+ }
2506
+ }
2507
+ _beginRespawnFall() {
2508
+ if (!this._enabled || !this._isDead.get() || this._respawnPhase !== "respawning") {
2509
+ return;
2510
+ }
2511
+ this._respawnPhase = "falling";
2512
+ this._resetBounceCount();
2513
+ this._respawnAnimation.clear();
2514
+ this._respawnEffect.container.classList.add("hidden");
2515
+ this._deathPosition = undefined;
2516
+ this._fallLandsOnPlatform = true;
2517
+ this._transientState.set("falling", undefined);
2518
+ this._button.element.classList.remove("falling", "throwing", "dragging", "resisting", "soft-resisting");
2519
+ this._button.element.style.transform = "";
2520
+ this._button.element.classList.remove("hidden");
2521
+ this._button.element.tabIndex = 0;
2522
+ if (!this._respawnPosition) {
2523
+ this._updateRespawnEffectPosition();
2524
+ }
2525
+ const [spawnLeft, spawnTop] = this._respawnPosition ?? [this._getCurrentLeft(), 0];
2526
+ this._button.element.style.left = `${spawnLeft}px`;
2527
+ this._button.element.style.right = "auto";
2528
+ this._hasCustomPosition = false;
2529
+ const overlayBounds = this._overlay.getBoundingClientRect();
2530
+ const platformBounds = this._getPlatformBounds();
2531
+ const startTop = spawnTop;
2532
+ const targetTop = platformBounds.top - overlayBounds.top - this._getDisplaySize();
2533
+ this._button.element.style.top = `${startTop}px`;
2534
+ this._button.element.style.bottom = "auto";
2535
+ this._button.element.style.transitionDuration = `${getChatPetFallDuration(targetTop - startTop)}ms`;
2536
+ this._renderState("falling", true);
2537
+ this._isDead.set(false, undefined);
2538
+ this._button.element.getBoundingClientRect();
2539
+ this._button.element.classList.add("falling");
2540
+ this._button.element.style.top = `${targetTop}px`;
2541
+ if (this._motionReduced || startTop === targetTop) {
2542
+ this._finishFall();
2543
+ }
2544
+ }
2545
+ _updateSpeechBubblePosition() {
2546
+ const buttonBounds = this._button.element.getBoundingClientRect();
2547
+ const inputBounds = this.dragBounds.getBoundingClientRect();
2548
+ this._button.element.classList.toggle(
2549
+ "speech-bubble-left",
2550
+ shouldPlaceChatPetSpeechBubbleLeft(this._renderedState, buttonBounds.right, inputBounds.right, this._scale)
2551
+ );
2552
+ const wideSpriteOffset = getChatPetWideSpriteHorizontalOffset(
2553
+ this._renderedState,
2554
+ this._facingController.direction,
2555
+ buttonBounds.left,
2556
+ buttonBounds.right,
2557
+ inputBounds.left,
2558
+ inputBounds.right,
2559
+ this._scale
2560
+ );
2561
+ setChatPetWideLayerOffset(wideSpriteOffset, [
2562
+ ...(this._activeSprite ? [this._activeSprite.container] : []),
2563
+ this._eyes,
2564
+ this._eyeAccessoryContainer
2565
+ ]);
2566
+ }
2567
+ _tryMouseBounce(now, previousCursorPosition) {
2568
+ if (!this._enabled || this._motionReduced || this._isDead.get() || !this._isAirborne() || !this._cursorPosition) {
2569
+ this._cursorContactingPet = false;
2570
+ return false;
2571
+ }
2572
+ if (!isChatPetMouseBounceGracePeriodElapsed(now, this._mouseBounceAvailableAt)) {
2573
+ const bounds = this._button.element.getBoundingClientRect();
2574
+ this._cursorContactingPet = isChatPetMouseContact(this._cursorPosition[0], this._cursorPosition[1], bounds);
2575
+ this._mouseBounceArmed = false;
2576
+ return false;
2577
+ }
2578
+ const bounds = this._button.element.getBoundingClientRect();
2579
+ let pointerX = this._cursorPosition[0];
2580
+ const currentlyContacting = isChatPetMouseContact(pointerX, this._cursorPosition[1], bounds);
2581
+ if (this._cursorContactingPet) {
2582
+ this._cursorContactingPet = currentlyContacting;
2583
+ this._mouseBounceArmed = !currentlyContacting;
2584
+ return false;
2585
+ }
2586
+ let contacting = currentlyContacting;
2587
+ if (!contacting && previousCursorPosition) {
2588
+ const collisionTime = getChatPetMouseCollisionTime(
2589
+ bounds.left - previousCursorPosition[0],
2590
+ bounds.top - previousCursorPosition[1],
2591
+ bounds.left - this._cursorPosition[0],
2592
+ bounds.top - this._cursorPosition[1],
2593
+ bounds.width,
2594
+ bounds.height,
2595
+ 0,
2596
+ 0
2597
+ );
2598
+ if (collisionTime !== undefined) {
2599
+ pointerX = previousCursorPosition[0] + (this._cursorPosition[0] - previousCursorPosition[0]) * collisionTime;
2600
+ contacting = true;
2601
+ }
2602
+ }
2603
+ if (!contacting) {
2604
+ this._cursorContactingPet = false;
2605
+ return false;
2606
+ }
2607
+ const bounced = this._bounceAirbornePet(pointerX, this._getCursorVelocity(now), true);
2608
+ this._cursorContactingPet = bounced;
2609
+ return bounced;
2610
+ }
2611
+ _trackCursor(event) {
2612
+ const now = getWindow(this._button.element).performance.now();
2613
+ const previousCursorPosition = this._cursorPosition;
2614
+ this._cursorPosition = [event.clientX, event.clientY];
2615
+ this._mouseBounceArmed = isChatPetMouseBounceGracePeriodElapsed(now, this._mouseBounceAvailableAt);
2616
+ this._cursorSamples.push({
2617
+ x: event.clientX,
2618
+ y: event.clientY,
2619
+ time: now
2620
+ });
2621
+ while (this._cursorSamples.length > 2 && (this._cursorSamples.length > POINTER_VELOCITY_SAMPLE_LIMIT || now - this._cursorSamples[0].time > THROW_VELOCITY_SAMPLE_DURATION)) {
2622
+ this._cursorSamples.shift();
2623
+ }
2624
+ this._tryMouseBounce(now, previousCursorPosition);
2625
+ }
2626
+ _getCursorVelocity(now) {
2627
+ return getChatPetThrowVelocity(this._cursorSamples, now) ?? {
2628
+ x: 0,
2629
+ y: 0
2630
+ };
2631
+ }
2632
+ _bounceAirbornePet(pointerX, pointerVelocity, requireDescending = false, collisionMotion) {
2633
+ if (!this._enabled || this._motionReduced || this._isDead.get()) {
2634
+ return false;
2635
+ }
2636
+ let bounced = false;
2637
+ if (this._button.element.classList.contains("throwing")) {
2638
+ bounced = this._throwBounceHandler?.(pointerX, pointerVelocity, requireDescending, collisionMotion) ?? false;
2639
+ } else if (this._button.element.classList.contains("falling")) {
2640
+ const bounds = this._button.element.getBoundingClientRect();
2641
+ const velocity = getChatPetMouseBounceVelocity({
2642
+ x: 0,
2643
+ y: 0
2644
+ }, pointerVelocity, pointerX, bounds.left, bounds.width);
2645
+ this._beginThrow(velocity, true, 0, true);
2646
+ bounced = true;
2647
+ }
2648
+ if (bounced) {
2649
+ this._bounceResultScheduler.cancel();
2650
+ this._mouseBounceArmed = false;
2651
+ this._bounceResultVisible = false;
2652
+ this._bounceCount++;
2653
+ this._bounceCounter.textContent = String(this._bounceCount);
2654
+ this._bounceCounter.classList.remove("hidden");
2655
+ this._updateBounceCounterPosition();
2656
+ status(( localize(11922, "VS Code pet bounce count: {0}", this._bounceCount)));
2657
+ }
2658
+ return bounced;
2659
+ }
2660
+ _updateBounceCounterPosition() {
2661
+ if (this._bounceCount === 0) {
2662
+ return;
2663
+ }
2664
+ const left = Number.parseFloat(this._button.element.style.left);
2665
+ const top = Number.parseFloat(this._button.element.style.top);
2666
+ if (!Number.isFinite(left) || !Number.isFinite(top)) {
2667
+ return;
2668
+ }
2669
+ this._bounceCounter.style.left = `${left + this._getDisplaySize()}px`;
2670
+ this._bounceCounter.style.top = `${top}px`;
2671
+ }
2672
+ _showBounceConfetti() {
2673
+ if (this._motionReduced || !shouldCelebrateChatPetBounceScore(this._bounceCount)) {
2674
+ return;
2675
+ }
2676
+ const overlayBounds = this._overlay.getBoundingClientRect();
2677
+ const petBounds = this._button.element.getBoundingClientRect();
2678
+ this._confettiAnchor.style.left = `${petBounds.left - overlayBounds.left}px`;
2679
+ this._confettiAnchor.style.top = `${petBounds.top - overlayBounds.top}px`;
2680
+ this._confettiAnchor.style.width = `${petBounds.width}px`;
2681
+ this._confettiAnchor.style.height = `${petBounds.height}px`;
2682
+ triggerConfettiAnimation(this._confettiAnchor);
2683
+ }
2684
+ _resetBounceCount() {
2685
+ this._bounceResultScheduler.cancel();
2686
+ this._bounceCount = 0;
2687
+ this._bounceResultVisible = false;
2688
+ this._cursorContactingPet = false;
2689
+ this._mouseBounceArmed = false;
2690
+ this._mouseBounceAvailableAt = 0;
2691
+ this._bounceCounter.textContent = "";
2692
+ this._bounceCounter.classList.add("hidden");
2693
+ }
2694
+ _showBounceResult() {
2695
+ this._cursorContactingPet = false;
2696
+ this._mouseBounceArmed = false;
2697
+ this._mouseBounceAvailableAt = 0;
2698
+ this._bounceResultVisible = this._bounceCount > 0;
2699
+ if (this._bounceResultVisible) {
2700
+ this._updateBounceCounterPosition();
2701
+ this._bounceResultScheduler.schedule();
2702
+ }
2703
+ }
2704
+ _dismissBounceResult() {
2705
+ if (this._bounceResultVisible) {
2706
+ this._resetBounceCount();
2707
+ }
2708
+ }
2709
+ _updateGaze() {
2710
+ if (!this._cursorPosition) {
2711
+ return;
2712
+ }
2713
+ const bounds = this._button.element.getBoundingClientRect();
2714
+ const facingDirection = this._facingController.update(this._cursorPosition[0], bounds.left + bounds.width / 2);
2715
+ if (this._button.element.dataset.facing !== facingDirection) {
2716
+ this._setFacingDirection(facingDirection);
2717
+ this._recordDirectionChange(facingDirection);
2718
+ }
2719
+ const [x, y] = getChatPetGazeDirection(
2720
+ this._cursorPosition[0],
2721
+ this._cursorPosition[1],
2722
+ bounds.left + bounds.width / 2,
2723
+ bounds.top + bounds.height / 2
2724
+ );
2725
+ for (const pupil of this._pupils) {
2726
+ pupil.style.transform = `translate(${x * 2}px, ${y * 2}px)`;
2727
+ }
2728
+ this._eyeAccessoryGazeOffset = getChatPetEyeAccessoryGazeOffset([x, y]);
2729
+ this._redrawEyeAccessory?.();
2730
+ }
2731
+ _snapFacingToCursor() {
2732
+ if (!this._cursorPosition) {
2733
+ return;
2734
+ }
2735
+ const bounds = this._button.element.getBoundingClientRect();
2736
+ this._setFacingDirection(
2737
+ this._facingController.snapToCursor(this._cursorPosition[0], bounds.left + bounds.width / 2)
2738
+ );
2739
+ }
2740
+ _setFacingDirection(direction) {
2741
+ const changed = this._button.element.dataset.facing !== direction;
2742
+ this._facingController.setDirection(direction);
2743
+ this._button.element.dataset.facing = direction;
2744
+ if (changed) {
2745
+ this._redrawActiveFrame?.();
2746
+ this._updateSpeechBubblePosition();
2747
+ }
2748
+ }
2749
+ _recordDirectionChange(direction) {
2750
+ if (!this._enabled || this._isDead.get() || this.chatPetService.onTheRun.get() || this._transientState.get() === "dizzy") {
2751
+ return false;
2752
+ }
2753
+ if (!this._directionChangeController.record(direction, getWindow(this._button.element).performance.now())) {
2754
+ return false;
2755
+ }
2756
+ this._setFacingDirection(direction);
2757
+ this._showTransientState("dizzy", false);
2758
+ status(( localize(11923, "The VS Code pet got dizzy")));
2759
+ return true;
2760
+ }
2761
+ _startEnableAnimation() {
2762
+ this._button.element.classList.remove("hidden", "exiting", "entering");
2763
+ this._button.element.tabIndex = 0;
2764
+ this._restoreHorizontalPosition();
2765
+ this._updateVerticalPosition();
2766
+ this._button.element.getBoundingClientRect();
2767
+ this._gazeScheduler.schedule();
2768
+ if (!this._motionReduced) {
2769
+ this._button.element.classList.add("entering");
2770
+ }
2771
+ }
2772
+ _restoreHorizontalPosition() {
2773
+ const bounds = this._getHorizontalBounds();
2774
+ if (!bounds) {
2775
+ return;
2776
+ }
2777
+ const relativePosition = this.chatPetService.horizontalPosition.get();
2778
+ const left = getChatPetRestoredHorizontalPosition(relativePosition, bounds.minimumLeft, bounds.maximumLeft);
2779
+ this._button.element.style.left = `${left}px`;
2780
+ this._button.element.style.right = "auto";
2781
+ this._positionInitialized = true;
2782
+ this._hasCustomPosition = relativePosition !== undefined;
2783
+ this._horizontalAnchor = relativePosition === undefined ? undefined : getChatPetHorizontalAnchor(left, bounds.minimumLeft, bounds.maximumLeft);
2784
+ this._updateSpeechBubblePosition();
2785
+ }
2786
+ _startDisableAnimation() {
2787
+ this._blinkController.setEnabled(false);
2788
+ if (this._button.element.classList.contains("throwing")) {
2789
+ this._finishThrow(false);
2790
+ }
2791
+ this._button.element.tabIndex = -1;
2792
+ this._button.element.classList.remove("entering");
2793
+ if (this._motionReduced || this._button.element.classList.contains("hidden")) {
2794
+ this._finishDisable();
2795
+ return;
2796
+ }
2797
+ this._button.element.classList.add("exiting");
2798
+ }
2799
+ _finishDisable() {
2800
+ if (this._button.element.classList.contains("throwing")) {
2801
+ this._finishThrow(false);
2802
+ }
2803
+ if (this._button.element.classList.contains("falling")) {
2804
+ this._finishFall(false);
2805
+ }
2806
+ this._hopController.cancel();
2807
+ if (this._isDragging.get()) {
2808
+ this._isDragging.set(false, undefined);
2809
+ }
2810
+ this._throwAnimation.clear();
2811
+ this._throwBounceHandler = undefined;
2812
+ this._throwGeometryDirty = false;
2813
+ this._resetBounceCount();
2814
+ this._button.element.style.transform = "";
2815
+ this._button.element.classList.remove(
2816
+ "bounce-impact",
2817
+ "entering",
2818
+ "exiting",
2819
+ "falling",
2820
+ "throwing",
2821
+ "dragging",
2822
+ "resisting",
2823
+ "soft-resisting",
2824
+ "returning-from-run"
2825
+ );
2826
+ this._updateRunLayer();
2827
+ this._button.element.style.transitionDuration = "";
2828
+ this._button.element.classList.add("hidden");
2829
+ this._respawnEffectScheduler.cancel();
2830
+ this._respawnFallScheduler.cancel();
2831
+ this._respawnAnimation.clear();
2832
+ this._respawnEffect.container.classList.add("hidden");
2833
+ this._respawnPhase = "none";
2834
+ this._respawnPosition = undefined;
2835
+ this._spriteAnimation.clear();
2836
+ this._speechAnimation.clear();
2837
+ this._redrawEyeAccessory = undefined;
2838
+ this._eyeAccessoryGazeOffset = [0, 0];
2839
+ this._eyeAccessoryVisible = false;
2840
+ this._eyeAccessoryContainer.classList.add("hidden");
2841
+ this._eyeAccessory.getContext("2d")?.clearRect(0, 0, this._eyeAccessory.width, this._eyeAccessory.height);
2842
+ this._speechBubble.container.classList.add("hidden");
2843
+ this._speechBubble.image.removeAttribute("src");
2844
+ this._pendingRender = undefined;
2845
+ this._pendingAccessorySwitch = undefined;
2846
+ this._renderGeneration++;
2847
+ this._accessoryGeneration++;
2848
+ this._activeSprite = undefined;
2849
+ this._activeSource = undefined;
2850
+ this._redrawActiveFrame = undefined;
2851
+ this._renderedState = undefined;
2852
+ this._directionChangeController.reset();
2853
+ for (const sprite of this._sprites) {
2854
+ sprite.container.classList.add("hidden");
2855
+ sprite.image.removeAttribute("src");
2856
+ sprite.activeAccessory = undefined;
2857
+ sprite.activeAccessoryImage = undefined;
2858
+ for (const accessoryImage of sprite.accessoryImages ?? []) {
2859
+ accessoryImage.removeAttribute("src");
2860
+ }
2861
+ }
2862
+ }
2863
+ _showTransientState(state, snapFacingToCursor = true) {
2864
+ if (!this.chatPetService.enabled.get()) {
2865
+ return;
2866
+ }
2867
+ if (this._transientState.get() === "achievementUnlocked" && state !== "achievementUnlocked") {
2868
+ return;
2869
+ }
2870
+ if (snapFacingToCursor) {
2871
+ this._snapFacingToCursor();
2872
+ }
2873
+ this._wake();
2874
+ const renderedState = state === "yapping" && this._motionReduced ? "yappingMouthOpen" : state;
2875
+ this._transientState.set(renderedState, undefined);
2876
+ if (renderedState === "yappingMouthOpen" || renderedState === "yapping") {
2877
+ this._transientScheduler.cancel();
2878
+ } else {
2879
+ this._transientScheduler.schedule(getTransientStateDuration(renderedState));
2880
+ }
2881
+ if (!this._isDragging.get() && this._transientState.get() === renderedState) {
2882
+ this._renderState(renderedState, true);
2883
+ }
2884
+ }
2885
+ _wake() {
2886
+ this._dismissBounceResult();
2887
+ const wasSleeping = this._idleExpired.get() || this._renderedState === "sleep";
2888
+ this._idleExpired.set(false, undefined);
2889
+ if (this._busy) {
2890
+ this._idleScheduler.cancel();
2891
+ } else {
2892
+ this._idleScheduler.schedule();
2893
+ }
2894
+ if (wasSleeping) {
2895
+ this._beginWakeAnimation();
2896
+ }
2897
+ }
2898
+ _beginWakeAnimation() {
2899
+ if (this._motionReduced) {
2900
+ return undefined;
2901
+ }
2902
+ this._transientState.set("waking", undefined);
2903
+ this._transientScheduler.schedule(WAKE_STATE_DURATION);
2904
+ return "waking";
2905
+ }
2906
+ _renderState(state, restart = false, useStaticSprite = false) {
2907
+ if (state !== "idle" || useStaticSprite) {
2908
+ this._facingController.setState(state, useStaticSprite);
2909
+ }
2910
+ const sources = getSpriteSources(this._variant)[state];
2911
+ const source = this._motionReduced || useStaticSprite ? sources.reducedMotion : sources.animated;
2912
+ if (!restart && this._activeSprite && isChatPetImageSource(this._activeSprite.image, source.url)) {
2913
+ this._pendingRender = undefined;
2914
+ this._renderGeneration++;
2915
+ this._button.element.dataset.state = state;
2916
+ this._renderedState = state;
2917
+ this._setRenderedFacingState(state, useStaticSprite);
2918
+ this._updateEyes(state);
2919
+ this._updateSpeechBubble(state, restart);
2920
+ return;
2921
+ }
2922
+ const sprite = this._sprites.find(candidate => candidate !== this._activeSprite);
2923
+ if (!sprite) {
2924
+ return;
2925
+ }
2926
+ const accessorySource = this._getAccessoryImageSource();
2927
+ const cachedAccessoryImage = accessorySource ? sprite.accessoryImages?.find(
2928
+ candidate => isChatPetImageSource(candidate, accessorySource.url) && candidate.complete && candidate.naturalWidth > 0
2929
+ ) : undefined;
2930
+ const accessoryImage = accessorySource && !( this._failedAccessorySources.has(accessorySource.url)) ? cachedAccessoryImage ?? sprite.accessoryImages?.find(candidate => candidate !== sprite.activeAccessoryImage) : undefined;
2931
+ const generation = ++this._renderGeneration;
2932
+ this._pendingRender = {
2933
+ generation,
2934
+ sprite,
2935
+ bodySource: source,
2936
+ accessorySource: accessoryImage ? accessorySource : undefined,
2937
+ accessoryImage,
2938
+ accessory: accessoryImage ? this._selectedAccessory : undefined,
2939
+ state,
2940
+ useStaticSprite
2941
+ };
2942
+ sprite.image.removeAttribute("src");
2943
+ sprite.image.src = source.url;
2944
+ if (accessoryImage && accessorySource && accessoryImage !== cachedAccessoryImage) {
2945
+ accessoryImage.removeAttribute("src");
2946
+ accessoryImage.src = accessorySource.url;
2947
+ }
2948
+ }
2949
+ _getAccessoryImageSource() {
2950
+ if (!this._selectedAccessory) {
2951
+ return undefined;
2952
+ }
2953
+ return getChatPetAccessoryImageSource(getChatPetAccessory(this._selectedAccessory));
2954
+ }
2955
+ _onBodyImageLoad(sprite) {
2956
+ if (sprite !== this._pendingRender?.sprite) {
2957
+ return;
2958
+ }
2959
+ this._tryCompletePendingRender();
2960
+ }
2961
+ _onBodyImageError(sprite) {
2962
+ const pendingRender = this._pendingRender;
2963
+ if (!pendingRender || pendingRender.sprite !== sprite || !isChatPetImageSource(sprite.image, pendingRender.bodySource.url)) {
2964
+ return;
2965
+ }
2966
+ this.logService.error(
2967
+ `[ChatPetWidget] Failed to load pet sprite: ${pendingRender.bodySource.url}`
2968
+ );
2969
+ this._pendingRender = undefined;
2970
+ }
2971
+ _onAccessoryImageLoad(sprite, image) {
2972
+ if (this._pendingRender?.sprite === sprite && this._pendingRender.accessoryImage === image) {
2973
+ this._tryCompletePendingRender();
2974
+ }
2975
+ if (this._pendingAccessorySwitch?.sprite === sprite && this._pendingAccessorySwitch.image === image) {
2976
+ this._tryCompleteAccessorySwitch();
2977
+ }
2978
+ }
2979
+ _onAccessoryImageError(sprite, image) {
2980
+ const pendingRender = this._pendingRender;
2981
+ if (pendingRender?.sprite === sprite && pendingRender.accessoryImage === image && pendingRender.accessorySource) {
2982
+ this._recordAccessoryFailure(pendingRender.accessorySource.url, "load");
2983
+ this._pendingRender = {
2984
+ ...pendingRender,
2985
+ accessorySource: undefined,
2986
+ accessoryImage: undefined,
2987
+ accessory: undefined
2988
+ };
2989
+ this._tryCompletePendingRender();
2990
+ }
2991
+ const pendingSwitch = this._pendingAccessorySwitch;
2992
+ if (pendingSwitch?.sprite === sprite && pendingSwitch.image === image) {
2993
+ this._recordAccessoryFailure(pendingSwitch.source.url, "load");
2994
+ this._completeAccessorySwitchWithoutAccessory(pendingSwitch);
2995
+ }
2996
+ }
2997
+ _tryCompletePendingRender() {
2998
+ const pendingRender = this._pendingRender;
2999
+ if (!pendingRender || pendingRender.generation !== this._renderGeneration || !isChatPetImageSource(pendingRender.sprite.image, pendingRender.bodySource.url) || !pendingRender.sprite.image.complete || pendingRender.sprite.image.naturalWidth === 0) {
3000
+ return;
3001
+ }
3002
+ const frameHeight = pendingRender.bodySource.frameHeight ?? CHAT_PET_SOURCE_SIZE;
3003
+ const frameCount = Math.max(1, pendingRender.bodySource.frameDurations.length);
3004
+ if (!hasChatPetBodyImageDimensions(
3005
+ pendingRender.sprite.image,
3006
+ pendingRender.bodySource.frameWidth,
3007
+ frameHeight,
3008
+ frameCount
3009
+ )) {
3010
+ this.logService.error(
3011
+ `[ChatPetWidget] Invalid pet sprite dimensions: ${pendingRender.bodySource.url}`
3012
+ );
3013
+ this._pendingRender = undefined;
3014
+ return;
3015
+ }
3016
+ if (pendingRender.accessorySource && pendingRender.accessoryImage) {
3017
+ if (!isChatPetImageSource(pendingRender.accessoryImage, pendingRender.accessorySource.url) || !pendingRender.accessoryImage.complete || pendingRender.accessoryImage.naturalWidth === 0) {
3018
+ return;
3019
+ }
3020
+ if (!hasChatPetAccessoryImageDimensions(pendingRender.accessoryImage, pendingRender.accessorySource)) {
3021
+ this._recordAccessoryFailure(pendingRender.accessorySource.url, "dimensions");
3022
+ this._pendingRender = {
3023
+ ...pendingRender,
3024
+ accessorySource: undefined,
3025
+ accessoryImage: undefined,
3026
+ accessory: undefined
3027
+ };
3028
+ this._tryCompletePendingRender();
3029
+ return;
3030
+ }
3031
+ }
3032
+ this._spriteAnimation.clear();
3033
+ const previousSprite = this._activeSprite;
3034
+ previousSprite?.container.classList.add("hidden");
3035
+ pendingRender.sprite.container.classList.remove("hidden");
3036
+ pendingRender.sprite.activeAccessory = pendingRender.accessory;
3037
+ pendingRender.sprite.activeAccessoryImage = pendingRender.accessoryImage;
3038
+ this._activeSprite = pendingRender.sprite;
3039
+ this._activeSource = pendingRender.bodySource;
3040
+ this._pendingAccessorySwitch = undefined;
3041
+ this._accessoryGeneration++;
3042
+ const state = pendingRender.state;
3043
+ this._startSpriteAnimation(
3044
+ pendingRender.bodySource,
3045
+ pendingRender.sprite,
3046
+ this._spriteAnimation,
3047
+ () => this._onSpriteAnimationComplete(pendingRender.sprite, state),
3048
+ false,
3049
+ frameIndex => {
3050
+ if (pendingRender.sprite === this._activeSprite) {
3051
+ this._updateEyes(state, frameIndex);
3052
+ }
3053
+ },
3054
+ state
3055
+ );
3056
+ this._button.element.dataset.state = state;
3057
+ this._renderedState = state;
3058
+ this._setRenderedFacingState(state, this._isDragging.get());
3059
+ this._updateEyes(state);
3060
+ this._updateSpeechBubble(state, true);
3061
+ this._pendingRender = undefined;
3062
+ this._clearUnusedAccessoryImages(pendingRender.sprite, pendingRender.accessorySource?.url);
3063
+ if (previousSprite) {
3064
+ if (!pendingRender.accessorySource || !previousSprite.activeAccessoryImage || !isChatPetImageSource(previousSprite.activeAccessoryImage, pendingRender.accessorySource.url)) {
3065
+ previousSprite.activeAccessory = undefined;
3066
+ previousSprite.activeAccessoryImage = undefined;
3067
+ }
3068
+ this._clearUnusedAccessoryImages(previousSprite, pendingRender.accessorySource?.url);
3069
+ }
3070
+ this._restartEyeAnimation();
3071
+ }
3072
+ _switchAccessory(accessory) {
3073
+ const pendingRender = this._pendingRender;
3074
+ if (pendingRender) {
3075
+ this._renderState(pendingRender.state, true, pendingRender.useStaticSprite);
3076
+ }
3077
+ const sprite = this._activeSprite;
3078
+ const bodySource = this._activeSource;
3079
+ const state = this._renderedState;
3080
+ const generation = ++this._accessoryGeneration;
3081
+ this._pendingAccessorySwitch = undefined;
3082
+ if (!sprite || !bodySource || !state) {
3083
+ return;
3084
+ }
3085
+ if (!accessory) {
3086
+ sprite.activeAccessory = undefined;
3087
+ sprite.activeAccessoryImage = undefined;
3088
+ this._clearAllAccessoryImages();
3089
+ this._redrawActiveFrame?.();
3090
+ return;
3091
+ }
3092
+ const source = getChatPetAccessoryImageSource(getChatPetAccessory(accessory));
3093
+ if (( this._failedAccessorySources.has(source.url))) {
3094
+ sprite.activeAccessory = undefined;
3095
+ sprite.activeAccessoryImage = undefined;
3096
+ this._clearAllAccessoryImages();
3097
+ this._redrawActiveFrame?.();
3098
+ return;
3099
+ }
3100
+ const image = sprite.accessoryImages?.find(candidate => candidate !== sprite.activeAccessoryImage);
3101
+ if (!image) {
3102
+ return;
3103
+ }
3104
+ this._pendingAccessorySwitch = {
3105
+ generation,
3106
+ sprite,
3107
+ source,
3108
+ image,
3109
+ accessory
3110
+ };
3111
+ image.removeAttribute("src");
3112
+ image.src = source.url;
3113
+ }
3114
+ _tryCompleteAccessorySwitch() {
3115
+ const pendingSwitch = this._pendingAccessorySwitch;
3116
+ if (!pendingSwitch || pendingSwitch.generation !== this._accessoryGeneration || pendingSwitch.accessory !== this._selectedAccessory || !isChatPetImageSource(pendingSwitch.image, pendingSwitch.source.url) || !pendingSwitch.image.complete || pendingSwitch.image.naturalWidth === 0) {
3117
+ return;
3118
+ }
3119
+ if (!hasChatPetAccessoryImageDimensions(pendingSwitch.image, pendingSwitch.source)) {
3120
+ this._recordAccessoryFailure(pendingSwitch.source.url, "dimensions");
3121
+ this._completeAccessorySwitchWithoutAccessory(pendingSwitch);
3122
+ return;
3123
+ }
3124
+ pendingSwitch.sprite.activeAccessory = pendingSwitch.accessory;
3125
+ pendingSwitch.sprite.activeAccessoryImage = pendingSwitch.image;
3126
+ this._pendingAccessorySwitch = undefined;
3127
+ this._clearAllAccessoryImages(source => source === pendingSwitch.source.url);
3128
+ this._redrawActiveFrame?.();
3129
+ }
3130
+ _completeAccessorySwitchWithoutAccessory(pendingSwitch) {
3131
+ if (this._pendingAccessorySwitch !== pendingSwitch) {
3132
+ return;
3133
+ }
3134
+ pendingSwitch.sprite.activeAccessory = undefined;
3135
+ pendingSwitch.sprite.activeAccessoryImage = undefined;
3136
+ this._pendingAccessorySwitch = undefined;
3137
+ this._clearAllAccessoryImages();
3138
+ this._redrawActiveFrame?.();
3139
+ }
3140
+ _recordAccessoryFailure(url, reason) {
3141
+ if (( this._failedAccessorySources.has(url))) {
3142
+ return;
3143
+ }
3144
+ this._failedAccessorySources.add(url);
3145
+ this.logService.error(
3146
+ `[ChatPetWidget] Failed chat pet accessory ${reason === "load" ? "load" : "dimension validation"}: ${url}`
3147
+ );
3148
+ }
3149
+ _clearUnusedAccessoryImages(sprite, keepSourceUrl) {
3150
+ for (const image of sprite.accessoryImages ?? []) {
3151
+ if (!keepSourceUrl || !isChatPetImageSource(image, keepSourceUrl)) {
3152
+ image.removeAttribute("src");
3153
+ }
3154
+ }
3155
+ }
3156
+ _clearAllAccessoryImages(keepSource) {
3157
+ for (const sprite of this._sprites) {
3158
+ for (const image of sprite.accessoryImages ?? []) {
3159
+ const source = image.getAttribute("src");
3160
+ if (!source || !keepSource?.(source)) {
3161
+ image.removeAttribute("src");
3162
+ if (sprite.activeAccessoryImage === image) {
3163
+ sprite.activeAccessory = undefined;
3164
+ sprite.activeAccessoryImage = undefined;
3165
+ }
3166
+ }
3167
+ }
3168
+ }
3169
+ }
3170
+ _setRenderedFacingState(state, isDragging) {
3171
+ this._facingController.setState(state, isDragging);
3172
+ if (!isDragging && doesChatPetStateTrackCursor(state)) {
3173
+ this._gazeScheduler.schedule();
3174
+ }
3175
+ }
3176
+ _updateEyes(state, frameIndex) {
3177
+ const tracksCursor = doesChatPetStateTrackCursor(state);
3178
+ const blinking = doesChatPetStateBlink(state, frameIndex);
3179
+ this._eyes.classList.toggle("tracking", tracksCursor);
3180
+ this._eyes.classList.toggle("blinking", blinking);
3181
+ this._blinkController.setEnabled(
3182
+ this._enabled && !this._motionReduced && !getWindow(this._eyes).document.hidden && (tracksCursor || blinking)
3183
+ );
3184
+ if (!tracksCursor && (this._eyeAccessoryGazeOffset[0] !== 0 || this._eyeAccessoryGazeOffset[1] !== 0)) {
3185
+ this._eyeAccessoryGazeOffset = [0, 0];
3186
+ this._redrawEyeAccessory?.();
3187
+ }
3188
+ if (blinking) {
3189
+ for (const pupil of this._pupils) {
3190
+ pupil.style.transform = "";
3191
+ }
3192
+ }
3193
+ }
3194
+ _onSpriteAnimationComplete(sprite, state) {
3195
+ if (sprite !== this._activeSprite) {
3196
+ return;
3197
+ }
3198
+ if (state === "jump") {
3199
+ this._hopController.onAnimationComplete();
3200
+ }
3201
+ }
3202
+ _startSpriteAnimation(
3203
+ source,
3204
+ sprite,
3205
+ animationDisposable,
3206
+ onComplete,
3207
+ reverse = false,
3208
+ onFrame,
3209
+ state
3210
+ ) {
3211
+ const {
3212
+ frameDurations
3213
+ } = source;
3214
+ const {
3215
+ image,
3216
+ canvas
3217
+ } = sprite;
3218
+ const displaySize = sprite === this._speechBubble ? 72 : sprite === this._respawnEffect ? this._getDisplaySize() : CHAT_PET_DISPLAY_SIZE;
3219
+ const frameHeight = source.frameHeight ?? CHAT_PET_SOURCE_SIZE;
3220
+ const displayScale = displaySize / CHAT_PET_SOURCE_SIZE;
3221
+ const displayWidth = source.frameWidth * displayScale;
3222
+ const displayHeight = frameHeight * displayScale;
3223
+ sprite.container.style.width = `${displayWidth}px`;
3224
+ sprite.container.style.height = `${displayHeight}px`;
3225
+ canvas.width = source.frameWidth;
3226
+ canvas.height = frameHeight;
3227
+ canvas.style.width = `${displayWidth}px`;
3228
+ canvas.style.height = `${displayHeight}px`;
3229
+ const context = canvas.getContext("2d");
3230
+ if (!context) {
3231
+ return;
3232
+ }
3233
+ context.imageSmoothingEnabled = false;
3234
+ const drawFrame = frameIndex => {
3235
+ if (state) {
3236
+ const activeAccessory = sprite.activeAccessory ? getChatPetAccessory(sprite.activeAccessory) : undefined;
3237
+ drawChatPetComposite(
3238
+ context,
3239
+ image,
3240
+ sprite.activeAccessoryImage,
3241
+ frameIndex,
3242
+ source.accessoryRigFrame ?? frameIndex,
3243
+ source.frameWidth,
3244
+ frameHeight,
3245
+ this._facingController.direction,
3246
+ state,
3247
+ source.fixedOrientationDecorations,
3248
+ false,
3249
+ activeAccessory?.eyeAccessoryMirrorsWithFacing !== false,
3250
+ activeAccessory?.coversAntennae === true
3251
+ );
3252
+ this._drawEyeAccessory(
3253
+ sprite.activeAccessory,
3254
+ sprite.activeAccessoryImage,
3255
+ source,
3256
+ state,
3257
+ source.accessoryRigFrame ?? frameIndex
3258
+ );
3259
+ } else {
3260
+ context.clearRect(0, 0, source.frameWidth, frameHeight);
3261
+ context.drawImage(
3262
+ image,
3263
+ frameIndex * source.frameWidth,
3264
+ 0,
3265
+ source.frameWidth,
3266
+ frameHeight,
3267
+ 0,
3268
+ 0,
3269
+ source.frameWidth,
3270
+ frameHeight
3271
+ );
3272
+ }
3273
+ if (sprite === this._activeSprite) {
3274
+ this._activeFrameIndex = frameIndex;
3275
+ }
3276
+ onFrame?.(frameIndex);
3277
+ };
3278
+ if (sprite === this._activeSprite) {
3279
+ this._redrawActiveFrame = () => drawFrame(this._activeFrameIndex);
3280
+ this._redrawEyeAccessory = state ? () => this._drawEyeAccessory(
3281
+ sprite.activeAccessory,
3282
+ sprite.activeAccessoryImage,
3283
+ source,
3284
+ state,
3285
+ source.accessoryRigFrame ?? this._activeFrameIndex
3286
+ ) : undefined;
3287
+ }
3288
+ const initialFrameIndex = reverse && frameDurations.length > 0 ? frameDurations.length - 1 : 0;
3289
+ drawFrame(initialFrameIndex);
3290
+ if (frameDurations.length < 2) {
3291
+ return;
3292
+ }
3293
+ const targetWindow = getWindow(canvas);
3294
+ const startTime = targetWindow.performance.now();
3295
+ let currentFrame = 0;
3296
+ let frameTimer;
3297
+ const animationDisposables = ( new DisposableStore());
3298
+ const clearFrameTimer = () => {
3299
+ if (frameTimer !== undefined) {
3300
+ targetWindow.clearTimeout(frameTimer);
3301
+ frameTimer = undefined;
3302
+ }
3303
+ };
3304
+ const scheduleFrame = delay => {
3305
+ clearFrameTimer();
3306
+ if (!targetWindow.document.hidden) {
3307
+ frameTimer = targetWindow.setTimeout(updateFrame, Math.max(1, Math.ceil(delay)));
3308
+ }
3309
+ };
3310
+ const updateFrame = () => {
3311
+ frameTimer = undefined;
3312
+ const frame = getChatPetAnimationFrame(
3313
+ frameDurations,
3314
+ targetWindow.performance.now() - startTime,
3315
+ source.iterations,
3316
+ reverse
3317
+ );
3318
+ if (frame.complete) {
3319
+ drawFrame(frame.frameIndex);
3320
+ animationDisposables.dispose();
3321
+ onComplete?.();
3322
+ return;
3323
+ }
3324
+ if (frame.frameIndex !== currentFrame) {
3325
+ currentFrame = frame.frameIndex;
3326
+ drawFrame(frame.frameIndex);
3327
+ }
3328
+ scheduleFrame(frame.nextFrameDelay);
3329
+ };
3330
+ animationDisposables.add(
3331
+ addDisposableListener(targetWindow.document, "visibilitychange", () => {
3332
+ clearFrameTimer();
3333
+ if (!targetWindow.document.hidden) {
3334
+ updateFrame();
3335
+ }
3336
+ })
3337
+ );
3338
+ animationDisposables.add(toDisposable(clearFrameTimer));
3339
+ scheduleFrame(frameDurations[initialFrameIndex]);
3340
+ animationDisposable.value = animationDisposables;
3341
+ }
3342
+ _drawEyeAccessory(accessoryId, accessoryImage, source, state, rigFrameIndex) {
3343
+ const frameHeight = source.frameHeight ?? CHAT_PET_SOURCE_SIZE;
3344
+ const visible = accessoryImage !== undefined && getChatPetAccessoryRigFrame(state, rigFrameIndex).rightEye !== undefined;
3345
+ if (visible !== this._eyeAccessoryVisible) {
3346
+ this._eyeAccessoryVisible = visible;
3347
+ this._eyeAccessoryContainer.classList.toggle("hidden", !visible);
3348
+ }
3349
+ if (!visible || !accessoryImage) {
3350
+ return;
3351
+ }
3352
+ const accessory = accessoryId ? getChatPetAccessory(accessoryId) : undefined;
3353
+ const mirrorsWithFacing = accessory?.eyeAccessoryMirrorsWithFacing !== false;
3354
+ const fixedOrientation = !mirrorsWithFacing;
3355
+ if (fixedOrientation !== this._eyeAccessoryFixedOrientation) {
3356
+ this._eyeAccessoryFixedOrientation = fixedOrientation;
3357
+ this._eyeAccessoryContainer.classList.toggle("fixed-orientation", fixedOrientation);
3358
+ }
3359
+ const dimensions = this._eyeAccessoryDimensions;
3360
+ if (!dimensions || dimensions.frameWidth !== source.frameWidth || dimensions.frameHeight !== frameHeight) {
3361
+ this._eyeAccessoryDimensions = {
3362
+ frameWidth: source.frameWidth,
3363
+ frameHeight
3364
+ };
3365
+ const displayScale = CHAT_PET_DISPLAY_SIZE / CHAT_PET_SOURCE_SIZE;
3366
+ this._eyeAccessory.width = source.frameWidth;
3367
+ this._eyeAccessory.height = frameHeight;
3368
+ this._eyeAccessoryContainer.style.width = `${source.frameWidth * displayScale}px`;
3369
+ this._eyeAccessoryContainer.style.height = `${frameHeight * displayScale}px`;
3370
+ this._eyeAccessory.style.width = `${source.frameWidth * displayScale}px`;
3371
+ this._eyeAccessory.style.height = `${frameHeight * displayScale}px`;
3372
+ }
3373
+ const context = this._eyeAccessory.getContext("2d");
3374
+ if (!context) {
3375
+ return;
3376
+ }
3377
+ context.imageSmoothingEnabled = false;
3378
+ const facingDirection = source.fixedOrientationDecorations || !mirrorsWithFacing ? this._facingController.direction : "right";
3379
+ drawChatPetEyeAccessory(
3380
+ context,
3381
+ accessoryImage,
3382
+ state,
3383
+ rigFrameIndex,
3384
+ facingDirection,
3385
+ mirrorsWithFacing,
3386
+ mirrorsWithFacing ? undefined : this._eyeAccessoryGazeOffset
3387
+ );
3388
+ }
3389
+ _updateSpeechBubble(state, restart = false) {
3390
+ this._updateSpeechBubblePosition();
3391
+ const visible = doesChatPetStateSpeak(state);
3392
+ const speechBubbleState = visible ? state : undefined;
3393
+ const stateChanged = speechBubbleState !== this._speechBubbleState;
3394
+ this._speechBubbleState = speechBubbleState;
3395
+ this._speechBubble.container.classList.toggle("hidden", !visible);
3396
+ if (!visible) {
3397
+ this._speechAnimation.clear();
3398
+ return;
3399
+ }
3400
+ const sources = getSpeechSpriteSources(this._variant);
3401
+ const source = this._motionReduced ? sources.reducedMotion : sources.animated;
3402
+ if (!isChatPetImageSource(this._speechBubble.image, source.url)) {
3403
+ this._speechAnimation.clear();
3404
+ this._speechBubble.image.removeAttribute("src");
3405
+ this._speechBubble.image.src = source.url;
3406
+ return;
3407
+ }
3408
+ if ((restart || stateChanged) && this._speechBubble.image.complete && this._speechBubble.image.naturalWidth > 0) {
3409
+ this._speechAnimation.clear();
3410
+ this._startSpriteAnimation(
3411
+ source,
3412
+ this._speechBubble,
3413
+ this._speechAnimation,
3414
+ undefined,
3415
+ false,
3416
+ state === "achievementUnlocked" ? () => {
3417
+ const context = this._speechBubble.canvas.getContext("2d");
3418
+ if (context) {
3419
+ drawChatPetAchievementStar(context, this._variant);
3420
+ }
3421
+ } : undefined
3422
+ );
3423
+ }
3424
+ }
3425
+ _restartEyeAnimation() {
3426
+ this._eyes.classList.remove("animated");
3427
+ this._eyes.getBoundingClientRect();
3428
+ if (!this._motionReduced) {
3429
+ this._eyes.classList.add("animated");
3430
+ }
3431
+ }
3432
+ };
3433
+ ChatPetWidget = ( __decorate([( __param(2, IChatPetService)), ( __param(3, IAccessibilityService)), ( __param(4, IContextMenuService)), ( __param(5, ICommandService)), ( __param(6, ILogService)), ( __param(7, IHostService))], ChatPetWidget));
3434
+
3435
+ export { CHAT_PET_ACHIEVEMENT_UNLOCKED_DURATION, CHAT_PET_BOUNCE_RESULT_DURATION, CHAT_PET_CONFETTI_SCORE, CHAT_PET_CONFIRMATION_ATTENTION_DURATION, CHAT_PET_ICON_TRANSFORMATION_CHANCE, CHAT_PET_IDLE_SLEEP_DELAY, CHAT_PET_MOUSE_BOUNCE_RELEASE_GRACE_DURATION, CHAT_PET_OVERLAY_CLASS, CHAT_PET_SING_FIXED_ORIENTATION_DECORATIONS, CHAT_PET_WALL_IMPACT_DURATION, CHAT_PET_WINDOW_OWNERSHIP_CHANNEL, CHAT_PET_YAPPING_CHANCE, ChatPetBlinkController, ChatPetDirectionChangeController, ChatPetFacingController, ChatPetHopController, ChatPetWidget, advanceChatPetThrow, doesChatPetStateBlink, doesChatPetStateTrackCursor, drawChatPetAchievementStar, getChatPetAnchoredHorizontalPosition, getChatPetAnimationFrame, getChatPetBaseState, getChatPetBlinkDelay, getChatPetBuddyName, getChatPetClickInteraction, getChatPetDefaultHorizontalPosition, getChatPetDragPosition, getChatPetEyeAccessoryGazeOffset, getChatPetFallDuration, getChatPetFallTarget, getChatPetFrameDurations, getChatPetGazeDirection, getChatPetHorizontalAnchor, getChatPetHorizontalPosition, getChatPetListPadding, getChatPetMouseBounceVelocity, getChatPetMouseCollisionTime, getChatPetPillPlatformTop, getChatPetPlatformTop, getChatPetRelativeHorizontalPosition, getChatPetRenderedState, getChatPetRestoredHorizontalPosition, getChatPetScale, getChatPetSpriteName, getChatPetStackPlatformTop, getChatPetSweptPlatformTop, getChatPetThrowLanding, getChatPetThrowRotation, getChatPetThrowVelocity, getChatPetVerticalOffset, getChatPetWallReboundVelocity, getChatPetWideSpriteHorizontalOffset, isChatPetImageSource, isChatPetKeyboardInteractionEnabled, isChatPetMouseBounceEligible, isChatPetMouseBounceGracePeriodElapsed, isChatPetMouseContact, isChatPetVisible, isChatPetWindowActive, setChatPetWideLayerOffset, shouldCelebrateChatPetBounceScore, shouldClaimChatPetWindowOnConstruction, shouldDismissChatPetBounceResult, shouldPlaceChatPetSpeechBubbleLeft, shouldSettleChatPetThrow };