@codingame/monaco-vscode-katex-common 28.4.1 → 29.1.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 (154) hide show
  1. package/package.json +2 -2
  2. package/vscode/src/vs/platform/actions/browser/buttonbar.js +2 -2
  3. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityProvider.js +17 -15
  4. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.d.ts +2 -2
  5. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.js +9 -9
  6. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.js +1 -1
  7. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.d.ts +3 -1
  8. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +158 -47
  9. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.js +22 -17
  10. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionHoverWidget.js +8 -8
  11. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.d.ts +16 -4
  12. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.js +121 -14
  13. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.d.ts +8 -1
  14. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.js +15 -8
  15. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.js +1 -1
  16. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.d.ts +29 -13
  17. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.js +349 -109
  18. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/agentsessionsviewer.css +47 -23
  19. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.d.ts +6 -1
  20. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.js +104 -62
  21. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatImplicitContext.js +1 -3
  22. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.js +13 -11
  23. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.js +34 -40
  24. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +21 -16
  25. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +7 -7
  26. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.js +14 -14
  27. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.d.ts +8 -1
  28. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.js +13 -4
  29. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.d.ts +29 -50
  30. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.js +261 -282
  31. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/searchableOptionPickerActionItem.d.ts +2 -1
  32. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/searchableOptionPickerActionItem.js +7 -5
  33. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatAgentHover.js +2 -2
  34. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatArtifactsWidget.d.ts +31 -0
  35. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatArtifactsWidget.js +184 -0
  36. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentMarkdownRenderer.js +4 -2
  37. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentCommandContentPart.js +1 -1
  38. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAnonymousRateLimitedPart.js +2 -2
  39. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.js +1 -1
  40. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCodeCitationContentPart.js +1 -1
  41. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCommandContentPart.js +1 -1
  42. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationContentPart.js +2 -2
  43. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.js +1 -1
  44. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDisabledClaudeHooksContentPart.js +4 -3
  45. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExtensionsContentPart.js +1 -1
  46. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatHookContentPart.js +1 -1
  47. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.d.ts +3 -2
  48. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.js +42 -34
  49. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.d.ts +1 -0
  50. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.js +14 -18
  51. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.js +11 -9
  52. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.js +4 -4
  53. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.js +6 -2
  54. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.d.ts +25 -2
  55. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.js +332 -114
  56. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.js +4 -4
  57. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.d.ts +1 -0
  58. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.js +7 -7
  59. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatResourceGroupWidget.d.ts +2 -0
  60. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatResourceGroupWidget.js +10 -5
  61. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.d.ts +1 -1
  62. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.js +11 -16
  63. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.d.ts +7 -1
  64. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.js +66 -7
  65. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.js +1 -1
  66. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.d.ts +28 -3
  67. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.js +272 -107
  68. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingExternalResourcesWidget.d.ts +18 -0
  69. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingExternalResourcesWidget.js +70 -0
  70. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTipContentPart.js +9 -9
  71. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.js +17 -17
  72. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.d.ts +1 -1
  73. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.js +6 -3
  74. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.js +1 -1
  75. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatWorkspaceEditContentPart.js +3 -3
  76. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.js +14 -14
  77. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatConfirmationWidget.css +151 -0
  78. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatInlineAnchorWidget.css +6 -6
  79. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatQuestionCarousel.css +96 -10
  80. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatTerminalToolProgressPart.css +6 -1
  81. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatThinkingContent.css +86 -10
  82. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.d.ts +7 -0
  83. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.js +5 -2
  84. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.js +4 -4
  85. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatInputOutputMarkdownProgressPart.d.ts +1 -1
  86. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatInputOutputMarkdownProgressPart.js +8 -6
  87. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppModel.js +1 -1
  88. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppSubPart.js +3 -3
  89. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatModifiedFilesConfirmationSubPart.d.ts +28 -0
  90. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatModifiedFilesConfirmationSubPart.js +273 -0
  91. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatSimpleToolProgressPart.js +3 -2
  92. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js +28 -16
  93. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.d.ts +22 -1
  94. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.js +81 -32
  95. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.d.ts +1 -0
  96. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.js +20 -7
  97. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.js +11 -1
  98. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputPart.js +2 -2
  99. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPartUtilities.d.ts +6 -0
  100. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPartUtilities.js +21 -7
  101. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.js +5 -5
  102. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolProgressPart.js +2 -12
  103. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatDragAndDrop.js +12 -12
  104. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.d.ts +0 -6
  105. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.js +112 -163
  106. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListWidget.js +11 -1
  107. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.d.ts +9 -1
  108. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.js +137 -52
  109. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatFollowups.js +1 -1
  110. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.d.ts +12 -0
  111. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.js +108 -38
  112. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.d.ts +9 -3
  113. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.js +385 -247
  114. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.d.ts +5 -1
  115. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.js +23 -7
  116. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.js +6 -6
  117. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem.d.ts +4 -1
  118. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem2.js +4 -2
  119. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.js +23 -23
  120. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.js +3 -3
  121. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerActionItem.js +3 -3
  122. package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chat.css +124 -17
  123. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.d.ts +4 -0
  124. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.js +24 -7
  125. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.js +30 -11
  126. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatContextUsageDetails.css +84 -0
  127. package/vscode/src/vs/workbench/contrib/chat/common/chatImageExtraction.d.ts +31 -0
  128. package/vscode/src/vs/workbench/contrib/chat/common/chatImageExtraction.js +170 -0
  129. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalPromptFileSystem.d.ts +47 -0
  130. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalPromptFileSystem.js +95 -0
  131. package/vscode/src/vs/workbench/contrib/chat/common/widget/annotations.js +4 -1
  132. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatColors.js +15 -15
  133. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAffordance.d.ts +1 -1
  134. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAffordance.js +4 -3
  135. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.d.ts +2 -0
  136. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +38 -6
  137. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatEditorAffordance.d.ts +1 -0
  138. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatEditorAffordance.js +31 -0
  139. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatOverlayWidget.d.ts +12 -3
  140. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatOverlayWidget.js +130 -23
  141. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.d.ts +23 -0
  142. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +41 -0
  143. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +5 -5
  144. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +1 -1
  145. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChatOverlayWidget.css +55 -3
  146. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.d.ts +4 -1
  147. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +50 -39
  148. package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.js +3 -3
  149. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +7 -7
  150. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +2 -2
  151. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditor.js +1 -1
  152. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditorInput.js +1 -1
  153. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatQuestionCarouselAutoReply.d.ts +0 -35
  154. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatQuestionCarouselAutoReply.js +0 -440
@@ -18,45 +18,45 @@ registerColor("agentStatusIndicator.background", {
18
18
  light: ( Color.black.transparent(0.05)),
19
19
  hcDark: null,
20
20
  hcLight: null
21
- }, ( localize(7407, "Background color of the agent status indicator in the titlebar.")));
21
+ }, ( localize(7633, "Background color of the agent status indicator in the titlebar.")));
22
22
  registerColor("chat.requestBorder", {
23
23
  dark: ( new Color(( new RGBA(255, 255, 255, 0.10)))),
24
24
  light: ( new Color(( new RGBA(0, 0, 0, 0.10)))),
25
25
  hcDark: contrastBorder,
26
26
  hcLight: contrastBorder
27
- }, ( localize(7408, "The border color of a chat request.")));
27
+ }, ( localize(7634, "The border color of a chat request.")));
28
28
  const chatRequestBackground = registerColor("chat.requestBackground", {
29
29
  dark: ( transparent(editorBackground, 0.62)),
30
30
  light: ( transparent(editorBackground, 0.62)),
31
31
  hcDark: editorWidgetBackground,
32
32
  hcLight: null
33
- }, ( localize(7409, "The background color of a chat request.")));
33
+ }, ( localize(7635, "The background color of a chat request.")));
34
34
  const chatSlashCommandBackground = registerColor("chat.slashCommandBackground", {
35
35
  dark: "#26477866",
36
36
  light: "#adceff7a",
37
37
  hcDark: Color.white,
38
38
  hcLight: badgeBackground
39
- }, ( localize(7410, "The background color of a chat slash command.")));
39
+ }, ( localize(7636, "The background color of a chat slash command.")));
40
40
  const chatSlashCommandForeground = registerColor("chat.slashCommandForeground", {
41
41
  dark: "#85b6ff",
42
42
  light: "#26569e",
43
43
  hcDark: Color.black,
44
44
  hcLight: badgeForeground
45
- }, ( localize(7411, "The foreground color of a chat slash command.")));
45
+ }, ( localize(7637, "The foreground color of a chat slash command.")));
46
46
  registerColor("chat.avatarBackground", {
47
47
  dark: "#1f1f1f",
48
48
  light: "#f2f2f2",
49
49
  hcDark: Color.black,
50
50
  hcLight: Color.white
51
- }, ( localize(7412, "The background color of a chat avatar.")));
52
- registerColor("chat.avatarForeground", foreground, ( localize(7413, "The foreground color of a chat avatar.")));
51
+ }, ( localize(7638, "The background color of a chat avatar.")));
52
+ registerColor("chat.avatarForeground", foreground, ( localize(7639, "The foreground color of a chat avatar.")));
53
53
  registerColor("chat.editedFileForeground", {
54
54
  light: "#895503",
55
55
  dark: "#E2C08D",
56
56
  hcDark: "#E2C08D",
57
57
  hcLight: "#895503"
58
58
  }, ( localize(
59
- 7414,
59
+ 7640,
60
60
  "The foreground color of a chat edited file in the edited file list."
61
61
  )));
62
62
  registerColor("chat.requestCodeBorder", {
@@ -64,42 +64,42 @@ registerColor("chat.requestCodeBorder", {
64
64
  light: "#0e639c40",
65
65
  hcDark: null,
66
66
  hcLight: null
67
- }, ( localize(7415, "Border color of code blocks within the chat request bubble.")), true);
67
+ }, ( localize(7641, "Border color of code blocks within the chat request bubble.")), true);
68
68
  registerColor("chat.requestBubbleBackground", {
69
69
  light: ( transparent(editorSelectionBackground, 0.3)),
70
70
  dark: ( transparent(editorSelectionBackground, 0.3)),
71
71
  hcDark: null,
72
72
  hcLight: null
73
- }, ( localize(7416, "Background color of the chat request bubble.")), true);
73
+ }, ( localize(7642, "Background color of the chat request bubble.")), true);
74
74
  registerColor("chat.requestBubbleHoverBackground", {
75
75
  dark: ( transparent(editorSelectionBackground, 0.6)),
76
76
  light: ( transparent(editorSelectionBackground, 0.6)),
77
77
  hcDark: null,
78
78
  hcLight: null
79
- }, ( localize(7417, "Background color of the chat request bubble on hover.")), true);
79
+ }, ( localize(7643, "Background color of the chat request bubble on hover.")), true);
80
80
  registerColor("chat.checkpointSeparator", {
81
81
  dark: "#585858",
82
82
  light: "#a9a9a9",
83
83
  hcDark: "#a9a9a9",
84
84
  hcLight: "#a5a5a5"
85
- }, ( localize(7418, "Chat checkpoint separator color.")));
85
+ }, ( localize(7644, "Chat checkpoint separator color.")));
86
86
  registerColor("chat.linesAddedForeground", {
87
87
  dark: "#54B054",
88
88
  light: "#107C10",
89
89
  hcDark: "#54B054",
90
90
  hcLight: "#107C10"
91
- }, ( localize(7419, "Foreground color of lines added in chat code block pill.")), true);
91
+ }, ( localize(7645, "Foreground color of lines added in chat code block pill.")), true);
92
92
  registerColor("chat.linesRemovedForeground", {
93
93
  dark: "#FC6A6A",
94
94
  light: "#BC2F32",
95
95
  hcDark: "#F48771",
96
96
  hcLight: "#B5200D"
97
- }, ( localize(7420, "Foreground color of lines removed in chat code block pill.")), true);
97
+ }, ( localize(7646, "Foreground color of lines removed in chat code block pill.")), true);
98
98
  registerColor("chat.thinkingShimmer", {
99
99
  dark: "#ffffff",
100
100
  light: "#000000",
101
101
  hcDark: "#ffffff",
102
102
  hcLight: "#000000"
103
- }, ( localize(7421, "Shimmer highlight for thinking/working labels.")), true);
103
+ }, ( localize(7647, "Shimmer highlight for thinking/working labels.")), true);
104
104
 
105
105
  export { chatRequestBackground, chatSlashCommandBackground, chatSlashCommandForeground };
@@ -11,5 +11,5 @@ export declare class InlineChatAffordance extends Disposable {
11
11
  #private;
12
12
  constructor(editor: ICodeEditor, inputWidget: InlineChatInputWidget, instantiationService: IInstantiationService, configurationService: IConfigurationService, chatEntiteldService: IChatEntitlementService, inlineChatSessionService: IInlineChatSessionService, telemetryService: ITelemetryService, contextKeyService: IContextKeyService);
13
13
  dismiss(): void;
14
- showMenuAtSelection(placeholder: string): Promise<void>;
14
+ showMenuAtSelection(placeholder: string, value?: string): Promise<void>;
15
15
  }
@@ -149,7 +149,7 @@ let InlineChatAffordance = class InlineChatAffordance extends Disposable {
149
149
  const editorDomNode = this.#editor.getDomNode();
150
150
  const editorRect = editorDomNode.getBoundingClientRect();
151
151
  const left = data.rect.left - editorRect.left;
152
- this.#inputWidget.show(data.lineNumber, left, data.above, data.placeholder);
152
+ this.#inputWidget.show(data.lineNumber, left, data.above, data.placeholder, data.value);
153
153
  }));
154
154
  this._store.add(autorun(r => {
155
155
  const pos = this.#inputWidget.position.read(r);
@@ -161,7 +161,7 @@ let InlineChatAffordance = class InlineChatAffordance extends Disposable {
161
161
  dismiss() {
162
162
  this.#selectionData.set(undefined, undefined);
163
163
  }
164
- async showMenuAtSelection(placeholder) {
164
+ async showMenuAtSelection(placeholder, value) {
165
165
  assertType(this.#editor.hasModel());
166
166
  const direction = this.#editor.getSelection().getDirection();
167
167
  const position = this.#editor.getPosition();
@@ -174,7 +174,8 @@ let InlineChatAffordance = class InlineChatAffordance extends Disposable {
174
174
  rect: ( new DOMRect(x, y, 0, scrolledPosition.height)),
175
175
  above: direction === SelectionDirection.RTL,
176
176
  lineNumber: position.lineNumber,
177
- placeholder
177
+ placeholder,
178
+ value
178
179
  }, undefined);
179
180
  await waitForState(this.#inputWidget.position, pos => pos === null);
180
181
  }
@@ -79,6 +79,8 @@ export declare class InlineChatController implements IEditorContribution {
79
79
  run(arg?: InlineChatRunOptions): Promise<boolean>;
80
80
  acceptSession(): Promise<void>;
81
81
  rejectSession(): Promise<void>;
82
+ continueSessionInChat(): Promise<void>;
83
+ rephraseSession(): Promise<void>;
82
84
  private _selectVendorDefaultModel;
83
85
  /**
84
86
  * Applies model defaults based on settings and tracks user model changes.
@@ -44,9 +44,10 @@ import { isNotebookContainingCellEditor } from '@codingame/monaco-vscode-api/vsc
44
44
  import { INotebookEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/browser/services/notebookEditorService.service';
45
45
  import { CellUri } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookCommon';
46
46
  import { INotebookService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookService.service';
47
- import { CTX_INLINE_CHAT_VISIBLE, CTX_INLINE_CHAT_FILE_BELONGS_TO_CHAT, CTX_INLINE_CHAT_PENDING_CONFIRMATION, InlineChatConfigKeys } from '../common/inlineChat.js';
47
+ import { CTX_INLINE_CHAT_VISIBLE, CTX_INLINE_CHAT_FILE_BELONGS_TO_CHAT, CTX_INLINE_CHAT_PENDING_CONFIRMATION, CTX_INLINE_CHAT_TERMINATED, InlineChatConfigKeys } from '../common/inlineChat.js';
48
48
  import { InlineChatAffordance } from './inlineChatAffordance.js';
49
49
  import { InlineChatInputWidget, InlineChatSessionOverlayWidget } from './inlineChatOverlayWidget.js';
50
+ import { continueInPanelChat } from './inlineChatSessionService.js';
50
51
  import { IInlineChatSessionService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.service';
51
52
  import { InlineChatZoneWidget } from './inlineChatZoneWidget.js';
52
53
  import { observableValue } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableValue';
@@ -139,6 +140,7 @@ let InlineChatController = class InlineChatController {
139
140
  const ctxInlineChatVisible = CTX_INLINE_CHAT_VISIBLE.bindTo(contextKeyService);
140
141
  const ctxFileBelongsToChat = CTX_INLINE_CHAT_FILE_BELONGS_TO_CHAT.bindTo(contextKeyService);
141
142
  const ctxPendingConfirmation = CTX_INLINE_CHAT_PENDING_CONFIRMATION.bindTo(contextKeyService);
143
+ const ctxTerminated = CTX_INLINE_CHAT_TERMINATED.bindTo(contextKeyService);
142
144
  const notebookAgentConfig = observableConfigValue(InlineChatConfigKeys.notebookAgent, false, this._configurationService);
143
145
  this._renderMode = observableConfigValue(InlineChatConfigKeys.RenderMode, "zone", this._configurationService);
144
146
  this._store.add(autorun(r => {
@@ -273,7 +275,11 @@ let InlineChatController = class InlineChatController {
273
275
  }
274
276
  }));
275
277
  const defaultPlaceholderObs = ( visibleSessionObs.map((session, r) => {
276
- return session?.initialSelection.isEmpty() ? ( localize(9658, "Generate code")) : ( localize(9659, "Modify selected code"));
278
+ return session?.initialSelection.isEmpty() ? ( localize(9886, "Generate code")) : ( localize(9887, "Modify selected code"));
279
+ }));
280
+ this._store.add(autorun(r => {
281
+ const session = visibleSessionObs.read(r);
282
+ ctxTerminated.set(!!session?.terminationState.read(r));
277
283
  }));
278
284
  this._store.add(autorun(r => {
279
285
  const session = visibleSessionObs.read(r);
@@ -311,10 +317,11 @@ let InlineChatController = class InlineChatController {
311
317
  const isInProgress = lastRequest?.response?.isInProgress.read(r);
312
318
  const isPendingConfirmation = !!lastRequest?.response?.isPendingConfirmation.read(r);
313
319
  const isError = !!lastRequest?.response?.result?.errorDetails;
320
+ const isTerminated = !!session.terminationState.read(r);
314
321
  ctxPendingConfirmation.set(isPendingConfirmation);
315
322
  const entry = session.editingSession.readEntry(session.uri, r);
316
323
  const isNotSettled = entry ? entry.state.read(r) === ModifiedFileEntryState.Modified : false;
317
- if (isInProgress || isNotSettled || isPendingConfirmation || isError) {
324
+ if (isInProgress || isNotSettled || isPendingConfirmation || isError || isTerminated) {
318
325
  sessionOverlayWidget.show(session);
319
326
  } else {
320
327
  sessionOverlayWidget.hide();
@@ -363,12 +370,16 @@ let InlineChatController = class InlineChatController {
363
370
  ).read(r);
364
371
  }));
365
372
  this._store.add(autorun(r => {
373
+ const session = visibleSessionObs.read(r);
366
374
  const response = lastResponseObs.read(r);
375
+ const terminationState = session?.terminationState.read(r);
367
376
  this._zone.rawValue?.widget.updateInfo("");
368
377
  if (!response?.isInProgress.read(r)) {
369
378
  if (response?.result?.errorDetails) {
370
379
  this._zone.rawValue?.widget.updateInfo(`$(error) ${response.result.errorDetails.message}`);
371
380
  alert(response.result.errorDetails.message);
381
+ } else if (terminationState) {
382
+ this._zone.rawValue?.widget.updateInfo(`$(info) ${renderAsPlaintext(terminationState)}`);
372
383
  }
373
384
  this._zone.rawValue?.widget.domNode.classList.toggle("request-in-progress", false);
374
385
  this._zone.rawValue?.widget.chatWidget.setInputPlaceholder(defaultPlaceholderObs.read(r));
@@ -379,7 +390,7 @@ let InlineChatController = class InlineChatController {
379
390
  if (lastProgress) {
380
391
  placeholder = renderAsPlaintext(lastProgress.content);
381
392
  }
382
- this._zone.rawValue?.widget.chatWidget.setInputPlaceholder(placeholder || ( localize(9660, "Working...")));
393
+ this._zone.rawValue?.widget.chatWidget.setInputPlaceholder(placeholder || ( localize(9888, "Working...")));
383
394
  }
384
395
  }));
385
396
  this._store.add(autorun(r => {
@@ -450,7 +461,7 @@ let InlineChatController = class InlineChatController {
450
461
  }
451
462
  if (entries.length > 0) {
452
463
  this._zone.value.widget.chatWidget.attachmentModel.addContext(...entries);
453
- const msg = entries.length > 1 ? ( localize(9661, "Fix the attached problems")) : ( localize(9662, "Fix the attached problem"));
464
+ const msg = entries.length > 1 ? ( localize(9889, "Fix the attached problems")) : ( localize(9890, "Fix the attached problem"));
454
465
  this._zone.value.widget.chatWidget.input.setValue(msg, true);
455
466
  arg.message = msg;
456
467
  this._zone.value.widget.chatWidget.inputEditor.setSelection(( new Selection(1, 1, Number.MAX_SAFE_INTEGER, 1)));
@@ -521,10 +532,31 @@ let InlineChatController = class InlineChatController {
521
532
  if (!session) {
522
533
  return;
523
534
  }
524
- this._chatService.cancelCurrentRequestForSession(session.chatModel.sessionResource, "inlineChatReject");
535
+ await this._chatService.cancelCurrentRequestForSession(session.chatModel.sessionResource, "inlineChatReject");
525
536
  await session.editingSession.reject();
526
537
  session.dispose();
527
538
  }
539
+ async continueSessionInChat() {
540
+ const session = this._currentSession.get();
541
+ if (!session) {
542
+ return;
543
+ }
544
+ await this._instaService.invokeFunction(continueInPanelChat, session);
545
+ }
546
+ async rephraseSession() {
547
+ const session = this._currentSession.get();
548
+ if (!session) {
549
+ return;
550
+ }
551
+ const requestText = session.chatModel.getRequests().at(-1)?.message.text;
552
+ session.dispose();
553
+ if (!requestText) {
554
+ return;
555
+ }
556
+ const selection = this._editor.getSelection();
557
+ const placeholder = selection && !selection.isEmpty() ? ( localize(9891, "Describe how to change this")) : ( localize(9892, "Describe what to generate"));
558
+ await this.inputOverlayWidget.showMenuAtSelection(placeholder, requestText);
559
+ }
528
560
  async _selectVendorDefaultModel(session) {
529
561
  const model = this._zone.value.widget.chatWidget.input.selectedLanguageModel.get();
530
562
  if (model && !model.metadata.isDefaultForLocation[session.chatModel.initialLocation]) {
@@ -24,6 +24,7 @@ export declare class InlineChatEditorAffordance extends Disposable implements IC
24
24
  private _show;
25
25
  private _showAtSelection;
26
26
  private _showAtLineStart;
27
+ private _isPositionInViewport;
27
28
  private _hide;
28
29
  getId(): string;
29
30
  getDomNode(): HTMLElement;
@@ -186,6 +186,18 @@ let InlineChatEditorAffordance = class InlineChatEditorAffordance extends Dispos
186
186
  this._hide();
187
187
  }
188
188
  }));
189
+ this._store.add(this._editor.onDidScrollChange(() => {
190
+ const sel = selection.get();
191
+ if (!sel) {
192
+ return;
193
+ }
194
+ const isInViewport = this._isPositionInViewport();
195
+ if (isInViewport && !this._isVisible) {
196
+ this._show(sel);
197
+ } else if (!isInViewport && this._isVisible) {
198
+ this._hide();
199
+ }
200
+ }));
189
201
  }
190
202
  _show(selection) {
191
203
  if (selection.isEmpty()) {
@@ -241,6 +253,25 @@ let InlineChatEditorAffordance = class InlineChatEditorAffordance extends Dispos
241
253
  preference: [ContentWidgetPositionPreference.EXACT]
242
254
  };
243
255
  }
256
+ _isPositionInViewport() {
257
+ const widgetPosition = this._position?.position;
258
+ if (!widgetPosition) {
259
+ return false;
260
+ }
261
+ const visibleRanges = this._editor.getVisibleRanges();
262
+ const isLineVisible = ( visibleRanges.some(
263
+ range => widgetPosition.lineNumber >= range.startLineNumber && widgetPosition.lineNumber <= range.endLineNumber
264
+ ));
265
+ if (!isLineVisible) {
266
+ return false;
267
+ }
268
+ const scrolledPos = this._editor.getScrolledVisiblePosition(widgetPosition);
269
+ if (!scrolledPos) {
270
+ return false;
271
+ }
272
+ const layoutInfo = this._editor.getOptions().get(EditorOption.layoutInfo);
273
+ return scrolledPos.left >= 0 && scrolledPos.left <= layoutInfo.width;
274
+ }
244
275
  _hide() {
245
276
  if (this._isVisible) {
246
277
  this._isVisible = false;
@@ -9,7 +9,8 @@ import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/pl
9
9
  import { IKeybindingService } from "@codingame/monaco-vscode-api/vscode/vs/platform/keybinding/common/keybinding.service";
10
10
  import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service";
11
11
  import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
12
- import { IInlineChatSession2 } from "@codingame/monaco-vscode-chat-service-override/vscode/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService";
12
+ import { IInlineChatSession2 } from "./inlineChatSessionService.js";
13
+ import { IInlineChatHistoryService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.service";
13
14
  /**
14
15
  * Overlay widget that displays a vertical action bar menu.
15
16
  */
@@ -17,6 +18,7 @@ export declare class InlineChatInputWidget extends Disposable {
17
18
  private readonly _editorObs;
18
19
  private readonly _contextKeyService;
19
20
  private readonly _menuService;
21
+ private readonly _historyService;
20
22
  private readonly _domNode;
21
23
  private readonly _container;
22
24
  private readonly _inputContainer;
@@ -30,15 +32,18 @@ export declare class InlineChatInputWidget extends Disposable {
30
32
  private _anchorLineNumber;
31
33
  private _anchorLeft;
32
34
  private _anchorAbove;
33
- constructor(_editorObs: ObservableCodeEditor, _contextKeyService: IContextKeyService, _menuService: IMenuService, instantiationService: IInstantiationService, modelService: IModelService, configurationService: IConfigurationService);
35
+ constructor(_editorObs: ObservableCodeEditor, _contextKeyService: IContextKeyService, _menuService: IMenuService, instantiationService: IInstantiationService, modelService: IModelService, configurationService: IConfigurationService, _historyService: IInlineChatHistoryService);
34
36
  get value(): string;
37
+ addToHistory(value: string): void;
38
+ private _showPreviousHistoryValue;
39
+ private _showNextHistoryValue;
35
40
  /**
36
41
  * Show the widget at the specified line.
37
42
  * @param lineNumber The line number to anchor the widget to
38
43
  * @param left Left offset relative to editor
39
44
  * @param anchorAbove Whether to anchor above the position (widget grows upward)
40
45
  */
41
- show(lineNumber: number, left: number, anchorAbove: boolean, placeholder: string): void;
46
+ show(lineNumber: number, left: number, anchorAbove: boolean, placeholder: string, value?: string): void;
42
47
  private _updatePosition;
43
48
  /**
44
49
  * Hide the widget (removes from editor but does not dispose).
@@ -55,6 +60,10 @@ export declare class InlineChatSessionOverlayWidget extends Disposable {
55
60
  private readonly _logService;
56
61
  private readonly _domNode;
57
62
  private readonly _container;
63
+ private readonly _markdownContainer;
64
+ private readonly _markdownMessage;
65
+ private readonly _markdownScrollable;
66
+ private readonly _contentRow;
58
67
  private readonly _statusNode;
59
68
  private readonly _icon;
60
69
  private readonly _message;