@opensumi/ide-ai-native 3.8.1-next-1741080291.0 → 3.8.1-next-1741091353.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 (192) hide show
  1. package/lib/browser/ai-core.contribution.d.ts +0 -3
  2. package/lib/browser/ai-core.contribution.d.ts.map +1 -1
  3. package/lib/browser/ai-core.contribution.js +1 -45
  4. package/lib/browser/ai-core.contribution.js.map +1 -1
  5. package/lib/browser/chat/chat-agent.service.d.ts +8 -0
  6. package/lib/browser/chat/chat-agent.service.d.ts.map +1 -1
  7. package/lib/browser/chat/chat-agent.service.js +32 -5
  8. package/lib/browser/chat/chat-agent.service.js.map +1 -1
  9. package/lib/browser/chat/chat-manager.service.d.ts.map +1 -1
  10. package/lib/browser/chat/chat-manager.service.js +4 -0
  11. package/lib/browser/chat/chat-manager.service.js.map +1 -1
  12. package/lib/browser/chat/chat-model.d.ts.map +1 -1
  13. package/lib/browser/chat/chat-model.js +3 -2
  14. package/lib/browser/chat/chat-model.js.map +1 -1
  15. package/lib/browser/chat/chat-proxy.service.d.ts.map +1 -1
  16. package/lib/browser/chat/chat-proxy.service.js +5 -9
  17. package/lib/browser/chat/chat-proxy.service.js.map +1 -1
  18. package/lib/browser/chat/chat.module.less +1 -2
  19. package/lib/browser/chat/chat.view.d.ts.map +1 -1
  20. package/lib/browser/chat/chat.view.js +13 -39
  21. package/lib/browser/chat/chat.view.js.map +1 -1
  22. package/lib/browser/components/ChatContext/index.js +2 -2
  23. package/lib/browser/components/ChatContext/index.js.map +1 -1
  24. package/lib/browser/components/ChatInput.d.ts.map +1 -1
  25. package/lib/browser/components/ChatInput.js +25 -1
  26. package/lib/browser/components/ChatInput.js.map +1 -1
  27. package/lib/browser/components/ChatToolRender.d.ts.map +1 -1
  28. package/lib/browser/components/ChatToolRender.js +2 -3
  29. package/lib/browser/components/ChatToolRender.js.map +1 -1
  30. package/lib/browser/components/chat-history.module.less +2 -1
  31. package/lib/browser/components/components.module.less +20 -0
  32. package/lib/browser/context/llm-context.service.d.ts +18 -5
  33. package/lib/browser/context/llm-context.service.d.ts.map +1 -1
  34. package/lib/browser/context/llm-context.service.js +80 -47
  35. package/lib/browser/context/llm-context.service.js.map +1 -1
  36. package/lib/browser/layout/layout.module.less +4 -4
  37. package/lib/browser/mcp/base-apply.service.d.ts +18 -7
  38. package/lib/browser/mcp/base-apply.service.d.ts.map +1 -1
  39. package/lib/browser/mcp/base-apply.service.js +185 -65
  40. package/lib/browser/mcp/base-apply.service.js.map +1 -1
  41. package/lib/browser/mcp/tools/components/EditFile.d.ts.map +1 -1
  42. package/lib/browser/mcp/tools/components/EditFile.js +15 -9
  43. package/lib/browser/mcp/tools/components/EditFile.js.map +1 -1
  44. package/lib/browser/mcp/tools/components/ExpandableFileList.d.ts +13 -0
  45. package/lib/browser/mcp/tools/components/ExpandableFileList.d.ts.map +1 -0
  46. package/lib/browser/mcp/tools/components/{SearchResult.js → ExpandableFileList.js} +29 -19
  47. package/lib/browser/mcp/tools/components/ExpandableFileList.js.map +1 -0
  48. package/lib/browser/mcp/tools/components/index.module.less +4 -0
  49. package/lib/browser/mcp/tools/createNewFileWithText.d.ts +1 -0
  50. package/lib/browser/mcp/tools/createNewFileWithText.d.ts.map +1 -1
  51. package/lib/browser/mcp/tools/createNewFileWithText.js +19 -11
  52. package/lib/browser/mcp/tools/createNewFileWithText.js.map +1 -1
  53. package/lib/browser/mcp/tools/fileSearch.d.ts +1 -0
  54. package/lib/browser/mcp/tools/fileSearch.d.ts.map +1 -1
  55. package/lib/browser/mcp/tools/fileSearch.js +14 -5
  56. package/lib/browser/mcp/tools/fileSearch.js.map +1 -1
  57. package/lib/browser/mcp/tools/getDiagnosticsByPath.d.ts.map +1 -1
  58. package/lib/browser/mcp/tools/getDiagnosticsByPath.js +1 -0
  59. package/lib/browser/mcp/tools/getDiagnosticsByPath.js.map +1 -1
  60. package/lib/browser/mcp/tools/grepSearch.d.ts.map +1 -1
  61. package/lib/browser/mcp/tools/grepSearch.js +6 -3
  62. package/lib/browser/mcp/tools/grepSearch.js.map +1 -1
  63. package/lib/browser/mcp/tools/handlers/EditFile.js +1 -1
  64. package/lib/browser/mcp/tools/handlers/EditFile.js.map +1 -1
  65. package/lib/browser/mcp/tools/handlers/ListDir.d.ts +1 -0
  66. package/lib/browser/mcp/tools/handlers/ListDir.d.ts.map +1 -1
  67. package/lib/browser/mcp/tools/handlers/ListDir.js +3 -0
  68. package/lib/browser/mcp/tools/handlers/ListDir.js.map +1 -1
  69. package/lib/browser/mcp/tools/handlers/RunCommand.d.ts.map +1 -1
  70. package/lib/browser/mcp/tools/handlers/RunCommand.js +2 -0
  71. package/lib/browser/mcp/tools/handlers/RunCommand.js.map +1 -1
  72. package/lib/browser/mcp/tools/listDir.d.ts +1 -0
  73. package/lib/browser/mcp/tools/listDir.d.ts.map +1 -1
  74. package/lib/browser/mcp/tools/listDir.js +35 -4
  75. package/lib/browser/mcp/tools/listDir.js.map +1 -1
  76. package/lib/browser/mcp/tools/runTerminalCmd.d.ts.map +1 -1
  77. package/lib/browser/mcp/tools/runTerminalCmd.js +1 -0
  78. package/lib/browser/mcp/tools/runTerminalCmd.js.map +1 -1
  79. package/lib/browser/model/msg-history-manager.d.ts +1 -0
  80. package/lib/browser/model/msg-history-manager.d.ts.map +1 -1
  81. package/lib/browser/model/msg-history-manager.js +3 -0
  82. package/lib/browser/model/msg-history-manager.js.map +1 -1
  83. package/lib/browser/preferences/schema.d.ts.map +1 -1
  84. package/lib/browser/preferences/schema.js +1 -7
  85. package/lib/browser/preferences/schema.js.map +1 -1
  86. package/lib/browser/widget/inline-diff/inline-diff-manager.d.ts.map +1 -1
  87. package/lib/browser/widget/inline-diff/inline-diff-manager.js +68 -8
  88. package/lib/browser/widget/inline-diff/inline-diff-manager.js.map +1 -1
  89. package/lib/browser/widget/inline-diff/inline-diff-previewer.d.ts +10 -4
  90. package/lib/browser/widget/inline-diff/inline-diff-previewer.d.ts.map +1 -1
  91. package/lib/browser/widget/inline-diff/inline-diff-previewer.js +14 -3
  92. package/lib/browser/widget/inline-diff/inline-diff-previewer.js.map +1 -1
  93. package/lib/browser/widget/inline-diff/inline-diff-widget.module.less +25 -4
  94. package/lib/browser/widget/inline-diff/inline-diff.controller.d.ts +3 -3
  95. package/lib/browser/widget/inline-diff/inline-diff.controller.d.ts.map +1 -1
  96. package/lib/browser/widget/inline-diff/inline-diff.controller.js +10 -5
  97. package/lib/browser/widget/inline-diff/inline-diff.controller.js.map +1 -1
  98. package/lib/browser/widget/inline-stream-diff/inline-stream-diff.handler.d.ts +46 -17
  99. package/lib/browser/widget/inline-stream-diff/inline-stream-diff.handler.d.ts.map +1 -1
  100. package/lib/browser/widget/inline-stream-diff/inline-stream-diff.handler.js +110 -53
  101. package/lib/browser/widget/inline-stream-diff/inline-stream-diff.handler.js.map +1 -1
  102. package/lib/browser/widget/inline-stream-diff/live-preview.decoration.d.ts +4 -0
  103. package/lib/browser/widget/inline-stream-diff/live-preview.decoration.d.ts.map +1 -1
  104. package/lib/browser/widget/inline-stream-diff/live-preview.decoration.js +26 -1
  105. package/lib/browser/widget/inline-stream-diff/live-preview.decoration.js.map +1 -1
  106. package/lib/common/index.d.ts +0 -1
  107. package/lib/common/index.d.ts.map +1 -1
  108. package/lib/common/index.js +0 -2
  109. package/lib/common/index.js.map +1 -1
  110. package/lib/common/llm-context.d.ts +13 -9
  111. package/lib/common/llm-context.d.ts.map +1 -1
  112. package/lib/common/llm-context.js.map +1 -1
  113. package/lib/common/prompts/context-prompt-provider.d.ts +4 -3
  114. package/lib/common/prompts/context-prompt-provider.d.ts.map +1 -1
  115. package/lib/common/prompts/context-prompt-provider.js +33 -22
  116. package/lib/common/prompts/context-prompt-provider.js.map +1 -1
  117. package/lib/common/types.d.ts +1 -0
  118. package/lib/common/types.d.ts.map +1 -1
  119. package/lib/node/anthropic/anthropic-language-model.d.ts +1 -3
  120. package/lib/node/anthropic/anthropic-language-model.d.ts.map +1 -1
  121. package/lib/node/anthropic/anthropic-language-model.js +2 -6
  122. package/lib/node/anthropic/anthropic-language-model.js.map +1 -1
  123. package/lib/node/base-language-model.d.ts +1 -4
  124. package/lib/node/base-language-model.d.ts.map +1 -1
  125. package/lib/node/base-language-model.js +6 -7
  126. package/lib/node/base-language-model.js.map +1 -1
  127. package/lib/node/deepseek/deepseek-language-model.d.ts +1 -3
  128. package/lib/node/deepseek/deepseek-language-model.d.ts.map +1 -1
  129. package/lib/node/deepseek/deepseek-language-model.js +2 -6
  130. package/lib/node/deepseek/deepseek-language-model.js.map +1 -1
  131. package/lib/node/openai/openai-language-model.d.ts +4 -5
  132. package/lib/node/openai/openai-language-model.d.ts.map +1 -1
  133. package/lib/node/openai/openai-language-model.js +7 -8
  134. package/lib/node/openai/openai-language-model.js.map +1 -1
  135. package/package.json +23 -24
  136. package/src/browser/ai-core.contribution.ts +1 -56
  137. package/src/browser/chat/chat-agent.service.ts +38 -7
  138. package/src/browser/chat/chat-manager.service.ts +6 -0
  139. package/src/browser/chat/chat-model.ts +11 -6
  140. package/src/browser/chat/chat-proxy.service.ts +6 -9
  141. package/src/browser/chat/chat.module.less +1 -2
  142. package/src/browser/chat/chat.view.tsx +14 -72
  143. package/src/browser/components/ChatContext/index.tsx +2 -2
  144. package/src/browser/components/ChatInput.tsx +67 -3
  145. package/src/browser/components/ChatToolRender.tsx +1 -2
  146. package/src/browser/components/chat-history.module.less +2 -1
  147. package/src/browser/components/components.module.less +20 -0
  148. package/src/browser/context/llm-context.service.ts +93 -54
  149. package/src/browser/layout/layout.module.less +4 -4
  150. package/src/browser/mcp/base-apply.service.ts +222 -67
  151. package/src/browser/mcp/tools/components/EditFile.tsx +16 -9
  152. package/src/browser/mcp/tools/components/ExpandableFileList.tsx +133 -0
  153. package/src/browser/mcp/tools/components/index.module.less +4 -0
  154. package/src/browser/mcp/tools/createNewFileWithText.ts +21 -12
  155. package/src/browser/mcp/tools/fileSearch.ts +14 -4
  156. package/src/browser/mcp/tools/getDiagnosticsByPath.ts +1 -0
  157. package/src/browser/mcp/tools/grepSearch.ts +6 -3
  158. package/src/browser/mcp/tools/handlers/EditFile.ts +1 -1
  159. package/src/browser/mcp/tools/handlers/ListDir.ts +4 -0
  160. package/src/browser/mcp/tools/handlers/RunCommand.ts +2 -0
  161. package/src/browser/mcp/tools/listDir.ts +36 -5
  162. package/src/browser/mcp/tools/runTerminalCmd.ts +1 -0
  163. package/src/browser/model/msg-history-manager.ts +4 -0
  164. package/src/browser/preferences/schema.ts +1 -7
  165. package/src/browser/widget/inline-diff/inline-diff-manager.tsx +143 -21
  166. package/src/browser/widget/inline-diff/inline-diff-previewer.ts +25 -7
  167. package/src/browser/widget/inline-diff/inline-diff-widget.module.less +25 -4
  168. package/src/browser/widget/inline-diff/inline-diff.controller.ts +16 -8
  169. package/src/browser/widget/inline-stream-diff/inline-stream-diff.handler.tsx +139 -68
  170. package/src/browser/widget/inline-stream-diff/live-preview.decoration.tsx +30 -1
  171. package/src/common/index.ts +0 -2
  172. package/src/common/llm-context.ts +10 -4
  173. package/src/common/prompts/context-prompt-provider.ts +38 -29
  174. package/src/common/types.ts +1 -0
  175. package/src/node/anthropic/anthropic-language-model.ts +2 -7
  176. package/src/node/base-language-model.ts +12 -10
  177. package/src/node/deepseek/deepseek-language-model.ts +2 -7
  178. package/src/node/openai/openai-language-model.ts +9 -10
  179. package/lib/browser/mcp/tools/components/SearchResult.d.ts +0 -11
  180. package/lib/browser/mcp/tools/components/SearchResult.d.ts.map +0 -1
  181. package/lib/browser/mcp/tools/components/SearchResult.js.map +0 -1
  182. package/lib/common/model.d.ts +0 -12
  183. package/lib/common/model.d.ts.map +0 -1
  184. package/lib/common/model.js +0 -83
  185. package/lib/common/model.js.map +0 -1
  186. package/lib/node/openai-compatible/openai-compatible-language-model.d.ts +0 -10
  187. package/lib/node/openai-compatible/openai-compatible-language-model.d.ts.map +0 -1
  188. package/lib/node/openai-compatible/openai-compatible-language-model.js +0 -32
  189. package/lib/node/openai-compatible/openai-compatible-language-model.js.map +0 -1
  190. package/src/browser/mcp/tools/components/SearchResult.tsx +0 -92
  191. package/src/common/model.ts +0 -90
  192. package/src/node/openai-compatible/openai-compatible-language-model.ts +0 -30
@@ -14,32 +14,58 @@ let LLMContextServiceImpl = class LLMContextServiceImpl extends event_decorator_
14
14
  constructor() {
15
15
  super(...arguments);
16
16
  this.isAutoCollecting = false;
17
- this.contextFiles = [];
18
- this.maxFiles = 10; // 上下文的最大长度限制
17
+ this.contextVersion = 0;
18
+ this.maxAttachFilesLimit = 10;
19
+ this.maxViewFilesLimit = 20;
20
+ this.attachedFiles = [];
21
+ this.recentlyViewFiles = [];
19
22
  this.onDidContextFilesChangeEmitter = new utils_1.Emitter();
20
23
  this.onDidContextFilesChangeEvent = this.onDidContextFilesChangeEmitter.event;
21
24
  }
22
- addFileToContext(uri, selection, isManual = true) {
23
- this.removeFileFromContext(uri);
24
- this.contextFiles.push({ uri, selection, isManual });
25
- if (this.contextFiles.length > this.maxFiles) {
26
- this.contextFiles.shift();
25
+ addFileToList(file, list, maxLimit) {
26
+ const existingIndex = list.findIndex((f) => f.uri.toString() === file.uri.toString());
27
+ if (existingIndex > -1) {
28
+ list.splice(existingIndex, 1);
27
29
  }
30
+ list.push(file);
31
+ if (list.length > maxLimit) {
32
+ list.shift();
33
+ }
34
+ }
35
+ addFileToContext(uri, selection, isManual = false) {
36
+ if (!uri) {
37
+ return;
38
+ }
39
+ const file = { uri, selection };
40
+ const targetList = isManual ? this.attachedFiles : this.recentlyViewFiles;
41
+ const maxLimit = isManual ? this.maxAttachFilesLimit : this.maxViewFilesLimit;
42
+ if (isManual) {
43
+ this.docModelManager.createModelReference(uri);
44
+ }
45
+ this.addFileToList(file, targetList, maxLimit);
46
+ this.notifyContextChange();
47
+ }
48
+ notifyContextChange() {
28
49
  this.onDidContextFilesChangeEmitter.fire(this.getAllContextFiles());
29
50
  }
30
51
  cleanFileContext() {
31
- this.contextFiles = [];
32
- this.onDidContextFilesChangeEmitter.fire(this.getAllContextFiles());
52
+ this.attachedFiles.length = 0;
53
+ this.notifyContextChange();
33
54
  }
34
55
  getAllContextFiles() {
35
- return [...this.contextFiles];
56
+ return {
57
+ viewed: this.recentlyViewFiles,
58
+ attached: this.attachedFiles,
59
+ version: this.contextVersion++,
60
+ };
36
61
  }
37
- removeFileFromContext(uri) {
38
- const index = this.contextFiles.findIndex((file) => file.uri.toString() === uri.toString());
62
+ removeFileFromContext(uri, isManual = false) {
63
+ const targetList = isManual ? this.attachedFiles : this.recentlyViewFiles;
64
+ const index = targetList.findIndex((file) => file.uri.toString() === uri.toString());
39
65
  if (index > -1) {
40
- this.contextFiles.splice(index, 1);
41
- this.onDidContextFilesChangeEmitter.fire(this.getAllContextFiles());
66
+ targetList.splice(index, 1);
42
67
  }
68
+ this.notifyContextChange();
43
69
  }
44
70
  startAutoCollection() {
45
71
  if (this.isAutoCollecting) {
@@ -53,13 +79,13 @@ let LLMContextServiceImpl = class LLMContextServiceImpl extends event_decorator_
53
79
  if (event.payload.uri.scheme !== 'file') {
54
80
  return;
55
81
  }
56
- // FIXME: 暂时不自动添加
57
- // this.addFileToContext(event.payload.uri);
82
+ this.addFileToContext(event.payload.uri, undefined, false);
58
83
  }));
59
84
  this.disposables.push(this.eventBus.on(types_1.EditorDocumentModelRemovalEvent, (event) => {
60
85
  if (event.payload.scheme !== 'file') {
61
86
  return;
62
87
  }
88
+ this.removeFileFromContext(event.payload, false);
63
89
  }));
64
90
  this.disposables.push(this.eventBus.on(types_1.EditorDocumentModelSavedEvent, (event) => {
65
91
  if (event.payload.scheme !== 'file') {
@@ -74,10 +100,10 @@ let LLMContextServiceImpl = class LLMContextServiceImpl extends event_decorator_
74
100
  event.payload.selections[0].positionLineNumber,
75
101
  ].sort();
76
102
  if (selection[0] === selection[1]) {
77
- this.addFileToContext(event.payload.editorUri, undefined);
103
+ this.addFileToContext(event.payload.editorUri, undefined, false);
78
104
  }
79
105
  else {
80
- this.addFileToContext(event.payload.editorUri, selection.sort((a, b) => a - b));
106
+ this.addFileToContext(event.payload.editorUri, selection.sort((a, b) => a - b), false);
81
107
  }
82
108
  }
83
109
  }));
@@ -87,40 +113,47 @@ let LLMContextServiceImpl = class LLMContextServiceImpl extends event_decorator_
87
113
  }
88
114
  serialize() {
89
115
  const files = this.getAllContextFiles();
90
- const recentlyViewFiles = files
91
- .filter((v) => !v.selection)
92
- .map((file) => {
93
- const relativePath = utils_1.URI.file(this.appConfig.workspaceDir).relative(file.uri);
94
- if (relativePath) {
95
- return relativePath.toString();
96
- }
97
- return file.uri.parent.toString();
98
- })
116
+ const workspaceRoot = utils_1.URI.file(this.appConfig.workspaceDir);
117
+ return {
118
+ recentlyViewFiles: this.serializeRecentlyViewFiles(files.viewed, workspaceRoot),
119
+ attachedFiles: this.serializeAttachedFiles(files.attached, workspaceRoot),
120
+ };
121
+ }
122
+ serializeRecentlyViewFiles(files, workspaceRoot) {
123
+ return files
124
+ .map((file) => { var _a; return ((_a = workspaceRoot.relative(file.uri)) === null || _a === void 0 ? void 0 : _a.toString()) || file.uri.parent.toString(); })
125
+ .filter(Boolean);
126
+ }
127
+ serializeAttachedFiles(files, workspaceRoot) {
128
+ return files
129
+ .map((file) => this.serializeAttachedFile(file, workspaceRoot))
99
130
  .filter(Boolean);
100
- const attachedFiles = files
101
- .filter((v) => v.selection)
102
- .map((file) => {
131
+ }
132
+ serializeAttachedFile(file, workspaceRoot) {
133
+ try {
103
134
  const ref = this.docModelManager.getModelReference(file.uri);
104
- const content = ref.instance.getText();
105
- const lineErrors = this.markerService
106
- .getManager()
107
- .getMarkers({
108
- resource: file.uri.toString(),
109
- severities: markers_1.MarkerSeverity.Error,
110
- })
111
- .map((marker) => marker.message);
135
+ if (!ref) {
136
+ return null;
137
+ }
112
138
  return {
113
- content,
114
- lineErrors,
115
- path: utils_1.URI.file(this.appConfig.workspaceDir).relative(file.uri).toString(),
116
- language: ref === null || ref === void 0 ? void 0 : ref.instance.languageId,
139
+ content: ref.instance.getText(),
140
+ lineErrors: this.getFileErrors(file.uri),
141
+ path: workspaceRoot.relative(file.uri).toString(),
142
+ language: ref.instance.languageId,
117
143
  };
144
+ }
145
+ catch (e) {
146
+ return null;
147
+ }
148
+ }
149
+ getFileErrors(uri) {
150
+ return this.markerService
151
+ .getManager()
152
+ .getMarkers({
153
+ resource: uri.toString(),
154
+ severities: markers_1.MarkerSeverity.Error,
118
155
  })
119
- .filter(Boolean);
120
- return {
121
- recentlyViewFiles,
122
- attachedFiles,
123
- };
156
+ .map((marker) => marker.message);
124
157
  }
125
158
  };
126
159
  exports.LLMContextServiceImpl = LLMContextServiceImpl;
@@ -1 +1 @@
1
- {"version":3,"file":"llm-context.service.js","sourceRoot":"","sources":["../../../src/browser/context/llm-context.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llm-context.service.js","sourceRoot":"","sources":["../../../src/browser/context/llm-context.service.ts"],"names":[],"mappings":"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"}
@@ -14,16 +14,16 @@
14
14
  padding: 8px 12px;
15
15
  min-width: initial;
16
16
  margin: 0;
17
-
18
- ::after {
19
- content: '';
20
- }
21
17
  }
22
18
 
23
19
  .rce-mbox-text {
24
20
  line-height: 18px;
25
21
  width: inherit;
26
22
  font-size: 12px;
23
+
24
+ &::after {
25
+ display: none;
26
+ }
27
27
  }
28
28
 
29
29
  .rce-smsg {
@@ -1,35 +1,42 @@
1
1
  import { AppConfig, IChatProgress, IMarker, WithEventBus } from '@opensumi/ide-core-browser';
2
2
  import { WorkbenchEditorService } from '@opensumi/ide-editor';
3
3
  import { EditorGroupCloseEvent, EditorGroupOpenEvent } from '@opensumi/ide-editor/lib/browser';
4
- import { ICodeEditor, Range } from '@opensumi/ide-monaco';
4
+ import { ICodeEditor, ITextModel, Range } from '@opensumi/ide-monaco';
5
5
  import { URI } from '@opensumi/ide-utils';
6
6
  import { SumiReadableStream } from '@opensumi/ide-utils/lib/stream';
7
7
  import { CodeBlockData } from '../../common/types';
8
8
  import { ChatInternalService } from '../chat/chat.internal.service';
9
- import { FileHandler } from './tools/handlers/ReadFile';
9
+ import { BaseInlineDiffPreviewer } from '../widget/inline-diff';
10
+ import { BaseInlineStreamDiffHandler } from '../widget/inline-stream-diff/inline-stream-diff.handler';
10
11
  export declare abstract class BaseApplyService extends WithEventBus {
11
- protected fileHandler: FileHandler;
12
12
  protected chatInternalService: ChatInternalService;
13
13
  protected appConfig: AppConfig;
14
14
  protected readonly editorService: WorkbenchEditorService;
15
15
  private readonly inlineDiffService;
16
16
  private readonly markerService;
17
+ private readonly editorDocumentModelService;
17
18
  private onCodeBlockUpdateEmitter;
18
19
  onCodeBlockUpdate: import("@opensumi/ide-core-browser").Event<CodeBlockData>;
20
+ private currentSessionId?;
19
21
  constructor();
20
22
  private getMessageCodeBlocks;
21
- private activePreviewer;
23
+ private getSessionCodeBlocksForPath;
24
+ private activePreviewerMap;
25
+ private editorListenerMap;
22
26
  onEditorGroupClose(event: EditorGroupCloseEvent): void;
23
27
  onEditorGroupOpen(event: EditorGroupOpenEvent): Promise<void>;
28
+ get currentPreviewer(): BaseInlineDiffPreviewer<BaseInlineStreamDiffHandler> | undefined;
24
29
  getUriPendingCodeBlock(uri: URI): CodeBlockData | undefined;
30
+ getPendingPaths(sessionId?: string): string[];
25
31
  getCodeBlock(toolCallId: string, messageId?: string): CodeBlockData | undefined;
26
32
  protected updateCodeBlock(codeBlock: CodeBlockData, messageId?: string): void;
27
- registerCodeBlock(relativePath: string, content: string, toolCallId: string): CodeBlockData;
33
+ registerCodeBlock(relativePath: string, content: string, toolCallId: string): Promise<CodeBlockData>;
34
+ private duringApply?;
28
35
  /**
29
36
  * Apply changes of a code block
30
37
  */
31
38
  apply(codeBlock: CodeBlockData): Promise<CodeBlockData>;
32
- renderApplyResult(codeBlock: CodeBlockData, updatedContentOrStream: string | SumiReadableStream<IChatProgress>, range?: Range): Promise<{
39
+ renderApplyResult(editor: ICodeEditor, codeBlock: CodeBlockData, updatedContentOrStream: string | SumiReadableStream<IChatProgress>, range?: Range): Promise<{
33
40
  diff: string;
34
41
  diagnosticInfos: IMarker[];
35
42
  } | undefined>;
@@ -40,10 +47,14 @@ export declare abstract class BaseApplyService extends WithEventBus {
40
47
  cancelAllApply(): void;
41
48
  revealApplyPosition(blockData: CodeBlockData): void;
42
49
  processAll(uri: URI, type: 'accept' | 'reject'): void;
43
- protected listenPartialEdit(editor: ICodeEditor, codeBlock: CodeBlockData, fullOriginalContent: string): Promise<{
50
+ protected listenPartialEdit(model: ITextModel, codeBlock: CodeBlockData): Promise<{
44
51
  diff: string;
45
52
  diagnosticInfos: IMarker[];
46
53
  }>;
54
+ protected getDiffResult(originalContent: string, appliedResult: string, relativePath: string): {
55
+ diff: string;
56
+ rangesFromDiffHunk: Range[];
57
+ };
47
58
  /**
48
59
  * Apply changes of a code block, return stream to render inline diff in stream mode, result to render inline diff directly
49
60
  * range is optional, if not provided, the result will be applied to the the full file
@@ -1 +1 @@
1
- {"version":3,"file":"base-apply.service.d.ts","sourceRoot":"","sources":["../../../src/browser/mcp/base-apply.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base-apply.service.d.ts","sourceRoot":"","sources":["../../../src/browser/mcp/base-apply.service.ts"],"names":[],"mappings":"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"}