@opensumi/ide-ai-native 3.7.2-next-1740450374.0 → 3.8.1-next-1740452092.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 (57) hide show
  1. package/lib/browser/ai-core.contribution.d.ts.map +1 -1
  2. package/lib/browser/ai-core.contribution.js +4 -0
  3. package/lib/browser/ai-core.contribution.js.map +1 -1
  4. package/lib/browser/chat/chat.module.less +2 -2
  5. package/lib/browser/chat/chat.view.d.ts.map +1 -1
  6. package/lib/browser/chat/chat.view.js +14 -19
  7. package/lib/browser/chat/chat.view.js.map +1 -1
  8. package/lib/browser/components/chat-history.css +1 -1
  9. package/lib/browser/components/components.module.less +2 -2
  10. package/lib/browser/contrib/intelligent-completions/index.d.ts +12 -7
  11. package/lib/browser/contrib/intelligent-completions/index.d.ts.map +1 -1
  12. package/lib/browser/contrib/intelligent-completions/index.js +13 -2
  13. package/lib/browser/contrib/intelligent-completions/index.js.map +1 -1
  14. package/lib/browser/contrib/intelligent-completions/intelligent-completions.controller.d.ts +2 -7
  15. package/lib/browser/contrib/intelligent-completions/intelligent-completions.controller.d.ts.map +1 -1
  16. package/lib/browser/contrib/intelligent-completions/intelligent-completions.controller.js +6 -106
  17. package/lib/browser/contrib/intelligent-completions/intelligent-completions.controller.js.map +1 -1
  18. package/lib/browser/contrib/intelligent-completions/view/base.d.ts +18 -0
  19. package/lib/browser/contrib/intelligent-completions/view/base.d.ts.map +1 -0
  20. package/lib/browser/contrib/intelligent-completions/view/base.js +18 -0
  21. package/lib/browser/contrib/intelligent-completions/view/base.js.map +1 -0
  22. package/lib/browser/contrib/intelligent-completions/view/code-edits-previewer.d.ts +19 -0
  23. package/lib/browser/contrib/intelligent-completions/view/code-edits-previewer.d.ts.map +1 -0
  24. package/lib/browser/contrib/intelligent-completions/view/code-edits-previewer.js +67 -0
  25. package/lib/browser/contrib/intelligent-completions/view/code-edits-previewer.js.map +1 -0
  26. package/lib/browser/contrib/intelligent-completions/view/default.d.ts +11 -0
  27. package/lib/browser/contrib/intelligent-completions/view/default.d.ts.map +1 -0
  28. package/lib/browser/contrib/intelligent-completions/view/default.js +104 -0
  29. package/lib/browser/contrib/intelligent-completions/view/default.js.map +1 -0
  30. package/lib/browser/contrib/intelligent-completions/view/legacy.d.ts +16 -0
  31. package/lib/browser/contrib/intelligent-completions/view/legacy.d.ts.map +1 -0
  32. package/lib/browser/contrib/intelligent-completions/view/legacy.js +126 -0
  33. package/lib/browser/contrib/intelligent-completions/view/legacy.js.map +1 -0
  34. package/lib/browser/layout/layout.module.less +1 -1
  35. package/lib/browser/mcp/tools/components/index.module.less +4 -0
  36. package/lib/browser/preferences/schema.d.ts.map +1 -1
  37. package/lib/browser/preferences/schema.js +7 -0
  38. package/lib/browser/preferences/schema.js.map +1 -1
  39. package/lib/browser/widget/inline-hint/inline-hint.controller.d.ts.map +1 -1
  40. package/lib/browser/widget/inline-hint/inline-hint.controller.js +4 -2
  41. package/lib/browser/widget/inline-hint/inline-hint.controller.js.map +1 -1
  42. package/package.json +23 -23
  43. package/src/browser/ai-core.contribution.ts +4 -0
  44. package/src/browser/chat/chat.module.less +2 -2
  45. package/src/browser/chat/chat.view.tsx +29 -30
  46. package/src/browser/components/chat-history.css +1 -1
  47. package/src/browser/components/components.module.less +2 -2
  48. package/src/browser/contrib/intelligent-completions/index.ts +27 -8
  49. package/src/browser/contrib/intelligent-completions/intelligent-completions.controller.ts +10 -165
  50. package/src/browser/contrib/intelligent-completions/view/base.ts +31 -0
  51. package/src/browser/contrib/intelligent-completions/view/code-edits-previewer.ts +69 -0
  52. package/src/browser/contrib/intelligent-completions/view/default.ts +146 -0
  53. package/src/browser/contrib/intelligent-completions/view/legacy.ts +182 -0
  54. package/src/browser/layout/layout.module.less +1 -1
  55. package/src/browser/mcp/tools/components/index.module.less +4 -0
  56. package/src/browser/preferences/schema.ts +8 -0
  57. package/src/browser/widget/inline-hint/inline-hint.controller.ts +5 -1
@@ -4,25 +4,20 @@ exports.IntelligentCompletionsController = void 0;
4
4
  const ide_core_browser_1 = require("@opensumi/ide-core-browser");
5
5
  const ai_native_1 = require("@opensumi/ide-core-browser/lib/contextkey/ai-native");
6
6
  const ide_core_common_1 = require("@opensumi/ide-core-common");
7
- const ide_monaco_1 = require("@opensumi/ide-monaco");
8
7
  const observable_1 = require("@opensumi/ide-monaco/lib/common/observable");
9
- const strings_1 = require("@opensumi/ide-utils/lib/strings");
10
8
  const editorContextKeys_1 = require("@opensumi/monaco-editor-core/esm/vs/editor/common/editorContextKeys");
11
9
  const commandIds_1 = require("@opensumi/monaco-editor-core/esm/vs/editor/contrib/inlineCompletions/browser/controller/commandIds");
12
10
  const inlineCompletionContextKeys_1 = require("@opensumi/monaco-editor-core/esm/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionContextKeys");
13
11
  const inlineCompletionsController_1 = require("@opensumi/monaco-editor-core/esm/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionsController");
14
12
  const contextkey_1 = require("@opensumi/monaco-editor-core/esm/vs/platform/contextkey/common/contextkey");
15
13
  const ai_core_contextkeys_1 = require("../../ai-core.contextkeys");
16
- const rewrite_widget_1 = require("../../widget/rewrite/rewrite-widget");
17
14
  const base_1 = require("../base");
18
- const additions_deletions_decoration_1 = require("./decoration/additions-deletions.decoration");
19
- const multi_line_decoration_1 = require("./decoration/multi-line.decoration");
20
- const diff_computer_1 = require("./diff-computer");
21
15
  const base_2 = require("./source/base");
22
16
  const line_change_source_1 = require("./source/line-change.source");
23
17
  const lint_error_source_1 = require("./source/lint-error.source");
24
18
  const trigger_source_1 = require("./source/trigger.source");
25
19
  const typing_source_1 = require("./source/typing.source");
20
+ const code_edits_previewer_1 = require("./view/code-edits-previewer");
26
21
  const index_1 = require("./index");
27
22
  class IntelligentCompletionsController extends base_1.BaseAIMonacoEditorController {
28
23
  constructor() {
@@ -68,26 +63,14 @@ class IntelligentCompletionsController extends base_1.BaseAIMonacoEditorControll
68
63
  isValid = false;
69
64
  report === null || report === void 0 ? void 0 : report('isValid', false);
70
65
  }
66
+ this.codeEditsPreviewer.discard();
71
67
  this.hide();
72
68
  return isValid;
73
69
  });
74
70
  this.accept = (0, observable_1.derivedOpts)({ owner: this, equalsFn: () => false }, (reader) => {
75
71
  const report = this.reportData.read(reader);
76
72
  report === null || report === void 0 ? void 0 : report('isReceive');
77
- this.multiLineDecorationModel.accept();
78
- if (this.rewriteWidget) {
79
- this.rewriteWidget.accept();
80
- const virtualEditor = this.rewriteWidget.getVirtualEditor();
81
- // 采纳完之后将 virtualEditor 的 decorations 重新映射在 editor 上
82
- if (virtualEditor) {
83
- const editArea = this.rewriteWidget.getEditArea();
84
- const decorations = virtualEditor.getDecorationsInRange(ide_monaco_1.Range.lift(editArea));
85
- const preAddedDecorations = decorations === null || decorations === void 0 ? void 0 : decorations.filter((decoration) => decoration.options.description === rewrite_widget_1.REWRITE_DECORATION_INLINE_ADD);
86
- if (preAddedDecorations) {
87
- this.additionsDeletionsDecorationModel.updateAdditionsDecoration(preAddedDecorations.map((decoration) => decoration.range));
88
- }
89
- }
90
- }
73
+ this.codeEditsPreviewer.accept();
91
74
  this.hide();
92
75
  });
93
76
  }
@@ -112,9 +95,8 @@ class IntelligentCompletionsController extends base_1.BaseAIMonacoEditorControll
112
95
  mount() {
113
96
  this.handlerAlwaysVisiblePreference();
114
97
  this.codeEditsResult = (0, observable_1.observableValue)(this, undefined);
115
- this.multiLineDecorationModel = new multi_line_decoration_1.MultiLineDecorationModel(this.monacoEditor);
116
- this.additionsDeletionsDecorationModel = new additions_deletions_decoration_1.AdditionsDeletionsDecorationModel(this.monacoEditor);
117
98
  this.aiNativeContextKey = this.injector.get(ai_core_contextkeys_1.AINativeContextKey, [this.monacoEditor.contextKeyService]);
99
+ this.codeEditsPreviewer = this.injector.get(code_edits_previewer_1.CodeEditsPreviewer, [this.monacoEditor, this.aiNativeContextKey]);
118
100
  this.codeEditsSourceCollection = this.injector.get(base_2.CodeEditsSourceCollection, [
119
101
  [lint_error_source_1.LintErrorCodeEditsSource, line_change_source_1.LineChangeCodeEditsSource, typing_source_1.TypingCodeEditsSource, trigger_source_1.TriggerCodeEditsSource],
120
102
  this.monacoEditor,
@@ -183,89 +165,10 @@ class IntelligentCompletionsController extends base_1.BaseAIMonacoEditorControll
183
165
  }
184
166
  }));
185
167
  }
186
- destroyRewriteWidget() {
187
- if (this.rewriteWidget) {
188
- this.rewriteWidget.dispose();
189
- this.rewriteWidget = null;
190
- }
191
- }
192
- applyInlineDecorations(completionModel) {
193
- const { items } = completionModel;
194
- const { range, insertText } = items[0];
195
- // code edits 必须提供 range
196
- if (!range) {
197
- return;
198
- }
199
- const position = this.monacoEditor.getPosition();
200
- const model = this.monacoEditor.getModel();
201
- const insertTextString = insertText.toString();
202
- const originalContent = model === null || model === void 0 ? void 0 : model.getValueInRange(range);
203
- const eol = this.model.getEOL();
204
- const changes = (0, diff_computer_1.computeMultiLineDiffChanges)(originalContent, insertTextString, this.monacoEditor, range.startLineNumber, eol);
205
- if (!changes) {
206
- return;
207
- }
208
- const { singleLineCharChanges, charChanges, wordChanges, isOnlyAddingToEachWord } = changes;
209
- // 限制 changes 数量,超过这个数量直接显示智能重写
210
- const maxCharChanges = 20;
211
- const maxWordChanges = 20;
212
- if (range &&
213
- isOnlyAddingToEachWord &&
214
- charChanges.length <= maxCharChanges &&
215
- wordChanges.length <= maxWordChanges) {
216
- const modificationsResult = this.multiLineDecorationModel.applyInlineDecorations(this.monacoEditor, (0, diff_computer_1.mergeMultiLineDiffChanges)(singleLineCharChanges, eol), range.startLineNumber, position);
217
- this.aiNativeContextKey.multiLineEditsIsVisible.reset();
218
- this.multiLineDecorationModel.clearDecorations();
219
- if (!modificationsResult) {
220
- this.renderRewriteWidget(wordChanges, model, range, insertTextString);
221
- }
222
- else if (modificationsResult && modificationsResult.inlineMods) {
223
- this.aiNativeContextKey.multiLineEditsIsVisible.set(true);
224
- this.multiLineDecorationModel.updateLineModificationDecorations(modificationsResult.inlineMods);
225
- }
226
- }
227
- else {
228
- this.additionsDeletionsDecorationModel.updateDeletionsDecoration(wordChanges, range, eol);
229
- this.renderRewriteWidget(wordChanges, model, range, insertTextString);
230
- }
231
- }
232
- async renderRewriteWidget(wordChanges, model, range, insertTextString) {
233
- this.destroyRewriteWidget();
234
- const cursorPosition = this.monacoEditor.getPosition();
235
- if (!cursorPosition) {
236
- return;
237
- }
238
- this.rewriteWidget = this.injector.get(rewrite_widget_1.RewriteWidget, [this.monacoEditor]);
239
- const startOffset = this.model.getOffsetAt({ lineNumber: range.startLineNumber, column: range.startColumn });
240
- const endOffset = this.model.getOffsetAt({ lineNumber: range.endLineNumber, column: range.endColumn });
241
- const allText = this.model.getValue();
242
- // 这里是为了能在 rewrite widget 的 editor 当中完整的复用代码高亮与语法检测的能力
243
- const newVirtualContent = allText.substring(0, startOffset) + insertTextString + allText.substring(endOffset);
244
- const lineChangesMap = (0, diff_computer_1.wordChangesToLineChangesMap)(wordChanges, range, model);
245
- await this.rewriteWidget.defered.promise;
246
- this.aiNativeContextKey.multiLineEditsIsVisible.set(true);
247
- const allLineChanges = Object.values(lineChangesMap).map((lineChanges) => ({
248
- changes: lineChanges
249
- .map((change) => change.filter((item) => item.value.trim() !== strings_1.empty))
250
- .filter((change) => change.length > 0),
251
- }));
252
- this.rewriteWidget.setInsertText(insertTextString);
253
- this.rewriteWidget.show({ position: cursorPosition });
254
- this.rewriteWidget.setEditArea(range);
255
- if (allLineChanges.every(({ changes }) => changes.every((change) => change.every(({ removed }) => removed)))) {
256
- // 处理全是删除的情况
257
- this.rewriteWidget.renderTextLineThrough(allLineChanges);
258
- }
259
- else {
260
- this.rewriteWidget.renderVirtualEditor(newVirtualContent, wordChanges);
261
- }
262
- }
263
168
  hide() {
264
169
  this.cancelToken();
265
170
  this.aiNativeContextKey.multiLineEditsIsVisible.reset();
266
- this.multiLineDecorationModel.clearDecorations();
267
- this.additionsDeletionsDecorationModel.clearDeletionsDecorations();
268
- this.destroyRewriteWidget();
171
+ this.codeEditsPreviewer.hide();
269
172
  }
270
173
  trigger(tx) {
271
174
  const triggerSource = this.codeEditsSourceCollection.getSource(trigger_source_1.TriggerCodeEditsSource);
@@ -274,9 +177,6 @@ class IntelligentCompletionsController extends base_1.BaseAIMonacoEditorControll
274
177
  }
275
178
  }
276
179
  registerFeature(monacoEditor) {
277
- this.featureDisposable.addDispose(ide_core_common_1.Event.any(monacoEditor.onDidChangeCursorPosition, monacoEditor.onDidChangeModelContent, monacoEditor.onDidBlurEditorWidget)(() => {
278
- this.additionsDeletionsDecorationModel.clearAdditionsDecorations();
279
- }));
280
180
  // 监听当前光标位置的变化,如果超出 range 区域则表示弃用
281
181
  this.featureDisposable.addDispose(this.monacoEditor.onDidChangeCursorPosition((event) => {
282
182
  const isVisible = this.multiLineEditsIsVisibleObs.get();
@@ -327,7 +227,7 @@ class IntelligentCompletionsController extends base_1.BaseAIMonacoEditorControll
327
227
  return;
328
228
  }
329
229
  try {
330
- this.applyInlineDecorations(completionModel);
230
+ this.codeEditsPreviewer.render(completionModel);
331
231
  }
332
232
  catch (error) {
333
233
  this.logger.warn('IntelligentCompletionsController applyInlineDecorations error', error);
@@ -1 +1 @@
1
- {"version":3,"file":"intelligent-completions.controller.js","sourceRoot":"","sources":["../../../../src/browser/contrib/intelligent-completions/intelligent-completions.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"intelligent-completions.controller.js","sourceRoot":"","sources":["../../../../src/browser/contrib/intelligent-completions/intelligent-completions.controller.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { Injector } from '@opensumi/di';
2
+ import { Disposable } from '@opensumi/ide-core-common';
3
+ import { ICodeEditor } from '@opensumi/ide-monaco';
4
+ import { ObservableCodeEditor } from '@opensumi/monaco-editor-core/esm/vs/editor/browser/observableCodeEditor';
5
+ import { CodeEditsResultValue } from '../index';
6
+ export declare abstract class BaseCodeEditsView extends Disposable {
7
+ protected readonly monacoEditor: ICodeEditor;
8
+ protected readonly injector: Injector;
9
+ protected editorObs: ObservableCodeEditor;
10
+ modelId: string;
11
+ constructor(monacoEditor: ICodeEditor, injector: Injector);
12
+ protected mount(): void;
13
+ abstract render(completionModel: CodeEditsResultValue): void;
14
+ abstract hide(): void;
15
+ abstract accept(): void;
16
+ abstract discard(): void;
17
+ }
18
+ //# sourceMappingURL=base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../../src/browser/contrib/intelligent-completions/view/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EACL,oBAAoB,EAErB,MAAM,yEAAyE,CAAC;AAEjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAEhD,8BAAsB,iBAAkB,SAAQ,UAAU;IAK5C,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,WAAW;IAAE,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ;IAJ/F,SAAS,CAAC,SAAS,EAAE,oBAAoB,CAAC;IAEnC,OAAO,EAAE,MAAM,CAAC;gBAEQ,YAAY,EAAE,WAAW,EAAqB,QAAQ,EAAE,QAAQ;IAS/F,SAAS,CAAC,KAAK,IAAI,IAAI;IAEvB,QAAQ,CAAC,MAAM,CAAC,eAAe,EAAE,oBAAoB,GAAG,IAAI;IAC5D,QAAQ,CAAC,IAAI,IAAI,IAAI;IACrB,QAAQ,CAAC,MAAM,IAAI,IAAI;IACvB,QAAQ,CAAC,OAAO,IAAI,IAAI;CACzB"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BaseCodeEditsView = void 0;
4
+ const ide_core_common_1 = require("@opensumi/ide-core-common");
5
+ const observableCodeEditor_1 = require("@opensumi/monaco-editor-core/esm/vs/editor/browser/observableCodeEditor");
6
+ class BaseCodeEditsView extends ide_core_common_1.Disposable {
7
+ constructor(monacoEditor, injector) {
8
+ super();
9
+ this.monacoEditor = monacoEditor;
10
+ this.injector = injector;
11
+ this.editorObs = (0, observableCodeEditor_1.observableCodeEditor)(this.monacoEditor);
12
+ this.mount();
13
+ this.addDispose({ dispose: () => this.hide() });
14
+ }
15
+ mount() { }
16
+ }
17
+ exports.BaseCodeEditsView = BaseCodeEditsView;
18
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../../src/browser/contrib/intelligent-completions/view/base.ts"],"names":[],"mappings":";;;AACA,+DAAuD;AAEvD,kHAGiF;AAIjF,MAAsB,iBAAkB,SAAQ,4BAAU;IAKxD,YAA+B,YAAyB,EAAqB,QAAkB;QAC7F,KAAK,EAAE,CAAC;QADqB,iBAAY,GAAZ,YAAY,CAAa;QAAqB,aAAQ,GAAR,QAAQ,CAAU;QAG7F,IAAI,CAAC,SAAS,GAAG,IAAA,2CAAoB,EAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACzD,IAAI,CAAC,KAAK,EAAE,CAAC;QAEb,IAAI,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IAES,KAAK,KAAU,CAAC;CAM3B;AApBD,8CAoBC"}
@@ -0,0 +1,19 @@
1
+ import { Injector } from '@opensumi/di';
2
+ import { Disposable } from '@opensumi/ide-core-common';
3
+ import { ICodeEditor } from '@opensumi/ide-monaco';
4
+ import { AINativeContextKey } from '../../../ai-core.contextkeys';
5
+ import { CodeEditsResultValue } from '../index';
6
+ export declare class CodeEditsPreviewer extends Disposable {
7
+ protected readonly monacoEditor: ICodeEditor;
8
+ protected readonly aiNativeContextKey: AINativeContextKey;
9
+ protected readonly injector: Injector;
10
+ private readonly preferenceService;
11
+ private readonly renderTypeObs;
12
+ private view;
13
+ constructor(monacoEditor: ICodeEditor, aiNativeContextKey: AINativeContextKey);
14
+ render(completionModel: CodeEditsResultValue): void;
15
+ hide(): void;
16
+ accept(): void;
17
+ discard(): void;
18
+ }
19
+ //# sourceMappingURL=code-edits-previewer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"code-edits-previewer.d.ts","sourceRoot":"","sources":["../../../../../src/browser/contrib/intelligent-completions/view/code-edits-previewer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyC,QAAQ,EAAY,MAAM,cAAc,CAAC;AAEzF,OAAO,EAA6B,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAClF,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAuB,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAMrE,qBACa,kBAAmB,SAAQ,UAAU;IAWlC,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,WAAW;IAC5C,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,kBAAkB;IAVvE,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAGtC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;IAEtD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAmC;IACjE,OAAO,CAAC,IAAI,CAAgC;gBAGX,YAAY,EAAE,WAAW,EACzB,kBAAkB,EAAE,kBAAkB;IAyBhE,MAAM,CAAC,eAAe,EAAE,oBAAoB;IAK5C,IAAI;IAKJ,MAAM;IAIN,OAAO;CAGf"}
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CodeEditsPreviewer = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const di_1 = require("@opensumi/di");
6
+ const ide_core_browser_1 = require("@opensumi/ide-core-browser");
7
+ const ide_core_common_1 = require("@opensumi/ide-core-common");
8
+ const observable_1 = require("@opensumi/ide-monaco/lib/common/observable");
9
+ const ai_core_contextkeys_1 = require("../../../ai-core.contextkeys");
10
+ const index_1 = require("../index");
11
+ const default_1 = require("./default");
12
+ const legacy_1 = require("./legacy");
13
+ let CodeEditsPreviewer = class CodeEditsPreviewer extends ide_core_common_1.Disposable {
14
+ constructor(monacoEditor, aiNativeContextKey) {
15
+ super();
16
+ this.monacoEditor = monacoEditor;
17
+ this.aiNativeContextKey = aiNativeContextKey;
18
+ this.renderTypeObs = (0, observable_1.observableFromEvent)(this, this.preferenceService.onPreferenceChanged, () => this.preferenceService.getValid(ide_core_common_1.AINativeSettingSectionsId.CodeEditsRenderType, index_1.CodeEditsRenderType.Default));
19
+ this.addDispose((0, observable_1.autorun)((reader) => {
20
+ const renderType = this.renderTypeObs.read(reader);
21
+ if (this.view) {
22
+ this.view.dispose();
23
+ this.view = undefined;
24
+ }
25
+ if (renderType === index_1.CodeEditsRenderType.Default) {
26
+ this.view = new default_1.DefaultCodeEditsView(this.monacoEditor, this.injector);
27
+ }
28
+ else {
29
+ this.view = new legacy_1.LegacyCodeEditsView(this.monacoEditor, this.injector);
30
+ }
31
+ }));
32
+ }
33
+ render(completionModel) {
34
+ var _a;
35
+ (_a = this.view) === null || _a === void 0 ? void 0 : _a.render(completionModel);
36
+ this.aiNativeContextKey.multiLineEditsIsVisible.set(true);
37
+ }
38
+ hide() {
39
+ var _a;
40
+ (_a = this.view) === null || _a === void 0 ? void 0 : _a.hide();
41
+ this.aiNativeContextKey.multiLineEditsIsVisible.set(false);
42
+ }
43
+ accept() {
44
+ var _a;
45
+ (_a = this.view) === null || _a === void 0 ? void 0 : _a.accept();
46
+ }
47
+ discard() {
48
+ var _a;
49
+ (_a = this.view) === null || _a === void 0 ? void 0 : _a.discard();
50
+ }
51
+ };
52
+ exports.CodeEditsPreviewer = CodeEditsPreviewer;
53
+ tslib_1.__decorate([
54
+ (0, di_1.Autowired)(di_1.INJECTOR_TOKEN),
55
+ tslib_1.__metadata("design:type", di_1.Injector)
56
+ ], CodeEditsPreviewer.prototype, "injector", void 0);
57
+ tslib_1.__decorate([
58
+ (0, di_1.Autowired)(ide_core_browser_1.PreferenceService),
59
+ tslib_1.__metadata("design:type", Object)
60
+ ], CodeEditsPreviewer.prototype, "preferenceService", void 0);
61
+ exports.CodeEditsPreviewer = CodeEditsPreviewer = tslib_1.__decorate([
62
+ (0, di_1.Injectable)(),
63
+ tslib_1.__param(0, (0, di_1.Optional)()),
64
+ tslib_1.__param(1, (0, di_1.Optional)()),
65
+ tslib_1.__metadata("design:paramtypes", [Object, ai_core_contextkeys_1.AINativeContextKey])
66
+ ], CodeEditsPreviewer);
67
+ //# sourceMappingURL=code-edits-previewer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"code-edits-previewer.js","sourceRoot":"","sources":["../../../../../src/browser/contrib/intelligent-completions/view/code-edits-previewer.ts"],"names":[],"mappings":";;;;AAAA,qCAAyF;AACzF,iEAA+D;AAC/D,+DAAkF;AAElF,2EAAgH;AAEhH,sEAAkE;AAClE,oCAAqE;AAGrE,uCAAiD;AACjD,qCAA+C;AAGxC,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,4BAAU;IAUhD,YACiC,YAAyB,EACzB,kBAAsC;QAErE,KAAK,EAAE,CAAC;QAHuB,iBAAY,GAAZ,YAAY,CAAa;QACzB,uBAAkB,GAAlB,kBAAkB,CAAoB;QAIrE,IAAI,CAAC,aAAa,GAAG,IAAA,gCAAmB,EAAC,IAAI,EAAE,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,EAAE,GAAG,EAAE,CAC9F,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,2CAAyB,CAAC,mBAAmB,EAAE,2BAAmB,CAAC,OAAO,CAAC,CAC5G,CAAC;QAEF,IAAI,CAAC,UAAU,CACb,IAAA,oBAAO,EAAC,CAAC,MAAe,EAAE,EAAE;YAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACnD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACpB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;YACxB,CAAC;YAED,IAAI,UAAU,KAAK,2BAAmB,CAAC,OAAO,EAAE,CAAC;gBAC/C,IAAI,CAAC,IAAI,GAAG,IAAI,8BAAoB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YACzE,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,IAAI,GAAG,IAAI,4BAAmB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YACxE,CAAC;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,eAAqC;;QACjD,MAAA,IAAI,CAAC,IAAI,0CAAE,MAAM,CAAC,eAAe,CAAC,CAAC;QACnC,IAAI,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC5D,CAAC;IAEM,IAAI;;QACT,MAAA,IAAI,CAAC,IAAI,0CAAE,IAAI,EAAE,CAAC;QAClB,IAAI,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC7D,CAAC;IAEM,MAAM;;QACX,MAAA,IAAI,CAAC,IAAI,0CAAE,MAAM,EAAE,CAAC;IACtB,CAAC;IAEM,OAAO;;QACZ,MAAA,IAAI,CAAC,IAAI,0CAAE,OAAO,EAAE,CAAC;IACvB,CAAC;CACF,CAAA;AAtDY,gDAAkB;AAEV;IADlB,IAAA,cAAS,EAAC,mBAAc,CAAC;sCACG,aAAQ;oDAAC;AAGrB;IADhB,IAAA,cAAS,EAAC,oCAAiB,CAAC;;6DACyB;6BAL3C,kBAAkB;IAD9B,IAAA,eAAU,GAAE;IAYR,mBAAA,IAAA,aAAQ,GAAE,CAAA;IACV,mBAAA,IAAA,aAAQ,GAAE,CAAA;qDAAwC,wCAAkB;GAZ5D,kBAAkB,CAsD9B"}
@@ -0,0 +1,11 @@
1
+ import { CodeEditsResultValue } from '../index';
2
+ import { BaseCodeEditsView } from './base';
3
+ export declare class DefaultCodeEditsView extends BaseCodeEditsView {
4
+ private monacoCompletionsModel;
5
+ private monacoCompletionsSource;
6
+ render(completionModel: CodeEditsResultValue): void;
7
+ accept(): void;
8
+ discard(): void;
9
+ hide(): void;
10
+ }
11
+ //# sourceMappingURL=default.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../../../src/browser/contrib/intelligent-completions/view/default.ts"],"names":[],"mappings":"AA2BA,OAAO,EAAE,oBAAoB,EAA+B,MAAM,UAAU,CAAC;AAE7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AA2B3C,qBAAa,oBAAqB,SAAQ,iBAAiB;IACzD,OAAO,CAAC,sBAAsB,CAO3B;IAEH,OAAO,CAAC,uBAAuB,CAQ5B;IAEI,MAAM,CAAC,eAAe,EAAE,oBAAoB,GAAG,IAAI;IAsDnD,MAAM,IAAI,IAAI;IAKd,OAAO,IAAI,IAAI;IAOf,IAAI,IAAI,IAAI;CAGpB"}
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DefaultCodeEditsView = void 0;
4
+ const ide_monaco_1 = require("@opensumi/ide-monaco");
5
+ const observable_1 = require("@opensumi/ide-monaco/lib/common/observable");
6
+ const equals_1 = require("@opensumi/monaco-editor-core/esm/vs/base/common/equals");
7
+ const inlineCompletionsController_1 = require("@opensumi/monaco-editor-core/esm/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionsController");
8
+ const inlineCompletionsSource_1 = require("@opensumi/monaco-editor-core/esm/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsSource");
9
+ const provideInlineCompletions_1 = require("@opensumi/monaco-editor-core/esm/vs/editor/contrib/inlineCompletions/browser/model/provideInlineCompletions");
10
+ const base_1 = require("./base");
11
+ /**
12
+ * copy from @opensumi/monaco-editor-core/esm/vs/editor/contrib/inlineCompletions/browser/model/provideInlineCompletions
13
+ */
14
+ class UpdateRequest {
15
+ constructor(position, context, versionId) {
16
+ this.position = position;
17
+ this.context = context;
18
+ this.versionId = versionId;
19
+ }
20
+ satisfies(other) {
21
+ return (this.position.equals(other.position) &&
22
+ (0, equals_1.equalsIfDefined)(this.context.selectedSuggestionInfo, other.context.selectedSuggestionInfo, (0, equals_1.itemEquals)()) &&
23
+ (other.context.triggerKind === ide_monaco_1.InlineCompletionTriggerKind.Automatic ||
24
+ this.context.triggerKind === ide_monaco_1.InlineCompletionTriggerKind.Explicit) &&
25
+ this.versionId === other.versionId);
26
+ }
27
+ get isExplicitRequest() {
28
+ return this.context.triggerKind === ide_monaco_1.InlineCompletionTriggerKind.Explicit;
29
+ }
30
+ }
31
+ class DefaultCodeEditsView extends base_1.BaseCodeEditsView {
32
+ constructor() {
33
+ super(...arguments);
34
+ this.monacoCompletionsModel = (0, observable_1.derived)(this, (reader) => {
35
+ const inlineCompletionsController = inlineCompletionsController_1.InlineCompletionsController.get(this.monacoEditor);
36
+ if (!inlineCompletionsController) {
37
+ return;
38
+ }
39
+ return inlineCompletionsController.model.read(reader);
40
+ });
41
+ this.monacoCompletionsSource = (0, observable_1.derived)(this, (reader) => {
42
+ const model = this.monacoCompletionsModel.read(reader);
43
+ if (!model) {
44
+ return;
45
+ }
46
+ const source = model['_source'];
47
+ return source;
48
+ });
49
+ }
50
+ render(completionModel) {
51
+ const source = this.monacoCompletionsSource.get();
52
+ if (!source) {
53
+ return;
54
+ }
55
+ (0, observable_1.asyncTransaction)(async (tx) => {
56
+ var _a;
57
+ const position = (_a = this.editorObs.positions.get()) === null || _a === void 0 ? void 0 : _a[0];
58
+ if (!position) {
59
+ return;
60
+ }
61
+ const model = this.editorObs.model.get();
62
+ if (!model) {
63
+ return;
64
+ }
65
+ const versionId = this.editorObs.versionId.get();
66
+ const context = {
67
+ triggerKind: ide_monaco_1.InlineCompletionTriggerKind.Automatic,
68
+ selectedSuggestionInfo: undefined,
69
+ includeInlineCompletions: false,
70
+ includeInlineEdits: true,
71
+ };
72
+ const request = new UpdateRequest(position, context, versionId);
73
+ const inlineEdits = await (0, provideInlineCompletions_1.provideInlineCompletions)({
74
+ all: () => [
75
+ {
76
+ provideInlineCompletions: () => { },
77
+ provideInlineEditsForRange(model, range, context, token) {
78
+ return completionModel;
79
+ },
80
+ freeInlineCompletions: () => [],
81
+ },
82
+ ],
83
+ }, ide_monaco_1.Range.lift(completionModel.range), model, context);
84
+ const completions = new inlineCompletionsSource_1.UpToDateInlineCompletions(inlineEdits, request, model, this.editorObs.versionId, (0, observable_1.constObservable)(1000));
85
+ source.inlineCompletions.set(completions, tx);
86
+ });
87
+ }
88
+ accept() {
89
+ const model = this.monacoCompletionsModel.get();
90
+ model === null || model === void 0 ? void 0 : model.accept();
91
+ }
92
+ discard() {
93
+ const model = this.monacoCompletionsModel.get();
94
+ (0, observable_1.transaction)((tx) => {
95
+ model === null || model === void 0 ? void 0 : model.stop('explicitCancel', tx);
96
+ });
97
+ }
98
+ hide() {
99
+ var _a, _b;
100
+ (_b = (_a = this.monacoCompletionsSource.get()) === null || _a === void 0 ? void 0 : _a.inlineCompletions) === null || _b === void 0 ? void 0 : _b.set(undefined, undefined);
101
+ }
102
+ }
103
+ exports.DefaultCodeEditsView = DefaultCodeEditsView;
104
+ //# sourceMappingURL=default.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default.js","sourceRoot":"","sources":["../../../../../src/browser/contrib/intelligent-completions/view/default.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { CodeEditsResultValue } from '../index';
2
+ import { BaseCodeEditsView } from './base';
3
+ export declare class LegacyCodeEditsView extends BaseCodeEditsView {
4
+ private get model();
5
+ private multiLineDecorationModel;
6
+ private additionsDeletionsDecorationModel;
7
+ private rewriteWidget;
8
+ protected mount(): void;
9
+ private destroyRewriteWidget;
10
+ private renderRewriteWidget;
11
+ render(completionModel: CodeEditsResultValue): void;
12
+ accept(): void;
13
+ discard(): void;
14
+ hide(): void;
15
+ }
16
+ //# sourceMappingURL=legacy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"legacy.d.ts","sourceRoot":"","sources":["../../../../../src/browser/contrib/intelligent-completions/view/legacy.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAEhD,OAAO,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAE3C,qBAAa,mBAAoB,SAAQ,iBAAiB;IACxD,OAAO,KAAK,KAAK,GAEhB;IAED,OAAO,CAAC,wBAAwB,CAA6E;IAC7G,OAAO,CAAC,iCAAiC,CAEvC;IACF,OAAO,CAAC,aAAa,CAAuB;IAE5C,SAAS,CAAC,KAAK,IAAI,IAAI;IAYvB,OAAO,CAAC,oBAAoB;YAOd,mBAAmB;IA2C1B,MAAM,CAAC,eAAe,EAAE,oBAAoB,GAAG,IAAI;IA2DnD,MAAM,IAAI,IAAI;IAuBd,OAAO,IAAI,IAAI;IAIf,IAAI,IAAI,IAAI;CAKpB"}