@theia/scm 1.75.0-next.18 → 1.75.0-next.21
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/lib/browser/scm-frontend-module.d.ts.map +1 -1
- package/lib/browser/scm-frontend-module.js +6 -0
- package/lib/browser/scm-frontend-module.js.map +1 -1
- package/lib/browser/scm-history-graph-contribution.d.ts +42 -0
- package/lib/browser/scm-history-graph-contribution.d.ts.map +1 -0
- package/lib/browser/scm-history-graph-contribution.js +220 -0
- package/lib/browser/scm-history-graph-contribution.js.map +1 -0
- package/lib/browser/scm-history-graph-contribution.spec.d.ts +2 -0
- package/lib/browser/scm-history-graph-contribution.spec.d.ts.map +1 -0
- package/lib/browser/scm-history-graph-contribution.spec.js +66 -0
- package/lib/browser/scm-history-graph-contribution.spec.js.map +1 -0
- package/lib/browser/scm-history-graph-helpers.d.ts +8 -0
- package/lib/browser/scm-history-graph-helpers.d.ts.map +1 -1
- package/lib/browser/scm-history-graph-helpers.js +20 -0
- package/lib/browser/scm-history-graph-helpers.js.map +1 -1
- package/lib/browser/scm-history-graph-helpers.spec.js +25 -0
- package/lib/browser/scm-history-graph-helpers.spec.js.map +1 -1
- package/lib/browser/scm-history-graph-model.d.ts +43 -5
- package/lib/browser/scm-history-graph-model.d.ts.map +1 -1
- package/lib/browser/scm-history-graph-model.js +84 -10
- package/lib/browser/scm-history-graph-model.js.map +1 -1
- package/lib/browser/scm-history-graph-model.spec.js +145 -4
- package/lib/browser/scm-history-graph-model.spec.js.map +1 -1
- package/lib/browser/scm-history-graph-widget.d.ts +8 -1
- package/lib/browser/scm-history-graph-widget.d.ts.map +1 -1
- package/lib/browser/scm-history-graph-widget.js +23 -4
- package/lib/browser/scm-history-graph-widget.js.map +1 -1
- package/lib/browser/scm-history-graph-widget.spec.js +11 -1
- package/lib/browser/scm-history-graph-widget.spec.js.map +1 -1
- package/lib/common/scm-preferences.d.ts +3 -0
- package/lib/common/scm-preferences.d.ts.map +1 -1
- package/lib/common/scm-preferences.js +24 -0
- package/lib/common/scm-preferences.js.map +1 -1
- package/package.json +6 -6
- package/src/browser/scm-frontend-module.ts +7 -1
- package/src/browser/scm-history-graph-contribution.spec.ts +83 -0
- package/src/browser/scm-history-graph-contribution.ts +220 -0
- package/src/browser/scm-history-graph-helpers.spec.ts +34 -1
- package/src/browser/scm-history-graph-helpers.ts +25 -0
- package/src/browser/scm-history-graph-model.spec.ts +184 -9
- package/src/browser/scm-history-graph-model.ts +99 -11
- package/src/browser/scm-history-graph-widget.spec.ts +12 -1
- package/src/browser/scm-history-graph-widget.tsx +26 -6
- package/src/common/scm-preferences.ts +27 -0
|
@@ -2,9 +2,19 @@ import { DisposableCollection } from '@theia/core/lib/common/disposable';
|
|
|
2
2
|
import { Emitter } from '@theia/core/lib/common/event';
|
|
3
3
|
import { CancellationTokenSource } from '@theia/core/lib/common/cancellation';
|
|
4
4
|
import { ScmService } from './scm-service';
|
|
5
|
-
import { ScmHistoryItem, ScmHistoryProvider } from './scm-provider';
|
|
5
|
+
import { ScmHistoryItem, ScmHistoryItemRef, ScmHistoryProvider } from './scm-provider';
|
|
6
6
|
import { GraphRow } from './scm-history-graph-lanes';
|
|
7
|
+
import { ScmPreferences } from '../common/scm-preferences';
|
|
7
8
|
export declare const PAGE_SIZE = 50;
|
|
9
|
+
export declare const ScmHistoryGraphModelProvider: unique symbol;
|
|
10
|
+
/**
|
|
11
|
+
* Resolves the {@link ScmHistoryGraphModel} singleton on first use. The model
|
|
12
|
+
* starts loading history and subscribing to provider events as soon as it is
|
|
13
|
+
* instantiated, so clients that may not need it (e.g. command contributions
|
|
14
|
+
* instantiated at application start) must inject this provider instead of the
|
|
15
|
+
* model itself.
|
|
16
|
+
*/
|
|
17
|
+
export type ScmHistoryGraphModelProvider = () => ScmHistoryGraphModel;
|
|
8
18
|
export interface HistoryGraphEntry {
|
|
9
19
|
readonly item: ScmHistoryItem;
|
|
10
20
|
readonly graphRow: GraphRow;
|
|
@@ -13,6 +23,7 @@ export interface HistoryGraphEntry {
|
|
|
13
23
|
}
|
|
14
24
|
export declare class ScmHistoryGraphModel {
|
|
15
25
|
protected readonly scmService: ScmService;
|
|
26
|
+
protected readonly scmPreferences: ScmPreferences;
|
|
16
27
|
protected readonly toDispose: DisposableCollection;
|
|
17
28
|
protected readonly toDisposeOnProviderChange: DisposableCollection;
|
|
18
29
|
protected _entries: HistoryGraphEntry[];
|
|
@@ -20,12 +31,26 @@ export declare class ScmHistoryGraphModel {
|
|
|
20
31
|
protected _loading: boolean;
|
|
21
32
|
protected _hasAttemptedLoad: boolean;
|
|
22
33
|
protected _provider: ScmHistoryProvider | undefined;
|
|
34
|
+
/** Explicitly picked ref ids to filter the graph by; `undefined` = auto (current/remote/base). */
|
|
35
|
+
protected _historyItemRefFilter: string[] | undefined;
|
|
23
36
|
protected readonly onDidChangeEmitter: Emitter<void>;
|
|
24
37
|
readonly onDidChange: import("@theia/core/lib/common/event").Event<void>;
|
|
25
38
|
protected cancelSource: CancellationTokenSource;
|
|
26
39
|
protected init(): void;
|
|
27
40
|
dispose(): void;
|
|
28
41
|
get provider(): ScmHistoryProvider | undefined;
|
|
42
|
+
/** The explicitly picked ref ids filtering the graph, or `undefined` in auto mode. */
|
|
43
|
+
get historyItemRefFilter(): readonly string[] | undefined;
|
|
44
|
+
/**
|
|
45
|
+
* Sets the ref ids to filter the graph by (`undefined` returns to auto
|
|
46
|
+
* mode) and reloads the graph.
|
|
47
|
+
*/
|
|
48
|
+
setHistoryItemRefFilter(refIds: readonly string[] | undefined): void;
|
|
49
|
+
/**
|
|
50
|
+
* Whether the current history item ref is part of the graph's filter.
|
|
51
|
+
* Always true in auto mode, which includes the current ref.
|
|
52
|
+
*/
|
|
53
|
+
isCurrentRefInFilter(): boolean;
|
|
29
54
|
get entries(): readonly HistoryGraphEntry[];
|
|
30
55
|
get hasMore(): boolean;
|
|
31
56
|
get loading(): boolean;
|
|
@@ -36,17 +61,30 @@ export declare class ScmHistoryGraphModel {
|
|
|
36
61
|
*/
|
|
37
62
|
get hasAttemptedLoad(): boolean;
|
|
38
63
|
refresh(): void;
|
|
64
|
+
/**
|
|
65
|
+
* Drops refs that no longer exist from the explicit filter, so that
|
|
66
|
+
* deleting or renaming a filtered ref does not leave the graph stuck
|
|
67
|
+
* requesting history for it. When the last filtered ref is removed,
|
|
68
|
+
* the filter falls back to auto mode.
|
|
69
|
+
*/
|
|
70
|
+
protected pruneHistoryItemRefFilter(removed: readonly ScmHistoryItemRef[]): void;
|
|
71
|
+
/** Clears the loaded entries and loads the first page again from the current provider. */
|
|
72
|
+
protected reload(): void;
|
|
39
73
|
loadMore(): Promise<void>;
|
|
40
74
|
protected loadPage(): Promise<void>;
|
|
75
|
+
/** The configured page size (`scm.graph.pageSize`). */
|
|
76
|
+
protected get pageSize(): number;
|
|
41
77
|
/**
|
|
42
78
|
* Resolves the ref-based color index of an item from its references,
|
|
43
|
-
* preferring current (0) over remote (1) over base (2).
|
|
79
|
+
* preferring current (0) over remote (1) over base (2). Refs excluded by
|
|
80
|
+
* an explicit filter get no role color, mirroring VS Code's color map.
|
|
44
81
|
*/
|
|
45
82
|
protected resolveColorIndex(item: ScmHistoryItem): number | undefined;
|
|
46
83
|
/**
|
|
47
|
-
* Returns the
|
|
48
|
-
*
|
|
49
|
-
*
|
|
84
|
+
* Returns the refs to pass to `provideHistoryItems`: the explicitly picked
|
|
85
|
+
* ref ids when a filter is active, otherwise (auto mode) the revisions of
|
|
86
|
+
* the current branch ref, its remote tracking ref, and the merge-base ref.
|
|
87
|
+
* Providers walk history starting from these refs.
|
|
50
88
|
*/
|
|
51
89
|
protected getCurrentHistoryItemRefs(): string[];
|
|
52
90
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scm-history-graph-model.d.ts","sourceRoot":"","sources":["../../src/browser/scm-history-graph-model.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAc,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACrF,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAqB,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"scm-history-graph-model.d.ts","sourceRoot":"","sources":["../../src/browser/scm-history-graph-model.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAc,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACrF,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,kBAAkB,EAAqB,MAAM,gBAAgB,CAAC;AAC1G,OAAO,EAAoB,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAEvE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,eAAO,MAAM,SAAS,KAAK,CAAC;AAE5B,eAAO,MAAM,4BAA4B,eAAyC,CAAC;AACnF;;;;;;GAMG;AACH,MAAM,MAAM,4BAA4B,GAAG,MAAM,oBAAoB,CAAC;AAEtE,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,uFAAuF;IACvF,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC/B;AAED,qBACa,oBAAoB;IAET,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IACtC,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IAE1E,SAAS,CAAC,QAAQ,CAAC,SAAS,uBAA8B;IAC1D,SAAS,CAAC,QAAQ,CAAC,yBAAyB,uBAA8B;IAE1E,SAAS,CAAC,QAAQ,EAAE,iBAAiB,EAAE,CAAM;IAC7C,SAAS,CAAC,QAAQ,UAAS;IAC3B,SAAS,CAAC,QAAQ,UAAS;IAC3B,SAAS,CAAC,iBAAiB,UAAS;IACpC,SAAS,CAAC,SAAS,EAAE,kBAAkB,GAAG,SAAS,CAAC;IACpD,kGAAkG;IAClG,SAAS,CAAC,qBAAqB,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAEtD,SAAS,CAAC,QAAQ,CAAC,kBAAkB,gBAAuB;IAC5D,QAAQ,CAAC,WAAW,qDAAiC;IAErD,SAAS,CAAC,YAAY,0BAAiC;IAGvD,SAAS,CAAC,IAAI,IAAI,IAAI;IActB,OAAO,IAAI,IAAI;IAKf,IAAI,QAAQ,IAAI,kBAAkB,GAAG,SAAS,CAE7C;IAED,sFAAsF;IACtF,IAAI,oBAAoB,IAAI,SAAS,MAAM,EAAE,GAAG,SAAS,CAExD;IAED;;;OAGG;IACH,uBAAuB,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,GAAG,IAAI;IAKpE;;;OAGG;IACH,oBAAoB,IAAI,OAAO;IAQ/B,IAAI,OAAO,IAAI,SAAS,iBAAiB,EAAE,CAE1C;IAED,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;;;OAIG;IACH,IAAI,gBAAgB,IAAI,OAAO,CAE9B;IAED,OAAO,IAAI,IAAI;IAgCf;;;;;OAKG;IACH,SAAS,CAAC,yBAAyB,CAAC,OAAO,EAAE,SAAS,iBAAiB,EAAE,GAAG,IAAI;IAWhF,0FAA0F;IAC1F,SAAS,CAAC,MAAM,IAAI,IAAI;IAUlB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;cAOf,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IA6DzC,uDAAuD;IACvD,SAAS,KAAK,QAAQ,IAAI,MAAM,CAE/B;IAED;;;;OAIG;IACH,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,GAAG,SAAS;IAcrE;;;;;OAKG;IACH,SAAS,CAAC,yBAAyB,IAAI,MAAM,EAAE;CAmBlD"}
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
16
|
// *****************************************************************************
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.ScmHistoryGraphModel = exports.PAGE_SIZE = void 0;
|
|
18
|
+
exports.ScmHistoryGraphModel = exports.ScmHistoryGraphModelProvider = exports.PAGE_SIZE = void 0;
|
|
19
19
|
const tslib_1 = require("tslib");
|
|
20
20
|
const inversify_1 = require("@theia/core/shared/inversify");
|
|
21
21
|
const disposable_1 = require("@theia/core/lib/common/disposable");
|
|
@@ -24,7 +24,9 @@ const cancellation_1 = require("@theia/core/lib/common/cancellation");
|
|
|
24
24
|
const scm_service_1 = require("./scm-service");
|
|
25
25
|
const scm_history_graph_lanes_1 = require("./scm-history-graph-lanes");
|
|
26
26
|
const scm_history_graph_helpers_1 = require("./scm-history-graph-helpers");
|
|
27
|
+
const scm_preferences_1 = require("../common/scm-preferences");
|
|
27
28
|
exports.PAGE_SIZE = 50;
|
|
29
|
+
exports.ScmHistoryGraphModelProvider = Symbol('ScmHistoryGraphModelProvider');
|
|
28
30
|
let ScmHistoryGraphModel = class ScmHistoryGraphModel {
|
|
29
31
|
constructor() {
|
|
30
32
|
this.toDispose = new disposable_1.DisposableCollection();
|
|
@@ -42,6 +44,11 @@ let ScmHistoryGraphModel = class ScmHistoryGraphModel {
|
|
|
42
44
|
disposable_1.Disposable.create(() => this.toDisposeOnProviderChange.dispose()),
|
|
43
45
|
this.onDidChangeEmitter,
|
|
44
46
|
this.scmService.onDidChangeSelectedRepository(() => this.refresh()),
|
|
47
|
+
this.scmPreferences.onPreferenceChanged(e => {
|
|
48
|
+
if (e.preferenceName === 'scm.graph.pageSize') {
|
|
49
|
+
this.reload();
|
|
50
|
+
}
|
|
51
|
+
}),
|
|
45
52
|
]);
|
|
46
53
|
this.refresh();
|
|
47
54
|
}
|
|
@@ -52,6 +59,29 @@ let ScmHistoryGraphModel = class ScmHistoryGraphModel {
|
|
|
52
59
|
get provider() {
|
|
53
60
|
return this._provider;
|
|
54
61
|
}
|
|
62
|
+
/** The explicitly picked ref ids filtering the graph, or `undefined` in auto mode. */
|
|
63
|
+
get historyItemRefFilter() {
|
|
64
|
+
return this._historyItemRefFilter;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Sets the ref ids to filter the graph by (`undefined` returns to auto
|
|
68
|
+
* mode) and reloads the graph.
|
|
69
|
+
*/
|
|
70
|
+
setHistoryItemRefFilter(refIds) {
|
|
71
|
+
this._historyItemRefFilter = refIds && refIds.length > 0 ? [...refIds] : undefined;
|
|
72
|
+
this.reload();
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Whether the current history item ref is part of the graph's filter.
|
|
76
|
+
* Always true in auto mode, which includes the current ref.
|
|
77
|
+
*/
|
|
78
|
+
isCurrentRefInFilter() {
|
|
79
|
+
if (!this._historyItemRefFilter) {
|
|
80
|
+
return true;
|
|
81
|
+
}
|
|
82
|
+
const currentId = this._provider?.currentHistoryItemRef?.id;
|
|
83
|
+
return currentId !== undefined && this._historyItemRefFilter.includes(currentId);
|
|
84
|
+
}
|
|
55
85
|
get entries() {
|
|
56
86
|
return this._entries;
|
|
57
87
|
}
|
|
@@ -70,21 +100,48 @@ let ScmHistoryGraphModel = class ScmHistoryGraphModel {
|
|
|
70
100
|
return this._hasAttemptedLoad;
|
|
71
101
|
}
|
|
72
102
|
refresh() {
|
|
73
|
-
this.cancelSource.cancel();
|
|
74
|
-
this.cancelSource = new cancellation_1.CancellationTokenSource();
|
|
75
103
|
this.toDisposeOnProviderChange.dispose();
|
|
76
104
|
const repo = this.scmService.selectedRepository;
|
|
77
105
|
const hp = repo?.provider.historyProvider;
|
|
106
|
+
if (hp !== this._provider) {
|
|
107
|
+
// The repository changed — a filter picked for the old provider does not apply.
|
|
108
|
+
this._historyItemRefFilter = undefined;
|
|
109
|
+
}
|
|
78
110
|
this._provider = hp;
|
|
79
111
|
if (this._provider) {
|
|
80
112
|
this.toDisposeOnProviderChange.push(this._provider.onDidChangeCurrentHistoryItemRefs(() => this.refresh()));
|
|
81
|
-
this.toDisposeOnProviderChange.push(this._provider.onDidChangeHistoryItemRefs(
|
|
113
|
+
this.toDisposeOnProviderChange.push(this._provider.onDidChangeHistoryItemRefs(e => {
|
|
114
|
+
this.pruneHistoryItemRefFilter(e.removed);
|
|
115
|
+
this.refresh();
|
|
116
|
+
}));
|
|
82
117
|
}
|
|
83
118
|
else if (repo) {
|
|
84
119
|
// historyProvider is not yet available; listen for provider changes
|
|
85
120
|
// so that refresh() is retried when historyProvider becomes available.
|
|
86
121
|
this.toDisposeOnProviderChange.push(repo.provider.onDidChange(() => this.refresh()));
|
|
87
122
|
}
|
|
123
|
+
this.reload();
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Drops refs that no longer exist from the explicit filter, so that
|
|
127
|
+
* deleting or renaming a filtered ref does not leave the graph stuck
|
|
128
|
+
* requesting history for it. When the last filtered ref is removed,
|
|
129
|
+
* the filter falls back to auto mode.
|
|
130
|
+
*/
|
|
131
|
+
pruneHistoryItemRefFilter(removed) {
|
|
132
|
+
if (!this._historyItemRefFilter || removed.length === 0) {
|
|
133
|
+
return;
|
|
134
|
+
}
|
|
135
|
+
const removedIds = new Set(removed.map(ref => ref.id));
|
|
136
|
+
const remaining = this._historyItemRefFilter.filter(id => !removedIds.has(id));
|
|
137
|
+
if (remaining.length !== this._historyItemRefFilter.length) {
|
|
138
|
+
this._historyItemRefFilter = remaining.length > 0 ? remaining : undefined;
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
/** Clears the loaded entries and loads the first page again from the current provider. */
|
|
142
|
+
reload() {
|
|
143
|
+
this.cancelSource.cancel();
|
|
144
|
+
this.cancelSource = new cancellation_1.CancellationTokenSource();
|
|
88
145
|
this._entries = [];
|
|
89
146
|
this._hasMore = false;
|
|
90
147
|
this.loadPage();
|
|
@@ -108,10 +165,11 @@ let ScmHistoryGraphModel = class ScmHistoryGraphModel {
|
|
|
108
165
|
this.onDidChangeEmitter.fire();
|
|
109
166
|
const token = this.cancelSource.token;
|
|
110
167
|
try {
|
|
168
|
+
const pageSize = this.pageSize;
|
|
111
169
|
const historyItemRefs = this.getCurrentHistoryItemRefs();
|
|
112
170
|
const options = {
|
|
113
171
|
skip: this._entries.length,
|
|
114
|
-
limit:
|
|
172
|
+
limit: pageSize,
|
|
115
173
|
historyItemRefs: historyItemRefs.length > 0 ? historyItemRefs : undefined,
|
|
116
174
|
};
|
|
117
175
|
const items = await this._provider.provideHistoryItems(options, token);
|
|
@@ -119,7 +177,7 @@ let ScmHistoryGraphModel = class ScmHistoryGraphModel {
|
|
|
119
177
|
return;
|
|
120
178
|
}
|
|
121
179
|
const fetchedItems = items ?? [];
|
|
122
|
-
this._hasMore = fetchedItems.length >=
|
|
180
|
+
this._hasMore = fetchedItems.length >= pageSize;
|
|
123
181
|
// Filter out any items already loaded so the graph does not show duplicates.
|
|
124
182
|
const existingIds = new Set(this._entries.map(e => e.item.id));
|
|
125
183
|
const newItems = fetchedItems.filter(i => !existingIds.has(i.id));
|
|
@@ -149,13 +207,21 @@ let ScmHistoryGraphModel = class ScmHistoryGraphModel {
|
|
|
149
207
|
}
|
|
150
208
|
}
|
|
151
209
|
}
|
|
210
|
+
/** The configured page size (`scm.graph.pageSize`). */
|
|
211
|
+
get pageSize() {
|
|
212
|
+
return this.scmPreferences['scm.graph.pageSize'] ?? exports.PAGE_SIZE;
|
|
213
|
+
}
|
|
152
214
|
/**
|
|
153
215
|
* Resolves the ref-based color index of an item from its references,
|
|
154
|
-
* preferring current (0) over remote (1) over base (2).
|
|
216
|
+
* preferring current (0) over remote (1) over base (2). Refs excluded by
|
|
217
|
+
* an explicit filter get no role color, mirroring VS Code's color map.
|
|
155
218
|
*/
|
|
156
219
|
resolveColorIndex(item) {
|
|
157
220
|
let result;
|
|
158
221
|
for (const ref of item.references ?? []) {
|
|
222
|
+
if (this._historyItemRefFilter && !this._historyItemRefFilter.includes(ref.id)) {
|
|
223
|
+
continue;
|
|
224
|
+
}
|
|
159
225
|
const index = (0, scm_history_graph_helpers_1.getRefColorIndex)(ref, this._provider);
|
|
160
226
|
if (index !== undefined && (result === undefined || index < result)) {
|
|
161
227
|
result = index;
|
|
@@ -164,11 +230,15 @@ let ScmHistoryGraphModel = class ScmHistoryGraphModel {
|
|
|
164
230
|
return result;
|
|
165
231
|
}
|
|
166
232
|
/**
|
|
167
|
-
* Returns the
|
|
168
|
-
*
|
|
169
|
-
*
|
|
233
|
+
* Returns the refs to pass to `provideHistoryItems`: the explicitly picked
|
|
234
|
+
* ref ids when a filter is active, otherwise (auto mode) the revisions of
|
|
235
|
+
* the current branch ref, its remote tracking ref, and the merge-base ref.
|
|
236
|
+
* Providers walk history starting from these refs.
|
|
170
237
|
*/
|
|
171
238
|
getCurrentHistoryItemRefs() {
|
|
239
|
+
if (this._historyItemRefFilter) {
|
|
240
|
+
return [...this._historyItemRefFilter];
|
|
241
|
+
}
|
|
172
242
|
if (!this._provider) {
|
|
173
243
|
return [];
|
|
174
244
|
}
|
|
@@ -190,6 +260,10 @@ tslib_1.__decorate([
|
|
|
190
260
|
(0, inversify_1.inject)(scm_service_1.ScmService),
|
|
191
261
|
tslib_1.__metadata("design:type", scm_service_1.ScmService)
|
|
192
262
|
], ScmHistoryGraphModel.prototype, "scmService", void 0);
|
|
263
|
+
tslib_1.__decorate([
|
|
264
|
+
(0, inversify_1.inject)(scm_preferences_1.ScmPreferences),
|
|
265
|
+
tslib_1.__metadata("design:type", Object)
|
|
266
|
+
], ScmHistoryGraphModel.prototype, "scmPreferences", void 0);
|
|
193
267
|
tslib_1.__decorate([
|
|
194
268
|
(0, inversify_1.postConstruct)(),
|
|
195
269
|
tslib_1.__metadata("design:type", Function),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scm-history-graph-model.js","sourceRoot":"","sources":["../../src/browser/scm-history-graph-model.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,oDAAoD;AACpD,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,4DAAiF;AACjF,kEAAqF;AACrF,wDAAuD;AACvD,sEAA8E;AAC9E,+CAA2C;AAE3C,uEAAuE;AACvE,2EAA+D;
|
|
1
|
+
{"version":3,"file":"scm-history-graph-model.js","sourceRoot":"","sources":["../../src/browser/scm-history-graph-model.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,12 +21,16 @@ const scm_history_graph_model_1 = require("./scm-history-graph-model");
|
|
|
21
21
|
class StubHistoryProvider {
|
|
22
22
|
constructor() {
|
|
23
23
|
this.onDidChangeCurrentHistoryItemRefs = new event_1.Emitter().event;
|
|
24
|
-
this.
|
|
24
|
+
this.onDidChangeHistoryItemRefsEmitter = new event_1.Emitter();
|
|
25
|
+
this.onDidChangeHistoryItemRefs = this.onDidChangeHistoryItemRefsEmitter.event;
|
|
25
26
|
/** Pages this provider will return on consecutive calls (FIFO). */
|
|
26
27
|
this.pages = [];
|
|
27
28
|
/** Captured options for each call (so tests can assert what was sent). */
|
|
28
29
|
this.receivedOptions = [];
|
|
29
30
|
}
|
|
31
|
+
fireHistoryItemRefsChanged(event) {
|
|
32
|
+
this.onDidChangeHistoryItemRefsEmitter.fire(event);
|
|
33
|
+
}
|
|
30
34
|
async provideHistoryItemRefs() {
|
|
31
35
|
return [];
|
|
32
36
|
}
|
|
@@ -59,21 +63,31 @@ function makeItems(start, count) {
|
|
|
59
63
|
/**
|
|
60
64
|
* Instantiates the model with a stub provider, bypassing inversify and the
|
|
61
65
|
* SCM service so tests can drive pagination directly via loadPage().
|
|
66
|
+
* When `wireRepository` is set, the provider is instead wired through a stub
|
|
67
|
+
* selected repository and refresh(), so provider event subscriptions are live.
|
|
62
68
|
*/
|
|
63
|
-
function createModel(provider) {
|
|
69
|
+
function createModel(provider, preferences = {}, wireRepository = false) {
|
|
64
70
|
const model = new scm_history_graph_model_1.ScmHistoryGraphModel();
|
|
65
71
|
const internals = model;
|
|
72
|
+
const preferenceEmitter = new event_1.Emitter();
|
|
66
73
|
internals.scmService = {
|
|
67
74
|
onDidChangeSelectedRepository: new event_1.Emitter().event,
|
|
68
|
-
selectedRepository: undefined,
|
|
75
|
+
selectedRepository: wireRepository ? { provider: { historyProvider: provider } } : undefined,
|
|
69
76
|
};
|
|
77
|
+
internals.scmPreferences = Object.assign(preferences, { onPreferenceChanged: preferenceEmitter.event });
|
|
70
78
|
internals.init();
|
|
71
|
-
|
|
79
|
+
if (!wireRepository) {
|
|
80
|
+
internals._provider = provider;
|
|
81
|
+
}
|
|
72
82
|
return {
|
|
73
83
|
model,
|
|
74
84
|
loadPage: () => internals.loadPage(),
|
|
85
|
+
firePreferenceChanged: preferenceName => preferenceEmitter.fire({ preferenceName }),
|
|
75
86
|
};
|
|
76
87
|
}
|
|
88
|
+
async function nextTick() {
|
|
89
|
+
return new Promise(resolve => setTimeout(resolve, 0));
|
|
90
|
+
}
|
|
77
91
|
describe('ScmHistoryGraphModel - pagination', () => {
|
|
78
92
|
it('hasMore is true when a full page returns', async () => {
|
|
79
93
|
const provider = new StubHistoryProvider();
|
|
@@ -128,6 +142,133 @@ describe('ScmHistoryGraphModel - pagination', () => {
|
|
|
128
142
|
(0, chai_1.expect)(model.entries).to.have.length(scm_history_graph_model_1.PAGE_SIZE, 'should not grow when all items are duplicates');
|
|
129
143
|
});
|
|
130
144
|
});
|
|
145
|
+
describe('ScmHistoryGraphModel - page size preference', () => {
|
|
146
|
+
it('requests the configured page size and paginates by it', async () => {
|
|
147
|
+
const provider = new StubHistoryProvider();
|
|
148
|
+
provider.pages = [makeItems(1, 10)];
|
|
149
|
+
const { model, loadPage } = createModel(provider, { 'scm.graph.pageSize': 10 });
|
|
150
|
+
await loadPage();
|
|
151
|
+
(0, chai_1.expect)(provider.receivedOptions[0].limit).to.equal(10);
|
|
152
|
+
(0, chai_1.expect)(model.entries).to.have.length(10);
|
|
153
|
+
(0, chai_1.expect)(model.hasMore).to.be.true;
|
|
154
|
+
});
|
|
155
|
+
it('falls back to the default page size without a preference value', async () => {
|
|
156
|
+
const provider = new StubHistoryProvider();
|
|
157
|
+
provider.pages = [makeItems(1, 10)];
|
|
158
|
+
const { loadPage } = createModel(provider);
|
|
159
|
+
await loadPage();
|
|
160
|
+
(0, chai_1.expect)(provider.receivedOptions[0].limit).to.equal(scm_history_graph_model_1.PAGE_SIZE);
|
|
161
|
+
});
|
|
162
|
+
it('reloads from the start when scm.graph.pageSize changes', async () => {
|
|
163
|
+
const provider = new StubHistoryProvider();
|
|
164
|
+
provider.pages = [makeItems(1, 10), makeItems(1, 5)];
|
|
165
|
+
const preferences = { 'scm.graph.pageSize': 10 };
|
|
166
|
+
const { loadPage, firePreferenceChanged } = createModel(provider, preferences);
|
|
167
|
+
await loadPage();
|
|
168
|
+
(0, chai_1.expect)(provider.receivedOptions[0].limit).to.equal(10);
|
|
169
|
+
preferences['scm.graph.pageSize'] = 5;
|
|
170
|
+
firePreferenceChanged('scm.graph.pageSize');
|
|
171
|
+
await nextTick();
|
|
172
|
+
(0, chai_1.expect)(provider.receivedOptions[1].limit).to.equal(5);
|
|
173
|
+
(0, chai_1.expect)(provider.receivedOptions[1].skip).to.equal(0);
|
|
174
|
+
});
|
|
175
|
+
});
|
|
176
|
+
describe('ScmHistoryGraphModel - history item ref filter', () => {
|
|
177
|
+
const mainRef = { id: 'refs/heads/main', name: 'main', revision: 'c1' };
|
|
178
|
+
function createFilterProvider() {
|
|
179
|
+
const provider = new StubHistoryProvider();
|
|
180
|
+
provider.currentHistoryItemRef = mainRef;
|
|
181
|
+
provider.pages = [makeItems(1, 3), makeItems(1, 3), makeItems(1, 3)];
|
|
182
|
+
return provider;
|
|
183
|
+
}
|
|
184
|
+
it('is in auto mode by default: current ref revisions are requested and the current ref is in the filter', async () => {
|
|
185
|
+
const provider = createFilterProvider();
|
|
186
|
+
const { model, loadPage } = createModel(provider);
|
|
187
|
+
await loadPage();
|
|
188
|
+
(0, chai_1.expect)(provider.receivedOptions[0].historyItemRefs).to.deep.equal(['c1']);
|
|
189
|
+
(0, chai_1.expect)(model.historyItemRefFilter).to.be.undefined;
|
|
190
|
+
(0, chai_1.expect)(model.isCurrentRefInFilter()).to.be.true;
|
|
191
|
+
});
|
|
192
|
+
it('passes the picked ref ids to the provider and reloads', async () => {
|
|
193
|
+
const provider = createFilterProvider();
|
|
194
|
+
const { model } = createModel(provider);
|
|
195
|
+
model.setHistoryItemRefFilter(['refs/heads/feature']);
|
|
196
|
+
await nextTick();
|
|
197
|
+
(0, chai_1.expect)(provider.receivedOptions[0].historyItemRefs).to.deep.equal(['refs/heads/feature']);
|
|
198
|
+
(0, chai_1.expect)(model.historyItemRefFilter).to.deep.equal(['refs/heads/feature']);
|
|
199
|
+
});
|
|
200
|
+
it('reports whether the current ref is part of the filter', async () => {
|
|
201
|
+
const provider = createFilterProvider();
|
|
202
|
+
const { model } = createModel(provider);
|
|
203
|
+
model.setHistoryItemRefFilter(['refs/heads/feature']);
|
|
204
|
+
await nextTick();
|
|
205
|
+
(0, chai_1.expect)(model.isCurrentRefInFilter()).to.be.false;
|
|
206
|
+
model.setHistoryItemRefFilter(['refs/heads/feature', 'refs/heads/main']);
|
|
207
|
+
await nextTick();
|
|
208
|
+
(0, chai_1.expect)(model.isCurrentRefInFilter()).to.be.true;
|
|
209
|
+
});
|
|
210
|
+
it('returns to auto mode when the filter is cleared', async () => {
|
|
211
|
+
const provider = createFilterProvider();
|
|
212
|
+
const { model } = createModel(provider);
|
|
213
|
+
model.setHistoryItemRefFilter(['refs/heads/feature']);
|
|
214
|
+
await nextTick();
|
|
215
|
+
model.setHistoryItemRefFilter(undefined);
|
|
216
|
+
await nextTick();
|
|
217
|
+
(0, chai_1.expect)(model.historyItemRefFilter).to.be.undefined;
|
|
218
|
+
(0, chai_1.expect)(provider.receivedOptions[1].historyItemRefs).to.deep.equal(['c1']);
|
|
219
|
+
});
|
|
220
|
+
it('does not apply ref role colors to refs excluded by the filter', async () => {
|
|
221
|
+
const provider = createFilterProvider();
|
|
222
|
+
provider.pages = [[
|
|
223
|
+
{ id: 'c1', subject: 'head', parentIds: ['c2'], references: [mainRef] },
|
|
224
|
+
{ id: 'c2', subject: 'base', parentIds: [] },
|
|
225
|
+
]];
|
|
226
|
+
const { model } = createModel(provider);
|
|
227
|
+
model.setHistoryItemRefFilter(['refs/heads/feature']);
|
|
228
|
+
await nextTick();
|
|
229
|
+
(0, chai_1.expect)(model.entries[0].graphRow.color).to.not.equal(0);
|
|
230
|
+
});
|
|
231
|
+
});
|
|
232
|
+
describe('ScmHistoryGraphModel - ref filter pruning', () => {
|
|
233
|
+
const mainRef = { id: 'refs/heads/main', name: 'main', revision: 'c1' };
|
|
234
|
+
const featureRef = { id: 'refs/heads/feature', name: 'feature', revision: 'c5' };
|
|
235
|
+
function createWiredProvider() {
|
|
236
|
+
const provider = new StubHistoryProvider();
|
|
237
|
+
provider.currentHistoryItemRef = mainRef;
|
|
238
|
+
return provider;
|
|
239
|
+
}
|
|
240
|
+
it('drops a removed ref from the filter and keeps the remaining ones', async () => {
|
|
241
|
+
const provider = createWiredProvider();
|
|
242
|
+
const { model } = createModel(provider, {}, true);
|
|
243
|
+
model.setHistoryItemRefFilter([featureRef.id, mainRef.id]);
|
|
244
|
+
await nextTick();
|
|
245
|
+
provider.fireHistoryItemRefsChanged({ added: [], removed: [featureRef], modified: [] });
|
|
246
|
+
await nextTick();
|
|
247
|
+
(0, chai_1.expect)(model.historyItemRefFilter).to.deep.equal([mainRef.id]);
|
|
248
|
+
const last = provider.receivedOptions[provider.receivedOptions.length - 1];
|
|
249
|
+
(0, chai_1.expect)(last.historyItemRefs).to.deep.equal([mainRef.id]);
|
|
250
|
+
});
|
|
251
|
+
it('falls back to auto mode when all filtered refs are removed', async () => {
|
|
252
|
+
const provider = createWiredProvider();
|
|
253
|
+
const { model } = createModel(provider, {}, true);
|
|
254
|
+
model.setHistoryItemRefFilter([featureRef.id]);
|
|
255
|
+
await nextTick();
|
|
256
|
+
provider.fireHistoryItemRefsChanged({ added: [], removed: [featureRef], modified: [] });
|
|
257
|
+
await nextTick();
|
|
258
|
+
(0, chai_1.expect)(model.historyItemRefFilter).to.be.undefined;
|
|
259
|
+
const last = provider.receivedOptions[provider.receivedOptions.length - 1];
|
|
260
|
+
(0, chai_1.expect)(last.historyItemRefs).to.deep.equal(['c1']);
|
|
261
|
+
});
|
|
262
|
+
it('keeps the filter when unrelated refs are removed', async () => {
|
|
263
|
+
const provider = createWiredProvider();
|
|
264
|
+
const { model } = createModel(provider, {}, true);
|
|
265
|
+
model.setHistoryItemRefFilter([mainRef.id]);
|
|
266
|
+
await nextTick();
|
|
267
|
+
provider.fireHistoryItemRefsChanged({ added: [], removed: [featureRef], modified: [] });
|
|
268
|
+
await nextTick();
|
|
269
|
+
(0, chai_1.expect)(model.historyItemRefFilter).to.deep.equal([mainRef.id]);
|
|
270
|
+
});
|
|
271
|
+
});
|
|
131
272
|
describe('ScmHistoryGraphModel - ref colors and current item', () => {
|
|
132
273
|
const mainRef = { id: 'refs/heads/main', name: 'main', revision: 'c2' };
|
|
133
274
|
const originMainRef = { id: 'refs/remotes/origin/main', name: 'origin/main', revision: 'c1' };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scm-history-graph-model.spec.js","sourceRoot":"","sources":["../../src/browser/scm-history-graph-model.spec.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scm-history-graph-model.spec.js","sourceRoot":"","sources":["../../src/browser/scm-history-graph-model.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,17 +10,20 @@ import { ScmService } from './scm-service';
|
|
|
10
10
|
import { GraphRow } from './scm-history-graph-lanes';
|
|
11
11
|
import { CancellationTokenSource } from '@theia/core/lib/common/cancellation';
|
|
12
12
|
import { DisposableCollection } from '@theia/core/lib/common/disposable';
|
|
13
|
+
import { Emitter, Event } from '@theia/core/lib/common/event';
|
|
14
|
+
import { DynamicToolbarWidget } from '@theia/core/lib/browser/view-container';
|
|
13
15
|
import { MenuPath } from '@theia/core/lib/common/menu/menu-types';
|
|
14
16
|
import { ContextMenuRenderer } from '@theia/core/lib/browser/context-menu-renderer';
|
|
15
17
|
import { OpenerService } from '@theia/core/lib/browser/opener-service';
|
|
16
18
|
import { ScmContextKeyService } from './scm-context-key-service';
|
|
19
|
+
import { ScmPreferences } from '../common/scm-preferences';
|
|
17
20
|
/** Menu path matching the VS Code 'scm/history/title' contribution point (graph section toolbar). */
|
|
18
21
|
export declare const SCM_HISTORY_TITLE_MENU: MenuPath;
|
|
19
22
|
/** Menu path matching the VS Code 'scm/historyItem/context' contribution point (commit row context menu). */
|
|
20
23
|
export declare const SCM_HISTORY_ITEM_CONTEXT_MENU: MenuPath;
|
|
21
24
|
/** Menu path matching the VS Code 'scm/historyItemRef/context' contribution point (ref badge context menu). */
|
|
22
25
|
export declare const SCM_HISTORY_ITEM_REF_CONTEXT_MENU: MenuPath;
|
|
23
|
-
export declare class ScmHistoryGraphWidget extends ReactWidget {
|
|
26
|
+
export declare class ScmHistoryGraphWidget extends ReactWidget implements DynamicToolbarWidget {
|
|
24
27
|
static readonly ID = "scm-history-graph-widget";
|
|
25
28
|
static readonly LABEL: string;
|
|
26
29
|
protected readonly model: ScmHistoryGraphModel;
|
|
@@ -32,6 +35,7 @@ export declare class ScmHistoryGraphWidget extends ReactWidget {
|
|
|
32
35
|
protected readonly contextMenuRenderer: ContextMenuRenderer;
|
|
33
36
|
protected readonly openerService: OpenerService;
|
|
34
37
|
protected readonly scmContextKeys: ScmContextKeyService;
|
|
38
|
+
protected readonly scmPreferences: ScmPreferences;
|
|
35
39
|
protected selectedIndex: number;
|
|
36
40
|
/** Currently selected change row key (`${itemId}-${ci}`), or undefined. */
|
|
37
41
|
protected selectedChangeKey: string | undefined;
|
|
@@ -43,6 +47,9 @@ export declare class ScmHistoryGraphWidget extends ReactWidget {
|
|
|
43
47
|
protected loadChangesCts: Map<string, CancellationTokenSource>;
|
|
44
48
|
/** Cleanup for the content of the hover currently being shown. */
|
|
45
49
|
protected readonly toDisposeOnHover: DisposableCollection;
|
|
50
|
+
protected readonly onDidChangeToolbarItemsEmitter: Emitter<void>;
|
|
51
|
+
/** Re-renders the part toolbar on model changes, e.g. to reflect the toggled state of the ref filter picker. */
|
|
52
|
+
readonly onDidChangeToolbarItems: Event<void>;
|
|
46
53
|
constructor();
|
|
47
54
|
protected init(): void;
|
|
48
55
|
protected updateContextKeys(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scm-history-graph-widget.d.ts","sourceRoot":"","sources":["../../src/browser/scm-history-graph-widget.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAGlD,OAAO,EAAE,WAAW,EAAE,MAAM,8CAA8C,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,8DAA8D,CAAC;AACzH,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACpF,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAGrD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,EAAE,aAAa,EAAQ,MAAM,wCAAwC,CAAC;AAE7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"scm-history-graph-widget.d.ts","sourceRoot":"","sources":["../../src/browser/scm-history-graph-widget.tsx"],"names":[],"mappings":"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"}
|