@opensumi/ide-editor 3.9.1-next-1747897586.0 → 3.9.1-next-1747917815.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 (30) hide show
  1. package/lib/browser/base-editor-wrapper.d.ts +58 -0
  2. package/lib/browser/base-editor-wrapper.d.ts.map +1 -0
  3. package/lib/browser/base-editor-wrapper.js +203 -0
  4. package/lib/browser/base-editor-wrapper.js.map +1 -0
  5. package/lib/browser/decoration-applier.d.ts.map +1 -1
  6. package/lib/browser/decoration-applier.js.map +1 -1
  7. package/lib/browser/editor-collection.service.d.ts +21 -57
  8. package/lib/browser/editor-collection.service.d.ts.map +1 -1
  9. package/lib/browser/editor-collection.service.js +42 -206
  10. package/lib/browser/editor-collection.service.js.map +1 -1
  11. package/lib/browser/editor.less +25 -0
  12. package/lib/browser/multi-diff/multi-diff-editor.d.ts +9 -6
  13. package/lib/browser/multi-diff/multi-diff-editor.d.ts.map +1 -1
  14. package/lib/browser/multi-diff/multi-diff-editor.js +58 -7
  15. package/lib/browser/multi-diff/multi-diff-editor.js.map +1 -1
  16. package/lib/browser/multi-diff/multi-diff-resource.d.ts.map +1 -1
  17. package/lib/browser/multi-diff/multi-diff-resource.js.map +1 -1
  18. package/lib/browser/workbench-editor.service.js +1 -1
  19. package/lib/browser/workbench-editor.service.js.map +1 -1
  20. package/lib/common/multi-diff.d.ts +1 -1
  21. package/lib/common/multi-diff.d.ts.map +1 -1
  22. package/package.json +14 -14
  23. package/src/browser/base-editor-wrapper.ts +254 -0
  24. package/src/browser/decoration-applier.ts +1 -0
  25. package/src/browser/editor-collection.service.ts +48 -262
  26. package/src/browser/editor.less +25 -0
  27. package/src/browser/multi-diff/multi-diff-editor.ts +89 -10
  28. package/src/browser/multi-diff/multi-diff-resource.ts +0 -1
  29. package/src/browser/workbench-editor.service.ts +1 -1
  30. package/src/common/multi-diff.ts +1 -1
@@ -1,24 +1,21 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DiffEditorPart = exports.BrowserDiffEditor = exports.BrowserCodeEditor = exports.BaseMonacoEditorWrapper = exports.EditorCollectionServiceImpl = void 0;
4
- exports.insertSnippetWithMonacoEditor = insertSnippetWithMonacoEditor;
3
+ exports.BrowserDiffEditor = exports.BrowserCodeEditor = exports.EditorCollectionServiceImpl = void 0;
5
4
  const tslib_1 = require("tslib");
6
5
  const di_1 = require("@opensumi/di");
7
6
  const ide_core_browser_1 = require("@opensumi/ide-core-browser");
8
7
  const contextkey_1 = require("@opensumi/ide-core-browser/lib/contextkey");
9
8
  const monaco_1 = require("@opensumi/ide-core-browser/lib/monaco");
10
9
  const ide_core_common_1 = require("@opensumi/ide-core-common");
11
- const monaco = tslib_1.__importStar(require("@opensumi/ide-monaco"));
12
10
  const configuration_1 = require("@opensumi/monaco-editor-core/esm/vs/platform/configuration/common/configuration");
13
11
  const common_1 = require("../common");
14
12
  const editor_1 = require("../common/editor");
15
- const decoration_applier_1 = require("./decoration-applier");
13
+ const base_editor_wrapper_1 = require("./base-editor-wrapper");
16
14
  const types_1 = require("./doc-model/types");
17
15
  const feature_1 = require("./feature");
18
16
  const multi_diff_editor_1 = require("./multi-diff/multi-diff-editor");
19
17
  const converter_1 = require("./preference/converter");
20
18
  const types_2 = require("./types");
21
- const { removeUndefined } = ide_core_common_1.objects;
22
19
  let EditorCollectionServiceImpl = class EditorCollectionServiceImpl extends ide_core_common_1.WithEventBus {
23
20
  get currentEditor() {
24
21
  return this._currentEditor;
@@ -27,10 +24,19 @@ let EditorCollectionServiceImpl = class EditorCollectionServiceImpl extends ide_
27
24
  super();
28
25
  this._editors = new Set();
29
26
  this._diffEditors = new Set();
27
+ this._multiDiffEditors = new Set();
30
28
  this._onCodeEditorCreate = new ide_core_common_1.Emitter();
31
29
  this._onDiffEditorCreate = new ide_core_common_1.Emitter();
30
+ this._onMultiDiffEditorCreate = new ide_core_common_1.Emitter();
31
+ this._onCodeEditorChange = new ide_core_common_1.Emitter();
32
+ this._onDiffEditorChange = new ide_core_common_1.Emitter();
33
+ this._onMultiDiffEditorChange = new ide_core_common_1.Emitter();
32
34
  this.onCodeEditorCreate = this._onCodeEditorCreate.event;
33
35
  this.onDiffEditorCreate = this._onDiffEditorCreate.event;
36
+ this.onMultiDiffEditorCreate = this._onMultiDiffEditorCreate.event;
37
+ this.onCodeEditorChange = this._onCodeEditorChange.event;
38
+ this.onDiffEditorChange = this._onDiffEditorChange.event;
39
+ this.onMultiDiffEditorChange = this._onMultiDiffEditorChange.event;
34
40
  this.addDispose(this.editorFeatureRegistry.onDidRegisterFeature((contribution) => {
35
41
  this._editors.forEach((editor) => {
36
42
  this.editorFeatureRegistry.runOneContribution(editor, contribution);
@@ -70,7 +76,7 @@ let EditorCollectionServiceImpl = class EditorCollectionServiceImpl extends ide_
70
76
  }
71
77
  });
72
78
  if (this._editors.size !== beforeSize) {
73
- // fire event;
79
+ this._onCodeEditorChange.fire();
74
80
  }
75
81
  }
76
82
  removeEditors(editors) {
@@ -82,7 +88,7 @@ let EditorCollectionServiceImpl = class EditorCollectionServiceImpl extends ide_
82
88
  }
83
89
  });
84
90
  if (this._editors.size !== beforeSize) {
85
- // fire event;
91
+ this._onCodeEditorChange.fire();
86
92
  }
87
93
  }
88
94
  createDiffEditor(dom, options, overrides) {
@@ -97,7 +103,7 @@ let EditorCollectionServiceImpl = class EditorCollectionServiceImpl extends ide_
97
103
  const convertedOptions = (0, converter_1.getConvertedMonacoOptions)(this.configurationService);
98
104
  const monacoMultiDiffEditorWidget = this.monacoService.createMultiDiffEditorWidget(dom, overrides);
99
105
  const mergedOptions = { ...convertedOptions.diffOptions, ...options };
100
- const editor = this.injector.get(multi_diff_editor_1.BrowserMultiDiffEditor, [monacoMultiDiffEditorWidget, mergedOptions]);
106
+ const editor = this.injector.get(multi_diff_editor_1.BrowserMultiDiffEditor, [monacoMultiDiffEditorWidget, mergedOptions, this]);
101
107
  return editor;
102
108
  }
103
109
  createMergeEditor(dom, options, overrides) {
@@ -123,7 +129,7 @@ let EditorCollectionServiceImpl = class EditorCollectionServiceImpl extends ide_
123
129
  }
124
130
  });
125
131
  if (this._diffEditors.size !== beforeSize) {
126
- // fire event _onDiffEditorAdd;
132
+ this._onDiffEditorChange.fire();
127
133
  }
128
134
  }
129
135
  removeDiffEditors(diffEditors) {
@@ -132,10 +138,32 @@ let EditorCollectionServiceImpl = class EditorCollectionServiceImpl extends ide_
132
138
  this._diffEditors.delete(diffEditor);
133
139
  });
134
140
  if (this._diffEditors.size !== beforeSize) {
135
- // fire event _onDiffEditorRemove;
141
+ this._onDiffEditorChange.fire();
142
+ }
143
+ }
144
+ listMultiDiffEditors() {
145
+ return Array.from(this._multiDiffEditors.values());
146
+ }
147
+ addMultiDiffEditors(multiDiffEditors) {
148
+ const beforeSize = this._multiDiffEditors.size;
149
+ multiDiffEditors.forEach((multiDiffEditor) => {
150
+ if (!this._multiDiffEditors.has(multiDiffEditor)) {
151
+ this._multiDiffEditors.add(multiDiffEditor);
152
+ }
153
+ });
154
+ if (this._multiDiffEditors.size !== beforeSize) {
155
+ this._onMultiDiffEditorChange.fire();
156
+ }
157
+ }
158
+ removeMultiDiffEditors(multiDiffEditors) {
159
+ const beforeSize = this._multiDiffEditors.size;
160
+ multiDiffEditors.forEach((multiDiffEditor) => {
161
+ this._multiDiffEditors.delete(multiDiffEditor);
162
+ });
163
+ if (this._multiDiffEditors.size !== beforeSize) {
164
+ this._onMultiDiffEditorChange.fire();
136
165
  }
137
166
  }
138
- // 将docModel的变更事件反映至resource的dirty装饰
139
167
  onDocModelContentChangedEvent(e) {
140
168
  this.eventBus.fire(new common_1.ResourceDecorationNeedChangeEvent({
141
169
  uri: e.payload.uri,
@@ -177,181 +205,7 @@ exports.EditorCollectionServiceImpl = EditorCollectionServiceImpl = tslib_1.__de
177
205
  (0, di_1.Injectable)(),
178
206
  tslib_1.__metadata("design:paramtypes", [])
179
207
  ], EditorCollectionServiceImpl);
180
- function insertSnippetWithMonacoEditor(editor, template, ranges, opts) {
181
- const snippetController = editor.getContribution('snippetController2');
182
- const selections = ranges.map((r) => new monaco.Selection(r.startLineNumber, r.startColumn, r.endLineNumber, r.endColumn));
183
- editor.setSelections(selections);
184
- editor.focus();
185
- snippetController.insert(template, 0, 0, opts.undoStopBefore, opts.undoStopAfter);
186
- }
187
- function updateOptionsWithMonacoEditor(monacoEditor, editorOptions, modelOptions) {
188
- monacoEditor.updateOptions(editorOptions);
189
- if (monacoEditor.getModel()) {
190
- monacoEditor.getModel().updateOptions(modelOptions);
191
- }
192
- }
193
- let BaseMonacoEditorWrapper = class BaseMonacoEditorWrapper extends ide_core_common_1.WithEventBus {
194
- get currentUri() {
195
- return this.currentDocumentModel ? this.currentDocumentModel.uri : null;
196
- }
197
- getId() {
198
- return this.monacoEditor.getId();
199
- }
200
- getSelections() {
201
- return this.monacoEditor.getSelections() || [];
202
- }
203
- disableSelectionEmitter() {
204
- this._disableSelectionEmitter = true;
205
- }
206
- enableSelectionEmitter() {
207
- this._disableSelectionEmitter = false;
208
- }
209
- constructor(monacoEditor, type) {
210
- super();
211
- this.monacoEditor = monacoEditor;
212
- this.type = type;
213
- this.onFocus = this.monacoEditor.onDidFocusEditorWidget;
214
- this.onBlur = this.monacoEditor.onDidBlurEditorWidget;
215
- this._specialEditorOptions = {};
216
- this._specialModelOptions = {};
217
- this._editorOptionsFromContribution = {};
218
- this._disableSelectionEmitter = false;
219
- this.decorationApplier = this.injector.get(decoration_applier_1.MonacoEditorDecorationApplier, [this.monacoEditor]);
220
- this.addDispose(this.monacoEditor.onDidChangeModel(this.onDidChangeModel.bind(this)));
221
- this.addDispose(this.monacoEditor.onDidChangeModelLanguage(() => {
222
- this._doUpdateOptions();
223
- }));
224
- this.addDispose(this.configurationService.onDidChangeConfiguration((e) => {
225
- const changedEditorKeys = Array.from(e.affectedKeys.values()).filter((key) => (0, converter_1.isEditorOption)(key));
226
- if (changedEditorKeys.length > 0) {
227
- this._doUpdateOptions();
228
- }
229
- }));
230
- }
231
- async onDidChangeModel() {
232
- this._editorOptionsFromContribution = {};
233
- const uri = this.currentUri;
234
- if (uri) {
235
- Promise.resolve(this.editorFeatureRegistry.runProvideEditorOptionsForUri(uri)).then((options) => {
236
- if (!this.currentUri || !uri.isEqual(this.currentUri)) {
237
- return; // uri可能已经变了
238
- }
239
- if (options && Object.keys(options).length > 0) {
240
- this._editorOptionsFromContribution = options;
241
- if (!(0, ide_core_common_1.isEmptyObject)(this._editorOptionsFromContribution)) {
242
- this._doUpdateOptions();
243
- }
244
- }
245
- });
246
- }
247
- }
248
- getType() {
249
- return this.type;
250
- }
251
- updateOptions(editorOptions = {}, modelOptions = {}) {
252
- this._specialEditorOptions = removeUndefined({ ...this._specialEditorOptions, ...editorOptions });
253
- this._specialModelOptions = removeUndefined({ ...this._specialModelOptions, ...modelOptions });
254
- this._doUpdateOptions();
255
- }
256
- _doUpdateOptions() {
257
- const { editorOptions, modelOptions } = this._calculateFinalOptions();
258
- updateOptionsWithMonacoEditor(this.monacoEditor, editorOptions, modelOptions);
259
- }
260
- /**
261
- * 合并所有的选项
262
- * 优先关系: (从高到底)
263
- * 1. 当前编辑器的特殊选项(通过调用 updateOptions或者启动时传入)
264
- * 2. 来自 featureRegistry 的根据 当前uri 提供的选项
265
- * 3. 来自偏好设置的选项
266
- */
267
- _calculateFinalOptions() {
268
- var _a;
269
- const uriStr = this.currentUri ? this.currentUri.toString() : undefined;
270
- const languageId = this.currentDocumentModel ? this.currentDocumentModel.languageId : undefined;
271
- const options = (0, converter_1.getConvertedMonacoOptions)(this.configurationService, uriStr, languageId, undefined);
272
- const basicEditorOptions = {
273
- readOnly: ((_a = this.currentDocumentModel) === null || _a === void 0 ? void 0 : _a.readonly) || false,
274
- };
275
- let editorOptions = {
276
- ...basicEditorOptions,
277
- ...options.editorOptions,
278
- ...this._editorOptionsFromContribution,
279
- ...this._specialEditorOptions,
280
- };
281
- if (this.type !== common_1.EditorType.CODE) {
282
- editorOptions = {
283
- ...editorOptions,
284
- ...options.diffOptions,
285
- };
286
- }
287
- return {
288
- editorOptions,
289
- modelOptions: { ...options.modelOptions, ...this._specialModelOptions },
290
- };
291
- }
292
- insertSnippet(template, ranges, opts) {
293
- insertSnippetWithMonacoEditor(this.monacoEditor, template, ranges, opts);
294
- }
295
- applyDecoration(key, options) {
296
- this.decorationApplier.applyDecoration(key, options);
297
- }
298
- onSelectionsChanged(listener) {
299
- return this.monacoEditor.onDidChangeCursorSelection((e) => {
300
- if (!this._disableSelectionEmitter) {
301
- listener({
302
- selections: this.getSelections(),
303
- source: e.source,
304
- });
305
- }
306
- });
307
- }
308
- onVisibleRangesChanged(listener) {
309
- const disposer = new ide_core_common_1.Disposable();
310
- const monacoEditor = this.monacoEditor;
311
- disposer.addDispose(monacoEditor.onDidScrollChange((e) => {
312
- listener(this.monacoEditor.getVisibleRanges());
313
- }));
314
- disposer.addDispose(monacoEditor.onDidLayoutChange((e) => {
315
- listener(this.monacoEditor.getVisibleRanges());
316
- }));
317
- return disposer;
318
- }
319
- setSelections(selections) {
320
- return this.monacoEditor.setSelections(selections);
321
- }
322
- setSelection(selection) {
323
- return this.monacoEditor.setSelection(selection);
324
- }
325
- async save() {
326
- if (this.currentDocumentModel) {
327
- await this.currentDocumentModel.save();
328
- }
329
- }
330
- onConfigurationChanged(listener) {
331
- const monacoEditor = this.monacoEditor;
332
- return monacoEditor.onDidChangeConfiguration((e) => {
333
- listener();
334
- });
335
- }
336
- };
337
- exports.BaseMonacoEditorWrapper = BaseMonacoEditorWrapper;
338
- tslib_1.__decorate([
339
- (0, di_1.Autowired)(types_2.IEditorFeatureRegistry),
340
- tslib_1.__metadata("design:type", Object)
341
- ], BaseMonacoEditorWrapper.prototype, "editorFeatureRegistry", void 0);
342
- tslib_1.__decorate([
343
- (0, di_1.Autowired)(configuration_1.IConfigurationService),
344
- tslib_1.__metadata("design:type", Object)
345
- ], BaseMonacoEditorWrapper.prototype, "configurationService", void 0);
346
- tslib_1.__decorate([
347
- (0, di_1.Autowired)(di_1.INJECTOR_TOKEN),
348
- tslib_1.__metadata("design:type", di_1.Injector)
349
- ], BaseMonacoEditorWrapper.prototype, "injector", void 0);
350
- exports.BaseMonacoEditorWrapper = BaseMonacoEditorWrapper = tslib_1.__decorate([
351
- (0, di_1.Injectable)({ multiple: true }),
352
- tslib_1.__metadata("design:paramtypes", [Object, Object])
353
- ], BaseMonacoEditorWrapper);
354
- let BrowserCodeEditor = class BrowserCodeEditor extends BaseMonacoEditorWrapper {
208
+ let BrowserCodeEditor = class BrowserCodeEditor extends base_editor_wrapper_1.BaseMonacoEditorWrapper {
355
209
  get currentDocumentModel() {
356
210
  if (this._currentDocumentModelRef && !this._currentDocumentModelRef.disposed) {
357
211
  return this._currentDocumentModelRef.instance;
@@ -632,12 +486,12 @@ class BrowserDiffEditor extends ide_core_common_1.WithEventBus {
632
486
  wrapEditors() {
633
487
  // eslint-disable-next-line @typescript-eslint/no-this-alias
634
488
  const diffEditor = this;
635
- this.originalEditor = this.injector.get(DiffEditorPart, [
489
+ this.originalEditor = this.injector.get(base_editor_wrapper_1.DiffEditorPart, [
636
490
  diffEditor.monacoDiffEditor.getOriginalEditor(),
637
491
  () => diffEditor.originalDocModel,
638
492
  common_1.EditorType.ORIGINAL_DIFF,
639
493
  ]);
640
- this.modifiedEditor = this.injector.get(DiffEditorPart, [
494
+ this.modifiedEditor = this.injector.get(base_editor_wrapper_1.DiffEditorPart, [
641
495
  diffEditor.monacoDiffEditor.getModifiedEditor(),
642
496
  () => diffEditor.modifiedDocModel,
643
497
  common_1.EditorType.MODIFIED_DIFF,
@@ -671,10 +525,6 @@ tslib_1.__decorate([
671
525
  (0, di_1.Autowired)(common_1.EditorCollectionService),
672
526
  tslib_1.__metadata("design:type", EditorCollectionServiceImpl)
673
527
  ], BrowserDiffEditor.prototype, "collectionService", void 0);
674
- tslib_1.__decorate([
675
- (0, di_1.Autowired)(ide_core_browser_1.AppConfig),
676
- tslib_1.__metadata("design:type", Object)
677
- ], BrowserDiffEditor.prototype, "appConfig", void 0);
678
528
  tslib_1.__decorate([
679
529
  (0, di_1.Autowired)(di_1.INJECTOR_TOKEN),
680
530
  tslib_1.__metadata("design:type", di_1.Injector)
@@ -707,18 +557,4 @@ function preventNavigation(e) {
707
557
  e.stopPropagation();
708
558
  }
709
559
  }
710
- let DiffEditorPart = class DiffEditorPart extends BaseMonacoEditorWrapper {
711
- get currentDocumentModel() {
712
- return this.getDocumentModel();
713
- }
714
- constructor(monacoEditor, getDocumentModel, type) {
715
- super(monacoEditor, type);
716
- this.getDocumentModel = getDocumentModel;
717
- }
718
- };
719
- exports.DiffEditorPart = DiffEditorPart;
720
- exports.DiffEditorPart = DiffEditorPart = tslib_1.__decorate([
721
- (0, di_1.Injectable)({ multiple: true }),
722
- tslib_1.__metadata("design:paramtypes", [Object, Function, Object])
723
- ], DiffEditorPart);
724
560
  //# sourceMappingURL=editor-collection.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"editor-collection.service.js","sourceRoot":"","sources":["../../src/browser/editor-collection.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editor-collection.service.js","sourceRoot":"","sources":["../../src/browser/editor-collection.service.ts"],"names":[],"mappings":"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"}
@@ -20,3 +20,28 @@
20
20
  }
21
21
  }
22
22
  }
23
+
24
+ .monaco-component.multiDiffEditor {
25
+ & .multiDiffEntry {
26
+ & .header {
27
+ margin-top: 8px;
28
+ .header-content {
29
+ margin-top: 0;
30
+ }
31
+ }
32
+ .status {
33
+ &.added {
34
+ color: var(--gitDecoration-addedResourceForeground);
35
+ }
36
+ &.deleted {
37
+ color: var(--gitDecoration-deletedResourceForeground);
38
+ }
39
+ &.renamed {
40
+ color: var(--gitDecoration-renamedResourceForeground);
41
+ }
42
+ &.modified {
43
+ color: var(--gitDecoration-modifiedResourceForeground);
44
+ }
45
+ }
46
+ }
47
+ }
@@ -1,5 +1,5 @@
1
1
  import { Injector } from '@opensumi/di';
2
- import { ILogger, URI, WithEventBus } from '@opensumi/ide-core-common';
2
+ import { Event, ILogger, URI, WithEventBus } from '@opensumi/ide-core-common';
3
3
  import { Dimension } from '@opensumi/monaco-editor-core/esm/vs/base/browser/dom';
4
4
  import { ICodeEditor } from '@opensumi/monaco-editor-core/esm/vs/editor/browser/editorBrowser';
5
5
  import { IDocumentDiffItem, IMultiDiffEditorModel } from '@opensumi/monaco-editor-core/esm/vs/editor/browser/widget/multiDiffEditor/model';
@@ -9,27 +9,30 @@ import { Range } from '@opensumi/monaco-editor-core/esm/vs/editor/common/core/ra
9
9
  import { IDiffEditor } from '@opensumi/monaco-editor-core/esm/vs/editor/common/editorCommon';
10
10
  import { IResourceOpenOptions } from '../../common/editor';
11
11
  import { IMultiDiffEditor } from '../../common/multi-diff';
12
- import { EditorDocumentModelContentChangedEvent, IEditorDocumentModelService } from '../doc-model/types';
12
+ import { EditorDocumentModelContentChangedEvent } from '../doc-model/types';
13
13
  import { IConvertedMonacoOptions, IResource } from '../types';
14
+ import type { EditorCollectionServiceImpl } from '../editor-collection.service';
14
15
  export declare class BrowserMultiDiffEditor extends WithEventBus implements IMultiDiffEditor {
15
16
  private multiDiffWidget;
16
17
  private convertedOptions;
18
+ private editorCollectionService;
17
19
  protected readonly injector: Injector;
18
20
  private readonly messageService;
19
- documentModelManager: IEditorDocumentModelService;
21
+ private readonly documentModelManager;
20
22
  private readonly preferenceService;
21
23
  private readonly multiDiffSourceResolverService;
22
24
  logger: ILogger;
23
25
  private multiDiffModelChangeEmitter;
24
- readonly onMultiDiffModelChange: import("@opensumi/ide-core-browser").Event<IMultiDiffEditorModel>;
26
+ readonly onMultiDiffModelChange: Event<IMultiDiffEditorModel>;
25
27
  private viewStateMap;
26
28
  private currentUri;
27
29
  private multiDiffModel;
28
- constructor(multiDiffWidget: MultiDiffEditorWidget, convertedOptions: IConvertedMonacoOptions);
30
+ constructor(multiDiffWidget: MultiDiffEditorWidget, convertedOptions: IConvertedMonacoOptions, editorCollectionService: EditorCollectionServiceImpl);
29
31
  onDocModelContentChangedEvent(e: EditorDocumentModelContentChangedEvent): void;
30
32
  private saveViewState;
31
33
  private restoreViewState;
32
- compareMultiple(resource: IResource, options?: IResourceOpenOptions): Promise<void>;
34
+ private createAndRegisterEditorParts;
35
+ compareMultiple(editor: IMultiDiffEditor, resource: IResource, options?: IResourceOpenOptions): Promise<void>;
33
36
  getDiffEntry(uri: URI): IDocumentDiffItem | undefined;
34
37
  getCurrentDiffEntry(): IDocumentDiffItem | undefined;
35
38
  reveal(resource: IMultiDiffResourceId, options?: {
@@ -1 +1 @@
1
- {"version":3,"file":"multi-diff-editor.d.ts","sourceRoot":"","sources":["../../../src/browser/multi-diff/multi-diff-editor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyC,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE/E,OAAO,EAAyC,OAAO,EAAW,GAAG,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAYvH,OAAO,EAAE,SAAS,EAAE,MAAM,sDAAsD,CAAC;AAEjF,OAAO,EAAE,WAAW,EAAE,MAAM,kEAAkE,CAAC;AAE/F,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACtB,MAAM,iFAAiF,CAAC;AACzF,OAAO,EAAE,qBAAqB,EAAE,MAAM,iGAAiG,CAAC;AACxI,OAAO,EAAE,oBAAoB,EAAE,MAAM,qGAAqG,CAAC;AAC3I,OAAO,EAAE,KAAK,EAAE,MAAM,8DAA8D,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,gEAAgE,CAAC;AAE7F,OAAO,EAA2B,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAA6D,MAAM,yBAAyB,CAAC;AACtH,OAAO,EAAE,sCAAsC,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACzG,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAqC,MAAM,UAAU,CAAC;AAEjG,qBACa,sBAAuB,SAAQ,YAAa,YAAW,gBAAgB;IA2BtE,OAAO,CAAC,eAAe;IAAyB,OAAO,CAAC,gBAAgB;IAzBpF,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAGtC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAkB;IAGjD,oBAAoB,EAAE,2BAA2B,CAAC;IAGlD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;IAGtD,OAAO,CAAC,QAAQ,CAAC,8BAA8B,CAAkC;IAGjF,MAAM,EAAE,OAAO,CAAC;IAEhB,OAAO,CAAC,2BAA2B,CAAwC;IAC3E,SAAgB,sBAAsB,oEAA0C;IAEhF,OAAO,CAAC,YAAY,CAA+B;IACnD,OAAO,CAAC,UAAU,CAAkB;IAEpC,OAAO,CAAC,cAAc,CAAsC;gBAExC,eAAe,EAAE,qBAAqB,EAAU,gBAAgB,EAAE,uBAAuB;IAK7G,6BAA6B,CAAC,CAAC,EAAE,sCAAsC;IAwBvE,OAAO,CAAC,aAAa;IAWrB,OAAO,CAAC,gBAAgB;IAWlB,eAAe,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IA4FzF,YAAY,CAAC,GAAG,EAAE,GAAG,GAAG,iBAAiB,GAAG,SAAS;IAIrD,mBAAmB,IAAI,iBAAiB,GAAG,SAAS;IAYpD,MAAM,CAAC,QAAQ,EAAE,oBAAoB,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,KAAK,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI;IAI7F;;OAEG;IACH,WAAW,IAAI,IAAI;IAwBnB;;OAEG;IACH,SAAS,IAAI,IAAI;IAwBjB,MAAM,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAIlC,KAAK,IAAI,IAAI;IAOb,gBAAgB,CAAC,GAAG,EAAE,GAAG,GAAG;QAAE,UAAU,EAAE,WAAW,CAAC;QAAC,MAAM,EAAE,WAAW,CAAA;KAAE,GAAG,SAAS;IAIxF,OAAO,IAAI,IAAI;CAIhB"}
1
+ {"version":3,"file":"multi-diff-editor.d.ts","sourceRoot":"","sources":["../../../src/browser/multi-diff/multi-diff-editor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyC,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE/E,OAAO,EAGL,KAAK,EAEL,OAAO,EAEP,GAAG,EACH,YAAY,EAEb,MAAM,2BAA2B,CAAC;AAYnC,OAAO,EAAE,SAAS,EAAE,MAAM,sDAAsD,CAAC;AAEjF,OAAO,EAAE,WAAW,EAAE,MAAM,kEAAkE,CAAC;AAE/F,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACtB,MAAM,iFAAiF,CAAC;AACzF,OAAO,EAAE,qBAAqB,EAAE,MAAM,iGAAiG,CAAC;AACxI,OAAO,EAAE,oBAAoB,EAAE,MAAM,qGAAqG,CAAC;AAC3I,OAAO,EAAE,KAAK,EAAE,MAAM,8DAA8D,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,gEAAgE,CAAC;AAE7F,OAAO,EAAuC,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAChG,OAAO,EAAE,gBAAgB,EAA6D,MAAM,yBAAyB,CAAC;AAEtH,OAAO,EAAE,sCAAsC,EAA+B,MAAM,oBAAoB,CAAC;AACzG,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAqC,MAAM,UAAU,CAAC;AAEjG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAEhF,qBACa,sBAAuB,SAAQ,YAAa,YAAW,gBAAgB;IA4BhF,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,uBAAuB;IA5BjC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAGtC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAkB;IAGjD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAA8B;IAGnE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;IAGtD,OAAO,CAAC,QAAQ,CAAC,8BAA8B,CAAkC;IAGjF,MAAM,EAAE,OAAO,CAAC;IAEhB,OAAO,CAAC,2BAA2B,CAAwC;IAC3E,SAAgB,sBAAsB,+BAA0C;IAEhF,OAAO,CAAC,YAAY,CAA+B;IACnD,OAAO,CAAC,UAAU,CAAkB;IAEpC,OAAO,CAAC,cAAc,CAAsC;gBAGlD,eAAe,EAAE,qBAAqB,EACtC,gBAAgB,EAAE,uBAAuB,EACzC,uBAAuB,EAAE,2BAA2B;IAO9D,6BAA6B,CAAC,CAAC,EAAE,sCAAsC;IAwBvE,OAAO,CAAC,aAAa;IAWrB,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,4BAA4B;IA0B9B,eAAe,CAAC,MAAM,EAAE,gBAAgB,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IA+HnH,YAAY,CAAC,GAAG,EAAE,GAAG,GAAG,iBAAiB,GAAG,SAAS;IAIrD,mBAAmB,IAAI,iBAAiB,GAAG,SAAS;IAYpD,MAAM,CAAC,QAAQ,EAAE,oBAAoB,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,KAAK,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI;IAI7F;;OAEG;IACH,WAAW,IAAI,IAAI;IAwBnB;;OAEG;IACH,SAAS,IAAI,IAAI;IAwBjB,MAAM,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAIlC,KAAK,IAAI,IAAI;IAOb,gBAAgB,CAAC,GAAG,EAAE,GAAG,GAAG;QAAE,UAAU,EAAE,WAAW,CAAC;QAAC,MAAM,EAAE,WAAW,CAAA;KAAE,GAAG,SAAS;IAIxF,OAAO,IAAI,IAAI;CAIhB"}
@@ -10,17 +10,21 @@ const ide_overlay_1 = require("@opensumi/ide-overlay");
10
10
  const event_1 = require("@opensumi/monaco-editor-core/esm/vs/base/common/event");
11
11
  const utils_1 = require("@opensumi/monaco-editor-core/esm/vs/editor/browser/widget/diffEditor/utils");
12
12
  const multiDiffEditorWidget_1 = require("@opensumi/monaco-editor-core/esm/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidget");
13
+ const editor_1 = require("../../common/editor");
13
14
  const multi_diff_1 = require("../../common/multi-diff");
15
+ const base_editor_wrapper_1 = require("../base-editor-wrapper");
14
16
  const types_1 = require("../doc-model/types");
15
17
  const types_2 = require("../types");
16
18
  let BrowserMultiDiffEditor = class BrowserMultiDiffEditor extends ide_core_common_1.WithEventBus {
17
- constructor(multiDiffWidget, convertedOptions) {
19
+ constructor(multiDiffWidget, convertedOptions, editorCollectionService) {
18
20
  super();
19
21
  this.multiDiffWidget = multiDiffWidget;
20
22
  this.convertedOptions = convertedOptions;
23
+ this.editorCollectionService = editorCollectionService;
21
24
  this.multiDiffModelChangeEmitter = new ide_core_common_1.Emitter();
22
25
  this.onMultiDiffModelChange = this.multiDiffModelChangeEmitter.event;
23
26
  this.viewStateMap = new Map();
27
+ this.editorCollectionService.addMultiDiffEditors([this]);
24
28
  }
25
29
  onDocModelContentChangedEvent(e) {
26
30
  var _a;
@@ -60,7 +64,27 @@ let BrowserMultiDiffEditor = class BrowserMultiDiffEditor extends ide_core_commo
60
64
  this.multiDiffWidget.setViewState(state);
61
65
  }
62
66
  }
63
- async compareMultiple(resource, options) {
67
+ createAndRegisterEditorParts(modifiedEditor, originalEditor, modifiedInstance, originalInstance) {
68
+ const editors = [];
69
+ if (modifiedEditor) {
70
+ const modifiedDiffEditorPart = this.injector.get(base_editor_wrapper_1.DiffEditorPart, [
71
+ modifiedEditor.editor,
72
+ () => modifiedInstance,
73
+ editor_1.EditorType.MODIFIED_DIFF,
74
+ ]);
75
+ editors.push(modifiedDiffEditorPart);
76
+ }
77
+ if (originalEditor) {
78
+ const originalDiffEditorPart = this.injector.get(base_editor_wrapper_1.DiffEditorPart, [
79
+ originalEditor.editor,
80
+ () => originalInstance,
81
+ editor_1.EditorType.ORIGINAL_DIFF,
82
+ ]);
83
+ editors.push(originalDiffEditorPart);
84
+ }
85
+ this.editorCollectionService.addEditors(editors);
86
+ }
87
+ async compareMultiple(editor, resource, options) {
64
88
  var _a, _b;
65
89
  // Save current view state before changing
66
90
  if (this.currentUri) {
@@ -71,8 +95,7 @@ let BrowserMultiDiffEditor = class BrowserMultiDiffEditor extends ide_core_commo
71
95
  : await this.multiDiffSourceResolverService.resolve(resource.uri);
72
96
  const resources = source ? (0, observable_1.observableFromValueWithChangeEvent)(this, source.resources) : (0, observable_1.constObservable)([]);
73
97
  const documentsWithPromises = (0, observable_1.mapObservableArrayCached)(this, resources, async (r, store) => {
74
- var _a;
75
- /** @description documentsWithPromises */
98
+ var _a, _b;
76
99
  let original;
77
100
  let modified;
78
101
  const multiDiffItemStore = new ide_core_common_1.DisposableStore();
@@ -99,9 +122,11 @@ let BrowserMultiDiffEditor = class BrowserMultiDiffEditor extends ide_core_commo
99
122
  multiDiffEditorItem: r,
100
123
  original: original === null || original === void 0 ? void 0 : original.instance.getMonacoModel(),
101
124
  modified: modified === null || modified === void 0 ? void 0 : modified.instance.getMonacoModel(),
125
+ originalInstance: original === null || original === void 0 ? void 0 : original.instance,
126
+ modifiedInstance: modified === null || modified === void 0 ? void 0 : modified.instance,
102
127
  contextKeys: r.contextKeys,
103
128
  options: {
104
- readOnly: modified === null || modified === void 0 ? void 0 : modified.instance.readonly,
129
+ readOnly: (_b = (modified || original)) === null || _b === void 0 ? void 0 : _b.instance.readonly,
105
130
  // TODO: codelens,wordWrap options
106
131
  ...this.convertedOptions.diffOptions,
107
132
  },
@@ -116,7 +141,6 @@ let BrowserMultiDiffEditor = class BrowserMultiDiffEditor extends ide_core_commo
116
141
  }, (i) => { var _a, _b; return JSON.stringify([(_a = i.modifiedUri) === null || _a === void 0 ? void 0 : _a.toString(), (_b = i.originalUri) === null || _b === void 0 ? void 0 : _b.toString()]); });
117
142
  const documents = (0, observable_1.observableValue)('documents', 'loading');
118
143
  const updateDocuments = (0, observable_1.derived)(async (reader) => {
119
- /** @description Update documents */
120
144
  const docsPromises = documentsWithPromises.read(reader);
121
145
  const docs = await Promise.all(docsPromises);
122
146
  const newDocuments = docs.filter((item) => item !== undefined);
@@ -133,9 +157,36 @@ let BrowserMultiDiffEditor = class BrowserMultiDiffEditor extends ide_core_commo
133
157
  const viewModel = this.multiDiffWidget.createViewModel(this.multiDiffModel);
134
158
  await viewModel.waitForDiffs();
135
159
  this.multiDiffWidget.setViewModel(viewModel);
160
+ this.multiDiffWidget.getActiveControl();
136
161
  // Update current URI and restore view state
137
162
  this.currentUri = resource.uri;
138
163
  this.restoreViewState(resource.uri);
164
+ const documentRefs = documents.get();
165
+ for (const ref of documentRefs) {
166
+ if ((0, ide_core_common_1.isString)(ref)) {
167
+ continue;
168
+ }
169
+ const modified = ref.object.modified;
170
+ const original = ref.object.original;
171
+ if (!modified && !original) {
172
+ continue;
173
+ }
174
+ let modifiedEditor = modified ? this.multiDiffWidget.tryGetCodeEditor(modified.uri) : undefined;
175
+ let originalEditor = original ? this.multiDiffWidget.tryGetCodeEditor(original.uri) : undefined;
176
+ if (!modifiedEditor && !originalEditor) {
177
+ const editor = modified || original;
178
+ if (!editor) {
179
+ continue;
180
+ }
181
+ ide_core_common_1.Event.once(ide_core_common_1.Event.any(editor.onDidChangeDecorations))(() => {
182
+ modifiedEditor = modified ? this.multiDiffWidget.tryGetCodeEditor(modified.uri) : undefined;
183
+ originalEditor = original ? this.multiDiffWidget.tryGetCodeEditor(original.uri) : undefined;
184
+ this.createAndRegisterEditorParts(modifiedEditor, originalEditor, ref.object.modifiedInstance, ref.object.originalInstance);
185
+ });
186
+ continue;
187
+ }
188
+ this.createAndRegisterEditorParts(modifiedEditor, originalEditor, ref.object.modifiedInstance, ref.object.originalInstance);
189
+ }
139
190
  this.multiDiffModelChangeEmitter.fire(this.multiDiffModel);
140
191
  }
141
192
  getDiffEntry(uri) {
@@ -240,6 +291,6 @@ tslib_1.__decorate([
240
291
  ], BrowserMultiDiffEditor.prototype, "onDocModelContentChangedEvent", null);
241
292
  exports.BrowserMultiDiffEditor = BrowserMultiDiffEditor = tslib_1.__decorate([
242
293
  (0, di_1.Injectable)({ multiple: true }),
243
- tslib_1.__metadata("design:paramtypes", [multiDiffEditorWidget_1.MultiDiffEditorWidget, Object])
294
+ tslib_1.__metadata("design:paramtypes", [multiDiffEditorWidget_1.MultiDiffEditorWidget, Object, Function])
244
295
  ], BrowserMultiDiffEditor);
245
296
  //# sourceMappingURL=multi-diff-editor.js.map