@codingame/monaco-vscode-notebook-service-override 14.0.6 → 15.0.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 (110) hide show
  1. package/package.json +26 -29
  2. package/vscode/src/vs/editor/contrib/gotoError/browser/markerNavigationService.d.ts +34 -0
  3. package/vscode/src/vs/editor/contrib/gotoError/browser/markerNavigationService.js +216 -0
  4. package/vscode/src/vs/workbench/contrib/codeEditor/browser/emptyTextEditorHint/emptyTextEditorHint.js +8 -8
  5. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellCommands/cellCommands.js +29 -28
  6. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellDiagnostics/cellDiagnosticEditorContrib.d.ts +1 -1
  7. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellDiagnostics/cellDiagnosticEditorContrib.js +3 -3
  8. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellDiagnostics/cellDiagnosticsActions.js +9 -9
  9. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellDiagnostics/diagnosticCellStatusBarContrib.d.ts +1 -1
  10. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellDiagnostics/diagnosticCellStatusBarContrib.js +5 -9
  11. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/contributedStatusBarItemController.d.ts +1 -1
  12. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/contributedStatusBarItemController.js +1 -1
  13. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/statusBarProviders.js +5 -5
  14. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chatEdit/contribution.d.ts +1 -0
  15. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chatEdit/contribution.js +10 -0
  16. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chatEdit/notebookCellDecorators.d.ts +4 -40
  17. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chatEdit/notebookCellDecorators.js +13 -217
  18. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chatEdit/notebookChatActionsOverlay.d.ts +3 -4
  19. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chatEdit/notebookChatActionsOverlay.js +22 -33
  20. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chatEdit/notebookChatEditController.d.ts +1 -1
  21. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chatEdit/notebookChatEditController.js +17 -20
  22. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chatEdit/notebookOriginalCellModelFactory.d.ts +2 -2
  23. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chatEdit/notebookOriginalCellModelFactory.js +2 -2
  24. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chatEdit/notebookOriginalModelRefFactory.d.ts +3 -1
  25. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chatEdit/notebookOriginalModelRefFactory.js +8 -3
  26. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chatEdit/notebookSynchronizer.d.ts +6 -4
  27. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chatEdit/notebookSynchronizer.js +47 -29
  28. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chatEdit/notebookSynchronizerService.d.ts +5 -3
  29. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chatEdit/notebookSynchronizerService.js +28 -17
  30. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/clipboard/notebookClipboard.d.ts +2 -2
  31. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/clipboard/notebookClipboard.js +10 -10
  32. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/debug/notebookBreakpoints.js +1 -1
  33. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/debug/notebookDebugDecorations.d.ts +1 -1
  34. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/debug/notebookDebugDecorations.js +4 -4
  35. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/editorHint/emptyCellEditorHint.js +1 -1
  36. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/editorStatusBar/editorStatusBar.js +13 -13
  37. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/execute/executionEditorProgress.d.ts +1 -1
  38. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/execute/executionEditorProgress.js +1 -1
  39. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFind.js +7 -7
  40. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/format/formatting.js +12 -11
  41. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/gettingStarted/notebookGettingStarted.js +4 -4
  42. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/layout/layoutActions.js +2 -2
  43. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/marker/markerProvider.js +4 -3
  44. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/multicursor/notebookMulticursor.d.ts +3 -3
  45. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/multicursor/notebookMulticursor.js +14 -18
  46. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/multicursor/notebookSelectionHighlight.js +1 -1
  47. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/navigation/arrow.js +18 -18
  48. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookInlineVariables.d.ts +11 -4
  49. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookInlineVariables.js +328 -116
  50. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariables.js +3 -3
  51. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariablesDataSource.js +1 -1
  52. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariablesTree.js +2 -2
  53. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariablesView.d.ts +1 -2
  54. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariablesView.js +8 -10
  55. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/outline/notebookOutline.d.ts +5 -5
  56. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/outline/notebookOutline.js +16 -16
  57. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/profile/notebookProfile.js +1 -1
  58. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/saveParticipants/saveParticipants.d.ts +2 -2
  59. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/saveParticipants/saveParticipants.js +19 -18
  60. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/troubleshoot/layout.d.ts +1 -1
  61. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/troubleshoot/layout.js +5 -5
  62. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/undoRedo/notebookUndoRedo.js +1 -1
  63. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/viewportWarmup/viewportWarmup.js +4 -4
  64. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.d.ts +3 -5
  65. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +39 -37
  66. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +99 -8
  67. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/editActions.js +40 -35
  68. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/executeActions.js +31 -31
  69. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.d.ts +2 -2
  70. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.js +37 -33
  71. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/layoutActions.js +22 -25
  72. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/notebookIndentationActions.js +11 -10
  73. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/sectionActions.d.ts +2 -2
  74. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/sectionActions.js +17 -17
  75. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/variablesActions.js +4 -4
  76. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffActions.js +58 -25
  77. package/vscode/src/vs/workbench/contrib/notebook/browser/notebook.contribution.d.ts +1 -1
  78. package/vscode/src/vs/workbench/contrib/notebook/browser/notebook.contribution.js +99 -87
  79. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityHelp.js +12 -12
  80. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibleView.js +3 -3
  81. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookExtensionPoint.js +33 -33
  82. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookEditorServiceImpl.d.ts +6 -4
  83. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookEditorServiceImpl.js +7 -4
  84. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookExecutionServiceImpl.d.ts +1 -1
  85. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookExecutionServiceImpl.js +2 -2
  86. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookExecutionStateServiceImpl.d.ts +1 -1
  87. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookExecutionStateServiceImpl.js +1 -1
  88. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookKernelHistoryServiceImpl.js +1 -1
  89. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookKeymapServiceImpl.js +4 -4
  90. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookLoggingServiceImpl.js +1 -1
  91. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookServiceImpl.d.ts +3 -3
  92. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookServiceImpl.js +8 -5
  93. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookWorkerServiceImpl.d.ts +1 -1
  94. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookWorkerServiceImpl.js +1 -1
  95. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookOutlineEntryFactory.d.ts +5 -5
  96. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookOutlineEntryFactory.js +2 -3
  97. package/vscode/src/vs/workbench/contrib/notebook/common/model/cellEdit.d.ts +1 -1
  98. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookTextModel.d.ts +3 -3
  99. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookTextModel.js +5 -5
  100. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModelResolverServiceImpl.js +1 -1
  101. package/vscode/src/vs/workbench/contrib/notebook/common/notebookProvider.d.ts +1 -1
  102. package/vscode/src/vs/workbench/contrib/notebook/common/notebookProvider.js +3 -1
  103. package/vscode/src/vs/workbench/contrib/notebook/common/services/notebookSimpleWorker.js +20 -16
  104. package/vscode/src/vs/workbench/services/workingCopy/common/abstractFileWorkingCopyManager.d.ts +1 -1
  105. package/vscode/src/vs/workbench/services/workingCopy/common/fileWorkingCopyManager.d.ts +2 -2
  106. package/vscode/src/vs/workbench/services/workingCopy/common/fileWorkingCopyManager.js +14 -14
  107. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopyManager.d.ts +1 -1
  108. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopyManager.js +3 -3
  109. package/vscode/src/vs/workbench/services/workingCopy/common/untitledFileWorkingCopy.d.ts +2 -2
  110. package/vscode/src/vs/workbench/services/workingCopy/common/untitledFileWorkingCopy.js +2 -2
@@ -10,24 +10,25 @@ import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/pl
10
10
  import { ContextKeyExpr } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey';
11
11
  import { InputFocusedContextKey } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkeys';
12
12
  import { KeybindingWeight } from '@codingame/monaco-vscode-api/vscode/vs/platform/keybinding/common/keybindingsRegistry';
13
- import { CTX_INLINE_CHAT_FOCUSED, CTX_INLINE_CHAT_INNER_CURSOR_FIRST, CTX_INLINE_CHAT_INNER_CURSOR_LAST, CTX_INLINE_CHAT_RESPONSE_TYPE, InlineChatResponseType, MENU_INLINE_CHAT_WIDGET_STATUS, CTX_INLINE_CHAT_REQUEST_IN_PROGRESS, CTX_INLINE_CHAT_VISIBLE } from '@codingame/monaco-vscode-c465110a-57c0-59d7-a6b2-be0a4db7e517-common/vscode/vs/workbench/contrib/inlineChat/common/inlineChat';
14
- import { CTX_NOTEBOOK_CHAT_HAS_ACTIVE_REQUEST, MENU_CELL_CHAT_INPUT, CTX_NOTEBOOK_CELL_CHAT_FOCUSED, MENU_CELL_CHAT_WIDGET, MENU_CELL_CHAT_WIDGET_STATUS, CTX_NOTEBOOK_CHAT_USER_DID_EDIT, CTX_NOTEBOOK_CHAT_OUTER_FOCUS_POSITION, CTX_NOTEBOOK_CHAT_HAS_AGENT } from '@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext';
15
- import { NotebookChatController } from '@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatController';
16
- import { NotebookAction, NotebookCellAction, getEditorFromArgsOrActivePane, CELL_TITLE_CELL_GROUP_ID, getContextFromActiveEditor } from '@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/notebook/browser/controller/coreActions';
13
+ import { CTX_INLINE_CHAT_FOCUSED, CTX_INLINE_CHAT_INNER_CURSOR_FIRST, CTX_INLINE_CHAT_INNER_CURSOR_LAST, CTX_INLINE_CHAT_RESPONSE_TYPE, InlineChatResponseType, MENU_INLINE_CHAT_WIDGET_STATUS, CTX_INLINE_CHAT_REQUEST_IN_PROGRESS, CTX_INLINE_CHAT_VISIBLE } from '@codingame/monaco-vscode-9a6d8b6c-ad4c-5ea3-9558-f43d6dc4c0ad-common/vscode/vs/workbench/contrib/inlineChat/common/inlineChat';
14
+ import { CTX_NOTEBOOK_CHAT_HAS_ACTIVE_REQUEST, MENU_CELL_CHAT_INPUT, CTX_NOTEBOOK_CELL_CHAT_FOCUSED, MENU_CELL_CHAT_WIDGET, MENU_CELL_CHAT_WIDGET_STATUS, CTX_NOTEBOOK_CHAT_USER_DID_EDIT, CTX_NOTEBOOK_CHAT_OUTER_FOCUS_POSITION, CTX_NOTEBOOK_CHAT_HAS_AGENT } from '@codingame/monaco-vscode-9a6d8b6c-ad4c-5ea3-9558-f43d6dc4c0ad-common/vscode/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext';
15
+ import { NotebookChatController } from '@codingame/monaco-vscode-9a6d8b6c-ad4c-5ea3-9558-f43d6dc4c0ad-common/vscode/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatController';
16
+ import { NotebookAction, NotebookCellAction, getEditorFromArgsOrActivePane, CELL_TITLE_CELL_GROUP_ID, getContextFromActiveEditor } from '@codingame/monaco-vscode-9a6d8b6c-ad4c-5ea3-9558-f43d6dc4c0ad-common/vscode/vs/workbench/contrib/notebook/browser/controller/coreActions';
17
17
  import { insertNewCell } from '../insertCellActions.js';
18
- import { CellEditState } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/browser/notebookBrowser';
18
+ import { CellEditState } from '@codingame/monaco-vscode-9a6d8b6c-ad4c-5ea3-9558-f43d6dc4c0ad-common/vscode/vs/workbench/contrib/notebook/browser/notebookBrowser';
19
19
  import { CellKind, NOTEBOOK_EDITOR_CURSOR_BOUNDARY, NotebookSetting } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookCommon';
20
- import { NOTEBOOK_CELL_EDITOR_FOCUSED, NOTEBOOK_EDITOR_FOCUSED, IS_COMPOSITE_NOTEBOOK, NOTEBOOK_EDITOR_EDITABLE, NOTEBOOK_CELL_GENERATED_BY_CHAT } from '@codingame/monaco-vscode-771c2e6d-0284-5ac1-be73-7176085eedc5-common/vscode/vs/workbench/contrib/notebook/common/notebookContextKeys';
20
+ import { NOTEBOOK_CELL_EDITOR_FOCUSED, NOTEBOOK_EDITOR_FOCUSED, IS_COMPOSITE_NOTEBOOK, NOTEBOOK_EDITOR_EDITABLE, NOTEBOOK_CELL_GENERATED_BY_CHAT } from '@codingame/monaco-vscode-52bb4d5b-ba1a-57fd-9bee-b28824214eac-common/vscode/vs/workbench/contrib/notebook/common/notebookContextKeys';
21
21
  import { Iterable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/iterator';
22
22
  import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
23
23
  import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatContextKeys';
24
- import { AbstractInlineChatAction } from '@codingame/monaco-vscode-9e30237f-37af-5bbd-8bc1-5c4f2c0714b3-common/vscode/vs/workbench/contrib/inlineChat/browser/inlineChatActions';
24
+ import { InlineChatController } from '@codingame/monaco-vscode-29bc1406-2925-5b8f-b25e-d04a7772d896-common/vscode/vs/workbench/contrib/inlineChat/browser/inlineChatController';
25
+ import { EditorAction2 } from '@codingame/monaco-vscode-api/vscode/vs/editor/browser/editorExtensions';
25
26
 
26
27
  registerAction2(class extends NotebookAction {
27
28
  constructor() {
28
29
  super({
29
30
  id: 'notebook.cell.chat.accept',
30
- title: ( localize2(7575, "Make Request")),
31
+ title: ( localize2(7660, "Make Request")),
31
32
  icon: Codicon.send,
32
33
  keybinding: {
33
34
  when: ( ContextKeyExpr.and(CTX_NOTEBOOK_CELL_CHAT_FOCUSED, CTX_INLINE_CHAT_FOCUSED, ( NOTEBOOK_CELL_EDITOR_FOCUSED.negate()))),
@@ -51,7 +52,7 @@ registerAction2(class extends NotebookCellAction {
51
52
  constructor() {
52
53
  super({
53
54
  id: 'notebook.cell.chat.arrowOutUp',
54
- title: ( localize(7576, 'Cursor Up')),
55
+ title: ( localize(7661, 'Cursor Up')),
55
56
  keybinding: {
56
57
  when: ( ContextKeyExpr.and(
57
58
  CTX_NOTEBOOK_CELL_CHAT_FOCUSED,
@@ -86,7 +87,7 @@ registerAction2(class extends NotebookAction {
86
87
  constructor() {
87
88
  super({
88
89
  id: 'notebook.cell.chat.arrowOutDown',
89
- title: ( localize(7577, 'Cursor Down')),
90
+ title: ( localize(7662, 'Cursor Down')),
90
91
  keybinding: {
91
92
  when: ( ContextKeyExpr.and(
92
93
  CTX_NOTEBOOK_CELL_CHAT_FOCUSED,
@@ -109,7 +110,7 @@ registerAction2(class extends NotebookCellAction {
109
110
  constructor() {
110
111
  super({
111
112
  id: 'notebook.cell.focusChatWidget',
112
- title: ( localize(7578, 'Focus Chat Widget')),
113
+ title: ( localize(7663, 'Focus Chat Widget')),
113
114
  keybinding: {
114
115
  when: ( ContextKeyExpr.and(NOTEBOOK_EDITOR_FOCUSED, ( CONTEXT_ACCESSIBILITY_MODE_ENABLED.negate()), ( ContextKeyExpr.and(( ContextKeyExpr.has(InputFocusedContextKey)), EditorContextKeys.editorTextFocus, ( NOTEBOOK_EDITOR_CURSOR_BOUNDARY.notEqualsTo('bottom')), ( NOTEBOOK_EDITOR_CURSOR_BOUNDARY.notEqualsTo('none')))), ( EditorContextKeys.isEmbeddedDiffEditor.negate()))),
115
116
  weight: KeybindingWeight.EditorCore + 7,
@@ -127,7 +128,7 @@ registerAction2(class extends NotebookCellAction {
127
128
  constructor() {
128
129
  super({
129
130
  id: 'notebook.cell.focusNextChatWidget',
130
- title: ( localize(7579, 'Focus Next Cell Chat Widget')),
131
+ title: ( localize(7664, 'Focus Next Cell Chat Widget')),
131
132
  keybinding: {
132
133
  when: ( ContextKeyExpr.and(( CONTEXT_ACCESSIBILITY_MODE_ENABLED.negate()), ( ContextKeyExpr.and(( ContextKeyExpr.has(InputFocusedContextKey)), EditorContextKeys.editorTextFocus, ( NOTEBOOK_EDITOR_CURSOR_BOUNDARY.notEqualsTo('top')), ( NOTEBOOK_EDITOR_CURSOR_BOUNDARY.notEqualsTo('none')))), ( EditorContextKeys.isEmbeddedDiffEditor.negate()))),
133
134
  weight: KeybindingWeight.EditorCore + 7,
@@ -146,7 +147,7 @@ registerAction2(class extends NotebookAction {
146
147
  constructor() {
147
148
  super({
148
149
  id: 'notebook.cell.chat.stop',
149
- title: ( localize2(7580, "Stop Request")),
150
+ title: ( localize2(7665, "Stop Request")),
150
151
  icon: Codicon.debugStop,
151
152
  menu: {
152
153
  id: MENU_CELL_CHAT_INPUT,
@@ -165,7 +166,7 @@ registerAction2(class extends NotebookAction {
165
166
  constructor() {
166
167
  super({
167
168
  id: 'notebook.cell.chat.close',
168
- title: ( localize2(7581, "Close Chat")),
169
+ title: ( localize2(7666, "Close Chat")),
169
170
  icon: Codicon.close,
170
171
  menu: {
171
172
  id: MENU_CELL_CHAT_WIDGET,
@@ -183,10 +184,10 @@ registerAction2(class extends NotebookAction {
183
184
  constructor() {
184
185
  super({
185
186
  id: 'notebook.cell.chat.acceptChanges',
186
- title: ( localize2(7582, "Accept Changes")),
187
- shortTitle: ( localize(7583, 'Accept')),
187
+ title: ( localize2(7667, "Accept Changes")),
188
+ shortTitle: ( localize(7668, 'Accept')),
188
189
  icon: Codicon.check,
189
- tooltip: ( localize(7584, 'Accept Changes')),
190
+ tooltip: ( localize(7669, 'Accept Changes')),
190
191
  keybinding: [
191
192
  {
192
193
  when: ( ContextKeyExpr.and(CTX_NOTEBOOK_CELL_CHAT_FOCUSED, CTX_INLINE_CHAT_FOCUSED, ( NOTEBOOK_CELL_EDITOR_FOCUSED.negate()))),
@@ -233,7 +234,7 @@ registerAction2(class extends NotebookAction {
233
234
  constructor() {
234
235
  super({
235
236
  id: 'notebook.cell.chat.discard',
236
- title: ( localize(7585, 'Discard')),
237
+ title: ( localize(7670, 'Discard')),
237
238
  icon: Codicon.discard,
238
239
  keybinding: {
239
240
  when: ( ContextKeyExpr.and(CTX_NOTEBOOK_CELL_CHAT_FOCUSED, CTX_INLINE_CHAT_FOCUSED, ( CTX_NOTEBOOK_CHAT_USER_DID_EDIT.negate()), ( NOTEBOOK_CELL_EDITOR_FOCUSED.negate()))),
@@ -274,12 +275,12 @@ registerAction2(class extends NotebookAction {
274
275
  super({
275
276
  id: 'notebook.cell.chat.start',
276
277
  title: {
277
- value: '$(sparkle) ' + ( localize(7586, "Generate")),
278
+ value: '$(sparkle) ' + ( localize(7671, "Generate")),
278
279
  original: '$(sparkle) Generate',
279
280
  },
280
- tooltip: ( localize(7587, "Start Chat to Generate Code")),
281
+ tooltip: ( localize(7672, "Start Chat to Generate Code")),
281
282
  metadata: {
282
- description: ( localize(7587, "Start Chat to Generate Code")),
283
+ description: ( localize(7672, "Start Chat to Generate Code")),
283
284
  args: [
284
285
  {
285
286
  name: 'args',
@@ -361,10 +362,10 @@ registerAction2(class extends NotebookAction {
361
362
  super({
362
363
  id: 'notebook.cell.chat.startAtTop',
363
364
  title: {
364
- value: '$(sparkle) ' + ( localize(7586, "Generate")),
365
+ value: '$(sparkle) ' + ( localize(7671, "Generate")),
365
366
  original: '$(sparkle) Generate',
366
367
  },
367
- tooltip: ( localize(7587, "Start Chat to Generate Code")),
368
+ tooltip: ( localize(7672, "Start Chat to Generate Code")),
368
369
  f1: false,
369
370
  menu: [
370
371
  {
@@ -384,8 +385,8 @@ MenuRegistry.appendMenuItem(MenuId.NotebookToolbar, {
384
385
  command: {
385
386
  id: 'notebook.cell.chat.start',
386
387
  icon: Codicon.sparkle,
387
- title: ( localize(7588, "Generate")),
388
- tooltip: ( localize(7589, "Start Chat to Generate Code"))
388
+ title: ( localize(7673, "Generate")),
389
+ tooltip: ( localize(7674, "Start Chat to Generate Code"))
389
390
  },
390
391
  order: -10,
391
392
  group: 'navigation/add',
@@ -395,7 +396,7 @@ registerAction2(class extends NotebookAction {
395
396
  constructor() {
396
397
  super({
397
398
  id: 'notebook.cell.chat.focus',
398
- title: ( localize(7590, 'Focus Chat')),
399
+ title: ( localize(7675, 'Focus Chat')),
399
400
  keybinding: [
400
401
  {
401
402
  when: ( ContextKeyExpr.and(
@@ -427,7 +428,7 @@ registerAction2(class extends NotebookAction {
427
428
  constructor() {
428
429
  super({
429
430
  id: 'notebook.cell.chat.focusNextCell',
430
- title: ( localize(7591, 'Focus Next Cell')),
431
+ title: ( localize(7676, 'Focus Next Cell')),
431
432
  keybinding: [
432
433
  {
433
434
  when: ( ContextKeyExpr.and(CTX_NOTEBOOK_CELL_CHAT_FOCUSED, CTX_INLINE_CHAT_FOCUSED)),
@@ -446,7 +447,7 @@ registerAction2(class extends NotebookAction {
446
447
  constructor() {
447
448
  super({
448
449
  id: 'notebook.cell.chat.focusPreviousCell',
449
- title: ( localize(7592, 'Focus Previous Cell')),
450
+ title: ( localize(7677, 'Focus Previous Cell')),
450
451
  keybinding: [
451
452
  {
452
453
  when: ( ContextKeyExpr.and(CTX_NOTEBOOK_CELL_CHAT_FOCUSED, CTX_INLINE_CHAT_FOCUSED)),
@@ -465,7 +466,7 @@ registerAction2(class extends NotebookAction {
465
466
  constructor() {
466
467
  super({
467
468
  id: 'notebook.cell.chat.previousFromHistory',
468
- title: ( localize2(7593, "Previous From History")),
469
+ title: ( localize2(7678, "Previous From History")),
469
470
  precondition: ( ContextKeyExpr.and(CTX_NOTEBOOK_CELL_CHAT_FOCUSED, CTX_INLINE_CHAT_FOCUSED)),
470
471
  keybinding: {
471
472
  when: ( ContextKeyExpr.and(CTX_NOTEBOOK_CELL_CHAT_FOCUSED, CTX_INLINE_CHAT_FOCUSED)),
@@ -483,7 +484,7 @@ registerAction2(class extends NotebookAction {
483
484
  constructor() {
484
485
  super({
485
486
  id: 'notebook.cell.chat.nextFromHistory',
486
- title: ( localize2(7594, "Next From History")),
487
+ title: ( localize2(7679, "Next From History")),
487
488
  precondition: ( ContextKeyExpr.and(CTX_NOTEBOOK_CELL_CHAT_FOCUSED, CTX_INLINE_CHAT_FOCUSED)),
488
489
  keybinding: {
489
490
  when: ( ContextKeyExpr.and(CTX_NOTEBOOK_CELL_CHAT_FOCUSED, CTX_INLINE_CHAT_FOCUSED)),
@@ -501,7 +502,7 @@ registerAction2(class extends NotebookCellAction {
501
502
  constructor() {
502
503
  super({
503
504
  id: 'notebook.cell.chat.restore',
504
- title: ( localize2(7595, "Generate")),
505
+ title: ( localize2(7680, "Generate")),
505
506
  icon: Codicon.sparkle,
506
507
  menu: {
507
508
  id: MenuId.NotebookCellTitle,
@@ -528,13 +529,13 @@ registerAction2(class extends NotebookCellAction {
528
529
  }
529
530
  }
530
531
  });
531
- class AcceptChangesAndRun extends AbstractInlineChatAction {
532
+ class AcceptChangesAndRun extends EditorAction2 {
532
533
  constructor() {
533
534
  super({
534
535
  id: 'notebook.inlineChat.acceptChangesAndRun',
535
- title: ( localize2(7596, "Accept and Run")),
536
- shortTitle: ( localize(7597, 'Accept & Run')),
537
- tooltip: ( localize(7598, 'Accept the changes and run the cell')),
536
+ title: ( localize2(7681, "Accept and Run")),
537
+ shortTitle: ( localize(7682, 'Accept & Run')),
538
+ tooltip: ( localize(7683, 'Accept the changes and run the cell')),
538
539
  icon: Codicon.check,
539
540
  f1: true,
540
541
  precondition: ( ContextKeyExpr.and(( NOTEBOOK_EDITOR_EDITABLE.isEqualTo(true)), CTX_INLINE_CHAT_VISIBLE)),
@@ -547,9 +548,10 @@ class AcceptChangesAndRun extends AbstractInlineChatAction {
547
548
  }]
548
549
  });
549
550
  }
550
- async runInlineChatCommand(accessor, ctrl, codeEditor, hunk) {
551
+ runEditorCommand(accessor, codeEditor) {
551
552
  const editor = getContextFromActiveEditor(accessor.get(IEditorService));
552
- if (!editor) {
553
+ const ctrl = InlineChatController.get(codeEditor);
554
+ if (!editor || !ctrl) {
553
555
  return;
554
556
  }
555
557
  const matchedCell = editor.notebookEditor.codeEditors.find(e => e[1] === codeEditor);
@@ -5,24 +5,29 @@ import { codiconsLibrary } from '@codingame/monaco-vscode-api/vscode/vs/base/com
5
5
  import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
6
6
  import { Range } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/core/range';
7
7
  import { CompletionItemKind } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/languages';
8
- import { ILanguageFeaturesService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/languageFeatures';
8
+ import { ILanguageFeaturesService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/languageFeatures.service';
9
9
  import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
10
- import { Action2, registerAction2 } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions';
10
+ import { Action2, registerAction2, MenuId } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions';
11
+ import { ContextKeyExpr } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey';
11
12
  import { IContextKeyService } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service';
12
13
  import { IQuickInputService } from '@codingame/monaco-vscode-api/vscode/vs/platform/quickinput/common/quickInput.service';
13
14
  import { registerWorkbenchContribution2, WorkbenchPhase } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/contributions';
14
15
  import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
15
16
  import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
16
- import { ChatInputPart } from '@codingame/monaco-vscode-fab30422-b487-5f4e-8d30-8b4d266e3fcd-common/vscode/vs/workbench/contrib/chat/browser/chatInputPart';
17
+ import { ChatInputPart } from '@codingame/monaco-vscode-9a6d8b6c-ad4c-5ea3-9558-f43d6dc4c0ad-common/vscode/vs/workbench/contrib/chat/browser/chatInputPart';
17
18
  import { ChatDynamicVariableModel } from '@codingame/monaco-vscode-e4d0fd26-1b26-5583-b3f7-582e08d7b389-common/vscode/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables';
18
19
  import { computeCompletionRanges } from '@codingame/monaco-vscode-e4d0fd26-1b26-5583-b3f7-582e08d7b389-common/vscode/vs/workbench/contrib/chat/browser/contrib/chatInputCompletions';
19
20
  import { ChatAgentLocation } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatAgents';
20
21
  import { IChatAgentService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatAgents.service';
21
- import { chatVariableLeader } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatParserTypes';
22
+ import { chatVariableLeader } from '@codingame/monaco-vscode-9a6d8b6c-ad4c-5ea3-9558-f43d6dc4c0ad-common/vscode/vs/workbench/contrib/chat/common/chatParserTypes';
23
+ import { NOTEBOOK_CELL_OUTPUT_MIME_TYPE_LIST_FOR_CHAT, NOTEBOOK_CELL_HAS_OUTPUTS, NOTEBOOK_CELL_OUTPUT_MIMETYPE } from '@codingame/monaco-vscode-52bb4d5b-ba1a-57fd-9bee-b28824214eac-common/vscode/vs/workbench/contrib/notebook/common/notebookContextKeys';
22
24
  import { INotebookKernelService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookKernelService.service';
23
- import { getNotebookEditorFromEditorPane } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/browser/notebookBrowser';
25
+ import { getNotebookEditorFromEditorPane } from '@codingame/monaco-vscode-9a6d8b6c-ad4c-5ea3-9558-f43d6dc4c0ad-common/vscode/vs/workbench/contrib/notebook/browser/notebookBrowser';
26
+ import { copyIcon } from '@codingame/monaco-vscode-9a6d8b6c-ad4c-5ea3-9558-f43d6dc4c0ad-common/vscode/vs/workbench/contrib/notebook/browser/notebookIcons';
27
+ import { getOutputViewModelFromId } from '@codingame/monaco-vscode-9a6d8b6c-ad4c-5ea3-9558-f43d6dc4c0ad-common/vscode/vs/workbench/contrib/notebook/browser/controller/cellOutputActions';
28
+ import { NOTEBOOK_ACTIONS_CATEGORY } from '@codingame/monaco-vscode-9a6d8b6c-ad4c-5ea3-9558-f43d6dc4c0ad-common/vscode/vs/workbench/contrib/notebook/browser/controller/coreActions';
24
29
  import './cellChatActions.js';
25
- import { CTX_NOTEBOOK_CHAT_HAS_AGENT } from '@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext';
30
+ import { CTX_NOTEBOOK_CHAT_HAS_AGENT } from '@codingame/monaco-vscode-9a6d8b6c-ad4c-5ea3-9558-f43d6dc4c0ad-common/vscode/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext';
26
31
 
27
32
  const NotebookKernelVariableKey = 'kernelVariable';
28
33
  let NotebookChatContribution = class NotebookChatContribution extends Disposable {
@@ -66,7 +71,7 @@ let NotebookChatContribution = class NotebookChatContribution extends Disposable
66
71
  result.suggestions.push({
67
72
  label: `${chatVariableLeader}${NotebookKernelVariableKey}`,
68
73
  insertText: `${chatVariableLeader}${NotebookKernelVariableKey}:`,
69
- detail: ( localize(7599, "Pick a variable from the kernel")),
74
+ detail: ( localize(7684, "Pick a variable from the kernel")),
70
75
  range,
71
76
  kind: CompletionItemKind.Text,
72
77
  command: { id: SelectAndInsertKernelVariableAction.ID, title: SelectAndInsertKernelVariableAction.ID, arguments: [{ widget, range: afterRange }] },
@@ -76,6 +81,7 @@ let NotebookChatContribution = class NotebookChatContribution extends Disposable
76
81
  return result;
77
82
  }
78
83
  }));
84
+ NOTEBOOK_CELL_OUTPUT_MIME_TYPE_LIST_FOR_CHAT.bindTo(contextKeyService).set(['image/png']);
79
85
  }
80
86
  async addKernelVariableCompletion(widget, result, info, token) {
81
87
  let pattern;
@@ -189,11 +195,96 @@ class SelectAndInsertKernelVariableAction extends Action2 {
189
195
  name: variableName,
190
196
  value: variableName,
191
197
  icon: codiconsLibrary.variable,
192
- isDynamic: true
193
198
  });
194
199
  }
195
200
  }
196
201
  }
202
+ registerAction2(class CopyCellOutputAction extends Action2 {
203
+ constructor() {
204
+ super({
205
+ id: 'notebook.cellOutput.addToChat',
206
+ title: ( localize(7685, "Add Cell Output to Chat")),
207
+ menu: {
208
+ id: MenuId.NotebookOutputToolbar,
209
+ when: ( ContextKeyExpr.and(
210
+ NOTEBOOK_CELL_HAS_OUTPUTS,
211
+ ContextKeyExpr.in(NOTEBOOK_CELL_OUTPUT_MIMETYPE.key, NOTEBOOK_CELL_OUTPUT_MIME_TYPE_LIST_FOR_CHAT.key)
212
+ )),
213
+ order: 10
214
+ },
215
+ category: NOTEBOOK_ACTIONS_CATEGORY,
216
+ icon: copyIcon,
217
+ });
218
+ }
219
+ getNoteboookEditor(editorService, outputContext) {
220
+ if (outputContext && 'notebookEditor' in outputContext) {
221
+ return outputContext.notebookEditor;
222
+ }
223
+ return getNotebookEditorFromEditorPane(editorService.activeEditorPane);
224
+ }
225
+ async run(accessor, outputContext) {
226
+ const notebookEditor = this.getNoteboookEditor(accessor.get(IEditorService), outputContext);
227
+ if (!notebookEditor) {
228
+ return;
229
+ }
230
+ let outputViewModel;
231
+ if (outputContext && 'outputId' in outputContext && typeof outputContext.outputId === 'string') {
232
+ outputViewModel = getOutputViewModelFromId(outputContext.outputId, notebookEditor);
233
+ }
234
+ else if (outputContext && 'outputViewModel' in outputContext) {
235
+ outputViewModel = outputContext.outputViewModel;
236
+ }
237
+ if (!outputViewModel) {
238
+ const activeCell = notebookEditor.getActiveCell();
239
+ if (!activeCell) {
240
+ return;
241
+ }
242
+ if (activeCell.focusedOutputId !== undefined) {
243
+ outputViewModel = activeCell.outputsViewModels.find(output => {
244
+ return output.model.outputId === activeCell.focusedOutputId;
245
+ });
246
+ }
247
+ else {
248
+ outputViewModel = activeCell.outputsViewModels.find(output => output.pickedMimeType?.isTrusted);
249
+ }
250
+ }
251
+ if (!outputViewModel) {
252
+ return;
253
+ }
254
+ const mimeType = outputViewModel.pickedMimeType?.mimeType;
255
+ if (mimeType === 'image/png') {
256
+ const chatWidgetService = accessor.get(IChatWidgetService);
257
+ const widget = chatWidgetService.lastFocusedWidget;
258
+ if (!widget) {
259
+ return;
260
+ }
261
+ const imageOutput = outputViewModel.model.outputs.find(output => output.mime === mimeType);
262
+ if (!imageOutput) {
263
+ return;
264
+ }
265
+ const attachedVariables = widget.attachmentModel.attachments;
266
+ const displayName = ( localize(7686, 'Notebook Cell Output Image'));
267
+ let tempDisplayName = displayName;
268
+ for (let appendValue = 2; ( attachedVariables.some(attachment => attachment.name === tempDisplayName)); appendValue++) {
269
+ tempDisplayName = `${displayName} ${appendValue}`;
270
+ }
271
+ const imageData = imageOutput.data;
272
+ const variableEntry = {
273
+ kind: 'paste',
274
+ code: '',
275
+ language: '',
276
+ pastedLines: '',
277
+ fileName: 'notebook-cell-output-image-' + outputViewModel.model.outputId,
278
+ copiedFrom: undefined,
279
+ id: 'notebook-cell-output-image-' + outputViewModel.model.outputId,
280
+ name: tempDisplayName,
281
+ isImage: true,
282
+ value: imageData.buffer,
283
+ };
284
+ widget.attachmentModel.addContext(variableEntry);
285
+ }
286
+ }
287
+ });
197
288
  registerAction2(SelectAndInsertKernelVariableAction);
198
289
  registerWorkbenchContribution2(NotebookChatContribution.ID, NotebookChatContribution, WorkbenchPhase.BlockRestore);
199
290
 
@@ -1,15 +1,15 @@
1
1
 
2
- import { KeyCode, KeyMod } from '@codingame/monaco-vscode-api/vscode/vs/base/common/keyCodes';
2
+ import { KeyCode, KeyMod, KeyChord } from '@codingame/monaco-vscode-api/vscode/vs/base/common/keyCodes';
3
3
  import { Mimes } from '@codingame/monaco-vscode-api/vscode/vs/base/common/mime';
4
4
  import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
5
5
  import { Selection } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/core/selection';
6
6
  import { CommandExecutor } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/cursor/cursor';
7
7
  import { EditorContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/editorContextKeys';
8
- import { ILanguageService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/languages/language';
9
- import { ILanguageConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/languages/languageConfigurationRegistry';
8
+ import { ILanguageService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/languages/language.service';
9
+ import { ILanguageConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/languages/languageConfigurationRegistry.service';
10
10
  import { TrackedRangeStickiness } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/model';
11
11
  import { getIconClasses } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/getIconClasses';
12
- import { IModelService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/model';
12
+ import { IModelService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/model.service';
13
13
  import { LineCommentCommand, Type } from '@codingame/monaco-vscode-api/vscode/vs/editor/contrib/comment/browser/lineCommentCommand';
14
14
  import { localize, localize2 } from '@codingame/monaco-vscode-api/vscode/vs/nls';
15
15
  import { registerAction2, MenuId } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions';
@@ -21,15 +21,15 @@ import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/pl
21
21
  import { KeybindingWeight } from '@codingame/monaco-vscode-api/vscode/vs/platform/keybinding/common/keybindingsRegistry';
22
22
  import { INotificationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/notification/common/notification.service';
23
23
  import { IQuickInputService } from '@codingame/monaco-vscode-api/vscode/vs/platform/quickinput/common/quickInput.service';
24
- import { InlineChatController } from '@codingame/monaco-vscode-c465110a-57c0-59d7-a6b2-be0a4db7e517-common/vscode/vs/workbench/contrib/inlineChat/browser/inlineChatController';
25
- import { CTX_INLINE_CHAT_FOCUSED } from '@codingame/monaco-vscode-c465110a-57c0-59d7-a6b2-be0a4db7e517-common/vscode/vs/workbench/contrib/inlineChat/common/inlineChat';
26
- import { runDeleteAction, changeCellToKind } from '@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/notebook/browser/controller/cellOperations';
27
- import { NotebookCellAction, CELL_TITLE_CELL_GROUP_ID, CellToolbarOrder, findTargetCellEditor, NOTEBOOK_EDITOR_WIDGET_ACTION_WEIGHT, CELL_TITLE_OUTPUT_GROUP_ID, executeNotebookCondition, NotebookAction, NotebookMultiCellAction } from '@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/notebook/browser/controller/coreActions';
24
+ import { InlineChatController } from '@codingame/monaco-vscode-29bc1406-2925-5b8f-b25e-d04a7772d896-common/vscode/vs/workbench/contrib/inlineChat/browser/inlineChatController';
25
+ import { CTX_INLINE_CHAT_FOCUSED } from '@codingame/monaco-vscode-9a6d8b6c-ad4c-5ea3-9558-f43d6dc4c0ad-common/vscode/vs/workbench/contrib/inlineChat/common/inlineChat';
26
+ import { runDeleteAction, changeCellToKind } from '@codingame/monaco-vscode-9a6d8b6c-ad4c-5ea3-9558-f43d6dc4c0ad-common/vscode/vs/workbench/contrib/notebook/browser/controller/cellOperations';
27
+ import { NotebookCellAction, CELL_TITLE_CELL_GROUP_ID, CellToolbarOrder, findTargetCellEditor, NOTEBOOK_EDITOR_WIDGET_ACTION_WEIGHT, CELL_TITLE_OUTPUT_GROUP_ID, executeNotebookCondition, NotebookAction, NotebookMultiCellAction } from '@codingame/monaco-vscode-9a6d8b6c-ad4c-5ea3-9558-f43d6dc4c0ad-common/vscode/vs/workbench/contrib/notebook/browser/controller/coreActions';
28
28
  import { NotebookIndentUsingTabs, NotebookIndentUsingSpaces, NotebookChangeTabDisplaySize, NotebookIndentationToTabsAction, NotebookIndentationToSpacesAction } from './notebookIndentationActions.js';
29
- import { QUIT_EDIT_CELL_COMMAND_ID, CellEditState, CHANGE_CELL_LANGUAGE, DETECT_CELL_LANGUAGE, getNotebookEditorFromEditorPane } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/browser/notebookBrowser';
30
- import { editIcon, stopEditIcon, deleteCellIcon, clearIcon } from '@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/notebook/browser/notebookIcons';
29
+ import { QUIT_EDIT_CELL_COMMAND_ID, CellEditState, CHANGE_CELL_LANGUAGE, DETECT_CELL_LANGUAGE, getNotebookEditorFromEditorPane } from '@codingame/monaco-vscode-9a6d8b6c-ad4c-5ea3-9558-f43d6dc4c0ad-common/vscode/vs/workbench/contrib/notebook/browser/notebookBrowser';
30
+ import { editIcon, stopEditIcon, deleteCellIcon, clearIcon } from '@codingame/monaco-vscode-9a6d8b6c-ad4c-5ea3-9558-f43d6dc4c0ad-common/vscode/vs/workbench/contrib/notebook/browser/notebookIcons';
31
31
  import { CellKind, NotebookCellExecutionState, NotebookSetting, CellEditType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookCommon';
32
- import { NOTEBOOK_EDITOR_EDITABLE, NOTEBOOK_CELL_TYPE, NOTEBOOK_CELL_MARKDOWN_EDIT_MODE, NOTEBOOK_CELL_EDITABLE, NOTEBOOK_CELL_LIST_FOCUSED, NOTEBOOK_OUTPUT_INPUT_FOCUSED, NOTEBOOK_EDITOR_FOCUSED, NOTEBOOK_OUTPUT_FOCUSED, NOTEBOOK_CELL_HAS_OUTPUTS, NOTEBOOK_USE_CONSOLIDATED_OUTPUT_BUTTON, NOTEBOOK_CELL_IS_FIRST_OUTPUT, NOTEBOOK_HAS_OUTPUTS, NOTEBOOK_IS_ACTIVE_EDITOR } from '@codingame/monaco-vscode-771c2e6d-0284-5ac1-be73-7176085eedc5-common/vscode/vs/workbench/contrib/notebook/common/notebookContextKeys';
32
+ import { NOTEBOOK_EDITOR_EDITABLE, NOTEBOOK_CELL_TYPE, NOTEBOOK_CELL_MARKDOWN_EDIT_MODE, NOTEBOOK_CELL_EDITABLE, NOTEBOOK_CELL_LIST_FOCUSED, NOTEBOOK_OUTPUT_INPUT_FOCUSED, NOTEBOOK_EDITOR_FOCUSED, NOTEBOOK_OUTPUT_FOCUSED, NOTEBOOK_CELL_HAS_OUTPUTS, NOTEBOOK_USE_CONSOLIDATED_OUTPUT_BUTTON, NOTEBOOK_CELL_IS_FIRST_OUTPUT, NOTEBOOK_IS_ACTIVE_EDITOR, NOTEBOOK_HAS_OUTPUTS } from '@codingame/monaco-vscode-52bb4d5b-ba1a-57fd-9bee-b28824214eac-common/vscode/vs/workbench/contrib/notebook/common/notebookContextKeys';
33
33
  import { INotebookExecutionStateService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookExecutionStateService.service';
34
34
  import { INotebookKernelService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookKernelService.service';
35
35
  import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
@@ -46,7 +46,7 @@ registerAction2(class EditCellAction extends NotebookCellAction {
46
46
  constructor() {
47
47
  super({
48
48
  id: EDIT_CELL_COMMAND_ID,
49
- title: ( localize(7611, "Edit Cell")),
49
+ title: ( localize(7698, "Edit Cell")),
50
50
  keybinding: {
51
51
  when: ( ContextKeyExpr.and(
52
52
  NOTEBOOK_CELL_LIST_FOCUSED,
@@ -82,7 +82,7 @@ registerAction2(class QuitEditCellAction extends NotebookCellAction {
82
82
  constructor() {
83
83
  super({
84
84
  id: QUIT_EDIT_CELL_COMMAND_ID,
85
- title: ( localize(7612, "Stop Editing Cell")),
85
+ title: ( localize(7699, "Stop Editing Cell")),
86
86
  menu: {
87
87
  id: MenuId.NotebookCellTitle,
88
88
  when: ( ContextKeyExpr.and(( NOTEBOOK_CELL_TYPE.isEqualTo('markup')), NOTEBOOK_CELL_MARKDOWN_EDIT_MODE, NOTEBOOK_CELL_EDITABLE)),
@@ -123,7 +123,7 @@ registerAction2(class DeleteCellAction extends NotebookCellAction {
123
123
  constructor() {
124
124
  super({
125
125
  id: DELETE_CELL_COMMAND_ID,
126
- title: ( localize(7613, "Delete Cell")),
126
+ title: ( localize(7700, "Delete Cell")),
127
127
  keybinding: {
128
128
  primary: KeyCode.Delete,
129
129
  mac: {
@@ -160,13 +160,13 @@ registerAction2(class DeleteCellAction extends NotebookCellAction {
160
160
  const configService = accessor.get(IConfigurationService);
161
161
  if (runState === NotebookCellExecutionState.Executing && configService.getValue(NotebookSetting.confirmDeleteRunningCell)) {
162
162
  const dialogService = accessor.get(IDialogService);
163
- const primaryButton = ( localize(7614, "Delete"));
163
+ const primaryButton = ( localize(7701, "Delete"));
164
164
  confirmation = await dialogService.confirm({
165
165
  type: 'question',
166
- message: ( localize(7615, "This cell is running, are you sure you want to delete it?")),
166
+ message: ( localize(7702, "This cell is running, are you sure you want to delete it?")),
167
167
  primaryButton: primaryButton,
168
168
  checkbox: {
169
- label: ( localize(7616, "Do not ask me again"))
169
+ label: ( localize(7703, "Do not ask me again"))
170
170
  }
171
171
  });
172
172
  }
@@ -186,7 +186,7 @@ registerAction2(class ClearCellOutputsAction extends NotebookCellAction {
186
186
  constructor() {
187
187
  super({
188
188
  id: CLEAR_CELL_OUTPUTS_COMMAND_ID,
189
- title: ( localize(7617, 'Clear Cell Outputs')),
189
+ title: ( localize(7704, 'Clear Cell Outputs')),
190
190
  menu: [
191
191
  {
192
192
  id: MenuId.NotebookCellTitle,
@@ -250,7 +250,7 @@ registerAction2(class ClearAllCellOutputsAction extends NotebookAction {
250
250
  constructor() {
251
251
  super({
252
252
  id: CLEAR_ALL_CELLS_OUTPUTS_COMMAND_ID,
253
- title: ( localize(7618, 'Clear All Outputs')),
253
+ title: ( localize(7705, 'Clear All Outputs')),
254
254
  precondition: NOTEBOOK_HAS_OUTPUTS,
255
255
  menu: [
256
256
  {
@@ -307,9 +307,14 @@ registerAction2(class ChangeCellLanguageAction extends NotebookCellAction {
307
307
  constructor() {
308
308
  super({
309
309
  id: CHANGE_CELL_LANGUAGE,
310
- title: ( localize(7619, 'Change Cell Language')),
310
+ title: ( localize(7706, 'Change Cell Language')),
311
+ keybinding: {
312
+ weight: KeybindingWeight.WorkbenchContrib,
313
+ primary: KeyChord(KeyMod.CtrlCmd | KeyCode.KeyK, KeyCode.KeyM),
314
+ when: ( ContextKeyExpr.and(NOTEBOOK_EDITOR_FOCUSED, NOTEBOOK_EDITOR_EDITABLE, NOTEBOOK_CELL_EDITABLE))
315
+ },
311
316
  metadata: {
312
- description: ( localize(7619, 'Change Cell Language')),
317
+ description: ( localize(7706, 'Change Cell Language')),
313
318
  args: [
314
319
  {
315
320
  name: 'range',
@@ -382,10 +387,10 @@ registerAction2(class ChangeCellLanguageAction extends NotebookCellAction {
382
387
  providerLanguages.forEach(languageId => {
383
388
  let description;
384
389
  if (context.cell.cellKind === CellKind.Markup ? (languageId === 'markdown') : (languageId === context.cell.language)) {
385
- description = ( localize(7620, "({0}) - Current Language", languageId));
390
+ description = ( localize(7707, "({0}) - Current Language", languageId));
386
391
  }
387
392
  else {
388
- description = ( localize(7621, "({0})", languageId));
393
+ description = ( localize(7708, "({0})", languageId));
389
394
  }
390
395
  const languageName = languageService.getLanguageName(languageId);
391
396
  if (!languageName) {
@@ -408,16 +413,16 @@ registerAction2(class ChangeCellLanguageAction extends NotebookCellAction {
408
413
  return a.description.localeCompare(b.description);
409
414
  });
410
415
  const autoDetectMode = {
411
- label: ( localize(7622, "Auto Detect"))
416
+ label: ( localize(7709, "Auto Detect"))
412
417
  };
413
418
  const picks = [
414
419
  autoDetectMode,
415
- { type: 'separator', label: ( localize(7623, "languages (identifier)")) },
420
+ { type: 'separator', label: ( localize(7710, "languages (identifier)")) },
416
421
  ...topItems,
417
422
  { type: 'separator' },
418
423
  ...mainItems
419
424
  ];
420
- const selection = await quickInputService.pick(picks, { placeHolder: ( localize(7624, "Select Language Mode")) });
425
+ const selection = await quickInputService.pick(picks, { placeHolder: ( localize(7711, "Select Language Mode")) });
421
426
  const languageId = selection === autoDetectMode
422
427
  ? await languageDetectionService.detectLanguage(context.cell.uri)
423
428
  : selection?.languageId;
@@ -450,7 +455,7 @@ registerAction2(class DetectCellLanguageAction extends NotebookCellAction {
450
455
  constructor() {
451
456
  super({
452
457
  id: DETECT_CELL_LANGUAGE,
453
- title: ( localize2(7625, "Accept Detected Language for Cell")),
458
+ title: ( localize2(7712, "Accept Detected Language for Cell")),
454
459
  f1: true,
455
460
  precondition: ( ContextKeyExpr.and(NOTEBOOK_EDITOR_EDITABLE, NOTEBOOK_CELL_EDITABLE)),
456
461
  keybinding: { primary: KeyCode.KeyD | KeyMod.Alt | KeyMod.Shift, weight: KeybindingWeight.WorkbenchContrib }
@@ -468,7 +473,7 @@ registerAction2(class DetectCellLanguageAction extends NotebookCellAction {
468
473
  setCellToLanguage(detection, context);
469
474
  }
470
475
  else {
471
- notificationService.warn(( localize(7626, "Unable to detect cell language")));
476
+ notificationService.warn(( localize(7713, "Unable to detect cell language")));
472
477
  }
473
478
  }
474
479
  });
@@ -493,7 +498,7 @@ registerAction2(class SelectNotebookIndentation extends NotebookAction {
493
498
  constructor() {
494
499
  super({
495
500
  id: SELECT_NOTEBOOK_INDENTATION_ID,
496
- title: ( localize2(7627, 'Select Indentation')),
501
+ title: ( localize2(7714, 'Select Indentation')),
497
502
  f1: true,
498
503
  precondition: ( ContextKeyExpr.and(
499
504
  NOTEBOOK_IS_ACTIVE_EDITOR,
@@ -511,10 +516,10 @@ registerAction2(class SelectNotebookIndentation extends NotebookAction {
511
516
  const instantiationService = accessor.get(IInstantiationService);
512
517
  const activeNotebook = getNotebookEditorFromEditorPane(editorService.activeEditorPane);
513
518
  if (!activeNotebook || activeNotebook.isDisposed) {
514
- return quickInputService.pick([{ label: ( localize(7628, "No notebook editor active at this time")) }]);
519
+ return quickInputService.pick([{ label: ( localize(7715, "No notebook editor active at this time")) }]);
515
520
  }
516
521
  if (activeNotebook.isReadOnly) {
517
- return quickInputService.pick([{ label: ( localize(7629, "The active notebook editor is read-only.")) }]);
522
+ return quickInputService.pick([{ label: ( localize(7716, "The active notebook editor is read-only.")) }]);
518
523
  }
519
524
  const picks = ( [
520
525
  (
@@ -536,9 +541,9 @@ registerAction2(class SelectNotebookIndentation extends NotebookAction {
536
541
  }
537
542
  };
538
543
  }));
539
- picks.splice(3, 0, { type: 'separator', label: ( localize(7630, "convert file")) });
540
- picks.unshift({ type: 'separator', label: ( localize(7631, "change view")) });
541
- const action = await quickInputService.pick(picks, { placeHolder: ( localize(7632, "Select Action")), matchOnDetail: true });
544
+ picks.splice(3, 0, { type: 'separator', label: ( localize(7717, "convert file")) });
545
+ picks.unshift({ type: 'separator', label: ( localize(7718, "change view")) });
546
+ const action = await quickInputService.pick(picks, { placeHolder: ( localize(7719, "Select Action")), matchOnDetail: true });
542
547
  if (!action) {
543
548
  return;
544
549
  }
@@ -551,7 +556,7 @@ registerAction2(class CommentSelectedCellsAction extends NotebookMultiCellAction
551
556
  constructor() {
552
557
  super({
553
558
  id: COMMENT_SELECTED_CELLS_ID,
554
- title: ( localize(7633, "Comment Selected Cells")),
559
+ title: ( localize(7720, "Comment Selected Cells")),
555
560
  keybinding: {
556
561
  when: ( ContextKeyExpr.and(
557
562
  NOTEBOOK_EDITOR_FOCUSED,