@codingame/monaco-vscode-katex-common 32.0.2 → 33.0.7

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 (142) 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/platform/agentHost/common/claudeSessionConfigKeys.d.ts +30 -0
  4. package/vscode/src/vs/platform/agentHost/common/claudeSessionConfigKeys.js +8 -0
  5. package/vscode/src/vs/platform/agentHost/common/sessionConfigKeys.d.ts +32 -0
  6. package/vscode/src/vs/platform/agentHost/common/sessionConfigKeys.js +13 -0
  7. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityProvider.js +16 -16
  8. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.js +9 -9
  9. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.js +1 -1
  10. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +56 -36
  11. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.js +10 -10
  12. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +11 -11
  13. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +13 -13
  14. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.contribution.d.ts +45 -0
  15. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.contribution.js +114 -0
  16. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.d.ts +87 -0
  17. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.js +502 -0
  18. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostGenericConfigChips.d.ts +45 -0
  19. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostGenericConfigChips.js +188 -0
  20. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/media/agentHostChatInputPicker.css +153 -0
  21. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionHoverWidget.js +8 -8
  22. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.js +2 -2
  23. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.js +9 -9
  24. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.js +1 -1
  25. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.js +30 -30
  26. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.js +52 -52
  27. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.js +13 -13
  28. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.js +34 -34
  29. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.js +1 -1
  30. package/vscode/src/vs/workbench/contrib/chat/browser/tools/chatToolRiskAssessmentService.js +4 -4
  31. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +13 -13
  32. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatAgentHover.js +2 -2
  33. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatArtifactsWidget.js +10 -10
  34. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentMarkdownRenderer.d.ts +1 -0
  35. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentMarkdownRenderer.js +23 -20
  36. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentCommandContentPart.js +1 -1
  37. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAnonymousRateLimitedPart.js +2 -2
  38. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.js +1 -1
  39. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCodeCitationContentPart.js +1 -1
  40. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCommandContentPart.js +1 -1
  41. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationContentPart.js +2 -2
  42. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.d.ts +13 -1
  43. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.js +40 -13
  44. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDisabledClaudeHooksContentPart.js +3 -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.js +13 -13
  48. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.d.ts +4 -1
  49. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.js +217 -13
  50. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.js +8 -8
  51. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.js +4 -4
  52. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPlanReviewPart.js +30 -30
  53. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.js +1 -1
  54. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.js +44 -44
  55. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.js +4 -4
  56. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.js +6 -6
  57. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatResourceGroupWidget.js +5 -5
  58. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.js +10 -10
  59. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.js +6 -6
  60. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.js +1 -1
  61. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.d.ts +2 -0
  62. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.js +36 -23
  63. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTipContentPart.js +12 -9
  64. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.js +17 -17
  65. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.d.ts +1 -3
  66. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.js +8 -13
  67. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.js +1 -1
  68. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatWorkspaceEditContentPart.js +3 -3
  69. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.js +14 -14
  70. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatTerminalToolProgressPart.css +16 -0
  71. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.js +1 -1
  72. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.js +4 -4
  73. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppModel.js +1 -1
  74. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppSubPart.js +3 -3
  75. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMissingSandboxDepsConfirmationSubPart.js +2 -2
  76. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatModifiedFilesConfirmationSubPart.js +6 -6
  77. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js +24 -21
  78. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.d.ts +6 -1
  79. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.js +72 -23
  80. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationCarouselPart.js +8 -8
  81. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.js +6 -6
  82. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputPart.d.ts +2 -4
  83. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputPart.js +7 -22
  84. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPartUtilities.js +5 -5
  85. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.js +5 -5
  86. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolProgressPart.js +3 -3
  87. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/media/toolRiskBadge.css +3 -3
  88. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/toolRiskBadgeWidget.d.ts +1 -0
  89. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/toolRiskBadgeWidget.js +25 -5
  90. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatDragAndDrop.js +11 -11
  91. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.d.ts +9 -1
  92. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.js +41 -27
  93. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.js +31 -25
  94. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatFollowups.js +1 -1
  95. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationWidget.js +1 -1
  96. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.d.ts +4 -0
  97. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.js +89 -27
  98. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.d.ts +4 -2
  99. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.js +203 -107
  100. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelSelectionLogic.d.ts +6 -1
  101. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelSelectionLogic.js +3 -3
  102. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatPhoneInputPresenter.js +2 -2
  103. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.js +5 -5
  104. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.js +5 -5
  105. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem.js +1 -1
  106. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.js +18 -18
  107. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.js +3 -3
  108. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerActionItem.js +3 -3
  109. package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chat.css +32 -81
  110. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.js +7 -7
  111. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.js +4 -4
  112. package/vscode/src/vs/workbench/contrib/chat/common/chatImageExtraction.js +6 -6
  113. package/vscode/src/vs/workbench/contrib/chat/common/chatPermissionWarnings.js +6 -6
  114. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatColors.js +18 -18
  115. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +3 -3
  116. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +5 -5
  117. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +1 -1
  118. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChat.css +2 -2
  119. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +30 -30
  120. package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.js +3 -3
  121. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +7 -7
  122. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +2 -2
  123. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.js +2 -2
  124. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.js +24 -24
  125. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.js +3 -3
  126. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.js +7 -7
  127. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.js +1 -1
  128. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.js +5 -5
  129. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.js +1 -1
  130. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditor.js +1 -1
  131. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditorInput.js +1 -1
  132. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +6 -6
  133. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +4 -0
  134. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +1 -1
  135. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +12 -12
  136. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +4 -4
  137. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +29 -7
  138. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +27 -8
  139. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +17 -8
  140. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +150 -69
  141. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.d.ts +1 -2
  142. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +9 -14
@@ -56,10 +56,10 @@ let ChatQuotaExceededPart = class ChatQuotaExceededPart extends Disposable {
56
56
  case ChatEntitlement.Pro:
57
57
  case ChatEntitlement.ProPlus:
58
58
  case ChatEntitlement.Max:
59
- primaryButtonLabel = isUsageBasedBilling ? ( localize(7186, "Configure Additional Spend")) : ( localize(7187, "Configure Budget"));
59
+ primaryButtonLabel = isUsageBasedBilling ? ( localize(7261, "Configure Budget")) : ( localize(7262, "Configure Budget"));
60
60
  break;
61
61
  case ChatEntitlement.Free:
62
- primaryButtonLabel = ( localize(7188, "Upgrade to GitHub Copilot Pro"));
62
+ primaryButtonLabel = ( localize(7263, "Upgrade to GitHub Copilot Pro"));
63
63
  break;
64
64
  }
65
65
  let hasAddedWaitWarning = false;
@@ -68,7 +68,7 @@ let ChatQuotaExceededPart = class ChatQuotaExceededPart extends Disposable {
68
68
  return;
69
69
  }
70
70
  hasAddedWaitWarning = true;
71
- append(messageContainer, $(".chat-quota-wait-warning", undefined, ( localize(7189, "Changes may take a few minutes to take effect."))));
71
+ append(messageContainer, $(".chat-quota-wait-warning", undefined, ( localize(7264, "Changes may take a few minutes to take effect."))));
72
72
  };
73
73
  let hasAddedRetryButton = false;
74
74
  const addRetryButtonIfNeeded = () => {
@@ -81,7 +81,7 @@ let ChatQuotaExceededPart = class ChatQuotaExceededPart extends Disposable {
81
81
  buttonForeground: asCssVariable(textLinkForeground)
82
82
  })));
83
83
  retryButton.element.classList.add("chat-quota-error-secondary-button");
84
- retryButton.label = ( localize(7190, "Click to Retry"));
84
+ retryButton.label = ( localize(7265, "Click to Retry"));
85
85
  this._register(retryButton.onDidClick(() => {
86
86
  const widget = chatWidgetService.getWidgetBySessionResource(element.sessionResource);
87
87
  if (!widget) {
@@ -57,7 +57,7 @@ let ChatCollapsibleListContentPart = class ChatCollapsibleListContentPart extend
57
57
  hoverService,
58
58
  configurationService
59
59
  ) {
60
- super(labelOverride ?? (data.length > 1 ? ( localize(7191, "Used {0} references", data.length)) : ( localize(7192, "Used {0} reference", 1))), context, hoverMessage, hoverService, configurationService);
60
+ super(labelOverride ?? (data.length > 1 ? ( localize(7266, "Used {0} references", data.length)) : ( localize(7267, "Used {0} reference", 1))), context, hoverMessage, hoverService, configurationService);
61
61
  this.data = data;
62
62
  this.contentReferencesListPool = contentReferencesListPool;
63
63
  this.openerService = openerService;
@@ -215,7 +215,7 @@ let CollapsibleListPool = class CollapsibleListPool extends Disposable {
215
215
  return basename(reference.uri.path);
216
216
  }
217
217
  },
218
- getWidgetAriaLabel: () => ( localize(7193, "Collapsible Chat References List"))
218
+ getWidgetAriaLabel: () => ( localize(7268, "Collapsible Chat References List"))
219
219
  },
220
220
  dnd: {
221
221
  getDragURI: element => getResourceForElement(element)?.toString() ?? null,
@@ -404,7 +404,7 @@ let CollapsibleListRenderer = class CollapsibleListRenderer {
404
404
  name: settingId
405
405
  }, {
406
406
  icon: Codicon.settingsGear,
407
- title: ( localize(7194, "Open setting '{0}'", settingId)),
407
+ title: ( localize(7269, "Open setting '{0}'", settingId)),
408
408
  strikethrough: data.excluded,
409
409
  extraClasses
410
410
  });
@@ -449,7 +449,7 @@ let CollapsibleListRenderer = class CollapsibleListRenderer {
449
449
  templateData.addedSpan.textContent = `+${diffMeta.added}`;
450
450
  templateData.removedSpan.textContent = `-${diffMeta.removed}`;
451
451
  templateData.fileDiffsContainer.setAttribute("aria-label", ( localize(
452
- 7195,
452
+ 7270,
453
453
  "{0} lines added, {1} lines removed",
454
454
  diffMeta.added,
455
455
  diffMeta.removed
@@ -530,7 +530,7 @@ registerAction2(class AddToChatAction extends Action2 {
530
530
  super({
531
531
  id: AddToChatAction.id,
532
532
  title: {
533
- ...( localize2(7196, "Add File to Chat"))
533
+ ...( localize2(7271, "Add File to Chat"))
534
534
  },
535
535
  f1: false,
536
536
  menu: [{
@@ -560,7 +560,7 @@ registerAction2(class OpenChatReferenceLinkAction extends Action2 {
560
560
  super({
561
561
  id: OpenChatReferenceLinkAction.id,
562
562
  title: {
563
- ...( localize2(7197, "Copy Link"))
563
+ ...( localize2(7272, "Copy Link"))
564
564
  },
565
565
  f1: false,
566
566
  menu: [{
@@ -188,7 +188,7 @@ class SaveResourcesAction extends Action2 {
188
188
  constructor() {
189
189
  super({
190
190
  id: SaveResourcesAction.ID,
191
- title: ( localize2(7198, "Save...")),
191
+ title: ( localize2(7273, "Save...")),
192
192
  icon: Codicon.cloudDownload,
193
193
  menu: [{
194
194
  id: MenuId.ChatToolOutputResourceToolbar,
@@ -218,14 +218,14 @@ class SaveResourcesAction extends Action2 {
218
218
  await fileService.writeFile(target, contents.value);
219
219
  }
220
220
  } catch (e) {
221
- notificationService.error(( localize(7199, "Failed to save {0}: {1}", basename(part.uri), e)));
221
+ notificationService.error(( localize(7274, "Failed to save {0}: {1}", basename(part.uri), e)));
222
222
  }
223
223
  };
224
224
  const withProgress = async (thenReveal, todo) => {
225
225
  await progressService.withProgress({
226
226
  location: ProgressLocation.Notification,
227
227
  delay: 5_000,
228
- title: ( localize(7200, "Saving resources..."))
228
+ title: ( localize(7275, "Saving resources..."))
229
229
  }, async report => {
230
230
  for (const task of todo) {
231
231
  await task();
@@ -238,7 +238,7 @@ class SaveResourcesAction extends Action2 {
238
238
  if (workspaceContextService.isInsideWorkspace(thenReveal)) {
239
239
  commandService.executeCommand(REVEAL_IN_EXPLORER_COMMAND_ID, thenReveal);
240
240
  } else {
241
- notificationService.info(( localize(7201, "Saved resources to {0}", labelService.getUriLabel(thenReveal))));
241
+ notificationService.info(( localize(7276, "Saved resources to {0}", labelService.getUriLabel(thenReveal))));
242
242
  }
243
243
  };
244
244
  if (context.parts.length === 1) {
@@ -250,7 +250,7 @@ class SaveResourcesAction extends Action2 {
250
250
  await withProgress(uri, [() => savePart(part, false, uri)]);
251
251
  } else {
252
252
  const uris = await fileDialog.showOpenDialog({
253
- title: ( localize(7202, "Pick folder to save resources")),
253
+ title: ( localize(7277, "Pick folder to save resources")),
254
254
  canSelectFiles: false,
255
255
  canSelectFolders: true,
256
256
  canSelectMany: false,
@@ -25,13 +25,13 @@ import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/obse
25
25
  var ChatSubagentContentPart_1;
26
26
  registerCss(chatSubagentContent);
27
27
  const MAX_TITLE_LENGTH = 100;
28
- const subagentWorkingMessages = [( localize(7203, "Processing")), ( localize(7204, "Preparing")), ( localize(7205, "Loading")), ( localize(7206, "Analyzing")), ( localize(7207, "Evaluating"))];
28
+ const subagentWorkingMessages = [( localize(7278, "Processing")), ( localize(7279, "Preparing")), ( localize(7280, "Loading")), ( localize(7281, "Analyzing")), ( localize(7282, "Evaluating"))];
29
29
  let ChatSubagentContentPart = ChatSubagentContentPart_1 = class ChatSubagentContentPart extends ChatCollapsibleContentPart {
30
30
  static isParentSubagentTool(toolInvocation) {
31
31
  return toolInvocation.toolSpecificData?.kind === "subagent" && !toolInvocation.subAgentInvocationId;
32
32
  }
33
33
  static extractSubagentInfo(toolInvocation) {
34
- const defaultDescription = ( localize(7208, "Running subagent"));
34
+ const defaultDescription = ( localize(7283, "Running subagent"));
35
35
  if (!ChatSubagentContentPart_1.isParentSubagentTool(toolInvocation)) {
36
36
  return {
37
37
  description: defaultDescription,
@@ -92,7 +92,7 @@ let ChatSubagentContentPart = ChatSubagentContentPart_1 = class ChatSubagentCont
92
92
  prompt,
93
93
  modelName
94
94
  } = ChatSubagentContentPart_1.extractSubagentInfo(toolInvocation);
95
- const rawPrefix = agentName || ( localize(7209, "Subagent"));
95
+ const rawPrefix = agentName || ( localize(7284, "Subagent"));
96
96
  const prefix = rawPrefix.charAt(0).toUpperCase() + rawPrefix.slice(1);
97
97
  const initialTitle = `${prefix}: ${description}`;
98
98
  super(initialTitle, context, undefined, hoverService, configurationService);
@@ -239,7 +239,7 @@ let ChatSubagentContentPart = ChatSubagentContentPart_1 = class ChatSubagentCont
239
239
  return;
240
240
  }
241
241
  const lines = this.prompt.split("\n");
242
- const rawFirstLine = lines[0] || ( localize(7210, "Prompt"));
242
+ const rawFirstLine = lines[0] || ( localize(7285, "Prompt"));
243
243
  const restOfLines = lines.slice(1).join("\n").trim();
244
244
  const titleContent = rcut(rawFirstLine, MAX_TITLE_LENGTH);
245
245
  const wasTruncated = rawFirstLine.length > MAX_TITLE_LENGTH;
@@ -287,7 +287,7 @@ let ChatSubagentContentPart = ChatSubagentContentPart_1 = class ChatSubagentCont
287
287
  if (!this._isDefaultDescription && this.description) {
288
288
  return this.description;
289
289
  }
290
- return localize(7209, "Subagent");
290
+ return localize(7284, "Subagent");
291
291
  }
292
292
  markAsInactive() {
293
293
  this.isActive = false;
@@ -298,7 +298,7 @@ let ChatSubagentContentPart = ChatSubagentContentPart_1 = class ChatSubagentCont
298
298
  this.removeWorkingSpinner();
299
299
  this.hideConfirmationPlaceholder();
300
300
  if (this._isDefaultDescription) {
301
- this.description = ( localize(7211, "Ran subagent"));
301
+ this.description = ( localize(7286, "Ran subagent"));
302
302
  }
303
303
  this.finalizeTitle();
304
304
  this.setExpanded(false);
@@ -310,7 +310,7 @@ let ChatSubagentContentPart = ChatSubagentContentPart_1 = class ChatSubagentCont
310
310
  }
311
311
  }
312
312
  updateTitle() {
313
- const rawName = this.agentName || ( localize(7209, "Subagent"));
313
+ const rawName = this.agentName || ( localize(7284, "Subagent"));
314
314
  const prefix = rawName.charAt(0).toUpperCase() + rawName.slice(1);
315
315
  const shimmerText = `${prefix}: ${this.description}`;
316
316
  const toolCallText = this.currentRunningToolMessage && this.isActive ? ` \u2014 ${this.currentRunningToolMessage}` : ``;
@@ -371,7 +371,7 @@ let ChatSubagentContentPart = ChatSubagentContentPart_1 = class ChatSubagentCont
371
371
  return;
372
372
  }
373
373
  this._hoverDisposable.value = this.hoverService.setupDelayedHover(this._collapseButton.element, {
374
- content: ( localize(7212, "Model: {0}", this.modelName))
374
+ content: ( localize(7287, "Model: {0}", this.modelName))
375
375
  });
376
376
  }
377
377
  trackToolState(toolInvocation) {
@@ -425,7 +425,7 @@ let ChatSubagentContentPart = ChatSubagentContentPart_1 = class ChatSubagentCont
425
425
  }
426
426
  getConfirmationPlaceholderText() {
427
427
  const count = this.toolsWaitingForCarouselConfirmation;
428
- return count === 1 ? ( localize(7213, "1 pending confirmation")) : ( localize(7214, "{0} pending confirmations", count));
428
+ return count === 1 ? ( localize(7288, "1 pending confirmation")) : ( localize(7289, "{0} pending confirmations", count));
429
429
  }
430
430
  updateConfirmationPlaceholderLabel() {
431
431
  if (this._confirmationPlaceholderLabel) {
@@ -630,7 +630,7 @@ let ChatSubagentContentPart = ChatSubagentContentPart_1 = class ChatSubagentCont
630
630
  }
631
631
  }
632
632
  appendHookItem(factory, hookPart) {
633
- const hookMessage = hookPart.stopReason ? (hookPart.toolDisplayName ? ( localize(7215, "Blocked {0}", hookPart.toolDisplayName)) : ( localize(7216, "Blocked by hook"))) : (hookPart.toolDisplayName ? ( localize(7217, "Warning for {0}", hookPart.toolDisplayName)) : ( localize(7218, "Hook warning")));
633
+ const hookMessage = hookPart.stopReason ? (hookPart.toolDisplayName ? ( localize(7290, "Blocked {0}", hookPart.toolDisplayName)) : ( localize(7291, "Blocked by hook"))) : (hookPart.toolDisplayName ? ( localize(7292, "Warning for {0}", hookPart.toolDisplayName)) : ( localize(7293, "Hook warning")));
634
634
  this.currentRunningToolMessage = hookMessage;
635
635
  this.updateTitle();
636
636
  if (this.isExpanded() || this.hasExpandedOnce) {
@@ -53,8 +53,8 @@ let ChatSuggestNextWidget = class ChatSuggestNextWidget extends Disposable {
53
53
  return;
54
54
  }
55
55
  this._currentMode = mode;
56
- const modeName = mode.name.get() || mode.label.get() || ( localize(7219, "current mode"));
57
- this.titleElement.textContent = ( localize(7220, "Proceed from {0}", modeName));
56
+ const modeName = mode.name.get() || mode.label.get() || ( localize(7294, "current mode"));
57
+ this.titleElement.textContent = ( localize(7295, "Proceed from {0}", modeName));
58
58
  const childrenToRemove = [];
59
59
  for (let i = 1; i < this.promptsContainer.children.length; i++) {
60
60
  childrenToRemove.push(this.promptsContainer.children[i]);
@@ -91,7 +91,7 @@ let ChatSuggestNextWidget = class ChatSuggestNextWidget extends Disposable {
91
91
  const button = $(".chat-welcome-view-suggested-prompt");
92
92
  button.setAttribute("tabindex", "0");
93
93
  button.setAttribute("role", "button");
94
- button.setAttribute("aria-label", ( localize(7221, "{0}", handoff.label)));
94
+ button.setAttribute("aria-label", ( localize(7296, "{0}", handoff.label)));
95
95
  const titleElement = append(button, $(".chat-welcome-view-suggested-prompt-title"));
96
96
  titleElement.textContent = handoff.label;
97
97
  const showContinueOn = handoff.showContinueOn ?? true;
@@ -112,7 +112,7 @@ let ChatSuggestNextWidget = class ChatSuggestNextWidget extends Disposable {
112
112
  const dropdownContainer = append(button, $(".chat-suggest-next-dropdown"));
113
113
  dropdownContainer.setAttribute("tabindex", "0");
114
114
  dropdownContainer.setAttribute("role", "button");
115
- dropdownContainer.setAttribute("aria-label", ( localize(7222, "More options for {0}", handoff.label)));
115
+ dropdownContainer.setAttribute("aria-label", ( localize(7297, "More options for {0}", handoff.label)));
116
116
  dropdownContainer.setAttribute("aria-haspopup", "true");
117
117
  const separator = append(dropdownContainer, $(".chat-suggest-next-separator"));
118
118
  separator.setAttribute("aria-hidden", "true");
@@ -127,7 +127,7 @@ let ChatSuggestNextWidget = class ChatSuggestNextWidget extends Disposable {
127
127
  const name = getAgentSessionProviderName(provider);
128
128
  return (new Action(
129
129
  contrib.type,
130
- localize(7223, "Continue in {0}", name),
130
+ localize(7298, "Continue in {0}", name),
131
131
  ThemeIcon.isThemeIcon(icon) ? ThemeIcon.asClassName(icon) : undefined,
132
132
  true,
133
133
  () => {
@@ -197,7 +197,7 @@ let ChatSuggestNextWidget = class ChatSuggestNextWidget extends Disposable {
197
197
  const currentHandoffs = this._currentMode?.handOffs?.get();
198
198
  return currentHandoffs?.find(h => h.label === handoffLabel) ?? handoff;
199
199
  };
200
- const label = ( localize(7224, "Start with Autopilot"));
200
+ const label = ( localize(7299, "Start with Autopilot"));
201
201
  const button = $(".chat-welcome-view-suggested-prompt");
202
202
  button.setAttribute("tabindex", "0");
203
203
  button.setAttribute("role", "button");
@@ -39,7 +39,7 @@ let ChatTextEditContentPart = class ChatTextEditContentPart extends Disposable {
39
39
  this.domNode = $(
40
40
  ".interactive-edits-summary",
41
41
  undefined,
42
- !element.isComplete ? "" : element.isCanceled ? ( localize(7225, "Making changes was aborted.")) : ( localize(7226, "Made changes."))
42
+ !element.isComplete ? "" : element.isCanceled ? ( localize(7300, "Making changes was aborted.")) : ( localize(7301, "Made changes."))
43
43
  );
44
44
  } else {
45
45
  this.domNode = $("div");
@@ -83,6 +83,7 @@ export declare class ChatThinkingContentPart extends ChatCollapsibleContentPart
83
83
  private titleDetailContainer;
84
84
  private readonly _externalResourceWidget;
85
85
  private readonly _titleDetailRendered;
86
+ private readonly _pendingAppendRefresh;
86
87
  private readonly diffStatsByPartId;
87
88
  private _aggregatedDiff;
88
89
  get aggregatedDiff(): IEditSessionDiffStats;
@@ -166,6 +167,7 @@ export declare class ChatThinkingContentPart extends ChatCollapsibleContentPart
166
167
  private trackToolMetadata;
167
168
  private updateExternalResourceParts;
168
169
  private appendItemToDOM;
170
+ private scheduleAppendRefresh;
169
171
  private materializeLazyItem;
170
172
  setupThinkingContainer(content: IChatThinkingPart): void;
171
173
  protected setTitle(title: string, omitPrefix?: boolean): void;
@@ -92,13 +92,13 @@ var WorkingMessageCategory;
92
92
  WorkingMessageCategory["Terminal"] = "terminal";
93
93
  WorkingMessageCategory["Tool"] = "tool";
94
94
  })(WorkingMessageCategory || (WorkingMessageCategory = {}));
95
- const defaultThinkingMessages = [( localize(7227, "Thinking")), ( localize(7228, "Reasoning")), ( localize(7229, "Considering")), ( localize(7230, "Analyzing")), ( localize(7231, "Evaluating")), ( localize(7232, "Working"))];
96
- const terminalMessages = [( localize(7233, "Executing")), ( localize(7234, "Running")), ( localize(7235, "Processing"))];
97
- const toolMessages = [( localize(7236, "Processing")), ( localize(7237, "Preparing")), ( localize(7238, "Loading")), ( localize(7239, "Analyzing")), ( localize(7240, "Evaluating"))];
95
+ const defaultThinkingMessages = [( localize(7302, "Thinking")), ( localize(7303, "Reasoning")), ( localize(7304, "Considering")), ( localize(7305, "Analyzing")), ( localize(7306, "Evaluating")), ( localize(7307, "Working"))];
96
+ const terminalMessages = [( localize(7308, "Executing")), ( localize(7309, "Running")), ( localize(7310, "Processing"))];
97
+ const toolMessages = [( localize(7311, "Processing")), ( localize(7312, "Preparing")), ( localize(7313, "Loading")), ( localize(7314, "Analyzing")), ( localize(7315, "Evaluating"))];
98
98
  const funWorkingMessages = [(
99
- localize(7241, "Bribing the hamster")), ( localize(7242, "Reticulating splines")), ( localize(7243, "Untangling the spaghetti")), (
100
- localize(7244, "Mining diamonds")), (
101
- localize(7245, "Summoning Clippy"))];
99
+ localize(7316, "Bribing the hamster")), ( localize(7317, "Reticulating splines")), ( localize(7318, "Untangling the spaghetti")), (
100
+ localize(7319, "Mining diamonds")), (
101
+ localize(7320, "Summoning Clippy"))];
102
102
  const FUN_WORKING_MESSAGE_RATE = 100;
103
103
  function maybePickFunWorkingMessage() {
104
104
  if (Math.floor(Math.random() * FUN_WORKING_MESSAGE_RATE) === 0) {
@@ -163,7 +163,7 @@ let ChatThinkingContentPart = ChatThinkingContentPart_1 = class ChatThinkingCont
163
163
  accessibilityService
164
164
  ) {
165
165
  const initialText = extractTextFromPart(content);
166
- const extractedTitle = extractTitleFromThinkingContent(initialText) ?? ( localize(7246, "Thinking"));
166
+ const extractedTitle = extractTitleFromThinkingContent(initialText) ?? ( localize(7321, "Thinking"));
167
167
  super(extractedTitle, context, undefined, hoverService, configurationService);
168
168
  this.chatContentMarkdownRenderer = chatContentMarkdownRenderer;
169
169
  this.streamingCompleted = streamingCompleted;
@@ -174,8 +174,8 @@ let ChatThinkingContentPart = ChatThinkingContentPart_1 = class ChatThinkingCont
174
174
  this.storageService = storageService;
175
175
  this._onDidChangeHeight = this._register(( new Emitter()));
176
176
  this._asyncRenderCallback = () => this._onDidChangeHeight.fire();
177
- this.defaultTitle = ( localize(7247, "Thinking"));
178
- this.workingTitle = ( localize(7248, "Working"));
177
+ this.defaultTitle = ( localize(7322, "Thinking"));
178
+ this.workingTitle = ( localize(7323, "Working"));
179
179
  this._markdownResult = this._register(( new MutableDisposable()));
180
180
  this.fixedScrollingMode = false;
181
181
  this.autoScrollEnabled = true;
@@ -199,6 +199,7 @@ let ChatThinkingContentPart = ChatThinkingContentPart_1 = class ChatThinkingCont
199
199
  this.lastKnownContentHeight = 0;
200
200
  this.lastKnownScrollTop = 0;
201
201
  this._titleDetailRendered = this._register(( new MutableDisposable()));
202
+ this._pendingAppendRefresh = this._register(( new MutableDisposable()));
202
203
  this.diffStatsByPartId = ( new Map());
203
204
  this._aggregatedDiff = {
204
205
  added: 0,
@@ -220,7 +221,7 @@ let ChatThinkingContentPart = ChatThinkingContentPart_1 = class ChatThinkingCont
220
221
  this.appendedItemCount++;
221
222
  }
222
223
  if (this.configurationService.getValue(AccessibilityWorkbenchSettingId.VerboseChatProgressUpdates)) {
223
- alert(( localize(7249, "Thinking")));
224
+ alert(( localize(7324, "Thinking")));
224
225
  }
225
226
  if (configuredMode === ThinkingDisplayMode.Collapsed) {
226
227
  this.setExpanded(false);
@@ -580,9 +581,9 @@ let ChatThinkingContentPart = ChatThinkingContentPart_1 = class ChatThinkingCont
580
581
  diffContainer.appendChild($("span.label-added", {}, `+${added}`));
581
582
  diffContainer.appendChild($("span.label-removed", {}, `-${removed}`));
582
583
  labelElement.appendChild(diffContainer);
583
- const insertionsFragment = added === 1 ? ( localize(7250, "1 insertion")) : ( localize(7251, "{0} insertions", added));
584
- const deletionsFragment = removed === 1 ? ( localize(7252, "1 deletion")) : ( localize(7253, "{0} deletions", removed));
585
- this._collapseButton.element.ariaLabel = ( localize(7254, "{0}, {1}, {2}", title, insertionsFragment, deletionsFragment));
584
+ const insertionsFragment = added === 1 ? ( localize(7325, "1 insertion")) : ( localize(7326, "{0} insertions", added));
585
+ const deletionsFragment = removed === 1 ? ( localize(7327, "1 deletion")) : ( localize(7328, "{0} deletions", removed));
586
+ this._collapseButton.element.ariaLabel = ( localize(7329, "{0}, {1}, {2}", title, insertionsFragment, deletionsFragment));
586
587
  } else {
587
588
  this._collapseButton.element.ariaLabel = title;
588
589
  }
@@ -619,8 +620,8 @@ let ChatThinkingContentPart = ChatThinkingContentPart_1 = class ChatThinkingCont
619
620
  updateDropdownClickability(knownContentHeight) {
620
621
  let allowExpansion = this.shouldAllowExpansion();
621
622
  if (allowExpansion && this.fixedScrollingMode && !this.streamingCompleted && !this.element.isComplete && this.wrapper) {
622
- const contentHeight = knownContentHeight ?? (this.lastKnownContentHeight || this.wrapper.scrollHeight);
623
- if (contentHeight <= THINKING_SCROLL_MAX_HEIGHT) {
623
+ const contentHeight = knownContentHeight ?? this.lastKnownContentHeight;
624
+ if (!contentHeight || contentHeight <= THINKING_SCROLL_MAX_HEIGHT) {
624
625
  allowExpansion = false;
625
626
  }
626
627
  }
@@ -870,7 +871,7 @@ let ChatThinkingContentPart = ChatThinkingContentPart_1 = class ChatThinkingCont
870
871
  try {
871
872
  const models = await this.languageModelsService.selectLanguageModels({
872
873
  vendor: "copilot",
873
- id: "copilot-fast"
874
+ id: "copilot-utility-small"
874
875
  });
875
876
  if (!models.length) {
876
877
  this.setFallbackTitle();
@@ -1070,7 +1071,7 @@ ${this.hookCount > 0 ? `EXAMPLES WITH BLOCKED CONTENT (from hooks):
1070
1071
  }
1071
1072
  }
1072
1073
  setFallbackTitle() {
1073
- const finalLabel = this.appendedItemCount > 0 ? this.appendedItemCount === 1 ? ( localize(7255, "Finished with 1 step")) : ( localize(7256, "Finished with {0} steps", this.appendedItemCount)) : ( localize(7257, "Finished Working"));
1074
+ const finalLabel = this.appendedItemCount > 0 ? this.appendedItemCount === 1 ? ( localize(7330, "Finished with 1 step")) : ( localize(7331, "Finished with {0} steps", this.appendedItemCount)) : ( localize(7332, "Finished Working"));
1074
1075
  this.currentTitle = finalLabel;
1075
1076
  if (this.wrapper) {
1076
1077
  this.wrapper.classList.remove("chat-thinking-streaming");
@@ -1293,7 +1294,7 @@ ${this.hookCount > 0 ? `EXAMPLES WITH BLOCKED CONTENT (from hooks):
1293
1294
  const message = typeof toolInvocationOrMarkdown.invocationMessage === "string" ? toolInvocationOrMarkdown.invocationMessage : toolInvocationOrMarkdown.invocationMessage.value;
1294
1295
  const isStreamingEditTool = toolInvocationOrMarkdown.kind === "toolInvocation" && IChatToolInvocation.isStreaming(toolInvocationOrMarkdown) && isGenericEditToolId(toolInvocationOrMarkdown.toolId);
1295
1296
  if (isStreamingEditTool) {
1296
- toolCallLabel = ( localize(7258, "Editing files"));
1297
+ toolCallLabel = ( localize(7333, "Editing files"));
1297
1298
  } else {
1298
1299
  toolCallLabel = message;
1299
1300
  }
@@ -1412,9 +1413,9 @@ ${this.hookCount > 0 ? `EXAMPLES WITH BLOCKED CONTENT (from hooks):
1412
1413
  const codeblockInfo = extractCodeblockUrisFromText(toolInvocationOrMarkdown.content.value);
1413
1414
  if (codeblockInfo?.uri) {
1414
1415
  const filename = basename(codeblockInfo.uri);
1415
- toolCallLabel = ( localize(7259, "Edited {0}", filename));
1416
+ toolCallLabel = ( localize(7334, "Edited {0}", filename));
1416
1417
  } else {
1417
- toolCallLabel = ( localize(7260, "Edited file"));
1418
+ toolCallLabel = ( localize(7335, "Edited file"));
1418
1419
  }
1419
1420
  } else {
1420
1421
  toolCallLabel = toolInvocationId;
@@ -1507,9 +1508,21 @@ ${this.hookCount > 0 ? `EXAMPLES WITH BLOCKED CONTENT (from hooks):
1507
1508
  this._register(observeDisposable);
1508
1509
  }
1509
1510
  }
1511
+ this.scheduleAppendRefresh();
1512
+ }
1513
+ }
1514
+ scheduleAppendRefresh() {
1515
+ if (this._pendingAppendRefresh.value) {
1516
+ return;
1517
+ }
1518
+ this._pendingAppendRefresh.value = scheduleAtNextAnimationFrame(getWindow(this.wrapper), () => {
1519
+ this._pendingAppendRefresh.clear();
1520
+ if (this._store.isDisposed) {
1521
+ return;
1522
+ }
1510
1523
  this.refreshContentHeight();
1511
1524
  this.updateScrollDimensionsFromCache();
1512
- }
1525
+ });
1513
1526
  }
1514
1527
  materializeLazyItem(item) {
1515
1528
  if (item.kind === "thinking") {
@@ -1603,7 +1616,7 @@ ${this.hookCount > 0 ? `EXAMPLES WITH BLOCKED CONTENT (from hooks):
1603
1616
  return;
1604
1617
  }
1605
1618
  this.lastExtractedTitle = title;
1606
- const thinkingLabel = ( localize(7261, "{0}: {1}", this.defaultTitle, title));
1619
+ const thinkingLabel = ( localize(7336, "{0}: {1}", this.defaultTitle, title));
1607
1620
  this.currentTitle = thinkingLabel;
1608
1621
  if (!this._collapseButton) {
1609
1622
  return;
@@ -1614,7 +1627,7 @@ ${this.hookCount > 0 ? `EXAMPLES WITH BLOCKED CONTENT (from hooks):
1614
1627
  this.titleShimmerSpan = $("span.chat-thinking-title-shimmer");
1615
1628
  labelElement.appendChild(this.titleShimmerSpan);
1616
1629
  }
1617
- this.titleShimmerSpan.textContent = ( localize(7262, "{0}: ", this.defaultTitle));
1630
+ this.titleShimmerSpan.textContent = ( localize(7337, "{0}: ", this.defaultTitle));
1618
1631
  this._titleDetailRendered.clear();
1619
1632
  const result = this.chatContentMarkdownRenderer.render(( new MarkdownString(title)));
1620
1633
  result.element.classList.add("collapsible-title-content", "chat-thinking-title-detail");
@@ -57,7 +57,7 @@ let ChatTipContentPart = class ChatTipContentPart extends Disposable {
57
57
  this.domNode = $(".chat-tip-widget");
58
58
  this.domNode.tabIndex = 0;
59
59
  this.domNode.setAttribute("role", "region");
60
- this.domNode.setAttribute("aria-roledescription", ( localize(7263, "tip")));
60
+ this.domNode.setAttribute("aria-roledescription", ( localize(7338, "tip")));
61
61
  this._inChatTipContextKey = ChatContextKeys.inChatTip.bindTo(this._contextKeyService);
62
62
  this._multipleChatTipsContextKey = ChatContextKeys.multipleChatTips.bindTo(this._contextKeyService);
63
63
  const focusTracker = this._register(trackFocus(this.domNode));
@@ -119,9 +119,9 @@ let ChatTipContentPart = class ChatTipContentPart extends Disposable {
119
119
  }
120
120
  });
121
121
  this.domNode.appendChild(toolbarContainer);
122
- const textContent = markdownContent.element.textContent ?? ( localize(7264, "Chat tip"));
122
+ const textContent = markdownContent.element.textContent ?? ( localize(7339, "Chat tip"));
123
123
  const hasLink = /\[.*?\]\(.*?\)/.test(tip.content.value);
124
- const ariaLabel = hasLink ? ( localize(7265, "{0} Tab to reach the action.", textContent)) : textContent;
124
+ const ariaLabel = hasLink ? ( localize(7340, "{0} Tab to reach the action.", textContent)) : textContent;
125
125
  this.domNode.setAttribute("aria-label", ariaLabel);
126
126
  }
127
127
  async _handleTipAction(link, mdStr) {
@@ -134,6 +134,9 @@ let ChatTipContentPart = class ChatTipContentPart extends Disposable {
134
134
  await openLinkFromMarkdown(this._openerService, link, mdStr.isTrusted);
135
135
  }
136
136
  _shouldTriggerSetup() {
137
+ if (this._chatEntitlementService.hasByokModels) {
138
+ return false;
139
+ }
137
140
  const sentiment = this._chatEntitlementService.sentiment;
138
141
  if (!sentiment?.completed) {
139
142
  return true;
@@ -146,7 +149,7 @@ registerAction2(class PreviousTipAction extends Action2 {
146
149
  constructor() {
147
150
  super({
148
151
  id: "workbench.action.chat.previousTip",
149
- title: ( localize2(7266, "Previous tip")),
152
+ title: ( localize2(7341, "Previous tip")),
150
153
  icon: Codicon.chevronLeft,
151
154
  precondition: ChatContextKeys.multipleChatTips,
152
155
  f1: false,
@@ -166,7 +169,7 @@ registerAction2(class NextTipAction extends Action2 {
166
169
  constructor() {
167
170
  super({
168
171
  id: "workbench.action.chat.nextTip",
169
- title: ( localize2(7267, "Next tip")),
172
+ title: ( localize2(7342, "Next tip")),
170
173
  icon: Codicon.chevronRight,
171
174
  precondition: ChatContextKeys.multipleChatTips,
172
175
  f1: false,
@@ -186,7 +189,7 @@ registerAction2(class DismissTipToolbarAction extends Action2 {
186
189
  constructor() {
187
190
  super({
188
191
  id: "workbench.action.chat.dismissTipToolbar",
189
- title: ( localize2(7268, "Dismiss tip")),
192
+ title: ( localize2(7343, "Dismiss tip")),
190
193
  icon: Codicon.check,
191
194
  f1: false,
192
195
  menu: [{
@@ -204,7 +207,7 @@ registerAction2(class DismissTipAction extends Action2 {
204
207
  constructor() {
205
208
  super({
206
209
  id: "workbench.action.chat.dismissTip",
207
- title: ( localize2(7269, "Dismiss this tip")),
210
+ title: ( localize2(7344, "Dismiss this tip")),
208
211
  f1: false,
209
212
  menu: [{
210
213
  id: MenuId.ChatTipContext,
@@ -221,7 +224,7 @@ registerAction2(class DisableTipsAction extends Action2 {
221
224
  constructor() {
222
225
  super({
223
226
  id: "workbench.action.chat.disableTips",
224
- title: ( localize2(7270, "Disable tips")),
227
+ title: ( localize2(7345, "Disable tips")),
225
228
  icon: Codicon.bellSlash,
226
229
  f1: false,
227
230
  menu: [{
@@ -246,7 +249,7 @@ registerAction2(class ResetDismissedTipsAction extends Action2 {
246
249
  constructor() {
247
250
  super({
248
251
  id: "workbench.action.chat.resetDismissedTips",
249
- title: ( localize2(7271, "Reset Dismissed Tips")),
252
+ title: ( localize2(7346, "Reset Dismissed Tips")),
250
253
  f1: true,
251
254
  precondition: ChatContextKeys.enabled
252
255
  });