@opensumi/ide-ai-native 3.7.1-next-1739428766.0 → 3.7.1-next-1739439717.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 (126) hide show
  1. package/lib/browser/ai-core.contextkeys.d.ts +0 -1
  2. package/lib/browser/ai-core.contextkeys.d.ts.map +1 -1
  3. package/lib/browser/ai-core.contextkeys.js +0 -1
  4. package/lib/browser/ai-core.contextkeys.js.map +1 -1
  5. package/lib/browser/ai-core.contribution.d.ts +1 -2
  6. package/lib/browser/ai-core.contribution.d.ts.map +1 -1
  7. package/lib/browser/ai-core.contribution.js +14 -55
  8. package/lib/browser/ai-core.contribution.js.map +1 -1
  9. package/lib/browser/contrib/intelligent-completions/intelligent-completions.contribution.d.ts +0 -1
  10. package/lib/browser/contrib/intelligent-completions/intelligent-completions.contribution.d.ts.map +1 -1
  11. package/lib/browser/contrib/intelligent-completions/intelligent-completions.contribution.js +4 -26
  12. package/lib/browser/contrib/intelligent-completions/intelligent-completions.contribution.js.map +1 -1
  13. package/lib/browser/contrib/intelligent-completions/intelligent-completions.controller.d.ts +1 -3
  14. package/lib/browser/contrib/intelligent-completions/intelligent-completions.controller.d.ts.map +1 -1
  15. package/lib/browser/contrib/intelligent-completions/intelligent-completions.controller.js +1 -9
  16. package/lib/browser/contrib/intelligent-completions/intelligent-completions.controller.js.map +1 -1
  17. package/lib/browser/contrib/intelligent-completions/source/base.d.ts +2 -1
  18. package/lib/browser/contrib/intelligent-completions/source/base.d.ts.map +1 -1
  19. package/lib/browser/contrib/intelligent-completions/source/base.js.map +1 -1
  20. package/lib/browser/contrib/intelligent-completions/source/line-change.source.d.ts +3 -2
  21. package/lib/browser/contrib/intelligent-completions/source/line-change.source.d.ts.map +1 -1
  22. package/lib/browser/contrib/intelligent-completions/source/line-change.source.js +21 -51
  23. package/lib/browser/contrib/intelligent-completions/source/line-change.source.js.map +1 -1
  24. package/lib/browser/contrib/terminal/component/terminal-command-suggest-controller.js +2 -2
  25. package/lib/browser/contrib/terminal/component/terminal-command-suggest-controller.js.map +1 -1
  26. package/lib/browser/index.js +1 -1
  27. package/lib/browser/index.js.map +1 -1
  28. package/lib/browser/layout/ai-layout.d.ts.map +1 -1
  29. package/lib/browser/layout/ai-layout.js +2 -2
  30. package/lib/browser/layout/ai-layout.js.map +1 -1
  31. package/lib/browser/model/enhanceDecorationsCollection.d.ts +10 -14
  32. package/lib/browser/model/enhanceDecorationsCollection.d.ts.map +1 -1
  33. package/lib/browser/model/enhanceDecorationsCollection.js +53 -42
  34. package/lib/browser/model/enhanceDecorationsCollection.js.map +1 -1
  35. package/lib/browser/model/styles.module.less +7 -0
  36. package/lib/browser/types.d.ts +2 -7
  37. package/lib/browser/types.d.ts.map +1 -1
  38. package/lib/browser/types.js.map +1 -1
  39. package/lib/browser/widget/inline-chat/inline-chat-editor.controller.d.ts +1 -2
  40. package/lib/browser/widget/inline-chat/inline-chat-editor.controller.d.ts.map +1 -1
  41. package/lib/browser/widget/inline-chat/inline-chat-editor.controller.js +48 -20
  42. package/lib/browser/widget/inline-chat/inline-chat-editor.controller.js.map +1 -1
  43. package/lib/browser/widget/inline-chat/inline-chat.feature.registry.d.ts +13 -3
  44. package/lib/browser/widget/inline-chat/inline-chat.feature.registry.d.ts.map +1 -1
  45. package/lib/browser/widget/inline-chat/inline-chat.feature.registry.js +72 -24
  46. package/lib/browser/widget/inline-chat/inline-chat.feature.registry.js.map +1 -1
  47. package/lib/browser/widget/inline-chat/inline-chat.service.d.ts +6 -1
  48. package/lib/browser/widget/inline-chat/inline-chat.service.d.ts.map +1 -1
  49. package/lib/browser/widget/inline-chat/inline-chat.service.js +19 -5
  50. package/lib/browser/widget/inline-chat/inline-chat.service.js.map +1 -1
  51. package/lib/browser/widget/inline-chat/inline-content-widget.d.ts +5 -2
  52. package/lib/browser/widget/inline-chat/inline-content-widget.d.ts.map +1 -1
  53. package/lib/browser/widget/inline-chat/inline-content-widget.js +42 -17
  54. package/lib/browser/widget/inline-chat/inline-content-widget.js.map +1 -1
  55. package/lib/browser/widget/inline-diff/inline-diff-previewer.d.ts +5 -22
  56. package/lib/browser/widget/inline-diff/inline-diff-previewer.d.ts.map +1 -1
  57. package/lib/browser/widget/inline-diff/inline-diff-previewer.js +30 -61
  58. package/lib/browser/widget/inline-diff/inline-diff-previewer.js.map +1 -1
  59. package/lib/browser/widget/inline-diff/inline-diff.controller.d.ts +12 -8
  60. package/lib/browser/widget/inline-diff/inline-diff.controller.d.ts.map +1 -1
  61. package/lib/browser/widget/inline-diff/inline-diff.controller.js +96 -68
  62. package/lib/browser/widget/inline-diff/inline-diff.controller.js.map +1 -1
  63. package/lib/browser/widget/inline-hint/inline-hint.controller.d.ts +1 -0
  64. package/lib/browser/widget/inline-hint/inline-hint.controller.d.ts.map +1 -1
  65. package/lib/browser/widget/inline-hint/inline-hint.controller.js +5 -0
  66. package/lib/browser/widget/inline-hint/inline-hint.controller.js.map +1 -1
  67. package/lib/browser/widget/inline-input/inline-input-widget.d.ts +2 -12
  68. package/lib/browser/widget/inline-input/inline-input-widget.d.ts.map +1 -1
  69. package/lib/browser/widget/inline-input/inline-input-widget.js +18 -26
  70. package/lib/browser/widget/inline-input/inline-input-widget.js.map +1 -1
  71. package/lib/browser/widget/inline-input/inline-input.controller.d.ts +6 -14
  72. package/lib/browser/widget/inline-input/inline-input.controller.d.ts.map +1 -1
  73. package/lib/browser/widget/inline-input/inline-input.controller.js +169 -320
  74. package/lib/browser/widget/inline-input/inline-input.controller.js.map +1 -1
  75. package/lib/browser/widget/inline-input/inline-input.module.less +0 -4
  76. package/lib/browser/widget/inline-input/inline-input.service.d.ts +7 -19
  77. package/lib/browser/widget/inline-input/inline-input.service.d.ts.map +1 -1
  78. package/lib/browser/widget/inline-input/inline-input.service.js +12 -72
  79. package/lib/browser/widget/inline-input/inline-input.service.js.map +1 -1
  80. package/lib/browser/widget/inline-stream-diff/inline-stream-diff.handler.d.ts +19 -8
  81. package/lib/browser/widget/inline-stream-diff/inline-stream-diff.handler.d.ts.map +1 -1
  82. package/lib/browser/widget/inline-stream-diff/inline-stream-diff.handler.js +39 -44
  83. package/lib/browser/widget/inline-stream-diff/inline-stream-diff.handler.js.map +1 -1
  84. package/lib/browser/widget/inline-stream-diff/live-preview.component.d.ts +4 -17
  85. package/lib/browser/widget/inline-stream-diff/live-preview.component.d.ts.map +1 -1
  86. package/lib/browser/widget/inline-stream-diff/live-preview.component.js +5 -37
  87. package/lib/browser/widget/inline-stream-diff/live-preview.component.js.map +1 -1
  88. package/lib/browser/widget/inline-stream-diff/live-preview.decoration.d.ts +11 -7
  89. package/lib/browser/widget/inline-stream-diff/live-preview.decoration.d.ts.map +1 -1
  90. package/lib/browser/widget/inline-stream-diff/live-preview.decoration.js +77 -33
  91. package/lib/browser/widget/inline-stream-diff/live-preview.decoration.js.map +1 -1
  92. package/lib/common/utils.js +2 -2
  93. package/lib/common/utils.js.map +1 -1
  94. package/package.json +21 -21
  95. package/src/browser/ai-core.contextkeys.ts +0 -3
  96. package/src/browser/ai-core.contribution.ts +16 -63
  97. package/src/browser/contrib/intelligent-completions/intelligent-completions.contribution.ts +8 -29
  98. package/src/browser/contrib/intelligent-completions/intelligent-completions.controller.ts +1 -13
  99. package/src/browser/contrib/intelligent-completions/source/base.ts +2 -0
  100. package/src/browser/contrib/intelligent-completions/source/line-change.source.ts +24 -79
  101. package/src/browser/contrib/terminal/component/terminal-command-suggest-controller.tsx +1 -1
  102. package/src/browser/index.ts +2 -2
  103. package/src/browser/layout/ai-layout.tsx +2 -5
  104. package/src/browser/model/enhanceDecorationsCollection.ts +77 -62
  105. package/src/browser/model/styles.module.less +7 -0
  106. package/src/browser/types.ts +3 -5
  107. package/src/browser/widget/inline-chat/inline-chat-editor.controller.ts +64 -29
  108. package/src/browser/widget/inline-chat/inline-chat.feature.registry.ts +90 -23
  109. package/src/browser/widget/inline-chat/inline-chat.service.ts +19 -2
  110. package/src/browser/widget/inline-chat/inline-content-widget.tsx +71 -14
  111. package/src/browser/widget/inline-diff/inline-diff-previewer.ts +32 -87
  112. package/src/browser/widget/inline-diff/inline-diff.controller.ts +114 -90
  113. package/src/browser/widget/inline-hint/inline-hint.controller.ts +7 -1
  114. package/src/browser/widget/inline-input/inline-input-widget.tsx +12 -34
  115. package/src/browser/widget/inline-input/inline-input.controller.ts +247 -453
  116. package/src/browser/widget/inline-input/inline-input.module.less +0 -4
  117. package/src/browser/widget/inline-input/inline-input.service.ts +13 -92
  118. package/src/browser/widget/inline-stream-diff/inline-stream-diff.handler.tsx +67 -54
  119. package/src/browser/widget/inline-stream-diff/live-preview.component.tsx +6 -45
  120. package/src/browser/widget/inline-stream-diff/live-preview.decoration.tsx +112 -40
  121. package/src/common/utils.ts +2 -2
  122. package/lib/browser/widget/inline-input/model.d.ts +0 -34
  123. package/lib/browser/widget/inline-input/model.d.ts.map +0 -1
  124. package/lib/browser/widget/inline-input/model.js +0 -63
  125. package/lib/browser/widget/inline-input/model.js.map +0 -1
  126. package/src/browser/widget/inline-input/model.ts +0 -74
@@ -4,375 +4,224 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.InlineInputController = void 0;
5
5
  const tslib_1 = require("tslib");
6
6
  const di_1 = require("@opensumi/di");
7
+ const ide_core_browser_1 = require("@opensumi/ide-core-browser");
7
8
  const ide_core_common_1 = require("@opensumi/ide-core-common");
8
- const browser_1 = require("@opensumi/ide-editor/lib/browser");
9
9
  const monaco = tslib_1.__importStar(require("@opensumi/ide-monaco"));
10
- const observable_1 = require("@opensumi/ide-monaco/lib/common/observable");
11
- const message_service_1 = require("@opensumi/ide-overlay/lib/browser/message.service");
12
10
  const editOperation_1 = require("@opensumi/monaco-editor-core/esm/vs/editor/common/core/editOperation");
13
11
  const lineRange_1 = require("@opensumi/monaco-editor-core/esm/vs/editor/common/core/lineRange");
14
12
  const textModel_1 = require("@opensumi/monaco-editor-core/esm/vs/editor/common/model/textModel");
15
13
  const ai_core_contextkeys_1 = require("../../ai-core.contextkeys");
16
14
  const base_1 = require("../../contrib/base");
15
+ const service_1 = require("../../languages/service");
17
16
  const types_1 = require("../../types");
18
17
  const inline_chat_controller_1 = require("../inline-chat/inline-chat-controller");
19
18
  const inline_chat_service_1 = require("../inline-chat/inline-chat.service");
20
- const inline_diff_1 = require("../inline-diff");
21
19
  const internal_type_1 = require("../internal.type");
22
20
  const inline_input_widget_1 = require("./inline-input-widget");
23
21
  const inline_input_module_less_1 = tslib_1.__importDefault(require("./inline-input.module.less"));
24
22
  const inline_input_service_1 = require("./inline-input.service");
25
- const model_1 = require("./model");
26
23
  let InlineInputController = InlineInputController_1 = class InlineInputController extends base_1.BaseAIMonacoEditorController {
27
24
  static get(editor) {
28
25
  return editor.getContribution(InlineInputController_1.ID);
29
26
  }
30
- get inlineInputService() {
31
- return this.injector.get(inline_input_service_1.InlineInputService);
27
+ get inlineInputChatService() {
28
+ return this.injector.get(inline_input_service_1.InlineInputChatService);
32
29
  }
33
- get aiReporter() {
34
- return this.injector.get(ide_core_common_1.IAIReporter);
30
+ get inlineChatFeatureRegistry() {
31
+ return this.injector.get(ide_core_common_1.InlineChatFeatureRegistryToken);
35
32
  }
36
- get eventBus() {
37
- return this.injector.get(ide_core_common_1.IEventBus);
33
+ get languageParserService() {
34
+ return this.injector.get(service_1.LanguageParserService);
38
35
  }
39
- get messageService() {
40
- return this.injector.get(message_service_1.MessageService);
36
+ get inlineChatService() {
37
+ return this.injector.get(ide_core_browser_1.IAIInlineChatService);
41
38
  }
42
39
  mount() {
43
- this.inputDisposable = new ide_core_common_1.Disposable();
44
- this.aiNativeContextKey = this.injector.get(ai_core_contextkeys_1.AINativeContextKey, [this.monacoEditor.contextKeyService]);
45
- this.inlineDiffController = inline_diff_1.InlineDiffController.get(this.monacoEditor);
46
- this.inputValue = (0, observable_1.observableValue)(this, '');
47
- this.modelChangeObs = (0, observable_1.observableFromEvent)(this, this.monacoEditor.onDidChangeModel, () => this.monacoEditor.getModel());
48
- this.inlineInputWidgetStore = new Map();
49
- this.featureDisposable.addDispose(
50
- /**
51
- * 如果在流式过程中,直接关闭了当前文件,则需要销毁 diff previewer 并隐藏 input,恢复原始代码
52
- */
53
- this.eventBus.on(browser_1.EditorGroupCloseEvent, (e) => {
54
- var _a;
55
- const isStreaming = this.aiNativeContextKey.inlineInputWidgetIsStreaming.get();
56
- if (!isStreaming) {
57
- return;
58
- }
59
- const resource = e.payload.resource.uri.toString();
60
- const currentUri = (_a = this.monacoEditor.getModel()) === null || _a === void 0 ? void 0 : _a.uri.toString();
61
- if (currentUri === resource) {
62
- this.hideInput();
63
- const message = (0, ide_core_common_1.localize)('aiNative.inline.chat.generating.canceled');
64
- if (message) {
65
- this.messageService.info(message);
66
- }
67
- }
68
- }));
69
- this.featureDisposable.addDispose(this.inlineInputService.onHidden(() => {
70
- this.hideInput();
71
- }));
72
- this.featureDisposable.addDispose(this.inlineInputService.onInteractiveInputVisibleInPosition(async (position) => {
73
- if (position) {
74
- this.showInputInEmptyLine(position, this.monacoEditor);
75
- }
76
- else {
77
- setTimeout(() => this.monacoEditor.focus(), 0);
78
- }
79
- }));
80
- this.featureDisposable.addDispose(this.inlineInputService.onInteractiveInputVisibleInSelection((selection) => {
81
- if (!selection) {
82
- return;
83
- }
84
- this.showInputInSelection(selection, this.monacoEditor);
85
- }));
86
- this.featureDisposable.addDispose(this.inputDisposable);
87
- return this.featureDisposable;
40
+ return this.registerInlineInputFeature(this.monacoEditor);
88
41
  }
89
- cancelToken() {
90
- super.cancelToken();
91
- this.aiNativeContextKey.inlineInputWidgetIsStreaming.set(false);
92
- }
93
- hideInput() {
94
- this.inlineInputWidgetStore.delete(this.monacoEditor.getModel().id);
95
- this.inputDisposable.dispose();
96
- }
97
- async showInputInEmptyLine(position, monacoEditor, defaultValue) {
42
+ async doRequestReadable(value, widget, monacoEditor, inputDisposable, decoration, hideInput) {
43
+ const handler = this.inlineChatFeatureRegistry.getInteractiveInputHandler();
98
44
  const model = monacoEditor.getModel();
99
- if (!model) {
45
+ if (!handler || !model) {
100
46
  return;
101
47
  }
102
- const selection = monacoEditor.getSelection();
103
- if (selection && !selection.isEmpty()) {
48
+ widget.launchChatStatus(inline_chat_service_1.EInlineChatStatus.THINKING);
49
+ const strategy = await this.inlineChatFeatureRegistry.getInteractiveInputStrategyHandler()(monacoEditor, value);
50
+ if (strategy === types_1.ERunStrategy.EXECUTE && handler.execute) {
51
+ handler.execute(monacoEditor, value, this.token);
52
+ widget.launchChatStatus(inline_chat_service_1.EInlineChatStatus.DONE);
53
+ hideInput();
104
54
  return;
105
55
  }
106
- this.inputValue.set(defaultValue || '', undefined);
107
- this.inlineInputWidgetStore.set(model.id, new model_1.InlineInputWidgetStoreInEmptyLine(position, defaultValue));
108
- if (this.inputDisposable) {
109
- this.inputDisposable.dispose();
110
- this.inputDisposable = new ide_core_common_1.Disposable();
111
- }
112
- const collection = monacoEditor.createDecorationsCollection();
113
- const inlineInputWidget = this.injector.get(inline_input_widget_1.InlineInputWidget, [monacoEditor, this.inputValue.get()]);
114
- // 仅在空行情况下增加装饰逻辑
115
- collection.append([
116
- {
117
- range: monaco.Range.fromPositions(position),
118
- options: textModel_1.ModelDecorationOptions.register({
119
- description: internal_type_1.InlineInputPreviewDecorationID,
120
- isWholeLine: true,
121
- className: inline_input_module_less_1.default.input_decoration_readable_container,
122
- inlineClassName: inline_input_module_less_1.default.inline_chat_inserted_range,
123
- }),
124
- },
125
- ]);
126
- const decorationRange = collection.getRange(0);
127
- let preLineRange;
128
- if (decorationRange) {
129
- preLineRange = lineRange_1.LineRange.fromRange(decorationRange);
130
- inlineInputWidget.show({ position: decorationRange.getStartPosition() });
131
- this.aiNativeContextKey.inlineInputWidgetIsVisible.set(true);
132
- }
133
- this.inputDisposable.addDispose(inlineInputWidget.onDispose(() => {
134
- this.cancelToken();
135
- collection.clear();
136
- this.aiNativeContextKey.inlineInputWidgetIsVisible.set(false);
137
- }));
138
- this.inputDisposable.addDispose(inlineInputWidget.onValueChange((value) => {
139
- this.inputValue.set(value, undefined);
140
- const storeData = this.inlineInputWidgetStore.get(model.id);
141
- if (storeData instanceof model_1.InlineInputWidgetStoreInEmptyLine) {
142
- storeData.setValue(value);
143
- }
144
- }));
145
- this.inputDisposable.addDispose(inlineInputWidget.onResultClick(async (kind) => {
146
- const clear = () => {
147
- const curPosi = collection.getRange(0);
148
- model.pushStackElement();
149
- model.pushEditOperations(null, [editOperation_1.EditOperation.delete(curPosi)], () => null);
150
- model.pushStackElement();
151
- };
152
- switch (kind) {
153
- case inline_chat_service_1.EResultKind.ACCEPT:
154
- this.hideInput();
155
- break;
156
- case inline_chat_service_1.EResultKind.DISCARD:
157
- clear();
158
- this.hideInput();
159
- break;
160
- case inline_chat_service_1.EResultKind.REGENERATE:
161
- clear();
162
- requestAnimationFrame(() => {
163
- /**
164
- * 避免在重新生成的时候,因为光标移动,导致 input 的位置不正确
165
- */
166
- const curPosi = collection.getRange(0);
167
- const curPosition = curPosi.getStartPosition();
168
- this.showInputInEmptyLine(curPosition, monacoEditor, this.inputValue.get());
169
- });
170
- break;
171
- default:
172
- break;
173
- }
174
- }));
175
- this.inputDisposable.addDispose(ide_core_common_1.Event.debounce(collection.onDidChange.bind(collection), () => { }, ide_core_common_1.FRAME_THREE)(() => {
176
- if (!collection.getRange(0)) {
56
+ if (strategy === types_1.ERunStrategy.PREVIEW && handler.providePreviewStrategy) {
57
+ const previewResponse = await handler.providePreviewStrategy(monacoEditor, value, this.token);
58
+ if (ide_core_common_1.CancelResponse.is(previewResponse)) {
59
+ widget.launchChatStatus(inline_chat_service_1.EInlineChatStatus.READY);
60
+ hideInput();
177
61
  return;
178
62
  }
179
- const range = collection.getRange(0);
180
- const curLineRange = lineRange_1.LineRange.fromRange(range);
181
- if (!preLineRange.equals(curLineRange)) {
182
- inlineInputWidget.setOptions({
183
- position: range.getStartPosition(),
184
- });
185
- inlineInputWidget.layoutContentWidget();
63
+ if (inline_chat_controller_1.InlineChatController.is(previewResponse)) {
64
+ const controller = previewResponse;
65
+ let latestContent;
66
+ const schedulerEdit = this.registerDispose(new ide_core_common_1.RunOnceScheduler(() => {
67
+ const range = decoration.getRange(0);
68
+ if (range && latestContent) {
69
+ model.pushEditOperations(null, [editOperation_1.EditOperation.replace(range, latestContent)], () => null);
70
+ }
71
+ }, 16 * 12.5));
72
+ inputDisposable.addDispose([
73
+ controller.onData(async (data) => {
74
+ if (!ide_core_common_1.ReplyResponse.is(data)) {
75
+ return;
76
+ }
77
+ latestContent = data.message;
78
+ if (!schedulerEdit.isScheduled()) {
79
+ schedulerEdit.schedule();
80
+ }
81
+ }),
82
+ controller.onError((error) => {
83
+ widget.launchChatStatus(inline_chat_service_1.EInlineChatStatus.ERROR);
84
+ }),
85
+ controller.onAbort(() => {
86
+ widget.launchChatStatus(inline_chat_service_1.EInlineChatStatus.READY);
87
+ }),
88
+ controller.onEnd(() => {
89
+ model.pushStackElement();
90
+ widget.launchChatStatus(inline_chat_service_1.EInlineChatStatus.DONE);
91
+ }),
92
+ ]);
93
+ controller.listen();
186
94
  }
187
- preLineRange = curLineRange;
188
- }));
189
- this.inputDisposable.addDispose(inlineInputWidget.onClose(() => {
190
- const isStreaming = this.aiNativeContextKey.inlineInputWidgetIsStreaming.get();
191
- if (isStreaming) {
192
- this.cancelToken();
95
+ }
96
+ }
97
+ registerInlineInputFeature(monacoEditor) {
98
+ const inputDisposable = new ide_core_common_1.Disposable();
99
+ const aiNativeContextKey = this.injector.get(ai_core_contextkeys_1.AINativeContextKey, [monacoEditor.contextKeyService]);
100
+ const hideInput = () => {
101
+ inputDisposable.dispose();
102
+ };
103
+ this.featureDisposable.addDispose(this.inlineInputChatService.onInteractiveInputVisibleInPosition((position) => {
104
+ hideInput();
105
+ if (position) {
106
+ showInput(position, monacoEditor);
193
107
  }
194
108
  else {
195
- this.hideInput();
109
+ setTimeout(() => {
110
+ monacoEditor.focus();
111
+ }, 0);
196
112
  }
197
113
  }));
198
- this.inputDisposable.addDispose(inlineInputWidget.onSend(async (value) => {
199
- monacoEditor.focus();
200
- const handler = this.inlineInputService.getInteractiveInputHandler();
114
+ const showInput = async (position, monacoEditor) => {
115
+ var _a;
116
+ this.featureDisposable.addDispose(monacoEditor.onWillChangeModel(() => {
117
+ hideInput();
118
+ }));
201
119
  const model = monacoEditor.getModel();
202
- if (!handler || !model) {
120
+ if (!model) {
203
121
  return;
204
122
  }
205
- inlineInputWidget.launchChatStatus(inline_chat_service_1.EInlineChatStatus.THINKING);
206
- const strategy = await this.inlineInputService.getInteractiveInputStrategyHandler()(monacoEditor, value);
207
- const selection = monaco.Selection.fromPositions(position);
208
- if (strategy === types_1.ERunStrategy.EXECUTE && handler.execute) {
209
- handler.execute(monacoEditor, selection, value, this.token);
210
- inlineInputWidget.launchChatStatus(inline_chat_service_1.EInlineChatStatus.DONE);
211
- this.hideInput();
123
+ /**
124
+ * 只有当前编辑器的光标聚焦,才会展示
125
+ * 用于解决多栏的情况下,同时打开多个 input 的问题
126
+ */
127
+ const hasFocus = monacoEditor.hasTextFocus();
128
+ if (!hasFocus) {
212
129
  return;
213
130
  }
214
- if (strategy === types_1.ERunStrategy.PREVIEW && handler.providePreviewStrategy) {
215
- const previewResponse = await handler.providePreviewStrategy(monacoEditor, selection, value, this.token);
216
- if (ide_core_common_1.CancelResponse.is(previewResponse)) {
217
- inlineInputWidget.launchChatStatus(inline_chat_service_1.EInlineChatStatus.READY);
218
- this.hideInput();
219
- return;
131
+ const selection = monacoEditor.getSelection();
132
+ if (selection && selection.startLineNumber !== selection.endLineNumber) {
133
+ return;
134
+ }
135
+ const inlineInputChatWidget = this.injector.get(inline_input_widget_1.InlineInputChatWidget, [monacoEditor]);
136
+ const collection = monacoEditor.createDecorationsCollection();
137
+ const isEmptyLine = !((_a = monacoEditor.getModel()) === null || _a === void 0 ? void 0 : _a.getLineContent(position.lineNumber).trim());
138
+ if (!isEmptyLine) {
139
+ // 根据光标位置自动检测并选中临近的代码块
140
+ const cursorPosition = monacoEditor.getPosition();
141
+ const editorModel = monacoEditor.getModel();
142
+ const cursor = editorModel === null || editorModel === void 0 ? void 0 : editorModel.getOffsetAt(cursorPosition);
143
+ const language = editorModel === null || editorModel === void 0 ? void 0 : editorModel.getLanguageId();
144
+ const parser = this.languageParserService.createParser(language);
145
+ const codeBlock = await (parser === null || parser === void 0 ? void 0 : parser.findNearestCodeBlockWithPosition((editorModel === null || editorModel === void 0 ? void 0 : editorModel.getValue()) || '', cursor));
146
+ if (codeBlock) {
147
+ const selection = new monaco.Selection(codeBlock.range.start.line + 1, codeBlock.range.start.character, codeBlock.range.end.line + 1, codeBlock.range.end.character);
148
+ monacoEditor.setSelection(selection);
220
149
  }
221
- if (inline_chat_controller_1.InlineChatController.is(previewResponse)) {
222
- const controller = previewResponse;
223
- let latestContent;
224
- const schedulerEdit = this.registerDispose(new ide_core_common_1.RunOnceScheduler(() => {
225
- const range = collection.getRange(0);
226
- if (range && latestContent) {
227
- model.pushEditOperations(null, [editOperation_1.EditOperation.replace(range, latestContent)], () => null);
228
- }
229
- }, ide_core_common_1.FRAME_FIVE));
230
- this.inputDisposable.addDispose([
231
- controller.onData(async (data) => {
232
- if (!ide_core_common_1.ReplyResponse.is(data)) {
233
- return;
234
- }
235
- this.aiNativeContextKey.inlineInputWidgetIsStreaming.set(true);
236
- latestContent = data.message;
237
- if (!schedulerEdit.isScheduled()) {
238
- schedulerEdit.schedule();
239
- }
240
- }),
241
- controller.onError((error) => {
242
- this.aiNativeContextKey.inlineInputWidgetIsStreaming.set(false);
243
- inlineInputWidget.launchChatStatus(inline_chat_service_1.EInlineChatStatus.READY);
244
- }),
245
- controller.onAbort(() => {
246
- this.aiNativeContextKey.inlineInputWidgetIsStreaming.set(false);
247
- model.pushStackElement();
248
- inlineInputWidget.launchChatStatus(inline_chat_service_1.EInlineChatStatus.DONE);
249
- }),
250
- controller.onEnd(() => {
251
- this.aiNativeContextKey.inlineInputWidgetIsStreaming.set(false);
252
- model.pushStackElement();
253
- inlineInputWidget.launchChatStatus(inline_chat_service_1.EInlineChatStatus.DONE);
254
- }),
255
- ]);
256
- controller.listen();
150
+ else {
151
+ // 选中当前行
152
+ monacoEditor.setSelection(new monaco.Selection(position.lineNumber, 1, position.lineNumber, Infinity));
257
153
  }
258
- }
259
- }));
260
- this.inputDisposable.addDispose(inlineInputWidget);
261
- }
262
- async showInputInSelection(selection, monacoEditor, defaultValue) {
263
- if (this.inputDisposable) {
264
- this.inputDisposable.dispose();
265
- this.inputDisposable = new ide_core_common_1.Disposable();
266
- }
267
- const model = monacoEditor.getModel();
268
- if (!model) {
269
- return;
270
- }
271
- const decorationsCollection = monacoEditor.createDecorationsCollection();
272
- decorationsCollection.set([
273
- {
274
- range: monaco.Range.fromPositions({ lineNumber: selection.startLineNumber, column: 1 }, {
275
- lineNumber: selection.endLineNumber,
276
- column: monacoEditor.getModel().getLineMaxColumn(selection.endLineNumber),
277
- }),
278
- options: textModel_1.ModelDecorationOptions.register({
279
- description: internal_type_1.InlineInputPreviewDecorationID,
280
- isWholeLine: true,
281
- className: inline_input_module_less_1.default.input_decoration_pending_container,
282
- }),
283
- },
284
- ]);
285
- const decorationSelection = monaco.Selection.fromRange(decorationsCollection.getRange(0), selection.getDirection());
286
- this.inputValue.set(defaultValue || '', undefined);
287
- this.inlineInputWidgetStore.set(model.id, new model_1.InlineInputWidgetStoreInSelection(decorationSelection, defaultValue));
288
- const inlineInputWidget = this.injector.get(inline_input_widget_1.InlineInputWidget, [monacoEditor, this.inputValue.get()]);
289
- inlineInputWidget.show({ selection: decorationSelection });
290
- this.aiNativeContextKey.inlineInputWidgetIsVisible.set(true);
291
- this.inputDisposable.addDispose(inlineInputWidget.onDispose(() => {
292
- this.cancelToken();
293
- decorationsCollection.clear();
294
- this.aiNativeContextKey.inlineInputWidgetIsVisible.set(false);
295
- }));
296
- this.inputDisposable.addDispose(inlineInputWidget.onValueChange((value) => {
297
- this.inputValue.set(value, undefined);
298
- const storeData = this.inlineInputWidgetStore.get(model.id);
299
- if (storeData instanceof model_1.InlineInputWidgetStoreInSelection) {
300
- storeData.setValue(value);
301
- }
302
- }));
303
- this.inputDisposable.addDispose(inlineInputWidget.onClose(() => {
304
- const isStreaming = this.aiNativeContextKey.inlineInputWidgetIsStreaming.get();
305
- if (isStreaming) {
306
- this.cancelToken();
307
- }
308
- else {
309
- this.hideInput();
310
- }
311
- }));
312
- this.inputDisposable.addDispose(inlineInputWidget.onSend(async (value) => {
313
- monacoEditor.focus();
314
- const handler = this.inlineInputService.getInteractiveInputHandler();
315
- if (!handler) {
154
+ this.inlineChatService.launchInputVisible(true);
316
155
  return;
317
156
  }
318
- inlineInputWidget.launchChatStatus(inline_chat_service_1.EInlineChatStatus.THINKING);
319
- const strategy = await this.inlineInputService.getInteractiveInputStrategyHandler()(monacoEditor, value);
320
- if (strategy === types_1.ERunStrategy.PREVIEW && handler.providePreviewStrategy) {
321
- const previewResponse = await handler.providePreviewStrategy(monacoEditor, decorationSelection, value, this.token);
322
- if (ide_core_common_1.CancelResponse.is(previewResponse)) {
323
- decorationsCollection.clear();
324
- this.aiNativeContextKey.inlineInputWidgetIsStreaming.set(false);
325
- inlineInputWidget.launchChatStatus(inline_chat_service_1.EInlineChatStatus.DONE);
157
+ // 仅在空行情况下增加装饰逻辑
158
+ collection.append([
159
+ {
160
+ range: monaco.Range.fromPositions(position),
161
+ options: textModel_1.ModelDecorationOptions.register({
162
+ description: internal_type_1.InlineInputPreviewDecorationID,
163
+ isWholeLine: true,
164
+ className: inline_input_module_less_1.default.input_decoration_readable_container,
165
+ inlineClassName: inline_input_module_less_1.default.inline_chat_inserted_range,
166
+ }),
167
+ },
168
+ ]);
169
+ const decorationRange = collection.getRange(0);
170
+ let preLineRange;
171
+ if (decorationRange) {
172
+ preLineRange = lineRange_1.LineRange.fromRange(decorationRange);
173
+ inlineInputChatWidget.show({ position: decorationRange.getStartPosition() });
174
+ }
175
+ aiNativeContextKey.inlineInputWidgetIsVisible.set(true);
176
+ inputDisposable.addDispose(inlineInputChatWidget.onDispose(() => {
177
+ this.cancelToken();
178
+ collection.clear();
179
+ aiNativeContextKey.inlineInputWidgetIsVisible.set(false);
180
+ }));
181
+ inputDisposable.addDispose(inlineInputChatWidget.onResultClick(async (kind) => {
182
+ const clear = () => {
183
+ const curPosi = collection.getRange(0);
184
+ model.pushStackElement();
185
+ model.pushEditOperations(null, [editOperation_1.EditOperation.delete(curPosi)], () => null);
186
+ model.pushStackElement();
187
+ };
188
+ switch (kind) {
189
+ case inline_chat_service_1.EResultKind.ACCEPT:
190
+ hideInput();
191
+ break;
192
+ case inline_chat_service_1.EResultKind.DISCARD:
193
+ clear();
194
+ hideInput();
195
+ break;
196
+ case inline_chat_service_1.EResultKind.REGENERATE:
197
+ clear();
198
+ await this.doRequestReadable(inlineInputChatWidget.interactiveInputValue, inlineInputChatWidget, monacoEditor, inputDisposable, collection, hideInput);
199
+ break;
200
+ default:
201
+ break;
202
+ }
203
+ }));
204
+ inputDisposable.addDispose(ide_core_common_1.Event.debounce(collection.onDidChange.bind(collection), () => { }, ide_core_common_1.FRAME_THREE)(() => {
205
+ if (!collection.getRange(0)) {
326
206
  return;
327
207
  }
328
- if (inline_chat_controller_1.InlineChatController.is(previewResponse)) {
329
- const chatResponse = previewResponse;
330
- this.inputDisposable.addDispose([
331
- chatResponse.onData((data) => {
332
- decorationsCollection.clear();
333
- if (ide_core_common_1.ReplyResponse.is(data)) {
334
- this.aiNativeContextKey.inlineInputWidgetIsStreaming.set(true);
335
- }
336
- }),
337
- chatResponse.onError((error) => {
338
- this.aiNativeContextKey.inlineInputWidgetIsStreaming.set(false);
339
- inlineInputWidget.launchChatStatus(inline_chat_service_1.EInlineChatStatus.READY);
340
- }),
341
- chatResponse.onAbort(() => {
342
- decorationsCollection.clear();
343
- this.aiNativeContextKey.inlineInputWidgetIsStreaming.set(false);
344
- inlineInputWidget.launchChatStatus(inline_chat_service_1.EInlineChatStatus.DONE);
345
- }),
346
- chatResponse.onEnd(() => {
347
- decorationsCollection.clear();
348
- this.aiNativeContextKey.inlineInputWidgetIsStreaming.set(false);
349
- inlineInputWidget.launchChatStatus(inline_chat_service_1.EInlineChatStatus.DONE);
350
- }),
351
- ]);
352
- const diffPreviewer = this.inlineDiffController.showPreviewerByStream(monacoEditor, {
353
- crossSelection: decorationSelection,
354
- chatResponse,
208
+ const range = collection.getRange(0);
209
+ const curLineRange = lineRange_1.LineRange.fromRange(range);
210
+ if (!preLineRange.equals(curLineRange)) {
211
+ inlineInputChatWidget.setOptions({
212
+ position: range.getStartPosition(),
355
213
  });
356
- diffPreviewer.mountWidget(inlineInputWidget);
357
- chatResponse.listen();
214
+ inlineInputChatWidget.layoutContentWidget();
358
215
  }
359
- }
360
- else {
361
- decorationsCollection.clear();
362
- inlineInputWidget.launchChatStatus(inline_chat_service_1.EInlineChatStatus.READY);
363
- this.hideInput();
364
- }
365
- }));
366
- this.inputDisposable.addDispose(inlineInputWidget.onResultClick((kind) => {
367
- this.inlineDiffController.handleAction(kind);
368
- this.hideInput();
369
- if (kind === inline_chat_service_1.EResultKind.REGENERATE) {
370
- requestAnimationFrame(() => {
371
- this.showInputInSelection(decorationSelection, monacoEditor, this.inputValue.get());
372
- });
373
- }
374
- }));
375
- this.inputDisposable.addDispose(inlineInputWidget);
216
+ preLineRange = curLineRange;
217
+ }));
218
+ inputDisposable.addDispose(inlineInputChatWidget.onInteractiveInputValue(async (value) => {
219
+ await this.doRequestReadable(value, inlineInputChatWidget, monacoEditor, inputDisposable, collection, hideInput);
220
+ }));
221
+ inputDisposable.addDispose(inlineInputChatWidget);
222
+ };
223
+ this.featureDisposable.addDispose(inputDisposable);
224
+ return this.featureDisposable;
376
225
  }
377
226
  };
378
227
  exports.InlineInputController = InlineInputController;
@@ -1 +1 @@
1
- {"version":3,"file":"inline-input.controller.js","sourceRoot":"","sources":["../../../../src/browser/widget/inline-input/inline-input.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inline-input.controller.js","sourceRoot":"","sources":["../../../../src/browser/widget/inline-input/inline-input.controller.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,3 @@
5
5
  .input_wrapper {
6
6
  transform: translateY(-4px);
7
7
  }
8
-
9
- .input_decoration_pending_container {
10
- background-color: var(--vscode-diffEditor-unchangedCodeBackground);
11
- }
@@ -1,24 +1,12 @@
1
- import { Disposable, Event, IDisposable } from '@opensumi/ide-core-common';
2
- import { ICodeEditor, Position, Selection } from '@opensumi/ide-monaco';
3
- import { ERunStrategy, IInteractiveInputHandler, IInteractiveInputRunStrategy } from '../../types';
4
- export declare class InlineInputService extends Disposable {
5
- private readonly keybindingRegistry;
6
- private readonly languageParserService;
7
- private interactiveInputModel;
1
+ import { Event } from '@opensumi/ide-core-common';
2
+ import { Position } from '@opensumi/ide-monaco';
3
+ export declare class InlineInputChatService {
4
+ private _currentVisiblePosition;
5
+ get currentVisiblePosition(): Position | undefined;
8
6
  private readonly _onInteractiveInputVisibleInPosition;
9
7
  readonly onInteractiveInputVisibleInPosition: Event<Position | undefined>;
10
- private readonly _onInteractiveInputVisibleInSelection;
11
- readonly onInteractiveInputVisibleInSelection: Event<Selection | undefined>;
12
- private readonly _onHidden;
13
- readonly onHidden: Event<void>;
14
- visibleByPosition(position: Position): void;
15
- visibleBySelection(selection: Selection): void;
16
- visibleByNearestCodeBlock(position: Position, monacoEditor: ICodeEditor): Promise<void>;
8
+ setCurrentVisiblePosition(position: Position | undefined): void;
9
+ visible(): void;
17
10
  hide(): void;
18
- getInteractiveInputHandler(): IInteractiveInputHandler | undefined;
19
- getInteractiveInputStrategyHandler(): (editor: ICodeEditor, value: string) => import("@opensumi/ide-core-browser").MaybePromise<ERunStrategy>;
20
- private findNearestCodeBlockWithPosition;
21
- getSequenceKeyString(): string[] | "";
22
- registerInlineInput(runStrategy: IInteractiveInputRunStrategy, handler: IInteractiveInputHandler): IDisposable;
23
11
  }
24
12
  //# sourceMappingURL=inline-input.service.d.ts.map