@codingame/monaco-vscode-views-service-override 2.1.3 → 2.2.0-next.1

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 (108) hide show
  1. package/index.d.ts +11 -9
  2. package/index.js +8 -6
  3. package/package.json +11 -11
  4. package/tools/editor.js +3 -1
  5. package/tools/views.d.ts +102 -0
  6. package/tools/views.js +253 -0
  7. package/views.d.ts +4 -99
  8. package/views.js +52 -280
  9. package/external/rollup-plugin-styles/dist/runtime/inject-css.js +0 -3
  10. package/vscode/src/vs/base/browser/ui/centered/centeredViewLayout.js +0 -180
  11. package/vscode/src/vs/base/browser/ui/grid/grid.js +0 -494
  12. package/vscode/src/vs/base/browser/ui/grid/gridview.css.js +0 -6
  13. package/vscode/src/vs/base/browser/ui/grid/gridview.js +0 -1112
  14. package/vscode/src/vs/base/common/codicons.d.ts +0 -579
  15. package/vscode/src/vs/platform/webview/common/mimeTypes.js +0 -24
  16. package/vscode/src/vs/platform/webview/common/webviewPortMapping.js +0 -64
  17. package/vscode/src/vs/workbench/api/browser/viewsExtensionPoint.js +0 -790
  18. package/vscode/src/vs/workbench/browser/actions/listCommands.js +0 -764
  19. package/vscode/src/vs/workbench/browser/layout.d.ts +0 -26
  20. package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.js +0 -612
  21. package/vscode/src/vs/workbench/browser/parts/activitybar/media/activityaction.css.js +0 -6
  22. package/vscode/src/vs/workbench/browser/parts/activitybar/media/activitybarpart.css.js +0 -6
  23. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarPart.js +0 -150
  24. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/media/auxiliaryBarPart.css.js +0 -6
  25. package/vscode/src/vs/workbench/browser/parts/compositeBar.js +0 -605
  26. package/vscode/src/vs/workbench/browser/parts/compositePart.js +0 -335
  27. package/vscode/src/vs/workbench/browser/parts/editor/auxiliaryEditorPart.js +0 -223
  28. package/vscode/src/vs/workbench/browser/parts/editor/editor.contribution.js +0 -1407
  29. package/vscode/src/vs/workbench/browser/parts/editor/editorConfiguration.js +0 -186
  30. package/vscode/src/vs/workbench/browser/parts/editor/editorDropTarget.js +0 -511
  31. package/vscode/src/vs/workbench/browser/parts/editor/editorPane.d.ts +0 -112
  32. package/vscode/src/vs/workbench/browser/parts/editor/editorPart.js +0 -1020
  33. package/vscode/src/vs/workbench/browser/parts/editor/editorParts.js +0 -391
  34. package/vscode/src/vs/workbench/browser/parts/editor/media/editordroptarget.css.js +0 -6
  35. package/vscode/src/vs/workbench/browser/parts/media/compositepart.css.js +0 -6
  36. package/vscode/src/vs/workbench/browser/parts/media/paneCompositePart.css.js +0 -6
  37. package/vscode/src/vs/workbench/browser/parts/paneCompositeBar.js +0 -645
  38. package/vscode/src/vs/workbench/browser/parts/paneCompositePart.js +0 -379
  39. package/vscode/src/vs/workbench/browser/parts/paneCompositePartService.js +0 -68
  40. package/vscode/src/vs/workbench/browser/parts/panel/panelPart.js +0 -146
  41. package/vscode/src/vs/workbench/browser/parts/sidebar/media/sidebarpart.css.js +0 -6
  42. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.js +0 -222
  43. package/vscode/src/vs/workbench/contrib/callHierarchy/browser/callHierarchy.contribution.js +0 -299
  44. package/vscode/src/vs/workbench/contrib/callHierarchy/browser/callHierarchyPeek.js +0 -365
  45. package/vscode/src/vs/workbench/contrib/callHierarchy/browser/callHierarchyTree.js +0 -135
  46. package/vscode/src/vs/workbench/contrib/callHierarchy/browser/media/callHierarchy.css.js +0 -6
  47. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditor.contribution.js +0 -17
  48. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInputFactory.js +0 -145
  49. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditors.js +0 -214
  50. package/vscode/src/vs/workbench/contrib/customEditor/browser/media/customEditor.css.js +0 -6
  51. package/vscode/src/vs/workbench/contrib/customEditor/common/contributedCustomEditors.js +0 -78
  52. package/vscode/src/vs/workbench/contrib/customEditor/common/customEditorModelManager.js +0 -63
  53. package/vscode/src/vs/workbench/contrib/customEditor/common/extensionPoint.js +0 -119
  54. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/externalUriOpener.contribution.js +0 -6
  55. package/vscode/src/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +0 -79
  56. package/vscode/src/vs/workbench/contrib/files/browser/editors/fileEditorHandler.js +0 -74
  57. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditor.js +0 -256
  58. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditorTracker.js +0 -99
  59. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +0 -444
  60. package/vscode/src/vs/workbench/contrib/files/browser/explorerService.js +0 -432
  61. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.contribution.js +0 -786
  62. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands.js +0 -488
  63. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution.js +0 -522
  64. package/vscode/src/vs/workbench/contrib/files/browser/workspaceWatcher.js +0 -152
  65. package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +0 -63
  66. package/vscode/src/vs/workbench/contrib/languageStatus/browser/languageStatus.contribution.js +0 -409
  67. package/vscode/src/vs/workbench/contrib/languageStatus/browser/media/languageStatus.css.js +0 -6
  68. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/commands/commands.js +0 -693
  69. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/commands/devCommands.js +0 -240
  70. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditor.contribution.js +0 -77
  71. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorSerializer.js +0 -42
  72. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/colors.js +0 -71
  73. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/conflictActions.js +0 -348
  74. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editorGutter.js +0 -98
  75. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editors/baseCodeEditorView.js +0 -146
  76. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editors/codeEditorView.js +0 -105
  77. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editors/inputCodeEditorView.js +0 -401
  78. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editors/resultCodeEditorView.js +0 -197
  79. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/fixedZoneWidget.js +0 -41
  80. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/lineAlignment.js +0 -128
  81. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/media/mergeEditor.css.js +0 -6
  82. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/mergeEditor.js +0 -612
  83. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/scrollSynchronizer.js +0 -158
  84. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/viewModel.js +0 -264
  85. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/viewZones.js +0 -173
  86. package/vscode/src/vs/workbench/contrib/typeHierarchy/browser/media/typeHierarchy.css.js +0 -6
  87. package/vscode/src/vs/workbench/contrib/typeHierarchy/browser/typeHierarchy.contribution.js +0 -282
  88. package/vscode/src/vs/workbench/contrib/typeHierarchy/browser/typeHierarchyPeek.js +0 -360
  89. package/vscode/src/vs/workbench/contrib/typeHierarchy/browser/typeHierarchyTree.js +0 -133
  90. package/vscode/src/vs/workbench/contrib/webview/browser/overlayWebview.js +0 -290
  91. package/vscode/src/vs/workbench/contrib/webview/browser/resourceLoading.js +0 -96
  92. package/vscode/src/vs/workbench/contrib/webview/browser/themeing.js +0 -88
  93. package/vscode/src/vs/workbench/contrib/webview/browser/webview.contribution.js +0 -79
  94. package/vscode/src/vs/workbench/contrib/webview/browser/webviewElement.js +0 -648
  95. package/vscode/src/vs/workbench/contrib/webview/browser/webviewFindWidget.js +0 -65
  96. package/vscode/src/vs/workbench/contrib/webview/browser/webviewService.js +0 -59
  97. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewCommands.js +0 -142
  98. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditorInputSerializer.js +0 -121
  99. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewPanel.contribution.js +0 -68
  100. package/vscode/src/vs/workbench/contrib/webviewView/browser/webviewViewPane.js +0 -235
  101. package/vscode/src/vs/workbench/services/activity/browser/activityService.js +0 -145
  102. package/vscode/src/vs/workbench/services/editor/browser/editorResolverService.js +0 -670
  103. package/vscode/src/vs/workbench/services/history/browser/historyService.js +0 -1484
  104. package/vscode/src/vs/workbench/services/progress/browser/media/progressService.css.js +0 -6
  105. package/vscode/src/vs/workbench/services/progress/browser/progressService.js +0 -523
  106. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorHandler.js +0 -101
  107. package/vscode/src/vs/workbench/services/views/browser/viewDescriptorService.js +0 -713
  108. package/vscode/src/vs/workbench/services/views/common/viewContainerModel.js +0 -598
@@ -1,158 +0,0 @@
1
- import { Disposable } from 'vscode/vscode/vs/base/common/lifecycle';
2
- import { DocumentLineRangeMap } from 'vscode/vscode/vs/workbench/contrib/mergeEditor/browser/model/mapping';
3
- import { ReentrancyBarrier } from 'vscode/vscode/vs/workbench/contrib/mergeEditor/browser/utils';
4
- import { autorunWithStore } from 'vscode/vscode/vs/base/common/observableInternal/autorun';
5
-
6
- class ScrollSynchronizer extends Disposable {
7
- get model() { return this.viewModel.get()?.model; }
8
- get shouldAlignResult() { return this.layout.get().kind === 'columns'; }
9
- get shouldAlignBase() { return this.layout.get().kind === 'mixed' && !this.layout.get().showBaseAtTop; }
10
- constructor(viewModel, input1View, input2View, baseView, inputResultView, layout) {
11
- super();
12
- this.viewModel = viewModel;
13
- this.input1View = input1View;
14
- this.input2View = input2View;
15
- this.baseView = baseView;
16
- this.inputResultView = inputResultView;
17
- this.layout = layout;
18
- this.reentrancyBarrier = ( new ReentrancyBarrier());
19
- const handleInput1OnScroll = this.updateScrolling = () => {
20
- if (!this.model) {
21
- return;
22
- }
23
- this.input2View.editor.setScrollTop(this.input1View.editor.getScrollTop(), 1 );
24
- if (this.shouldAlignResult) {
25
- this.inputResultView.editor.setScrollTop(this.input1View.editor.getScrollTop(), 1 );
26
- }
27
- else {
28
- const mappingInput1Result = this.model.input1ResultMapping.get();
29
- this.synchronizeScrolling(this.input1View.editor, this.inputResultView.editor, mappingInput1Result);
30
- }
31
- const baseView = this.baseView.get();
32
- if (baseView) {
33
- if (this.shouldAlignBase) {
34
- this.baseView.get()?.editor.setScrollTop(this.input1View.editor.getScrollTop(), 1 );
35
- }
36
- else {
37
- const mapping = ( new DocumentLineRangeMap(this.model.baseInput1Diffs.get(), -1)).reverse();
38
- this.synchronizeScrolling(this.input1View.editor, baseView.editor, mapping);
39
- }
40
- }
41
- };
42
- this._store.add(this.input1View.editor.onDidScrollChange(this.reentrancyBarrier.makeExclusive((c) => {
43
- if (c.scrollTopChanged) {
44
- handleInput1OnScroll();
45
- }
46
- if (c.scrollLeftChanged) {
47
- this.baseView.get()?.editor.setScrollLeft(c.scrollLeft, 1 );
48
- this.input2View.editor.setScrollLeft(c.scrollLeft, 1 );
49
- this.inputResultView.editor.setScrollLeft(c.scrollLeft, 1 );
50
- }
51
- })));
52
- this._store.add(this.input2View.editor.onDidScrollChange(this.reentrancyBarrier.makeExclusive((c) => {
53
- if (!this.model) {
54
- return;
55
- }
56
- if (c.scrollTopChanged) {
57
- this.input1View.editor.setScrollTop(c.scrollTop, 1 );
58
- if (this.shouldAlignResult) {
59
- this.inputResultView.editor.setScrollTop(this.input2View.editor.getScrollTop(), 1 );
60
- }
61
- else {
62
- const mappingInput2Result = this.model.input2ResultMapping.get();
63
- this.synchronizeScrolling(this.input2View.editor, this.inputResultView.editor, mappingInput2Result);
64
- }
65
- const baseView = this.baseView.get();
66
- if (baseView && this.model) {
67
- if (this.shouldAlignBase) {
68
- this.baseView.get()?.editor.setScrollTop(c.scrollTop, 1 );
69
- }
70
- else {
71
- const mapping = ( new DocumentLineRangeMap(this.model.baseInput2Diffs.get(), -1)).reverse();
72
- this.synchronizeScrolling(this.input2View.editor, baseView.editor, mapping);
73
- }
74
- }
75
- }
76
- if (c.scrollLeftChanged) {
77
- this.baseView.get()?.editor.setScrollLeft(c.scrollLeft, 1 );
78
- this.input1View.editor.setScrollLeft(c.scrollLeft, 1 );
79
- this.inputResultView.editor.setScrollLeft(c.scrollLeft, 1 );
80
- }
81
- })));
82
- this._store.add(this.inputResultView.editor.onDidScrollChange(this.reentrancyBarrier.makeExclusive((c) => {
83
- if (c.scrollTopChanged) {
84
- if (this.shouldAlignResult) {
85
- this.input1View.editor.setScrollTop(c.scrollTop, 1 );
86
- this.input2View.editor.setScrollTop(c.scrollTop, 1 );
87
- }
88
- else {
89
- const mapping1 = this.model?.resultInput1Mapping.get();
90
- this.synchronizeScrolling(this.inputResultView.editor, this.input1View.editor, mapping1);
91
- const mapping2 = this.model?.resultInput2Mapping.get();
92
- this.synchronizeScrolling(this.inputResultView.editor, this.input2View.editor, mapping2);
93
- }
94
- const baseMapping = this.model?.resultBaseMapping.get();
95
- const baseView = this.baseView.get();
96
- if (baseView && this.model) {
97
- this.synchronizeScrolling(this.inputResultView.editor, baseView.editor, baseMapping);
98
- }
99
- }
100
- if (c.scrollLeftChanged) {
101
- this.baseView.get()?.editor?.setScrollLeft(c.scrollLeft, 1 );
102
- this.input1View.editor.setScrollLeft(c.scrollLeft, 1 );
103
- this.input2View.editor.setScrollLeft(c.scrollLeft, 1 );
104
- }
105
- })));
106
- this._store.add(autorunWithStore((reader, store) => {
107
- const baseView = this.baseView.read(reader);
108
- if (baseView) {
109
- store.add(baseView.editor.onDidScrollChange(this.reentrancyBarrier.makeExclusive((c) => {
110
- if (c.scrollTopChanged) {
111
- if (!this.model) {
112
- return;
113
- }
114
- if (this.shouldAlignBase) {
115
- this.input1View.editor.setScrollTop(c.scrollTop, 1 );
116
- this.input2View.editor.setScrollTop(c.scrollTop, 1 );
117
- }
118
- else {
119
- const baseInput1Mapping = ( new DocumentLineRangeMap(this.model.baseInput1Diffs.get(), -1));
120
- this.synchronizeScrolling(baseView.editor, this.input1View.editor, baseInput1Mapping);
121
- const baseInput2Mapping = ( new DocumentLineRangeMap(this.model.baseInput2Diffs.get(), -1));
122
- this.synchronizeScrolling(baseView.editor, this.input2View.editor, baseInput2Mapping);
123
- }
124
- const baseMapping = this.model?.baseResultMapping.get();
125
- this.synchronizeScrolling(baseView.editor, this.inputResultView.editor, baseMapping);
126
- }
127
- if (c.scrollLeftChanged) {
128
- this.inputResultView.editor.setScrollLeft(c.scrollLeft, 1 );
129
- this.input1View.editor.setScrollLeft(c.scrollLeft, 1 );
130
- this.input2View.editor.setScrollLeft(c.scrollLeft, 1 );
131
- }
132
- })));
133
- }
134
- }));
135
- }
136
- synchronizeScrolling(scrollingEditor, targetEditor, mapping) {
137
- if (!mapping) {
138
- return;
139
- }
140
- const visibleRanges = scrollingEditor.getVisibleRanges();
141
- if (visibleRanges.length === 0) {
142
- return;
143
- }
144
- const topLineNumber = visibleRanges[0].startLineNumber - 1;
145
- const result = mapping.project(topLineNumber);
146
- const sourceRange = result.inputRange;
147
- const targetRange = result.outputRange;
148
- const resultStartTopPx = targetEditor.getTopForLineNumber(targetRange.startLineNumber);
149
- const resultEndPx = targetEditor.getTopForLineNumber(targetRange.endLineNumberExclusive);
150
- const sourceStartTopPx = scrollingEditor.getTopForLineNumber(sourceRange.startLineNumber);
151
- const sourceEndPx = scrollingEditor.getTopForLineNumber(sourceRange.endLineNumberExclusive);
152
- const factor = Math.min((scrollingEditor.getScrollTop() - sourceStartTopPx) / (sourceEndPx - sourceStartTopPx), 1);
153
- const resultScrollPosition = resultStartTopPx + (resultEndPx - resultStartTopPx) * factor;
154
- targetEditor.setScrollTop(resultScrollPosition, 1 );
155
- }
156
- }
157
-
158
- export { ScrollSynchronizer };
@@ -1,264 +0,0 @@
1
- import { __decorate, __param } from '../../../../../../../../external/tslib/tslib.es6.js';
2
- import { findLast } from 'vscode/vscode/vs/base/common/arraysFind';
3
- import { Disposable } from 'vscode/vscode/vs/base/common/lifecycle';
4
- import { Range } from 'vscode/vscode/vs/editor/common/core/range';
5
- import { localizeWithPath } from 'vscode/vscode/vs/nls';
6
- import { IConfigurationService } from 'vscode/vscode/vs/platform/configuration/common/configuration';
7
- import { INotificationService } from 'vscode/vscode/vs/platform/notification/common/notification';
8
- import { LineRange } from 'vscode/vscode/vs/workbench/contrib/mergeEditor/browser/model/lineRange';
9
- import { observableConfigValue } from 'vscode/vscode/vs/workbench/contrib/mergeEditor/browser/utils';
10
- import { observableValue, transaction } from 'vscode/vscode/vs/base/common/observableInternal/base';
11
- import { derivedObservableWithWritableCache } from 'vscode/vscode/vs/base/common/observableInternal/utils';
12
- import { derived } from 'vscode/vscode/vs/base/common/observableInternal/derived';
13
-
14
- let MergeEditorViewModel = class MergeEditorViewModel extends Disposable {
15
- constructor(model, inputCodeEditorView1, inputCodeEditorView2, resultCodeEditorView, baseCodeEditorView, showNonConflictingChanges, configurationService, notificationService) {
16
- super();
17
- this.model = model;
18
- this.inputCodeEditorView1 = inputCodeEditorView1;
19
- this.inputCodeEditorView2 = inputCodeEditorView2;
20
- this.resultCodeEditorView = resultCodeEditorView;
21
- this.baseCodeEditorView = baseCodeEditorView;
22
- this.showNonConflictingChanges = showNonConflictingChanges;
23
- this.configurationService = configurationService;
24
- this.notificationService = notificationService;
25
- this.manuallySetActiveModifiedBaseRange = observableValue(this, { range: undefined, counter: 0 });
26
- this.attachedHistory = this._register(( new AttachedHistory(this.model.resultTextModel)));
27
- this.shouldUseAppendInsteadOfAccept = observableConfigValue('mergeEditor.shouldUseAppendInsteadOfAccept', false, this.configurationService);
28
- this.counter = 0;
29
- this.lastFocusedEditor = derivedObservableWithWritableCache(this, (reader, lastValue) => {
30
- const editors = [
31
- this.inputCodeEditorView1,
32
- this.inputCodeEditorView2,
33
- this.resultCodeEditorView,
34
- this.baseCodeEditorView.read(reader),
35
- ];
36
- const view = editors.find((e) => e && e.isFocused.read(reader));
37
- return view ? { view, counter: this.counter++ } : lastValue || { view: undefined, counter: this.counter++ };
38
- });
39
- this.baseShowDiffAgainst = derived(this, reader => {
40
- const lastFocusedEditor = this.lastFocusedEditor.read(reader);
41
- if (lastFocusedEditor.view === this.inputCodeEditorView1) {
42
- return 1;
43
- }
44
- else if (lastFocusedEditor.view === this.inputCodeEditorView2) {
45
- return 2;
46
- }
47
- return undefined;
48
- });
49
- this.selectionInBase = derived(this, reader => {
50
- const sourceEditor = this.lastFocusedEditor.read(reader).view;
51
- if (!sourceEditor) {
52
- return undefined;
53
- }
54
- const selections = sourceEditor.selection.read(reader) || [];
55
- const rangesInBase = ( selections.map((selection) => {
56
- if (sourceEditor === this.inputCodeEditorView1) {
57
- return this.model.translateInputRangeToBase(1, selection);
58
- }
59
- else if (sourceEditor === this.inputCodeEditorView2) {
60
- return this.model.translateInputRangeToBase(2, selection);
61
- }
62
- else if (sourceEditor === this.resultCodeEditorView) {
63
- return this.model.translateResultRangeToBase(selection);
64
- }
65
- else if (sourceEditor === this.baseCodeEditorView.read(reader)) {
66
- return selection;
67
- }
68
- else {
69
- return selection;
70
- }
71
- }));
72
- return {
73
- rangesInBase,
74
- sourceEditor
75
- };
76
- });
77
- this.activeModifiedBaseRange = derived(this, (reader) => {
78
- const focusedEditor = this.lastFocusedEditor.read(reader);
79
- const manualRange = this.manuallySetActiveModifiedBaseRange.read(reader);
80
- if (manualRange.counter > focusedEditor.counter) {
81
- return manualRange.range;
82
- }
83
- if (!focusedEditor.view) {
84
- return;
85
- }
86
- const cursorLineNumber = focusedEditor.view.cursorLineNumber.read(reader);
87
- if (!cursorLineNumber) {
88
- return undefined;
89
- }
90
- const modifiedBaseRanges = this.model.modifiedBaseRanges.read(reader);
91
- return modifiedBaseRanges.find((r) => {
92
- const range = this.getRangeOfModifiedBaseRange(focusedEditor.view, r, reader);
93
- return range.isEmpty
94
- ? range.startLineNumber === cursorLineNumber
95
- : range.contains(cursorLineNumber);
96
- });
97
- });
98
- this._register(resultCodeEditorView.editor.onDidChangeModelContent(e => {
99
- if (this.model.isApplyingEditInResult || e.isRedoing || e.isUndoing) {
100
- return;
101
- }
102
- const baseRangeStates = [];
103
- for (const change of e.changes) {
104
- const rangeInBase = this.model.translateResultRangeToBase(Range.lift(change.range));
105
- const baseRanges = this.model.findModifiedBaseRangesInRange(( new LineRange(
106
- rangeInBase.startLineNumber,
107
- rangeInBase.endLineNumber - rangeInBase.startLineNumber
108
- )));
109
- if (baseRanges.length === 1) {
110
- const isHandled = this.model.isHandled(baseRanges[0]).get();
111
- if (!isHandled) {
112
- baseRangeStates.push(baseRanges[0]);
113
- }
114
- }
115
- }
116
- if (baseRangeStates.length === 0) {
117
- return;
118
- }
119
- const element = {
120
- model: this.model,
121
- redo() {
122
- transaction(tx => {
123
- for (const r of baseRangeStates) {
124
- this.model.setHandled(r, true, tx);
125
- }
126
- });
127
- },
128
- undo() {
129
- transaction(tx => {
130
- for (const r of baseRangeStates) {
131
- this.model.setHandled(r, false, tx);
132
- }
133
- });
134
- },
135
- };
136
- this.attachedHistory.pushAttachedHistoryElement(element);
137
- element.redo();
138
- }));
139
- }
140
- getRangeOfModifiedBaseRange(editor, modifiedBaseRange, reader) {
141
- if (editor === this.resultCodeEditorView) {
142
- return this.model.getLineRangeInResult(modifiedBaseRange.baseRange, reader);
143
- }
144
- else if (editor === this.baseCodeEditorView.get()) {
145
- return modifiedBaseRange.baseRange;
146
- }
147
- else {
148
- const input = editor === this.inputCodeEditorView1 ? 1 : 2;
149
- return modifiedBaseRange.getInputRange(input);
150
- }
151
- }
152
- setActiveModifiedBaseRange(range, tx) {
153
- this.manuallySetActiveModifiedBaseRange.set({ range, counter: this.counter++ }, tx);
154
- }
155
- setState(baseRange, state, tx, inputNumber) {
156
- this.manuallySetActiveModifiedBaseRange.set({ range: baseRange, counter: this.counter++ }, tx);
157
- this.model.setState(baseRange, state, inputNumber, tx);
158
- }
159
- goToConflict(getModifiedBaseRange) {
160
- let editor = this.lastFocusedEditor.get().view;
161
- if (!editor) {
162
- editor = this.resultCodeEditorView;
163
- }
164
- const curLineNumber = editor.editor.getPosition()?.lineNumber;
165
- if (curLineNumber === undefined) {
166
- return;
167
- }
168
- const modifiedBaseRange = getModifiedBaseRange(editor, curLineNumber);
169
- if (modifiedBaseRange) {
170
- const range = this.getRangeOfModifiedBaseRange(editor, modifiedBaseRange, undefined);
171
- editor.editor.focus();
172
- let startLineNumber = range.startLineNumber;
173
- let endLineNumberExclusive = range.endLineNumberExclusive;
174
- if (range.startLineNumber > editor.editor.getModel().getLineCount()) {
175
- transaction(tx => {
176
- this.setActiveModifiedBaseRange(modifiedBaseRange, tx);
177
- });
178
- startLineNumber = endLineNumberExclusive = editor.editor.getModel().getLineCount();
179
- }
180
- editor.editor.setPosition({
181
- lineNumber: startLineNumber,
182
- column: editor.editor.getModel().getLineFirstNonWhitespaceColumn(startLineNumber),
183
- });
184
- editor.editor.revealLinesNearTop(startLineNumber, endLineNumberExclusive, 0 );
185
- }
186
- }
187
- goToNextModifiedBaseRange(predicate) {
188
- this.goToConflict((e, l) => this.model.modifiedBaseRanges
189
- .get()
190
- .find((r) => predicate(r) &&
191
- this.getRangeOfModifiedBaseRange(e, r, undefined).startLineNumber > l) ||
192
- this.model.modifiedBaseRanges
193
- .get()
194
- .find((r) => predicate(r)));
195
- }
196
- goToPreviousModifiedBaseRange(predicate) {
197
- this.goToConflict((e, l) => findLast(this.model.modifiedBaseRanges.get(), (r) => predicate(r) &&
198
- this.getRangeOfModifiedBaseRange(e, r, undefined).endLineNumberExclusive < l) ||
199
- findLast(this.model.modifiedBaseRanges.get(), (r) => predicate(r)));
200
- }
201
- toggleActiveConflict(inputNumber) {
202
- const activeModifiedBaseRange = this.activeModifiedBaseRange.get();
203
- if (!activeModifiedBaseRange) {
204
- this.notificationService.error(( localizeWithPath(
205
- 'vs/workbench/contrib/mergeEditor/browser/view/viewModel',
206
- 'noConflictMessage',
207
- "There is currently no conflict focused that can be toggled."
208
- )));
209
- return;
210
- }
211
- transaction(tx => {
212
- this.setState(activeModifiedBaseRange, this.model.getState(activeModifiedBaseRange).get().toggle(inputNumber), tx, inputNumber);
213
- });
214
- }
215
- acceptAll(inputNumber) {
216
- transaction(tx => {
217
- for (const range of this.model.modifiedBaseRanges.get()) {
218
- this.setState(range, this.model.getState(range).get().withInputValue(inputNumber, true), tx, inputNumber);
219
- }
220
- });
221
- }
222
- };
223
- MergeEditorViewModel = ( __decorate([
224
- ( __param(6, IConfigurationService)),
225
- ( __param(7, INotificationService))
226
- ], MergeEditorViewModel));
227
- class AttachedHistory extends Disposable {
228
- constructor(model) {
229
- super();
230
- this.model = model;
231
- this.attachedHistory = [];
232
- this.previousAltId = this.model.getAlternativeVersionId();
233
- this._register(model.onDidChangeContent((e) => {
234
- const currentAltId = model.getAlternativeVersionId();
235
- if (e.isRedoing) {
236
- for (const item of this.attachedHistory) {
237
- if (this.previousAltId < item.altId && item.altId <= currentAltId) {
238
- item.element.redo();
239
- }
240
- }
241
- }
242
- else if (e.isUndoing) {
243
- for (let i = this.attachedHistory.length - 1; i >= 0; i--) {
244
- const item = this.attachedHistory[i];
245
- if (currentAltId < item.altId && item.altId <= this.previousAltId) {
246
- item.element.undo();
247
- }
248
- }
249
- }
250
- else {
251
- while (this.attachedHistory.length > 0
252
- && this.attachedHistory[this.attachedHistory.length - 1].altId > this.previousAltId) {
253
- this.attachedHistory.pop();
254
- }
255
- }
256
- this.previousAltId = currentAltId;
257
- }));
258
- }
259
- pushAttachedHistoryElement(element) {
260
- this.attachedHistory.push({ altId: this.model.getAlternativeVersionId(), element });
261
- }
262
- }
263
-
264
- export { MergeEditorViewModel };
@@ -1,173 +0,0 @@
1
- import { $ } from 'vscode/vscode/vs/base/browser/dom';
2
- import { CompareResult, lastOrDefault } from 'vscode/vscode/vs/base/common/arrays';
3
- import { LineRange } from 'vscode/vscode/vs/workbench/contrib/mergeEditor/browser/model/lineRange';
4
- import { join } from 'vscode/vscode/vs/workbench/contrib/mergeEditor/browser/utils';
5
- import { ConflictActionsFactory, ActionsSource } from './conflictActions.js';
6
- import { getAlignments } from './lineAlignment.js';
7
-
8
- class ViewZoneComputer {
9
- constructor(input1Editor, input2Editor, resultEditor) {
10
- this.input1Editor = input1Editor;
11
- this.input2Editor = input2Editor;
12
- this.resultEditor = resultEditor;
13
- this.conflictActionsFactoryInput1 = ( new ConflictActionsFactory(this.input1Editor));
14
- this.conflictActionsFactoryInput2 = ( new ConflictActionsFactory(this.input2Editor));
15
- this.conflictActionsFactoryResult = ( new ConflictActionsFactory(this.resultEditor));
16
- }
17
- computeViewZones(reader, viewModel, options) {
18
- let input1LinesAdded = 0;
19
- let input2LinesAdded = 0;
20
- let baseLinesAdded = 0;
21
- let resultLinesAdded = 0;
22
- const input1ViewZones = [];
23
- const input2ViewZones = [];
24
- const baseViewZones = [];
25
- const resultViewZones = [];
26
- const model = viewModel.model;
27
- const resultDiffs = model.baseResultDiffs.read(reader);
28
- const baseRangeWithStoreAndTouchingDiffs = join(model.modifiedBaseRanges.read(reader), resultDiffs, (baseRange, diff) => baseRange.baseRange.touches(diff.inputRange)
29
- ? CompareResult.neitherLessOrGreaterThan
30
- : LineRange.compareByStart(baseRange.baseRange, diff.inputRange));
31
- const shouldShowCodeLenses = options.codeLensesVisible;
32
- const showNonConflictingChanges = options.showNonConflictingChanges;
33
- let lastModifiedBaseRange = undefined;
34
- let lastBaseResultDiff = undefined;
35
- for (const m of baseRangeWithStoreAndTouchingDiffs) {
36
- if (shouldShowCodeLenses && m.left && (m.left.isConflicting || showNonConflictingChanges || !model.isHandled(m.left).read(reader))) {
37
- const actions = ( new ActionsSource(viewModel, m.left));
38
- if (options.shouldAlignResult || !actions.inputIsEmpty.read(reader)) {
39
- input1ViewZones.push(( new CommandViewZone(
40
- this.conflictActionsFactoryInput1,
41
- m.left.input1Range.startLineNumber - 1,
42
- actions.itemsInput1
43
- )));
44
- input2ViewZones.push(( new CommandViewZone(
45
- this.conflictActionsFactoryInput2,
46
- m.left.input2Range.startLineNumber - 1,
47
- actions.itemsInput2
48
- )));
49
- if (options.shouldAlignBase) {
50
- baseViewZones.push(( new Placeholder(m.left.baseRange.startLineNumber - 1, 16)));
51
- }
52
- }
53
- const afterLineNumber = m.left.baseRange.startLineNumber + (lastBaseResultDiff?.resultingDeltaFromOriginalToModified ?? 0) - 1;
54
- resultViewZones.push(( new CommandViewZone(this.conflictActionsFactoryResult, afterLineNumber, actions.resultItems)));
55
- }
56
- const lastResultDiff = lastOrDefault(m.rights);
57
- if (lastResultDiff) {
58
- lastBaseResultDiff = lastResultDiff;
59
- }
60
- let alignedLines;
61
- if (m.left) {
62
- alignedLines = ( getAlignments(m.left).map(a => ({
63
- input1Line: a[0],
64
- baseLine: a[1],
65
- input2Line: a[2],
66
- resultLine: undefined,
67
- })));
68
- lastModifiedBaseRange = m.left;
69
- alignedLines[alignedLines.length - 1].resultLine =
70
- m.left.baseRange.endLineNumberExclusive
71
- + (lastBaseResultDiff ? lastBaseResultDiff.resultingDeltaFromOriginalToModified : 0);
72
- }
73
- else {
74
- alignedLines = [{
75
- baseLine: lastResultDiff.inputRange.endLineNumberExclusive,
76
- input1Line: lastResultDiff.inputRange.endLineNumberExclusive + (lastModifiedBaseRange ? (lastModifiedBaseRange.input1Range.endLineNumberExclusive - lastModifiedBaseRange.baseRange.endLineNumberExclusive) : 0),
77
- input2Line: lastResultDiff.inputRange.endLineNumberExclusive + (lastModifiedBaseRange ? (lastModifiedBaseRange.input2Range.endLineNumberExclusive - lastModifiedBaseRange.baseRange.endLineNumberExclusive) : 0),
78
- resultLine: lastResultDiff.outputRange.endLineNumberExclusive,
79
- }];
80
- }
81
- for (const { input1Line, baseLine, input2Line, resultLine } of alignedLines) {
82
- if (!options.shouldAlignBase && (input1Line === undefined || input2Line === undefined)) {
83
- continue;
84
- }
85
- const input1Line_ = input1Line !== undefined ? input1Line + input1LinesAdded : -1;
86
- const input2Line_ = input2Line !== undefined ? input2Line + input2LinesAdded : -1;
87
- const baseLine_ = baseLine + baseLinesAdded;
88
- const resultLine_ = resultLine !== undefined ? resultLine + resultLinesAdded : -1;
89
- const max = Math.max(options.shouldAlignBase ? baseLine_ : 0, input1Line_, input2Line_, options.shouldAlignResult ? resultLine_ : 0);
90
- if (input1Line !== undefined) {
91
- const diffInput1 = max - input1Line_;
92
- if (diffInput1 > 0) {
93
- input1ViewZones.push(( new Spacer(input1Line - 1, diffInput1)));
94
- input1LinesAdded += diffInput1;
95
- }
96
- }
97
- if (input2Line !== undefined) {
98
- const diffInput2 = max - input2Line_;
99
- if (diffInput2 > 0) {
100
- input2ViewZones.push(( new Spacer(input2Line - 1, diffInput2)));
101
- input2LinesAdded += diffInput2;
102
- }
103
- }
104
- if (options.shouldAlignBase) {
105
- const diffBase = max - baseLine_;
106
- if (diffBase > 0) {
107
- baseViewZones.push(( new Spacer(baseLine - 1, diffBase)));
108
- baseLinesAdded += diffBase;
109
- }
110
- }
111
- if (options.shouldAlignResult && resultLine !== undefined) {
112
- const diffResult = max - resultLine_;
113
- if (diffResult > 0) {
114
- resultViewZones.push(( new Spacer(resultLine - 1, diffResult)));
115
- resultLinesAdded += diffResult;
116
- }
117
- }
118
- }
119
- }
120
- return ( new MergeEditorViewZones(input1ViewZones, input2ViewZones, baseViewZones, resultViewZones));
121
- }
122
- }
123
- class MergeEditorViewZones {
124
- constructor(input1ViewZones, input2ViewZones, baseViewZones, resultViewZones) {
125
- this.input1ViewZones = input1ViewZones;
126
- this.input2ViewZones = input2ViewZones;
127
- this.baseViewZones = baseViewZones;
128
- this.resultViewZones = resultViewZones;
129
- }
130
- }
131
- class MergeEditorViewZone {
132
- }
133
- class Spacer extends MergeEditorViewZone {
134
- constructor(afterLineNumber, heightInLines) {
135
- super();
136
- this.afterLineNumber = afterLineNumber;
137
- this.heightInLines = heightInLines;
138
- }
139
- create(viewZoneChangeAccessor, viewZoneIdsToCleanUp, disposableStore) {
140
- viewZoneIdsToCleanUp.push(viewZoneChangeAccessor.addZone({
141
- afterLineNumber: this.afterLineNumber,
142
- heightInLines: this.heightInLines,
143
- domNode: $('div.diagonal-fill'),
144
- }));
145
- }
146
- }
147
- class Placeholder extends MergeEditorViewZone {
148
- constructor(afterLineNumber, heightPx) {
149
- super();
150
- this.afterLineNumber = afterLineNumber;
151
- this.heightPx = heightPx;
152
- }
153
- create(viewZoneChangeAccessor, viewZoneIdsToCleanUp, disposableStore) {
154
- viewZoneIdsToCleanUp.push(viewZoneChangeAccessor.addZone({
155
- afterLineNumber: this.afterLineNumber,
156
- heightInPx: this.heightPx,
157
- domNode: $('div.conflict-actions-placeholder'),
158
- }));
159
- }
160
- }
161
- class CommandViewZone extends MergeEditorViewZone {
162
- constructor(conflictActionsFactory, lineNumber, items) {
163
- super();
164
- this.conflictActionsFactory = conflictActionsFactory;
165
- this.lineNumber = lineNumber;
166
- this.items = items;
167
- }
168
- create(viewZoneChangeAccessor, viewZoneIdsToCleanUp, disposableStore) {
169
- disposableStore.add(this.conflictActionsFactory.createWidget(viewZoneChangeAccessor, this.lineNumber, this.items, viewZoneIdsToCleanUp));
170
- }
171
- }
172
-
173
- export { MergeEditorViewZone, MergeEditorViewZones, ViewZoneComputer };
@@ -1,6 +0,0 @@
1
- import n from '../../../../../../../../external/rollup-plugin-styles/dist/runtime/inject-css.js';
2
-
3
- var css = ".monaco-workbench .type-hierarchy .message,.monaco-workbench .type-hierarchy .results{display:none}.monaco-workbench .type-hierarchy[data-state=data] .results{display:inherit;height:100%}.monaco-workbench .type-hierarchy[data-state=message] .message{align-items:center;display:flex;height:100%;justify-content:center}.monaco-workbench .type-hierarchy .editor,.monaco-workbench .type-hierarchy .tree{height:100%}.monaco-editor .type-hierarchy .tree{background-color:var(--vscode-peekViewResult-background);color:var(--vscode-peekViewResult-fileForeground)}.monaco-editor .type-hierarchy .tree .monaco-list:focus .monaco-list-rows>.monaco-list-row.selected:not(.highlighted){background-color:var(--vscode-peekViewResult-selectionBackground);color:var(--vscode-peekViewResult-selectionForeground)!important}.monaco-workbench .type-hierarchy .tree .typehierarchy-element{align-items:center;display:flex;flex:1;flex-flow:row nowrap}.monaco-workbench .type-hierarchy .tree .typehierarchy-element .monaco-icon-label{padding-left:4px}.monaco-editor .type-hierarchy .type-decoration{background-color:var(--vscode-peekViewEditor-matchHighlightBackground);border:2px solid var(--vscode-peekViewEditor-matchHighlightBorder);box-sizing:border-box}.monaco-editor .type-hierarchy .editor .monaco-editor .inputarea.ime-input,.monaco-editor .type-hierarchy .editor .monaco-editor .monaco-editor-background{background-color:var(--vscode-peekViewEditor-background)}.monaco-editor .type-hierarchy .editor .monaco-editor .margin{background-color:var(--vscode-peekViewEditorGutter-background)}";
4
- n(css,{});
5
-
6
- export { css, css as default };