@theia/scm 1.67.0-next.13 → 1.67.0-next.56
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.
- package/README.md +1 -1
- package/package.json +6 -6
- package/lib/browser/decorations/scm-decorations-service.d.ts +0 -21
- package/lib/browser/decorations/scm-decorations-service.d.ts.map +0 -1
- package/lib/browser/decorations/scm-decorations-service.js +0 -134
- package/lib/browser/decorations/scm-decorations-service.js.map +0 -1
- package/lib/browser/decorations/scm-navigator-decorator.d.ts +0 -26
- package/lib/browser/decorations/scm-navigator-decorator.d.ts.map +0 -1
- package/lib/browser/decorations/scm-navigator-decorator.js +0 -122
- package/lib/browser/decorations/scm-navigator-decorator.js.map +0 -1
- package/lib/browser/dirty-diff/content-lines.d.ts +0 -15
- package/lib/browser/dirty-diff/content-lines.d.ts.map +0 -1
- package/lib/browser/dirty-diff/content-lines.js +0 -114
- package/lib/browser/dirty-diff/content-lines.js.map +0 -1
- package/lib/browser/dirty-diff/content-lines.spec.d.ts +0 -2
- package/lib/browser/dirty-diff/content-lines.spec.d.ts.map +0 -1
- package/lib/browser/dirty-diff/content-lines.spec.js +0 -40
- package/lib/browser/dirty-diff/content-lines.spec.js.map +0 -1
- package/lib/browser/dirty-diff/diff-computer.d.ts +0 -39
- package/lib/browser/dirty-diff/diff-computer.d.ts.map +0 -1
- package/lib/browser/dirty-diff/diff-computer.js +0 -167
- package/lib/browser/dirty-diff/diff-computer.js.map +0 -1
- package/lib/browser/dirty-diff/diff-computer.spec.d.ts +0 -2
- package/lib/browser/dirty-diff/diff-computer.spec.d.ts.map +0 -1
- package/lib/browser/dirty-diff/diff-computer.spec.js +0 -384
- package/lib/browser/dirty-diff/diff-computer.spec.js.map +0 -1
- package/lib/browser/dirty-diff/dirty-diff-decorator.d.ts +0 -17
- package/lib/browser/dirty-diff/dirty-diff-decorator.d.ts.map +0 -1
- package/lib/browser/dirty-diff/dirty-diff-decorator.js +0 -101
- package/lib/browser/dirty-diff/dirty-diff-decorator.js.map +0 -1
- package/lib/browser/dirty-diff/dirty-diff-module.d.ts +0 -4
- package/lib/browser/dirty-diff/dirty-diff-module.d.ts.map +0 -1
- package/lib/browser/dirty-diff/dirty-diff-module.js +0 -34
- package/lib/browser/dirty-diff/dirty-diff-module.js.map +0 -1
- package/lib/browser/dirty-diff/dirty-diff-navigator.d.ts +0 -49
- package/lib/browser/dirty-diff/dirty-diff-navigator.d.ts.map +0 -1
- package/lib/browser/dirty-diff/dirty-diff-navigator.js +0 -295
- package/lib/browser/dirty-diff/dirty-diff-navigator.js.map +0 -1
- package/lib/browser/dirty-diff/dirty-diff-widget.d.ts +0 -50
- package/lib/browser/dirty-diff/dirty-diff-widget.d.ts.map +0 -1
- package/lib/browser/dirty-diff/dirty-diff-widget.js +0 -357
- package/lib/browser/dirty-diff/dirty-diff-widget.js.map +0 -1
- package/lib/browser/merge-editor/merge-editor-contribution.d.ts +0 -34
- package/lib/browser/merge-editor/merge-editor-contribution.d.ts.map +0 -1
- package/lib/browser/merge-editor/merge-editor-contribution.js +0 -335
- package/lib/browser/merge-editor/merge-editor-contribution.js.map +0 -1
- package/lib/browser/merge-editor/merge-editor-dev-contribution.d.ts +0 -31
- package/lib/browser/merge-editor/merge-editor-dev-contribution.d.ts.map +0 -1
- package/lib/browser/merge-editor/merge-editor-dev-contribution.js +0 -151
- package/lib/browser/merge-editor/merge-editor-dev-contribution.js.map +0 -1
- package/lib/browser/merge-editor/merge-editor-module.d.ts +0 -24
- package/lib/browser/merge-editor/merge-editor-module.d.ts.map +0 -1
- package/lib/browser/merge-editor/merge-editor-module.js +0 -109
- package/lib/browser/merge-editor/merge-editor-module.js.map +0 -1
- package/lib/browser/merge-editor/merge-editor.d.ts +0 -122
- package/lib/browser/merge-editor/merge-editor.d.ts.map +0 -1
- package/lib/browser/merge-editor/merge-editor.js +0 -560
- package/lib/browser/merge-editor/merge-editor.js.map +0 -1
- package/lib/browser/merge-editor/model/line-range.d.ts +0 -37
- package/lib/browser/merge-editor/model/line-range.d.ts.map +0 -1
- package/lib/browser/merge-editor/model/line-range.js +0 -111
- package/lib/browser/merge-editor/model/line-range.js.map +0 -1
- package/lib/browser/merge-editor/model/live-diff.d.ts +0 -26
- package/lib/browser/merge-editor/model/live-diff.d.ts.map +0 -1
- package/lib/browser/merge-editor/model/live-diff.js +0 -85
- package/lib/browser/merge-editor/model/live-diff.js.map +0 -1
- package/lib/browser/merge-editor/model/merge-editor-model.d.ts +0 -116
- package/lib/browser/merge-editor/model/merge-editor-model.d.ts.map +0 -1
- package/lib/browser/merge-editor/model/merge-editor-model.js +0 -507
- package/lib/browser/merge-editor/model/merge-editor-model.js.map +0 -1
- package/lib/browser/merge-editor/model/merge-range.d.ts +0 -50
- package/lib/browser/merge-editor/model/merge-range.d.ts.map +0 -1
- package/lib/browser/merge-editor/model/merge-range.js +0 -215
- package/lib/browser/merge-editor/model/merge-range.js.map +0 -1
- package/lib/browser/merge-editor/model/range-editing.d.ts +0 -21
- package/lib/browser/merge-editor/model/range-editing.d.ts.map +0 -1
- package/lib/browser/merge-editor/model/range-editing.js +0 -68
- package/lib/browser/merge-editor/model/range-editing.js.map +0 -1
- package/lib/browser/merge-editor/model/range-mapping.d.ts +0 -106
- package/lib/browser/merge-editor/model/range-mapping.d.ts.map +0 -1
- package/lib/browser/merge-editor/model/range-mapping.js +0 -252
- package/lib/browser/merge-editor/model/range-mapping.js.map +0 -1
- package/lib/browser/merge-editor/model/range-mapping.spec.d.ts +0 -2
- package/lib/browser/merge-editor/model/range-mapping.spec.d.ts.map +0 -1
- package/lib/browser/merge-editor/model/range-mapping.spec.js +0 -48
- package/lib/browser/merge-editor/model/range-mapping.spec.js.map +0 -1
- package/lib/browser/merge-editor/model/range-utils.d.ts +0 -25
- package/lib/browser/merge-editor/model/range-utils.d.ts.map +0 -1
- package/lib/browser/merge-editor/model/range-utils.js +0 -118
- package/lib/browser/merge-editor/model/range-utils.js.map +0 -1
- package/lib/browser/merge-editor/view/diff-spacers.d.ts +0 -50
- package/lib/browser/merge-editor/view/diff-spacers.d.ts.map +0 -1
- package/lib/browser/merge-editor/view/diff-spacers.js +0 -133
- package/lib/browser/merge-editor/view/diff-spacers.js.map +0 -1
- package/lib/browser/merge-editor/view/merge-editor-panes/index.d.ts +0 -6
- package/lib/browser/merge-editor/view/merge-editor-panes/index.d.ts.map +0 -1
- package/lib/browser/merge-editor/view/merge-editor-panes/index.js +0 -24
- package/lib/browser/merge-editor/view/merge-editor-panes/index.js.map +0 -1
- package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-base-pane.d.ts +0 -12
- package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-base-pane.d.ts.map +0 -1
- package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-base-pane.js +0 -65
- package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-base-pane.js.map +0 -1
- package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-pane-header.d.ts +0 -30
- package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-pane-header.d.ts.map +0 -1
- package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-pane-header.js +0 -102
- package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-pane-header.js.map +0 -1
- package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-pane.d.ts +0 -49
- package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-pane.d.ts.map +0 -1
- package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-pane.js +0 -214
- package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-pane.js.map +0 -1
- package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-result-pane.d.ts +0 -16
- package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-result-pane.d.ts.map +0 -1
- package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-result-pane.js +0 -107
- package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-result-pane.js.map +0 -1
- package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-side-pane.d.ts +0 -27
- package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-side-pane.d.ts.map +0 -1
- package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-side-pane.js +0 -135
- package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-side-pane.js.map +0 -1
- package/lib/browser/merge-editor/view/merge-editor-scroll-sync.d.ts +0 -20
- package/lib/browser/merge-editor/view/merge-editor-scroll-sync.d.ts.map +0 -1
- package/lib/browser/merge-editor/view/merge-editor-scroll-sync.js +0 -218
- package/lib/browser/merge-editor/view/merge-editor-scroll-sync.js.map +0 -1
- package/lib/browser/merge-editor/view/merge-editor-view-zones.d.ts +0 -57
- package/lib/browser/merge-editor/view/merge-editor-view-zones.d.ts.map +0 -1
- package/lib/browser/merge-editor/view/merge-editor-view-zones.js +0 -218
- package/lib/browser/merge-editor/view/merge-editor-view-zones.js.map +0 -1
- package/lib/browser/merge-editor/view/merge-range-actions.d.ts +0 -23
- package/lib/browser/merge-editor/view/merge-range-actions.d.ts.map +0 -1
- package/lib/browser/merge-editor/view/merge-range-actions.js +0 -142
- package/lib/browser/merge-editor/view/merge-range-actions.js.map +0 -1
- package/lib/browser/scm-amend-component.d.ts +0 -124
- package/lib/browser/scm-amend-component.d.ts.map +0 -1
- package/lib/browser/scm-amend-component.js +0 -464
- package/lib/browser/scm-amend-component.js.map +0 -1
- package/lib/browser/scm-amend-widget.d.ts +0 -21
- package/lib/browser/scm-amend-widget.d.ts.map +0 -1
- package/lib/browser/scm-amend-widget.js +0 -91
- package/lib/browser/scm-amend-widget.js.map +0 -1
- package/lib/browser/scm-avatar-service.d.ts +0 -4
- package/lib/browser/scm-avatar-service.d.ts.map +0 -1
- package/lib/browser/scm-avatar-service.js +0 -32
- package/lib/browser/scm-avatar-service.js.map +0 -1
- package/lib/browser/scm-colors.d.ts +0 -8
- package/lib/browser/scm-colors.d.ts.map +0 -1
- package/lib/browser/scm-colors.js +0 -27
- package/lib/browser/scm-colors.js.map +0 -1
- package/lib/browser/scm-commit-widget.d.ts +0 -53
- package/lib/browser/scm-commit-widget.d.ts.map +0 -1
- package/lib/browser/scm-commit-widget.js +0 -188
- package/lib/browser/scm-commit-widget.js.map +0 -1
- package/lib/browser/scm-context-key-service.d.ts +0 -13
- package/lib/browser/scm-context-key-service.d.ts.map +0 -1
- package/lib/browser/scm-context-key-service.js +0 -55
- package/lib/browser/scm-context-key-service.js.map +0 -1
- package/lib/browser/scm-contribution.d.ts +0 -98
- package/lib/browser/scm-contribution.d.ts.map +0 -1
- package/lib/browser/scm-contribution.js +0 -480
- package/lib/browser/scm-contribution.js.map +0 -1
- package/lib/browser/scm-frontend-module.d.ts +0 -7
- package/lib/browser/scm-frontend-module.d.ts.map +0 -1
- package/lib/browser/scm-frontend-module.js +0 -129
- package/lib/browser/scm-frontend-module.js.map +0 -1
- package/lib/browser/scm-groups-tree-model.d.ts +0 -15
- package/lib/browser/scm-groups-tree-model.d.ts.map +0 -1
- package/lib/browser/scm-groups-tree-model.js +0 -90
- package/lib/browser/scm-groups-tree-model.js.map +0 -1
- package/lib/browser/scm-input.d.ts +0 -54
- package/lib/browser/scm-input.d.ts.map +0 -1
- package/lib/browser/scm-input.js +0 -128
- package/lib/browser/scm-input.js.map +0 -1
- package/lib/browser/scm-layout-migrations.d.ts +0 -10
- package/lib/browser/scm-layout-migrations.d.ts.map +0 -1
- package/lib/browser/scm-layout-migrations.js +0 -75
- package/lib/browser/scm-layout-migrations.js.map +0 -1
- package/lib/browser/scm-no-repository-widget.d.ts +0 -9
- package/lib/browser/scm-no-repository-widget.d.ts.map +0 -1
- package/lib/browser/scm-no-repository-widget.js +0 -42
- package/lib/browser/scm-no-repository-widget.js.map +0 -1
- package/lib/browser/scm-provider.d.ts +0 -60
- package/lib/browser/scm-provider.d.ts.map +0 -1
- package/lib/browser/scm-provider.js +0 -20
- package/lib/browser/scm-provider.js.map +0 -1
- package/lib/browser/scm-quick-open-service.d.ts +0 -12
- package/lib/browser/scm-quick-open-service.d.ts.map +0 -1
- package/lib/browser/scm-quick-open-service.js +0 -66
- package/lib/browser/scm-quick-open-service.js.map +0 -1
- package/lib/browser/scm-repository.d.ts +0 -18
- package/lib/browser/scm-repository.d.ts.map +0 -1
- package/lib/browser/scm-repository.js +0 -42
- package/lib/browser/scm-repository.js.map +0 -1
- package/lib/browser/scm-service.d.ts +0 -27
- package/lib/browser/scm-service.d.ts.map +0 -1
- package/lib/browser/scm-service.js +0 -101
- package/lib/browser/scm-service.js.map +0 -1
- package/lib/browser/scm-tree-label-provider.d.ts +0 -8
- package/lib/browser/scm-tree-label-provider.d.ts.map +0 -1
- package/lib/browser/scm-tree-label-provider.js +0 -50
- package/lib/browser/scm-tree-label-provider.js.map +0 -1
- package/lib/browser/scm-tree-model.d.ts +0 -76
- package/lib/browser/scm-tree-model.d.ts.map +0 -1
- package/lib/browser/scm-tree-model.js +0 -349
- package/lib/browser/scm-tree-model.js.map +0 -1
- package/lib/browser/scm-tree-widget.d.ts +0 -206
- package/lib/browser/scm-tree-widget.d.ts.map +0 -1
- package/lib/browser/scm-tree-widget.js +0 -677
- package/lib/browser/scm-tree-widget.js.map +0 -1
- package/lib/browser/scm-widget.d.ts +0 -42
- package/lib/browser/scm-widget.d.ts.map +0 -1
- package/lib/browser/scm-widget.js +0 -220
- package/lib/browser/scm-widget.js.map +0 -1
- package/lib/common/scm-preferences.d.ts +0 -12
- package/lib/common/scm-preferences.d.ts.map +0 -1
- package/lib/common/scm-preferences.js +0 -51
- package/lib/common/scm-preferences.js.map +0 -1
- package/lib/node/scm-backend-module.d.ts +0 -4
- package/lib/node/scm-backend-module.d.ts.map +0 -1
- package/lib/node/scm-backend-module.js +0 -23
- package/lib/node/scm-backend-module.js.map +0 -1
|
@@ -1,215 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// *****************************************************************************
|
|
3
|
-
// Copyright (C) 2025 1C-Soft LLC and others.
|
|
4
|
-
//
|
|
5
|
-
// This program and the accompanying materials are made available under the
|
|
6
|
-
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
-
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
-
//
|
|
9
|
-
// This Source Code may also be made available under the following Secondary
|
|
10
|
-
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
-
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
-
// with the GNU Classpath Exception which is available at
|
|
13
|
-
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
-
//
|
|
15
|
-
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
-
// *****************************************************************************
|
|
17
|
-
/*---------------------------------------------------------------------------------------------
|
|
18
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
19
|
-
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
20
|
-
*--------------------------------------------------------------------------------------------*/
|
|
21
|
-
// copied and modified from https://github.com/microsoft/vscode/blob/1.96.3/src/vs/workbench/contrib/mergeEditor/browser/model/modifiedBaseRange.ts
|
|
22
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
-
exports.MergeRangeAcceptedState = exports.MergeRange = void 0;
|
|
24
|
-
const core_1 = require("@theia/core");
|
|
25
|
-
const vscode_languageserver_protocol_1 = require("@theia/core/shared/vscode-languageserver-protocol");
|
|
26
|
-
const range_mapping_1 = require("./range-mapping");
|
|
27
|
-
const range_editing_1 = require("./range-editing");
|
|
28
|
-
const range_utils_1 = require("./range-utils");
|
|
29
|
-
/**
|
|
30
|
-
* Describes modifications in side 1 and side 2 for a specific range in base.
|
|
31
|
-
*/
|
|
32
|
-
class MergeRange {
|
|
33
|
-
static computeMergeRanges(side1Diff, side2Diff, baseDocument, side1Document, side2Document) {
|
|
34
|
-
const alignments = range_mapping_1.MappingAlignment.computeAlignments(side1Diff, side2Diff);
|
|
35
|
-
return alignments.map(alignment => new MergeRange(alignment.baseRange, baseDocument, alignment.side1Range, alignment.side1Mappings, side1Document, alignment.side2Range, alignment.side2Mappings, side2Document));
|
|
36
|
-
}
|
|
37
|
-
constructor(baseRange, baseDocument, side1Range, side1Changes, side1Document, side2Range, side2Changes, side2Document) {
|
|
38
|
-
this.baseRange = baseRange;
|
|
39
|
-
this.baseDocument = baseDocument;
|
|
40
|
-
this.side1Range = side1Range;
|
|
41
|
-
this.side1Changes = side1Changes;
|
|
42
|
-
this.side1Document = side1Document;
|
|
43
|
-
this.side2Range = side2Range;
|
|
44
|
-
this.side2Changes = side2Changes;
|
|
45
|
-
this.side2Document = side2Document;
|
|
46
|
-
this.side1CombinedChange = range_mapping_1.DetailedLineRangeMapping.join(this.side1Changes);
|
|
47
|
-
this.side2CombinedChange = range_mapping_1.DetailedLineRangeMapping.join(this.side2Changes);
|
|
48
|
-
this.isEqualChange = core_1.ArrayUtils.equals(this.side1Changes, this.side2Changes, (a, b) => a.getLineEdit().equals(b.getLineEdit()));
|
|
49
|
-
if (side1Changes.length === 0 && side2Changes.length === 0) {
|
|
50
|
-
throw new Error('At least one change is expected');
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
getModifiedRange(side) {
|
|
54
|
-
return side === 1 ? this.side1Range : this.side2Range;
|
|
55
|
-
}
|
|
56
|
-
getCombinedChange(side) {
|
|
57
|
-
return side === 1 ? this.side1CombinedChange : this.side2CombinedChange;
|
|
58
|
-
}
|
|
59
|
-
getChanges(side) {
|
|
60
|
-
return side === 1 ? this.side1Changes : this.side2Changes;
|
|
61
|
-
}
|
|
62
|
-
get isConflicting() {
|
|
63
|
-
return this.side1Changes.length > 0 && this.side2Changes.length > 0 && !this.isEqualChange;
|
|
64
|
-
}
|
|
65
|
-
canBeSmartCombined(firstSide) {
|
|
66
|
-
return this.isConflicting && this.smartCombineChanges(firstSide) !== undefined;
|
|
67
|
-
}
|
|
68
|
-
get isSmartCombinationOrderRelevant() {
|
|
69
|
-
const edit1 = this.smartCombineChanges(1);
|
|
70
|
-
const edit2 = this.smartCombineChanges(2);
|
|
71
|
-
if (!edit1 || !edit2) {
|
|
72
|
-
return false;
|
|
73
|
-
}
|
|
74
|
-
return !edit1.equals(edit2);
|
|
75
|
-
}
|
|
76
|
-
getBaseRangeEdit(state) {
|
|
77
|
-
if (state === 'Base') {
|
|
78
|
-
return new range_editing_1.LineRangeEdit(this.baseRange, this.baseRange.getLines(this.baseDocument));
|
|
79
|
-
}
|
|
80
|
-
if (state === 'Side1') {
|
|
81
|
-
return new range_editing_1.LineRangeEdit(this.baseRange, this.side1Range.getLines(this.side1Document));
|
|
82
|
-
}
|
|
83
|
-
if (state === 'Side2') {
|
|
84
|
-
return new range_editing_1.LineRangeEdit(this.baseRange, this.side2Range.getLines(this.side2Document));
|
|
85
|
-
}
|
|
86
|
-
let edit;
|
|
87
|
-
const firstSide = state.startsWith('Side1') ? 1 : 2;
|
|
88
|
-
if (state.endsWith('Smart')) {
|
|
89
|
-
edit = this.smartCombineChanges(firstSide);
|
|
90
|
-
}
|
|
91
|
-
if (!edit) {
|
|
92
|
-
edit = this.dumbCombineChanges(firstSide);
|
|
93
|
-
}
|
|
94
|
-
return edit;
|
|
95
|
-
}
|
|
96
|
-
smartCombineChanges(firstSide) {
|
|
97
|
-
if (firstSide === 1 && this.smartCombinationEdit1) {
|
|
98
|
-
return this.smartCombinationEdit1.value;
|
|
99
|
-
}
|
|
100
|
-
else if (firstSide === 2 && this.smartCombinationEdit2) {
|
|
101
|
-
return this.smartCombinationEdit2.value;
|
|
102
|
-
}
|
|
103
|
-
const combinedChanges = this.side1Changes.flatMap(change => change.rangeMappings.map(rangeMapping => ({ rangeMapping, side: 1 }))).concat(this.side2Changes.flatMap(change => change.rangeMappings.map(rangeMapping => ({ rangeMapping, side: 2 })))).sort((a, b) => {
|
|
104
|
-
let result = range_utils_1.RangeUtils.compareUsingStarts(a.rangeMapping.originalRange, b.rangeMapping.originalRange);
|
|
105
|
-
if (result === 0) {
|
|
106
|
-
const sideWeight = (side) => side === firstSide ? 1 : 2;
|
|
107
|
-
result = sideWeight(a.side) - sideWeight(b.side);
|
|
108
|
-
}
|
|
109
|
-
return result;
|
|
110
|
-
});
|
|
111
|
-
const sortedEdits = combinedChanges.map(change => {
|
|
112
|
-
const modifiedDocument = change.side === 1 ? this.side1Document : this.side2Document;
|
|
113
|
-
return new range_editing_1.RangeEdit(change.rangeMapping.originalRange, modifiedDocument.getText(change.rangeMapping.modifiedRange));
|
|
114
|
-
});
|
|
115
|
-
const edit = this.editsToLineRangeEdit(this.baseRange, sortedEdits, this.baseDocument);
|
|
116
|
-
if (firstSide === 1) {
|
|
117
|
-
this.smartCombinationEdit1 = { value: edit };
|
|
118
|
-
}
|
|
119
|
-
else {
|
|
120
|
-
this.smartCombinationEdit2 = { value: edit };
|
|
121
|
-
}
|
|
122
|
-
return edit;
|
|
123
|
-
}
|
|
124
|
-
editsToLineRangeEdit(range, sortedEdits, document) {
|
|
125
|
-
let text = '';
|
|
126
|
-
const startsLineBefore = range.startLineNumber > 0;
|
|
127
|
-
let currentPosition = startsLineBefore
|
|
128
|
-
? vscode_languageserver_protocol_1.Position.create(range.startLineNumber - 1, document.getLineMaxColumn((range.startLineNumber - 1) + 1) // note that getLineMaxColumn expects a 1-based line number
|
|
129
|
-
)
|
|
130
|
-
: vscode_languageserver_protocol_1.Position.create(range.startLineNumber, 0);
|
|
131
|
-
for (const edit of sortedEdits) {
|
|
132
|
-
const diffStart = edit.range.start;
|
|
133
|
-
if (!range_utils_1.PositionUtils.isBeforeOrEqual(currentPosition, diffStart)) {
|
|
134
|
-
return undefined;
|
|
135
|
-
}
|
|
136
|
-
let originalText = document.getText(vscode_languageserver_protocol_1.Range.create(currentPosition, diffStart));
|
|
137
|
-
if (diffStart.line >= document.lineCount) {
|
|
138
|
-
// getText doesn't include this virtual line break, as the document ends the line before.
|
|
139
|
-
// endsLineAfter will be false.
|
|
140
|
-
originalText += '\n';
|
|
141
|
-
}
|
|
142
|
-
text += originalText;
|
|
143
|
-
text += edit.newText;
|
|
144
|
-
currentPosition = edit.range.end;
|
|
145
|
-
}
|
|
146
|
-
const endsLineAfter = range.endLineNumberExclusive < document.lineCount;
|
|
147
|
-
const end = endsLineAfter ?
|
|
148
|
-
vscode_languageserver_protocol_1.Position.create(range.endLineNumberExclusive, 0) :
|
|
149
|
-
vscode_languageserver_protocol_1.Position.create(range.endLineNumberExclusive - 1, vscode_languageserver_protocol_1.uinteger.MAX_VALUE);
|
|
150
|
-
text += document.getText(vscode_languageserver_protocol_1.Range.create(currentPosition, end));
|
|
151
|
-
const lines = text.split(/\r\n|\r|\n/);
|
|
152
|
-
if (startsLineBefore) {
|
|
153
|
-
if (lines[0] !== '') {
|
|
154
|
-
return undefined;
|
|
155
|
-
}
|
|
156
|
-
lines.shift();
|
|
157
|
-
}
|
|
158
|
-
if (endsLineAfter) {
|
|
159
|
-
if (lines[lines.length - 1] !== '') {
|
|
160
|
-
return undefined;
|
|
161
|
-
}
|
|
162
|
-
lines.pop();
|
|
163
|
-
}
|
|
164
|
-
return new range_editing_1.LineRangeEdit(range, lines);
|
|
165
|
-
}
|
|
166
|
-
dumbCombineChanges(firstSide) {
|
|
167
|
-
if (firstSide === 1 && this.dumbCombinationEdit1) {
|
|
168
|
-
return this.dumbCombinationEdit1;
|
|
169
|
-
}
|
|
170
|
-
else if (firstSide === 2 && this.dumbCombinationEdit2) {
|
|
171
|
-
return this.dumbCombinationEdit2;
|
|
172
|
-
}
|
|
173
|
-
const modifiedLines1 = this.side1Range.getLines(this.side1Document);
|
|
174
|
-
const modifiedLines2 = this.side2Range.getLines(this.side2Document);
|
|
175
|
-
const combinedLines = firstSide === 1 ? modifiedLines1.concat(modifiedLines2) : modifiedLines2.concat(modifiedLines1);
|
|
176
|
-
const edit = new range_editing_1.LineRangeEdit(this.baseRange, combinedLines);
|
|
177
|
-
if (firstSide === 1) {
|
|
178
|
-
this.dumbCombinationEdit1 = edit;
|
|
179
|
-
}
|
|
180
|
-
else {
|
|
181
|
-
this.dumbCombinationEdit2 = edit;
|
|
182
|
-
}
|
|
183
|
-
return edit;
|
|
184
|
-
}
|
|
185
|
-
}
|
|
186
|
-
exports.MergeRange = MergeRange;
|
|
187
|
-
var MergeRangeAcceptedState;
|
|
188
|
-
(function (MergeRangeAcceptedState) {
|
|
189
|
-
function addSide(state, side, options) {
|
|
190
|
-
if (state === 'Base') {
|
|
191
|
-
return side === 1 ? 'Side1' : 'Side2';
|
|
192
|
-
}
|
|
193
|
-
if (state.includes('Side' + side)) {
|
|
194
|
-
return state;
|
|
195
|
-
}
|
|
196
|
-
if (side === 2) {
|
|
197
|
-
return (options === null || options === void 0 ? void 0 : options.smartCombination) ? 'Side1Side2Smart' : 'Side1Side2';
|
|
198
|
-
}
|
|
199
|
-
else {
|
|
200
|
-
return (options === null || options === void 0 ? void 0 : options.smartCombination) ? 'Side2Side1Smart' : 'Side2Side1';
|
|
201
|
-
}
|
|
202
|
-
}
|
|
203
|
-
MergeRangeAcceptedState.addSide = addSide;
|
|
204
|
-
function removeSide(state, side) {
|
|
205
|
-
if (!state.includes('Side' + side)) {
|
|
206
|
-
return state;
|
|
207
|
-
}
|
|
208
|
-
if (state === 'Side' + side) {
|
|
209
|
-
return 'Base';
|
|
210
|
-
}
|
|
211
|
-
return side === 1 ? 'Side2' : 'Side1';
|
|
212
|
-
}
|
|
213
|
-
MergeRangeAcceptedState.removeSide = removeSide;
|
|
214
|
-
})(MergeRangeAcceptedState || (exports.MergeRangeAcceptedState = MergeRangeAcceptedState = {}));
|
|
215
|
-
//# sourceMappingURL=merge-range.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"merge-range.js","sourceRoot":"","sources":["../../../../src/browser/merge-editor/model/merge-range.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { Range } from '@theia/core/shared/vscode-languageserver-protocol';
|
|
2
|
-
import { LineRange } from './line-range';
|
|
3
|
-
import * as monaco from '@theia/monaco-editor-core';
|
|
4
|
-
/**
|
|
5
|
-
* Represents an edit, expressed in whole lines:
|
|
6
|
-
* At (before) {@link LineRange.startLineNumber}, delete {@link LineRange.lineCount} many lines and insert {@link newLines}.
|
|
7
|
-
*/
|
|
8
|
-
export declare class LineRangeEdit {
|
|
9
|
-
readonly range: LineRange;
|
|
10
|
-
readonly newLines: string[];
|
|
11
|
-
constructor(range: LineRange, newLines: string[]);
|
|
12
|
-
equals(other: LineRangeEdit): boolean;
|
|
13
|
-
toRangeEdit(documentLineCount: number): RangeEdit;
|
|
14
|
-
}
|
|
15
|
-
export declare class RangeEdit {
|
|
16
|
-
readonly range: Range;
|
|
17
|
-
readonly newText: string;
|
|
18
|
-
constructor(range: Range, newText: string);
|
|
19
|
-
toMonacoEdit(): monaco.editor.ISingleEditOperation;
|
|
20
|
-
}
|
|
21
|
-
//# sourceMappingURL=range-editing.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"range-editing.d.ts","sourceRoot":"","sources":["../../../../src/browser/merge-editor/model/range-editing.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,KAAK,EAAY,MAAM,mDAAmD,CAAC;AACpF,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,KAAK,MAAM,MAAM,2BAA2B,CAAC;AAEpD;;;GAGG;AACH,qBAAa,aAAa;IAElB,QAAQ,CAAC,KAAK,EAAE,SAAS;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE;gBADlB,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,MAAM,EAAE;IAG/B,MAAM,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO;IAIrC,WAAW,CAAC,iBAAiB,EAAE,MAAM,GAAG,SAAS;CAoBpD;AAED,qBAAa,SAAS;IAEd,QAAQ,CAAC,KAAK,EAAE,KAAK;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM;gBADf,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,MAAM;IAG5B,YAAY,IAAI,MAAM,CAAC,MAAM,CAAC,oBAAoB;CAYrD"}
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// *****************************************************************************
|
|
3
|
-
// Copyright (C) 2025 1C-Soft LLC and others.
|
|
4
|
-
//
|
|
5
|
-
// This program and the accompanying materials are made available under the
|
|
6
|
-
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
-
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
-
//
|
|
9
|
-
// This Source Code may also be made available under the following Secondary
|
|
10
|
-
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
-
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
-
// with the GNU Classpath Exception which is available at
|
|
13
|
-
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
-
//
|
|
15
|
-
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
-
// *****************************************************************************
|
|
17
|
-
/*---------------------------------------------------------------------------------------------
|
|
18
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
19
|
-
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
20
|
-
*--------------------------------------------------------------------------------------------*/
|
|
21
|
-
// copied and modified from https://github.com/microsoft/vscode/blob/1.96.3/src/vs/workbench/contrib/mergeEditor/browser/model/editing.ts
|
|
22
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
-
exports.RangeEdit = exports.LineRangeEdit = void 0;
|
|
24
|
-
const core_1 = require("@theia/core");
|
|
25
|
-
const vscode_languageserver_protocol_1 = require("@theia/core/shared/vscode-languageserver-protocol");
|
|
26
|
-
/**
|
|
27
|
-
* Represents an edit, expressed in whole lines:
|
|
28
|
-
* At (before) {@link LineRange.startLineNumber}, delete {@link LineRange.lineCount} many lines and insert {@link newLines}.
|
|
29
|
-
*/
|
|
30
|
-
class LineRangeEdit {
|
|
31
|
-
constructor(range, newLines) {
|
|
32
|
-
this.range = range;
|
|
33
|
-
this.newLines = newLines;
|
|
34
|
-
}
|
|
35
|
-
equals(other) {
|
|
36
|
-
return this.range.equals(other.range) && core_1.ArrayUtils.equals(this.newLines, other.newLines);
|
|
37
|
-
}
|
|
38
|
-
toRangeEdit(documentLineCount) {
|
|
39
|
-
if (this.range.endLineNumberExclusive < documentLineCount) {
|
|
40
|
-
return new RangeEdit(vscode_languageserver_protocol_1.Range.create(this.range.startLineNumber, 0, this.range.endLineNumberExclusive, 0), this.newLines.map(s => s + '\n').join(''));
|
|
41
|
-
}
|
|
42
|
-
if (this.range.startLineNumber === 0) {
|
|
43
|
-
return new RangeEdit(vscode_languageserver_protocol_1.Range.create(0, 0, documentLineCount - 1, vscode_languageserver_protocol_1.uinteger.MAX_VALUE), this.newLines.join('\n'));
|
|
44
|
-
}
|
|
45
|
-
return new RangeEdit(vscode_languageserver_protocol_1.Range.create(this.range.startLineNumber - 1, vscode_languageserver_protocol_1.uinteger.MAX_VALUE, documentLineCount - 1, vscode_languageserver_protocol_1.uinteger.MAX_VALUE), this.newLines.map(s => '\n' + s).join(''));
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
exports.LineRangeEdit = LineRangeEdit;
|
|
49
|
-
class RangeEdit {
|
|
50
|
-
constructor(range, newText) {
|
|
51
|
-
this.range = range;
|
|
52
|
-
this.newText = newText;
|
|
53
|
-
}
|
|
54
|
-
toMonacoEdit() {
|
|
55
|
-
const { start, end } = this.range;
|
|
56
|
-
return {
|
|
57
|
-
range: {
|
|
58
|
-
startLineNumber: start.line + 1,
|
|
59
|
-
startColumn: start.character + 1,
|
|
60
|
-
endLineNumber: end.line + 1,
|
|
61
|
-
endColumn: end.character + 1
|
|
62
|
-
},
|
|
63
|
-
text: this.newText
|
|
64
|
-
};
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
exports.RangeEdit = RangeEdit;
|
|
68
|
-
//# sourceMappingURL=range-editing.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"range-editing.js","sourceRoot":"","sources":["../../../../src/browser/merge-editor/model/range-editing.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,6CAA6C;AAC7C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAChF;;;gGAGgG;AAChG,yIAAyI;;;AAEzI,sCAAyC;AACzC,sGAAoF;AAIpF;;;GAGG;AACH,MAAa,aAAa;IACtB,YACa,KAAgB,EAChB,QAAkB;QADlB,UAAK,GAAL,KAAK,CAAW;QAChB,aAAQ,GAAR,QAAQ,CAAU;IAC3B,CAAC;IAEL,MAAM,CAAC,KAAoB;QACvB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,iBAAU,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC9F,CAAC;IAED,WAAW,CAAC,iBAAyB;QACjC,IAAI,IAAI,CAAC,KAAK,CAAC,sBAAsB,GAAG,iBAAiB,EAAE,CAAC;YACxD,OAAO,IAAI,SAAS,CAChB,sCAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,sBAAsB,EAAE,CAAC,CAAC,EACjF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAC5C,CAAC;QACN,CAAC;QAED,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,KAAK,CAAC,EAAE,CAAC;YACnC,OAAO,IAAI,SAAS,CAChB,sCAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,iBAAiB,GAAG,CAAC,EAAE,yCAAQ,CAAC,SAAS,CAAC,EAC7D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAC3B,CAAC;QACN,CAAC;QAED,OAAO,IAAI,SAAS,CAChB,sCAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,CAAC,EAAE,yCAAQ,CAAC,SAAS,EAAE,iBAAiB,GAAG,CAAC,EAAE,yCAAQ,CAAC,SAAS,CAAC,EAC3G,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAC5C,CAAC;IACN,CAAC;CACJ;AA9BD,sCA8BC;AAED,MAAa,SAAS;IAClB,YACa,KAAY,EACZ,OAAe;QADf,UAAK,GAAL,KAAK,CAAO;QACZ,YAAO,GAAP,OAAO,CAAQ;IACxB,CAAC;IAEL,YAAY;QACR,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAClC,OAAO;YACH,KAAK,EAAE;gBACH,eAAe,EAAE,KAAK,CAAC,IAAI,GAAG,CAAC;gBAC/B,WAAW,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC;gBAChC,aAAa,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC;gBAC3B,SAAS,EAAE,GAAG,CAAC,SAAS,GAAG,CAAC;aAC/B;YACD,IAAI,EAAE,IAAI,CAAC,OAAO;SACrB,CAAC;IACN,CAAC;CACJ;AAlBD,8BAkBC"}
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
import { Position, Range, TextEditorDocument } from '@theia/editor/lib/browser/editor';
|
|
2
|
-
import { LineRange } from './line-range';
|
|
3
|
-
import { LineRangeEdit } from './range-editing';
|
|
4
|
-
/**
|
|
5
|
-
* Maps a line range in the original text document to a line range in the modified text document.
|
|
6
|
-
*/
|
|
7
|
-
export declare class LineRangeMapping {
|
|
8
|
-
readonly originalRange: LineRange;
|
|
9
|
-
readonly modifiedRange: LineRange;
|
|
10
|
-
static join(mappings: readonly LineRangeMapping[]): LineRangeMapping | undefined;
|
|
11
|
-
constructor(originalRange: LineRange, modifiedRange: LineRange);
|
|
12
|
-
toString(): string;
|
|
13
|
-
join(other: LineRangeMapping): LineRangeMapping;
|
|
14
|
-
addModifiedLineDelta(delta: number): LineRangeMapping;
|
|
15
|
-
addOriginalLineDelta(delta: number): LineRangeMapping;
|
|
16
|
-
reverse(): LineRangeMapping;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Represents a total monotonous mapping of line ranges in one document to another document.
|
|
20
|
-
*/
|
|
21
|
-
export declare class DocumentLineRangeMap {
|
|
22
|
-
/**
|
|
23
|
-
* The line range mappings that define this document mapping.
|
|
24
|
-
* The number of lines between two adjacent original ranges must equal the number of lines between their corresponding modified ranges.
|
|
25
|
-
*/
|
|
26
|
-
readonly lineRangeMappings: readonly LineRangeMapping[];
|
|
27
|
-
static betweenModifiedSides(side1Diff: readonly LineRangeMapping[], side2Diff: readonly LineRangeMapping[]): DocumentLineRangeMap;
|
|
28
|
-
constructor(
|
|
29
|
-
/**
|
|
30
|
-
* The line range mappings that define this document mapping.
|
|
31
|
-
* The number of lines between two adjacent original ranges must equal the number of lines between their corresponding modified ranges.
|
|
32
|
-
*/
|
|
33
|
-
lineRangeMappings: readonly LineRangeMapping[]);
|
|
34
|
-
/**
|
|
35
|
-
* @param lineNumber 0-based line number in the original text document
|
|
36
|
-
*/
|
|
37
|
-
projectLine(lineNumber: number): LineRangeMapping;
|
|
38
|
-
reverse(): DocumentLineRangeMap;
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Aligns mappings for two modified sides with a common base range.
|
|
42
|
-
*/
|
|
43
|
-
export declare class MappingAlignment<T extends LineRangeMapping> {
|
|
44
|
-
readonly baseRange: LineRange;
|
|
45
|
-
readonly side1Range: LineRange;
|
|
46
|
-
readonly side1Mappings: readonly T[];
|
|
47
|
-
readonly side2Range: LineRange;
|
|
48
|
-
readonly side2Mappings: readonly T[];
|
|
49
|
-
static computeAlignments<T extends LineRangeMapping>(side1Mappings: readonly T[], side2Mappings: readonly T[]): MappingAlignment<T>[];
|
|
50
|
-
constructor(baseRange: LineRange, side1Range: LineRange, side1Mappings: readonly T[], side2Range: LineRange, side2Mappings: readonly T[]);
|
|
51
|
-
toString(): string;
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* A line range mapping with inner range mappings.
|
|
55
|
-
*/
|
|
56
|
-
export declare class DetailedLineRangeMapping extends LineRangeMapping {
|
|
57
|
-
readonly originalDocument: TextEditorDocument;
|
|
58
|
-
readonly modifiedDocument: TextEditorDocument;
|
|
59
|
-
static join(mappings: readonly DetailedLineRangeMapping[]): DetailedLineRangeMapping | undefined;
|
|
60
|
-
readonly rangeMappings: readonly RangeMapping[];
|
|
61
|
-
constructor(originalRange: LineRange, originalDocument: TextEditorDocument, modifiedRange: LineRange, modifiedDocument: TextEditorDocument, rangeMappings?: readonly RangeMapping[]);
|
|
62
|
-
join(other: DetailedLineRangeMapping): DetailedLineRangeMapping;
|
|
63
|
-
addModifiedLineDelta(delta: number): DetailedLineRangeMapping;
|
|
64
|
-
addOriginalLineDelta(delta: number): DetailedLineRangeMapping;
|
|
65
|
-
reverse(): DetailedLineRangeMapping;
|
|
66
|
-
getLineEdit(): LineRangeEdit;
|
|
67
|
-
getReverseLineEdit(): LineRangeEdit;
|
|
68
|
-
getModifiedLines(): string[];
|
|
69
|
-
getOriginalLines(): string[];
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* Maps a range in the original text document to a range in the modified text document.
|
|
73
|
-
*/
|
|
74
|
-
export declare class RangeMapping {
|
|
75
|
-
readonly originalRange: Readonly<Range>;
|
|
76
|
-
readonly modifiedRange: Readonly<Range>;
|
|
77
|
-
constructor(originalRange: Readonly<Range>, modifiedRange: Readonly<Range>);
|
|
78
|
-
toString(): string;
|
|
79
|
-
addModifiedLineDelta(deltaLines: number): RangeMapping;
|
|
80
|
-
addOriginalLineDelta(deltaLines: number): RangeMapping;
|
|
81
|
-
reverse(): RangeMapping;
|
|
82
|
-
}
|
|
83
|
-
/**
|
|
84
|
-
* Represents a total monotonous mapping of ranges in one document to another document.
|
|
85
|
-
*/
|
|
86
|
-
export declare class DocumentRangeMap {
|
|
87
|
-
/**
|
|
88
|
-
* The range mappings that define this document mapping.
|
|
89
|
-
*/
|
|
90
|
-
readonly rangeMappings: readonly RangeMapping[];
|
|
91
|
-
constructor(
|
|
92
|
-
/**
|
|
93
|
-
* The range mappings that define this document mapping.
|
|
94
|
-
*/
|
|
95
|
-
rangeMappings: readonly RangeMapping[]);
|
|
96
|
-
/**
|
|
97
|
-
* @param position position in the original text document
|
|
98
|
-
*/
|
|
99
|
-
projectPosition(position: Position): RangeMapping;
|
|
100
|
-
/**
|
|
101
|
-
* @param range range in the original text document
|
|
102
|
-
*/
|
|
103
|
-
projectRange(range: Range): RangeMapping;
|
|
104
|
-
reverse(): DocumentRangeMap;
|
|
105
|
-
}
|
|
106
|
-
//# sourceMappingURL=range-mapping.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"range-mapping.d.ts","sourceRoot":"","sources":["../../../../src/browser/merge-editor/model/range-mapping.ts"],"names":[],"mappings":"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"}
|