@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
package/README.md
CHANGED
|
@@ -16,7 +16,7 @@ The `@theia/scm` extension adds support for handling multiple source control man
|
|
|
16
16
|
|
|
17
17
|
## Additional Information
|
|
18
18
|
|
|
19
|
-
- [API documentation for `@theia/scm`](https://eclipse-theia.github.io/theia/docs/next/modules/
|
|
19
|
+
- [API documentation for `@theia/scm`](https://eclipse-theia.github.io/theia/docs/next/modules/_theia_scm.html)
|
|
20
20
|
- [Theia - GitHub](https://github.com/eclipse-theia/theia)
|
|
21
21
|
- [Theia - Website](https://theia-ide.org/)
|
|
22
22
|
- [VS Code SCM Documentation](https://code.visualstudio.com/docs/editor/versioncontrol)
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theia/scm",
|
|
3
|
-
"version": "1.67.0-next.
|
|
3
|
+
"version": "1.67.0-next.56+d8f18cc386c",
|
|
4
4
|
"description": "Theia - Source control Extension",
|
|
5
5
|
"dependencies": {
|
|
6
|
-
"@theia/core": "1.67.0-next.
|
|
7
|
-
"@theia/editor": "1.67.0-next.
|
|
8
|
-
"@theia/filesystem": "1.67.0-next.
|
|
9
|
-
"@theia/monaco": "1.67.0-next.
|
|
6
|
+
"@theia/core": "1.67.0-next.56+d8f18cc386c",
|
|
7
|
+
"@theia/editor": "1.67.0-next.56+d8f18cc386c",
|
|
8
|
+
"@theia/filesystem": "1.67.0-next.56+d8f18cc386c",
|
|
9
|
+
"@theia/monaco": "1.67.0-next.56+d8f18cc386c",
|
|
10
10
|
"@theia/monaco-editor-core": "1.96.302",
|
|
11
11
|
"@types/diff": "^5.2.1",
|
|
12
12
|
"diff": "^5.2.0",
|
|
@@ -55,5 +55,5 @@
|
|
|
55
55
|
"nyc": {
|
|
56
56
|
"extends": "../../configs/nyc.json"
|
|
57
57
|
},
|
|
58
|
-
"gitHead": "
|
|
58
|
+
"gitHead": "d8f18cc386c45a736cd193d42eab02c8f64c6b10"
|
|
59
59
|
}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { Emitter, Event, ResourceProvider } from '@theia/core';
|
|
2
|
-
import { DirtyDiffDecorator, DirtyDiffUpdate } from '../dirty-diff/dirty-diff-decorator';
|
|
3
|
-
import { EditorManager, TextEditor } from '@theia/editor/lib/browser';
|
|
4
|
-
import { ScmService } from '../scm-service';
|
|
5
|
-
export declare class ScmDecorationsService {
|
|
6
|
-
protected readonly decorator: DirtyDiffDecorator;
|
|
7
|
-
protected readonly scmService: ScmService;
|
|
8
|
-
protected readonly editorManager: EditorManager;
|
|
9
|
-
protected readonly resourceProvider: ResourceProvider;
|
|
10
|
-
private readonly diffComputer;
|
|
11
|
-
protected readonly onDirtyDiffUpdateEmitter: Emitter<DirtyDiffUpdate>;
|
|
12
|
-
readonly onDirtyDiffUpdate: Event<DirtyDiffUpdate>;
|
|
13
|
-
constructor(decorator: DirtyDiffDecorator, scmService: ScmService, editorManager: EditorManager, resourceProvider: ResourceProvider);
|
|
14
|
-
applyEditorDecorations(editor: TextEditor): Promise<void>;
|
|
15
|
-
protected supportsDirtyDiff(editor: TextEditor): boolean;
|
|
16
|
-
protected createUpdateTask(editor: TextEditor): {
|
|
17
|
-
(): void;
|
|
18
|
-
cancel(): void;
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
//# sourceMappingURL=scm-decorations-service.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scm-decorations-service.d.ts","sourceRoot":"","sources":["../../../src/browser/decorations/scm-decorations-service.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAwB,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAGzF,OAAO,EAAE,aAAa,EAAgB,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACpF,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAI5C,qBACa,qBAAqB;IAOE,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,kBAAkB;IACxD,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU;IACtC,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa;IAC5C,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB;IATnF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsB;IAEnD,SAAS,CAAC,QAAQ,CAAC,wBAAwB,2BAAkC;IAC7E,QAAQ,CAAC,iBAAiB,EAAE,KAAK,CAAC,eAAe,CAAC,CAAuC;gBAGtC,SAAS,EAAE,kBAAkB,EACrC,UAAU,EAAE,UAAU,EACnB,aAAa,EAAE,aAAa,EACzB,gBAAgB,EAAE,gBAAgB;IA+C7E,sBAAsB,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAgC/D,SAAS,CAAC,iBAAiB,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO;IAIxD,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,UAAU,GAAG;QAAE,IAAI,IAAI,CAAC;QAAC,MAAM,IAAI,IAAI,CAAC;KAAE;CAGhF"}
|
|
@@ -1,134 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// *****************************************************************************
|
|
3
|
-
// Copyright (C) 2019 Red Hat, Inc. 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
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.ScmDecorationsService = void 0;
|
|
19
|
-
const tslib_1 = require("tslib");
|
|
20
|
-
const inversify_1 = require("@theia/core/shared/inversify");
|
|
21
|
-
const core_1 = require("@theia/core");
|
|
22
|
-
const dirty_diff_decorator_1 = require("../dirty-diff/dirty-diff-decorator");
|
|
23
|
-
const diff_computer_1 = require("../dirty-diff/diff-computer");
|
|
24
|
-
const content_lines_1 = require("../dirty-diff/content-lines");
|
|
25
|
-
const browser_1 = require("@theia/editor/lib/browser");
|
|
26
|
-
const scm_service_1 = require("../scm-service");
|
|
27
|
-
const throttle = require("@theia/core/shared/lodash.throttle");
|
|
28
|
-
let ScmDecorationsService = class ScmDecorationsService {
|
|
29
|
-
constructor(decorator, scmService, editorManager, resourceProvider) {
|
|
30
|
-
this.decorator = decorator;
|
|
31
|
-
this.scmService = scmService;
|
|
32
|
-
this.editorManager = editorManager;
|
|
33
|
-
this.resourceProvider = resourceProvider;
|
|
34
|
-
this.diffComputer = new diff_computer_1.DiffComputer();
|
|
35
|
-
this.onDirtyDiffUpdateEmitter = new core_1.Emitter();
|
|
36
|
-
this.onDirtyDiffUpdate = this.onDirtyDiffUpdateEmitter.event;
|
|
37
|
-
const updateTasks = new Map();
|
|
38
|
-
this.editorManager.onCreated(editorWidget => {
|
|
39
|
-
const { editor } = editorWidget;
|
|
40
|
-
if (!this.supportsDirtyDiff(editor)) {
|
|
41
|
-
return;
|
|
42
|
-
}
|
|
43
|
-
const toDispose = new core_1.DisposableCollection();
|
|
44
|
-
const updateTask = this.createUpdateTask(editor);
|
|
45
|
-
updateTasks.set(editorWidget, updateTask);
|
|
46
|
-
toDispose.push(editor.onDocumentContentChanged(() => updateTask()));
|
|
47
|
-
toDispose.push(editorWidget.onDidChangeVisibility(visible => {
|
|
48
|
-
if (visible) {
|
|
49
|
-
updateTask();
|
|
50
|
-
}
|
|
51
|
-
}));
|
|
52
|
-
if (editor.onShouldDisplayDirtyDiffChanged) {
|
|
53
|
-
toDispose.push(editor.onShouldDisplayDirtyDiffChanged(shouldDisplayDirtyDiff => {
|
|
54
|
-
if (shouldDisplayDirtyDiff) {
|
|
55
|
-
updateTask();
|
|
56
|
-
}
|
|
57
|
-
else {
|
|
58
|
-
const update = { editor, changes: [] };
|
|
59
|
-
this.decorator.applyDecorations(update);
|
|
60
|
-
this.onDirtyDiffUpdateEmitter.fire(update);
|
|
61
|
-
}
|
|
62
|
-
}));
|
|
63
|
-
}
|
|
64
|
-
editorWidget.disposed.connect(() => {
|
|
65
|
-
updateTask.cancel();
|
|
66
|
-
updateTasks.delete(editorWidget);
|
|
67
|
-
toDispose.dispose();
|
|
68
|
-
});
|
|
69
|
-
updateTask();
|
|
70
|
-
});
|
|
71
|
-
const runUpdateTasks = () => {
|
|
72
|
-
for (const updateTask of updateTasks.values()) {
|
|
73
|
-
updateTask();
|
|
74
|
-
}
|
|
75
|
-
};
|
|
76
|
-
this.scmService.onDidAddRepository(({ provider }) => {
|
|
77
|
-
var _a;
|
|
78
|
-
provider.onDidChange(runUpdateTasks);
|
|
79
|
-
(_a = provider.onDidChangeResources) === null || _a === void 0 ? void 0 : _a.call(provider, runUpdateTasks);
|
|
80
|
-
});
|
|
81
|
-
this.scmService.onDidChangeSelectedRepository(runUpdateTasks);
|
|
82
|
-
}
|
|
83
|
-
async applyEditorDecorations(editor) {
|
|
84
|
-
if (!editor.shouldDisplayDirtyDiff()) {
|
|
85
|
-
return;
|
|
86
|
-
}
|
|
87
|
-
const currentRepo = this.scmService.selectedRepository;
|
|
88
|
-
if (currentRepo) {
|
|
89
|
-
try {
|
|
90
|
-
// Currently, the uri used here is specific to vscode.git; other SCM providers are thus not supported.
|
|
91
|
-
// See https://github.com/eclipse-theia/theia/pull/13104#discussion_r1494540628 for a detailed discussion.
|
|
92
|
-
const query = { path: editor.uri['codeUri'].fsPath, ref: '~' };
|
|
93
|
-
const uri = editor.uri.withScheme(currentRepo.provider.id).withQuery(JSON.stringify(query));
|
|
94
|
-
const previousResource = await this.resourceProvider(uri);
|
|
95
|
-
try {
|
|
96
|
-
const previousContent = await previousResource.readContents();
|
|
97
|
-
if (!editor.shouldDisplayDirtyDiff()) { // check again; it might have changed in the meantime, since this is an async method
|
|
98
|
-
return;
|
|
99
|
-
}
|
|
100
|
-
const previousLines = content_lines_1.ContentLines.fromString(previousContent);
|
|
101
|
-
const currentLines = content_lines_1.ContentLines.fromTextEditorDocument(editor.document);
|
|
102
|
-
const dirtyDiff = this.diffComputer.computeDirtyDiff(content_lines_1.ContentLines.arrayLike(previousLines), content_lines_1.ContentLines.arrayLike(currentLines));
|
|
103
|
-
const update = { editor, previousRevisionUri: uri, ...dirtyDiff };
|
|
104
|
-
this.decorator.applyDecorations(update);
|
|
105
|
-
this.onDirtyDiffUpdateEmitter.fire(update);
|
|
106
|
-
}
|
|
107
|
-
finally {
|
|
108
|
-
previousResource.dispose();
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
catch (e) {
|
|
112
|
-
// Scm resource may not be found, do nothing.
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
supportsDirtyDiff(editor) {
|
|
117
|
-
return editor.shouldDisplayDirtyDiff() || !!editor.onShouldDisplayDirtyDiffChanged;
|
|
118
|
-
}
|
|
119
|
-
createUpdateTask(editor) {
|
|
120
|
-
return throttle(() => this.applyEditorDecorations(editor), 500);
|
|
121
|
-
}
|
|
122
|
-
};
|
|
123
|
-
exports.ScmDecorationsService = ScmDecorationsService;
|
|
124
|
-
exports.ScmDecorationsService = ScmDecorationsService = tslib_1.__decorate([
|
|
125
|
-
(0, inversify_1.injectable)(),
|
|
126
|
-
tslib_1.__param(0, (0, inversify_1.inject)(dirty_diff_decorator_1.DirtyDiffDecorator)),
|
|
127
|
-
tslib_1.__param(1, (0, inversify_1.inject)(scm_service_1.ScmService)),
|
|
128
|
-
tslib_1.__param(2, (0, inversify_1.inject)(browser_1.EditorManager)),
|
|
129
|
-
tslib_1.__param(3, (0, inversify_1.inject)(core_1.ResourceProvider)),
|
|
130
|
-
tslib_1.__metadata("design:paramtypes", [dirty_diff_decorator_1.DirtyDiffDecorator,
|
|
131
|
-
scm_service_1.ScmService,
|
|
132
|
-
browser_1.EditorManager, Function])
|
|
133
|
-
], ScmDecorationsService);
|
|
134
|
-
//# sourceMappingURL=scm-decorations-service.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scm-decorations-service.js","sourceRoot":"","sources":["../../../src/browser/decorations/scm-decorations-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { ILogger } from '@theia/core/lib/common/logger';
|
|
2
|
-
import { Event, Emitter } from '@theia/core/lib/common/event';
|
|
3
|
-
import { Tree } from '@theia/core/lib/browser/tree/tree';
|
|
4
|
-
import { TreeDecorator, TreeDecoration } from '@theia/core/lib/browser/tree/tree-decorator';
|
|
5
|
-
import { ColorRegistry } from '@theia/core/lib/browser/color-registry';
|
|
6
|
-
import { Decoration, DecorationsService } from '@theia/core/lib/browser/decorations-service';
|
|
7
|
-
/**
|
|
8
|
-
* @deprecated since 1.25.0
|
|
9
|
-
* URI-based decorators should implement `DecorationsProvider` and contribute decorations via the `DecorationsService`.
|
|
10
|
-
*/
|
|
11
|
-
export declare class ScmNavigatorDecorator implements TreeDecorator {
|
|
12
|
-
protected readonly decorationsService: DecorationsService;
|
|
13
|
-
readonly id = "theia-scm-decorator";
|
|
14
|
-
private decorationsMap;
|
|
15
|
-
protected readonly logger: ILogger;
|
|
16
|
-
protected readonly colors: ColorRegistry;
|
|
17
|
-
constructor(decorationsService: DecorationsService);
|
|
18
|
-
protected collectDecorators(tree: Tree): Map<string, TreeDecoration.Data>;
|
|
19
|
-
protected toDecorator(change: Decoration): TreeDecoration.Data;
|
|
20
|
-
protected readonly emitter: Emitter<(tree: Tree) => Map<string, TreeDecoration.Data>>;
|
|
21
|
-
decorations(tree: Tree): Promise<Map<string, TreeDecoration.Data>>;
|
|
22
|
-
protected appendContainerChanges(decorationsMap: Map<string, Decoration>): Map<string, Decoration>;
|
|
23
|
-
get onDidChangeDecorations(): Event<(tree: Tree) => Map<string, TreeDecoration.Data>>;
|
|
24
|
-
fireDidChangeDecorations(event: (tree: Tree) => Map<string, TreeDecoration.Data>): void;
|
|
25
|
-
}
|
|
26
|
-
//# sourceMappingURL=scm-navigator-decorator.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scm-navigator-decorator.d.ts","sourceRoot":"","sources":["../../../src/browser/decorations/scm-navigator-decorator.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAE,MAAM,mCAAmC,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,6CAA6C,CAAC;AAI5F,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AAE7F;;;GAGG;AACH,qBACa,qBAAsB,YAAW,aAAa;IAUf,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,kBAAkB;IARjG,QAAQ,CAAC,EAAE,yBAAyB;IACpC,OAAO,CAAC,cAAc,CAAsC;IAE3C,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAGpD,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;gBAEkB,kBAAkB,EAAE,kBAAkB;IAOjG,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC;IAkBzE,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,UAAU,GAAG,cAAc,CAAC,IAAI;IAe9D,SAAS,CAAC,QAAQ,CAAC,OAAO,iBAAsB,IAAI,KAAK,IAAI,MAAM,EAAE,eAAe,IAAI,CAAC,EAAI;IAEvF,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC;IAQxE,SAAS,CAAC,sBAAsB,CAAC,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC;IAoBlG,IAAI,sBAAsB,IAAI,KAAK,CAAC,CAAC,IAAI,EAAE,IAAI,KAAK,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC,CAEpF;IAED,wBAAwB,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;CAI1F"}
|
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// *****************************************************************************
|
|
3
|
-
// Copyright (C) 2019 Red Hat, Inc. 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
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.ScmNavigatorDecorator = void 0;
|
|
19
|
-
const tslib_1 = require("tslib");
|
|
20
|
-
const inversify_1 = require("@theia/core/shared/inversify");
|
|
21
|
-
const logger_1 = require("@theia/core/lib/common/logger");
|
|
22
|
-
const event_1 = require("@theia/core/lib/common/event");
|
|
23
|
-
const browser_1 = require("@theia/core/lib/browser");
|
|
24
|
-
const browser_2 = require("@theia/filesystem/lib/browser");
|
|
25
|
-
const uri_1 = require("@theia/core/lib/common/uri");
|
|
26
|
-
const color_registry_1 = require("@theia/core/lib/browser/color-registry");
|
|
27
|
-
const decorations_service_1 = require("@theia/core/lib/browser/decorations-service");
|
|
28
|
-
/**
|
|
29
|
-
* @deprecated since 1.25.0
|
|
30
|
-
* URI-based decorators should implement `DecorationsProvider` and contribute decorations via the `DecorationsService`.
|
|
31
|
-
*/
|
|
32
|
-
let ScmNavigatorDecorator = class ScmNavigatorDecorator {
|
|
33
|
-
constructor(decorationsService) {
|
|
34
|
-
this.decorationsService = decorationsService;
|
|
35
|
-
this.id = 'theia-scm-decorator';
|
|
36
|
-
this.emitter = new event_1.Emitter();
|
|
37
|
-
this.decorationsService.onDidChangeDecorations(data => {
|
|
38
|
-
this.decorationsMap = data;
|
|
39
|
-
this.fireDidChangeDecorations((tree) => this.collectDecorators(tree));
|
|
40
|
-
});
|
|
41
|
-
}
|
|
42
|
-
collectDecorators(tree) {
|
|
43
|
-
const result = new Map();
|
|
44
|
-
if (tree.root === undefined || !this.decorationsMap) {
|
|
45
|
-
return result;
|
|
46
|
-
}
|
|
47
|
-
const markers = this.appendContainerChanges(this.decorationsMap);
|
|
48
|
-
for (const treeNode of new browser_1.DepthFirstTreeIterator(tree.root)) {
|
|
49
|
-
const uri = browser_2.FileStatNode.getUri(treeNode);
|
|
50
|
-
if (uri) {
|
|
51
|
-
const marker = markers.get(uri);
|
|
52
|
-
if (marker) {
|
|
53
|
-
result.set(treeNode.id, marker);
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
return new Map(Array.from(result.entries()).map(m => [m[0], this.toDecorator(m[1])]));
|
|
58
|
-
}
|
|
59
|
-
toDecorator(change) {
|
|
60
|
-
const colorVariable = change.colorId && this.colors.toCssVariableName(change.colorId);
|
|
61
|
-
return {
|
|
62
|
-
tailDecorations: [
|
|
63
|
-
{
|
|
64
|
-
data: change.letter ? change.letter : '',
|
|
65
|
-
fontData: {
|
|
66
|
-
color: colorVariable && `var(${colorVariable})`
|
|
67
|
-
},
|
|
68
|
-
tooltip: change.tooltip ? change.tooltip : ''
|
|
69
|
-
}
|
|
70
|
-
]
|
|
71
|
-
};
|
|
72
|
-
}
|
|
73
|
-
async decorations(tree) {
|
|
74
|
-
if (this.decorationsMap) {
|
|
75
|
-
return this.collectDecorators(tree);
|
|
76
|
-
}
|
|
77
|
-
else {
|
|
78
|
-
return new Map();
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
appendContainerChanges(decorationsMap) {
|
|
82
|
-
const result = new Map();
|
|
83
|
-
for (const [uri, data] of decorationsMap.entries()) {
|
|
84
|
-
const uriString = uri.toString();
|
|
85
|
-
result.set(uriString, data);
|
|
86
|
-
let parentUri = new uri_1.default(uri).parent;
|
|
87
|
-
while (parentUri && !parentUri.path.isRoot) {
|
|
88
|
-
const parentUriString = parentUri.toString();
|
|
89
|
-
const existing = result.get(parentUriString);
|
|
90
|
-
if (existing === undefined) {
|
|
91
|
-
result.set(parentUriString, data);
|
|
92
|
-
parentUri = parentUri.parent;
|
|
93
|
-
}
|
|
94
|
-
else {
|
|
95
|
-
parentUri = undefined;
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
return result;
|
|
100
|
-
}
|
|
101
|
-
get onDidChangeDecorations() {
|
|
102
|
-
return this.emitter.event;
|
|
103
|
-
}
|
|
104
|
-
fireDidChangeDecorations(event) {
|
|
105
|
-
this.emitter.fire(event);
|
|
106
|
-
}
|
|
107
|
-
};
|
|
108
|
-
exports.ScmNavigatorDecorator = ScmNavigatorDecorator;
|
|
109
|
-
tslib_1.__decorate([
|
|
110
|
-
(0, inversify_1.inject)(logger_1.ILogger),
|
|
111
|
-
tslib_1.__metadata("design:type", Object)
|
|
112
|
-
], ScmNavigatorDecorator.prototype, "logger", void 0);
|
|
113
|
-
tslib_1.__decorate([
|
|
114
|
-
(0, inversify_1.inject)(color_registry_1.ColorRegistry),
|
|
115
|
-
tslib_1.__metadata("design:type", color_registry_1.ColorRegistry)
|
|
116
|
-
], ScmNavigatorDecorator.prototype, "colors", void 0);
|
|
117
|
-
exports.ScmNavigatorDecorator = ScmNavigatorDecorator = tslib_1.__decorate([
|
|
118
|
-
(0, inversify_1.injectable)(),
|
|
119
|
-
tslib_1.__param(0, (0, inversify_1.inject)(decorations_service_1.DecorationsService)),
|
|
120
|
-
tslib_1.__metadata("design:paramtypes", [Object])
|
|
121
|
-
], ScmNavigatorDecorator);
|
|
122
|
-
//# sourceMappingURL=scm-navigator-decorator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scm-navigator-decorator.js","sourceRoot":"","sources":["../../../src/browser/decorations/scm-navigator-decorator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { TextEditorDocument } from '@theia/editor/lib/browser';
|
|
2
|
-
export interface ContentLines extends ArrayLike<string> {
|
|
3
|
-
readonly length: number;
|
|
4
|
-
getLineContent: (line: number) => string;
|
|
5
|
-
}
|
|
6
|
-
export interface ContentLinesArrayLike extends ContentLines, ArrayLike<string> {
|
|
7
|
-
[Symbol.iterator]: () => IterableIterator<string>;
|
|
8
|
-
readonly [n: number]: string;
|
|
9
|
-
}
|
|
10
|
-
export declare namespace ContentLines {
|
|
11
|
-
function fromString(content: string): ContentLines;
|
|
12
|
-
function fromTextEditorDocument(document: TextEditorDocument): ContentLines;
|
|
13
|
-
function arrayLike(lines: ContentLines): ContentLinesArrayLike;
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=content-lines.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"content-lines.d.ts","sourceRoot":"","sources":["../../../src/browser/dirty-diff/content-lines.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE/D,MAAM,WAAW,YAAa,SAAQ,SAAS,CAAC,MAAM,CAAC;IACnD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;CAC5C;AAED,MAAM,WAAW,qBAAsB,SAAQ,YAAY,EAAE,SAAS,CAAC,MAAM,CAAC;IAC1E,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAClD,QAAQ,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAChC;AAED,yBAAiB,YAAY,CAAC;IAI1B,SAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAmCxD;IAED,SAAgB,sBAAsB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,YAAY,CAKjF;IAED,SAAgB,SAAS,CAAC,KAAK,EAAE,YAAY,GAAG,qBAAqB,CAEpE;CA0CJ"}
|
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// *****************************************************************************
|
|
3
|
-
// Copyright (C) 2018 TypeFox 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
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.ContentLines = void 0;
|
|
19
|
-
var ContentLines;
|
|
20
|
-
(function (ContentLines) {
|
|
21
|
-
const NL = '\n'.charCodeAt(0);
|
|
22
|
-
const CR = '\r'.charCodeAt(0);
|
|
23
|
-
function fromString(content) {
|
|
24
|
-
const computeLineStarts = s => {
|
|
25
|
-
const result = [0];
|
|
26
|
-
for (let i = 0; i < s.length; i++) {
|
|
27
|
-
const chr = s.charCodeAt(i);
|
|
28
|
-
if (chr === CR) {
|
|
29
|
-
if (i + 1 < s.length && s.charCodeAt(i + 1) === NL) {
|
|
30
|
-
result[result.length] = i + 2;
|
|
31
|
-
i++;
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
result[result.length] = i + 1;
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
else if (chr === NL) {
|
|
38
|
-
result[result.length] = i + 1;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
return result;
|
|
42
|
-
};
|
|
43
|
-
const lineStarts = computeLineStarts(content);
|
|
44
|
-
return {
|
|
45
|
-
length: lineStarts.length,
|
|
46
|
-
getLineContent: line => {
|
|
47
|
-
if (line >= lineStarts.length) {
|
|
48
|
-
throw new Error('line index out of bounds');
|
|
49
|
-
}
|
|
50
|
-
const start = lineStarts[line];
|
|
51
|
-
let end = (line === lineStarts.length - 1) ? undefined : lineStarts[line + 1] - 1;
|
|
52
|
-
if (!!end && content.charCodeAt(end - 1) === CR) {
|
|
53
|
-
end--; // ignore CR at the end
|
|
54
|
-
}
|
|
55
|
-
const lineContent = content.substring(start, end);
|
|
56
|
-
return lineContent;
|
|
57
|
-
}
|
|
58
|
-
};
|
|
59
|
-
}
|
|
60
|
-
ContentLines.fromString = fromString;
|
|
61
|
-
function fromTextEditorDocument(document) {
|
|
62
|
-
return {
|
|
63
|
-
length: document.lineCount,
|
|
64
|
-
getLineContent: line => document.getLineContent(line + 1),
|
|
65
|
-
};
|
|
66
|
-
}
|
|
67
|
-
ContentLines.fromTextEditorDocument = fromTextEditorDocument;
|
|
68
|
-
function arrayLike(lines) {
|
|
69
|
-
return new Proxy(lines, getProxyHandler());
|
|
70
|
-
}
|
|
71
|
-
ContentLines.arrayLike = arrayLike;
|
|
72
|
-
function getProxyHandler() {
|
|
73
|
-
return {
|
|
74
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
75
|
-
get(target, p) {
|
|
76
|
-
switch (p) {
|
|
77
|
-
case 'prototype':
|
|
78
|
-
return undefined;
|
|
79
|
-
case 'length':
|
|
80
|
-
return target.length;
|
|
81
|
-
case 'slice':
|
|
82
|
-
return (start, end) => {
|
|
83
|
-
if (start !== undefined) {
|
|
84
|
-
return [start, (end !== undefined ? end - 1 : target.length - 1)];
|
|
85
|
-
}
|
|
86
|
-
return [0, target.length - 1];
|
|
87
|
-
};
|
|
88
|
-
case Symbol.iterator:
|
|
89
|
-
return function* () {
|
|
90
|
-
for (let i = 0; i < target.length; i++) {
|
|
91
|
-
yield target.getLineContent(i);
|
|
92
|
-
}
|
|
93
|
-
};
|
|
94
|
-
}
|
|
95
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
96
|
-
const index = Number.parseInt(p);
|
|
97
|
-
if (Number.isInteger(index)) {
|
|
98
|
-
if (index >= 0 && index < target.length) {
|
|
99
|
-
const value = target.getLineContent(index);
|
|
100
|
-
if (value === undefined) {
|
|
101
|
-
console.log(target);
|
|
102
|
-
}
|
|
103
|
-
return value;
|
|
104
|
-
}
|
|
105
|
-
else {
|
|
106
|
-
return undefined;
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
throw new Error(`get ${String(p)} not implemented`);
|
|
110
|
-
}
|
|
111
|
-
};
|
|
112
|
-
}
|
|
113
|
-
})(ContentLines || (exports.ContentLines = ContentLines = {}));
|
|
114
|
-
//# sourceMappingURL=content-lines.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"content-lines.js","sourceRoot":"","sources":["../../../src/browser/dirty-diff/content-lines.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"content-lines.spec.d.ts","sourceRoot":"","sources":["../../../src/browser/dirty-diff/content-lines.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// *****************************************************************************
|
|
3
|
-
// Copyright (C) 2018 TypeFox 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
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
const chai = require("chai");
|
|
19
|
-
const content_lines_1 = require("./content-lines");
|
|
20
|
-
const chai_1 = require("chai");
|
|
21
|
-
chai.use(require('chai-string'));
|
|
22
|
-
describe('content-lines', () => {
|
|
23
|
-
it('array-like access of lines without splitting', () => {
|
|
24
|
-
const raw = 'abc\ndef\n123\n456';
|
|
25
|
-
const linesArray = content_lines_1.ContentLines.arrayLike(content_lines_1.ContentLines.fromString(raw));
|
|
26
|
-
(0, chai_1.expect)(linesArray[0]).to.be.equal('abc');
|
|
27
|
-
(0, chai_1.expect)(linesArray[1]).to.be.equal('def');
|
|
28
|
-
(0, chai_1.expect)(linesArray[2]).to.be.equal('123');
|
|
29
|
-
(0, chai_1.expect)(linesArray[3]).to.be.equal('456');
|
|
30
|
-
});
|
|
31
|
-
it('works with CRLF', () => {
|
|
32
|
-
const raw = 'abc\ndef\r\n123\r456';
|
|
33
|
-
const linesArray = content_lines_1.ContentLines.arrayLike(content_lines_1.ContentLines.fromString(raw));
|
|
34
|
-
(0, chai_1.expect)(linesArray[0]).to.be.equal('abc');
|
|
35
|
-
(0, chai_1.expect)(linesArray[1]).to.be.equal('def');
|
|
36
|
-
(0, chai_1.expect)(linesArray[2]).to.be.equal('123');
|
|
37
|
-
(0, chai_1.expect)(linesArray[3]).to.be.equal('456');
|
|
38
|
-
});
|
|
39
|
-
});
|
|
40
|
-
//# sourceMappingURL=content-lines.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"content-lines.spec.js","sourceRoot":"","sources":["../../../src/browser/dirty-diff/content-lines.spec.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,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;;AAEhF,6BAA6B;AAC7B,mDAA+C;AAC/C,+BAA8B;AAC9B,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;AAEjC,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAE3B,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACpD,MAAM,GAAG,GAAG,oBAAoB,CAAC;QACjC,MAAM,UAAU,GAAG,4BAAY,CAAC,SAAS,CAAC,4BAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;QACxE,IAAA,aAAM,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACzC,IAAA,aAAM,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACzC,IAAA,aAAM,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACzC,IAAA,aAAM,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE;QACvB,MAAM,GAAG,GAAG,sBAAsB,CAAC;QACnC,MAAM,UAAU,GAAG,4BAAY,CAAC,SAAS,CAAC,4BAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;QACxE,IAAA,aAAM,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACzC,IAAA,aAAM,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACzC,IAAA,aAAM,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACzC,IAAA,aAAM,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;AAEP,CAAC,CAAC,CAAC"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { ContentLinesArrayLike } from './content-lines';
|
|
2
|
-
import { Position, Range } from '@theia/core/shared/vscode-languageserver-protocol';
|
|
3
|
-
export declare class DiffComputer {
|
|
4
|
-
computeDiff(previous: ContentLinesArrayLike, current: ContentLinesArrayLike): DiffResult[];
|
|
5
|
-
computeDirtyDiff(previous: ContentLinesArrayLike, current: ContentLinesArrayLike): DirtyDiff;
|
|
6
|
-
}
|
|
7
|
-
export interface DiffResult {
|
|
8
|
-
value: [number, number];
|
|
9
|
-
count?: number;
|
|
10
|
-
added?: boolean;
|
|
11
|
-
removed?: boolean;
|
|
12
|
-
}
|
|
13
|
-
export interface DirtyDiff {
|
|
14
|
-
readonly changes: readonly Change[];
|
|
15
|
-
}
|
|
16
|
-
export interface Change {
|
|
17
|
-
readonly previousRange: LineRange;
|
|
18
|
-
readonly currentRange: LineRange;
|
|
19
|
-
}
|
|
20
|
-
export declare namespace Change {
|
|
21
|
-
function isAddition(change: Change): boolean;
|
|
22
|
-
function isRemoval(change: Change): boolean;
|
|
23
|
-
function isModification(change: Change): boolean;
|
|
24
|
-
}
|
|
25
|
-
export interface LineRange {
|
|
26
|
-
readonly start: number;
|
|
27
|
-
readonly end: number;
|
|
28
|
-
}
|
|
29
|
-
export declare namespace LineRange {
|
|
30
|
-
function create(start: number, end: number): LineRange;
|
|
31
|
-
function createSingleLineRange(line: number): LineRange;
|
|
32
|
-
function createEmptyLineRange(line: number): LineRange;
|
|
33
|
-
function isEmpty(range: LineRange): boolean;
|
|
34
|
-
function getStartPosition(range: LineRange): Position;
|
|
35
|
-
function getEndPosition(range: LineRange): Position;
|
|
36
|
-
function toRange(range: LineRange): Range;
|
|
37
|
-
function getLineCount(range: LineRange): number;
|
|
38
|
-
}
|
|
39
|
-
//# sourceMappingURL=diff-computer.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"diff-computer.d.ts","sourceRoot":"","sources":["../../../src/browser/dirty-diff/diff-computer.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAY,MAAM,mDAAmD,CAAC;AAE9F,qBAAa,YAAY;IAErB,WAAW,CAAC,QAAQ,EAAE,qBAAqB,EAAE,OAAO,EAAE,qBAAqB,GAAG,UAAU,EAAE;IAK1F,gBAAgB,CAAC,QAAQ,EAAE,qBAAqB,EAAE,OAAO,EAAE,qBAAqB,GAAG,SAAS;CAiD/F;AAiCD,MAAM,WAAW,UAAU;IACvB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,SAAS;IACtB,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;CACvC;AAED,MAAM,WAAW,MAAM;IACnB,QAAQ,CAAC,aAAa,EAAE,SAAS,CAAC;IAClC,QAAQ,CAAC,YAAY,EAAE,SAAS,CAAC;CACpC;AAED,yBAAiB,MAAM,CAAC;IACpB,SAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAElD;IACD,SAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAEjD;IACD,SAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAEtD;CACJ;AAED,MAAM,WAAW,SAAS;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACxB;AAED,yBAAiB,SAAS,CAAC;IACvB,SAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,CAK5D;IACD,SAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAE7D;IACD,SAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAE5D;IACD,SAAgB,OAAO,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAEjD;IACD,SAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,GAAG,QAAQ,CAK3D;IACD,SAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,QAAQ,CAKzD;IACD,SAAgB,OAAO,CAAC,KAAK,EAAE,SAAS,GAAG,KAAK,CAE/C;IACD,SAAgB,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAErD;CACJ"}
|